From c1618072521af88d80935b3974cc8bc075e64944 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Mon, 29 Apr 2024 00:10:27 +0300 Subject: [PATCH 01/57] update to v1.3 --- src/vulkan.nim | 14924 +++++++++++++++++++++++++++++++++--------- tools/generator.nim | 20 +- tools/utils.nim | 2 +- 3 files changed, 11988 insertions(+), 2958 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 7ea1c9f..2909a22 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -6,6 +6,7 @@ ## Any edits will be overwritten by the generator. var vkGetProc: proc(procName: cstring): pointer {.cdecl.} +var currInst: pointer = nil when not defined(vkCustomLoader): import dynlib @@ -21,13 +22,13 @@ when not defined(vkCustomLoader): if isNil(vkHandleDLL): quit("could not load: " & vkDLL) - let vkGetProcAddress = cast[proc(s: cstring): pointer {.stdcall.}](symAddr(vkHandleDLL, "vkGetInstanceProcAddr")) + let vkGetProcAddress = cast[proc(inst: pointer, s: cstring): pointer {.stdcall.}](symAddr(vkHandleDLL, "vkGetInstanceProcAddr")) if vkGetProcAddress == nil: quit("failed to load `vkGetInstanceProcAddr` from " & vkDLL) vkGetProc = proc(procName: cstring): pointer {.cdecl.} = when defined(windows): - result = vkGetProcAddress(procName) + result = vkGetProcAddress(currInst, procName) if result != nil: return result = symAddr(vkHandleDLL, procName) @@ -39,7 +40,7 @@ proc setVKGetProc*(getProc: proc(procName: cstring): pointer {.cdecl.}) = type VkHandle* = int64 - VkNonDispatchableHandle* = int64 + VkNonDispatchableHandle* = uint64 ANativeWindow = ptr object CAMetalLayer = ptr object AHardwareBuffer = ptr object @@ -54,17 +55,18 @@ const VK_MAX_DESCRIPTION_SIZE* = 256 VK_MAX_MEMORY_TYPES* = 32 VK_MAX_MEMORY_HEAPS* = 16 - VK_LOD_CLAMP_NONE* = 1000.0f + VK_LOD_CLAMP_NONE* = 1000.0F VK_REMAINING_MIP_LEVELS* = (not 0'u32) VK_REMAINING_ARRAY_LAYERS* = (not 0'u32) + VK_REMAINING_3D_SLICES_EXT* = (not 0'u32) VK_WHOLE_SIZE* = (not 0'u64) VK_ATTACHMENT_UNUSED* = (not 0'u32) VK_TRUE* = 1 VK_FALSE* = 0 VK_QUEUE_FAMILY_IGNORED* = (not 0'u32) - VK_QUEUE_FAMILY_EXTERNAL* = (not 0'u32) - 1 + VK_QUEUE_FAMILY_EXTERNAL* = (not 1'u32) VK_QUEUE_FAMILY_EXTERNAL_KHR* = VK_QUEUE_FAMILY_EXTERNAL - VK_QUEUE_FAMILY_FOREIGN_EXT* = (not 0'u32) - 2 + VK_QUEUE_FAMILY_FOREIGN_EXT* = (not 2'u32) VK_SUBPASS_EXTERNAL* = (not 0'u32) VK_MAX_DEVICE_GROUP_SIZE* = 32 VK_MAX_DEVICE_GROUP_SIZE_KHR* = VK_MAX_DEVICE_GROUP_SIZE @@ -74,6 +76,11 @@ const VK_MAX_DRIVER_INFO_SIZE_KHR* = VK_MAX_DRIVER_INFO_SIZE VK_SHADER_UNUSED_KHR* = (not 0'u32) VK_SHADER_UNUSED_NV* = VK_SHADER_UNUSED_KHR + VK_MAX_GLOBAL_PRIORITY_SIZE_KHR* = 16 + VK_MAX_GLOBAL_PRIORITY_SIZE_EXT* = VK_MAX_GLOBAL_PRIORITY_SIZE_KHR + VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT* = 32 + VK_MAX_VIDEO_AV1_REFERENCES_PER_FRAME_KHR* = 7 + VK_SHADER_INDEX_UNUSED_AMDX* = (not 0'u32) type VkImageLayout* {.size: int32.sizeof.} = enum @@ -189,11 +196,6 @@ type VK_POLYGON_MODE_FILL = 0 VK_POLYGON_MODE_LINE = 1 VK_POLYGON_MODE_POINT = 2 - VkCullModeFlagBits* {.size: int32.sizeof.} = enum - VK_CULL_MODE_NONE = 0 - VK_CULL_MODE_FRONT_BIT = 1 - VK_CULL_MODE_BACK_BIT = 2 - VK_CULL_MODE_FRONT_AND_BACK = 3 VkFrontFace* {.size: int32.sizeof.} = enum VK_FRONT_FACE_COUNTER_CLOCKWISE = 0 VK_FRONT_FACE_CLOCKWISE = 1 @@ -564,11 +566,22 @@ type VK_OBJECT_TYPE_DESCRIPTOR_SET = 23 VK_OBJECT_TYPE_FRAMEBUFFER = 24 VK_OBJECT_TYPE_COMMAND_POOL = 25 + VkRayTracingInvocationReorderModeNV* {.size: int32.sizeof.} = enum + VK_RAY_TRACING_INVOCATION_REORDER_MODE_NONE_NV = 0 + VK_RAY_TRACING_INVOCATION_REORDER_MODE_REORDER_NV = 1 + VkDirectDriverLoadingModeLUNARG* {.size: int32.sizeof.} = enum + VK_DIRECT_DRIVER_LOADING_MODE_EXCLUSIVE_LUNARG = 0 + VK_DIRECT_DRIVER_LOADING_MODE_INCLUSIVE_LUNARG = 1 VkQueueFlagBits* {.size: int32.sizeof.} = enum VK_QUEUE_GRAPHICS_BIT = 1 VK_QUEUE_COMPUTE_BIT = 2 VK_QUEUE_TRANSFER_BIT = 4 VK_QUEUE_SPARSE_BINDING_BIT = 8 + VkCullModeFlagBits* {.size: int32.sizeof.} = enum + VK_CULL_MODE_NONE = 0 + VK_CULL_MODE_FRONT_BIT = 1 + VK_CULL_MODE_BACK_BIT = 2 + VK_CULL_MODE_FRONT_AND_BACK = 3 VkMemoryPropertyFlagBits* {.size: int32.sizeof.} = enum VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT = 1 VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT = 2 @@ -605,6 +618,16 @@ type VK_BUFFER_USAGE_INDEX_BUFFER_BIT = 64 VK_BUFFER_USAGE_VERTEX_BUFFER_BIT = 128 VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT = 256 + VkBufferUsageFlagBits2KHR* {.size: int32.sizeof.} = enum + VK_BUFFER_USAGE_2_TRANSFER_SRC_BIT_KHR = 1 + VK_BUFFER_USAGE_2_TRANSFER_DST_BIT_KHR = 2 + VK_BUFFER_USAGE_2_UNIFORM_TEXEL_BUFFER_BIT_KHR = 4 + VK_BUFFER_USAGE_2_STORAGE_TEXEL_BUFFER_BIT_KHR = 8 + VK_BUFFER_USAGE_2_UNIFORM_BUFFER_BIT_KHR = 16 + VK_BUFFER_USAGE_2_STORAGE_BUFFER_BIT_KHR = 32 + VK_BUFFER_USAGE_2_INDEX_BUFFER_BIT_KHR = 64 + VK_BUFFER_USAGE_2_VERTEX_BUFFER_BIT_KHR = 128 + VK_BUFFER_USAGE_2_INDIRECT_BUFFER_BIT_KHR = 256 VkBufferCreateFlagBits* {.size: int32.sizeof.} = enum VK_BUFFER_CREATE_SPARSE_BINDING_BIT = 1 VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT = 2 @@ -637,6 +660,10 @@ type VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT = 1 VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT = 2 VK_PIPELINE_CREATE_DERIVATIVE_BIT = 4 + VkPipelineCreateFlagBits2KHR* {.size: int32.sizeof.} = enum + VK_PIPELINE_CREATE_2_DISABLE_OPTIMIZATION_BIT_KHR = 1 + VK_PIPELINE_CREATE_2_ALLOW_DERIVATIVES_BIT_KHR = 2 + VK_PIPELINE_CREATE_2_DERIVATIVE_BIT_KHR = 4 VkColorComponentFlagBits* {.size: int32.sizeof.} = enum VK_COLOR_COMPONENT_R_BIT = 1 VK_COLOR_COMPONENT_G_BIT = 2 @@ -769,11 +796,11 @@ type VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR = 256 VkSwapchainImageUsageFlagBitsANDROID* {.size: int32.sizeof.} = enum VK_SWAPCHAIN_IMAGE_USAGE_SHARED_BIT_ANDROID = 1 - VkTimeDomainEXT* {.size: int32.sizeof.} = enum - VK_TIME_DOMAIN_DEVICE_EXT = 0 - VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT = 1 - VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT = 2 - VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT = 3 + VkTimeDomainKHR* {.size: int32.sizeof.} = enum + VK_TIME_DOMAIN_DEVICE_KHR = 0 + VK_TIME_DOMAIN_CLOCK_MONOTONIC_KHR = 1 + VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_KHR = 2 + VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_KHR = 3 VkDebugReportFlagBitsEXT* {.size: int32.sizeof.} = enum VK_DEBUG_REPORT_INFORMATION_BIT_EXT = 1 VK_DEBUG_REPORT_WARNING_BIT_EXT = 2 @@ -813,6 +840,12 @@ type VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT = 29 VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT = 30 VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT = 33 + VkDeviceMemoryReportEventTypeEXT* {.size: int32.sizeof.} = enum + VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATE_EXT = 0 + VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_FREE_EXT = 1 + VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_IMPORT_EXT = 2 + VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_UNIMPORT_EXT = 3 + VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATION_FAILED_EXT = 4 VkRasterizationOrderAMD* {.size: int32.sizeof.} = enum VK_RASTERIZATION_ORDER_STRICT_AMD = 0 VK_RASTERIZATION_ORDER_RELAXED_AMD = 1 @@ -842,6 +875,16 @@ type VK_VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT = 4 VK_VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT = 5 VK_VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT = 6 + VK_VALIDATION_FEATURE_DISABLE_SHADER_VALIDATION_CACHE_EXT = 7 + VkLayerSettingTypeEXT* {.size: int32.sizeof.} = enum + VK_LAYER_SETTING_TYPE_BOOL32_EXT = 0 + VK_LAYER_SETTING_TYPE_INT32_EXT = 1 + VK_LAYER_SETTING_TYPE_INT64_EXT = 2 + VK_LAYER_SETTING_TYPE_UINT32_EXT = 3 + VK_LAYER_SETTING_TYPE_UINT64_EXT = 4 + VK_LAYER_SETTING_TYPE_FLOAT32_EXT = 5 + VK_LAYER_SETTING_TYPE_FLOAT64_EXT = 6 + VK_LAYER_SETTING_TYPE_STRING_EXT = 7 VkSubgroupFeatureFlagBits* {.size: int32.sizeof.} = enum VK_SUBGROUP_FEATURE_BASIC_BIT = 1 VK_SUBGROUP_FEATURE_VOTE_BIT = 2 @@ -900,7 +943,7 @@ type VkFenceImportFlagBits* {.size: int32.sizeof.} = enum VK_FENCE_IMPORT_TEMPORARY_BIT = 1 VkSurfaceCounterFlagBitsEXT* {.size: int32.sizeof.} = enum - VK_SURFACE_COUNTER_VBLANK_EXT = 1 + VK_SURFACE_COUNTER_VBLANK_BIT_EXT = 1 VkDisplayPowerStateEXT* {.size: int32.sizeof.} = enum VK_DISPLAY_POWER_STATE_OFF_EXT = 0 VK_DISPLAY_POWER_STATE_SUSPEND_EXT = 1 @@ -973,11 +1016,11 @@ type VK_SHADER_INFO_TYPE_STATISTICS_AMD = 0 VK_SHADER_INFO_TYPE_BINARY_AMD = 1 VK_SHADER_INFO_TYPE_DISASSEMBLY_AMD = 2 - VkQueueGlobalPriorityEXT* {.size: int32.sizeof.} = enum - VK_QUEUE_GLOBAL_PRIORITY_LOW_EXT = 128 - VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT = 256 - VK_QUEUE_GLOBAL_PRIORITY_HIGH_EXT = 512 - VK_QUEUE_GLOBAL_PRIORITY_REALTIME_EXT = 1024 + VkQueueGlobalPriorityKHR* {.size: int32.sizeof.} = enum + VK_QUEUE_GLOBAL_PRIORITY_LOW_KHR = 128 + VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_KHR = 256 + VK_QUEUE_GLOBAL_PRIORITY_HIGH_KHR = 512 + VK_QUEUE_GLOBAL_PRIORITY_REALTIME_KHR = 1024 VkDebugUtilsMessageSeverityFlagBitsEXT* {.size: int32.sizeof.} = enum VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT = 1 VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT = 16 @@ -1002,6 +1045,8 @@ type VK_VENDOR_ID_KAZAN = 65539 VK_VENDOR_ID_CODEPLAY = 65540 VK_VENDOR_ID_MESA = 65541 + VK_VENDOR_ID_POCL = 65542 + VK_VENDOR_ID_MOBILEYE = 65543 VkDriverId* {.size: int32.sizeof.} = enum VK_DRIVER_ID_AMD_PROPRIETARY = 1 VK_DRIVER_ID_AMD_OPEN_SOURCE = 2 @@ -1017,6 +1062,18 @@ type VK_DRIVER_ID_BROADCOM_PROPRIETARY = 12 VK_DRIVER_ID_MESA_LLVMPIPE = 13 VK_DRIVER_ID_MOLTENVK = 14 + VK_DRIVER_ID_COREAVI_PROPRIETARY = 15 + VK_DRIVER_ID_JUICE_PROPRIETARY = 16 + VK_DRIVER_ID_VERISILICON_PROPRIETARY = 17 + VK_DRIVER_ID_MESA_TURNIP = 18 + VK_DRIVER_ID_MESA_V3DV = 19 + VK_DRIVER_ID_MESA_PANVK = 20 + VK_DRIVER_ID_SAMSUNG_PROPRIETARY = 21 + VK_DRIVER_ID_MESA_VENUS = 22 + VK_DRIVER_ID_MESA_DOZEN = 23 + VK_DRIVER_ID_MESA_NVK = 24 + VK_DRIVER_ID_IMAGINATION_OPEN_SOURCE_MESA = 25 + VK_DRIVER_ID_MESA_AGXV = 26 VkConditionalRenderingFlagBitsEXT* {.size: int32.sizeof.} = enum VK_CONDITIONAL_RENDERING_INVERTED_BIT_EXT = 1 VkResolveModeFlagBits* {.size: int32.sizeof.} = enum @@ -1045,7 +1102,7 @@ type VK_COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV = 3 VkGeometryInstanceFlagBitsKHR* {.size: int32.sizeof.} = enum VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR = 1 - VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR = 2 + VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR = 2 VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR = 4 VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR = 8 VkGeometryFlagBitsKHR* {.size: int32.sizeof.} = enum @@ -1057,21 +1114,28 @@ type VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR = 4 VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR = 8 VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR = 16 + VkAccelerationStructureCreateFlagBitsKHR* {.size: int32.sizeof.} = enum + VK_ACCELERATION_STRUCTURE_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR = 1 VkCopyAccelerationStructureModeKHR* {.size: int32.sizeof.} = enum VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR = 0 VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR = 1 VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR = 2 VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR = 3 + VkBuildAccelerationStructureModeKHR* {.size: int32.sizeof.} = enum + VK_BUILD_ACCELERATION_STRUCTURE_MODE_BUILD_KHR = 0 + VK_BUILD_ACCELERATION_STRUCTURE_MODE_UPDATE_KHR = 1 VkAccelerationStructureTypeKHR* {.size: int32.sizeof.} = enum VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR = 0 VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR = 1 + VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR = 2 VkGeometryTypeKHR* {.size: int32.sizeof.} = enum VK_GEOMETRY_TYPE_TRIANGLES_KHR = 0 VK_GEOMETRY_TYPE_AABBS_KHR = 1 - VkAccelerationStructureMemoryRequirementsTypeKHR* {.size: int32.sizeof.} = enum - VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_KHR = 0 - VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_KHR = 1 - VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR = 2 + VK_GEOMETRY_TYPE_INSTANCES_KHR = 2 + VkAccelerationStructureMemoryRequirementsTypeNV* {.size: int32.sizeof.} = enum + VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV = 0 + VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV = 1 + VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV = 2 VkAccelerationStructureBuildTypeKHR* {.size: int32.sizeof.} = enum VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR = 0 VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR = 1 @@ -1080,35 +1144,27 @@ type VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR = 0 VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR = 1 VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR = 2 + VkAccelerationStructureCompatibilityKHR* {.size: int32.sizeof.} = enum + VK_ACCELERATION_STRUCTURE_COMPATIBILITY_COMPATIBLE_KHR = 0 + VK_ACCELERATION_STRUCTURE_COMPATIBILITY_INCOMPATIBLE_KHR = 1 + VkShaderGroupShaderKHR* {.size: int32.sizeof.} = enum + VK_SHADER_GROUP_SHADER_GENERAL_KHR = 0 + VK_SHADER_GROUP_SHADER_CLOSEST_HIT_KHR = 1 + VK_SHADER_GROUP_SHADER_ANY_HIT_KHR = 2 + VK_SHADER_GROUP_SHADER_INTERSECTION_KHR = 3 VkMemoryOverallocationBehaviorAMD* {.size: int32.sizeof.} = enum VK_MEMORY_OVERALLOCATION_BEHAVIOR_DEFAULT_AMD = 0 VK_MEMORY_OVERALLOCATION_BEHAVIOR_ALLOWED_AMD = 1 VK_MEMORY_OVERALLOCATION_BEHAVIOR_DISALLOWED_AMD = 2 - VkScopeNV* {.size: int32.sizeof.} = enum - VK_SCOPE_DEVICE_NV = 1 - VK_SCOPE_WORKGROUP_NV = 2 - VK_SCOPE_SUBGROUP_NV = 3 - VK_SCOPE_QUEUE_FAMILY_NV = 5 - VkComponentTypeNV* {.size: int32.sizeof.} = enum - VK_COMPONENT_TYPE_FLOAT16_NV = 0 - VK_COMPONENT_TYPE_FLOAT32_NV = 1 - VK_COMPONENT_TYPE_FLOAT64_NV = 2 - VK_COMPONENT_TYPE_SINT8_NV = 3 - VK_COMPONENT_TYPE_SINT16_NV = 4 - VK_COMPONENT_TYPE_SINT32_NV = 5 - VK_COMPONENT_TYPE_SINT64_NV = 6 - VK_COMPONENT_TYPE_UINT8_NV = 7 - VK_COMPONENT_TYPE_UINT16_NV = 8 - VK_COMPONENT_TYPE_UINT32_NV = 9 - VK_COMPONENT_TYPE_UINT64_NV = 10 VkDeviceDiagnosticsConfigFlagBitsNV* {.size: int32.sizeof.} = enum VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV = 1 VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV = 2 VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV = 4 - VkPipelineCreationFeedbackFlagBitsEXT* {.size: int32.sizeof.} = enum - VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT_EXT = 1 - VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT_EXT = 2 - VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT_EXT = 4 + VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_ERROR_REPORTING_BIT_NV = 8 + VkPipelineCreationFeedbackFlagBits* {.size: int32.sizeof.} = enum + VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT = 1 + VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT = 2 + VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT = 4 VkFullScreenExclusiveEXT* {.size: int32.sizeof.} = enum VK_FULL_SCREEN_EXCLUSIVE_DEFAULT_EXT = 0 VK_FULL_SCREEN_EXCLUSIVE_ALLOWED_EXT = 1 @@ -1118,6 +1174,8 @@ type VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR = 0 VK_PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR = 1 VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR = 2 + VkMemoryDecompressionMethodFlagBitsNV* {.size: int32.sizeof.} = enum + VK_MEMORY_DECOMPRESSION_METHOD_GDEFLATE_1_0_BIT_NV = 1 VkPerformanceCounterUnitKHR* {.size: int32.sizeof.} = enum VK_PERFORMANCE_COUNTER_UNIT_GENERIC_KHR = 0 VK_PERFORMANCE_COUNTER_UNIT_PERCENTAGE_KHR = 1 @@ -1138,8 +1196,8 @@ type VK_PERFORMANCE_COUNTER_STORAGE_FLOAT32_KHR = 4 VK_PERFORMANCE_COUNTER_STORAGE_FLOAT64_KHR = 5 VkPerformanceCounterDescriptionFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_KHR = 1 - VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_KHR = 2 + VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_BIT_KHR = 1 + VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_BIT_KHR = 2 VkPerformanceConfigurationTypeINTEL* {.size: int32.sizeof.} = enum VK_PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL = 0 VkQueryPoolSamplingModeINTEL* {.size: int32.sizeof.} = enum @@ -1165,17 +1223,523 @@ type VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_INT64_KHR = 1 VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_UINT64_KHR = 2 VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_FLOAT64_KHR = 3 - VkLineRasterizationModeEXT* {.size: int32.sizeof.} = enum - VK_LINE_RASTERIZATION_MODE_DEFAULT_EXT = 0 - VK_LINE_RASTERIZATION_MODE_RECTANGULAR_EXT = 1 - VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT = 2 - VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT = 3 - VkToolPurposeFlagBitsEXT* {.size: int32.sizeof.} = enum - VK_TOOL_PURPOSE_VALIDATION_BIT_EXT = 1 - VK_TOOL_PURPOSE_PROFILING_BIT_EXT = 2 - VK_TOOL_PURPOSE_TRACING_BIT_EXT = 4 - VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT_EXT = 8 - VK_TOOL_PURPOSE_MODIFYING_FEATURES_BIT_EXT = 16 + VkLineRasterizationModeKHR* {.size: int32.sizeof.} = enum + VK_LINE_RASTERIZATION_MODE_DEFAULT_KHR = 0 + VK_LINE_RASTERIZATION_MODE_RECTANGULAR_KHR = 1 + VK_LINE_RASTERIZATION_MODE_BRESENHAM_KHR = 2 + VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_KHR = 3 + VkFaultLevel* {.size: int32.sizeof.} = enum + VK_FAULT_LEVEL_UNASSIGNED = 0 + VK_FAULT_LEVEL_CRITICAL = 1 + VK_FAULT_LEVEL_RECOVERABLE = 2 + VK_FAULT_LEVEL_WARNING = 3 + VkFaultType* {.size: int32.sizeof.} = enum + VK_FAULT_TYPE_INVALID = 0 + VK_FAULT_TYPE_UNASSIGNED = 1 + VK_FAULT_TYPE_IMPLEMENTATION = 2 + VK_FAULT_TYPE_SYSTEM = 3 + VK_FAULT_TYPE_PHYSICAL_DEVICE = 4 + VK_FAULT_TYPE_COMMAND_BUFFER_FULL = 5 + VK_FAULT_TYPE_INVALID_API_USAGE = 6 + VkFaultQueryBehavior* {.size: int32.sizeof.} = enum + VK_FAULT_QUERY_BEHAVIOR_GET_AND_CLEAR_ALL_FAULTS = 0 + VkToolPurposeFlagBits* {.size: int32.sizeof.} = enum + VK_TOOL_PURPOSE_VALIDATION_BIT = 1 + VK_TOOL_PURPOSE_PROFILING_BIT = 2 + VK_TOOL_PURPOSE_TRACING_BIT = 4 + VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT = 8 + VK_TOOL_PURPOSE_MODIFYING_FEATURES_BIT = 16 + VkPipelineMatchControl* {.size: int32.sizeof.} = enum + VK_PIPELINE_MATCH_CONTROL_APPLICATION_UUID_EXACT_MATCH = 0 + VkFragmentShadingRateCombinerOpKHR* {.size: int32.sizeof.} = enum + VK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHR = 0 + VK_FRAGMENT_SHADING_RATE_COMBINER_OP_REPLACE_KHR = 1 + VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MIN_KHR = 2 + VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MAX_KHR = 3 + VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MUL_KHR = 4 + VkFragmentShadingRateNV* {.size: int32.sizeof.} = enum + VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV = 0 + VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV = 1 + VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV = 4 + VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV = 5 + VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV = 6 + VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV = 9 + VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV = 10 + VK_FRAGMENT_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV = 11 + VK_FRAGMENT_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV = 12 + VK_FRAGMENT_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV = 13 + VK_FRAGMENT_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV = 14 + VK_FRAGMENT_SHADING_RATE_NO_INVOCATIONS_NV = 15 + VkFragmentShadingRateTypeNV* {.size: int32.sizeof.} = enum + VK_FRAGMENT_SHADING_RATE_TYPE_FRAGMENT_SIZE_NV = 0 + VK_FRAGMENT_SHADING_RATE_TYPE_ENUMS_NV = 1 + VkSubpassMergeStatusEXT* {.size: int32.sizeof.} = enum + VK_SUBPASS_MERGE_STATUS_MERGED_EXT = 0 + VK_SUBPASS_MERGE_STATUS_DISALLOWED_EXT = 1 + VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SIDE_EFFECTS_EXT = 2 + VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SAMPLES_MISMATCH_EXT = 3 + VK_SUBPASS_MERGE_STATUS_NOT_MERGED_VIEWS_MISMATCH_EXT = 4 + VK_SUBPASS_MERGE_STATUS_NOT_MERGED_ALIASING_EXT = 5 + VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPENDENCIES_EXT = 6 + VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INCOMPATIBLE_INPUT_ATTACHMENT_EXT = 7 + VK_SUBPASS_MERGE_STATUS_NOT_MERGED_TOO_MANY_ATTACHMENTS_EXT = 8 + VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INSUFFICIENT_STORAGE_EXT = 9 + VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPTH_STENCIL_COUNT_EXT = 10 + VK_SUBPASS_MERGE_STATUS_NOT_MERGED_RESOLVE_ATTACHMENT_REUSE_EXT = 11 + VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SINGLE_SUBPASS_EXT = 12 + VK_SUBPASS_MERGE_STATUS_NOT_MERGED_UNSPECIFIED_EXT = 13 + VkAccessFlagBits2* {.size: int32.sizeof.} = enum + VK_ACCESS_2_NONE = 0 + VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT = 1 + VK_ACCESS_2_INDEX_READ_BIT = 2 + VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT = 4 + VK_ACCESS_2_UNIFORM_READ_BIT = 8 + VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT = 16 + VK_ACCESS_2_SHADER_READ_BIT = 32 + VK_ACCESS_2_SHADER_WRITE_BIT = 64 + VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT = 128 + VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT = 256 + VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT = 512 + VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT = 1024 + VK_ACCESS_2_TRANSFER_READ_BIT = 2048 + VK_ACCESS_2_TRANSFER_WRITE_BIT = 4096 + VK_ACCESS_2_HOST_READ_BIT = 8192 + VK_ACCESS_2_HOST_WRITE_BIT = 16384 + VK_ACCESS_2_MEMORY_READ_BIT = 32768 + VK_ACCESS_2_MEMORY_WRITE_BIT = 65536 + VK_ACCESS_2_SHADER_SAMPLED_READ_BIT = 4294967296 + VK_ACCESS_2_SHADER_STORAGE_READ_BIT = 8589934592 + VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT = 17179869184 + VkPipelineStageFlagBits2* {.size: int32.sizeof.} = enum + VK_PIPELINE_STAGE_2_NONE = 0 + VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT = 1 + VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT = 2 + VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT = 4 + VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT = 8 + VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT = 16 + VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT = 32 + VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT = 64 + VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT = 128 + VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT = 256 + VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT = 512 + VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT = 1024 + VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT = 2048 + VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT = 4096 + VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT = 8192 + VK_PIPELINE_STAGE_2_HOST_BIT = 16384 + VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT = 32768 + VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT = 65536 + VK_PIPELINE_STAGE_2_COPY_BIT = 4294967296 + VK_PIPELINE_STAGE_2_RESOLVE_BIT = 8589934592 + VK_PIPELINE_STAGE_2_BLIT_BIT = 17179869184 + VK_PIPELINE_STAGE_2_CLEAR_BIT = 34359738368 + VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT = 68719476736 + VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT = 137438953472 + VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT = 274877906944 + VkSubmitFlagBits* {.size: int32.sizeof.} = enum + VK_SUBMIT_PROTECTED_BIT = 1 + VkSciSyncClientTypeNV* {.size: int32.sizeof.} = enum + VK_SCI_SYNC_CLIENT_TYPE_SIGNALER_NV = 0 + VK_SCI_SYNC_CLIENT_TYPE_WAITER_NV = 1 + VK_SCI_SYNC_CLIENT_TYPE_SIGNALER_WAITER_NV = 2 + VkSciSyncPrimitiveTypeNV* {.size: int32.sizeof.} = enum + VK_SCI_SYNC_PRIMITIVE_TYPE_FENCE_NV = 0 + VK_SCI_SYNC_PRIMITIVE_TYPE_SEMAPHORE_NV = 1 + VkProvokingVertexModeEXT* {.size: int32.sizeof.} = enum + VK_PROVOKING_VERTEX_MODE_FIRST_VERTEX_EXT = 0 + VK_PROVOKING_VERTEX_MODE_LAST_VERTEX_EXT = 1 + VkPipelineCacheValidationVersion* {.size: int32.sizeof.} = enum + VK_PIPELINE_CACHE_VALIDATION_VERSION_SAFETY_CRITICAL_ONE = 1 + VkAccelerationStructureMotionInstanceTypeNV* {.size: int32.sizeof.} = enum + VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_STATIC_NV = 0 + VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MATRIX_MOTION_NV = 1 + VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_SRT_MOTION_NV = 2 + VkGraphicsPipelineLibraryFlagBitsEXT* {.size: int32.sizeof.} = enum + VK_GRAPHICS_PIPELINE_LIBRARY_VERTEX_INPUT_INTERFACE_BIT_EXT = 1 + VK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXT = 2 + VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT = 4 + VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT = 8 + VkDeviceAddressBindingFlagBitsEXT* {.size: int32.sizeof.} = enum + VK_DEVICE_ADDRESS_BINDING_INTERNAL_OBJECT_BIT_EXT = 1 + VkDeviceAddressBindingTypeEXT* {.size: int32.sizeof.} = enum + VK_DEVICE_ADDRESS_BINDING_TYPE_BIND_EXT = 0 + VK_DEVICE_ADDRESS_BINDING_TYPE_UNBIND_EXT = 1 + VkFrameBoundaryFlagBitsEXT* {.size: int32.sizeof.} = enum + VK_FRAME_BOUNDARY_FRAME_END_BIT_EXT = 1 + VkPresentScalingFlagBitsEXT* {.size: int32.sizeof.} = enum + VK_PRESENT_SCALING_ONE_TO_ONE_BIT_EXT = 1 + VK_PRESENT_SCALING_ASPECT_RATIO_STRETCH_BIT_EXT = 2 + VK_PRESENT_SCALING_STRETCH_BIT_EXT = 4 + VkPresentGravityFlagBitsEXT* {.size: int32.sizeof.} = enum + VK_PRESENT_GRAVITY_MIN_BIT_EXT = 1 + VK_PRESENT_GRAVITY_MAX_BIT_EXT = 2 + VK_PRESENT_GRAVITY_CENTERED_BIT_EXT = 4 + VkPhysicalDeviceSchedulingControlsFlagBitsARM* {.size: int32.sizeof.} = enum + VK_PHYSICAL_DEVICE_SCHEDULING_CONTROLS_SHADER_CORE_COUNT_ARM = 1 + VkVideoCodecOperationFlagBitsKHR* {.size: int32.sizeof.} = enum + VK_VIDEO_CODEC_OPERATION_NONE_KHR = 0 + VkVideoChromaSubsamplingFlagBitsKHR* {.size: int32.sizeof.} = enum + VK_VIDEO_CHROMA_SUBSAMPLING_INVALID_KHR = 0 + VK_VIDEO_CHROMA_SUBSAMPLING_MONOCHROME_BIT_KHR = 1 + VK_VIDEO_CHROMA_SUBSAMPLING_420_BIT_KHR = 2 + VK_VIDEO_CHROMA_SUBSAMPLING_422_BIT_KHR = 4 + VK_VIDEO_CHROMA_SUBSAMPLING_444_BIT_KHR = 8 + VkVideoComponentBitDepthFlagBitsKHR* {.size: int32.sizeof.} = enum + VK_VIDEO_COMPONENT_BIT_DEPTH_INVALID_KHR = 0 + VK_VIDEO_COMPONENT_BIT_DEPTH_8_BIT_KHR = 1 + VK_VIDEO_COMPONENT_BIT_DEPTH_10_BIT_KHR = 4 + VK_VIDEO_COMPONENT_BIT_DEPTH_12_BIT_KHR = 16 + VkVideoCapabilityFlagBitsKHR* {.size: int32.sizeof.} = enum + VK_VIDEO_CAPABILITY_PROTECTED_CONTENT_BIT_KHR = 1 + VK_VIDEO_CAPABILITY_SEPARATE_REFERENCE_IMAGES_BIT_KHR = 2 + VkVideoSessionCreateFlagBitsKHR* {.size: int32.sizeof.} = enum + VK_VIDEO_SESSION_CREATE_PROTECTED_CONTENT_BIT_KHR = 1 + VkVideoDecodeH264PictureLayoutFlagBitsKHR* {.size: int32.sizeof.} = enum + VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_PROGRESSIVE_KHR = 0 + VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_INTERLACED_INTERLEAVED_LINES_BIT_KHR = 1 + VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_INTERLACED_SEPARATE_PLANES_BIT_KHR = 2 + VkVideoCodingControlFlagBitsKHR* {.size: int32.sizeof.} = enum + VK_VIDEO_CODING_CONTROL_RESET_BIT_KHR = 1 + VkQueryResultStatusKHR* {.size: int32.sizeof.} = enum + VK_QUERY_RESULT_STATUS_ERROR_KHR = -1 + VK_QUERY_RESULT_STATUS_NOT_READY_KHR = 0 + VK_QUERY_RESULT_STATUS_COMPLETE_KHR = 1 + VkVideoDecodeUsageFlagBitsKHR* {.size: int32.sizeof.} = enum + VK_VIDEO_DECODE_USAGE_DEFAULT_KHR = 0 + VK_VIDEO_DECODE_USAGE_TRANSCODING_BIT_KHR = 1 + VK_VIDEO_DECODE_USAGE_OFFLINE_BIT_KHR = 2 + VK_VIDEO_DECODE_USAGE_STREAMING_BIT_KHR = 4 + VkVideoDecodeCapabilityFlagBitsKHR* {.size: int32.sizeof.} = enum + VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_COINCIDE_BIT_KHR = 1 + VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_DISTINCT_BIT_KHR = 2 + VkVideoEncodeUsageFlagBitsKHR* {.size: int32.sizeof.} = enum + VK_VIDEO_ENCODE_USAGE_DEFAULT_KHR = 0 + VK_VIDEO_ENCODE_USAGE_TRANSCODING_BIT_KHR = 1 + VK_VIDEO_ENCODE_USAGE_STREAMING_BIT_KHR = 2 + VK_VIDEO_ENCODE_USAGE_RECORDING_BIT_KHR = 4 + VK_VIDEO_ENCODE_USAGE_CONFERENCING_BIT_KHR = 8 + VkVideoEncodeContentFlagBitsKHR* {.size: int32.sizeof.} = enum + VK_VIDEO_ENCODE_CONTENT_DEFAULT_KHR = 0 + VK_VIDEO_ENCODE_CONTENT_CAMERA_BIT_KHR = 1 + VK_VIDEO_ENCODE_CONTENT_DESKTOP_BIT_KHR = 2 + VK_VIDEO_ENCODE_CONTENT_RENDERED_BIT_KHR = 4 + VkVideoEncodeTuningModeKHR* {.size: int32.sizeof.} = enum + VK_VIDEO_ENCODE_TUNING_MODE_DEFAULT_KHR = 0 + VK_VIDEO_ENCODE_TUNING_MODE_HIGH_QUALITY_KHR = 1 + VK_VIDEO_ENCODE_TUNING_MODE_LOW_LATENCY_KHR = 2 + VK_VIDEO_ENCODE_TUNING_MODE_ULTRA_LOW_LATENCY_KHR = 3 + VK_VIDEO_ENCODE_TUNING_MODE_LOSSLESS_KHR = 4 + VkVideoEncodeCapabilityFlagBitsKHR* {.size: int32.sizeof.} = enum + VK_VIDEO_ENCODE_CAPABILITY_PRECEDING_EXTERNALLY_ENCODED_BYTES_BIT_KHR = 1 + VK_VIDEO_ENCODE_CAPABILITY_INSUFFICIENT_BITSTREAM_BUFFER_RANGE_DETECTION_BIT_KHR = 2 + VkVideoEncodeFeedbackFlagBitsKHR* {.size: int32.sizeof.} = enum + VK_VIDEO_ENCODE_FEEDBACK_BITSTREAM_BUFFER_OFFSET_BIT_KHR = 1 + VK_VIDEO_ENCODE_FEEDBACK_BITSTREAM_BYTES_WRITTEN_BIT_KHR = 2 + VK_VIDEO_ENCODE_FEEDBACK_BITSTREAM_HAS_OVERRIDES_BIT_KHR = 4 + VkVideoEncodeRateControlModeFlagBitsKHR* {.size: int32.sizeof.} = enum + VK_VIDEO_ENCODE_RATE_CONTROL_MODE_DEFAULT_KHR = 0 + VK_VIDEO_ENCODE_RATE_CONTROL_MODE_DISABLED_BIT_KHR = 1 + VK_VIDEO_ENCODE_RATE_CONTROL_MODE_CBR_BIT_KHR = 2 + VK_VIDEO_ENCODE_RATE_CONTROL_MODE_VBR_BIT_KHR = 4 + VkVideoEncodeH264CapabilityFlagBitsKHR* {.size: int32.sizeof.} = enum + VK_VIDEO_ENCODE_H264_CAPABILITY_HRD_COMPLIANCE_BIT_KHR = 1 + VK_VIDEO_ENCODE_H264_CAPABILITY_PREDICTION_WEIGHT_TABLE_GENERATED_BIT_KHR = 2 + VK_VIDEO_ENCODE_H264_CAPABILITY_ROW_UNALIGNED_SLICE_BIT_KHR = 4 + VK_VIDEO_ENCODE_H264_CAPABILITY_DIFFERENT_SLICE_TYPE_BIT_KHR = 8 + VK_VIDEO_ENCODE_H264_CAPABILITY_B_FRAME_IN_L0_LIST_BIT_KHR = 16 + VK_VIDEO_ENCODE_H264_CAPABILITY_B_FRAME_IN_L1_LIST_BIT_KHR = 32 + VK_VIDEO_ENCODE_H264_CAPABILITY_PER_PICTURE_TYPE_MIN_MAX_QP_BIT_KHR = 64 + VK_VIDEO_ENCODE_H264_CAPABILITY_PER_SLICE_CONSTANT_QP_BIT_KHR = 128 + VK_VIDEO_ENCODE_H264_CAPABILITY_GENERATE_PREFIX_NALU_BIT_KHR = 256 + VkVideoEncodeH264StdFlagBitsKHR* {.size: int32.sizeof.} = enum + VK_VIDEO_ENCODE_H264_STD_SEPARATE_COLOR_PLANE_FLAG_SET_BIT_KHR = 1 + VK_VIDEO_ENCODE_H264_STD_QPPRIME_Y_ZERO_TRANSFORM_BYPASS_FLAG_SET_BIT_KHR = 2 + VK_VIDEO_ENCODE_H264_STD_SCALING_MATRIX_PRESENT_FLAG_SET_BIT_KHR = 4 + VK_VIDEO_ENCODE_H264_STD_CHROMA_QP_INDEX_OFFSET_BIT_KHR = 8 + VK_VIDEO_ENCODE_H264_STD_SECOND_CHROMA_QP_INDEX_OFFSET_BIT_KHR = 16 + VK_VIDEO_ENCODE_H264_STD_PIC_INIT_QP_MINUS26_BIT_KHR = 32 + VK_VIDEO_ENCODE_H264_STD_WEIGHTED_PRED_FLAG_SET_BIT_KHR = 64 + VK_VIDEO_ENCODE_H264_STD_WEIGHTED_BIPRED_IDC_EXPLICIT_BIT_KHR = 128 + VK_VIDEO_ENCODE_H264_STD_WEIGHTED_BIPRED_IDC_IMPLICIT_BIT_KHR = 256 + VK_VIDEO_ENCODE_H264_STD_TRANSFORM_8X8_MODE_FLAG_SET_BIT_KHR = 512 + VK_VIDEO_ENCODE_H264_STD_DIRECT_SPATIAL_MV_PRED_FLAG_UNSET_BIT_KHR = 1024 + VK_VIDEO_ENCODE_H264_STD_ENTROPY_CODING_MODE_FLAG_UNSET_BIT_KHR = 2048 + VK_VIDEO_ENCODE_H264_STD_ENTROPY_CODING_MODE_FLAG_SET_BIT_KHR = 4096 + VK_VIDEO_ENCODE_H264_STD_DIRECT_8X8_INFERENCE_FLAG_UNSET_BIT_KHR = 8192 + VK_VIDEO_ENCODE_H264_STD_CONSTRAINED_INTRA_PRED_FLAG_SET_BIT_KHR = 16384 + VK_VIDEO_ENCODE_H264_STD_DEBLOCKING_FILTER_DISABLED_BIT_KHR = 32768 + VK_VIDEO_ENCODE_H264_STD_DEBLOCKING_FILTER_ENABLED_BIT_KHR = 65536 + VK_VIDEO_ENCODE_H264_STD_DEBLOCKING_FILTER_PARTIAL_BIT_KHR = 131072 + VK_VIDEO_ENCODE_H264_STD_SLICE_QP_DELTA_BIT_KHR = 524288 + VK_VIDEO_ENCODE_H264_STD_DIFFERENT_SLICE_QP_DELTA_BIT_KHR = 1048576 + VkVideoEncodeH264RateControlFlagBitsKHR* {.size: int32.sizeof.} = enum + VK_VIDEO_ENCODE_H264_RATE_CONTROL_ATTEMPT_HRD_COMPLIANCE_BIT_KHR = 1 + VK_VIDEO_ENCODE_H264_RATE_CONTROL_REGULAR_GOP_BIT_KHR = 2 + VK_VIDEO_ENCODE_H264_RATE_CONTROL_REFERENCE_PATTERN_FLAT_BIT_KHR = 4 + VK_VIDEO_ENCODE_H264_RATE_CONTROL_REFERENCE_PATTERN_DYADIC_BIT_KHR = 8 + VK_VIDEO_ENCODE_H264_RATE_CONTROL_TEMPORAL_LAYER_PATTERN_DYADIC_BIT_KHR = 16 + VkHostImageCopyFlagBitsEXT* {.size: int32.sizeof.} = enum + VK_HOST_IMAGE_COPY_MEMCPY_EXT = 1 + VkImageConstraintsInfoFlagBitsFUCHSIA* {.size: int32.sizeof.} = enum + VK_IMAGE_CONSTRAINTS_INFO_CPU_READ_RARELY_FUCHSIA = 1 + VK_IMAGE_CONSTRAINTS_INFO_CPU_READ_OFTEN_FUCHSIA = 2 + VK_IMAGE_CONSTRAINTS_INFO_CPU_WRITE_RARELY_FUCHSIA = 4 + VK_IMAGE_CONSTRAINTS_INFO_CPU_WRITE_OFTEN_FUCHSIA = 8 + VK_IMAGE_CONSTRAINTS_INFO_PROTECTED_OPTIONAL_FUCHSIA = 16 + VkFormatFeatureFlagBits2* {.size: int32.sizeof.} = enum + VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_BIT = 1 + VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT = 2 + VK_FORMAT_FEATURE_2_STORAGE_IMAGE_ATOMIC_BIT = 4 + VK_FORMAT_FEATURE_2_UNIFORM_TEXEL_BUFFER_BIT = 8 + VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_BIT = 16 + VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_ATOMIC_BIT = 32 + VK_FORMAT_FEATURE_2_VERTEX_BUFFER_BIT = 64 + VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BIT = 128 + VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BLEND_BIT = 256 + VK_FORMAT_FEATURE_2_DEPTH_STENCIL_ATTACHMENT_BIT = 512 + VK_FORMAT_FEATURE_2_BLIT_SRC_BIT = 1024 + VK_FORMAT_FEATURE_2_BLIT_DST_BIT = 2048 + VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_LINEAR_BIT = 4096 + VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_CUBIC_BIT = 8192 + VK_FORMAT_FEATURE_2_TRANSFER_SRC_BIT = 16384 + VK_FORMAT_FEATURE_2_TRANSFER_DST_BIT = 32768 + VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_MINMAX_BIT = 65536 + VK_FORMAT_FEATURE_2_MIDPOINT_CHROMA_SAMPLES_BIT = 131072 + VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT = 262144 + VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT = 524288 + VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT = 1048576 + VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT = 2097152 + VK_FORMAT_FEATURE_2_DISJOINT_BIT = 4194304 + VK_FORMAT_FEATURE_2_COSITED_CHROMA_SAMPLES_BIT = 8388608 + VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT = 2147483648 + VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT = 4294967296 + VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_DEPTH_COMPARISON_BIT = 8589934592 + VkRenderingFlagBits* {.size: int32.sizeof.} = enum + VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT = 1 + VK_RENDERING_SUSPENDING_BIT = 2 + VK_RENDERING_RESUMING_BIT = 4 + VkVideoEncodeH265CapabilityFlagBitsKHR* {.size: int32.sizeof.} = enum + VK_VIDEO_ENCODE_H265_CAPABILITY_HRD_COMPLIANCE_BIT_KHR = 1 + VK_VIDEO_ENCODE_H265_CAPABILITY_PREDICTION_WEIGHT_TABLE_GENERATED_BIT_KHR = 2 + VK_VIDEO_ENCODE_H265_CAPABILITY_ROW_UNALIGNED_SLICE_SEGMENT_BIT_KHR = 4 + VK_VIDEO_ENCODE_H265_CAPABILITY_DIFFERENT_SLICE_SEGMENT_TYPE_BIT_KHR = 8 + VK_VIDEO_ENCODE_H265_CAPABILITY_B_FRAME_IN_L0_LIST_BIT_KHR = 16 + VK_VIDEO_ENCODE_H265_CAPABILITY_B_FRAME_IN_L1_LIST_BIT_KHR = 32 + VK_VIDEO_ENCODE_H265_CAPABILITY_PER_PICTURE_TYPE_MIN_MAX_QP_BIT_KHR = 64 + VK_VIDEO_ENCODE_H265_CAPABILITY_PER_SLICE_SEGMENT_CONSTANT_QP_BIT_KHR = 128 + VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_TILES_PER_SLICE_SEGMENT_BIT_KHR = 256 + VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_SLICE_SEGMENTS_PER_TILE_BIT_KHR = 512 + VkVideoEncodeH265StdFlagBitsKHR* {.size: int32.sizeof.} = enum + VK_VIDEO_ENCODE_H265_STD_SEPARATE_COLOR_PLANE_FLAG_SET_BIT_KHR = 1 + VK_VIDEO_ENCODE_H265_STD_SAMPLE_ADAPTIVE_OFFSET_ENABLED_FLAG_SET_BIT_KHR = 2 + VK_VIDEO_ENCODE_H265_STD_SCALING_LIST_DATA_PRESENT_FLAG_SET_BIT_KHR = 4 + VK_VIDEO_ENCODE_H265_STD_PCM_ENABLED_FLAG_SET_BIT_KHR = 8 + VK_VIDEO_ENCODE_H265_STD_SPS_TEMPORAL_MVP_ENABLED_FLAG_SET_BIT_KHR = 16 + VK_VIDEO_ENCODE_H265_STD_INIT_QP_MINUS26_BIT_KHR = 32 + VK_VIDEO_ENCODE_H265_STD_WEIGHTED_PRED_FLAG_SET_BIT_KHR = 64 + VK_VIDEO_ENCODE_H265_STD_WEIGHTED_BIPRED_FLAG_SET_BIT_KHR = 128 + VK_VIDEO_ENCODE_H265_STD_LOG2_PARALLEL_MERGE_LEVEL_MINUS2_BIT_KHR = 256 + VK_VIDEO_ENCODE_H265_STD_SIGN_DATA_HIDING_ENABLED_FLAG_SET_BIT_KHR = 512 + VK_VIDEO_ENCODE_H265_STD_TRANSFORM_SKIP_ENABLED_FLAG_SET_BIT_KHR = 1024 + VK_VIDEO_ENCODE_H265_STD_TRANSFORM_SKIP_ENABLED_FLAG_UNSET_BIT_KHR = 2048 + VK_VIDEO_ENCODE_H265_STD_PPS_SLICE_CHROMA_QP_OFFSETS_PRESENT_FLAG_SET_BIT_KHR = 4096 + VK_VIDEO_ENCODE_H265_STD_TRANSQUANT_BYPASS_ENABLED_FLAG_SET_BIT_KHR = 8192 + VK_VIDEO_ENCODE_H265_STD_CONSTRAINED_INTRA_PRED_FLAG_SET_BIT_KHR = 16384 + VK_VIDEO_ENCODE_H265_STD_ENTROPY_CODING_SYNC_ENABLED_FLAG_SET_BIT_KHR = 32768 + VK_VIDEO_ENCODE_H265_STD_DEBLOCKING_FILTER_OVERRIDE_ENABLED_FLAG_SET_BIT_KHR = 65536 + VK_VIDEO_ENCODE_H265_STD_DEPENDENT_SLICE_SEGMENTS_ENABLED_FLAG_SET_BIT_KHR = 131072 + VK_VIDEO_ENCODE_H265_STD_DEPENDENT_SLICE_SEGMENT_FLAG_SET_BIT_KHR = 262144 + VK_VIDEO_ENCODE_H265_STD_SLICE_QP_DELTA_BIT_KHR = 524288 + VK_VIDEO_ENCODE_H265_STD_DIFFERENT_SLICE_QP_DELTA_BIT_KHR = 1048576 + VkVideoEncodeH265RateControlFlagBitsKHR* {.size: int32.sizeof.} = enum + VK_VIDEO_ENCODE_H265_RATE_CONTROL_ATTEMPT_HRD_COMPLIANCE_BIT_KHR = 1 + VK_VIDEO_ENCODE_H265_RATE_CONTROL_REGULAR_GOP_BIT_KHR = 2 + VK_VIDEO_ENCODE_H265_RATE_CONTROL_REFERENCE_PATTERN_FLAT_BIT_KHR = 4 + VK_VIDEO_ENCODE_H265_RATE_CONTROL_REFERENCE_PATTERN_DYADIC_BIT_KHR = 8 + VK_VIDEO_ENCODE_H265_RATE_CONTROL_TEMPORAL_SUB_LAYER_PATTERN_DYADIC_BIT_KHR = 16 + VkVideoEncodeH265CtbSizeFlagBitsKHR* {.size: int32.sizeof.} = enum + VK_VIDEO_ENCODE_H265_CTB_SIZE_16_BIT_KHR = 1 + VK_VIDEO_ENCODE_H265_CTB_SIZE_32_BIT_KHR = 2 + VK_VIDEO_ENCODE_H265_CTB_SIZE_64_BIT_KHR = 4 + VkVideoEncodeH265TransformBlockSizeFlagBitsKHR* {.size: int32.sizeof.} = enum + VK_VIDEO_ENCODE_H265_TRANSFORM_BLOCK_SIZE_4_BIT_KHR = 1 + VK_VIDEO_ENCODE_H265_TRANSFORM_BLOCK_SIZE_8_BIT_KHR = 2 + VK_VIDEO_ENCODE_H265_TRANSFORM_BLOCK_SIZE_16_BIT_KHR = 4 + VK_VIDEO_ENCODE_H265_TRANSFORM_BLOCK_SIZE_32_BIT_KHR = 8 + VkExportMetalObjectTypeFlagBitsEXT* {.size: int32.sizeof.} = enum + VK_EXPORT_METAL_OBJECT_TYPE_METAL_DEVICE_BIT_EXT = 1 + VK_EXPORT_METAL_OBJECT_TYPE_METAL_COMMAND_QUEUE_BIT_EXT = 2 + VK_EXPORT_METAL_OBJECT_TYPE_METAL_BUFFER_BIT_EXT = 4 + VK_EXPORT_METAL_OBJECT_TYPE_METAL_TEXTURE_BIT_EXT = 8 + VK_EXPORT_METAL_OBJECT_TYPE_METAL_IOSURFACE_BIT_EXT = 16 + VK_EXPORT_METAL_OBJECT_TYPE_METAL_SHARED_EVENT_BIT_EXT = 32 + VkImageCompressionFlagBitsEXT* {.size: int32.sizeof.} = enum + VK_IMAGE_COMPRESSION_DEFAULT_EXT = 0 + VK_IMAGE_COMPRESSION_FIXED_RATE_DEFAULT_EXT = 1 + VK_IMAGE_COMPRESSION_FIXED_RATE_EXPLICIT_EXT = 2 + VK_IMAGE_COMPRESSION_DISABLED_EXT = 4 + VkImageCompressionFixedRateFlagBitsEXT* {.size: int32.sizeof.} = enum + VK_IMAGE_COMPRESSION_FIXED_RATE_NONE_EXT = 0 + VK_IMAGE_COMPRESSION_FIXED_RATE_1BPC_BIT_EXT = 1 + VK_IMAGE_COMPRESSION_FIXED_RATE_2BPC_BIT_EXT = 2 + VK_IMAGE_COMPRESSION_FIXED_RATE_3BPC_BIT_EXT = 4 + VK_IMAGE_COMPRESSION_FIXED_RATE_4BPC_BIT_EXT = 8 + VK_IMAGE_COMPRESSION_FIXED_RATE_5BPC_BIT_EXT = 16 + VK_IMAGE_COMPRESSION_FIXED_RATE_6BPC_BIT_EXT = 32 + VK_IMAGE_COMPRESSION_FIXED_RATE_7BPC_BIT_EXT = 64 + VK_IMAGE_COMPRESSION_FIXED_RATE_8BPC_BIT_EXT = 128 + VK_IMAGE_COMPRESSION_FIXED_RATE_9BPC_BIT_EXT = 256 + VK_IMAGE_COMPRESSION_FIXED_RATE_10BPC_BIT_EXT = 512 + VK_IMAGE_COMPRESSION_FIXED_RATE_11BPC_BIT_EXT = 1024 + VK_IMAGE_COMPRESSION_FIXED_RATE_12BPC_BIT_EXT = 2048 + VK_IMAGE_COMPRESSION_FIXED_RATE_13BPC_BIT_EXT = 4096 + VK_IMAGE_COMPRESSION_FIXED_RATE_14BPC_BIT_EXT = 8192 + VK_IMAGE_COMPRESSION_FIXED_RATE_15BPC_BIT_EXT = 16384 + VK_IMAGE_COMPRESSION_FIXED_RATE_16BPC_BIT_EXT = 32768 + VK_IMAGE_COMPRESSION_FIXED_RATE_17BPC_BIT_EXT = 65536 + VK_IMAGE_COMPRESSION_FIXED_RATE_18BPC_BIT_EXT = 131072 + VK_IMAGE_COMPRESSION_FIXED_RATE_19BPC_BIT_EXT = 262144 + VK_IMAGE_COMPRESSION_FIXED_RATE_20BPC_BIT_EXT = 524288 + VK_IMAGE_COMPRESSION_FIXED_RATE_21BPC_BIT_EXT = 1048576 + VK_IMAGE_COMPRESSION_FIXED_RATE_22BPC_BIT_EXT = 2097152 + VK_IMAGE_COMPRESSION_FIXED_RATE_23BPC_BIT_EXT = 4194304 + VK_IMAGE_COMPRESSION_FIXED_RATE_24BPC_BIT_EXT = 8388608 + VkPipelineRobustnessBufferBehaviorEXT* {.size: int32.sizeof.} = enum + VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DEVICE_DEFAULT_EXT = 0 + VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DISABLED_EXT = 1 + VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_EXT = 2 + VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2_EXT = 3 + VkPipelineRobustnessImageBehaviorEXT* {.size: int32.sizeof.} = enum + VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_DEVICE_DEFAULT_EXT = 0 + VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_DISABLED_EXT = 1 + VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS_EXT = 2 + VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS_2_EXT = 3 + VkOpticalFlowGridSizeFlagBitsNV* {.size: int32.sizeof.} = enum + VK_OPTICAL_FLOW_GRID_SIZE_UNKNOWN_NV = 0 + VK_OPTICAL_FLOW_GRID_SIZE_1X1_BIT_NV = 1 + VK_OPTICAL_FLOW_GRID_SIZE_2X2_BIT_NV = 2 + VK_OPTICAL_FLOW_GRID_SIZE_4X4_BIT_NV = 4 + VK_OPTICAL_FLOW_GRID_SIZE_8X8_BIT_NV = 8 + VkOpticalFlowUsageFlagBitsNV* {.size: int32.sizeof.} = enum + VK_OPTICAL_FLOW_USAGE_UNKNOWN_NV = 0 + VK_OPTICAL_FLOW_USAGE_INPUT_BIT_NV = 1 + VK_OPTICAL_FLOW_USAGE_OUTPUT_BIT_NV = 2 + VK_OPTICAL_FLOW_USAGE_HINT_BIT_NV = 4 + VK_OPTICAL_FLOW_USAGE_COST_BIT_NV = 8 + VK_OPTICAL_FLOW_USAGE_GLOBAL_FLOW_BIT_NV = 16 + VkOpticalFlowPerformanceLevelNV* {.size: int32.sizeof.} = enum + VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_UNKNOWN_NV = 0 + VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_SLOW_NV = 1 + VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_MEDIUM_NV = 2 + VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_FAST_NV = 3 + VkOpticalFlowSessionBindingPointNV* {.size: int32.sizeof.} = enum + VK_OPTICAL_FLOW_SESSION_BINDING_POINT_UNKNOWN_NV = 0 + VK_OPTICAL_FLOW_SESSION_BINDING_POINT_INPUT_NV = 1 + VK_OPTICAL_FLOW_SESSION_BINDING_POINT_REFERENCE_NV = 2 + VK_OPTICAL_FLOW_SESSION_BINDING_POINT_HINT_NV = 3 + VK_OPTICAL_FLOW_SESSION_BINDING_POINT_FLOW_VECTOR_NV = 4 + VK_OPTICAL_FLOW_SESSION_BINDING_POINT_BACKWARD_FLOW_VECTOR_NV = 5 + VK_OPTICAL_FLOW_SESSION_BINDING_POINT_COST_NV = 6 + VK_OPTICAL_FLOW_SESSION_BINDING_POINT_BACKWARD_COST_NV = 7 + VK_OPTICAL_FLOW_SESSION_BINDING_POINT_GLOBAL_FLOW_NV = 8 + VkOpticalFlowSessionCreateFlagBitsNV* {.size: int32.sizeof.} = enum + VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_HINT_BIT_NV = 1 + VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_COST_BIT_NV = 2 + VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_GLOBAL_FLOW_BIT_NV = 4 + VK_OPTICAL_FLOW_SESSION_CREATE_ALLOW_REGIONS_BIT_NV = 8 + VK_OPTICAL_FLOW_SESSION_CREATE_BOTH_DIRECTIONS_BIT_NV = 16 + VkOpticalFlowExecuteFlagBitsNV* {.size: int32.sizeof.} = enum + VK_OPTICAL_FLOW_EXECUTE_DISABLE_TEMPORAL_HINTS_BIT_NV = 1 + VkMicromapTypeEXT* {.size: int32.sizeof.} = enum + VK_MICROMAP_TYPE_OPACITY_MICROMAP_EXT = 0 + VkBuildMicromapFlagBitsEXT* {.size: int32.sizeof.} = enum + VK_BUILD_MICROMAP_PREFER_FAST_TRACE_BIT_EXT = 1 + VK_BUILD_MICROMAP_PREFER_FAST_BUILD_BIT_EXT = 2 + VK_BUILD_MICROMAP_ALLOW_COMPACTION_BIT_EXT = 4 + VkMicromapCreateFlagBitsEXT* {.size: int32.sizeof.} = enum + VK_MICROMAP_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT = 1 + VkCopyMicromapModeEXT* {.size: int32.sizeof.} = enum + VK_COPY_MICROMAP_MODE_CLONE_EXT = 0 + VK_COPY_MICROMAP_MODE_SERIALIZE_EXT = 1 + VK_COPY_MICROMAP_MODE_DESERIALIZE_EXT = 2 + VK_COPY_MICROMAP_MODE_COMPACT_EXT = 3 + VkBuildMicromapModeEXT* {.size: int32.sizeof.} = enum + VK_BUILD_MICROMAP_MODE_BUILD_EXT = 0 + VkOpacityMicromapFormatEXT* {.size: int32.sizeof.} = enum + VK_OPACITY_MICROMAP_FORMAT_2_STATE_EXT = 1 + VK_OPACITY_MICROMAP_FORMAT_4_STATE_EXT = 2 + VkOpacityMicromapSpecialIndexEXT* {.size: int32.sizeof.} = enum + VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_OPAQUE_EXT = -4 + VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_TRANSPARENT_EXT = -3 + VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_OPAQUE_EXT = -2 + VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_TRANSPARENT_EXT = -1 + VkDepthBiasRepresentationEXT* {.size: int32.sizeof.} = enum + VK_DEPTH_BIAS_REPRESENTATION_LEAST_REPRESENTABLE_VALUE_FORMAT_EXT = 0 + VK_DEPTH_BIAS_REPRESENTATION_LEAST_REPRESENTABLE_VALUE_FORCE_UNORM_EXT = 1 + VK_DEPTH_BIAS_REPRESENTATION_FLOAT_EXT = 2 + VkDeviceFaultAddressTypeEXT* {.size: int32.sizeof.} = enum + VK_DEVICE_FAULT_ADDRESS_TYPE_NONE_EXT = 0 + VK_DEVICE_FAULT_ADDRESS_TYPE_READ_INVALID_EXT = 1 + VK_DEVICE_FAULT_ADDRESS_TYPE_WRITE_INVALID_EXT = 2 + VK_DEVICE_FAULT_ADDRESS_TYPE_EXECUTE_INVALID_EXT = 3 + VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_UNKNOWN_EXT = 4 + VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_INVALID_EXT = 5 + VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_FAULT_EXT = 6 + VkDeviceFaultVendorBinaryHeaderVersionEXT* {.size: int32.sizeof.} = enum + VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VERSION_ONE_EXT = 1 + VkDisplacementMicromapFormatNV* {.size: int32.sizeof.} = enum + VK_DISPLACEMENT_MICROMAP_FORMAT_64_TRIANGLES_64_BYTES_NV = 1 + VK_DISPLACEMENT_MICROMAP_FORMAT_256_TRIANGLES_128_BYTES_NV = 2 + VK_DISPLACEMENT_MICROMAP_FORMAT_1024_TRIANGLES_128_BYTES_NV = 3 + VkShaderCreateFlagBitsEXT* {.size: int32.sizeof.} = enum + VK_SHADER_CREATE_LINK_STAGE_BIT_EXT = 1 + VkShaderCodeTypeEXT* {.size: int32.sizeof.} = enum + VK_SHADER_CODE_TYPE_BINARY_EXT = 0 + VK_SHADER_CODE_TYPE_SPIRV_EXT = 1 + VkScopeKHR* {.size: int32.sizeof.} = enum + VK_SCOPE_DEVICE_KHR = 1 + VK_SCOPE_WORKGROUP_KHR = 2 + VK_SCOPE_SUBGROUP_KHR = 3 + VK_SCOPE_QUEUE_FAMILY_KHR = 5 + VkComponentTypeKHR* {.size: int32.sizeof.} = enum + VK_COMPONENT_TYPE_FLOAT16_KHR = 0 + VK_COMPONENT_TYPE_FLOAT32_KHR = 1 + VK_COMPONENT_TYPE_FLOAT64_KHR = 2 + VK_COMPONENT_TYPE_SINT8_KHR = 3 + VK_COMPONENT_TYPE_SINT16_KHR = 4 + VK_COMPONENT_TYPE_SINT32_KHR = 5 + VK_COMPONENT_TYPE_SINT64_KHR = 6 + VK_COMPONENT_TYPE_UINT8_KHR = 7 + VK_COMPONENT_TYPE_UINT16_KHR = 8 + VK_COMPONENT_TYPE_UINT32_KHR = 9 + VK_COMPONENT_TYPE_UINT64_KHR = 10 + VkCubicFilterWeightsQCOM* {.size: int32.sizeof.} = enum + VK_CUBIC_FILTER_WEIGHTS_CATMULL_ROM_QCOM = 0 + VK_CUBIC_FILTER_WEIGHTS_ZERO_TANGENT_CARDINAL_QCOM = 1 + VK_CUBIC_FILTER_WEIGHTS_B_SPLINE_QCOM = 2 + VK_CUBIC_FILTER_WEIGHTS_MITCHELL_NETRAVALI_QCOM = 3 + VkBlockMatchWindowCompareModeQCOM* {.size: int32.sizeof.} = enum + VK_BLOCK_MATCH_WINDOW_COMPARE_MODE_MIN_QCOM = 0 + VK_BLOCK_MATCH_WINDOW_COMPARE_MODE_MAX_QCOM = 1 + VkLayeredDriverUnderlyingApiMSFT* {.size: int32.sizeof.} = enum + VK_LAYERED_DRIVER_UNDERLYING_API_NONE_MSFT = 0 + VK_LAYERED_DRIVER_UNDERLYING_API_D3D12_MSFT = 1 + VkLatencyMarkerNV* {.size: int32.sizeof.} = enum + VK_LATENCY_MARKER_SIMULATION_START_NV = 0 + VK_LATENCY_MARKER_SIMULATION_END_NV = 1 + VK_LATENCY_MARKER_RENDERSUBMIT_START_NV = 2 + VK_LATENCY_MARKER_RENDERSUBMIT_END_NV = 3 + VK_LATENCY_MARKER_PRESENT_START_NV = 4 + VK_LATENCY_MARKER_PRESENT_END_NV = 5 + VK_LATENCY_MARKER_INPUT_SAMPLE_NV = 6 + VK_LATENCY_MARKER_TRIGGER_FLASH_NV = 7 + VK_LATENCY_MARKER_OUT_OF_BAND_RENDERSUBMIT_START_NV = 8 + VK_LATENCY_MARKER_OUT_OF_BAND_RENDERSUBMIT_END_NV = 9 + VK_LATENCY_MARKER_OUT_OF_BAND_PRESENT_START_NV = 10 + VK_LATENCY_MARKER_OUT_OF_BAND_PRESENT_END_NV = 11 + VkOutOfBandQueueTypeNV* {.size: int32.sizeof.} = enum + VK_OUT_OF_BAND_QUEUE_TYPE_RENDER_NV = 0 + VK_OUT_OF_BAND_QUEUE_TYPE_PRESENT_NV = 1 # Types @@ -1201,6 +1765,14 @@ type zx_handle_t* = ptr object GgpStreamDescriptor* = ptr object GgpFrameToken* = ptr object + _screen_context* = ptr object + _screen_window* = ptr object + _screen_buffer* = ptr object + NvSciSyncAttrList* = ptr object + NvSciSyncObj* = ptr object + NvSciSyncFence* = ptr object + NvSciBufAttrList* = ptr object + NvSciBufObj* = ptr object template vkMakeVersion*(major, minor, patch: untyped): untyped = (((major) shl 22) or ((minor) shl 12) or (patch)) @@ -1217,11 +1789,13 @@ template vkVersionPatch*(version: untyped): untyped = const vkApiVersion1_0* = vkMakeVersion(1, 0, 0) const vkApiVersion1_1* = vkMakeVersion(1, 1, 0) const vkApiVersion1_2* = vkMakeVersion(1, 2, 0) +const vkApiVersion1_2* = vkMakeVersion(1, 3, 0) type VkSampleMask* = distinct uint32 VkBool32* = distinct uint32 VkFlags* = distinct uint32 + VkFlags64* = distinct uint64 VkDeviceSize* = distinct uint64 VkDeviceAddress* = distinct uint64 VkFramebufferCreateFlags* = distinct VkFlags @@ -1231,8 +1805,10 @@ type VkPipelineLayoutCreateFlags* = distinct VkFlags VkPipelineCacheCreateFlags* = distinct VkFlags VkPipelineDepthStencilStateCreateFlags* = distinct VkFlags + VkPipelineDepthStencilStateCreateFlags* = distinct VkFlags VkPipelineDynamicStateCreateFlags* = distinct VkFlags VkPipelineColorBlendStateCreateFlags* = distinct VkFlags + VkPipelineColorBlendStateCreateFlags* = distinct VkFlags VkPipelineMultisampleStateCreateFlags* = distinct VkFlags VkPipelineRasterizationStateCreateFlags* = distinct VkFlags VkPipelineViewportStateCreateFlags* = distinct VkFlags @@ -1270,6 +1846,7 @@ type VkCommandBufferUsageFlags* = distinct VkFlags VkQueryPipelineStatisticFlags* = distinct VkFlags VkMemoryMapFlags* = distinct VkFlags + VkMemoryUnmapFlagsKHR* = distinct VkFlags VkImageAspectFlags* = distinct VkFlags VkSparseMemoryBindFlags* = distinct VkFlags VkSparseImageFormatFlags* = distinct VkFlags @@ -1291,10 +1868,13 @@ type VkGeometryInstanceFlagsNV* = VkGeometryInstanceFlagsKHR VkBuildAccelerationStructureFlagsKHR* = distinct VkFlags VkBuildAccelerationStructureFlagsNV* = VkBuildAccelerationStructureFlagsKHR - VkPrivateDataSlotCreateFlagsEXT* = distinct VkFlags + VkPrivateDataSlotCreateFlags* = distinct VkFlags + VkPrivateDataSlotCreateFlagsEXT* = VkPrivateDataSlotCreateFlags + VkAccelerationStructureCreateFlagsKHR* = distinct VkFlags VkDescriptorUpdateTemplateCreateFlags* = distinct VkFlags VkDescriptorUpdateTemplateCreateFlagsKHR* = VkDescriptorUpdateTemplateCreateFlags - VkPipelineCreationFeedbackFlagsEXT* = distinct VkFlags + VkPipelineCreationFeedbackFlags* = distinct VkFlags + VkPipelineCreationFeedbackFlagsEXT* = VkPipelineCreationFeedbackFlags VkPerformanceCounterDescriptionFlagsKHR* = distinct VkFlags VkAcquireProfilingLockFlagsKHR* = distinct VkFlags VkSemaphoreWaitFlags* = distinct VkFlags @@ -1302,6 +1882,23 @@ type VkPipelineCompilerControlFlagsAMD* = distinct VkFlags VkShaderCorePropertiesFlagsAMD* = distinct VkFlags VkDeviceDiagnosticsConfigFlagsNV* = distinct VkFlags + VkRefreshObjectFlagsKHR* = distinct VkFlags + VkAccessFlags2* = distinct VkFlags64 + VkAccessFlags2KHR* = VkAccessFlags2 + VkPipelineStageFlags2* = distinct VkFlags64 + VkPipelineStageFlags2KHR* = VkPipelineStageFlags2 + VkAccelerationStructureMotionInfoFlagsNV* = distinct VkFlags + VkAccelerationStructureMotionInstanceFlagsNV* = distinct VkFlags + VkFormatFeatureFlags2* = distinct VkFlags64 + VkFormatFeatureFlags2KHR* = VkFormatFeatureFlags2 + VkRenderingFlags* = distinct VkFlags + VkMemoryDecompressionMethodFlagsNV* = distinct VkFlags64 + VkRenderingFlagsKHR* = VkRenderingFlags + VkBuildMicromapFlagsEXT* = distinct VkFlags + VkMicromapCreateFlagsEXT* = distinct VkFlags + VkDirectDriverLoadingFlagsLUNARG* = distinct VkFlags + VkPipelineCreateFlags2KHR* = distinct VkFlags64 + VkBufferUsageFlags2KHR* = distinct VkFlags64 VkCompositeAlphaFlagsKHR* = distinct VkFlags VkDisplayPlaneAlphaFlagsKHR* = distinct VkFlags VkSurfaceTransformFlagsKHR* = distinct VkFlags @@ -1321,6 +1918,7 @@ type VkImagePipeSurfaceCreateFlagsFUCHSIA* = distinct VkFlags VkStreamDescriptorSurfaceCreateFlagsGGP* = distinct VkFlags VkHeadlessSurfaceCreateFlagsEXT* = distinct VkFlags + VkScreenSurfaceCreateFlagsQNX* = distinct VkFlags VkPeerMemoryFeatureFlags* = distinct VkFlags VkPeerMemoryFeatureFlagsKHR* = VkPeerMemoryFeatureFlags VkMemoryAllocateFlags* = distinct VkFlags @@ -1358,6 +1956,7 @@ type VkDebugUtilsMessageTypeFlagsEXT* = distinct VkFlags VkDebugUtilsMessengerCreateFlagsEXT* = distinct VkFlags VkDebugUtilsMessengerCallbackDataFlagsEXT* = distinct VkFlags + VkDeviceMemoryReportFlagsEXT* = distinct VkFlags VkPipelineRasterizationConservativeStateCreateFlagsEXT* = distinct VkFlags VkDescriptorBindingFlags* = distinct VkFlags VkDescriptorBindingFlagsEXT* = VkDescriptorBindingFlags @@ -1367,7 +1966,55 @@ type VkPipelineRasterizationStateStreamCreateFlagsEXT* = distinct VkFlags VkPipelineRasterizationDepthClipStateCreateFlagsEXT* = distinct VkFlags VkSwapchainImageUsageFlagsANDROID* = distinct VkFlags - VkToolPurposeFlagsEXT* = distinct VkFlags + VkToolPurposeFlags* = distinct VkFlags + VkToolPurposeFlagsEXT* = VkToolPurposeFlags + VkSubmitFlags* = distinct VkFlags + VkSubmitFlagsKHR* = VkSubmitFlags + VkImageFormatConstraintsFlagsFUCHSIA* = distinct VkFlags + VkHostImageCopyFlagsEXT* = distinct VkFlags + VkImageConstraintsInfoFlagsFUCHSIA* = distinct VkFlags + VkGraphicsPipelineLibraryFlagsEXT* = distinct VkFlags + VkImageCompressionFlagsEXT* = distinct VkFlags + VkImageCompressionFixedRateFlagsEXT* = distinct VkFlags + VkExportMetalObjectTypeFlagsEXT* = distinct VkFlags + VkDeviceAddressBindingFlagsEXT* = distinct VkFlags + VkOpticalFlowGridSizeFlagsNV* = distinct VkFlags + VkOpticalFlowUsageFlagsNV* = distinct VkFlags + VkOpticalFlowSessionCreateFlagsNV* = distinct VkFlags + VkOpticalFlowExecuteFlagsNV* = distinct VkFlags + VkFrameBoundaryFlagsEXT* = distinct VkFlags + VkPresentScalingFlagsEXT* = distinct VkFlags + VkPresentGravityFlagsEXT* = distinct VkFlags + VkShaderCreateFlagsEXT* = distinct VkFlags + VkPhysicalDeviceSchedulingControlsFlagsARM* = distinct VkFlags64 + VkVideoCodecOperationFlagsKHR* = distinct VkFlags + VkVideoCapabilityFlagsKHR* = distinct VkFlags + VkVideoSessionCreateFlagsKHR* = distinct VkFlags + VkVideoSessionParametersCreateFlagsKHR* = distinct VkFlags + VkVideoBeginCodingFlagsKHR* = distinct VkFlags + VkVideoEndCodingFlagsKHR* = distinct VkFlags + VkVideoCodingControlFlagsKHR* = distinct VkFlags + VkVideoDecodeUsageFlagsKHR* = distinct VkFlags + VkVideoDecodeCapabilityFlagsKHR* = distinct VkFlags + VkVideoDecodeFlagsKHR* = distinct VkFlags + VkVideoDecodeH264PictureLayoutFlagsKHR* = distinct VkFlags + VkVideoEncodeFlagsKHR* = distinct VkFlags + VkVideoEncodeUsageFlagsKHR* = distinct VkFlags + VkVideoEncodeContentFlagsKHR* = distinct VkFlags + VkVideoEncodeCapabilityFlagsKHR* = distinct VkFlags + VkVideoEncodeFeedbackFlagsKHR* = distinct VkFlags + VkVideoEncodeRateControlFlagsKHR* = distinct VkFlags + VkVideoEncodeRateControlModeFlagsKHR* = distinct VkFlags + VkVideoChromaSubsamplingFlagsKHR* = distinct VkFlags + VkVideoComponentBitDepthFlagsKHR* = distinct VkFlags + VkVideoEncodeH264CapabilityFlagsKHR* = distinct VkFlags + VkVideoEncodeH264StdFlagsKHR* = distinct VkFlags + VkVideoEncodeH264RateControlFlagsKHR* = distinct VkFlags + VkVideoEncodeH265CapabilityFlagsKHR* = distinct VkFlags + VkVideoEncodeH265StdFlagsKHR* = distinct VkFlags + VkVideoEncodeH265RateControlFlagsKHR* = distinct VkFlags + VkVideoEncodeH265CtbSizeFlagsKHR* = distinct VkFlags + VkVideoEncodeH265TransformBlockSizeFlagsKHR* = distinct VkFlags VkInstance* = distinct VkHandle VkPhysicalDevice* = distinct VkHandle VkDevice* = distinct VkHandle @@ -1400,18 +2047,31 @@ type VkSamplerYcbcrConversionKHR* = VkSamplerYcbcrConversion VkValidationCacheEXT* = distinct VkNonDispatchableHandle VkAccelerationStructureKHR* = distinct VkNonDispatchableHandle - VkAccelerationStructureNV* = VkAccelerationStructureKHR + VkAccelerationStructureNV* = distinct VkNonDispatchableHandle VkPerformanceConfigurationINTEL* = distinct VkNonDispatchableHandle + VkBufferCollectionFUCHSIA* = distinct VkNonDispatchableHandle VkDeferredOperationKHR* = distinct VkNonDispatchableHandle - VkPrivateDataSlotEXT* = distinct VkNonDispatchableHandle + VkPrivateDataSlot* = distinct VkNonDispatchableHandle + VkPrivateDataSlotEXT* = VkPrivateDataSlot + VkCuModuleNVX* = distinct VkNonDispatchableHandle + VkCuFunctionNVX* = distinct VkNonDispatchableHandle + VkOpticalFlowSessionNV* = distinct VkNonDispatchableHandle + VkMicromapEXT* = distinct VkNonDispatchableHandle + VkShaderEXT* = distinct VkNonDispatchableHandle VkDisplayKHR* = distinct VkNonDispatchableHandle VkDisplayModeKHR* = distinct VkNonDispatchableHandle VkSurfaceKHR* = distinct VkNonDispatchableHandle VkSwapchainKHR* = distinct VkNonDispatchableHandle VkDebugReportCallbackEXT* = distinct VkNonDispatchableHandle VkDebugUtilsMessengerEXT* = distinct VkNonDispatchableHandle + VkVideoSessionKHR* = distinct VkNonDispatchableHandle + VkVideoSessionParametersKHR* = distinct VkNonDispatchableHandle + VkSemaphoreSciSyncPoolNV* = distinct VkNonDispatchableHandle + VkPrivateDataSlotCreateFlagBitsEXT* = VkPrivateDataSlotCreateFlagBits VkDescriptorUpdateTemplateTypeKHR* = VkDescriptorUpdateTemplateType VkPointClippingBehaviorKHR* = VkPointClippingBehavior + VkQueueGlobalPriorityEXT* = VkQueueGlobalPriorityKHR + VkTimeDomainEXT* = VkTimeDomainKHR VkResolveModeFlagBitsKHR* = VkResolveModeFlagBits VkDescriptorBindingFlagBitsEXT* = VkDescriptorBindingFlagBits VkSemaphoreTypeKHR* = VkSemaphoreType @@ -1422,8 +2082,16 @@ type VkAccelerationStructureTypeNV* = VkAccelerationStructureTypeKHR VkGeometryTypeNV* = VkGeometryTypeKHR VkRayTracingShaderGroupTypeNV* = VkRayTracingShaderGroupTypeKHR - VkAccelerationStructureMemoryRequirementsTypeNV* = VkAccelerationStructureMemoryRequirementsTypeKHR + VkPipelineCreationFeedbackFlagBitsEXT* = VkPipelineCreationFeedbackFlagBits VkSemaphoreWaitFlagBitsKHR* = VkSemaphoreWaitFlagBits + VkLineRasterizationModeEXT* = VkLineRasterizationModeKHR + VkToolPurposeFlagBitsEXT* = VkToolPurposeFlagBits + VkAccessFlagBits2KHR* = VkAccessFlagBits2 + VkPipelineStageFlagBits2KHR* = VkPipelineStageFlagBits2 + VkFormatFeatureFlagBits2KHR* = VkFormatFeatureFlagBits2 + VkRenderingFlagBitsKHR* = VkRenderingFlagBits + VkScopeNV* = VkScopeKHR + VkComponentTypeNV* = VkComponentTypeKHR VkExternalMemoryHandleTypeFlagBitsKHR* = VkExternalMemoryHandleTypeFlagBits VkExternalMemoryFeatureFlagBitsKHR* = VkExternalMemoryFeatureFlagBits VkExternalSemaphoreHandleTypeFlagBitsKHR* = VkExternalSemaphoreHandleTypeFlagBits @@ -1440,6 +2108,7 @@ type VkChromaLocationKHR* = VkChromaLocation VkSamplerReductionModeEXT* = VkSamplerReductionMode VkShaderFloatControlsIndependenceKHR* = VkShaderFloatControlsIndependence + VkSubmitFlagBitsKHR* = VkSubmitFlagBits VkDriverIdKHR* = VkDriverId PFN_vkInternalAllocationNotification* = proc(pUserData: pointer; size: csize; allocationType: VkInternalAllocationType; allocationScope: VkSystemAllocationScope) {.cdecl.} PFN_vkInternalFreeNotification* = proc(pUserData: pointer; size: csize; allocationType: VkInternalAllocationType; allocationScope: VkSystemAllocationScope) {.cdecl.} @@ -1447,8 +2116,11 @@ type PFN_vkAllocationFunction* = proc(pUserData: pointer; size: csize; alignment: csize; allocationScope: VkSystemAllocationScope): pointer {.cdecl.} PFN_vkFreeFunction* = proc(pUserData: pointer; pMemory: pointer) {.cdecl.} PFN_vkVoidFunction* = proc() {.cdecl.} - PFN_vkDebugReportCallbackEXT* = proc(flags: VkDebugReportFlagsEXT; objectType: VkDebugReportObjectTypeEXT; cbObject: uint64; location: csize; messageCode: int32; pLayerPrefix: cstring; pMessage: cstring; pUserData: pointer): VkBool32 {.cdecl.} + PFN_vkDebugReportCallbackEXT* = proc(flags: VkDebugReportFlagsEXT; objectType: VkDebugReportObjectTypeEXT; cbObject: uint64; location: csize; messageCode: int32; pLayerPrefix: cstring; pMessage: cstring; pUserData: pointer): VkBool32 {.cdecl.} PFN_vkDebugUtilsMessengerCallbackEXT* = proc(messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEXT, messageTypes: VkDebugUtilsMessageTypeFlagsEXT, pCallbackData: VkDebugUtilsMessengerCallbackDataEXT, userData: pointer): VkBool32 {.cdecl.} + PFN_vkFaultCallbackFunction* = proc(unrecordedFaults: VkBool32; faultCount: uint32; pFaults: ptr VkFaultData) {.cdecl.} + PFN_vkDeviceMemoryReportCallbackEXT* = proc(pCallbackData: ptr VkDeviceMemoryReportCallbackDataEXT; pUserData: pointer) {.cdecl.} + PFN_vkGetInstanceProcAddrLUNARG* = proc(instance: VkInstance; pName: cstring): PFN_vkVoidFunction {.cdecl.} VkOffset2D* = object x*: int32 @@ -1654,6 +2326,11 @@ type dstArrayElement*: uint32 descriptorCount*: uint32 + VkBufferUsageFlags2CreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + usage*: VkBufferUsageFlags2KHR + VkBufferCreateInfo* = object sType*: VkStructureType pNext*: pointer @@ -1824,6 +2501,19 @@ type imageOffset*: VkOffset3D imageExtent*: VkExtent3D + VkCopyMemoryIndirectCommandNV* = object + srcAddress*: VkDeviceAddress + dstAddress*: VkDeviceAddress + size*: VkDeviceSize + + VkCopyMemoryToImageIndirectCommandNV* = object + srcAddress*: VkDeviceAddress + bufferRowLength*: uint32 + bufferImageHeight*: uint32 + imageSubresource*: VkImageSubresourceLayers + imageOffset*: VkOffset3D + imageExtent*: VkExtent3D + VkImageResolve* = object srcSubresource*: VkImageSubresourceLayers srcOffset*: VkOffset3D @@ -1889,6 +2579,7 @@ type stage*: VkShaderStageFlagBits module*: VkShaderModule pName*: cstring + pName*: cstring pSpecializationInfo*: ptr VkSpecializationInfo VkComputePipelineCreateInfo* = object @@ -1900,6 +2591,18 @@ type basePipelineHandle*: VkPipeline basePipelineIndex*: int32 + VkComputePipelineIndirectBufferInfoNV* = object + sType*: VkStructureType + pNext*: pointer + deviceAddress*: VkDeviceAddress + size*: VkDeviceSize + pipelineDeviceAddressCaptureReplay*: VkDeviceAddress + + VkPipelineCreateFlags2CreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkPipelineCreateFlags2KHR + VkVertexInputBindingDescription* = object binding*: uint32 stride*: uint32 @@ -2024,6 +2727,7 @@ type flags*: VkPipelineCreateFlags stageCount*: uint32 pStages*: ptr VkPipelineShaderStageCreateInfo + pStages*: ptr VkPipelineShaderStageCreateInfo pVertexInputState*: ptr VkPipelineVertexInputStateCreateInfo pInputAssemblyState*: ptr VkPipelineInputAssemblyStateCreateInfo pTessellationState*: ptr VkPipelineTessellationStateCreateInfo @@ -2044,8 +2748,37 @@ type pNext*: pointer flags*: VkPipelineCacheCreateFlags initialDataSize*: uint + initialDataSize*: uint pInitialData*: pointer + VkPipelineCacheHeaderVersionOne* = object + headerSize*: uint32 + headerVersion*: VkPipelineCacheHeaderVersion + vendorID*: uint32 + deviceID*: uint32 + pipelineCacheUUID*: array[VK_UUID_SIZE, uint8] + + VkPipelineCacheStageValidationIndexEntry* = object + codeSize*: uint64 + codeOffset*: uint64 + + VkPipelineCacheSafetyCriticalIndexEntry* = object + pipelineIdentifier*: array[VK_UUID_SIZE, uint8] + pipelineMemorySize*: uint64 + jsonSize*: uint64 + jsonOffset*: uint64 + stageIndexCount*: uint32 + stageIndexStride*: uint32 + stageIndexOffset*: uint64 + + VkPipelineCacheHeaderVersionSafetyCriticalOne* = object + headerVersionOne*: VkPipelineCacheHeaderVersionOne + validationVersion*: VkPipelineCacheValidationVersion + implementationData*: uint32 + pipelineIndexCount*: uint32 + pipelineIndexStride*: uint32 + pipelineIndexOffset*: uint64 + VkPushConstantRange* = object stageFlags*: VkShaderStageFlags offset*: uint32 @@ -2407,6 +3140,15 @@ type y*: uint32 z*: uint32 + VkMultiDrawInfoEXT* = object + firstVertex*: uint32 + vertexCount*: uint32 + + VkMultiDrawIndexedInfoEXT* = object + firstIndex*: uint32 + indexCount*: uint32 + vertexOffset*: int32 + VkSubmitInfo* = object sType*: VkStructureType pNext*: pointer @@ -2546,6 +3288,13 @@ type flags*: VkStreamDescriptorSurfaceCreateFlagsGGP streamDescriptor*: GgpStreamDescriptor + VkScreenSurfaceCreateInfoQNX* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkScreenSurfaceCreateFlagsQNX + context*: ptr _screen_context + window*: ptr _screen_window + VkSurfaceFormatKHR* = object format*: VkFormat colorSpace*: VkColorSpaceKHR @@ -2569,6 +3318,7 @@ type presentMode*: VkPresentModeKHR clipped*: VkBool32 oldSwapchain*: VkSwapchainKHR + oldSwapchain*: VkSwapchainKHR VkPresentInfoKHR* = object sType*: VkStructureType @@ -2601,6 +3351,27 @@ type disabledValidationFeatureCount*: uint32 pDisabledValidationFeatures*: ptr VkValidationFeatureDisableEXT + VkLayerSettingsCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + settingCount*: uint32 + pSettings*: ptr VkLayerSettingEXT + + VkLayerSettingEXT* = object + pLayerName*: cstring + pSettingName*: cstring + `type`*: VkLayerSettingTypeEXT + valueCount*: uint32 + pValues*: pointer + + VkApplicationParametersEXT* = object + sType*: VkStructureType + pNext*: pointer + vendorID*: uint32 + deviceID*: uint32 + key*: uint32 + value*: uint64 + VkPipelineRasterizationStateRasterizationOrderAMD* = object sType*: VkStructureType pNext*: pointer @@ -2672,6 +3443,36 @@ type pAttributes*: ptr SECURITY_ATTRIBUTES dwAccess*: DWORD + VkExportMemorySciBufInfoNV* = object + sType*: VkStructureType + pNext*: pointer + pAttributes*: NvSciBufAttrList + + VkImportMemorySciBufInfoNV* = object + sType*: VkStructureType + pNext*: pointer + handleType*: VkExternalMemoryHandleTypeFlagBits + handle*: NvSciBufObj + + VkMemoryGetSciBufInfoNV* = object + sType*: VkStructureType + pNext*: pointer + memory*: VkDeviceMemory + handleType*: VkExternalMemoryHandleTypeFlagBits + + VkMemorySciBufPropertiesNV* = object + sType*: VkStructureType + pNext*: pointer + memoryTypeBits*: uint32 + + VkPhysicalDeviceExternalMemorySciBufFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + sciBufImport*: VkBool32 + sciBufExport*: VkBool32 + + VkPhysicalDeviceExternalSciBufFeaturesNV* = object + VkWin32KeyedMutexAcquireReleaseInfoNV* = object sType*: VkStructureType pNext*: pointer @@ -2688,21 +3489,34 @@ type pNext*: pointer deviceGeneratedCommands*: VkBool32 - VkDevicePrivateDataCreateInfoEXT* = object + VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + deviceGeneratedCompute*: VkBool32 + deviceGeneratedComputePipelines*: VkBool32 + deviceGeneratedComputeCaptureReplay*: VkBool32 + + VkDevicePrivateDataCreateInfo* = object sType*: VkStructureType pNext*: pointer privateDataSlotRequestCount*: uint32 - VkPrivateDataSlotCreateInfoEXT* = object + VkDevicePrivateDataCreateInfoEXT* = object + + VkPrivateDataSlotCreateInfo* = object sType*: VkStructureType pNext*: pointer - flags*: VkPrivateDataSlotCreateFlagsEXT + flags*: VkPrivateDataSlotCreateFlags - VkPhysicalDevicePrivateDataFeaturesEXT* = object + VkPrivateDataSlotCreateInfoEXT* = object + + VkPhysicalDevicePrivateDataFeatures* = object sType*: VkStructureType pNext*: pointer privateData*: VkBool32 + VkPhysicalDevicePrivateDataFeaturesEXT* = object + VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV* = object sType*: VkStructureType pNext*: pointer @@ -2716,6 +3530,11 @@ type minSequencesIndexBufferOffsetAlignment*: uint32 minIndirectCommandsBufferOffsetAlignment*: uint32 + VkPhysicalDeviceMultiDrawPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + maxMultiDrawCount*: uint32 + VkGraphicsShaderGroupCreateInfoNV* = object sType*: VkStructureType pNext*: pointer @@ -2804,6 +3623,15 @@ type indirectCommandsLayout*: VkIndirectCommandsLayoutNV maxSequencesCount*: uint32 + VkPipelineIndirectDeviceAddressInfoNV* = object + sType*: VkStructureType + pNext*: pointer + pipelineBindPoint*: VkPipelineBindPoint + pipeline*: VkPipeline + + VkBindPipelineIndirectCommandNV* = object + pipelineAddress*: VkDeviceAddress + VkPhysicalDeviceFeatures2* = object sType*: VkStructureType pNext*: pointer @@ -3008,6 +3836,23 @@ type dwAccess*: DWORD name*: LPCWSTR + VkImportMemoryZirconHandleInfoFUCHSIA* = object + sType*: VkStructureType + pNext*: pointer + handleType*: VkExternalMemoryHandleTypeFlagBits + handle*: zx_handle_t + + VkMemoryZirconHandlePropertiesFUCHSIA* = object + sType*: VkStructureType + pNext*: pointer + memoryTypeBits*: uint32 + + VkMemoryGetZirconHandleInfoFUCHSIA* = object + sType*: VkStructureType + pNext*: pointer + memory*: VkDeviceMemory + handleType*: VkExternalMemoryHandleTypeFlagBits + VkMemoryWin32HandlePropertiesKHR* = object sType*: VkStructureType pNext*: pointer @@ -3114,6 +3959,20 @@ type semaphore*: VkSemaphore handleType*: VkExternalSemaphoreHandleTypeFlagBits + VkImportSemaphoreZirconHandleInfoFUCHSIA* = object + sType*: VkStructureType + pNext*: pointer + semaphore*: VkSemaphore + flags*: VkSemaphoreImportFlags + handleType*: VkExternalSemaphoreHandleTypeFlagBits + zirconHandle*: zx_handle_t + + VkSemaphoreGetZirconHandleInfoFUCHSIA* = object + sType*: VkStructureType + pNext*: pointer + semaphore*: VkSemaphore + handleType*: VkExternalSemaphoreHandleTypeFlagBits + VkPhysicalDeviceExternalFenceInfo* = object sType*: VkStructureType pNext*: pointer @@ -3173,6 +4032,80 @@ type fence*: VkFence handleType*: VkExternalFenceHandleTypeFlagBits + VkExportFenceSciSyncInfoNV* = object + sType*: VkStructureType + pNext*: pointer + pAttributes*: NvSciSyncAttrList + + VkImportFenceSciSyncInfoNV* = object + sType*: VkStructureType + pNext*: pointer + fence*: VkFence + handleType*: VkExternalFenceHandleTypeFlagBits + handle*: pointer + + VkFenceGetSciSyncInfoNV* = object + sType*: VkStructureType + pNext*: pointer + fence*: VkFence + handleType*: VkExternalFenceHandleTypeFlagBits + + VkExportSemaphoreSciSyncInfoNV* = object + sType*: VkStructureType + pNext*: pointer + pAttributes*: NvSciSyncAttrList + + VkImportSemaphoreSciSyncInfoNV* = object + sType*: VkStructureType + pNext*: pointer + semaphore*: VkSemaphore + handleType*: VkExternalSemaphoreHandleTypeFlagBits + handle*: pointer + + VkSemaphoreGetSciSyncInfoNV* = object + sType*: VkStructureType + pNext*: pointer + semaphore*: VkSemaphore + handleType*: VkExternalSemaphoreHandleTypeFlagBits + + VkSciSyncAttributesInfoNV* = object + sType*: VkStructureType + pNext*: pointer + clientType*: VkSciSyncClientTypeNV + primitiveType*: VkSciSyncPrimitiveTypeNV + + VkPhysicalDeviceExternalSciSyncFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + sciSyncFence*: VkBool32 + sciSyncSemaphore*: VkBool32 + sciSyncImport*: VkBool32 + sciSyncExport*: VkBool32 + + VkPhysicalDeviceExternalSciSync2FeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + sciSyncFence*: VkBool32 + sciSyncSemaphore2*: VkBool32 + sciSyncImport*: VkBool32 + sciSyncExport*: VkBool32 + + VkSemaphoreSciSyncPoolCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + handle*: NvSciSyncObj + + VkSemaphoreSciSyncCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + semaphorePool*: VkSemaphoreSciSyncPoolNV + pFence*: ptr NvSciSyncFence + + VkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + semaphoreSciSyncPoolRequestCount*: uint32 + VkPhysicalDeviceMultiviewFeatures* = object sType*: VkStructureType pNext*: pointer @@ -3400,6 +4333,22 @@ type x*: float32 y*: float32 + VkPhysicalDevicePresentIdFeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + presentId*: VkBool32 + + VkPresentIdKHR* = object + sType*: VkStructureType + pNext*: pointer + swapchainCount*: uint32 + pPresentIds*: ptr uint64 + + VkPhysicalDevicePresentWaitFeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + presentWait*: VkBool32 + VkHdrMetadataEXT* = object sType*: VkStructureType pNext*: pointer @@ -3595,6 +4544,13 @@ type VkBufferMemoryRequirementsInfo2KHR* = object + VkDeviceBufferMemoryRequirements* = object + sType*: VkStructureType + pNext*: pointer + pCreateInfo*: ptr VkBufferCreateInfo + + VkDeviceBufferMemoryRequirementsKHR* = object + VkImageMemoryRequirementsInfo2* = object sType*: VkStructureType pNext*: pointer @@ -3609,6 +4565,14 @@ type VkImageSparseMemoryRequirementsInfo2KHR* = object + VkDeviceImageMemoryRequirements* = object + sType*: VkStructureType + pNext*: pointer + pCreateInfo*: ptr VkImageCreateInfo + planeAspect*: VkImageAspectFlagBits + + VkDeviceImageMemoryRequirementsKHR* = object + VkMemoryRequirements2* = object sType*: VkStructureType pNext*: pointer @@ -3651,6 +4615,12 @@ type pNext*: pointer usage*: VkImageUsageFlags + VkImageViewSlicedCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + sliceOffset*: uint32 + sliceCount*: uint32 + VkImageViewUsageCreateInfoKHR* = object VkPipelineTessellationDomainOriginStateCreateInfo* = object @@ -3818,6 +4788,11 @@ type pNext*: pointer advancedBlendCoherentOperations*: VkBool32 + VkPhysicalDeviceMultiDrawFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + multiDraw*: VkBool32 + VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT* = object sType*: VkStructureType pNext*: pointer @@ -3835,13 +4810,15 @@ type dstPremultiplied*: VkBool32 blendOverlap*: VkBlendOverlapEXT - VkPhysicalDeviceInlineUniformBlockFeaturesEXT* = object + VkPhysicalDeviceInlineUniformBlockFeatures* = object sType*: VkStructureType pNext*: pointer inlineUniformBlock*: VkBool32 descriptorBindingInlineUniformBlockUpdateAfterBind*: VkBool32 - VkPhysicalDeviceInlineUniformBlockPropertiesEXT* = object + VkPhysicalDeviceInlineUniformBlockFeaturesEXT* = object + + VkPhysicalDeviceInlineUniformBlockProperties* = object sType*: VkStructureType pNext*: pointer maxInlineUniformBlockSize*: uint32 @@ -3850,17 +4827,23 @@ type maxDescriptorSetInlineUniformBlocks*: uint32 maxDescriptorSetUpdateAfterBindInlineUniformBlocks*: uint32 - VkWriteDescriptorSetInlineUniformBlockEXT* = object + VkPhysicalDeviceInlineUniformBlockPropertiesEXT* = object + + VkWriteDescriptorSetInlineUniformBlock* = object sType*: VkStructureType pNext*: pointer dataSize*: uint32 pData*: pointer - VkDescriptorPoolInlineUniformBlockCreateInfoEXT* = object + VkWriteDescriptorSetInlineUniformBlockEXT* = object + + VkDescriptorPoolInlineUniformBlockCreateInfo* = object sType*: VkStructureType pNext*: pointer maxInlineUniformBlockBindings*: uint32 + VkDescriptorPoolInlineUniformBlockCreateInfoEXT* = object + VkPipelineCoverageModulationStateCreateInfoNV* = object sType*: VkStructureType pNext*: pointer @@ -3898,6 +4881,56 @@ type VkPhysicalDeviceMaintenance3PropertiesKHR* = object + VkPhysicalDeviceMaintenance4Features* = object + sType*: VkStructureType + pNext*: pointer + maintenance4*: VkBool32 + + VkPhysicalDeviceMaintenance4FeaturesKHR* = object + + VkPhysicalDeviceMaintenance4Properties* = object + sType*: VkStructureType + pNext*: pointer + maxBufferSize*: VkDeviceSize + + VkPhysicalDeviceMaintenance4PropertiesKHR* = object + + VkPhysicalDeviceMaintenance5FeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + maintenance5*: VkBool32 + + VkPhysicalDeviceMaintenance5PropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + earlyFragmentMultisampleCoverageAfterSampleCounting*: VkBool32 + earlyFragmentSampleMaskTestBeforeSampleCounting*: VkBool32 + depthStencilSwizzleOneSupport*: VkBool32 + polygonModePointSize*: VkBool32 + nonStrictSinglePixelWideLinesUseParallelogram*: VkBool32 + nonStrictWideLinesUseParallelogram*: VkBool32 + + VkPhysicalDeviceMaintenance6FeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + maintenance6*: VkBool32 + + VkPhysicalDeviceMaintenance6PropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + blockTexelViewCompatibleMultipleLayers*: VkBool32 + maxCombinedImageSamplerDescriptorCount*: uint32 + fragmentShadingRateClampCombinerInputs*: VkBool32 + + VkRenderingAreaInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + viewMask*: uint32 + colorAttachmentCount*: uint32 + pColorAttachmentFormats*: ptr VkFormat + depthAttachmentFormat*: VkFormat + stencilAttachmentFormat*: VkFormat + VkDescriptorSetLayoutSupport* = object sType*: VkStructureType pNext*: pointer @@ -3991,10 +5024,27 @@ type numAvailableSgprs*: uint32 computeWorkGroupSize*: array[3, uint32] + VkDeviceQueueGlobalPriorityCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + globalPriority*: VkQueueGlobalPriorityKHR + VkDeviceQueueGlobalPriorityCreateInfoEXT* = object + + VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + globalPriorityQuery*: VkBool32 + + VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT* = object + + VkQueueFamilyGlobalPriorityPropertiesKHR* = object sType*: VkStructureType pNext*: pointer - globalPriority*: VkQueueGlobalPriorityEXT + priorityCount*: uint32 + priorities*: array[VK_MAX_GLOBAL_PRIORITY_SIZE_KHR, VkQueueGlobalPriorityKHR] + + VkQueueFamilyGlobalPriorityPropertiesEXT* = object VkDebugUtilsObjectNameInfoEXT* = object sType*: VkStructureType @@ -4041,6 +5091,29 @@ type objectCount*: uint32 pObjects*: ptr VkDebugUtilsObjectNameInfoEXT + VkPhysicalDeviceDeviceMemoryReportFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + deviceMemoryReport*: VkBool32 + + VkDeviceDeviceMemoryReportCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkDeviceMemoryReportFlagsEXT + pfnUserCallback*: PFN_vkDeviceMemoryReportCallbackEXT + pUserData*: pointer + + VkDeviceMemoryReportCallbackDataEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkDeviceMemoryReportFlagsEXT + `type`*: VkDeviceMemoryReportEventTypeEXT + memoryObjectId*: uint64 + size*: VkDeviceSize + objectType*: VkObjectType + objectHandle*: uint64 + heapIndex*: uint32 + VkImportMemoryHostPointerInfoEXT* = object sType*: VkStructureType pNext*: pointer @@ -4070,10 +5143,12 @@ type fullyCoveredFragmentShaderInputVariable*: VkBool32 conservativeRasterizationPostDepthCoverage*: VkBool32 - VkCalibratedTimestampInfoEXT* = object + VkCalibratedTimestampInfoKHR* = object sType*: VkStructureType pNext*: pointer - timeDomain*: VkTimeDomainEXT + timeDomain*: VkTimeDomainKHR + + VkCalibratedTimestampInfoEXT* = object VkPhysicalDeviceShaderCorePropertiesAMD* = object sType*: VkStructureType @@ -4317,21 +5392,31 @@ type VkSemaphoreSignalInfoKHR* = object - VkVertexInputBindingDivisorDescriptionEXT* = object + VkVertexInputBindingDivisorDescriptionKHR* = object binding*: uint32 divisor*: uint32 - VkPipelineVertexInputDivisorStateCreateInfoEXT* = object + VkVertexInputBindingDivisorDescriptionEXT* = object + + VkPipelineVertexInputDivisorStateCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer vertexBindingDivisorCount*: uint32 - pVertexBindingDivisors*: ptr VkVertexInputBindingDivisorDescriptionEXT + pVertexBindingDivisors*: ptr VkVertexInputBindingDivisorDescriptionKHR + + VkPipelineVertexInputDivisorStateCreateInfoEXT* = object VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT* = object sType*: VkStructureType pNext*: pointer maxVertexAttribDivisor*: uint32 + VkPhysicalDeviceVertexAttributeDivisorPropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + maxVertexAttribDivisor*: uint32 + supportsNonZeroFirstInstance*: VkBool32 + VkPhysicalDevicePCIBusInfoPropertiesEXT* = object sType*: VkStructureType pNext*: pointer @@ -4431,12 +5516,30 @@ type sparseImageFloat32Atomics*: VkBool32 sparseImageFloat32AtomicAdd*: VkBool32 - VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT* = object + VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + shaderBufferFloat16Atomics*: VkBool32 + shaderBufferFloat16AtomicAdd*: VkBool32 + shaderBufferFloat16AtomicMinMax*: VkBool32 + shaderBufferFloat32AtomicMinMax*: VkBool32 + shaderBufferFloat64AtomicMinMax*: VkBool32 + shaderSharedFloat16Atomics*: VkBool32 + shaderSharedFloat16AtomicAdd*: VkBool32 + shaderSharedFloat16AtomicMinMax*: VkBool32 + shaderSharedFloat32AtomicMinMax*: VkBool32 + shaderSharedFloat64AtomicMinMax*: VkBool32 + shaderImageFloat32AtomicMinMax*: VkBool32 + sparseImageFloat32AtomicMinMax*: VkBool32 + + VkPhysicalDeviceVertexAttributeDivisorFeaturesKHR* = object sType*: VkStructureType pNext*: pointer vertexAttributeInstanceRateDivisor*: VkBool32 vertexAttributeInstanceRateZeroDivisor*: VkBool32 + VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT* = object + VkQueueFamilyCheckpointPropertiesNV* = object sType*: VkStructureType pNext*: pointer @@ -4536,9 +5639,6 @@ type computeDerivativeGroupLinear*: VkBool32 VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - fragmentShaderBarycentric*: VkBool32 VkPhysicalDeviceShaderImageFootprintFeaturesNV* = object sType*: VkStructureType @@ -4550,6 +5650,27 @@ type pNext*: pointer dedicatedAllocationImageAliasing*: VkBool32 + VkPhysicalDeviceCopyMemoryIndirectFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + indirectCopy*: VkBool32 + + VkPhysicalDeviceCopyMemoryIndirectPropertiesNV* = object + sType*: VkStructureType + pNext*: pointer + supportedQueues*: VkQueueFlags + + VkPhysicalDeviceMemoryDecompressionFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + memoryDecompression*: VkBool32 + + VkPhysicalDeviceMemoryDecompressionPropertiesNV* = object + sType*: VkStructureType + pNext*: pointer + decompressionMethods*: VkMemoryDecompressionMethodFlagsNV + maxDecompressionIndirectCount*: uint64 + VkShadingRatePaletteNV* = object shadingRatePaletteEntryCount*: uint32 pShadingRatePaletteEntries*: ptr VkShadingRatePaletteEntryNV @@ -4574,6 +5695,11 @@ type shadingRatePaletteSize*: uint32 shadingRateMaxCoarseSamples*: uint32 + VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* = object + sType*: VkStructureType + pNext*: pointer + invocationMask*: VkBool32 + VkCoarseSampleLocationNV* = object pixelX*: uint32 pixelY*: uint32 @@ -4619,6 +5745,52 @@ type taskCount*: uint32 firstTask*: uint32 + VkPhysicalDeviceMeshShaderFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + taskShader*: VkBool32 + meshShader*: VkBool32 + multiviewMeshShader*: VkBool32 + primitiveFragmentShadingRateMeshShader*: VkBool32 + meshShaderQueries*: VkBool32 + + VkPhysicalDeviceMeshShaderPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + maxTaskWorkGroupTotalCount*: uint32 + maxTaskWorkGroupCount*: array[3, uint32] + maxTaskWorkGroupInvocations*: uint32 + maxTaskWorkGroupSize*: array[3, uint32] + maxTaskPayloadSize*: uint32 + maxTaskSharedMemorySize*: uint32 + maxTaskPayloadAndSharedMemorySize*: uint32 + maxMeshWorkGroupTotalCount*: uint32 + maxMeshWorkGroupCount*: array[3, uint32] + maxMeshWorkGroupInvocations*: uint32 + maxMeshWorkGroupSize*: array[3, uint32] + maxMeshSharedMemorySize*: uint32 + maxMeshPayloadAndSharedMemorySize*: uint32 + maxMeshOutputMemorySize*: uint32 + maxMeshPayloadAndOutputMemorySize*: uint32 + maxMeshOutputComponents*: uint32 + maxMeshOutputVertices*: uint32 + maxMeshOutputPrimitives*: uint32 + maxMeshOutputLayers*: uint32 + maxMeshMultiviewViewCount*: uint32 + meshOutputPerVertexGranularity*: uint32 + meshOutputPerPrimitiveGranularity*: uint32 + maxPreferredTaskWorkGroupInvocations*: uint32 + maxPreferredMeshWorkGroupInvocations*: uint32 + prefersLocalInvocationVertexOutput*: VkBool32 + prefersLocalInvocationPrimitiveOutput*: VkBool32 + prefersCompactVertexOutput*: VkBool32 + prefersCompactPrimitiveOutput*: VkBool32 + + VkDrawMeshTasksIndirectCommandEXT* = object + groupCountX*: uint32 + groupCountY*: uint32 + groupCountZ*: uint32 + VkRayTracingShaderGroupCreateInfoNV* = object sType*: VkStructureType pNext*: pointer @@ -4659,9 +5831,10 @@ type pStages*: ptr VkPipelineShaderStageCreateInfo groupCount*: uint32 pGroups*: ptr VkRayTracingShaderGroupCreateInfoKHR - maxRecursionDepth*: uint32 - libraries*: VkPipelineLibraryCreateInfoKHR + maxPipelineRayRecursionDepth*: uint32 + pLibraryInfo*: ptr VkPipelineLibraryCreateInfoKHR pLibraryInterface*: ptr VkRayTracingPipelineInterfaceCreateInfoKHR + pDynamicState*: ptr VkPipelineDynamicStateCreateInfo layout*: VkPipelineLayout basePipelineHandle*: VkPipeline basePipelineIndex*: int32 @@ -4715,17 +5888,15 @@ type compactedSize*: VkDeviceSize info*: VkAccelerationStructureInfoNV - VkBindAccelerationStructureMemoryInfoKHR* = object + VkBindAccelerationStructureMemoryInfoNV* = object sType*: VkStructureType pNext*: pointer - accelerationStructure*: VkAccelerationStructureKHR + accelerationStructure*: VkAccelerationStructureNV memory*: VkDeviceMemory memoryOffset*: VkDeviceSize deviceIndexCount*: uint32 pDeviceIndices*: ptr uint32 - VkBindAccelerationStructureMemoryInfoNV* = object - VkWriteDescriptorSetAccelerationStructureKHR* = object sType*: VkStructureType pNext*: pointer @@ -4733,13 +5904,10 @@ type pAccelerationStructures*: ptr VkAccelerationStructureKHR VkWriteDescriptorSetAccelerationStructureNV* = object - - VkAccelerationStructureMemoryRequirementsInfoKHR* = object sType*: VkStructureType pNext*: pointer - `type`*: VkAccelerationStructureMemoryRequirementsTypeKHR - buildType*: VkAccelerationStructureBuildTypeKHR - accelerationStructure*: VkAccelerationStructureKHR + accelerationStructureCount*: uint32 + pAccelerationStructures*: ptr VkAccelerationStructureNV VkAccelerationStructureMemoryRequirementsInfoNV* = object sType*: VkStructureType @@ -4747,31 +5915,52 @@ type `type`*: VkAccelerationStructureMemoryRequirementsTypeNV accelerationStructure*: VkAccelerationStructureNV - VkPhysicalDeviceRayTracingFeaturesKHR* = object + VkPhysicalDeviceAccelerationStructureFeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + accelerationStructure*: VkBool32 + accelerationStructureCaptureReplay*: VkBool32 + accelerationStructureIndirectBuild*: VkBool32 + accelerationStructureHostCommands*: VkBool32 + descriptorBindingAccelerationStructureUpdateAfterBind*: VkBool32 + + VkPhysicalDeviceRayTracingPipelineFeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + rayTracingPipeline*: VkBool32 + rayTracingPipelineShaderGroupHandleCaptureReplay*: VkBool32 + rayTracingPipelineShaderGroupHandleCaptureReplayMixed*: VkBool32 + rayTracingPipelineTraceRaysIndirect*: VkBool32 + rayTraversalPrimitiveCulling*: VkBool32 + + VkPhysicalDeviceRayQueryFeaturesKHR* = object sType*: VkStructureType pNext*: pointer - rayTracing*: VkBool32 - rayTracingShaderGroupHandleCaptureReplay*: VkBool32 - rayTracingShaderGroupHandleCaptureReplayMixed*: VkBool32 - rayTracingAccelerationStructureCaptureReplay*: VkBool32 - rayTracingIndirectTraceRays*: VkBool32 - rayTracingIndirectAccelerationStructureBuild*: VkBool32 - rayTracingHostAccelerationStructureCommands*: VkBool32 rayQuery*: VkBool32 - rayTracingPrimitiveCulling*: VkBool32 - VkPhysicalDeviceRayTracingPropertiesKHR* = object + VkPhysicalDeviceAccelerationStructurePropertiesKHR* = object sType*: VkStructureType pNext*: pointer - shaderGroupHandleSize*: uint32 - maxRecursionDepth*: uint32 - maxShaderGroupStride*: uint32 - shaderGroupBaseAlignment*: uint32 maxGeometryCount*: uint64 maxInstanceCount*: uint64 maxPrimitiveCount*: uint64 + maxPerStageDescriptorAccelerationStructures*: uint32 + maxPerStageDescriptorUpdateAfterBindAccelerationStructures*: uint32 maxDescriptorSetAccelerationStructures*: uint32 + maxDescriptorSetUpdateAfterBindAccelerationStructures*: uint32 + minAccelerationStructureScratchOffsetAlignment*: uint32 + + VkPhysicalDeviceRayTracingPipelinePropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + shaderGroupHandleSize*: uint32 + maxRayRecursionDepth*: uint32 + maxShaderGroupStride*: uint32 + shaderGroupBaseAlignment*: uint32 shaderGroupHandleCaptureReplaySize*: uint32 + maxRayDispatchInvocationCount*: uint32 + shaderGroupHandleAlignment*: uint32 + maxRayHitAttributeSize*: uint32 VkPhysicalDeviceRayTracingPropertiesNV* = object sType*: VkStructureType @@ -4785,9 +5974,8 @@ type maxTriangleCount*: uint64 maxDescriptorSetAccelerationStructures*: uint32 - VkStridedBufferRegionKHR* = object - buffer*: VkBuffer - offset*: VkDeviceSize + VkStridedDeviceAddressRegionKHR* = object + deviceAddress*: VkDeviceAddress stride*: VkDeviceSize size*: VkDeviceSize @@ -4796,6 +5984,28 @@ type height*: uint32 depth*: uint32 + VkTraceRaysIndirectCommand2KHR* = object + raygenShaderRecordAddress*: VkDeviceAddress + raygenShaderRecordSize*: VkDeviceSize + missShaderBindingTableAddress*: VkDeviceAddress + missShaderBindingTableSize*: VkDeviceSize + missShaderBindingTableStride*: VkDeviceSize + hitShaderBindingTableAddress*: VkDeviceAddress + hitShaderBindingTableSize*: VkDeviceSize + hitShaderBindingTableStride*: VkDeviceSize + callableShaderBindingTableAddress*: VkDeviceAddress + callableShaderBindingTableSize*: VkDeviceSize + callableShaderBindingTableStride*: VkDeviceSize + width*: uint32 + height*: uint32 + depth*: uint32 + + VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + rayTracingMaintenance1*: VkBool32 + rayTracingPipelineTraceRaysIndirect2*: VkBool32 + VkDrmFormatModifierPropertiesListEXT* = object sType*: VkStructureType pNext*: pointer @@ -4857,6 +6067,11 @@ type pNext*: pointer fragmentDensityMapDeferred*: VkBool32 + VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM* = object + sType*: VkStructureType + pNext*: pointer + fragmentDensityMapOffset*: VkBool32 + VkPhysicalDeviceFragmentDensityMapPropertiesEXT* = object sType*: VkStructureType pNext*: pointer @@ -4872,11 +6087,22 @@ type maxSubsampledArrayLayers*: uint32 maxDescriptorSetSubsampledSamplers*: uint32 + VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM* = object + sType*: VkStructureType + pNext*: pointer + fragmentDensityOffsetGranularity*: VkExtent2D + VkRenderPassFragmentDensityMapCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer fragmentDensityMapAttachment*: VkAttachmentReference + VkSubpassFragmentDensityMapOffsetEndInfoQCOM* = object + sType*: VkStructureType + pNext*: pointer + fragmentDensityOffsetCount*: uint32 + pFragmentDensityOffsets*: ptr VkOffset2D + VkPhysicalDeviceScalarBlockLayoutFeatures* = object sType*: VkStructureType pNext*: pointer @@ -4923,6 +6149,11 @@ type pNext*: pointer priority*: float32 + VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + pageableDeviceLocalMemory*: VkBool32 + VkPhysicalDeviceBufferDeviceAddressFeatures* = object sType*: VkStructureType pNext*: pointer @@ -5009,11 +6240,13 @@ type VkRenderPassAttachmentBeginInfoKHR* = object - VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT* = object + VkPhysicalDeviceTextureCompressionASTCHDRFeatures* = object sType*: VkStructureType pNext*: pointer textureCompressionASTC_HDR*: VkBool32 + VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT* = object + VkPhysicalDeviceCooperativeMatrixFeaturesNV* = object sType*: VkStructureType pNext*: pointer @@ -5060,16 +6293,20 @@ type pNext*: pointer frameToken*: GgpFrameToken - VkPipelineCreationFeedbackEXT* = object - flags*: VkPipelineCreationFeedbackFlagsEXT + VkPipelineCreationFeedback* = object + flags*: VkPipelineCreationFeedbackFlags duration*: uint64 - VkPipelineCreationFeedbackCreateInfoEXT* = object + VkPipelineCreationFeedbackEXT* = object + + VkPipelineCreationFeedbackCreateInfo* = object sType*: VkStructureType pNext*: pointer - pPipelineCreationFeedback*: ptr VkPipelineCreationFeedbackEXT + pPipelineCreationFeedback*: ptr VkPipelineCreationFeedback pipelineStageCreationFeedbackCount*: uint32 - pPipelineStageCreationFeedbacks*: ptr ptr VkPipelineCreationFeedbackEXT + pPipelineStageCreationFeedbacks*: ptr ptr VkPipelineCreationFeedback + + VkPipelineCreationFeedbackCreateInfoEXT* = object VkSurfaceFullScreenExclusiveInfoEXT* = object sType*: VkStructureType @@ -5086,6 +6323,21 @@ type pNext*: pointer fullScreenExclusiveSupported*: VkBool32 + VkPhysicalDevicePresentBarrierFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + presentBarrier*: VkBool32 + + VkSurfaceCapabilitiesPresentBarrierNV* = object + sType*: VkStructureType + pNext*: pointer + presentBarrierSupported*: VkBool32 + + VkSwapchainPresentBarrierCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + presentBarrierEnable*: VkBool32 + VkPhysicalDevicePerformanceQueryFeaturesKHR* = object sType*: VkStructureType pNext*: pointer @@ -5139,6 +6391,11 @@ type pNext*: pointer counterPassIndex*: uint32 + VkPerformanceQueryReservationInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + maxPerformanceQueriesPerPool*: uint32 + VkHeadlessSurfaceCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer @@ -5219,11 +6476,13 @@ type shaderSubgroupClock*: VkBool32 shaderDeviceClock*: VkBool32 - VkPhysicalDeviceIndexTypeUint8FeaturesEXT* = object + VkPhysicalDeviceIndexTypeUint8FeaturesKHR* = object sType*: VkStructureType pNext*: pointer indexTypeUint8*: VkBool32 + VkPhysicalDeviceIndexTypeUint8FeaturesEXT* = object + VkPhysicalDeviceShaderSMBuiltinsPropertiesNV* = object sType*: VkStructureType pNext*: pointer @@ -5254,6 +6513,12 @@ type pNext*: pointer stencilLayout*: VkImageLayout + VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + primitiveTopologyListRestart*: VkBool32 + primitiveTopologyPatchListRestart*: VkBool32 + VkAttachmentReferenceStencilLayoutKHR* = object VkAttachmentDescriptionStencilLayout* = object @@ -5274,6 +6539,8 @@ type pNext*: pointer pipeline*: VkPipeline + VkPipelineInfoEXT* = object + VkPipelineExecutablePropertiesKHR* = object sType*: VkStructureType pNext*: pointer @@ -5311,17 +6578,19 @@ type dataSize*: uint pData*: pointer - VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT* = object + VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures* = object sType*: VkStructureType pNext*: pointer shaderDemoteToHelperInvocation*: VkBool32 + VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT* = object + VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT* = object sType*: VkStructureType pNext*: pointer texelBufferAlignment*: VkBool32 - VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT* = object + VkPhysicalDeviceTexelBufferAlignmentProperties* = object sType*: VkStructureType pNext*: pointer storageTexelBufferOffsetAlignmentBytes*: VkDeviceSize @@ -5329,13 +6598,17 @@ type uniformTexelBufferOffsetAlignmentBytes*: VkDeviceSize uniformTexelBufferOffsetSingleTexelAlignment*: VkBool32 - VkPhysicalDeviceSubgroupSizeControlFeaturesEXT* = object + VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT* = object + + VkPhysicalDeviceSubgroupSizeControlFeatures* = object sType*: VkStructureType pNext*: pointer subgroupSizeControl*: VkBool32 computeFullSubgroups*: VkBool32 - VkPhysicalDeviceSubgroupSizeControlPropertiesEXT* = object + VkPhysicalDeviceSubgroupSizeControlFeaturesEXT* = object + + VkPhysicalDeviceSubgroupSizeControlProperties* = object sType*: VkStructureType pNext*: pointer minSubgroupSize*: uint32 @@ -5343,11 +6616,36 @@ type maxComputeWorkgroupSubgroups*: uint32 requiredSubgroupSizeStages*: VkShaderStageFlags - VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT* = object + VkPhysicalDeviceSubgroupSizeControlPropertiesEXT* = object + + VkPipelineShaderStageRequiredSubgroupSizeCreateInfo* = object sType*: VkStructureType pNext*: pointer requiredSubgroupSize*: uint32 + VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT* = object + + VkShaderRequiredSubgroupSizeCreateInfoEXT* = object + + VkSubpassShadingPipelineCreateInfoHUAWEI* = object + sType*: VkStructureType + pNext*: pointer + renderPass*: VkRenderPass + subpass*: uint32 + + VkPhysicalDeviceSubpassShadingPropertiesHUAWEI* = object + sType*: VkStructureType + pNext*: pointer + maxSubpassShadingWorkgroupSizeAspectRatio*: uint32 + + VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI* = object + sType*: VkStructureType + pNext*: pointer + maxWorkGroupCount*: array[3, uint32] + maxWorkGroupSize*: array[3, uint32] + maxOutputClusterCount*: uint32 + indirectBufferOffsetAlignment*: VkDeviceSize + VkMemoryOpaqueCaptureAddressAllocateInfo* = object sType*: VkStructureType pNext*: pointer @@ -5362,7 +6660,7 @@ type VkDeviceMemoryOpaqueCaptureAddressInfoKHR* = object - VkPhysicalDeviceLineRasterizationFeaturesEXT* = object + VkPhysicalDeviceLineRasterizationFeaturesKHR* = object sType*: VkStructureType pNext*: pointer rectangularLines*: VkBool32 @@ -5372,24 +6670,32 @@ type stippledBresenhamLines*: VkBool32 stippledSmoothLines*: VkBool32 - VkPhysicalDeviceLineRasterizationPropertiesEXT* = object + VkPhysicalDeviceLineRasterizationFeaturesEXT* = object + + VkPhysicalDeviceLineRasterizationPropertiesKHR* = object sType*: VkStructureType pNext*: pointer lineSubPixelPrecisionBits*: uint32 - VkPipelineRasterizationLineStateCreateInfoEXT* = object + VkPhysicalDeviceLineRasterizationPropertiesEXT* = object + + VkPipelineRasterizationLineStateCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer - lineRasterizationMode*: VkLineRasterizationModeEXT + lineRasterizationMode*: VkLineRasterizationModeKHR stippledLineEnable*: VkBool32 lineStippleFactor*: uint32 lineStipplePattern*: uint16 - VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT* = object + VkPipelineRasterizationLineStateCreateInfoEXT* = object + + VkPhysicalDevicePipelineCreationCacheControlFeatures* = object sType*: VkStructureType pNext*: pointer pipelineCreationCacheControl*: VkBool32 + VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT* = object + VkPhysicalDeviceVulkan11Features* = object sType*: VkStructureType pNext*: pointer @@ -5532,6 +6838,74 @@ type maxTimelineSemaphoreValueDifference*: uint64 framebufferIntegerColorSampleCounts*: VkSampleCountFlags + VkPhysicalDeviceVulkan13Features* = object + sType*: VkStructureType + pNext*: pointer + robustImageAccess*: VkBool32 + inlineUniformBlock*: VkBool32 + descriptorBindingInlineUniformBlockUpdateAfterBind*: VkBool32 + pipelineCreationCacheControl*: VkBool32 + privateData*: VkBool32 + shaderDemoteToHelperInvocation*: VkBool32 + shaderTerminateInvocation*: VkBool32 + subgroupSizeControl*: VkBool32 + computeFullSubgroups*: VkBool32 + synchronization2*: VkBool32 + textureCompressionASTC_HDR*: VkBool32 + shaderZeroInitializeWorkgroupMemory*: VkBool32 + dynamicRendering*: VkBool32 + shaderIntegerDotProduct*: VkBool32 + maintenance4*: VkBool32 + + VkPhysicalDeviceVulkan13Properties* = object + sType*: VkStructureType + pNext*: pointer + minSubgroupSize*: uint32 + maxSubgroupSize*: uint32 + maxComputeWorkgroupSubgroups*: uint32 + requiredSubgroupSizeStages*: VkShaderStageFlags + maxInlineUniformBlockSize*: uint32 + maxPerStageDescriptorInlineUniformBlocks*: uint32 + maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks*: uint32 + maxDescriptorSetInlineUniformBlocks*: uint32 + maxDescriptorSetUpdateAfterBindInlineUniformBlocks*: uint32 + maxInlineUniformTotalSize*: uint32 + integerDotProduct8BitUnsignedAccelerated*: VkBool32 + integerDotProduct8BitSignedAccelerated*: VkBool32 + integerDotProduct8BitMixedSignednessAccelerated*: VkBool32 + integerDotProduct4x8BitPackedUnsignedAccelerated*: VkBool32 + integerDotProduct4x8BitPackedSignedAccelerated*: VkBool32 + integerDotProduct4x8BitPackedMixedSignednessAccelerated*: VkBool32 + integerDotProduct16BitUnsignedAccelerated*: VkBool32 + integerDotProduct16BitSignedAccelerated*: VkBool32 + integerDotProduct16BitMixedSignednessAccelerated*: VkBool32 + integerDotProduct32BitUnsignedAccelerated*: VkBool32 + integerDotProduct32BitSignedAccelerated*: VkBool32 + integerDotProduct32BitMixedSignednessAccelerated*: VkBool32 + integerDotProduct64BitUnsignedAccelerated*: VkBool32 + integerDotProduct64BitSignedAccelerated*: VkBool32 + integerDotProduct64BitMixedSignednessAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating8BitUnsignedAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating8BitSignedAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating16BitUnsignedAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating16BitSignedAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating32BitUnsignedAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating32BitSignedAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating64BitUnsignedAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating64BitSignedAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated*: VkBool32 + storageTexelBufferOffsetAlignmentBytes*: VkDeviceSize + storageTexelBufferOffsetSingleTexelAlignment*: VkBool32 + uniformTexelBufferOffsetAlignmentBytes*: VkDeviceSize + uniformTexelBufferOffsetSingleTexelAlignment*: VkBool32 + maxBufferSize*: VkDeviceSize + VkPipelineCompilerControlCreateInfoAMD* = object sType*: VkStructureType pNext*: pointer @@ -5542,15 +6916,30 @@ type pNext*: pointer deviceCoherentMemory*: VkBool32 - VkPhysicalDeviceToolPropertiesEXT* = object + VkFaultData* = object + sType*: VkStructureType + pNext*: pointer + faultLevel*: VkFaultLevel + faultType*: VkFaultType + + VkFaultCallbackInfo* = object + sType*: VkStructureType + pNext*: pointer + faultCount*: uint32 + pFaults*: ptr VkFaultData + pfnFaultCallback*: PFN_vkFaultCallbackFunction + + VkPhysicalDeviceToolProperties* = object sType*: VkStructureType pNext*: pointer name*: array[VK_MAX_EXTENSION_NAME_SIZE, char] version*: array[VK_MAX_EXTENSION_NAME_SIZE, char] - purposes*: VkToolPurposeFlagsEXT + purposes*: VkToolPurposeFlags description*: array[VK_MAX_DESCRIPTION_SIZE, char] layer*: array[VK_MAX_EXTENSION_NAME_SIZE, char] + VkPhysicalDeviceToolPropertiesEXT* = object + VkSamplerCustomBorderColorCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer @@ -5568,6 +6957,18 @@ type customBorderColors*: VkBool32 customBorderColorWithoutFormat*: VkBool32 + VkSamplerBorderColorComponentMappingCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + components*: VkComponentMapping + srgb*: VkBool32 + + VkPhysicalDeviceBorderColorSwizzleFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + borderColorSwizzle*: VkBool32 + borderColorSwizzleFromImage*: VkBool32 + VkDeviceOrHostAddressKHR* {.union.} = object deviceAddress*: VkDeviceAddress hostAddress*: pointer @@ -5576,12 +6977,17 @@ type deviceAddress*: VkDeviceAddress hostAddress*: pointer + VkDeviceOrHostAddressConstAMDX* {.union.} = object + deviceAddress*: VkDeviceAddress + hostAddress*: pointer + VkAccelerationStructureGeometryTrianglesDataKHR* = object sType*: VkStructureType pNext*: pointer vertexFormat*: VkFormat vertexData*: VkDeviceOrHostAddressConstKHR vertexStride*: VkDeviceSize + maxVertex*: uint32 indexType*: VkIndexType indexData*: VkDeviceOrHostAddressConstKHR transformData*: VkDeviceOrHostAddressConstKHR @@ -5615,38 +7021,28 @@ type pNext*: pointer `type`*: VkAccelerationStructureTypeKHR flags*: VkBuildAccelerationStructureFlagsKHR - update*: VkBool32 + mode*: VkBuildAccelerationStructureModeKHR srcAccelerationStructure*: VkAccelerationStructureKHR dstAccelerationStructure*: VkAccelerationStructureKHR - geometryArrayOfPointers*: VkBool32 geometryCount*: uint32 + pGeometries*: ptr VkAccelerationStructureGeometryKHR ppGeometries*: ptr ptr VkAccelerationStructureGeometryKHR scratchData*: VkDeviceOrHostAddressKHR - VkAccelerationStructureBuildOffsetInfoKHR* = object + VkAccelerationStructureBuildRangeInfoKHR* = object primitiveCount*: uint32 primitiveOffset*: uint32 firstVertex*: uint32 transformOffset*: uint32 - VkAccelerationStructureCreateGeometryTypeInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - geometryType*: VkGeometryTypeKHR - maxPrimitiveCount*: uint32 - indexType*: VkIndexType - maxVertexCount*: uint32 - vertexFormat*: VkFormat - allowsTransforms*: VkBool32 - VkAccelerationStructureCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer - compactedSize*: VkDeviceSize + createFlags*: VkAccelerationStructureCreateFlagsKHR + buffer*: VkBuffer + offset*: VkDeviceSize + size*: VkDeviceSize `type`*: VkAccelerationStructureTypeKHR - flags*: VkBuildAccelerationStructureFlagsKHR - maxGeometryCount*: uint32 - pGeometryInfos*: ptr VkAccelerationStructureCreateGeometryTypeInfoKHR deviceAddress*: VkDeviceAddress VkAabbPositionsKHR* = object @@ -5679,10 +7075,10 @@ type pNext*: pointer accelerationStructure*: VkAccelerationStructureKHR - VkAccelerationStructureVersionKHR* = object + VkAccelerationStructureVersionInfoKHR* = object sType*: VkStructureType pNext*: pointer - versionData*: ptr uint8 + pVersionData*: ptr uint8 VkCopyAccelerationStructureInfoKHR* = object sType*: VkStructureType @@ -5708,14 +7104,8 @@ type VkRayTracingPipelineInterfaceCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer - maxPayloadSize*: uint32 - maxAttributeSize*: uint32 - maxCallableSize*: uint32 - - VkDeferredOperationInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - operationHandle*: VkDeferredOperationKHR + maxPipelineRayPayloadSize*: uint32 + maxPipelineRayHitAttributeSize*: uint32 VkPipelineLibraryCreateInfoKHR* = object sType*: VkStructureType @@ -5723,16 +7113,94 @@ type libraryCount*: uint32 pLibraries*: ptr VkPipeline + VkRefreshObjectKHR* = object + objectType*: VkObjectType + objectHandle*: uint64 + flags*: VkRefreshObjectFlagsKHR + + VkRefreshObjectListKHR* = object + sType*: VkStructureType + pNext*: pointer + objectCount*: uint32 + pObjects*: ptr VkRefreshObjectKHR + VkPhysicalDeviceExtendedDynamicStateFeaturesEXT* = object sType*: VkStructureType pNext*: pointer extendedDynamicState*: VkBool32 + VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + extendedDynamicState2*: VkBool32 + extendedDynamicState2LogicOp*: VkBool32 + extendedDynamicState2PatchControlPoints*: VkBool32 + + VkPhysicalDeviceExtendedDynamicState3FeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + extendedDynamicState3TessellationDomainOrigin*: VkBool32 + extendedDynamicState3DepthClampEnable*: VkBool32 + extendedDynamicState3PolygonMode*: VkBool32 + extendedDynamicState3RasterizationSamples*: VkBool32 + extendedDynamicState3SampleMask*: VkBool32 + extendedDynamicState3AlphaToCoverageEnable*: VkBool32 + extendedDynamicState3AlphaToOneEnable*: VkBool32 + extendedDynamicState3LogicOpEnable*: VkBool32 + extendedDynamicState3ColorBlendEnable*: VkBool32 + extendedDynamicState3ColorBlendEquation*: VkBool32 + extendedDynamicState3ColorWriteMask*: VkBool32 + extendedDynamicState3RasterizationStream*: VkBool32 + extendedDynamicState3ConservativeRasterizationMode*: VkBool32 + extendedDynamicState3ExtraPrimitiveOverestimationSize*: VkBool32 + extendedDynamicState3DepthClipEnable*: VkBool32 + extendedDynamicState3SampleLocationsEnable*: VkBool32 + extendedDynamicState3ColorBlendAdvanced*: VkBool32 + extendedDynamicState3ProvokingVertexMode*: VkBool32 + extendedDynamicState3LineRasterizationMode*: VkBool32 + extendedDynamicState3LineStippleEnable*: VkBool32 + extendedDynamicState3DepthClipNegativeOneToOne*: VkBool32 + extendedDynamicState3ViewportWScalingEnable*: VkBool32 + extendedDynamicState3ViewportSwizzle*: VkBool32 + extendedDynamicState3CoverageToColorEnable*: VkBool32 + extendedDynamicState3CoverageToColorLocation*: VkBool32 + extendedDynamicState3CoverageModulationMode*: VkBool32 + extendedDynamicState3CoverageModulationTableEnable*: VkBool32 + extendedDynamicState3CoverageModulationTable*: VkBool32 + extendedDynamicState3CoverageReductionMode*: VkBool32 + extendedDynamicState3RepresentativeFragmentTestEnable*: VkBool32 + extendedDynamicState3ShadingRateImageEnable*: VkBool32 + + VkPhysicalDeviceExtendedDynamicState3PropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + dynamicPrimitiveTopologyUnrestricted*: VkBool32 + + VkColorBlendEquationEXT* = object + srcColorBlendFactor*: VkBlendFactor + dstColorBlendFactor*: VkBlendFactor + colorBlendOp*: VkBlendOp + srcAlphaBlendFactor*: VkBlendFactor + dstAlphaBlendFactor*: VkBlendFactor + alphaBlendOp*: VkBlendOp + + VkColorBlendAdvancedEXT* = object + advancedBlendOp*: VkBlendOp + srcPremultiplied*: VkBool32 + dstPremultiplied*: VkBool32 + blendOverlap*: VkBlendOverlapEXT + clampResults*: VkBool32 + VkRenderPassTransformBeginInfoQCOM* = object sType*: VkStructureType pNext*: pointer transform*: VkSurfaceTransformFlagBitsKHR + VkCopyCommandTransformInfoQCOM* = object + sType*: VkStructureType + pNext*: pointer + transform*: VkSurfaceTransformFlagBitsKHR + VkCommandBufferInheritanceRenderPassTransformInfoQCOM* = object sType*: VkStructureType pNext*: pointer @@ -5749,12 +7217,31 @@ type pNext*: pointer flags*: VkDeviceDiagnosticsConfigFlagsNV - VkPhysicalDeviceRobustness2FeaturesEXT* = object + VkPipelineOfflineCreateInfo* = object sType*: VkStructureType pNext*: pointer - robustBufferAccess2*: VkBool32 - robustImageAccess2*: VkBool32 - nullDescriptor*: VkBool32 + pipelineIdentifier*: array[VK_UUID_SIZE, uint8] + matchControl*: VkPipelineMatchControl + poolEntrySize*: VkDeviceSize + + VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures* = object + sType*: VkStructureType + pNext*: pointer + shaderZeroInitializeWorkgroupMemory*: VkBool32 + + VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR* = object + + VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + shaderSubgroupUniformControlFlow*: VkBool32 + + VkPhysicalDeviceRobustness2FeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + robustBufferAccess2*: VkBool32 + robustImageAccess2*: VkBool32 + nullDescriptor*: VkBool32 VkPhysicalDeviceRobustness2PropertiesEXT* = object sType*: VkStructureType @@ -5762,906 +7249,4095 @@ type robustStorageBufferAccessSizeAlignment*: VkDeviceSize robustUniformBufferAccessSizeAlignment*: VkDeviceSize - VkPhysicalDeviceImageRobustnessFeaturesEXT* = object + VkPhysicalDeviceImageRobustnessFeatures* = object sType*: VkStructureType pNext*: pointer robustImageAccess*: VkBool32 + VkPhysicalDeviceImageRobustnessFeaturesEXT* = object + + VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + workgroupMemoryExplicitLayout*: VkBool32 + workgroupMemoryExplicitLayoutScalarBlockLayout*: VkBool32 + workgroupMemoryExplicitLayout8BitAccess*: VkBool32 + workgroupMemoryExplicitLayout16BitAccess*: VkBool32 + + VkPhysicalDevicePortabilitySubsetFeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + constantAlphaColorBlendFactors*: VkBool32 + events*: VkBool32 + imageViewFormatReinterpretation*: VkBool32 + imageViewFormatSwizzle*: VkBool32 + imageView2DOn3DImage*: VkBool32 + multisampleArrayImage*: VkBool32 + mutableComparisonSamplers*: VkBool32 + pointPolygons*: VkBool32 + samplerMipLodBias*: VkBool32 + separateStencilMaskRef*: VkBool32 + shaderSampleRateInterpolationFunctions*: VkBool32 + tessellationIsolines*: VkBool32 + tessellationPointMode*: VkBool32 + triangleFans*: VkBool32 + vertexAttributeAccessBeyondStride*: VkBool32 + + VkPhysicalDevicePortabilitySubsetPropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + minVertexInputBindingStrideAlignment*: uint32 + VkPhysicalDevice4444FormatsFeaturesEXT* = object sType*: VkStructureType pNext*: pointer formatA4R4G4B4*: VkBool32 formatA4B4G4R4*: VkBool32 -# Constructors + VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* = object + sType*: VkStructureType + pNext*: pointer + subpassShading*: VkBool32 -proc newVkOffset2D*(x: int32, y: int32): VkOffset2D = - result.x = x - result.y = y + VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI* = object + sType*: VkStructureType + pNext*: pointer + clustercullingShader*: VkBool32 + multiviewClusterCullingShader*: VkBool32 -proc newVkOffset3D*(x: int32, y: int32, z: int32): VkOffset3D = - result.x = x - result.y = y - result.z = z + VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI* = object + sType*: VkStructureType + pNext*: pointer + clusterShadingRate*: VkBool32 -proc newVkExtent2D*(width: uint32, height: uint32): VkExtent2D = - result.width = width - result.height = height + VkBufferCopy2* = object + sType*: VkStructureType + pNext*: pointer + srcOffset*: VkDeviceSize + dstOffset*: VkDeviceSize + size*: VkDeviceSize -proc newVkExtent3D*(width: uint32, height: uint32, depth: uint32): VkExtent3D = - result.width = width - result.height = height - result.depth = depth + VkBufferCopy2KHR* = object -proc newVkViewport*(x: float32, y: float32, width: float32, height: float32, minDepth: float32, maxDepth: float32): VkViewport = - result.x = x - result.y = y - result.width = width - result.height = height - result.minDepth = minDepth - result.maxDepth = maxDepth + VkImageCopy2* = object + sType*: VkStructureType + pNext*: pointer + srcSubresource*: VkImageSubresourceLayers + srcOffset*: VkOffset3D + dstSubresource*: VkImageSubresourceLayers + dstOffset*: VkOffset3D + extent*: VkExtent3D -proc newVkRect2D*(offset: VkOffset2D, extent: VkExtent2D): VkRect2D = - result.offset = offset - result.extent = extent + VkImageCopy2KHR* = object -proc newVkClearRect*(rect: VkRect2D, baseArrayLayer: uint32, layerCount: uint32): VkClearRect = - result.rect = rect - result.baseArrayLayer = baseArrayLayer - result.layerCount = layerCount + VkImageBlit2* = object + sType*: VkStructureType + pNext*: pointer + srcSubresource*: VkImageSubresourceLayers + srcOffsets*: array[2, VkOffset3D] + dstSubresource*: VkImageSubresourceLayers + dstOffsets*: array[2, VkOffset3D] -proc newVkComponentMapping*(r: VkComponentSwizzle, g: VkComponentSwizzle, b: VkComponentSwizzle, a: VkComponentSwizzle): VkComponentMapping = - result.r = r - result.g = g - result.b = b - result.a = a + VkImageBlit2KHR* = object -proc newVkPhysicalDeviceProperties*(apiVersion: uint32, driverVersion: uint32, vendorID: uint32, deviceID: uint32, deviceType: VkPhysicalDeviceType, deviceName: array[VK_MAX_PHYSICAL_DEVICE_NAME_SIZE, char], pipelineCacheUUID: array[VK_UUID_SIZE, uint8], limits: VkPhysicalDeviceLimits, sparseProperties: VkPhysicalDeviceSparseProperties): VkPhysicalDeviceProperties = - result.apiVersion = apiVersion - result.driverVersion = driverVersion - result.vendorID = vendorID - result.deviceID = deviceID - result.deviceType = deviceType - result.deviceName = deviceName - result.pipelineCacheUUID = pipelineCacheUUID - result.limits = limits - result.sparseProperties = sparseProperties + VkBufferImageCopy2* = object + sType*: VkStructureType + pNext*: pointer + bufferOffset*: VkDeviceSize + bufferRowLength*: uint32 + bufferImageHeight*: uint32 + imageSubresource*: VkImageSubresourceLayers + imageOffset*: VkOffset3D + imageExtent*: VkExtent3D -proc newVkExtensionProperties*(extensionName: array[VK_MAX_EXTENSION_NAME_SIZE, char], specVersion: uint32): VkExtensionProperties = - result.extensionName = extensionName - result.specVersion = specVersion + VkBufferImageCopy2KHR* = object -proc newVkLayerProperties*(layerName: array[VK_MAX_EXTENSION_NAME_SIZE, char], specVersion: uint32, implementationVersion: uint32, description: array[VK_MAX_DESCRIPTION_SIZE, char]): VkLayerProperties = - result.layerName = layerName - result.specVersion = specVersion - result.implementationVersion = implementationVersion - result.description = description + VkImageResolve2* = object + sType*: VkStructureType + pNext*: pointer + srcSubresource*: VkImageSubresourceLayers + srcOffset*: VkOffset3D + dstSubresource*: VkImageSubresourceLayers + dstOffset*: VkOffset3D + extent*: VkExtent3D -proc newVkApplicationInfo*(sType: VkStructureType = VkStructureTypeApplicationInfo, pNext: pointer = nil, pApplicationName: cstring, applicationVersion: uint32, pEngineName: cstring, engineVersion: uint32, apiVersion: uint32): VkApplicationInfo = - result.sType = sType - result.pNext = pNext - result.pApplicationName = pApplicationName - result.applicationVersion = applicationVersion - result.pEngineName = pEngineName - result.engineVersion = engineVersion - result.apiVersion = apiVersion + VkImageResolve2KHR* = object -proc newVkAllocationCallbacks*(pUserData: pointer = nil, pfnAllocation: PFN_vkAllocationFunction, pfnReallocation: PFN_vkReallocationFunction, pfnFree: PFN_vkFreeFunction, pfnInternalAllocation: PFN_vkInternalAllocationNotification, pfnInternalFree: PFN_vkInternalFreeNotification): VkAllocationCallbacks = - result.pUserData = pUserData - result.pfnAllocation = pfnAllocation - result.pfnReallocation = pfnReallocation - result.pfnFree = pfnFree - result.pfnInternalAllocation = pfnInternalAllocation - result.pfnInternalFree = pfnInternalFree + VkCopyBufferInfo2* = object + sType*: VkStructureType + pNext*: pointer + srcBuffer*: VkBuffer + dstBuffer*: VkBuffer + regionCount*: uint32 + pRegions*: ptr VkBufferCopy2 -proc newVkDeviceQueueCreateInfo*(sType: VkStructureType = VkStructureTypeDeviceQueueCreateInfo, pNext: pointer = nil, flags: VkDeviceQueueCreateFlags = 0.VkDeviceQueueCreateFlags, queueFamilyIndex: uint32, queueCount: uint32, pQueuePriorities: ptr float32): VkDeviceQueueCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.queueFamilyIndex = queueFamilyIndex - result.queueCount = queueCount - result.pQueuePriorities = pQueuePriorities + VkCopyBufferInfo2KHR* = object -proc newVkDeviceCreateInfo*(sType: VkStructureType = VkStructureTypeDeviceCreateInfo, pNext: pointer = nil, flags: VkDeviceCreateFlags = 0.VkDeviceCreateFlags, queueCreateInfoCount: uint32, pQueueCreateInfos: ptr VkDeviceQueueCreateInfo, enabledLayerCount: uint32, ppEnabledLayerNames: cstringArray, enabledExtensionCount: uint32, ppEnabledExtensionNames: cstringArray, pEnabledFeatures: ptr VkPhysicalDeviceFeatures): VkDeviceCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.queueCreateInfoCount = queueCreateInfoCount - result.pQueueCreateInfos = pQueueCreateInfos - result.enabledLayerCount = enabledLayerCount - result.ppEnabledLayerNames = ppEnabledLayerNames - result.enabledExtensionCount = enabledExtensionCount - result.ppEnabledExtensionNames = ppEnabledExtensionNames - result.pEnabledFeatures = pEnabledFeatures + VkCopyImageInfo2* = object + sType*: VkStructureType + pNext*: pointer + srcImage*: VkImage + srcImageLayout*: VkImageLayout + dstImage*: VkImage + dstImageLayout*: VkImageLayout + regionCount*: uint32 + pRegions*: ptr VkImageCopy2 -proc newVkInstanceCreateInfo*(sType: VkStructureType = VkStructureTypeInstanceCreateInfo, pNext: pointer = nil, flags: VkInstanceCreateFlags = 0.VkInstanceCreateFlags, pApplicationInfo: ptr VkApplicationInfo, enabledLayerCount: uint32, ppEnabledLayerNames: cstringArray, enabledExtensionCount: uint32, ppEnabledExtensionNames: cstringArray): VkInstanceCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.pApplicationInfo = pApplicationInfo - result.enabledLayerCount = enabledLayerCount - result.ppEnabledLayerNames = ppEnabledLayerNames - result.enabledExtensionCount = enabledExtensionCount - result.ppEnabledExtensionNames = ppEnabledExtensionNames + VkCopyImageInfo2KHR* = object -proc newVkQueueFamilyProperties*(queueFlags: VkQueueFlags, queueCount: uint32, timestampValidBits: uint32, minImageTransferGranularity: VkExtent3D): VkQueueFamilyProperties = - result.queueFlags = queueFlags - result.queueCount = queueCount - result.timestampValidBits = timestampValidBits - result.minImageTransferGranularity = minImageTransferGranularity + VkBlitImageInfo2* = object + sType*: VkStructureType + pNext*: pointer + srcImage*: VkImage + srcImageLayout*: VkImageLayout + dstImage*: VkImage + dstImageLayout*: VkImageLayout + regionCount*: uint32 + pRegions*: ptr VkImageBlit2 + filter*: VkFilter -proc newVkPhysicalDeviceMemoryProperties*(memoryTypeCount: uint32, memoryTypes: array[VK_MAX_MEMORY_TYPES, VkMemoryType], memoryHeapCount: uint32, memoryHeaps: array[VK_MAX_MEMORY_HEAPS, VkMemoryHeap]): VkPhysicalDeviceMemoryProperties = - result.memoryTypeCount = memoryTypeCount - result.memoryTypes = memoryTypes - result.memoryHeapCount = memoryHeapCount - result.memoryHeaps = memoryHeaps + VkBlitImageInfo2KHR* = object -proc newVkMemoryAllocateInfo*(sType: VkStructureType = VkStructureTypeMemoryAllocateInfo, pNext: pointer = nil, allocationSize: VkDeviceSize, memoryTypeIndex: uint32): VkMemoryAllocateInfo = - result.sType = sType - result.pNext = pNext - result.allocationSize = allocationSize - result.memoryTypeIndex = memoryTypeIndex + VkCopyBufferToImageInfo2* = object + sType*: VkStructureType + pNext*: pointer + srcBuffer*: VkBuffer + dstImage*: VkImage + dstImageLayout*: VkImageLayout + regionCount*: uint32 + pRegions*: ptr VkBufferImageCopy2 -proc newVkMemoryRequirements*(size: VkDeviceSize, alignment: VkDeviceSize, memoryTypeBits: uint32): VkMemoryRequirements = - result.size = size - result.alignment = alignment - result.memoryTypeBits = memoryTypeBits + VkCopyBufferToImageInfo2KHR* = object -proc newVkSparseImageFormatProperties*(aspectMask: VkImageAspectFlags, imageGranularity: VkExtent3D, flags: VkSparseImageFormatFlags = 0.VkSparseImageFormatFlags): VkSparseImageFormatProperties = - result.aspectMask = aspectMask - result.imageGranularity = imageGranularity - result.flags = flags + VkCopyImageToBufferInfo2* = object + sType*: VkStructureType + pNext*: pointer + srcImage*: VkImage + srcImageLayout*: VkImageLayout + dstBuffer*: VkBuffer + regionCount*: uint32 + pRegions*: ptr VkBufferImageCopy2 -proc newVkSparseImageMemoryRequirements*(formatProperties: VkSparseImageFormatProperties, imageMipTailFirstLod: uint32, imageMipTailSize: VkDeviceSize, imageMipTailOffset: VkDeviceSize, imageMipTailStride: VkDeviceSize): VkSparseImageMemoryRequirements = - result.formatProperties = formatProperties - result.imageMipTailFirstLod = imageMipTailFirstLod - result.imageMipTailSize = imageMipTailSize - result.imageMipTailOffset = imageMipTailOffset - result.imageMipTailStride = imageMipTailStride + VkCopyImageToBufferInfo2KHR* = object -proc newVkMemoryType*(propertyFlags: VkMemoryPropertyFlags, heapIndex: uint32): VkMemoryType = - result.propertyFlags = propertyFlags - result.heapIndex = heapIndex + VkResolveImageInfo2* = object + sType*: VkStructureType + pNext*: pointer + srcImage*: VkImage + srcImageLayout*: VkImageLayout + dstImage*: VkImage + dstImageLayout*: VkImageLayout + regionCount*: uint32 + pRegions*: ptr VkImageResolve2 -proc newVkMemoryHeap*(size: VkDeviceSize, flags: VkMemoryHeapFlags = 0.VkMemoryHeapFlags): VkMemoryHeap = - result.size = size - result.flags = flags + VkResolveImageInfo2KHR* = object -proc newVkMappedMemoryRange*(sType: VkStructureType = VkStructureTypeMappedMemoryRange, pNext: pointer = nil, memory: VkDeviceMemory, offset: VkDeviceSize, size: VkDeviceSize): VkMappedMemoryRange = - result.sType = sType - result.pNext = pNext - result.memory = memory - result.offset = offset - result.size = size + VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + shaderImageInt64Atomics*: VkBool32 + sparseImageInt64Atomics*: VkBool32 -proc newVkFormatProperties*(linearTilingFeatures: VkFormatFeatureFlags, optimalTilingFeatures: VkFormatFeatureFlags, bufferFeatures: VkFormatFeatureFlags): VkFormatProperties = - result.linearTilingFeatures = linearTilingFeatures - result.optimalTilingFeatures = optimalTilingFeatures - result.bufferFeatures = bufferFeatures + VkFragmentShadingRateAttachmentInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + pFragmentShadingRateAttachment*: ptr VkAttachmentReference2 + shadingRateAttachmentTexelSize*: VkExtent2D -proc newVkImageFormatProperties*(maxExtent: VkExtent3D, maxMipLevels: uint32, maxArrayLayers: uint32, sampleCounts: VkSampleCountFlags, maxResourceSize: VkDeviceSize): VkImageFormatProperties = - result.maxExtent = maxExtent - result.maxMipLevels = maxMipLevels - result.maxArrayLayers = maxArrayLayers - result.sampleCounts = sampleCounts - result.maxResourceSize = maxResourceSize + VkPipelineFragmentShadingRateStateCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + fragmentSize*: VkExtent2D + combinerOps*: array[2, VkFragmentShadingRateCombinerOpKHR] -proc newVkDescriptorBufferInfo*(buffer: VkBuffer, offset: VkDeviceSize, range: VkDeviceSize): VkDescriptorBufferInfo = - result.buffer = buffer - result.offset = offset - result.range = range + VkPhysicalDeviceFragmentShadingRateFeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + pipelineFragmentShadingRate*: VkBool32 + primitiveFragmentShadingRate*: VkBool32 + attachmentFragmentShadingRate*: VkBool32 -proc newVkDescriptorImageInfo*(sampler: VkSampler, imageView: VkImageView, imageLayout: VkImageLayout): VkDescriptorImageInfo = - result.sampler = sampler - result.imageView = imageView - result.imageLayout = imageLayout + VkPhysicalDeviceFragmentShadingRatePropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + minFragmentShadingRateAttachmentTexelSize*: VkExtent2D + maxFragmentShadingRateAttachmentTexelSize*: VkExtent2D + maxFragmentShadingRateAttachmentTexelSizeAspectRatio*: uint32 + primitiveFragmentShadingRateWithMultipleViewports*: VkBool32 + layeredShadingRateAttachments*: VkBool32 + fragmentShadingRateNonTrivialCombinerOps*: VkBool32 + maxFragmentSize*: VkExtent2D + maxFragmentSizeAspectRatio*: uint32 + maxFragmentShadingRateCoverageSamples*: uint32 + maxFragmentShadingRateRasterizationSamples*: VkSampleCountFlagBits + fragmentShadingRateWithShaderDepthStencilWrites*: VkBool32 + fragmentShadingRateWithSampleMask*: VkBool32 + fragmentShadingRateWithShaderSampleMask*: VkBool32 + fragmentShadingRateWithConservativeRasterization*: VkBool32 + fragmentShadingRateWithFragmentShaderInterlock*: VkBool32 + fragmentShadingRateWithCustomSampleLocations*: VkBool32 + fragmentShadingRateStrictMultiplyCombiner*: VkBool32 -proc newVkWriteDescriptorSet*(sType: VkStructureType = VkStructureTypeWriteDescriptorSet, pNext: pointer = nil, dstSet: VkDescriptorSet, dstBinding: uint32, dstArrayElement: uint32, descriptorCount: uint32, descriptorType: VkDescriptorType, pImageInfo: ptr VkDescriptorImageInfo, pBufferInfo: ptr ptr VkDescriptorBufferInfo, pTexelBufferView: ptr VkBufferView): VkWriteDescriptorSet = - result.sType = sType - result.pNext = pNext - result.dstSet = dstSet - result.dstBinding = dstBinding - result.dstArrayElement = dstArrayElement - result.descriptorCount = descriptorCount - result.descriptorType = descriptorType - result.pImageInfo = pImageInfo - result.pBufferInfo = pBufferInfo - result.pTexelBufferView = pTexelBufferView + VkPhysicalDeviceFragmentShadingRateKHR* = object + sType*: VkStructureType + pNext*: pointer + sampleCounts*: VkSampleCountFlags + fragmentSize*: VkExtent2D -proc newVkCopyDescriptorSet*(sType: VkStructureType = VkStructureTypeCopyDescriptorSet, pNext: pointer = nil, srcSet: VkDescriptorSet, srcBinding: uint32, srcArrayElement: uint32, dstSet: VkDescriptorSet, dstBinding: uint32, dstArrayElement: uint32, descriptorCount: uint32): VkCopyDescriptorSet = - result.sType = sType - result.pNext = pNext - result.srcSet = srcSet - result.srcBinding = srcBinding - result.srcArrayElement = srcArrayElement - result.dstSet = dstSet - result.dstBinding = dstBinding - result.dstArrayElement = dstArrayElement - result.descriptorCount = descriptorCount + VkPhysicalDeviceShaderTerminateInvocationFeatures* = object + sType*: VkStructureType + pNext*: pointer + shaderTerminateInvocation*: VkBool32 -proc newVkBufferCreateInfo*(sType: VkStructureType = VkStructureTypeBufferCreateInfo, pNext: pointer = nil, flags: VkBufferCreateFlags = 0.VkBufferCreateFlags, size: VkDeviceSize, usage: VkBufferUsageFlags, sharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32): VkBufferCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.size = size - result.usage = usage - result.sharingMode = sharingMode - result.queueFamilyIndexCount = queueFamilyIndexCount - result.pQueueFamilyIndices = pQueueFamilyIndices + VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR* = object -proc newVkBufferViewCreateInfo*(sType: VkStructureType = VkStructureTypeBufferViewCreateInfo, pNext: pointer = nil, flags: VkBufferViewCreateFlags = 0.VkBufferViewCreateFlags, buffer: VkBuffer, format: VkFormat, offset: VkDeviceSize, range: VkDeviceSize): VkBufferViewCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.buffer = buffer - result.format = format - result.offset = offset - result.range = range + VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + fragmentShadingRateEnums*: VkBool32 + supersampleFragmentShadingRates*: VkBool32 + noInvocationFragmentShadingRates*: VkBool32 -proc newVkImageSubresource*(aspectMask: VkImageAspectFlags, mipLevel: uint32, arrayLayer: uint32): VkImageSubresource = - result.aspectMask = aspectMask - result.mipLevel = mipLevel - result.arrayLayer = arrayLayer + VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV* = object + sType*: VkStructureType + pNext*: pointer + maxFragmentShadingRateInvocationCount*: VkSampleCountFlagBits -proc newVkImageSubresourceLayers*(aspectMask: VkImageAspectFlags, mipLevel: uint32, baseArrayLayer: uint32, layerCount: uint32): VkImageSubresourceLayers = - result.aspectMask = aspectMask - result.mipLevel = mipLevel - result.baseArrayLayer = baseArrayLayer - result.layerCount = layerCount + VkPipelineFragmentShadingRateEnumStateCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + shadingRateType*: VkFragmentShadingRateTypeNV + shadingRate*: VkFragmentShadingRateNV + combinerOps*: array[2, VkFragmentShadingRateCombinerOpKHR] -proc newVkImageSubresourceRange*(aspectMask: VkImageAspectFlags, baseMipLevel: uint32, levelCount: uint32, baseArrayLayer: uint32, layerCount: uint32): VkImageSubresourceRange = - result.aspectMask = aspectMask - result.baseMipLevel = baseMipLevel - result.levelCount = levelCount - result.baseArrayLayer = baseArrayLayer - result.layerCount = layerCount + VkAccelerationStructureBuildSizesInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + accelerationStructureSize*: VkDeviceSize + updateScratchSize*: VkDeviceSize + buildScratchSize*: VkDeviceSize -proc newVkMemoryBarrier*(sType: VkStructureType = VkStructureTypeMemoryBarrier, pNext: pointer = nil, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags): VkMemoryBarrier = - result.sType = sType - result.pNext = pNext - result.srcAccessMask = srcAccessMask - result.dstAccessMask = dstAccessMask + VkPhysicalDeviceImage2DViewOf3DFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + image2DViewOf3D*: VkBool32 + sampler2DViewOf3D*: VkBool32 -proc newVkBufferMemoryBarrier*(sType: VkStructureType = VkStructureTypeBufferMemoryBarrier, pNext: pointer = nil, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags, srcQueueFamilyIndex: uint32, dstQueueFamilyIndex: uint32, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize): VkBufferMemoryBarrier = - result.sType = sType - result.pNext = pNext - result.srcAccessMask = srcAccessMask - result.dstAccessMask = dstAccessMask - result.srcQueueFamilyIndex = srcQueueFamilyIndex - result.dstQueueFamilyIndex = dstQueueFamilyIndex - result.buffer = buffer - result.offset = offset - result.size = size + VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + imageSlicedViewOf3D*: VkBool32 -proc newVkImageMemoryBarrier*(sType: VkStructureType = VkStructureTypeImageMemoryBarrier, pNext: pointer = nil, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags, oldLayout: VkImageLayout, newLayout: VkImageLayout, srcQueueFamilyIndex: uint32, dstQueueFamilyIndex: uint32, image: VkImage, subresourceRange: VkImageSubresourceRange): VkImageMemoryBarrier = - result.sType = sType - result.pNext = pNext - result.srcAccessMask = srcAccessMask - result.dstAccessMask = dstAccessMask - result.oldLayout = oldLayout - result.newLayout = newLayout - result.srcQueueFamilyIndex = srcQueueFamilyIndex - result.dstQueueFamilyIndex = dstQueueFamilyIndex - result.image = image - result.subresourceRange = subresourceRange + VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + attachmentFeedbackLoopDynamicState*: VkBool32 -proc newVkImageCreateInfo*(sType: VkStructureType = VkStructureTypeImageCreateInfo, pNext: pointer = nil, flags: VkImageCreateFlags = 0.VkImageCreateFlags, imageType: VkImageType, format: VkFormat, extent: VkExtent3D, mipLevels: uint32, arrayLayers: uint32, samples: VkSampleCountFlagBits, tiling: VkImageTiling, usage: VkImageUsageFlags, sharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32, initialLayout: VkImageLayout): VkImageCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.imageType = imageType - result.format = format - result.extent = extent - result.mipLevels = mipLevels - result.arrayLayers = arrayLayers - result.samples = samples - result.tiling = tiling - result.usage = usage - result.sharingMode = sharingMode - result.queueFamilyIndexCount = queueFamilyIndexCount - result.pQueueFamilyIndices = pQueueFamilyIndices - result.initialLayout = initialLayout + VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + mutableDescriptorType*: VkBool32 -proc newVkSubresourceLayout*(offset: VkDeviceSize, size: VkDeviceSize, rowPitch: VkDeviceSize, arrayPitch: VkDeviceSize, depthPitch: VkDeviceSize): VkSubresourceLayout = - result.offset = offset - result.size = size - result.rowPitch = rowPitch - result.arrayPitch = arrayPitch - result.depthPitch = depthPitch + VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE* = object -proc newVkImageViewCreateInfo*(sType: VkStructureType = VkStructureTypeImageViewCreateInfo, pNext: pointer = nil, flags: VkImageViewCreateFlags = 0.VkImageViewCreateFlags, image: VkImage, viewType: VkImageViewType, format: VkFormat, components: VkComponentMapping, subresourceRange: VkImageSubresourceRange): VkImageViewCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.image = image - result.viewType = viewType - result.format = format - result.components = components - result.subresourceRange = subresourceRange + VkMutableDescriptorTypeListEXT* = object + descriptorTypeCount*: uint32 + pDescriptorTypes*: ptr VkDescriptorType -proc newVkBufferCopy*(srcOffset: VkDeviceSize, dstOffset: VkDeviceSize, size: VkDeviceSize): VkBufferCopy = - result.srcOffset = srcOffset - result.dstOffset = dstOffset - result.size = size + VkMutableDescriptorTypeListVALVE* = object -proc newVkSparseMemoryBind*(resourceOffset: VkDeviceSize, size: VkDeviceSize, memory: VkDeviceMemory, memoryOffset: VkDeviceSize, flags: VkSparseMemoryBindFlags = 0.VkSparseMemoryBindFlags): VkSparseMemoryBind = - result.resourceOffset = resourceOffset - result.size = size - result.memory = memory - result.memoryOffset = memoryOffset - result.flags = flags + VkMutableDescriptorTypeCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + mutableDescriptorTypeListCount*: uint32 + pMutableDescriptorTypeLists*: ptr VkMutableDescriptorTypeListEXT -proc newVkSparseImageMemoryBind*(subresource: VkImageSubresource, offset: VkOffset3D, extent: VkExtent3D, memory: VkDeviceMemory, memoryOffset: VkDeviceSize, flags: VkSparseMemoryBindFlags = 0.VkSparseMemoryBindFlags): VkSparseImageMemoryBind = - result.subresource = subresource - result.offset = offset - result.extent = extent - result.memory = memory - result.memoryOffset = memoryOffset - result.flags = flags + VkMutableDescriptorTypeCreateInfoVALVE* = object -proc newVkSparseBufferMemoryBindInfo*(buffer: VkBuffer, bindCount: uint32, pBinds: ptr VkSparseMemoryBind): VkSparseBufferMemoryBindInfo = - result.buffer = buffer - result.bindCount = bindCount - result.pBinds = pBinds + VkPhysicalDeviceDepthClipControlFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + depthClipControl*: VkBool32 -proc newVkSparseImageOpaqueMemoryBindInfo*(image: VkImage, bindCount: uint32, pBinds: ptr VkSparseMemoryBind): VkSparseImageOpaqueMemoryBindInfo = - result.image = image - result.bindCount = bindCount - result.pBinds = pBinds + VkPipelineViewportDepthClipControlCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + negativeOneToOne*: VkBool32 -proc newVkSparseImageMemoryBindInfo*(image: VkImage, bindCount: uint32, pBinds: ptr VkSparseImageMemoryBind): VkSparseImageMemoryBindInfo = - result.image = image - result.bindCount = bindCount - result.pBinds = pBinds + VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + vertexInputDynamicState*: VkBool32 -proc newVkBindSparseInfo*(sType: VkStructureType = VkStructureTypeBindSparseInfo, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, bufferBindCount: uint32, pBufferBinds: ptr VkSparseBufferMemoryBindInfo, imageOpaqueBindCount: uint32, pImageOpaqueBinds: ptr VkSparseImageOpaqueMemoryBindInfo, imageBindCount: uint32, pImageBinds: ptr VkSparseImageMemoryBindInfo, signalSemaphoreCount: uint32, pSignalSemaphores: ptr VkSemaphore): VkBindSparseInfo = - result.sType = sType - result.pNext = pNext - result.waitSemaphoreCount = waitSemaphoreCount - result.pWaitSemaphores = pWaitSemaphores - result.bufferBindCount = bufferBindCount - result.pBufferBinds = pBufferBinds - result.imageOpaqueBindCount = imageOpaqueBindCount - result.pImageOpaqueBinds = pImageOpaqueBinds - result.imageBindCount = imageBindCount - result.pImageBinds = pImageBinds - result.signalSemaphoreCount = signalSemaphoreCount - result.pSignalSemaphores = pSignalSemaphores + VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + externalMemoryRDMA*: VkBool32 -proc newVkImageCopy*(srcSubresource: VkImageSubresourceLayers, srcOffset: VkOffset3D, dstSubresource: VkImageSubresourceLayers, dstOffset: VkOffset3D, extent: VkExtent3D): VkImageCopy = - result.srcSubresource = srcSubresource - result.srcOffset = srcOffset - result.dstSubresource = dstSubresource - result.dstOffset = dstOffset - result.extent = extent + VkVertexInputBindingDescription2EXT* = object + sType*: VkStructureType + pNext*: pointer + binding*: uint32 + stride*: uint32 + inputRate*: VkVertexInputRate + divisor*: uint32 -proc newVkImageBlit*(srcSubresource: VkImageSubresourceLayers, srcOffsets: array[2, VkOffset3D], dstSubresource: VkImageSubresourceLayers, dstOffsets: array[2, VkOffset3D]): VkImageBlit = - result.srcSubresource = srcSubresource - result.srcOffsets = srcOffsets - result.dstSubresource = dstSubresource - result.dstOffsets = dstOffsets + VkVertexInputAttributeDescription2EXT* = object + sType*: VkStructureType + pNext*: pointer + location*: uint32 + binding*: uint32 + format*: VkFormat + offset*: uint32 -proc newVkBufferImageCopy*(bufferOffset: VkDeviceSize, bufferRowLength: uint32, bufferImageHeight: uint32, imageSubresource: VkImageSubresourceLayers, imageOffset: VkOffset3D, imageExtent: VkExtent3D): VkBufferImageCopy = - result.bufferOffset = bufferOffset - result.bufferRowLength = bufferRowLength - result.bufferImageHeight = bufferImageHeight - result.imageSubresource = imageSubresource - result.imageOffset = imageOffset - result.imageExtent = imageExtent + VkPhysicalDeviceColorWriteEnableFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + colorWriteEnable*: VkBool32 -proc newVkImageResolve*(srcSubresource: VkImageSubresourceLayers, srcOffset: VkOffset3D, dstSubresource: VkImageSubresourceLayers, dstOffset: VkOffset3D, extent: VkExtent3D): VkImageResolve = - result.srcSubresource = srcSubresource - result.srcOffset = srcOffset - result.dstSubresource = dstSubresource - result.dstOffset = dstOffset - result.extent = extent + VkPipelineColorWriteCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + attachmentCount*: uint32 + pColorWriteEnables*: ptr VkBool32 -proc newVkShaderModuleCreateInfo*(sType: VkStructureType = VkStructureTypeShaderModuleCreateInfo, pNext: pointer = nil, flags: VkShaderModuleCreateFlags = 0.VkShaderModuleCreateFlags, codeSize: uint, pCode: ptr uint32): VkShaderModuleCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.codeSize = codeSize - result.pCode = pCode + VkMemoryBarrier2* = object + sType*: VkStructureType + pNext*: pointer + srcStageMask*: VkPipelineStageFlags2 + srcAccessMask*: VkAccessFlags2 + dstStageMask*: VkPipelineStageFlags2 + dstAccessMask*: VkAccessFlags2 -proc newVkDescriptorSetLayoutBinding*(binding: uint32, descriptorType: VkDescriptorType, descriptorCount: uint32, stageFlags: VkShaderStageFlags, pImmutableSamplers: ptr VkSampler): VkDescriptorSetLayoutBinding = - result.binding = binding - result.descriptorType = descriptorType - result.descriptorCount = descriptorCount - result.stageFlags = stageFlags - result.pImmutableSamplers = pImmutableSamplers + VkMemoryBarrier2KHR* = object -proc newVkDescriptorSetLayoutCreateInfo*(sType: VkStructureType = VkStructureTypeDescriptorSetLayoutCreateInfo, pNext: pointer = nil, flags: VkDescriptorSetLayoutCreateFlags = 0.VkDescriptorSetLayoutCreateFlags, bindingCount: uint32, pBindings: ptr VkDescriptorSetLayoutBinding): VkDescriptorSetLayoutCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.bindingCount = bindingCount - result.pBindings = pBindings + VkImageMemoryBarrier2* = object + sType*: VkStructureType + pNext*: pointer + srcStageMask*: VkPipelineStageFlags2 + srcAccessMask*: VkAccessFlags2 + dstStageMask*: VkPipelineStageFlags2 + dstAccessMask*: VkAccessFlags2 + oldLayout*: VkImageLayout + newLayout*: VkImageLayout + srcQueueFamilyIndex*: uint32 + dstQueueFamilyIndex*: uint32 + image*: VkImage + subresourceRange*: VkImageSubresourceRange -proc newVkDescriptorPoolSize*(`type`: VkDescriptorType, descriptorCount: uint32): VkDescriptorPoolSize = - result.`type` = `type` - result.descriptorCount = descriptorCount + VkImageMemoryBarrier2KHR* = object -proc newVkDescriptorPoolCreateInfo*(sType: VkStructureType = VkStructureTypeDescriptorPoolCreateInfo, pNext: pointer = nil, flags: VkDescriptorPoolCreateFlags = 0.VkDescriptorPoolCreateFlags, maxSets: uint32, poolSizeCount: uint32, pPoolSizes: ptr VkDescriptorPoolSize): VkDescriptorPoolCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.maxSets = maxSets - result.poolSizeCount = poolSizeCount - result.pPoolSizes = pPoolSizes + VkBufferMemoryBarrier2* = object + sType*: VkStructureType + pNext*: pointer + srcStageMask*: VkPipelineStageFlags2 + srcAccessMask*: VkAccessFlags2 + dstStageMask*: VkPipelineStageFlags2 + dstAccessMask*: VkAccessFlags2 + srcQueueFamilyIndex*: uint32 + dstQueueFamilyIndex*: uint32 + buffer*: VkBuffer + offset*: VkDeviceSize + size*: VkDeviceSize -proc newVkDescriptorSetAllocateInfo*(sType: VkStructureType = VkStructureTypeDescriptorSetAllocateInfo, pNext: pointer = nil, descriptorPool: VkDescriptorPool, descriptorSetCount: uint32, pSetLayouts: ptr VkDescriptorSetLayout): VkDescriptorSetAllocateInfo = - result.sType = sType - result.pNext = pNext - result.descriptorPool = descriptorPool - result.descriptorSetCount = descriptorSetCount - result.pSetLayouts = pSetLayouts + VkBufferMemoryBarrier2KHR* = object -proc newVkSpecializationMapEntry*(constantID: uint32, offset: uint32, size: uint): VkSpecializationMapEntry = - result.constantID = constantID - result.offset = offset - result.size = size + VkDependencyInfo* = object + sType*: VkStructureType + pNext*: pointer + dependencyFlags*: VkDependencyFlags + memoryBarrierCount*: uint32 + pMemoryBarriers*: ptr VkMemoryBarrier2 + bufferMemoryBarrierCount*: uint32 + pBufferMemoryBarriers*: ptr VkBufferMemoryBarrier2 + imageMemoryBarrierCount*: uint32 + pImageMemoryBarriers*: ptr VkImageMemoryBarrier2 -proc newVkSpecializationInfo*(mapEntryCount: uint32, pMapEntries: ptr VkSpecializationMapEntry, dataSize: uint, pData: pointer = nil): VkSpecializationInfo = - result.mapEntryCount = mapEntryCount - result.pMapEntries = pMapEntries - result.dataSize = dataSize - result.pData = pData + VkDependencyInfoKHR* = object -proc newVkPipelineShaderStageCreateInfo*(sType: VkStructureType = VkStructureTypePipelineShaderStageCreateInfo, pNext: pointer = nil, flags: VkPipelineShaderStageCreateFlags = 0.VkPipelineShaderStageCreateFlags, stage: VkShaderStageFlagBits, module: VkShaderModule, pName: cstring, pSpecializationInfo: ptr VkSpecializationInfo): VkPipelineShaderStageCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.stage = stage - result.module = module - result.pName = pName - result.pSpecializationInfo = pSpecializationInfo + VkSemaphoreSubmitInfo* = object + sType*: VkStructureType + pNext*: pointer + semaphore*: VkSemaphore + value*: uint64 + stageMask*: VkPipelineStageFlags2 + deviceIndex*: uint32 -proc newVkComputePipelineCreateInfo*(sType: VkStructureType = VkStructureTypeComputePipelineCreateInfo, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stage: VkPipelineShaderStageCreateInfo, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkComputePipelineCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.stage = stage - result.layout = layout - result.basePipelineHandle = basePipelineHandle - result.basePipelineIndex = basePipelineIndex + VkSemaphoreSubmitInfoKHR* = object -proc newVkVertexInputBindingDescription*(binding: uint32, stride: uint32, inputRate: VkVertexInputRate): VkVertexInputBindingDescription = - result.binding = binding - result.stride = stride - result.inputRate = inputRate + VkCommandBufferSubmitInfo* = object + sType*: VkStructureType + pNext*: pointer + commandBuffer*: VkCommandBuffer + deviceMask*: uint32 -proc newVkVertexInputAttributeDescription*(location: uint32, binding: uint32, format: VkFormat, offset: uint32): VkVertexInputAttributeDescription = - result.location = location - result.binding = binding - result.format = format - result.offset = offset + VkCommandBufferSubmitInfoKHR* = object -proc newVkPipelineVertexInputStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineVertexInputStateCreateInfo, pNext: pointer = nil, flags: VkPipelineVertexInputStateCreateFlags = 0.VkPipelineVertexInputStateCreateFlags, vertexBindingDescriptionCount: uint32, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription, vertexAttributeDescriptionCount: uint32, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription): VkPipelineVertexInputStateCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.vertexBindingDescriptionCount = vertexBindingDescriptionCount - result.pVertexBindingDescriptions = pVertexBindingDescriptions - result.vertexAttributeDescriptionCount = vertexAttributeDescriptionCount - result.pVertexAttributeDescriptions = pVertexAttributeDescriptions + VkSubmitInfo2* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkSubmitFlags + waitSemaphoreInfoCount*: uint32 + pWaitSemaphoreInfos*: ptr VkSemaphoreSubmitInfo + commandBufferInfoCount*: uint32 + pCommandBufferInfos*: ptr VkCommandBufferSubmitInfo + signalSemaphoreInfoCount*: uint32 + pSignalSemaphoreInfos*: ptr VkSemaphoreSubmitInfo -proc newVkPipelineInputAssemblyStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineInputAssemblyStateCreateInfo, pNext: pointer = nil, flags: VkPipelineInputAssemblyStateCreateFlags = 0.VkPipelineInputAssemblyStateCreateFlags, topology: VkPrimitiveTopology, primitiveRestartEnable: VkBool32): VkPipelineInputAssemblyStateCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.topology = topology - result.primitiveRestartEnable = primitiveRestartEnable + VkSubmitInfo2KHR* = object -proc newVkPipelineTessellationStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineTessellationStateCreateInfo, pNext: pointer = nil, flags: VkPipelineTessellationStateCreateFlags = 0.VkPipelineTessellationStateCreateFlags, patchControlPoints: uint32): VkPipelineTessellationStateCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.patchControlPoints = patchControlPoints + VkQueueFamilyCheckpointProperties2NV* = object + sType*: VkStructureType + pNext*: pointer + checkpointExecutionStageMask*: VkPipelineStageFlags2 -proc newVkPipelineViewportStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineViewportStateCreateInfo, pNext: pointer = nil, flags: VkPipelineViewportStateCreateFlags = 0.VkPipelineViewportStateCreateFlags, viewportCount: uint32, pViewports: ptr VkViewport, scissorCount: uint32, pScissors: ptr VkRect2D): VkPipelineViewportStateCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.viewportCount = viewportCount - result.pViewports = pViewports - result.scissorCount = scissorCount - result.pScissors = pScissors + VkCheckpointData2NV* = object + sType*: VkStructureType + pNext*: pointer + stage*: VkPipelineStageFlags2 + pCheckpointMarker*: pointer -proc newVkPipelineRasterizationStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineRasterizationStateCreateInfo, pNext: pointer = nil, flags: VkPipelineRasterizationStateCreateFlags = 0.VkPipelineRasterizationStateCreateFlags, depthClampEnable: VkBool32, rasterizerDiscardEnable: VkBool32, polygonMode: VkPolygonMode, cullMode: VkCullModeFlags, frontFace: VkFrontFace, depthBiasEnable: VkBool32, depthBiasConstantFactor: float32, depthBiasClamp: float32, depthBiasSlopeFactor: float32, lineWidth: float32): VkPipelineRasterizationStateCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.depthClampEnable = depthClampEnable - result.rasterizerDiscardEnable = rasterizerDiscardEnable - result.polygonMode = polygonMode - result.cullMode = cullMode - result.frontFace = frontFace - result.depthBiasEnable = depthBiasEnable - result.depthBiasConstantFactor = depthBiasConstantFactor - result.depthBiasClamp = depthBiasClamp - result.depthBiasSlopeFactor = depthBiasSlopeFactor - result.lineWidth = lineWidth + VkPhysicalDeviceSynchronization2Features* = object + sType*: VkStructureType + pNext*: pointer + synchronization2*: VkBool32 -proc newVkPipelineMultisampleStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineMultisampleStateCreateInfo, pNext: pointer = nil, flags: VkPipelineMultisampleStateCreateFlags = 0.VkPipelineMultisampleStateCreateFlags, rasterizationSamples: VkSampleCountFlagBits, sampleShadingEnable: VkBool32, minSampleShading: float32, pSampleMask: ptr VkSampleMask, alphaToCoverageEnable: VkBool32, alphaToOneEnable: VkBool32): VkPipelineMultisampleStateCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.rasterizationSamples = rasterizationSamples - result.sampleShadingEnable = sampleShadingEnable - result.minSampleShading = minSampleShading - result.pSampleMask = pSampleMask - result.alphaToCoverageEnable = alphaToCoverageEnable - result.alphaToOneEnable = alphaToOneEnable + VkPhysicalDeviceSynchronization2FeaturesKHR* = object -proc newVkPipelineColorBlendAttachmentState*(blendEnable: VkBool32, srcColorBlendFactor: VkBlendFactor, dstColorBlendFactor: VkBlendFactor, colorBlendOp: VkBlendOp, srcAlphaBlendFactor: VkBlendFactor, dstAlphaBlendFactor: VkBlendFactor, alphaBlendOp: VkBlendOp, colorWriteMask: VkColorComponentFlags): VkPipelineColorBlendAttachmentState = - result.blendEnable = blendEnable - result.srcColorBlendFactor = srcColorBlendFactor - result.dstColorBlendFactor = dstColorBlendFactor - result.colorBlendOp = colorBlendOp - result.srcAlphaBlendFactor = srcAlphaBlendFactor - result.dstAlphaBlendFactor = dstAlphaBlendFactor - result.alphaBlendOp = alphaBlendOp - result.colorWriteMask = colorWriteMask + VkPhysicalDeviceHostImageCopyFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + hostImageCopy*: VkBool32 -proc newVkPipelineColorBlendStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineColorBlendStateCreateInfo, pNext: pointer = nil, flags: VkPipelineColorBlendStateCreateFlags = 0.VkPipelineColorBlendStateCreateFlags, logicOpEnable: VkBool32, logicOp: VkLogicOp, attachmentCount: uint32, pAttachments: ptr VkPipelineColorBlendAttachmentState, blendConstants: array[4, float32]): VkPipelineColorBlendStateCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.logicOpEnable = logicOpEnable - result.logicOp = logicOp - result.attachmentCount = attachmentCount - result.pAttachments = pAttachments - result.blendConstants = blendConstants + VkPhysicalDeviceHostImageCopyPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + copySrcLayoutCount*: uint32 + pCopySrcLayouts*: ptr VkImageLayout + copyDstLayoutCount*: uint32 + pCopyDstLayouts*: ptr VkImageLayout + optimalTilingLayoutUUID*: array[VK_UUID_SIZE, uint8] + identicalMemoryTypeRequirements*: VkBool32 -proc newVkPipelineDynamicStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineDynamicStateCreateInfo, pNext: pointer = nil, flags: VkPipelineDynamicStateCreateFlags = 0.VkPipelineDynamicStateCreateFlags, dynamicStateCount: uint32, pDynamicStates: ptr VkDynamicState): VkPipelineDynamicStateCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.dynamicStateCount = dynamicStateCount - result.pDynamicStates = pDynamicStates + VkMemoryToImageCopyEXT* = object + sType*: VkStructureType + pNext*: pointer + pHostPointer*: pointer + memoryRowLength*: uint32 + memoryImageHeight*: uint32 + imageSubresource*: VkImageSubresourceLayers + imageOffset*: VkOffset3D + imageExtent*: VkExtent3D -proc newVkStencilOpState*(failOp: VkStencilOp, passOp: VkStencilOp, depthFailOp: VkStencilOp, compareOp: VkCompareOp, compareMask: uint32, writeMask: uint32, reference: uint32): VkStencilOpState = - result.failOp = failOp - result.passOp = passOp - result.depthFailOp = depthFailOp - result.compareOp = compareOp - result.compareMask = compareMask - result.writeMask = writeMask - result.reference = reference + VkImageToMemoryCopyEXT* = object + sType*: VkStructureType + pNext*: pointer + pHostPointer*: pointer + memoryRowLength*: uint32 + memoryImageHeight*: uint32 + imageSubresource*: VkImageSubresourceLayers + imageOffset*: VkOffset3D + imageExtent*: VkExtent3D -proc newVkPipelineDepthStencilStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineDepthStencilStateCreateInfo, pNext: pointer = nil, flags: VkPipelineDepthStencilStateCreateFlags = 0.VkPipelineDepthStencilStateCreateFlags, depthTestEnable: VkBool32, depthWriteEnable: VkBool32, depthCompareOp: VkCompareOp, depthBoundsTestEnable: VkBool32, stencilTestEnable: VkBool32, front: VkStencilOpState, back: VkStencilOpState, minDepthBounds: float32, maxDepthBounds: float32): VkPipelineDepthStencilStateCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.depthTestEnable = depthTestEnable - result.depthWriteEnable = depthWriteEnable - result.depthCompareOp = depthCompareOp - result.depthBoundsTestEnable = depthBoundsTestEnable - result.stencilTestEnable = stencilTestEnable - result.front = front - result.back = back - result.minDepthBounds = minDepthBounds - result.maxDepthBounds = maxDepthBounds + VkCopyMemoryToImageInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkHostImageCopyFlagsEXT + dstImage*: VkImage + dstImageLayout*: VkImageLayout + regionCount*: uint32 + pRegions*: ptr VkMemoryToImageCopyEXT -proc newVkGraphicsPipelineCreateInfo*(sType: VkStructureType = VkStructureTypeGraphicsPipelineCreateInfo, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, pVertexInputState: ptr VkPipelineVertexInputStateCreateInfo, pInputAssemblyState: ptr VkPipelineInputAssemblyStateCreateInfo, pTessellationState: ptr VkPipelineTessellationStateCreateInfo, pViewportState: ptr VkPipelineViewportStateCreateInfo, pRasterizationState: ptr VkPipelineRasterizationStateCreateInfo, pMultisampleState: ptr VkPipelineMultisampleStateCreateInfo, pDepthStencilState: ptr VkPipelineDepthStencilStateCreateInfo, pColorBlendState: ptr VkPipelineColorBlendStateCreateInfo, pDynamicState: ptr VkPipelineDynamicStateCreateInfo, layout: VkPipelineLayout, renderPass: VkRenderPass, subpass: uint32, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkGraphicsPipelineCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.stageCount = stageCount - result.pStages = pStages - result.pVertexInputState = pVertexInputState - result.pInputAssemblyState = pInputAssemblyState - result.pTessellationState = pTessellationState - result.pViewportState = pViewportState - result.pRasterizationState = pRasterizationState - result.pMultisampleState = pMultisampleState - result.pDepthStencilState = pDepthStencilState - result.pColorBlendState = pColorBlendState - result.pDynamicState = pDynamicState - result.layout = layout - result.renderPass = renderPass - result.subpass = subpass - result.basePipelineHandle = basePipelineHandle - result.basePipelineIndex = basePipelineIndex + VkCopyImageToMemoryInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkHostImageCopyFlagsEXT + srcImage*: VkImage + srcImageLayout*: VkImageLayout + regionCount*: uint32 + pRegions*: ptr VkImageToMemoryCopyEXT -proc newVkPipelineCacheCreateInfo*(sType: VkStructureType = VkStructureTypePipelineCacheCreateInfo, pNext: pointer = nil, flags: VkPipelineCacheCreateFlags = 0.VkPipelineCacheCreateFlags, initialDataSize: uint, pInitialData: pointer = nil): VkPipelineCacheCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.initialDataSize = initialDataSize - result.pInitialData = pInitialData + VkCopyImageToImageInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkHostImageCopyFlagsEXT + srcImage*: VkImage + srcImageLayout*: VkImageLayout + dstImage*: VkImage + dstImageLayout*: VkImageLayout + regionCount*: uint32 + pRegions*: ptr VkImageCopy2 -proc newVkPushConstantRange*(stageFlags: VkShaderStageFlags, offset: uint32, size: uint32): VkPushConstantRange = - result.stageFlags = stageFlags - result.offset = offset - result.size = size + VkHostImageLayoutTransitionInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + image*: VkImage + oldLayout*: VkImageLayout + newLayout*: VkImageLayout + subresourceRange*: VkImageSubresourceRange -proc newVkPipelineLayoutCreateInfo*(sType: VkStructureType = VkStructureTypePipelineLayoutCreateInfo, pNext: pointer = nil, flags: VkPipelineLayoutCreateFlags = 0.VkPipelineLayoutCreateFlags, setLayoutCount: uint32, pSetLayouts: ptr VkDescriptorSetLayout, pushConstantRangeCount: uint32, pPushConstantRanges: ptr VkPushConstantRange): VkPipelineLayoutCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.setLayoutCount = setLayoutCount - result.pSetLayouts = pSetLayouts - result.pushConstantRangeCount = pushConstantRangeCount - result.pPushConstantRanges = pPushConstantRanges + VkSubresourceHostMemcpySizeEXT* = object + sType*: VkStructureType + pNext*: pointer + size*: VkDeviceSize -proc newVkSamplerCreateInfo*(sType: VkStructureType = VkStructureTypeSamplerCreateInfo, pNext: pointer = nil, flags: VkSamplerCreateFlags = 0.VkSamplerCreateFlags, magFilter: VkFilter, minFilter: VkFilter, mipmapMode: VkSamplerMipmapMode, addressModeU: VkSamplerAddressMode, addressModeV: VkSamplerAddressMode, addressModeW: VkSamplerAddressMode, mipLodBias: float32, anisotropyEnable: VkBool32, maxAnisotropy: float32, compareEnable: VkBool32, compareOp: VkCompareOp, minLod: float32, maxLod: float32, borderColor: VkBorderColor, unnormalizedCoordinates: VkBool32): VkSamplerCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.magFilter = magFilter - result.minFilter = minFilter - result.mipmapMode = mipmapMode - result.addressModeU = addressModeU - result.addressModeV = addressModeV - result.addressModeW = addressModeW - result.mipLodBias = mipLodBias - result.anisotropyEnable = anisotropyEnable - result.maxAnisotropy = maxAnisotropy - result.compareEnable = compareEnable - result.compareOp = compareOp - result.minLod = minLod - result.maxLod = maxLod - result.borderColor = borderColor - result.unnormalizedCoordinates = unnormalizedCoordinates + VkHostImageCopyDevicePerformanceQueryEXT* = object + sType*: VkStructureType + pNext*: pointer + optimalDeviceAccess*: VkBool32 + identicalMemoryLayout*: VkBool32 -proc newVkCommandPoolCreateInfo*(sType: VkStructureType = VkStructureTypeCommandPoolCreateInfo, pNext: pointer = nil, flags: VkCommandPoolCreateFlags = 0.VkCommandPoolCreateFlags, queueFamilyIndex: uint32): VkCommandPoolCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.queueFamilyIndex = queueFamilyIndex + VkPhysicalDeviceVulkanSC10Properties* = object + sType*: VkStructureType + pNext*: pointer + deviceNoDynamicHostAllocations*: VkBool32 + deviceDestroyFreesMemory*: VkBool32 + commandPoolMultipleCommandBuffersRecording*: VkBool32 + commandPoolResetCommandBuffer*: VkBool32 + commandBufferSimultaneousUse*: VkBool32 + secondaryCommandBufferNullOrImagelessFramebuffer*: VkBool32 + recycleDescriptorSetMemory*: VkBool32 + recyclePipelineMemory*: VkBool32 + maxRenderPassSubpasses*: uint32 + maxRenderPassDependencies*: uint32 + maxSubpassInputAttachments*: uint32 + maxSubpassPreserveAttachments*: uint32 + maxFramebufferAttachments*: uint32 + maxDescriptorSetLayoutBindings*: uint32 + maxQueryFaultCount*: uint32 + maxCallbackFaultCount*: uint32 + maxCommandPoolCommandBuffers*: uint32 + maxCommandBufferSize*: VkDeviceSize -proc newVkCommandBufferAllocateInfo*(sType: VkStructureType = VkStructureTypeCommandBufferAllocateInfo, pNext: pointer = nil, commandPool: VkCommandPool, level: VkCommandBufferLevel, commandBufferCount: uint32): VkCommandBufferAllocateInfo = - result.sType = sType - result.pNext = pNext - result.commandPool = commandPool - result.level = level - result.commandBufferCount = commandBufferCount + VkPipelinePoolSize* = object + sType*: VkStructureType + pNext*: pointer + poolEntrySize*: VkDeviceSize + poolEntryCount*: uint32 -proc newVkCommandBufferInheritanceInfo*(sType: VkStructureType = VkStructureTypeCommandBufferInheritanceInfo, pNext: pointer = nil, renderPass: VkRenderPass, subpass: uint32, framebuffer: VkFramebuffer, occlusionQueryEnable: VkBool32, queryFlags: VkQueryControlFlags, pipelineStatistics: VkQueryPipelineStatisticFlags): VkCommandBufferInheritanceInfo = - result.sType = sType - result.pNext = pNext - result.renderPass = renderPass - result.subpass = subpass - result.framebuffer = framebuffer - result.occlusionQueryEnable = occlusionQueryEnable - result.queryFlags = queryFlags - result.pipelineStatistics = pipelineStatistics + VkDeviceObjectReservationCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + pipelineCacheCreateInfoCount*: uint32 + pPipelineCacheCreateInfos*: ptr VkPipelineCacheCreateInfo + pipelinePoolSizeCount*: uint32 + pPipelinePoolSizes*: ptr VkPipelinePoolSize + semaphoreRequestCount*: uint32 + commandBufferRequestCount*: uint32 + fenceRequestCount*: uint32 + deviceMemoryRequestCount*: uint32 + bufferRequestCount*: uint32 + imageRequestCount*: uint32 + eventRequestCount*: uint32 + queryPoolRequestCount*: uint32 + bufferViewRequestCount*: uint32 + imageViewRequestCount*: uint32 + layeredImageViewRequestCount*: uint32 + pipelineCacheRequestCount*: uint32 + pipelineLayoutRequestCount*: uint32 + renderPassRequestCount*: uint32 + graphicsPipelineRequestCount*: uint32 + computePipelineRequestCount*: uint32 + descriptorSetLayoutRequestCount*: uint32 + samplerRequestCount*: uint32 + descriptorPoolRequestCount*: uint32 + descriptorSetRequestCount*: uint32 + framebufferRequestCount*: uint32 + commandPoolRequestCount*: uint32 + samplerYcbcrConversionRequestCount*: uint32 + surfaceRequestCount*: uint32 + swapchainRequestCount*: uint32 + displayModeRequestCount*: uint32 + subpassDescriptionRequestCount*: uint32 + attachmentDescriptionRequestCount*: uint32 + descriptorSetLayoutBindingRequestCount*: uint32 + descriptorSetLayoutBindingLimit*: uint32 + maxImageViewMipLevels*: uint32 + maxImageViewArrayLayers*: uint32 + maxLayeredImageViewMipLevels*: uint32 + maxOcclusionQueriesPerPool*: uint32 + maxPipelineStatisticsQueriesPerPool*: uint32 + maxTimestampQueriesPerPool*: uint32 + maxImmutableSamplersPerDescriptorSetLayout*: uint32 -proc newVkCommandBufferBeginInfo*(sType: VkStructureType = VkStructureTypeCommandBufferBeginInfo, pNext: pointer = nil, flags: VkCommandBufferUsageFlags = 0.VkCommandBufferUsageFlags, pInheritanceInfo: ptr VkCommandBufferInheritanceInfo): VkCommandBufferBeginInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.pInheritanceInfo = pInheritanceInfo + VkCommandPoolMemoryReservationCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + commandPoolReservedSize*: VkDeviceSize + commandPoolMaxCommandBuffers*: uint32 -proc newVkRenderPassBeginInfo*(sType: VkStructureType = VkStructureTypeRenderPassBeginInfo, pNext: pointer = nil, renderPass: VkRenderPass, framebuffer: VkFramebuffer, renderArea: VkRect2D, clearValueCount: uint32, pClearValues: ptr VkClearValue): VkRenderPassBeginInfo = - result.sType = sType - result.pNext = pNext - result.renderPass = renderPass - result.framebuffer = framebuffer - result.renderArea = renderArea - result.clearValueCount = clearValueCount - result.pClearValues = pClearValues + VkCommandPoolMemoryConsumption* = object + sType*: VkStructureType + pNext*: pointer + commandPoolAllocated*: VkDeviceSize + commandPoolReservedSize*: VkDeviceSize + commandBufferAllocated*: VkDeviceSize -proc newVkClearDepthStencilValue*(depth: float32, stencil: uint32): VkClearDepthStencilValue = - result.depth = depth - result.stencil = stencil + VkPhysicalDeviceVulkanSC10Features* = object + sType*: VkStructureType + pNext*: pointer + shaderAtomicInstructions*: VkBool32 -proc newVkClearAttachment*(aspectMask: VkImageAspectFlags, colorAttachment: uint32, clearValue: VkClearValue): VkClearAttachment = - result.aspectMask = aspectMask - result.colorAttachment = colorAttachment - result.clearValue = clearValue + VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + primitivesGeneratedQuery*: VkBool32 + primitivesGeneratedQueryWithRasterizerDiscard*: VkBool32 + primitivesGeneratedQueryWithNonZeroStreams*: VkBool32 -proc newVkAttachmentDescription*(flags: VkAttachmentDescriptionFlags = 0.VkAttachmentDescriptionFlags, format: VkFormat, samples: VkSampleCountFlagBits, loadOp: VkAttachmentLoadOp, storeOp: VkAttachmentStoreOp, stencilLoadOp: VkAttachmentLoadOp, stencilStoreOp: VkAttachmentStoreOp, initialLayout: VkImageLayout, finalLayout: VkImageLayout): VkAttachmentDescription = - result.flags = flags - result.format = format - result.samples = samples - result.loadOp = loadOp - result.storeOp = storeOp - result.stencilLoadOp = stencilLoadOp - result.stencilStoreOp = stencilStoreOp - result.initialLayout = initialLayout - result.finalLayout = finalLayout + VkPhysicalDeviceLegacyDitheringFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + legacyDithering*: VkBool32 -proc newVkAttachmentReference*(attachment: uint32, layout: VkImageLayout): VkAttachmentReference = - result.attachment = attachment - result.layout = layout + VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + multisampledRenderToSingleSampled*: VkBool32 -proc newVkSubpassDescription*(flags: VkSubpassDescriptionFlags = 0.VkSubpassDescriptionFlags, pipelineBindPoint: VkPipelineBindPoint, inputAttachmentCount: uint32, pInputAttachments: ptr VkAttachmentReference, colorAttachmentCount: uint32, pColorAttachments: ptr VkAttachmentReference, pResolveAttachments: ptr VkAttachmentReference, pDepthStencilAttachment: ptr VkAttachmentReference, preserveAttachmentCount: uint32, pPreserveAttachments: ptr uint32): VkSubpassDescription = - result.flags = flags - result.pipelineBindPoint = pipelineBindPoint - result.inputAttachmentCount = inputAttachmentCount - result.pInputAttachments = pInputAttachments - result.colorAttachmentCount = colorAttachmentCount - result.pColorAttachments = pColorAttachments - result.pResolveAttachments = pResolveAttachments - result.pDepthStencilAttachment = pDepthStencilAttachment - result.preserveAttachmentCount = preserveAttachmentCount - result.pPreserveAttachments = pPreserveAttachments + VkSubpassResolvePerformanceQueryEXT* = object + sType*: VkStructureType + pNext*: pointer + optimal*: VkBool32 -proc newVkSubpassDependency*(srcSubpass: uint32, dstSubpass: uint32, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags, dependencyFlags: VkDependencyFlags): VkSubpassDependency = - result.srcSubpass = srcSubpass - result.dstSubpass = dstSubpass - result.srcStageMask = srcStageMask - result.dstStageMask = dstStageMask - result.srcAccessMask = srcAccessMask - result.dstAccessMask = dstAccessMask - result.dependencyFlags = dependencyFlags + VkMultisampledRenderToSingleSampledInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + multisampledRenderToSingleSampledEnable*: VkBool32 + rasterizationSamples*: VkSampleCountFlagBits -proc newVkRenderPassCreateInfo*(sType: VkStructureType = VkStructureTypeRenderPassCreateInfo, pNext: pointer = nil, flags: VkRenderPassCreateFlags = 0.VkRenderPassCreateFlags, attachmentCount: uint32, pAttachments: ptr VkAttachmentDescription, subpassCount: uint32, pSubpasses: ptr VkSubpassDescription, dependencyCount: uint32, pDependencies: ptr VkSubpassDependency): VkRenderPassCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.attachmentCount = attachmentCount - result.pAttachments = pAttachments - result.subpassCount = subpassCount - result.pSubpasses = pSubpasses - result.dependencyCount = dependencyCount - result.pDependencies = pDependencies + VkPhysicalDevicePipelineProtectedAccessFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + pipelineProtectedAccess*: VkBool32 -proc newVkEventCreateInfo*(sType: VkStructureType = VkStructureTypeEventCreateInfo, pNext: pointer = nil, flags: VkEventCreateFlags = 0.VkEventCreateFlags): VkEventCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags + VkQueueFamilyVideoPropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + videoCodecOperations*: VkVideoCodecOperationFlagsKHR -proc newVkFenceCreateInfo*(sType: VkStructureType = VkStructureTypeFenceCreateInfo, pNext: pointer = nil, flags: VkFenceCreateFlags = 0.VkFenceCreateFlags): VkFenceCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags + VkQueueFamilyQueryResultStatusPropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + queryResultStatusSupport*: VkBool32 -proc newVkPhysicalDeviceFeatures*(robustBufferAccess: VkBool32, fullDrawIndexUint32: VkBool32, imageCubeArray: VkBool32, independentBlend: VkBool32, geometryShader: VkBool32, tessellationShader: VkBool32, sampleRateShading: VkBool32, dualSrcBlend: VkBool32, logicOp: VkBool32, multiDrawIndirect: VkBool32, drawIndirectFirstInstance: VkBool32, depthClamp: VkBool32, depthBiasClamp: VkBool32, fillModeNonSolid: VkBool32, depthBounds: VkBool32, wideLines: VkBool32, largePoints: VkBool32, alphaToOne: VkBool32, multiViewport: VkBool32, samplerAnisotropy: VkBool32, textureCompressionETC2: VkBool32, textureCompressionASTC_LDR: VkBool32, textureCompressionBC: VkBool32, occlusionQueryPrecise: VkBool32, pipelineStatisticsQuery: VkBool32, vertexPipelineStoresAndAtomics: VkBool32, fragmentStoresAndAtomics: VkBool32, shaderTessellationAndGeometryPointSize: VkBool32, shaderImageGatherExtended: VkBool32, shaderStorageImageExtendedFormats: VkBool32, shaderStorageImageMultisample: VkBool32, shaderStorageImageReadWithoutFormat: VkBool32, shaderStorageImageWriteWithoutFormat: VkBool32, shaderUniformBufferArrayDynamicIndexing: VkBool32, shaderSampledImageArrayDynamicIndexing: VkBool32, shaderStorageBufferArrayDynamicIndexing: VkBool32, shaderStorageImageArrayDynamicIndexing: VkBool32, shaderClipDistance: VkBool32, shaderCullDistance: VkBool32, shaderFloat64: VkBool32, shaderInt64: VkBool32, shaderInt16: VkBool32, shaderResourceResidency: VkBool32, shaderResourceMinLod: VkBool32, sparseBinding: VkBool32, sparseResidencyBuffer: VkBool32, sparseResidencyImage2D: VkBool32, sparseResidencyImage3D: VkBool32, sparseResidency2Samples: VkBool32, sparseResidency4Samples: VkBool32, sparseResidency8Samples: VkBool32, sparseResidency16Samples: VkBool32, sparseResidencyAliased: VkBool32, variableMultisampleRate: VkBool32, inheritedQueries: VkBool32): VkPhysicalDeviceFeatures = - result.robustBufferAccess = robustBufferAccess - result.fullDrawIndexUint32 = fullDrawIndexUint32 - result.imageCubeArray = imageCubeArray - result.independentBlend = independentBlend - result.geometryShader = geometryShader - result.tessellationShader = tessellationShader - result.sampleRateShading = sampleRateShading - result.dualSrcBlend = dualSrcBlend - result.logicOp = logicOp - result.multiDrawIndirect = multiDrawIndirect - result.drawIndirectFirstInstance = drawIndirectFirstInstance - result.depthClamp = depthClamp - result.depthBiasClamp = depthBiasClamp - result.fillModeNonSolid = fillModeNonSolid - result.depthBounds = depthBounds - result.wideLines = wideLines - result.largePoints = largePoints - result.alphaToOne = alphaToOne - result.multiViewport = multiViewport - result.samplerAnisotropy = samplerAnisotropy - result.textureCompressionETC2 = textureCompressionETC2 - result.textureCompressionASTC_LDR = textureCompressionASTC_LDR - result.textureCompressionBC = textureCompressionBC - result.occlusionQueryPrecise = occlusionQueryPrecise - result.pipelineStatisticsQuery = pipelineStatisticsQuery - result.vertexPipelineStoresAndAtomics = vertexPipelineStoresAndAtomics - result.fragmentStoresAndAtomics = fragmentStoresAndAtomics - result.shaderTessellationAndGeometryPointSize = shaderTessellationAndGeometryPointSize - result.shaderImageGatherExtended = shaderImageGatherExtended - result.shaderStorageImageExtendedFormats = shaderStorageImageExtendedFormats - result.shaderStorageImageMultisample = shaderStorageImageMultisample - result.shaderStorageImageReadWithoutFormat = shaderStorageImageReadWithoutFormat - result.shaderStorageImageWriteWithoutFormat = shaderStorageImageWriteWithoutFormat - result.shaderUniformBufferArrayDynamicIndexing = shaderUniformBufferArrayDynamicIndexing - result.shaderSampledImageArrayDynamicIndexing = shaderSampledImageArrayDynamicIndexing - result.shaderStorageBufferArrayDynamicIndexing = shaderStorageBufferArrayDynamicIndexing - result.shaderStorageImageArrayDynamicIndexing = shaderStorageImageArrayDynamicIndexing - result.shaderClipDistance = shaderClipDistance - result.shaderCullDistance = shaderCullDistance - result.shaderFloat64 = shaderFloat64 - result.shaderInt64 = shaderInt64 - result.shaderInt16 = shaderInt16 - result.shaderResourceResidency = shaderResourceResidency - result.shaderResourceMinLod = shaderResourceMinLod - result.sparseBinding = sparseBinding - result.sparseResidencyBuffer = sparseResidencyBuffer - result.sparseResidencyImage2D = sparseResidencyImage2D - result.sparseResidencyImage3D = sparseResidencyImage3D - result.sparseResidency2Samples = sparseResidency2Samples - result.sparseResidency4Samples = sparseResidency4Samples - result.sparseResidency8Samples = sparseResidency8Samples - result.sparseResidency16Samples = sparseResidency16Samples - result.sparseResidencyAliased = sparseResidencyAliased - result.variableMultisampleRate = variableMultisampleRate - result.inheritedQueries = inheritedQueries + VkVideoProfileListInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + profileCount*: uint32 + pProfiles*: ptr VkVideoProfileInfoKHR -proc newVkPhysicalDeviceSparseProperties*(residencyStandard2DBlockShape: VkBool32, residencyStandard2DMultisampleBlockShape: VkBool32, residencyStandard3DBlockShape: VkBool32, residencyAlignedMipSize: VkBool32, residencyNonResidentStrict: VkBool32): VkPhysicalDeviceSparseProperties = - result.residencyStandard2DBlockShape = residencyStandard2DBlockShape - result.residencyStandard2DMultisampleBlockShape = residencyStandard2DMultisampleBlockShape - result.residencyStandard3DBlockShape = residencyStandard3DBlockShape - result.residencyAlignedMipSize = residencyAlignedMipSize - result.residencyNonResidentStrict = residencyNonResidentStrict + VkPhysicalDeviceVideoFormatInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + imageUsage*: VkImageUsageFlags -proc newVkPhysicalDeviceLimits*(maxImageDimension1D: uint32, maxImageDimension2D: uint32, maxImageDimension3D: uint32, maxImageDimensionCube: uint32, maxImageArrayLayers: uint32, maxTexelBufferElements: uint32, maxUniformBufferRange: uint32, maxStorageBufferRange: uint32, maxPushConstantsSize: uint32, maxMemoryAllocationCount: uint32, maxSamplerAllocationCount: uint32, bufferImageGranularity: VkDeviceSize, sparseAddressSpaceSize: VkDeviceSize, maxBoundDescriptorSets: uint32, maxPerStageDescriptorSamplers: uint32, maxPerStageDescriptorUniformBuffers: uint32, maxPerStageDescriptorStorageBuffers: uint32, maxPerStageDescriptorSampledImages: uint32, maxPerStageDescriptorStorageImages: uint32, maxPerStageDescriptorInputAttachments: uint32, maxPerStageResources: uint32, maxDescriptorSetSamplers: uint32, maxDescriptorSetUniformBuffers: uint32, maxDescriptorSetUniformBuffersDynamic: uint32, maxDescriptorSetStorageBuffers: uint32, maxDescriptorSetStorageBuffersDynamic: uint32, maxDescriptorSetSampledImages: uint32, maxDescriptorSetStorageImages: uint32, maxDescriptorSetInputAttachments: uint32, maxVertexInputAttributes: uint32, maxVertexInputBindings: uint32, maxVertexInputAttributeOffset: uint32, maxVertexInputBindingStride: uint32, maxVertexOutputComponents: uint32, maxTessellationGenerationLevel: uint32, maxTessellationPatchSize: uint32, maxTessellationControlPerVertexInputComponents: uint32, maxTessellationControlPerVertexOutputComponents: uint32, maxTessellationControlPerPatchOutputComponents: uint32, maxTessellationControlTotalOutputComponents: uint32, maxTessellationEvaluationInputComponents: uint32, maxTessellationEvaluationOutputComponents: uint32, maxGeometryShaderInvocations: uint32, maxGeometryInputComponents: uint32, maxGeometryOutputComponents: uint32, maxGeometryOutputVertices: uint32, maxGeometryTotalOutputComponents: uint32, maxFragmentInputComponents: uint32, maxFragmentOutputAttachments: uint32, maxFragmentDualSrcAttachments: uint32, maxFragmentCombinedOutputResources: uint32, maxComputeSharedMemorySize: uint32, maxComputeWorkGroupCount: array[3, uint32], maxComputeWorkGroupInvocations: uint32, maxComputeWorkGroupSize: array[3, uint32], subPixelPrecisionBits: uint32, subTexelPrecisionBits: uint32, mipmapPrecisionBits: uint32, maxDrawIndexedIndexValue: uint32, maxDrawIndirectCount: uint32, maxSamplerLodBias: float32, maxSamplerAnisotropy: float32, maxViewports: uint32, maxViewportDimensions: array[2, uint32], viewportBoundsRange: array[2, float32], viewportSubPixelBits: uint32, minMemoryMapAlignment: uint, minTexelBufferOffsetAlignment: VkDeviceSize, minUniformBufferOffsetAlignment: VkDeviceSize, minStorageBufferOffsetAlignment: VkDeviceSize, minTexelOffset: int32, maxTexelOffset: uint32, minTexelGatherOffset: int32, maxTexelGatherOffset: uint32, minInterpolationOffset: float32, maxInterpolationOffset: float32, subPixelInterpolationOffsetBits: uint32, maxFramebufferWidth: uint32, maxFramebufferHeight: uint32, maxFramebufferLayers: uint32, framebufferColorSampleCounts: VkSampleCountFlags, framebufferDepthSampleCounts: VkSampleCountFlags, framebufferStencilSampleCounts: VkSampleCountFlags, framebufferNoAttachmentsSampleCounts: VkSampleCountFlags, maxColorAttachments: uint32, sampledImageColorSampleCounts: VkSampleCountFlags, sampledImageIntegerSampleCounts: VkSampleCountFlags, sampledImageDepthSampleCounts: VkSampleCountFlags, sampledImageStencilSampleCounts: VkSampleCountFlags, storageImageSampleCounts: VkSampleCountFlags, maxSampleMaskWords: uint32, timestampComputeAndGraphics: VkBool32, timestampPeriod: float32, maxClipDistances: uint32, maxCullDistances: uint32, maxCombinedClipAndCullDistances: uint32, discreteQueuePriorities: uint32, pointSizeRange: array[2, float32], lineWidthRange: array[2, float32], pointSizeGranularity: float32, lineWidthGranularity: float32, strictLines: VkBool32, standardSampleLocations: VkBool32, optimalBufferCopyOffsetAlignment: VkDeviceSize, optimalBufferCopyRowPitchAlignment: VkDeviceSize, nonCoherentAtomSize: VkDeviceSize): VkPhysicalDeviceLimits = - result.maxImageDimension1D = maxImageDimension1D - result.maxImageDimension2D = maxImageDimension2D - result.maxImageDimension3D = maxImageDimension3D - result.maxImageDimensionCube = maxImageDimensionCube - result.maxImageArrayLayers = maxImageArrayLayers - result.maxTexelBufferElements = maxTexelBufferElements - result.maxUniformBufferRange = maxUniformBufferRange - result.maxStorageBufferRange = maxStorageBufferRange - result.maxPushConstantsSize = maxPushConstantsSize - result.maxMemoryAllocationCount = maxMemoryAllocationCount - result.maxSamplerAllocationCount = maxSamplerAllocationCount - result.bufferImageGranularity = bufferImageGranularity - result.sparseAddressSpaceSize = sparseAddressSpaceSize - result.maxBoundDescriptorSets = maxBoundDescriptorSets - result.maxPerStageDescriptorSamplers = maxPerStageDescriptorSamplers - result.maxPerStageDescriptorUniformBuffers = maxPerStageDescriptorUniformBuffers - result.maxPerStageDescriptorStorageBuffers = maxPerStageDescriptorStorageBuffers - result.maxPerStageDescriptorSampledImages = maxPerStageDescriptorSampledImages - result.maxPerStageDescriptorStorageImages = maxPerStageDescriptorStorageImages - result.maxPerStageDescriptorInputAttachments = maxPerStageDescriptorInputAttachments - result.maxPerStageResources = maxPerStageResources - result.maxDescriptorSetSamplers = maxDescriptorSetSamplers - result.maxDescriptorSetUniformBuffers = maxDescriptorSetUniformBuffers - result.maxDescriptorSetUniformBuffersDynamic = maxDescriptorSetUniformBuffersDynamic - result.maxDescriptorSetStorageBuffers = maxDescriptorSetStorageBuffers - result.maxDescriptorSetStorageBuffersDynamic = maxDescriptorSetStorageBuffersDynamic - result.maxDescriptorSetSampledImages = maxDescriptorSetSampledImages - result.maxDescriptorSetStorageImages = maxDescriptorSetStorageImages - result.maxDescriptorSetInputAttachments = maxDescriptorSetInputAttachments - result.maxVertexInputAttributes = maxVertexInputAttributes - result.maxVertexInputBindings = maxVertexInputBindings - result.maxVertexInputAttributeOffset = maxVertexInputAttributeOffset - result.maxVertexInputBindingStride = maxVertexInputBindingStride - result.maxVertexOutputComponents = maxVertexOutputComponents - result.maxTessellationGenerationLevel = maxTessellationGenerationLevel - result.maxTessellationPatchSize = maxTessellationPatchSize - result.maxTessellationControlPerVertexInputComponents = maxTessellationControlPerVertexInputComponents - result.maxTessellationControlPerVertexOutputComponents = maxTessellationControlPerVertexOutputComponents - result.maxTessellationControlPerPatchOutputComponents = maxTessellationControlPerPatchOutputComponents - result.maxTessellationControlTotalOutputComponents = maxTessellationControlTotalOutputComponents - result.maxTessellationEvaluationInputComponents = maxTessellationEvaluationInputComponents - result.maxTessellationEvaluationOutputComponents = maxTessellationEvaluationOutputComponents - result.maxGeometryShaderInvocations = maxGeometryShaderInvocations - result.maxGeometryInputComponents = maxGeometryInputComponents - result.maxGeometryOutputComponents = maxGeometryOutputComponents - result.maxGeometryOutputVertices = maxGeometryOutputVertices - result.maxGeometryTotalOutputComponents = maxGeometryTotalOutputComponents - result.maxFragmentInputComponents = maxFragmentInputComponents - result.maxFragmentOutputAttachments = maxFragmentOutputAttachments - result.maxFragmentDualSrcAttachments = maxFragmentDualSrcAttachments - result.maxFragmentCombinedOutputResources = maxFragmentCombinedOutputResources - result.maxComputeSharedMemorySize = maxComputeSharedMemorySize - result.maxComputeWorkGroupCount = maxComputeWorkGroupCount - result.maxComputeWorkGroupInvocations = maxComputeWorkGroupInvocations - result.maxComputeWorkGroupSize = maxComputeWorkGroupSize - result.subPixelPrecisionBits = subPixelPrecisionBits - result.subTexelPrecisionBits = subTexelPrecisionBits - result.mipmapPrecisionBits = mipmapPrecisionBits - result.maxDrawIndexedIndexValue = maxDrawIndexedIndexValue - result.maxDrawIndirectCount = maxDrawIndirectCount - result.maxSamplerLodBias = maxSamplerLodBias - result.maxSamplerAnisotropy = maxSamplerAnisotropy - result.maxViewports = maxViewports - result.maxViewportDimensions = maxViewportDimensions - result.viewportBoundsRange = viewportBoundsRange - result.viewportSubPixelBits = viewportSubPixelBits - result.minMemoryMapAlignment = minMemoryMapAlignment - result.minTexelBufferOffsetAlignment = minTexelBufferOffsetAlignment - result.minUniformBufferOffsetAlignment = minUniformBufferOffsetAlignment - result.minStorageBufferOffsetAlignment = minStorageBufferOffsetAlignment - result.minTexelOffset = minTexelOffset - result.maxTexelOffset = maxTexelOffset - result.minTexelGatherOffset = minTexelGatherOffset - result.maxTexelGatherOffset = maxTexelGatherOffset - result.minInterpolationOffset = minInterpolationOffset - result.maxInterpolationOffset = maxInterpolationOffset - result.subPixelInterpolationOffsetBits = subPixelInterpolationOffsetBits - result.maxFramebufferWidth = maxFramebufferWidth - result.maxFramebufferHeight = maxFramebufferHeight - result.maxFramebufferLayers = maxFramebufferLayers - result.framebufferColorSampleCounts = framebufferColorSampleCounts - result.framebufferDepthSampleCounts = framebufferDepthSampleCounts - result.framebufferStencilSampleCounts = framebufferStencilSampleCounts - result.framebufferNoAttachmentsSampleCounts = framebufferNoAttachmentsSampleCounts - result.maxColorAttachments = maxColorAttachments - result.sampledImageColorSampleCounts = sampledImageColorSampleCounts - result.sampledImageIntegerSampleCounts = sampledImageIntegerSampleCounts - result.sampledImageDepthSampleCounts = sampledImageDepthSampleCounts + VkVideoFormatPropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + format*: VkFormat + componentMapping*: VkComponentMapping + imageCreateFlags*: VkImageCreateFlags + imageType*: VkImageType + imageTiling*: VkImageTiling + imageUsageFlags*: VkImageUsageFlags + + VkVideoProfileInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + videoCodecOperation*: VkVideoCodecOperationFlagBitsKHR + chromaSubsampling*: VkVideoChromaSubsamplingFlagsKHR + lumaBitDepth*: VkVideoComponentBitDepthFlagsKHR + chromaBitDepth*: VkVideoComponentBitDepthFlagsKHR + + VkVideoCapabilitiesKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkVideoCapabilityFlagsKHR + minBitstreamBufferOffsetAlignment*: VkDeviceSize + minBitstreamBufferSizeAlignment*: VkDeviceSize + pictureAccessGranularity*: VkExtent2D + minCodedExtent*: VkExtent2D + maxCodedExtent*: VkExtent2D + maxDpbSlots*: uint32 + maxActiveReferencePictures*: uint32 + stdHeaderVersion*: VkExtensionProperties + + VkVideoSessionMemoryRequirementsKHR* = object + sType*: VkStructureType + pNext*: pointer + memoryBindIndex*: uint32 + memoryRequirements*: VkMemoryRequirements + + VkBindVideoSessionMemoryInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + memoryBindIndex*: uint32 + memory*: VkDeviceMemory + memoryOffset*: VkDeviceSize + memorySize*: VkDeviceSize + + VkVideoPictureResourceInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + codedOffset*: VkOffset2D + codedExtent*: VkExtent2D + baseArrayLayer*: uint32 + imageViewBinding*: VkImageView + + VkVideoReferenceSlotInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + slotIndex*: int32 + pPictureResource*: ptr VkVideoPictureResourceInfoKHR + + VkVideoDecodeCapabilitiesKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkVideoDecodeCapabilityFlagsKHR + + VkVideoDecodeUsageInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + videoUsageHints*: VkVideoDecodeUsageFlagsKHR + + VkVideoDecodeInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkVideoDecodeFlagsKHR + srcBuffer*: VkBuffer + srcBufferOffset*: VkDeviceSize + srcBufferRange*: VkDeviceSize + dstPictureResource*: VkVideoPictureResourceInfoKHR + pSetupReferenceSlot*: ptr VkVideoReferenceSlotInfoKHR + referenceSlotCount*: uint32 + pReferenceSlots*: ptr VkVideoReferenceSlotInfoKHR + + VkPhysicalDeviceVideoMaintenance1FeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + videoMaintenance1*: VkBool32 + + VkVideoInlineQueryInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + queryPool*: VkQueryPool + firstQuery*: uint32 + queryCount*: uint32 + StdVideoH264ProfileIdc* = ptr object + StdVideoH264LevelIdc* = ptr object + StdVideoH264ChromaFormatIdc* = ptr object + StdVideoH264PocType* = ptr object + StdVideoH264SpsFlags* = ptr object + StdVideoH264ScalingLists* = ptr object + StdVideoH264SequenceParameterSetVui* = ptr object + StdVideoH264AspectRatioIdc* = ptr object + StdVideoH264HrdParameters* = ptr object + StdVideoH264SpsVuiFlags* = ptr object + StdVideoH264WeightedBipredIdc* = ptr object + StdVideoH264PpsFlags* = ptr object + StdVideoH264SliceType* = ptr object + StdVideoH264CabacInitIdc* = ptr object + StdVideoH264DisableDeblockingFilterIdc* = ptr object + StdVideoH264PictureType* = ptr object + StdVideoH264ModificationOfPicNumsIdc* = ptr object + StdVideoH264MemMgmtControlOp* = ptr object + StdVideoDecodeH264PictureInfo* = ptr object + StdVideoDecodeH264ReferenceInfo* = ptr object + StdVideoDecodeH264PictureInfoFlags* = ptr object + StdVideoDecodeH264ReferenceInfoFlags* = ptr object + + VkVideoDecodeH264ProfileInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + stdProfileIdc*: StdVideoH264ProfileIdc + pictureLayout*: VkVideoDecodeH264PictureLayoutFlagBitsKHR + + VkVideoDecodeH264CapabilitiesKHR* = object + sType*: VkStructureType + pNext*: pointer + maxLevelIdc*: StdVideoH264LevelIdc + fieldOffsetGranularity*: VkOffset2D + StdVideoH264SequenceParameterSet* = ptr object + StdVideoH264PictureParameterSet* = ptr object + + VkVideoDecodeH264SessionParametersAddInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + stdSPSCount*: uint32 + pStdSPSs*: ptr StdVideoH264SequenceParameterSet + stdPPSCount*: uint32 + pStdPPSs*: ptr StdVideoH264PictureParameterSet + + VkVideoDecodeH264SessionParametersCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + maxStdSPSCount*: uint32 + maxStdPPSCount*: uint32 + pParametersAddInfo*: ptr VkVideoDecodeH264SessionParametersAddInfoKHR + + VkVideoDecodeH264PictureInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + pStdPictureInfo*: ptr StdVideoDecodeH264PictureInfo + sliceCount*: uint32 + pSliceOffsets*: ptr uint32 + + VkVideoDecodeH264DpbSlotInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + pStdReferenceInfo*: ptr StdVideoDecodeH264ReferenceInfo + StdVideoH265ProfileIdc* = ptr object + StdVideoH265VideoParameterSet* = ptr object + StdVideoH265SequenceParameterSet* = ptr object + StdVideoH265PictureParameterSet* = ptr object + StdVideoH265DecPicBufMgr* = ptr object + StdVideoH265HrdParameters* = ptr object + StdVideoH265VpsFlags* = ptr object + StdVideoH265LevelIdc* = ptr object + StdVideoH265SpsFlags* = ptr object + StdVideoH265ScalingLists* = ptr object + StdVideoH265SequenceParameterSetVui* = ptr object + StdVideoH265PredictorPaletteEntries* = ptr object + StdVideoH265PpsFlags* = ptr object + StdVideoH265SubLayerHrdParameters* = ptr object + StdVideoH265HrdFlags* = ptr object + StdVideoH265SpsVuiFlags* = ptr object + StdVideoH265SliceType* = ptr object + StdVideoH265PictureType* = ptr object + StdVideoDecodeH265PictureInfo* = ptr object + StdVideoDecodeH265ReferenceInfo* = ptr object + StdVideoDecodeH265PictureInfoFlags* = ptr object + StdVideoDecodeH265ReferenceInfoFlags* = ptr object + + VkVideoDecodeH265ProfileInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + stdProfileIdc*: StdVideoH265ProfileIdc + + VkVideoDecodeH265CapabilitiesKHR* = object + sType*: VkStructureType + pNext*: pointer + maxLevelIdc*: StdVideoH265LevelIdc + + VkVideoDecodeH265SessionParametersAddInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + stdVPSCount*: uint32 + pStdVPSs*: ptr StdVideoH265VideoParameterSet + stdSPSCount*: uint32 + pStdSPSs*: ptr StdVideoH265SequenceParameterSet + stdPPSCount*: uint32 + pStdPPSs*: ptr StdVideoH265PictureParameterSet + + VkVideoDecodeH265SessionParametersCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + maxStdVPSCount*: uint32 + maxStdSPSCount*: uint32 + maxStdPPSCount*: uint32 + pParametersAddInfo*: ptr VkVideoDecodeH265SessionParametersAddInfoKHR + + VkVideoDecodeH265PictureInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + pStdPictureInfo*: ptr StdVideoDecodeH265PictureInfo + sliceSegmentCount*: uint32 + pSliceSegmentOffsets*: ptr uint32 + + VkVideoDecodeH265DpbSlotInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + pStdReferenceInfo*: ptr StdVideoDecodeH265ReferenceInfo + StdVideoAV1Profile* = ptr object + StdVideoAV1Level* = ptr object + StdVideoAV1SequenceHeader* = ptr object + StdVideoDecodeAV1PictureInfo* = ptr object + StdVideoDecodeAV1ReferenceInfo* = ptr object + + VkVideoDecodeAV1ProfileInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + stdProfile*: StdVideoAV1Profile + filmGrainSupport*: VkBool32 + + VkVideoDecodeAV1CapabilitiesKHR* = object + sType*: VkStructureType + pNext*: pointer + maxLevel*: StdVideoAV1Level + + VkVideoDecodeAV1SessionParametersCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + pStdSequenceHeader*: ptr StdVideoAV1SequenceHeader + + VkVideoDecodeAV1PictureInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + pStdPictureInfo*: ptr StdVideoDecodeAV1PictureInfo + referenceNameSlotIndices*: array[VK_MAX_VIDEO_AV1_REFERENCES_PER_FRAME_KHR, int32] + frameHeaderOffset*: uint32 + tileCount*: uint32 + pTileOffsets*: ptr uint32 + pTileSizes*: ptr uint32 + + VkVideoDecodeAV1DpbSlotInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + pStdReferenceInfo*: ptr StdVideoDecodeAV1ReferenceInfo + + VkVideoSessionCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + queueFamilyIndex*: uint32 + flags*: VkVideoSessionCreateFlagsKHR + pVideoProfile*: ptr VkVideoProfileInfoKHR + pictureFormat*: VkFormat + maxCodedExtent*: VkExtent2D + referencePictureFormat*: VkFormat + maxDpbSlots*: uint32 + maxActiveReferencePictures*: uint32 + pStdHeaderVersion*: ptr VkExtensionProperties + + VkVideoSessionParametersCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkVideoSessionParametersCreateFlagsKHR + videoSessionParametersTemplate*: VkVideoSessionParametersKHR + videoSession*: VkVideoSessionKHR + + VkVideoSessionParametersUpdateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + updateSequenceCount*: uint32 + + VkVideoEncodeSessionParametersGetInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + videoSessionParameters*: VkVideoSessionParametersKHR + + VkVideoEncodeSessionParametersFeedbackInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + hasOverrides*: VkBool32 + + VkVideoBeginCodingInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkVideoBeginCodingFlagsKHR + videoSession*: VkVideoSessionKHR + videoSessionParameters*: VkVideoSessionParametersKHR + referenceSlotCount*: uint32 + pReferenceSlots*: ptr VkVideoReferenceSlotInfoKHR + + VkVideoEndCodingInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkVideoEndCodingFlagsKHR + + VkVideoCodingControlInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkVideoCodingControlFlagsKHR + + VkVideoEncodeUsageInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + videoUsageHints*: VkVideoEncodeUsageFlagsKHR + videoContentHints*: VkVideoEncodeContentFlagsKHR + tuningMode*: VkVideoEncodeTuningModeKHR + + VkVideoEncodeInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkVideoEncodeFlagsKHR + dstBuffer*: VkBuffer + dstBufferOffset*: VkDeviceSize + dstBufferRange*: VkDeviceSize + srcPictureResource*: VkVideoPictureResourceInfoKHR + pSetupReferenceSlot*: ptr VkVideoReferenceSlotInfoKHR + referenceSlotCount*: uint32 + pReferenceSlots*: ptr VkVideoReferenceSlotInfoKHR + precedingExternallyEncodedBytes*: uint32 + + VkQueryPoolVideoEncodeFeedbackCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + encodeFeedbackFlags*: VkVideoEncodeFeedbackFlagsKHR + + VkVideoEncodeQualityLevelInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + qualityLevel*: uint32 + + VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + pVideoProfile*: ptr VkVideoProfileInfoKHR + qualityLevel*: uint32 + + VkVideoEncodeQualityLevelPropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + preferredRateControlMode*: VkVideoEncodeRateControlModeFlagBitsKHR + preferredRateControlLayerCount*: uint32 + + VkVideoEncodeRateControlInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkVideoEncodeRateControlFlagsKHR + rateControlMode*: VkVideoEncodeRateControlModeFlagBitsKHR + layerCount*: uint32 + pLayers*: ptr VkVideoEncodeRateControlLayerInfoKHR + virtualBufferSizeInMs*: uint32 + initialVirtualBufferSizeInMs*: uint32 + + VkVideoEncodeRateControlLayerInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + averageBitrate*: uint64 + maxBitrate*: uint64 + frameRateNumerator*: uint32 + frameRateDenominator*: uint32 + + VkVideoEncodeCapabilitiesKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkVideoEncodeCapabilityFlagsKHR + rateControlModes*: VkVideoEncodeRateControlModeFlagsKHR + maxRateControlLayers*: uint32 + maxBitrate*: uint64 + maxQualityLevels*: uint32 + encodeInputPictureGranularity*: VkExtent2D + supportedEncodeFeedbackFlags*: VkVideoEncodeFeedbackFlagsKHR + + VkVideoEncodeH264CapabilitiesKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkVideoEncodeH264CapabilityFlagsKHR + maxLevelIdc*: StdVideoH264LevelIdc + maxSliceCount*: uint32 + maxPPictureL0ReferenceCount*: uint32 + maxBPictureL0ReferenceCount*: uint32 + maxL1ReferenceCount*: uint32 + maxTemporalLayerCount*: uint32 + expectDyadicTemporalLayerPattern*: VkBool32 + minQp*: int32 + maxQp*: int32 + prefersGopRemainingFrames*: VkBool32 + requiresGopRemainingFrames*: VkBool32 + stdSyntaxFlags*: VkVideoEncodeH264StdFlagsKHR + + VkVideoEncodeH264QualityLevelPropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + preferredRateControlFlags*: VkVideoEncodeH264RateControlFlagsKHR + preferredGopFrameCount*: uint32 + preferredIdrPeriod*: uint32 + preferredConsecutiveBFrameCount*: uint32 + preferredTemporalLayerCount*: uint32 + preferredConstantQp*: VkVideoEncodeH264QpKHR + preferredMaxL0ReferenceCount*: uint32 + preferredMaxL1ReferenceCount*: uint32 + preferredStdEntropyCodingModeFlag*: VkBool32 + StdVideoEncodeH264SliceHeader* = ptr object + StdVideoEncodeH264PictureInfo* = ptr object + StdVideoEncodeH264ReferenceInfo* = ptr object + StdVideoEncodeH264SliceHeaderFlags* = ptr object + StdVideoEncodeH264ReferenceListsInfo* = ptr object + StdVideoEncodeH264PictureInfoFlags* = ptr object + StdVideoEncodeH264ReferenceInfoFlags* = ptr object + StdVideoEncodeH264RefMgmtFlags* = ptr object + StdVideoEncodeH264RefListModEntry* = ptr object + StdVideoEncodeH264RefPicMarkingEntry* = ptr object + + VkVideoEncodeH264SessionCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + useMaxLevelIdc*: VkBool32 + maxLevelIdc*: StdVideoH264LevelIdc + + VkVideoEncodeH264SessionParametersAddInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + stdSPSCount*: uint32 + pStdSPSs*: ptr StdVideoH264SequenceParameterSet + stdPPSCount*: uint32 + pStdPPSs*: ptr StdVideoH264PictureParameterSet + + VkVideoEncodeH264SessionParametersCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + maxStdSPSCount*: uint32 + maxStdPPSCount*: uint32 + pParametersAddInfo*: ptr VkVideoEncodeH264SessionParametersAddInfoKHR + + VkVideoEncodeH264SessionParametersGetInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + writeStdSPS*: VkBool32 + writeStdPPS*: VkBool32 + stdSPSId*: uint32 + stdPPSId*: uint32 + + VkVideoEncodeH264SessionParametersFeedbackInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + hasStdSPSOverrides*: VkBool32 + hasStdPPSOverrides*: VkBool32 + + VkVideoEncodeH264DpbSlotInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + pStdReferenceInfo*: ptr StdVideoEncodeH264ReferenceInfo + + VkVideoEncodeH264PictureInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + naluSliceEntryCount*: uint32 + pNaluSliceEntries*: ptr VkVideoEncodeH264NaluSliceInfoKHR + pStdPictureInfo*: ptr StdVideoEncodeH264PictureInfo + generatePrefixNalu*: VkBool32 + + VkVideoEncodeH264ProfileInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + stdProfileIdc*: StdVideoH264ProfileIdc + + VkVideoEncodeH264NaluSliceInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + constantQp*: int32 + pStdSliceHeader*: ptr StdVideoEncodeH264SliceHeader + + VkVideoEncodeH264RateControlInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkVideoEncodeH264RateControlFlagsKHR + gopFrameCount*: uint32 + idrPeriod*: uint32 + consecutiveBFrameCount*: uint32 + temporalLayerCount*: uint32 + + VkVideoEncodeH264QpKHR* = object + qpI*: int32 + qpP*: int32 + qpB*: int32 + + VkVideoEncodeH264FrameSizeKHR* = object + frameISize*: uint32 + framePSize*: uint32 + frameBSize*: uint32 + + VkVideoEncodeH264GopRemainingFrameInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + useGopRemainingFrames*: VkBool32 + gopRemainingI*: uint32 + gopRemainingP*: uint32 + gopRemainingB*: uint32 + + VkVideoEncodeH264RateControlLayerInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + useMinQp*: VkBool32 + minQp*: VkVideoEncodeH264QpKHR + useMaxQp*: VkBool32 + maxQp*: VkVideoEncodeH264QpKHR + useMaxFrameSize*: VkBool32 + maxFrameSize*: VkVideoEncodeH264FrameSizeKHR + + VkVideoEncodeH265CapabilitiesKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkVideoEncodeH265CapabilityFlagsKHR + maxLevelIdc*: StdVideoH265LevelIdc + maxSliceSegmentCount*: uint32 + maxTiles*: VkExtent2D + ctbSizes*: VkVideoEncodeH265CtbSizeFlagsKHR + transformBlockSizes*: VkVideoEncodeH265TransformBlockSizeFlagsKHR + maxPPictureL0ReferenceCount*: uint32 + maxBPictureL0ReferenceCount*: uint32 + maxL1ReferenceCount*: uint32 + maxSubLayerCount*: uint32 + expectDyadicTemporalSubLayerPattern*: VkBool32 + minQp*: int32 + maxQp*: int32 + prefersGopRemainingFrames*: VkBool32 + requiresGopRemainingFrames*: VkBool32 + stdSyntaxFlags*: VkVideoEncodeH265StdFlagsKHR + + VkVideoEncodeH265QualityLevelPropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + preferredRateControlFlags*: VkVideoEncodeH265RateControlFlagsKHR + preferredGopFrameCount*: uint32 + preferredIdrPeriod*: uint32 + preferredConsecutiveBFrameCount*: uint32 + preferredSubLayerCount*: uint32 + preferredConstantQp*: VkVideoEncodeH265QpKHR + preferredMaxL0ReferenceCount*: uint32 + preferredMaxL1ReferenceCount*: uint32 + StdVideoEncodeH265PictureInfoFlags* = ptr object + StdVideoEncodeH265PictureInfo* = ptr object + StdVideoEncodeH265SliceSegmentHeader* = ptr object + StdVideoEncodeH265ReferenceInfo* = ptr object + StdVideoEncodeH265ReferenceListsInfo* = ptr object + StdVideoEncodeH265SliceSegmentHeaderFlags* = ptr object + StdVideoEncodeH265ReferenceInfoFlags* = ptr object + StdVideoEncodeH265ReferenceModificationFlags* = ptr object + + VkVideoEncodeH265SessionCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + useMaxLevelIdc*: VkBool32 + maxLevelIdc*: StdVideoH265LevelIdc + + VkVideoEncodeH265SessionParametersAddInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + stdVPSCount*: uint32 + pStdVPSs*: ptr StdVideoH265VideoParameterSet + stdSPSCount*: uint32 + pStdSPSs*: ptr StdVideoH265SequenceParameterSet + stdPPSCount*: uint32 + pStdPPSs*: ptr StdVideoH265PictureParameterSet + + VkVideoEncodeH265SessionParametersCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + maxStdVPSCount*: uint32 + maxStdSPSCount*: uint32 + maxStdPPSCount*: uint32 + pParametersAddInfo*: ptr VkVideoEncodeH265SessionParametersAddInfoKHR + + VkVideoEncodeH265SessionParametersGetInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + writeStdVPS*: VkBool32 + writeStdSPS*: VkBool32 + writeStdPPS*: VkBool32 + stdVPSId*: uint32 + stdSPSId*: uint32 + stdPPSId*: uint32 + + VkVideoEncodeH265SessionParametersFeedbackInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + hasStdVPSOverrides*: VkBool32 + hasStdSPSOverrides*: VkBool32 + hasStdPPSOverrides*: VkBool32 + + VkVideoEncodeH265PictureInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + naluSliceSegmentEntryCount*: uint32 + pNaluSliceSegmentEntries*: ptr VkVideoEncodeH265NaluSliceSegmentInfoKHR + pStdPictureInfo*: ptr StdVideoEncodeH265PictureInfo + + VkVideoEncodeH265NaluSliceSegmentInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + constantQp*: int32 + pStdSliceSegmentHeader*: ptr StdVideoEncodeH265SliceSegmentHeader + + VkVideoEncodeH265RateControlInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkVideoEncodeH265RateControlFlagsKHR + gopFrameCount*: uint32 + idrPeriod*: uint32 + consecutiveBFrameCount*: uint32 + subLayerCount*: uint32 + + VkVideoEncodeH265QpKHR* = object + qpI*: int32 + qpP*: int32 + qpB*: int32 + + VkVideoEncodeH265FrameSizeKHR* = object + frameISize*: uint32 + framePSize*: uint32 + frameBSize*: uint32 + + VkVideoEncodeH265GopRemainingFrameInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + useGopRemainingFrames*: VkBool32 + gopRemainingI*: uint32 + gopRemainingP*: uint32 + gopRemainingB*: uint32 + + VkVideoEncodeH265RateControlLayerInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + useMinQp*: VkBool32 + minQp*: VkVideoEncodeH265QpKHR + useMaxQp*: VkBool32 + maxQp*: VkVideoEncodeH265QpKHR + useMaxFrameSize*: VkBool32 + maxFrameSize*: VkVideoEncodeH265FrameSizeKHR + + VkVideoEncodeH265ProfileInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + stdProfileIdc*: StdVideoH265ProfileIdc + + VkVideoEncodeH265DpbSlotInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + pStdReferenceInfo*: ptr StdVideoEncodeH265ReferenceInfo + + VkPhysicalDeviceInheritedViewportScissorFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + inheritedViewportScissor2D*: VkBool32 + + VkCommandBufferInheritanceViewportScissorInfoNV* = object + sType*: VkStructureType + pNext*: pointer + viewportScissor2D*: VkBool32 + viewportDepthCount*: uint32 + pViewportDepths*: ptr VkViewport + + VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + ycbcr2plane444Formats*: VkBool32 + + VkPhysicalDeviceProvokingVertexFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + provokingVertexLast*: VkBool32 + transformFeedbackPreservesProvokingVertex*: VkBool32 + + VkPhysicalDeviceProvokingVertexPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + provokingVertexModePerPipeline*: VkBool32 + transformFeedbackPreservesTriangleFanProvokingVertex*: VkBool32 + + VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + provokingVertexMode*: VkProvokingVertexModeEXT + + VkCuModuleCreateInfoNVX* = object + sType*: VkStructureType + pNext*: pointer + dataSize*: uint + pData*: pointer + + VkCuFunctionCreateInfoNVX* = object + sType*: VkStructureType + pNext*: pointer + module*: VkCuModuleNVX + pName*: cstring + + VkCuLaunchInfoNVX* = object + sType*: VkStructureType + pNext*: pointer + function*: VkCuFunctionNVX + gridDimX*: uint32 + gridDimY*: uint32 + gridDimZ*: uint32 + blockDimX*: uint32 + blockDimY*: uint32 + blockDimZ*: uint32 + sharedMemBytes*: uint32 + paramCount*: uint + pParams*: ptr pointer + extraCount*: uint + pExtras*: ptr pointer + + VkPhysicalDeviceDescriptorBufferFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + descriptorBuffer*: VkBool32 + descriptorBufferCaptureReplay*: VkBool32 + descriptorBufferImageLayoutIgnored*: VkBool32 + descriptorBufferPushDescriptors*: VkBool32 + + VkPhysicalDeviceDescriptorBufferPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + combinedImageSamplerDescriptorSingleArray*: VkBool32 + bufferlessPushDescriptors*: VkBool32 + allowSamplerImageViewPostSubmitCreation*: VkBool32 + descriptorBufferOffsetAlignment*: VkDeviceSize + maxDescriptorBufferBindings*: uint32 + maxResourceDescriptorBufferBindings*: uint32 + maxSamplerDescriptorBufferBindings*: uint32 + maxEmbeddedImmutableSamplerBindings*: uint32 + maxEmbeddedImmutableSamplers*: uint32 + bufferCaptureReplayDescriptorDataSize*: uint + imageCaptureReplayDescriptorDataSize*: uint + imageViewCaptureReplayDescriptorDataSize*: uint + samplerCaptureReplayDescriptorDataSize*: uint + accelerationStructureCaptureReplayDescriptorDataSize*: uint + samplerDescriptorSize*: uint + combinedImageSamplerDescriptorSize*: uint + sampledImageDescriptorSize*: uint + storageImageDescriptorSize*: uint + uniformTexelBufferDescriptorSize*: uint + robustUniformTexelBufferDescriptorSize*: uint + storageTexelBufferDescriptorSize*: uint + robustStorageTexelBufferDescriptorSize*: uint + uniformBufferDescriptorSize*: uint + robustUniformBufferDescriptorSize*: uint + storageBufferDescriptorSize*: uint + robustStorageBufferDescriptorSize*: uint + inputAttachmentDescriptorSize*: uint + accelerationStructureDescriptorSize*: uint + maxSamplerDescriptorBufferRange*: VkDeviceSize + maxResourceDescriptorBufferRange*: VkDeviceSize + samplerDescriptorBufferAddressSpaceSize*: VkDeviceSize + resourceDescriptorBufferAddressSpaceSize*: VkDeviceSize + descriptorBufferAddressSpaceSize*: VkDeviceSize + + VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + combinedImageSamplerDensityMapDescriptorSize*: uint + + VkDescriptorAddressInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + address*: VkDeviceAddress + range*: VkDeviceSize + format*: VkFormat + + VkDescriptorBufferBindingInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + address*: VkDeviceAddress + usage*: VkBufferUsageFlags + + VkDescriptorBufferBindingPushDescriptorBufferHandleEXT* = object + sType*: VkStructureType + pNext*: pointer + buffer*: VkBuffer + + VkDescriptorDataEXT* {.union.} = object + pSampler*: ptr VkSampler + pCombinedImageSampler*: ptr VkDescriptorImageInfo + pInputAttachmentImage*: ptr VkDescriptorImageInfo + pSampledImage*: ptr VkDescriptorImageInfo + pStorageImage*: ptr VkDescriptorImageInfo + pUniformTexelBuffer*: ptr VkDescriptorAddressInfoEXT + pStorageTexelBuffer*: ptr VkDescriptorAddressInfoEXT + pUniformBuffer*: ptr VkDescriptorAddressInfoEXT + pStorageBuffer*: ptr VkDescriptorAddressInfoEXT + accelerationStructure*: VkDeviceAddress + + VkDescriptorGetInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + `type`*: VkDescriptorType + data*: VkDescriptorDataEXT + + VkBufferCaptureDescriptorDataInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + buffer*: VkBuffer + + VkImageCaptureDescriptorDataInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + image*: VkImage + + VkImageViewCaptureDescriptorDataInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + imageView*: VkImageView + + VkSamplerCaptureDescriptorDataInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + sampler*: VkSampler + + VkAccelerationStructureCaptureDescriptorDataInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + accelerationStructure*: VkAccelerationStructureKHR + accelerationStructureNV*: VkAccelerationStructureNV + + VkOpaqueCaptureDescriptorDataCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + opaqueCaptureDescriptorData*: pointer + + VkPhysicalDeviceShaderIntegerDotProductFeatures* = object + sType*: VkStructureType + pNext*: pointer + shaderIntegerDotProduct*: VkBool32 + + VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR* = object + + VkPhysicalDeviceShaderIntegerDotProductProperties* = object + sType*: VkStructureType + pNext*: pointer + integerDotProduct8BitUnsignedAccelerated*: VkBool32 + integerDotProduct8BitSignedAccelerated*: VkBool32 + integerDotProduct8BitMixedSignednessAccelerated*: VkBool32 + integerDotProduct4x8BitPackedUnsignedAccelerated*: VkBool32 + integerDotProduct4x8BitPackedSignedAccelerated*: VkBool32 + integerDotProduct4x8BitPackedMixedSignednessAccelerated*: VkBool32 + integerDotProduct16BitUnsignedAccelerated*: VkBool32 + integerDotProduct16BitSignedAccelerated*: VkBool32 + integerDotProduct16BitMixedSignednessAccelerated*: VkBool32 + integerDotProduct32BitUnsignedAccelerated*: VkBool32 + integerDotProduct32BitSignedAccelerated*: VkBool32 + integerDotProduct32BitMixedSignednessAccelerated*: VkBool32 + integerDotProduct64BitUnsignedAccelerated*: VkBool32 + integerDotProduct64BitSignedAccelerated*: VkBool32 + integerDotProduct64BitMixedSignednessAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating8BitUnsignedAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating8BitSignedAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating16BitUnsignedAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating16BitSignedAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating32BitUnsignedAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating32BitSignedAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating64BitUnsignedAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating64BitSignedAccelerated*: VkBool32 + integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated*: VkBool32 + + VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR* = object + + VkPhysicalDeviceDrmPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + hasPrimary*: VkBool32 + hasRender*: VkBool32 + primaryMajor*: int64 + primaryMinor*: int64 + renderMajor*: int64 + renderMinor*: int64 + + VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + fragmentShaderBarycentric*: VkBool32 + + VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + triStripVertexOrderIndependentOfProvokingVertex*: VkBool32 + + VkPhysicalDeviceRayTracingMotionBlurFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + rayTracingMotionBlur*: VkBool32 + rayTracingMotionBlurPipelineTraceRaysIndirect*: VkBool32 + + VkAccelerationStructureGeometryMotionTrianglesDataNV* = object + sType*: VkStructureType + pNext*: pointer + vertexData*: VkDeviceOrHostAddressConstKHR + + VkAccelerationStructureMotionInfoNV* = object + sType*: VkStructureType + pNext*: pointer + maxInstances*: uint32 + flags*: VkAccelerationStructureMotionInfoFlagsNV + + VkSRTDataNV* = object + sx*: float32 + a*: float32 + b*: float32 + pvx*: float32 + sy*: float32 + c*: float32 + pvy*: float32 + sz*: float32 + pvz*: float32 + qx*: float32 + qy*: float32 + qz*: float32 + qw*: float32 + tx*: float32 + ty*: float32 + tz*: float32 + + VkAccelerationStructureSRTMotionInstanceNV* = object + transformT0*: VkSRTDataNV + transformT1*: VkSRTDataNV + instanceCustomIndex*: uint32 + mask*: uint32 + instanceShaderBindingTableRecordOffset*: uint32 + flags*: VkGeometryInstanceFlagsKHR + accelerationStructureReference*: uint64 + + VkAccelerationStructureMatrixMotionInstanceNV* = object + transformT0*: VkTransformMatrixKHR + transformT1*: VkTransformMatrixKHR + instanceCustomIndex*: uint32 + mask*: uint32 + instanceShaderBindingTableRecordOffset*: uint32 + flags*: VkGeometryInstanceFlagsKHR + accelerationStructureReference*: uint64 + + VkAccelerationStructureMotionInstanceDataNV* {.union.} = object + staticInstance*: VkAccelerationStructureInstanceKHR + matrixMotionInstance*: VkAccelerationStructureMatrixMotionInstanceNV + srtMotionInstance*: VkAccelerationStructureSRTMotionInstanceNV + + VkAccelerationStructureMotionInstanceNV* = object + `type`*: VkAccelerationStructureMotionInstanceTypeNV + flags*: VkAccelerationStructureMotionInstanceFlagsNV + data*: VkAccelerationStructureMotionInstanceDataNV + VkRemoteAddressNV* = distinct void + + VkMemoryGetRemoteAddressInfoNV* = object + sType*: VkStructureType + pNext*: pointer + memory*: VkDeviceMemory + handleType*: VkExternalMemoryHandleTypeFlagBits + + VkImportMemoryBufferCollectionFUCHSIA* = object + sType*: VkStructureType + pNext*: pointer + collection*: VkBufferCollectionFUCHSIA + index*: uint32 + + VkBufferCollectionImageCreateInfoFUCHSIA* = object + sType*: VkStructureType + pNext*: pointer + collection*: VkBufferCollectionFUCHSIA + index*: uint32 + + VkBufferCollectionBufferCreateInfoFUCHSIA* = object + sType*: VkStructureType + pNext*: pointer + collection*: VkBufferCollectionFUCHSIA + index*: uint32 + + VkBufferCollectionCreateInfoFUCHSIA* = object + sType*: VkStructureType + pNext*: pointer + collectionToken*: zx_handle_t + + VkBufferCollectionPropertiesFUCHSIA* = object + sType*: VkStructureType + pNext*: pointer + memoryTypeBits*: uint32 + bufferCount*: uint32 + createInfoIndex*: uint32 + sysmemPixelFormat*: uint64 + formatFeatures*: VkFormatFeatureFlags + sysmemColorSpaceIndex*: VkSysmemColorSpaceFUCHSIA + samplerYcbcrConversionComponents*: VkComponentMapping + suggestedYcbcrModel*: VkSamplerYcbcrModelConversion + suggestedYcbcrRange*: VkSamplerYcbcrRange + suggestedXChromaOffset*: VkChromaLocation + suggestedYChromaOffset*: VkChromaLocation + + VkBufferConstraintsInfoFUCHSIA* = object + sType*: VkStructureType + pNext*: pointer + createInfo*: VkBufferCreateInfo + requiredFormatFeatures*: VkFormatFeatureFlags + bufferCollectionConstraints*: VkBufferCollectionConstraintsInfoFUCHSIA + + VkSysmemColorSpaceFUCHSIA* = object + sType*: VkStructureType + pNext*: pointer + colorSpace*: uint32 + + VkImageFormatConstraintsInfoFUCHSIA* = object + sType*: VkStructureType + pNext*: pointer + imageCreateInfo*: VkImageCreateInfo + requiredFormatFeatures*: VkFormatFeatureFlags + flags*: VkImageFormatConstraintsFlagsFUCHSIA + sysmemPixelFormat*: uint64 + colorSpaceCount*: uint32 + pColorSpaces*: ptr VkSysmemColorSpaceFUCHSIA + + VkImageConstraintsInfoFUCHSIA* = object + sType*: VkStructureType + pNext*: pointer + formatConstraintsCount*: uint32 + pFormatConstraints*: ptr VkImageFormatConstraintsInfoFUCHSIA + bufferCollectionConstraints*: VkBufferCollectionConstraintsInfoFUCHSIA + flags*: VkImageConstraintsInfoFlagsFUCHSIA + + VkBufferCollectionConstraintsInfoFUCHSIA* = object + sType*: VkStructureType + pNext*: pointer + minBufferCount*: uint32 + maxBufferCount*: uint32 + minBufferCountForCamping*: uint32 + minBufferCountForDedicatedSlack*: uint32 + minBufferCountForSharedSlack*: uint32 + VkCudaModuleNV* = distinct VkNonDispatchableHandle + VkCudaFunctionNV* = distinct VkNonDispatchableHandle + + VkCudaModuleCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + dataSize*: uint + pData*: pointer + + VkCudaFunctionCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + module*: VkCudaModuleNV + pName*: cstring + + VkCudaLaunchInfoNV* = object + sType*: VkStructureType + pNext*: pointer + function*: VkCudaFunctionNV + gridDimX*: uint32 + gridDimY*: uint32 + gridDimZ*: uint32 + blockDimX*: uint32 + blockDimY*: uint32 + blockDimZ*: uint32 + sharedMemBytes*: uint32 + paramCount*: uint + pParams*: ptr pointer + extraCount*: uint + pExtras*: ptr pointer + + VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + formatRgba10x6WithoutYCbCrSampler*: VkBool32 + + VkFormatProperties3* = object + sType*: VkStructureType + pNext*: pointer + linearTilingFeatures*: VkFormatFeatureFlags2 + optimalTilingFeatures*: VkFormatFeatureFlags2 + bufferFeatures*: VkFormatFeatureFlags2 + + VkFormatProperties3KHR* = object + + VkDrmFormatModifierPropertiesList2EXT* = object + sType*: VkStructureType + pNext*: pointer + drmFormatModifierCount*: uint32 + pDrmFormatModifierProperties*: ptr VkDrmFormatModifierProperties2EXT + + VkDrmFormatModifierProperties2EXT* = object + drmFormatModifier*: uint64 + drmFormatModifierPlaneCount*: uint32 + drmFormatModifierTilingFeatures*: VkFormatFeatureFlags2 + + VkAndroidHardwareBufferFormatProperties2ANDROID* = object + sType*: VkStructureType + pNext*: pointer + format*: VkFormat + externalFormat*: uint64 + formatFeatures*: VkFormatFeatureFlags2 + samplerYcbcrConversionComponents*: VkComponentMapping + suggestedYcbcrModel*: VkSamplerYcbcrModelConversion + suggestedYcbcrRange*: VkSamplerYcbcrRange + suggestedXChromaOffset*: VkChromaLocation + suggestedYChromaOffset*: VkChromaLocation + + VkPipelineRenderingCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + viewMask*: uint32 + colorAttachmentCount*: uint32 + pColorAttachmentFormats*: ptr VkFormat + depthAttachmentFormat*: VkFormat + stencilAttachmentFormat*: VkFormat + + VkPipelineRenderingCreateInfoKHR* = object + + VkRenderingInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkRenderingFlags + renderArea*: VkRect2D + layerCount*: uint32 + viewMask*: uint32 + colorAttachmentCount*: uint32 + pColorAttachments*: ptr VkRenderingAttachmentInfo + pDepthAttachment*: ptr VkRenderingAttachmentInfo + pStencilAttachment*: ptr VkRenderingAttachmentInfo + + VkRenderingInfoKHR* = object + + VkRenderingAttachmentInfo* = object + sType*: VkStructureType + pNext*: pointer + imageView*: VkImageView + imageLayout*: VkImageLayout + resolveMode*: VkResolveModeFlagBits + resolveImageView*: VkImageView + resolveImageLayout*: VkImageLayout + loadOp*: VkAttachmentLoadOp + storeOp*: VkAttachmentStoreOp + clearValue*: VkClearValue + + VkRenderingAttachmentInfoKHR* = object + + VkRenderingFragmentShadingRateAttachmentInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + imageView*: VkImageView + imageLayout*: VkImageLayout + shadingRateAttachmentTexelSize*: VkExtent2D + + VkRenderingFragmentDensityMapAttachmentInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + imageView*: VkImageView + imageLayout*: VkImageLayout + + VkPhysicalDeviceDynamicRenderingFeatures* = object + sType*: VkStructureType + pNext*: pointer + dynamicRendering*: VkBool32 + + VkPhysicalDeviceDynamicRenderingFeaturesKHR* = object + + VkCommandBufferInheritanceRenderingInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkRenderingFlags + viewMask*: uint32 + colorAttachmentCount*: uint32 + colorAttachmentCount*: uint32 + pColorAttachmentFormats*: ptr VkFormat + depthAttachmentFormat*: VkFormat + stencilAttachmentFormat*: VkFormat + rasterizationSamples*: VkSampleCountFlagBits + + VkCommandBufferInheritanceRenderingInfoKHR* = object + + VkAttachmentSampleCountInfoAMD* = object + sType*: VkStructureType + pNext*: pointer + colorAttachmentCount*: uint32 + pColorAttachmentSamples*: ptr VkSampleCountFlagBits + depthStencilAttachmentSamples*: VkSampleCountFlagBits + + VkAttachmentSampleCountInfoNV* = object + + VkMultiviewPerViewAttributesInfoNVX* = object + sType*: VkStructureType + pNext*: pointer + perViewAttributes*: VkBool32 + perViewAttributesPositionXOnly*: VkBool32 + + VkPhysicalDeviceImageViewMinLodFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + minLod*: VkBool32 + + VkImageViewMinLodCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + minLod*: float32 + + VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + rasterizationOrderColorAttachmentAccess*: VkBool32 + rasterizationOrderDepthAttachmentAccess*: VkBool32 + rasterizationOrderStencilAttachmentAccess*: VkBool32 + + VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM* = object + + VkPhysicalDeviceLinearColorAttachmentFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + linearColorAttachment*: VkBool32 + + VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + graphicsPipelineLibrary*: VkBool32 + + VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + graphicsPipelineLibraryFastLinking*: VkBool32 + graphicsPipelineLibraryIndependentInterpolationDecoration*: VkBool32 + + VkGraphicsPipelineLibraryCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkGraphicsPipelineLibraryFlagsEXT + + VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE* = object + sType*: VkStructureType + pNext*: pointer + descriptorSetHostMapping*: VkBool32 + + VkDescriptorSetBindingReferenceVALVE* = object + sType*: VkStructureType + pNext*: pointer + descriptorSetLayout*: VkDescriptorSetLayout + binding*: uint32 + + VkDescriptorSetLayoutHostMappingInfoVALVE* = object + sType*: VkStructureType + pNext*: pointer + descriptorOffset*: uint + descriptorSize*: uint32 + + VkPhysicalDeviceNestedCommandBufferFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + nestedCommandBuffer*: VkBool32 + nestedCommandBufferRendering*: VkBool32 + nestedCommandBufferSimultaneousUse*: VkBool32 + + VkPhysicalDeviceNestedCommandBufferPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + maxCommandBufferNestingLevel*: uint32 + + VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + shaderModuleIdentifier*: VkBool32 + + VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + shaderModuleIdentifierAlgorithmUUID*: array[VK_UUID_SIZE, uint8] + + VkPipelineShaderStageModuleIdentifierCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + identifierSize*: uint32 + pIdentifier*: ptr uint8 + + VkShaderModuleIdentifierEXT* = object + sType*: VkStructureType + pNext*: pointer + identifierSize*: uint32 + identifier*: array[VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT, uint8] + + VkImageCompressionControlEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkImageCompressionFlagsEXT + compressionControlPlaneCount*: uint32 + pFixedRateFlags*: ptr VkImageCompressionFixedRateFlagsEXT + + VkPhysicalDeviceImageCompressionControlFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + imageCompressionControl*: VkBool32 + + VkImageCompressionPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + imageCompressionFlags*: VkImageCompressionFlagsEXT + imageCompressionFixedRateFlags*: VkImageCompressionFixedRateFlagsEXT + + VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + imageCompressionControlSwapchain*: VkBool32 + + VkImageSubresource2KHR* = object + sType*: VkStructureType + pNext*: pointer + imageSubresource*: VkImageSubresource + + VkImageSubresource2EXT* = object + + VkSubresourceLayout2KHR* = object + sType*: VkStructureType + pNext*: pointer + subresourceLayout*: VkSubresourceLayout + + VkSubresourceLayout2EXT* = object + + VkRenderPassCreationControlEXT* = object + sType*: VkStructureType + pNext*: pointer + disallowMerging*: VkBool32 + + VkRenderPassCreationFeedbackInfoEXT* = object + postMergeSubpassCount*: uint32 + + VkRenderPassCreationFeedbackCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + pRenderPassFeedback*: ptr VkRenderPassCreationFeedbackInfoEXT + + VkRenderPassSubpassFeedbackInfoEXT* = object + subpassMergeStatus*: VkSubpassMergeStatusEXT + description*: array[VK_MAX_DESCRIPTION_SIZE, char] + postMergeIndex*: uint32 + + VkRenderPassSubpassFeedbackCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + pSubpassFeedback*: ptr VkRenderPassSubpassFeedbackInfoEXT + + VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + subpassMergeFeedback*: VkBool32 + + VkMicromapBuildInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + `type`*: VkMicromapTypeEXT + flags*: VkBuildMicromapFlagsEXT + mode*: VkBuildMicromapModeEXT + dstMicromap*: VkMicromapEXT + usageCountsCount*: uint32 + pUsageCounts*: ptr VkMicromapUsageEXT + ppUsageCounts*: ptr ptr VkMicromapUsageEXT + data*: VkDeviceOrHostAddressConstKHR + scratchData*: VkDeviceOrHostAddressKHR + triangleArray*: VkDeviceOrHostAddressConstKHR + triangleArrayStride*: VkDeviceSize + + VkMicromapCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + createFlags*: VkMicromapCreateFlagsEXT + buffer*: VkBuffer + offset*: VkDeviceSize + size*: VkDeviceSize + `type`*: VkMicromapTypeEXT + deviceAddress*: VkDeviceAddress + + VkMicromapVersionInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + pVersionData*: ptr uint8 + + VkCopyMicromapInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + src*: VkMicromapEXT + dst*: VkMicromapEXT + mode*: VkCopyMicromapModeEXT + + VkCopyMicromapToMemoryInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + src*: VkMicromapEXT + dst*: VkDeviceOrHostAddressKHR + mode*: VkCopyMicromapModeEXT + + VkCopyMemoryToMicromapInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + src*: VkDeviceOrHostAddressConstKHR + dst*: VkMicromapEXT + mode*: VkCopyMicromapModeEXT + + VkMicromapBuildSizesInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + micromapSize*: VkDeviceSize + buildScratchSize*: VkDeviceSize + discardable*: VkBool32 + + VkMicromapUsageEXT* = object + count*: uint32 + subdivisionLevel*: uint32 + format*: uint32 + + VkMicromapTriangleEXT* = object + dataOffset*: uint32 + subdivisionLevel*: uint16 + format*: uint16 + + VkPhysicalDeviceOpacityMicromapFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + micromap*: VkBool32 + micromapCaptureReplay*: VkBool32 + micromapHostCommands*: VkBool32 + + VkPhysicalDeviceOpacityMicromapPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + maxOpacity2StateSubdivisionLevel*: uint32 + maxOpacity4StateSubdivisionLevel*: uint32 + + VkAccelerationStructureTrianglesOpacityMicromapEXT* = object + sType*: VkStructureType + pNext*: pointer + indexType*: VkIndexType + indexBuffer*: VkDeviceOrHostAddressConstKHR + indexStride*: VkDeviceSize + baseTriangle*: uint32 + usageCountsCount*: uint32 + pUsageCounts*: ptr VkMicromapUsageEXT + ppUsageCounts*: ptr ptr VkMicromapUsageEXT + micromap*: VkMicromapEXT + + VkPhysicalDeviceDisplacementMicromapFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + displacementMicromap*: VkBool32 + + VkPhysicalDeviceDisplacementMicromapPropertiesNV* = object + sType*: VkStructureType + pNext*: pointer + maxDisplacementMicromapSubdivisionLevel*: uint32 + + VkAccelerationStructureTrianglesDisplacementMicromapNV* = object + sType*: VkStructureType + pNext*: pointer + displacementBiasAndScaleFormat*: VkFormat + displacementVectorFormat*: VkFormat + displacementBiasAndScaleBuffer*: VkDeviceOrHostAddressConstKHR + displacementBiasAndScaleStride*: VkDeviceSize + displacementVectorBuffer*: VkDeviceOrHostAddressConstKHR + displacementVectorStride*: VkDeviceSize + displacedMicromapPrimitiveFlags*: VkDeviceOrHostAddressConstKHR + displacedMicromapPrimitiveFlagsStride*: VkDeviceSize + indexType*: VkIndexType + indexBuffer*: VkDeviceOrHostAddressConstKHR + indexStride*: VkDeviceSize + baseTriangle*: uint32 + usageCountsCount*: uint32 + pUsageCounts*: ptr VkMicromapUsageEXT + ppUsageCounts*: ptr ptr VkMicromapUsageEXT + micromap*: VkMicromapEXT + + VkPipelinePropertiesIdentifierEXT* = object + sType*: VkStructureType + pNext*: pointer + pipelineIdentifier*: array[VK_UUID_SIZE, uint8] + + VkPhysicalDevicePipelinePropertiesFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + pipelinePropertiesIdentifier*: VkBool32 + + VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD* = object + sType*: VkStructureType + pNext*: pointer + shaderEarlyAndLateFragmentTests*: VkBool32 + + VkExternalMemoryAcquireUnmodifiedEXT* = object + sType*: VkStructureType + pNext*: pointer + acquireUnmodifiedMemory*: VkBool32 + + VkExportMetalObjectCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + exportObjectType*: VkExportMetalObjectTypeFlagBitsEXT + + VkExportMetalObjectsInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + + VkExportMetalDeviceInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + mtlDevice*: MTLDevice_id + + VkExportMetalCommandQueueInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + queue*: VkQueue + mtlCommandQueue*: MTLCommandQueue_id + + VkExportMetalBufferInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + memory*: VkDeviceMemory + mtlBuffer*: MTLBuffer_id + + VkImportMetalBufferInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + mtlBuffer*: MTLBuffer_id + + VkExportMetalTextureInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + image*: VkImage + imageView*: VkImageView + bufferView*: VkBufferView + plane*: VkImageAspectFlagBits + mtlTexture*: MTLTexture_id + + VkImportMetalTextureInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + plane*: VkImageAspectFlagBits + mtlTexture*: MTLTexture_id + + VkExportMetalIOSurfaceInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + image*: VkImage + ioSurface*: IOSurfaceRef + + VkImportMetalIOSurfaceInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + ioSurface*: IOSurfaceRef + + VkExportMetalSharedEventInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + semaphore*: VkSemaphore + event*: VkEvent + mtlSharedEvent*: MTLSharedEvent_id + + VkImportMetalSharedEventInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + mtlSharedEvent*: MTLSharedEvent_id + + VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + nonSeamlessCubeMap*: VkBool32 + + VkPhysicalDevicePipelineRobustnessFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + pipelineRobustness*: VkBool32 + + VkPipelineRobustnessCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + storageBuffers*: VkPipelineRobustnessBufferBehaviorEXT + uniformBuffers*: VkPipelineRobustnessBufferBehaviorEXT + vertexInputs*: VkPipelineRobustnessBufferBehaviorEXT + images*: VkPipelineRobustnessImageBehaviorEXT + + VkPhysicalDevicePipelineRobustnessPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + defaultRobustnessStorageBuffers*: VkPipelineRobustnessBufferBehaviorEXT + defaultRobustnessUniformBuffers*: VkPipelineRobustnessBufferBehaviorEXT + defaultRobustnessVertexInputs*: VkPipelineRobustnessBufferBehaviorEXT + defaultRobustnessImages*: VkPipelineRobustnessImageBehaviorEXT + + VkImageViewSampleWeightCreateInfoQCOM* = object + sType*: VkStructureType + pNext*: pointer + filterCenter*: VkOffset2D + filterSize*: VkExtent2D + numPhases*: uint32 + + VkPhysicalDeviceImageProcessingFeaturesQCOM* = object + sType*: VkStructureType + pNext*: pointer + textureSampleWeighted*: VkBool32 + textureBoxFilter*: VkBool32 + textureBlockMatch*: VkBool32 + + VkPhysicalDeviceImageProcessingPropertiesQCOM* = object + sType*: VkStructureType + pNext*: pointer + maxWeightFilterPhases*: uint32 + maxWeightFilterDimension*: VkExtent2D + maxBlockMatchRegion*: VkExtent2D + maxBoxFilterBlockSize*: VkExtent2D + + VkPhysicalDeviceTilePropertiesFeaturesQCOM* = object + sType*: VkStructureType + pNext*: pointer + tileProperties*: VkBool32 + + VkTilePropertiesQCOM* = object + sType*: VkStructureType + pNext*: pointer + tileSize*: VkExtent3D + apronSize*: VkExtent2D + origin*: VkOffset2D + + VkPhysicalDeviceAmigoProfilingFeaturesSEC* = object + sType*: VkStructureType + pNext*: pointer + amigoProfiling*: VkBool32 + + VkAmigoProfilingSubmitInfoSEC* = object + sType*: VkStructureType + pNext*: pointer + firstDrawTimestamp*: uint64 + swapBufferTimestamp*: uint64 + + VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + attachmentFeedbackLoopLayout*: VkBool32 + + VkPhysicalDeviceDepthClampZeroOneFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + depthClampZeroOne*: VkBool32 + + VkPhysicalDeviceAddressBindingReportFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + reportAddressBinding*: VkBool32 + + VkDeviceAddressBindingCallbackDataEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkDeviceAddressBindingFlagsEXT + baseAddress*: VkDeviceAddress + size*: VkDeviceSize + bindingType*: VkDeviceAddressBindingTypeEXT + + VkPhysicalDeviceOpticalFlowFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + opticalFlow*: VkBool32 + + VkPhysicalDeviceOpticalFlowPropertiesNV* = object + sType*: VkStructureType + pNext*: pointer + supportedOutputGridSizes*: VkOpticalFlowGridSizeFlagsNV + supportedHintGridSizes*: VkOpticalFlowGridSizeFlagsNV + hintSupported*: VkBool32 + costSupported*: VkBool32 + bidirectionalFlowSupported*: VkBool32 + globalFlowSupported*: VkBool32 + minWidth*: uint32 + minHeight*: uint32 + maxWidth*: uint32 + maxHeight*: uint32 + maxNumRegionsOfInterest*: uint32 + + VkOpticalFlowImageFormatInfoNV* = object + sType*: VkStructureType + pNext*: pointer + usage*: VkOpticalFlowUsageFlagsNV + + VkOpticalFlowImageFormatPropertiesNV* = object + sType*: VkStructureType + pNext*: pointer + format*: VkFormat + + VkOpticalFlowSessionCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + width*: uint32 + height*: uint32 + imageFormat*: VkFormat + flowVectorFormat*: VkFormat + costFormat*: VkFormat + outputGridSize*: VkOpticalFlowGridSizeFlagsNV + hintGridSize*: VkOpticalFlowGridSizeFlagsNV + performanceLevel*: VkOpticalFlowPerformanceLevelNV + flags*: VkOpticalFlowSessionCreateFlagsNV + + VkOpticalFlowSessionCreatePrivateDataInfoNV* = object + sType*: VkStructureType + pNext*: pointer + id*: uint32 + size*: uint32 + pPrivateData*: pointer + + VkOpticalFlowExecuteInfoNV* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkOpticalFlowExecuteFlagsNV + regionCount*: uint32 + pRegions*: ptr VkRect2D + + VkPhysicalDeviceFaultFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + deviceFault*: VkBool32 + deviceFaultVendorBinary*: VkBool32 + + VkDeviceFaultAddressInfoEXT* = object + addressType*: VkDeviceFaultAddressTypeEXT + reportedAddress*: VkDeviceAddress + addressPrecision*: VkDeviceSize + + VkDeviceFaultVendorInfoEXT* = object + description*: array[VK_MAX_DESCRIPTION_SIZE, char] + vendorFaultCode*: uint64 + vendorFaultData*: uint64 + + VkDeviceFaultCountsEXT* = object + sType*: VkStructureType + pNext*: pointer + addressInfoCount*: uint32 + vendorInfoCount*: uint32 + vendorBinarySize*: VkDeviceSize + + VkDeviceFaultInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + description*: array[VK_MAX_DESCRIPTION_SIZE, char] + pAddressInfos*: ptr VkDeviceFaultAddressInfoEXT + pVendorInfos*: ptr VkDeviceFaultVendorInfoEXT + pVendorBinaryData*: pointer + + VkDeviceFaultVendorBinaryHeaderVersionOneEXT* = object + headerSize*: uint32 + headerVersion*: VkDeviceFaultVendorBinaryHeaderVersionEXT + vendorID*: uint32 + deviceID*: uint32 + driverVersion*: uint32 + pipelineCacheUUID*: array[VK_UUID_SIZE, uint8] + applicationNameOffset*: uint32 + applicationVersion*: uint32 + engineNameOffset*: uint32 + engineVersion*: uint32 + apiVersion*: uint32 + + VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + pipelineLibraryGroupHandles*: VkBool32 + + VkDepthBiasInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + depthBiasConstantFactor*: float32 + depthBiasClamp*: float32 + depthBiasSlopeFactor*: float32 + + VkDepthBiasRepresentationInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + depthBiasRepresentation*: VkDepthBiasRepresentationEXT + depthBiasExact*: VkBool32 + + VkDecompressMemoryRegionNV* = object + srcAddress*: VkDeviceAddress + dstAddress*: VkDeviceAddress + compressedSize*: VkDeviceSize + decompressedSize*: VkDeviceSize + decompressionMethod*: VkMemoryDecompressionMethodFlagsNV + + VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM* = object + sType*: VkStructureType + pNext*: pointer + shaderCoreMask*: uint64 + shaderCoreCount*: uint32 + shaderWarpsPerCore*: uint32 + + VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM* = object + sType*: VkStructureType + pNext*: pointer + shaderCoreBuiltins*: VkBool32 + + VkFrameBoundaryEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkFrameBoundaryFlagsEXT + frameID*: uint64 + imageCount*: uint32 + pImages*: ptr VkImage + bufferCount*: uint32 + pBuffers*: ptr VkBuffer + tagName*: uint64 + tagSize*: uint + pTag*: pointer + + VkPhysicalDeviceFrameBoundaryFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + frameBoundary*: VkBool32 + + VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + dynamicRenderingUnusedAttachments*: VkBool32 + + VkSurfacePresentModeEXT* = object + sType*: VkStructureType + pNext*: pointer + presentMode*: VkPresentModeKHR + + VkSurfacePresentScalingCapabilitiesEXT* = object + sType*: VkStructureType + pNext*: pointer + supportedPresentScaling*: VkPresentScalingFlagsEXT + supportedPresentGravityX*: VkPresentGravityFlagsEXT + supportedPresentGravityY*: VkPresentGravityFlagsEXT + minScaledImageExtent*: VkExtent2D + maxScaledImageExtent*: VkExtent2D + + VkSurfacePresentModeCompatibilityEXT* = object + sType*: VkStructureType + pNext*: pointer + presentModeCount*: uint32 + pPresentModes*: ptr VkPresentModeKHR + + VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + swapchainMaintenance1*: VkBool32 + + VkSwapchainPresentFenceInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + swapchainCount*: uint32 + pFences*: ptr VkFence + + VkSwapchainPresentModesCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + presentModeCount*: uint32 + pPresentModes*: ptr VkPresentModeKHR + + VkSwapchainPresentModeInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + swapchainCount*: uint32 + pPresentModes*: ptr VkPresentModeKHR + + VkSwapchainPresentScalingCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + scalingBehavior*: VkPresentScalingFlagsEXT + presentGravityX*: VkPresentGravityFlagsEXT + presentGravityY*: VkPresentGravityFlagsEXT + + VkReleaseSwapchainImagesInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + swapchain*: VkSwapchainKHR + imageIndexCount*: uint32 + pImageIndices*: ptr uint32 + + VkPhysicalDeviceDepthBiasControlFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + depthBiasControl*: VkBool32 + leastRepresentableValueForceUnormRepresentation*: VkBool32 + floatRepresentation*: VkBool32 + depthBiasExact*: VkBool32 + + VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + rayTracingInvocationReorder*: VkBool32 + + VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV* = object + sType*: VkStructureType + pNext*: pointer + rayTracingInvocationReorderReorderingHint*: VkRayTracingInvocationReorderModeNV + + VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + extendedSparseAddressSpace*: VkBool32 + + VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV* = object + sType*: VkStructureType + pNext*: pointer + extendedSparseAddressSpaceSize*: VkDeviceSize + extendedSparseImageUsageFlags*: VkImageUsageFlags + extendedSparseBufferUsageFlags*: VkBufferUsageFlags + + VkDirectDriverLoadingInfoLUNARG* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkDirectDriverLoadingFlagsLUNARG + pfnGetInstanceProcAddr*: PFN_vkGetInstanceProcAddrLUNARG + + VkDirectDriverLoadingListLUNARG* = object + sType*: VkStructureType + pNext*: pointer + mode*: VkDirectDriverLoadingModeLUNARG + driverCount*: uint32 + pDrivers*: ptr VkDirectDriverLoadingInfoLUNARG + + VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM* = object + sType*: VkStructureType + pNext*: pointer + multiviewPerViewViewports*: VkBool32 + + VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + rayTracingPositionFetch*: VkBool32 + + VkDeviceImageSubresourceInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + pCreateInfo*: ptr VkImageCreateInfo + pSubresource*: ptr VkImageSubresource2KHR + + VkPhysicalDeviceShaderCorePropertiesARM* = object + sType*: VkStructureType + pNext*: pointer + pixelRate*: uint32 + texelRate*: uint32 + fmaRate*: uint32 + + VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM* = object + sType*: VkStructureType + pNext*: pointer + multiviewPerViewRenderAreas*: VkBool32 + + VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM* = object + sType*: VkStructureType + pNext*: pointer + perViewRenderAreaCount*: uint32 + pPerViewRenderAreas*: ptr VkRect2D + + VkQueryLowLatencySupportNV* = object + sType*: VkStructureType + pNext*: pointer + pQueriedLowLatencyData*: pointer + + VkMemoryMapInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkMemoryMapFlags + memory*: VkDeviceMemory + offset*: VkDeviceSize + size*: VkDeviceSize + + VkMemoryUnmapInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkMemoryUnmapFlagsKHR + memory*: VkDeviceMemory + + VkPhysicalDeviceShaderObjectFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + shaderObject*: VkBool32 + + VkPhysicalDeviceShaderObjectPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + shaderBinaryUUID*: array[VK_UUID_SIZE, uint8] + shaderBinaryVersion*: uint32 + + VkShaderCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkShaderCreateFlagsEXT + stage*: VkShaderStageFlagBits + nextStage*: VkShaderStageFlags + codeType*: VkShaderCodeTypeEXT + codeSize*: uint + pCode*: pointer + pName*: cstring + setLayoutCount*: uint32 + pSetLayouts*: ptr VkDescriptorSetLayout + pushConstantRangeCount*: uint32 + pPushConstantRanges*: ptr VkPushConstantRange + pSpecializationInfo*: ptr VkSpecializationInfo + + VkPhysicalDeviceShaderTileImageFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + shaderTileImageColorReadAccess*: VkBool32 + shaderTileImageDepthReadAccess*: VkBool32 + shaderTileImageStencilReadAccess*: VkBool32 + + VkPhysicalDeviceShaderTileImagePropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + shaderTileImageCoherentReadAccelerated*: VkBool32 + shaderTileImageReadSampleFromPixelRateInvocation*: VkBool32 + shaderTileImageReadFromHelperInvocation*: VkBool32 + + VkImportScreenBufferInfoQNX* = object + sType*: VkStructureType + pNext*: pointer + buffer*: ptr _screen_buffer + + VkScreenBufferPropertiesQNX* = object + sType*: VkStructureType + pNext*: pointer + allocationSize*: VkDeviceSize + memoryTypeBits*: uint32 + + VkScreenBufferFormatPropertiesQNX* = object + sType*: VkStructureType + pNext*: pointer + format*: VkFormat + externalFormat*: uint64 + screenUsage*: uint64 + formatFeatures*: VkFormatFeatureFlags + samplerYcbcrConversionComponents*: VkComponentMapping + suggestedYcbcrModel*: VkSamplerYcbcrModelConversion + suggestedYcbcrRange*: VkSamplerYcbcrRange + suggestedXChromaOffset*: VkChromaLocation + suggestedYChromaOffset*: VkChromaLocation + + VkExternalFormatQNX* = object + sType*: VkStructureType + pNext*: pointer + externalFormat*: uint64 + + VkPhysicalDeviceExternalMemoryScreenBufferFeaturesQNX* = object + sType*: VkStructureType + pNext*: pointer + screenBufferImport*: VkBool32 + + VkPhysicalDeviceCooperativeMatrixFeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + cooperativeMatrix*: VkBool32 + cooperativeMatrixRobustBufferAccess*: VkBool32 + + VkCooperativeMatrixPropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + MSize*: uint32 + NSize*: uint32 + KSize*: uint32 + AType*: VkComponentTypeKHR + BType*: VkComponentTypeKHR + CType*: VkComponentTypeKHR + ResultType*: VkComponentTypeKHR + saturatingAccumulation*: VkBool32 + scope*: VkScopeKHR + + VkPhysicalDeviceCooperativeMatrixPropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + cooperativeMatrixSupportedStages*: VkShaderStageFlags + + VkPhysicalDeviceShaderEnqueuePropertiesAMDX* = object + sType*: VkStructureType + pNext*: pointer + maxExecutionGraphDepth*: uint32 + maxExecutionGraphShaderOutputNodes*: uint32 + maxExecutionGraphShaderPayloadSize*: uint32 + maxExecutionGraphShaderPayloadCount*: uint32 + executionGraphDispatchAddressAlignment*: uint32 + + VkPhysicalDeviceShaderEnqueueFeaturesAMDX* = object + sType*: VkStructureType + pNext*: pointer + shaderEnqueue*: VkBool32 + + VkExecutionGraphPipelineCreateInfoAMDX* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkPipelineCreateFlags + stageCount*: uint32 + pStages*: ptr VkPipelineShaderStageCreateInfo + pLibraryInfo*: ptr VkPipelineLibraryCreateInfoKHR + layout*: VkPipelineLayout + basePipelineHandle*: VkPipeline + basePipelineIndex*: int32 + + VkPipelineShaderStageNodeCreateInfoAMDX* = object + sType*: VkStructureType + pNext*: pointer + pName*: cstring + index*: uint32 + + VkExecutionGraphPipelineScratchSizeAMDX* = object + sType*: VkStructureType + pNext*: pointer + size*: VkDeviceSize + + VkDispatchGraphInfoAMDX* = object + nodeIndex*: uint32 + payloadCount*: uint32 + payloads*: VkDeviceOrHostAddressConstAMDX + payloadStride*: uint64 + + VkDispatchGraphCountInfoAMDX* = object + count*: uint32 + infos*: VkDeviceOrHostAddressConstAMDX + stride*: uint64 + + VkBindMemoryStatusKHR* = object + sType*: VkStructureType + pNext*: pointer + pResult*: ptr VkResult + + VkBindDescriptorSetsInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + stageFlags*: VkShaderStageFlags + layout*: VkPipelineLayout + firstSet*: uint32 + descriptorSetCount*: uint32 + pDescriptorSets*: ptr VkDescriptorSet + dynamicOffsetCount*: uint32 + pDynamicOffsets*: ptr uint32 + + VkPushConstantsInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + layout*: VkPipelineLayout + stageFlags*: VkShaderStageFlags + offset*: uint32 + size*: uint32 + pValues*: pointer + + VkPushDescriptorSetInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + stageFlags*: VkShaderStageFlags + layout*: VkPipelineLayout + set*: uint32 + descriptorWriteCount*: uint32 + pDescriptorWrites*: ptr VkWriteDescriptorSet + + VkPushDescriptorSetWithTemplateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + descriptorUpdateTemplate*: VkDescriptorUpdateTemplate + layout*: VkPipelineLayout + set*: uint32 + pData*: pointer + + VkSetDescriptorBufferOffsetsInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + stageFlags*: VkShaderStageFlags + layout*: VkPipelineLayout + firstSet*: uint32 + setCount*: uint32 + pBufferIndices*: ptr uint32 + pOffsets*: ptr VkDeviceSize + + VkBindDescriptorBufferEmbeddedSamplersInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + stageFlags*: VkShaderStageFlags + layout*: VkPipelineLayout + set*: uint32 + + VkPhysicalDeviceCubicClampFeaturesQCOM* = object + sType*: VkStructureType + pNext*: pointer + cubicRangeClamp*: VkBool32 + + VkPhysicalDeviceYcbcrDegammaFeaturesQCOM* = object + sType*: VkStructureType + pNext*: pointer + ycbcrDegamma*: VkBool32 + + VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM* = object + sType*: VkStructureType + pNext*: pointer + enableYDegamma*: VkBool32 + enableCbCrDegamma*: VkBool32 + + VkPhysicalDeviceCubicWeightsFeaturesQCOM* = object + sType*: VkStructureType + pNext*: pointer + selectableCubicWeights*: VkBool32 + + VkSamplerCubicWeightsCreateInfoQCOM* = object + sType*: VkStructureType + pNext*: pointer + cubicWeights*: VkCubicFilterWeightsQCOM + + VkBlitImageCubicWeightsInfoQCOM* = object + sType*: VkStructureType + pNext*: pointer + cubicWeights*: VkCubicFilterWeightsQCOM + + VkPhysicalDeviceImageProcessing2FeaturesQCOM* = object + sType*: VkStructureType + pNext*: pointer + textureBlockMatch2*: VkBool32 + + VkPhysicalDeviceImageProcessing2PropertiesQCOM* = object + sType*: VkStructureType + pNext*: pointer + maxBlockMatchWindow*: VkExtent2D + + VkSamplerBlockMatchWindowCreateInfoQCOM* = object + sType*: VkStructureType + pNext*: pointer + windowExtent*: VkExtent2D + windowCompareMode*: VkBlockMatchWindowCompareModeQCOM + + VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + descriptorPoolOverallocation*: VkBool32 + + VkPhysicalDeviceLayeredDriverPropertiesMSFT* = object + sType*: VkStructureType + pNext*: pointer + underlyingAPI*: VkLayeredDriverUnderlyingApiMSFT + + VkPhysicalDevicePerStageDescriptorSetFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + perStageDescriptorSet*: VkBool32 + dynamicPipelineLayout*: VkBool32 + + VkPhysicalDeviceExternalFormatResolveFeaturesANDROID* = object + sType*: VkStructureType + pNext*: pointer + externalFormatResolve*: VkBool32 + + VkPhysicalDeviceExternalFormatResolvePropertiesANDROID* = object + sType*: VkStructureType + pNext*: pointer + nullColorAttachmentWithExternalFormatResolve*: VkBool32 + externalFormatResolveChromaOffsetX*: VkChromaLocation + externalFormatResolveChromaOffsetY*: VkChromaLocation + + VkAndroidHardwareBufferFormatResolvePropertiesANDROID* = object + sType*: VkStructureType + pNext*: pointer + colorAttachmentFormat*: VkFormat + + VkLatencySleepModeInfoNV* = object + sType*: VkStructureType + pNext*: pointer + lowLatencyMode*: VkBool32 + lowLatencyBoost*: VkBool32 + minimumIntervalUs*: uint32 + + VkLatencySleepInfoNV* = object + sType*: VkStructureType + pNext*: pointer + signalSemaphore*: VkSemaphore + value*: uint64 + + VkSetLatencyMarkerInfoNV* = object + sType*: VkStructureType + pNext*: pointer + presentID*: uint64 + marker*: VkLatencyMarkerNV + + VkGetLatencyMarkerInfoNV* = object + sType*: VkStructureType + pNext*: pointer + timingCount*: uint32 + pTimings*: ptr VkLatencyTimingsFrameReportNV + + VkLatencyTimingsFrameReportNV* = object + sType*: VkStructureType + pNext*: pointer + presentID*: uint64 + inputSampleTimeUs*: uint64 + simStartTimeUs*: uint64 + simEndTimeUs*: uint64 + renderSubmitStartTimeUs*: uint64 + renderSubmitEndTimeUs*: uint64 + presentStartTimeUs*: uint64 + presentEndTimeUs*: uint64 + driverStartTimeUs*: uint64 + driverEndTimeUs*: uint64 + osRenderQueueStartTimeUs*: uint64 + osRenderQueueEndTimeUs*: uint64 + gpuRenderStartTimeUs*: uint64 + gpuRenderEndTimeUs*: uint64 + + VkOutOfBandQueueTypeInfoNV* = object + sType*: VkStructureType + pNext*: pointer + queueType*: VkOutOfBandQueueTypeNV + + VkLatencySubmissionPresentIdNV* = object + sType*: VkStructureType + pNext*: pointer + presentID*: uint64 + + VkSwapchainLatencyCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + latencyModeEnable*: VkBool32 + + VkLatencySurfaceCapabilitiesNV* = object + sType*: VkStructureType + pNext*: pointer + presentModeCount*: uint32 + pPresentModes*: ptr VkPresentModeKHR + + VkPhysicalDeviceCudaKernelLaunchFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + cudaKernelLaunchFeatures*: VkBool32 + + VkPhysicalDeviceCudaKernelLaunchPropertiesNV* = object + sType*: VkStructureType + pNext*: pointer + computeCapabilityMinor*: uint32 + computeCapabilityMajor*: uint32 + + VkDeviceQueueShaderCoreControlCreateInfoARM* = object + sType*: VkStructureType + pNext*: pointer + shaderCoreCount*: uint32 + + VkPhysicalDeviceSchedulingControlsFeaturesARM* = object + sType*: VkStructureType + pNext*: pointer + schedulingControls*: VkBool32 + + VkPhysicalDeviceSchedulingControlsPropertiesARM* = object + sType*: VkStructureType + pNext*: pointer + schedulingControlsFlags*: VkPhysicalDeviceSchedulingControlsFlagsARM + + VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG* = object + sType*: VkStructureType + pNext*: pointer + relaxedLineRasterization*: VkBool32 + + VkPhysicalDeviceRenderPassStripedFeaturesARM* = object + sType*: VkStructureType + pNext*: pointer + renderPassStriped*: VkBool32 + + VkPhysicalDeviceRenderPassStripedPropertiesARM* = object + sType*: VkStructureType + pNext*: pointer + renderPassStripeGranularity*: VkExtent2D + maxRenderPassStripes*: uint32 + + VkRenderPassStripeInfoARM* = object + sType*: VkStructureType + pNext*: pointer + stripeArea*: VkRect2D + + VkRenderPassStripeBeginInfoARM* = object + sType*: VkStructureType + pNext*: pointer + stripeInfoCount*: uint32 + pStripeInfos*: ptr VkRenderPassStripeInfoARM + + VkRenderPassStripeSubmitInfoARM* = object + sType*: VkStructureType + pNext*: pointer + stripeSemaphoreInfoCount*: uint32 + pStripeSemaphoreInfos*: ptr VkSemaphoreSubmitInfo + + VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + shaderMaximalReconvergence*: VkBool32 + + VkPhysicalDeviceShaderSubgroupRotateFeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + shaderSubgroupRotate*: VkBool32 + shaderSubgroupRotateClustered*: VkBool32 + + VkPhysicalDeviceShaderExpectAssumeFeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + shaderExpectAssume*: VkBool32 + + VkPhysicalDeviceShaderFloatControls2FeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + shaderFloatControls2*: VkBool32 + + VkPhysicalDeviceDynamicRenderingLocalReadFeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + dynamicRenderingLocalRead*: VkBool32 + + VkRenderingAttachmentLocationInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + colorAttachmentCount*: uint32 + pColorAttachmentLocations*: ptr uint32 + + VkRenderingInputAttachmentIndexInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + colorAttachmentCount*: uint32 + pColorAttachmentInputIndices*: ptr uint32 + pDepthInputAttachmentIndex*: ptr uint32 + pStencilInputAttachmentIndex*: ptr uint32 + + VkPhysicalDeviceShaderQuadControlFeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + shaderQuadControl*: VkBool32 + + VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + shaderFloat16VectorAtomics*: VkBool32 + + VkPhysicalDeviceMapMemoryPlacedFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + memoryMapPlaced*: VkBool32 + memoryMapRangePlaced*: VkBool32 + memoryUnmapReserve*: VkBool32 + + VkPhysicalDeviceMapMemoryPlacedPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + minPlacedMemoryMapAlignment*: VkDeviceSize + + VkMemoryMapPlacedInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + pPlacedAddress*: pointer + + VkPhysicalDeviceRawAccessChainsFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + shaderRawAccessChains*: VkBool32 + +# Constructors + +proc newVkOffset2D*(x: int32, y: int32): VkOffset2D = + result.x = x + result.y = y + +proc newVkOffset3D*(x: int32, y: int32, z: int32): VkOffset3D = + result.x = x + result.y = y + result.z = z + +proc newVkExtent2D*(width: uint32, height: uint32): VkExtent2D = + result.width = width + result.height = height + +proc newVkExtent3D*(width: uint32, height: uint32, depth: uint32): VkExtent3D = + result.width = width + result.height = height + result.depth = depth + +proc newVkViewport*(x: float32, y: float32, width: float32, height: float32, minDepth: float32, maxDepth: float32): VkViewport = + result.x = x + result.y = y + result.width = width + result.height = height + result.minDepth = minDepth + result.maxDepth = maxDepth + +proc newVkRect2D*(offset: VkOffset2D, extent: VkExtent2D): VkRect2D = + result.offset = offset + result.extent = extent + +proc newVkClearRect*(rect: VkRect2D, baseArrayLayer: uint32, layerCount: uint32): VkClearRect = + result.rect = rect + result.baseArrayLayer = baseArrayLayer + result.layerCount = layerCount + +proc newVkComponentMapping*(r: VkComponentSwizzle, g: VkComponentSwizzle, b: VkComponentSwizzle, a: VkComponentSwizzle): VkComponentMapping = + result.r = r + result.g = g + result.b = b + result.a = a + +proc newVkPhysicalDeviceProperties*(apiVersion: uint32, driverVersion: uint32, vendorID: uint32, deviceID: uint32, deviceType: VkPhysicalDeviceType, deviceName: array[VK_MAX_PHYSICAL_DEVICE_NAME_SIZE, char], pipelineCacheUUID: array[VK_UUID_SIZE, uint8], limits: VkPhysicalDeviceLimits, sparseProperties: VkPhysicalDeviceSparseProperties): VkPhysicalDeviceProperties = + result.apiVersion = apiVersion + result.driverVersion = driverVersion + result.vendorID = vendorID + result.deviceID = deviceID + result.deviceType = deviceType + result.deviceName = deviceName + result.pipelineCacheUUID = pipelineCacheUUID + result.limits = limits + result.sparseProperties = sparseProperties + +proc newVkExtensionProperties*(extensionName: array[VK_MAX_EXTENSION_NAME_SIZE, char], specVersion: uint32): VkExtensionProperties = + result.extensionName = extensionName + result.specVersion = specVersion + +proc newVkLayerProperties*(layerName: array[VK_MAX_EXTENSION_NAME_SIZE, char], specVersion: uint32, implementationVersion: uint32, description: array[VK_MAX_DESCRIPTION_SIZE, char]): VkLayerProperties = + result.layerName = layerName + result.specVersion = specVersion + result.implementationVersion = implementationVersion + result.description = description + +proc newVkApplicationInfo*(sType: VkStructureType = VkStructureTypeApplicationInfo, pNext: pointer = nil, pApplicationName: cstring, applicationVersion: uint32, pEngineName: cstring, engineVersion: uint32, apiVersion: uint32): VkApplicationInfo = + result.sType = sType + result.pNext = pNext + result.pApplicationName = pApplicationName + result.applicationVersion = applicationVersion + result.pEngineName = pEngineName + result.engineVersion = engineVersion + result.apiVersion = apiVersion + +proc newVkAllocationCallbacks*(pUserData: pointer = nil, pfnAllocation: PFN_vkAllocationFunction, pfnReallocation: PFN_vkReallocationFunction, pfnFree: PFN_vkFreeFunction, pfnInternalAllocation: PFN_vkInternalAllocationNotification, pfnInternalFree: PFN_vkInternalFreeNotification): VkAllocationCallbacks = + result.pUserData = pUserData + result.pfnAllocation = pfnAllocation + result.pfnReallocation = pfnReallocation + result.pfnFree = pfnFree + result.pfnInternalAllocation = pfnInternalAllocation + result.pfnInternalFree = pfnInternalFree + +proc newVkDeviceQueueCreateInfo*(sType: VkStructureType = VkStructureTypeDeviceQueueCreateInfo, pNext: pointer = nil, flags: VkDeviceQueueCreateFlags = 0.VkDeviceQueueCreateFlags, queueFamilyIndex: uint32, queueCount: uint32, pQueuePriorities: ptr float32): VkDeviceQueueCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.queueFamilyIndex = queueFamilyIndex + result.queueCount = queueCount + result.pQueuePriorities = pQueuePriorities + +proc newVkDeviceCreateInfo*(sType: VkStructureType = VkStructureTypeDeviceCreateInfo, pNext: pointer = nil, flags: VkDeviceCreateFlags = 0.VkDeviceCreateFlags, queueCreateInfoCount: uint32, pQueueCreateInfos: ptr VkDeviceQueueCreateInfo, enabledLayerCount: uint32, ppEnabledLayerNames: cstringArray, enabledExtensionCount: uint32, ppEnabledExtensionNames: cstringArray, pEnabledFeatures: ptr VkPhysicalDeviceFeatures): VkDeviceCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.queueCreateInfoCount = queueCreateInfoCount + result.pQueueCreateInfos = pQueueCreateInfos + result.enabledLayerCount = enabledLayerCount + result.ppEnabledLayerNames = ppEnabledLayerNames + result.enabledExtensionCount = enabledExtensionCount + result.ppEnabledExtensionNames = ppEnabledExtensionNames + result.pEnabledFeatures = pEnabledFeatures + +proc newVkInstanceCreateInfo*(sType: VkStructureType = VkStructureTypeInstanceCreateInfo, pNext: pointer = nil, flags: VkInstanceCreateFlags = 0.VkInstanceCreateFlags, pApplicationInfo: ptr VkApplicationInfo, enabledLayerCount: uint32, ppEnabledLayerNames: cstringArray, enabledExtensionCount: uint32, ppEnabledExtensionNames: cstringArray): VkInstanceCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.pApplicationInfo = pApplicationInfo + result.enabledLayerCount = enabledLayerCount + result.ppEnabledLayerNames = ppEnabledLayerNames + result.enabledExtensionCount = enabledExtensionCount + result.ppEnabledExtensionNames = ppEnabledExtensionNames + +proc newVkQueueFamilyProperties*(queueFlags: VkQueueFlags, queueCount: uint32, timestampValidBits: uint32, minImageTransferGranularity: VkExtent3D): VkQueueFamilyProperties = + result.queueFlags = queueFlags + result.queueCount = queueCount + result.timestampValidBits = timestampValidBits + result.minImageTransferGranularity = minImageTransferGranularity + +proc newVkPhysicalDeviceMemoryProperties*(memoryTypeCount: uint32, memoryTypes: array[VK_MAX_MEMORY_TYPES, VkMemoryType], memoryHeapCount: uint32, memoryHeaps: array[VK_MAX_MEMORY_HEAPS, VkMemoryHeap]): VkPhysicalDeviceMemoryProperties = + result.memoryTypeCount = memoryTypeCount + result.memoryTypes = memoryTypes + result.memoryHeapCount = memoryHeapCount + result.memoryHeaps = memoryHeaps + +proc newVkMemoryAllocateInfo*(sType: VkStructureType = VkStructureTypeMemoryAllocateInfo, pNext: pointer = nil, allocationSize: VkDeviceSize, memoryTypeIndex: uint32): VkMemoryAllocateInfo = + result.sType = sType + result.pNext = pNext + result.allocationSize = allocationSize + result.memoryTypeIndex = memoryTypeIndex + +proc newVkMemoryRequirements*(size: VkDeviceSize, alignment: VkDeviceSize, memoryTypeBits: uint32): VkMemoryRequirements = + result.size = size + result.alignment = alignment + result.memoryTypeBits = memoryTypeBits + +proc newVkSparseImageFormatProperties*(aspectMask: VkImageAspectFlags, imageGranularity: VkExtent3D, flags: VkSparseImageFormatFlags = 0.VkSparseImageFormatFlags): VkSparseImageFormatProperties = + result.aspectMask = aspectMask + result.imageGranularity = imageGranularity + result.flags = flags + +proc newVkSparseImageMemoryRequirements*(formatProperties: VkSparseImageFormatProperties, imageMipTailFirstLod: uint32, imageMipTailSize: VkDeviceSize, imageMipTailOffset: VkDeviceSize, imageMipTailStride: VkDeviceSize): VkSparseImageMemoryRequirements = + result.formatProperties = formatProperties + result.imageMipTailFirstLod = imageMipTailFirstLod + result.imageMipTailSize = imageMipTailSize + result.imageMipTailOffset = imageMipTailOffset + result.imageMipTailStride = imageMipTailStride + +proc newVkMemoryType*(propertyFlags: VkMemoryPropertyFlags, heapIndex: uint32): VkMemoryType = + result.propertyFlags = propertyFlags + result.heapIndex = heapIndex + +proc newVkMemoryHeap*(size: VkDeviceSize, flags: VkMemoryHeapFlags = 0.VkMemoryHeapFlags): VkMemoryHeap = + result.size = size + result.flags = flags + +proc newVkMappedMemoryRange*(sType: VkStructureType = VkStructureTypeMappedMemoryRange, pNext: pointer = nil, memory: VkDeviceMemory, offset: VkDeviceSize, size: VkDeviceSize): VkMappedMemoryRange = + result.sType = sType + result.pNext = pNext + result.memory = memory + result.offset = offset + result.size = size + +proc newVkFormatProperties*(linearTilingFeatures: VkFormatFeatureFlags, optimalTilingFeatures: VkFormatFeatureFlags, bufferFeatures: VkFormatFeatureFlags): VkFormatProperties = + result.linearTilingFeatures = linearTilingFeatures + result.optimalTilingFeatures = optimalTilingFeatures + result.bufferFeatures = bufferFeatures + +proc newVkImageFormatProperties*(maxExtent: VkExtent3D, maxMipLevels: uint32, maxArrayLayers: uint32, sampleCounts: VkSampleCountFlags, maxResourceSize: VkDeviceSize): VkImageFormatProperties = + result.maxExtent = maxExtent + result.maxMipLevels = maxMipLevels + result.maxArrayLayers = maxArrayLayers + result.sampleCounts = sampleCounts + result.maxResourceSize = maxResourceSize + +proc newVkDescriptorBufferInfo*(buffer: VkBuffer, offset: VkDeviceSize, range: VkDeviceSize): VkDescriptorBufferInfo = + result.buffer = buffer + result.offset = offset + result.range = range + +proc newVkDescriptorImageInfo*(sampler: VkSampler, imageView: VkImageView, imageLayout: VkImageLayout): VkDescriptorImageInfo = + result.sampler = sampler + result.imageView = imageView + result.imageLayout = imageLayout + +proc newVkWriteDescriptorSet*(sType: VkStructureType = VkStructureTypeWriteDescriptorSet, pNext: pointer = nil, dstSet: VkDescriptorSet, dstBinding: uint32, dstArrayElement: uint32, descriptorCount: uint32, descriptorType: VkDescriptorType, pImageInfo: ptr VkDescriptorImageInfo, pBufferInfo: ptr ptr VkDescriptorBufferInfo, pTexelBufferView: ptr VkBufferView): VkWriteDescriptorSet = + result.sType = sType + result.pNext = pNext + result.dstSet = dstSet + result.dstBinding = dstBinding + result.dstArrayElement = dstArrayElement + result.descriptorCount = descriptorCount + result.descriptorType = descriptorType + result.pImageInfo = pImageInfo + result.pBufferInfo = pBufferInfo + result.pTexelBufferView = pTexelBufferView + +proc newVkCopyDescriptorSet*(sType: VkStructureType = VkStructureTypeCopyDescriptorSet, pNext: pointer = nil, srcSet: VkDescriptorSet, srcBinding: uint32, srcArrayElement: uint32, dstSet: VkDescriptorSet, dstBinding: uint32, dstArrayElement: uint32, descriptorCount: uint32): VkCopyDescriptorSet = + result.sType = sType + result.pNext = pNext + result.srcSet = srcSet + result.srcBinding = srcBinding + result.srcArrayElement = srcArrayElement + result.dstSet = dstSet + result.dstBinding = dstBinding + result.dstArrayElement = dstArrayElement + result.descriptorCount = descriptorCount + +proc newVkBufferUsageFlags2CreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, usage: VkBufferUsageFlags2KHR): VkBufferUsageFlags2CreateInfoKHR = + result.sType = sType + result.pNext = pNext + result.usage = usage + +proc newVkBufferCreateInfo*(sType: VkStructureType = VkStructureTypeBufferCreateInfo, pNext: pointer = nil, flags: VkBufferCreateFlags = 0.VkBufferCreateFlags, size: VkDeviceSize, usage: VkBufferUsageFlags, sharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32): VkBufferCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.size = size + result.usage = usage + result.sharingMode = sharingMode + result.queueFamilyIndexCount = queueFamilyIndexCount + result.pQueueFamilyIndices = pQueueFamilyIndices + +proc newVkBufferViewCreateInfo*(sType: VkStructureType = VkStructureTypeBufferViewCreateInfo, pNext: pointer = nil, flags: VkBufferViewCreateFlags = 0.VkBufferViewCreateFlags, buffer: VkBuffer, format: VkFormat, offset: VkDeviceSize, range: VkDeviceSize): VkBufferViewCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.buffer = buffer + result.format = format + result.offset = offset + result.range = range + +proc newVkImageSubresource*(aspectMask: VkImageAspectFlags, mipLevel: uint32, arrayLayer: uint32): VkImageSubresource = + result.aspectMask = aspectMask + result.mipLevel = mipLevel + result.arrayLayer = arrayLayer + +proc newVkImageSubresourceLayers*(aspectMask: VkImageAspectFlags, mipLevel: uint32, baseArrayLayer: uint32, layerCount: uint32): VkImageSubresourceLayers = + result.aspectMask = aspectMask + result.mipLevel = mipLevel + result.baseArrayLayer = baseArrayLayer + result.layerCount = layerCount + +proc newVkImageSubresourceRange*(aspectMask: VkImageAspectFlags, baseMipLevel: uint32, levelCount: uint32, baseArrayLayer: uint32, layerCount: uint32): VkImageSubresourceRange = + result.aspectMask = aspectMask + result.baseMipLevel = baseMipLevel + result.levelCount = levelCount + result.baseArrayLayer = baseArrayLayer + result.layerCount = layerCount + +proc newVkMemoryBarrier*(sType: VkStructureType = VkStructureTypeMemoryBarrier, pNext: pointer = nil, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags): VkMemoryBarrier = + result.sType = sType + result.pNext = pNext + result.srcAccessMask = srcAccessMask + result.dstAccessMask = dstAccessMask + +proc newVkBufferMemoryBarrier*(sType: VkStructureType = VkStructureTypeBufferMemoryBarrier, pNext: pointer = nil, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags, srcQueueFamilyIndex: uint32, dstQueueFamilyIndex: uint32, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize): VkBufferMemoryBarrier = + result.sType = sType + result.pNext = pNext + result.srcAccessMask = srcAccessMask + result.dstAccessMask = dstAccessMask + result.srcQueueFamilyIndex = srcQueueFamilyIndex + result.dstQueueFamilyIndex = dstQueueFamilyIndex + result.buffer = buffer + result.offset = offset + result.size = size + +proc newVkImageMemoryBarrier*(sType: VkStructureType = VkStructureTypeImageMemoryBarrier, pNext: pointer = nil, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags, oldLayout: VkImageLayout, newLayout: VkImageLayout, srcQueueFamilyIndex: uint32, dstQueueFamilyIndex: uint32, image: VkImage, subresourceRange: VkImageSubresourceRange): VkImageMemoryBarrier = + result.sType = sType + result.pNext = pNext + result.srcAccessMask = srcAccessMask + result.dstAccessMask = dstAccessMask + result.oldLayout = oldLayout + result.newLayout = newLayout + result.srcQueueFamilyIndex = srcQueueFamilyIndex + result.dstQueueFamilyIndex = dstQueueFamilyIndex + result.image = image + result.subresourceRange = subresourceRange + +proc newVkImageCreateInfo*(sType: VkStructureType = VkStructureTypeImageCreateInfo, pNext: pointer = nil, flags: VkImageCreateFlags = 0.VkImageCreateFlags, imageType: VkImageType, format: VkFormat, extent: VkExtent3D, mipLevels: uint32, arrayLayers: uint32, samples: VkSampleCountFlagBits, tiling: VkImageTiling, usage: VkImageUsageFlags, sharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32, initialLayout: VkImageLayout): VkImageCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.imageType = imageType + result.format = format + result.extent = extent + result.mipLevels = mipLevels + result.arrayLayers = arrayLayers + result.samples = samples + result.tiling = tiling + result.usage = usage + result.sharingMode = sharingMode + result.queueFamilyIndexCount = queueFamilyIndexCount + result.pQueueFamilyIndices = pQueueFamilyIndices + result.initialLayout = initialLayout + +proc newVkSubresourceLayout*(offset: VkDeviceSize, size: VkDeviceSize, rowPitch: VkDeviceSize, arrayPitch: VkDeviceSize, depthPitch: VkDeviceSize): VkSubresourceLayout = + result.offset = offset + result.size = size + result.rowPitch = rowPitch + result.arrayPitch = arrayPitch + result.depthPitch = depthPitch + +proc newVkImageViewCreateInfo*(sType: VkStructureType = VkStructureTypeImageViewCreateInfo, pNext: pointer = nil, flags: VkImageViewCreateFlags = 0.VkImageViewCreateFlags, image: VkImage, viewType: VkImageViewType, format: VkFormat, components: VkComponentMapping, subresourceRange: VkImageSubresourceRange): VkImageViewCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.image = image + result.viewType = viewType + result.format = format + result.components = components + result.subresourceRange = subresourceRange + +proc newVkBufferCopy*(srcOffset: VkDeviceSize, dstOffset: VkDeviceSize, size: VkDeviceSize): VkBufferCopy = + result.srcOffset = srcOffset + result.dstOffset = dstOffset + result.size = size + +proc newVkSparseMemoryBind*(resourceOffset: VkDeviceSize, size: VkDeviceSize, memory: VkDeviceMemory, memoryOffset: VkDeviceSize, flags: VkSparseMemoryBindFlags = 0.VkSparseMemoryBindFlags): VkSparseMemoryBind = + result.resourceOffset = resourceOffset + result.size = size + result.memory = memory + result.memoryOffset = memoryOffset + result.flags = flags + +proc newVkSparseImageMemoryBind*(subresource: VkImageSubresource, offset: VkOffset3D, extent: VkExtent3D, memory: VkDeviceMemory, memoryOffset: VkDeviceSize, flags: VkSparseMemoryBindFlags = 0.VkSparseMemoryBindFlags): VkSparseImageMemoryBind = + result.subresource = subresource + result.offset = offset + result.extent = extent + result.memory = memory + result.memoryOffset = memoryOffset + result.flags = flags + +proc newVkSparseBufferMemoryBindInfo*(buffer: VkBuffer, bindCount: uint32, pBinds: ptr VkSparseMemoryBind): VkSparseBufferMemoryBindInfo = + result.buffer = buffer + result.bindCount = bindCount + result.pBinds = pBinds + +proc newVkSparseImageOpaqueMemoryBindInfo*(image: VkImage, bindCount: uint32, pBinds: ptr VkSparseMemoryBind): VkSparseImageOpaqueMemoryBindInfo = + result.image = image + result.bindCount = bindCount + result.pBinds = pBinds + +proc newVkSparseImageMemoryBindInfo*(image: VkImage, bindCount: uint32, pBinds: ptr VkSparseImageMemoryBind): VkSparseImageMemoryBindInfo = + result.image = image + result.bindCount = bindCount + result.pBinds = pBinds + +proc newVkBindSparseInfo*(sType: VkStructureType = VkStructureTypeBindSparseInfo, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, bufferBindCount: uint32, pBufferBinds: ptr VkSparseBufferMemoryBindInfo, imageOpaqueBindCount: uint32, pImageOpaqueBinds: ptr VkSparseImageOpaqueMemoryBindInfo, imageBindCount: uint32, pImageBinds: ptr VkSparseImageMemoryBindInfo, signalSemaphoreCount: uint32, pSignalSemaphores: ptr VkSemaphore): VkBindSparseInfo = + result.sType = sType + result.pNext = pNext + result.waitSemaphoreCount = waitSemaphoreCount + result.pWaitSemaphores = pWaitSemaphores + result.bufferBindCount = bufferBindCount + result.pBufferBinds = pBufferBinds + result.imageOpaqueBindCount = imageOpaqueBindCount + result.pImageOpaqueBinds = pImageOpaqueBinds + result.imageBindCount = imageBindCount + result.pImageBinds = pImageBinds + result.signalSemaphoreCount = signalSemaphoreCount + result.pSignalSemaphores = pSignalSemaphores + +proc newVkImageCopy*(srcSubresource: VkImageSubresourceLayers, srcOffset: VkOffset3D, dstSubresource: VkImageSubresourceLayers, dstOffset: VkOffset3D, extent: VkExtent3D): VkImageCopy = + result.srcSubresource = srcSubresource + result.srcOffset = srcOffset + result.dstSubresource = dstSubresource + result.dstOffset = dstOffset + result.extent = extent + +proc newVkImageBlit*(srcSubresource: VkImageSubresourceLayers, srcOffsets: array[2, VkOffset3D], dstSubresource: VkImageSubresourceLayers, dstOffsets: array[2, VkOffset3D]): VkImageBlit = + result.srcSubresource = srcSubresource + result.srcOffsets = srcOffsets + result.dstSubresource = dstSubresource + result.dstOffsets = dstOffsets + +proc newVkBufferImageCopy*(bufferOffset: VkDeviceSize, bufferRowLength: uint32, bufferImageHeight: uint32, imageSubresource: VkImageSubresourceLayers, imageOffset: VkOffset3D, imageExtent: VkExtent3D): VkBufferImageCopy = + result.bufferOffset = bufferOffset + result.bufferRowLength = bufferRowLength + result.bufferImageHeight = bufferImageHeight + result.imageSubresource = imageSubresource + result.imageOffset = imageOffset + result.imageExtent = imageExtent + +proc newVkCopyMemoryIndirectCommandNV*(srcAddress: VkDeviceAddress, dstAddress: VkDeviceAddress, size: VkDeviceSize): VkCopyMemoryIndirectCommandNV = + result.srcAddress = srcAddress + result.dstAddress = dstAddress + result.size = size + +proc newVkCopyMemoryToImageIndirectCommandNV*(srcAddress: VkDeviceAddress, bufferRowLength: uint32, bufferImageHeight: uint32, imageSubresource: VkImageSubresourceLayers, imageOffset: VkOffset3D, imageExtent: VkExtent3D): VkCopyMemoryToImageIndirectCommandNV = + result.srcAddress = srcAddress + result.bufferRowLength = bufferRowLength + result.bufferImageHeight = bufferImageHeight + result.imageSubresource = imageSubresource + result.imageOffset = imageOffset + result.imageExtent = imageExtent + +proc newVkImageResolve*(srcSubresource: VkImageSubresourceLayers, srcOffset: VkOffset3D, dstSubresource: VkImageSubresourceLayers, dstOffset: VkOffset3D, extent: VkExtent3D): VkImageResolve = + result.srcSubresource = srcSubresource + result.srcOffset = srcOffset + result.dstSubresource = dstSubresource + result.dstOffset = dstOffset + result.extent = extent + +proc newVkShaderModuleCreateInfo*(sType: VkStructureType = VkStructureTypeShaderModuleCreateInfo, pNext: pointer = nil, flags: VkShaderModuleCreateFlags = 0.VkShaderModuleCreateFlags, codeSize: uint, pCode: ptr uint32): VkShaderModuleCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.codeSize = codeSize + result.pCode = pCode + +proc newVkDescriptorSetLayoutBinding*(binding: uint32, descriptorType: VkDescriptorType, descriptorCount: uint32, stageFlags: VkShaderStageFlags, pImmutableSamplers: ptr VkSampler): VkDescriptorSetLayoutBinding = + result.binding = binding + result.descriptorType = descriptorType + result.descriptorCount = descriptorCount + result.stageFlags = stageFlags + result.pImmutableSamplers = pImmutableSamplers + +proc newVkDescriptorSetLayoutCreateInfo*(sType: VkStructureType = VkStructureTypeDescriptorSetLayoutCreateInfo, pNext: pointer = nil, flags: VkDescriptorSetLayoutCreateFlags = 0.VkDescriptorSetLayoutCreateFlags, bindingCount: uint32, pBindings: ptr VkDescriptorSetLayoutBinding): VkDescriptorSetLayoutCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.bindingCount = bindingCount + result.pBindings = pBindings + +proc newVkDescriptorPoolSize*(`type`: VkDescriptorType, descriptorCount: uint32): VkDescriptorPoolSize = + result.`type` = `type` + result.descriptorCount = descriptorCount + +proc newVkDescriptorPoolCreateInfo*(sType: VkStructureType = VkStructureTypeDescriptorPoolCreateInfo, pNext: pointer = nil, flags: VkDescriptorPoolCreateFlags = 0.VkDescriptorPoolCreateFlags, maxSets: uint32, poolSizeCount: uint32, pPoolSizes: ptr VkDescriptorPoolSize): VkDescriptorPoolCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.maxSets = maxSets + result.poolSizeCount = poolSizeCount + result.pPoolSizes = pPoolSizes + +proc newVkDescriptorSetAllocateInfo*(sType: VkStructureType = VkStructureTypeDescriptorSetAllocateInfo, pNext: pointer = nil, descriptorPool: VkDescriptorPool, descriptorSetCount: uint32, pSetLayouts: ptr VkDescriptorSetLayout): VkDescriptorSetAllocateInfo = + result.sType = sType + result.pNext = pNext + result.descriptorPool = descriptorPool + result.descriptorSetCount = descriptorSetCount + result.pSetLayouts = pSetLayouts + +proc newVkSpecializationMapEntry*(constantID: uint32, offset: uint32, size: uint): VkSpecializationMapEntry = + result.constantID = constantID + result.offset = offset + result.size = size + +proc newVkSpecializationInfo*(mapEntryCount: uint32, pMapEntries: ptr VkSpecializationMapEntry, dataSize: uint, pData: pointer = nil): VkSpecializationInfo = + result.mapEntryCount = mapEntryCount + result.pMapEntries = pMapEntries + result.dataSize = dataSize + result.pData = pData + +proc newVkPipelineShaderStageCreateInfo*(sType: VkStructureType = VkStructureTypePipelineShaderStageCreateInfo, pNext: pointer = nil, flags: VkPipelineShaderStageCreateFlags = 0.VkPipelineShaderStageCreateFlags, stage: VkShaderStageFlagBits, module: VkShaderModule, pName: cstring, pName: cstring, pSpecializationInfo: ptr VkSpecializationInfo): VkPipelineShaderStageCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.stage = stage + result.module = module + result.pName = pName + result.pName = pName + result.pSpecializationInfo = pSpecializationInfo + +proc newVkComputePipelineCreateInfo*(sType: VkStructureType = VkStructureTypeComputePipelineCreateInfo, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stage: VkPipelineShaderStageCreateInfo, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkComputePipelineCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.stage = stage + result.layout = layout + result.basePipelineHandle = basePipelineHandle + result.basePipelineIndex = basePipelineIndex + +proc newVkComputePipelineIndirectBufferInfoNV*(sType: VkStructureType, pNext: pointer = nil, deviceAddress: VkDeviceAddress, size: VkDeviceSize, pipelineDeviceAddressCaptureReplay: VkDeviceAddress): VkComputePipelineIndirectBufferInfoNV = + result.sType = sType + result.pNext = pNext + result.deviceAddress = deviceAddress + result.size = size + result.pipelineDeviceAddressCaptureReplay = pipelineDeviceAddressCaptureReplay + +proc newVkPipelineCreateFlags2CreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCreateFlags2KHR = 0.VkPipelineCreateFlags2KHR): VkPipelineCreateFlags2CreateInfoKHR = + result.sType = sType + result.pNext = pNext + result.flags = flags + +proc newVkVertexInputBindingDescription*(binding: uint32, stride: uint32, inputRate: VkVertexInputRate): VkVertexInputBindingDescription = + result.binding = binding + result.stride = stride + result.inputRate = inputRate + +proc newVkVertexInputAttributeDescription*(location: uint32, binding: uint32, format: VkFormat, offset: uint32): VkVertexInputAttributeDescription = + result.location = location + result.binding = binding + result.format = format + result.offset = offset + +proc newVkPipelineVertexInputStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineVertexInputStateCreateInfo, pNext: pointer = nil, flags: VkPipelineVertexInputStateCreateFlags = 0.VkPipelineVertexInputStateCreateFlags, vertexBindingDescriptionCount: uint32, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription, vertexAttributeDescriptionCount: uint32, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription): VkPipelineVertexInputStateCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.vertexBindingDescriptionCount = vertexBindingDescriptionCount + result.pVertexBindingDescriptions = pVertexBindingDescriptions + result.vertexAttributeDescriptionCount = vertexAttributeDescriptionCount + result.pVertexAttributeDescriptions = pVertexAttributeDescriptions + +proc newVkPipelineInputAssemblyStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineInputAssemblyStateCreateInfo, pNext: pointer = nil, flags: VkPipelineInputAssemblyStateCreateFlags = 0.VkPipelineInputAssemblyStateCreateFlags, topology: VkPrimitiveTopology, primitiveRestartEnable: VkBool32): VkPipelineInputAssemblyStateCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.topology = topology + result.primitiveRestartEnable = primitiveRestartEnable + +proc newVkPipelineTessellationStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineTessellationStateCreateInfo, pNext: pointer = nil, flags: VkPipelineTessellationStateCreateFlags = 0.VkPipelineTessellationStateCreateFlags, patchControlPoints: uint32): VkPipelineTessellationStateCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.patchControlPoints = patchControlPoints + +proc newVkPipelineViewportStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineViewportStateCreateInfo, pNext: pointer = nil, flags: VkPipelineViewportStateCreateFlags = 0.VkPipelineViewportStateCreateFlags, viewportCount: uint32, pViewports: ptr VkViewport, scissorCount: uint32, pScissors: ptr VkRect2D): VkPipelineViewportStateCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.viewportCount = viewportCount + result.pViewports = pViewports + result.scissorCount = scissorCount + result.pScissors = pScissors + +proc newVkPipelineRasterizationStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineRasterizationStateCreateInfo, pNext: pointer = nil, flags: VkPipelineRasterizationStateCreateFlags = 0.VkPipelineRasterizationStateCreateFlags, depthClampEnable: VkBool32, rasterizerDiscardEnable: VkBool32, polygonMode: VkPolygonMode, cullMode: VkCullModeFlags, frontFace: VkFrontFace, depthBiasEnable: VkBool32, depthBiasConstantFactor: float32, depthBiasClamp: float32, depthBiasSlopeFactor: float32, lineWidth: float32): VkPipelineRasterizationStateCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.depthClampEnable = depthClampEnable + result.rasterizerDiscardEnable = rasterizerDiscardEnable + result.polygonMode = polygonMode + result.cullMode = cullMode + result.frontFace = frontFace + result.depthBiasEnable = depthBiasEnable + result.depthBiasConstantFactor = depthBiasConstantFactor + result.depthBiasClamp = depthBiasClamp + result.depthBiasSlopeFactor = depthBiasSlopeFactor + result.lineWidth = lineWidth + +proc newVkPipelineMultisampleStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineMultisampleStateCreateInfo, pNext: pointer = nil, flags: VkPipelineMultisampleStateCreateFlags = 0.VkPipelineMultisampleStateCreateFlags, rasterizationSamples: VkSampleCountFlagBits, sampleShadingEnable: VkBool32, minSampleShading: float32, pSampleMask: ptr VkSampleMask, alphaToCoverageEnable: VkBool32, alphaToOneEnable: VkBool32): VkPipelineMultisampleStateCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.rasterizationSamples = rasterizationSamples + result.sampleShadingEnable = sampleShadingEnable + result.minSampleShading = minSampleShading + result.pSampleMask = pSampleMask + result.alphaToCoverageEnable = alphaToCoverageEnable + result.alphaToOneEnable = alphaToOneEnable + +proc newVkPipelineColorBlendAttachmentState*(blendEnable: VkBool32, srcColorBlendFactor: VkBlendFactor, dstColorBlendFactor: VkBlendFactor, colorBlendOp: VkBlendOp, srcAlphaBlendFactor: VkBlendFactor, dstAlphaBlendFactor: VkBlendFactor, alphaBlendOp: VkBlendOp, colorWriteMask: VkColorComponentFlags): VkPipelineColorBlendAttachmentState = + result.blendEnable = blendEnable + result.srcColorBlendFactor = srcColorBlendFactor + result.dstColorBlendFactor = dstColorBlendFactor + result.colorBlendOp = colorBlendOp + result.srcAlphaBlendFactor = srcAlphaBlendFactor + result.dstAlphaBlendFactor = dstAlphaBlendFactor + result.alphaBlendOp = alphaBlendOp + result.colorWriteMask = colorWriteMask + +proc newVkPipelineColorBlendStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineColorBlendStateCreateInfo, pNext: pointer = nil, flags: VkPipelineColorBlendStateCreateFlags = 0.VkPipelineColorBlendStateCreateFlags, logicOpEnable: VkBool32, logicOp: VkLogicOp, attachmentCount: uint32, pAttachments: ptr VkPipelineColorBlendAttachmentState, blendConstants: array[4, float32]): VkPipelineColorBlendStateCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.logicOpEnable = logicOpEnable + result.logicOp = logicOp + result.attachmentCount = attachmentCount + result.pAttachments = pAttachments + result.blendConstants = blendConstants + +proc newVkPipelineDynamicStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineDynamicStateCreateInfo, pNext: pointer = nil, flags: VkPipelineDynamicStateCreateFlags = 0.VkPipelineDynamicStateCreateFlags, dynamicStateCount: uint32, pDynamicStates: ptr VkDynamicState): VkPipelineDynamicStateCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.dynamicStateCount = dynamicStateCount + result.pDynamicStates = pDynamicStates + +proc newVkStencilOpState*(failOp: VkStencilOp, passOp: VkStencilOp, depthFailOp: VkStencilOp, compareOp: VkCompareOp, compareMask: uint32, writeMask: uint32, reference: uint32): VkStencilOpState = + result.failOp = failOp + result.passOp = passOp + result.depthFailOp = depthFailOp + result.compareOp = compareOp + result.compareMask = compareMask + result.writeMask = writeMask + result.reference = reference + +proc newVkPipelineDepthStencilStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineDepthStencilStateCreateInfo, pNext: pointer = nil, flags: VkPipelineDepthStencilStateCreateFlags = 0.VkPipelineDepthStencilStateCreateFlags, depthTestEnable: VkBool32, depthWriteEnable: VkBool32, depthCompareOp: VkCompareOp, depthBoundsTestEnable: VkBool32, stencilTestEnable: VkBool32, front: VkStencilOpState, back: VkStencilOpState, minDepthBounds: float32, maxDepthBounds: float32): VkPipelineDepthStencilStateCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.depthTestEnable = depthTestEnable + result.depthWriteEnable = depthWriteEnable + result.depthCompareOp = depthCompareOp + result.depthBoundsTestEnable = depthBoundsTestEnable + result.stencilTestEnable = stencilTestEnable + result.front = front + result.back = back + result.minDepthBounds = minDepthBounds + result.maxDepthBounds = maxDepthBounds + +proc newVkGraphicsPipelineCreateInfo*(sType: VkStructureType = VkStructureTypeGraphicsPipelineCreateInfo, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, pStages: ptr VkPipelineShaderStageCreateInfo, pVertexInputState: ptr VkPipelineVertexInputStateCreateInfo, pInputAssemblyState: ptr VkPipelineInputAssemblyStateCreateInfo, pTessellationState: ptr VkPipelineTessellationStateCreateInfo, pViewportState: ptr VkPipelineViewportStateCreateInfo, pRasterizationState: ptr VkPipelineRasterizationStateCreateInfo, pMultisampleState: ptr VkPipelineMultisampleStateCreateInfo, pDepthStencilState: ptr VkPipelineDepthStencilStateCreateInfo, pColorBlendState: ptr VkPipelineColorBlendStateCreateInfo, pDynamicState: ptr VkPipelineDynamicStateCreateInfo, layout: VkPipelineLayout, renderPass: VkRenderPass, subpass: uint32, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkGraphicsPipelineCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.stageCount = stageCount + result.pStages = pStages + result.pStages = pStages + result.pVertexInputState = pVertexInputState + result.pInputAssemblyState = pInputAssemblyState + result.pTessellationState = pTessellationState + result.pViewportState = pViewportState + result.pRasterizationState = pRasterizationState + result.pMultisampleState = pMultisampleState + result.pDepthStencilState = pDepthStencilState + result.pColorBlendState = pColorBlendState + result.pDynamicState = pDynamicState + result.layout = layout + result.renderPass = renderPass + result.subpass = subpass + result.basePipelineHandle = basePipelineHandle + result.basePipelineIndex = basePipelineIndex + +proc newVkPipelineCacheCreateInfo*(sType: VkStructureType = VkStructureTypePipelineCacheCreateInfo, pNext: pointer = nil, flags: VkPipelineCacheCreateFlags = 0.VkPipelineCacheCreateFlags, initialDataSize: uint, initialDataSize: uint, pInitialData: pointer = nil): VkPipelineCacheCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.initialDataSize = initialDataSize + result.initialDataSize = initialDataSize + result.pInitialData = pInitialData + +proc newVkPipelineCacheHeaderVersionOne*(headerSize: uint32, headerVersion: VkPipelineCacheHeaderVersion, vendorID: uint32, deviceID: uint32, pipelineCacheUUID: array[VK_UUID_SIZE, uint8]): VkPipelineCacheHeaderVersionOne = + result.headerSize = headerSize + result.headerVersion = headerVersion + result.vendorID = vendorID + result.deviceID = deviceID + result.pipelineCacheUUID = pipelineCacheUUID + +proc newVkPipelineCacheStageValidationIndexEntry*(codeSize: uint64, codeOffset: uint64): VkPipelineCacheStageValidationIndexEntry = + result.codeSize = codeSize + result.codeOffset = codeOffset + +proc newVkPipelineCacheSafetyCriticalIndexEntry*(pipelineIdentifier: array[VK_UUID_SIZE, uint8], pipelineMemorySize: uint64, jsonSize: uint64, jsonOffset: uint64, stageIndexCount: uint32, stageIndexStride: uint32, stageIndexOffset: uint64): VkPipelineCacheSafetyCriticalIndexEntry = + result.pipelineIdentifier = pipelineIdentifier + result.pipelineMemorySize = pipelineMemorySize + result.jsonSize = jsonSize + result.jsonOffset = jsonOffset + result.stageIndexCount = stageIndexCount + result.stageIndexStride = stageIndexStride + result.stageIndexOffset = stageIndexOffset + +proc newVkPipelineCacheHeaderVersionSafetyCriticalOne*(headerVersionOne: VkPipelineCacheHeaderVersionOne, validationVersion: VkPipelineCacheValidationVersion, implementationData: uint32, pipelineIndexCount: uint32, pipelineIndexStride: uint32, pipelineIndexOffset: uint64): VkPipelineCacheHeaderVersionSafetyCriticalOne = + result.headerVersionOne = headerVersionOne + result.validationVersion = validationVersion + result.implementationData = implementationData + result.pipelineIndexCount = pipelineIndexCount + result.pipelineIndexStride = pipelineIndexStride + result.pipelineIndexOffset = pipelineIndexOffset + +proc newVkPushConstantRange*(stageFlags: VkShaderStageFlags, offset: uint32, size: uint32): VkPushConstantRange = + result.stageFlags = stageFlags + result.offset = offset + result.size = size + +proc newVkPipelineLayoutCreateInfo*(sType: VkStructureType = VkStructureTypePipelineLayoutCreateInfo, pNext: pointer = nil, flags: VkPipelineLayoutCreateFlags = 0.VkPipelineLayoutCreateFlags, setLayoutCount: uint32, pSetLayouts: ptr VkDescriptorSetLayout, pushConstantRangeCount: uint32, pPushConstantRanges: ptr VkPushConstantRange): VkPipelineLayoutCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.setLayoutCount = setLayoutCount + result.pSetLayouts = pSetLayouts + result.pushConstantRangeCount = pushConstantRangeCount + result.pPushConstantRanges = pPushConstantRanges + +proc newVkSamplerCreateInfo*(sType: VkStructureType = VkStructureTypeSamplerCreateInfo, pNext: pointer = nil, flags: VkSamplerCreateFlags = 0.VkSamplerCreateFlags, magFilter: VkFilter, minFilter: VkFilter, mipmapMode: VkSamplerMipmapMode, addressModeU: VkSamplerAddressMode, addressModeV: VkSamplerAddressMode, addressModeW: VkSamplerAddressMode, mipLodBias: float32, anisotropyEnable: VkBool32, maxAnisotropy: float32, compareEnable: VkBool32, compareOp: VkCompareOp, minLod: float32, maxLod: float32, borderColor: VkBorderColor, unnormalizedCoordinates: VkBool32): VkSamplerCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.magFilter = magFilter + result.minFilter = minFilter + result.mipmapMode = mipmapMode + result.addressModeU = addressModeU + result.addressModeV = addressModeV + result.addressModeW = addressModeW + result.mipLodBias = mipLodBias + result.anisotropyEnable = anisotropyEnable + result.maxAnisotropy = maxAnisotropy + result.compareEnable = compareEnable + result.compareOp = compareOp + result.minLod = minLod + result.maxLod = maxLod + result.borderColor = borderColor + result.unnormalizedCoordinates = unnormalizedCoordinates + +proc newVkCommandPoolCreateInfo*(sType: VkStructureType = VkStructureTypeCommandPoolCreateInfo, pNext: pointer = nil, flags: VkCommandPoolCreateFlags = 0.VkCommandPoolCreateFlags, queueFamilyIndex: uint32): VkCommandPoolCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.queueFamilyIndex = queueFamilyIndex + +proc newVkCommandBufferAllocateInfo*(sType: VkStructureType = VkStructureTypeCommandBufferAllocateInfo, pNext: pointer = nil, commandPool: VkCommandPool, level: VkCommandBufferLevel, commandBufferCount: uint32): VkCommandBufferAllocateInfo = + result.sType = sType + result.pNext = pNext + result.commandPool = commandPool + result.level = level + result.commandBufferCount = commandBufferCount + +proc newVkCommandBufferInheritanceInfo*(sType: VkStructureType = VkStructureTypeCommandBufferInheritanceInfo, pNext: pointer = nil, renderPass: VkRenderPass, subpass: uint32, framebuffer: VkFramebuffer, occlusionQueryEnable: VkBool32, queryFlags: VkQueryControlFlags, pipelineStatistics: VkQueryPipelineStatisticFlags): VkCommandBufferInheritanceInfo = + result.sType = sType + result.pNext = pNext + result.renderPass = renderPass + result.subpass = subpass + result.framebuffer = framebuffer + result.occlusionQueryEnable = occlusionQueryEnable + result.queryFlags = queryFlags + result.pipelineStatistics = pipelineStatistics + +proc newVkCommandBufferBeginInfo*(sType: VkStructureType = VkStructureTypeCommandBufferBeginInfo, pNext: pointer = nil, flags: VkCommandBufferUsageFlags = 0.VkCommandBufferUsageFlags, pInheritanceInfo: ptr VkCommandBufferInheritanceInfo): VkCommandBufferBeginInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.pInheritanceInfo = pInheritanceInfo + +proc newVkRenderPassBeginInfo*(sType: VkStructureType = VkStructureTypeRenderPassBeginInfo, pNext: pointer = nil, renderPass: VkRenderPass, framebuffer: VkFramebuffer, renderArea: VkRect2D, clearValueCount: uint32, pClearValues: ptr VkClearValue): VkRenderPassBeginInfo = + result.sType = sType + result.pNext = pNext + result.renderPass = renderPass + result.framebuffer = framebuffer + result.renderArea = renderArea + result.clearValueCount = clearValueCount + result.pClearValues = pClearValues + +proc newVkClearDepthStencilValue*(depth: float32, stencil: uint32): VkClearDepthStencilValue = + result.depth = depth + result.stencil = stencil + +proc newVkClearAttachment*(aspectMask: VkImageAspectFlags, colorAttachment: uint32, clearValue: VkClearValue): VkClearAttachment = + result.aspectMask = aspectMask + result.colorAttachment = colorAttachment + result.clearValue = clearValue + +proc newVkAttachmentDescription*(flags: VkAttachmentDescriptionFlags = 0.VkAttachmentDescriptionFlags, format: VkFormat, samples: VkSampleCountFlagBits, loadOp: VkAttachmentLoadOp, storeOp: VkAttachmentStoreOp, stencilLoadOp: VkAttachmentLoadOp, stencilStoreOp: VkAttachmentStoreOp, initialLayout: VkImageLayout, finalLayout: VkImageLayout): VkAttachmentDescription = + result.flags = flags + result.format = format + result.samples = samples + result.loadOp = loadOp + result.storeOp = storeOp + result.stencilLoadOp = stencilLoadOp + result.stencilStoreOp = stencilStoreOp + result.initialLayout = initialLayout + result.finalLayout = finalLayout + +proc newVkAttachmentReference*(attachment: uint32, layout: VkImageLayout): VkAttachmentReference = + result.attachment = attachment + result.layout = layout + +proc newVkSubpassDescription*(flags: VkSubpassDescriptionFlags = 0.VkSubpassDescriptionFlags, pipelineBindPoint: VkPipelineBindPoint, inputAttachmentCount: uint32, pInputAttachments: ptr VkAttachmentReference, colorAttachmentCount: uint32, pColorAttachments: ptr VkAttachmentReference, pResolveAttachments: ptr VkAttachmentReference, pDepthStencilAttachment: ptr VkAttachmentReference, preserveAttachmentCount: uint32, pPreserveAttachments: ptr uint32): VkSubpassDescription = + result.flags = flags + result.pipelineBindPoint = pipelineBindPoint + result.inputAttachmentCount = inputAttachmentCount + result.pInputAttachments = pInputAttachments + result.colorAttachmentCount = colorAttachmentCount + result.pColorAttachments = pColorAttachments + result.pResolveAttachments = pResolveAttachments + result.pDepthStencilAttachment = pDepthStencilAttachment + result.preserveAttachmentCount = preserveAttachmentCount + result.pPreserveAttachments = pPreserveAttachments + +proc newVkSubpassDependency*(srcSubpass: uint32, dstSubpass: uint32, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags, dependencyFlags: VkDependencyFlags): VkSubpassDependency = + result.srcSubpass = srcSubpass + result.dstSubpass = dstSubpass + result.srcStageMask = srcStageMask + result.dstStageMask = dstStageMask + result.srcAccessMask = srcAccessMask + result.dstAccessMask = dstAccessMask + result.dependencyFlags = dependencyFlags + +proc newVkRenderPassCreateInfo*(sType: VkStructureType = VkStructureTypeRenderPassCreateInfo, pNext: pointer = nil, flags: VkRenderPassCreateFlags = 0.VkRenderPassCreateFlags, attachmentCount: uint32, pAttachments: ptr VkAttachmentDescription, subpassCount: uint32, pSubpasses: ptr VkSubpassDescription, dependencyCount: uint32, pDependencies: ptr VkSubpassDependency): VkRenderPassCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.attachmentCount = attachmentCount + result.pAttachments = pAttachments + result.subpassCount = subpassCount + result.pSubpasses = pSubpasses + result.dependencyCount = dependencyCount + result.pDependencies = pDependencies + +proc newVkEventCreateInfo*(sType: VkStructureType = VkStructureTypeEventCreateInfo, pNext: pointer = nil, flags: VkEventCreateFlags = 0.VkEventCreateFlags): VkEventCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + +proc newVkFenceCreateInfo*(sType: VkStructureType = VkStructureTypeFenceCreateInfo, pNext: pointer = nil, flags: VkFenceCreateFlags = 0.VkFenceCreateFlags): VkFenceCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + +proc newVkPhysicalDeviceFeatures*(robustBufferAccess: VkBool32, fullDrawIndexUint32: VkBool32, imageCubeArray: VkBool32, independentBlend: VkBool32, geometryShader: VkBool32, tessellationShader: VkBool32, sampleRateShading: VkBool32, dualSrcBlend: VkBool32, logicOp: VkBool32, multiDrawIndirect: VkBool32, drawIndirectFirstInstance: VkBool32, depthClamp: VkBool32, depthBiasClamp: VkBool32, fillModeNonSolid: VkBool32, depthBounds: VkBool32, wideLines: VkBool32, largePoints: VkBool32, alphaToOne: VkBool32, multiViewport: VkBool32, samplerAnisotropy: VkBool32, textureCompressionETC2: VkBool32, textureCompressionASTC_LDR: VkBool32, textureCompressionBC: VkBool32, occlusionQueryPrecise: VkBool32, pipelineStatisticsQuery: VkBool32, vertexPipelineStoresAndAtomics: VkBool32, fragmentStoresAndAtomics: VkBool32, shaderTessellationAndGeometryPointSize: VkBool32, shaderImageGatherExtended: VkBool32, shaderStorageImageExtendedFormats: VkBool32, shaderStorageImageMultisample: VkBool32, shaderStorageImageReadWithoutFormat: VkBool32, shaderStorageImageWriteWithoutFormat: VkBool32, shaderUniformBufferArrayDynamicIndexing: VkBool32, shaderSampledImageArrayDynamicIndexing: VkBool32, shaderStorageBufferArrayDynamicIndexing: VkBool32, shaderStorageImageArrayDynamicIndexing: VkBool32, shaderClipDistance: VkBool32, shaderCullDistance: VkBool32, shaderFloat64: VkBool32, shaderInt64: VkBool32, shaderInt16: VkBool32, shaderResourceResidency: VkBool32, shaderResourceMinLod: VkBool32, sparseBinding: VkBool32, sparseResidencyBuffer: VkBool32, sparseResidencyImage2D: VkBool32, sparseResidencyImage3D: VkBool32, sparseResidency2Samples: VkBool32, sparseResidency4Samples: VkBool32, sparseResidency8Samples: VkBool32, sparseResidency16Samples: VkBool32, sparseResidencyAliased: VkBool32, variableMultisampleRate: VkBool32, inheritedQueries: VkBool32): VkPhysicalDeviceFeatures = + result.robustBufferAccess = robustBufferAccess + result.fullDrawIndexUint32 = fullDrawIndexUint32 + result.imageCubeArray = imageCubeArray + result.independentBlend = independentBlend + result.geometryShader = geometryShader + result.tessellationShader = tessellationShader + result.sampleRateShading = sampleRateShading + result.dualSrcBlend = dualSrcBlend + result.logicOp = logicOp + result.multiDrawIndirect = multiDrawIndirect + result.drawIndirectFirstInstance = drawIndirectFirstInstance + result.depthClamp = depthClamp + result.depthBiasClamp = depthBiasClamp + result.fillModeNonSolid = fillModeNonSolid + result.depthBounds = depthBounds + result.wideLines = wideLines + result.largePoints = largePoints + result.alphaToOne = alphaToOne + result.multiViewport = multiViewport + result.samplerAnisotropy = samplerAnisotropy + result.textureCompressionETC2 = textureCompressionETC2 + result.textureCompressionASTC_LDR = textureCompressionASTC_LDR + result.textureCompressionBC = textureCompressionBC + result.occlusionQueryPrecise = occlusionQueryPrecise + result.pipelineStatisticsQuery = pipelineStatisticsQuery + result.vertexPipelineStoresAndAtomics = vertexPipelineStoresAndAtomics + result.fragmentStoresAndAtomics = fragmentStoresAndAtomics + result.shaderTessellationAndGeometryPointSize = shaderTessellationAndGeometryPointSize + result.shaderImageGatherExtended = shaderImageGatherExtended + result.shaderStorageImageExtendedFormats = shaderStorageImageExtendedFormats + result.shaderStorageImageMultisample = shaderStorageImageMultisample + result.shaderStorageImageReadWithoutFormat = shaderStorageImageReadWithoutFormat + result.shaderStorageImageWriteWithoutFormat = shaderStorageImageWriteWithoutFormat + result.shaderUniformBufferArrayDynamicIndexing = shaderUniformBufferArrayDynamicIndexing + result.shaderSampledImageArrayDynamicIndexing = shaderSampledImageArrayDynamicIndexing + result.shaderStorageBufferArrayDynamicIndexing = shaderStorageBufferArrayDynamicIndexing + result.shaderStorageImageArrayDynamicIndexing = shaderStorageImageArrayDynamicIndexing + result.shaderClipDistance = shaderClipDistance + result.shaderCullDistance = shaderCullDistance + result.shaderFloat64 = shaderFloat64 + result.shaderInt64 = shaderInt64 + result.shaderInt16 = shaderInt16 + result.shaderResourceResidency = shaderResourceResidency + result.shaderResourceMinLod = shaderResourceMinLod + result.sparseBinding = sparseBinding + result.sparseResidencyBuffer = sparseResidencyBuffer + result.sparseResidencyImage2D = sparseResidencyImage2D + result.sparseResidencyImage3D = sparseResidencyImage3D + result.sparseResidency2Samples = sparseResidency2Samples + result.sparseResidency4Samples = sparseResidency4Samples + result.sparseResidency8Samples = sparseResidency8Samples + result.sparseResidency16Samples = sparseResidency16Samples + result.sparseResidencyAliased = sparseResidencyAliased + result.variableMultisampleRate = variableMultisampleRate + result.inheritedQueries = inheritedQueries + +proc newVkPhysicalDeviceSparseProperties*(residencyStandard2DBlockShape: VkBool32, residencyStandard2DMultisampleBlockShape: VkBool32, residencyStandard3DBlockShape: VkBool32, residencyAlignedMipSize: VkBool32, residencyNonResidentStrict: VkBool32): VkPhysicalDeviceSparseProperties = + result.residencyStandard2DBlockShape = residencyStandard2DBlockShape + result.residencyStandard2DMultisampleBlockShape = residencyStandard2DMultisampleBlockShape + result.residencyStandard3DBlockShape = residencyStandard3DBlockShape + result.residencyAlignedMipSize = residencyAlignedMipSize + result.residencyNonResidentStrict = residencyNonResidentStrict + +proc newVkPhysicalDeviceLimits*(maxImageDimension1D: uint32, maxImageDimension2D: uint32, maxImageDimension3D: uint32, maxImageDimensionCube: uint32, maxImageArrayLayers: uint32, maxTexelBufferElements: uint32, maxUniformBufferRange: uint32, maxStorageBufferRange: uint32, maxPushConstantsSize: uint32, maxMemoryAllocationCount: uint32, maxSamplerAllocationCount: uint32, bufferImageGranularity: VkDeviceSize, sparseAddressSpaceSize: VkDeviceSize, maxBoundDescriptorSets: uint32, maxPerStageDescriptorSamplers: uint32, maxPerStageDescriptorUniformBuffers: uint32, maxPerStageDescriptorStorageBuffers: uint32, maxPerStageDescriptorSampledImages: uint32, maxPerStageDescriptorStorageImages: uint32, maxPerStageDescriptorInputAttachments: uint32, maxPerStageResources: uint32, maxDescriptorSetSamplers: uint32, maxDescriptorSetUniformBuffers: uint32, maxDescriptorSetUniformBuffersDynamic: uint32, maxDescriptorSetStorageBuffers: uint32, maxDescriptorSetStorageBuffersDynamic: uint32, maxDescriptorSetSampledImages: uint32, maxDescriptorSetStorageImages: uint32, maxDescriptorSetInputAttachments: uint32, maxVertexInputAttributes: uint32, maxVertexInputBindings: uint32, maxVertexInputAttributeOffset: uint32, maxVertexInputBindingStride: uint32, maxVertexOutputComponents: uint32, maxTessellationGenerationLevel: uint32, maxTessellationPatchSize: uint32, maxTessellationControlPerVertexInputComponents: uint32, maxTessellationControlPerVertexOutputComponents: uint32, maxTessellationControlPerPatchOutputComponents: uint32, maxTessellationControlTotalOutputComponents: uint32, maxTessellationEvaluationInputComponents: uint32, maxTessellationEvaluationOutputComponents: uint32, maxGeometryShaderInvocations: uint32, maxGeometryInputComponents: uint32, maxGeometryOutputComponents: uint32, maxGeometryOutputVertices: uint32, maxGeometryTotalOutputComponents: uint32, maxFragmentInputComponents: uint32, maxFragmentOutputAttachments: uint32, maxFragmentDualSrcAttachments: uint32, maxFragmentCombinedOutputResources: uint32, maxComputeSharedMemorySize: uint32, maxComputeWorkGroupCount: array[3, uint32], maxComputeWorkGroupInvocations: uint32, maxComputeWorkGroupSize: array[3, uint32], subPixelPrecisionBits: uint32, subTexelPrecisionBits: uint32, mipmapPrecisionBits: uint32, maxDrawIndexedIndexValue: uint32, maxDrawIndirectCount: uint32, maxSamplerLodBias: float32, maxSamplerAnisotropy: float32, maxViewports: uint32, maxViewportDimensions: array[2, uint32], viewportBoundsRange: array[2, float32], viewportSubPixelBits: uint32, minMemoryMapAlignment: uint, minTexelBufferOffsetAlignment: VkDeviceSize, minUniformBufferOffsetAlignment: VkDeviceSize, minStorageBufferOffsetAlignment: VkDeviceSize, minTexelOffset: int32, maxTexelOffset: uint32, minTexelGatherOffset: int32, maxTexelGatherOffset: uint32, minInterpolationOffset: float32, maxInterpolationOffset: float32, subPixelInterpolationOffsetBits: uint32, maxFramebufferWidth: uint32, maxFramebufferHeight: uint32, maxFramebufferLayers: uint32, framebufferColorSampleCounts: VkSampleCountFlags, framebufferDepthSampleCounts: VkSampleCountFlags, framebufferStencilSampleCounts: VkSampleCountFlags, framebufferNoAttachmentsSampleCounts: VkSampleCountFlags, maxColorAttachments: uint32, sampledImageColorSampleCounts: VkSampleCountFlags, sampledImageIntegerSampleCounts: VkSampleCountFlags, sampledImageDepthSampleCounts: VkSampleCountFlags, sampledImageStencilSampleCounts: VkSampleCountFlags, storageImageSampleCounts: VkSampleCountFlags, maxSampleMaskWords: uint32, timestampComputeAndGraphics: VkBool32, timestampPeriod: float32, maxClipDistances: uint32, maxCullDistances: uint32, maxCombinedClipAndCullDistances: uint32, discreteQueuePriorities: uint32, pointSizeRange: array[2, float32], lineWidthRange: array[2, float32], pointSizeGranularity: float32, lineWidthGranularity: float32, strictLines: VkBool32, standardSampleLocations: VkBool32, optimalBufferCopyOffsetAlignment: VkDeviceSize, optimalBufferCopyRowPitchAlignment: VkDeviceSize, nonCoherentAtomSize: VkDeviceSize): VkPhysicalDeviceLimits = + result.maxImageDimension1D = maxImageDimension1D + result.maxImageDimension2D = maxImageDimension2D + result.maxImageDimension3D = maxImageDimension3D + result.maxImageDimensionCube = maxImageDimensionCube + result.maxImageArrayLayers = maxImageArrayLayers + result.maxTexelBufferElements = maxTexelBufferElements + result.maxUniformBufferRange = maxUniformBufferRange + result.maxStorageBufferRange = maxStorageBufferRange + result.maxPushConstantsSize = maxPushConstantsSize + result.maxMemoryAllocationCount = maxMemoryAllocationCount + result.maxSamplerAllocationCount = maxSamplerAllocationCount + result.bufferImageGranularity = bufferImageGranularity + result.sparseAddressSpaceSize = sparseAddressSpaceSize + result.maxBoundDescriptorSets = maxBoundDescriptorSets + result.maxPerStageDescriptorSamplers = maxPerStageDescriptorSamplers + result.maxPerStageDescriptorUniformBuffers = maxPerStageDescriptorUniformBuffers + result.maxPerStageDescriptorStorageBuffers = maxPerStageDescriptorStorageBuffers + result.maxPerStageDescriptorSampledImages = maxPerStageDescriptorSampledImages + result.maxPerStageDescriptorStorageImages = maxPerStageDescriptorStorageImages + result.maxPerStageDescriptorInputAttachments = maxPerStageDescriptorInputAttachments + result.maxPerStageResources = maxPerStageResources + result.maxDescriptorSetSamplers = maxDescriptorSetSamplers + result.maxDescriptorSetUniformBuffers = maxDescriptorSetUniformBuffers + result.maxDescriptorSetUniformBuffersDynamic = maxDescriptorSetUniformBuffersDynamic + result.maxDescriptorSetStorageBuffers = maxDescriptorSetStorageBuffers + result.maxDescriptorSetStorageBuffersDynamic = maxDescriptorSetStorageBuffersDynamic + result.maxDescriptorSetSampledImages = maxDescriptorSetSampledImages + result.maxDescriptorSetStorageImages = maxDescriptorSetStorageImages + result.maxDescriptorSetInputAttachments = maxDescriptorSetInputAttachments + result.maxVertexInputAttributes = maxVertexInputAttributes + result.maxVertexInputBindings = maxVertexInputBindings + result.maxVertexInputAttributeOffset = maxVertexInputAttributeOffset + result.maxVertexInputBindingStride = maxVertexInputBindingStride + result.maxVertexOutputComponents = maxVertexOutputComponents + result.maxTessellationGenerationLevel = maxTessellationGenerationLevel + result.maxTessellationPatchSize = maxTessellationPatchSize + result.maxTessellationControlPerVertexInputComponents = maxTessellationControlPerVertexInputComponents + result.maxTessellationControlPerVertexOutputComponents = maxTessellationControlPerVertexOutputComponents + result.maxTessellationControlPerPatchOutputComponents = maxTessellationControlPerPatchOutputComponents + result.maxTessellationControlTotalOutputComponents = maxTessellationControlTotalOutputComponents + result.maxTessellationEvaluationInputComponents = maxTessellationEvaluationInputComponents + result.maxTessellationEvaluationOutputComponents = maxTessellationEvaluationOutputComponents + result.maxGeometryShaderInvocations = maxGeometryShaderInvocations + result.maxGeometryInputComponents = maxGeometryInputComponents + result.maxGeometryOutputComponents = maxGeometryOutputComponents + result.maxGeometryOutputVertices = maxGeometryOutputVertices + result.maxGeometryTotalOutputComponents = maxGeometryTotalOutputComponents + result.maxFragmentInputComponents = maxFragmentInputComponents + result.maxFragmentOutputAttachments = maxFragmentOutputAttachments + result.maxFragmentDualSrcAttachments = maxFragmentDualSrcAttachments + result.maxFragmentCombinedOutputResources = maxFragmentCombinedOutputResources + result.maxComputeSharedMemorySize = maxComputeSharedMemorySize + result.maxComputeWorkGroupCount = maxComputeWorkGroupCount + result.maxComputeWorkGroupInvocations = maxComputeWorkGroupInvocations + result.maxComputeWorkGroupSize = maxComputeWorkGroupSize + result.subPixelPrecisionBits = subPixelPrecisionBits + result.subTexelPrecisionBits = subTexelPrecisionBits + result.mipmapPrecisionBits = mipmapPrecisionBits + result.maxDrawIndexedIndexValue = maxDrawIndexedIndexValue + result.maxDrawIndirectCount = maxDrawIndirectCount + result.maxSamplerLodBias = maxSamplerLodBias + result.maxSamplerAnisotropy = maxSamplerAnisotropy + result.maxViewports = maxViewports + result.maxViewportDimensions = maxViewportDimensions + result.viewportBoundsRange = viewportBoundsRange + result.viewportSubPixelBits = viewportSubPixelBits + result.minMemoryMapAlignment = minMemoryMapAlignment + result.minTexelBufferOffsetAlignment = minTexelBufferOffsetAlignment + result.minUniformBufferOffsetAlignment = minUniformBufferOffsetAlignment + result.minStorageBufferOffsetAlignment = minStorageBufferOffsetAlignment + result.minTexelOffset = minTexelOffset + result.maxTexelOffset = maxTexelOffset + result.minTexelGatherOffset = minTexelGatherOffset + result.maxTexelGatherOffset = maxTexelGatherOffset + result.minInterpolationOffset = minInterpolationOffset + result.maxInterpolationOffset = maxInterpolationOffset + result.subPixelInterpolationOffsetBits = subPixelInterpolationOffsetBits + result.maxFramebufferWidth = maxFramebufferWidth + result.maxFramebufferHeight = maxFramebufferHeight + result.maxFramebufferLayers = maxFramebufferLayers + result.framebufferColorSampleCounts = framebufferColorSampleCounts + result.framebufferDepthSampleCounts = framebufferDepthSampleCounts + result.framebufferStencilSampleCounts = framebufferStencilSampleCounts + result.framebufferNoAttachmentsSampleCounts = framebufferNoAttachmentsSampleCounts + result.maxColorAttachments = maxColorAttachments + result.sampledImageColorSampleCounts = sampledImageColorSampleCounts + result.sampledImageIntegerSampleCounts = sampledImageIntegerSampleCounts + result.sampledImageDepthSampleCounts = sampledImageDepthSampleCounts result.sampledImageStencilSampleCounts = sampledImageStencilSampleCounts result.storageImageSampleCounts = storageImageSampleCounts result.maxSampleMaskWords = maxSampleMaskWords @@ -6681,3141 +11357,6787 @@ proc newVkPhysicalDeviceLimits*(maxImageDimension1D: uint32, maxImageDimension2D result.optimalBufferCopyRowPitchAlignment = optimalBufferCopyRowPitchAlignment result.nonCoherentAtomSize = nonCoherentAtomSize -proc newVkSemaphoreCreateInfo*(sType: VkStructureType = VkStructureTypeSemaphoreCreateInfo, pNext: pointer = nil, flags: VkSemaphoreCreateFlags = 0.VkSemaphoreCreateFlags): VkSemaphoreCreateInfo = +proc newVkSemaphoreCreateInfo*(sType: VkStructureType = VkStructureTypeSemaphoreCreateInfo, pNext: pointer = nil, flags: VkSemaphoreCreateFlags = 0.VkSemaphoreCreateFlags): VkSemaphoreCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + +proc newVkQueryPoolCreateInfo*(sType: VkStructureType = VkStructureTypeQueryPoolCreateInfo, pNext: pointer = nil, flags: VkQueryPoolCreateFlags = 0.VkQueryPoolCreateFlags, queryType: VkQueryType, queryCount: uint32, pipelineStatistics: VkQueryPipelineStatisticFlags): VkQueryPoolCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.queryType = queryType + result.queryCount = queryCount + result.pipelineStatistics = pipelineStatistics + +proc newVkFramebufferCreateInfo*(sType: VkStructureType = VkStructureTypeFramebufferCreateInfo, pNext: pointer = nil, flags: VkFramebufferCreateFlags = 0.VkFramebufferCreateFlags, renderPass: VkRenderPass, attachmentCount: uint32, pAttachments: ptr VkImageView, width: uint32, height: uint32, layers: uint32): VkFramebufferCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.renderPass = renderPass + result.attachmentCount = attachmentCount + result.pAttachments = pAttachments + result.width = width + result.height = height + result.layers = layers + +proc newVkDrawIndirectCommand*(vertexCount: uint32, instanceCount: uint32, firstVertex: uint32, firstInstance: uint32): VkDrawIndirectCommand = + result.vertexCount = vertexCount + result.instanceCount = instanceCount + result.firstVertex = firstVertex + result.firstInstance = firstInstance + +proc newVkDrawIndexedIndirectCommand*(indexCount: uint32, instanceCount: uint32, firstIndex: uint32, vertexOffset: int32, firstInstance: uint32): VkDrawIndexedIndirectCommand = + result.indexCount = indexCount + result.instanceCount = instanceCount + result.firstIndex = firstIndex + result.vertexOffset = vertexOffset + result.firstInstance = firstInstance + +proc newVkDispatchIndirectCommand*(x: uint32, y: uint32, z: uint32): VkDispatchIndirectCommand = + result.x = x + result.y = y + result.z = z + +proc newVkMultiDrawInfoEXT*(firstVertex: uint32, vertexCount: uint32): VkMultiDrawInfoEXT = + result.firstVertex = firstVertex + result.vertexCount = vertexCount + +proc newVkMultiDrawIndexedInfoEXT*(firstIndex: uint32, indexCount: uint32, vertexOffset: int32): VkMultiDrawIndexedInfoEXT = + result.firstIndex = firstIndex + result.indexCount = indexCount + result.vertexOffset = vertexOffset + +proc newVkSubmitInfo*(sType: VkStructureType = VkStructureTypeSubmitInfo, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, pWaitDstStageMask: ptr VkPipelineStageFlags, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer, signalSemaphoreCount: uint32, pSignalSemaphores: ptr VkSemaphore): VkSubmitInfo = + result.sType = sType + result.pNext = pNext + result.waitSemaphoreCount = waitSemaphoreCount + result.pWaitSemaphores = pWaitSemaphores + result.pWaitDstStageMask = pWaitDstStageMask + result.commandBufferCount = commandBufferCount + result.pCommandBuffers = pCommandBuffers + result.signalSemaphoreCount = signalSemaphoreCount + result.pSignalSemaphores = pSignalSemaphores + +proc newVkDisplayPropertiesKHR*(display: VkDisplayKHR, displayName: cstring, physicalDimensions: VkExtent2D, physicalResolution: VkExtent2D, supportedTransforms: VkSurfaceTransformFlagsKHR, planeReorderPossible: VkBool32, persistentContent: VkBool32): VkDisplayPropertiesKHR = + result.display = display + result.displayName = displayName + result.physicalDimensions = physicalDimensions + result.physicalResolution = physicalResolution + result.supportedTransforms = supportedTransforms + result.planeReorderPossible = planeReorderPossible + result.persistentContent = persistentContent + +proc newVkDisplayPlanePropertiesKHR*(currentDisplay: VkDisplayKHR, currentStackIndex: uint32): VkDisplayPlanePropertiesKHR = + result.currentDisplay = currentDisplay + result.currentStackIndex = currentStackIndex + +proc newVkDisplayModeParametersKHR*(visibleRegion: VkExtent2D, refreshRate: uint32): VkDisplayModeParametersKHR = + result.visibleRegion = visibleRegion + result.refreshRate = refreshRate + +proc newVkDisplayModePropertiesKHR*(displayMode: VkDisplayModeKHR, parameters: VkDisplayModeParametersKHR): VkDisplayModePropertiesKHR = + result.displayMode = displayMode + result.parameters = parameters + +proc newVkDisplayModeCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkDisplayModeCreateFlagsKHR = 0.VkDisplayModeCreateFlagsKHR, parameters: VkDisplayModeParametersKHR): VkDisplayModeCreateInfoKHR = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.parameters = parameters + +proc newVkDisplayPlaneCapabilitiesKHR*(supportedAlpha: VkDisplayPlaneAlphaFlagsKHR, minSrcPosition: VkOffset2D, maxSrcPosition: VkOffset2D, minSrcExtent: VkExtent2D, maxSrcExtent: VkExtent2D, minDstPosition: VkOffset2D, maxDstPosition: VkOffset2D, minDstExtent: VkExtent2D, maxDstExtent: VkExtent2D): VkDisplayPlaneCapabilitiesKHR = + result.supportedAlpha = supportedAlpha + result.minSrcPosition = minSrcPosition + result.maxSrcPosition = maxSrcPosition + result.minSrcExtent = minSrcExtent + result.maxSrcExtent = maxSrcExtent + result.minDstPosition = minDstPosition + result.maxDstPosition = maxDstPosition + result.minDstExtent = minDstExtent + result.maxDstExtent = maxDstExtent + +proc newVkDisplaySurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkDisplaySurfaceCreateFlagsKHR = 0.VkDisplaySurfaceCreateFlagsKHR, displayMode: VkDisplayModeKHR, planeIndex: uint32, planeStackIndex: uint32, transform: VkSurfaceTransformFlagBitsKHR, globalAlpha: float32, alphaMode: VkDisplayPlaneAlphaFlagBitsKHR, imageExtent: VkExtent2D): VkDisplaySurfaceCreateInfoKHR = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.displayMode = displayMode + result.planeIndex = planeIndex + result.planeStackIndex = planeStackIndex + result.transform = transform + result.globalAlpha = globalAlpha + result.alphaMode = alphaMode + result.imageExtent = imageExtent + +proc newVkDisplayPresentInfoKHR*(sType: VkStructureType, pNext: pointer = nil, srcRect: VkRect2D, dstRect: VkRect2D, persistent: VkBool32): VkDisplayPresentInfoKHR = + result.sType = sType + result.pNext = pNext + result.srcRect = srcRect + result.dstRect = dstRect + result.persistent = persistent + +proc newVkSurfaceCapabilitiesKHR*(minImageCount: uint32, maxImageCount: uint32, currentExtent: VkExtent2D, minImageExtent: VkExtent2D, maxImageExtent: VkExtent2D, maxImageArrayLayers: uint32, supportedTransforms: VkSurfaceTransformFlagsKHR, currentTransform: VkSurfaceTransformFlagBitsKHR, supportedCompositeAlpha: VkCompositeAlphaFlagsKHR, supportedUsageFlags: VkImageUsageFlags): VkSurfaceCapabilitiesKHR = + result.minImageCount = minImageCount + result.maxImageCount = maxImageCount + result.currentExtent = currentExtent + result.minImageExtent = minImageExtent + result.maxImageExtent = maxImageExtent + result.maxImageArrayLayers = maxImageArrayLayers + result.supportedTransforms = supportedTransforms + result.currentTransform = currentTransform + result.supportedCompositeAlpha = supportedCompositeAlpha + result.supportedUsageFlags = supportedUsageFlags + +proc newVkAndroidSurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkAndroidSurfaceCreateFlagsKHR = 0.VkAndroidSurfaceCreateFlagsKHR, window: ptr ANativeWindow): VkAndroidSurfaceCreateInfoKHR = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.window = window + +proc newVkViSurfaceCreateInfoNN*(sType: VkStructureType, pNext: pointer = nil, flags: VkViSurfaceCreateFlagsNN = 0.VkViSurfaceCreateFlagsNN, window: pointer = nil): VkViSurfaceCreateInfoNN = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.window = window + +proc newVkWaylandSurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkWaylandSurfaceCreateFlagsKHR = 0.VkWaylandSurfaceCreateFlagsKHR, display: ptr wl_display, surface: ptr wl_surface): VkWaylandSurfaceCreateInfoKHR = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.display = display + result.surface = surface + +proc newVkWin32SurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkWin32SurfaceCreateFlagsKHR = 0.VkWin32SurfaceCreateFlagsKHR, hinstance: HINSTANCE, hwnd: HWND): VkWin32SurfaceCreateInfoKHR = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.hinstance = hinstance + result.hwnd = hwnd + +proc newVkXlibSurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkXlibSurfaceCreateFlagsKHR = 0.VkXlibSurfaceCreateFlagsKHR, dpy: ptr Display, window: Window): VkXlibSurfaceCreateInfoKHR = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.dpy = dpy + result.window = window + +proc newVkXcbSurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkXcbSurfaceCreateFlagsKHR = 0.VkXcbSurfaceCreateFlagsKHR, connection: ptr xcb_connection_t, window: xcb_window_t): VkXcbSurfaceCreateInfoKHR = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.connection = connection + result.window = window + +proc newVkDirectFBSurfaceCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkDirectFBSurfaceCreateFlagsEXT = 0.VkDirectFBSurfaceCreateFlagsEXT, dfb: ptr IDirectFB, surface: ptr IDirectFBSurface): VkDirectFBSurfaceCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.dfb = dfb + result.surface = surface + +proc newVkImagePipeSurfaceCreateInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, flags: VkImagePipeSurfaceCreateFlagsFUCHSIA = 0.VkImagePipeSurfaceCreateFlagsFUCHSIA, imagePipeHandle: zx_handle_t): VkImagePipeSurfaceCreateInfoFUCHSIA = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.imagePipeHandle = imagePipeHandle + +proc newVkStreamDescriptorSurfaceCreateInfoGGP*(sType: VkStructureType, pNext: pointer = nil, flags: VkStreamDescriptorSurfaceCreateFlagsGGP = 0.VkStreamDescriptorSurfaceCreateFlagsGGP, streamDescriptor: GgpStreamDescriptor): VkStreamDescriptorSurfaceCreateInfoGGP = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.streamDescriptor = streamDescriptor + +proc newVkScreenSurfaceCreateInfoQNX*(sType: VkStructureType, pNext: pointer = nil, flags: VkScreenSurfaceCreateFlagsQNX = 0.VkScreenSurfaceCreateFlagsQNX, context: ptr _screen_context, window: ptr _screen_window): VkScreenSurfaceCreateInfoQNX = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.context = context + result.window = window + +proc newVkSurfaceFormatKHR*(format: VkFormat, colorSpace: VkColorSpaceKHR): VkSurfaceFormatKHR = + result.format = format + result.colorSpace = colorSpace + +proc newVkSwapchainCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkSwapchainCreateFlagsKHR = 0.VkSwapchainCreateFlagsKHR, surface: VkSurfaceKHR, minImageCount: uint32, imageFormat: VkFormat, imageColorSpace: VkColorSpaceKHR, imageExtent: VkExtent2D, imageArrayLayers: uint32, imageUsage: VkImageUsageFlags, imageSharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32, preTransform: VkSurfaceTransformFlagBitsKHR, compositeAlpha: VkCompositeAlphaFlagBitsKHR, presentMode: VkPresentModeKHR, clipped: VkBool32, oldSwapchain: VkSwapchainKHR, oldSwapchain: VkSwapchainKHR): VkSwapchainCreateInfoKHR = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.surface = surface + result.minImageCount = minImageCount + result.imageFormat = imageFormat + result.imageColorSpace = imageColorSpace + result.imageExtent = imageExtent + result.imageArrayLayers = imageArrayLayers + result.imageUsage = imageUsage + result.imageSharingMode = imageSharingMode + result.queueFamilyIndexCount = queueFamilyIndexCount + result.pQueueFamilyIndices = pQueueFamilyIndices + result.preTransform = preTransform + result.compositeAlpha = compositeAlpha + result.presentMode = presentMode + result.clipped = clipped + result.oldSwapchain = oldSwapchain + result.oldSwapchain = oldSwapchain + +proc newVkPresentInfoKHR*(sType: VkStructureType, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, swapchainCount: uint32, pSwapchains: ptr VkSwapchainKHR, pImageIndices: ptr uint32, pResults: ptr VkResult): VkPresentInfoKHR = + result.sType = sType + result.pNext = pNext + result.waitSemaphoreCount = waitSemaphoreCount + result.pWaitSemaphores = pWaitSemaphores + result.swapchainCount = swapchainCount + result.pSwapchains = pSwapchains + result.pImageIndices = pImageIndices + result.pResults = pResults + +proc newVkDebugReportCallbackCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkDebugReportFlagsEXT = 0.VkDebugReportFlagsEXT, pfnCallback: PFN_vkDebugReportCallbackEXT, pUserData: pointer = nil): VkDebugReportCallbackCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.pfnCallback = pfnCallback + result.pUserData = pUserData + +proc newVkValidationFlagsEXT*(sType: VkStructureType, pNext: pointer = nil, disabledValidationCheckCount: uint32, pDisabledValidationChecks: ptr VkValidationCheckEXT): VkValidationFlagsEXT = + result.sType = sType + result.pNext = pNext + result.disabledValidationCheckCount = disabledValidationCheckCount + result.pDisabledValidationChecks = pDisabledValidationChecks + +proc newVkValidationFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, enabledValidationFeatureCount: uint32, pEnabledValidationFeatures: ptr VkValidationFeatureEnableEXT, disabledValidationFeatureCount: uint32, pDisabledValidationFeatures: ptr VkValidationFeatureDisableEXT): VkValidationFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.enabledValidationFeatureCount = enabledValidationFeatureCount + result.pEnabledValidationFeatures = pEnabledValidationFeatures + result.disabledValidationFeatureCount = disabledValidationFeatureCount + result.pDisabledValidationFeatures = pDisabledValidationFeatures + +proc newVkLayerSettingsCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, settingCount: uint32, pSettings: ptr VkLayerSettingEXT): VkLayerSettingsCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.settingCount = settingCount + result.pSettings = pSettings + +proc newVkLayerSettingEXT*(pLayerName: cstring, pSettingName: cstring, `type`: VkLayerSettingTypeEXT, valueCount: uint32, pValues: pointer = nil): VkLayerSettingEXT = + result.pLayerName = pLayerName + result.pSettingName = pSettingName + result.`type` = `type` + result.valueCount = valueCount + result.pValues = pValues + +proc newVkApplicationParametersEXT*(sType: VkStructureType, pNext: pointer = nil, vendorID: uint32, deviceID: uint32, key: uint32, value: uint64): VkApplicationParametersEXT = + result.sType = sType + result.pNext = pNext + result.vendorID = vendorID + result.deviceID = deviceID + result.key = key + result.value = value + +proc newVkPipelineRasterizationStateRasterizationOrderAMD*(sType: VkStructureType, pNext: pointer = nil, rasterizationOrder: VkRasterizationOrderAMD): VkPipelineRasterizationStateRasterizationOrderAMD = + result.sType = sType + result.pNext = pNext + result.rasterizationOrder = rasterizationOrder + +proc newVkDebugMarkerObjectNameInfoEXT*(sType: VkStructureType, pNext: pointer = nil, objectType: VkDebugReportObjectTypeEXT, `object`: uint64, pObjectName: cstring): VkDebugMarkerObjectNameInfoEXT = + result.sType = sType + result.pNext = pNext + result.objectType = objectType + result.`object` = `object` + result.pObjectName = pObjectName + +proc newVkDebugMarkerObjectTagInfoEXT*(sType: VkStructureType, pNext: pointer = nil, objectType: VkDebugReportObjectTypeEXT, `object`: uint64, tagName: uint64, tagSize: uint, pTag: pointer = nil): VkDebugMarkerObjectTagInfoEXT = + result.sType = sType + result.pNext = pNext + result.objectType = objectType + result.`object` = `object` + result.tagName = tagName + result.tagSize = tagSize + result.pTag = pTag + +proc newVkDebugMarkerMarkerInfoEXT*(sType: VkStructureType, pNext: pointer = nil, pMarkerName: cstring, color: array[4, float32]): VkDebugMarkerMarkerInfoEXT = + result.sType = sType + result.pNext = pNext + result.pMarkerName = pMarkerName + result.color = color + +proc newVkDedicatedAllocationImageCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, dedicatedAllocation: VkBool32): VkDedicatedAllocationImageCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.dedicatedAllocation = dedicatedAllocation + +proc newVkDedicatedAllocationBufferCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, dedicatedAllocation: VkBool32): VkDedicatedAllocationBufferCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.dedicatedAllocation = dedicatedAllocation + +proc newVkDedicatedAllocationMemoryAllocateInfoNV*(sType: VkStructureType, pNext: pointer = nil, image: VkImage, buffer: VkBuffer): VkDedicatedAllocationMemoryAllocateInfoNV = + result.sType = sType + result.pNext = pNext + result.image = image + result.buffer = buffer + +proc newVkExternalImageFormatPropertiesNV*(imageFormatProperties: VkImageFormatProperties, externalMemoryFeatures: VkExternalMemoryFeatureFlagsNV, exportFromImportedHandleTypes: VkExternalMemoryHandleTypeFlagsNV, compatibleHandleTypes: VkExternalMemoryHandleTypeFlagsNV): VkExternalImageFormatPropertiesNV = + result.imageFormatProperties = imageFormatProperties + result.externalMemoryFeatures = externalMemoryFeatures + result.exportFromImportedHandleTypes = exportFromImportedHandleTypes + result.compatibleHandleTypes = compatibleHandleTypes + +proc newVkExternalMemoryImageCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlagsNV): VkExternalMemoryImageCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.handleTypes = handleTypes + +proc newVkExportMemoryAllocateInfoNV*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlagsNV): VkExportMemoryAllocateInfoNV = + result.sType = sType + result.pNext = pNext + result.handleTypes = handleTypes + +proc newVkImportMemoryWin32HandleInfoNV*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagsNV, handle: HANDLE): VkImportMemoryWin32HandleInfoNV = + result.sType = sType + result.pNext = pNext + result.handleType = handleType + result.handle = handle + +proc newVkExportMemoryWin32HandleInfoNV*(sType: VkStructureType, pNext: pointer = nil, pAttributes: ptr SECURITY_ATTRIBUTES, dwAccess: DWORD): VkExportMemoryWin32HandleInfoNV = + result.sType = sType + result.pNext = pNext + result.pAttributes = pAttributes + result.dwAccess = dwAccess + +proc newVkExportMemorySciBufInfoNV*(sType: VkStructureType, pNext: pointer = nil, pAttributes: NvSciBufAttrList): VkExportMemorySciBufInfoNV = + result.sType = sType + result.pNext = pNext + result.pAttributes = pAttributes + +proc newVkImportMemorySciBufInfoNV*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, handle: NvSciBufObj): VkImportMemorySciBufInfoNV = + result.sType = sType + result.pNext = pNext + result.handleType = handleType + result.handle = handle + +proc newVkMemoryGetSciBufInfoNV*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetSciBufInfoNV = + result.sType = sType + result.pNext = pNext + result.memory = memory + result.handleType = handleType + +proc newVkMemorySciBufPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, memoryTypeBits: uint32): VkMemorySciBufPropertiesNV = + result.sType = sType + result.pNext = pNext + result.memoryTypeBits = memoryTypeBits + +proc newVkPhysicalDeviceExternalMemorySciBufFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, sciBufImport: VkBool32, sciBufExport: VkBool32): VkPhysicalDeviceExternalMemorySciBufFeaturesNV = + result.sType = sType + result.pNext = pNext + result.sciBufImport = sciBufImport + result.sciBufExport = sciBufExport + +proc newVkWin32KeyedMutexAcquireReleaseInfoNV*(sType: VkStructureType, pNext: pointer = nil, acquireCount: uint32, pAcquireSyncs: ptr VkDeviceMemory, pAcquireKeys: ptr uint64, pAcquireTimeoutMilliseconds: ptr uint32, releaseCount: uint32, pReleaseSyncs: ptr VkDeviceMemory, pReleaseKeys: ptr uint64): VkWin32KeyedMutexAcquireReleaseInfoNV = + result.sType = sType + result.pNext = pNext + result.acquireCount = acquireCount + result.pAcquireSyncs = pAcquireSyncs + result.pAcquireKeys = pAcquireKeys + result.pAcquireTimeoutMilliseconds = pAcquireTimeoutMilliseconds + result.releaseCount = releaseCount + result.pReleaseSyncs = pReleaseSyncs + result.pReleaseKeys = pReleaseKeys + +proc newVkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, deviceGeneratedCommands: VkBool32): VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV = + result.sType = sType + result.pNext = pNext + result.deviceGeneratedCommands = deviceGeneratedCommands + +proc newVkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, deviceGeneratedCompute: VkBool32, deviceGeneratedComputePipelines: VkBool32, deviceGeneratedComputeCaptureReplay: VkBool32): VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV = + result.sType = sType + result.pNext = pNext + result.deviceGeneratedCompute = deviceGeneratedCompute + result.deviceGeneratedComputePipelines = deviceGeneratedComputePipelines + result.deviceGeneratedComputeCaptureReplay = deviceGeneratedComputeCaptureReplay + +proc newVkDevicePrivateDataCreateInfo*(sType: VkStructureType, pNext: pointer = nil, privateDataSlotRequestCount: uint32): VkDevicePrivateDataCreateInfo = + result.sType = sType + result.pNext = pNext + result.privateDataSlotRequestCount = privateDataSlotRequestCount + +proc newVkPrivateDataSlotCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPrivateDataSlotCreateFlags = 0.VkPrivateDataSlotCreateFlags): VkPrivateDataSlotCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + +proc newVkPhysicalDevicePrivateDataFeatures*(sType: VkStructureType, pNext: pointer = nil, privateData: VkBool32): VkPhysicalDevicePrivateDataFeatures = + result.sType = sType + result.pNext = pNext + result.privateData = privateData + +proc newVkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, maxGraphicsShaderGroupCount: uint32, maxIndirectSequenceCount: uint32, maxIndirectCommandsTokenCount: uint32, maxIndirectCommandsStreamCount: uint32, maxIndirectCommandsTokenOffset: uint32, maxIndirectCommandsStreamStride: uint32, minSequencesCountBufferOffsetAlignment: uint32, minSequencesIndexBufferOffsetAlignment: uint32, minIndirectCommandsBufferOffsetAlignment: uint32): VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV = + result.sType = sType + result.pNext = pNext + result.maxGraphicsShaderGroupCount = maxGraphicsShaderGroupCount + result.maxIndirectSequenceCount = maxIndirectSequenceCount + result.maxIndirectCommandsTokenCount = maxIndirectCommandsTokenCount + result.maxIndirectCommandsStreamCount = maxIndirectCommandsStreamCount + result.maxIndirectCommandsTokenOffset = maxIndirectCommandsTokenOffset + result.maxIndirectCommandsStreamStride = maxIndirectCommandsStreamStride + result.minSequencesCountBufferOffsetAlignment = minSequencesCountBufferOffsetAlignment + result.minSequencesIndexBufferOffsetAlignment = minSequencesIndexBufferOffsetAlignment + result.minIndirectCommandsBufferOffsetAlignment = minIndirectCommandsBufferOffsetAlignment + +proc newVkPhysicalDeviceMultiDrawPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxMultiDrawCount: uint32): VkPhysicalDeviceMultiDrawPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.maxMultiDrawCount = maxMultiDrawCount + +proc newVkGraphicsShaderGroupCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, pVertexInputState: ptr VkPipelineVertexInputStateCreateInfo, pTessellationState: ptr VkPipelineTessellationStateCreateInfo): VkGraphicsShaderGroupCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.stageCount = stageCount + result.pStages = pStages + result.pVertexInputState = pVertexInputState + result.pTessellationState = pTessellationState + +proc newVkGraphicsPipelineShaderGroupsCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, groupCount: uint32, pGroups: ptr VkGraphicsShaderGroupCreateInfoNV, pipelineCount: uint32, pPipelines: ptr VkPipeline): VkGraphicsPipelineShaderGroupsCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.groupCount = groupCount + result.pGroups = pGroups + result.pipelineCount = pipelineCount + result.pPipelines = pPipelines + +proc newVkBindShaderGroupIndirectCommandNV*(groupIndex: uint32): VkBindShaderGroupIndirectCommandNV = + result.groupIndex = groupIndex + +proc newVkBindIndexBufferIndirectCommandNV*(bufferAddress: VkDeviceAddress, size: uint32, indexType: VkIndexType): VkBindIndexBufferIndirectCommandNV = + result.bufferAddress = bufferAddress + result.size = size + result.indexType = indexType + +proc newVkBindVertexBufferIndirectCommandNV*(bufferAddress: VkDeviceAddress, size: uint32, stride: uint32): VkBindVertexBufferIndirectCommandNV = + result.bufferAddress = bufferAddress + result.size = size + result.stride = stride + +proc newVkSetStateFlagsIndirectCommandNV*(data: uint32): VkSetStateFlagsIndirectCommandNV = + result.data = data + +proc newVkIndirectCommandsStreamNV*(buffer: VkBuffer, offset: VkDeviceSize): VkIndirectCommandsStreamNV = + result.buffer = buffer + result.offset = offset + +proc newVkIndirectCommandsLayoutTokenNV*(sType: VkStructureType, pNext: pointer = nil, tokenType: VkIndirectCommandsTokenTypeNV, stream: uint32, offset: uint32, vertexBindingUnit: uint32, vertexDynamicStride: VkBool32, pushconstantPipelineLayout: VkPipelineLayout, pushconstantShaderStageFlags: VkShaderStageFlags, pushconstantOffset: uint32, pushconstantSize: uint32, indirectStateFlags: VkIndirectStateFlagsNV, indexTypeCount: uint32, pIndexTypes: ptr VkIndexType, pIndexTypeValues: ptr uint32): VkIndirectCommandsLayoutTokenNV = + result.sType = sType + result.pNext = pNext + result.tokenType = tokenType + result.stream = stream + result.offset = offset + result.vertexBindingUnit = vertexBindingUnit + result.vertexDynamicStride = vertexDynamicStride + result.pushconstantPipelineLayout = pushconstantPipelineLayout + result.pushconstantShaderStageFlags = pushconstantShaderStageFlags + result.pushconstantOffset = pushconstantOffset + result.pushconstantSize = pushconstantSize + result.indirectStateFlags = indirectStateFlags + result.indexTypeCount = indexTypeCount + result.pIndexTypes = pIndexTypes + result.pIndexTypeValues = pIndexTypeValues + +proc newVkIndirectCommandsLayoutCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkIndirectCommandsLayoutUsageFlagsNV = 0.VkIndirectCommandsLayoutUsageFlagsNV, pipelineBindPoint: VkPipelineBindPoint, tokenCount: uint32, pTokens: ptr VkIndirectCommandsLayoutTokenNV, streamCount: uint32, pStreamStrides: ptr uint32): VkIndirectCommandsLayoutCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.pipelineBindPoint = pipelineBindPoint + result.tokenCount = tokenCount + result.pTokens = pTokens + result.streamCount = streamCount + result.pStreamStrides = pStreamStrides + +proc newVkGeneratedCommandsInfoNV*(sType: VkStructureType, pNext: pointer = nil, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline, indirectCommandsLayout: VkIndirectCommandsLayoutNV, streamCount: uint32, pStreams: ptr VkIndirectCommandsStreamNV, sequencesCount: uint32, preprocessBuffer: VkBuffer, preprocessOffset: VkDeviceSize, preprocessSize: VkDeviceSize, sequencesCountBuffer: VkBuffer, sequencesCountOffset: VkDeviceSize, sequencesIndexBuffer: VkBuffer, sequencesIndexOffset: VkDeviceSize): VkGeneratedCommandsInfoNV = + result.sType = sType + result.pNext = pNext + result.pipelineBindPoint = pipelineBindPoint + result.pipeline = pipeline + result.indirectCommandsLayout = indirectCommandsLayout + result.streamCount = streamCount + result.pStreams = pStreams + result.sequencesCount = sequencesCount + result.preprocessBuffer = preprocessBuffer + result.preprocessOffset = preprocessOffset + result.preprocessSize = preprocessSize + result.sequencesCountBuffer = sequencesCountBuffer + result.sequencesCountOffset = sequencesCountOffset + result.sequencesIndexBuffer = sequencesIndexBuffer + result.sequencesIndexOffset = sequencesIndexOffset + +proc newVkGeneratedCommandsMemoryRequirementsInfoNV*(sType: VkStructureType, pNext: pointer = nil, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline, indirectCommandsLayout: VkIndirectCommandsLayoutNV, maxSequencesCount: uint32): VkGeneratedCommandsMemoryRequirementsInfoNV = + result.sType = sType + result.pNext = pNext + result.pipelineBindPoint = pipelineBindPoint + result.pipeline = pipeline + result.indirectCommandsLayout = indirectCommandsLayout + result.maxSequencesCount = maxSequencesCount + +proc newVkPipelineIndirectDeviceAddressInfoNV*(sType: VkStructureType, pNext: pointer = nil, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline): VkPipelineIndirectDeviceAddressInfoNV = + result.sType = sType + result.pNext = pNext + result.pipelineBindPoint = pipelineBindPoint + result.pipeline = pipeline + +proc newVkBindPipelineIndirectCommandNV*(pipelineAddress: VkDeviceAddress): VkBindPipelineIndirectCommandNV = + result.pipelineAddress = pipelineAddress + +proc newVkPhysicalDeviceFeatures2*(sType: VkStructureType, pNext: pointer = nil, features: VkPhysicalDeviceFeatures): VkPhysicalDeviceFeatures2 = + result.sType = sType + result.pNext = pNext + result.features = features + +proc newVkPhysicalDeviceProperties2*(sType: VkStructureType, pNext: pointer = nil, properties: VkPhysicalDeviceProperties): VkPhysicalDeviceProperties2 = + result.sType = sType + result.pNext = pNext + result.properties = properties + +proc newVkFormatProperties2*(sType: VkStructureType, pNext: pointer = nil, formatProperties: VkFormatProperties): VkFormatProperties2 = + result.sType = sType + result.pNext = pNext + result.formatProperties = formatProperties + +proc newVkImageFormatProperties2*(sType: VkStructureType, pNext: pointer = nil, imageFormatProperties: VkImageFormatProperties): VkImageFormatProperties2 = + result.sType = sType + result.pNext = pNext + result.imageFormatProperties = imageFormatProperties + +proc newVkPhysicalDeviceImageFormatInfo2*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat, `type`: VkImageType, tiling: VkImageTiling, usage: VkImageUsageFlags, flags: VkImageCreateFlags = 0.VkImageCreateFlags): VkPhysicalDeviceImageFormatInfo2 = + result.sType = sType + result.pNext = pNext + result.format = format + result.`type` = `type` + result.tiling = tiling + result.usage = usage + result.flags = flags + +proc newVkQueueFamilyProperties2*(sType: VkStructureType, pNext: pointer = nil, queueFamilyProperties: VkQueueFamilyProperties): VkQueueFamilyProperties2 = + result.sType = sType + result.pNext = pNext + result.queueFamilyProperties = queueFamilyProperties + +proc newVkPhysicalDeviceMemoryProperties2*(sType: VkStructureType, pNext: pointer = nil, memoryProperties: VkPhysicalDeviceMemoryProperties): VkPhysicalDeviceMemoryProperties2 = + result.sType = sType + result.pNext = pNext + result.memoryProperties = memoryProperties + +proc newVkSparseImageFormatProperties2*(sType: VkStructureType, pNext: pointer = nil, properties: VkSparseImageFormatProperties): VkSparseImageFormatProperties2 = + result.sType = sType + result.pNext = pNext + result.properties = properties + +proc newVkPhysicalDeviceSparseImageFormatInfo2*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat, `type`: VkImageType, samples: VkSampleCountFlagBits, usage: VkImageUsageFlags, tiling: VkImageTiling): VkPhysicalDeviceSparseImageFormatInfo2 = + result.sType = sType + result.pNext = pNext + result.format = format + result.`type` = `type` + result.samples = samples + result.usage = usage + result.tiling = tiling + +proc newVkPhysicalDevicePushDescriptorPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, maxPushDescriptors: uint32): VkPhysicalDevicePushDescriptorPropertiesKHR = + result.sType = sType + result.pNext = pNext + result.maxPushDescriptors = maxPushDescriptors + +proc newVkConformanceVersion*(major: uint8, minor: uint8, subminor: uint8, patch: uint8): VkConformanceVersion = + result.major = major + result.minor = minor + result.subminor = subminor + result.patch = patch + +proc newVkPhysicalDeviceDriverProperties*(sType: VkStructureType, pNext: pointer = nil, driverID: VkDriverId, driverName: array[VK_MAX_DRIVER_NAME_SIZE, char], driverInfo: array[VK_MAX_DRIVER_INFO_SIZE, char], conformanceVersion: VkConformanceVersion): VkPhysicalDeviceDriverProperties = + result.sType = sType + result.pNext = pNext + result.driverID = driverID + result.driverName = driverName + result.driverInfo = driverInfo + result.conformanceVersion = conformanceVersion + +proc newVkPresentRegionsKHR*(sType: VkStructureType, pNext: pointer = nil, swapchainCount: uint32, pRegions: ptr VkPresentRegionKHR): VkPresentRegionsKHR = + result.sType = sType + result.pNext = pNext + result.swapchainCount = swapchainCount + result.pRegions = pRegions + +proc newVkPresentRegionKHR*(rectangleCount: uint32, pRectangles: ptr VkRectLayerKHR): VkPresentRegionKHR = + result.rectangleCount = rectangleCount + result.pRectangles = pRectangles + +proc newVkRectLayerKHR*(offset: VkOffset2D, extent: VkExtent2D, layer: uint32): VkRectLayerKHR = + result.offset = offset + result.extent = extent + result.layer = layer + +proc newVkPhysicalDeviceVariablePointersFeatures*(sType: VkStructureType, pNext: pointer = nil, variablePointersStorageBuffer: VkBool32, variablePointers: VkBool32): VkPhysicalDeviceVariablePointersFeatures = + result.sType = sType + result.pNext = pNext + result.variablePointersStorageBuffer = variablePointersStorageBuffer + result.variablePointers = variablePointers + +proc newVkExternalMemoryProperties*(externalMemoryFeatures: VkExternalMemoryFeatureFlags, exportFromImportedHandleTypes: VkExternalMemoryHandleTypeFlags, compatibleHandleTypes: VkExternalMemoryHandleTypeFlags): VkExternalMemoryProperties = + result.externalMemoryFeatures = externalMemoryFeatures + result.exportFromImportedHandleTypes = exportFromImportedHandleTypes + result.compatibleHandleTypes = compatibleHandleTypes + +proc newVkPhysicalDeviceExternalImageFormatInfo*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits): VkPhysicalDeviceExternalImageFormatInfo = + result.sType = sType + result.pNext = pNext + result.handleType = handleType + +proc newVkExternalImageFormatProperties*(sType: VkStructureType, pNext: pointer = nil, externalMemoryProperties: VkExternalMemoryProperties): VkExternalImageFormatProperties = + result.sType = sType + result.pNext = pNext + result.externalMemoryProperties = externalMemoryProperties + +proc newVkPhysicalDeviceExternalBufferInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkBufferCreateFlags = 0.VkBufferCreateFlags, usage: VkBufferUsageFlags, handleType: VkExternalMemoryHandleTypeFlagBits): VkPhysicalDeviceExternalBufferInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.usage = usage + result.handleType = handleType + +proc newVkExternalBufferProperties*(sType: VkStructureType, pNext: pointer = nil, externalMemoryProperties: VkExternalMemoryProperties): VkExternalBufferProperties = + result.sType = sType + result.pNext = pNext + result.externalMemoryProperties = externalMemoryProperties + +proc newVkPhysicalDeviceIDProperties*(sType: VkStructureType, pNext: pointer = nil, deviceUUID: array[VK_UUID_SIZE, uint8], driverUUID: array[VK_UUID_SIZE, uint8], deviceLUID: array[VK_LUID_SIZE, uint8], deviceNodeMask: uint32, deviceLUIDValid: VkBool32): VkPhysicalDeviceIDProperties = + result.sType = sType + result.pNext = pNext + result.deviceUUID = deviceUUID + result.driverUUID = driverUUID + result.deviceLUID = deviceLUID + result.deviceNodeMask = deviceNodeMask + result.deviceLUIDValid = deviceLUIDValid + +proc newVkExternalMemoryImageCreateInfo*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlags): VkExternalMemoryImageCreateInfo = + result.sType = sType + result.pNext = pNext + result.handleTypes = handleTypes + +proc newVkExternalMemoryBufferCreateInfo*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlags): VkExternalMemoryBufferCreateInfo = + result.sType = sType + result.pNext = pNext + result.handleTypes = handleTypes + +proc newVkExportMemoryAllocateInfo*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlags): VkExportMemoryAllocateInfo = + result.sType = sType + result.pNext = pNext + result.handleTypes = handleTypes + +proc newVkImportMemoryWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, handle: HANDLE, name: LPCWSTR): VkImportMemoryWin32HandleInfoKHR = + result.sType = sType + result.pNext = pNext + result.handleType = handleType + result.handle = handle + result.name = name + +proc newVkExportMemoryWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pAttributes: ptr SECURITY_ATTRIBUTES, dwAccess: DWORD, name: LPCWSTR): VkExportMemoryWin32HandleInfoKHR = + result.sType = sType + result.pNext = pNext + result.pAttributes = pAttributes + result.dwAccess = dwAccess + result.name = name + +proc newVkImportMemoryZirconHandleInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, handle: zx_handle_t): VkImportMemoryZirconHandleInfoFUCHSIA = + result.sType = sType + result.pNext = pNext + result.handleType = handleType + result.handle = handle + +proc newVkMemoryZirconHandlePropertiesFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryZirconHandlePropertiesFUCHSIA = + result.sType = sType + result.pNext = pNext + result.memoryTypeBits = memoryTypeBits + +proc newVkMemoryGetZirconHandleInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetZirconHandleInfoFUCHSIA = + result.sType = sType + result.pNext = pNext + result.memory = memory + result.handleType = handleType + +proc newVkMemoryWin32HandlePropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryWin32HandlePropertiesKHR = + result.sType = sType + result.pNext = pNext + result.memoryTypeBits = memoryTypeBits + +proc newVkMemoryGetWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetWin32HandleInfoKHR = + result.sType = sType + result.pNext = pNext + result.memory = memory + result.handleType = handleType + +proc newVkImportMemoryFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, fd: int): VkImportMemoryFdInfoKHR = + result.sType = sType + result.pNext = pNext + result.handleType = handleType + result.fd = fd + +proc newVkMemoryFdPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryFdPropertiesKHR = + result.sType = sType + result.pNext = pNext + result.memoryTypeBits = memoryTypeBits + +proc newVkMemoryGetFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetFdInfoKHR = + result.sType = sType + result.pNext = pNext + result.memory = memory + result.handleType = handleType + +proc newVkWin32KeyedMutexAcquireReleaseInfoKHR*(sType: VkStructureType, pNext: pointer = nil, acquireCount: uint32, pAcquireSyncs: ptr VkDeviceMemory, pAcquireKeys: ptr uint64, pAcquireTimeouts: ptr uint32, releaseCount: uint32, pReleaseSyncs: ptr VkDeviceMemory, pReleaseKeys: ptr uint64): VkWin32KeyedMutexAcquireReleaseInfoKHR = + result.sType = sType + result.pNext = pNext + result.acquireCount = acquireCount + result.pAcquireSyncs = pAcquireSyncs + result.pAcquireKeys = pAcquireKeys + result.pAcquireTimeouts = pAcquireTimeouts + result.releaseCount = releaseCount + result.pReleaseSyncs = pReleaseSyncs + result.pReleaseKeys = pReleaseKeys + +proc newVkPhysicalDeviceExternalSemaphoreInfo*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkPhysicalDeviceExternalSemaphoreInfo = + result.sType = sType + result.pNext = pNext + result.handleType = handleType + +proc newVkExternalSemaphoreProperties*(sType: VkStructureType, pNext: pointer = nil, exportFromImportedHandleTypes: VkExternalSemaphoreHandleTypeFlags, compatibleHandleTypes: VkExternalSemaphoreHandleTypeFlags, externalSemaphoreFeatures: VkExternalSemaphoreFeatureFlags): VkExternalSemaphoreProperties = + result.sType = sType + result.pNext = pNext + result.exportFromImportedHandleTypes = exportFromImportedHandleTypes + result.compatibleHandleTypes = compatibleHandleTypes + result.externalSemaphoreFeatures = externalSemaphoreFeatures + +proc newVkExportSemaphoreCreateInfo*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalSemaphoreHandleTypeFlags): VkExportSemaphoreCreateInfo = + result.sType = sType + result.pNext = pNext + result.handleTypes = handleTypes + +proc newVkImportSemaphoreWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, flags: VkSemaphoreImportFlags = 0.VkSemaphoreImportFlags, handleType: VkExternalSemaphoreHandleTypeFlagBits, handle: HANDLE, name: LPCWSTR): VkImportSemaphoreWin32HandleInfoKHR = + result.sType = sType + result.pNext = pNext + result.semaphore = semaphore + result.flags = flags + result.handleType = handleType + result.handle = handle + result.name = name + +proc newVkExportSemaphoreWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pAttributes: ptr SECURITY_ATTRIBUTES, dwAccess: DWORD, name: LPCWSTR): VkExportSemaphoreWin32HandleInfoKHR = + result.sType = sType + result.pNext = pNext + result.pAttributes = pAttributes + result.dwAccess = dwAccess + result.name = name + +proc newVkD3D12FenceSubmitInfoKHR*(sType: VkStructureType, pNext: pointer = nil, waitSemaphoreValuesCount: uint32, pWaitSemaphoreValues: ptr uint64, signalSemaphoreValuesCount: uint32, pSignalSemaphoreValues: ptr uint64): VkD3D12FenceSubmitInfoKHR = + result.sType = sType + result.pNext = pNext + result.waitSemaphoreValuesCount = waitSemaphoreValuesCount + result.pWaitSemaphoreValues = pWaitSemaphoreValues + result.signalSemaphoreValuesCount = signalSemaphoreValuesCount + result.pSignalSemaphoreValues = pSignalSemaphoreValues + +proc newVkSemaphoreGetWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetWin32HandleInfoKHR = + result.sType = sType + result.pNext = pNext + result.semaphore = semaphore + result.handleType = handleType + +proc newVkImportSemaphoreFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, flags: VkSemaphoreImportFlags = 0.VkSemaphoreImportFlags, handleType: VkExternalSemaphoreHandleTypeFlagBits, fd: int): VkImportSemaphoreFdInfoKHR = + result.sType = sType + result.pNext = pNext + result.semaphore = semaphore + result.flags = flags + result.handleType = handleType + result.fd = fd + +proc newVkSemaphoreGetFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetFdInfoKHR = + result.sType = sType + result.pNext = pNext + result.semaphore = semaphore + result.handleType = handleType + +proc newVkImportSemaphoreZirconHandleInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, flags: VkSemaphoreImportFlags = 0.VkSemaphoreImportFlags, handleType: VkExternalSemaphoreHandleTypeFlagBits, zirconHandle: zx_handle_t): VkImportSemaphoreZirconHandleInfoFUCHSIA = + result.sType = sType + result.pNext = pNext + result.semaphore = semaphore + result.flags = flags + result.handleType = handleType + result.zirconHandle = zirconHandle + +proc newVkSemaphoreGetZirconHandleInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetZirconHandleInfoFUCHSIA = + result.sType = sType + result.pNext = pNext + result.semaphore = semaphore + result.handleType = handleType + +proc newVkPhysicalDeviceExternalFenceInfo*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalFenceHandleTypeFlagBits): VkPhysicalDeviceExternalFenceInfo = + result.sType = sType + result.pNext = pNext + result.handleType = handleType + +proc newVkExternalFenceProperties*(sType: VkStructureType, pNext: pointer = nil, exportFromImportedHandleTypes: VkExternalFenceHandleTypeFlags, compatibleHandleTypes: VkExternalFenceHandleTypeFlags, externalFenceFeatures: VkExternalFenceFeatureFlags): VkExternalFenceProperties = + result.sType = sType + result.pNext = pNext + result.exportFromImportedHandleTypes = exportFromImportedHandleTypes + result.compatibleHandleTypes = compatibleHandleTypes + result.externalFenceFeatures = externalFenceFeatures + +proc newVkExportFenceCreateInfo*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalFenceHandleTypeFlags): VkExportFenceCreateInfo = + result.sType = sType + result.pNext = pNext + result.handleTypes = handleTypes + +proc newVkImportFenceWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, fence: VkFence, flags: VkFenceImportFlags = 0.VkFenceImportFlags, handleType: VkExternalFenceHandleTypeFlagBits, handle: HANDLE, name: LPCWSTR): VkImportFenceWin32HandleInfoKHR = + result.sType = sType + result.pNext = pNext + result.fence = fence + result.flags = flags + result.handleType = handleType + result.handle = handle + result.name = name + +proc newVkExportFenceWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pAttributes: ptr SECURITY_ATTRIBUTES, dwAccess: DWORD, name: LPCWSTR): VkExportFenceWin32HandleInfoKHR = + result.sType = sType + result.pNext = pNext + result.pAttributes = pAttributes + result.dwAccess = dwAccess + result.name = name + +proc newVkFenceGetWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, fence: VkFence, handleType: VkExternalFenceHandleTypeFlagBits): VkFenceGetWin32HandleInfoKHR = + result.sType = sType + result.pNext = pNext + result.fence = fence + result.handleType = handleType + +proc newVkImportFenceFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, fence: VkFence, flags: VkFenceImportFlags = 0.VkFenceImportFlags, handleType: VkExternalFenceHandleTypeFlagBits, fd: int): VkImportFenceFdInfoKHR = + result.sType = sType + result.pNext = pNext + result.fence = fence + result.flags = flags + result.handleType = handleType + result.fd = fd + +proc newVkFenceGetFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, fence: VkFence, handleType: VkExternalFenceHandleTypeFlagBits): VkFenceGetFdInfoKHR = + result.sType = sType + result.pNext = pNext + result.fence = fence + result.handleType = handleType + +proc newVkExportFenceSciSyncInfoNV*(sType: VkStructureType, pNext: pointer = nil, pAttributes: NvSciSyncAttrList): VkExportFenceSciSyncInfoNV = + result.sType = sType + result.pNext = pNext + result.pAttributes = pAttributes + +proc newVkImportFenceSciSyncInfoNV*(sType: VkStructureType, pNext: pointer = nil, fence: VkFence, handleType: VkExternalFenceHandleTypeFlagBits, handle: pointer = nil): VkImportFenceSciSyncInfoNV = + result.sType = sType + result.pNext = pNext + result.fence = fence + result.handleType = handleType + result.handle = handle + +proc newVkFenceGetSciSyncInfoNV*(sType: VkStructureType, pNext: pointer = nil, fence: VkFence, handleType: VkExternalFenceHandleTypeFlagBits): VkFenceGetSciSyncInfoNV = + result.sType = sType + result.pNext = pNext + result.fence = fence + result.handleType = handleType + +proc newVkExportSemaphoreSciSyncInfoNV*(sType: VkStructureType, pNext: pointer = nil, pAttributes: NvSciSyncAttrList): VkExportSemaphoreSciSyncInfoNV = + result.sType = sType + result.pNext = pNext + result.pAttributes = pAttributes + +proc newVkImportSemaphoreSciSyncInfoNV*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits, handle: pointer = nil): VkImportSemaphoreSciSyncInfoNV = + result.sType = sType + result.pNext = pNext + result.semaphore = semaphore + result.handleType = handleType + result.handle = handle + +proc newVkSemaphoreGetSciSyncInfoNV*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetSciSyncInfoNV = + result.sType = sType + result.pNext = pNext + result.semaphore = semaphore + result.handleType = handleType + +proc newVkSciSyncAttributesInfoNV*(sType: VkStructureType, pNext: pointer = nil, clientType: VkSciSyncClientTypeNV, primitiveType: VkSciSyncPrimitiveTypeNV): VkSciSyncAttributesInfoNV = + result.sType = sType + result.pNext = pNext + result.clientType = clientType + result.primitiveType = primitiveType + +proc newVkPhysicalDeviceExternalSciSyncFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, sciSyncFence: VkBool32, sciSyncSemaphore: VkBool32, sciSyncImport: VkBool32, sciSyncExport: VkBool32): VkPhysicalDeviceExternalSciSyncFeaturesNV = + result.sType = sType + result.pNext = pNext + result.sciSyncFence = sciSyncFence + result.sciSyncSemaphore = sciSyncSemaphore + result.sciSyncImport = sciSyncImport + result.sciSyncExport = sciSyncExport + +proc newVkPhysicalDeviceExternalSciSync2FeaturesNV*(sType: VkStructureType, pNext: pointer = nil, sciSyncFence: VkBool32, sciSyncSemaphore2: VkBool32, sciSyncImport: VkBool32, sciSyncExport: VkBool32): VkPhysicalDeviceExternalSciSync2FeaturesNV = + result.sType = sType + result.pNext = pNext + result.sciSyncFence = sciSyncFence + result.sciSyncSemaphore2 = sciSyncSemaphore2 + result.sciSyncImport = sciSyncImport + result.sciSyncExport = sciSyncExport + +proc newVkSemaphoreSciSyncPoolCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, handle: NvSciSyncObj): VkSemaphoreSciSyncPoolCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.handle = handle + +proc newVkSemaphoreSciSyncCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, semaphorePool: VkSemaphoreSciSyncPoolNV, pFence: ptr NvSciSyncFence): VkSemaphoreSciSyncCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.semaphorePool = semaphorePool + result.pFence = pFence + +proc newVkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, semaphoreSciSyncPoolRequestCount: uint32): VkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.semaphoreSciSyncPoolRequestCount = semaphoreSciSyncPoolRequestCount + +proc newVkPhysicalDeviceMultiviewFeatures*(sType: VkStructureType, pNext: pointer = nil, multiview: VkBool32, multiviewGeometryShader: VkBool32, multiviewTessellationShader: VkBool32): VkPhysicalDeviceMultiviewFeatures = + result.sType = sType + result.pNext = pNext + result.multiview = multiview + result.multiviewGeometryShader = multiviewGeometryShader + result.multiviewTessellationShader = multiviewTessellationShader + +proc newVkPhysicalDeviceMultiviewProperties*(sType: VkStructureType, pNext: pointer = nil, maxMultiviewViewCount: uint32, maxMultiviewInstanceIndex: uint32): VkPhysicalDeviceMultiviewProperties = + result.sType = sType + result.pNext = pNext + result.maxMultiviewViewCount = maxMultiviewViewCount + result.maxMultiviewInstanceIndex = maxMultiviewInstanceIndex + +proc newVkRenderPassMultiviewCreateInfo*(sType: VkStructureType, pNext: pointer = nil, subpassCount: uint32, pViewMasks: ptr uint32, dependencyCount: uint32, pViewOffsets: ptr int32, correlationMaskCount: uint32, pCorrelationMasks: ptr uint32): VkRenderPassMultiviewCreateInfo = + result.sType = sType + result.pNext = pNext + result.subpassCount = subpassCount + result.pViewMasks = pViewMasks + result.dependencyCount = dependencyCount + result.pViewOffsets = pViewOffsets + result.correlationMaskCount = correlationMaskCount + result.pCorrelationMasks = pCorrelationMasks + +proc newVkSurfaceCapabilities2EXT*(sType: VkStructureType, pNext: pointer = nil, minImageCount: uint32, maxImageCount: uint32, currentExtent: VkExtent2D, minImageExtent: VkExtent2D, maxImageExtent: VkExtent2D, maxImageArrayLayers: uint32, supportedTransforms: VkSurfaceTransformFlagsKHR, currentTransform: VkSurfaceTransformFlagBitsKHR, supportedCompositeAlpha: VkCompositeAlphaFlagsKHR, supportedUsageFlags: VkImageUsageFlags, supportedSurfaceCounters: VkSurfaceCounterFlagsEXT): VkSurfaceCapabilities2EXT = + result.sType = sType + result.pNext = pNext + result.minImageCount = minImageCount + result.maxImageCount = maxImageCount + result.currentExtent = currentExtent + result.minImageExtent = minImageExtent + result.maxImageExtent = maxImageExtent + result.maxImageArrayLayers = maxImageArrayLayers + result.supportedTransforms = supportedTransforms + result.currentTransform = currentTransform + result.supportedCompositeAlpha = supportedCompositeAlpha + result.supportedUsageFlags = supportedUsageFlags + result.supportedSurfaceCounters = supportedSurfaceCounters + +proc newVkDisplayPowerInfoEXT*(sType: VkStructureType, pNext: pointer = nil, powerState: VkDisplayPowerStateEXT): VkDisplayPowerInfoEXT = + result.sType = sType + result.pNext = pNext + result.powerState = powerState + +proc newVkDeviceEventInfoEXT*(sType: VkStructureType, pNext: pointer = nil, deviceEvent: VkDeviceEventTypeEXT): VkDeviceEventInfoEXT = + result.sType = sType + result.pNext = pNext + result.deviceEvent = deviceEvent + +proc newVkDisplayEventInfoEXT*(sType: VkStructureType, pNext: pointer = nil, displayEvent: VkDisplayEventTypeEXT): VkDisplayEventInfoEXT = + result.sType = sType + result.pNext = pNext + result.displayEvent = displayEvent + +proc newVkSwapchainCounterCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, surfaceCounters: VkSurfaceCounterFlagsEXT): VkSwapchainCounterCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.surfaceCounters = surfaceCounters + +proc newVkPhysicalDeviceGroupProperties*(sType: VkStructureType, pNext: pointer = nil, physicalDeviceCount: uint32, physicalDevices: array[VK_MAX_DEVICE_GROUP_SIZE, VkPhysicalDevice], subsetAllocation: VkBool32): VkPhysicalDeviceGroupProperties = + result.sType = sType + result.pNext = pNext + result.physicalDeviceCount = physicalDeviceCount + result.physicalDevices = physicalDevices + result.subsetAllocation = subsetAllocation + +proc newVkMemoryAllocateFlagsInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkMemoryAllocateFlags = 0.VkMemoryAllocateFlags, deviceMask: uint32): VkMemoryAllocateFlagsInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.deviceMask = deviceMask + +proc newVkBindBufferMemoryInfo*(sType: VkStructureType, pNext: pointer = nil, buffer: VkBuffer, memory: VkDeviceMemory, memoryOffset: VkDeviceSize): VkBindBufferMemoryInfo = + result.sType = sType + result.pNext = pNext + result.buffer = buffer + result.memory = memory + result.memoryOffset = memoryOffset + +proc newVkBindBufferMemoryDeviceGroupInfo*(sType: VkStructureType, pNext: pointer = nil, deviceIndexCount: uint32, pDeviceIndices: ptr uint32): VkBindBufferMemoryDeviceGroupInfo = + result.sType = sType + result.pNext = pNext + result.deviceIndexCount = deviceIndexCount + result.pDeviceIndices = pDeviceIndices + +proc newVkBindImageMemoryInfo*(sType: VkStructureType, pNext: pointer = nil, image: VkImage, memory: VkDeviceMemory, memoryOffset: VkDeviceSize): VkBindImageMemoryInfo = + result.sType = sType + result.pNext = pNext + result.image = image + result.memory = memory + result.memoryOffset = memoryOffset + +proc newVkBindImageMemoryDeviceGroupInfo*(sType: VkStructureType, pNext: pointer = nil, deviceIndexCount: uint32, pDeviceIndices: ptr uint32, splitInstanceBindRegionCount: uint32, pSplitInstanceBindRegions: ptr VkRect2D): VkBindImageMemoryDeviceGroupInfo = + result.sType = sType + result.pNext = pNext + result.deviceIndexCount = deviceIndexCount + result.pDeviceIndices = pDeviceIndices + result.splitInstanceBindRegionCount = splitInstanceBindRegionCount + result.pSplitInstanceBindRegions = pSplitInstanceBindRegions + +proc newVkDeviceGroupRenderPassBeginInfo*(sType: VkStructureType, pNext: pointer = nil, deviceMask: uint32, deviceRenderAreaCount: uint32, pDeviceRenderAreas: ptr VkRect2D): VkDeviceGroupRenderPassBeginInfo = + result.sType = sType + result.pNext = pNext + result.deviceMask = deviceMask + result.deviceRenderAreaCount = deviceRenderAreaCount + result.pDeviceRenderAreas = pDeviceRenderAreas + +proc newVkDeviceGroupCommandBufferBeginInfo*(sType: VkStructureType, pNext: pointer = nil, deviceMask: uint32): VkDeviceGroupCommandBufferBeginInfo = + result.sType = sType + result.pNext = pNext + result.deviceMask = deviceMask + +proc newVkDeviceGroupSubmitInfo*(sType: VkStructureType, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphoreDeviceIndices: ptr uint32, commandBufferCount: uint32, pCommandBufferDeviceMasks: ptr uint32, signalSemaphoreCount: uint32, pSignalSemaphoreDeviceIndices: ptr uint32): VkDeviceGroupSubmitInfo = + result.sType = sType + result.pNext = pNext + result.waitSemaphoreCount = waitSemaphoreCount + result.pWaitSemaphoreDeviceIndices = pWaitSemaphoreDeviceIndices + result.commandBufferCount = commandBufferCount + result.pCommandBufferDeviceMasks = pCommandBufferDeviceMasks + result.signalSemaphoreCount = signalSemaphoreCount + result.pSignalSemaphoreDeviceIndices = pSignalSemaphoreDeviceIndices + +proc newVkDeviceGroupBindSparseInfo*(sType: VkStructureType, pNext: pointer = nil, resourceDeviceIndex: uint32, memoryDeviceIndex: uint32): VkDeviceGroupBindSparseInfo = + result.sType = sType + result.pNext = pNext + result.resourceDeviceIndex = resourceDeviceIndex + result.memoryDeviceIndex = memoryDeviceIndex + +proc newVkDeviceGroupPresentCapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, presentMask: array[VK_MAX_DEVICE_GROUP_SIZE, uint32], modes: VkDeviceGroupPresentModeFlagsKHR): VkDeviceGroupPresentCapabilitiesKHR = + result.sType = sType + result.pNext = pNext + result.presentMask = presentMask + result.modes = modes + +proc newVkImageSwapchainCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, swapchain: VkSwapchainKHR): VkImageSwapchainCreateInfoKHR = + result.sType = sType + result.pNext = pNext + result.swapchain = swapchain + +proc newVkBindImageMemorySwapchainInfoKHR*(sType: VkStructureType, pNext: pointer = nil, swapchain: VkSwapchainKHR, imageIndex: uint32): VkBindImageMemorySwapchainInfoKHR = + result.sType = sType + result.pNext = pNext + result.swapchain = swapchain + result.imageIndex = imageIndex + +proc newVkAcquireNextImageInfoKHR*(sType: VkStructureType, pNext: pointer = nil, swapchain: VkSwapchainKHR, timeout: uint64, semaphore: VkSemaphore, fence: VkFence, deviceMask: uint32): VkAcquireNextImageInfoKHR = + result.sType = sType + result.pNext = pNext + result.swapchain = swapchain + result.timeout = timeout + result.semaphore = semaphore + result.fence = fence + result.deviceMask = deviceMask + +proc newVkDeviceGroupPresentInfoKHR*(sType: VkStructureType, pNext: pointer = nil, swapchainCount: uint32, pDeviceMasks: ptr uint32, mode: VkDeviceGroupPresentModeFlagBitsKHR): VkDeviceGroupPresentInfoKHR = + result.sType = sType + result.pNext = pNext + result.swapchainCount = swapchainCount + result.pDeviceMasks = pDeviceMasks + result.mode = mode + +proc newVkDeviceGroupDeviceCreateInfo*(sType: VkStructureType, pNext: pointer = nil, physicalDeviceCount: uint32, pPhysicalDevices: ptr VkPhysicalDevice): VkDeviceGroupDeviceCreateInfo = + result.sType = sType + result.pNext = pNext + result.physicalDeviceCount = physicalDeviceCount + result.pPhysicalDevices = pPhysicalDevices + +proc newVkDeviceGroupSwapchainCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, modes: VkDeviceGroupPresentModeFlagsKHR): VkDeviceGroupSwapchainCreateInfoKHR = + result.sType = sType + result.pNext = pNext + result.modes = modes + +proc newVkDescriptorUpdateTemplateEntry*(dstBinding: uint32, dstArrayElement: uint32, descriptorCount: uint32, descriptorType: VkDescriptorType, offset: uint, stride: uint): VkDescriptorUpdateTemplateEntry = + result.dstBinding = dstBinding + result.dstArrayElement = dstArrayElement + result.descriptorCount = descriptorCount + result.descriptorType = descriptorType + result.offset = offset + result.stride = stride + +proc newVkDescriptorUpdateTemplateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkDescriptorUpdateTemplateCreateFlags = 0.VkDescriptorUpdateTemplateCreateFlags, descriptorUpdateEntryCount: uint32, pDescriptorUpdateEntries: ptr VkDescriptorUpdateTemplateEntry, templateType: VkDescriptorUpdateTemplateType, descriptorSetLayout: VkDescriptorSetLayout, pipelineBindPoint: VkPipelineBindPoint, pipelineLayout: VkPipelineLayout, set: uint32): VkDescriptorUpdateTemplateCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.descriptorUpdateEntryCount = descriptorUpdateEntryCount + result.pDescriptorUpdateEntries = pDescriptorUpdateEntries + result.templateType = templateType + result.descriptorSetLayout = descriptorSetLayout + result.pipelineBindPoint = pipelineBindPoint + result.pipelineLayout = pipelineLayout + result.set = set + +proc newVkXYColorEXT*(x: float32, y: float32): VkXYColorEXT = + result.x = x + result.y = y + +proc newVkPhysicalDevicePresentIdFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, presentId: VkBool32): VkPhysicalDevicePresentIdFeaturesKHR = + result.sType = sType + result.pNext = pNext + result.presentId = presentId + +proc newVkPresentIdKHR*(sType: VkStructureType, pNext: pointer = nil, swapchainCount: uint32, pPresentIds: ptr uint64): VkPresentIdKHR = + result.sType = sType + result.pNext = pNext + result.swapchainCount = swapchainCount + result.pPresentIds = pPresentIds + +proc newVkPhysicalDevicePresentWaitFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, presentWait: VkBool32): VkPhysicalDevicePresentWaitFeaturesKHR = + result.sType = sType + result.pNext = pNext + result.presentWait = presentWait + +proc newVkHdrMetadataEXT*(sType: VkStructureType, pNext: pointer = nil, displayPrimaryRed: VkXYColorEXT, displayPrimaryGreen: VkXYColorEXT, displayPrimaryBlue: VkXYColorEXT, whitePoint: VkXYColorEXT, maxLuminance: float32, minLuminance: float32, maxContentLightLevel: float32, maxFrameAverageLightLevel: float32): VkHdrMetadataEXT = + result.sType = sType + result.pNext = pNext + result.displayPrimaryRed = displayPrimaryRed + result.displayPrimaryGreen = displayPrimaryGreen + result.displayPrimaryBlue = displayPrimaryBlue + result.whitePoint = whitePoint + result.maxLuminance = maxLuminance + result.minLuminance = minLuminance + result.maxContentLightLevel = maxContentLightLevel + result.maxFrameAverageLightLevel = maxFrameAverageLightLevel + +proc newVkDisplayNativeHdrSurfaceCapabilitiesAMD*(sType: VkStructureType, pNext: pointer = nil, localDimmingSupport: VkBool32): VkDisplayNativeHdrSurfaceCapabilitiesAMD = + result.sType = sType + result.pNext = pNext + result.localDimmingSupport = localDimmingSupport + +proc newVkSwapchainDisplayNativeHdrCreateInfoAMD*(sType: VkStructureType, pNext: pointer = nil, localDimmingEnable: VkBool32): VkSwapchainDisplayNativeHdrCreateInfoAMD = + result.sType = sType + result.pNext = pNext + result.localDimmingEnable = localDimmingEnable + +proc newVkRefreshCycleDurationGOOGLE*(refreshDuration: uint64): VkRefreshCycleDurationGOOGLE = + result.refreshDuration = refreshDuration + +proc newVkPastPresentationTimingGOOGLE*(presentID: uint32, desiredPresentTime: uint64, actualPresentTime: uint64, earliestPresentTime: uint64, presentMargin: uint64): VkPastPresentationTimingGOOGLE = + result.presentID = presentID + result.desiredPresentTime = desiredPresentTime + result.actualPresentTime = actualPresentTime + result.earliestPresentTime = earliestPresentTime + result.presentMargin = presentMargin + +proc newVkPresentTimesInfoGOOGLE*(sType: VkStructureType, pNext: pointer = nil, swapchainCount: uint32, pTimes: ptr VkPresentTimeGOOGLE): VkPresentTimesInfoGOOGLE = + result.sType = sType + result.pNext = pNext + result.swapchainCount = swapchainCount + result.pTimes = pTimes + +proc newVkPresentTimeGOOGLE*(presentID: uint32, desiredPresentTime: uint64): VkPresentTimeGOOGLE = + result.presentID = presentID + result.desiredPresentTime = desiredPresentTime + +proc newVkIOSSurfaceCreateInfoMVK*(sType: VkStructureType, pNext: pointer = nil, flags: VkIOSSurfaceCreateFlagsMVK = 0.VkIOSSurfaceCreateFlagsMVK, pView: pointer = nil): VkIOSSurfaceCreateInfoMVK = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.pView = pView + +proc newVkMacOSSurfaceCreateInfoMVK*(sType: VkStructureType, pNext: pointer = nil, flags: VkMacOSSurfaceCreateFlagsMVK = 0.VkMacOSSurfaceCreateFlagsMVK, pView: pointer = nil): VkMacOSSurfaceCreateInfoMVK = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.pView = pView + +proc newVkMetalSurfaceCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkMetalSurfaceCreateFlagsEXT = 0.VkMetalSurfaceCreateFlagsEXT, pLayer: ptr CAMetalLayer): VkMetalSurfaceCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.pLayer = pLayer + +proc newVkViewportWScalingNV*(xcoeff: float32, ycoeff: float32): VkViewportWScalingNV = + result.xcoeff = xcoeff + result.ycoeff = ycoeff + +proc newVkPipelineViewportWScalingStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, viewportWScalingEnable: VkBool32, viewportCount: uint32, pViewportWScalings: ptr VkViewportWScalingNV): VkPipelineViewportWScalingStateCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.viewportWScalingEnable = viewportWScalingEnable + result.viewportCount = viewportCount + result.pViewportWScalings = pViewportWScalings + +proc newVkViewportSwizzleNV*(x: VkViewportCoordinateSwizzleNV, y: VkViewportCoordinateSwizzleNV, z: VkViewportCoordinateSwizzleNV, w: VkViewportCoordinateSwizzleNV): VkViewportSwizzleNV = + result.x = x + result.y = y + result.z = z + result.w = w + +proc newVkPipelineViewportSwizzleStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineViewportSwizzleStateCreateFlagsNV = 0.VkPipelineViewportSwizzleStateCreateFlagsNV, viewportCount: uint32, pViewportSwizzles: ptr VkViewportSwizzleNV): VkPipelineViewportSwizzleStateCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.viewportCount = viewportCount + result.pViewportSwizzles = pViewportSwizzles + +proc newVkPhysicalDeviceDiscardRectanglePropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxDiscardRectangles: uint32): VkPhysicalDeviceDiscardRectanglePropertiesEXT = + result.sType = sType + result.pNext = pNext + result.maxDiscardRectangles = maxDiscardRectangles + +proc newVkPipelineDiscardRectangleStateCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineDiscardRectangleStateCreateFlagsEXT = 0.VkPipelineDiscardRectangleStateCreateFlagsEXT, discardRectangleMode: VkDiscardRectangleModeEXT, discardRectangleCount: uint32, pDiscardRectangles: ptr VkRect2D): VkPipelineDiscardRectangleStateCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.discardRectangleMode = discardRectangleMode + result.discardRectangleCount = discardRectangleCount + result.pDiscardRectangles = pDiscardRectangles + +proc newVkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX*(sType: VkStructureType, pNext: pointer = nil, perViewPositionAllComponents: VkBool32): VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX = + result.sType = sType + result.pNext = pNext + result.perViewPositionAllComponents = perViewPositionAllComponents + +proc newVkInputAttachmentAspectReference*(subpass: uint32, inputAttachmentIndex: uint32, aspectMask: VkImageAspectFlags): VkInputAttachmentAspectReference = + result.subpass = subpass + result.inputAttachmentIndex = inputAttachmentIndex + result.aspectMask = aspectMask + +proc newVkRenderPassInputAttachmentAspectCreateInfo*(sType: VkStructureType, pNext: pointer = nil, aspectReferenceCount: uint32, pAspectReferences: ptr VkInputAttachmentAspectReference): VkRenderPassInputAttachmentAspectCreateInfo = + result.sType = sType + result.pNext = pNext + result.aspectReferenceCount = aspectReferenceCount + result.pAspectReferences = pAspectReferences + +proc newVkPhysicalDeviceSurfaceInfo2KHR*(sType: VkStructureType, pNext: pointer = nil, surface: VkSurfaceKHR): VkPhysicalDeviceSurfaceInfo2KHR = + result.sType = sType + result.pNext = pNext + result.surface = surface + +proc newVkSurfaceCapabilities2KHR*(sType: VkStructureType, pNext: pointer = nil, surfaceCapabilities: VkSurfaceCapabilitiesKHR): VkSurfaceCapabilities2KHR = + result.sType = sType + result.pNext = pNext + result.surfaceCapabilities = surfaceCapabilities + +proc newVkSurfaceFormat2KHR*(sType: VkStructureType, pNext: pointer = nil, surfaceFormat: VkSurfaceFormatKHR): VkSurfaceFormat2KHR = + result.sType = sType + result.pNext = pNext + result.surfaceFormat = surfaceFormat + +proc newVkDisplayProperties2KHR*(sType: VkStructureType, pNext: pointer = nil, displayProperties: VkDisplayPropertiesKHR): VkDisplayProperties2KHR = + result.sType = sType + result.pNext = pNext + result.displayProperties = displayProperties + +proc newVkDisplayPlaneProperties2KHR*(sType: VkStructureType, pNext: pointer = nil, displayPlaneProperties: VkDisplayPlanePropertiesKHR): VkDisplayPlaneProperties2KHR = + result.sType = sType + result.pNext = pNext + result.displayPlaneProperties = displayPlaneProperties + +proc newVkDisplayModeProperties2KHR*(sType: VkStructureType, pNext: pointer = nil, displayModeProperties: VkDisplayModePropertiesKHR): VkDisplayModeProperties2KHR = + result.sType = sType + result.pNext = pNext + result.displayModeProperties = displayModeProperties + +proc newVkDisplayPlaneInfo2KHR*(sType: VkStructureType, pNext: pointer = nil, mode: VkDisplayModeKHR, planeIndex: uint32): VkDisplayPlaneInfo2KHR = + result.sType = sType + result.pNext = pNext + result.mode = mode + result.planeIndex = planeIndex + +proc newVkDisplayPlaneCapabilities2KHR*(sType: VkStructureType, pNext: pointer = nil, capabilities: VkDisplayPlaneCapabilitiesKHR): VkDisplayPlaneCapabilities2KHR = + result.sType = sType + result.pNext = pNext + result.capabilities = capabilities + +proc newVkSharedPresentSurfaceCapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, sharedPresentSupportedUsageFlags: VkImageUsageFlags): VkSharedPresentSurfaceCapabilitiesKHR = + result.sType = sType + result.pNext = pNext + result.sharedPresentSupportedUsageFlags = sharedPresentSupportedUsageFlags + +proc newVkPhysicalDevice16BitStorageFeatures*(sType: VkStructureType, pNext: pointer = nil, storageBuffer16BitAccess: VkBool32, uniformAndStorageBuffer16BitAccess: VkBool32, storagePushConstant16: VkBool32, storageInputOutput16: VkBool32): VkPhysicalDevice16BitStorageFeatures = + result.sType = sType + result.pNext = pNext + result.storageBuffer16BitAccess = storageBuffer16BitAccess + result.uniformAndStorageBuffer16BitAccess = uniformAndStorageBuffer16BitAccess + result.storagePushConstant16 = storagePushConstant16 + result.storageInputOutput16 = storageInputOutput16 + +proc newVkPhysicalDeviceSubgroupProperties*(sType: VkStructureType, pNext: pointer = nil, subgroupSize: uint32, supportedStages: VkShaderStageFlags, supportedOperations: VkSubgroupFeatureFlags, quadOperationsInAllStages: VkBool32): VkPhysicalDeviceSubgroupProperties = + result.sType = sType + result.pNext = pNext + result.subgroupSize = subgroupSize + result.supportedStages = supportedStages + result.supportedOperations = supportedOperations + result.quadOperationsInAllStages = quadOperationsInAllStages + +proc newVkPhysicalDeviceShaderSubgroupExtendedTypesFeatures*(sType: VkStructureType, pNext: pointer = nil, shaderSubgroupExtendedTypes: VkBool32): VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures = + result.sType = sType + result.pNext = pNext + result.shaderSubgroupExtendedTypes = shaderSubgroupExtendedTypes + +proc newVkBufferMemoryRequirementsInfo2*(sType: VkStructureType, pNext: pointer = nil, buffer: VkBuffer): VkBufferMemoryRequirementsInfo2 = + result.sType = sType + result.pNext = pNext + result.buffer = buffer + +proc newVkDeviceBufferMemoryRequirements*(sType: VkStructureType, pNext: pointer = nil, pCreateInfo: ptr VkBufferCreateInfo): VkDeviceBufferMemoryRequirements = + result.sType = sType + result.pNext = pNext + result.pCreateInfo = pCreateInfo + +proc newVkImageMemoryRequirementsInfo2*(sType: VkStructureType, pNext: pointer = nil, image: VkImage): VkImageMemoryRequirementsInfo2 = + result.sType = sType + result.pNext = pNext + result.image = image + +proc newVkImageSparseMemoryRequirementsInfo2*(sType: VkStructureType, pNext: pointer = nil, image: VkImage): VkImageSparseMemoryRequirementsInfo2 = + result.sType = sType + result.pNext = pNext + result.image = image + +proc newVkDeviceImageMemoryRequirements*(sType: VkStructureType, pNext: pointer = nil, pCreateInfo: ptr VkImageCreateInfo, planeAspect: VkImageAspectFlagBits): VkDeviceImageMemoryRequirements = + result.sType = sType + result.pNext = pNext + result.pCreateInfo = pCreateInfo + result.planeAspect = planeAspect + +proc newVkMemoryRequirements2*(sType: VkStructureType, pNext: pointer = nil, memoryRequirements: VkMemoryRequirements): VkMemoryRequirements2 = + result.sType = sType + result.pNext = pNext + result.memoryRequirements = memoryRequirements + +proc newVkSparseImageMemoryRequirements2*(sType: VkStructureType, pNext: pointer = nil, memoryRequirements: VkSparseImageMemoryRequirements): VkSparseImageMemoryRequirements2 = + result.sType = sType + result.pNext = pNext + result.memoryRequirements = memoryRequirements + +proc newVkPhysicalDevicePointClippingProperties*(sType: VkStructureType, pNext: pointer = nil, pointClippingBehavior: VkPointClippingBehavior): VkPhysicalDevicePointClippingProperties = + result.sType = sType + result.pNext = pNext + result.pointClippingBehavior = pointClippingBehavior + +proc newVkMemoryDedicatedRequirements*(sType: VkStructureType, pNext: pointer = nil, prefersDedicatedAllocation: VkBool32, requiresDedicatedAllocation: VkBool32): VkMemoryDedicatedRequirements = + result.sType = sType + result.pNext = pNext + result.prefersDedicatedAllocation = prefersDedicatedAllocation + result.requiresDedicatedAllocation = requiresDedicatedAllocation + +proc newVkMemoryDedicatedAllocateInfo*(sType: VkStructureType, pNext: pointer = nil, image: VkImage, buffer: VkBuffer): VkMemoryDedicatedAllocateInfo = + result.sType = sType + result.pNext = pNext + result.image = image + result.buffer = buffer + +proc newVkImageViewUsageCreateInfo*(sType: VkStructureType, pNext: pointer = nil, usage: VkImageUsageFlags): VkImageViewUsageCreateInfo = + result.sType = sType + result.pNext = pNext + result.usage = usage + +proc newVkImageViewSlicedCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, sliceOffset: uint32, sliceCount: uint32): VkImageViewSlicedCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.sliceOffset = sliceOffset + result.sliceCount = sliceCount + +proc newVkPipelineTessellationDomainOriginStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, domainOrigin: VkTessellationDomainOrigin): VkPipelineTessellationDomainOriginStateCreateInfo = + result.sType = sType + result.pNext = pNext + result.domainOrigin = domainOrigin + +proc newVkSamplerYcbcrConversionInfo*(sType: VkStructureType, pNext: pointer = nil, conversion: VkSamplerYcbcrConversion): VkSamplerYcbcrConversionInfo = + result.sType = sType + result.pNext = pNext + result.conversion = conversion + +proc newVkSamplerYcbcrConversionCreateInfo*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat, ycbcrModel: VkSamplerYcbcrModelConversion, ycbcrRange: VkSamplerYcbcrRange, components: VkComponentMapping, xChromaOffset: VkChromaLocation, yChromaOffset: VkChromaLocation, chromaFilter: VkFilter, forceExplicitReconstruction: VkBool32): VkSamplerYcbcrConversionCreateInfo = + result.sType = sType + result.pNext = pNext + result.format = format + result.ycbcrModel = ycbcrModel + result.ycbcrRange = ycbcrRange + result.components = components + result.xChromaOffset = xChromaOffset + result.yChromaOffset = yChromaOffset + result.chromaFilter = chromaFilter + result.forceExplicitReconstruction = forceExplicitReconstruction + +proc newVkBindImagePlaneMemoryInfo*(sType: VkStructureType, pNext: pointer = nil, planeAspect: VkImageAspectFlagBits): VkBindImagePlaneMemoryInfo = + result.sType = sType + result.pNext = pNext + result.planeAspect = planeAspect + +proc newVkImagePlaneMemoryRequirementsInfo*(sType: VkStructureType, pNext: pointer = nil, planeAspect: VkImageAspectFlagBits): VkImagePlaneMemoryRequirementsInfo = + result.sType = sType + result.pNext = pNext + result.planeAspect = planeAspect + +proc newVkPhysicalDeviceSamplerYcbcrConversionFeatures*(sType: VkStructureType, pNext: pointer = nil, samplerYcbcrConversion: VkBool32): VkPhysicalDeviceSamplerYcbcrConversionFeatures = + result.sType = sType + result.pNext = pNext + result.samplerYcbcrConversion = samplerYcbcrConversion + +proc newVkSamplerYcbcrConversionImageFormatProperties*(sType: VkStructureType, pNext: pointer = nil, combinedImageSamplerDescriptorCount: uint32): VkSamplerYcbcrConversionImageFormatProperties = + result.sType = sType + result.pNext = pNext + result.combinedImageSamplerDescriptorCount = combinedImageSamplerDescriptorCount + +proc newVkTextureLODGatherFormatPropertiesAMD*(sType: VkStructureType, pNext: pointer = nil, supportsTextureGatherLODBiasAMD: VkBool32): VkTextureLODGatherFormatPropertiesAMD = + result.sType = sType + result.pNext = pNext + result.supportsTextureGatherLODBiasAMD = supportsTextureGatherLODBiasAMD + +proc newVkConditionalRenderingBeginInfoEXT*(sType: VkStructureType, pNext: pointer = nil, buffer: VkBuffer, offset: VkDeviceSize, flags: VkConditionalRenderingFlagsEXT = 0.VkConditionalRenderingFlagsEXT): VkConditionalRenderingBeginInfoEXT = + result.sType = sType + result.pNext = pNext + result.buffer = buffer + result.offset = offset + result.flags = flags + +proc newVkProtectedSubmitInfo*(sType: VkStructureType, pNext: pointer = nil, protectedSubmit: VkBool32): VkProtectedSubmitInfo = + result.sType = sType + result.pNext = pNext + result.protectedSubmit = protectedSubmit + +proc newVkPhysicalDeviceProtectedMemoryFeatures*(sType: VkStructureType, pNext: pointer = nil, protectedMemory: VkBool32): VkPhysicalDeviceProtectedMemoryFeatures = + result.sType = sType + result.pNext = pNext + result.protectedMemory = protectedMemory + +proc newVkPhysicalDeviceProtectedMemoryProperties*(sType: VkStructureType, pNext: pointer = nil, protectedNoFault: VkBool32): VkPhysicalDeviceProtectedMemoryProperties = + result.sType = sType + result.pNext = pNext + result.protectedNoFault = protectedNoFault + +proc newVkDeviceQueueInfo2*(sType: VkStructureType, pNext: pointer = nil, flags: VkDeviceQueueCreateFlags = 0.VkDeviceQueueCreateFlags, queueFamilyIndex: uint32, queueIndex: uint32): VkDeviceQueueInfo2 = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.queueFamilyIndex = queueFamilyIndex + result.queueIndex = queueIndex + +proc newVkPipelineCoverageToColorStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCoverageToColorStateCreateFlagsNV = 0.VkPipelineCoverageToColorStateCreateFlagsNV, coverageToColorEnable: VkBool32, coverageToColorLocation: uint32): VkPipelineCoverageToColorStateCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.coverageToColorEnable = coverageToColorEnable + result.coverageToColorLocation = coverageToColorLocation + +proc newVkPhysicalDeviceSamplerFilterMinmaxProperties*(sType: VkStructureType, pNext: pointer = nil, filterMinmaxSingleComponentFormats: VkBool32, filterMinmaxImageComponentMapping: VkBool32): VkPhysicalDeviceSamplerFilterMinmaxProperties = + result.sType = sType + result.pNext = pNext + result.filterMinmaxSingleComponentFormats = filterMinmaxSingleComponentFormats + result.filterMinmaxImageComponentMapping = filterMinmaxImageComponentMapping + +proc newVkSampleLocationEXT*(x: float32, y: float32): VkSampleLocationEXT = + result.x = x + result.y = y + +proc newVkSampleLocationsInfoEXT*(sType: VkStructureType, pNext: pointer = nil, sampleLocationsPerPixel: VkSampleCountFlagBits, sampleLocationGridSize: VkExtent2D, sampleLocationsCount: uint32, pSampleLocations: ptr VkSampleLocationEXT): VkSampleLocationsInfoEXT = + result.sType = sType + result.pNext = pNext + result.sampleLocationsPerPixel = sampleLocationsPerPixel + result.sampleLocationGridSize = sampleLocationGridSize + result.sampleLocationsCount = sampleLocationsCount + result.pSampleLocations = pSampleLocations + +proc newVkAttachmentSampleLocationsEXT*(attachmentIndex: uint32, sampleLocationsInfo: VkSampleLocationsInfoEXT): VkAttachmentSampleLocationsEXT = + result.attachmentIndex = attachmentIndex + result.sampleLocationsInfo = sampleLocationsInfo + +proc newVkSubpassSampleLocationsEXT*(subpassIndex: uint32, sampleLocationsInfo: VkSampleLocationsInfoEXT): VkSubpassSampleLocationsEXT = + result.subpassIndex = subpassIndex + result.sampleLocationsInfo = sampleLocationsInfo + +proc newVkRenderPassSampleLocationsBeginInfoEXT*(sType: VkStructureType, pNext: pointer = nil, attachmentInitialSampleLocationsCount: uint32, pAttachmentInitialSampleLocations: ptr VkAttachmentSampleLocationsEXT, postSubpassSampleLocationsCount: uint32, pPostSubpassSampleLocations: ptr VkSubpassSampleLocationsEXT): VkRenderPassSampleLocationsBeginInfoEXT = + result.sType = sType + result.pNext = pNext + result.attachmentInitialSampleLocationsCount = attachmentInitialSampleLocationsCount + result.pAttachmentInitialSampleLocations = pAttachmentInitialSampleLocations + result.postSubpassSampleLocationsCount = postSubpassSampleLocationsCount + result.pPostSubpassSampleLocations = pPostSubpassSampleLocations + +proc newVkPipelineSampleLocationsStateCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, sampleLocationsEnable: VkBool32, sampleLocationsInfo: VkSampleLocationsInfoEXT): VkPipelineSampleLocationsStateCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.sampleLocationsEnable = sampleLocationsEnable + result.sampleLocationsInfo = sampleLocationsInfo + +proc newVkPhysicalDeviceSampleLocationsPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, sampleLocationSampleCounts: VkSampleCountFlags, maxSampleLocationGridSize: VkExtent2D, sampleLocationCoordinateRange: array[2, float32], sampleLocationSubPixelBits: uint32, variableSampleLocations: VkBool32): VkPhysicalDeviceSampleLocationsPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.sampleLocationSampleCounts = sampleLocationSampleCounts + result.maxSampleLocationGridSize = maxSampleLocationGridSize + result.sampleLocationCoordinateRange = sampleLocationCoordinateRange + result.sampleLocationSubPixelBits = sampleLocationSubPixelBits + result.variableSampleLocations = variableSampleLocations + +proc newVkMultisamplePropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxSampleLocationGridSize: VkExtent2D): VkMultisamplePropertiesEXT = + result.sType = sType + result.pNext = pNext + result.maxSampleLocationGridSize = maxSampleLocationGridSize + +proc newVkSamplerReductionModeCreateInfo*(sType: VkStructureType, pNext: pointer = nil, reductionMode: VkSamplerReductionMode): VkSamplerReductionModeCreateInfo = + result.sType = sType + result.pNext = pNext + result.reductionMode = reductionMode + +proc newVkPhysicalDeviceBlendOperationAdvancedFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, advancedBlendCoherentOperations: VkBool32): VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.advancedBlendCoherentOperations = advancedBlendCoherentOperations + +proc newVkPhysicalDeviceMultiDrawFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, multiDraw: VkBool32): VkPhysicalDeviceMultiDrawFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.multiDraw = multiDraw + +proc newVkPhysicalDeviceBlendOperationAdvancedPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, advancedBlendMaxColorAttachments: uint32, advancedBlendIndependentBlend: VkBool32, advancedBlendNonPremultipliedSrcColor: VkBool32, advancedBlendNonPremultipliedDstColor: VkBool32, advancedBlendCorrelatedOverlap: VkBool32, advancedBlendAllOperations: VkBool32): VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.advancedBlendMaxColorAttachments = advancedBlendMaxColorAttachments + result.advancedBlendIndependentBlend = advancedBlendIndependentBlend + result.advancedBlendNonPremultipliedSrcColor = advancedBlendNonPremultipliedSrcColor + result.advancedBlendNonPremultipliedDstColor = advancedBlendNonPremultipliedDstColor + result.advancedBlendCorrelatedOverlap = advancedBlendCorrelatedOverlap + result.advancedBlendAllOperations = advancedBlendAllOperations + +proc newVkPipelineColorBlendAdvancedStateCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, srcPremultiplied: VkBool32, dstPremultiplied: VkBool32, blendOverlap: VkBlendOverlapEXT): VkPipelineColorBlendAdvancedStateCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.srcPremultiplied = srcPremultiplied + result.dstPremultiplied = dstPremultiplied + result.blendOverlap = blendOverlap + +proc newVkPhysicalDeviceInlineUniformBlockFeatures*(sType: VkStructureType, pNext: pointer = nil, inlineUniformBlock: VkBool32, descriptorBindingInlineUniformBlockUpdateAfterBind: VkBool32): VkPhysicalDeviceInlineUniformBlockFeatures = + result.sType = sType + result.pNext = pNext + result.inlineUniformBlock = inlineUniformBlock + result.descriptorBindingInlineUniformBlockUpdateAfterBind = descriptorBindingInlineUniformBlockUpdateAfterBind + +proc newVkPhysicalDeviceInlineUniformBlockProperties*(sType: VkStructureType, pNext: pointer = nil, maxInlineUniformBlockSize: uint32, maxPerStageDescriptorInlineUniformBlocks: uint32, maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks: uint32, maxDescriptorSetInlineUniformBlocks: uint32, maxDescriptorSetUpdateAfterBindInlineUniformBlocks: uint32): VkPhysicalDeviceInlineUniformBlockProperties = + result.sType = sType + result.pNext = pNext + result.maxInlineUniformBlockSize = maxInlineUniformBlockSize + result.maxPerStageDescriptorInlineUniformBlocks = maxPerStageDescriptorInlineUniformBlocks + result.maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks = maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks + result.maxDescriptorSetInlineUniformBlocks = maxDescriptorSetInlineUniformBlocks + result.maxDescriptorSetUpdateAfterBindInlineUniformBlocks = maxDescriptorSetUpdateAfterBindInlineUniformBlocks + +proc newVkWriteDescriptorSetInlineUniformBlock*(sType: VkStructureType, pNext: pointer = nil, dataSize: uint32, pData: pointer = nil): VkWriteDescriptorSetInlineUniformBlock = + result.sType = sType + result.pNext = pNext + result.dataSize = dataSize + result.pData = pData + +proc newVkDescriptorPoolInlineUniformBlockCreateInfo*(sType: VkStructureType, pNext: pointer = nil, maxInlineUniformBlockBindings: uint32): VkDescriptorPoolInlineUniformBlockCreateInfo = + result.sType = sType + result.pNext = pNext + result.maxInlineUniformBlockBindings = maxInlineUniformBlockBindings + +proc newVkPipelineCoverageModulationStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCoverageModulationStateCreateFlagsNV = 0.VkPipelineCoverageModulationStateCreateFlagsNV, coverageModulationMode: VkCoverageModulationModeNV, coverageModulationTableEnable: VkBool32, coverageModulationTableCount: uint32, pCoverageModulationTable: ptr float32): VkPipelineCoverageModulationStateCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.coverageModulationMode = coverageModulationMode + result.coverageModulationTableEnable = coverageModulationTableEnable + result.coverageModulationTableCount = coverageModulationTableCount + result.pCoverageModulationTable = pCoverageModulationTable + +proc newVkImageFormatListCreateInfo*(sType: VkStructureType, pNext: pointer = nil, viewFormatCount: uint32, pViewFormats: ptr VkFormat): VkImageFormatListCreateInfo = + result.sType = sType + result.pNext = pNext + result.viewFormatCount = viewFormatCount + result.pViewFormats = pViewFormats + +proc newVkValidationCacheCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkValidationCacheCreateFlagsEXT = 0.VkValidationCacheCreateFlagsEXT, initialDataSize: uint, pInitialData: pointer = nil): VkValidationCacheCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.initialDataSize = initialDataSize + result.pInitialData = pInitialData + +proc newVkShaderModuleValidationCacheCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, validationCache: VkValidationCacheEXT): VkShaderModuleValidationCacheCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.validationCache = validationCache + +proc newVkPhysicalDeviceMaintenance3Properties*(sType: VkStructureType, pNext: pointer = nil, maxPerSetDescriptors: uint32, maxMemoryAllocationSize: VkDeviceSize): VkPhysicalDeviceMaintenance3Properties = + result.sType = sType + result.pNext = pNext + result.maxPerSetDescriptors = maxPerSetDescriptors + result.maxMemoryAllocationSize = maxMemoryAllocationSize + +proc newVkPhysicalDeviceMaintenance4Features*(sType: VkStructureType, pNext: pointer = nil, maintenance4: VkBool32): VkPhysicalDeviceMaintenance4Features = + result.sType = sType + result.pNext = pNext + result.maintenance4 = maintenance4 + +proc newVkPhysicalDeviceMaintenance4Properties*(sType: VkStructureType, pNext: pointer = nil, maxBufferSize: VkDeviceSize): VkPhysicalDeviceMaintenance4Properties = + result.sType = sType + result.pNext = pNext + result.maxBufferSize = maxBufferSize + +proc newVkPhysicalDeviceMaintenance5FeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, maintenance5: VkBool32): VkPhysicalDeviceMaintenance5FeaturesKHR = + result.sType = sType + result.pNext = pNext + result.maintenance5 = maintenance5 + +proc newVkPhysicalDeviceMaintenance5PropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, earlyFragmentMultisampleCoverageAfterSampleCounting: VkBool32, earlyFragmentSampleMaskTestBeforeSampleCounting: VkBool32, depthStencilSwizzleOneSupport: VkBool32, polygonModePointSize: VkBool32, nonStrictSinglePixelWideLinesUseParallelogram: VkBool32, nonStrictWideLinesUseParallelogram: VkBool32): VkPhysicalDeviceMaintenance5PropertiesKHR = + result.sType = sType + result.pNext = pNext + result.earlyFragmentMultisampleCoverageAfterSampleCounting = earlyFragmentMultisampleCoverageAfterSampleCounting + result.earlyFragmentSampleMaskTestBeforeSampleCounting = earlyFragmentSampleMaskTestBeforeSampleCounting + result.depthStencilSwizzleOneSupport = depthStencilSwizzleOneSupport + result.polygonModePointSize = polygonModePointSize + result.nonStrictSinglePixelWideLinesUseParallelogram = nonStrictSinglePixelWideLinesUseParallelogram + result.nonStrictWideLinesUseParallelogram = nonStrictWideLinesUseParallelogram + +proc newVkPhysicalDeviceMaintenance6FeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, maintenance6: VkBool32): VkPhysicalDeviceMaintenance6FeaturesKHR = + result.sType = sType + result.pNext = pNext + result.maintenance6 = maintenance6 + +proc newVkPhysicalDeviceMaintenance6PropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, blockTexelViewCompatibleMultipleLayers: VkBool32, maxCombinedImageSamplerDescriptorCount: uint32, fragmentShadingRateClampCombinerInputs: VkBool32): VkPhysicalDeviceMaintenance6PropertiesKHR = + result.sType = sType + result.pNext = pNext + result.blockTexelViewCompatibleMultipleLayers = blockTexelViewCompatibleMultipleLayers + result.maxCombinedImageSamplerDescriptorCount = maxCombinedImageSamplerDescriptorCount + result.fragmentShadingRateClampCombinerInputs = fragmentShadingRateClampCombinerInputs + +proc newVkRenderingAreaInfoKHR*(sType: VkStructureType, pNext: pointer = nil, viewMask: uint32, colorAttachmentCount: uint32, pColorAttachmentFormats: ptr VkFormat, depthAttachmentFormat: VkFormat, stencilAttachmentFormat: VkFormat): VkRenderingAreaInfoKHR = + result.sType = sType + result.pNext = pNext + result.viewMask = viewMask + result.colorAttachmentCount = colorAttachmentCount + result.pColorAttachmentFormats = pColorAttachmentFormats + result.depthAttachmentFormat = depthAttachmentFormat + result.stencilAttachmentFormat = stencilAttachmentFormat + +proc newVkDescriptorSetLayoutSupport*(sType: VkStructureType, pNext: pointer = nil, supported: VkBool32): VkDescriptorSetLayoutSupport = + result.sType = sType + result.pNext = pNext + result.supported = supported + +proc newVkPhysicalDeviceShaderDrawParametersFeatures*(sType: VkStructureType, pNext: pointer = nil, shaderDrawParameters: VkBool32): VkPhysicalDeviceShaderDrawParametersFeatures = + result.sType = sType + result.pNext = pNext + result.shaderDrawParameters = shaderDrawParameters + +proc newVkPhysicalDeviceShaderFloat16Int8Features*(sType: VkStructureType, pNext: pointer = nil, shaderFloat16: VkBool32, shaderInt8: VkBool32): VkPhysicalDeviceShaderFloat16Int8Features = + result.sType = sType + result.pNext = pNext + result.shaderFloat16 = shaderFloat16 + result.shaderInt8 = shaderInt8 + +proc newVkPhysicalDeviceFloatControlsProperties*(sType: VkStructureType, pNext: pointer = nil, denormBehaviorIndependence: VkShaderFloatControlsIndependence, roundingModeIndependence: VkShaderFloatControlsIndependence, shaderSignedZeroInfNanPreserveFloat16: VkBool32, shaderSignedZeroInfNanPreserveFloat32: VkBool32, shaderSignedZeroInfNanPreserveFloat64: VkBool32, shaderDenormPreserveFloat16: VkBool32, shaderDenormPreserveFloat32: VkBool32, shaderDenormPreserveFloat64: VkBool32, shaderDenormFlushToZeroFloat16: VkBool32, shaderDenormFlushToZeroFloat32: VkBool32, shaderDenormFlushToZeroFloat64: VkBool32, shaderRoundingModeRTEFloat16: VkBool32, shaderRoundingModeRTEFloat32: VkBool32, shaderRoundingModeRTEFloat64: VkBool32, shaderRoundingModeRTZFloat16: VkBool32, shaderRoundingModeRTZFloat32: VkBool32, shaderRoundingModeRTZFloat64: VkBool32): VkPhysicalDeviceFloatControlsProperties = + result.sType = sType + result.pNext = pNext + result.denormBehaviorIndependence = denormBehaviorIndependence + result.roundingModeIndependence = roundingModeIndependence + result.shaderSignedZeroInfNanPreserveFloat16 = shaderSignedZeroInfNanPreserveFloat16 + result.shaderSignedZeroInfNanPreserveFloat32 = shaderSignedZeroInfNanPreserveFloat32 + result.shaderSignedZeroInfNanPreserveFloat64 = shaderSignedZeroInfNanPreserveFloat64 + result.shaderDenormPreserveFloat16 = shaderDenormPreserveFloat16 + result.shaderDenormPreserveFloat32 = shaderDenormPreserveFloat32 + result.shaderDenormPreserveFloat64 = shaderDenormPreserveFloat64 + result.shaderDenormFlushToZeroFloat16 = shaderDenormFlushToZeroFloat16 + result.shaderDenormFlushToZeroFloat32 = shaderDenormFlushToZeroFloat32 + result.shaderDenormFlushToZeroFloat64 = shaderDenormFlushToZeroFloat64 + result.shaderRoundingModeRTEFloat16 = shaderRoundingModeRTEFloat16 + result.shaderRoundingModeRTEFloat32 = shaderRoundingModeRTEFloat32 + result.shaderRoundingModeRTEFloat64 = shaderRoundingModeRTEFloat64 + result.shaderRoundingModeRTZFloat16 = shaderRoundingModeRTZFloat16 + result.shaderRoundingModeRTZFloat32 = shaderRoundingModeRTZFloat32 + result.shaderRoundingModeRTZFloat64 = shaderRoundingModeRTZFloat64 + +proc newVkPhysicalDeviceHostQueryResetFeatures*(sType: VkStructureType, pNext: pointer = nil, hostQueryReset: VkBool32): VkPhysicalDeviceHostQueryResetFeatures = + result.sType = sType + result.pNext = pNext + result.hostQueryReset = hostQueryReset + +proc newVkNativeBufferUsage2ANDROID*(consumer: uint64, producer: uint64): VkNativeBufferUsage2ANDROID = + result.consumer = consumer + result.producer = producer + +proc newVkNativeBufferANDROID*(sType: VkStructureType, pNext: pointer = nil, handle: pointer = nil, stride: int, format: int, usage: int, usage2: VkNativeBufferUsage2ANDROID): VkNativeBufferANDROID = + result.sType = sType + result.pNext = pNext + result.handle = handle + result.stride = stride + result.format = format + result.usage = usage + result.usage2 = usage2 + +proc newVkSwapchainImageCreateInfoANDROID*(sType: VkStructureType, pNext: pointer = nil, usage: VkSwapchainImageUsageFlagsANDROID): VkSwapchainImageCreateInfoANDROID = + result.sType = sType + result.pNext = pNext + result.usage = usage + +proc newVkPhysicalDevicePresentationPropertiesANDROID*(sType: VkStructureType, pNext: pointer = nil, sharedImage: VkBool32): VkPhysicalDevicePresentationPropertiesANDROID = + result.sType = sType + result.pNext = pNext + result.sharedImage = sharedImage + +proc newVkShaderResourceUsageAMD*(numUsedVgprs: uint32, numUsedSgprs: uint32, ldsSizePerLocalWorkGroup: uint32, ldsUsageSizeInBytes: uint, scratchMemUsageInBytes: uint): VkShaderResourceUsageAMD = + result.numUsedVgprs = numUsedVgprs + result.numUsedSgprs = numUsedSgprs + result.ldsSizePerLocalWorkGroup = ldsSizePerLocalWorkGroup + result.ldsUsageSizeInBytes = ldsUsageSizeInBytes + result.scratchMemUsageInBytes = scratchMemUsageInBytes + +proc newVkShaderStatisticsInfoAMD*(shaderStageMask: VkShaderStageFlags, resourceUsage: VkShaderResourceUsageAMD, numPhysicalVgprs: uint32, numPhysicalSgprs: uint32, numAvailableVgprs: uint32, numAvailableSgprs: uint32, computeWorkGroupSize: array[3, uint32]): VkShaderStatisticsInfoAMD = + result.shaderStageMask = shaderStageMask + result.resourceUsage = resourceUsage + result.numPhysicalVgprs = numPhysicalVgprs + result.numPhysicalSgprs = numPhysicalSgprs + result.numAvailableVgprs = numAvailableVgprs + result.numAvailableSgprs = numAvailableSgprs + result.computeWorkGroupSize = computeWorkGroupSize + +proc newVkDeviceQueueGlobalPriorityCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, globalPriority: VkQueueGlobalPriorityKHR): VkDeviceQueueGlobalPriorityCreateInfoKHR = + result.sType = sType + result.pNext = pNext + result.globalPriority = globalPriority + +proc newVkPhysicalDeviceGlobalPriorityQueryFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, globalPriorityQuery: VkBool32): VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR = + result.sType = sType + result.pNext = pNext + result.globalPriorityQuery = globalPriorityQuery + +proc newVkQueueFamilyGlobalPriorityPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, priorityCount: uint32, priorities: array[VK_MAX_GLOBAL_PRIORITY_SIZE_KHR, VkQueueGlobalPriorityKHR]): VkQueueFamilyGlobalPriorityPropertiesKHR = + result.sType = sType + result.pNext = pNext + result.priorityCount = priorityCount + result.priorities = priorities + +proc newVkDebugUtilsObjectNameInfoEXT*(sType: VkStructureType, pNext: pointer = nil, objectType: VkObjectType, objectHandle: uint64, pObjectName: cstring): VkDebugUtilsObjectNameInfoEXT = + result.sType = sType + result.pNext = pNext + result.objectType = objectType + result.objectHandle = objectHandle + result.pObjectName = pObjectName + +proc newVkDebugUtilsObjectTagInfoEXT*(sType: VkStructureType, pNext: pointer = nil, objectType: VkObjectType, objectHandle: uint64, tagName: uint64, tagSize: uint, pTag: pointer = nil): VkDebugUtilsObjectTagInfoEXT = + result.sType = sType + result.pNext = pNext + result.objectType = objectType + result.objectHandle = objectHandle + result.tagName = tagName + result.tagSize = tagSize + result.pTag = pTag + +proc newVkDebugUtilsLabelEXT*(sType: VkStructureType, pNext: pointer = nil, pLabelName: cstring, color: array[4, float32]): VkDebugUtilsLabelEXT = + result.sType = sType + result.pNext = pNext + result.pLabelName = pLabelName + result.color = color + +proc newVkDebugUtilsMessengerCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkDebugUtilsMessengerCreateFlagsEXT = 0.VkDebugUtilsMessengerCreateFlagsEXT, messageSeverity: VkDebugUtilsMessageSeverityFlagsEXT, messageType: VkDebugUtilsMessageTypeFlagsEXT, pfnUserCallback: PFN_vkDebugUtilsMessengerCallbackEXT, pUserData: pointer = nil): VkDebugUtilsMessengerCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.messageSeverity = messageSeverity + result.messageType = messageType + result.pfnUserCallback = pfnUserCallback + result.pUserData = pUserData + +proc newVkDebugUtilsMessengerCallbackDataEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkDebugUtilsMessengerCallbackDataFlagsEXT = 0.VkDebugUtilsMessengerCallbackDataFlagsEXT, pMessageIdName: cstring, messageIdNumber: int32, pMessage: cstring, queueLabelCount: uint32, pQueueLabels: ptr VkDebugUtilsLabelEXT, cmdBufLabelCount: uint32, pCmdBufLabels: ptr VkDebugUtilsLabelEXT, objectCount: uint32, pObjects: ptr VkDebugUtilsObjectNameInfoEXT): VkDebugUtilsMessengerCallbackDataEXT = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.pMessageIdName = pMessageIdName + result.messageIdNumber = messageIdNumber + result.pMessage = pMessage + result.queueLabelCount = queueLabelCount + result.pQueueLabels = pQueueLabels + result.cmdBufLabelCount = cmdBufLabelCount + result.pCmdBufLabels = pCmdBufLabels + result.objectCount = objectCount + result.pObjects = pObjects + +proc newVkPhysicalDeviceDeviceMemoryReportFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, deviceMemoryReport: VkBool32): VkPhysicalDeviceDeviceMemoryReportFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.deviceMemoryReport = deviceMemoryReport + +proc newVkDeviceDeviceMemoryReportCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkDeviceMemoryReportFlagsEXT = 0.VkDeviceMemoryReportFlagsEXT, pfnUserCallback: PFN_vkDeviceMemoryReportCallbackEXT, pUserData: pointer = nil): VkDeviceDeviceMemoryReportCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.pfnUserCallback = pfnUserCallback + result.pUserData = pUserData + +proc newVkDeviceMemoryReportCallbackDataEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkDeviceMemoryReportFlagsEXT = 0.VkDeviceMemoryReportFlagsEXT, `type`: VkDeviceMemoryReportEventTypeEXT, memoryObjectId: uint64, size: VkDeviceSize, objectType: VkObjectType, objectHandle: uint64, heapIndex: uint32): VkDeviceMemoryReportCallbackDataEXT = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.`type` = `type` + result.memoryObjectId = memoryObjectId + result.size = size + result.objectType = objectType + result.objectHandle = objectHandle + result.heapIndex = heapIndex + +proc newVkImportMemoryHostPointerInfoEXT*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, pHostPointer: pointer = nil): VkImportMemoryHostPointerInfoEXT = + result.sType = sType + result.pNext = pNext + result.handleType = handleType + result.pHostPointer = pHostPointer + +proc newVkMemoryHostPointerPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryHostPointerPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.memoryTypeBits = memoryTypeBits + +proc newVkPhysicalDeviceExternalMemoryHostPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, minImportedHostPointerAlignment: VkDeviceSize): VkPhysicalDeviceExternalMemoryHostPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.minImportedHostPointerAlignment = minImportedHostPointerAlignment + +proc newVkPhysicalDeviceConservativeRasterizationPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, primitiveOverestimationSize: float32, maxExtraPrimitiveOverestimationSize: float32, extraPrimitiveOverestimationSizeGranularity: float32, primitiveUnderestimation: VkBool32, conservativePointAndLineRasterization: VkBool32, degenerateTrianglesRasterized: VkBool32, degenerateLinesRasterized: VkBool32, fullyCoveredFragmentShaderInputVariable: VkBool32, conservativeRasterizationPostDepthCoverage: VkBool32): VkPhysicalDeviceConservativeRasterizationPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.primitiveOverestimationSize = primitiveOverestimationSize + result.maxExtraPrimitiveOverestimationSize = maxExtraPrimitiveOverestimationSize + result.extraPrimitiveOverestimationSizeGranularity = extraPrimitiveOverestimationSizeGranularity + result.primitiveUnderestimation = primitiveUnderestimation + result.conservativePointAndLineRasterization = conservativePointAndLineRasterization + result.degenerateTrianglesRasterized = degenerateTrianglesRasterized + result.degenerateLinesRasterized = degenerateLinesRasterized + result.fullyCoveredFragmentShaderInputVariable = fullyCoveredFragmentShaderInputVariable + result.conservativeRasterizationPostDepthCoverage = conservativeRasterizationPostDepthCoverage + +proc newVkCalibratedTimestampInfoKHR*(sType: VkStructureType, pNext: pointer = nil, timeDomain: VkTimeDomainKHR): VkCalibratedTimestampInfoKHR = + result.sType = sType + result.pNext = pNext + result.timeDomain = timeDomain + +proc newVkPhysicalDeviceShaderCorePropertiesAMD*(sType: VkStructureType, pNext: pointer = nil, shaderEngineCount: uint32, shaderArraysPerEngineCount: uint32, computeUnitsPerShaderArray: uint32, simdPerComputeUnit: uint32, wavefrontsPerSimd: uint32, wavefrontSize: uint32, sgprsPerSimd: uint32, minSgprAllocation: uint32, maxSgprAllocation: uint32, sgprAllocationGranularity: uint32, vgprsPerSimd: uint32, minVgprAllocation: uint32, maxVgprAllocation: uint32, vgprAllocationGranularity: uint32): VkPhysicalDeviceShaderCorePropertiesAMD = + result.sType = sType + result.pNext = pNext + result.shaderEngineCount = shaderEngineCount + result.shaderArraysPerEngineCount = shaderArraysPerEngineCount + result.computeUnitsPerShaderArray = computeUnitsPerShaderArray + result.simdPerComputeUnit = simdPerComputeUnit + result.wavefrontsPerSimd = wavefrontsPerSimd + result.wavefrontSize = wavefrontSize + result.sgprsPerSimd = sgprsPerSimd + result.minSgprAllocation = minSgprAllocation + result.maxSgprAllocation = maxSgprAllocation + result.sgprAllocationGranularity = sgprAllocationGranularity + result.vgprsPerSimd = vgprsPerSimd + result.minVgprAllocation = minVgprAllocation + result.maxVgprAllocation = maxVgprAllocation + result.vgprAllocationGranularity = vgprAllocationGranularity + +proc newVkPhysicalDeviceShaderCoreProperties2AMD*(sType: VkStructureType, pNext: pointer = nil, shaderCoreFeatures: VkShaderCorePropertiesFlagsAMD, activeComputeUnitCount: uint32): VkPhysicalDeviceShaderCoreProperties2AMD = + result.sType = sType + result.pNext = pNext + result.shaderCoreFeatures = shaderCoreFeatures + result.activeComputeUnitCount = activeComputeUnitCount + +proc newVkPipelineRasterizationConservativeStateCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineRasterizationConservativeStateCreateFlagsEXT = 0.VkPipelineRasterizationConservativeStateCreateFlagsEXT, conservativeRasterizationMode: VkConservativeRasterizationModeEXT, extraPrimitiveOverestimationSize: float32): VkPipelineRasterizationConservativeStateCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.conservativeRasterizationMode = conservativeRasterizationMode + result.extraPrimitiveOverestimationSize = extraPrimitiveOverestimationSize + +proc newVkPhysicalDeviceDescriptorIndexingFeatures*(sType: VkStructureType, pNext: pointer = nil, shaderInputAttachmentArrayDynamicIndexing: VkBool32, shaderUniformTexelBufferArrayDynamicIndexing: VkBool32, shaderStorageTexelBufferArrayDynamicIndexing: VkBool32, shaderUniformBufferArrayNonUniformIndexing: VkBool32, shaderSampledImageArrayNonUniformIndexing: VkBool32, shaderStorageBufferArrayNonUniformIndexing: VkBool32, shaderStorageImageArrayNonUniformIndexing: VkBool32, shaderInputAttachmentArrayNonUniformIndexing: VkBool32, shaderUniformTexelBufferArrayNonUniformIndexing: VkBool32, shaderStorageTexelBufferArrayNonUniformIndexing: VkBool32, descriptorBindingUniformBufferUpdateAfterBind: VkBool32, descriptorBindingSampledImageUpdateAfterBind: VkBool32, descriptorBindingStorageImageUpdateAfterBind: VkBool32, descriptorBindingStorageBufferUpdateAfterBind: VkBool32, descriptorBindingUniformTexelBufferUpdateAfterBind: VkBool32, descriptorBindingStorageTexelBufferUpdateAfterBind: VkBool32, descriptorBindingUpdateUnusedWhilePending: VkBool32, descriptorBindingPartiallyBound: VkBool32, descriptorBindingVariableDescriptorCount: VkBool32, runtimeDescriptorArray: VkBool32): VkPhysicalDeviceDescriptorIndexingFeatures = + result.sType = sType + result.pNext = pNext + result.shaderInputAttachmentArrayDynamicIndexing = shaderInputAttachmentArrayDynamicIndexing + result.shaderUniformTexelBufferArrayDynamicIndexing = shaderUniformTexelBufferArrayDynamicIndexing + result.shaderStorageTexelBufferArrayDynamicIndexing = shaderStorageTexelBufferArrayDynamicIndexing + result.shaderUniformBufferArrayNonUniformIndexing = shaderUniformBufferArrayNonUniformIndexing + result.shaderSampledImageArrayNonUniformIndexing = shaderSampledImageArrayNonUniformIndexing + result.shaderStorageBufferArrayNonUniformIndexing = shaderStorageBufferArrayNonUniformIndexing + result.shaderStorageImageArrayNonUniformIndexing = shaderStorageImageArrayNonUniformIndexing + result.shaderInputAttachmentArrayNonUniformIndexing = shaderInputAttachmentArrayNonUniformIndexing + result.shaderUniformTexelBufferArrayNonUniformIndexing = shaderUniformTexelBufferArrayNonUniformIndexing + result.shaderStorageTexelBufferArrayNonUniformIndexing = shaderStorageTexelBufferArrayNonUniformIndexing + result.descriptorBindingUniformBufferUpdateAfterBind = descriptorBindingUniformBufferUpdateAfterBind + result.descriptorBindingSampledImageUpdateAfterBind = descriptorBindingSampledImageUpdateAfterBind + result.descriptorBindingStorageImageUpdateAfterBind = descriptorBindingStorageImageUpdateAfterBind + result.descriptorBindingStorageBufferUpdateAfterBind = descriptorBindingStorageBufferUpdateAfterBind + result.descriptorBindingUniformTexelBufferUpdateAfterBind = descriptorBindingUniformTexelBufferUpdateAfterBind + result.descriptorBindingStorageTexelBufferUpdateAfterBind = descriptorBindingStorageTexelBufferUpdateAfterBind + result.descriptorBindingUpdateUnusedWhilePending = descriptorBindingUpdateUnusedWhilePending + result.descriptorBindingPartiallyBound = descriptorBindingPartiallyBound + result.descriptorBindingVariableDescriptorCount = descriptorBindingVariableDescriptorCount + result.runtimeDescriptorArray = runtimeDescriptorArray + +proc newVkPhysicalDeviceDescriptorIndexingProperties*(sType: VkStructureType, pNext: pointer = nil, maxUpdateAfterBindDescriptorsInAllPools: uint32, shaderUniformBufferArrayNonUniformIndexingNative: VkBool32, shaderSampledImageArrayNonUniformIndexingNative: VkBool32, shaderStorageBufferArrayNonUniformIndexingNative: VkBool32, shaderStorageImageArrayNonUniformIndexingNative: VkBool32, shaderInputAttachmentArrayNonUniformIndexingNative: VkBool32, robustBufferAccessUpdateAfterBind: VkBool32, quadDivergentImplicitLod: VkBool32, maxPerStageDescriptorUpdateAfterBindSamplers: uint32, maxPerStageDescriptorUpdateAfterBindUniformBuffers: uint32, maxPerStageDescriptorUpdateAfterBindStorageBuffers: uint32, maxPerStageDescriptorUpdateAfterBindSampledImages: uint32, maxPerStageDescriptorUpdateAfterBindStorageImages: uint32, maxPerStageDescriptorUpdateAfterBindInputAttachments: uint32, maxPerStageUpdateAfterBindResources: uint32, maxDescriptorSetUpdateAfterBindSamplers: uint32, maxDescriptorSetUpdateAfterBindUniformBuffers: uint32, maxDescriptorSetUpdateAfterBindUniformBuffersDynamic: uint32, maxDescriptorSetUpdateAfterBindStorageBuffers: uint32, maxDescriptorSetUpdateAfterBindStorageBuffersDynamic: uint32, maxDescriptorSetUpdateAfterBindSampledImages: uint32, maxDescriptorSetUpdateAfterBindStorageImages: uint32, maxDescriptorSetUpdateAfterBindInputAttachments: uint32): VkPhysicalDeviceDescriptorIndexingProperties = + result.sType = sType + result.pNext = pNext + result.maxUpdateAfterBindDescriptorsInAllPools = maxUpdateAfterBindDescriptorsInAllPools + result.shaderUniformBufferArrayNonUniformIndexingNative = shaderUniformBufferArrayNonUniformIndexingNative + result.shaderSampledImageArrayNonUniformIndexingNative = shaderSampledImageArrayNonUniformIndexingNative + result.shaderStorageBufferArrayNonUniformIndexingNative = shaderStorageBufferArrayNonUniformIndexingNative + result.shaderStorageImageArrayNonUniformIndexingNative = shaderStorageImageArrayNonUniformIndexingNative + result.shaderInputAttachmentArrayNonUniformIndexingNative = shaderInputAttachmentArrayNonUniformIndexingNative + result.robustBufferAccessUpdateAfterBind = robustBufferAccessUpdateAfterBind + result.quadDivergentImplicitLod = quadDivergentImplicitLod + result.maxPerStageDescriptorUpdateAfterBindSamplers = maxPerStageDescriptorUpdateAfterBindSamplers + result.maxPerStageDescriptorUpdateAfterBindUniformBuffers = maxPerStageDescriptorUpdateAfterBindUniformBuffers + result.maxPerStageDescriptorUpdateAfterBindStorageBuffers = maxPerStageDescriptorUpdateAfterBindStorageBuffers + result.maxPerStageDescriptorUpdateAfterBindSampledImages = maxPerStageDescriptorUpdateAfterBindSampledImages + result.maxPerStageDescriptorUpdateAfterBindStorageImages = maxPerStageDescriptorUpdateAfterBindStorageImages + result.maxPerStageDescriptorUpdateAfterBindInputAttachments = maxPerStageDescriptorUpdateAfterBindInputAttachments + result.maxPerStageUpdateAfterBindResources = maxPerStageUpdateAfterBindResources + result.maxDescriptorSetUpdateAfterBindSamplers = maxDescriptorSetUpdateAfterBindSamplers + result.maxDescriptorSetUpdateAfterBindUniformBuffers = maxDescriptorSetUpdateAfterBindUniformBuffers + result.maxDescriptorSetUpdateAfterBindUniformBuffersDynamic = maxDescriptorSetUpdateAfterBindUniformBuffersDynamic + result.maxDescriptorSetUpdateAfterBindStorageBuffers = maxDescriptorSetUpdateAfterBindStorageBuffers + result.maxDescriptorSetUpdateAfterBindStorageBuffersDynamic = maxDescriptorSetUpdateAfterBindStorageBuffersDynamic + result.maxDescriptorSetUpdateAfterBindSampledImages = maxDescriptorSetUpdateAfterBindSampledImages + result.maxDescriptorSetUpdateAfterBindStorageImages = maxDescriptorSetUpdateAfterBindStorageImages + result.maxDescriptorSetUpdateAfterBindInputAttachments = maxDescriptorSetUpdateAfterBindInputAttachments + +proc newVkDescriptorSetLayoutBindingFlagsCreateInfo*(sType: VkStructureType, pNext: pointer = nil, bindingCount: uint32, pBindingFlags: ptr VkDescriptorBindingFlags): VkDescriptorSetLayoutBindingFlagsCreateInfo = + result.sType = sType + result.pNext = pNext + result.bindingCount = bindingCount + result.pBindingFlags = pBindingFlags + +proc newVkDescriptorSetVariableDescriptorCountAllocateInfo*(sType: VkStructureType, pNext: pointer = nil, descriptorSetCount: uint32, pDescriptorCounts: ptr uint32): VkDescriptorSetVariableDescriptorCountAllocateInfo = + result.sType = sType + result.pNext = pNext + result.descriptorSetCount = descriptorSetCount + result.pDescriptorCounts = pDescriptorCounts + +proc newVkDescriptorSetVariableDescriptorCountLayoutSupport*(sType: VkStructureType, pNext: pointer = nil, maxVariableDescriptorCount: uint32): VkDescriptorSetVariableDescriptorCountLayoutSupport = + result.sType = sType + result.pNext = pNext + result.maxVariableDescriptorCount = maxVariableDescriptorCount + +proc newVkAttachmentDescription2*(sType: VkStructureType, pNext: pointer = nil, flags: VkAttachmentDescriptionFlags = 0.VkAttachmentDescriptionFlags, format: VkFormat, samples: VkSampleCountFlagBits, loadOp: VkAttachmentLoadOp, storeOp: VkAttachmentStoreOp, stencilLoadOp: VkAttachmentLoadOp, stencilStoreOp: VkAttachmentStoreOp, initialLayout: VkImageLayout, finalLayout: VkImageLayout): VkAttachmentDescription2 = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.format = format + result.samples = samples + result.loadOp = loadOp + result.storeOp = storeOp + result.stencilLoadOp = stencilLoadOp + result.stencilStoreOp = stencilStoreOp + result.initialLayout = initialLayout + result.finalLayout = finalLayout + +proc newVkAttachmentReference2*(sType: VkStructureType, pNext: pointer = nil, attachment: uint32, layout: VkImageLayout, aspectMask: VkImageAspectFlags): VkAttachmentReference2 = + result.sType = sType + result.pNext = pNext + result.attachment = attachment + result.layout = layout + result.aspectMask = aspectMask + +proc newVkSubpassDescription2*(sType: VkStructureType, pNext: pointer = nil, flags: VkSubpassDescriptionFlags = 0.VkSubpassDescriptionFlags, pipelineBindPoint: VkPipelineBindPoint, viewMask: uint32, inputAttachmentCount: uint32, pInputAttachments: ptr VkAttachmentReference2, colorAttachmentCount: uint32, pColorAttachments: ptr VkAttachmentReference2, pResolveAttachments: ptr VkAttachmentReference2, pDepthStencilAttachment: ptr VkAttachmentReference2, preserveAttachmentCount: uint32, pPreserveAttachments: ptr uint32): VkSubpassDescription2 = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.pipelineBindPoint = pipelineBindPoint + result.viewMask = viewMask + result.inputAttachmentCount = inputAttachmentCount + result.pInputAttachments = pInputAttachments + result.colorAttachmentCount = colorAttachmentCount + result.pColorAttachments = pColorAttachments + result.pResolveAttachments = pResolveAttachments + result.pDepthStencilAttachment = pDepthStencilAttachment + result.preserveAttachmentCount = preserveAttachmentCount + result.pPreserveAttachments = pPreserveAttachments + +proc newVkSubpassDependency2*(sType: VkStructureType, pNext: pointer = nil, srcSubpass: uint32, dstSubpass: uint32, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags, dependencyFlags: VkDependencyFlags, viewOffset: int32): VkSubpassDependency2 = + result.sType = sType + result.pNext = pNext + result.srcSubpass = srcSubpass + result.dstSubpass = dstSubpass + result.srcStageMask = srcStageMask + result.dstStageMask = dstStageMask + result.srcAccessMask = srcAccessMask + result.dstAccessMask = dstAccessMask + result.dependencyFlags = dependencyFlags + result.viewOffset = viewOffset + +proc newVkRenderPassCreateInfo2*(sType: VkStructureType, pNext: pointer = nil, flags: VkRenderPassCreateFlags = 0.VkRenderPassCreateFlags, attachmentCount: uint32, pAttachments: ptr VkAttachmentDescription2, subpassCount: uint32, pSubpasses: ptr VkSubpassDescription2, dependencyCount: uint32, pDependencies: ptr VkSubpassDependency2, correlatedViewMaskCount: uint32, pCorrelatedViewMasks: ptr uint32): VkRenderPassCreateInfo2 = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.attachmentCount = attachmentCount + result.pAttachments = pAttachments + result.subpassCount = subpassCount + result.pSubpasses = pSubpasses + result.dependencyCount = dependencyCount + result.pDependencies = pDependencies + result.correlatedViewMaskCount = correlatedViewMaskCount + result.pCorrelatedViewMasks = pCorrelatedViewMasks + +proc newVkSubpassBeginInfo*(sType: VkStructureType, pNext: pointer = nil, contents: VkSubpassContents): VkSubpassBeginInfo = + result.sType = sType + result.pNext = pNext + result.contents = contents + +proc newVkSubpassEndInfo*(sType: VkStructureType, pNext: pointer = nil): VkSubpassEndInfo = + result.sType = sType + result.pNext = pNext + +proc newVkPhysicalDeviceTimelineSemaphoreFeatures*(sType: VkStructureType, pNext: pointer = nil, timelineSemaphore: VkBool32): VkPhysicalDeviceTimelineSemaphoreFeatures = + result.sType = sType + result.pNext = pNext + result.timelineSemaphore = timelineSemaphore + +proc newVkPhysicalDeviceTimelineSemaphoreProperties*(sType: VkStructureType, pNext: pointer = nil, maxTimelineSemaphoreValueDifference: uint64): VkPhysicalDeviceTimelineSemaphoreProperties = + result.sType = sType + result.pNext = pNext + result.maxTimelineSemaphoreValueDifference = maxTimelineSemaphoreValueDifference + +proc newVkSemaphoreTypeCreateInfo*(sType: VkStructureType, pNext: pointer = nil, semaphoreType: VkSemaphoreType, initialValue: uint64): VkSemaphoreTypeCreateInfo = + result.sType = sType + result.pNext = pNext + result.semaphoreType = semaphoreType + result.initialValue = initialValue + +proc newVkTimelineSemaphoreSubmitInfo*(sType: VkStructureType, pNext: pointer = nil, waitSemaphoreValueCount: uint32, pWaitSemaphoreValues: ptr uint64, signalSemaphoreValueCount: uint32, pSignalSemaphoreValues: ptr uint64): VkTimelineSemaphoreSubmitInfo = + result.sType = sType + result.pNext = pNext + result.waitSemaphoreValueCount = waitSemaphoreValueCount + result.pWaitSemaphoreValues = pWaitSemaphoreValues + result.signalSemaphoreValueCount = signalSemaphoreValueCount + result.pSignalSemaphoreValues = pSignalSemaphoreValues + +proc newVkSemaphoreWaitInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkSemaphoreWaitFlags = 0.VkSemaphoreWaitFlags, semaphoreCount: uint32, pSemaphores: ptr VkSemaphore, pValues: ptr uint64): VkSemaphoreWaitInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.semaphoreCount = semaphoreCount + result.pSemaphores = pSemaphores + result.pValues = pValues + +proc newVkSemaphoreSignalInfo*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, value: uint64): VkSemaphoreSignalInfo = + result.sType = sType + result.pNext = pNext + result.semaphore = semaphore + result.value = value + +proc newVkVertexInputBindingDivisorDescriptionKHR*(binding: uint32, divisor: uint32): VkVertexInputBindingDivisorDescriptionKHR = + result.binding = binding + result.divisor = divisor + +proc newVkPipelineVertexInputDivisorStateCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, vertexBindingDivisorCount: uint32, pVertexBindingDivisors: ptr VkVertexInputBindingDivisorDescriptionKHR): VkPipelineVertexInputDivisorStateCreateInfoKHR = + result.sType = sType + result.pNext = pNext + result.vertexBindingDivisorCount = vertexBindingDivisorCount + result.pVertexBindingDivisors = pVertexBindingDivisors + +proc newVkPhysicalDeviceVertexAttributeDivisorPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxVertexAttribDivisor: uint32): VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.maxVertexAttribDivisor = maxVertexAttribDivisor + +proc newVkPhysicalDeviceVertexAttributeDivisorPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, maxVertexAttribDivisor: uint32, supportsNonZeroFirstInstance: VkBool32): VkPhysicalDeviceVertexAttributeDivisorPropertiesKHR = + result.sType = sType + result.pNext = pNext + result.maxVertexAttribDivisor = maxVertexAttribDivisor + result.supportsNonZeroFirstInstance = supportsNonZeroFirstInstance + +proc newVkPhysicalDevicePCIBusInfoPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, pciDomain: uint32, pciBus: uint32, pciDevice: uint32, pciFunction: uint32): VkPhysicalDevicePCIBusInfoPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.pciDomain = pciDomain + result.pciBus = pciBus + result.pciDevice = pciDevice + result.pciFunction = pciFunction + +proc newVkImportAndroidHardwareBufferInfoANDROID*(sType: VkStructureType, pNext: pointer = nil, buffer: ptr AHardwareBuffer): VkImportAndroidHardwareBufferInfoANDROID = + result.sType = sType + result.pNext = pNext + result.buffer = buffer + +proc newVkAndroidHardwareBufferUsageANDROID*(sType: VkStructureType, pNext: pointer = nil, androidHardwareBufferUsage: uint64): VkAndroidHardwareBufferUsageANDROID = + result.sType = sType + result.pNext = pNext + result.androidHardwareBufferUsage = androidHardwareBufferUsage + +proc newVkAndroidHardwareBufferPropertiesANDROID*(sType: VkStructureType, pNext: pointer = nil, allocationSize: VkDeviceSize, memoryTypeBits: uint32): VkAndroidHardwareBufferPropertiesANDROID = + result.sType = sType + result.pNext = pNext + result.allocationSize = allocationSize + result.memoryTypeBits = memoryTypeBits + +proc newVkMemoryGetAndroidHardwareBufferInfoANDROID*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory): VkMemoryGetAndroidHardwareBufferInfoANDROID = + result.sType = sType + result.pNext = pNext + result.memory = memory + +proc newVkAndroidHardwareBufferFormatPropertiesANDROID*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat, externalFormat: uint64, formatFeatures: VkFormatFeatureFlags, samplerYcbcrConversionComponents: VkComponentMapping, suggestedYcbcrModel: VkSamplerYcbcrModelConversion, suggestedYcbcrRange: VkSamplerYcbcrRange, suggestedXChromaOffset: VkChromaLocation, suggestedYChromaOffset: VkChromaLocation): VkAndroidHardwareBufferFormatPropertiesANDROID = + result.sType = sType + result.pNext = pNext + result.format = format + result.externalFormat = externalFormat + result.formatFeatures = formatFeatures + result.samplerYcbcrConversionComponents = samplerYcbcrConversionComponents + result.suggestedYcbcrModel = suggestedYcbcrModel + result.suggestedYcbcrRange = suggestedYcbcrRange + result.suggestedXChromaOffset = suggestedXChromaOffset + result.suggestedYChromaOffset = suggestedYChromaOffset + +proc newVkCommandBufferInheritanceConditionalRenderingInfoEXT*(sType: VkStructureType, pNext: pointer = nil, conditionalRenderingEnable: VkBool32): VkCommandBufferInheritanceConditionalRenderingInfoEXT = + result.sType = sType + result.pNext = pNext + result.conditionalRenderingEnable = conditionalRenderingEnable + +proc newVkExternalFormatANDROID*(sType: VkStructureType, pNext: pointer = nil, externalFormat: uint64): VkExternalFormatANDROID = + result.sType = sType + result.pNext = pNext + result.externalFormat = externalFormat + +proc newVkPhysicalDevice8BitStorageFeatures*(sType: VkStructureType, pNext: pointer = nil, storageBuffer8BitAccess: VkBool32, uniformAndStorageBuffer8BitAccess: VkBool32, storagePushConstant8: VkBool32): VkPhysicalDevice8BitStorageFeatures = + result.sType = sType + result.pNext = pNext + result.storageBuffer8BitAccess = storageBuffer8BitAccess + result.uniformAndStorageBuffer8BitAccess = uniformAndStorageBuffer8BitAccess + result.storagePushConstant8 = storagePushConstant8 + +proc newVkPhysicalDeviceConditionalRenderingFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, conditionalRendering: VkBool32, inheritedConditionalRendering: VkBool32): VkPhysicalDeviceConditionalRenderingFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.conditionalRendering = conditionalRendering + result.inheritedConditionalRendering = inheritedConditionalRendering + +proc newVkPhysicalDeviceVulkanMemoryModelFeatures*(sType: VkStructureType, pNext: pointer = nil, vulkanMemoryModel: VkBool32, vulkanMemoryModelDeviceScope: VkBool32, vulkanMemoryModelAvailabilityVisibilityChains: VkBool32): VkPhysicalDeviceVulkanMemoryModelFeatures = + result.sType = sType + result.pNext = pNext + result.vulkanMemoryModel = vulkanMemoryModel + result.vulkanMemoryModelDeviceScope = vulkanMemoryModelDeviceScope + result.vulkanMemoryModelAvailabilityVisibilityChains = vulkanMemoryModelAvailabilityVisibilityChains + +proc newVkPhysicalDeviceShaderAtomicInt64Features*(sType: VkStructureType, pNext: pointer = nil, shaderBufferInt64Atomics: VkBool32, shaderSharedInt64Atomics: VkBool32): VkPhysicalDeviceShaderAtomicInt64Features = + result.sType = sType + result.pNext = pNext + result.shaderBufferInt64Atomics = shaderBufferInt64Atomics + result.shaderSharedInt64Atomics = shaderSharedInt64Atomics + +proc newVkPhysicalDeviceShaderAtomicFloatFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderBufferFloat32Atomics: VkBool32, shaderBufferFloat32AtomicAdd: VkBool32, shaderBufferFloat64Atomics: VkBool32, shaderBufferFloat64AtomicAdd: VkBool32, shaderSharedFloat32Atomics: VkBool32, shaderSharedFloat32AtomicAdd: VkBool32, shaderSharedFloat64Atomics: VkBool32, shaderSharedFloat64AtomicAdd: VkBool32, shaderImageFloat32Atomics: VkBool32, shaderImageFloat32AtomicAdd: VkBool32, sparseImageFloat32Atomics: VkBool32, sparseImageFloat32AtomicAdd: VkBool32): VkPhysicalDeviceShaderAtomicFloatFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.shaderBufferFloat32Atomics = shaderBufferFloat32Atomics + result.shaderBufferFloat32AtomicAdd = shaderBufferFloat32AtomicAdd + result.shaderBufferFloat64Atomics = shaderBufferFloat64Atomics + result.shaderBufferFloat64AtomicAdd = shaderBufferFloat64AtomicAdd + result.shaderSharedFloat32Atomics = shaderSharedFloat32Atomics + result.shaderSharedFloat32AtomicAdd = shaderSharedFloat32AtomicAdd + result.shaderSharedFloat64Atomics = shaderSharedFloat64Atomics + result.shaderSharedFloat64AtomicAdd = shaderSharedFloat64AtomicAdd + result.shaderImageFloat32Atomics = shaderImageFloat32Atomics + result.shaderImageFloat32AtomicAdd = shaderImageFloat32AtomicAdd + result.sparseImageFloat32Atomics = sparseImageFloat32Atomics + result.sparseImageFloat32AtomicAdd = sparseImageFloat32AtomicAdd + +proc newVkPhysicalDeviceShaderAtomicFloat2FeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderBufferFloat16Atomics: VkBool32, shaderBufferFloat16AtomicAdd: VkBool32, shaderBufferFloat16AtomicMinMax: VkBool32, shaderBufferFloat32AtomicMinMax: VkBool32, shaderBufferFloat64AtomicMinMax: VkBool32, shaderSharedFloat16Atomics: VkBool32, shaderSharedFloat16AtomicAdd: VkBool32, shaderSharedFloat16AtomicMinMax: VkBool32, shaderSharedFloat32AtomicMinMax: VkBool32, shaderSharedFloat64AtomicMinMax: VkBool32, shaderImageFloat32AtomicMinMax: VkBool32, sparseImageFloat32AtomicMinMax: VkBool32): VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT = + result.sType = sType + result.pNext = pNext + result.shaderBufferFloat16Atomics = shaderBufferFloat16Atomics + result.shaderBufferFloat16AtomicAdd = shaderBufferFloat16AtomicAdd + result.shaderBufferFloat16AtomicMinMax = shaderBufferFloat16AtomicMinMax + result.shaderBufferFloat32AtomicMinMax = shaderBufferFloat32AtomicMinMax + result.shaderBufferFloat64AtomicMinMax = shaderBufferFloat64AtomicMinMax + result.shaderSharedFloat16Atomics = shaderSharedFloat16Atomics + result.shaderSharedFloat16AtomicAdd = shaderSharedFloat16AtomicAdd + result.shaderSharedFloat16AtomicMinMax = shaderSharedFloat16AtomicMinMax + result.shaderSharedFloat32AtomicMinMax = shaderSharedFloat32AtomicMinMax + result.shaderSharedFloat64AtomicMinMax = shaderSharedFloat64AtomicMinMax + result.shaderImageFloat32AtomicMinMax = shaderImageFloat32AtomicMinMax + result.sparseImageFloat32AtomicMinMax = sparseImageFloat32AtomicMinMax + +proc newVkPhysicalDeviceVertexAttributeDivisorFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, vertexAttributeInstanceRateDivisor: VkBool32, vertexAttributeInstanceRateZeroDivisor: VkBool32): VkPhysicalDeviceVertexAttributeDivisorFeaturesKHR = + result.sType = sType + result.pNext = pNext + result.vertexAttributeInstanceRateDivisor = vertexAttributeInstanceRateDivisor + result.vertexAttributeInstanceRateZeroDivisor = vertexAttributeInstanceRateZeroDivisor + +proc newVkQueueFamilyCheckpointPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, checkpointExecutionStageMask: VkPipelineStageFlags): VkQueueFamilyCheckpointPropertiesNV = + result.sType = sType + result.pNext = pNext + result.checkpointExecutionStageMask = checkpointExecutionStageMask + +proc newVkCheckpointDataNV*(sType: VkStructureType, pNext: pointer = nil, stage: VkPipelineStageFlagBits, pCheckpointMarker: pointer = nil): VkCheckpointDataNV = + result.sType = sType + result.pNext = pNext + result.stage = stage + result.pCheckpointMarker = pCheckpointMarker + +proc newVkPhysicalDeviceDepthStencilResolveProperties*(sType: VkStructureType, pNext: pointer = nil, supportedDepthResolveModes: VkResolveModeFlags, supportedStencilResolveModes: VkResolveModeFlags, independentResolveNone: VkBool32, independentResolve: VkBool32): VkPhysicalDeviceDepthStencilResolveProperties = + result.sType = sType + result.pNext = pNext + result.supportedDepthResolveModes = supportedDepthResolveModes + result.supportedStencilResolveModes = supportedStencilResolveModes + result.independentResolveNone = independentResolveNone + result.independentResolve = independentResolve + +proc newVkSubpassDescriptionDepthStencilResolve*(sType: VkStructureType, pNext: pointer = nil, depthResolveMode: VkResolveModeFlagBits, stencilResolveMode: VkResolveModeFlagBits, pDepthStencilResolveAttachment: ptr VkAttachmentReference2): VkSubpassDescriptionDepthStencilResolve = + result.sType = sType + result.pNext = pNext + result.depthResolveMode = depthResolveMode + result.stencilResolveMode = stencilResolveMode + result.pDepthStencilResolveAttachment = pDepthStencilResolveAttachment + +proc newVkImageViewASTCDecodeModeEXT*(sType: VkStructureType, pNext: pointer = nil, decodeMode: VkFormat): VkImageViewASTCDecodeModeEXT = + result.sType = sType + result.pNext = pNext + result.decodeMode = decodeMode + +proc newVkPhysicalDeviceASTCDecodeFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, decodeModeSharedExponent: VkBool32): VkPhysicalDeviceASTCDecodeFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.decodeModeSharedExponent = decodeModeSharedExponent + +proc newVkPhysicalDeviceTransformFeedbackFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, transformFeedback: VkBool32, geometryStreams: VkBool32): VkPhysicalDeviceTransformFeedbackFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.transformFeedback = transformFeedback + result.geometryStreams = geometryStreams + +proc newVkPhysicalDeviceTransformFeedbackPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxTransformFeedbackStreams: uint32, maxTransformFeedbackBuffers: uint32, maxTransformFeedbackBufferSize: VkDeviceSize, maxTransformFeedbackStreamDataSize: uint32, maxTransformFeedbackBufferDataSize: uint32, maxTransformFeedbackBufferDataStride: uint32, transformFeedbackQueries: VkBool32, transformFeedbackStreamsLinesTriangles: VkBool32, transformFeedbackRasterizationStreamSelect: VkBool32, transformFeedbackDraw: VkBool32): VkPhysicalDeviceTransformFeedbackPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.maxTransformFeedbackStreams = maxTransformFeedbackStreams + result.maxTransformFeedbackBuffers = maxTransformFeedbackBuffers + result.maxTransformFeedbackBufferSize = maxTransformFeedbackBufferSize + result.maxTransformFeedbackStreamDataSize = maxTransformFeedbackStreamDataSize + result.maxTransformFeedbackBufferDataSize = maxTransformFeedbackBufferDataSize + result.maxTransformFeedbackBufferDataStride = maxTransformFeedbackBufferDataStride + result.transformFeedbackQueries = transformFeedbackQueries + result.transformFeedbackStreamsLinesTriangles = transformFeedbackStreamsLinesTriangles + result.transformFeedbackRasterizationStreamSelect = transformFeedbackRasterizationStreamSelect + result.transformFeedbackDraw = transformFeedbackDraw + +proc newVkPipelineRasterizationStateStreamCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineRasterizationStateStreamCreateFlagsEXT = 0.VkPipelineRasterizationStateStreamCreateFlagsEXT, rasterizationStream: uint32): VkPipelineRasterizationStateStreamCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.rasterizationStream = rasterizationStream + +proc newVkPhysicalDeviceRepresentativeFragmentTestFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, representativeFragmentTest: VkBool32): VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV = + result.sType = sType + result.pNext = pNext + result.representativeFragmentTest = representativeFragmentTest + +proc newVkPipelineRepresentativeFragmentTestStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, representativeFragmentTestEnable: VkBool32): VkPipelineRepresentativeFragmentTestStateCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.representativeFragmentTestEnable = representativeFragmentTestEnable + +proc newVkPhysicalDeviceExclusiveScissorFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, exclusiveScissor: VkBool32): VkPhysicalDeviceExclusiveScissorFeaturesNV = + result.sType = sType + result.pNext = pNext + result.exclusiveScissor = exclusiveScissor + +proc newVkPipelineViewportExclusiveScissorStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, exclusiveScissorCount: uint32, pExclusiveScissors: ptr VkRect2D): VkPipelineViewportExclusiveScissorStateCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.exclusiveScissorCount = exclusiveScissorCount + result.pExclusiveScissors = pExclusiveScissors + +proc newVkPhysicalDeviceCornerSampledImageFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, cornerSampledImage: VkBool32): VkPhysicalDeviceCornerSampledImageFeaturesNV = + result.sType = sType + result.pNext = pNext + result.cornerSampledImage = cornerSampledImage + +proc newVkPhysicalDeviceComputeShaderDerivativesFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, computeDerivativeGroupQuads: VkBool32, computeDerivativeGroupLinear: VkBool32): VkPhysicalDeviceComputeShaderDerivativesFeaturesNV = + result.sType = sType + result.pNext = pNext + result.computeDerivativeGroupQuads = computeDerivativeGroupQuads + result.computeDerivativeGroupLinear = computeDerivativeGroupLinear + +proc newVkPhysicalDeviceShaderImageFootprintFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, imageFootprint: VkBool32): VkPhysicalDeviceShaderImageFootprintFeaturesNV = + result.sType = sType + result.pNext = pNext + result.imageFootprint = imageFootprint + +proc newVkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, dedicatedAllocationImageAliasing: VkBool32): VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV = + result.sType = sType + result.pNext = pNext + result.dedicatedAllocationImageAliasing = dedicatedAllocationImageAliasing + +proc newVkPhysicalDeviceCopyMemoryIndirectFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, indirectCopy: VkBool32): VkPhysicalDeviceCopyMemoryIndirectFeaturesNV = + result.sType = sType + result.pNext = pNext + result.indirectCopy = indirectCopy + +proc newVkPhysicalDeviceCopyMemoryIndirectPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, supportedQueues: VkQueueFlags): VkPhysicalDeviceCopyMemoryIndirectPropertiesNV = + result.sType = sType + result.pNext = pNext + result.supportedQueues = supportedQueues + +proc newVkPhysicalDeviceMemoryDecompressionFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, memoryDecompression: VkBool32): VkPhysicalDeviceMemoryDecompressionFeaturesNV = + result.sType = sType + result.pNext = pNext + result.memoryDecompression = memoryDecompression + +proc newVkPhysicalDeviceMemoryDecompressionPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, decompressionMethods: VkMemoryDecompressionMethodFlagsNV, maxDecompressionIndirectCount: uint64): VkPhysicalDeviceMemoryDecompressionPropertiesNV = + result.sType = sType + result.pNext = pNext + result.decompressionMethods = decompressionMethods + result.maxDecompressionIndirectCount = maxDecompressionIndirectCount + +proc newVkShadingRatePaletteNV*(shadingRatePaletteEntryCount: uint32, pShadingRatePaletteEntries: ptr VkShadingRatePaletteEntryNV): VkShadingRatePaletteNV = + result.shadingRatePaletteEntryCount = shadingRatePaletteEntryCount + result.pShadingRatePaletteEntries = pShadingRatePaletteEntries + +proc newVkPipelineViewportShadingRateImageStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, shadingRateImageEnable: VkBool32, viewportCount: uint32, pShadingRatePalettes: ptr VkShadingRatePaletteNV): VkPipelineViewportShadingRateImageStateCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.shadingRateImageEnable = shadingRateImageEnable + result.viewportCount = viewportCount + result.pShadingRatePalettes = pShadingRatePalettes + +proc newVkPhysicalDeviceShadingRateImageFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, shadingRateImage: VkBool32, shadingRateCoarseSampleOrder: VkBool32): VkPhysicalDeviceShadingRateImageFeaturesNV = + result.sType = sType + result.pNext = pNext + result.shadingRateImage = shadingRateImage + result.shadingRateCoarseSampleOrder = shadingRateCoarseSampleOrder + +proc newVkPhysicalDeviceShadingRateImagePropertiesNV*(sType: VkStructureType, pNext: pointer = nil, shadingRateTexelSize: VkExtent2D, shadingRatePaletteSize: uint32, shadingRateMaxCoarseSamples: uint32): VkPhysicalDeviceShadingRateImagePropertiesNV = + result.sType = sType + result.pNext = pNext + result.shadingRateTexelSize = shadingRateTexelSize + result.shadingRatePaletteSize = shadingRatePaletteSize + result.shadingRateMaxCoarseSamples = shadingRateMaxCoarseSamples + +proc newVkPhysicalDeviceInvocationMaskFeaturesHUAWEI*(sType: VkStructureType, pNext: pointer = nil, invocationMask: VkBool32): VkPhysicalDeviceInvocationMaskFeaturesHUAWEI = + result.sType = sType + result.pNext = pNext + result.invocationMask = invocationMask + +proc newVkCoarseSampleLocationNV*(pixelX: uint32, pixelY: uint32, sample: uint32): VkCoarseSampleLocationNV = + result.pixelX = pixelX + result.pixelY = pixelY + result.sample = sample + +proc newVkCoarseSampleOrderCustomNV*(shadingRate: VkShadingRatePaletteEntryNV, sampleCount: uint32, sampleLocationCount: uint32, pSampleLocations: ptr VkCoarseSampleLocationNV): VkCoarseSampleOrderCustomNV = + result.shadingRate = shadingRate + result.sampleCount = sampleCount + result.sampleLocationCount = sampleLocationCount + result.pSampleLocations = pSampleLocations + +proc newVkPipelineViewportCoarseSampleOrderStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, sampleOrderType: VkCoarseSampleOrderTypeNV, customSampleOrderCount: uint32, pCustomSampleOrders: ptr VkCoarseSampleOrderCustomNV): VkPipelineViewportCoarseSampleOrderStateCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.sampleOrderType = sampleOrderType + result.customSampleOrderCount = customSampleOrderCount + result.pCustomSampleOrders = pCustomSampleOrders + +proc newVkPhysicalDeviceMeshShaderFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, taskShader: VkBool32, meshShader: VkBool32): VkPhysicalDeviceMeshShaderFeaturesNV = + result.sType = sType + result.pNext = pNext + result.taskShader = taskShader + result.meshShader = meshShader + +proc newVkPhysicalDeviceMeshShaderPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, maxDrawMeshTasksCount: uint32, maxTaskWorkGroupInvocations: uint32, maxTaskWorkGroupSize: array[3, uint32], maxTaskTotalMemorySize: uint32, maxTaskOutputCount: uint32, maxMeshWorkGroupInvocations: uint32, maxMeshWorkGroupSize: array[3, uint32], maxMeshTotalMemorySize: uint32, maxMeshOutputVertices: uint32, maxMeshOutputPrimitives: uint32, maxMeshMultiviewViewCount: uint32, meshOutputPerVertexGranularity: uint32, meshOutputPerPrimitiveGranularity: uint32): VkPhysicalDeviceMeshShaderPropertiesNV = + result.sType = sType + result.pNext = pNext + result.maxDrawMeshTasksCount = maxDrawMeshTasksCount + result.maxTaskWorkGroupInvocations = maxTaskWorkGroupInvocations + result.maxTaskWorkGroupSize = maxTaskWorkGroupSize + result.maxTaskTotalMemorySize = maxTaskTotalMemorySize + result.maxTaskOutputCount = maxTaskOutputCount + result.maxMeshWorkGroupInvocations = maxMeshWorkGroupInvocations + result.maxMeshWorkGroupSize = maxMeshWorkGroupSize + result.maxMeshTotalMemorySize = maxMeshTotalMemorySize + result.maxMeshOutputVertices = maxMeshOutputVertices + result.maxMeshOutputPrimitives = maxMeshOutputPrimitives + result.maxMeshMultiviewViewCount = maxMeshMultiviewViewCount + result.meshOutputPerVertexGranularity = meshOutputPerVertexGranularity + result.meshOutputPerPrimitiveGranularity = meshOutputPerPrimitiveGranularity + +proc newVkDrawMeshTasksIndirectCommandNV*(taskCount: uint32, firstTask: uint32): VkDrawMeshTasksIndirectCommandNV = + result.taskCount = taskCount + result.firstTask = firstTask + +proc newVkPhysicalDeviceMeshShaderFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, taskShader: VkBool32, meshShader: VkBool32, multiviewMeshShader: VkBool32, primitiveFragmentShadingRateMeshShader: VkBool32, meshShaderQueries: VkBool32): VkPhysicalDeviceMeshShaderFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.taskShader = taskShader + result.meshShader = meshShader + result.multiviewMeshShader = multiviewMeshShader + result.primitiveFragmentShadingRateMeshShader = primitiveFragmentShadingRateMeshShader + result.meshShaderQueries = meshShaderQueries + +proc newVkPhysicalDeviceMeshShaderPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxTaskWorkGroupTotalCount: uint32, maxTaskWorkGroupCount: array[3, uint32], maxTaskWorkGroupInvocations: uint32, maxTaskWorkGroupSize: array[3, uint32], maxTaskPayloadSize: uint32, maxTaskSharedMemorySize: uint32, maxTaskPayloadAndSharedMemorySize: uint32, maxMeshWorkGroupTotalCount: uint32, maxMeshWorkGroupCount: array[3, uint32], maxMeshWorkGroupInvocations: uint32, maxMeshWorkGroupSize: array[3, uint32], maxMeshSharedMemorySize: uint32, maxMeshPayloadAndSharedMemorySize: uint32, maxMeshOutputMemorySize: uint32, maxMeshPayloadAndOutputMemorySize: uint32, maxMeshOutputComponents: uint32, maxMeshOutputVertices: uint32, maxMeshOutputPrimitives: uint32, maxMeshOutputLayers: uint32, maxMeshMultiviewViewCount: uint32, meshOutputPerVertexGranularity: uint32, meshOutputPerPrimitiveGranularity: uint32, maxPreferredTaskWorkGroupInvocations: uint32, maxPreferredMeshWorkGroupInvocations: uint32, prefersLocalInvocationVertexOutput: VkBool32, prefersLocalInvocationPrimitiveOutput: VkBool32, prefersCompactVertexOutput: VkBool32, prefersCompactPrimitiveOutput: VkBool32): VkPhysicalDeviceMeshShaderPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.maxTaskWorkGroupTotalCount = maxTaskWorkGroupTotalCount + result.maxTaskWorkGroupCount = maxTaskWorkGroupCount + result.maxTaskWorkGroupInvocations = maxTaskWorkGroupInvocations + result.maxTaskWorkGroupSize = maxTaskWorkGroupSize + result.maxTaskPayloadSize = maxTaskPayloadSize + result.maxTaskSharedMemorySize = maxTaskSharedMemorySize + result.maxTaskPayloadAndSharedMemorySize = maxTaskPayloadAndSharedMemorySize + result.maxMeshWorkGroupTotalCount = maxMeshWorkGroupTotalCount + result.maxMeshWorkGroupCount = maxMeshWorkGroupCount + result.maxMeshWorkGroupInvocations = maxMeshWorkGroupInvocations + result.maxMeshWorkGroupSize = maxMeshWorkGroupSize + result.maxMeshSharedMemorySize = maxMeshSharedMemorySize + result.maxMeshPayloadAndSharedMemorySize = maxMeshPayloadAndSharedMemorySize + result.maxMeshOutputMemorySize = maxMeshOutputMemorySize + result.maxMeshPayloadAndOutputMemorySize = maxMeshPayloadAndOutputMemorySize + result.maxMeshOutputComponents = maxMeshOutputComponents + result.maxMeshOutputVertices = maxMeshOutputVertices + result.maxMeshOutputPrimitives = maxMeshOutputPrimitives + result.maxMeshOutputLayers = maxMeshOutputLayers + result.maxMeshMultiviewViewCount = maxMeshMultiviewViewCount + result.meshOutputPerVertexGranularity = meshOutputPerVertexGranularity + result.meshOutputPerPrimitiveGranularity = meshOutputPerPrimitiveGranularity + result.maxPreferredTaskWorkGroupInvocations = maxPreferredTaskWorkGroupInvocations + result.maxPreferredMeshWorkGroupInvocations = maxPreferredMeshWorkGroupInvocations + result.prefersLocalInvocationVertexOutput = prefersLocalInvocationVertexOutput + result.prefersLocalInvocationPrimitiveOutput = prefersLocalInvocationPrimitiveOutput + result.prefersCompactVertexOutput = prefersCompactVertexOutput + result.prefersCompactPrimitiveOutput = prefersCompactPrimitiveOutput + +proc newVkDrawMeshTasksIndirectCommandEXT*(groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): VkDrawMeshTasksIndirectCommandEXT = + result.groupCountX = groupCountX + result.groupCountY = groupCountY + result.groupCountZ = groupCountZ + +proc newVkRayTracingShaderGroupCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, `type`: VkRayTracingShaderGroupTypeKHR, generalShader: uint32, closestHitShader: uint32, anyHitShader: uint32, intersectionShader: uint32): VkRayTracingShaderGroupCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.`type` = `type` + result.generalShader = generalShader + result.closestHitShader = closestHitShader + result.anyHitShader = anyHitShader + result.intersectionShader = intersectionShader + +proc newVkRayTracingShaderGroupCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, `type`: VkRayTracingShaderGroupTypeKHR, generalShader: uint32, closestHitShader: uint32, anyHitShader: uint32, intersectionShader: uint32, pShaderGroupCaptureReplayHandle: pointer = nil): VkRayTracingShaderGroupCreateInfoKHR = + result.sType = sType + result.pNext = pNext + result.`type` = `type` + result.generalShader = generalShader + result.closestHitShader = closestHitShader + result.anyHitShader = anyHitShader + result.intersectionShader = intersectionShader + result.pShaderGroupCaptureReplayHandle = pShaderGroupCaptureReplayHandle + +proc newVkRayTracingPipelineCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, groupCount: uint32, pGroups: ptr VkRayTracingShaderGroupCreateInfoNV, maxRecursionDepth: uint32, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkRayTracingPipelineCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.stageCount = stageCount + result.pStages = pStages + result.groupCount = groupCount + result.pGroups = pGroups + result.maxRecursionDepth = maxRecursionDepth + result.layout = layout + result.basePipelineHandle = basePipelineHandle + result.basePipelineIndex = basePipelineIndex + +proc newVkRayTracingPipelineCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, groupCount: uint32, pGroups: ptr VkRayTracingShaderGroupCreateInfoKHR, maxPipelineRayRecursionDepth: uint32, pLibraryInfo: ptr VkPipelineLibraryCreateInfoKHR, pLibraryInterface: ptr VkRayTracingPipelineInterfaceCreateInfoKHR, pDynamicState: ptr VkPipelineDynamicStateCreateInfo, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkRayTracingPipelineCreateInfoKHR = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.stageCount = stageCount + result.pStages = pStages + result.groupCount = groupCount + result.pGroups = pGroups + result.maxPipelineRayRecursionDepth = maxPipelineRayRecursionDepth + result.pLibraryInfo = pLibraryInfo + result.pLibraryInterface = pLibraryInterface + result.pDynamicState = pDynamicState + result.layout = layout + result.basePipelineHandle = basePipelineHandle + result.basePipelineIndex = basePipelineIndex + +proc newVkGeometryTrianglesNV*(sType: VkStructureType, pNext: pointer = nil, vertexData: VkBuffer, vertexOffset: VkDeviceSize, vertexCount: uint32, vertexStride: VkDeviceSize, vertexFormat: VkFormat, indexData: VkBuffer, indexOffset: VkDeviceSize, indexCount: uint32, indexType: VkIndexType, transformData: VkBuffer, transformOffset: VkDeviceSize): VkGeometryTrianglesNV = + result.sType = sType + result.pNext = pNext + result.vertexData = vertexData + result.vertexOffset = vertexOffset + result.vertexCount = vertexCount + result.vertexStride = vertexStride + result.vertexFormat = vertexFormat + result.indexData = indexData + result.indexOffset = indexOffset + result.indexCount = indexCount + result.indexType = indexType + result.transformData = transformData + result.transformOffset = transformOffset + +proc newVkGeometryAABBNV*(sType: VkStructureType, pNext: pointer = nil, aabbData: VkBuffer, numAABBs: uint32, stride: uint32, offset: VkDeviceSize): VkGeometryAABBNV = + result.sType = sType + result.pNext = pNext + result.aabbData = aabbData + result.numAABBs = numAABBs + result.stride = stride + result.offset = offset + +proc newVkGeometryDataNV*(triangles: VkGeometryTrianglesNV, aabbs: VkGeometryAABBNV): VkGeometryDataNV = + result.triangles = triangles + result.aabbs = aabbs + +proc newVkGeometryNV*(sType: VkStructureType, pNext: pointer = nil, geometryType: VkGeometryTypeKHR, geometry: VkGeometryDataNV, flags: VkGeometryFlagsKHR = 0.VkGeometryFlagsKHR): VkGeometryNV = + result.sType = sType + result.pNext = pNext + result.geometryType = geometryType + result.geometry = geometry + result.flags = flags + +proc newVkAccelerationStructureInfoNV*(sType: VkStructureType, pNext: pointer = nil, `type`: VkAccelerationStructureTypeNV, flags: VkBuildAccelerationStructureFlagsNV = 0.VkBuildAccelerationStructureFlagsNV, instanceCount: uint32, geometryCount: uint32, pGeometries: ptr VkGeometryNV): VkAccelerationStructureInfoNV = + result.sType = sType + result.pNext = pNext + result.`type` = `type` + result.flags = flags + result.instanceCount = instanceCount + result.geometryCount = geometryCount + result.pGeometries = pGeometries + +proc newVkAccelerationStructureCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, compactedSize: VkDeviceSize, info: VkAccelerationStructureInfoNV): VkAccelerationStructureCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.compactedSize = compactedSize + result.info = info + +proc newVkBindAccelerationStructureMemoryInfoNV*(sType: VkStructureType, pNext: pointer = nil, accelerationStructure: VkAccelerationStructureNV, memory: VkDeviceMemory, memoryOffset: VkDeviceSize, deviceIndexCount: uint32, pDeviceIndices: ptr uint32): VkBindAccelerationStructureMemoryInfoNV = + result.sType = sType + result.pNext = pNext + result.accelerationStructure = accelerationStructure + result.memory = memory + result.memoryOffset = memoryOffset + result.deviceIndexCount = deviceIndexCount + result.pDeviceIndices = pDeviceIndices + +proc newVkWriteDescriptorSetAccelerationStructureKHR*(sType: VkStructureType, pNext: pointer = nil, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR): VkWriteDescriptorSetAccelerationStructureKHR = + result.sType = sType + result.pNext = pNext + result.accelerationStructureCount = accelerationStructureCount + result.pAccelerationStructures = pAccelerationStructures + +proc newVkWriteDescriptorSetAccelerationStructureNV*(sType: VkStructureType, pNext: pointer = nil, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureNV): VkWriteDescriptorSetAccelerationStructureNV = + result.sType = sType + result.pNext = pNext + result.accelerationStructureCount = accelerationStructureCount + result.pAccelerationStructures = pAccelerationStructures + +proc newVkAccelerationStructureMemoryRequirementsInfoNV*(sType: VkStructureType, pNext: pointer = nil, `type`: VkAccelerationStructureMemoryRequirementsTypeNV, accelerationStructure: VkAccelerationStructureNV): VkAccelerationStructureMemoryRequirementsInfoNV = + result.sType = sType + result.pNext = pNext + result.`type` = `type` + result.accelerationStructure = accelerationStructure + +proc newVkPhysicalDeviceAccelerationStructureFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, accelerationStructure: VkBool32, accelerationStructureCaptureReplay: VkBool32, accelerationStructureIndirectBuild: VkBool32, accelerationStructureHostCommands: VkBool32, descriptorBindingAccelerationStructureUpdateAfterBind: VkBool32): VkPhysicalDeviceAccelerationStructureFeaturesKHR = + result.sType = sType + result.pNext = pNext + result.accelerationStructure = accelerationStructure + result.accelerationStructureCaptureReplay = accelerationStructureCaptureReplay + result.accelerationStructureIndirectBuild = accelerationStructureIndirectBuild + result.accelerationStructureHostCommands = accelerationStructureHostCommands + result.descriptorBindingAccelerationStructureUpdateAfterBind = descriptorBindingAccelerationStructureUpdateAfterBind + +proc newVkPhysicalDeviceRayTracingPipelineFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, rayTracingPipeline: VkBool32, rayTracingPipelineShaderGroupHandleCaptureReplay: VkBool32, rayTracingPipelineShaderGroupHandleCaptureReplayMixed: VkBool32, rayTracingPipelineTraceRaysIndirect: VkBool32, rayTraversalPrimitiveCulling: VkBool32): VkPhysicalDeviceRayTracingPipelineFeaturesKHR = + result.sType = sType + result.pNext = pNext + result.rayTracingPipeline = rayTracingPipeline + result.rayTracingPipelineShaderGroupHandleCaptureReplay = rayTracingPipelineShaderGroupHandleCaptureReplay + result.rayTracingPipelineShaderGroupHandleCaptureReplayMixed = rayTracingPipelineShaderGroupHandleCaptureReplayMixed + result.rayTracingPipelineTraceRaysIndirect = rayTracingPipelineTraceRaysIndirect + result.rayTraversalPrimitiveCulling = rayTraversalPrimitiveCulling + +proc newVkPhysicalDeviceRayQueryFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, rayQuery: VkBool32): VkPhysicalDeviceRayQueryFeaturesKHR = + result.sType = sType + result.pNext = pNext + result.rayQuery = rayQuery + +proc newVkPhysicalDeviceAccelerationStructurePropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, maxGeometryCount: uint64, maxInstanceCount: uint64, maxPrimitiveCount: uint64, maxPerStageDescriptorAccelerationStructures: uint32, maxPerStageDescriptorUpdateAfterBindAccelerationStructures: uint32, maxDescriptorSetAccelerationStructures: uint32, maxDescriptorSetUpdateAfterBindAccelerationStructures: uint32, minAccelerationStructureScratchOffsetAlignment: uint32): VkPhysicalDeviceAccelerationStructurePropertiesKHR = + result.sType = sType + result.pNext = pNext + result.maxGeometryCount = maxGeometryCount + result.maxInstanceCount = maxInstanceCount + result.maxPrimitiveCount = maxPrimitiveCount + result.maxPerStageDescriptorAccelerationStructures = maxPerStageDescriptorAccelerationStructures + result.maxPerStageDescriptorUpdateAfterBindAccelerationStructures = maxPerStageDescriptorUpdateAfterBindAccelerationStructures + result.maxDescriptorSetAccelerationStructures = maxDescriptorSetAccelerationStructures + result.maxDescriptorSetUpdateAfterBindAccelerationStructures = maxDescriptorSetUpdateAfterBindAccelerationStructures + result.minAccelerationStructureScratchOffsetAlignment = minAccelerationStructureScratchOffsetAlignment + +proc newVkPhysicalDeviceRayTracingPipelinePropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, shaderGroupHandleSize: uint32, maxRayRecursionDepth: uint32, maxShaderGroupStride: uint32, shaderGroupBaseAlignment: uint32, shaderGroupHandleCaptureReplaySize: uint32, maxRayDispatchInvocationCount: uint32, shaderGroupHandleAlignment: uint32, maxRayHitAttributeSize: uint32): VkPhysicalDeviceRayTracingPipelinePropertiesKHR = + result.sType = sType + result.pNext = pNext + result.shaderGroupHandleSize = shaderGroupHandleSize + result.maxRayRecursionDepth = maxRayRecursionDepth + result.maxShaderGroupStride = maxShaderGroupStride + result.shaderGroupBaseAlignment = shaderGroupBaseAlignment + result.shaderGroupHandleCaptureReplaySize = shaderGroupHandleCaptureReplaySize + result.maxRayDispatchInvocationCount = maxRayDispatchInvocationCount + result.shaderGroupHandleAlignment = shaderGroupHandleAlignment + result.maxRayHitAttributeSize = maxRayHitAttributeSize + +proc newVkPhysicalDeviceRayTracingPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, shaderGroupHandleSize: uint32, maxRecursionDepth: uint32, maxShaderGroupStride: uint32, shaderGroupBaseAlignment: uint32, maxGeometryCount: uint64, maxInstanceCount: uint64, maxTriangleCount: uint64, maxDescriptorSetAccelerationStructures: uint32): VkPhysicalDeviceRayTracingPropertiesNV = + result.sType = sType + result.pNext = pNext + result.shaderGroupHandleSize = shaderGroupHandleSize + result.maxRecursionDepth = maxRecursionDepth + result.maxShaderGroupStride = maxShaderGroupStride + result.shaderGroupBaseAlignment = shaderGroupBaseAlignment + result.maxGeometryCount = maxGeometryCount + result.maxInstanceCount = maxInstanceCount + result.maxTriangleCount = maxTriangleCount + result.maxDescriptorSetAccelerationStructures = maxDescriptorSetAccelerationStructures + +proc newVkStridedDeviceAddressRegionKHR*(deviceAddress: VkDeviceAddress, stride: VkDeviceSize, size: VkDeviceSize): VkStridedDeviceAddressRegionKHR = + result.deviceAddress = deviceAddress + result.stride = stride + result.size = size + +proc newVkTraceRaysIndirectCommandKHR*(width: uint32, height: uint32, depth: uint32): VkTraceRaysIndirectCommandKHR = + result.width = width + result.height = height + result.depth = depth + +proc newVkTraceRaysIndirectCommand2KHR*(raygenShaderRecordAddress: VkDeviceAddress, raygenShaderRecordSize: VkDeviceSize, missShaderBindingTableAddress: VkDeviceAddress, missShaderBindingTableSize: VkDeviceSize, missShaderBindingTableStride: VkDeviceSize, hitShaderBindingTableAddress: VkDeviceAddress, hitShaderBindingTableSize: VkDeviceSize, hitShaderBindingTableStride: VkDeviceSize, callableShaderBindingTableAddress: VkDeviceAddress, callableShaderBindingTableSize: VkDeviceSize, callableShaderBindingTableStride: VkDeviceSize, width: uint32, height: uint32, depth: uint32): VkTraceRaysIndirectCommand2KHR = + result.raygenShaderRecordAddress = raygenShaderRecordAddress + result.raygenShaderRecordSize = raygenShaderRecordSize + result.missShaderBindingTableAddress = missShaderBindingTableAddress + result.missShaderBindingTableSize = missShaderBindingTableSize + result.missShaderBindingTableStride = missShaderBindingTableStride + result.hitShaderBindingTableAddress = hitShaderBindingTableAddress + result.hitShaderBindingTableSize = hitShaderBindingTableSize + result.hitShaderBindingTableStride = hitShaderBindingTableStride + result.callableShaderBindingTableAddress = callableShaderBindingTableAddress + result.callableShaderBindingTableSize = callableShaderBindingTableSize + result.callableShaderBindingTableStride = callableShaderBindingTableStride + result.width = width + result.height = height + result.depth = depth + +proc newVkPhysicalDeviceRayTracingMaintenance1FeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, rayTracingMaintenance1: VkBool32, rayTracingPipelineTraceRaysIndirect2: VkBool32): VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR = + result.sType = sType + result.pNext = pNext + result.rayTracingMaintenance1 = rayTracingMaintenance1 + result.rayTracingPipelineTraceRaysIndirect2 = rayTracingPipelineTraceRaysIndirect2 + +proc newVkDrmFormatModifierPropertiesListEXT*(sType: VkStructureType, pNext: pointer = nil, drmFormatModifierCount: uint32, pDrmFormatModifierProperties: ptr VkDrmFormatModifierPropertiesEXT): VkDrmFormatModifierPropertiesListEXT = + result.sType = sType + result.pNext = pNext + result.drmFormatModifierCount = drmFormatModifierCount + result.pDrmFormatModifierProperties = pDrmFormatModifierProperties + +proc newVkDrmFormatModifierPropertiesEXT*(drmFormatModifier: uint64, drmFormatModifierPlaneCount: uint32, drmFormatModifierTilingFeatures: VkFormatFeatureFlags): VkDrmFormatModifierPropertiesEXT = + result.drmFormatModifier = drmFormatModifier + result.drmFormatModifierPlaneCount = drmFormatModifierPlaneCount + result.drmFormatModifierTilingFeatures = drmFormatModifierTilingFeatures + +proc newVkPhysicalDeviceImageDrmFormatModifierInfoEXT*(sType: VkStructureType, pNext: pointer = nil, drmFormatModifier: uint64, sharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32): VkPhysicalDeviceImageDrmFormatModifierInfoEXT = + result.sType = sType + result.pNext = pNext + result.drmFormatModifier = drmFormatModifier + result.sharingMode = sharingMode + result.queueFamilyIndexCount = queueFamilyIndexCount + result.pQueueFamilyIndices = pQueueFamilyIndices + +proc newVkImageDrmFormatModifierListCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, drmFormatModifierCount: uint32, pDrmFormatModifiers: ptr uint64): VkImageDrmFormatModifierListCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.drmFormatModifierCount = drmFormatModifierCount + result.pDrmFormatModifiers = pDrmFormatModifiers + +proc newVkImageDrmFormatModifierExplicitCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, drmFormatModifier: uint64, drmFormatModifierPlaneCount: uint32, pPlaneLayouts: ptr VkSubresourceLayout): VkImageDrmFormatModifierExplicitCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.drmFormatModifier = drmFormatModifier + result.drmFormatModifierPlaneCount = drmFormatModifierPlaneCount + result.pPlaneLayouts = pPlaneLayouts + +proc newVkImageDrmFormatModifierPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, drmFormatModifier: uint64): VkImageDrmFormatModifierPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.drmFormatModifier = drmFormatModifier + +proc newVkImageStencilUsageCreateInfo*(sType: VkStructureType, pNext: pointer = nil, stencilUsage: VkImageUsageFlags): VkImageStencilUsageCreateInfo = + result.sType = sType + result.pNext = pNext + result.stencilUsage = stencilUsage + +proc newVkDeviceMemoryOverallocationCreateInfoAMD*(sType: VkStructureType, pNext: pointer = nil, overallocationBehavior: VkMemoryOverallocationBehaviorAMD): VkDeviceMemoryOverallocationCreateInfoAMD = + result.sType = sType + result.pNext = pNext + result.overallocationBehavior = overallocationBehavior + +proc newVkPhysicalDeviceFragmentDensityMapFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, fragmentDensityMap: VkBool32, fragmentDensityMapDynamic: VkBool32, fragmentDensityMapNonSubsampledImages: VkBool32): VkPhysicalDeviceFragmentDensityMapFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.fragmentDensityMap = fragmentDensityMap + result.fragmentDensityMapDynamic = fragmentDensityMapDynamic + result.fragmentDensityMapNonSubsampledImages = fragmentDensityMapNonSubsampledImages + +proc newVkPhysicalDeviceFragmentDensityMap2FeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, fragmentDensityMapDeferred: VkBool32): VkPhysicalDeviceFragmentDensityMap2FeaturesEXT = + result.sType = sType + result.pNext = pNext + result.fragmentDensityMapDeferred = fragmentDensityMapDeferred + +proc newVkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, fragmentDensityMapOffset: VkBool32): VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM = + result.sType = sType + result.pNext = pNext + result.fragmentDensityMapOffset = fragmentDensityMapOffset + +proc newVkPhysicalDeviceFragmentDensityMapPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, minFragmentDensityTexelSize: VkExtent2D, maxFragmentDensityTexelSize: VkExtent2D, fragmentDensityInvocations: VkBool32): VkPhysicalDeviceFragmentDensityMapPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.minFragmentDensityTexelSize = minFragmentDensityTexelSize + result.maxFragmentDensityTexelSize = maxFragmentDensityTexelSize + result.fragmentDensityInvocations = fragmentDensityInvocations + +proc newVkPhysicalDeviceFragmentDensityMap2PropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, subsampledLoads: VkBool32, subsampledCoarseReconstructionEarlyAccess: VkBool32, maxSubsampledArrayLayers: uint32, maxDescriptorSetSubsampledSamplers: uint32): VkPhysicalDeviceFragmentDensityMap2PropertiesEXT = + result.sType = sType + result.pNext = pNext + result.subsampledLoads = subsampledLoads + result.subsampledCoarseReconstructionEarlyAccess = subsampledCoarseReconstructionEarlyAccess + result.maxSubsampledArrayLayers = maxSubsampledArrayLayers + result.maxDescriptorSetSubsampledSamplers = maxDescriptorSetSubsampledSamplers + +proc newVkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM*(sType: VkStructureType, pNext: pointer = nil, fragmentDensityOffsetGranularity: VkExtent2D): VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM = + result.sType = sType + result.pNext = pNext + result.fragmentDensityOffsetGranularity = fragmentDensityOffsetGranularity + +proc newVkRenderPassFragmentDensityMapCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, fragmentDensityMapAttachment: VkAttachmentReference): VkRenderPassFragmentDensityMapCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.fragmentDensityMapAttachment = fragmentDensityMapAttachment + +proc newVkSubpassFragmentDensityMapOffsetEndInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, fragmentDensityOffsetCount: uint32, pFragmentDensityOffsets: ptr VkOffset2D): VkSubpassFragmentDensityMapOffsetEndInfoQCOM = + result.sType = sType + result.pNext = pNext + result.fragmentDensityOffsetCount = fragmentDensityOffsetCount + result.pFragmentDensityOffsets = pFragmentDensityOffsets + +proc newVkPhysicalDeviceScalarBlockLayoutFeatures*(sType: VkStructureType, pNext: pointer = nil, scalarBlockLayout: VkBool32): VkPhysicalDeviceScalarBlockLayoutFeatures = + result.sType = sType + result.pNext = pNext + result.scalarBlockLayout = scalarBlockLayout + +proc newVkSurfaceProtectedCapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, supportsProtected: VkBool32): VkSurfaceProtectedCapabilitiesKHR = + result.sType = sType + result.pNext = pNext + result.supportsProtected = supportsProtected + +proc newVkPhysicalDeviceUniformBufferStandardLayoutFeatures*(sType: VkStructureType, pNext: pointer = nil, uniformBufferStandardLayout: VkBool32): VkPhysicalDeviceUniformBufferStandardLayoutFeatures = + result.sType = sType + result.pNext = pNext + result.uniformBufferStandardLayout = uniformBufferStandardLayout + +proc newVkPhysicalDeviceDepthClipEnableFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, depthClipEnable: VkBool32): VkPhysicalDeviceDepthClipEnableFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.depthClipEnable = depthClipEnable + +proc newVkPipelineRasterizationDepthClipStateCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineRasterizationDepthClipStateCreateFlagsEXT = 0.VkPipelineRasterizationDepthClipStateCreateFlagsEXT, depthClipEnable: VkBool32): VkPipelineRasterizationDepthClipStateCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.depthClipEnable = depthClipEnable + +proc newVkPhysicalDeviceMemoryBudgetPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, heapBudget: array[VK_MAX_MEMORY_HEAPS, VkDeviceSize], heapUsage: array[VK_MAX_MEMORY_HEAPS, VkDeviceSize]): VkPhysicalDeviceMemoryBudgetPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.heapBudget = heapBudget + result.heapUsage = heapUsage + +proc newVkPhysicalDeviceMemoryPriorityFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, memoryPriority: VkBool32): VkPhysicalDeviceMemoryPriorityFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.memoryPriority = memoryPriority + +proc newVkMemoryPriorityAllocateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, priority: float32): VkMemoryPriorityAllocateInfoEXT = + result.sType = sType + result.pNext = pNext + result.priority = priority + +proc newVkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, pageableDeviceLocalMemory: VkBool32): VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.pageableDeviceLocalMemory = pageableDeviceLocalMemory + +proc newVkPhysicalDeviceBufferDeviceAddressFeatures*(sType: VkStructureType, pNext: pointer = nil, bufferDeviceAddress: VkBool32, bufferDeviceAddressCaptureReplay: VkBool32, bufferDeviceAddressMultiDevice: VkBool32): VkPhysicalDeviceBufferDeviceAddressFeatures = + result.sType = sType + result.pNext = pNext + result.bufferDeviceAddress = bufferDeviceAddress + result.bufferDeviceAddressCaptureReplay = bufferDeviceAddressCaptureReplay + result.bufferDeviceAddressMultiDevice = bufferDeviceAddressMultiDevice + +proc newVkPhysicalDeviceBufferDeviceAddressFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, bufferDeviceAddress: VkBool32, bufferDeviceAddressCaptureReplay: VkBool32, bufferDeviceAddressMultiDevice: VkBool32): VkPhysicalDeviceBufferDeviceAddressFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.bufferDeviceAddress = bufferDeviceAddress + result.bufferDeviceAddressCaptureReplay = bufferDeviceAddressCaptureReplay + result.bufferDeviceAddressMultiDevice = bufferDeviceAddressMultiDevice + +proc newVkBufferDeviceAddressInfo*(sType: VkStructureType, pNext: pointer = nil, buffer: VkBuffer): VkBufferDeviceAddressInfo = + result.sType = sType + result.pNext = pNext + result.buffer = buffer + +proc newVkBufferOpaqueCaptureAddressCreateInfo*(sType: VkStructureType, pNext: pointer = nil, opaqueCaptureAddress: uint64): VkBufferOpaqueCaptureAddressCreateInfo = + result.sType = sType + result.pNext = pNext + result.opaqueCaptureAddress = opaqueCaptureAddress + +proc newVkBufferDeviceAddressCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, deviceAddress: VkDeviceAddress): VkBufferDeviceAddressCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.deviceAddress = deviceAddress + +proc newVkPhysicalDeviceImageViewImageFormatInfoEXT*(sType: VkStructureType, pNext: pointer = nil, imageViewType: VkImageViewType): VkPhysicalDeviceImageViewImageFormatInfoEXT = + result.sType = sType + result.pNext = pNext + result.imageViewType = imageViewType + +proc newVkFilterCubicImageViewImageFormatPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, filterCubic: VkBool32, filterCubicMinmax: VkBool32): VkFilterCubicImageViewImageFormatPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.filterCubic = filterCubic + result.filterCubicMinmax = filterCubicMinmax + +proc newVkPhysicalDeviceImagelessFramebufferFeatures*(sType: VkStructureType, pNext: pointer = nil, imagelessFramebuffer: VkBool32): VkPhysicalDeviceImagelessFramebufferFeatures = + result.sType = sType + result.pNext = pNext + result.imagelessFramebuffer = imagelessFramebuffer + +proc newVkFramebufferAttachmentsCreateInfo*(sType: VkStructureType, pNext: pointer = nil, attachmentImageInfoCount: uint32, pAttachmentImageInfos: ptr VkFramebufferAttachmentImageInfo): VkFramebufferAttachmentsCreateInfo = + result.sType = sType + result.pNext = pNext + result.attachmentImageInfoCount = attachmentImageInfoCount + result.pAttachmentImageInfos = pAttachmentImageInfos + +proc newVkFramebufferAttachmentImageInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkImageCreateFlags = 0.VkImageCreateFlags, usage: VkImageUsageFlags, width: uint32, height: uint32, layerCount: uint32, viewFormatCount: uint32, pViewFormats: ptr VkFormat): VkFramebufferAttachmentImageInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.usage = usage + result.width = width + result.height = height + result.layerCount = layerCount + result.viewFormatCount = viewFormatCount + result.pViewFormats = pViewFormats + +proc newVkRenderPassAttachmentBeginInfo*(sType: VkStructureType, pNext: pointer = nil, attachmentCount: uint32, pAttachments: ptr VkImageView): VkRenderPassAttachmentBeginInfo = + result.sType = sType + result.pNext = pNext + result.attachmentCount = attachmentCount + result.pAttachments = pAttachments + +proc newVkPhysicalDeviceTextureCompressionASTCHDRFeatures*(sType: VkStructureType, pNext: pointer = nil, textureCompressionASTC_HDR: VkBool32): VkPhysicalDeviceTextureCompressionASTCHDRFeatures = + result.sType = sType + result.pNext = pNext + result.textureCompressionASTC_HDR = textureCompressionASTC_HDR + +proc newVkPhysicalDeviceCooperativeMatrixFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, cooperativeMatrix: VkBool32, cooperativeMatrixRobustBufferAccess: VkBool32): VkPhysicalDeviceCooperativeMatrixFeaturesNV = + result.sType = sType + result.pNext = pNext + result.cooperativeMatrix = cooperativeMatrix + result.cooperativeMatrixRobustBufferAccess = cooperativeMatrixRobustBufferAccess + +proc newVkPhysicalDeviceCooperativeMatrixPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, cooperativeMatrixSupportedStages: VkShaderStageFlags): VkPhysicalDeviceCooperativeMatrixPropertiesNV = + result.sType = sType + result.pNext = pNext + result.cooperativeMatrixSupportedStages = cooperativeMatrixSupportedStages + +proc newVkCooperativeMatrixPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, MSize: uint32, NSize: uint32, KSize: uint32, AType: VkComponentTypeNV, BType: VkComponentTypeNV, CType: VkComponentTypeNV, DType: VkComponentTypeNV, scope: VkScopeNV): VkCooperativeMatrixPropertiesNV = + result.sType = sType + result.pNext = pNext + result.MSize = MSize + result.NSize = NSize + result.KSize = KSize + result.AType = AType + result.BType = BType + result.CType = CType + result.DType = DType + result.scope = scope + +proc newVkPhysicalDeviceYcbcrImageArraysFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, ycbcrImageArrays: VkBool32): VkPhysicalDeviceYcbcrImageArraysFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.ycbcrImageArrays = ycbcrImageArrays + +proc newVkImageViewHandleInfoNVX*(sType: VkStructureType, pNext: pointer = nil, imageView: VkImageView, descriptorType: VkDescriptorType, sampler: VkSampler): VkImageViewHandleInfoNVX = + result.sType = sType + result.pNext = pNext + result.imageView = imageView + result.descriptorType = descriptorType + result.sampler = sampler + +proc newVkImageViewAddressPropertiesNVX*(sType: VkStructureType, pNext: pointer = nil, deviceAddress: VkDeviceAddress, size: VkDeviceSize): VkImageViewAddressPropertiesNVX = + result.sType = sType + result.pNext = pNext + result.deviceAddress = deviceAddress + result.size = size + +proc newVkPresentFrameTokenGGP*(sType: VkStructureType, pNext: pointer = nil, frameToken: GgpFrameToken): VkPresentFrameTokenGGP = + result.sType = sType + result.pNext = pNext + result.frameToken = frameToken + +proc newVkPipelineCreationFeedback*(flags: VkPipelineCreationFeedbackFlags = 0.VkPipelineCreationFeedbackFlags, duration: uint64): VkPipelineCreationFeedback = + result.flags = flags + result.duration = duration + +proc newVkPipelineCreationFeedbackCreateInfo*(sType: VkStructureType, pNext: pointer = nil, pPipelineCreationFeedback: ptr VkPipelineCreationFeedback, pipelineStageCreationFeedbackCount: uint32, pPipelineStageCreationFeedbacks: ptr ptr VkPipelineCreationFeedback): VkPipelineCreationFeedbackCreateInfo = + result.sType = sType + result.pNext = pNext + result.pPipelineCreationFeedback = pPipelineCreationFeedback + result.pipelineStageCreationFeedbackCount = pipelineStageCreationFeedbackCount + result.pPipelineStageCreationFeedbacks = pPipelineStageCreationFeedbacks + +proc newVkSurfaceFullScreenExclusiveInfoEXT*(sType: VkStructureType, pNext: pointer = nil, fullScreenExclusive: VkFullScreenExclusiveEXT): VkSurfaceFullScreenExclusiveInfoEXT = + result.sType = sType + result.pNext = pNext + result.fullScreenExclusive = fullScreenExclusive + +proc newVkSurfaceFullScreenExclusiveWin32InfoEXT*(sType: VkStructureType, pNext: pointer = nil, hmonitor: HMONITOR): VkSurfaceFullScreenExclusiveWin32InfoEXT = + result.sType = sType + result.pNext = pNext + result.hmonitor = hmonitor + +proc newVkSurfaceCapabilitiesFullScreenExclusiveEXT*(sType: VkStructureType, pNext: pointer = nil, fullScreenExclusiveSupported: VkBool32): VkSurfaceCapabilitiesFullScreenExclusiveEXT = + result.sType = sType + result.pNext = pNext + result.fullScreenExclusiveSupported = fullScreenExclusiveSupported + +proc newVkPhysicalDevicePresentBarrierFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, presentBarrier: VkBool32): VkPhysicalDevicePresentBarrierFeaturesNV = + result.sType = sType + result.pNext = pNext + result.presentBarrier = presentBarrier + +proc newVkSurfaceCapabilitiesPresentBarrierNV*(sType: VkStructureType, pNext: pointer = nil, presentBarrierSupported: VkBool32): VkSurfaceCapabilitiesPresentBarrierNV = + result.sType = sType + result.pNext = pNext + result.presentBarrierSupported = presentBarrierSupported + +proc newVkSwapchainPresentBarrierCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, presentBarrierEnable: VkBool32): VkSwapchainPresentBarrierCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.presentBarrierEnable = presentBarrierEnable + +proc newVkPhysicalDevicePerformanceQueryFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, performanceCounterQueryPools: VkBool32, performanceCounterMultipleQueryPools: VkBool32): VkPhysicalDevicePerformanceQueryFeaturesKHR = + result.sType = sType + result.pNext = pNext + result.performanceCounterQueryPools = performanceCounterQueryPools + result.performanceCounterMultipleQueryPools = performanceCounterMultipleQueryPools + +proc newVkPhysicalDevicePerformanceQueryPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, allowCommandBufferQueryCopies: VkBool32): VkPhysicalDevicePerformanceQueryPropertiesKHR = + result.sType = sType + result.pNext = pNext + result.allowCommandBufferQueryCopies = allowCommandBufferQueryCopies + +proc newVkPerformanceCounterKHR*(sType: VkStructureType, pNext: pointer = nil, unit: VkPerformanceCounterUnitKHR, scope: VkPerformanceCounterScopeKHR, storage: VkPerformanceCounterStorageKHR, uuid: array[VK_UUID_SIZE, uint8]): VkPerformanceCounterKHR = + result.sType = sType + result.pNext = pNext + result.unit = unit + result.scope = scope + result.storage = storage + result.uuid = uuid + +proc newVkPerformanceCounterDescriptionKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkPerformanceCounterDescriptionFlagsKHR = 0.VkPerformanceCounterDescriptionFlagsKHR, name: array[VK_MAX_DESCRIPTION_SIZE, char], category: array[VK_MAX_DESCRIPTION_SIZE, char], description: array[VK_MAX_DESCRIPTION_SIZE, char]): VkPerformanceCounterDescriptionKHR = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.name = name + result.category = category + result.description = description + +proc newVkQueryPoolPerformanceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, queueFamilyIndex: uint32, counterIndexCount: uint32, pCounterIndices: ptr uint32): VkQueryPoolPerformanceCreateInfoKHR = + result.sType = sType + result.pNext = pNext + result.queueFamilyIndex = queueFamilyIndex + result.counterIndexCount = counterIndexCount + result.pCounterIndices = pCounterIndices + +proc newVkAcquireProfilingLockInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkAcquireProfilingLockFlagsKHR = 0.VkAcquireProfilingLockFlagsKHR, timeout: uint64): VkAcquireProfilingLockInfoKHR = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.timeout = timeout + +proc newVkPerformanceQuerySubmitInfoKHR*(sType: VkStructureType, pNext: pointer = nil, counterPassIndex: uint32): VkPerformanceQuerySubmitInfoKHR = + result.sType = sType + result.pNext = pNext + result.counterPassIndex = counterPassIndex + +proc newVkPerformanceQueryReservationInfoKHR*(sType: VkStructureType, pNext: pointer = nil, maxPerformanceQueriesPerPool: uint32): VkPerformanceQueryReservationInfoKHR = + result.sType = sType + result.pNext = pNext + result.maxPerformanceQueriesPerPool = maxPerformanceQueriesPerPool + +proc newVkHeadlessSurfaceCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkHeadlessSurfaceCreateFlagsEXT = 0.VkHeadlessSurfaceCreateFlagsEXT): VkHeadlessSurfaceCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.flags = flags + +proc newVkPhysicalDeviceCoverageReductionModeFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, coverageReductionMode: VkBool32): VkPhysicalDeviceCoverageReductionModeFeaturesNV = + result.sType = sType + result.pNext = pNext + result.coverageReductionMode = coverageReductionMode + +proc newVkPipelineCoverageReductionStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCoverageReductionStateCreateFlagsNV = 0.VkPipelineCoverageReductionStateCreateFlagsNV, coverageReductionMode: VkCoverageReductionModeNV): VkPipelineCoverageReductionStateCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.coverageReductionMode = coverageReductionMode + +proc newVkFramebufferMixedSamplesCombinationNV*(sType: VkStructureType, pNext: pointer = nil, coverageReductionMode: VkCoverageReductionModeNV, rasterizationSamples: VkSampleCountFlagBits, depthStencilSamples: VkSampleCountFlags, colorSamples: VkSampleCountFlags): VkFramebufferMixedSamplesCombinationNV = + result.sType = sType + result.pNext = pNext + result.coverageReductionMode = coverageReductionMode + result.rasterizationSamples = rasterizationSamples + result.depthStencilSamples = depthStencilSamples + result.colorSamples = colorSamples + +proc newVkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL*(sType: VkStructureType, pNext: pointer = nil, shaderIntegerFunctions2: VkBool32): VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL = + result.sType = sType + result.pNext = pNext + result.shaderIntegerFunctions2 = shaderIntegerFunctions2 + +proc newVkPerformanceValueINTEL*(`type`: VkPerformanceValueTypeINTEL, data: VkPerformanceValueDataINTEL): VkPerformanceValueINTEL = + result.`type` = `type` + result.data = data + +proc newVkInitializePerformanceApiInfoINTEL*(sType: VkStructureType, pNext: pointer = nil, pUserData: pointer = nil): VkInitializePerformanceApiInfoINTEL = + result.sType = sType + result.pNext = pNext + result.pUserData = pUserData + +proc newVkQueryPoolPerformanceQueryCreateInfoINTEL*(sType: VkStructureType, pNext: pointer = nil, performanceCountersSampling: VkQueryPoolSamplingModeINTEL): VkQueryPoolPerformanceQueryCreateInfoINTEL = + result.sType = sType + result.pNext = pNext + result.performanceCountersSampling = performanceCountersSampling + +proc newVkPerformanceMarkerInfoINTEL*(sType: VkStructureType, pNext: pointer = nil, marker: uint64): VkPerformanceMarkerInfoINTEL = + result.sType = sType + result.pNext = pNext + result.marker = marker + +proc newVkPerformanceStreamMarkerInfoINTEL*(sType: VkStructureType, pNext: pointer = nil, marker: uint32): VkPerformanceStreamMarkerInfoINTEL = + result.sType = sType + result.pNext = pNext + result.marker = marker + +proc newVkPerformanceOverrideInfoINTEL*(sType: VkStructureType, pNext: pointer = nil, `type`: VkPerformanceOverrideTypeINTEL, enable: VkBool32, parameter: uint64): VkPerformanceOverrideInfoINTEL = + result.sType = sType + result.pNext = pNext + result.`type` = `type` + result.enable = enable + result.parameter = parameter + +proc newVkPerformanceConfigurationAcquireInfoINTEL*(sType: VkStructureType, pNext: pointer = nil, `type`: VkPerformanceConfigurationTypeINTEL): VkPerformanceConfigurationAcquireInfoINTEL = + result.sType = sType + result.pNext = pNext + result.`type` = `type` + +proc newVkPhysicalDeviceShaderClockFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, shaderSubgroupClock: VkBool32, shaderDeviceClock: VkBool32): VkPhysicalDeviceShaderClockFeaturesKHR = + result.sType = sType + result.pNext = pNext + result.shaderSubgroupClock = shaderSubgroupClock + result.shaderDeviceClock = shaderDeviceClock + +proc newVkPhysicalDeviceIndexTypeUint8FeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, indexTypeUint8: VkBool32): VkPhysicalDeviceIndexTypeUint8FeaturesKHR = + result.sType = sType + result.pNext = pNext + result.indexTypeUint8 = indexTypeUint8 + +proc newVkPhysicalDeviceShaderSMBuiltinsPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, shaderSMCount: uint32, shaderWarpsPerSM: uint32): VkPhysicalDeviceShaderSMBuiltinsPropertiesNV = + result.sType = sType + result.pNext = pNext + result.shaderSMCount = shaderSMCount + result.shaderWarpsPerSM = shaderWarpsPerSM + +proc newVkPhysicalDeviceShaderSMBuiltinsFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, shaderSMBuiltins: VkBool32): VkPhysicalDeviceShaderSMBuiltinsFeaturesNV = + result.sType = sType + result.pNext = pNext + result.shaderSMBuiltins = shaderSMBuiltins + +proc newVkPhysicalDeviceFragmentShaderInterlockFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, fragmentShaderSampleInterlock: VkBool32, fragmentShaderPixelInterlock: VkBool32, fragmentShaderShadingRateInterlock: VkBool32): VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.fragmentShaderSampleInterlock = fragmentShaderSampleInterlock + result.fragmentShaderPixelInterlock = fragmentShaderPixelInterlock + result.fragmentShaderShadingRateInterlock = fragmentShaderShadingRateInterlock + +proc newVkPhysicalDeviceSeparateDepthStencilLayoutsFeatures*(sType: VkStructureType, pNext: pointer = nil, separateDepthStencilLayouts: VkBool32): VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures = + result.sType = sType + result.pNext = pNext + result.separateDepthStencilLayouts = separateDepthStencilLayouts + +proc newVkAttachmentReferenceStencilLayout*(sType: VkStructureType, pNext: pointer = nil, stencilLayout: VkImageLayout): VkAttachmentReferenceStencilLayout = + result.sType = sType + result.pNext = pNext + result.stencilLayout = stencilLayout + +proc newVkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, primitiveTopologyListRestart: VkBool32, primitiveTopologyPatchListRestart: VkBool32): VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.primitiveTopologyListRestart = primitiveTopologyListRestart + result.primitiveTopologyPatchListRestart = primitiveTopologyPatchListRestart + +proc newVkAttachmentDescriptionStencilLayout*(sType: VkStructureType, pNext: pointer = nil, stencilInitialLayout: VkImageLayout, stencilFinalLayout: VkImageLayout): VkAttachmentDescriptionStencilLayout = + result.sType = sType + result.pNext = pNext + result.stencilInitialLayout = stencilInitialLayout + result.stencilFinalLayout = stencilFinalLayout + +proc newVkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, pipelineExecutableInfo: VkBool32): VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR = + result.sType = sType + result.pNext = pNext + result.pipelineExecutableInfo = pipelineExecutableInfo + +proc newVkPipelineInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pipeline: VkPipeline): VkPipelineInfoKHR = + result.sType = sType + result.pNext = pNext + result.pipeline = pipeline + +proc newVkPipelineExecutablePropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, stages: VkShaderStageFlags, name: array[VK_MAX_DESCRIPTION_SIZE, char], description: array[VK_MAX_DESCRIPTION_SIZE, char], subgroupSize: uint32): VkPipelineExecutablePropertiesKHR = + result.sType = sType + result.pNext = pNext + result.stages = stages + result.name = name + result.description = description + result.subgroupSize = subgroupSize + +proc newVkPipelineExecutableInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pipeline: VkPipeline, executableIndex: uint32): VkPipelineExecutableInfoKHR = + result.sType = sType + result.pNext = pNext + result.pipeline = pipeline + result.executableIndex = executableIndex + +proc newVkPipelineExecutableStatisticKHR*(sType: VkStructureType, pNext: pointer = nil, name: array[VK_MAX_DESCRIPTION_SIZE, char], description: array[VK_MAX_DESCRIPTION_SIZE, char], format: VkPipelineExecutableStatisticFormatKHR, value: VkPipelineExecutableStatisticValueKHR): VkPipelineExecutableStatisticKHR = + result.sType = sType + result.pNext = pNext + result.name = name + result.description = description + result.format = format + result.value = value + +proc newVkPipelineExecutableInternalRepresentationKHR*(sType: VkStructureType, pNext: pointer = nil, name: array[VK_MAX_DESCRIPTION_SIZE, char], description: array[VK_MAX_DESCRIPTION_SIZE, char], isText: VkBool32, dataSize: uint, pData: pointer = nil): VkPipelineExecutableInternalRepresentationKHR = + result.sType = sType + result.pNext = pNext + result.name = name + result.description = description + result.isText = isText + result.dataSize = dataSize + result.pData = pData + +proc newVkPhysicalDeviceShaderDemoteToHelperInvocationFeatures*(sType: VkStructureType, pNext: pointer = nil, shaderDemoteToHelperInvocation: VkBool32): VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures = + result.sType = sType + result.pNext = pNext + result.shaderDemoteToHelperInvocation = shaderDemoteToHelperInvocation + +proc newVkPhysicalDeviceTexelBufferAlignmentFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, texelBufferAlignment: VkBool32): VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.texelBufferAlignment = texelBufferAlignment + +proc newVkPhysicalDeviceTexelBufferAlignmentProperties*(sType: VkStructureType, pNext: pointer = nil, storageTexelBufferOffsetAlignmentBytes: VkDeviceSize, storageTexelBufferOffsetSingleTexelAlignment: VkBool32, uniformTexelBufferOffsetAlignmentBytes: VkDeviceSize, uniformTexelBufferOffsetSingleTexelAlignment: VkBool32): VkPhysicalDeviceTexelBufferAlignmentProperties = + result.sType = sType + result.pNext = pNext + result.storageTexelBufferOffsetAlignmentBytes = storageTexelBufferOffsetAlignmentBytes + result.storageTexelBufferOffsetSingleTexelAlignment = storageTexelBufferOffsetSingleTexelAlignment + result.uniformTexelBufferOffsetAlignmentBytes = uniformTexelBufferOffsetAlignmentBytes + result.uniformTexelBufferOffsetSingleTexelAlignment = uniformTexelBufferOffsetSingleTexelAlignment + +proc newVkPhysicalDeviceSubgroupSizeControlFeatures*(sType: VkStructureType, pNext: pointer = nil, subgroupSizeControl: VkBool32, computeFullSubgroups: VkBool32): VkPhysicalDeviceSubgroupSizeControlFeatures = + result.sType = sType + result.pNext = pNext + result.subgroupSizeControl = subgroupSizeControl + result.computeFullSubgroups = computeFullSubgroups + +proc newVkPhysicalDeviceSubgroupSizeControlProperties*(sType: VkStructureType, pNext: pointer = nil, minSubgroupSize: uint32, maxSubgroupSize: uint32, maxComputeWorkgroupSubgroups: uint32, requiredSubgroupSizeStages: VkShaderStageFlags): VkPhysicalDeviceSubgroupSizeControlProperties = + result.sType = sType + result.pNext = pNext + result.minSubgroupSize = minSubgroupSize + result.maxSubgroupSize = maxSubgroupSize + result.maxComputeWorkgroupSubgroups = maxComputeWorkgroupSubgroups + result.requiredSubgroupSizeStages = requiredSubgroupSizeStages + +proc newVkPipelineShaderStageRequiredSubgroupSizeCreateInfo*(sType: VkStructureType, pNext: pointer = nil, requiredSubgroupSize: uint32): VkPipelineShaderStageRequiredSubgroupSizeCreateInfo = + result.sType = sType + result.pNext = pNext + result.requiredSubgroupSize = requiredSubgroupSize + +proc newVkSubpassShadingPipelineCreateInfoHUAWEI*(sType: VkStructureType, pNext: pointer = nil, renderPass: VkRenderPass, subpass: uint32): VkSubpassShadingPipelineCreateInfoHUAWEI = + result.sType = sType + result.pNext = pNext + result.renderPass = renderPass + result.subpass = subpass + +proc newVkPhysicalDeviceSubpassShadingPropertiesHUAWEI*(sType: VkStructureType, pNext: pointer = nil, maxSubpassShadingWorkgroupSizeAspectRatio: uint32): VkPhysicalDeviceSubpassShadingPropertiesHUAWEI = + result.sType = sType + result.pNext = pNext + result.maxSubpassShadingWorkgroupSizeAspectRatio = maxSubpassShadingWorkgroupSizeAspectRatio + +proc newVkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI*(sType: VkStructureType, pNext: pointer = nil, maxWorkGroupCount: array[3, uint32], maxWorkGroupSize: array[3, uint32], maxOutputClusterCount: uint32, indirectBufferOffsetAlignment: VkDeviceSize): VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI = + result.sType = sType + result.pNext = pNext + result.maxWorkGroupCount = maxWorkGroupCount + result.maxWorkGroupSize = maxWorkGroupSize + result.maxOutputClusterCount = maxOutputClusterCount + result.indirectBufferOffsetAlignment = indirectBufferOffsetAlignment + +proc newVkMemoryOpaqueCaptureAddressAllocateInfo*(sType: VkStructureType, pNext: pointer = nil, opaqueCaptureAddress: uint64): VkMemoryOpaqueCaptureAddressAllocateInfo = + result.sType = sType + result.pNext = pNext + result.opaqueCaptureAddress = opaqueCaptureAddress + +proc newVkDeviceMemoryOpaqueCaptureAddressInfo*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory): VkDeviceMemoryOpaqueCaptureAddressInfo = + result.sType = sType + result.pNext = pNext + result.memory = memory + +proc newVkPhysicalDeviceLineRasterizationFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, rectangularLines: VkBool32, bresenhamLines: VkBool32, smoothLines: VkBool32, stippledRectangularLines: VkBool32, stippledBresenhamLines: VkBool32, stippledSmoothLines: VkBool32): VkPhysicalDeviceLineRasterizationFeaturesKHR = + result.sType = sType + result.pNext = pNext + result.rectangularLines = rectangularLines + result.bresenhamLines = bresenhamLines + result.smoothLines = smoothLines + result.stippledRectangularLines = stippledRectangularLines + result.stippledBresenhamLines = stippledBresenhamLines + result.stippledSmoothLines = stippledSmoothLines + +proc newVkPhysicalDeviceLineRasterizationPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, lineSubPixelPrecisionBits: uint32): VkPhysicalDeviceLineRasterizationPropertiesKHR = + result.sType = sType + result.pNext = pNext + result.lineSubPixelPrecisionBits = lineSubPixelPrecisionBits + +proc newVkPipelineRasterizationLineStateCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, lineRasterizationMode: VkLineRasterizationModeKHR, stippledLineEnable: VkBool32, lineStippleFactor: uint32, lineStipplePattern: uint16): VkPipelineRasterizationLineStateCreateInfoKHR = + result.sType = sType + result.pNext = pNext + result.lineRasterizationMode = lineRasterizationMode + result.stippledLineEnable = stippledLineEnable + result.lineStippleFactor = lineStippleFactor + result.lineStipplePattern = lineStipplePattern + +proc newVkPhysicalDevicePipelineCreationCacheControlFeatures*(sType: VkStructureType, pNext: pointer = nil, pipelineCreationCacheControl: VkBool32): VkPhysicalDevicePipelineCreationCacheControlFeatures = + result.sType = sType + result.pNext = pNext + result.pipelineCreationCacheControl = pipelineCreationCacheControl + +proc newVkPhysicalDeviceVulkan11Features*(sType: VkStructureType, pNext: pointer = nil, storageBuffer16BitAccess: VkBool32, uniformAndStorageBuffer16BitAccess: VkBool32, storagePushConstant16: VkBool32, storageInputOutput16: VkBool32, multiview: VkBool32, multiviewGeometryShader: VkBool32, multiviewTessellationShader: VkBool32, variablePointersStorageBuffer: VkBool32, variablePointers: VkBool32, protectedMemory: VkBool32, samplerYcbcrConversion: VkBool32, shaderDrawParameters: VkBool32): VkPhysicalDeviceVulkan11Features = + result.sType = sType + result.pNext = pNext + result.storageBuffer16BitAccess = storageBuffer16BitAccess + result.uniformAndStorageBuffer16BitAccess = uniformAndStorageBuffer16BitAccess + result.storagePushConstant16 = storagePushConstant16 + result.storageInputOutput16 = storageInputOutput16 + result.multiview = multiview + result.multiviewGeometryShader = multiviewGeometryShader + result.multiviewTessellationShader = multiviewTessellationShader + result.variablePointersStorageBuffer = variablePointersStorageBuffer + result.variablePointers = variablePointers + result.protectedMemory = protectedMemory + result.samplerYcbcrConversion = samplerYcbcrConversion + result.shaderDrawParameters = shaderDrawParameters + +proc newVkPhysicalDeviceVulkan11Properties*(sType: VkStructureType, pNext: pointer = nil, deviceUUID: array[VK_UUID_SIZE, uint8], driverUUID: array[VK_UUID_SIZE, uint8], deviceLUID: array[VK_LUID_SIZE, uint8], deviceNodeMask: uint32, deviceLUIDValid: VkBool32, subgroupSize: uint32, subgroupSupportedStages: VkShaderStageFlags, subgroupSupportedOperations: VkSubgroupFeatureFlags, subgroupQuadOperationsInAllStages: VkBool32, pointClippingBehavior: VkPointClippingBehavior, maxMultiviewViewCount: uint32, maxMultiviewInstanceIndex: uint32, protectedNoFault: VkBool32, maxPerSetDescriptors: uint32, maxMemoryAllocationSize: VkDeviceSize): VkPhysicalDeviceVulkan11Properties = + result.sType = sType + result.pNext = pNext + result.deviceUUID = deviceUUID + result.driverUUID = driverUUID + result.deviceLUID = deviceLUID + result.deviceNodeMask = deviceNodeMask + result.deviceLUIDValid = deviceLUIDValid + result.subgroupSize = subgroupSize + result.subgroupSupportedStages = subgroupSupportedStages + result.subgroupSupportedOperations = subgroupSupportedOperations + result.subgroupQuadOperationsInAllStages = subgroupQuadOperationsInAllStages + result.pointClippingBehavior = pointClippingBehavior + result.maxMultiviewViewCount = maxMultiviewViewCount + result.maxMultiviewInstanceIndex = maxMultiviewInstanceIndex + result.protectedNoFault = protectedNoFault + result.maxPerSetDescriptors = maxPerSetDescriptors + result.maxMemoryAllocationSize = maxMemoryAllocationSize + +proc newVkPhysicalDeviceVulkan12Features*(sType: VkStructureType, pNext: pointer = nil, samplerMirrorClampToEdge: VkBool32, drawIndirectCount: VkBool32, storageBuffer8BitAccess: VkBool32, uniformAndStorageBuffer8BitAccess: VkBool32, storagePushConstant8: VkBool32, shaderBufferInt64Atomics: VkBool32, shaderSharedInt64Atomics: VkBool32, shaderFloat16: VkBool32, shaderInt8: VkBool32, descriptorIndexing: VkBool32, shaderInputAttachmentArrayDynamicIndexing: VkBool32, shaderUniformTexelBufferArrayDynamicIndexing: VkBool32, shaderStorageTexelBufferArrayDynamicIndexing: VkBool32, shaderUniformBufferArrayNonUniformIndexing: VkBool32, shaderSampledImageArrayNonUniformIndexing: VkBool32, shaderStorageBufferArrayNonUniformIndexing: VkBool32, shaderStorageImageArrayNonUniformIndexing: VkBool32, shaderInputAttachmentArrayNonUniformIndexing: VkBool32, shaderUniformTexelBufferArrayNonUniformIndexing: VkBool32, shaderStorageTexelBufferArrayNonUniformIndexing: VkBool32, descriptorBindingUniformBufferUpdateAfterBind: VkBool32, descriptorBindingSampledImageUpdateAfterBind: VkBool32, descriptorBindingStorageImageUpdateAfterBind: VkBool32, descriptorBindingStorageBufferUpdateAfterBind: VkBool32, descriptorBindingUniformTexelBufferUpdateAfterBind: VkBool32, descriptorBindingStorageTexelBufferUpdateAfterBind: VkBool32, descriptorBindingUpdateUnusedWhilePending: VkBool32, descriptorBindingPartiallyBound: VkBool32, descriptorBindingVariableDescriptorCount: VkBool32, runtimeDescriptorArray: VkBool32, samplerFilterMinmax: VkBool32, scalarBlockLayout: VkBool32, imagelessFramebuffer: VkBool32, uniformBufferStandardLayout: VkBool32, shaderSubgroupExtendedTypes: VkBool32, separateDepthStencilLayouts: VkBool32, hostQueryReset: VkBool32, timelineSemaphore: VkBool32, bufferDeviceAddress: VkBool32, bufferDeviceAddressCaptureReplay: VkBool32, bufferDeviceAddressMultiDevice: VkBool32, vulkanMemoryModel: VkBool32, vulkanMemoryModelDeviceScope: VkBool32, vulkanMemoryModelAvailabilityVisibilityChains: VkBool32, shaderOutputViewportIndex: VkBool32, shaderOutputLayer: VkBool32, subgroupBroadcastDynamicId: VkBool32): VkPhysicalDeviceVulkan12Features = + result.sType = sType + result.pNext = pNext + result.samplerMirrorClampToEdge = samplerMirrorClampToEdge + result.drawIndirectCount = drawIndirectCount + result.storageBuffer8BitAccess = storageBuffer8BitAccess + result.uniformAndStorageBuffer8BitAccess = uniformAndStorageBuffer8BitAccess + result.storagePushConstant8 = storagePushConstant8 + result.shaderBufferInt64Atomics = shaderBufferInt64Atomics + result.shaderSharedInt64Atomics = shaderSharedInt64Atomics + result.shaderFloat16 = shaderFloat16 + result.shaderInt8 = shaderInt8 + result.descriptorIndexing = descriptorIndexing + result.shaderInputAttachmentArrayDynamicIndexing = shaderInputAttachmentArrayDynamicIndexing + result.shaderUniformTexelBufferArrayDynamicIndexing = shaderUniformTexelBufferArrayDynamicIndexing + result.shaderStorageTexelBufferArrayDynamicIndexing = shaderStorageTexelBufferArrayDynamicIndexing + result.shaderUniformBufferArrayNonUniformIndexing = shaderUniformBufferArrayNonUniformIndexing + result.shaderSampledImageArrayNonUniformIndexing = shaderSampledImageArrayNonUniformIndexing + result.shaderStorageBufferArrayNonUniformIndexing = shaderStorageBufferArrayNonUniformIndexing + result.shaderStorageImageArrayNonUniformIndexing = shaderStorageImageArrayNonUniformIndexing + result.shaderInputAttachmentArrayNonUniformIndexing = shaderInputAttachmentArrayNonUniformIndexing + result.shaderUniformTexelBufferArrayNonUniformIndexing = shaderUniformTexelBufferArrayNonUniformIndexing + result.shaderStorageTexelBufferArrayNonUniformIndexing = shaderStorageTexelBufferArrayNonUniformIndexing + result.descriptorBindingUniformBufferUpdateAfterBind = descriptorBindingUniformBufferUpdateAfterBind + result.descriptorBindingSampledImageUpdateAfterBind = descriptorBindingSampledImageUpdateAfterBind + result.descriptorBindingStorageImageUpdateAfterBind = descriptorBindingStorageImageUpdateAfterBind + result.descriptorBindingStorageBufferUpdateAfterBind = descriptorBindingStorageBufferUpdateAfterBind + result.descriptorBindingUniformTexelBufferUpdateAfterBind = descriptorBindingUniformTexelBufferUpdateAfterBind + result.descriptorBindingStorageTexelBufferUpdateAfterBind = descriptorBindingStorageTexelBufferUpdateAfterBind + result.descriptorBindingUpdateUnusedWhilePending = descriptorBindingUpdateUnusedWhilePending + result.descriptorBindingPartiallyBound = descriptorBindingPartiallyBound + result.descriptorBindingVariableDescriptorCount = descriptorBindingVariableDescriptorCount + result.runtimeDescriptorArray = runtimeDescriptorArray + result.samplerFilterMinmax = samplerFilterMinmax + result.scalarBlockLayout = scalarBlockLayout + result.imagelessFramebuffer = imagelessFramebuffer + result.uniformBufferStandardLayout = uniformBufferStandardLayout + result.shaderSubgroupExtendedTypes = shaderSubgroupExtendedTypes + result.separateDepthStencilLayouts = separateDepthStencilLayouts + result.hostQueryReset = hostQueryReset + result.timelineSemaphore = timelineSemaphore + result.bufferDeviceAddress = bufferDeviceAddress + result.bufferDeviceAddressCaptureReplay = bufferDeviceAddressCaptureReplay + result.bufferDeviceAddressMultiDevice = bufferDeviceAddressMultiDevice + result.vulkanMemoryModel = vulkanMemoryModel + result.vulkanMemoryModelDeviceScope = vulkanMemoryModelDeviceScope + result.vulkanMemoryModelAvailabilityVisibilityChains = vulkanMemoryModelAvailabilityVisibilityChains + result.shaderOutputViewportIndex = shaderOutputViewportIndex + result.shaderOutputLayer = shaderOutputLayer + result.subgroupBroadcastDynamicId = subgroupBroadcastDynamicId + +proc newVkPhysicalDeviceVulkan12Properties*(sType: VkStructureType, pNext: pointer = nil, driverID: VkDriverId, driverName: array[VK_MAX_DRIVER_NAME_SIZE, char], driverInfo: array[VK_MAX_DRIVER_INFO_SIZE, char], conformanceVersion: VkConformanceVersion, denormBehaviorIndependence: VkShaderFloatControlsIndependence, roundingModeIndependence: VkShaderFloatControlsIndependence, shaderSignedZeroInfNanPreserveFloat16: VkBool32, shaderSignedZeroInfNanPreserveFloat32: VkBool32, shaderSignedZeroInfNanPreserveFloat64: VkBool32, shaderDenormPreserveFloat16: VkBool32, shaderDenormPreserveFloat32: VkBool32, shaderDenormPreserveFloat64: VkBool32, shaderDenormFlushToZeroFloat16: VkBool32, shaderDenormFlushToZeroFloat32: VkBool32, shaderDenormFlushToZeroFloat64: VkBool32, shaderRoundingModeRTEFloat16: VkBool32, shaderRoundingModeRTEFloat32: VkBool32, shaderRoundingModeRTEFloat64: VkBool32, shaderRoundingModeRTZFloat16: VkBool32, shaderRoundingModeRTZFloat32: VkBool32, shaderRoundingModeRTZFloat64: VkBool32, maxUpdateAfterBindDescriptorsInAllPools: uint32, shaderUniformBufferArrayNonUniformIndexingNative: VkBool32, shaderSampledImageArrayNonUniformIndexingNative: VkBool32, shaderStorageBufferArrayNonUniformIndexingNative: VkBool32, shaderStorageImageArrayNonUniformIndexingNative: VkBool32, shaderInputAttachmentArrayNonUniformIndexingNative: VkBool32, robustBufferAccessUpdateAfterBind: VkBool32, quadDivergentImplicitLod: VkBool32, maxPerStageDescriptorUpdateAfterBindSamplers: uint32, maxPerStageDescriptorUpdateAfterBindUniformBuffers: uint32, maxPerStageDescriptorUpdateAfterBindStorageBuffers: uint32, maxPerStageDescriptorUpdateAfterBindSampledImages: uint32, maxPerStageDescriptorUpdateAfterBindStorageImages: uint32, maxPerStageDescriptorUpdateAfterBindInputAttachments: uint32, maxPerStageUpdateAfterBindResources: uint32, maxDescriptorSetUpdateAfterBindSamplers: uint32, maxDescriptorSetUpdateAfterBindUniformBuffers: uint32, maxDescriptorSetUpdateAfterBindUniformBuffersDynamic: uint32, maxDescriptorSetUpdateAfterBindStorageBuffers: uint32, maxDescriptorSetUpdateAfterBindStorageBuffersDynamic: uint32, maxDescriptorSetUpdateAfterBindSampledImages: uint32, maxDescriptorSetUpdateAfterBindStorageImages: uint32, maxDescriptorSetUpdateAfterBindInputAttachments: uint32, supportedDepthResolveModes: VkResolveModeFlags, supportedStencilResolveModes: VkResolveModeFlags, independentResolveNone: VkBool32, independentResolve: VkBool32, filterMinmaxSingleComponentFormats: VkBool32, filterMinmaxImageComponentMapping: VkBool32, maxTimelineSemaphoreValueDifference: uint64, framebufferIntegerColorSampleCounts: VkSampleCountFlags): VkPhysicalDeviceVulkan12Properties = result.sType = sType result.pNext = pNext - result.flags = flags + result.driverID = driverID + result.driverName = driverName + result.driverInfo = driverInfo + result.conformanceVersion = conformanceVersion + result.denormBehaviorIndependence = denormBehaviorIndependence + result.roundingModeIndependence = roundingModeIndependence + result.shaderSignedZeroInfNanPreserveFloat16 = shaderSignedZeroInfNanPreserveFloat16 + result.shaderSignedZeroInfNanPreserveFloat32 = shaderSignedZeroInfNanPreserveFloat32 + result.shaderSignedZeroInfNanPreserveFloat64 = shaderSignedZeroInfNanPreserveFloat64 + result.shaderDenormPreserveFloat16 = shaderDenormPreserveFloat16 + result.shaderDenormPreserveFloat32 = shaderDenormPreserveFloat32 + result.shaderDenormPreserveFloat64 = shaderDenormPreserveFloat64 + result.shaderDenormFlushToZeroFloat16 = shaderDenormFlushToZeroFloat16 + result.shaderDenormFlushToZeroFloat32 = shaderDenormFlushToZeroFloat32 + result.shaderDenormFlushToZeroFloat64 = shaderDenormFlushToZeroFloat64 + result.shaderRoundingModeRTEFloat16 = shaderRoundingModeRTEFloat16 + result.shaderRoundingModeRTEFloat32 = shaderRoundingModeRTEFloat32 + result.shaderRoundingModeRTEFloat64 = shaderRoundingModeRTEFloat64 + result.shaderRoundingModeRTZFloat16 = shaderRoundingModeRTZFloat16 + result.shaderRoundingModeRTZFloat32 = shaderRoundingModeRTZFloat32 + result.shaderRoundingModeRTZFloat64 = shaderRoundingModeRTZFloat64 + result.maxUpdateAfterBindDescriptorsInAllPools = maxUpdateAfterBindDescriptorsInAllPools + result.shaderUniformBufferArrayNonUniformIndexingNative = shaderUniformBufferArrayNonUniformIndexingNative + result.shaderSampledImageArrayNonUniformIndexingNative = shaderSampledImageArrayNonUniformIndexingNative + result.shaderStorageBufferArrayNonUniformIndexingNative = shaderStorageBufferArrayNonUniformIndexingNative + result.shaderStorageImageArrayNonUniformIndexingNative = shaderStorageImageArrayNonUniformIndexingNative + result.shaderInputAttachmentArrayNonUniformIndexingNative = shaderInputAttachmentArrayNonUniformIndexingNative + result.robustBufferAccessUpdateAfterBind = robustBufferAccessUpdateAfterBind + result.quadDivergentImplicitLod = quadDivergentImplicitLod + result.maxPerStageDescriptorUpdateAfterBindSamplers = maxPerStageDescriptorUpdateAfterBindSamplers + result.maxPerStageDescriptorUpdateAfterBindUniformBuffers = maxPerStageDescriptorUpdateAfterBindUniformBuffers + result.maxPerStageDescriptorUpdateAfterBindStorageBuffers = maxPerStageDescriptorUpdateAfterBindStorageBuffers + result.maxPerStageDescriptorUpdateAfterBindSampledImages = maxPerStageDescriptorUpdateAfterBindSampledImages + result.maxPerStageDescriptorUpdateAfterBindStorageImages = maxPerStageDescriptorUpdateAfterBindStorageImages + result.maxPerStageDescriptorUpdateAfterBindInputAttachments = maxPerStageDescriptorUpdateAfterBindInputAttachments + result.maxPerStageUpdateAfterBindResources = maxPerStageUpdateAfterBindResources + result.maxDescriptorSetUpdateAfterBindSamplers = maxDescriptorSetUpdateAfterBindSamplers + result.maxDescriptorSetUpdateAfterBindUniformBuffers = maxDescriptorSetUpdateAfterBindUniformBuffers + result.maxDescriptorSetUpdateAfterBindUniformBuffersDynamic = maxDescriptorSetUpdateAfterBindUniformBuffersDynamic + result.maxDescriptorSetUpdateAfterBindStorageBuffers = maxDescriptorSetUpdateAfterBindStorageBuffers + result.maxDescriptorSetUpdateAfterBindStorageBuffersDynamic = maxDescriptorSetUpdateAfterBindStorageBuffersDynamic + result.maxDescriptorSetUpdateAfterBindSampledImages = maxDescriptorSetUpdateAfterBindSampledImages + result.maxDescriptorSetUpdateAfterBindStorageImages = maxDescriptorSetUpdateAfterBindStorageImages + result.maxDescriptorSetUpdateAfterBindInputAttachments = maxDescriptorSetUpdateAfterBindInputAttachments + result.supportedDepthResolveModes = supportedDepthResolveModes + result.supportedStencilResolveModes = supportedStencilResolveModes + result.independentResolveNone = independentResolveNone + result.independentResolve = independentResolve + result.filterMinmaxSingleComponentFormats = filterMinmaxSingleComponentFormats + result.filterMinmaxImageComponentMapping = filterMinmaxImageComponentMapping + result.maxTimelineSemaphoreValueDifference = maxTimelineSemaphoreValueDifference + result.framebufferIntegerColorSampleCounts = framebufferIntegerColorSampleCounts -proc newVkQueryPoolCreateInfo*(sType: VkStructureType = VkStructureTypeQueryPoolCreateInfo, pNext: pointer = nil, flags: VkQueryPoolCreateFlags = 0.VkQueryPoolCreateFlags, queryType: VkQueryType, queryCount: uint32, pipelineStatistics: VkQueryPipelineStatisticFlags): VkQueryPoolCreateInfo = +proc newVkPhysicalDeviceVulkan13Features*(sType: VkStructureType, pNext: pointer = nil, robustImageAccess: VkBool32, inlineUniformBlock: VkBool32, descriptorBindingInlineUniformBlockUpdateAfterBind: VkBool32, pipelineCreationCacheControl: VkBool32, privateData: VkBool32, shaderDemoteToHelperInvocation: VkBool32, shaderTerminateInvocation: VkBool32, subgroupSizeControl: VkBool32, computeFullSubgroups: VkBool32, synchronization2: VkBool32, textureCompressionASTC_HDR: VkBool32, shaderZeroInitializeWorkgroupMemory: VkBool32, dynamicRendering: VkBool32, shaderIntegerDotProduct: VkBool32, maintenance4: VkBool32): VkPhysicalDeviceVulkan13Features = result.sType = sType result.pNext = pNext - result.flags = flags - result.queryType = queryType - result.queryCount = queryCount - result.pipelineStatistics = pipelineStatistics + result.robustImageAccess = robustImageAccess + result.inlineUniformBlock = inlineUniformBlock + result.descriptorBindingInlineUniformBlockUpdateAfterBind = descriptorBindingInlineUniformBlockUpdateAfterBind + result.pipelineCreationCacheControl = pipelineCreationCacheControl + result.privateData = privateData + result.shaderDemoteToHelperInvocation = shaderDemoteToHelperInvocation + result.shaderTerminateInvocation = shaderTerminateInvocation + result.subgroupSizeControl = subgroupSizeControl + result.computeFullSubgroups = computeFullSubgroups + result.synchronization2 = synchronization2 + result.textureCompressionASTC_HDR = textureCompressionASTC_HDR + result.shaderZeroInitializeWorkgroupMemory = shaderZeroInitializeWorkgroupMemory + result.dynamicRendering = dynamicRendering + result.shaderIntegerDotProduct = shaderIntegerDotProduct + result.maintenance4 = maintenance4 -proc newVkFramebufferCreateInfo*(sType: VkStructureType = VkStructureTypeFramebufferCreateInfo, pNext: pointer = nil, flags: VkFramebufferCreateFlags = 0.VkFramebufferCreateFlags, renderPass: VkRenderPass, attachmentCount: uint32, pAttachments: ptr VkImageView, width: uint32, height: uint32, layers: uint32): VkFramebufferCreateInfo = +proc newVkPhysicalDeviceVulkan13Properties*(sType: VkStructureType, pNext: pointer = nil, minSubgroupSize: uint32, maxSubgroupSize: uint32, maxComputeWorkgroupSubgroups: uint32, requiredSubgroupSizeStages: VkShaderStageFlags, maxInlineUniformBlockSize: uint32, maxPerStageDescriptorInlineUniformBlocks: uint32, maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks: uint32, maxDescriptorSetInlineUniformBlocks: uint32, maxDescriptorSetUpdateAfterBindInlineUniformBlocks: uint32, maxInlineUniformTotalSize: uint32, integerDotProduct8BitUnsignedAccelerated: VkBool32, integerDotProduct8BitSignedAccelerated: VkBool32, integerDotProduct8BitMixedSignednessAccelerated: VkBool32, integerDotProduct4x8BitPackedUnsignedAccelerated: VkBool32, integerDotProduct4x8BitPackedSignedAccelerated: VkBool32, integerDotProduct4x8BitPackedMixedSignednessAccelerated: VkBool32, integerDotProduct16BitUnsignedAccelerated: VkBool32, integerDotProduct16BitSignedAccelerated: VkBool32, integerDotProduct16BitMixedSignednessAccelerated: VkBool32, integerDotProduct32BitUnsignedAccelerated: VkBool32, integerDotProduct32BitSignedAccelerated: VkBool32, integerDotProduct32BitMixedSignednessAccelerated: VkBool32, integerDotProduct64BitUnsignedAccelerated: VkBool32, integerDotProduct64BitSignedAccelerated: VkBool32, integerDotProduct64BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating8BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating8BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating16BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating16BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating32BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating32BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating64BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating64BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated: VkBool32, storageTexelBufferOffsetAlignmentBytes: VkDeviceSize, storageTexelBufferOffsetSingleTexelAlignment: VkBool32, uniformTexelBufferOffsetAlignmentBytes: VkDeviceSize, uniformTexelBufferOffsetSingleTexelAlignment: VkBool32, maxBufferSize: VkDeviceSize): VkPhysicalDeviceVulkan13Properties = result.sType = sType result.pNext = pNext - result.flags = flags - result.renderPass = renderPass - result.attachmentCount = attachmentCount - result.pAttachments = pAttachments - result.width = width - result.height = height - result.layers = layers - -proc newVkDrawIndirectCommand*(vertexCount: uint32, instanceCount: uint32, firstVertex: uint32, firstInstance: uint32): VkDrawIndirectCommand = - result.vertexCount = vertexCount - result.instanceCount = instanceCount - result.firstVertex = firstVertex - result.firstInstance = firstInstance - -proc newVkDrawIndexedIndirectCommand*(indexCount: uint32, instanceCount: uint32, firstIndex: uint32, vertexOffset: int32, firstInstance: uint32): VkDrawIndexedIndirectCommand = - result.indexCount = indexCount - result.instanceCount = instanceCount - result.firstIndex = firstIndex - result.vertexOffset = vertexOffset - result.firstInstance = firstInstance - -proc newVkDispatchIndirectCommand*(x: uint32, y: uint32, z: uint32): VkDispatchIndirectCommand = - result.x = x - result.y = y - result.z = z + result.minSubgroupSize = minSubgroupSize + result.maxSubgroupSize = maxSubgroupSize + result.maxComputeWorkgroupSubgroups = maxComputeWorkgroupSubgroups + result.requiredSubgroupSizeStages = requiredSubgroupSizeStages + result.maxInlineUniformBlockSize = maxInlineUniformBlockSize + result.maxPerStageDescriptorInlineUniformBlocks = maxPerStageDescriptorInlineUniformBlocks + result.maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks = maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks + result.maxDescriptorSetInlineUniformBlocks = maxDescriptorSetInlineUniformBlocks + result.maxDescriptorSetUpdateAfterBindInlineUniformBlocks = maxDescriptorSetUpdateAfterBindInlineUniformBlocks + result.maxInlineUniformTotalSize = maxInlineUniformTotalSize + result.integerDotProduct8BitUnsignedAccelerated = integerDotProduct8BitUnsignedAccelerated + result.integerDotProduct8BitSignedAccelerated = integerDotProduct8BitSignedAccelerated + result.integerDotProduct8BitMixedSignednessAccelerated = integerDotProduct8BitMixedSignednessAccelerated + result.integerDotProduct4x8BitPackedUnsignedAccelerated = integerDotProduct4x8BitPackedUnsignedAccelerated + result.integerDotProduct4x8BitPackedSignedAccelerated = integerDotProduct4x8BitPackedSignedAccelerated + result.integerDotProduct4x8BitPackedMixedSignednessAccelerated = integerDotProduct4x8BitPackedMixedSignednessAccelerated + result.integerDotProduct16BitUnsignedAccelerated = integerDotProduct16BitUnsignedAccelerated + result.integerDotProduct16BitSignedAccelerated = integerDotProduct16BitSignedAccelerated + result.integerDotProduct16BitMixedSignednessAccelerated = integerDotProduct16BitMixedSignednessAccelerated + result.integerDotProduct32BitUnsignedAccelerated = integerDotProduct32BitUnsignedAccelerated + result.integerDotProduct32BitSignedAccelerated = integerDotProduct32BitSignedAccelerated + result.integerDotProduct32BitMixedSignednessAccelerated = integerDotProduct32BitMixedSignednessAccelerated + result.integerDotProduct64BitUnsignedAccelerated = integerDotProduct64BitUnsignedAccelerated + result.integerDotProduct64BitSignedAccelerated = integerDotProduct64BitSignedAccelerated + result.integerDotProduct64BitMixedSignednessAccelerated = integerDotProduct64BitMixedSignednessAccelerated + result.integerDotProductAccumulatingSaturating8BitUnsignedAccelerated = integerDotProductAccumulatingSaturating8BitUnsignedAccelerated + result.integerDotProductAccumulatingSaturating8BitSignedAccelerated = integerDotProductAccumulatingSaturating8BitSignedAccelerated + result.integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated = integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated + result.integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated = integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated + result.integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated = integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated + result.integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated = integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated + result.integerDotProductAccumulatingSaturating16BitUnsignedAccelerated = integerDotProductAccumulatingSaturating16BitUnsignedAccelerated + result.integerDotProductAccumulatingSaturating16BitSignedAccelerated = integerDotProductAccumulatingSaturating16BitSignedAccelerated + result.integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated = integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated + result.integerDotProductAccumulatingSaturating32BitUnsignedAccelerated = integerDotProductAccumulatingSaturating32BitUnsignedAccelerated + result.integerDotProductAccumulatingSaturating32BitSignedAccelerated = integerDotProductAccumulatingSaturating32BitSignedAccelerated + result.integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated = integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated + result.integerDotProductAccumulatingSaturating64BitUnsignedAccelerated = integerDotProductAccumulatingSaturating64BitUnsignedAccelerated + result.integerDotProductAccumulatingSaturating64BitSignedAccelerated = integerDotProductAccumulatingSaturating64BitSignedAccelerated + result.integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated = integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated + result.storageTexelBufferOffsetAlignmentBytes = storageTexelBufferOffsetAlignmentBytes + result.storageTexelBufferOffsetSingleTexelAlignment = storageTexelBufferOffsetSingleTexelAlignment + result.uniformTexelBufferOffsetAlignmentBytes = uniformTexelBufferOffsetAlignmentBytes + result.uniformTexelBufferOffsetSingleTexelAlignment = uniformTexelBufferOffsetSingleTexelAlignment + result.maxBufferSize = maxBufferSize -proc newVkSubmitInfo*(sType: VkStructureType = VkStructureTypeSubmitInfo, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, pWaitDstStageMask: ptr VkPipelineStageFlags, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer, signalSemaphoreCount: uint32, pSignalSemaphores: ptr VkSemaphore): VkSubmitInfo = +proc newVkPipelineCompilerControlCreateInfoAMD*(sType: VkStructureType, pNext: pointer = nil, compilerControlFlags: VkPipelineCompilerControlFlagsAMD): VkPipelineCompilerControlCreateInfoAMD = result.sType = sType result.pNext = pNext - result.waitSemaphoreCount = waitSemaphoreCount - result.pWaitSemaphores = pWaitSemaphores - result.pWaitDstStageMask = pWaitDstStageMask - result.commandBufferCount = commandBufferCount - result.pCommandBuffers = pCommandBuffers - result.signalSemaphoreCount = signalSemaphoreCount - result.pSignalSemaphores = pSignalSemaphores - -proc newVkDisplayPropertiesKHR*(display: VkDisplayKHR, displayName: cstring, physicalDimensions: VkExtent2D, physicalResolution: VkExtent2D, supportedTransforms: VkSurfaceTransformFlagsKHR, planeReorderPossible: VkBool32, persistentContent: VkBool32): VkDisplayPropertiesKHR = - result.display = display - result.displayName = displayName - result.physicalDimensions = physicalDimensions - result.physicalResolution = physicalResolution - result.supportedTransforms = supportedTransforms - result.planeReorderPossible = planeReorderPossible - result.persistentContent = persistentContent - -proc newVkDisplayPlanePropertiesKHR*(currentDisplay: VkDisplayKHR, currentStackIndex: uint32): VkDisplayPlanePropertiesKHR = - result.currentDisplay = currentDisplay - result.currentStackIndex = currentStackIndex - -proc newVkDisplayModeParametersKHR*(visibleRegion: VkExtent2D, refreshRate: uint32): VkDisplayModeParametersKHR = - result.visibleRegion = visibleRegion - result.refreshRate = refreshRate - -proc newVkDisplayModePropertiesKHR*(displayMode: VkDisplayModeKHR, parameters: VkDisplayModeParametersKHR): VkDisplayModePropertiesKHR = - result.displayMode = displayMode - result.parameters = parameters + result.compilerControlFlags = compilerControlFlags -proc newVkDisplayModeCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkDisplayModeCreateFlagsKHR = 0.VkDisplayModeCreateFlagsKHR, parameters: VkDisplayModeParametersKHR): VkDisplayModeCreateInfoKHR = +proc newVkPhysicalDeviceCoherentMemoryFeaturesAMD*(sType: VkStructureType, pNext: pointer = nil, deviceCoherentMemory: VkBool32): VkPhysicalDeviceCoherentMemoryFeaturesAMD = result.sType = sType result.pNext = pNext - result.flags = flags - result.parameters = parameters + result.deviceCoherentMemory = deviceCoherentMemory -proc newVkDisplayPlaneCapabilitiesKHR*(supportedAlpha: VkDisplayPlaneAlphaFlagsKHR, minSrcPosition: VkOffset2D, maxSrcPosition: VkOffset2D, minSrcExtent: VkExtent2D, maxSrcExtent: VkExtent2D, minDstPosition: VkOffset2D, maxDstPosition: VkOffset2D, minDstExtent: VkExtent2D, maxDstExtent: VkExtent2D): VkDisplayPlaneCapabilitiesKHR = - result.supportedAlpha = supportedAlpha - result.minSrcPosition = minSrcPosition - result.maxSrcPosition = maxSrcPosition - result.minSrcExtent = minSrcExtent - result.maxSrcExtent = maxSrcExtent - result.minDstPosition = minDstPosition - result.maxDstPosition = maxDstPosition - result.minDstExtent = minDstExtent - result.maxDstExtent = maxDstExtent +proc newVkFaultData*(sType: VkStructureType, pNext: pointer = nil, faultLevel: VkFaultLevel, faultType: VkFaultType): VkFaultData = + result.sType = sType + result.pNext = pNext + result.faultLevel = faultLevel + result.faultType = faultType -proc newVkDisplaySurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkDisplaySurfaceCreateFlagsKHR = 0.VkDisplaySurfaceCreateFlagsKHR, displayMode: VkDisplayModeKHR, planeIndex: uint32, planeStackIndex: uint32, transform: VkSurfaceTransformFlagBitsKHR, globalAlpha: float32, alphaMode: VkDisplayPlaneAlphaFlagBitsKHR, imageExtent: VkExtent2D): VkDisplaySurfaceCreateInfoKHR = +proc newVkFaultCallbackInfo*(sType: VkStructureType, pNext: pointer = nil, faultCount: uint32, pFaults: ptr VkFaultData, pfnFaultCallback: PFN_vkFaultCallbackFunction): VkFaultCallbackInfo = result.sType = sType result.pNext = pNext - result.flags = flags - result.displayMode = displayMode - result.planeIndex = planeIndex - result.planeStackIndex = planeStackIndex - result.transform = transform - result.globalAlpha = globalAlpha - result.alphaMode = alphaMode - result.imageExtent = imageExtent + result.faultCount = faultCount + result.pFaults = pFaults + result.pfnFaultCallback = pfnFaultCallback -proc newVkDisplayPresentInfoKHR*(sType: VkStructureType, pNext: pointer = nil, srcRect: VkRect2D, dstRect: VkRect2D, persistent: VkBool32): VkDisplayPresentInfoKHR = +proc newVkPhysicalDeviceToolProperties*(sType: VkStructureType, pNext: pointer = nil, name: array[VK_MAX_EXTENSION_NAME_SIZE, char], version: array[VK_MAX_EXTENSION_NAME_SIZE, char], purposes: VkToolPurposeFlags, description: array[VK_MAX_DESCRIPTION_SIZE, char], layer: array[VK_MAX_EXTENSION_NAME_SIZE, char]): VkPhysicalDeviceToolProperties = result.sType = sType result.pNext = pNext - result.srcRect = srcRect - result.dstRect = dstRect - result.persistent = persistent + result.name = name + result.version = version + result.purposes = purposes + result.description = description + result.layer = layer -proc newVkSurfaceCapabilitiesKHR*(minImageCount: uint32, maxImageCount: uint32, currentExtent: VkExtent2D, minImageExtent: VkExtent2D, maxImageExtent: VkExtent2D, maxImageArrayLayers: uint32, supportedTransforms: VkSurfaceTransformFlagsKHR, currentTransform: VkSurfaceTransformFlagBitsKHR, supportedCompositeAlpha: VkCompositeAlphaFlagsKHR, supportedUsageFlags: VkImageUsageFlags): VkSurfaceCapabilitiesKHR = - result.minImageCount = minImageCount - result.maxImageCount = maxImageCount - result.currentExtent = currentExtent - result.minImageExtent = minImageExtent - result.maxImageExtent = maxImageExtent - result.maxImageArrayLayers = maxImageArrayLayers - result.supportedTransforms = supportedTransforms - result.currentTransform = currentTransform - result.supportedCompositeAlpha = supportedCompositeAlpha - result.supportedUsageFlags = supportedUsageFlags +proc newVkSamplerCustomBorderColorCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, customBorderColor: VkClearColorValue, format: VkFormat): VkSamplerCustomBorderColorCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.customBorderColor = customBorderColor + result.format = format -proc newVkAndroidSurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkAndroidSurfaceCreateFlagsKHR = 0.VkAndroidSurfaceCreateFlagsKHR, window: ptr ANativeWindow): VkAndroidSurfaceCreateInfoKHR = +proc newVkPhysicalDeviceCustomBorderColorPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxCustomBorderColorSamplers: uint32): VkPhysicalDeviceCustomBorderColorPropertiesEXT = result.sType = sType result.pNext = pNext - result.flags = flags - result.window = window + result.maxCustomBorderColorSamplers = maxCustomBorderColorSamplers -proc newVkViSurfaceCreateInfoNN*(sType: VkStructureType, pNext: pointer = nil, flags: VkViSurfaceCreateFlagsNN = 0.VkViSurfaceCreateFlagsNN, window: pointer = nil): VkViSurfaceCreateInfoNN = +proc newVkPhysicalDeviceCustomBorderColorFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, customBorderColors: VkBool32, customBorderColorWithoutFormat: VkBool32): VkPhysicalDeviceCustomBorderColorFeaturesEXT = result.sType = sType result.pNext = pNext - result.flags = flags - result.window = window + result.customBorderColors = customBorderColors + result.customBorderColorWithoutFormat = customBorderColorWithoutFormat -proc newVkWaylandSurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkWaylandSurfaceCreateFlagsKHR = 0.VkWaylandSurfaceCreateFlagsKHR, display: ptr wl_display, surface: ptr wl_surface): VkWaylandSurfaceCreateInfoKHR = +proc newVkSamplerBorderColorComponentMappingCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, components: VkComponentMapping, srgb: VkBool32): VkSamplerBorderColorComponentMappingCreateInfoEXT = result.sType = sType result.pNext = pNext - result.flags = flags - result.display = display - result.surface = surface + result.components = components + result.srgb = srgb -proc newVkWin32SurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkWin32SurfaceCreateFlagsKHR = 0.VkWin32SurfaceCreateFlagsKHR, hinstance: HINSTANCE, hwnd: HWND): VkWin32SurfaceCreateInfoKHR = +proc newVkPhysicalDeviceBorderColorSwizzleFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, borderColorSwizzle: VkBool32, borderColorSwizzleFromImage: VkBool32): VkPhysicalDeviceBorderColorSwizzleFeaturesEXT = result.sType = sType result.pNext = pNext - result.flags = flags - result.hinstance = hinstance - result.hwnd = hwnd + result.borderColorSwizzle = borderColorSwizzle + result.borderColorSwizzleFromImage = borderColorSwizzleFromImage -proc newVkXlibSurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkXlibSurfaceCreateFlagsKHR = 0.VkXlibSurfaceCreateFlagsKHR, dpy: ptr Display, window: Window): VkXlibSurfaceCreateInfoKHR = +proc newVkAccelerationStructureGeometryTrianglesDataKHR*(sType: VkStructureType, pNext: pointer = nil, vertexFormat: VkFormat, vertexData: VkDeviceOrHostAddressConstKHR, vertexStride: VkDeviceSize, maxVertex: uint32, indexType: VkIndexType, indexData: VkDeviceOrHostAddressConstKHR, transformData: VkDeviceOrHostAddressConstKHR): VkAccelerationStructureGeometryTrianglesDataKHR = result.sType = sType result.pNext = pNext - result.flags = flags - result.dpy = dpy - result.window = window + result.vertexFormat = vertexFormat + result.vertexData = vertexData + result.vertexStride = vertexStride + result.maxVertex = maxVertex + result.indexType = indexType + result.indexData = indexData + result.transformData = transformData -proc newVkXcbSurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkXcbSurfaceCreateFlagsKHR = 0.VkXcbSurfaceCreateFlagsKHR, connection: ptr xcb_connection_t, window: xcb_window_t): VkXcbSurfaceCreateInfoKHR = +proc newVkAccelerationStructureGeometryAabbsDataKHR*(sType: VkStructureType, pNext: pointer = nil, data: VkDeviceOrHostAddressConstKHR, stride: VkDeviceSize): VkAccelerationStructureGeometryAabbsDataKHR = result.sType = sType result.pNext = pNext - result.flags = flags - result.connection = connection - result.window = window + result.data = data + result.stride = stride -proc newVkDirectFBSurfaceCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkDirectFBSurfaceCreateFlagsEXT = 0.VkDirectFBSurfaceCreateFlagsEXT, dfb: ptr IDirectFB, surface: ptr IDirectFBSurface): VkDirectFBSurfaceCreateInfoEXT = +proc newVkAccelerationStructureGeometryInstancesDataKHR*(sType: VkStructureType, pNext: pointer = nil, arrayOfPointers: VkBool32, data: VkDeviceOrHostAddressConstKHR): VkAccelerationStructureGeometryInstancesDataKHR = result.sType = sType result.pNext = pNext - result.flags = flags - result.dfb = dfb - result.surface = surface + result.arrayOfPointers = arrayOfPointers + result.data = data -proc newVkImagePipeSurfaceCreateInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, flags: VkImagePipeSurfaceCreateFlagsFUCHSIA = 0.VkImagePipeSurfaceCreateFlagsFUCHSIA, imagePipeHandle: zx_handle_t): VkImagePipeSurfaceCreateInfoFUCHSIA = +proc newVkAccelerationStructureGeometryKHR*(sType: VkStructureType, pNext: pointer = nil, geometryType: VkGeometryTypeKHR, geometry: VkAccelerationStructureGeometryDataKHR, flags: VkGeometryFlagsKHR = 0.VkGeometryFlagsKHR): VkAccelerationStructureGeometryKHR = result.sType = sType result.pNext = pNext + result.geometryType = geometryType + result.geometry = geometry result.flags = flags - result.imagePipeHandle = imagePipeHandle -proc newVkStreamDescriptorSurfaceCreateInfoGGP*(sType: VkStructureType, pNext: pointer = nil, flags: VkStreamDescriptorSurfaceCreateFlagsGGP = 0.VkStreamDescriptorSurfaceCreateFlagsGGP, streamDescriptor: GgpStreamDescriptor): VkStreamDescriptorSurfaceCreateInfoGGP = +proc newVkAccelerationStructureBuildGeometryInfoKHR*(sType: VkStructureType, pNext: pointer = nil, `type`: VkAccelerationStructureTypeKHR, flags: VkBuildAccelerationStructureFlagsKHR = 0.VkBuildAccelerationStructureFlagsKHR, mode: VkBuildAccelerationStructureModeKHR, srcAccelerationStructure: VkAccelerationStructureKHR, dstAccelerationStructure: VkAccelerationStructureKHR, geometryCount: uint32, pGeometries: ptr VkAccelerationStructureGeometryKHR, ppGeometries: ptr ptr VkAccelerationStructureGeometryKHR, scratchData: VkDeviceOrHostAddressKHR): VkAccelerationStructureBuildGeometryInfoKHR = result.sType = sType result.pNext = pNext + result.`type` = `type` result.flags = flags - result.streamDescriptor = streamDescriptor + result.mode = mode + result.srcAccelerationStructure = srcAccelerationStructure + result.dstAccelerationStructure = dstAccelerationStructure + result.geometryCount = geometryCount + result.pGeometries = pGeometries + result.ppGeometries = ppGeometries + result.scratchData = scratchData -proc newVkSurfaceFormatKHR*(format: VkFormat, colorSpace: VkColorSpaceKHR): VkSurfaceFormatKHR = - result.format = format - result.colorSpace = colorSpace +proc newVkAccelerationStructureBuildRangeInfoKHR*(primitiveCount: uint32, primitiveOffset: uint32, firstVertex: uint32, transformOffset: uint32): VkAccelerationStructureBuildRangeInfoKHR = + result.primitiveCount = primitiveCount + result.primitiveOffset = primitiveOffset + result.firstVertex = firstVertex + result.transformOffset = transformOffset -proc newVkSwapchainCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkSwapchainCreateFlagsKHR = 0.VkSwapchainCreateFlagsKHR, surface: VkSurfaceKHR, minImageCount: uint32, imageFormat: VkFormat, imageColorSpace: VkColorSpaceKHR, imageExtent: VkExtent2D, imageArrayLayers: uint32, imageUsage: VkImageUsageFlags, imageSharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32, preTransform: VkSurfaceTransformFlagBitsKHR, compositeAlpha: VkCompositeAlphaFlagBitsKHR, presentMode: VkPresentModeKHR, clipped: VkBool32, oldSwapchain: VkSwapchainKHR): VkSwapchainCreateInfoKHR = +proc newVkAccelerationStructureCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, createFlags: VkAccelerationStructureCreateFlagsKHR, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize, `type`: VkAccelerationStructureTypeKHR, deviceAddress: VkDeviceAddress): VkAccelerationStructureCreateInfoKHR = result.sType = sType result.pNext = pNext + result.createFlags = createFlags + result.buffer = buffer + result.offset = offset + result.size = size + result.`type` = `type` + result.deviceAddress = deviceAddress + +proc newVkAabbPositionsKHR*(minX: float32, minY: float32, minZ: float32, maxX: float32, maxY: float32, maxZ: float32): VkAabbPositionsKHR = + result.minX = minX + result.minY = minY + result.minZ = minZ + result.maxX = maxX + result.maxY = maxY + result.maxZ = maxZ + +proc newVkTransformMatrixKHR*(matrix: array[3, float32]): VkTransformMatrixKHR = + result.matrix = matrix + +proc newVkAccelerationStructureInstanceKHR*(transform: VkTransformMatrixKHR, instanceCustomIndex: uint32, mask: uint32, instanceShaderBindingTableRecordOffset: uint32, flags: VkGeometryInstanceFlagsKHR = 0.VkGeometryInstanceFlagsKHR, accelerationStructureReference: uint64): VkAccelerationStructureInstanceKHR = + result.transform = transform + result.instanceCustomIndex = instanceCustomIndex + result.mask = mask + result.instanceShaderBindingTableRecordOffset = instanceShaderBindingTableRecordOffset result.flags = flags - result.surface = surface - result.minImageCount = minImageCount - result.imageFormat = imageFormat - result.imageColorSpace = imageColorSpace - result.imageExtent = imageExtent - result.imageArrayLayers = imageArrayLayers - result.imageUsage = imageUsage - result.imageSharingMode = imageSharingMode - result.queueFamilyIndexCount = queueFamilyIndexCount - result.pQueueFamilyIndices = pQueueFamilyIndices - result.preTransform = preTransform - result.compositeAlpha = compositeAlpha - result.presentMode = presentMode - result.clipped = clipped - result.oldSwapchain = oldSwapchain + result.accelerationStructureReference = accelerationStructureReference -proc newVkPresentInfoKHR*(sType: VkStructureType, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, swapchainCount: uint32, pSwapchains: ptr VkSwapchainKHR, pImageIndices: ptr uint32, pResults: ptr VkResult): VkPresentInfoKHR = +proc newVkAccelerationStructureDeviceAddressInfoKHR*(sType: VkStructureType, pNext: pointer = nil, accelerationStructure: VkAccelerationStructureKHR): VkAccelerationStructureDeviceAddressInfoKHR = result.sType = sType result.pNext = pNext - result.waitSemaphoreCount = waitSemaphoreCount - result.pWaitSemaphores = pWaitSemaphores - result.swapchainCount = swapchainCount - result.pSwapchains = pSwapchains - result.pImageIndices = pImageIndices - result.pResults = pResults + result.accelerationStructure = accelerationStructure -proc newVkDebugReportCallbackCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkDebugReportFlagsEXT = 0.VkDebugReportFlagsEXT, pfnCallback: PFN_vkDebugReportCallbackEXT, pUserData: pointer = nil): VkDebugReportCallbackCreateInfoEXT = +proc newVkAccelerationStructureVersionInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pVersionData: ptr uint8): VkAccelerationStructureVersionInfoKHR = result.sType = sType result.pNext = pNext - result.flags = flags - result.pfnCallback = pfnCallback - result.pUserData = pUserData + result.pVersionData = pVersionData -proc newVkValidationFlagsEXT*(sType: VkStructureType, pNext: pointer = nil, disabledValidationCheckCount: uint32, pDisabledValidationChecks: ptr VkValidationCheckEXT): VkValidationFlagsEXT = +proc newVkCopyAccelerationStructureInfoKHR*(sType: VkStructureType, pNext: pointer = nil, src: VkAccelerationStructureKHR, dst: VkAccelerationStructureKHR, mode: VkCopyAccelerationStructureModeKHR): VkCopyAccelerationStructureInfoKHR = result.sType = sType result.pNext = pNext - result.disabledValidationCheckCount = disabledValidationCheckCount - result.pDisabledValidationChecks = pDisabledValidationChecks + result.src = src + result.dst = dst + result.mode = mode -proc newVkValidationFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, enabledValidationFeatureCount: uint32, pEnabledValidationFeatures: ptr VkValidationFeatureEnableEXT, disabledValidationFeatureCount: uint32, pDisabledValidationFeatures: ptr VkValidationFeatureDisableEXT): VkValidationFeaturesEXT = +proc newVkCopyAccelerationStructureToMemoryInfoKHR*(sType: VkStructureType, pNext: pointer = nil, src: VkAccelerationStructureKHR, dst: VkDeviceOrHostAddressKHR, mode: VkCopyAccelerationStructureModeKHR): VkCopyAccelerationStructureToMemoryInfoKHR = result.sType = sType result.pNext = pNext - result.enabledValidationFeatureCount = enabledValidationFeatureCount - result.pEnabledValidationFeatures = pEnabledValidationFeatures - result.disabledValidationFeatureCount = disabledValidationFeatureCount - result.pDisabledValidationFeatures = pDisabledValidationFeatures + result.src = src + result.dst = dst + result.mode = mode -proc newVkPipelineRasterizationStateRasterizationOrderAMD*(sType: VkStructureType, pNext: pointer = nil, rasterizationOrder: VkRasterizationOrderAMD): VkPipelineRasterizationStateRasterizationOrderAMD = +proc newVkCopyMemoryToAccelerationStructureInfoKHR*(sType: VkStructureType, pNext: pointer = nil, src: VkDeviceOrHostAddressConstKHR, dst: VkAccelerationStructureKHR, mode: VkCopyAccelerationStructureModeKHR): VkCopyMemoryToAccelerationStructureInfoKHR = result.sType = sType result.pNext = pNext - result.rasterizationOrder = rasterizationOrder + result.src = src + result.dst = dst + result.mode = mode -proc newVkDebugMarkerObjectNameInfoEXT*(sType: VkStructureType, pNext: pointer = nil, objectType: VkDebugReportObjectTypeEXT, `object`: uint64, pObjectName: cstring): VkDebugMarkerObjectNameInfoEXT = +proc newVkRayTracingPipelineInterfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, maxPipelineRayPayloadSize: uint32, maxPipelineRayHitAttributeSize: uint32): VkRayTracingPipelineInterfaceCreateInfoKHR = result.sType = sType result.pNext = pNext - result.objectType = objectType - result.`object` = `object` - result.pObjectName = pObjectName + result.maxPipelineRayPayloadSize = maxPipelineRayPayloadSize + result.maxPipelineRayHitAttributeSize = maxPipelineRayHitAttributeSize -proc newVkDebugMarkerObjectTagInfoEXT*(sType: VkStructureType, pNext: pointer = nil, objectType: VkDebugReportObjectTypeEXT, `object`: uint64, tagName: uint64, tagSize: uint, pTag: pointer = nil): VkDebugMarkerObjectTagInfoEXT = +proc newVkPipelineLibraryCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, libraryCount: uint32, pLibraries: ptr VkPipeline): VkPipelineLibraryCreateInfoKHR = result.sType = sType result.pNext = pNext + result.libraryCount = libraryCount + result.pLibraries = pLibraries + +proc newVkRefreshObjectKHR*(objectType: VkObjectType, objectHandle: uint64, flags: VkRefreshObjectFlagsKHR = 0.VkRefreshObjectFlagsKHR): VkRefreshObjectKHR = result.objectType = objectType - result.`object` = `object` - result.tagName = tagName - result.tagSize = tagSize - result.pTag = pTag + result.objectHandle = objectHandle + result.flags = flags -proc newVkDebugMarkerMarkerInfoEXT*(sType: VkStructureType, pNext: pointer = nil, pMarkerName: cstring, color: array[4, float32]): VkDebugMarkerMarkerInfoEXT = +proc newVkRefreshObjectListKHR*(sType: VkStructureType, pNext: pointer = nil, objectCount: uint32, pObjects: ptr VkRefreshObjectKHR): VkRefreshObjectListKHR = result.sType = sType result.pNext = pNext - result.pMarkerName = pMarkerName - result.color = color + result.objectCount = objectCount + result.pObjects = pObjects -proc newVkDedicatedAllocationImageCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, dedicatedAllocation: VkBool32): VkDedicatedAllocationImageCreateInfoNV = +proc newVkPhysicalDeviceExtendedDynamicStateFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, extendedDynamicState: VkBool32): VkPhysicalDeviceExtendedDynamicStateFeaturesEXT = result.sType = sType result.pNext = pNext - result.dedicatedAllocation = dedicatedAllocation + result.extendedDynamicState = extendedDynamicState -proc newVkDedicatedAllocationBufferCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, dedicatedAllocation: VkBool32): VkDedicatedAllocationBufferCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.dedicatedAllocation = dedicatedAllocation +proc newVkPhysicalDeviceExtendedDynamicState2FeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, extendedDynamicState2: VkBool32, extendedDynamicState2LogicOp: VkBool32, extendedDynamicState2PatchControlPoints: VkBool32): VkPhysicalDeviceExtendedDynamicState2FeaturesEXT = + result.sType = sType + result.pNext = pNext + result.extendedDynamicState2 = extendedDynamicState2 + result.extendedDynamicState2LogicOp = extendedDynamicState2LogicOp + result.extendedDynamicState2PatchControlPoints = extendedDynamicState2PatchControlPoints + +proc newVkPhysicalDeviceExtendedDynamicState3FeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, extendedDynamicState3TessellationDomainOrigin: VkBool32, extendedDynamicState3DepthClampEnable: VkBool32, extendedDynamicState3PolygonMode: VkBool32, extendedDynamicState3RasterizationSamples: VkBool32, extendedDynamicState3SampleMask: VkBool32, extendedDynamicState3AlphaToCoverageEnable: VkBool32, extendedDynamicState3AlphaToOneEnable: VkBool32, extendedDynamicState3LogicOpEnable: VkBool32, extendedDynamicState3ColorBlendEnable: VkBool32, extendedDynamicState3ColorBlendEquation: VkBool32, extendedDynamicState3ColorWriteMask: VkBool32, extendedDynamicState3RasterizationStream: VkBool32, extendedDynamicState3ConservativeRasterizationMode: VkBool32, extendedDynamicState3ExtraPrimitiveOverestimationSize: VkBool32, extendedDynamicState3DepthClipEnable: VkBool32, extendedDynamicState3SampleLocationsEnable: VkBool32, extendedDynamicState3ColorBlendAdvanced: VkBool32, extendedDynamicState3ProvokingVertexMode: VkBool32, extendedDynamicState3LineRasterizationMode: VkBool32, extendedDynamicState3LineStippleEnable: VkBool32, extendedDynamicState3DepthClipNegativeOneToOne: VkBool32, extendedDynamicState3ViewportWScalingEnable: VkBool32, extendedDynamicState3ViewportSwizzle: VkBool32, extendedDynamicState3CoverageToColorEnable: VkBool32, extendedDynamicState3CoverageToColorLocation: VkBool32, extendedDynamicState3CoverageModulationMode: VkBool32, extendedDynamicState3CoverageModulationTableEnable: VkBool32, extendedDynamicState3CoverageModulationTable: VkBool32, extendedDynamicState3CoverageReductionMode: VkBool32, extendedDynamicState3RepresentativeFragmentTestEnable: VkBool32, extendedDynamicState3ShadingRateImageEnable: VkBool32): VkPhysicalDeviceExtendedDynamicState3FeaturesEXT = + result.sType = sType + result.pNext = pNext + result.extendedDynamicState3TessellationDomainOrigin = extendedDynamicState3TessellationDomainOrigin + result.extendedDynamicState3DepthClampEnable = extendedDynamicState3DepthClampEnable + result.extendedDynamicState3PolygonMode = extendedDynamicState3PolygonMode + result.extendedDynamicState3RasterizationSamples = extendedDynamicState3RasterizationSamples + result.extendedDynamicState3SampleMask = extendedDynamicState3SampleMask + result.extendedDynamicState3AlphaToCoverageEnable = extendedDynamicState3AlphaToCoverageEnable + result.extendedDynamicState3AlphaToOneEnable = extendedDynamicState3AlphaToOneEnable + result.extendedDynamicState3LogicOpEnable = extendedDynamicState3LogicOpEnable + result.extendedDynamicState3ColorBlendEnable = extendedDynamicState3ColorBlendEnable + result.extendedDynamicState3ColorBlendEquation = extendedDynamicState3ColorBlendEquation + result.extendedDynamicState3ColorWriteMask = extendedDynamicState3ColorWriteMask + result.extendedDynamicState3RasterizationStream = extendedDynamicState3RasterizationStream + result.extendedDynamicState3ConservativeRasterizationMode = extendedDynamicState3ConservativeRasterizationMode + result.extendedDynamicState3ExtraPrimitiveOverestimationSize = extendedDynamicState3ExtraPrimitiveOverestimationSize + result.extendedDynamicState3DepthClipEnable = extendedDynamicState3DepthClipEnable + result.extendedDynamicState3SampleLocationsEnable = extendedDynamicState3SampleLocationsEnable + result.extendedDynamicState3ColorBlendAdvanced = extendedDynamicState3ColorBlendAdvanced + result.extendedDynamicState3ProvokingVertexMode = extendedDynamicState3ProvokingVertexMode + result.extendedDynamicState3LineRasterizationMode = extendedDynamicState3LineRasterizationMode + result.extendedDynamicState3LineStippleEnable = extendedDynamicState3LineStippleEnable + result.extendedDynamicState3DepthClipNegativeOneToOne = extendedDynamicState3DepthClipNegativeOneToOne + result.extendedDynamicState3ViewportWScalingEnable = extendedDynamicState3ViewportWScalingEnable + result.extendedDynamicState3ViewportSwizzle = extendedDynamicState3ViewportSwizzle + result.extendedDynamicState3CoverageToColorEnable = extendedDynamicState3CoverageToColorEnable + result.extendedDynamicState3CoverageToColorLocation = extendedDynamicState3CoverageToColorLocation + result.extendedDynamicState3CoverageModulationMode = extendedDynamicState3CoverageModulationMode + result.extendedDynamicState3CoverageModulationTableEnable = extendedDynamicState3CoverageModulationTableEnable + result.extendedDynamicState3CoverageModulationTable = extendedDynamicState3CoverageModulationTable + result.extendedDynamicState3CoverageReductionMode = extendedDynamicState3CoverageReductionMode + result.extendedDynamicState3RepresentativeFragmentTestEnable = extendedDynamicState3RepresentativeFragmentTestEnable + result.extendedDynamicState3ShadingRateImageEnable = extendedDynamicState3ShadingRateImageEnable + +proc newVkPhysicalDeviceExtendedDynamicState3PropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, dynamicPrimitiveTopologyUnrestricted: VkBool32): VkPhysicalDeviceExtendedDynamicState3PropertiesEXT = + result.sType = sType + result.pNext = pNext + result.dynamicPrimitiveTopologyUnrestricted = dynamicPrimitiveTopologyUnrestricted + +proc newVkColorBlendEquationEXT*(srcColorBlendFactor: VkBlendFactor, dstColorBlendFactor: VkBlendFactor, colorBlendOp: VkBlendOp, srcAlphaBlendFactor: VkBlendFactor, dstAlphaBlendFactor: VkBlendFactor, alphaBlendOp: VkBlendOp): VkColorBlendEquationEXT = + result.srcColorBlendFactor = srcColorBlendFactor + result.dstColorBlendFactor = dstColorBlendFactor + result.colorBlendOp = colorBlendOp + result.srcAlphaBlendFactor = srcAlphaBlendFactor + result.dstAlphaBlendFactor = dstAlphaBlendFactor + result.alphaBlendOp = alphaBlendOp -proc newVkDedicatedAllocationMemoryAllocateInfoNV*(sType: VkStructureType, pNext: pointer = nil, image: VkImage, buffer: VkBuffer): VkDedicatedAllocationMemoryAllocateInfoNV = +proc newVkColorBlendAdvancedEXT*(advancedBlendOp: VkBlendOp, srcPremultiplied: VkBool32, dstPremultiplied: VkBool32, blendOverlap: VkBlendOverlapEXT, clampResults: VkBool32): VkColorBlendAdvancedEXT = + result.advancedBlendOp = advancedBlendOp + result.srcPremultiplied = srcPremultiplied + result.dstPremultiplied = dstPremultiplied + result.blendOverlap = blendOverlap + result.clampResults = clampResults + +proc newVkRenderPassTransformBeginInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, transform: VkSurfaceTransformFlagBitsKHR): VkRenderPassTransformBeginInfoQCOM = result.sType = sType result.pNext = pNext - result.image = image - result.buffer = buffer - -proc newVkExternalImageFormatPropertiesNV*(imageFormatProperties: VkImageFormatProperties, externalMemoryFeatures: VkExternalMemoryFeatureFlagsNV, exportFromImportedHandleTypes: VkExternalMemoryHandleTypeFlagsNV, compatibleHandleTypes: VkExternalMemoryHandleTypeFlagsNV): VkExternalImageFormatPropertiesNV = - result.imageFormatProperties = imageFormatProperties - result.externalMemoryFeatures = externalMemoryFeatures - result.exportFromImportedHandleTypes = exportFromImportedHandleTypes - result.compatibleHandleTypes = compatibleHandleTypes + result.transform = transform -proc newVkExternalMemoryImageCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlagsNV): VkExternalMemoryImageCreateInfoNV = +proc newVkCopyCommandTransformInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, transform: VkSurfaceTransformFlagBitsKHR): VkCopyCommandTransformInfoQCOM = result.sType = sType result.pNext = pNext - result.handleTypes = handleTypes + result.transform = transform -proc newVkExportMemoryAllocateInfoNV*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlagsNV): VkExportMemoryAllocateInfoNV = +proc newVkCommandBufferInheritanceRenderPassTransformInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, transform: VkSurfaceTransformFlagBitsKHR, renderArea: VkRect2D): VkCommandBufferInheritanceRenderPassTransformInfoQCOM = result.sType = sType result.pNext = pNext - result.handleTypes = handleTypes + result.transform = transform + result.renderArea = renderArea -proc newVkImportMemoryWin32HandleInfoNV*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagsNV, handle: HANDLE): VkImportMemoryWin32HandleInfoNV = +proc newVkPhysicalDeviceDiagnosticsConfigFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, diagnosticsConfig: VkBool32): VkPhysicalDeviceDiagnosticsConfigFeaturesNV = result.sType = sType result.pNext = pNext - result.handleType = handleType - result.handle = handle + result.diagnosticsConfig = diagnosticsConfig -proc newVkExportMemoryWin32HandleInfoNV*(sType: VkStructureType, pNext: pointer = nil, pAttributes: ptr SECURITY_ATTRIBUTES, dwAccess: DWORD): VkExportMemoryWin32HandleInfoNV = +proc newVkDeviceDiagnosticsConfigCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkDeviceDiagnosticsConfigFlagsNV = 0.VkDeviceDiagnosticsConfigFlagsNV): VkDeviceDiagnosticsConfigCreateInfoNV = result.sType = sType result.pNext = pNext - result.pAttributes = pAttributes - result.dwAccess = dwAccess + result.flags = flags -proc newVkWin32KeyedMutexAcquireReleaseInfoNV*(sType: VkStructureType, pNext: pointer = nil, acquireCount: uint32, pAcquireSyncs: ptr VkDeviceMemory, pAcquireKeys: ptr uint64, pAcquireTimeoutMilliseconds: ptr uint32, releaseCount: uint32, pReleaseSyncs: ptr VkDeviceMemory, pReleaseKeys: ptr uint64): VkWin32KeyedMutexAcquireReleaseInfoNV = +proc newVkPipelineOfflineCreateInfo*(sType: VkStructureType, pNext: pointer = nil, pipelineIdentifier: array[VK_UUID_SIZE, uint8], matchControl: VkPipelineMatchControl, poolEntrySize: VkDeviceSize): VkPipelineOfflineCreateInfo = result.sType = sType result.pNext = pNext - result.acquireCount = acquireCount - result.pAcquireSyncs = pAcquireSyncs - result.pAcquireKeys = pAcquireKeys - result.pAcquireTimeoutMilliseconds = pAcquireTimeoutMilliseconds - result.releaseCount = releaseCount - result.pReleaseSyncs = pReleaseSyncs - result.pReleaseKeys = pReleaseKeys + result.pipelineIdentifier = pipelineIdentifier + result.matchControl = matchControl + result.poolEntrySize = poolEntrySize -proc newVkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, deviceGeneratedCommands: VkBool32): VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV = +proc newVkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures*(sType: VkStructureType, pNext: pointer = nil, shaderZeroInitializeWorkgroupMemory: VkBool32): VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures = result.sType = sType result.pNext = pNext - result.deviceGeneratedCommands = deviceGeneratedCommands + result.shaderZeroInitializeWorkgroupMemory = shaderZeroInitializeWorkgroupMemory -proc newVkDevicePrivateDataCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, privateDataSlotRequestCount: uint32): VkDevicePrivateDataCreateInfoEXT = +proc newVkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, shaderSubgroupUniformControlFlow: VkBool32): VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR = result.sType = sType result.pNext = pNext - result.privateDataSlotRequestCount = privateDataSlotRequestCount + result.shaderSubgroupUniformControlFlow = shaderSubgroupUniformControlFlow -proc newVkPrivateDataSlotCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkPrivateDataSlotCreateFlagsEXT = 0.VkPrivateDataSlotCreateFlagsEXT): VkPrivateDataSlotCreateInfoEXT = +proc newVkPhysicalDeviceRobustness2FeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, robustBufferAccess2: VkBool32, robustImageAccess2: VkBool32, nullDescriptor: VkBool32): VkPhysicalDeviceRobustness2FeaturesEXT = result.sType = sType result.pNext = pNext - result.flags = flags + result.robustBufferAccess2 = robustBufferAccess2 + result.robustImageAccess2 = robustImageAccess2 + result.nullDescriptor = nullDescriptor -proc newVkPhysicalDevicePrivateDataFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, privateData: VkBool32): VkPhysicalDevicePrivateDataFeaturesEXT = +proc newVkPhysicalDeviceRobustness2PropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, robustStorageBufferAccessSizeAlignment: VkDeviceSize, robustUniformBufferAccessSizeAlignment: VkDeviceSize): VkPhysicalDeviceRobustness2PropertiesEXT = result.sType = sType result.pNext = pNext - result.privateData = privateData + result.robustStorageBufferAccessSizeAlignment = robustStorageBufferAccessSizeAlignment + result.robustUniformBufferAccessSizeAlignment = robustUniformBufferAccessSizeAlignment -proc newVkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, maxGraphicsShaderGroupCount: uint32, maxIndirectSequenceCount: uint32, maxIndirectCommandsTokenCount: uint32, maxIndirectCommandsStreamCount: uint32, maxIndirectCommandsTokenOffset: uint32, maxIndirectCommandsStreamStride: uint32, minSequencesCountBufferOffsetAlignment: uint32, minSequencesIndexBufferOffsetAlignment: uint32, minIndirectCommandsBufferOffsetAlignment: uint32): VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV = +proc newVkPhysicalDeviceImageRobustnessFeatures*(sType: VkStructureType, pNext: pointer = nil, robustImageAccess: VkBool32): VkPhysicalDeviceImageRobustnessFeatures = result.sType = sType result.pNext = pNext - result.maxGraphicsShaderGroupCount = maxGraphicsShaderGroupCount - result.maxIndirectSequenceCount = maxIndirectSequenceCount - result.maxIndirectCommandsTokenCount = maxIndirectCommandsTokenCount - result.maxIndirectCommandsStreamCount = maxIndirectCommandsStreamCount - result.maxIndirectCommandsTokenOffset = maxIndirectCommandsTokenOffset - result.maxIndirectCommandsStreamStride = maxIndirectCommandsStreamStride - result.minSequencesCountBufferOffsetAlignment = minSequencesCountBufferOffsetAlignment - result.minSequencesIndexBufferOffsetAlignment = minSequencesIndexBufferOffsetAlignment - result.minIndirectCommandsBufferOffsetAlignment = minIndirectCommandsBufferOffsetAlignment + result.robustImageAccess = robustImageAccess -proc newVkGraphicsShaderGroupCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, pVertexInputState: ptr VkPipelineVertexInputStateCreateInfo, pTessellationState: ptr VkPipelineTessellationStateCreateInfo): VkGraphicsShaderGroupCreateInfoNV = +proc newVkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, workgroupMemoryExplicitLayout: VkBool32, workgroupMemoryExplicitLayoutScalarBlockLayout: VkBool32, workgroupMemoryExplicitLayout8BitAccess: VkBool32, workgroupMemoryExplicitLayout16BitAccess: VkBool32): VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR = result.sType = sType result.pNext = pNext - result.stageCount = stageCount - result.pStages = pStages - result.pVertexInputState = pVertexInputState - result.pTessellationState = pTessellationState + result.workgroupMemoryExplicitLayout = workgroupMemoryExplicitLayout + result.workgroupMemoryExplicitLayoutScalarBlockLayout = workgroupMemoryExplicitLayoutScalarBlockLayout + result.workgroupMemoryExplicitLayout8BitAccess = workgroupMemoryExplicitLayout8BitAccess + result.workgroupMemoryExplicitLayout16BitAccess = workgroupMemoryExplicitLayout16BitAccess -proc newVkGraphicsPipelineShaderGroupsCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, groupCount: uint32, pGroups: ptr VkGraphicsShaderGroupCreateInfoNV, pipelineCount: uint32, pPipelines: ptr VkPipeline): VkGraphicsPipelineShaderGroupsCreateInfoNV = +proc newVkPhysicalDevicePortabilitySubsetFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, constantAlphaColorBlendFactors: VkBool32, events: VkBool32, imageViewFormatReinterpretation: VkBool32, imageViewFormatSwizzle: VkBool32, imageView2DOn3DImage: VkBool32, multisampleArrayImage: VkBool32, mutableComparisonSamplers: VkBool32, pointPolygons: VkBool32, samplerMipLodBias: VkBool32, separateStencilMaskRef: VkBool32, shaderSampleRateInterpolationFunctions: VkBool32, tessellationIsolines: VkBool32, tessellationPointMode: VkBool32, triangleFans: VkBool32, vertexAttributeAccessBeyondStride: VkBool32): VkPhysicalDevicePortabilitySubsetFeaturesKHR = result.sType = sType result.pNext = pNext - result.groupCount = groupCount - result.pGroups = pGroups - result.pipelineCount = pipelineCount - result.pPipelines = pPipelines - -proc newVkBindShaderGroupIndirectCommandNV*(groupIndex: uint32): VkBindShaderGroupIndirectCommandNV = - result.groupIndex = groupIndex - -proc newVkBindIndexBufferIndirectCommandNV*(bufferAddress: VkDeviceAddress, size: uint32, indexType: VkIndexType): VkBindIndexBufferIndirectCommandNV = - result.bufferAddress = bufferAddress - result.size = size - result.indexType = indexType - -proc newVkBindVertexBufferIndirectCommandNV*(bufferAddress: VkDeviceAddress, size: uint32, stride: uint32): VkBindVertexBufferIndirectCommandNV = - result.bufferAddress = bufferAddress - result.size = size - result.stride = stride - -proc newVkSetStateFlagsIndirectCommandNV*(data: uint32): VkSetStateFlagsIndirectCommandNV = - result.data = data - -proc newVkIndirectCommandsStreamNV*(buffer: VkBuffer, offset: VkDeviceSize): VkIndirectCommandsStreamNV = - result.buffer = buffer - result.offset = offset + result.constantAlphaColorBlendFactors = constantAlphaColorBlendFactors + result.events = events + result.imageViewFormatReinterpretation = imageViewFormatReinterpretation + result.imageViewFormatSwizzle = imageViewFormatSwizzle + result.imageView2DOn3DImage = imageView2DOn3DImage + result.multisampleArrayImage = multisampleArrayImage + result.mutableComparisonSamplers = mutableComparisonSamplers + result.pointPolygons = pointPolygons + result.samplerMipLodBias = samplerMipLodBias + result.separateStencilMaskRef = separateStencilMaskRef + result.shaderSampleRateInterpolationFunctions = shaderSampleRateInterpolationFunctions + result.tessellationIsolines = tessellationIsolines + result.tessellationPointMode = tessellationPointMode + result.triangleFans = triangleFans + result.vertexAttributeAccessBeyondStride = vertexAttributeAccessBeyondStride -proc newVkIndirectCommandsLayoutTokenNV*(sType: VkStructureType, pNext: pointer = nil, tokenType: VkIndirectCommandsTokenTypeNV, stream: uint32, offset: uint32, vertexBindingUnit: uint32, vertexDynamicStride: VkBool32, pushconstantPipelineLayout: VkPipelineLayout, pushconstantShaderStageFlags: VkShaderStageFlags, pushconstantOffset: uint32, pushconstantSize: uint32, indirectStateFlags: VkIndirectStateFlagsNV, indexTypeCount: uint32, pIndexTypes: ptr VkIndexType, pIndexTypeValues: ptr uint32): VkIndirectCommandsLayoutTokenNV = +proc newVkPhysicalDevicePortabilitySubsetPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, minVertexInputBindingStrideAlignment: uint32): VkPhysicalDevicePortabilitySubsetPropertiesKHR = result.sType = sType result.pNext = pNext - result.tokenType = tokenType - result.stream = stream - result.offset = offset - result.vertexBindingUnit = vertexBindingUnit - result.vertexDynamicStride = vertexDynamicStride - result.pushconstantPipelineLayout = pushconstantPipelineLayout - result.pushconstantShaderStageFlags = pushconstantShaderStageFlags - result.pushconstantOffset = pushconstantOffset - result.pushconstantSize = pushconstantSize - result.indirectStateFlags = indirectStateFlags - result.indexTypeCount = indexTypeCount - result.pIndexTypes = pIndexTypes - result.pIndexTypeValues = pIndexTypeValues + result.minVertexInputBindingStrideAlignment = minVertexInputBindingStrideAlignment + +proc newVkPhysicalDevice4444FormatsFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, formatA4R4G4B4: VkBool32, formatA4B4G4R4: VkBool32): VkPhysicalDevice4444FormatsFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.formatA4R4G4B4 = formatA4R4G4B4 + result.formatA4B4G4R4 = formatA4B4G4R4 -proc newVkIndirectCommandsLayoutCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkIndirectCommandsLayoutUsageFlagsNV = 0.VkIndirectCommandsLayoutUsageFlagsNV, pipelineBindPoint: VkPipelineBindPoint, tokenCount: uint32, pTokens: ptr VkIndirectCommandsLayoutTokenNV, streamCount: uint32, pStreamStrides: ptr uint32): VkIndirectCommandsLayoutCreateInfoNV = +proc newVkPhysicalDeviceSubpassShadingFeaturesHUAWEI*(sType: VkStructureType, pNext: pointer = nil, subpassShading: VkBool32): VkPhysicalDeviceSubpassShadingFeaturesHUAWEI = result.sType = sType result.pNext = pNext - result.flags = flags - result.pipelineBindPoint = pipelineBindPoint - result.tokenCount = tokenCount - result.pTokens = pTokens - result.streamCount = streamCount - result.pStreamStrides = pStreamStrides + result.subpassShading = subpassShading -proc newVkGeneratedCommandsInfoNV*(sType: VkStructureType, pNext: pointer = nil, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline, indirectCommandsLayout: VkIndirectCommandsLayoutNV, streamCount: uint32, pStreams: ptr VkIndirectCommandsStreamNV, sequencesCount: uint32, preprocessBuffer: VkBuffer, preprocessOffset: VkDeviceSize, preprocessSize: VkDeviceSize, sequencesCountBuffer: VkBuffer, sequencesCountOffset: VkDeviceSize, sequencesIndexBuffer: VkBuffer, sequencesIndexOffset: VkDeviceSize): VkGeneratedCommandsInfoNV = +proc newVkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI*(sType: VkStructureType, pNext: pointer = nil, clustercullingShader: VkBool32, multiviewClusterCullingShader: VkBool32): VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI = result.sType = sType result.pNext = pNext - result.pipelineBindPoint = pipelineBindPoint - result.pipeline = pipeline - result.indirectCommandsLayout = indirectCommandsLayout - result.streamCount = streamCount - result.pStreams = pStreams - result.sequencesCount = sequencesCount - result.preprocessBuffer = preprocessBuffer - result.preprocessOffset = preprocessOffset - result.preprocessSize = preprocessSize - result.sequencesCountBuffer = sequencesCountBuffer - result.sequencesCountOffset = sequencesCountOffset - result.sequencesIndexBuffer = sequencesIndexBuffer - result.sequencesIndexOffset = sequencesIndexOffset + result.clustercullingShader = clustercullingShader + result.multiviewClusterCullingShader = multiviewClusterCullingShader -proc newVkGeneratedCommandsMemoryRequirementsInfoNV*(sType: VkStructureType, pNext: pointer = nil, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline, indirectCommandsLayout: VkIndirectCommandsLayoutNV, maxSequencesCount: uint32): VkGeneratedCommandsMemoryRequirementsInfoNV = +proc newVkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI*(sType: VkStructureType, pNext: pointer = nil, clusterShadingRate: VkBool32): VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI = result.sType = sType result.pNext = pNext - result.pipelineBindPoint = pipelineBindPoint - result.pipeline = pipeline - result.indirectCommandsLayout = indirectCommandsLayout - result.maxSequencesCount = maxSequencesCount + result.clusterShadingRate = clusterShadingRate -proc newVkPhysicalDeviceFeatures2*(sType: VkStructureType, pNext: pointer = nil, features: VkPhysicalDeviceFeatures): VkPhysicalDeviceFeatures2 = +proc newVkBufferCopy2*(sType: VkStructureType, pNext: pointer = nil, srcOffset: VkDeviceSize, dstOffset: VkDeviceSize, size: VkDeviceSize): VkBufferCopy2 = result.sType = sType result.pNext = pNext - result.features = features + result.srcOffset = srcOffset + result.dstOffset = dstOffset + result.size = size -proc newVkPhysicalDeviceProperties2*(sType: VkStructureType, pNext: pointer = nil, properties: VkPhysicalDeviceProperties): VkPhysicalDeviceProperties2 = +proc newVkImageCopy2*(sType: VkStructureType, pNext: pointer = nil, srcSubresource: VkImageSubresourceLayers, srcOffset: VkOffset3D, dstSubresource: VkImageSubresourceLayers, dstOffset: VkOffset3D, extent: VkExtent3D): VkImageCopy2 = result.sType = sType result.pNext = pNext - result.properties = properties + result.srcSubresource = srcSubresource + result.srcOffset = srcOffset + result.dstSubresource = dstSubresource + result.dstOffset = dstOffset + result.extent = extent -proc newVkFormatProperties2*(sType: VkStructureType, pNext: pointer = nil, formatProperties: VkFormatProperties): VkFormatProperties2 = +proc newVkImageBlit2*(sType: VkStructureType, pNext: pointer = nil, srcSubresource: VkImageSubresourceLayers, srcOffsets: array[2, VkOffset3D], dstSubresource: VkImageSubresourceLayers, dstOffsets: array[2, VkOffset3D]): VkImageBlit2 = result.sType = sType result.pNext = pNext - result.formatProperties = formatProperties + result.srcSubresource = srcSubresource + result.srcOffsets = srcOffsets + result.dstSubresource = dstSubresource + result.dstOffsets = dstOffsets -proc newVkImageFormatProperties2*(sType: VkStructureType, pNext: pointer = nil, imageFormatProperties: VkImageFormatProperties): VkImageFormatProperties2 = +proc newVkBufferImageCopy2*(sType: VkStructureType, pNext: pointer = nil, bufferOffset: VkDeviceSize, bufferRowLength: uint32, bufferImageHeight: uint32, imageSubresource: VkImageSubresourceLayers, imageOffset: VkOffset3D, imageExtent: VkExtent3D): VkBufferImageCopy2 = result.sType = sType result.pNext = pNext - result.imageFormatProperties = imageFormatProperties + result.bufferOffset = bufferOffset + result.bufferRowLength = bufferRowLength + result.bufferImageHeight = bufferImageHeight + result.imageSubresource = imageSubresource + result.imageOffset = imageOffset + result.imageExtent = imageExtent -proc newVkPhysicalDeviceImageFormatInfo2*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat, `type`: VkImageType, tiling: VkImageTiling, usage: VkImageUsageFlags, flags: VkImageCreateFlags = 0.VkImageCreateFlags): VkPhysicalDeviceImageFormatInfo2 = +proc newVkImageResolve2*(sType: VkStructureType, pNext: pointer = nil, srcSubresource: VkImageSubresourceLayers, srcOffset: VkOffset3D, dstSubresource: VkImageSubresourceLayers, dstOffset: VkOffset3D, extent: VkExtent3D): VkImageResolve2 = result.sType = sType result.pNext = pNext - result.format = format - result.`type` = `type` - result.tiling = tiling - result.usage = usage - result.flags = flags + result.srcSubresource = srcSubresource + result.srcOffset = srcOffset + result.dstSubresource = dstSubresource + result.dstOffset = dstOffset + result.extent = extent -proc newVkQueueFamilyProperties2*(sType: VkStructureType, pNext: pointer = nil, queueFamilyProperties: VkQueueFamilyProperties): VkQueueFamilyProperties2 = +proc newVkCopyBufferInfo2*(sType: VkStructureType, pNext: pointer = nil, srcBuffer: VkBuffer, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferCopy2): VkCopyBufferInfo2 = result.sType = sType result.pNext = pNext - result.queueFamilyProperties = queueFamilyProperties + result.srcBuffer = srcBuffer + result.dstBuffer = dstBuffer + result.regionCount = regionCount + result.pRegions = pRegions -proc newVkPhysicalDeviceMemoryProperties2*(sType: VkStructureType, pNext: pointer = nil, memoryProperties: VkPhysicalDeviceMemoryProperties): VkPhysicalDeviceMemoryProperties2 = +proc newVkCopyImageInfo2*(sType: VkStructureType, pNext: pointer = nil, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageCopy2): VkCopyImageInfo2 = result.sType = sType result.pNext = pNext - result.memoryProperties = memoryProperties + result.srcImage = srcImage + result.srcImageLayout = srcImageLayout + result.dstImage = dstImage + result.dstImageLayout = dstImageLayout + result.regionCount = regionCount + result.pRegions = pRegions -proc newVkSparseImageFormatProperties2*(sType: VkStructureType, pNext: pointer = nil, properties: VkSparseImageFormatProperties): VkSparseImageFormatProperties2 = +proc newVkBlitImageInfo2*(sType: VkStructureType, pNext: pointer = nil, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageBlit2, filter: VkFilter): VkBlitImageInfo2 = result.sType = sType result.pNext = pNext - result.properties = properties + result.srcImage = srcImage + result.srcImageLayout = srcImageLayout + result.dstImage = dstImage + result.dstImageLayout = dstImageLayout + result.regionCount = regionCount + result.pRegions = pRegions + result.filter = filter -proc newVkPhysicalDeviceSparseImageFormatInfo2*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat, `type`: VkImageType, samples: VkSampleCountFlagBits, usage: VkImageUsageFlags, tiling: VkImageTiling): VkPhysicalDeviceSparseImageFormatInfo2 = +proc newVkCopyBufferToImageInfo2*(sType: VkStructureType, pNext: pointer = nil, srcBuffer: VkBuffer, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkBufferImageCopy2): VkCopyBufferToImageInfo2 = result.sType = sType result.pNext = pNext - result.format = format - result.`type` = `type` - result.samples = samples - result.usage = usage - result.tiling = tiling + result.srcBuffer = srcBuffer + result.dstImage = dstImage + result.dstImageLayout = dstImageLayout + result.regionCount = regionCount + result.pRegions = pRegions -proc newVkPhysicalDevicePushDescriptorPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, maxPushDescriptors: uint32): VkPhysicalDevicePushDescriptorPropertiesKHR = +proc newVkCopyImageToBufferInfo2*(sType: VkStructureType, pNext: pointer = nil, srcImage: VkImage, srcImageLayout: VkImageLayout, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferImageCopy2): VkCopyImageToBufferInfo2 = result.sType = sType result.pNext = pNext - result.maxPushDescriptors = maxPushDescriptors + result.srcImage = srcImage + result.srcImageLayout = srcImageLayout + result.dstBuffer = dstBuffer + result.regionCount = regionCount + result.pRegions = pRegions -proc newVkConformanceVersion*(major: uint8, minor: uint8, subminor: uint8, patch: uint8): VkConformanceVersion = - result.major = major - result.minor = minor - result.subminor = subminor - result.patch = patch +proc newVkResolveImageInfo2*(sType: VkStructureType, pNext: pointer = nil, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageResolve2): VkResolveImageInfo2 = + result.sType = sType + result.pNext = pNext + result.srcImage = srcImage + result.srcImageLayout = srcImageLayout + result.dstImage = dstImage + result.dstImageLayout = dstImageLayout + result.regionCount = regionCount + result.pRegions = pRegions -proc newVkPhysicalDeviceDriverProperties*(sType: VkStructureType, pNext: pointer = nil, driverID: VkDriverId, driverName: array[VK_MAX_DRIVER_NAME_SIZE, char], driverInfo: array[VK_MAX_DRIVER_INFO_SIZE, char], conformanceVersion: VkConformanceVersion): VkPhysicalDeviceDriverProperties = +proc newVkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderImageInt64Atomics: VkBool32, sparseImageInt64Atomics: VkBool32): VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT = result.sType = sType result.pNext = pNext - result.driverID = driverID - result.driverName = driverName - result.driverInfo = driverInfo - result.conformanceVersion = conformanceVersion + result.shaderImageInt64Atomics = shaderImageInt64Atomics + result.sparseImageInt64Atomics = sparseImageInt64Atomics -proc newVkPresentRegionsKHR*(sType: VkStructureType, pNext: pointer = nil, swapchainCount: uint32, pRegions: ptr VkPresentRegionKHR): VkPresentRegionsKHR = +proc newVkFragmentShadingRateAttachmentInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pFragmentShadingRateAttachment: ptr VkAttachmentReference2, shadingRateAttachmentTexelSize: VkExtent2D): VkFragmentShadingRateAttachmentInfoKHR = result.sType = sType result.pNext = pNext - result.swapchainCount = swapchainCount - result.pRegions = pRegions + result.pFragmentShadingRateAttachment = pFragmentShadingRateAttachment + result.shadingRateAttachmentTexelSize = shadingRateAttachmentTexelSize -proc newVkPresentRegionKHR*(rectangleCount: uint32, pRectangles: ptr VkRectLayerKHR): VkPresentRegionKHR = - result.rectangleCount = rectangleCount - result.pRectangles = pRectangles +proc newVkPipelineFragmentShadingRateStateCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, fragmentSize: VkExtent2D, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): VkPipelineFragmentShadingRateStateCreateInfoKHR = + result.sType = sType + result.pNext = pNext + result.fragmentSize = fragmentSize + result.combinerOps = combinerOps -proc newVkRectLayerKHR*(offset: VkOffset2D, extent: VkExtent2D, layer: uint32): VkRectLayerKHR = - result.offset = offset - result.extent = extent - result.layer = layer +proc newVkPhysicalDeviceFragmentShadingRateFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, pipelineFragmentShadingRate: VkBool32, primitiveFragmentShadingRate: VkBool32, attachmentFragmentShadingRate: VkBool32): VkPhysicalDeviceFragmentShadingRateFeaturesKHR = + result.sType = sType + result.pNext = pNext + result.pipelineFragmentShadingRate = pipelineFragmentShadingRate + result.primitiveFragmentShadingRate = primitiveFragmentShadingRate + result.attachmentFragmentShadingRate = attachmentFragmentShadingRate -proc newVkPhysicalDeviceVariablePointersFeatures*(sType: VkStructureType, pNext: pointer = nil, variablePointersStorageBuffer: VkBool32, variablePointers: VkBool32): VkPhysicalDeviceVariablePointersFeatures = +proc newVkPhysicalDeviceFragmentShadingRatePropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, minFragmentShadingRateAttachmentTexelSize: VkExtent2D, maxFragmentShadingRateAttachmentTexelSize: VkExtent2D, maxFragmentShadingRateAttachmentTexelSizeAspectRatio: uint32, primitiveFragmentShadingRateWithMultipleViewports: VkBool32, layeredShadingRateAttachments: VkBool32, fragmentShadingRateNonTrivialCombinerOps: VkBool32, maxFragmentSize: VkExtent2D, maxFragmentSizeAspectRatio: uint32, maxFragmentShadingRateCoverageSamples: uint32, maxFragmentShadingRateRasterizationSamples: VkSampleCountFlagBits, fragmentShadingRateWithShaderDepthStencilWrites: VkBool32, fragmentShadingRateWithSampleMask: VkBool32, fragmentShadingRateWithShaderSampleMask: VkBool32, fragmentShadingRateWithConservativeRasterization: VkBool32, fragmentShadingRateWithFragmentShaderInterlock: VkBool32, fragmentShadingRateWithCustomSampleLocations: VkBool32, fragmentShadingRateStrictMultiplyCombiner: VkBool32): VkPhysicalDeviceFragmentShadingRatePropertiesKHR = result.sType = sType result.pNext = pNext - result.variablePointersStorageBuffer = variablePointersStorageBuffer - result.variablePointers = variablePointers + result.minFragmentShadingRateAttachmentTexelSize = minFragmentShadingRateAttachmentTexelSize + result.maxFragmentShadingRateAttachmentTexelSize = maxFragmentShadingRateAttachmentTexelSize + result.maxFragmentShadingRateAttachmentTexelSizeAspectRatio = maxFragmentShadingRateAttachmentTexelSizeAspectRatio + result.primitiveFragmentShadingRateWithMultipleViewports = primitiveFragmentShadingRateWithMultipleViewports + result.layeredShadingRateAttachments = layeredShadingRateAttachments + result.fragmentShadingRateNonTrivialCombinerOps = fragmentShadingRateNonTrivialCombinerOps + result.maxFragmentSize = maxFragmentSize + result.maxFragmentSizeAspectRatio = maxFragmentSizeAspectRatio + result.maxFragmentShadingRateCoverageSamples = maxFragmentShadingRateCoverageSamples + result.maxFragmentShadingRateRasterizationSamples = maxFragmentShadingRateRasterizationSamples + result.fragmentShadingRateWithShaderDepthStencilWrites = fragmentShadingRateWithShaderDepthStencilWrites + result.fragmentShadingRateWithSampleMask = fragmentShadingRateWithSampleMask + result.fragmentShadingRateWithShaderSampleMask = fragmentShadingRateWithShaderSampleMask + result.fragmentShadingRateWithConservativeRasterization = fragmentShadingRateWithConservativeRasterization + result.fragmentShadingRateWithFragmentShaderInterlock = fragmentShadingRateWithFragmentShaderInterlock + result.fragmentShadingRateWithCustomSampleLocations = fragmentShadingRateWithCustomSampleLocations + result.fragmentShadingRateStrictMultiplyCombiner = fragmentShadingRateStrictMultiplyCombiner -proc newVkExternalMemoryProperties*(externalMemoryFeatures: VkExternalMemoryFeatureFlags, exportFromImportedHandleTypes: VkExternalMemoryHandleTypeFlags, compatibleHandleTypes: VkExternalMemoryHandleTypeFlags): VkExternalMemoryProperties = - result.externalMemoryFeatures = externalMemoryFeatures - result.exportFromImportedHandleTypes = exportFromImportedHandleTypes - result.compatibleHandleTypes = compatibleHandleTypes +proc newVkPhysicalDeviceFragmentShadingRateKHR*(sType: VkStructureType, pNext: pointer = nil, sampleCounts: VkSampleCountFlags, fragmentSize: VkExtent2D): VkPhysicalDeviceFragmentShadingRateKHR = + result.sType = sType + result.pNext = pNext + result.sampleCounts = sampleCounts + result.fragmentSize = fragmentSize -proc newVkPhysicalDeviceExternalImageFormatInfo*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits): VkPhysicalDeviceExternalImageFormatInfo = +proc newVkPhysicalDeviceShaderTerminateInvocationFeatures*(sType: VkStructureType, pNext: pointer = nil, shaderTerminateInvocation: VkBool32): VkPhysicalDeviceShaderTerminateInvocationFeatures = result.sType = sType result.pNext = pNext - result.handleType = handleType + result.shaderTerminateInvocation = shaderTerminateInvocation -proc newVkExternalImageFormatProperties*(sType: VkStructureType, pNext: pointer = nil, externalMemoryProperties: VkExternalMemoryProperties): VkExternalImageFormatProperties = +proc newVkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, fragmentShadingRateEnums: VkBool32, supersampleFragmentShadingRates: VkBool32, noInvocationFragmentShadingRates: VkBool32): VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV = result.sType = sType result.pNext = pNext - result.externalMemoryProperties = externalMemoryProperties + result.fragmentShadingRateEnums = fragmentShadingRateEnums + result.supersampleFragmentShadingRates = supersampleFragmentShadingRates + result.noInvocationFragmentShadingRates = noInvocationFragmentShadingRates -proc newVkPhysicalDeviceExternalBufferInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkBufferCreateFlags = 0.VkBufferCreateFlags, usage: VkBufferUsageFlags, handleType: VkExternalMemoryHandleTypeFlagBits): VkPhysicalDeviceExternalBufferInfo = +proc newVkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, maxFragmentShadingRateInvocationCount: VkSampleCountFlagBits): VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV = result.sType = sType result.pNext = pNext - result.flags = flags - result.usage = usage - result.handleType = handleType + result.maxFragmentShadingRateInvocationCount = maxFragmentShadingRateInvocationCount -proc newVkExternalBufferProperties*(sType: VkStructureType, pNext: pointer = nil, externalMemoryProperties: VkExternalMemoryProperties): VkExternalBufferProperties = +proc newVkPipelineFragmentShadingRateEnumStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, shadingRateType: VkFragmentShadingRateTypeNV, shadingRate: VkFragmentShadingRateNV, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): VkPipelineFragmentShadingRateEnumStateCreateInfoNV = result.sType = sType result.pNext = pNext - result.externalMemoryProperties = externalMemoryProperties + result.shadingRateType = shadingRateType + result.shadingRate = shadingRate + result.combinerOps = combinerOps -proc newVkPhysicalDeviceIDProperties*(sType: VkStructureType, pNext: pointer = nil, deviceUUID: array[VK_UUID_SIZE, uint8], driverUUID: array[VK_UUID_SIZE, uint8], deviceLUID: array[VK_LUID_SIZE, uint8], deviceNodeMask: uint32, deviceLUIDValid: VkBool32): VkPhysicalDeviceIDProperties = +proc newVkAccelerationStructureBuildSizesInfoKHR*(sType: VkStructureType, pNext: pointer = nil, accelerationStructureSize: VkDeviceSize, updateScratchSize: VkDeviceSize, buildScratchSize: VkDeviceSize): VkAccelerationStructureBuildSizesInfoKHR = result.sType = sType result.pNext = pNext - result.deviceUUID = deviceUUID - result.driverUUID = driverUUID - result.deviceLUID = deviceLUID - result.deviceNodeMask = deviceNodeMask - result.deviceLUIDValid = deviceLUIDValid + result.accelerationStructureSize = accelerationStructureSize + result.updateScratchSize = updateScratchSize + result.buildScratchSize = buildScratchSize -proc newVkExternalMemoryImageCreateInfo*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlags): VkExternalMemoryImageCreateInfo = +proc newVkPhysicalDeviceImage2DViewOf3DFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, image2DViewOf3D: VkBool32, sampler2DViewOf3D: VkBool32): VkPhysicalDeviceImage2DViewOf3DFeaturesEXT = result.sType = sType result.pNext = pNext - result.handleTypes = handleTypes + result.image2DViewOf3D = image2DViewOf3D + result.sampler2DViewOf3D = sampler2DViewOf3D -proc newVkExternalMemoryBufferCreateInfo*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlags): VkExternalMemoryBufferCreateInfo = +proc newVkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, imageSlicedViewOf3D: VkBool32): VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT = result.sType = sType result.pNext = pNext - result.handleTypes = handleTypes + result.imageSlicedViewOf3D = imageSlicedViewOf3D -proc newVkExportMemoryAllocateInfo*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlags): VkExportMemoryAllocateInfo = +proc newVkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, attachmentFeedbackLoopDynamicState: VkBool32): VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT = result.sType = sType result.pNext = pNext - result.handleTypes = handleTypes + result.attachmentFeedbackLoopDynamicState = attachmentFeedbackLoopDynamicState -proc newVkImportMemoryWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, handle: HANDLE, name: LPCWSTR): VkImportMemoryWin32HandleInfoKHR = +proc newVkPhysicalDeviceMutableDescriptorTypeFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, mutableDescriptorType: VkBool32): VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT = result.sType = sType result.pNext = pNext - result.handleType = handleType - result.handle = handle - result.name = name + result.mutableDescriptorType = mutableDescriptorType -proc newVkExportMemoryWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pAttributes: ptr SECURITY_ATTRIBUTES, dwAccess: DWORD, name: LPCWSTR): VkExportMemoryWin32HandleInfoKHR = +proc newVkMutableDescriptorTypeListEXT*(descriptorTypeCount: uint32, pDescriptorTypes: ptr VkDescriptorType): VkMutableDescriptorTypeListEXT = + result.descriptorTypeCount = descriptorTypeCount + result.pDescriptorTypes = pDescriptorTypes + +proc newVkMutableDescriptorTypeCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, mutableDescriptorTypeListCount: uint32, pMutableDescriptorTypeLists: ptr VkMutableDescriptorTypeListEXT): VkMutableDescriptorTypeCreateInfoEXT = result.sType = sType result.pNext = pNext - result.pAttributes = pAttributes - result.dwAccess = dwAccess - result.name = name + result.mutableDescriptorTypeListCount = mutableDescriptorTypeListCount + result.pMutableDescriptorTypeLists = pMutableDescriptorTypeLists -proc newVkMemoryWin32HandlePropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryWin32HandlePropertiesKHR = +proc newVkPhysicalDeviceDepthClipControlFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, depthClipControl: VkBool32): VkPhysicalDeviceDepthClipControlFeaturesEXT = result.sType = sType result.pNext = pNext - result.memoryTypeBits = memoryTypeBits + result.depthClipControl = depthClipControl -proc newVkMemoryGetWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetWin32HandleInfoKHR = +proc newVkPipelineViewportDepthClipControlCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, negativeOneToOne: VkBool32): VkPipelineViewportDepthClipControlCreateInfoEXT = result.sType = sType result.pNext = pNext - result.memory = memory - result.handleType = handleType + result.negativeOneToOne = negativeOneToOne -proc newVkImportMemoryFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, fd: int): VkImportMemoryFdInfoKHR = +proc newVkPhysicalDeviceVertexInputDynamicStateFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, vertexInputDynamicState: VkBool32): VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT = result.sType = sType result.pNext = pNext - result.handleType = handleType - result.fd = fd + result.vertexInputDynamicState = vertexInputDynamicState -proc newVkMemoryFdPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryFdPropertiesKHR = +proc newVkPhysicalDeviceExternalMemoryRDMAFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, externalMemoryRDMA: VkBool32): VkPhysicalDeviceExternalMemoryRDMAFeaturesNV = result.sType = sType result.pNext = pNext - result.memoryTypeBits = memoryTypeBits + result.externalMemoryRDMA = externalMemoryRDMA -proc newVkMemoryGetFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetFdInfoKHR = +proc newVkVertexInputBindingDescription2EXT*(sType: VkStructureType, pNext: pointer = nil, binding: uint32, stride: uint32, inputRate: VkVertexInputRate, divisor: uint32): VkVertexInputBindingDescription2EXT = result.sType = sType result.pNext = pNext - result.memory = memory - result.handleType = handleType + result.binding = binding + result.stride = stride + result.inputRate = inputRate + result.divisor = divisor -proc newVkWin32KeyedMutexAcquireReleaseInfoKHR*(sType: VkStructureType, pNext: pointer = nil, acquireCount: uint32, pAcquireSyncs: ptr VkDeviceMemory, pAcquireKeys: ptr uint64, pAcquireTimeouts: ptr uint32, releaseCount: uint32, pReleaseSyncs: ptr VkDeviceMemory, pReleaseKeys: ptr uint64): VkWin32KeyedMutexAcquireReleaseInfoKHR = +proc newVkVertexInputAttributeDescription2EXT*(sType: VkStructureType, pNext: pointer = nil, location: uint32, binding: uint32, format: VkFormat, offset: uint32): VkVertexInputAttributeDescription2EXT = result.sType = sType result.pNext = pNext - result.acquireCount = acquireCount - result.pAcquireSyncs = pAcquireSyncs - result.pAcquireKeys = pAcquireKeys - result.pAcquireTimeouts = pAcquireTimeouts - result.releaseCount = releaseCount - result.pReleaseSyncs = pReleaseSyncs - result.pReleaseKeys = pReleaseKeys + result.location = location + result.binding = binding + result.format = format + result.offset = offset -proc newVkPhysicalDeviceExternalSemaphoreInfo*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkPhysicalDeviceExternalSemaphoreInfo = +proc newVkPhysicalDeviceColorWriteEnableFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, colorWriteEnable: VkBool32): VkPhysicalDeviceColorWriteEnableFeaturesEXT = result.sType = sType result.pNext = pNext - result.handleType = handleType + result.colorWriteEnable = colorWriteEnable -proc newVkExternalSemaphoreProperties*(sType: VkStructureType, pNext: pointer = nil, exportFromImportedHandleTypes: VkExternalSemaphoreHandleTypeFlags, compatibleHandleTypes: VkExternalSemaphoreHandleTypeFlags, externalSemaphoreFeatures: VkExternalSemaphoreFeatureFlags): VkExternalSemaphoreProperties = +proc newVkPipelineColorWriteCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, attachmentCount: uint32, pColorWriteEnables: ptr VkBool32): VkPipelineColorWriteCreateInfoEXT = result.sType = sType result.pNext = pNext - result.exportFromImportedHandleTypes = exportFromImportedHandleTypes - result.compatibleHandleTypes = compatibleHandleTypes - result.externalSemaphoreFeatures = externalSemaphoreFeatures + result.attachmentCount = attachmentCount + result.pColorWriteEnables = pColorWriteEnables -proc newVkExportSemaphoreCreateInfo*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalSemaphoreHandleTypeFlags): VkExportSemaphoreCreateInfo = +proc newVkMemoryBarrier2*(sType: VkStructureType, pNext: pointer = nil, srcStageMask: VkPipelineStageFlags2, srcAccessMask: VkAccessFlags2, dstStageMask: VkPipelineStageFlags2, dstAccessMask: VkAccessFlags2): VkMemoryBarrier2 = result.sType = sType result.pNext = pNext - result.handleTypes = handleTypes + result.srcStageMask = srcStageMask + result.srcAccessMask = srcAccessMask + result.dstStageMask = dstStageMask + result.dstAccessMask = dstAccessMask -proc newVkImportSemaphoreWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, flags: VkSemaphoreImportFlags = 0.VkSemaphoreImportFlags, handleType: VkExternalSemaphoreHandleTypeFlagBits, handle: HANDLE, name: LPCWSTR): VkImportSemaphoreWin32HandleInfoKHR = +proc newVkImageMemoryBarrier2*(sType: VkStructureType, pNext: pointer = nil, srcStageMask: VkPipelineStageFlags2, srcAccessMask: VkAccessFlags2, dstStageMask: VkPipelineStageFlags2, dstAccessMask: VkAccessFlags2, oldLayout: VkImageLayout, newLayout: VkImageLayout, srcQueueFamilyIndex: uint32, dstQueueFamilyIndex: uint32, image: VkImage, subresourceRange: VkImageSubresourceRange): VkImageMemoryBarrier2 = result.sType = sType result.pNext = pNext - result.semaphore = semaphore - result.flags = flags - result.handleType = handleType - result.handle = handle - result.name = name + result.srcStageMask = srcStageMask + result.srcAccessMask = srcAccessMask + result.dstStageMask = dstStageMask + result.dstAccessMask = dstAccessMask + result.oldLayout = oldLayout + result.newLayout = newLayout + result.srcQueueFamilyIndex = srcQueueFamilyIndex + result.dstQueueFamilyIndex = dstQueueFamilyIndex + result.image = image + result.subresourceRange = subresourceRange -proc newVkExportSemaphoreWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pAttributes: ptr SECURITY_ATTRIBUTES, dwAccess: DWORD, name: LPCWSTR): VkExportSemaphoreWin32HandleInfoKHR = +proc newVkBufferMemoryBarrier2*(sType: VkStructureType, pNext: pointer = nil, srcStageMask: VkPipelineStageFlags2, srcAccessMask: VkAccessFlags2, dstStageMask: VkPipelineStageFlags2, dstAccessMask: VkAccessFlags2, srcQueueFamilyIndex: uint32, dstQueueFamilyIndex: uint32, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize): VkBufferMemoryBarrier2 = result.sType = sType result.pNext = pNext - result.pAttributes = pAttributes - result.dwAccess = dwAccess - result.name = name + result.srcStageMask = srcStageMask + result.srcAccessMask = srcAccessMask + result.dstStageMask = dstStageMask + result.dstAccessMask = dstAccessMask + result.srcQueueFamilyIndex = srcQueueFamilyIndex + result.dstQueueFamilyIndex = dstQueueFamilyIndex + result.buffer = buffer + result.offset = offset + result.size = size -proc newVkD3D12FenceSubmitInfoKHR*(sType: VkStructureType, pNext: pointer = nil, waitSemaphoreValuesCount: uint32, pWaitSemaphoreValues: ptr uint64, signalSemaphoreValuesCount: uint32, pSignalSemaphoreValues: ptr uint64): VkD3D12FenceSubmitInfoKHR = +proc newVkDependencyInfo*(sType: VkStructureType, pNext: pointer = nil, dependencyFlags: VkDependencyFlags, memoryBarrierCount: uint32, pMemoryBarriers: ptr VkMemoryBarrier2, bufferMemoryBarrierCount: uint32, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier2, imageMemoryBarrierCount: uint32, pImageMemoryBarriers: ptr VkImageMemoryBarrier2): VkDependencyInfo = result.sType = sType result.pNext = pNext - result.waitSemaphoreValuesCount = waitSemaphoreValuesCount - result.pWaitSemaphoreValues = pWaitSemaphoreValues - result.signalSemaphoreValuesCount = signalSemaphoreValuesCount - result.pSignalSemaphoreValues = pSignalSemaphoreValues + result.dependencyFlags = dependencyFlags + result.memoryBarrierCount = memoryBarrierCount + result.pMemoryBarriers = pMemoryBarriers + result.bufferMemoryBarrierCount = bufferMemoryBarrierCount + result.pBufferMemoryBarriers = pBufferMemoryBarriers + result.imageMemoryBarrierCount = imageMemoryBarrierCount + result.pImageMemoryBarriers = pImageMemoryBarriers -proc newVkSemaphoreGetWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetWin32HandleInfoKHR = +proc newVkSemaphoreSubmitInfo*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, value: uint64, stageMask: VkPipelineStageFlags2, deviceIndex: uint32): VkSemaphoreSubmitInfo = result.sType = sType result.pNext = pNext result.semaphore = semaphore - result.handleType = handleType + result.value = value + result.stageMask = stageMask + result.deviceIndex = deviceIndex -proc newVkImportSemaphoreFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, flags: VkSemaphoreImportFlags = 0.VkSemaphoreImportFlags, handleType: VkExternalSemaphoreHandleTypeFlagBits, fd: int): VkImportSemaphoreFdInfoKHR = +proc newVkCommandBufferSubmitInfo*(sType: VkStructureType, pNext: pointer = nil, commandBuffer: VkCommandBuffer, deviceMask: uint32): VkCommandBufferSubmitInfo = result.sType = sType result.pNext = pNext - result.semaphore = semaphore - result.flags = flags - result.handleType = handleType - result.fd = fd + result.commandBuffer = commandBuffer + result.deviceMask = deviceMask -proc newVkSemaphoreGetFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetFdInfoKHR = +proc newVkSubmitInfo2*(sType: VkStructureType, pNext: pointer = nil, flags: VkSubmitFlags = 0.VkSubmitFlags, waitSemaphoreInfoCount: uint32, pWaitSemaphoreInfos: ptr VkSemaphoreSubmitInfo, commandBufferInfoCount: uint32, pCommandBufferInfos: ptr VkCommandBufferSubmitInfo, signalSemaphoreInfoCount: uint32, pSignalSemaphoreInfos: ptr VkSemaphoreSubmitInfo): VkSubmitInfo2 = result.sType = sType result.pNext = pNext - result.semaphore = semaphore - result.handleType = handleType + result.flags = flags + result.waitSemaphoreInfoCount = waitSemaphoreInfoCount + result.pWaitSemaphoreInfos = pWaitSemaphoreInfos + result.commandBufferInfoCount = commandBufferInfoCount + result.pCommandBufferInfos = pCommandBufferInfos + result.signalSemaphoreInfoCount = signalSemaphoreInfoCount + result.pSignalSemaphoreInfos = pSignalSemaphoreInfos -proc newVkPhysicalDeviceExternalFenceInfo*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalFenceHandleTypeFlagBits): VkPhysicalDeviceExternalFenceInfo = +proc newVkQueueFamilyCheckpointProperties2NV*(sType: VkStructureType, pNext: pointer = nil, checkpointExecutionStageMask: VkPipelineStageFlags2): VkQueueFamilyCheckpointProperties2NV = result.sType = sType result.pNext = pNext - result.handleType = handleType + result.checkpointExecutionStageMask = checkpointExecutionStageMask -proc newVkExternalFenceProperties*(sType: VkStructureType, pNext: pointer = nil, exportFromImportedHandleTypes: VkExternalFenceHandleTypeFlags, compatibleHandleTypes: VkExternalFenceHandleTypeFlags, externalFenceFeatures: VkExternalFenceFeatureFlags): VkExternalFenceProperties = +proc newVkCheckpointData2NV*(sType: VkStructureType, pNext: pointer = nil, stage: VkPipelineStageFlags2, pCheckpointMarker: pointer = nil): VkCheckpointData2NV = result.sType = sType result.pNext = pNext - result.exportFromImportedHandleTypes = exportFromImportedHandleTypes - result.compatibleHandleTypes = compatibleHandleTypes - result.externalFenceFeatures = externalFenceFeatures + result.stage = stage + result.pCheckpointMarker = pCheckpointMarker + +proc newVkPhysicalDeviceSynchronization2Features*(sType: VkStructureType, pNext: pointer = nil, synchronization2: VkBool32): VkPhysicalDeviceSynchronization2Features = + result.sType = sType + result.pNext = pNext + result.synchronization2 = synchronization2 -proc newVkExportFenceCreateInfo*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalFenceHandleTypeFlags): VkExportFenceCreateInfo = +proc newVkPhysicalDeviceHostImageCopyFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, hostImageCopy: VkBool32): VkPhysicalDeviceHostImageCopyFeaturesEXT = result.sType = sType result.pNext = pNext - result.handleTypes = handleTypes + result.hostImageCopy = hostImageCopy -proc newVkImportFenceWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, fence: VkFence, flags: VkFenceImportFlags = 0.VkFenceImportFlags, handleType: VkExternalFenceHandleTypeFlagBits, handle: HANDLE, name: LPCWSTR): VkImportFenceWin32HandleInfoKHR = +proc newVkPhysicalDeviceHostImageCopyPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, copySrcLayoutCount: uint32, pCopySrcLayouts: ptr VkImageLayout, copyDstLayoutCount: uint32, pCopyDstLayouts: ptr VkImageLayout, optimalTilingLayoutUUID: array[VK_UUID_SIZE, uint8], identicalMemoryTypeRequirements: VkBool32): VkPhysicalDeviceHostImageCopyPropertiesEXT = result.sType = sType result.pNext = pNext - result.fence = fence - result.flags = flags - result.handleType = handleType - result.handle = handle - result.name = name + result.copySrcLayoutCount = copySrcLayoutCount + result.pCopySrcLayouts = pCopySrcLayouts + result.copyDstLayoutCount = copyDstLayoutCount + result.pCopyDstLayouts = pCopyDstLayouts + result.optimalTilingLayoutUUID = optimalTilingLayoutUUID + result.identicalMemoryTypeRequirements = identicalMemoryTypeRequirements -proc newVkExportFenceWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pAttributes: ptr SECURITY_ATTRIBUTES, dwAccess: DWORD, name: LPCWSTR): VkExportFenceWin32HandleInfoKHR = +proc newVkMemoryToImageCopyEXT*(sType: VkStructureType, pNext: pointer = nil, pHostPointer: pointer = nil, memoryRowLength: uint32, memoryImageHeight: uint32, imageSubresource: VkImageSubresourceLayers, imageOffset: VkOffset3D, imageExtent: VkExtent3D): VkMemoryToImageCopyEXT = result.sType = sType result.pNext = pNext - result.pAttributes = pAttributes - result.dwAccess = dwAccess - result.name = name + result.pHostPointer = pHostPointer + result.memoryRowLength = memoryRowLength + result.memoryImageHeight = memoryImageHeight + result.imageSubresource = imageSubresource + result.imageOffset = imageOffset + result.imageExtent = imageExtent -proc newVkFenceGetWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, fence: VkFence, handleType: VkExternalFenceHandleTypeFlagBits): VkFenceGetWin32HandleInfoKHR = +proc newVkImageToMemoryCopyEXT*(sType: VkStructureType, pNext: pointer = nil, pHostPointer: pointer = nil, memoryRowLength: uint32, memoryImageHeight: uint32, imageSubresource: VkImageSubresourceLayers, imageOffset: VkOffset3D, imageExtent: VkExtent3D): VkImageToMemoryCopyEXT = result.sType = sType result.pNext = pNext - result.fence = fence - result.handleType = handleType + result.pHostPointer = pHostPointer + result.memoryRowLength = memoryRowLength + result.memoryImageHeight = memoryImageHeight + result.imageSubresource = imageSubresource + result.imageOffset = imageOffset + result.imageExtent = imageExtent -proc newVkImportFenceFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, fence: VkFence, flags: VkFenceImportFlags = 0.VkFenceImportFlags, handleType: VkExternalFenceHandleTypeFlagBits, fd: int): VkImportFenceFdInfoKHR = +proc newVkCopyMemoryToImageInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkHostImageCopyFlagsEXT = 0.VkHostImageCopyFlagsEXT, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkMemoryToImageCopyEXT): VkCopyMemoryToImageInfoEXT = result.sType = sType result.pNext = pNext - result.fence = fence result.flags = flags - result.handleType = handleType - result.fd = fd + result.dstImage = dstImage + result.dstImageLayout = dstImageLayout + result.regionCount = regionCount + result.pRegions = pRegions -proc newVkFenceGetFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, fence: VkFence, handleType: VkExternalFenceHandleTypeFlagBits): VkFenceGetFdInfoKHR = +proc newVkCopyImageToMemoryInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkHostImageCopyFlagsEXT = 0.VkHostImageCopyFlagsEXT, srcImage: VkImage, srcImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageToMemoryCopyEXT): VkCopyImageToMemoryInfoEXT = result.sType = sType result.pNext = pNext - result.fence = fence - result.handleType = handleType + result.flags = flags + result.srcImage = srcImage + result.srcImageLayout = srcImageLayout + result.regionCount = regionCount + result.pRegions = pRegions -proc newVkPhysicalDeviceMultiviewFeatures*(sType: VkStructureType, pNext: pointer = nil, multiview: VkBool32, multiviewGeometryShader: VkBool32, multiviewTessellationShader: VkBool32): VkPhysicalDeviceMultiviewFeatures = +proc newVkCopyImageToImageInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkHostImageCopyFlagsEXT = 0.VkHostImageCopyFlagsEXT, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageCopy2): VkCopyImageToImageInfoEXT = result.sType = sType result.pNext = pNext - result.multiview = multiview - result.multiviewGeometryShader = multiviewGeometryShader - result.multiviewTessellationShader = multiviewTessellationShader + result.flags = flags + result.srcImage = srcImage + result.srcImageLayout = srcImageLayout + result.dstImage = dstImage + result.dstImageLayout = dstImageLayout + result.regionCount = regionCount + result.pRegions = pRegions -proc newVkPhysicalDeviceMultiviewProperties*(sType: VkStructureType, pNext: pointer = nil, maxMultiviewViewCount: uint32, maxMultiviewInstanceIndex: uint32): VkPhysicalDeviceMultiviewProperties = +proc newVkHostImageLayoutTransitionInfoEXT*(sType: VkStructureType, pNext: pointer = nil, image: VkImage, oldLayout: VkImageLayout, newLayout: VkImageLayout, subresourceRange: VkImageSubresourceRange): VkHostImageLayoutTransitionInfoEXT = result.sType = sType result.pNext = pNext - result.maxMultiviewViewCount = maxMultiviewViewCount - result.maxMultiviewInstanceIndex = maxMultiviewInstanceIndex + result.image = image + result.oldLayout = oldLayout + result.newLayout = newLayout + result.subresourceRange = subresourceRange -proc newVkRenderPassMultiviewCreateInfo*(sType: VkStructureType, pNext: pointer = nil, subpassCount: uint32, pViewMasks: ptr uint32, dependencyCount: uint32, pViewOffsets: ptr int32, correlationMaskCount: uint32, pCorrelationMasks: ptr uint32): VkRenderPassMultiviewCreateInfo = +proc newVkSubresourceHostMemcpySizeEXT*(sType: VkStructureType, pNext: pointer = nil, size: VkDeviceSize): VkSubresourceHostMemcpySizeEXT = result.sType = sType result.pNext = pNext - result.subpassCount = subpassCount - result.pViewMasks = pViewMasks - result.dependencyCount = dependencyCount - result.pViewOffsets = pViewOffsets - result.correlationMaskCount = correlationMaskCount - result.pCorrelationMasks = pCorrelationMasks + result.size = size -proc newVkSurfaceCapabilities2EXT*(sType: VkStructureType, pNext: pointer = nil, minImageCount: uint32, maxImageCount: uint32, currentExtent: VkExtent2D, minImageExtent: VkExtent2D, maxImageExtent: VkExtent2D, maxImageArrayLayers: uint32, supportedTransforms: VkSurfaceTransformFlagsKHR, currentTransform: VkSurfaceTransformFlagBitsKHR, supportedCompositeAlpha: VkCompositeAlphaFlagsKHR, supportedUsageFlags: VkImageUsageFlags, supportedSurfaceCounters: VkSurfaceCounterFlagsEXT): VkSurfaceCapabilities2EXT = +proc newVkHostImageCopyDevicePerformanceQueryEXT*(sType: VkStructureType, pNext: pointer = nil, optimalDeviceAccess: VkBool32, identicalMemoryLayout: VkBool32): VkHostImageCopyDevicePerformanceQueryEXT = + result.sType = sType + result.pNext = pNext + result.optimalDeviceAccess = optimalDeviceAccess + result.identicalMemoryLayout = identicalMemoryLayout + +proc newVkPhysicalDeviceVulkanSC10Properties*(sType: VkStructureType, pNext: pointer = nil, deviceNoDynamicHostAllocations: VkBool32, deviceDestroyFreesMemory: VkBool32, commandPoolMultipleCommandBuffersRecording: VkBool32, commandPoolResetCommandBuffer: VkBool32, commandBufferSimultaneousUse: VkBool32, secondaryCommandBufferNullOrImagelessFramebuffer: VkBool32, recycleDescriptorSetMemory: VkBool32, recyclePipelineMemory: VkBool32, maxRenderPassSubpasses: uint32, maxRenderPassDependencies: uint32, maxSubpassInputAttachments: uint32, maxSubpassPreserveAttachments: uint32, maxFramebufferAttachments: uint32, maxDescriptorSetLayoutBindings: uint32, maxQueryFaultCount: uint32, maxCallbackFaultCount: uint32, maxCommandPoolCommandBuffers: uint32, maxCommandBufferSize: VkDeviceSize): VkPhysicalDeviceVulkanSC10Properties = result.sType = sType result.pNext = pNext - result.minImageCount = minImageCount - result.maxImageCount = maxImageCount - result.currentExtent = currentExtent - result.minImageExtent = minImageExtent - result.maxImageExtent = maxImageExtent - result.maxImageArrayLayers = maxImageArrayLayers - result.supportedTransforms = supportedTransforms - result.currentTransform = currentTransform - result.supportedCompositeAlpha = supportedCompositeAlpha - result.supportedUsageFlags = supportedUsageFlags - result.supportedSurfaceCounters = supportedSurfaceCounters + result.deviceNoDynamicHostAllocations = deviceNoDynamicHostAllocations + result.deviceDestroyFreesMemory = deviceDestroyFreesMemory + result.commandPoolMultipleCommandBuffersRecording = commandPoolMultipleCommandBuffersRecording + result.commandPoolResetCommandBuffer = commandPoolResetCommandBuffer + result.commandBufferSimultaneousUse = commandBufferSimultaneousUse + result.secondaryCommandBufferNullOrImagelessFramebuffer = secondaryCommandBufferNullOrImagelessFramebuffer + result.recycleDescriptorSetMemory = recycleDescriptorSetMemory + result.recyclePipelineMemory = recyclePipelineMemory + result.maxRenderPassSubpasses = maxRenderPassSubpasses + result.maxRenderPassDependencies = maxRenderPassDependencies + result.maxSubpassInputAttachments = maxSubpassInputAttachments + result.maxSubpassPreserveAttachments = maxSubpassPreserveAttachments + result.maxFramebufferAttachments = maxFramebufferAttachments + result.maxDescriptorSetLayoutBindings = maxDescriptorSetLayoutBindings + result.maxQueryFaultCount = maxQueryFaultCount + result.maxCallbackFaultCount = maxCallbackFaultCount + result.maxCommandPoolCommandBuffers = maxCommandPoolCommandBuffers + result.maxCommandBufferSize = maxCommandBufferSize -proc newVkDisplayPowerInfoEXT*(sType: VkStructureType, pNext: pointer = nil, powerState: VkDisplayPowerStateEXT): VkDisplayPowerInfoEXT = +proc newVkPipelinePoolSize*(sType: VkStructureType, pNext: pointer = nil, poolEntrySize: VkDeviceSize, poolEntryCount: uint32): VkPipelinePoolSize = result.sType = sType result.pNext = pNext - result.powerState = powerState + result.poolEntrySize = poolEntrySize + result.poolEntryCount = poolEntryCount -proc newVkDeviceEventInfoEXT*(sType: VkStructureType, pNext: pointer = nil, deviceEvent: VkDeviceEventTypeEXT): VkDeviceEventInfoEXT = +proc newVkDeviceObjectReservationCreateInfo*(sType: VkStructureType, pNext: pointer = nil, pipelineCacheCreateInfoCount: uint32, pPipelineCacheCreateInfos: ptr VkPipelineCacheCreateInfo, pipelinePoolSizeCount: uint32, pPipelinePoolSizes: ptr VkPipelinePoolSize, semaphoreRequestCount: uint32, commandBufferRequestCount: uint32, fenceRequestCount: uint32, deviceMemoryRequestCount: uint32, bufferRequestCount: uint32, imageRequestCount: uint32, eventRequestCount: uint32, queryPoolRequestCount: uint32, bufferViewRequestCount: uint32, imageViewRequestCount: uint32, layeredImageViewRequestCount: uint32, pipelineCacheRequestCount: uint32, pipelineLayoutRequestCount: uint32, renderPassRequestCount: uint32, graphicsPipelineRequestCount: uint32, computePipelineRequestCount: uint32, descriptorSetLayoutRequestCount: uint32, samplerRequestCount: uint32, descriptorPoolRequestCount: uint32, descriptorSetRequestCount: uint32, framebufferRequestCount: uint32, commandPoolRequestCount: uint32, samplerYcbcrConversionRequestCount: uint32, surfaceRequestCount: uint32, swapchainRequestCount: uint32, displayModeRequestCount: uint32, subpassDescriptionRequestCount: uint32, attachmentDescriptionRequestCount: uint32, descriptorSetLayoutBindingRequestCount: uint32, descriptorSetLayoutBindingLimit: uint32, maxImageViewMipLevels: uint32, maxImageViewArrayLayers: uint32, maxLayeredImageViewMipLevels: uint32, maxOcclusionQueriesPerPool: uint32, maxPipelineStatisticsQueriesPerPool: uint32, maxTimestampQueriesPerPool: uint32, maxImmutableSamplersPerDescriptorSetLayout: uint32): VkDeviceObjectReservationCreateInfo = result.sType = sType result.pNext = pNext - result.deviceEvent = deviceEvent + result.pipelineCacheCreateInfoCount = pipelineCacheCreateInfoCount + result.pPipelineCacheCreateInfos = pPipelineCacheCreateInfos + result.pipelinePoolSizeCount = pipelinePoolSizeCount + result.pPipelinePoolSizes = pPipelinePoolSizes + result.semaphoreRequestCount = semaphoreRequestCount + result.commandBufferRequestCount = commandBufferRequestCount + result.fenceRequestCount = fenceRequestCount + result.deviceMemoryRequestCount = deviceMemoryRequestCount + result.bufferRequestCount = bufferRequestCount + result.imageRequestCount = imageRequestCount + result.eventRequestCount = eventRequestCount + result.queryPoolRequestCount = queryPoolRequestCount + result.bufferViewRequestCount = bufferViewRequestCount + result.imageViewRequestCount = imageViewRequestCount + result.layeredImageViewRequestCount = layeredImageViewRequestCount + result.pipelineCacheRequestCount = pipelineCacheRequestCount + result.pipelineLayoutRequestCount = pipelineLayoutRequestCount + result.renderPassRequestCount = renderPassRequestCount + result.graphicsPipelineRequestCount = graphicsPipelineRequestCount + result.computePipelineRequestCount = computePipelineRequestCount + result.descriptorSetLayoutRequestCount = descriptorSetLayoutRequestCount + result.samplerRequestCount = samplerRequestCount + result.descriptorPoolRequestCount = descriptorPoolRequestCount + result.descriptorSetRequestCount = descriptorSetRequestCount + result.framebufferRequestCount = framebufferRequestCount + result.commandPoolRequestCount = commandPoolRequestCount + result.samplerYcbcrConversionRequestCount = samplerYcbcrConversionRequestCount + result.surfaceRequestCount = surfaceRequestCount + result.swapchainRequestCount = swapchainRequestCount + result.displayModeRequestCount = displayModeRequestCount + result.subpassDescriptionRequestCount = subpassDescriptionRequestCount + result.attachmentDescriptionRequestCount = attachmentDescriptionRequestCount + result.descriptorSetLayoutBindingRequestCount = descriptorSetLayoutBindingRequestCount + result.descriptorSetLayoutBindingLimit = descriptorSetLayoutBindingLimit + result.maxImageViewMipLevels = maxImageViewMipLevels + result.maxImageViewArrayLayers = maxImageViewArrayLayers + result.maxLayeredImageViewMipLevels = maxLayeredImageViewMipLevels + result.maxOcclusionQueriesPerPool = maxOcclusionQueriesPerPool + result.maxPipelineStatisticsQueriesPerPool = maxPipelineStatisticsQueriesPerPool + result.maxTimestampQueriesPerPool = maxTimestampQueriesPerPool + result.maxImmutableSamplersPerDescriptorSetLayout = maxImmutableSamplersPerDescriptorSetLayout -proc newVkDisplayEventInfoEXT*(sType: VkStructureType, pNext: pointer = nil, displayEvent: VkDisplayEventTypeEXT): VkDisplayEventInfoEXT = +proc newVkCommandPoolMemoryReservationCreateInfo*(sType: VkStructureType, pNext: pointer = nil, commandPoolReservedSize: VkDeviceSize, commandPoolMaxCommandBuffers: uint32): VkCommandPoolMemoryReservationCreateInfo = result.sType = sType result.pNext = pNext - result.displayEvent = displayEvent + result.commandPoolReservedSize = commandPoolReservedSize + result.commandPoolMaxCommandBuffers = commandPoolMaxCommandBuffers -proc newVkSwapchainCounterCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, surfaceCounters: VkSurfaceCounterFlagsEXT): VkSwapchainCounterCreateInfoEXT = +proc newVkCommandPoolMemoryConsumption*(sType: VkStructureType, pNext: pointer = nil, commandPoolAllocated: VkDeviceSize, commandPoolReservedSize: VkDeviceSize, commandBufferAllocated: VkDeviceSize): VkCommandPoolMemoryConsumption = result.sType = sType result.pNext = pNext - result.surfaceCounters = surfaceCounters + result.commandPoolAllocated = commandPoolAllocated + result.commandPoolReservedSize = commandPoolReservedSize + result.commandBufferAllocated = commandBufferAllocated -proc newVkPhysicalDeviceGroupProperties*(sType: VkStructureType, pNext: pointer = nil, physicalDeviceCount: uint32, physicalDevices: array[VK_MAX_DEVICE_GROUP_SIZE, VkPhysicalDevice], subsetAllocation: VkBool32): VkPhysicalDeviceGroupProperties = +proc newVkPhysicalDeviceVulkanSC10Features*(sType: VkStructureType, pNext: pointer = nil, shaderAtomicInstructions: VkBool32): VkPhysicalDeviceVulkanSC10Features = result.sType = sType result.pNext = pNext - result.physicalDeviceCount = physicalDeviceCount - result.physicalDevices = physicalDevices - result.subsetAllocation = subsetAllocation + result.shaderAtomicInstructions = shaderAtomicInstructions -proc newVkMemoryAllocateFlagsInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkMemoryAllocateFlags = 0.VkMemoryAllocateFlags, deviceMask: uint32): VkMemoryAllocateFlagsInfo = +proc newVkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, primitivesGeneratedQuery: VkBool32, primitivesGeneratedQueryWithRasterizerDiscard: VkBool32, primitivesGeneratedQueryWithNonZeroStreams: VkBool32): VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT = result.sType = sType result.pNext = pNext - result.flags = flags - result.deviceMask = deviceMask + result.primitivesGeneratedQuery = primitivesGeneratedQuery + result.primitivesGeneratedQueryWithRasterizerDiscard = primitivesGeneratedQueryWithRasterizerDiscard + result.primitivesGeneratedQueryWithNonZeroStreams = primitivesGeneratedQueryWithNonZeroStreams -proc newVkBindBufferMemoryInfo*(sType: VkStructureType, pNext: pointer = nil, buffer: VkBuffer, memory: VkDeviceMemory, memoryOffset: VkDeviceSize): VkBindBufferMemoryInfo = +proc newVkPhysicalDeviceLegacyDitheringFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, legacyDithering: VkBool32): VkPhysicalDeviceLegacyDitheringFeaturesEXT = result.sType = sType result.pNext = pNext - result.buffer = buffer - result.memory = memory - result.memoryOffset = memoryOffset + result.legacyDithering = legacyDithering -proc newVkBindBufferMemoryDeviceGroupInfo*(sType: VkStructureType, pNext: pointer = nil, deviceIndexCount: uint32, pDeviceIndices: ptr uint32): VkBindBufferMemoryDeviceGroupInfo = +proc newVkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, multisampledRenderToSingleSampled: VkBool32): VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT = result.sType = sType result.pNext = pNext - result.deviceIndexCount = deviceIndexCount - result.pDeviceIndices = pDeviceIndices + result.multisampledRenderToSingleSampled = multisampledRenderToSingleSampled -proc newVkBindImageMemoryInfo*(sType: VkStructureType, pNext: pointer = nil, image: VkImage, memory: VkDeviceMemory, memoryOffset: VkDeviceSize): VkBindImageMemoryInfo = +proc newVkSubpassResolvePerformanceQueryEXT*(sType: VkStructureType, pNext: pointer = nil, optimal: VkBool32): VkSubpassResolvePerformanceQueryEXT = result.sType = sType result.pNext = pNext - result.image = image - result.memory = memory - result.memoryOffset = memoryOffset + result.optimal = optimal -proc newVkBindImageMemoryDeviceGroupInfo*(sType: VkStructureType, pNext: pointer = nil, deviceIndexCount: uint32, pDeviceIndices: ptr uint32, splitInstanceBindRegionCount: uint32, pSplitInstanceBindRegions: ptr VkRect2D): VkBindImageMemoryDeviceGroupInfo = +proc newVkMultisampledRenderToSingleSampledInfoEXT*(sType: VkStructureType, pNext: pointer = nil, multisampledRenderToSingleSampledEnable: VkBool32, rasterizationSamples: VkSampleCountFlagBits): VkMultisampledRenderToSingleSampledInfoEXT = result.sType = sType result.pNext = pNext - result.deviceIndexCount = deviceIndexCount - result.pDeviceIndices = pDeviceIndices - result.splitInstanceBindRegionCount = splitInstanceBindRegionCount - result.pSplitInstanceBindRegions = pSplitInstanceBindRegions + result.multisampledRenderToSingleSampledEnable = multisampledRenderToSingleSampledEnable + result.rasterizationSamples = rasterizationSamples -proc newVkDeviceGroupRenderPassBeginInfo*(sType: VkStructureType, pNext: pointer = nil, deviceMask: uint32, deviceRenderAreaCount: uint32, pDeviceRenderAreas: ptr VkRect2D): VkDeviceGroupRenderPassBeginInfo = +proc newVkPhysicalDevicePipelineProtectedAccessFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, pipelineProtectedAccess: VkBool32): VkPhysicalDevicePipelineProtectedAccessFeaturesEXT = result.sType = sType result.pNext = pNext - result.deviceMask = deviceMask - result.deviceRenderAreaCount = deviceRenderAreaCount - result.pDeviceRenderAreas = pDeviceRenderAreas + result.pipelineProtectedAccess = pipelineProtectedAccess -proc newVkDeviceGroupCommandBufferBeginInfo*(sType: VkStructureType, pNext: pointer = nil, deviceMask: uint32): VkDeviceGroupCommandBufferBeginInfo = +proc newVkQueueFamilyVideoPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, videoCodecOperations: VkVideoCodecOperationFlagsKHR): VkQueueFamilyVideoPropertiesKHR = result.sType = sType result.pNext = pNext - result.deviceMask = deviceMask + result.videoCodecOperations = videoCodecOperations -proc newVkDeviceGroupSubmitInfo*(sType: VkStructureType, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphoreDeviceIndices: ptr uint32, commandBufferCount: uint32, pCommandBufferDeviceMasks: ptr uint32, signalSemaphoreCount: uint32, pSignalSemaphoreDeviceIndices: ptr uint32): VkDeviceGroupSubmitInfo = +proc newVkQueueFamilyQueryResultStatusPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, queryResultStatusSupport: VkBool32): VkQueueFamilyQueryResultStatusPropertiesKHR = result.sType = sType result.pNext = pNext - result.waitSemaphoreCount = waitSemaphoreCount - result.pWaitSemaphoreDeviceIndices = pWaitSemaphoreDeviceIndices - result.commandBufferCount = commandBufferCount - result.pCommandBufferDeviceMasks = pCommandBufferDeviceMasks - result.signalSemaphoreCount = signalSemaphoreCount - result.pSignalSemaphoreDeviceIndices = pSignalSemaphoreDeviceIndices + result.queryResultStatusSupport = queryResultStatusSupport -proc newVkDeviceGroupBindSparseInfo*(sType: VkStructureType, pNext: pointer = nil, resourceDeviceIndex: uint32, memoryDeviceIndex: uint32): VkDeviceGroupBindSparseInfo = +proc newVkVideoProfileListInfoKHR*(sType: VkStructureType, pNext: pointer = nil, profileCount: uint32, pProfiles: ptr VkVideoProfileInfoKHR): VkVideoProfileListInfoKHR = result.sType = sType result.pNext = pNext - result.resourceDeviceIndex = resourceDeviceIndex - result.memoryDeviceIndex = memoryDeviceIndex + result.profileCount = profileCount + result.pProfiles = pProfiles -proc newVkDeviceGroupPresentCapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, presentMask: array[VK_MAX_DEVICE_GROUP_SIZE, uint32], modes: VkDeviceGroupPresentModeFlagsKHR): VkDeviceGroupPresentCapabilitiesKHR = +proc newVkPhysicalDeviceVideoFormatInfoKHR*(sType: VkStructureType, pNext: pointer = nil, imageUsage: VkImageUsageFlags): VkPhysicalDeviceVideoFormatInfoKHR = result.sType = sType result.pNext = pNext - result.presentMask = presentMask - result.modes = modes + result.imageUsage = imageUsage -proc newVkImageSwapchainCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, swapchain: VkSwapchainKHR): VkImageSwapchainCreateInfoKHR = +proc newVkVideoFormatPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat, componentMapping: VkComponentMapping, imageCreateFlags: VkImageCreateFlags, imageType: VkImageType, imageTiling: VkImageTiling, imageUsageFlags: VkImageUsageFlags): VkVideoFormatPropertiesKHR = result.sType = sType result.pNext = pNext - result.swapchain = swapchain + result.format = format + result.componentMapping = componentMapping + result.imageCreateFlags = imageCreateFlags + result.imageType = imageType + result.imageTiling = imageTiling + result.imageUsageFlags = imageUsageFlags -proc newVkBindImageMemorySwapchainInfoKHR*(sType: VkStructureType, pNext: pointer = nil, swapchain: VkSwapchainKHR, imageIndex: uint32): VkBindImageMemorySwapchainInfoKHR = +proc newVkVideoProfileInfoKHR*(sType: VkStructureType, pNext: pointer = nil, videoCodecOperation: VkVideoCodecOperationFlagBitsKHR, chromaSubsampling: VkVideoChromaSubsamplingFlagsKHR, lumaBitDepth: VkVideoComponentBitDepthFlagsKHR, chromaBitDepth: VkVideoComponentBitDepthFlagsKHR): VkVideoProfileInfoKHR = result.sType = sType result.pNext = pNext - result.swapchain = swapchain - result.imageIndex = imageIndex + result.videoCodecOperation = videoCodecOperation + result.chromaSubsampling = chromaSubsampling + result.lumaBitDepth = lumaBitDepth + result.chromaBitDepth = chromaBitDepth -proc newVkAcquireNextImageInfoKHR*(sType: VkStructureType, pNext: pointer = nil, swapchain: VkSwapchainKHR, timeout: uint64, semaphore: VkSemaphore, fence: VkFence, deviceMask: uint32): VkAcquireNextImageInfoKHR = +proc newVkVideoCapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoCapabilityFlagsKHR = 0.VkVideoCapabilityFlagsKHR, minBitstreamBufferOffsetAlignment: VkDeviceSize, minBitstreamBufferSizeAlignment: VkDeviceSize, pictureAccessGranularity: VkExtent2D, minCodedExtent: VkExtent2D, maxCodedExtent: VkExtent2D, maxDpbSlots: uint32, maxActiveReferencePictures: uint32, stdHeaderVersion: VkExtensionProperties): VkVideoCapabilitiesKHR = result.sType = sType result.pNext = pNext - result.swapchain = swapchain - result.timeout = timeout - result.semaphore = semaphore - result.fence = fence - result.deviceMask = deviceMask + result.flags = flags + result.minBitstreamBufferOffsetAlignment = minBitstreamBufferOffsetAlignment + result.minBitstreamBufferSizeAlignment = minBitstreamBufferSizeAlignment + result.pictureAccessGranularity = pictureAccessGranularity + result.minCodedExtent = minCodedExtent + result.maxCodedExtent = maxCodedExtent + result.maxDpbSlots = maxDpbSlots + result.maxActiveReferencePictures = maxActiveReferencePictures + result.stdHeaderVersion = stdHeaderVersion -proc newVkDeviceGroupPresentInfoKHR*(sType: VkStructureType, pNext: pointer = nil, swapchainCount: uint32, pDeviceMasks: ptr uint32, mode: VkDeviceGroupPresentModeFlagBitsKHR): VkDeviceGroupPresentInfoKHR = +proc newVkVideoSessionMemoryRequirementsKHR*(sType: VkStructureType, pNext: pointer = nil, memoryBindIndex: uint32, memoryRequirements: VkMemoryRequirements): VkVideoSessionMemoryRequirementsKHR = result.sType = sType result.pNext = pNext - result.swapchainCount = swapchainCount - result.pDeviceMasks = pDeviceMasks - result.mode = mode + result.memoryBindIndex = memoryBindIndex + result.memoryRequirements = memoryRequirements -proc newVkDeviceGroupDeviceCreateInfo*(sType: VkStructureType, pNext: pointer = nil, physicalDeviceCount: uint32, pPhysicalDevices: ptr VkPhysicalDevice): VkDeviceGroupDeviceCreateInfo = +proc newVkBindVideoSessionMemoryInfoKHR*(sType: VkStructureType, pNext: pointer = nil, memoryBindIndex: uint32, memory: VkDeviceMemory, memoryOffset: VkDeviceSize, memorySize: VkDeviceSize): VkBindVideoSessionMemoryInfoKHR = result.sType = sType result.pNext = pNext - result.physicalDeviceCount = physicalDeviceCount - result.pPhysicalDevices = pPhysicalDevices + result.memoryBindIndex = memoryBindIndex + result.memory = memory + result.memoryOffset = memoryOffset + result.memorySize = memorySize -proc newVkDeviceGroupSwapchainCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, modes: VkDeviceGroupPresentModeFlagsKHR): VkDeviceGroupSwapchainCreateInfoKHR = +proc newVkVideoPictureResourceInfoKHR*(sType: VkStructureType, pNext: pointer = nil, codedOffset: VkOffset2D, codedExtent: VkExtent2D, baseArrayLayer: uint32, imageViewBinding: VkImageView): VkVideoPictureResourceInfoKHR = result.sType = sType result.pNext = pNext - result.modes = modes + result.codedOffset = codedOffset + result.codedExtent = codedExtent + result.baseArrayLayer = baseArrayLayer + result.imageViewBinding = imageViewBinding -proc newVkDescriptorUpdateTemplateEntry*(dstBinding: uint32, dstArrayElement: uint32, descriptorCount: uint32, descriptorType: VkDescriptorType, offset: uint, stride: uint): VkDescriptorUpdateTemplateEntry = - result.dstBinding = dstBinding - result.dstArrayElement = dstArrayElement - result.descriptorCount = descriptorCount - result.descriptorType = descriptorType - result.offset = offset - result.stride = stride +proc newVkVideoReferenceSlotInfoKHR*(sType: VkStructureType, pNext: pointer = nil, slotIndex: int32, pPictureResource: ptr VkVideoPictureResourceInfoKHR): VkVideoReferenceSlotInfoKHR = + result.sType = sType + result.pNext = pNext + result.slotIndex = slotIndex + result.pPictureResource = pPictureResource -proc newVkDescriptorUpdateTemplateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkDescriptorUpdateTemplateCreateFlags = 0.VkDescriptorUpdateTemplateCreateFlags, descriptorUpdateEntryCount: uint32, pDescriptorUpdateEntries: ptr VkDescriptorUpdateTemplateEntry, templateType: VkDescriptorUpdateTemplateType, descriptorSetLayout: VkDescriptorSetLayout, pipelineBindPoint: VkPipelineBindPoint, pipelineLayout: VkPipelineLayout, set: uint32): VkDescriptorUpdateTemplateCreateInfo = +proc newVkVideoDecodeCapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoDecodeCapabilityFlagsKHR = 0.VkVideoDecodeCapabilityFlagsKHR): VkVideoDecodeCapabilitiesKHR = result.sType = sType result.pNext = pNext result.flags = flags - result.descriptorUpdateEntryCount = descriptorUpdateEntryCount - result.pDescriptorUpdateEntries = pDescriptorUpdateEntries - result.templateType = templateType - result.descriptorSetLayout = descriptorSetLayout - result.pipelineBindPoint = pipelineBindPoint - result.pipelineLayout = pipelineLayout - result.set = set - -proc newVkXYColorEXT*(x: float32, y: float32): VkXYColorEXT = - result.x = x - result.y = y -proc newVkHdrMetadataEXT*(sType: VkStructureType, pNext: pointer = nil, displayPrimaryRed: VkXYColorEXT, displayPrimaryGreen: VkXYColorEXT, displayPrimaryBlue: VkXYColorEXT, whitePoint: VkXYColorEXT, maxLuminance: float32, minLuminance: float32, maxContentLightLevel: float32, maxFrameAverageLightLevel: float32): VkHdrMetadataEXT = +proc newVkVideoDecodeUsageInfoKHR*(sType: VkStructureType, pNext: pointer = nil, videoUsageHints: VkVideoDecodeUsageFlagsKHR): VkVideoDecodeUsageInfoKHR = result.sType = sType result.pNext = pNext - result.displayPrimaryRed = displayPrimaryRed - result.displayPrimaryGreen = displayPrimaryGreen - result.displayPrimaryBlue = displayPrimaryBlue - result.whitePoint = whitePoint - result.maxLuminance = maxLuminance - result.minLuminance = minLuminance - result.maxContentLightLevel = maxContentLightLevel - result.maxFrameAverageLightLevel = maxFrameAverageLightLevel + result.videoUsageHints = videoUsageHints -proc newVkDisplayNativeHdrSurfaceCapabilitiesAMD*(sType: VkStructureType, pNext: pointer = nil, localDimmingSupport: VkBool32): VkDisplayNativeHdrSurfaceCapabilitiesAMD = +proc newVkVideoDecodeInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoDecodeFlagsKHR = 0.VkVideoDecodeFlagsKHR, srcBuffer: VkBuffer, srcBufferOffset: VkDeviceSize, srcBufferRange: VkDeviceSize, dstPictureResource: VkVideoPictureResourceInfoKHR, pSetupReferenceSlot: ptr VkVideoReferenceSlotInfoKHR, referenceSlotCount: uint32, pReferenceSlots: ptr VkVideoReferenceSlotInfoKHR): VkVideoDecodeInfoKHR = result.sType = sType result.pNext = pNext - result.localDimmingSupport = localDimmingSupport + result.flags = flags + result.srcBuffer = srcBuffer + result.srcBufferOffset = srcBufferOffset + result.srcBufferRange = srcBufferRange + result.dstPictureResource = dstPictureResource + result.pSetupReferenceSlot = pSetupReferenceSlot + result.referenceSlotCount = referenceSlotCount + result.pReferenceSlots = pReferenceSlots -proc newVkSwapchainDisplayNativeHdrCreateInfoAMD*(sType: VkStructureType, pNext: pointer = nil, localDimmingEnable: VkBool32): VkSwapchainDisplayNativeHdrCreateInfoAMD = +proc newVkPhysicalDeviceVideoMaintenance1FeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, videoMaintenance1: VkBool32): VkPhysicalDeviceVideoMaintenance1FeaturesKHR = result.sType = sType result.pNext = pNext - result.localDimmingEnable = localDimmingEnable - -proc newVkRefreshCycleDurationGOOGLE*(refreshDuration: uint64): VkRefreshCycleDurationGOOGLE = - result.refreshDuration = refreshDuration - -proc newVkPastPresentationTimingGOOGLE*(presentID: uint32, desiredPresentTime: uint64, actualPresentTime: uint64, earliestPresentTime: uint64, presentMargin: uint64): VkPastPresentationTimingGOOGLE = - result.presentID = presentID - result.desiredPresentTime = desiredPresentTime - result.actualPresentTime = actualPresentTime - result.earliestPresentTime = earliestPresentTime - result.presentMargin = presentMargin + result.videoMaintenance1 = videoMaintenance1 -proc newVkPresentTimesInfoGOOGLE*(sType: VkStructureType, pNext: pointer = nil, swapchainCount: uint32, pTimes: ptr VkPresentTimeGOOGLE): VkPresentTimesInfoGOOGLE = +proc newVkVideoInlineQueryInfoKHR*(sType: VkStructureType, pNext: pointer = nil, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32): VkVideoInlineQueryInfoKHR = result.sType = sType result.pNext = pNext - result.swapchainCount = swapchainCount - result.pTimes = pTimes - -proc newVkPresentTimeGOOGLE*(presentID: uint32, desiredPresentTime: uint64): VkPresentTimeGOOGLE = - result.presentID = presentID - result.desiredPresentTime = desiredPresentTime + result.queryPool = queryPool + result.firstQuery = firstQuery + result.queryCount = queryCount -proc newVkIOSSurfaceCreateInfoMVK*(sType: VkStructureType, pNext: pointer = nil, flags: VkIOSSurfaceCreateFlagsMVK = 0.VkIOSSurfaceCreateFlagsMVK, pView: pointer = nil): VkIOSSurfaceCreateInfoMVK = +proc newVkVideoDecodeH264ProfileInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdProfileIdc: StdVideoH264ProfileIdc, pictureLayout: VkVideoDecodeH264PictureLayoutFlagBitsKHR): VkVideoDecodeH264ProfileInfoKHR = result.sType = sType result.pNext = pNext - result.flags = flags - result.pView = pView + result.stdProfileIdc = stdProfileIdc + result.pictureLayout = pictureLayout -proc newVkMacOSSurfaceCreateInfoMVK*(sType: VkStructureType, pNext: pointer = nil, flags: VkMacOSSurfaceCreateFlagsMVK = 0.VkMacOSSurfaceCreateFlagsMVK, pView: pointer = nil): VkMacOSSurfaceCreateInfoMVK = +proc newVkVideoDecodeH264CapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, maxLevelIdc: StdVideoH264LevelIdc, fieldOffsetGranularity: VkOffset2D): VkVideoDecodeH264CapabilitiesKHR = result.sType = sType result.pNext = pNext - result.flags = flags - result.pView = pView + result.maxLevelIdc = maxLevelIdc + result.fieldOffsetGranularity = fieldOffsetGranularity -proc newVkMetalSurfaceCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkMetalSurfaceCreateFlagsEXT = 0.VkMetalSurfaceCreateFlagsEXT, pLayer: ptr CAMetalLayer): VkMetalSurfaceCreateInfoEXT = +proc newVkVideoDecodeH264SessionParametersAddInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdSPSCount: uint32, pStdSPSs: ptr StdVideoH264SequenceParameterSet, stdPPSCount: uint32, pStdPPSs: ptr StdVideoH264PictureParameterSet): VkVideoDecodeH264SessionParametersAddInfoKHR = result.sType = sType result.pNext = pNext - result.flags = flags - result.pLayer = pLayer - -proc newVkViewportWScalingNV*(xcoeff: float32, ycoeff: float32): VkViewportWScalingNV = - result.xcoeff = xcoeff - result.ycoeff = ycoeff + result.stdSPSCount = stdSPSCount + result.pStdSPSs = pStdSPSs + result.stdPPSCount = stdPPSCount + result.pStdPPSs = pStdPPSs -proc newVkPipelineViewportWScalingStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, viewportWScalingEnable: VkBool32, viewportCount: uint32, pViewportWScalings: ptr VkViewportWScalingNV): VkPipelineViewportWScalingStateCreateInfoNV = +proc newVkVideoDecodeH264SessionParametersCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, maxStdSPSCount: uint32, maxStdPPSCount: uint32, pParametersAddInfo: ptr VkVideoDecodeH264SessionParametersAddInfoKHR): VkVideoDecodeH264SessionParametersCreateInfoKHR = result.sType = sType result.pNext = pNext - result.viewportWScalingEnable = viewportWScalingEnable - result.viewportCount = viewportCount - result.pViewportWScalings = pViewportWScalings - -proc newVkViewportSwizzleNV*(x: VkViewportCoordinateSwizzleNV, y: VkViewportCoordinateSwizzleNV, z: VkViewportCoordinateSwizzleNV, w: VkViewportCoordinateSwizzleNV): VkViewportSwizzleNV = - result.x = x - result.y = y - result.z = z - result.w = w + result.maxStdSPSCount = maxStdSPSCount + result.maxStdPPSCount = maxStdPPSCount + result.pParametersAddInfo = pParametersAddInfo -proc newVkPipelineViewportSwizzleStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineViewportSwizzleStateCreateFlagsNV = 0.VkPipelineViewportSwizzleStateCreateFlagsNV, viewportCount: uint32, pViewportSwizzles: ptr VkViewportSwizzleNV): VkPipelineViewportSwizzleStateCreateInfoNV = +proc newVkVideoDecodeH264PictureInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdPictureInfo: ptr StdVideoDecodeH264PictureInfo, sliceCount: uint32, pSliceOffsets: ptr uint32): VkVideoDecodeH264PictureInfoKHR = result.sType = sType result.pNext = pNext - result.flags = flags - result.viewportCount = viewportCount - result.pViewportSwizzles = pViewportSwizzles + result.pStdPictureInfo = pStdPictureInfo + result.sliceCount = sliceCount + result.pSliceOffsets = pSliceOffsets -proc newVkPhysicalDeviceDiscardRectanglePropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxDiscardRectangles: uint32): VkPhysicalDeviceDiscardRectanglePropertiesEXT = +proc newVkVideoDecodeH264DpbSlotInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoDecodeH264ReferenceInfo): VkVideoDecodeH264DpbSlotInfoKHR = result.sType = sType result.pNext = pNext - result.maxDiscardRectangles = maxDiscardRectangles + result.pStdReferenceInfo = pStdReferenceInfo -proc newVkPipelineDiscardRectangleStateCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineDiscardRectangleStateCreateFlagsEXT = 0.VkPipelineDiscardRectangleStateCreateFlagsEXT, discardRectangleMode: VkDiscardRectangleModeEXT, discardRectangleCount: uint32, pDiscardRectangles: ptr VkRect2D): VkPipelineDiscardRectangleStateCreateInfoEXT = +proc newVkVideoDecodeH265ProfileInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdProfileIdc: StdVideoH265ProfileIdc): VkVideoDecodeH265ProfileInfoKHR = result.sType = sType result.pNext = pNext - result.flags = flags - result.discardRectangleMode = discardRectangleMode - result.discardRectangleCount = discardRectangleCount - result.pDiscardRectangles = pDiscardRectangles + result.stdProfileIdc = stdProfileIdc -proc newVkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX*(sType: VkStructureType, pNext: pointer = nil, perViewPositionAllComponents: VkBool32): VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX = +proc newVkVideoDecodeH265CapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, maxLevelIdc: StdVideoH265LevelIdc): VkVideoDecodeH265CapabilitiesKHR = result.sType = sType result.pNext = pNext - result.perViewPositionAllComponents = perViewPositionAllComponents + result.maxLevelIdc = maxLevelIdc -proc newVkInputAttachmentAspectReference*(subpass: uint32, inputAttachmentIndex: uint32, aspectMask: VkImageAspectFlags): VkInputAttachmentAspectReference = - result.subpass = subpass - result.inputAttachmentIndex = inputAttachmentIndex - result.aspectMask = aspectMask +proc newVkVideoDecodeH265SessionParametersAddInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdVPSCount: uint32, pStdVPSs: ptr StdVideoH265VideoParameterSet, stdSPSCount: uint32, pStdSPSs: ptr StdVideoH265SequenceParameterSet, stdPPSCount: uint32, pStdPPSs: ptr StdVideoH265PictureParameterSet): VkVideoDecodeH265SessionParametersAddInfoKHR = + result.sType = sType + result.pNext = pNext + result.stdVPSCount = stdVPSCount + result.pStdVPSs = pStdVPSs + result.stdSPSCount = stdSPSCount + result.pStdSPSs = pStdSPSs + result.stdPPSCount = stdPPSCount + result.pStdPPSs = pStdPPSs -proc newVkRenderPassInputAttachmentAspectCreateInfo*(sType: VkStructureType, pNext: pointer = nil, aspectReferenceCount: uint32, pAspectReferences: ptr VkInputAttachmentAspectReference): VkRenderPassInputAttachmentAspectCreateInfo = +proc newVkVideoDecodeH265SessionParametersCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, maxStdVPSCount: uint32, maxStdSPSCount: uint32, maxStdPPSCount: uint32, pParametersAddInfo: ptr VkVideoDecodeH265SessionParametersAddInfoKHR): VkVideoDecodeH265SessionParametersCreateInfoKHR = result.sType = sType result.pNext = pNext - result.aspectReferenceCount = aspectReferenceCount - result.pAspectReferences = pAspectReferences + result.maxStdVPSCount = maxStdVPSCount + result.maxStdSPSCount = maxStdSPSCount + result.maxStdPPSCount = maxStdPPSCount + result.pParametersAddInfo = pParametersAddInfo -proc newVkPhysicalDeviceSurfaceInfo2KHR*(sType: VkStructureType, pNext: pointer = nil, surface: VkSurfaceKHR): VkPhysicalDeviceSurfaceInfo2KHR = +proc newVkVideoDecodeH265PictureInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdPictureInfo: ptr StdVideoDecodeH265PictureInfo, sliceSegmentCount: uint32, pSliceSegmentOffsets: ptr uint32): VkVideoDecodeH265PictureInfoKHR = result.sType = sType result.pNext = pNext - result.surface = surface + result.pStdPictureInfo = pStdPictureInfo + result.sliceSegmentCount = sliceSegmentCount + result.pSliceSegmentOffsets = pSliceSegmentOffsets -proc newVkSurfaceCapabilities2KHR*(sType: VkStructureType, pNext: pointer = nil, surfaceCapabilities: VkSurfaceCapabilitiesKHR): VkSurfaceCapabilities2KHR = +proc newVkVideoDecodeH265DpbSlotInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoDecodeH265ReferenceInfo): VkVideoDecodeH265DpbSlotInfoKHR = result.sType = sType result.pNext = pNext - result.surfaceCapabilities = surfaceCapabilities + result.pStdReferenceInfo = pStdReferenceInfo -proc newVkSurfaceFormat2KHR*(sType: VkStructureType, pNext: pointer = nil, surfaceFormat: VkSurfaceFormatKHR): VkSurfaceFormat2KHR = +proc newVkVideoDecodeAV1ProfileInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdProfile: StdVideoAV1Profile, filmGrainSupport: VkBool32): VkVideoDecodeAV1ProfileInfoKHR = result.sType = sType result.pNext = pNext - result.surfaceFormat = surfaceFormat + result.stdProfile = stdProfile + result.filmGrainSupport = filmGrainSupport -proc newVkDisplayProperties2KHR*(sType: VkStructureType, pNext: pointer = nil, displayProperties: VkDisplayPropertiesKHR): VkDisplayProperties2KHR = +proc newVkVideoDecodeAV1CapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, maxLevel: StdVideoAV1Level): VkVideoDecodeAV1CapabilitiesKHR = result.sType = sType result.pNext = pNext - result.displayProperties = displayProperties + result.maxLevel = maxLevel -proc newVkDisplayPlaneProperties2KHR*(sType: VkStructureType, pNext: pointer = nil, displayPlaneProperties: VkDisplayPlanePropertiesKHR): VkDisplayPlaneProperties2KHR = +proc newVkVideoDecodeAV1SessionParametersCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdSequenceHeader: ptr StdVideoAV1SequenceHeader): VkVideoDecodeAV1SessionParametersCreateInfoKHR = result.sType = sType result.pNext = pNext - result.displayPlaneProperties = displayPlaneProperties + result.pStdSequenceHeader = pStdSequenceHeader -proc newVkDisplayModeProperties2KHR*(sType: VkStructureType, pNext: pointer = nil, displayModeProperties: VkDisplayModePropertiesKHR): VkDisplayModeProperties2KHR = +proc newVkVideoDecodeAV1PictureInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdPictureInfo: ptr StdVideoDecodeAV1PictureInfo, referenceNameSlotIndices: array[VK_MAX_VIDEO_AV1_REFERENCES_PER_FRAME_KHR, int32], frameHeaderOffset: uint32, tileCount: uint32, pTileOffsets: ptr uint32, pTileSizes: ptr uint32): VkVideoDecodeAV1PictureInfoKHR = result.sType = sType result.pNext = pNext - result.displayModeProperties = displayModeProperties + result.pStdPictureInfo = pStdPictureInfo + result.referenceNameSlotIndices = referenceNameSlotIndices + result.frameHeaderOffset = frameHeaderOffset + result.tileCount = tileCount + result.pTileOffsets = pTileOffsets + result.pTileSizes = pTileSizes -proc newVkDisplayPlaneInfo2KHR*(sType: VkStructureType, pNext: pointer = nil, mode: VkDisplayModeKHR, planeIndex: uint32): VkDisplayPlaneInfo2KHR = +proc newVkVideoDecodeAV1DpbSlotInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoDecodeAV1ReferenceInfo): VkVideoDecodeAV1DpbSlotInfoKHR = result.sType = sType result.pNext = pNext - result.mode = mode - result.planeIndex = planeIndex + result.pStdReferenceInfo = pStdReferenceInfo -proc newVkDisplayPlaneCapabilities2KHR*(sType: VkStructureType, pNext: pointer = nil, capabilities: VkDisplayPlaneCapabilitiesKHR): VkDisplayPlaneCapabilities2KHR = +proc newVkVideoSessionCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, queueFamilyIndex: uint32, flags: VkVideoSessionCreateFlagsKHR = 0.VkVideoSessionCreateFlagsKHR, pVideoProfile: ptr VkVideoProfileInfoKHR, pictureFormat: VkFormat, maxCodedExtent: VkExtent2D, referencePictureFormat: VkFormat, maxDpbSlots: uint32, maxActiveReferencePictures: uint32, pStdHeaderVersion: ptr VkExtensionProperties): VkVideoSessionCreateInfoKHR = result.sType = sType result.pNext = pNext - result.capabilities = capabilities + result.queueFamilyIndex = queueFamilyIndex + result.flags = flags + result.pVideoProfile = pVideoProfile + result.pictureFormat = pictureFormat + result.maxCodedExtent = maxCodedExtent + result.referencePictureFormat = referencePictureFormat + result.maxDpbSlots = maxDpbSlots + result.maxActiveReferencePictures = maxActiveReferencePictures + result.pStdHeaderVersion = pStdHeaderVersion -proc newVkSharedPresentSurfaceCapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, sharedPresentSupportedUsageFlags: VkImageUsageFlags): VkSharedPresentSurfaceCapabilitiesKHR = +proc newVkVideoSessionParametersCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoSessionParametersCreateFlagsKHR = 0.VkVideoSessionParametersCreateFlagsKHR, videoSessionParametersTemplate: VkVideoSessionParametersKHR, videoSession: VkVideoSessionKHR): VkVideoSessionParametersCreateInfoKHR = result.sType = sType result.pNext = pNext - result.sharedPresentSupportedUsageFlags = sharedPresentSupportedUsageFlags + result.flags = flags + result.videoSessionParametersTemplate = videoSessionParametersTemplate + result.videoSession = videoSession -proc newVkPhysicalDevice16BitStorageFeatures*(sType: VkStructureType, pNext: pointer = nil, storageBuffer16BitAccess: VkBool32, uniformAndStorageBuffer16BitAccess: VkBool32, storagePushConstant16: VkBool32, storageInputOutput16: VkBool32): VkPhysicalDevice16BitStorageFeatures = +proc newVkVideoSessionParametersUpdateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, updateSequenceCount: uint32): VkVideoSessionParametersUpdateInfoKHR = result.sType = sType result.pNext = pNext - result.storageBuffer16BitAccess = storageBuffer16BitAccess - result.uniformAndStorageBuffer16BitAccess = uniformAndStorageBuffer16BitAccess - result.storagePushConstant16 = storagePushConstant16 - result.storageInputOutput16 = storageInputOutput16 + result.updateSequenceCount = updateSequenceCount -proc newVkPhysicalDeviceSubgroupProperties*(sType: VkStructureType, pNext: pointer = nil, subgroupSize: uint32, supportedStages: VkShaderStageFlags, supportedOperations: VkSubgroupFeatureFlags, quadOperationsInAllStages: VkBool32): VkPhysicalDeviceSubgroupProperties = +proc newVkVideoEncodeSessionParametersGetInfoKHR*(sType: VkStructureType, pNext: pointer = nil, videoSessionParameters: VkVideoSessionParametersKHR): VkVideoEncodeSessionParametersGetInfoKHR = result.sType = sType result.pNext = pNext - result.subgroupSize = subgroupSize - result.supportedStages = supportedStages - result.supportedOperations = supportedOperations - result.quadOperationsInAllStages = quadOperationsInAllStages + result.videoSessionParameters = videoSessionParameters -proc newVkPhysicalDeviceShaderSubgroupExtendedTypesFeatures*(sType: VkStructureType, pNext: pointer = nil, shaderSubgroupExtendedTypes: VkBool32): VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures = +proc newVkVideoEncodeSessionParametersFeedbackInfoKHR*(sType: VkStructureType, pNext: pointer = nil, hasOverrides: VkBool32): VkVideoEncodeSessionParametersFeedbackInfoKHR = result.sType = sType result.pNext = pNext - result.shaderSubgroupExtendedTypes = shaderSubgroupExtendedTypes + result.hasOverrides = hasOverrides -proc newVkBufferMemoryRequirementsInfo2*(sType: VkStructureType, pNext: pointer = nil, buffer: VkBuffer): VkBufferMemoryRequirementsInfo2 = +proc newVkVideoBeginCodingInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoBeginCodingFlagsKHR = 0.VkVideoBeginCodingFlagsKHR, videoSession: VkVideoSessionKHR, videoSessionParameters: VkVideoSessionParametersKHR, referenceSlotCount: uint32, pReferenceSlots: ptr VkVideoReferenceSlotInfoKHR): VkVideoBeginCodingInfoKHR = result.sType = sType result.pNext = pNext - result.buffer = buffer + result.flags = flags + result.videoSession = videoSession + result.videoSessionParameters = videoSessionParameters + result.referenceSlotCount = referenceSlotCount + result.pReferenceSlots = pReferenceSlots -proc newVkImageMemoryRequirementsInfo2*(sType: VkStructureType, pNext: pointer = nil, image: VkImage): VkImageMemoryRequirementsInfo2 = +proc newVkVideoEndCodingInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoEndCodingFlagsKHR = 0.VkVideoEndCodingFlagsKHR): VkVideoEndCodingInfoKHR = result.sType = sType result.pNext = pNext - result.image = image + result.flags = flags -proc newVkImageSparseMemoryRequirementsInfo2*(sType: VkStructureType, pNext: pointer = nil, image: VkImage): VkImageSparseMemoryRequirementsInfo2 = +proc newVkVideoCodingControlInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoCodingControlFlagsKHR = 0.VkVideoCodingControlFlagsKHR): VkVideoCodingControlInfoKHR = result.sType = sType result.pNext = pNext - result.image = image + result.flags = flags -proc newVkMemoryRequirements2*(sType: VkStructureType, pNext: pointer = nil, memoryRequirements: VkMemoryRequirements): VkMemoryRequirements2 = +proc newVkVideoEncodeUsageInfoKHR*(sType: VkStructureType, pNext: pointer = nil, videoUsageHints: VkVideoEncodeUsageFlagsKHR, videoContentHints: VkVideoEncodeContentFlagsKHR, tuningMode: VkVideoEncodeTuningModeKHR): VkVideoEncodeUsageInfoKHR = result.sType = sType result.pNext = pNext - result.memoryRequirements = memoryRequirements + result.videoUsageHints = videoUsageHints + result.videoContentHints = videoContentHints + result.tuningMode = tuningMode -proc newVkSparseImageMemoryRequirements2*(sType: VkStructureType, pNext: pointer = nil, memoryRequirements: VkSparseImageMemoryRequirements): VkSparseImageMemoryRequirements2 = +proc newVkVideoEncodeInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoEncodeFlagsKHR = 0.VkVideoEncodeFlagsKHR, dstBuffer: VkBuffer, dstBufferOffset: VkDeviceSize, dstBufferRange: VkDeviceSize, srcPictureResource: VkVideoPictureResourceInfoKHR, pSetupReferenceSlot: ptr VkVideoReferenceSlotInfoKHR, referenceSlotCount: uint32, pReferenceSlots: ptr VkVideoReferenceSlotInfoKHR, precedingExternallyEncodedBytes: uint32): VkVideoEncodeInfoKHR = result.sType = sType result.pNext = pNext - result.memoryRequirements = memoryRequirements + result.flags = flags + result.dstBuffer = dstBuffer + result.dstBufferOffset = dstBufferOffset + result.dstBufferRange = dstBufferRange + result.srcPictureResource = srcPictureResource + result.pSetupReferenceSlot = pSetupReferenceSlot + result.referenceSlotCount = referenceSlotCount + result.pReferenceSlots = pReferenceSlots + result.precedingExternallyEncodedBytes = precedingExternallyEncodedBytes -proc newVkPhysicalDevicePointClippingProperties*(sType: VkStructureType, pNext: pointer = nil, pointClippingBehavior: VkPointClippingBehavior): VkPhysicalDevicePointClippingProperties = +proc newVkQueryPoolVideoEncodeFeedbackCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, encodeFeedbackFlags: VkVideoEncodeFeedbackFlagsKHR): VkQueryPoolVideoEncodeFeedbackCreateInfoKHR = result.sType = sType result.pNext = pNext - result.pointClippingBehavior = pointClippingBehavior + result.encodeFeedbackFlags = encodeFeedbackFlags -proc newVkMemoryDedicatedRequirements*(sType: VkStructureType, pNext: pointer = nil, prefersDedicatedAllocation: VkBool32, requiresDedicatedAllocation: VkBool32): VkMemoryDedicatedRequirements = +proc newVkVideoEncodeQualityLevelInfoKHR*(sType: VkStructureType, pNext: pointer = nil, qualityLevel: uint32): VkVideoEncodeQualityLevelInfoKHR = result.sType = sType result.pNext = pNext - result.prefersDedicatedAllocation = prefersDedicatedAllocation - result.requiresDedicatedAllocation = requiresDedicatedAllocation + result.qualityLevel = qualityLevel -proc newVkMemoryDedicatedAllocateInfo*(sType: VkStructureType, pNext: pointer = nil, image: VkImage, buffer: VkBuffer): VkMemoryDedicatedAllocateInfo = +proc newVkPhysicalDeviceVideoEncodeQualityLevelInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pVideoProfile: ptr VkVideoProfileInfoKHR, qualityLevel: uint32): VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR = result.sType = sType result.pNext = pNext - result.image = image - result.buffer = buffer + result.pVideoProfile = pVideoProfile + result.qualityLevel = qualityLevel -proc newVkImageViewUsageCreateInfo*(sType: VkStructureType, pNext: pointer = nil, usage: VkImageUsageFlags): VkImageViewUsageCreateInfo = +proc newVkVideoEncodeQualityLevelPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, preferredRateControlMode: VkVideoEncodeRateControlModeFlagBitsKHR, preferredRateControlLayerCount: uint32): VkVideoEncodeQualityLevelPropertiesKHR = result.sType = sType result.pNext = pNext - result.usage = usage + result.preferredRateControlMode = preferredRateControlMode + result.preferredRateControlLayerCount = preferredRateControlLayerCount -proc newVkPipelineTessellationDomainOriginStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, domainOrigin: VkTessellationDomainOrigin): VkPipelineTessellationDomainOriginStateCreateInfo = +proc newVkVideoEncodeRateControlInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoEncodeRateControlFlagsKHR = 0.VkVideoEncodeRateControlFlagsKHR, rateControlMode: VkVideoEncodeRateControlModeFlagBitsKHR, layerCount: uint32, pLayers: ptr VkVideoEncodeRateControlLayerInfoKHR, virtualBufferSizeInMs: uint32, initialVirtualBufferSizeInMs: uint32): VkVideoEncodeRateControlInfoKHR = result.sType = sType result.pNext = pNext - result.domainOrigin = domainOrigin + result.flags = flags + result.rateControlMode = rateControlMode + result.layerCount = layerCount + result.pLayers = pLayers + result.virtualBufferSizeInMs = virtualBufferSizeInMs + result.initialVirtualBufferSizeInMs = initialVirtualBufferSizeInMs -proc newVkSamplerYcbcrConversionInfo*(sType: VkStructureType, pNext: pointer = nil, conversion: VkSamplerYcbcrConversion): VkSamplerYcbcrConversionInfo = +proc newVkVideoEncodeRateControlLayerInfoKHR*(sType: VkStructureType, pNext: pointer = nil, averageBitrate: uint64, maxBitrate: uint64, frameRateNumerator: uint32, frameRateDenominator: uint32): VkVideoEncodeRateControlLayerInfoKHR = result.sType = sType result.pNext = pNext - result.conversion = conversion + result.averageBitrate = averageBitrate + result.maxBitrate = maxBitrate + result.frameRateNumerator = frameRateNumerator + result.frameRateDenominator = frameRateDenominator -proc newVkSamplerYcbcrConversionCreateInfo*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat, ycbcrModel: VkSamplerYcbcrModelConversion, ycbcrRange: VkSamplerYcbcrRange, components: VkComponentMapping, xChromaOffset: VkChromaLocation, yChromaOffset: VkChromaLocation, chromaFilter: VkFilter, forceExplicitReconstruction: VkBool32): VkSamplerYcbcrConversionCreateInfo = +proc newVkVideoEncodeCapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoEncodeCapabilityFlagsKHR = 0.VkVideoEncodeCapabilityFlagsKHR, rateControlModes: VkVideoEncodeRateControlModeFlagsKHR, maxRateControlLayers: uint32, maxBitrate: uint64, maxQualityLevels: uint32, encodeInputPictureGranularity: VkExtent2D, supportedEncodeFeedbackFlags: VkVideoEncodeFeedbackFlagsKHR): VkVideoEncodeCapabilitiesKHR = result.sType = sType result.pNext = pNext - result.format = format - result.ycbcrModel = ycbcrModel - result.ycbcrRange = ycbcrRange - result.components = components - result.xChromaOffset = xChromaOffset - result.yChromaOffset = yChromaOffset - result.chromaFilter = chromaFilter - result.forceExplicitReconstruction = forceExplicitReconstruction + result.flags = flags + result.rateControlModes = rateControlModes + result.maxRateControlLayers = maxRateControlLayers + result.maxBitrate = maxBitrate + result.maxQualityLevels = maxQualityLevels + result.encodeInputPictureGranularity = encodeInputPictureGranularity + result.supportedEncodeFeedbackFlags = supportedEncodeFeedbackFlags -proc newVkBindImagePlaneMemoryInfo*(sType: VkStructureType, pNext: pointer = nil, planeAspect: VkImageAspectFlagBits): VkBindImagePlaneMemoryInfo = +proc newVkVideoEncodeH264CapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoEncodeH264CapabilityFlagsKHR = 0.VkVideoEncodeH264CapabilityFlagsKHR, maxLevelIdc: StdVideoH264LevelIdc, maxSliceCount: uint32, maxPPictureL0ReferenceCount: uint32, maxBPictureL0ReferenceCount: uint32, maxL1ReferenceCount: uint32, maxTemporalLayerCount: uint32, expectDyadicTemporalLayerPattern: VkBool32, minQp: int32, maxQp: int32, prefersGopRemainingFrames: VkBool32, requiresGopRemainingFrames: VkBool32, stdSyntaxFlags: VkVideoEncodeH264StdFlagsKHR): VkVideoEncodeH264CapabilitiesKHR = result.sType = sType result.pNext = pNext - result.planeAspect = planeAspect + result.flags = flags + result.maxLevelIdc = maxLevelIdc + result.maxSliceCount = maxSliceCount + result.maxPPictureL0ReferenceCount = maxPPictureL0ReferenceCount + result.maxBPictureL0ReferenceCount = maxBPictureL0ReferenceCount + result.maxL1ReferenceCount = maxL1ReferenceCount + result.maxTemporalLayerCount = maxTemporalLayerCount + result.expectDyadicTemporalLayerPattern = expectDyadicTemporalLayerPattern + result.minQp = minQp + result.maxQp = maxQp + result.prefersGopRemainingFrames = prefersGopRemainingFrames + result.requiresGopRemainingFrames = requiresGopRemainingFrames + result.stdSyntaxFlags = stdSyntaxFlags -proc newVkImagePlaneMemoryRequirementsInfo*(sType: VkStructureType, pNext: pointer = nil, planeAspect: VkImageAspectFlagBits): VkImagePlaneMemoryRequirementsInfo = +proc newVkVideoEncodeH264QualityLevelPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, preferredRateControlFlags: VkVideoEncodeH264RateControlFlagsKHR, preferredGopFrameCount: uint32, preferredIdrPeriod: uint32, preferredConsecutiveBFrameCount: uint32, preferredTemporalLayerCount: uint32, preferredConstantQp: VkVideoEncodeH264QpKHR, preferredMaxL0ReferenceCount: uint32, preferredMaxL1ReferenceCount: uint32, preferredStdEntropyCodingModeFlag: VkBool32): VkVideoEncodeH264QualityLevelPropertiesKHR = result.sType = sType result.pNext = pNext - result.planeAspect = planeAspect + result.preferredRateControlFlags = preferredRateControlFlags + result.preferredGopFrameCount = preferredGopFrameCount + result.preferredIdrPeriod = preferredIdrPeriod + result.preferredConsecutiveBFrameCount = preferredConsecutiveBFrameCount + result.preferredTemporalLayerCount = preferredTemporalLayerCount + result.preferredConstantQp = preferredConstantQp + result.preferredMaxL0ReferenceCount = preferredMaxL0ReferenceCount + result.preferredMaxL1ReferenceCount = preferredMaxL1ReferenceCount + result.preferredStdEntropyCodingModeFlag = preferredStdEntropyCodingModeFlag -proc newVkPhysicalDeviceSamplerYcbcrConversionFeatures*(sType: VkStructureType, pNext: pointer = nil, samplerYcbcrConversion: VkBool32): VkPhysicalDeviceSamplerYcbcrConversionFeatures = +proc newVkVideoEncodeH264SessionCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, useMaxLevelIdc: VkBool32, maxLevelIdc: StdVideoH264LevelIdc): VkVideoEncodeH264SessionCreateInfoKHR = result.sType = sType result.pNext = pNext - result.samplerYcbcrConversion = samplerYcbcrConversion + result.useMaxLevelIdc = useMaxLevelIdc + result.maxLevelIdc = maxLevelIdc -proc newVkSamplerYcbcrConversionImageFormatProperties*(sType: VkStructureType, pNext: pointer = nil, combinedImageSamplerDescriptorCount: uint32): VkSamplerYcbcrConversionImageFormatProperties = +proc newVkVideoEncodeH264SessionParametersAddInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdSPSCount: uint32, pStdSPSs: ptr StdVideoH264SequenceParameterSet, stdPPSCount: uint32, pStdPPSs: ptr StdVideoH264PictureParameterSet): VkVideoEncodeH264SessionParametersAddInfoKHR = result.sType = sType result.pNext = pNext - result.combinedImageSamplerDescriptorCount = combinedImageSamplerDescriptorCount + result.stdSPSCount = stdSPSCount + result.pStdSPSs = pStdSPSs + result.stdPPSCount = stdPPSCount + result.pStdPPSs = pStdPPSs -proc newVkTextureLODGatherFormatPropertiesAMD*(sType: VkStructureType, pNext: pointer = nil, supportsTextureGatherLODBiasAMD: VkBool32): VkTextureLODGatherFormatPropertiesAMD = +proc newVkVideoEncodeH264SessionParametersCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, maxStdSPSCount: uint32, maxStdPPSCount: uint32, pParametersAddInfo: ptr VkVideoEncodeH264SessionParametersAddInfoKHR): VkVideoEncodeH264SessionParametersCreateInfoKHR = result.sType = sType result.pNext = pNext - result.supportsTextureGatherLODBiasAMD = supportsTextureGatherLODBiasAMD + result.maxStdSPSCount = maxStdSPSCount + result.maxStdPPSCount = maxStdPPSCount + result.pParametersAddInfo = pParametersAddInfo -proc newVkConditionalRenderingBeginInfoEXT*(sType: VkStructureType, pNext: pointer = nil, buffer: VkBuffer, offset: VkDeviceSize, flags: VkConditionalRenderingFlagsEXT = 0.VkConditionalRenderingFlagsEXT): VkConditionalRenderingBeginInfoEXT = +proc newVkVideoEncodeH264SessionParametersGetInfoKHR*(sType: VkStructureType, pNext: pointer = nil, writeStdSPS: VkBool32, writeStdPPS: VkBool32, stdSPSId: uint32, stdPPSId: uint32): VkVideoEncodeH264SessionParametersGetInfoKHR = result.sType = sType result.pNext = pNext - result.buffer = buffer - result.offset = offset - result.flags = flags + result.writeStdSPS = writeStdSPS + result.writeStdPPS = writeStdPPS + result.stdSPSId = stdSPSId + result.stdPPSId = stdPPSId -proc newVkProtectedSubmitInfo*(sType: VkStructureType, pNext: pointer = nil, protectedSubmit: VkBool32): VkProtectedSubmitInfo = +proc newVkVideoEncodeH264SessionParametersFeedbackInfoKHR*(sType: VkStructureType, pNext: pointer = nil, hasStdSPSOverrides: VkBool32, hasStdPPSOverrides: VkBool32): VkVideoEncodeH264SessionParametersFeedbackInfoKHR = result.sType = sType result.pNext = pNext - result.protectedSubmit = protectedSubmit + result.hasStdSPSOverrides = hasStdSPSOverrides + result.hasStdPPSOverrides = hasStdPPSOverrides -proc newVkPhysicalDeviceProtectedMemoryFeatures*(sType: VkStructureType, pNext: pointer = nil, protectedMemory: VkBool32): VkPhysicalDeviceProtectedMemoryFeatures = +proc newVkVideoEncodeH264DpbSlotInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoEncodeH264ReferenceInfo): VkVideoEncodeH264DpbSlotInfoKHR = result.sType = sType result.pNext = pNext - result.protectedMemory = protectedMemory + result.pStdReferenceInfo = pStdReferenceInfo -proc newVkPhysicalDeviceProtectedMemoryProperties*(sType: VkStructureType, pNext: pointer = nil, protectedNoFault: VkBool32): VkPhysicalDeviceProtectedMemoryProperties = +proc newVkVideoEncodeH264PictureInfoKHR*(sType: VkStructureType, pNext: pointer = nil, naluSliceEntryCount: uint32, pNaluSliceEntries: ptr VkVideoEncodeH264NaluSliceInfoKHR, pStdPictureInfo: ptr StdVideoEncodeH264PictureInfo, generatePrefixNalu: VkBool32): VkVideoEncodeH264PictureInfoKHR = result.sType = sType result.pNext = pNext - result.protectedNoFault = protectedNoFault + result.naluSliceEntryCount = naluSliceEntryCount + result.pNaluSliceEntries = pNaluSliceEntries + result.pStdPictureInfo = pStdPictureInfo + result.generatePrefixNalu = generatePrefixNalu -proc newVkDeviceQueueInfo2*(sType: VkStructureType, pNext: pointer = nil, flags: VkDeviceQueueCreateFlags = 0.VkDeviceQueueCreateFlags, queueFamilyIndex: uint32, queueIndex: uint32): VkDeviceQueueInfo2 = +proc newVkVideoEncodeH264ProfileInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdProfileIdc: StdVideoH264ProfileIdc): VkVideoEncodeH264ProfileInfoKHR = result.sType = sType result.pNext = pNext - result.flags = flags - result.queueFamilyIndex = queueFamilyIndex - result.queueIndex = queueIndex + result.stdProfileIdc = stdProfileIdc -proc newVkPipelineCoverageToColorStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCoverageToColorStateCreateFlagsNV = 0.VkPipelineCoverageToColorStateCreateFlagsNV, coverageToColorEnable: VkBool32, coverageToColorLocation: uint32): VkPipelineCoverageToColorStateCreateInfoNV = +proc newVkVideoEncodeH264NaluSliceInfoKHR*(sType: VkStructureType, pNext: pointer = nil, constantQp: int32, pStdSliceHeader: ptr StdVideoEncodeH264SliceHeader): VkVideoEncodeH264NaluSliceInfoKHR = result.sType = sType result.pNext = pNext - result.flags = flags - result.coverageToColorEnable = coverageToColorEnable - result.coverageToColorLocation = coverageToColorLocation + result.constantQp = constantQp + result.pStdSliceHeader = pStdSliceHeader -proc newVkPhysicalDeviceSamplerFilterMinmaxProperties*(sType: VkStructureType, pNext: pointer = nil, filterMinmaxSingleComponentFormats: VkBool32, filterMinmaxImageComponentMapping: VkBool32): VkPhysicalDeviceSamplerFilterMinmaxProperties = +proc newVkVideoEncodeH264RateControlInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoEncodeH264RateControlFlagsKHR = 0.VkVideoEncodeH264RateControlFlagsKHR, gopFrameCount: uint32, idrPeriod: uint32, consecutiveBFrameCount: uint32, temporalLayerCount: uint32): VkVideoEncodeH264RateControlInfoKHR = result.sType = sType result.pNext = pNext - result.filterMinmaxSingleComponentFormats = filterMinmaxSingleComponentFormats - result.filterMinmaxImageComponentMapping = filterMinmaxImageComponentMapping + result.flags = flags + result.gopFrameCount = gopFrameCount + result.idrPeriod = idrPeriod + result.consecutiveBFrameCount = consecutiveBFrameCount + result.temporalLayerCount = temporalLayerCount -proc newVkSampleLocationEXT*(x: float32, y: float32): VkSampleLocationEXT = - result.x = x - result.y = y +proc newVkVideoEncodeH264QpKHR*(qpI: int32, qpP: int32, qpB: int32): VkVideoEncodeH264QpKHR = + result.qpI = qpI + result.qpP = qpP + result.qpB = qpB -proc newVkSampleLocationsInfoEXT*(sType: VkStructureType, pNext: pointer = nil, sampleLocationsPerPixel: VkSampleCountFlagBits, sampleLocationGridSize: VkExtent2D, sampleLocationsCount: uint32, pSampleLocations: ptr VkSampleLocationEXT): VkSampleLocationsInfoEXT = +proc newVkVideoEncodeH264FrameSizeKHR*(frameISize: uint32, framePSize: uint32, frameBSize: uint32): VkVideoEncodeH264FrameSizeKHR = + result.frameISize = frameISize + result.framePSize = framePSize + result.frameBSize = frameBSize + +proc newVkVideoEncodeH264GopRemainingFrameInfoKHR*(sType: VkStructureType, pNext: pointer = nil, useGopRemainingFrames: VkBool32, gopRemainingI: uint32, gopRemainingP: uint32, gopRemainingB: uint32): VkVideoEncodeH264GopRemainingFrameInfoKHR = result.sType = sType result.pNext = pNext - result.sampleLocationsPerPixel = sampleLocationsPerPixel - result.sampleLocationGridSize = sampleLocationGridSize - result.sampleLocationsCount = sampleLocationsCount - result.pSampleLocations = pSampleLocations - -proc newVkAttachmentSampleLocationsEXT*(attachmentIndex: uint32, sampleLocationsInfo: VkSampleLocationsInfoEXT): VkAttachmentSampleLocationsEXT = - result.attachmentIndex = attachmentIndex - result.sampleLocationsInfo = sampleLocationsInfo + result.useGopRemainingFrames = useGopRemainingFrames + result.gopRemainingI = gopRemainingI + result.gopRemainingP = gopRemainingP + result.gopRemainingB = gopRemainingB -proc newVkSubpassSampleLocationsEXT*(subpassIndex: uint32, sampleLocationsInfo: VkSampleLocationsInfoEXT): VkSubpassSampleLocationsEXT = - result.subpassIndex = subpassIndex - result.sampleLocationsInfo = sampleLocationsInfo +proc newVkVideoEncodeH264RateControlLayerInfoKHR*(sType: VkStructureType, pNext: pointer = nil, useMinQp: VkBool32, minQp: VkVideoEncodeH264QpKHR, useMaxQp: VkBool32, maxQp: VkVideoEncodeH264QpKHR, useMaxFrameSize: VkBool32, maxFrameSize: VkVideoEncodeH264FrameSizeKHR): VkVideoEncodeH264RateControlLayerInfoKHR = + result.sType = sType + result.pNext = pNext + result.useMinQp = useMinQp + result.minQp = minQp + result.useMaxQp = useMaxQp + result.maxQp = maxQp + result.useMaxFrameSize = useMaxFrameSize + result.maxFrameSize = maxFrameSize -proc newVkRenderPassSampleLocationsBeginInfoEXT*(sType: VkStructureType, pNext: pointer = nil, attachmentInitialSampleLocationsCount: uint32, pAttachmentInitialSampleLocations: ptr VkAttachmentSampleLocationsEXT, postSubpassSampleLocationsCount: uint32, pPostSubpassSampleLocations: ptr VkSubpassSampleLocationsEXT): VkRenderPassSampleLocationsBeginInfoEXT = +proc newVkVideoEncodeH265CapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoEncodeH265CapabilityFlagsKHR = 0.VkVideoEncodeH265CapabilityFlagsKHR, maxLevelIdc: StdVideoH265LevelIdc, maxSliceSegmentCount: uint32, maxTiles: VkExtent2D, ctbSizes: VkVideoEncodeH265CtbSizeFlagsKHR, transformBlockSizes: VkVideoEncodeH265TransformBlockSizeFlagsKHR, maxPPictureL0ReferenceCount: uint32, maxBPictureL0ReferenceCount: uint32, maxL1ReferenceCount: uint32, maxSubLayerCount: uint32, expectDyadicTemporalSubLayerPattern: VkBool32, minQp: int32, maxQp: int32, prefersGopRemainingFrames: VkBool32, requiresGopRemainingFrames: VkBool32, stdSyntaxFlags: VkVideoEncodeH265StdFlagsKHR): VkVideoEncodeH265CapabilitiesKHR = result.sType = sType result.pNext = pNext - result.attachmentInitialSampleLocationsCount = attachmentInitialSampleLocationsCount - result.pAttachmentInitialSampleLocations = pAttachmentInitialSampleLocations - result.postSubpassSampleLocationsCount = postSubpassSampleLocationsCount - result.pPostSubpassSampleLocations = pPostSubpassSampleLocations + result.flags = flags + result.maxLevelIdc = maxLevelIdc + result.maxSliceSegmentCount = maxSliceSegmentCount + result.maxTiles = maxTiles + result.ctbSizes = ctbSizes + result.transformBlockSizes = transformBlockSizes + result.maxPPictureL0ReferenceCount = maxPPictureL0ReferenceCount + result.maxBPictureL0ReferenceCount = maxBPictureL0ReferenceCount + result.maxL1ReferenceCount = maxL1ReferenceCount + result.maxSubLayerCount = maxSubLayerCount + result.expectDyadicTemporalSubLayerPattern = expectDyadicTemporalSubLayerPattern + result.minQp = minQp + result.maxQp = maxQp + result.prefersGopRemainingFrames = prefersGopRemainingFrames + result.requiresGopRemainingFrames = requiresGopRemainingFrames + result.stdSyntaxFlags = stdSyntaxFlags -proc newVkPipelineSampleLocationsStateCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, sampleLocationsEnable: VkBool32, sampleLocationsInfo: VkSampleLocationsInfoEXT): VkPipelineSampleLocationsStateCreateInfoEXT = +proc newVkVideoEncodeH265QualityLevelPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, preferredRateControlFlags: VkVideoEncodeH265RateControlFlagsKHR, preferredGopFrameCount: uint32, preferredIdrPeriod: uint32, preferredConsecutiveBFrameCount: uint32, preferredSubLayerCount: uint32, preferredConstantQp: VkVideoEncodeH265QpKHR, preferredMaxL0ReferenceCount: uint32, preferredMaxL1ReferenceCount: uint32): VkVideoEncodeH265QualityLevelPropertiesKHR = result.sType = sType result.pNext = pNext - result.sampleLocationsEnable = sampleLocationsEnable - result.sampleLocationsInfo = sampleLocationsInfo + result.preferredRateControlFlags = preferredRateControlFlags + result.preferredGopFrameCount = preferredGopFrameCount + result.preferredIdrPeriod = preferredIdrPeriod + result.preferredConsecutiveBFrameCount = preferredConsecutiveBFrameCount + result.preferredSubLayerCount = preferredSubLayerCount + result.preferredConstantQp = preferredConstantQp + result.preferredMaxL0ReferenceCount = preferredMaxL0ReferenceCount + result.preferredMaxL1ReferenceCount = preferredMaxL1ReferenceCount -proc newVkPhysicalDeviceSampleLocationsPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, sampleLocationSampleCounts: VkSampleCountFlags, maxSampleLocationGridSize: VkExtent2D, sampleLocationCoordinateRange: array[2, float32], sampleLocationSubPixelBits: uint32, variableSampleLocations: VkBool32): VkPhysicalDeviceSampleLocationsPropertiesEXT = +proc newVkVideoEncodeH265SessionCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, useMaxLevelIdc: VkBool32, maxLevelIdc: StdVideoH265LevelIdc): VkVideoEncodeH265SessionCreateInfoKHR = result.sType = sType result.pNext = pNext - result.sampleLocationSampleCounts = sampleLocationSampleCounts - result.maxSampleLocationGridSize = maxSampleLocationGridSize - result.sampleLocationCoordinateRange = sampleLocationCoordinateRange - result.sampleLocationSubPixelBits = sampleLocationSubPixelBits - result.variableSampleLocations = variableSampleLocations + result.useMaxLevelIdc = useMaxLevelIdc + result.maxLevelIdc = maxLevelIdc -proc newVkMultisamplePropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxSampleLocationGridSize: VkExtent2D): VkMultisamplePropertiesEXT = +proc newVkVideoEncodeH265SessionParametersAddInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdVPSCount: uint32, pStdVPSs: ptr StdVideoH265VideoParameterSet, stdSPSCount: uint32, pStdSPSs: ptr StdVideoH265SequenceParameterSet, stdPPSCount: uint32, pStdPPSs: ptr StdVideoH265PictureParameterSet): VkVideoEncodeH265SessionParametersAddInfoKHR = result.sType = sType result.pNext = pNext - result.maxSampleLocationGridSize = maxSampleLocationGridSize + result.stdVPSCount = stdVPSCount + result.pStdVPSs = pStdVPSs + result.stdSPSCount = stdSPSCount + result.pStdSPSs = pStdSPSs + result.stdPPSCount = stdPPSCount + result.pStdPPSs = pStdPPSs -proc newVkSamplerReductionModeCreateInfo*(sType: VkStructureType, pNext: pointer = nil, reductionMode: VkSamplerReductionMode): VkSamplerReductionModeCreateInfo = +proc newVkVideoEncodeH265SessionParametersCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, maxStdVPSCount: uint32, maxStdSPSCount: uint32, maxStdPPSCount: uint32, pParametersAddInfo: ptr VkVideoEncodeH265SessionParametersAddInfoKHR): VkVideoEncodeH265SessionParametersCreateInfoKHR = result.sType = sType result.pNext = pNext - result.reductionMode = reductionMode + result.maxStdVPSCount = maxStdVPSCount + result.maxStdSPSCount = maxStdSPSCount + result.maxStdPPSCount = maxStdPPSCount + result.pParametersAddInfo = pParametersAddInfo -proc newVkPhysicalDeviceBlendOperationAdvancedFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, advancedBlendCoherentOperations: VkBool32): VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT = +proc newVkVideoEncodeH265SessionParametersGetInfoKHR*(sType: VkStructureType, pNext: pointer = nil, writeStdVPS: VkBool32, writeStdSPS: VkBool32, writeStdPPS: VkBool32, stdVPSId: uint32, stdSPSId: uint32, stdPPSId: uint32): VkVideoEncodeH265SessionParametersGetInfoKHR = result.sType = sType result.pNext = pNext - result.advancedBlendCoherentOperations = advancedBlendCoherentOperations + result.writeStdVPS = writeStdVPS + result.writeStdSPS = writeStdSPS + result.writeStdPPS = writeStdPPS + result.stdVPSId = stdVPSId + result.stdSPSId = stdSPSId + result.stdPPSId = stdPPSId -proc newVkPhysicalDeviceBlendOperationAdvancedPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, advancedBlendMaxColorAttachments: uint32, advancedBlendIndependentBlend: VkBool32, advancedBlendNonPremultipliedSrcColor: VkBool32, advancedBlendNonPremultipliedDstColor: VkBool32, advancedBlendCorrelatedOverlap: VkBool32, advancedBlendAllOperations: VkBool32): VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT = +proc newVkVideoEncodeH265SessionParametersFeedbackInfoKHR*(sType: VkStructureType, pNext: pointer = nil, hasStdVPSOverrides: VkBool32, hasStdSPSOverrides: VkBool32, hasStdPPSOverrides: VkBool32): VkVideoEncodeH265SessionParametersFeedbackInfoKHR = result.sType = sType result.pNext = pNext - result.advancedBlendMaxColorAttachments = advancedBlendMaxColorAttachments - result.advancedBlendIndependentBlend = advancedBlendIndependentBlend - result.advancedBlendNonPremultipliedSrcColor = advancedBlendNonPremultipliedSrcColor - result.advancedBlendNonPremultipliedDstColor = advancedBlendNonPremultipliedDstColor - result.advancedBlendCorrelatedOverlap = advancedBlendCorrelatedOverlap - result.advancedBlendAllOperations = advancedBlendAllOperations + result.hasStdVPSOverrides = hasStdVPSOverrides + result.hasStdSPSOverrides = hasStdSPSOverrides + result.hasStdPPSOverrides = hasStdPPSOverrides -proc newVkPipelineColorBlendAdvancedStateCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, srcPremultiplied: VkBool32, dstPremultiplied: VkBool32, blendOverlap: VkBlendOverlapEXT): VkPipelineColorBlendAdvancedStateCreateInfoEXT = +proc newVkVideoEncodeH265PictureInfoKHR*(sType: VkStructureType, pNext: pointer = nil, naluSliceSegmentEntryCount: uint32, pNaluSliceSegmentEntries: ptr VkVideoEncodeH265NaluSliceSegmentInfoKHR, pStdPictureInfo: ptr StdVideoEncodeH265PictureInfo): VkVideoEncodeH265PictureInfoKHR = result.sType = sType result.pNext = pNext - result.srcPremultiplied = srcPremultiplied - result.dstPremultiplied = dstPremultiplied - result.blendOverlap = blendOverlap + result.naluSliceSegmentEntryCount = naluSliceSegmentEntryCount + result.pNaluSliceSegmentEntries = pNaluSliceSegmentEntries + result.pStdPictureInfo = pStdPictureInfo -proc newVkPhysicalDeviceInlineUniformBlockFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, inlineUniformBlock: VkBool32, descriptorBindingInlineUniformBlockUpdateAfterBind: VkBool32): VkPhysicalDeviceInlineUniformBlockFeaturesEXT = +proc newVkVideoEncodeH265NaluSliceSegmentInfoKHR*(sType: VkStructureType, pNext: pointer = nil, constantQp: int32, pStdSliceSegmentHeader: ptr StdVideoEncodeH265SliceSegmentHeader): VkVideoEncodeH265NaluSliceSegmentInfoKHR = result.sType = sType result.pNext = pNext - result.inlineUniformBlock = inlineUniformBlock - result.descriptorBindingInlineUniformBlockUpdateAfterBind = descriptorBindingInlineUniformBlockUpdateAfterBind + result.constantQp = constantQp + result.pStdSliceSegmentHeader = pStdSliceSegmentHeader -proc newVkPhysicalDeviceInlineUniformBlockPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxInlineUniformBlockSize: uint32, maxPerStageDescriptorInlineUniformBlocks: uint32, maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks: uint32, maxDescriptorSetInlineUniformBlocks: uint32, maxDescriptorSetUpdateAfterBindInlineUniformBlocks: uint32): VkPhysicalDeviceInlineUniformBlockPropertiesEXT = +proc newVkVideoEncodeH265RateControlInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoEncodeH265RateControlFlagsKHR = 0.VkVideoEncodeH265RateControlFlagsKHR, gopFrameCount: uint32, idrPeriod: uint32, consecutiveBFrameCount: uint32, subLayerCount: uint32): VkVideoEncodeH265RateControlInfoKHR = result.sType = sType result.pNext = pNext - result.maxInlineUniformBlockSize = maxInlineUniformBlockSize - result.maxPerStageDescriptorInlineUniformBlocks = maxPerStageDescriptorInlineUniformBlocks - result.maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks = maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks - result.maxDescriptorSetInlineUniformBlocks = maxDescriptorSetInlineUniformBlocks - result.maxDescriptorSetUpdateAfterBindInlineUniformBlocks = maxDescriptorSetUpdateAfterBindInlineUniformBlocks + result.flags = flags + result.gopFrameCount = gopFrameCount + result.idrPeriod = idrPeriod + result.consecutiveBFrameCount = consecutiveBFrameCount + result.subLayerCount = subLayerCount + +proc newVkVideoEncodeH265QpKHR*(qpI: int32, qpP: int32, qpB: int32): VkVideoEncodeH265QpKHR = + result.qpI = qpI + result.qpP = qpP + result.qpB = qpB + +proc newVkVideoEncodeH265FrameSizeKHR*(frameISize: uint32, framePSize: uint32, frameBSize: uint32): VkVideoEncodeH265FrameSizeKHR = + result.frameISize = frameISize + result.framePSize = framePSize + result.frameBSize = frameBSize -proc newVkWriteDescriptorSetInlineUniformBlockEXT*(sType: VkStructureType, pNext: pointer = nil, dataSize: uint32, pData: pointer = nil): VkWriteDescriptorSetInlineUniformBlockEXT = +proc newVkVideoEncodeH265GopRemainingFrameInfoKHR*(sType: VkStructureType, pNext: pointer = nil, useGopRemainingFrames: VkBool32, gopRemainingI: uint32, gopRemainingP: uint32, gopRemainingB: uint32): VkVideoEncodeH265GopRemainingFrameInfoKHR = result.sType = sType result.pNext = pNext - result.dataSize = dataSize - result.pData = pData + result.useGopRemainingFrames = useGopRemainingFrames + result.gopRemainingI = gopRemainingI + result.gopRemainingP = gopRemainingP + result.gopRemainingB = gopRemainingB -proc newVkDescriptorPoolInlineUniformBlockCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, maxInlineUniformBlockBindings: uint32): VkDescriptorPoolInlineUniformBlockCreateInfoEXT = +proc newVkVideoEncodeH265RateControlLayerInfoKHR*(sType: VkStructureType, pNext: pointer = nil, useMinQp: VkBool32, minQp: VkVideoEncodeH265QpKHR, useMaxQp: VkBool32, maxQp: VkVideoEncodeH265QpKHR, useMaxFrameSize: VkBool32, maxFrameSize: VkVideoEncodeH265FrameSizeKHR): VkVideoEncodeH265RateControlLayerInfoKHR = result.sType = sType result.pNext = pNext - result.maxInlineUniformBlockBindings = maxInlineUniformBlockBindings + result.useMinQp = useMinQp + result.minQp = minQp + result.useMaxQp = useMaxQp + result.maxQp = maxQp + result.useMaxFrameSize = useMaxFrameSize + result.maxFrameSize = maxFrameSize -proc newVkPipelineCoverageModulationStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCoverageModulationStateCreateFlagsNV = 0.VkPipelineCoverageModulationStateCreateFlagsNV, coverageModulationMode: VkCoverageModulationModeNV, coverageModulationTableEnable: VkBool32, coverageModulationTableCount: uint32, pCoverageModulationTable: ptr float32): VkPipelineCoverageModulationStateCreateInfoNV = +proc newVkVideoEncodeH265ProfileInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdProfileIdc: StdVideoH265ProfileIdc): VkVideoEncodeH265ProfileInfoKHR = result.sType = sType result.pNext = pNext - result.flags = flags - result.coverageModulationMode = coverageModulationMode - result.coverageModulationTableEnable = coverageModulationTableEnable - result.coverageModulationTableCount = coverageModulationTableCount - result.pCoverageModulationTable = pCoverageModulationTable + result.stdProfileIdc = stdProfileIdc -proc newVkImageFormatListCreateInfo*(sType: VkStructureType, pNext: pointer = nil, viewFormatCount: uint32, pViewFormats: ptr VkFormat): VkImageFormatListCreateInfo = +proc newVkVideoEncodeH265DpbSlotInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoEncodeH265ReferenceInfo): VkVideoEncodeH265DpbSlotInfoKHR = result.sType = sType result.pNext = pNext - result.viewFormatCount = viewFormatCount - result.pViewFormats = pViewFormats + result.pStdReferenceInfo = pStdReferenceInfo -proc newVkValidationCacheCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkValidationCacheCreateFlagsEXT = 0.VkValidationCacheCreateFlagsEXT, initialDataSize: uint, pInitialData: pointer = nil): VkValidationCacheCreateInfoEXT = +proc newVkPhysicalDeviceInheritedViewportScissorFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, inheritedViewportScissor2D: VkBool32): VkPhysicalDeviceInheritedViewportScissorFeaturesNV = result.sType = sType result.pNext = pNext - result.flags = flags - result.initialDataSize = initialDataSize - result.pInitialData = pInitialData + result.inheritedViewportScissor2D = inheritedViewportScissor2D -proc newVkShaderModuleValidationCacheCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, validationCache: VkValidationCacheEXT): VkShaderModuleValidationCacheCreateInfoEXT = +proc newVkCommandBufferInheritanceViewportScissorInfoNV*(sType: VkStructureType, pNext: pointer = nil, viewportScissor2D: VkBool32, viewportDepthCount: uint32, pViewportDepths: ptr VkViewport): VkCommandBufferInheritanceViewportScissorInfoNV = result.sType = sType result.pNext = pNext - result.validationCache = validationCache + result.viewportScissor2D = viewportScissor2D + result.viewportDepthCount = viewportDepthCount + result.pViewportDepths = pViewportDepths -proc newVkPhysicalDeviceMaintenance3Properties*(sType: VkStructureType, pNext: pointer = nil, maxPerSetDescriptors: uint32, maxMemoryAllocationSize: VkDeviceSize): VkPhysicalDeviceMaintenance3Properties = +proc newVkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, ycbcr2plane444Formats: VkBool32): VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT = result.sType = sType result.pNext = pNext - result.maxPerSetDescriptors = maxPerSetDescriptors - result.maxMemoryAllocationSize = maxMemoryAllocationSize + result.ycbcr2plane444Formats = ycbcr2plane444Formats -proc newVkDescriptorSetLayoutSupport*(sType: VkStructureType, pNext: pointer = nil, supported: VkBool32): VkDescriptorSetLayoutSupport = +proc newVkPhysicalDeviceProvokingVertexFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, provokingVertexLast: VkBool32, transformFeedbackPreservesProvokingVertex: VkBool32): VkPhysicalDeviceProvokingVertexFeaturesEXT = result.sType = sType result.pNext = pNext - result.supported = supported + result.provokingVertexLast = provokingVertexLast + result.transformFeedbackPreservesProvokingVertex = transformFeedbackPreservesProvokingVertex -proc newVkPhysicalDeviceShaderDrawParametersFeatures*(sType: VkStructureType, pNext: pointer = nil, shaderDrawParameters: VkBool32): VkPhysicalDeviceShaderDrawParametersFeatures = +proc newVkPhysicalDeviceProvokingVertexPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, provokingVertexModePerPipeline: VkBool32, transformFeedbackPreservesTriangleFanProvokingVertex: VkBool32): VkPhysicalDeviceProvokingVertexPropertiesEXT = result.sType = sType result.pNext = pNext - result.shaderDrawParameters = shaderDrawParameters + result.provokingVertexModePerPipeline = provokingVertexModePerPipeline + result.transformFeedbackPreservesTriangleFanProvokingVertex = transformFeedbackPreservesTriangleFanProvokingVertex -proc newVkPhysicalDeviceShaderFloat16Int8Features*(sType: VkStructureType, pNext: pointer = nil, shaderFloat16: VkBool32, shaderInt8: VkBool32): VkPhysicalDeviceShaderFloat16Int8Features = +proc newVkPipelineRasterizationProvokingVertexStateCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, provokingVertexMode: VkProvokingVertexModeEXT): VkPipelineRasterizationProvokingVertexStateCreateInfoEXT = result.sType = sType result.pNext = pNext - result.shaderFloat16 = shaderFloat16 - result.shaderInt8 = shaderInt8 + result.provokingVertexMode = provokingVertexMode -proc newVkPhysicalDeviceFloatControlsProperties*(sType: VkStructureType, pNext: pointer = nil, denormBehaviorIndependence: VkShaderFloatControlsIndependence, roundingModeIndependence: VkShaderFloatControlsIndependence, shaderSignedZeroInfNanPreserveFloat16: VkBool32, shaderSignedZeroInfNanPreserveFloat32: VkBool32, shaderSignedZeroInfNanPreserveFloat64: VkBool32, shaderDenormPreserveFloat16: VkBool32, shaderDenormPreserveFloat32: VkBool32, shaderDenormPreserveFloat64: VkBool32, shaderDenormFlushToZeroFloat16: VkBool32, shaderDenormFlushToZeroFloat32: VkBool32, shaderDenormFlushToZeroFloat64: VkBool32, shaderRoundingModeRTEFloat16: VkBool32, shaderRoundingModeRTEFloat32: VkBool32, shaderRoundingModeRTEFloat64: VkBool32, shaderRoundingModeRTZFloat16: VkBool32, shaderRoundingModeRTZFloat32: VkBool32, shaderRoundingModeRTZFloat64: VkBool32): VkPhysicalDeviceFloatControlsProperties = +proc newVkCuModuleCreateInfoNVX*(sType: VkStructureType, pNext: pointer = nil, dataSize: uint, pData: pointer = nil): VkCuModuleCreateInfoNVX = result.sType = sType result.pNext = pNext - result.denormBehaviorIndependence = denormBehaviorIndependence - result.roundingModeIndependence = roundingModeIndependence - result.shaderSignedZeroInfNanPreserveFloat16 = shaderSignedZeroInfNanPreserveFloat16 - result.shaderSignedZeroInfNanPreserveFloat32 = shaderSignedZeroInfNanPreserveFloat32 - result.shaderSignedZeroInfNanPreserveFloat64 = shaderSignedZeroInfNanPreserveFloat64 - result.shaderDenormPreserveFloat16 = shaderDenormPreserveFloat16 - result.shaderDenormPreserveFloat32 = shaderDenormPreserveFloat32 - result.shaderDenormPreserveFloat64 = shaderDenormPreserveFloat64 - result.shaderDenormFlushToZeroFloat16 = shaderDenormFlushToZeroFloat16 - result.shaderDenormFlushToZeroFloat32 = shaderDenormFlushToZeroFloat32 - result.shaderDenormFlushToZeroFloat64 = shaderDenormFlushToZeroFloat64 - result.shaderRoundingModeRTEFloat16 = shaderRoundingModeRTEFloat16 - result.shaderRoundingModeRTEFloat32 = shaderRoundingModeRTEFloat32 - result.shaderRoundingModeRTEFloat64 = shaderRoundingModeRTEFloat64 - result.shaderRoundingModeRTZFloat16 = shaderRoundingModeRTZFloat16 - result.shaderRoundingModeRTZFloat32 = shaderRoundingModeRTZFloat32 - result.shaderRoundingModeRTZFloat64 = shaderRoundingModeRTZFloat64 + result.dataSize = dataSize + result.pData = pData -proc newVkPhysicalDeviceHostQueryResetFeatures*(sType: VkStructureType, pNext: pointer = nil, hostQueryReset: VkBool32): VkPhysicalDeviceHostQueryResetFeatures = +proc newVkCuFunctionCreateInfoNVX*(sType: VkStructureType, pNext: pointer = nil, module: VkCuModuleNVX, pName: cstring): VkCuFunctionCreateInfoNVX = result.sType = sType result.pNext = pNext - result.hostQueryReset = hostQueryReset + result.module = module + result.pName = pName -proc newVkNativeBufferUsage2ANDROID*(consumer: uint64, producer: uint64): VkNativeBufferUsage2ANDROID = - result.consumer = consumer - result.producer = producer +proc newVkCuLaunchInfoNVX*(sType: VkStructureType, pNext: pointer = nil, function: VkCuFunctionNVX, gridDimX: uint32, gridDimY: uint32, gridDimZ: uint32, blockDimX: uint32, blockDimY: uint32, blockDimZ: uint32, sharedMemBytes: uint32, paramCount: uint, pParams: ptr pointer, extraCount: uint, pExtras: ptr pointer): VkCuLaunchInfoNVX = + result.sType = sType + result.pNext = pNext + result.function = function + result.gridDimX = gridDimX + result.gridDimY = gridDimY + result.gridDimZ = gridDimZ + result.blockDimX = blockDimX + result.blockDimY = blockDimY + result.blockDimZ = blockDimZ + result.sharedMemBytes = sharedMemBytes + result.paramCount = paramCount + result.pParams = pParams + result.extraCount = extraCount + result.pExtras = pExtras + +proc newVkPhysicalDeviceDescriptorBufferFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, descriptorBuffer: VkBool32, descriptorBufferCaptureReplay: VkBool32, descriptorBufferImageLayoutIgnored: VkBool32, descriptorBufferPushDescriptors: VkBool32): VkPhysicalDeviceDescriptorBufferFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.descriptorBuffer = descriptorBuffer + result.descriptorBufferCaptureReplay = descriptorBufferCaptureReplay + result.descriptorBufferImageLayoutIgnored = descriptorBufferImageLayoutIgnored + result.descriptorBufferPushDescriptors = descriptorBufferPushDescriptors + +proc newVkPhysicalDeviceDescriptorBufferPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, combinedImageSamplerDescriptorSingleArray: VkBool32, bufferlessPushDescriptors: VkBool32, allowSamplerImageViewPostSubmitCreation: VkBool32, descriptorBufferOffsetAlignment: VkDeviceSize, maxDescriptorBufferBindings: uint32, maxResourceDescriptorBufferBindings: uint32, maxSamplerDescriptorBufferBindings: uint32, maxEmbeddedImmutableSamplerBindings: uint32, maxEmbeddedImmutableSamplers: uint32, bufferCaptureReplayDescriptorDataSize: uint, imageCaptureReplayDescriptorDataSize: uint, imageViewCaptureReplayDescriptorDataSize: uint, samplerCaptureReplayDescriptorDataSize: uint, accelerationStructureCaptureReplayDescriptorDataSize: uint, samplerDescriptorSize: uint, combinedImageSamplerDescriptorSize: uint, sampledImageDescriptorSize: uint, storageImageDescriptorSize: uint, uniformTexelBufferDescriptorSize: uint, robustUniformTexelBufferDescriptorSize: uint, storageTexelBufferDescriptorSize: uint, robustStorageTexelBufferDescriptorSize: uint, uniformBufferDescriptorSize: uint, robustUniformBufferDescriptorSize: uint, storageBufferDescriptorSize: uint, robustStorageBufferDescriptorSize: uint, inputAttachmentDescriptorSize: uint, accelerationStructureDescriptorSize: uint, maxSamplerDescriptorBufferRange: VkDeviceSize, maxResourceDescriptorBufferRange: VkDeviceSize, samplerDescriptorBufferAddressSpaceSize: VkDeviceSize, resourceDescriptorBufferAddressSpaceSize: VkDeviceSize, descriptorBufferAddressSpaceSize: VkDeviceSize): VkPhysicalDeviceDescriptorBufferPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.combinedImageSamplerDescriptorSingleArray = combinedImageSamplerDescriptorSingleArray + result.bufferlessPushDescriptors = bufferlessPushDescriptors + result.allowSamplerImageViewPostSubmitCreation = allowSamplerImageViewPostSubmitCreation + result.descriptorBufferOffsetAlignment = descriptorBufferOffsetAlignment + result.maxDescriptorBufferBindings = maxDescriptorBufferBindings + result.maxResourceDescriptorBufferBindings = maxResourceDescriptorBufferBindings + result.maxSamplerDescriptorBufferBindings = maxSamplerDescriptorBufferBindings + result.maxEmbeddedImmutableSamplerBindings = maxEmbeddedImmutableSamplerBindings + result.maxEmbeddedImmutableSamplers = maxEmbeddedImmutableSamplers + result.bufferCaptureReplayDescriptorDataSize = bufferCaptureReplayDescriptorDataSize + result.imageCaptureReplayDescriptorDataSize = imageCaptureReplayDescriptorDataSize + result.imageViewCaptureReplayDescriptorDataSize = imageViewCaptureReplayDescriptorDataSize + result.samplerCaptureReplayDescriptorDataSize = samplerCaptureReplayDescriptorDataSize + result.accelerationStructureCaptureReplayDescriptorDataSize = accelerationStructureCaptureReplayDescriptorDataSize + result.samplerDescriptorSize = samplerDescriptorSize + result.combinedImageSamplerDescriptorSize = combinedImageSamplerDescriptorSize + result.sampledImageDescriptorSize = sampledImageDescriptorSize + result.storageImageDescriptorSize = storageImageDescriptorSize + result.uniformTexelBufferDescriptorSize = uniformTexelBufferDescriptorSize + result.robustUniformTexelBufferDescriptorSize = robustUniformTexelBufferDescriptorSize + result.storageTexelBufferDescriptorSize = storageTexelBufferDescriptorSize + result.robustStorageTexelBufferDescriptorSize = robustStorageTexelBufferDescriptorSize + result.uniformBufferDescriptorSize = uniformBufferDescriptorSize + result.robustUniformBufferDescriptorSize = robustUniformBufferDescriptorSize + result.storageBufferDescriptorSize = storageBufferDescriptorSize + result.robustStorageBufferDescriptorSize = robustStorageBufferDescriptorSize + result.inputAttachmentDescriptorSize = inputAttachmentDescriptorSize + result.accelerationStructureDescriptorSize = accelerationStructureDescriptorSize + result.maxSamplerDescriptorBufferRange = maxSamplerDescriptorBufferRange + result.maxResourceDescriptorBufferRange = maxResourceDescriptorBufferRange + result.samplerDescriptorBufferAddressSpaceSize = samplerDescriptorBufferAddressSpaceSize + result.resourceDescriptorBufferAddressSpaceSize = resourceDescriptorBufferAddressSpaceSize + result.descriptorBufferAddressSpaceSize = descriptorBufferAddressSpaceSize + +proc newVkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, combinedImageSamplerDensityMapDescriptorSize: uint): VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.combinedImageSamplerDensityMapDescriptorSize = combinedImageSamplerDensityMapDescriptorSize + +proc newVkDescriptorAddressInfoEXT*(sType: VkStructureType, pNext: pointer = nil, address: VkDeviceAddress, range: VkDeviceSize, format: VkFormat): VkDescriptorAddressInfoEXT = + result.sType = sType + result.pNext = pNext + result.address = address + result.range = range + result.format = format -proc newVkNativeBufferANDROID*(sType: VkStructureType, pNext: pointer = nil, handle: pointer = nil, stride: int, format: int, usage: int, usage2: VkNativeBufferUsage2ANDROID): VkNativeBufferANDROID = +proc newVkDescriptorBufferBindingInfoEXT*(sType: VkStructureType, pNext: pointer = nil, address: VkDeviceAddress, usage: VkBufferUsageFlags): VkDescriptorBufferBindingInfoEXT = result.sType = sType result.pNext = pNext - result.handle = handle - result.stride = stride - result.format = format + result.address = address result.usage = usage - result.usage2 = usage2 -proc newVkSwapchainImageCreateInfoANDROID*(sType: VkStructureType, pNext: pointer = nil, usage: VkSwapchainImageUsageFlagsANDROID): VkSwapchainImageCreateInfoANDROID = +proc newVkDescriptorBufferBindingPushDescriptorBufferHandleEXT*(sType: VkStructureType, pNext: pointer = nil, buffer: VkBuffer): VkDescriptorBufferBindingPushDescriptorBufferHandleEXT = result.sType = sType result.pNext = pNext - result.usage = usage + result.buffer = buffer -proc newVkPhysicalDevicePresentationPropertiesANDROID*(sType: VkStructureType, pNext: pointer = nil, sharedImage: VkBool32): VkPhysicalDevicePresentationPropertiesANDROID = +proc newVkDescriptorGetInfoEXT*(sType: VkStructureType, pNext: pointer = nil, `type`: VkDescriptorType, data: VkDescriptorDataEXT): VkDescriptorGetInfoEXT = result.sType = sType result.pNext = pNext - result.sharedImage = sharedImage + result.`type` = `type` + result.data = data -proc newVkShaderResourceUsageAMD*(numUsedVgprs: uint32, numUsedSgprs: uint32, ldsSizePerLocalWorkGroup: uint32, ldsUsageSizeInBytes: uint, scratchMemUsageInBytes: uint): VkShaderResourceUsageAMD = - result.numUsedVgprs = numUsedVgprs - result.numUsedSgprs = numUsedSgprs - result.ldsSizePerLocalWorkGroup = ldsSizePerLocalWorkGroup - result.ldsUsageSizeInBytes = ldsUsageSizeInBytes - result.scratchMemUsageInBytes = scratchMemUsageInBytes +proc newVkBufferCaptureDescriptorDataInfoEXT*(sType: VkStructureType, pNext: pointer = nil, buffer: VkBuffer): VkBufferCaptureDescriptorDataInfoEXT = + result.sType = sType + result.pNext = pNext + result.buffer = buffer -proc newVkShaderStatisticsInfoAMD*(shaderStageMask: VkShaderStageFlags, resourceUsage: VkShaderResourceUsageAMD, numPhysicalVgprs: uint32, numPhysicalSgprs: uint32, numAvailableVgprs: uint32, numAvailableSgprs: uint32, computeWorkGroupSize: array[3, uint32]): VkShaderStatisticsInfoAMD = - result.shaderStageMask = shaderStageMask - result.resourceUsage = resourceUsage - result.numPhysicalVgprs = numPhysicalVgprs - result.numPhysicalSgprs = numPhysicalSgprs - result.numAvailableVgprs = numAvailableVgprs - result.numAvailableSgprs = numAvailableSgprs - result.computeWorkGroupSize = computeWorkGroupSize +proc newVkImageCaptureDescriptorDataInfoEXT*(sType: VkStructureType, pNext: pointer = nil, image: VkImage): VkImageCaptureDescriptorDataInfoEXT = + result.sType = sType + result.pNext = pNext + result.image = image -proc newVkDeviceQueueGlobalPriorityCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, globalPriority: VkQueueGlobalPriorityEXT): VkDeviceQueueGlobalPriorityCreateInfoEXT = +proc newVkImageViewCaptureDescriptorDataInfoEXT*(sType: VkStructureType, pNext: pointer = nil, imageView: VkImageView): VkImageViewCaptureDescriptorDataInfoEXT = result.sType = sType result.pNext = pNext - result.globalPriority = globalPriority + result.imageView = imageView -proc newVkDebugUtilsObjectNameInfoEXT*(sType: VkStructureType, pNext: pointer = nil, objectType: VkObjectType, objectHandle: uint64, pObjectName: cstring): VkDebugUtilsObjectNameInfoEXT = +proc newVkSamplerCaptureDescriptorDataInfoEXT*(sType: VkStructureType, pNext: pointer = nil, sampler: VkSampler): VkSamplerCaptureDescriptorDataInfoEXT = result.sType = sType result.pNext = pNext - result.objectType = objectType - result.objectHandle = objectHandle - result.pObjectName = pObjectName + result.sampler = sampler + +proc newVkAccelerationStructureCaptureDescriptorDataInfoEXT*(sType: VkStructureType, pNext: pointer = nil, accelerationStructure: VkAccelerationStructureKHR, accelerationStructureNV: VkAccelerationStructureNV): VkAccelerationStructureCaptureDescriptorDataInfoEXT = + result.sType = sType + result.pNext = pNext + result.accelerationStructure = accelerationStructure + result.accelerationStructureNV = accelerationStructureNV -proc newVkDebugUtilsObjectTagInfoEXT*(sType: VkStructureType, pNext: pointer = nil, objectType: VkObjectType, objectHandle: uint64, tagName: uint64, tagSize: uint, pTag: pointer = nil): VkDebugUtilsObjectTagInfoEXT = +proc newVkOpaqueCaptureDescriptorDataCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, opaqueCaptureDescriptorData: pointer = nil): VkOpaqueCaptureDescriptorDataCreateInfoEXT = result.sType = sType result.pNext = pNext - result.objectType = objectType - result.objectHandle = objectHandle - result.tagName = tagName - result.tagSize = tagSize - result.pTag = pTag + result.opaqueCaptureDescriptorData = opaqueCaptureDescriptorData -proc newVkDebugUtilsLabelEXT*(sType: VkStructureType, pNext: pointer = nil, pLabelName: cstring, color: array[4, float32]): VkDebugUtilsLabelEXT = +proc newVkPhysicalDeviceShaderIntegerDotProductFeatures*(sType: VkStructureType, pNext: pointer = nil, shaderIntegerDotProduct: VkBool32): VkPhysicalDeviceShaderIntegerDotProductFeatures = result.sType = sType result.pNext = pNext - result.pLabelName = pLabelName - result.color = color + result.shaderIntegerDotProduct = shaderIntegerDotProduct -proc newVkDebugUtilsMessengerCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkDebugUtilsMessengerCreateFlagsEXT = 0.VkDebugUtilsMessengerCreateFlagsEXT, messageSeverity: VkDebugUtilsMessageSeverityFlagsEXT, messageType: VkDebugUtilsMessageTypeFlagsEXT, pfnUserCallback: PFN_vkDebugUtilsMessengerCallbackEXT, pUserData: pointer = nil): VkDebugUtilsMessengerCreateInfoEXT = +proc newVkPhysicalDeviceShaderIntegerDotProductProperties*(sType: VkStructureType, pNext: pointer = nil, integerDotProduct8BitUnsignedAccelerated: VkBool32, integerDotProduct8BitSignedAccelerated: VkBool32, integerDotProduct8BitMixedSignednessAccelerated: VkBool32, integerDotProduct4x8BitPackedUnsignedAccelerated: VkBool32, integerDotProduct4x8BitPackedSignedAccelerated: VkBool32, integerDotProduct4x8BitPackedMixedSignednessAccelerated: VkBool32, integerDotProduct16BitUnsignedAccelerated: VkBool32, integerDotProduct16BitSignedAccelerated: VkBool32, integerDotProduct16BitMixedSignednessAccelerated: VkBool32, integerDotProduct32BitUnsignedAccelerated: VkBool32, integerDotProduct32BitSignedAccelerated: VkBool32, integerDotProduct32BitMixedSignednessAccelerated: VkBool32, integerDotProduct64BitUnsignedAccelerated: VkBool32, integerDotProduct64BitSignedAccelerated: VkBool32, integerDotProduct64BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating8BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating8BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating16BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating16BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating32BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating32BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating64BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating64BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated: VkBool32): VkPhysicalDeviceShaderIntegerDotProductProperties = result.sType = sType result.pNext = pNext - result.flags = flags - result.messageSeverity = messageSeverity - result.messageType = messageType - result.pfnUserCallback = pfnUserCallback - result.pUserData = pUserData + result.integerDotProduct8BitUnsignedAccelerated = integerDotProduct8BitUnsignedAccelerated + result.integerDotProduct8BitSignedAccelerated = integerDotProduct8BitSignedAccelerated + result.integerDotProduct8BitMixedSignednessAccelerated = integerDotProduct8BitMixedSignednessAccelerated + result.integerDotProduct4x8BitPackedUnsignedAccelerated = integerDotProduct4x8BitPackedUnsignedAccelerated + result.integerDotProduct4x8BitPackedSignedAccelerated = integerDotProduct4x8BitPackedSignedAccelerated + result.integerDotProduct4x8BitPackedMixedSignednessAccelerated = integerDotProduct4x8BitPackedMixedSignednessAccelerated + result.integerDotProduct16BitUnsignedAccelerated = integerDotProduct16BitUnsignedAccelerated + result.integerDotProduct16BitSignedAccelerated = integerDotProduct16BitSignedAccelerated + result.integerDotProduct16BitMixedSignednessAccelerated = integerDotProduct16BitMixedSignednessAccelerated + result.integerDotProduct32BitUnsignedAccelerated = integerDotProduct32BitUnsignedAccelerated + result.integerDotProduct32BitSignedAccelerated = integerDotProduct32BitSignedAccelerated + result.integerDotProduct32BitMixedSignednessAccelerated = integerDotProduct32BitMixedSignednessAccelerated + result.integerDotProduct64BitUnsignedAccelerated = integerDotProduct64BitUnsignedAccelerated + result.integerDotProduct64BitSignedAccelerated = integerDotProduct64BitSignedAccelerated + result.integerDotProduct64BitMixedSignednessAccelerated = integerDotProduct64BitMixedSignednessAccelerated + result.integerDotProductAccumulatingSaturating8BitUnsignedAccelerated = integerDotProductAccumulatingSaturating8BitUnsignedAccelerated + result.integerDotProductAccumulatingSaturating8BitSignedAccelerated = integerDotProductAccumulatingSaturating8BitSignedAccelerated + result.integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated = integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated + result.integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated = integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated + result.integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated = integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated + result.integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated = integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated + result.integerDotProductAccumulatingSaturating16BitUnsignedAccelerated = integerDotProductAccumulatingSaturating16BitUnsignedAccelerated + result.integerDotProductAccumulatingSaturating16BitSignedAccelerated = integerDotProductAccumulatingSaturating16BitSignedAccelerated + result.integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated = integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated + result.integerDotProductAccumulatingSaturating32BitUnsignedAccelerated = integerDotProductAccumulatingSaturating32BitUnsignedAccelerated + result.integerDotProductAccumulatingSaturating32BitSignedAccelerated = integerDotProductAccumulatingSaturating32BitSignedAccelerated + result.integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated = integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated + result.integerDotProductAccumulatingSaturating64BitUnsignedAccelerated = integerDotProductAccumulatingSaturating64BitUnsignedAccelerated + result.integerDotProductAccumulatingSaturating64BitSignedAccelerated = integerDotProductAccumulatingSaturating64BitSignedAccelerated + result.integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated = integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated -proc newVkDebugUtilsMessengerCallbackDataEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkDebugUtilsMessengerCallbackDataFlagsEXT = 0.VkDebugUtilsMessengerCallbackDataFlagsEXT, pMessageIdName: cstring, messageIdNumber: int32, pMessage: cstring, queueLabelCount: uint32, pQueueLabels: ptr VkDebugUtilsLabelEXT, cmdBufLabelCount: uint32, pCmdBufLabels: ptr VkDebugUtilsLabelEXT, objectCount: uint32, pObjects: ptr VkDebugUtilsObjectNameInfoEXT): VkDebugUtilsMessengerCallbackDataEXT = +proc newVkPhysicalDeviceDrmPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, hasPrimary: VkBool32, hasRender: VkBool32, primaryMajor: int64, primaryMinor: int64, renderMajor: int64, renderMinor: int64): VkPhysicalDeviceDrmPropertiesEXT = result.sType = sType result.pNext = pNext - result.flags = flags - result.pMessageIdName = pMessageIdName - result.messageIdNumber = messageIdNumber - result.pMessage = pMessage - result.queueLabelCount = queueLabelCount - result.pQueueLabels = pQueueLabels - result.cmdBufLabelCount = cmdBufLabelCount - result.pCmdBufLabels = pCmdBufLabels - result.objectCount = objectCount - result.pObjects = pObjects + result.hasPrimary = hasPrimary + result.hasRender = hasRender + result.primaryMajor = primaryMajor + result.primaryMinor = primaryMinor + result.renderMajor = renderMajor + result.renderMinor = renderMinor -proc newVkImportMemoryHostPointerInfoEXT*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, pHostPointer: pointer = nil): VkImportMemoryHostPointerInfoEXT = +proc newVkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, fragmentShaderBarycentric: VkBool32): VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR = result.sType = sType result.pNext = pNext - result.handleType = handleType - result.pHostPointer = pHostPointer + result.fragmentShaderBarycentric = fragmentShaderBarycentric -proc newVkMemoryHostPointerPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryHostPointerPropertiesEXT = +proc newVkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, triStripVertexOrderIndependentOfProvokingVertex: VkBool32): VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR = result.sType = sType result.pNext = pNext - result.memoryTypeBits = memoryTypeBits + result.triStripVertexOrderIndependentOfProvokingVertex = triStripVertexOrderIndependentOfProvokingVertex -proc newVkPhysicalDeviceExternalMemoryHostPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, minImportedHostPointerAlignment: VkDeviceSize): VkPhysicalDeviceExternalMemoryHostPropertiesEXT = +proc newVkPhysicalDeviceRayTracingMotionBlurFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, rayTracingMotionBlur: VkBool32, rayTracingMotionBlurPipelineTraceRaysIndirect: VkBool32): VkPhysicalDeviceRayTracingMotionBlurFeaturesNV = result.sType = sType result.pNext = pNext - result.minImportedHostPointerAlignment = minImportedHostPointerAlignment + result.rayTracingMotionBlur = rayTracingMotionBlur + result.rayTracingMotionBlurPipelineTraceRaysIndirect = rayTracingMotionBlurPipelineTraceRaysIndirect -proc newVkPhysicalDeviceConservativeRasterizationPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, primitiveOverestimationSize: float32, maxExtraPrimitiveOverestimationSize: float32, extraPrimitiveOverestimationSizeGranularity: float32, primitiveUnderestimation: VkBool32, conservativePointAndLineRasterization: VkBool32, degenerateTrianglesRasterized: VkBool32, degenerateLinesRasterized: VkBool32, fullyCoveredFragmentShaderInputVariable: VkBool32, conservativeRasterizationPostDepthCoverage: VkBool32): VkPhysicalDeviceConservativeRasterizationPropertiesEXT = +proc newVkAccelerationStructureGeometryMotionTrianglesDataNV*(sType: VkStructureType, pNext: pointer = nil, vertexData: VkDeviceOrHostAddressConstKHR): VkAccelerationStructureGeometryMotionTrianglesDataNV = result.sType = sType result.pNext = pNext - result.primitiveOverestimationSize = primitiveOverestimationSize - result.maxExtraPrimitiveOverestimationSize = maxExtraPrimitiveOverestimationSize - result.extraPrimitiveOverestimationSizeGranularity = extraPrimitiveOverestimationSizeGranularity - result.primitiveUnderestimation = primitiveUnderestimation - result.conservativePointAndLineRasterization = conservativePointAndLineRasterization - result.degenerateTrianglesRasterized = degenerateTrianglesRasterized - result.degenerateLinesRasterized = degenerateLinesRasterized - result.fullyCoveredFragmentShaderInputVariable = fullyCoveredFragmentShaderInputVariable - result.conservativeRasterizationPostDepthCoverage = conservativeRasterizationPostDepthCoverage + result.vertexData = vertexData -proc newVkCalibratedTimestampInfoEXT*(sType: VkStructureType, pNext: pointer = nil, timeDomain: VkTimeDomainEXT): VkCalibratedTimestampInfoEXT = +proc newVkAccelerationStructureMotionInfoNV*(sType: VkStructureType, pNext: pointer = nil, maxInstances: uint32, flags: VkAccelerationStructureMotionInfoFlagsNV = 0.VkAccelerationStructureMotionInfoFlagsNV): VkAccelerationStructureMotionInfoNV = result.sType = sType result.pNext = pNext - result.timeDomain = timeDomain + result.maxInstances = maxInstances + result.flags = flags -proc newVkPhysicalDeviceShaderCorePropertiesAMD*(sType: VkStructureType, pNext: pointer = nil, shaderEngineCount: uint32, shaderArraysPerEngineCount: uint32, computeUnitsPerShaderArray: uint32, simdPerComputeUnit: uint32, wavefrontsPerSimd: uint32, wavefrontSize: uint32, sgprsPerSimd: uint32, minSgprAllocation: uint32, maxSgprAllocation: uint32, sgprAllocationGranularity: uint32, vgprsPerSimd: uint32, minVgprAllocation: uint32, maxVgprAllocation: uint32, vgprAllocationGranularity: uint32): VkPhysicalDeviceShaderCorePropertiesAMD = +proc newVkSRTDataNV*(sx: float32, a: float32, b: float32, pvx: float32, sy: float32, c: float32, pvy: float32, sz: float32, pvz: float32, qx: float32, qy: float32, qz: float32, qw: float32, tx: float32, ty: float32, tz: float32): VkSRTDataNV = + result.sx = sx + result.a = a + result.b = b + result.pvx = pvx + result.sy = sy + result.c = c + result.pvy = pvy + result.sz = sz + result.pvz = pvz + result.qx = qx + result.qy = qy + result.qz = qz + result.qw = qw + result.tx = tx + result.ty = ty + result.tz = tz + +proc newVkAccelerationStructureSRTMotionInstanceNV*(transformT0: VkSRTDataNV, transformT1: VkSRTDataNV, instanceCustomIndex: uint32, mask: uint32, instanceShaderBindingTableRecordOffset: uint32, flags: VkGeometryInstanceFlagsKHR = 0.VkGeometryInstanceFlagsKHR, accelerationStructureReference: uint64): VkAccelerationStructureSRTMotionInstanceNV = + result.transformT0 = transformT0 + result.transformT1 = transformT1 + result.instanceCustomIndex = instanceCustomIndex + result.mask = mask + result.instanceShaderBindingTableRecordOffset = instanceShaderBindingTableRecordOffset + result.flags = flags + result.accelerationStructureReference = accelerationStructureReference + +proc newVkAccelerationStructureMatrixMotionInstanceNV*(transformT0: VkTransformMatrixKHR, transformT1: VkTransformMatrixKHR, instanceCustomIndex: uint32, mask: uint32, instanceShaderBindingTableRecordOffset: uint32, flags: VkGeometryInstanceFlagsKHR = 0.VkGeometryInstanceFlagsKHR, accelerationStructureReference: uint64): VkAccelerationStructureMatrixMotionInstanceNV = + result.transformT0 = transformT0 + result.transformT1 = transformT1 + result.instanceCustomIndex = instanceCustomIndex + result.mask = mask + result.instanceShaderBindingTableRecordOffset = instanceShaderBindingTableRecordOffset + result.flags = flags + result.accelerationStructureReference = accelerationStructureReference + +proc newVkAccelerationStructureMotionInstanceNV*(`type`: VkAccelerationStructureMotionInstanceTypeNV, flags: VkAccelerationStructureMotionInstanceFlagsNV = 0.VkAccelerationStructureMotionInstanceFlagsNV, data: VkAccelerationStructureMotionInstanceDataNV): VkAccelerationStructureMotionInstanceNV = + result.`type` = `type` + result.flags = flags + result.data = data + +proc newVkMemoryGetRemoteAddressInfoNV*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetRemoteAddressInfoNV = result.sType = sType result.pNext = pNext - result.shaderEngineCount = shaderEngineCount - result.shaderArraysPerEngineCount = shaderArraysPerEngineCount - result.computeUnitsPerShaderArray = computeUnitsPerShaderArray - result.simdPerComputeUnit = simdPerComputeUnit - result.wavefrontsPerSimd = wavefrontsPerSimd - result.wavefrontSize = wavefrontSize - result.sgprsPerSimd = sgprsPerSimd - result.minSgprAllocation = minSgprAllocation - result.maxSgprAllocation = maxSgprAllocation - result.sgprAllocationGranularity = sgprAllocationGranularity - result.vgprsPerSimd = vgprsPerSimd - result.minVgprAllocation = minVgprAllocation - result.maxVgprAllocation = maxVgprAllocation - result.vgprAllocationGranularity = vgprAllocationGranularity + result.memory = memory + result.handleType = handleType -proc newVkPhysicalDeviceShaderCoreProperties2AMD*(sType: VkStructureType, pNext: pointer = nil, shaderCoreFeatures: VkShaderCorePropertiesFlagsAMD, activeComputeUnitCount: uint32): VkPhysicalDeviceShaderCoreProperties2AMD = +proc newVkImportMemoryBufferCollectionFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, collection: VkBufferCollectionFUCHSIA, index: uint32): VkImportMemoryBufferCollectionFUCHSIA = result.sType = sType result.pNext = pNext - result.shaderCoreFeatures = shaderCoreFeatures - result.activeComputeUnitCount = activeComputeUnitCount + result.collection = collection + result.index = index -proc newVkPipelineRasterizationConservativeStateCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineRasterizationConservativeStateCreateFlagsEXT = 0.VkPipelineRasterizationConservativeStateCreateFlagsEXT, conservativeRasterizationMode: VkConservativeRasterizationModeEXT, extraPrimitiveOverestimationSize: float32): VkPipelineRasterizationConservativeStateCreateInfoEXT = +proc newVkBufferCollectionImageCreateInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, collection: VkBufferCollectionFUCHSIA, index: uint32): VkBufferCollectionImageCreateInfoFUCHSIA = result.sType = sType result.pNext = pNext - result.flags = flags - result.conservativeRasterizationMode = conservativeRasterizationMode - result.extraPrimitiveOverestimationSize = extraPrimitiveOverestimationSize + result.collection = collection + result.index = index -proc newVkPhysicalDeviceDescriptorIndexingFeatures*(sType: VkStructureType, pNext: pointer = nil, shaderInputAttachmentArrayDynamicIndexing: VkBool32, shaderUniformTexelBufferArrayDynamicIndexing: VkBool32, shaderStorageTexelBufferArrayDynamicIndexing: VkBool32, shaderUniformBufferArrayNonUniformIndexing: VkBool32, shaderSampledImageArrayNonUniformIndexing: VkBool32, shaderStorageBufferArrayNonUniformIndexing: VkBool32, shaderStorageImageArrayNonUniformIndexing: VkBool32, shaderInputAttachmentArrayNonUniformIndexing: VkBool32, shaderUniformTexelBufferArrayNonUniformIndexing: VkBool32, shaderStorageTexelBufferArrayNonUniformIndexing: VkBool32, descriptorBindingUniformBufferUpdateAfterBind: VkBool32, descriptorBindingSampledImageUpdateAfterBind: VkBool32, descriptorBindingStorageImageUpdateAfterBind: VkBool32, descriptorBindingStorageBufferUpdateAfterBind: VkBool32, descriptorBindingUniformTexelBufferUpdateAfterBind: VkBool32, descriptorBindingStorageTexelBufferUpdateAfterBind: VkBool32, descriptorBindingUpdateUnusedWhilePending: VkBool32, descriptorBindingPartiallyBound: VkBool32, descriptorBindingVariableDescriptorCount: VkBool32, runtimeDescriptorArray: VkBool32): VkPhysicalDeviceDescriptorIndexingFeatures = +proc newVkBufferCollectionBufferCreateInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, collection: VkBufferCollectionFUCHSIA, index: uint32): VkBufferCollectionBufferCreateInfoFUCHSIA = result.sType = sType result.pNext = pNext - result.shaderInputAttachmentArrayDynamicIndexing = shaderInputAttachmentArrayDynamicIndexing - result.shaderUniformTexelBufferArrayDynamicIndexing = shaderUniformTexelBufferArrayDynamicIndexing - result.shaderStorageTexelBufferArrayDynamicIndexing = shaderStorageTexelBufferArrayDynamicIndexing - result.shaderUniformBufferArrayNonUniformIndexing = shaderUniformBufferArrayNonUniformIndexing - result.shaderSampledImageArrayNonUniformIndexing = shaderSampledImageArrayNonUniformIndexing - result.shaderStorageBufferArrayNonUniformIndexing = shaderStorageBufferArrayNonUniformIndexing - result.shaderStorageImageArrayNonUniformIndexing = shaderStorageImageArrayNonUniformIndexing - result.shaderInputAttachmentArrayNonUniformIndexing = shaderInputAttachmentArrayNonUniformIndexing - result.shaderUniformTexelBufferArrayNonUniformIndexing = shaderUniformTexelBufferArrayNonUniformIndexing - result.shaderStorageTexelBufferArrayNonUniformIndexing = shaderStorageTexelBufferArrayNonUniformIndexing - result.descriptorBindingUniformBufferUpdateAfterBind = descriptorBindingUniformBufferUpdateAfterBind - result.descriptorBindingSampledImageUpdateAfterBind = descriptorBindingSampledImageUpdateAfterBind - result.descriptorBindingStorageImageUpdateAfterBind = descriptorBindingStorageImageUpdateAfterBind - result.descriptorBindingStorageBufferUpdateAfterBind = descriptorBindingStorageBufferUpdateAfterBind - result.descriptorBindingUniformTexelBufferUpdateAfterBind = descriptorBindingUniformTexelBufferUpdateAfterBind - result.descriptorBindingStorageTexelBufferUpdateAfterBind = descriptorBindingStorageTexelBufferUpdateAfterBind - result.descriptorBindingUpdateUnusedWhilePending = descriptorBindingUpdateUnusedWhilePending - result.descriptorBindingPartiallyBound = descriptorBindingPartiallyBound - result.descriptorBindingVariableDescriptorCount = descriptorBindingVariableDescriptorCount - result.runtimeDescriptorArray = runtimeDescriptorArray + result.collection = collection + result.index = index -proc newVkPhysicalDeviceDescriptorIndexingProperties*(sType: VkStructureType, pNext: pointer = nil, maxUpdateAfterBindDescriptorsInAllPools: uint32, shaderUniformBufferArrayNonUniformIndexingNative: VkBool32, shaderSampledImageArrayNonUniformIndexingNative: VkBool32, shaderStorageBufferArrayNonUniformIndexingNative: VkBool32, shaderStorageImageArrayNonUniformIndexingNative: VkBool32, shaderInputAttachmentArrayNonUniformIndexingNative: VkBool32, robustBufferAccessUpdateAfterBind: VkBool32, quadDivergentImplicitLod: VkBool32, maxPerStageDescriptorUpdateAfterBindSamplers: uint32, maxPerStageDescriptorUpdateAfterBindUniformBuffers: uint32, maxPerStageDescriptorUpdateAfterBindStorageBuffers: uint32, maxPerStageDescriptorUpdateAfterBindSampledImages: uint32, maxPerStageDescriptorUpdateAfterBindStorageImages: uint32, maxPerStageDescriptorUpdateAfterBindInputAttachments: uint32, maxPerStageUpdateAfterBindResources: uint32, maxDescriptorSetUpdateAfterBindSamplers: uint32, maxDescriptorSetUpdateAfterBindUniformBuffers: uint32, maxDescriptorSetUpdateAfterBindUniformBuffersDynamic: uint32, maxDescriptorSetUpdateAfterBindStorageBuffers: uint32, maxDescriptorSetUpdateAfterBindStorageBuffersDynamic: uint32, maxDescriptorSetUpdateAfterBindSampledImages: uint32, maxDescriptorSetUpdateAfterBindStorageImages: uint32, maxDescriptorSetUpdateAfterBindInputAttachments: uint32): VkPhysicalDeviceDescriptorIndexingProperties = +proc newVkBufferCollectionCreateInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, collectionToken: zx_handle_t): VkBufferCollectionCreateInfoFUCHSIA = result.sType = sType result.pNext = pNext - result.maxUpdateAfterBindDescriptorsInAllPools = maxUpdateAfterBindDescriptorsInAllPools - result.shaderUniformBufferArrayNonUniformIndexingNative = shaderUniformBufferArrayNonUniformIndexingNative - result.shaderSampledImageArrayNonUniformIndexingNative = shaderSampledImageArrayNonUniformIndexingNative - result.shaderStorageBufferArrayNonUniformIndexingNative = shaderStorageBufferArrayNonUniformIndexingNative - result.shaderStorageImageArrayNonUniformIndexingNative = shaderStorageImageArrayNonUniformIndexingNative - result.shaderInputAttachmentArrayNonUniformIndexingNative = shaderInputAttachmentArrayNonUniformIndexingNative - result.robustBufferAccessUpdateAfterBind = robustBufferAccessUpdateAfterBind - result.quadDivergentImplicitLod = quadDivergentImplicitLod - result.maxPerStageDescriptorUpdateAfterBindSamplers = maxPerStageDescriptorUpdateAfterBindSamplers - result.maxPerStageDescriptorUpdateAfterBindUniformBuffers = maxPerStageDescriptorUpdateAfterBindUniformBuffers - result.maxPerStageDescriptorUpdateAfterBindStorageBuffers = maxPerStageDescriptorUpdateAfterBindStorageBuffers - result.maxPerStageDescriptorUpdateAfterBindSampledImages = maxPerStageDescriptorUpdateAfterBindSampledImages - result.maxPerStageDescriptorUpdateAfterBindStorageImages = maxPerStageDescriptorUpdateAfterBindStorageImages - result.maxPerStageDescriptorUpdateAfterBindInputAttachments = maxPerStageDescriptorUpdateAfterBindInputAttachments - result.maxPerStageUpdateAfterBindResources = maxPerStageUpdateAfterBindResources - result.maxDescriptorSetUpdateAfterBindSamplers = maxDescriptorSetUpdateAfterBindSamplers - result.maxDescriptorSetUpdateAfterBindUniformBuffers = maxDescriptorSetUpdateAfterBindUniformBuffers - result.maxDescriptorSetUpdateAfterBindUniformBuffersDynamic = maxDescriptorSetUpdateAfterBindUniformBuffersDynamic - result.maxDescriptorSetUpdateAfterBindStorageBuffers = maxDescriptorSetUpdateAfterBindStorageBuffers - result.maxDescriptorSetUpdateAfterBindStorageBuffersDynamic = maxDescriptorSetUpdateAfterBindStorageBuffersDynamic - result.maxDescriptorSetUpdateAfterBindSampledImages = maxDescriptorSetUpdateAfterBindSampledImages - result.maxDescriptorSetUpdateAfterBindStorageImages = maxDescriptorSetUpdateAfterBindStorageImages - result.maxDescriptorSetUpdateAfterBindInputAttachments = maxDescriptorSetUpdateAfterBindInputAttachments + result.collectionToken = collectionToken -proc newVkDescriptorSetLayoutBindingFlagsCreateInfo*(sType: VkStructureType, pNext: pointer = nil, bindingCount: uint32, pBindingFlags: ptr VkDescriptorBindingFlags): VkDescriptorSetLayoutBindingFlagsCreateInfo = +proc newVkBufferCollectionPropertiesFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, memoryTypeBits: uint32, bufferCount: uint32, createInfoIndex: uint32, sysmemPixelFormat: uint64, formatFeatures: VkFormatFeatureFlags, sysmemColorSpaceIndex: VkSysmemColorSpaceFUCHSIA, samplerYcbcrConversionComponents: VkComponentMapping, suggestedYcbcrModel: VkSamplerYcbcrModelConversion, suggestedYcbcrRange: VkSamplerYcbcrRange, suggestedXChromaOffset: VkChromaLocation, suggestedYChromaOffset: VkChromaLocation): VkBufferCollectionPropertiesFUCHSIA = result.sType = sType result.pNext = pNext - result.bindingCount = bindingCount - result.pBindingFlags = pBindingFlags + result.memoryTypeBits = memoryTypeBits + result.bufferCount = bufferCount + result.createInfoIndex = createInfoIndex + result.sysmemPixelFormat = sysmemPixelFormat + result.formatFeatures = formatFeatures + result.sysmemColorSpaceIndex = sysmemColorSpaceIndex + result.samplerYcbcrConversionComponents = samplerYcbcrConversionComponents + result.suggestedYcbcrModel = suggestedYcbcrModel + result.suggestedYcbcrRange = suggestedYcbcrRange + result.suggestedXChromaOffset = suggestedXChromaOffset + result.suggestedYChromaOffset = suggestedYChromaOffset -proc newVkDescriptorSetVariableDescriptorCountAllocateInfo*(sType: VkStructureType, pNext: pointer = nil, descriptorSetCount: uint32, pDescriptorCounts: ptr uint32): VkDescriptorSetVariableDescriptorCountAllocateInfo = +proc newVkBufferConstraintsInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, createInfo: VkBufferCreateInfo, requiredFormatFeatures: VkFormatFeatureFlags, bufferCollectionConstraints: VkBufferCollectionConstraintsInfoFUCHSIA): VkBufferConstraintsInfoFUCHSIA = result.sType = sType result.pNext = pNext - result.descriptorSetCount = descriptorSetCount - result.pDescriptorCounts = pDescriptorCounts + result.createInfo = createInfo + result.requiredFormatFeatures = requiredFormatFeatures + result.bufferCollectionConstraints = bufferCollectionConstraints -proc newVkDescriptorSetVariableDescriptorCountLayoutSupport*(sType: VkStructureType, pNext: pointer = nil, maxVariableDescriptorCount: uint32): VkDescriptorSetVariableDescriptorCountLayoutSupport = +proc newVkSysmemColorSpaceFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, colorSpace: uint32): VkSysmemColorSpaceFUCHSIA = result.sType = sType result.pNext = pNext - result.maxVariableDescriptorCount = maxVariableDescriptorCount + result.colorSpace = colorSpace -proc newVkAttachmentDescription2*(sType: VkStructureType, pNext: pointer = nil, flags: VkAttachmentDescriptionFlags = 0.VkAttachmentDescriptionFlags, format: VkFormat, samples: VkSampleCountFlagBits, loadOp: VkAttachmentLoadOp, storeOp: VkAttachmentStoreOp, stencilLoadOp: VkAttachmentLoadOp, stencilStoreOp: VkAttachmentStoreOp, initialLayout: VkImageLayout, finalLayout: VkImageLayout): VkAttachmentDescription2 = +proc newVkImageFormatConstraintsInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, imageCreateInfo: VkImageCreateInfo, requiredFormatFeatures: VkFormatFeatureFlags, flags: VkImageFormatConstraintsFlagsFUCHSIA = 0.VkImageFormatConstraintsFlagsFUCHSIA, sysmemPixelFormat: uint64, colorSpaceCount: uint32, pColorSpaces: ptr VkSysmemColorSpaceFUCHSIA): VkImageFormatConstraintsInfoFUCHSIA = result.sType = sType result.pNext = pNext + result.imageCreateInfo = imageCreateInfo + result.requiredFormatFeatures = requiredFormatFeatures result.flags = flags - result.format = format - result.samples = samples - result.loadOp = loadOp - result.storeOp = storeOp - result.stencilLoadOp = stencilLoadOp - result.stencilStoreOp = stencilStoreOp - result.initialLayout = initialLayout - result.finalLayout = finalLayout + result.sysmemPixelFormat = sysmemPixelFormat + result.colorSpaceCount = colorSpaceCount + result.pColorSpaces = pColorSpaces -proc newVkAttachmentReference2*(sType: VkStructureType, pNext: pointer = nil, attachment: uint32, layout: VkImageLayout, aspectMask: VkImageAspectFlags): VkAttachmentReference2 = +proc newVkImageConstraintsInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, formatConstraintsCount: uint32, pFormatConstraints: ptr VkImageFormatConstraintsInfoFUCHSIA, bufferCollectionConstraints: VkBufferCollectionConstraintsInfoFUCHSIA, flags: VkImageConstraintsInfoFlagsFUCHSIA = 0.VkImageConstraintsInfoFlagsFUCHSIA): VkImageConstraintsInfoFUCHSIA = result.sType = sType result.pNext = pNext - result.attachment = attachment - result.layout = layout - result.aspectMask = aspectMask + result.formatConstraintsCount = formatConstraintsCount + result.pFormatConstraints = pFormatConstraints + result.bufferCollectionConstraints = bufferCollectionConstraints + result.flags = flags -proc newVkSubpassDescription2*(sType: VkStructureType, pNext: pointer = nil, flags: VkSubpassDescriptionFlags = 0.VkSubpassDescriptionFlags, pipelineBindPoint: VkPipelineBindPoint, viewMask: uint32, inputAttachmentCount: uint32, pInputAttachments: ptr VkAttachmentReference2, colorAttachmentCount: uint32, pColorAttachments: ptr VkAttachmentReference2, pResolveAttachments: ptr VkAttachmentReference2, pDepthStencilAttachment: ptr VkAttachmentReference2, preserveAttachmentCount: uint32, pPreserveAttachments: ptr uint32): VkSubpassDescription2 = +proc newVkBufferCollectionConstraintsInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, minBufferCount: uint32, maxBufferCount: uint32, minBufferCountForCamping: uint32, minBufferCountForDedicatedSlack: uint32, minBufferCountForSharedSlack: uint32): VkBufferCollectionConstraintsInfoFUCHSIA = result.sType = sType result.pNext = pNext - result.flags = flags - result.pipelineBindPoint = pipelineBindPoint - result.viewMask = viewMask - result.inputAttachmentCount = inputAttachmentCount - result.pInputAttachments = pInputAttachments - result.colorAttachmentCount = colorAttachmentCount - result.pColorAttachments = pColorAttachments - result.pResolveAttachments = pResolveAttachments - result.pDepthStencilAttachment = pDepthStencilAttachment - result.preserveAttachmentCount = preserveAttachmentCount - result.pPreserveAttachments = pPreserveAttachments + result.minBufferCount = minBufferCount + result.maxBufferCount = maxBufferCount + result.minBufferCountForCamping = minBufferCountForCamping + result.minBufferCountForDedicatedSlack = minBufferCountForDedicatedSlack + result.minBufferCountForSharedSlack = minBufferCountForSharedSlack -proc newVkSubpassDependency2*(sType: VkStructureType, pNext: pointer = nil, srcSubpass: uint32, dstSubpass: uint32, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags, dependencyFlags: VkDependencyFlags, viewOffset: int32): VkSubpassDependency2 = +proc newVkCudaModuleCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, dataSize: uint, pData: pointer = nil): VkCudaModuleCreateInfoNV = result.sType = sType result.pNext = pNext - result.srcSubpass = srcSubpass - result.dstSubpass = dstSubpass - result.srcStageMask = srcStageMask - result.dstStageMask = dstStageMask - result.srcAccessMask = srcAccessMask - result.dstAccessMask = dstAccessMask - result.dependencyFlags = dependencyFlags - result.viewOffset = viewOffset + result.dataSize = dataSize + result.pData = pData -proc newVkRenderPassCreateInfo2*(sType: VkStructureType, pNext: pointer = nil, flags: VkRenderPassCreateFlags = 0.VkRenderPassCreateFlags, attachmentCount: uint32, pAttachments: ptr VkAttachmentDescription2, subpassCount: uint32, pSubpasses: ptr VkSubpassDescription2, dependencyCount: uint32, pDependencies: ptr VkSubpassDependency2, correlatedViewMaskCount: uint32, pCorrelatedViewMasks: ptr uint32): VkRenderPassCreateInfo2 = +proc newVkCudaFunctionCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, module: VkCudaModuleNV, pName: cstring): VkCudaFunctionCreateInfoNV = result.sType = sType result.pNext = pNext - result.flags = flags - result.attachmentCount = attachmentCount - result.pAttachments = pAttachments - result.subpassCount = subpassCount - result.pSubpasses = pSubpasses - result.dependencyCount = dependencyCount - result.pDependencies = pDependencies - result.correlatedViewMaskCount = correlatedViewMaskCount - result.pCorrelatedViewMasks = pCorrelatedViewMasks + result.module = module + result.pName = pName -proc newVkSubpassBeginInfo*(sType: VkStructureType, pNext: pointer = nil, contents: VkSubpassContents): VkSubpassBeginInfo = +proc newVkCudaLaunchInfoNV*(sType: VkStructureType, pNext: pointer = nil, function: VkCudaFunctionNV, gridDimX: uint32, gridDimY: uint32, gridDimZ: uint32, blockDimX: uint32, blockDimY: uint32, blockDimZ: uint32, sharedMemBytes: uint32, paramCount: uint, pParams: ptr pointer, extraCount: uint, pExtras: ptr pointer): VkCudaLaunchInfoNV = result.sType = sType result.pNext = pNext - result.contents = contents + result.function = function + result.gridDimX = gridDimX + result.gridDimY = gridDimY + result.gridDimZ = gridDimZ + result.blockDimX = blockDimX + result.blockDimY = blockDimY + result.blockDimZ = blockDimZ + result.sharedMemBytes = sharedMemBytes + result.paramCount = paramCount + result.pParams = pParams + result.extraCount = extraCount + result.pExtras = pExtras -proc newVkSubpassEndInfo*(sType: VkStructureType, pNext: pointer = nil): VkSubpassEndInfo = +proc newVkPhysicalDeviceRGBA10X6FormatsFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, formatRgba10x6WithoutYCbCrSampler: VkBool32): VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT = result.sType = sType result.pNext = pNext + result.formatRgba10x6WithoutYCbCrSampler = formatRgba10x6WithoutYCbCrSampler -proc newVkPhysicalDeviceTimelineSemaphoreFeatures*(sType: VkStructureType, pNext: pointer = nil, timelineSemaphore: VkBool32): VkPhysicalDeviceTimelineSemaphoreFeatures = +proc newVkFormatProperties3*(sType: VkStructureType, pNext: pointer = nil, linearTilingFeatures: VkFormatFeatureFlags2, optimalTilingFeatures: VkFormatFeatureFlags2, bufferFeatures: VkFormatFeatureFlags2): VkFormatProperties3 = result.sType = sType result.pNext = pNext - result.timelineSemaphore = timelineSemaphore + result.linearTilingFeatures = linearTilingFeatures + result.optimalTilingFeatures = optimalTilingFeatures + result.bufferFeatures = bufferFeatures -proc newVkPhysicalDeviceTimelineSemaphoreProperties*(sType: VkStructureType, pNext: pointer = nil, maxTimelineSemaphoreValueDifference: uint64): VkPhysicalDeviceTimelineSemaphoreProperties = +proc newVkDrmFormatModifierPropertiesList2EXT*(sType: VkStructureType, pNext: pointer = nil, drmFormatModifierCount: uint32, pDrmFormatModifierProperties: ptr VkDrmFormatModifierProperties2EXT): VkDrmFormatModifierPropertiesList2EXT = result.sType = sType result.pNext = pNext - result.maxTimelineSemaphoreValueDifference = maxTimelineSemaphoreValueDifference + result.drmFormatModifierCount = drmFormatModifierCount + result.pDrmFormatModifierProperties = pDrmFormatModifierProperties -proc newVkSemaphoreTypeCreateInfo*(sType: VkStructureType, pNext: pointer = nil, semaphoreType: VkSemaphoreType, initialValue: uint64): VkSemaphoreTypeCreateInfo = +proc newVkDrmFormatModifierProperties2EXT*(drmFormatModifier: uint64, drmFormatModifierPlaneCount: uint32, drmFormatModifierTilingFeatures: VkFormatFeatureFlags2): VkDrmFormatModifierProperties2EXT = + result.drmFormatModifier = drmFormatModifier + result.drmFormatModifierPlaneCount = drmFormatModifierPlaneCount + result.drmFormatModifierTilingFeatures = drmFormatModifierTilingFeatures + +proc newVkAndroidHardwareBufferFormatProperties2ANDROID*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat, externalFormat: uint64, formatFeatures: VkFormatFeatureFlags2, samplerYcbcrConversionComponents: VkComponentMapping, suggestedYcbcrModel: VkSamplerYcbcrModelConversion, suggestedYcbcrRange: VkSamplerYcbcrRange, suggestedXChromaOffset: VkChromaLocation, suggestedYChromaOffset: VkChromaLocation): VkAndroidHardwareBufferFormatProperties2ANDROID = result.sType = sType result.pNext = pNext - result.semaphoreType = semaphoreType - result.initialValue = initialValue + result.format = format + result.externalFormat = externalFormat + result.formatFeatures = formatFeatures + result.samplerYcbcrConversionComponents = samplerYcbcrConversionComponents + result.suggestedYcbcrModel = suggestedYcbcrModel + result.suggestedYcbcrRange = suggestedYcbcrRange + result.suggestedXChromaOffset = suggestedXChromaOffset + result.suggestedYChromaOffset = suggestedYChromaOffset -proc newVkTimelineSemaphoreSubmitInfo*(sType: VkStructureType, pNext: pointer = nil, waitSemaphoreValueCount: uint32, pWaitSemaphoreValues: ptr uint64, signalSemaphoreValueCount: uint32, pSignalSemaphoreValues: ptr uint64): VkTimelineSemaphoreSubmitInfo = +proc newVkPipelineRenderingCreateInfo*(sType: VkStructureType, pNext: pointer = nil, viewMask: uint32, colorAttachmentCount: uint32, pColorAttachmentFormats: ptr VkFormat, depthAttachmentFormat: VkFormat, stencilAttachmentFormat: VkFormat): VkPipelineRenderingCreateInfo = result.sType = sType result.pNext = pNext - result.waitSemaphoreValueCount = waitSemaphoreValueCount - result.pWaitSemaphoreValues = pWaitSemaphoreValues - result.signalSemaphoreValueCount = signalSemaphoreValueCount - result.pSignalSemaphoreValues = pSignalSemaphoreValues + result.viewMask = viewMask + result.colorAttachmentCount = colorAttachmentCount + result.pColorAttachmentFormats = pColorAttachmentFormats + result.depthAttachmentFormat = depthAttachmentFormat + result.stencilAttachmentFormat = stencilAttachmentFormat -proc newVkSemaphoreWaitInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkSemaphoreWaitFlags = 0.VkSemaphoreWaitFlags, semaphoreCount: uint32, pSemaphores: ptr VkSemaphore, pValues: ptr uint64): VkSemaphoreWaitInfo = +proc newVkRenderingInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkRenderingFlags = 0.VkRenderingFlags, renderArea: VkRect2D, layerCount: uint32, viewMask: uint32, colorAttachmentCount: uint32, pColorAttachments: ptr VkRenderingAttachmentInfo, pDepthAttachment: ptr VkRenderingAttachmentInfo, pStencilAttachment: ptr VkRenderingAttachmentInfo): VkRenderingInfo = result.sType = sType result.pNext = pNext result.flags = flags - result.semaphoreCount = semaphoreCount - result.pSemaphores = pSemaphores - result.pValues = pValues + result.renderArea = renderArea + result.layerCount = layerCount + result.viewMask = viewMask + result.colorAttachmentCount = colorAttachmentCount + result.pColorAttachments = pColorAttachments + result.pDepthAttachment = pDepthAttachment + result.pStencilAttachment = pStencilAttachment -proc newVkSemaphoreSignalInfo*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, value: uint64): VkSemaphoreSignalInfo = +proc newVkRenderingAttachmentInfo*(sType: VkStructureType, pNext: pointer = nil, imageView: VkImageView, imageLayout: VkImageLayout, resolveMode: VkResolveModeFlagBits, resolveImageView: VkImageView, resolveImageLayout: VkImageLayout, loadOp: VkAttachmentLoadOp, storeOp: VkAttachmentStoreOp, clearValue: VkClearValue): VkRenderingAttachmentInfo = + result.sType = sType + result.pNext = pNext + result.imageView = imageView + result.imageLayout = imageLayout + result.resolveMode = resolveMode + result.resolveImageView = resolveImageView + result.resolveImageLayout = resolveImageLayout + result.loadOp = loadOp + result.storeOp = storeOp + result.clearValue = clearValue + +proc newVkRenderingFragmentShadingRateAttachmentInfoKHR*(sType: VkStructureType, pNext: pointer = nil, imageView: VkImageView, imageLayout: VkImageLayout, shadingRateAttachmentTexelSize: VkExtent2D): VkRenderingFragmentShadingRateAttachmentInfoKHR = + result.sType = sType + result.pNext = pNext + result.imageView = imageView + result.imageLayout = imageLayout + result.shadingRateAttachmentTexelSize = shadingRateAttachmentTexelSize + +proc newVkRenderingFragmentDensityMapAttachmentInfoEXT*(sType: VkStructureType, pNext: pointer = nil, imageView: VkImageView, imageLayout: VkImageLayout): VkRenderingFragmentDensityMapAttachmentInfoEXT = result.sType = sType result.pNext = pNext - result.semaphore = semaphore - result.value = value - -proc newVkVertexInputBindingDivisorDescriptionEXT*(binding: uint32, divisor: uint32): VkVertexInputBindingDivisorDescriptionEXT = - result.binding = binding - result.divisor = divisor + result.imageView = imageView + result.imageLayout = imageLayout -proc newVkPipelineVertexInputDivisorStateCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, vertexBindingDivisorCount: uint32, pVertexBindingDivisors: ptr VkVertexInputBindingDivisorDescriptionEXT): VkPipelineVertexInputDivisorStateCreateInfoEXT = +proc newVkPhysicalDeviceDynamicRenderingFeatures*(sType: VkStructureType, pNext: pointer = nil, dynamicRendering: VkBool32): VkPhysicalDeviceDynamicRenderingFeatures = result.sType = sType result.pNext = pNext - result.vertexBindingDivisorCount = vertexBindingDivisorCount - result.pVertexBindingDivisors = pVertexBindingDivisors + result.dynamicRendering = dynamicRendering -proc newVkPhysicalDeviceVertexAttributeDivisorPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxVertexAttribDivisor: uint32): VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT = +proc newVkCommandBufferInheritanceRenderingInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkRenderingFlags = 0.VkRenderingFlags, viewMask: uint32, colorAttachmentCount: uint32, colorAttachmentCount: uint32, pColorAttachmentFormats: ptr VkFormat, depthAttachmentFormat: VkFormat, stencilAttachmentFormat: VkFormat, rasterizationSamples: VkSampleCountFlagBits): VkCommandBufferInheritanceRenderingInfo = result.sType = sType result.pNext = pNext - result.maxVertexAttribDivisor = maxVertexAttribDivisor + result.flags = flags + result.viewMask = viewMask + result.colorAttachmentCount = colorAttachmentCount + result.colorAttachmentCount = colorAttachmentCount + result.pColorAttachmentFormats = pColorAttachmentFormats + result.depthAttachmentFormat = depthAttachmentFormat + result.stencilAttachmentFormat = stencilAttachmentFormat + result.rasterizationSamples = rasterizationSamples -proc newVkPhysicalDevicePCIBusInfoPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, pciDomain: uint32, pciBus: uint32, pciDevice: uint32, pciFunction: uint32): VkPhysicalDevicePCIBusInfoPropertiesEXT = +proc newVkAttachmentSampleCountInfoAMD*(sType: VkStructureType, pNext: pointer = nil, colorAttachmentCount: uint32, pColorAttachmentSamples: ptr VkSampleCountFlagBits, depthStencilAttachmentSamples: VkSampleCountFlagBits): VkAttachmentSampleCountInfoAMD = result.sType = sType result.pNext = pNext - result.pciDomain = pciDomain - result.pciBus = pciBus - result.pciDevice = pciDevice - result.pciFunction = pciFunction + result.colorAttachmentCount = colorAttachmentCount + result.pColorAttachmentSamples = pColorAttachmentSamples + result.depthStencilAttachmentSamples = depthStencilAttachmentSamples -proc newVkImportAndroidHardwareBufferInfoANDROID*(sType: VkStructureType, pNext: pointer = nil, buffer: ptr AHardwareBuffer): VkImportAndroidHardwareBufferInfoANDROID = +proc newVkMultiviewPerViewAttributesInfoNVX*(sType: VkStructureType, pNext: pointer = nil, perViewAttributes: VkBool32, perViewAttributesPositionXOnly: VkBool32): VkMultiviewPerViewAttributesInfoNVX = result.sType = sType result.pNext = pNext - result.buffer = buffer + result.perViewAttributes = perViewAttributes + result.perViewAttributesPositionXOnly = perViewAttributesPositionXOnly -proc newVkAndroidHardwareBufferUsageANDROID*(sType: VkStructureType, pNext: pointer = nil, androidHardwareBufferUsage: uint64): VkAndroidHardwareBufferUsageANDROID = +proc newVkPhysicalDeviceImageViewMinLodFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, minLod: VkBool32): VkPhysicalDeviceImageViewMinLodFeaturesEXT = result.sType = sType result.pNext = pNext - result.androidHardwareBufferUsage = androidHardwareBufferUsage + result.minLod = minLod -proc newVkAndroidHardwareBufferPropertiesANDROID*(sType: VkStructureType, pNext: pointer = nil, allocationSize: VkDeviceSize, memoryTypeBits: uint32): VkAndroidHardwareBufferPropertiesANDROID = +proc newVkImageViewMinLodCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, minLod: float32): VkImageViewMinLodCreateInfoEXT = result.sType = sType result.pNext = pNext - result.allocationSize = allocationSize - result.memoryTypeBits = memoryTypeBits + result.minLod = minLod -proc newVkMemoryGetAndroidHardwareBufferInfoANDROID*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory): VkMemoryGetAndroidHardwareBufferInfoANDROID = +proc newVkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, rasterizationOrderColorAttachmentAccess: VkBool32, rasterizationOrderDepthAttachmentAccess: VkBool32, rasterizationOrderStencilAttachmentAccess: VkBool32): VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT = result.sType = sType result.pNext = pNext - result.memory = memory + result.rasterizationOrderColorAttachmentAccess = rasterizationOrderColorAttachmentAccess + result.rasterizationOrderDepthAttachmentAccess = rasterizationOrderDepthAttachmentAccess + result.rasterizationOrderStencilAttachmentAccess = rasterizationOrderStencilAttachmentAccess -proc newVkAndroidHardwareBufferFormatPropertiesANDROID*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat, externalFormat: uint64, formatFeatures: VkFormatFeatureFlags, samplerYcbcrConversionComponents: VkComponentMapping, suggestedYcbcrModel: VkSamplerYcbcrModelConversion, suggestedYcbcrRange: VkSamplerYcbcrRange, suggestedXChromaOffset: VkChromaLocation, suggestedYChromaOffset: VkChromaLocation): VkAndroidHardwareBufferFormatPropertiesANDROID = +proc newVkPhysicalDeviceLinearColorAttachmentFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, linearColorAttachment: VkBool32): VkPhysicalDeviceLinearColorAttachmentFeaturesNV = result.sType = sType result.pNext = pNext - result.format = format - result.externalFormat = externalFormat - result.formatFeatures = formatFeatures - result.samplerYcbcrConversionComponents = samplerYcbcrConversionComponents - result.suggestedYcbcrModel = suggestedYcbcrModel - result.suggestedYcbcrRange = suggestedYcbcrRange - result.suggestedXChromaOffset = suggestedXChromaOffset - result.suggestedYChromaOffset = suggestedYChromaOffset + result.linearColorAttachment = linearColorAttachment -proc newVkCommandBufferInheritanceConditionalRenderingInfoEXT*(sType: VkStructureType, pNext: pointer = nil, conditionalRenderingEnable: VkBool32): VkCommandBufferInheritanceConditionalRenderingInfoEXT = +proc newVkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, graphicsPipelineLibrary: VkBool32): VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT = result.sType = sType result.pNext = pNext - result.conditionalRenderingEnable = conditionalRenderingEnable + result.graphicsPipelineLibrary = graphicsPipelineLibrary -proc newVkExternalFormatANDROID*(sType: VkStructureType, pNext: pointer = nil, externalFormat: uint64): VkExternalFormatANDROID = +proc newVkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, graphicsPipelineLibraryFastLinking: VkBool32, graphicsPipelineLibraryIndependentInterpolationDecoration: VkBool32): VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT = result.sType = sType result.pNext = pNext - result.externalFormat = externalFormat + result.graphicsPipelineLibraryFastLinking = graphicsPipelineLibraryFastLinking + result.graphicsPipelineLibraryIndependentInterpolationDecoration = graphicsPipelineLibraryIndependentInterpolationDecoration -proc newVkPhysicalDevice8BitStorageFeatures*(sType: VkStructureType, pNext: pointer = nil, storageBuffer8BitAccess: VkBool32, uniformAndStorageBuffer8BitAccess: VkBool32, storagePushConstant8: VkBool32): VkPhysicalDevice8BitStorageFeatures = +proc newVkGraphicsPipelineLibraryCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkGraphicsPipelineLibraryFlagsEXT = 0.VkGraphicsPipelineLibraryFlagsEXT): VkGraphicsPipelineLibraryCreateInfoEXT = result.sType = sType result.pNext = pNext - result.storageBuffer8BitAccess = storageBuffer8BitAccess - result.uniformAndStorageBuffer8BitAccess = uniformAndStorageBuffer8BitAccess - result.storagePushConstant8 = storagePushConstant8 + result.flags = flags -proc newVkPhysicalDeviceConditionalRenderingFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, conditionalRendering: VkBool32, inheritedConditionalRendering: VkBool32): VkPhysicalDeviceConditionalRenderingFeaturesEXT = +proc newVkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE*(sType: VkStructureType, pNext: pointer = nil, descriptorSetHostMapping: VkBool32): VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE = result.sType = sType result.pNext = pNext - result.conditionalRendering = conditionalRendering - result.inheritedConditionalRendering = inheritedConditionalRendering + result.descriptorSetHostMapping = descriptorSetHostMapping -proc newVkPhysicalDeviceVulkanMemoryModelFeatures*(sType: VkStructureType, pNext: pointer = nil, vulkanMemoryModel: VkBool32, vulkanMemoryModelDeviceScope: VkBool32, vulkanMemoryModelAvailabilityVisibilityChains: VkBool32): VkPhysicalDeviceVulkanMemoryModelFeatures = +proc newVkDescriptorSetBindingReferenceVALVE*(sType: VkStructureType, pNext: pointer = nil, descriptorSetLayout: VkDescriptorSetLayout, binding: uint32): VkDescriptorSetBindingReferenceVALVE = result.sType = sType result.pNext = pNext - result.vulkanMemoryModel = vulkanMemoryModel - result.vulkanMemoryModelDeviceScope = vulkanMemoryModelDeviceScope - result.vulkanMemoryModelAvailabilityVisibilityChains = vulkanMemoryModelAvailabilityVisibilityChains + result.descriptorSetLayout = descriptorSetLayout + result.binding = binding -proc newVkPhysicalDeviceShaderAtomicInt64Features*(sType: VkStructureType, pNext: pointer = nil, shaderBufferInt64Atomics: VkBool32, shaderSharedInt64Atomics: VkBool32): VkPhysicalDeviceShaderAtomicInt64Features = +proc newVkDescriptorSetLayoutHostMappingInfoVALVE*(sType: VkStructureType, pNext: pointer = nil, descriptorOffset: uint, descriptorSize: uint32): VkDescriptorSetLayoutHostMappingInfoVALVE = result.sType = sType result.pNext = pNext - result.shaderBufferInt64Atomics = shaderBufferInt64Atomics - result.shaderSharedInt64Atomics = shaderSharedInt64Atomics + result.descriptorOffset = descriptorOffset + result.descriptorSize = descriptorSize -proc newVkPhysicalDeviceShaderAtomicFloatFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderBufferFloat32Atomics: VkBool32, shaderBufferFloat32AtomicAdd: VkBool32, shaderBufferFloat64Atomics: VkBool32, shaderBufferFloat64AtomicAdd: VkBool32, shaderSharedFloat32Atomics: VkBool32, shaderSharedFloat32AtomicAdd: VkBool32, shaderSharedFloat64Atomics: VkBool32, shaderSharedFloat64AtomicAdd: VkBool32, shaderImageFloat32Atomics: VkBool32, shaderImageFloat32AtomicAdd: VkBool32, sparseImageFloat32Atomics: VkBool32, sparseImageFloat32AtomicAdd: VkBool32): VkPhysicalDeviceShaderAtomicFloatFeaturesEXT = +proc newVkPhysicalDeviceNestedCommandBufferFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, nestedCommandBuffer: VkBool32, nestedCommandBufferRendering: VkBool32, nestedCommandBufferSimultaneousUse: VkBool32): VkPhysicalDeviceNestedCommandBufferFeaturesEXT = result.sType = sType result.pNext = pNext - result.shaderBufferFloat32Atomics = shaderBufferFloat32Atomics - result.shaderBufferFloat32AtomicAdd = shaderBufferFloat32AtomicAdd - result.shaderBufferFloat64Atomics = shaderBufferFloat64Atomics - result.shaderBufferFloat64AtomicAdd = shaderBufferFloat64AtomicAdd - result.shaderSharedFloat32Atomics = shaderSharedFloat32Atomics - result.shaderSharedFloat32AtomicAdd = shaderSharedFloat32AtomicAdd - result.shaderSharedFloat64Atomics = shaderSharedFloat64Atomics - result.shaderSharedFloat64AtomicAdd = shaderSharedFloat64AtomicAdd - result.shaderImageFloat32Atomics = shaderImageFloat32Atomics - result.shaderImageFloat32AtomicAdd = shaderImageFloat32AtomicAdd - result.sparseImageFloat32Atomics = sparseImageFloat32Atomics - result.sparseImageFloat32AtomicAdd = sparseImageFloat32AtomicAdd + result.nestedCommandBuffer = nestedCommandBuffer + result.nestedCommandBufferRendering = nestedCommandBufferRendering + result.nestedCommandBufferSimultaneousUse = nestedCommandBufferSimultaneousUse -proc newVkPhysicalDeviceVertexAttributeDivisorFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, vertexAttributeInstanceRateDivisor: VkBool32, vertexAttributeInstanceRateZeroDivisor: VkBool32): VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT = +proc newVkPhysicalDeviceNestedCommandBufferPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxCommandBufferNestingLevel: uint32): VkPhysicalDeviceNestedCommandBufferPropertiesEXT = result.sType = sType result.pNext = pNext - result.vertexAttributeInstanceRateDivisor = vertexAttributeInstanceRateDivisor - result.vertexAttributeInstanceRateZeroDivisor = vertexAttributeInstanceRateZeroDivisor + result.maxCommandBufferNestingLevel = maxCommandBufferNestingLevel -proc newVkQueueFamilyCheckpointPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, checkpointExecutionStageMask: VkPipelineStageFlags): VkQueueFamilyCheckpointPropertiesNV = +proc newVkPhysicalDeviceShaderModuleIdentifierFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderModuleIdentifier: VkBool32): VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT = result.sType = sType result.pNext = pNext - result.checkpointExecutionStageMask = checkpointExecutionStageMask + result.shaderModuleIdentifier = shaderModuleIdentifier -proc newVkCheckpointDataNV*(sType: VkStructureType, pNext: pointer = nil, stage: VkPipelineStageFlagBits, pCheckpointMarker: pointer = nil): VkCheckpointDataNV = +proc newVkPhysicalDeviceShaderModuleIdentifierPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderModuleIdentifierAlgorithmUUID: array[VK_UUID_SIZE, uint8]): VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT = result.sType = sType result.pNext = pNext - result.stage = stage - result.pCheckpointMarker = pCheckpointMarker + result.shaderModuleIdentifierAlgorithmUUID = shaderModuleIdentifierAlgorithmUUID -proc newVkPhysicalDeviceDepthStencilResolveProperties*(sType: VkStructureType, pNext: pointer = nil, supportedDepthResolveModes: VkResolveModeFlags, supportedStencilResolveModes: VkResolveModeFlags, independentResolveNone: VkBool32, independentResolve: VkBool32): VkPhysicalDeviceDepthStencilResolveProperties = +proc newVkPipelineShaderStageModuleIdentifierCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, identifierSize: uint32, pIdentifier: ptr uint8): VkPipelineShaderStageModuleIdentifierCreateInfoEXT = result.sType = sType result.pNext = pNext - result.supportedDepthResolveModes = supportedDepthResolveModes - result.supportedStencilResolveModes = supportedStencilResolveModes - result.independentResolveNone = independentResolveNone - result.independentResolve = independentResolve + result.identifierSize = identifierSize + result.pIdentifier = pIdentifier -proc newVkSubpassDescriptionDepthStencilResolve*(sType: VkStructureType, pNext: pointer = nil, depthResolveMode: VkResolveModeFlagBits, stencilResolveMode: VkResolveModeFlagBits, pDepthStencilResolveAttachment: ptr VkAttachmentReference2): VkSubpassDescriptionDepthStencilResolve = +proc newVkShaderModuleIdentifierEXT*(sType: VkStructureType, pNext: pointer = nil, identifierSize: uint32, identifier: array[VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT, uint8]): VkShaderModuleIdentifierEXT = result.sType = sType result.pNext = pNext - result.depthResolveMode = depthResolveMode - result.stencilResolveMode = stencilResolveMode - result.pDepthStencilResolveAttachment = pDepthStencilResolveAttachment + result.identifierSize = identifierSize + result.identifier = identifier -proc newVkImageViewASTCDecodeModeEXT*(sType: VkStructureType, pNext: pointer = nil, decodeMode: VkFormat): VkImageViewASTCDecodeModeEXT = +proc newVkImageCompressionControlEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkImageCompressionFlagsEXT = 0.VkImageCompressionFlagsEXT, compressionControlPlaneCount: uint32, pFixedRateFlags: ptr VkImageCompressionFixedRateFlagsEXT): VkImageCompressionControlEXT = result.sType = sType result.pNext = pNext - result.decodeMode = decodeMode + result.flags = flags + result.compressionControlPlaneCount = compressionControlPlaneCount + result.pFixedRateFlags = pFixedRateFlags -proc newVkPhysicalDeviceASTCDecodeFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, decodeModeSharedExponent: VkBool32): VkPhysicalDeviceASTCDecodeFeaturesEXT = +proc newVkPhysicalDeviceImageCompressionControlFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, imageCompressionControl: VkBool32): VkPhysicalDeviceImageCompressionControlFeaturesEXT = result.sType = sType result.pNext = pNext - result.decodeModeSharedExponent = decodeModeSharedExponent + result.imageCompressionControl = imageCompressionControl -proc newVkPhysicalDeviceTransformFeedbackFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, transformFeedback: VkBool32, geometryStreams: VkBool32): VkPhysicalDeviceTransformFeedbackFeaturesEXT = +proc newVkImageCompressionPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, imageCompressionFlags: VkImageCompressionFlagsEXT, imageCompressionFixedRateFlags: VkImageCompressionFixedRateFlagsEXT): VkImageCompressionPropertiesEXT = result.sType = sType result.pNext = pNext - result.transformFeedback = transformFeedback - result.geometryStreams = geometryStreams + result.imageCompressionFlags = imageCompressionFlags + result.imageCompressionFixedRateFlags = imageCompressionFixedRateFlags -proc newVkPhysicalDeviceTransformFeedbackPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxTransformFeedbackStreams: uint32, maxTransformFeedbackBuffers: uint32, maxTransformFeedbackBufferSize: VkDeviceSize, maxTransformFeedbackStreamDataSize: uint32, maxTransformFeedbackBufferDataSize: uint32, maxTransformFeedbackBufferDataStride: uint32, transformFeedbackQueries: VkBool32, transformFeedbackStreamsLinesTriangles: VkBool32, transformFeedbackRasterizationStreamSelect: VkBool32, transformFeedbackDraw: VkBool32): VkPhysicalDeviceTransformFeedbackPropertiesEXT = +proc newVkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, imageCompressionControlSwapchain: VkBool32): VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT = result.sType = sType result.pNext = pNext - result.maxTransformFeedbackStreams = maxTransformFeedbackStreams - result.maxTransformFeedbackBuffers = maxTransformFeedbackBuffers - result.maxTransformFeedbackBufferSize = maxTransformFeedbackBufferSize - result.maxTransformFeedbackStreamDataSize = maxTransformFeedbackStreamDataSize - result.maxTransformFeedbackBufferDataSize = maxTransformFeedbackBufferDataSize - result.maxTransformFeedbackBufferDataStride = maxTransformFeedbackBufferDataStride - result.transformFeedbackQueries = transformFeedbackQueries - result.transformFeedbackStreamsLinesTriangles = transformFeedbackStreamsLinesTriangles - result.transformFeedbackRasterizationStreamSelect = transformFeedbackRasterizationStreamSelect - result.transformFeedbackDraw = transformFeedbackDraw + result.imageCompressionControlSwapchain = imageCompressionControlSwapchain -proc newVkPipelineRasterizationStateStreamCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineRasterizationStateStreamCreateFlagsEXT = 0.VkPipelineRasterizationStateStreamCreateFlagsEXT, rasterizationStream: uint32): VkPipelineRasterizationStateStreamCreateInfoEXT = +proc newVkImageSubresource2KHR*(sType: VkStructureType, pNext: pointer = nil, imageSubresource: VkImageSubresource): VkImageSubresource2KHR = result.sType = sType result.pNext = pNext - result.flags = flags - result.rasterizationStream = rasterizationStream + result.imageSubresource = imageSubresource -proc newVkPhysicalDeviceRepresentativeFragmentTestFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, representativeFragmentTest: VkBool32): VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV = +proc newVkSubresourceLayout2KHR*(sType: VkStructureType, pNext: pointer = nil, subresourceLayout: VkSubresourceLayout): VkSubresourceLayout2KHR = result.sType = sType result.pNext = pNext - result.representativeFragmentTest = representativeFragmentTest + result.subresourceLayout = subresourceLayout -proc newVkPipelineRepresentativeFragmentTestStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, representativeFragmentTestEnable: VkBool32): VkPipelineRepresentativeFragmentTestStateCreateInfoNV = +proc newVkRenderPassCreationControlEXT*(sType: VkStructureType, pNext: pointer = nil, disallowMerging: VkBool32): VkRenderPassCreationControlEXT = result.sType = sType result.pNext = pNext - result.representativeFragmentTestEnable = representativeFragmentTestEnable + result.disallowMerging = disallowMerging -proc newVkPhysicalDeviceExclusiveScissorFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, exclusiveScissor: VkBool32): VkPhysicalDeviceExclusiveScissorFeaturesNV = +proc newVkRenderPassCreationFeedbackInfoEXT*(postMergeSubpassCount: uint32): VkRenderPassCreationFeedbackInfoEXT = + result.postMergeSubpassCount = postMergeSubpassCount + +proc newVkRenderPassCreationFeedbackCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, pRenderPassFeedback: ptr VkRenderPassCreationFeedbackInfoEXT): VkRenderPassCreationFeedbackCreateInfoEXT = result.sType = sType result.pNext = pNext - result.exclusiveScissor = exclusiveScissor + result.pRenderPassFeedback = pRenderPassFeedback -proc newVkPipelineViewportExclusiveScissorStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, exclusiveScissorCount: uint32, pExclusiveScissors: ptr VkRect2D): VkPipelineViewportExclusiveScissorStateCreateInfoNV = +proc newVkRenderPassSubpassFeedbackInfoEXT*(subpassMergeStatus: VkSubpassMergeStatusEXT, description: array[VK_MAX_DESCRIPTION_SIZE, char], postMergeIndex: uint32): VkRenderPassSubpassFeedbackInfoEXT = + result.subpassMergeStatus = subpassMergeStatus + result.description = description + result.postMergeIndex = postMergeIndex + +proc newVkRenderPassSubpassFeedbackCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, pSubpassFeedback: ptr VkRenderPassSubpassFeedbackInfoEXT): VkRenderPassSubpassFeedbackCreateInfoEXT = result.sType = sType result.pNext = pNext - result.exclusiveScissorCount = exclusiveScissorCount - result.pExclusiveScissors = pExclusiveScissors + result.pSubpassFeedback = pSubpassFeedback -proc newVkPhysicalDeviceCornerSampledImageFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, cornerSampledImage: VkBool32): VkPhysicalDeviceCornerSampledImageFeaturesNV = +proc newVkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, subpassMergeFeedback: VkBool32): VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT = result.sType = sType result.pNext = pNext - result.cornerSampledImage = cornerSampledImage + result.subpassMergeFeedback = subpassMergeFeedback -proc newVkPhysicalDeviceComputeShaderDerivativesFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, computeDerivativeGroupQuads: VkBool32, computeDerivativeGroupLinear: VkBool32): VkPhysicalDeviceComputeShaderDerivativesFeaturesNV = +proc newVkMicromapBuildInfoEXT*(sType: VkStructureType, pNext: pointer = nil, `type`: VkMicromapTypeEXT, flags: VkBuildMicromapFlagsEXT = 0.VkBuildMicromapFlagsEXT, mode: VkBuildMicromapModeEXT, dstMicromap: VkMicromapEXT, usageCountsCount: uint32, pUsageCounts: ptr VkMicromapUsageEXT, ppUsageCounts: ptr ptr VkMicromapUsageEXT, data: VkDeviceOrHostAddressConstKHR, scratchData: VkDeviceOrHostAddressKHR, triangleArray: VkDeviceOrHostAddressConstKHR, triangleArrayStride: VkDeviceSize): VkMicromapBuildInfoEXT = result.sType = sType result.pNext = pNext - result.computeDerivativeGroupQuads = computeDerivativeGroupQuads - result.computeDerivativeGroupLinear = computeDerivativeGroupLinear + result.`type` = `type` + result.flags = flags + result.mode = mode + result.dstMicromap = dstMicromap + result.usageCountsCount = usageCountsCount + result.pUsageCounts = pUsageCounts + result.ppUsageCounts = ppUsageCounts + result.data = data + result.scratchData = scratchData + result.triangleArray = triangleArray + result.triangleArrayStride = triangleArrayStride -proc newVkPhysicalDeviceFragmentShaderBarycentricFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, fragmentShaderBarycentric: VkBool32): VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV = +proc newVkMicromapCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, createFlags: VkMicromapCreateFlagsEXT, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize, `type`: VkMicromapTypeEXT, deviceAddress: VkDeviceAddress): VkMicromapCreateInfoEXT = result.sType = sType result.pNext = pNext - result.fragmentShaderBarycentric = fragmentShaderBarycentric + result.createFlags = createFlags + result.buffer = buffer + result.offset = offset + result.size = size + result.`type` = `type` + result.deviceAddress = deviceAddress -proc newVkPhysicalDeviceShaderImageFootprintFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, imageFootprint: VkBool32): VkPhysicalDeviceShaderImageFootprintFeaturesNV = +proc newVkMicromapVersionInfoEXT*(sType: VkStructureType, pNext: pointer = nil, pVersionData: ptr uint8): VkMicromapVersionInfoEXT = result.sType = sType result.pNext = pNext - result.imageFootprint = imageFootprint + result.pVersionData = pVersionData -proc newVkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, dedicatedAllocationImageAliasing: VkBool32): VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV = +proc newVkCopyMicromapInfoEXT*(sType: VkStructureType, pNext: pointer = nil, src: VkMicromapEXT, dst: VkMicromapEXT, mode: VkCopyMicromapModeEXT): VkCopyMicromapInfoEXT = result.sType = sType result.pNext = pNext - result.dedicatedAllocationImageAliasing = dedicatedAllocationImageAliasing - -proc newVkShadingRatePaletteNV*(shadingRatePaletteEntryCount: uint32, pShadingRatePaletteEntries: ptr VkShadingRatePaletteEntryNV): VkShadingRatePaletteNV = - result.shadingRatePaletteEntryCount = shadingRatePaletteEntryCount - result.pShadingRatePaletteEntries = pShadingRatePaletteEntries + result.src = src + result.dst = dst + result.mode = mode -proc newVkPipelineViewportShadingRateImageStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, shadingRateImageEnable: VkBool32, viewportCount: uint32, pShadingRatePalettes: ptr VkShadingRatePaletteNV): VkPipelineViewportShadingRateImageStateCreateInfoNV = +proc newVkCopyMicromapToMemoryInfoEXT*(sType: VkStructureType, pNext: pointer = nil, src: VkMicromapEXT, dst: VkDeviceOrHostAddressKHR, mode: VkCopyMicromapModeEXT): VkCopyMicromapToMemoryInfoEXT = result.sType = sType result.pNext = pNext - result.shadingRateImageEnable = shadingRateImageEnable - result.viewportCount = viewportCount - result.pShadingRatePalettes = pShadingRatePalettes + result.src = src + result.dst = dst + result.mode = mode -proc newVkPhysicalDeviceShadingRateImageFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, shadingRateImage: VkBool32, shadingRateCoarseSampleOrder: VkBool32): VkPhysicalDeviceShadingRateImageFeaturesNV = +proc newVkCopyMemoryToMicromapInfoEXT*(sType: VkStructureType, pNext: pointer = nil, src: VkDeviceOrHostAddressConstKHR, dst: VkMicromapEXT, mode: VkCopyMicromapModeEXT): VkCopyMemoryToMicromapInfoEXT = result.sType = sType result.pNext = pNext - result.shadingRateImage = shadingRateImage - result.shadingRateCoarseSampleOrder = shadingRateCoarseSampleOrder + result.src = src + result.dst = dst + result.mode = mode -proc newVkPhysicalDeviceShadingRateImagePropertiesNV*(sType: VkStructureType, pNext: pointer = nil, shadingRateTexelSize: VkExtent2D, shadingRatePaletteSize: uint32, shadingRateMaxCoarseSamples: uint32): VkPhysicalDeviceShadingRateImagePropertiesNV = +proc newVkMicromapBuildSizesInfoEXT*(sType: VkStructureType, pNext: pointer = nil, micromapSize: VkDeviceSize, buildScratchSize: VkDeviceSize, discardable: VkBool32): VkMicromapBuildSizesInfoEXT = result.sType = sType result.pNext = pNext - result.shadingRateTexelSize = shadingRateTexelSize - result.shadingRatePaletteSize = shadingRatePaletteSize - result.shadingRateMaxCoarseSamples = shadingRateMaxCoarseSamples + result.micromapSize = micromapSize + result.buildScratchSize = buildScratchSize + result.discardable = discardable -proc newVkCoarseSampleLocationNV*(pixelX: uint32, pixelY: uint32, sample: uint32): VkCoarseSampleLocationNV = - result.pixelX = pixelX - result.pixelY = pixelY - result.sample = sample +proc newVkMicromapUsageEXT*(count: uint32, subdivisionLevel: uint32, format: uint32): VkMicromapUsageEXT = + result.count = count + result.subdivisionLevel = subdivisionLevel + result.format = format -proc newVkCoarseSampleOrderCustomNV*(shadingRate: VkShadingRatePaletteEntryNV, sampleCount: uint32, sampleLocationCount: uint32, pSampleLocations: ptr VkCoarseSampleLocationNV): VkCoarseSampleOrderCustomNV = - result.shadingRate = shadingRate - result.sampleCount = sampleCount - result.sampleLocationCount = sampleLocationCount - result.pSampleLocations = pSampleLocations +proc newVkMicromapTriangleEXT*(dataOffset: uint32, subdivisionLevel: uint16, format: uint16): VkMicromapTriangleEXT = + result.dataOffset = dataOffset + result.subdivisionLevel = subdivisionLevel + result.format = format -proc newVkPipelineViewportCoarseSampleOrderStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, sampleOrderType: VkCoarseSampleOrderTypeNV, customSampleOrderCount: uint32, pCustomSampleOrders: ptr VkCoarseSampleOrderCustomNV): VkPipelineViewportCoarseSampleOrderStateCreateInfoNV = +proc newVkPhysicalDeviceOpacityMicromapFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, micromap: VkBool32, micromapCaptureReplay: VkBool32, micromapHostCommands: VkBool32): VkPhysicalDeviceOpacityMicromapFeaturesEXT = result.sType = sType result.pNext = pNext - result.sampleOrderType = sampleOrderType - result.customSampleOrderCount = customSampleOrderCount - result.pCustomSampleOrders = pCustomSampleOrders + result.micromap = micromap + result.micromapCaptureReplay = micromapCaptureReplay + result.micromapHostCommands = micromapHostCommands -proc newVkPhysicalDeviceMeshShaderFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, taskShader: VkBool32, meshShader: VkBool32): VkPhysicalDeviceMeshShaderFeaturesNV = +proc newVkPhysicalDeviceOpacityMicromapPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxOpacity2StateSubdivisionLevel: uint32, maxOpacity4StateSubdivisionLevel: uint32): VkPhysicalDeviceOpacityMicromapPropertiesEXT = result.sType = sType result.pNext = pNext - result.taskShader = taskShader - result.meshShader = meshShader + result.maxOpacity2StateSubdivisionLevel = maxOpacity2StateSubdivisionLevel + result.maxOpacity4StateSubdivisionLevel = maxOpacity4StateSubdivisionLevel -proc newVkPhysicalDeviceMeshShaderPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, maxDrawMeshTasksCount: uint32, maxTaskWorkGroupInvocations: uint32, maxTaskWorkGroupSize: array[3, uint32], maxTaskTotalMemorySize: uint32, maxTaskOutputCount: uint32, maxMeshWorkGroupInvocations: uint32, maxMeshWorkGroupSize: array[3, uint32], maxMeshTotalMemorySize: uint32, maxMeshOutputVertices: uint32, maxMeshOutputPrimitives: uint32, maxMeshMultiviewViewCount: uint32, meshOutputPerVertexGranularity: uint32, meshOutputPerPrimitiveGranularity: uint32): VkPhysicalDeviceMeshShaderPropertiesNV = +proc newVkAccelerationStructureTrianglesOpacityMicromapEXT*(sType: VkStructureType, pNext: pointer = nil, indexType: VkIndexType, indexBuffer: VkDeviceOrHostAddressConstKHR, indexStride: VkDeviceSize, baseTriangle: uint32, usageCountsCount: uint32, pUsageCounts: ptr VkMicromapUsageEXT, ppUsageCounts: ptr ptr VkMicromapUsageEXT, micromap: VkMicromapEXT): VkAccelerationStructureTrianglesOpacityMicromapEXT = result.sType = sType result.pNext = pNext - result.maxDrawMeshTasksCount = maxDrawMeshTasksCount - result.maxTaskWorkGroupInvocations = maxTaskWorkGroupInvocations - result.maxTaskWorkGroupSize = maxTaskWorkGroupSize - result.maxTaskTotalMemorySize = maxTaskTotalMemorySize - result.maxTaskOutputCount = maxTaskOutputCount - result.maxMeshWorkGroupInvocations = maxMeshWorkGroupInvocations - result.maxMeshWorkGroupSize = maxMeshWorkGroupSize - result.maxMeshTotalMemorySize = maxMeshTotalMemorySize - result.maxMeshOutputVertices = maxMeshOutputVertices - result.maxMeshOutputPrimitives = maxMeshOutputPrimitives - result.maxMeshMultiviewViewCount = maxMeshMultiviewViewCount - result.meshOutputPerVertexGranularity = meshOutputPerVertexGranularity - result.meshOutputPerPrimitiveGranularity = meshOutputPerPrimitiveGranularity + result.indexType = indexType + result.indexBuffer = indexBuffer + result.indexStride = indexStride + result.baseTriangle = baseTriangle + result.usageCountsCount = usageCountsCount + result.pUsageCounts = pUsageCounts + result.ppUsageCounts = ppUsageCounts + result.micromap = micromap -proc newVkDrawMeshTasksIndirectCommandNV*(taskCount: uint32, firstTask: uint32): VkDrawMeshTasksIndirectCommandNV = - result.taskCount = taskCount - result.firstTask = firstTask +proc newVkPhysicalDeviceDisplacementMicromapFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, displacementMicromap: VkBool32): VkPhysicalDeviceDisplacementMicromapFeaturesNV = + result.sType = sType + result.pNext = pNext + result.displacementMicromap = displacementMicromap -proc newVkRayTracingShaderGroupCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, `type`: VkRayTracingShaderGroupTypeKHR, generalShader: uint32, closestHitShader: uint32, anyHitShader: uint32, intersectionShader: uint32): VkRayTracingShaderGroupCreateInfoNV = +proc newVkPhysicalDeviceDisplacementMicromapPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, maxDisplacementMicromapSubdivisionLevel: uint32): VkPhysicalDeviceDisplacementMicromapPropertiesNV = result.sType = sType result.pNext = pNext - result.`type` = `type` - result.generalShader = generalShader - result.closestHitShader = closestHitShader - result.anyHitShader = anyHitShader - result.intersectionShader = intersectionShader + result.maxDisplacementMicromapSubdivisionLevel = maxDisplacementMicromapSubdivisionLevel -proc newVkRayTracingShaderGroupCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, `type`: VkRayTracingShaderGroupTypeKHR, generalShader: uint32, closestHitShader: uint32, anyHitShader: uint32, intersectionShader: uint32, pShaderGroupCaptureReplayHandle: pointer = nil): VkRayTracingShaderGroupCreateInfoKHR = +proc newVkAccelerationStructureTrianglesDisplacementMicromapNV*(sType: VkStructureType, pNext: pointer = nil, displacementBiasAndScaleFormat: VkFormat, displacementVectorFormat: VkFormat, displacementBiasAndScaleBuffer: VkDeviceOrHostAddressConstKHR, displacementBiasAndScaleStride: VkDeviceSize, displacementVectorBuffer: VkDeviceOrHostAddressConstKHR, displacementVectorStride: VkDeviceSize, displacedMicromapPrimitiveFlags: VkDeviceOrHostAddressConstKHR, displacedMicromapPrimitiveFlagsStride: VkDeviceSize, indexType: VkIndexType, indexBuffer: VkDeviceOrHostAddressConstKHR, indexStride: VkDeviceSize, baseTriangle: uint32, usageCountsCount: uint32, pUsageCounts: ptr VkMicromapUsageEXT, ppUsageCounts: ptr ptr VkMicromapUsageEXT, micromap: VkMicromapEXT): VkAccelerationStructureTrianglesDisplacementMicromapNV = result.sType = sType result.pNext = pNext - result.`type` = `type` - result.generalShader = generalShader - result.closestHitShader = closestHitShader - result.anyHitShader = anyHitShader - result.intersectionShader = intersectionShader - result.pShaderGroupCaptureReplayHandle = pShaderGroupCaptureReplayHandle + result.displacementBiasAndScaleFormat = displacementBiasAndScaleFormat + result.displacementVectorFormat = displacementVectorFormat + result.displacementBiasAndScaleBuffer = displacementBiasAndScaleBuffer + result.displacementBiasAndScaleStride = displacementBiasAndScaleStride + result.displacementVectorBuffer = displacementVectorBuffer + result.displacementVectorStride = displacementVectorStride + result.displacedMicromapPrimitiveFlags = displacedMicromapPrimitiveFlags + result.displacedMicromapPrimitiveFlagsStride = displacedMicromapPrimitiveFlagsStride + result.indexType = indexType + result.indexBuffer = indexBuffer + result.indexStride = indexStride + result.baseTriangle = baseTriangle + result.usageCountsCount = usageCountsCount + result.pUsageCounts = pUsageCounts + result.ppUsageCounts = ppUsageCounts + result.micromap = micromap -proc newVkRayTracingPipelineCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, groupCount: uint32, pGroups: ptr VkRayTracingShaderGroupCreateInfoNV, maxRecursionDepth: uint32, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkRayTracingPipelineCreateInfoNV = +proc newVkPipelinePropertiesIdentifierEXT*(sType: VkStructureType, pNext: pointer = nil, pipelineIdentifier: array[VK_UUID_SIZE, uint8]): VkPipelinePropertiesIdentifierEXT = result.sType = sType result.pNext = pNext - result.flags = flags - result.stageCount = stageCount - result.pStages = pStages - result.groupCount = groupCount - result.pGroups = pGroups - result.maxRecursionDepth = maxRecursionDepth - result.layout = layout - result.basePipelineHandle = basePipelineHandle - result.basePipelineIndex = basePipelineIndex + result.pipelineIdentifier = pipelineIdentifier -proc newVkRayTracingPipelineCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, groupCount: uint32, pGroups: ptr VkRayTracingShaderGroupCreateInfoKHR, maxRecursionDepth: uint32, libraries: VkPipelineLibraryCreateInfoKHR, pLibraryInterface: ptr VkRayTracingPipelineInterfaceCreateInfoKHR, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkRayTracingPipelineCreateInfoKHR = +proc newVkPhysicalDevicePipelinePropertiesFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, pipelinePropertiesIdentifier: VkBool32): VkPhysicalDevicePipelinePropertiesFeaturesEXT = result.sType = sType result.pNext = pNext - result.flags = flags - result.stageCount = stageCount - result.pStages = pStages - result.groupCount = groupCount - result.pGroups = pGroups - result.maxRecursionDepth = maxRecursionDepth - result.libraries = libraries - result.pLibraryInterface = pLibraryInterface - result.layout = layout - result.basePipelineHandle = basePipelineHandle - result.basePipelineIndex = basePipelineIndex + result.pipelinePropertiesIdentifier = pipelinePropertiesIdentifier -proc newVkGeometryTrianglesNV*(sType: VkStructureType, pNext: pointer = nil, vertexData: VkBuffer, vertexOffset: VkDeviceSize, vertexCount: uint32, vertexStride: VkDeviceSize, vertexFormat: VkFormat, indexData: VkBuffer, indexOffset: VkDeviceSize, indexCount: uint32, indexType: VkIndexType, transformData: VkBuffer, transformOffset: VkDeviceSize): VkGeometryTrianglesNV = +proc newVkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD*(sType: VkStructureType, pNext: pointer = nil, shaderEarlyAndLateFragmentTests: VkBool32): VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD = result.sType = sType result.pNext = pNext - result.vertexData = vertexData - result.vertexOffset = vertexOffset - result.vertexCount = vertexCount - result.vertexStride = vertexStride - result.vertexFormat = vertexFormat - result.indexData = indexData - result.indexOffset = indexOffset - result.indexCount = indexCount - result.indexType = indexType - result.transformData = transformData - result.transformOffset = transformOffset + result.shaderEarlyAndLateFragmentTests = shaderEarlyAndLateFragmentTests -proc newVkGeometryAABBNV*(sType: VkStructureType, pNext: pointer = nil, aabbData: VkBuffer, numAABBs: uint32, stride: uint32, offset: VkDeviceSize): VkGeometryAABBNV = +proc newVkExternalMemoryAcquireUnmodifiedEXT*(sType: VkStructureType, pNext: pointer = nil, acquireUnmodifiedMemory: VkBool32): VkExternalMemoryAcquireUnmodifiedEXT = result.sType = sType result.pNext = pNext - result.aabbData = aabbData - result.numAABBs = numAABBs - result.stride = stride - result.offset = offset + result.acquireUnmodifiedMemory = acquireUnmodifiedMemory -proc newVkGeometryDataNV*(triangles: VkGeometryTrianglesNV, aabbs: VkGeometryAABBNV): VkGeometryDataNV = - result.triangles = triangles - result.aabbs = aabbs +proc newVkExportMetalObjectCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, exportObjectType: VkExportMetalObjectTypeFlagBitsEXT): VkExportMetalObjectCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.exportObjectType = exportObjectType -proc newVkGeometryNV*(sType: VkStructureType, pNext: pointer = nil, geometryType: VkGeometryTypeKHR, geometry: VkGeometryDataNV, flags: VkGeometryFlagsKHR = 0.VkGeometryFlagsKHR): VkGeometryNV = +proc newVkExportMetalObjectsInfoEXT*(sType: VkStructureType, pNext: pointer = nil): VkExportMetalObjectsInfoEXT = result.sType = sType result.pNext = pNext - result.geometryType = geometryType - result.geometry = geometry - result.flags = flags -proc newVkAccelerationStructureInfoNV*(sType: VkStructureType, pNext: pointer = nil, `type`: VkAccelerationStructureTypeNV, flags: VkBuildAccelerationStructureFlagsNV = 0.VkBuildAccelerationStructureFlagsNV, instanceCount: uint32, geometryCount: uint32, pGeometries: ptr VkGeometryNV): VkAccelerationStructureInfoNV = +proc newVkExportMetalDeviceInfoEXT*(sType: VkStructureType, pNext: pointer = nil, mtlDevice: MTLDevice_id): VkExportMetalDeviceInfoEXT = result.sType = sType result.pNext = pNext - result.`type` = `type` - result.flags = flags - result.instanceCount = instanceCount - result.geometryCount = geometryCount - result.pGeometries = pGeometries + result.mtlDevice = mtlDevice -proc newVkAccelerationStructureCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, compactedSize: VkDeviceSize, info: VkAccelerationStructureInfoNV): VkAccelerationStructureCreateInfoNV = +proc newVkExportMetalCommandQueueInfoEXT*(sType: VkStructureType, pNext: pointer = nil, queue: VkQueue, mtlCommandQueue: MTLCommandQueue_id): VkExportMetalCommandQueueInfoEXT = result.sType = sType result.pNext = pNext - result.compactedSize = compactedSize - result.info = info + result.queue = queue + result.mtlCommandQueue = mtlCommandQueue -proc newVkBindAccelerationStructureMemoryInfoKHR*(sType: VkStructureType, pNext: pointer = nil, accelerationStructure: VkAccelerationStructureKHR, memory: VkDeviceMemory, memoryOffset: VkDeviceSize, deviceIndexCount: uint32, pDeviceIndices: ptr uint32): VkBindAccelerationStructureMemoryInfoKHR = +proc newVkExportMetalBufferInfoEXT*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory, mtlBuffer: MTLBuffer_id): VkExportMetalBufferInfoEXT = result.sType = sType result.pNext = pNext - result.accelerationStructure = accelerationStructure result.memory = memory - result.memoryOffset = memoryOffset - result.deviceIndexCount = deviceIndexCount - result.pDeviceIndices = pDeviceIndices + result.mtlBuffer = mtlBuffer -proc newVkWriteDescriptorSetAccelerationStructureKHR*(sType: VkStructureType, pNext: pointer = nil, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR): VkWriteDescriptorSetAccelerationStructureKHR = +proc newVkImportMetalBufferInfoEXT*(sType: VkStructureType, pNext: pointer = nil, mtlBuffer: MTLBuffer_id): VkImportMetalBufferInfoEXT = result.sType = sType result.pNext = pNext - result.accelerationStructureCount = accelerationStructureCount - result.pAccelerationStructures = pAccelerationStructures + result.mtlBuffer = mtlBuffer -proc newVkAccelerationStructureMemoryRequirementsInfoKHR*(sType: VkStructureType, pNext: pointer = nil, `type`: VkAccelerationStructureMemoryRequirementsTypeKHR, buildType: VkAccelerationStructureBuildTypeKHR, accelerationStructure: VkAccelerationStructureKHR): VkAccelerationStructureMemoryRequirementsInfoKHR = +proc newVkExportMetalTextureInfoEXT*(sType: VkStructureType, pNext: pointer = nil, image: VkImage, imageView: VkImageView, bufferView: VkBufferView, plane: VkImageAspectFlagBits, mtlTexture: MTLTexture_id): VkExportMetalTextureInfoEXT = result.sType = sType result.pNext = pNext - result.`type` = `type` - result.buildType = buildType - result.accelerationStructure = accelerationStructure + result.image = image + result.imageView = imageView + result.bufferView = bufferView + result.plane = plane + result.mtlTexture = mtlTexture -proc newVkAccelerationStructureMemoryRequirementsInfoNV*(sType: VkStructureType, pNext: pointer = nil, `type`: VkAccelerationStructureMemoryRequirementsTypeNV, accelerationStructure: VkAccelerationStructureNV): VkAccelerationStructureMemoryRequirementsInfoNV = +proc newVkImportMetalTextureInfoEXT*(sType: VkStructureType, pNext: pointer = nil, plane: VkImageAspectFlagBits, mtlTexture: MTLTexture_id): VkImportMetalTextureInfoEXT = result.sType = sType result.pNext = pNext - result.`type` = `type` - result.accelerationStructure = accelerationStructure + result.plane = plane + result.mtlTexture = mtlTexture -proc newVkPhysicalDeviceRayTracingFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, rayTracing: VkBool32, rayTracingShaderGroupHandleCaptureReplay: VkBool32, rayTracingShaderGroupHandleCaptureReplayMixed: VkBool32, rayTracingAccelerationStructureCaptureReplay: VkBool32, rayTracingIndirectTraceRays: VkBool32, rayTracingIndirectAccelerationStructureBuild: VkBool32, rayTracingHostAccelerationStructureCommands: VkBool32, rayQuery: VkBool32, rayTracingPrimitiveCulling: VkBool32): VkPhysicalDeviceRayTracingFeaturesKHR = +proc newVkExportMetalIOSurfaceInfoEXT*(sType: VkStructureType, pNext: pointer = nil, image: VkImage, ioSurface: IOSurfaceRef): VkExportMetalIOSurfaceInfoEXT = result.sType = sType result.pNext = pNext - result.rayTracing = rayTracing - result.rayTracingShaderGroupHandleCaptureReplay = rayTracingShaderGroupHandleCaptureReplay - result.rayTracingShaderGroupHandleCaptureReplayMixed = rayTracingShaderGroupHandleCaptureReplayMixed - result.rayTracingAccelerationStructureCaptureReplay = rayTracingAccelerationStructureCaptureReplay - result.rayTracingIndirectTraceRays = rayTracingIndirectTraceRays - result.rayTracingIndirectAccelerationStructureBuild = rayTracingIndirectAccelerationStructureBuild - result.rayTracingHostAccelerationStructureCommands = rayTracingHostAccelerationStructureCommands - result.rayQuery = rayQuery - result.rayTracingPrimitiveCulling = rayTracingPrimitiveCulling + result.image = image + result.ioSurface = ioSurface -proc newVkPhysicalDeviceRayTracingPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, shaderGroupHandleSize: uint32, maxRecursionDepth: uint32, maxShaderGroupStride: uint32, shaderGroupBaseAlignment: uint32, maxGeometryCount: uint64, maxInstanceCount: uint64, maxPrimitiveCount: uint64, maxDescriptorSetAccelerationStructures: uint32, shaderGroupHandleCaptureReplaySize: uint32): VkPhysicalDeviceRayTracingPropertiesKHR = +proc newVkImportMetalIOSurfaceInfoEXT*(sType: VkStructureType, pNext: pointer = nil, ioSurface: IOSurfaceRef): VkImportMetalIOSurfaceInfoEXT = result.sType = sType result.pNext = pNext - result.shaderGroupHandleSize = shaderGroupHandleSize - result.maxRecursionDepth = maxRecursionDepth - result.maxShaderGroupStride = maxShaderGroupStride - result.shaderGroupBaseAlignment = shaderGroupBaseAlignment - result.maxGeometryCount = maxGeometryCount - result.maxInstanceCount = maxInstanceCount - result.maxPrimitiveCount = maxPrimitiveCount - result.maxDescriptorSetAccelerationStructures = maxDescriptorSetAccelerationStructures - result.shaderGroupHandleCaptureReplaySize = shaderGroupHandleCaptureReplaySize + result.ioSurface = ioSurface -proc newVkPhysicalDeviceRayTracingPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, shaderGroupHandleSize: uint32, maxRecursionDepth: uint32, maxShaderGroupStride: uint32, shaderGroupBaseAlignment: uint32, maxGeometryCount: uint64, maxInstanceCount: uint64, maxTriangleCount: uint64, maxDescriptorSetAccelerationStructures: uint32): VkPhysicalDeviceRayTracingPropertiesNV = +proc newVkExportMetalSharedEventInfoEXT*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, event: VkEvent, mtlSharedEvent: MTLSharedEvent_id): VkExportMetalSharedEventInfoEXT = result.sType = sType result.pNext = pNext - result.shaderGroupHandleSize = shaderGroupHandleSize - result.maxRecursionDepth = maxRecursionDepth - result.maxShaderGroupStride = maxShaderGroupStride - result.shaderGroupBaseAlignment = shaderGroupBaseAlignment - result.maxGeometryCount = maxGeometryCount - result.maxInstanceCount = maxInstanceCount - result.maxTriangleCount = maxTriangleCount - result.maxDescriptorSetAccelerationStructures = maxDescriptorSetAccelerationStructures - -proc newVkStridedBufferRegionKHR*(buffer: VkBuffer, offset: VkDeviceSize, stride: VkDeviceSize, size: VkDeviceSize): VkStridedBufferRegionKHR = - result.buffer = buffer - result.offset = offset - result.stride = stride - result.size = size + result.semaphore = semaphore + result.event = event + result.mtlSharedEvent = mtlSharedEvent -proc newVkTraceRaysIndirectCommandKHR*(width: uint32, height: uint32, depth: uint32): VkTraceRaysIndirectCommandKHR = - result.width = width - result.height = height - result.depth = depth +proc newVkImportMetalSharedEventInfoEXT*(sType: VkStructureType, pNext: pointer = nil, mtlSharedEvent: MTLSharedEvent_id): VkImportMetalSharedEventInfoEXT = + result.sType = sType + result.pNext = pNext + result.mtlSharedEvent = mtlSharedEvent -proc newVkDrmFormatModifierPropertiesListEXT*(sType: VkStructureType, pNext: pointer = nil, drmFormatModifierCount: uint32, pDrmFormatModifierProperties: ptr VkDrmFormatModifierPropertiesEXT): VkDrmFormatModifierPropertiesListEXT = +proc newVkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, nonSeamlessCubeMap: VkBool32): VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT = result.sType = sType result.pNext = pNext - result.drmFormatModifierCount = drmFormatModifierCount - result.pDrmFormatModifierProperties = pDrmFormatModifierProperties + result.nonSeamlessCubeMap = nonSeamlessCubeMap -proc newVkDrmFormatModifierPropertiesEXT*(drmFormatModifier: uint64, drmFormatModifierPlaneCount: uint32, drmFormatModifierTilingFeatures: VkFormatFeatureFlags): VkDrmFormatModifierPropertiesEXT = - result.drmFormatModifier = drmFormatModifier - result.drmFormatModifierPlaneCount = drmFormatModifierPlaneCount - result.drmFormatModifierTilingFeatures = drmFormatModifierTilingFeatures +proc newVkPhysicalDevicePipelineRobustnessFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, pipelineRobustness: VkBool32): VkPhysicalDevicePipelineRobustnessFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.pipelineRobustness = pipelineRobustness -proc newVkPhysicalDeviceImageDrmFormatModifierInfoEXT*(sType: VkStructureType, pNext: pointer = nil, drmFormatModifier: uint64, sharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32): VkPhysicalDeviceImageDrmFormatModifierInfoEXT = +proc newVkPipelineRobustnessCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, storageBuffers: VkPipelineRobustnessBufferBehaviorEXT, uniformBuffers: VkPipelineRobustnessBufferBehaviorEXT, vertexInputs: VkPipelineRobustnessBufferBehaviorEXT, images: VkPipelineRobustnessImageBehaviorEXT): VkPipelineRobustnessCreateInfoEXT = result.sType = sType result.pNext = pNext - result.drmFormatModifier = drmFormatModifier - result.sharingMode = sharingMode - result.queueFamilyIndexCount = queueFamilyIndexCount - result.pQueueFamilyIndices = pQueueFamilyIndices + result.storageBuffers = storageBuffers + result.uniformBuffers = uniformBuffers + result.vertexInputs = vertexInputs + result.images = images -proc newVkImageDrmFormatModifierListCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, drmFormatModifierCount: uint32, pDrmFormatModifiers: ptr uint64): VkImageDrmFormatModifierListCreateInfoEXT = +proc newVkPhysicalDevicePipelineRobustnessPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, defaultRobustnessStorageBuffers: VkPipelineRobustnessBufferBehaviorEXT, defaultRobustnessUniformBuffers: VkPipelineRobustnessBufferBehaviorEXT, defaultRobustnessVertexInputs: VkPipelineRobustnessBufferBehaviorEXT, defaultRobustnessImages: VkPipelineRobustnessImageBehaviorEXT): VkPhysicalDevicePipelineRobustnessPropertiesEXT = result.sType = sType result.pNext = pNext - result.drmFormatModifierCount = drmFormatModifierCount - result.pDrmFormatModifiers = pDrmFormatModifiers + result.defaultRobustnessStorageBuffers = defaultRobustnessStorageBuffers + result.defaultRobustnessUniformBuffers = defaultRobustnessUniformBuffers + result.defaultRobustnessVertexInputs = defaultRobustnessVertexInputs + result.defaultRobustnessImages = defaultRobustnessImages -proc newVkImageDrmFormatModifierExplicitCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, drmFormatModifier: uint64, drmFormatModifierPlaneCount: uint32, pPlaneLayouts: ptr VkSubresourceLayout): VkImageDrmFormatModifierExplicitCreateInfoEXT = +proc newVkImageViewSampleWeightCreateInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, filterCenter: VkOffset2D, filterSize: VkExtent2D, numPhases: uint32): VkImageViewSampleWeightCreateInfoQCOM = result.sType = sType result.pNext = pNext - result.drmFormatModifier = drmFormatModifier - result.drmFormatModifierPlaneCount = drmFormatModifierPlaneCount - result.pPlaneLayouts = pPlaneLayouts + result.filterCenter = filterCenter + result.filterSize = filterSize + result.numPhases = numPhases -proc newVkImageDrmFormatModifierPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, drmFormatModifier: uint64): VkImageDrmFormatModifierPropertiesEXT = +proc newVkPhysicalDeviceImageProcessingFeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, textureSampleWeighted: VkBool32, textureBoxFilter: VkBool32, textureBlockMatch: VkBool32): VkPhysicalDeviceImageProcessingFeaturesQCOM = result.sType = sType result.pNext = pNext - result.drmFormatModifier = drmFormatModifier + result.textureSampleWeighted = textureSampleWeighted + result.textureBoxFilter = textureBoxFilter + result.textureBlockMatch = textureBlockMatch -proc newVkImageStencilUsageCreateInfo*(sType: VkStructureType, pNext: pointer = nil, stencilUsage: VkImageUsageFlags): VkImageStencilUsageCreateInfo = +proc newVkPhysicalDeviceImageProcessingPropertiesQCOM*(sType: VkStructureType, pNext: pointer = nil, maxWeightFilterPhases: uint32, maxWeightFilterDimension: VkExtent2D, maxBlockMatchRegion: VkExtent2D, maxBoxFilterBlockSize: VkExtent2D): VkPhysicalDeviceImageProcessingPropertiesQCOM = result.sType = sType result.pNext = pNext - result.stencilUsage = stencilUsage + result.maxWeightFilterPhases = maxWeightFilterPhases + result.maxWeightFilterDimension = maxWeightFilterDimension + result.maxBlockMatchRegion = maxBlockMatchRegion + result.maxBoxFilterBlockSize = maxBoxFilterBlockSize -proc newVkDeviceMemoryOverallocationCreateInfoAMD*(sType: VkStructureType, pNext: pointer = nil, overallocationBehavior: VkMemoryOverallocationBehaviorAMD): VkDeviceMemoryOverallocationCreateInfoAMD = +proc newVkPhysicalDeviceTilePropertiesFeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, tileProperties: VkBool32): VkPhysicalDeviceTilePropertiesFeaturesQCOM = result.sType = sType result.pNext = pNext - result.overallocationBehavior = overallocationBehavior + result.tileProperties = tileProperties -proc newVkPhysicalDeviceFragmentDensityMapFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, fragmentDensityMap: VkBool32, fragmentDensityMapDynamic: VkBool32, fragmentDensityMapNonSubsampledImages: VkBool32): VkPhysicalDeviceFragmentDensityMapFeaturesEXT = +proc newVkTilePropertiesQCOM*(sType: VkStructureType, pNext: pointer = nil, tileSize: VkExtent3D, apronSize: VkExtent2D, origin: VkOffset2D): VkTilePropertiesQCOM = result.sType = sType result.pNext = pNext - result.fragmentDensityMap = fragmentDensityMap - result.fragmentDensityMapDynamic = fragmentDensityMapDynamic - result.fragmentDensityMapNonSubsampledImages = fragmentDensityMapNonSubsampledImages + result.tileSize = tileSize + result.apronSize = apronSize + result.origin = origin -proc newVkPhysicalDeviceFragmentDensityMap2FeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, fragmentDensityMapDeferred: VkBool32): VkPhysicalDeviceFragmentDensityMap2FeaturesEXT = +proc newVkPhysicalDeviceAmigoProfilingFeaturesSEC*(sType: VkStructureType, pNext: pointer = nil, amigoProfiling: VkBool32): VkPhysicalDeviceAmigoProfilingFeaturesSEC = result.sType = sType result.pNext = pNext - result.fragmentDensityMapDeferred = fragmentDensityMapDeferred + result.amigoProfiling = amigoProfiling -proc newVkPhysicalDeviceFragmentDensityMapPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, minFragmentDensityTexelSize: VkExtent2D, maxFragmentDensityTexelSize: VkExtent2D, fragmentDensityInvocations: VkBool32): VkPhysicalDeviceFragmentDensityMapPropertiesEXT = +proc newVkAmigoProfilingSubmitInfoSEC*(sType: VkStructureType, pNext: pointer = nil, firstDrawTimestamp: uint64, swapBufferTimestamp: uint64): VkAmigoProfilingSubmitInfoSEC = result.sType = sType result.pNext = pNext - result.minFragmentDensityTexelSize = minFragmentDensityTexelSize - result.maxFragmentDensityTexelSize = maxFragmentDensityTexelSize - result.fragmentDensityInvocations = fragmentDensityInvocations + result.firstDrawTimestamp = firstDrawTimestamp + result.swapBufferTimestamp = swapBufferTimestamp -proc newVkPhysicalDeviceFragmentDensityMap2PropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, subsampledLoads: VkBool32, subsampledCoarseReconstructionEarlyAccess: VkBool32, maxSubsampledArrayLayers: uint32, maxDescriptorSetSubsampledSamplers: uint32): VkPhysicalDeviceFragmentDensityMap2PropertiesEXT = +proc newVkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, attachmentFeedbackLoopLayout: VkBool32): VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT = result.sType = sType result.pNext = pNext - result.subsampledLoads = subsampledLoads - result.subsampledCoarseReconstructionEarlyAccess = subsampledCoarseReconstructionEarlyAccess - result.maxSubsampledArrayLayers = maxSubsampledArrayLayers - result.maxDescriptorSetSubsampledSamplers = maxDescriptorSetSubsampledSamplers + result.attachmentFeedbackLoopLayout = attachmentFeedbackLoopLayout -proc newVkRenderPassFragmentDensityMapCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, fragmentDensityMapAttachment: VkAttachmentReference): VkRenderPassFragmentDensityMapCreateInfoEXT = +proc newVkPhysicalDeviceDepthClampZeroOneFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, depthClampZeroOne: VkBool32): VkPhysicalDeviceDepthClampZeroOneFeaturesEXT = result.sType = sType result.pNext = pNext - result.fragmentDensityMapAttachment = fragmentDensityMapAttachment + result.depthClampZeroOne = depthClampZeroOne -proc newVkPhysicalDeviceScalarBlockLayoutFeatures*(sType: VkStructureType, pNext: pointer = nil, scalarBlockLayout: VkBool32): VkPhysicalDeviceScalarBlockLayoutFeatures = +proc newVkPhysicalDeviceAddressBindingReportFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, reportAddressBinding: VkBool32): VkPhysicalDeviceAddressBindingReportFeaturesEXT = result.sType = sType result.pNext = pNext - result.scalarBlockLayout = scalarBlockLayout + result.reportAddressBinding = reportAddressBinding -proc newVkSurfaceProtectedCapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, supportsProtected: VkBool32): VkSurfaceProtectedCapabilitiesKHR = +proc newVkDeviceAddressBindingCallbackDataEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkDeviceAddressBindingFlagsEXT = 0.VkDeviceAddressBindingFlagsEXT, baseAddress: VkDeviceAddress, size: VkDeviceSize, bindingType: VkDeviceAddressBindingTypeEXT): VkDeviceAddressBindingCallbackDataEXT = result.sType = sType result.pNext = pNext - result.supportsProtected = supportsProtected + result.flags = flags + result.baseAddress = baseAddress + result.size = size + result.bindingType = bindingType -proc newVkPhysicalDeviceUniformBufferStandardLayoutFeatures*(sType: VkStructureType, pNext: pointer = nil, uniformBufferStandardLayout: VkBool32): VkPhysicalDeviceUniformBufferStandardLayoutFeatures = +proc newVkPhysicalDeviceOpticalFlowFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, opticalFlow: VkBool32): VkPhysicalDeviceOpticalFlowFeaturesNV = result.sType = sType result.pNext = pNext - result.uniformBufferStandardLayout = uniformBufferStandardLayout + result.opticalFlow = opticalFlow -proc newVkPhysicalDeviceDepthClipEnableFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, depthClipEnable: VkBool32): VkPhysicalDeviceDepthClipEnableFeaturesEXT = +proc newVkPhysicalDeviceOpticalFlowPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, supportedOutputGridSizes: VkOpticalFlowGridSizeFlagsNV, supportedHintGridSizes: VkOpticalFlowGridSizeFlagsNV, hintSupported: VkBool32, costSupported: VkBool32, bidirectionalFlowSupported: VkBool32, globalFlowSupported: VkBool32, minWidth: uint32, minHeight: uint32, maxWidth: uint32, maxHeight: uint32, maxNumRegionsOfInterest: uint32): VkPhysicalDeviceOpticalFlowPropertiesNV = result.sType = sType result.pNext = pNext - result.depthClipEnable = depthClipEnable + result.supportedOutputGridSizes = supportedOutputGridSizes + result.supportedHintGridSizes = supportedHintGridSizes + result.hintSupported = hintSupported + result.costSupported = costSupported + result.bidirectionalFlowSupported = bidirectionalFlowSupported + result.globalFlowSupported = globalFlowSupported + result.minWidth = minWidth + result.minHeight = minHeight + result.maxWidth = maxWidth + result.maxHeight = maxHeight + result.maxNumRegionsOfInterest = maxNumRegionsOfInterest -proc newVkPipelineRasterizationDepthClipStateCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineRasterizationDepthClipStateCreateFlagsEXT = 0.VkPipelineRasterizationDepthClipStateCreateFlagsEXT, depthClipEnable: VkBool32): VkPipelineRasterizationDepthClipStateCreateInfoEXT = +proc newVkOpticalFlowImageFormatInfoNV*(sType: VkStructureType, pNext: pointer = nil, usage: VkOpticalFlowUsageFlagsNV): VkOpticalFlowImageFormatInfoNV = result.sType = sType result.pNext = pNext - result.flags = flags - result.depthClipEnable = depthClipEnable + result.usage = usage -proc newVkPhysicalDeviceMemoryBudgetPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, heapBudget: array[VK_MAX_MEMORY_HEAPS, VkDeviceSize], heapUsage: array[VK_MAX_MEMORY_HEAPS, VkDeviceSize]): VkPhysicalDeviceMemoryBudgetPropertiesEXT = +proc newVkOpticalFlowImageFormatPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat): VkOpticalFlowImageFormatPropertiesNV = result.sType = sType result.pNext = pNext - result.heapBudget = heapBudget - result.heapUsage = heapUsage + result.format = format -proc newVkPhysicalDeviceMemoryPriorityFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, memoryPriority: VkBool32): VkPhysicalDeviceMemoryPriorityFeaturesEXT = +proc newVkOpticalFlowSessionCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, width: uint32, height: uint32, imageFormat: VkFormat, flowVectorFormat: VkFormat, costFormat: VkFormat, outputGridSize: VkOpticalFlowGridSizeFlagsNV, hintGridSize: VkOpticalFlowGridSizeFlagsNV, performanceLevel: VkOpticalFlowPerformanceLevelNV, flags: VkOpticalFlowSessionCreateFlagsNV = 0.VkOpticalFlowSessionCreateFlagsNV): VkOpticalFlowSessionCreateInfoNV = result.sType = sType result.pNext = pNext - result.memoryPriority = memoryPriority + result.width = width + result.height = height + result.imageFormat = imageFormat + result.flowVectorFormat = flowVectorFormat + result.costFormat = costFormat + result.outputGridSize = outputGridSize + result.hintGridSize = hintGridSize + result.performanceLevel = performanceLevel + result.flags = flags -proc newVkMemoryPriorityAllocateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, priority: float32): VkMemoryPriorityAllocateInfoEXT = +proc newVkOpticalFlowSessionCreatePrivateDataInfoNV*(sType: VkStructureType, pNext: pointer = nil, id: uint32, size: uint32, pPrivateData: pointer = nil): VkOpticalFlowSessionCreatePrivateDataInfoNV = result.sType = sType result.pNext = pNext - result.priority = priority + result.id = id + result.size = size + result.pPrivateData = pPrivateData -proc newVkPhysicalDeviceBufferDeviceAddressFeatures*(sType: VkStructureType, pNext: pointer = nil, bufferDeviceAddress: VkBool32, bufferDeviceAddressCaptureReplay: VkBool32, bufferDeviceAddressMultiDevice: VkBool32): VkPhysicalDeviceBufferDeviceAddressFeatures = +proc newVkOpticalFlowExecuteInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkOpticalFlowExecuteFlagsNV = 0.VkOpticalFlowExecuteFlagsNV, regionCount: uint32, pRegions: ptr VkRect2D): VkOpticalFlowExecuteInfoNV = result.sType = sType result.pNext = pNext - result.bufferDeviceAddress = bufferDeviceAddress - result.bufferDeviceAddressCaptureReplay = bufferDeviceAddressCaptureReplay - result.bufferDeviceAddressMultiDevice = bufferDeviceAddressMultiDevice + result.flags = flags + result.regionCount = regionCount + result.pRegions = pRegions -proc newVkPhysicalDeviceBufferDeviceAddressFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, bufferDeviceAddress: VkBool32, bufferDeviceAddressCaptureReplay: VkBool32, bufferDeviceAddressMultiDevice: VkBool32): VkPhysicalDeviceBufferDeviceAddressFeaturesEXT = +proc newVkPhysicalDeviceFaultFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, deviceFault: VkBool32, deviceFaultVendorBinary: VkBool32): VkPhysicalDeviceFaultFeaturesEXT = result.sType = sType result.pNext = pNext - result.bufferDeviceAddress = bufferDeviceAddress - result.bufferDeviceAddressCaptureReplay = bufferDeviceAddressCaptureReplay - result.bufferDeviceAddressMultiDevice = bufferDeviceAddressMultiDevice + result.deviceFault = deviceFault + result.deviceFaultVendorBinary = deviceFaultVendorBinary -proc newVkBufferDeviceAddressInfo*(sType: VkStructureType, pNext: pointer = nil, buffer: VkBuffer): VkBufferDeviceAddressInfo = +proc newVkDeviceFaultAddressInfoEXT*(addressType: VkDeviceFaultAddressTypeEXT, reportedAddress: VkDeviceAddress, addressPrecision: VkDeviceSize): VkDeviceFaultAddressInfoEXT = + result.addressType = addressType + result.reportedAddress = reportedAddress + result.addressPrecision = addressPrecision + +proc newVkDeviceFaultVendorInfoEXT*(description: array[VK_MAX_DESCRIPTION_SIZE, char], vendorFaultCode: uint64, vendorFaultData: uint64): VkDeviceFaultVendorInfoEXT = + result.description = description + result.vendorFaultCode = vendorFaultCode + result.vendorFaultData = vendorFaultData + +proc newVkDeviceFaultCountsEXT*(sType: VkStructureType, pNext: pointer = nil, addressInfoCount: uint32, vendorInfoCount: uint32, vendorBinarySize: VkDeviceSize): VkDeviceFaultCountsEXT = result.sType = sType result.pNext = pNext - result.buffer = buffer + result.addressInfoCount = addressInfoCount + result.vendorInfoCount = vendorInfoCount + result.vendorBinarySize = vendorBinarySize -proc newVkBufferOpaqueCaptureAddressCreateInfo*(sType: VkStructureType, pNext: pointer = nil, opaqueCaptureAddress: uint64): VkBufferOpaqueCaptureAddressCreateInfo = +proc newVkDeviceFaultInfoEXT*(sType: VkStructureType, pNext: pointer = nil, description: array[VK_MAX_DESCRIPTION_SIZE, char], pAddressInfos: ptr VkDeviceFaultAddressInfoEXT, pVendorInfos: ptr VkDeviceFaultVendorInfoEXT, pVendorBinaryData: pointer = nil): VkDeviceFaultInfoEXT = result.sType = sType result.pNext = pNext - result.opaqueCaptureAddress = opaqueCaptureAddress + result.description = description + result.pAddressInfos = pAddressInfos + result.pVendorInfos = pVendorInfos + result.pVendorBinaryData = pVendorBinaryData -proc newVkBufferDeviceAddressCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, deviceAddress: VkDeviceAddress): VkBufferDeviceAddressCreateInfoEXT = +proc newVkDeviceFaultVendorBinaryHeaderVersionOneEXT*(headerSize: uint32, headerVersion: VkDeviceFaultVendorBinaryHeaderVersionEXT, vendorID: uint32, deviceID: uint32, driverVersion: uint32, pipelineCacheUUID: array[VK_UUID_SIZE, uint8], applicationNameOffset: uint32, applicationVersion: uint32, engineNameOffset: uint32, engineVersion: uint32, apiVersion: uint32): VkDeviceFaultVendorBinaryHeaderVersionOneEXT = + result.headerSize = headerSize + result.headerVersion = headerVersion + result.vendorID = vendorID + result.deviceID = deviceID + result.driverVersion = driverVersion + result.pipelineCacheUUID = pipelineCacheUUID + result.applicationNameOffset = applicationNameOffset + result.applicationVersion = applicationVersion + result.engineNameOffset = engineNameOffset + result.engineVersion = engineVersion + result.apiVersion = apiVersion + +proc newVkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, pipelineLibraryGroupHandles: VkBool32): VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT = result.sType = sType result.pNext = pNext - result.deviceAddress = deviceAddress + result.pipelineLibraryGroupHandles = pipelineLibraryGroupHandles -proc newVkPhysicalDeviceImageViewImageFormatInfoEXT*(sType: VkStructureType, pNext: pointer = nil, imageViewType: VkImageViewType): VkPhysicalDeviceImageViewImageFormatInfoEXT = +proc newVkDepthBiasInfoEXT*(sType: VkStructureType, pNext: pointer = nil, depthBiasConstantFactor: float32, depthBiasClamp: float32, depthBiasSlopeFactor: float32): VkDepthBiasInfoEXT = result.sType = sType result.pNext = pNext - result.imageViewType = imageViewType + result.depthBiasConstantFactor = depthBiasConstantFactor + result.depthBiasClamp = depthBiasClamp + result.depthBiasSlopeFactor = depthBiasSlopeFactor -proc newVkFilterCubicImageViewImageFormatPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, filterCubic: VkBool32, filterCubicMinmax: VkBool32): VkFilterCubicImageViewImageFormatPropertiesEXT = +proc newVkDepthBiasRepresentationInfoEXT*(sType: VkStructureType, pNext: pointer = nil, depthBiasRepresentation: VkDepthBiasRepresentationEXT, depthBiasExact: VkBool32): VkDepthBiasRepresentationInfoEXT = result.sType = sType result.pNext = pNext - result.filterCubic = filterCubic - result.filterCubicMinmax = filterCubicMinmax + result.depthBiasRepresentation = depthBiasRepresentation + result.depthBiasExact = depthBiasExact -proc newVkPhysicalDeviceImagelessFramebufferFeatures*(sType: VkStructureType, pNext: pointer = nil, imagelessFramebuffer: VkBool32): VkPhysicalDeviceImagelessFramebufferFeatures = +proc newVkDecompressMemoryRegionNV*(srcAddress: VkDeviceAddress, dstAddress: VkDeviceAddress, compressedSize: VkDeviceSize, decompressedSize: VkDeviceSize, decompressionMethod: VkMemoryDecompressionMethodFlagsNV): VkDecompressMemoryRegionNV = + result.srcAddress = srcAddress + result.dstAddress = dstAddress + result.compressedSize = compressedSize + result.decompressedSize = decompressedSize + result.decompressionMethod = decompressionMethod + +proc newVkPhysicalDeviceShaderCoreBuiltinsPropertiesARM*(sType: VkStructureType, pNext: pointer = nil, shaderCoreMask: uint64, shaderCoreCount: uint32, shaderWarpsPerCore: uint32): VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM = result.sType = sType result.pNext = pNext - result.imagelessFramebuffer = imagelessFramebuffer + result.shaderCoreMask = shaderCoreMask + result.shaderCoreCount = shaderCoreCount + result.shaderWarpsPerCore = shaderWarpsPerCore -proc newVkFramebufferAttachmentsCreateInfo*(sType: VkStructureType, pNext: pointer = nil, attachmentImageInfoCount: uint32, pAttachmentImageInfos: ptr VkFramebufferAttachmentImageInfo): VkFramebufferAttachmentsCreateInfo = +proc newVkPhysicalDeviceShaderCoreBuiltinsFeaturesARM*(sType: VkStructureType, pNext: pointer = nil, shaderCoreBuiltins: VkBool32): VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM = result.sType = sType result.pNext = pNext - result.attachmentImageInfoCount = attachmentImageInfoCount - result.pAttachmentImageInfos = pAttachmentImageInfos + result.shaderCoreBuiltins = shaderCoreBuiltins -proc newVkFramebufferAttachmentImageInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkImageCreateFlags = 0.VkImageCreateFlags, usage: VkImageUsageFlags, width: uint32, height: uint32, layerCount: uint32, viewFormatCount: uint32, pViewFormats: ptr VkFormat): VkFramebufferAttachmentImageInfo = +proc newVkFrameBoundaryEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkFrameBoundaryFlagsEXT = 0.VkFrameBoundaryFlagsEXT, frameID: uint64, imageCount: uint32, pImages: ptr VkImage, bufferCount: uint32, pBuffers: ptr VkBuffer, tagName: uint64, tagSize: uint, pTag: pointer = nil): VkFrameBoundaryEXT = result.sType = sType result.pNext = pNext result.flags = flags - result.usage = usage - result.width = width - result.height = height - result.layerCount = layerCount - result.viewFormatCount = viewFormatCount - result.pViewFormats = pViewFormats + result.frameID = frameID + result.imageCount = imageCount + result.pImages = pImages + result.bufferCount = bufferCount + result.pBuffers = pBuffers + result.tagName = tagName + result.tagSize = tagSize + result.pTag = pTag -proc newVkRenderPassAttachmentBeginInfo*(sType: VkStructureType, pNext: pointer = nil, attachmentCount: uint32, pAttachments: ptr VkImageView): VkRenderPassAttachmentBeginInfo = +proc newVkPhysicalDeviceFrameBoundaryFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, frameBoundary: VkBool32): VkPhysicalDeviceFrameBoundaryFeaturesEXT = result.sType = sType result.pNext = pNext - result.attachmentCount = attachmentCount - result.pAttachments = pAttachments + result.frameBoundary = frameBoundary -proc newVkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, textureCompressionASTC_HDR: VkBool32): VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT = +proc newVkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, dynamicRenderingUnusedAttachments: VkBool32): VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT = result.sType = sType result.pNext = pNext - result.textureCompressionASTC_HDR = textureCompressionASTC_HDR + result.dynamicRenderingUnusedAttachments = dynamicRenderingUnusedAttachments -proc newVkPhysicalDeviceCooperativeMatrixFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, cooperativeMatrix: VkBool32, cooperativeMatrixRobustBufferAccess: VkBool32): VkPhysicalDeviceCooperativeMatrixFeaturesNV = +proc newVkSurfacePresentModeEXT*(sType: VkStructureType, pNext: pointer = nil, presentMode: VkPresentModeKHR): VkSurfacePresentModeEXT = result.sType = sType result.pNext = pNext - result.cooperativeMatrix = cooperativeMatrix - result.cooperativeMatrixRobustBufferAccess = cooperativeMatrixRobustBufferAccess + result.presentMode = presentMode -proc newVkPhysicalDeviceCooperativeMatrixPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, cooperativeMatrixSupportedStages: VkShaderStageFlags): VkPhysicalDeviceCooperativeMatrixPropertiesNV = +proc newVkSurfacePresentScalingCapabilitiesEXT*(sType: VkStructureType, pNext: pointer = nil, supportedPresentScaling: VkPresentScalingFlagsEXT, supportedPresentGravityX: VkPresentGravityFlagsEXT, supportedPresentGravityY: VkPresentGravityFlagsEXT, minScaledImageExtent: VkExtent2D, maxScaledImageExtent: VkExtent2D): VkSurfacePresentScalingCapabilitiesEXT = result.sType = sType result.pNext = pNext - result.cooperativeMatrixSupportedStages = cooperativeMatrixSupportedStages + result.supportedPresentScaling = supportedPresentScaling + result.supportedPresentGravityX = supportedPresentGravityX + result.supportedPresentGravityY = supportedPresentGravityY + result.minScaledImageExtent = minScaledImageExtent + result.maxScaledImageExtent = maxScaledImageExtent -proc newVkCooperativeMatrixPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, MSize: uint32, NSize: uint32, KSize: uint32, AType: VkComponentTypeNV, BType: VkComponentTypeNV, CType: VkComponentTypeNV, DType: VkComponentTypeNV, scope: VkScopeNV): VkCooperativeMatrixPropertiesNV = +proc newVkSurfacePresentModeCompatibilityEXT*(sType: VkStructureType, pNext: pointer = nil, presentModeCount: uint32, pPresentModes: ptr VkPresentModeKHR): VkSurfacePresentModeCompatibilityEXT = result.sType = sType result.pNext = pNext - result.MSize = MSize - result.NSize = NSize - result.KSize = KSize - result.AType = AType - result.BType = BType - result.CType = CType - result.DType = DType - result.scope = scope + result.presentModeCount = presentModeCount + result.pPresentModes = pPresentModes -proc newVkPhysicalDeviceYcbcrImageArraysFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, ycbcrImageArrays: VkBool32): VkPhysicalDeviceYcbcrImageArraysFeaturesEXT = +proc newVkPhysicalDeviceSwapchainMaintenance1FeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, swapchainMaintenance1: VkBool32): VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT = result.sType = sType result.pNext = pNext - result.ycbcrImageArrays = ycbcrImageArrays + result.swapchainMaintenance1 = swapchainMaintenance1 -proc newVkImageViewHandleInfoNVX*(sType: VkStructureType, pNext: pointer = nil, imageView: VkImageView, descriptorType: VkDescriptorType, sampler: VkSampler): VkImageViewHandleInfoNVX = +proc newVkSwapchainPresentFenceInfoEXT*(sType: VkStructureType, pNext: pointer = nil, swapchainCount: uint32, pFences: ptr VkFence): VkSwapchainPresentFenceInfoEXT = result.sType = sType result.pNext = pNext - result.imageView = imageView - result.descriptorType = descriptorType - result.sampler = sampler + result.swapchainCount = swapchainCount + result.pFences = pFences -proc newVkImageViewAddressPropertiesNVX*(sType: VkStructureType, pNext: pointer = nil, deviceAddress: VkDeviceAddress, size: VkDeviceSize): VkImageViewAddressPropertiesNVX = +proc newVkSwapchainPresentModesCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, presentModeCount: uint32, pPresentModes: ptr VkPresentModeKHR): VkSwapchainPresentModesCreateInfoEXT = result.sType = sType result.pNext = pNext - result.deviceAddress = deviceAddress - result.size = size + result.presentModeCount = presentModeCount + result.pPresentModes = pPresentModes -proc newVkPresentFrameTokenGGP*(sType: VkStructureType, pNext: pointer = nil, frameToken: GgpFrameToken): VkPresentFrameTokenGGP = +proc newVkSwapchainPresentModeInfoEXT*(sType: VkStructureType, pNext: pointer = nil, swapchainCount: uint32, pPresentModes: ptr VkPresentModeKHR): VkSwapchainPresentModeInfoEXT = result.sType = sType result.pNext = pNext - result.frameToken = frameToken - -proc newVkPipelineCreationFeedbackEXT*(flags: VkPipelineCreationFeedbackFlagsEXT = 0.VkPipelineCreationFeedbackFlagsEXT, duration: uint64): VkPipelineCreationFeedbackEXT = - result.flags = flags - result.duration = duration + result.swapchainCount = swapchainCount + result.pPresentModes = pPresentModes -proc newVkPipelineCreationFeedbackCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, pPipelineCreationFeedback: ptr VkPipelineCreationFeedbackEXT, pipelineStageCreationFeedbackCount: uint32, pPipelineStageCreationFeedbacks: ptr ptr VkPipelineCreationFeedbackEXT): VkPipelineCreationFeedbackCreateInfoEXT = +proc newVkSwapchainPresentScalingCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, scalingBehavior: VkPresentScalingFlagsEXT, presentGravityX: VkPresentGravityFlagsEXT, presentGravityY: VkPresentGravityFlagsEXT): VkSwapchainPresentScalingCreateInfoEXT = result.sType = sType result.pNext = pNext - result.pPipelineCreationFeedback = pPipelineCreationFeedback - result.pipelineStageCreationFeedbackCount = pipelineStageCreationFeedbackCount - result.pPipelineStageCreationFeedbacks = pPipelineStageCreationFeedbacks + result.scalingBehavior = scalingBehavior + result.presentGravityX = presentGravityX + result.presentGravityY = presentGravityY -proc newVkSurfaceFullScreenExclusiveInfoEXT*(sType: VkStructureType, pNext: pointer = nil, fullScreenExclusive: VkFullScreenExclusiveEXT): VkSurfaceFullScreenExclusiveInfoEXT = +proc newVkReleaseSwapchainImagesInfoEXT*(sType: VkStructureType, pNext: pointer = nil, swapchain: VkSwapchainKHR, imageIndexCount: uint32, pImageIndices: ptr uint32): VkReleaseSwapchainImagesInfoEXT = result.sType = sType result.pNext = pNext - result.fullScreenExclusive = fullScreenExclusive + result.swapchain = swapchain + result.imageIndexCount = imageIndexCount + result.pImageIndices = pImageIndices -proc newVkSurfaceFullScreenExclusiveWin32InfoEXT*(sType: VkStructureType, pNext: pointer = nil, hmonitor: HMONITOR): VkSurfaceFullScreenExclusiveWin32InfoEXT = +proc newVkPhysicalDeviceDepthBiasControlFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, depthBiasControl: VkBool32, leastRepresentableValueForceUnormRepresentation: VkBool32, floatRepresentation: VkBool32, depthBiasExact: VkBool32): VkPhysicalDeviceDepthBiasControlFeaturesEXT = result.sType = sType result.pNext = pNext - result.hmonitor = hmonitor + result.depthBiasControl = depthBiasControl + result.leastRepresentableValueForceUnormRepresentation = leastRepresentableValueForceUnormRepresentation + result.floatRepresentation = floatRepresentation + result.depthBiasExact = depthBiasExact -proc newVkSurfaceCapabilitiesFullScreenExclusiveEXT*(sType: VkStructureType, pNext: pointer = nil, fullScreenExclusiveSupported: VkBool32): VkSurfaceCapabilitiesFullScreenExclusiveEXT = +proc newVkPhysicalDeviceRayTracingInvocationReorderFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, rayTracingInvocationReorder: VkBool32): VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV = result.sType = sType result.pNext = pNext - result.fullScreenExclusiveSupported = fullScreenExclusiveSupported + result.rayTracingInvocationReorder = rayTracingInvocationReorder -proc newVkPhysicalDevicePerformanceQueryFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, performanceCounterQueryPools: VkBool32, performanceCounterMultipleQueryPools: VkBool32): VkPhysicalDevicePerformanceQueryFeaturesKHR = +proc newVkPhysicalDeviceRayTracingInvocationReorderPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, rayTracingInvocationReorderReorderingHint: VkRayTracingInvocationReorderModeNV): VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV = result.sType = sType result.pNext = pNext - result.performanceCounterQueryPools = performanceCounterQueryPools - result.performanceCounterMultipleQueryPools = performanceCounterMultipleQueryPools + result.rayTracingInvocationReorderReorderingHint = rayTracingInvocationReorderReorderingHint -proc newVkPhysicalDevicePerformanceQueryPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, allowCommandBufferQueryCopies: VkBool32): VkPhysicalDevicePerformanceQueryPropertiesKHR = +proc newVkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, extendedSparseAddressSpace: VkBool32): VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV = result.sType = sType result.pNext = pNext - result.allowCommandBufferQueryCopies = allowCommandBufferQueryCopies + result.extendedSparseAddressSpace = extendedSparseAddressSpace -proc newVkPerformanceCounterKHR*(sType: VkStructureType, pNext: pointer = nil, unit: VkPerformanceCounterUnitKHR, scope: VkPerformanceCounterScopeKHR, storage: VkPerformanceCounterStorageKHR, uuid: array[VK_UUID_SIZE, uint8]): VkPerformanceCounterKHR = +proc newVkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV*(sType: VkStructureType, pNext: pointer = nil, extendedSparseAddressSpaceSize: VkDeviceSize, extendedSparseImageUsageFlags: VkImageUsageFlags, extendedSparseBufferUsageFlags: VkBufferUsageFlags): VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV = result.sType = sType result.pNext = pNext - result.unit = unit - result.scope = scope - result.storage = storage - result.uuid = uuid + result.extendedSparseAddressSpaceSize = extendedSparseAddressSpaceSize + result.extendedSparseImageUsageFlags = extendedSparseImageUsageFlags + result.extendedSparseBufferUsageFlags = extendedSparseBufferUsageFlags -proc newVkPerformanceCounterDescriptionKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkPerformanceCounterDescriptionFlagsKHR = 0.VkPerformanceCounterDescriptionFlagsKHR, name: array[VK_MAX_DESCRIPTION_SIZE, char], category: array[VK_MAX_DESCRIPTION_SIZE, char], description: array[VK_MAX_DESCRIPTION_SIZE, char]): VkPerformanceCounterDescriptionKHR = +proc newVkDirectDriverLoadingInfoLUNARG*(sType: VkStructureType, pNext: pointer = nil, flags: VkDirectDriverLoadingFlagsLUNARG = 0.VkDirectDriverLoadingFlagsLUNARG, pfnGetInstanceProcAddr: PFN_vkGetInstanceProcAddrLUNARG): VkDirectDriverLoadingInfoLUNARG = result.sType = sType result.pNext = pNext result.flags = flags - result.name = name - result.category = category - result.description = description + result.pfnGetInstanceProcAddr = pfnGetInstanceProcAddr -proc newVkQueryPoolPerformanceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, queueFamilyIndex: uint32, counterIndexCount: uint32, pCounterIndices: ptr uint32): VkQueryPoolPerformanceCreateInfoKHR = +proc newVkDirectDriverLoadingListLUNARG*(sType: VkStructureType, pNext: pointer = nil, mode: VkDirectDriverLoadingModeLUNARG, driverCount: uint32, pDrivers: ptr VkDirectDriverLoadingInfoLUNARG): VkDirectDriverLoadingListLUNARG = result.sType = sType result.pNext = pNext - result.queueFamilyIndex = queueFamilyIndex - result.counterIndexCount = counterIndexCount - result.pCounterIndices = pCounterIndices + result.mode = mode + result.driverCount = driverCount + result.pDrivers = pDrivers -proc newVkAcquireProfilingLockInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkAcquireProfilingLockFlagsKHR = 0.VkAcquireProfilingLockFlagsKHR, timeout: uint64): VkAcquireProfilingLockInfoKHR = +proc newVkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, multiviewPerViewViewports: VkBool32): VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM = result.sType = sType result.pNext = pNext - result.flags = flags - result.timeout = timeout + result.multiviewPerViewViewports = multiviewPerViewViewports -proc newVkPerformanceQuerySubmitInfoKHR*(sType: VkStructureType, pNext: pointer = nil, counterPassIndex: uint32): VkPerformanceQuerySubmitInfoKHR = +proc newVkPhysicalDeviceRayTracingPositionFetchFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, rayTracingPositionFetch: VkBool32): VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR = result.sType = sType result.pNext = pNext - result.counterPassIndex = counterPassIndex + result.rayTracingPositionFetch = rayTracingPositionFetch -proc newVkHeadlessSurfaceCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkHeadlessSurfaceCreateFlagsEXT = 0.VkHeadlessSurfaceCreateFlagsEXT): VkHeadlessSurfaceCreateInfoEXT = +proc newVkDeviceImageSubresourceInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pCreateInfo: ptr VkImageCreateInfo, pSubresource: ptr VkImageSubresource2KHR): VkDeviceImageSubresourceInfoKHR = result.sType = sType result.pNext = pNext - result.flags = flags + result.pCreateInfo = pCreateInfo + result.pSubresource = pSubresource -proc newVkPhysicalDeviceCoverageReductionModeFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, coverageReductionMode: VkBool32): VkPhysicalDeviceCoverageReductionModeFeaturesNV = +proc newVkPhysicalDeviceShaderCorePropertiesARM*(sType: VkStructureType, pNext: pointer = nil, pixelRate: uint32, texelRate: uint32, fmaRate: uint32): VkPhysicalDeviceShaderCorePropertiesARM = result.sType = sType result.pNext = pNext - result.coverageReductionMode = coverageReductionMode + result.pixelRate = pixelRate + result.texelRate = texelRate + result.fmaRate = fmaRate -proc newVkPipelineCoverageReductionStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCoverageReductionStateCreateFlagsNV = 0.VkPipelineCoverageReductionStateCreateFlagsNV, coverageReductionMode: VkCoverageReductionModeNV): VkPipelineCoverageReductionStateCreateInfoNV = +proc newVkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, multiviewPerViewRenderAreas: VkBool32): VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM = result.sType = sType result.pNext = pNext - result.flags = flags - result.coverageReductionMode = coverageReductionMode + result.multiviewPerViewRenderAreas = multiviewPerViewRenderAreas -proc newVkFramebufferMixedSamplesCombinationNV*(sType: VkStructureType, pNext: pointer = nil, coverageReductionMode: VkCoverageReductionModeNV, rasterizationSamples: VkSampleCountFlagBits, depthStencilSamples: VkSampleCountFlags, colorSamples: VkSampleCountFlags): VkFramebufferMixedSamplesCombinationNV = +proc newVkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, perViewRenderAreaCount: uint32, pPerViewRenderAreas: ptr VkRect2D): VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM = result.sType = sType result.pNext = pNext - result.coverageReductionMode = coverageReductionMode - result.rasterizationSamples = rasterizationSamples - result.depthStencilSamples = depthStencilSamples - result.colorSamples = colorSamples + result.perViewRenderAreaCount = perViewRenderAreaCount + result.pPerViewRenderAreas = pPerViewRenderAreas -proc newVkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL*(sType: VkStructureType, pNext: pointer = nil, shaderIntegerFunctions2: VkBool32): VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL = +proc newVkQueryLowLatencySupportNV*(sType: VkStructureType, pNext: pointer = nil, pQueriedLowLatencyData: pointer = nil): VkQueryLowLatencySupportNV = result.sType = sType result.pNext = pNext - result.shaderIntegerFunctions2 = shaderIntegerFunctions2 + result.pQueriedLowLatencyData = pQueriedLowLatencyData -proc newVkPerformanceValueINTEL*(`type`: VkPerformanceValueTypeINTEL, data: VkPerformanceValueDataINTEL): VkPerformanceValueINTEL = - result.`type` = `type` - result.data = data +proc newVkMemoryMapInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkMemoryMapFlags = 0.VkMemoryMapFlags, memory: VkDeviceMemory, offset: VkDeviceSize, size: VkDeviceSize): VkMemoryMapInfoKHR = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.memory = memory + result.offset = offset + result.size = size -proc newVkInitializePerformanceApiInfoINTEL*(sType: VkStructureType, pNext: pointer = nil, pUserData: pointer = nil): VkInitializePerformanceApiInfoINTEL = +proc newVkMemoryUnmapInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkMemoryUnmapFlagsKHR = 0.VkMemoryUnmapFlagsKHR, memory: VkDeviceMemory): VkMemoryUnmapInfoKHR = result.sType = sType result.pNext = pNext - result.pUserData = pUserData + result.flags = flags + result.memory = memory -proc newVkQueryPoolPerformanceQueryCreateInfoINTEL*(sType: VkStructureType, pNext: pointer = nil, performanceCountersSampling: VkQueryPoolSamplingModeINTEL): VkQueryPoolPerformanceQueryCreateInfoINTEL = +proc newVkPhysicalDeviceShaderObjectFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderObject: VkBool32): VkPhysicalDeviceShaderObjectFeaturesEXT = result.sType = sType result.pNext = pNext - result.performanceCountersSampling = performanceCountersSampling + result.shaderObject = shaderObject -proc newVkPerformanceMarkerInfoINTEL*(sType: VkStructureType, pNext: pointer = nil, marker: uint64): VkPerformanceMarkerInfoINTEL = +proc newVkPhysicalDeviceShaderObjectPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderBinaryUUID: array[VK_UUID_SIZE, uint8], shaderBinaryVersion: uint32): VkPhysicalDeviceShaderObjectPropertiesEXT = result.sType = sType result.pNext = pNext - result.marker = marker + result.shaderBinaryUUID = shaderBinaryUUID + result.shaderBinaryVersion = shaderBinaryVersion -proc newVkPerformanceStreamMarkerInfoINTEL*(sType: VkStructureType, pNext: pointer = nil, marker: uint32): VkPerformanceStreamMarkerInfoINTEL = +proc newVkShaderCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkShaderCreateFlagsEXT = 0.VkShaderCreateFlagsEXT, stage: VkShaderStageFlagBits, nextStage: VkShaderStageFlags, codeType: VkShaderCodeTypeEXT, codeSize: uint, pCode: pointer = nil, pName: cstring, setLayoutCount: uint32, pSetLayouts: ptr VkDescriptorSetLayout, pushConstantRangeCount: uint32, pPushConstantRanges: ptr VkPushConstantRange, pSpecializationInfo: ptr VkSpecializationInfo): VkShaderCreateInfoEXT = result.sType = sType result.pNext = pNext - result.marker = marker + result.flags = flags + result.stage = stage + result.nextStage = nextStage + result.codeType = codeType + result.codeSize = codeSize + result.pCode = pCode + result.pName = pName + result.setLayoutCount = setLayoutCount + result.pSetLayouts = pSetLayouts + result.pushConstantRangeCount = pushConstantRangeCount + result.pPushConstantRanges = pPushConstantRanges + result.pSpecializationInfo = pSpecializationInfo -proc newVkPerformanceOverrideInfoINTEL*(sType: VkStructureType, pNext: pointer = nil, `type`: VkPerformanceOverrideTypeINTEL, enable: VkBool32, parameter: uint64): VkPerformanceOverrideInfoINTEL = +proc newVkPhysicalDeviceShaderTileImageFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderTileImageColorReadAccess: VkBool32, shaderTileImageDepthReadAccess: VkBool32, shaderTileImageStencilReadAccess: VkBool32): VkPhysicalDeviceShaderTileImageFeaturesEXT = result.sType = sType result.pNext = pNext - result.`type` = `type` - result.enable = enable - result.parameter = parameter + result.shaderTileImageColorReadAccess = shaderTileImageColorReadAccess + result.shaderTileImageDepthReadAccess = shaderTileImageDepthReadAccess + result.shaderTileImageStencilReadAccess = shaderTileImageStencilReadAccess -proc newVkPerformanceConfigurationAcquireInfoINTEL*(sType: VkStructureType, pNext: pointer = nil, `type`: VkPerformanceConfigurationTypeINTEL): VkPerformanceConfigurationAcquireInfoINTEL = +proc newVkPhysicalDeviceShaderTileImagePropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderTileImageCoherentReadAccelerated: VkBool32, shaderTileImageReadSampleFromPixelRateInvocation: VkBool32, shaderTileImageReadFromHelperInvocation: VkBool32): VkPhysicalDeviceShaderTileImagePropertiesEXT = result.sType = sType result.pNext = pNext - result.`type` = `type` + result.shaderTileImageCoherentReadAccelerated = shaderTileImageCoherentReadAccelerated + result.shaderTileImageReadSampleFromPixelRateInvocation = shaderTileImageReadSampleFromPixelRateInvocation + result.shaderTileImageReadFromHelperInvocation = shaderTileImageReadFromHelperInvocation -proc newVkPhysicalDeviceShaderClockFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, shaderSubgroupClock: VkBool32, shaderDeviceClock: VkBool32): VkPhysicalDeviceShaderClockFeaturesKHR = +proc newVkImportScreenBufferInfoQNX*(sType: VkStructureType, pNext: pointer = nil, buffer: ptr _screen_buffer): VkImportScreenBufferInfoQNX = result.sType = sType result.pNext = pNext - result.shaderSubgroupClock = shaderSubgroupClock - result.shaderDeviceClock = shaderDeviceClock + result.buffer = buffer -proc newVkPhysicalDeviceIndexTypeUint8FeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, indexTypeUint8: VkBool32): VkPhysicalDeviceIndexTypeUint8FeaturesEXT = +proc newVkScreenBufferPropertiesQNX*(sType: VkStructureType, pNext: pointer = nil, allocationSize: VkDeviceSize, memoryTypeBits: uint32): VkScreenBufferPropertiesQNX = result.sType = sType result.pNext = pNext - result.indexTypeUint8 = indexTypeUint8 + result.allocationSize = allocationSize + result.memoryTypeBits = memoryTypeBits -proc newVkPhysicalDeviceShaderSMBuiltinsPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, shaderSMCount: uint32, shaderWarpsPerSM: uint32): VkPhysicalDeviceShaderSMBuiltinsPropertiesNV = +proc newVkScreenBufferFormatPropertiesQNX*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat, externalFormat: uint64, screenUsage: uint64, formatFeatures: VkFormatFeatureFlags, samplerYcbcrConversionComponents: VkComponentMapping, suggestedYcbcrModel: VkSamplerYcbcrModelConversion, suggestedYcbcrRange: VkSamplerYcbcrRange, suggestedXChromaOffset: VkChromaLocation, suggestedYChromaOffset: VkChromaLocation): VkScreenBufferFormatPropertiesQNX = result.sType = sType result.pNext = pNext - result.shaderSMCount = shaderSMCount - result.shaderWarpsPerSM = shaderWarpsPerSM + result.format = format + result.externalFormat = externalFormat + result.screenUsage = screenUsage + result.formatFeatures = formatFeatures + result.samplerYcbcrConversionComponents = samplerYcbcrConversionComponents + result.suggestedYcbcrModel = suggestedYcbcrModel + result.suggestedYcbcrRange = suggestedYcbcrRange + result.suggestedXChromaOffset = suggestedXChromaOffset + result.suggestedYChromaOffset = suggestedYChromaOffset -proc newVkPhysicalDeviceShaderSMBuiltinsFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, shaderSMBuiltins: VkBool32): VkPhysicalDeviceShaderSMBuiltinsFeaturesNV = +proc newVkExternalFormatQNX*(sType: VkStructureType, pNext: pointer = nil, externalFormat: uint64): VkExternalFormatQNX = result.sType = sType result.pNext = pNext - result.shaderSMBuiltins = shaderSMBuiltins + result.externalFormat = externalFormat -proc newVkPhysicalDeviceFragmentShaderInterlockFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, fragmentShaderSampleInterlock: VkBool32, fragmentShaderPixelInterlock: VkBool32, fragmentShaderShadingRateInterlock: VkBool32): VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT = +proc newVkPhysicalDeviceExternalMemoryScreenBufferFeaturesQNX*(sType: VkStructureType, pNext: pointer = nil, screenBufferImport: VkBool32): VkPhysicalDeviceExternalMemoryScreenBufferFeaturesQNX = result.sType = sType result.pNext = pNext - result.fragmentShaderSampleInterlock = fragmentShaderSampleInterlock - result.fragmentShaderPixelInterlock = fragmentShaderPixelInterlock - result.fragmentShaderShadingRateInterlock = fragmentShaderShadingRateInterlock + result.screenBufferImport = screenBufferImport -proc newVkPhysicalDeviceSeparateDepthStencilLayoutsFeatures*(sType: VkStructureType, pNext: pointer = nil, separateDepthStencilLayouts: VkBool32): VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures = +proc newVkPhysicalDeviceCooperativeMatrixFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, cooperativeMatrix: VkBool32, cooperativeMatrixRobustBufferAccess: VkBool32): VkPhysicalDeviceCooperativeMatrixFeaturesKHR = result.sType = sType result.pNext = pNext - result.separateDepthStencilLayouts = separateDepthStencilLayouts + result.cooperativeMatrix = cooperativeMatrix + result.cooperativeMatrixRobustBufferAccess = cooperativeMatrixRobustBufferAccess -proc newVkAttachmentReferenceStencilLayout*(sType: VkStructureType, pNext: pointer = nil, stencilLayout: VkImageLayout): VkAttachmentReferenceStencilLayout = +proc newVkCooperativeMatrixPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, MSize: uint32, NSize: uint32, KSize: uint32, AType: VkComponentTypeKHR, BType: VkComponentTypeKHR, CType: VkComponentTypeKHR, ResultType: VkComponentTypeKHR, saturatingAccumulation: VkBool32, scope: VkScopeKHR): VkCooperativeMatrixPropertiesKHR = result.sType = sType result.pNext = pNext - result.stencilLayout = stencilLayout + result.MSize = MSize + result.NSize = NSize + result.KSize = KSize + result.AType = AType + result.BType = BType + result.CType = CType + result.ResultType = ResultType + result.saturatingAccumulation = saturatingAccumulation + result.scope = scope -proc newVkAttachmentDescriptionStencilLayout*(sType: VkStructureType, pNext: pointer = nil, stencilInitialLayout: VkImageLayout, stencilFinalLayout: VkImageLayout): VkAttachmentDescriptionStencilLayout = +proc newVkPhysicalDeviceCooperativeMatrixPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, cooperativeMatrixSupportedStages: VkShaderStageFlags): VkPhysicalDeviceCooperativeMatrixPropertiesKHR = result.sType = sType result.pNext = pNext - result.stencilInitialLayout = stencilInitialLayout - result.stencilFinalLayout = stencilFinalLayout + result.cooperativeMatrixSupportedStages = cooperativeMatrixSupportedStages -proc newVkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, pipelineExecutableInfo: VkBool32): VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR = +proc newVkPhysicalDeviceShaderEnqueuePropertiesAMDX*(sType: VkStructureType, pNext: pointer = nil, maxExecutionGraphDepth: uint32, maxExecutionGraphShaderOutputNodes: uint32, maxExecutionGraphShaderPayloadSize: uint32, maxExecutionGraphShaderPayloadCount: uint32, executionGraphDispatchAddressAlignment: uint32): VkPhysicalDeviceShaderEnqueuePropertiesAMDX = result.sType = sType result.pNext = pNext - result.pipelineExecutableInfo = pipelineExecutableInfo + result.maxExecutionGraphDepth = maxExecutionGraphDepth + result.maxExecutionGraphShaderOutputNodes = maxExecutionGraphShaderOutputNodes + result.maxExecutionGraphShaderPayloadSize = maxExecutionGraphShaderPayloadSize + result.maxExecutionGraphShaderPayloadCount = maxExecutionGraphShaderPayloadCount + result.executionGraphDispatchAddressAlignment = executionGraphDispatchAddressAlignment -proc newVkPipelineInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pipeline: VkPipeline): VkPipelineInfoKHR = +proc newVkPhysicalDeviceShaderEnqueueFeaturesAMDX*(sType: VkStructureType, pNext: pointer = nil, shaderEnqueue: VkBool32): VkPhysicalDeviceShaderEnqueueFeaturesAMDX = result.sType = sType result.pNext = pNext - result.pipeline = pipeline + result.shaderEnqueue = shaderEnqueue -proc newVkPipelineExecutablePropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, stages: VkShaderStageFlags, name: array[VK_MAX_DESCRIPTION_SIZE, char], description: array[VK_MAX_DESCRIPTION_SIZE, char], subgroupSize: uint32): VkPipelineExecutablePropertiesKHR = +proc newVkExecutionGraphPipelineCreateInfoAMDX*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, pLibraryInfo: ptr VkPipelineLibraryCreateInfoKHR, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkExecutionGraphPipelineCreateInfoAMDX = result.sType = sType result.pNext = pNext - result.stages = stages - result.name = name - result.description = description - result.subgroupSize = subgroupSize + result.flags = flags + result.stageCount = stageCount + result.pStages = pStages + result.pLibraryInfo = pLibraryInfo + result.layout = layout + result.basePipelineHandle = basePipelineHandle + result.basePipelineIndex = basePipelineIndex -proc newVkPipelineExecutableInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pipeline: VkPipeline, executableIndex: uint32): VkPipelineExecutableInfoKHR = +proc newVkPipelineShaderStageNodeCreateInfoAMDX*(sType: VkStructureType, pNext: pointer = nil, pName: cstring, index: uint32): VkPipelineShaderStageNodeCreateInfoAMDX = result.sType = sType result.pNext = pNext - result.pipeline = pipeline - result.executableIndex = executableIndex + result.pName = pName + result.index = index -proc newVkPipelineExecutableStatisticKHR*(sType: VkStructureType, pNext: pointer = nil, name: array[VK_MAX_DESCRIPTION_SIZE, char], description: array[VK_MAX_DESCRIPTION_SIZE, char], format: VkPipelineExecutableStatisticFormatKHR, value: VkPipelineExecutableStatisticValueKHR): VkPipelineExecutableStatisticKHR = +proc newVkExecutionGraphPipelineScratchSizeAMDX*(sType: VkStructureType, pNext: pointer = nil, size: VkDeviceSize): VkExecutionGraphPipelineScratchSizeAMDX = result.sType = sType result.pNext = pNext - result.name = name - result.description = description - result.format = format - result.value = value + result.size = size -proc newVkPipelineExecutableInternalRepresentationKHR*(sType: VkStructureType, pNext: pointer = nil, name: array[VK_MAX_DESCRIPTION_SIZE, char], description: array[VK_MAX_DESCRIPTION_SIZE, char], isText: VkBool32, dataSize: uint, pData: pointer = nil): VkPipelineExecutableInternalRepresentationKHR = +proc newVkDispatchGraphInfoAMDX*(nodeIndex: uint32, payloadCount: uint32, payloads: VkDeviceOrHostAddressConstAMDX, payloadStride: uint64): VkDispatchGraphInfoAMDX = + result.nodeIndex = nodeIndex + result.payloadCount = payloadCount + result.payloads = payloads + result.payloadStride = payloadStride + +proc newVkDispatchGraphCountInfoAMDX*(count: uint32, infos: VkDeviceOrHostAddressConstAMDX, stride: uint64): VkDispatchGraphCountInfoAMDX = + result.count = count + result.infos = infos + result.stride = stride + +proc newVkBindMemoryStatusKHR*(sType: VkStructureType, pNext: pointer = nil, pResult: ptr VkResult): VkBindMemoryStatusKHR = result.sType = sType result.pNext = pNext - result.name = name - result.description = description - result.isText = isText - result.dataSize = dataSize - result.pData = pData + result.pResult = pResult -proc newVkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderDemoteToHelperInvocation: VkBool32): VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT = +proc newVkBindDescriptorSetsInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stageFlags: VkShaderStageFlags, layout: VkPipelineLayout, firstSet: uint32, descriptorSetCount: uint32, pDescriptorSets: ptr VkDescriptorSet, dynamicOffsetCount: uint32, pDynamicOffsets: ptr uint32): VkBindDescriptorSetsInfoKHR = result.sType = sType result.pNext = pNext - result.shaderDemoteToHelperInvocation = shaderDemoteToHelperInvocation + result.stageFlags = stageFlags + result.layout = layout + result.firstSet = firstSet + result.descriptorSetCount = descriptorSetCount + result.pDescriptorSets = pDescriptorSets + result.dynamicOffsetCount = dynamicOffsetCount + result.pDynamicOffsets = pDynamicOffsets -proc newVkPhysicalDeviceTexelBufferAlignmentFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, texelBufferAlignment: VkBool32): VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT = +proc newVkPushConstantsInfoKHR*(sType: VkStructureType, pNext: pointer = nil, layout: VkPipelineLayout, stageFlags: VkShaderStageFlags, offset: uint32, size: uint32, pValues: pointer = nil): VkPushConstantsInfoKHR = result.sType = sType result.pNext = pNext - result.texelBufferAlignment = texelBufferAlignment + result.layout = layout + result.stageFlags = stageFlags + result.offset = offset + result.size = size + result.pValues = pValues -proc newVkPhysicalDeviceTexelBufferAlignmentPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, storageTexelBufferOffsetAlignmentBytes: VkDeviceSize, storageTexelBufferOffsetSingleTexelAlignment: VkBool32, uniformTexelBufferOffsetAlignmentBytes: VkDeviceSize, uniformTexelBufferOffsetSingleTexelAlignment: VkBool32): VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT = +proc newVkPushDescriptorSetInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stageFlags: VkShaderStageFlags, layout: VkPipelineLayout, set: uint32, descriptorWriteCount: uint32, pDescriptorWrites: ptr VkWriteDescriptorSet): VkPushDescriptorSetInfoKHR = result.sType = sType result.pNext = pNext - result.storageTexelBufferOffsetAlignmentBytes = storageTexelBufferOffsetAlignmentBytes - result.storageTexelBufferOffsetSingleTexelAlignment = storageTexelBufferOffsetSingleTexelAlignment - result.uniformTexelBufferOffsetAlignmentBytes = uniformTexelBufferOffsetAlignmentBytes - result.uniformTexelBufferOffsetSingleTexelAlignment = uniformTexelBufferOffsetSingleTexelAlignment + result.stageFlags = stageFlags + result.layout = layout + result.set = set + result.descriptorWriteCount = descriptorWriteCount + result.pDescriptorWrites = pDescriptorWrites -proc newVkPhysicalDeviceSubgroupSizeControlFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, subgroupSizeControl: VkBool32, computeFullSubgroups: VkBool32): VkPhysicalDeviceSubgroupSizeControlFeaturesEXT = +proc newVkPushDescriptorSetWithTemplateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: uint32, pData: pointer = nil): VkPushDescriptorSetWithTemplateInfoKHR = result.sType = sType result.pNext = pNext - result.subgroupSizeControl = subgroupSizeControl - result.computeFullSubgroups = computeFullSubgroups + result.descriptorUpdateTemplate = descriptorUpdateTemplate + result.layout = layout + result.set = set + result.pData = pData -proc newVkPhysicalDeviceSubgroupSizeControlPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, minSubgroupSize: uint32, maxSubgroupSize: uint32, maxComputeWorkgroupSubgroups: uint32, requiredSubgroupSizeStages: VkShaderStageFlags): VkPhysicalDeviceSubgroupSizeControlPropertiesEXT = +proc newVkSetDescriptorBufferOffsetsInfoEXT*(sType: VkStructureType, pNext: pointer = nil, stageFlags: VkShaderStageFlags, layout: VkPipelineLayout, firstSet: uint32, setCount: uint32, pBufferIndices: ptr uint32, pOffsets: ptr VkDeviceSize): VkSetDescriptorBufferOffsetsInfoEXT = result.sType = sType result.pNext = pNext - result.minSubgroupSize = minSubgroupSize - result.maxSubgroupSize = maxSubgroupSize - result.maxComputeWorkgroupSubgroups = maxComputeWorkgroupSubgroups - result.requiredSubgroupSizeStages = requiredSubgroupSizeStages + result.stageFlags = stageFlags + result.layout = layout + result.firstSet = firstSet + result.setCount = setCount + result.pBufferIndices = pBufferIndices + result.pOffsets = pOffsets -proc newVkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, requiredSubgroupSize: uint32): VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT = +proc newVkBindDescriptorBufferEmbeddedSamplersInfoEXT*(sType: VkStructureType, pNext: pointer = nil, stageFlags: VkShaderStageFlags, layout: VkPipelineLayout, set: uint32): VkBindDescriptorBufferEmbeddedSamplersInfoEXT = result.sType = sType result.pNext = pNext - result.requiredSubgroupSize = requiredSubgroupSize + result.stageFlags = stageFlags + result.layout = layout + result.set = set -proc newVkMemoryOpaqueCaptureAddressAllocateInfo*(sType: VkStructureType, pNext: pointer = nil, opaqueCaptureAddress: uint64): VkMemoryOpaqueCaptureAddressAllocateInfo = +proc newVkPhysicalDeviceCubicClampFeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, cubicRangeClamp: VkBool32): VkPhysicalDeviceCubicClampFeaturesQCOM = result.sType = sType result.pNext = pNext - result.opaqueCaptureAddress = opaqueCaptureAddress + result.cubicRangeClamp = cubicRangeClamp -proc newVkDeviceMemoryOpaqueCaptureAddressInfo*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory): VkDeviceMemoryOpaqueCaptureAddressInfo = +proc newVkPhysicalDeviceYcbcrDegammaFeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, ycbcrDegamma: VkBool32): VkPhysicalDeviceYcbcrDegammaFeaturesQCOM = result.sType = sType result.pNext = pNext - result.memory = memory + result.ycbcrDegamma = ycbcrDegamma -proc newVkPhysicalDeviceLineRasterizationFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, rectangularLines: VkBool32, bresenhamLines: VkBool32, smoothLines: VkBool32, stippledRectangularLines: VkBool32, stippledBresenhamLines: VkBool32, stippledSmoothLines: VkBool32): VkPhysicalDeviceLineRasterizationFeaturesEXT = +proc newVkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, enableYDegamma: VkBool32, enableCbCrDegamma: VkBool32): VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM = result.sType = sType result.pNext = pNext - result.rectangularLines = rectangularLines - result.bresenhamLines = bresenhamLines - result.smoothLines = smoothLines - result.stippledRectangularLines = stippledRectangularLines - result.stippledBresenhamLines = stippledBresenhamLines - result.stippledSmoothLines = stippledSmoothLines + result.enableYDegamma = enableYDegamma + result.enableCbCrDegamma = enableCbCrDegamma -proc newVkPhysicalDeviceLineRasterizationPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, lineSubPixelPrecisionBits: uint32): VkPhysicalDeviceLineRasterizationPropertiesEXT = +proc newVkPhysicalDeviceCubicWeightsFeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, selectableCubicWeights: VkBool32): VkPhysicalDeviceCubicWeightsFeaturesQCOM = result.sType = sType result.pNext = pNext - result.lineSubPixelPrecisionBits = lineSubPixelPrecisionBits + result.selectableCubicWeights = selectableCubicWeights -proc newVkPipelineRasterizationLineStateCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, lineRasterizationMode: VkLineRasterizationModeEXT, stippledLineEnable: VkBool32, lineStippleFactor: uint32, lineStipplePattern: uint16): VkPipelineRasterizationLineStateCreateInfoEXT = +proc newVkSamplerCubicWeightsCreateInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, cubicWeights: VkCubicFilterWeightsQCOM): VkSamplerCubicWeightsCreateInfoQCOM = result.sType = sType result.pNext = pNext - result.lineRasterizationMode = lineRasterizationMode - result.stippledLineEnable = stippledLineEnable - result.lineStippleFactor = lineStippleFactor - result.lineStipplePattern = lineStipplePattern + result.cubicWeights = cubicWeights -proc newVkPhysicalDevicePipelineCreationCacheControlFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, pipelineCreationCacheControl: VkBool32): VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT = +proc newVkBlitImageCubicWeightsInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, cubicWeights: VkCubicFilterWeightsQCOM): VkBlitImageCubicWeightsInfoQCOM = result.sType = sType result.pNext = pNext - result.pipelineCreationCacheControl = pipelineCreationCacheControl + result.cubicWeights = cubicWeights -proc newVkPhysicalDeviceVulkan11Features*(sType: VkStructureType, pNext: pointer = nil, storageBuffer16BitAccess: VkBool32, uniformAndStorageBuffer16BitAccess: VkBool32, storagePushConstant16: VkBool32, storageInputOutput16: VkBool32, multiview: VkBool32, multiviewGeometryShader: VkBool32, multiviewTessellationShader: VkBool32, variablePointersStorageBuffer: VkBool32, variablePointers: VkBool32, protectedMemory: VkBool32, samplerYcbcrConversion: VkBool32, shaderDrawParameters: VkBool32): VkPhysicalDeviceVulkan11Features = +proc newVkPhysicalDeviceImageProcessing2FeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, textureBlockMatch2: VkBool32): VkPhysicalDeviceImageProcessing2FeaturesQCOM = result.sType = sType result.pNext = pNext - result.storageBuffer16BitAccess = storageBuffer16BitAccess - result.uniformAndStorageBuffer16BitAccess = uniformAndStorageBuffer16BitAccess - result.storagePushConstant16 = storagePushConstant16 - result.storageInputOutput16 = storageInputOutput16 - result.multiview = multiview - result.multiviewGeometryShader = multiviewGeometryShader - result.multiviewTessellationShader = multiviewTessellationShader - result.variablePointersStorageBuffer = variablePointersStorageBuffer - result.variablePointers = variablePointers - result.protectedMemory = protectedMemory - result.samplerYcbcrConversion = samplerYcbcrConversion - result.shaderDrawParameters = shaderDrawParameters + result.textureBlockMatch2 = textureBlockMatch2 -proc newVkPhysicalDeviceVulkan11Properties*(sType: VkStructureType, pNext: pointer = nil, deviceUUID: array[VK_UUID_SIZE, uint8], driverUUID: array[VK_UUID_SIZE, uint8], deviceLUID: array[VK_LUID_SIZE, uint8], deviceNodeMask: uint32, deviceLUIDValid: VkBool32, subgroupSize: uint32, subgroupSupportedStages: VkShaderStageFlags, subgroupSupportedOperations: VkSubgroupFeatureFlags, subgroupQuadOperationsInAllStages: VkBool32, pointClippingBehavior: VkPointClippingBehavior, maxMultiviewViewCount: uint32, maxMultiviewInstanceIndex: uint32, protectedNoFault: VkBool32, maxPerSetDescriptors: uint32, maxMemoryAllocationSize: VkDeviceSize): VkPhysicalDeviceVulkan11Properties = +proc newVkPhysicalDeviceImageProcessing2PropertiesQCOM*(sType: VkStructureType, pNext: pointer = nil, maxBlockMatchWindow: VkExtent2D): VkPhysicalDeviceImageProcessing2PropertiesQCOM = result.sType = sType result.pNext = pNext - result.deviceUUID = deviceUUID - result.driverUUID = driverUUID - result.deviceLUID = deviceLUID - result.deviceNodeMask = deviceNodeMask - result.deviceLUIDValid = deviceLUIDValid - result.subgroupSize = subgroupSize - result.subgroupSupportedStages = subgroupSupportedStages - result.subgroupSupportedOperations = subgroupSupportedOperations - result.subgroupQuadOperationsInAllStages = subgroupQuadOperationsInAllStages - result.pointClippingBehavior = pointClippingBehavior - result.maxMultiviewViewCount = maxMultiviewViewCount - result.maxMultiviewInstanceIndex = maxMultiviewInstanceIndex - result.protectedNoFault = protectedNoFault - result.maxPerSetDescriptors = maxPerSetDescriptors - result.maxMemoryAllocationSize = maxMemoryAllocationSize + result.maxBlockMatchWindow = maxBlockMatchWindow -proc newVkPhysicalDeviceVulkan12Features*(sType: VkStructureType, pNext: pointer = nil, samplerMirrorClampToEdge: VkBool32, drawIndirectCount: VkBool32, storageBuffer8BitAccess: VkBool32, uniformAndStorageBuffer8BitAccess: VkBool32, storagePushConstant8: VkBool32, shaderBufferInt64Atomics: VkBool32, shaderSharedInt64Atomics: VkBool32, shaderFloat16: VkBool32, shaderInt8: VkBool32, descriptorIndexing: VkBool32, shaderInputAttachmentArrayDynamicIndexing: VkBool32, shaderUniformTexelBufferArrayDynamicIndexing: VkBool32, shaderStorageTexelBufferArrayDynamicIndexing: VkBool32, shaderUniformBufferArrayNonUniformIndexing: VkBool32, shaderSampledImageArrayNonUniformIndexing: VkBool32, shaderStorageBufferArrayNonUniformIndexing: VkBool32, shaderStorageImageArrayNonUniformIndexing: VkBool32, shaderInputAttachmentArrayNonUniformIndexing: VkBool32, shaderUniformTexelBufferArrayNonUniformIndexing: VkBool32, shaderStorageTexelBufferArrayNonUniformIndexing: VkBool32, descriptorBindingUniformBufferUpdateAfterBind: VkBool32, descriptorBindingSampledImageUpdateAfterBind: VkBool32, descriptorBindingStorageImageUpdateAfterBind: VkBool32, descriptorBindingStorageBufferUpdateAfterBind: VkBool32, descriptorBindingUniformTexelBufferUpdateAfterBind: VkBool32, descriptorBindingStorageTexelBufferUpdateAfterBind: VkBool32, descriptorBindingUpdateUnusedWhilePending: VkBool32, descriptorBindingPartiallyBound: VkBool32, descriptorBindingVariableDescriptorCount: VkBool32, runtimeDescriptorArray: VkBool32, samplerFilterMinmax: VkBool32, scalarBlockLayout: VkBool32, imagelessFramebuffer: VkBool32, uniformBufferStandardLayout: VkBool32, shaderSubgroupExtendedTypes: VkBool32, separateDepthStencilLayouts: VkBool32, hostQueryReset: VkBool32, timelineSemaphore: VkBool32, bufferDeviceAddress: VkBool32, bufferDeviceAddressCaptureReplay: VkBool32, bufferDeviceAddressMultiDevice: VkBool32, vulkanMemoryModel: VkBool32, vulkanMemoryModelDeviceScope: VkBool32, vulkanMemoryModelAvailabilityVisibilityChains: VkBool32, shaderOutputViewportIndex: VkBool32, shaderOutputLayer: VkBool32, subgroupBroadcastDynamicId: VkBool32): VkPhysicalDeviceVulkan12Features = +proc newVkSamplerBlockMatchWindowCreateInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, windowExtent: VkExtent2D, windowCompareMode: VkBlockMatchWindowCompareModeQCOM): VkSamplerBlockMatchWindowCreateInfoQCOM = result.sType = sType result.pNext = pNext - result.samplerMirrorClampToEdge = samplerMirrorClampToEdge - result.drawIndirectCount = drawIndirectCount - result.storageBuffer8BitAccess = storageBuffer8BitAccess - result.uniformAndStorageBuffer8BitAccess = uniformAndStorageBuffer8BitAccess - result.storagePushConstant8 = storagePushConstant8 - result.shaderBufferInt64Atomics = shaderBufferInt64Atomics - result.shaderSharedInt64Atomics = shaderSharedInt64Atomics - result.shaderFloat16 = shaderFloat16 - result.shaderInt8 = shaderInt8 - result.descriptorIndexing = descriptorIndexing - result.shaderInputAttachmentArrayDynamicIndexing = shaderInputAttachmentArrayDynamicIndexing - result.shaderUniformTexelBufferArrayDynamicIndexing = shaderUniformTexelBufferArrayDynamicIndexing - result.shaderStorageTexelBufferArrayDynamicIndexing = shaderStorageTexelBufferArrayDynamicIndexing - result.shaderUniformBufferArrayNonUniformIndexing = shaderUniformBufferArrayNonUniformIndexing - result.shaderSampledImageArrayNonUniformIndexing = shaderSampledImageArrayNonUniformIndexing - result.shaderStorageBufferArrayNonUniformIndexing = shaderStorageBufferArrayNonUniformIndexing - result.shaderStorageImageArrayNonUniformIndexing = shaderStorageImageArrayNonUniformIndexing - result.shaderInputAttachmentArrayNonUniformIndexing = shaderInputAttachmentArrayNonUniformIndexing - result.shaderUniformTexelBufferArrayNonUniformIndexing = shaderUniformTexelBufferArrayNonUniformIndexing - result.shaderStorageTexelBufferArrayNonUniformIndexing = shaderStorageTexelBufferArrayNonUniformIndexing - result.descriptorBindingUniformBufferUpdateAfterBind = descriptorBindingUniformBufferUpdateAfterBind - result.descriptorBindingSampledImageUpdateAfterBind = descriptorBindingSampledImageUpdateAfterBind - result.descriptorBindingStorageImageUpdateAfterBind = descriptorBindingStorageImageUpdateAfterBind - result.descriptorBindingStorageBufferUpdateAfterBind = descriptorBindingStorageBufferUpdateAfterBind - result.descriptorBindingUniformTexelBufferUpdateAfterBind = descriptorBindingUniformTexelBufferUpdateAfterBind - result.descriptorBindingStorageTexelBufferUpdateAfterBind = descriptorBindingStorageTexelBufferUpdateAfterBind - result.descriptorBindingUpdateUnusedWhilePending = descriptorBindingUpdateUnusedWhilePending - result.descriptorBindingPartiallyBound = descriptorBindingPartiallyBound - result.descriptorBindingVariableDescriptorCount = descriptorBindingVariableDescriptorCount - result.runtimeDescriptorArray = runtimeDescriptorArray - result.samplerFilterMinmax = samplerFilterMinmax - result.scalarBlockLayout = scalarBlockLayout - result.imagelessFramebuffer = imagelessFramebuffer - result.uniformBufferStandardLayout = uniformBufferStandardLayout - result.shaderSubgroupExtendedTypes = shaderSubgroupExtendedTypes - result.separateDepthStencilLayouts = separateDepthStencilLayouts - result.hostQueryReset = hostQueryReset - result.timelineSemaphore = timelineSemaphore - result.bufferDeviceAddress = bufferDeviceAddress - result.bufferDeviceAddressCaptureReplay = bufferDeviceAddressCaptureReplay - result.bufferDeviceAddressMultiDevice = bufferDeviceAddressMultiDevice - result.vulkanMemoryModel = vulkanMemoryModel - result.vulkanMemoryModelDeviceScope = vulkanMemoryModelDeviceScope - result.vulkanMemoryModelAvailabilityVisibilityChains = vulkanMemoryModelAvailabilityVisibilityChains - result.shaderOutputViewportIndex = shaderOutputViewportIndex - result.shaderOutputLayer = shaderOutputLayer - result.subgroupBroadcastDynamicId = subgroupBroadcastDynamicId + result.windowExtent = windowExtent + result.windowCompareMode = windowCompareMode -proc newVkPhysicalDeviceVulkan12Properties*(sType: VkStructureType, pNext: pointer = nil, driverID: VkDriverId, driverName: array[VK_MAX_DRIVER_NAME_SIZE, char], driverInfo: array[VK_MAX_DRIVER_INFO_SIZE, char], conformanceVersion: VkConformanceVersion, denormBehaviorIndependence: VkShaderFloatControlsIndependence, roundingModeIndependence: VkShaderFloatControlsIndependence, shaderSignedZeroInfNanPreserveFloat16: VkBool32, shaderSignedZeroInfNanPreserveFloat32: VkBool32, shaderSignedZeroInfNanPreserveFloat64: VkBool32, shaderDenormPreserveFloat16: VkBool32, shaderDenormPreserveFloat32: VkBool32, shaderDenormPreserveFloat64: VkBool32, shaderDenormFlushToZeroFloat16: VkBool32, shaderDenormFlushToZeroFloat32: VkBool32, shaderDenormFlushToZeroFloat64: VkBool32, shaderRoundingModeRTEFloat16: VkBool32, shaderRoundingModeRTEFloat32: VkBool32, shaderRoundingModeRTEFloat64: VkBool32, shaderRoundingModeRTZFloat16: VkBool32, shaderRoundingModeRTZFloat32: VkBool32, shaderRoundingModeRTZFloat64: VkBool32, maxUpdateAfterBindDescriptorsInAllPools: uint32, shaderUniformBufferArrayNonUniformIndexingNative: VkBool32, shaderSampledImageArrayNonUniformIndexingNative: VkBool32, shaderStorageBufferArrayNonUniformIndexingNative: VkBool32, shaderStorageImageArrayNonUniformIndexingNative: VkBool32, shaderInputAttachmentArrayNonUniformIndexingNative: VkBool32, robustBufferAccessUpdateAfterBind: VkBool32, quadDivergentImplicitLod: VkBool32, maxPerStageDescriptorUpdateAfterBindSamplers: uint32, maxPerStageDescriptorUpdateAfterBindUniformBuffers: uint32, maxPerStageDescriptorUpdateAfterBindStorageBuffers: uint32, maxPerStageDescriptorUpdateAfterBindSampledImages: uint32, maxPerStageDescriptorUpdateAfterBindStorageImages: uint32, maxPerStageDescriptorUpdateAfterBindInputAttachments: uint32, maxPerStageUpdateAfterBindResources: uint32, maxDescriptorSetUpdateAfterBindSamplers: uint32, maxDescriptorSetUpdateAfterBindUniformBuffers: uint32, maxDescriptorSetUpdateAfterBindUniformBuffersDynamic: uint32, maxDescriptorSetUpdateAfterBindStorageBuffers: uint32, maxDescriptorSetUpdateAfterBindStorageBuffersDynamic: uint32, maxDescriptorSetUpdateAfterBindSampledImages: uint32, maxDescriptorSetUpdateAfterBindStorageImages: uint32, maxDescriptorSetUpdateAfterBindInputAttachments: uint32, supportedDepthResolveModes: VkResolveModeFlags, supportedStencilResolveModes: VkResolveModeFlags, independentResolveNone: VkBool32, independentResolve: VkBool32, filterMinmaxSingleComponentFormats: VkBool32, filterMinmaxImageComponentMapping: VkBool32, maxTimelineSemaphoreValueDifference: uint64, framebufferIntegerColorSampleCounts: VkSampleCountFlags): VkPhysicalDeviceVulkan12Properties = +proc newVkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, descriptorPoolOverallocation: VkBool32): VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV = result.sType = sType result.pNext = pNext - result.driverID = driverID - result.driverName = driverName - result.driverInfo = driverInfo - result.conformanceVersion = conformanceVersion - result.denormBehaviorIndependence = denormBehaviorIndependence - result.roundingModeIndependence = roundingModeIndependence - result.shaderSignedZeroInfNanPreserveFloat16 = shaderSignedZeroInfNanPreserveFloat16 - result.shaderSignedZeroInfNanPreserveFloat32 = shaderSignedZeroInfNanPreserveFloat32 - result.shaderSignedZeroInfNanPreserveFloat64 = shaderSignedZeroInfNanPreserveFloat64 - result.shaderDenormPreserveFloat16 = shaderDenormPreserveFloat16 - result.shaderDenormPreserveFloat32 = shaderDenormPreserveFloat32 - result.shaderDenormPreserveFloat64 = shaderDenormPreserveFloat64 - result.shaderDenormFlushToZeroFloat16 = shaderDenormFlushToZeroFloat16 - result.shaderDenormFlushToZeroFloat32 = shaderDenormFlushToZeroFloat32 - result.shaderDenormFlushToZeroFloat64 = shaderDenormFlushToZeroFloat64 - result.shaderRoundingModeRTEFloat16 = shaderRoundingModeRTEFloat16 - result.shaderRoundingModeRTEFloat32 = shaderRoundingModeRTEFloat32 - result.shaderRoundingModeRTEFloat64 = shaderRoundingModeRTEFloat64 - result.shaderRoundingModeRTZFloat16 = shaderRoundingModeRTZFloat16 - result.shaderRoundingModeRTZFloat32 = shaderRoundingModeRTZFloat32 - result.shaderRoundingModeRTZFloat64 = shaderRoundingModeRTZFloat64 - result.maxUpdateAfterBindDescriptorsInAllPools = maxUpdateAfterBindDescriptorsInAllPools - result.shaderUniformBufferArrayNonUniformIndexingNative = shaderUniformBufferArrayNonUniformIndexingNative - result.shaderSampledImageArrayNonUniformIndexingNative = shaderSampledImageArrayNonUniformIndexingNative - result.shaderStorageBufferArrayNonUniformIndexingNative = shaderStorageBufferArrayNonUniformIndexingNative - result.shaderStorageImageArrayNonUniformIndexingNative = shaderStorageImageArrayNonUniformIndexingNative - result.shaderInputAttachmentArrayNonUniformIndexingNative = shaderInputAttachmentArrayNonUniformIndexingNative - result.robustBufferAccessUpdateAfterBind = robustBufferAccessUpdateAfterBind - result.quadDivergentImplicitLod = quadDivergentImplicitLod - result.maxPerStageDescriptorUpdateAfterBindSamplers = maxPerStageDescriptorUpdateAfterBindSamplers - result.maxPerStageDescriptorUpdateAfterBindUniformBuffers = maxPerStageDescriptorUpdateAfterBindUniformBuffers - result.maxPerStageDescriptorUpdateAfterBindStorageBuffers = maxPerStageDescriptorUpdateAfterBindStorageBuffers - result.maxPerStageDescriptorUpdateAfterBindSampledImages = maxPerStageDescriptorUpdateAfterBindSampledImages - result.maxPerStageDescriptorUpdateAfterBindStorageImages = maxPerStageDescriptorUpdateAfterBindStorageImages - result.maxPerStageDescriptorUpdateAfterBindInputAttachments = maxPerStageDescriptorUpdateAfterBindInputAttachments - result.maxPerStageUpdateAfterBindResources = maxPerStageUpdateAfterBindResources - result.maxDescriptorSetUpdateAfterBindSamplers = maxDescriptorSetUpdateAfterBindSamplers - result.maxDescriptorSetUpdateAfterBindUniformBuffers = maxDescriptorSetUpdateAfterBindUniformBuffers - result.maxDescriptorSetUpdateAfterBindUniformBuffersDynamic = maxDescriptorSetUpdateAfterBindUniformBuffersDynamic - result.maxDescriptorSetUpdateAfterBindStorageBuffers = maxDescriptorSetUpdateAfterBindStorageBuffers - result.maxDescriptorSetUpdateAfterBindStorageBuffersDynamic = maxDescriptorSetUpdateAfterBindStorageBuffersDynamic - result.maxDescriptorSetUpdateAfterBindSampledImages = maxDescriptorSetUpdateAfterBindSampledImages - result.maxDescriptorSetUpdateAfterBindStorageImages = maxDescriptorSetUpdateAfterBindStorageImages - result.maxDescriptorSetUpdateAfterBindInputAttachments = maxDescriptorSetUpdateAfterBindInputAttachments - result.supportedDepthResolveModes = supportedDepthResolveModes - result.supportedStencilResolveModes = supportedStencilResolveModes - result.independentResolveNone = independentResolveNone - result.independentResolve = independentResolve - result.filterMinmaxSingleComponentFormats = filterMinmaxSingleComponentFormats - result.filterMinmaxImageComponentMapping = filterMinmaxImageComponentMapping - result.maxTimelineSemaphoreValueDifference = maxTimelineSemaphoreValueDifference - result.framebufferIntegerColorSampleCounts = framebufferIntegerColorSampleCounts + result.descriptorPoolOverallocation = descriptorPoolOverallocation -proc newVkPipelineCompilerControlCreateInfoAMD*(sType: VkStructureType, pNext: pointer = nil, compilerControlFlags: VkPipelineCompilerControlFlagsAMD): VkPipelineCompilerControlCreateInfoAMD = +proc newVkPhysicalDeviceLayeredDriverPropertiesMSFT*(sType: VkStructureType, pNext: pointer = nil, underlyingAPI: VkLayeredDriverUnderlyingApiMSFT): VkPhysicalDeviceLayeredDriverPropertiesMSFT = result.sType = sType result.pNext = pNext - result.compilerControlFlags = compilerControlFlags + result.underlyingAPI = underlyingAPI -proc newVkPhysicalDeviceCoherentMemoryFeaturesAMD*(sType: VkStructureType, pNext: pointer = nil, deviceCoherentMemory: VkBool32): VkPhysicalDeviceCoherentMemoryFeaturesAMD = +proc newVkPhysicalDevicePerStageDescriptorSetFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, perStageDescriptorSet: VkBool32, dynamicPipelineLayout: VkBool32): VkPhysicalDevicePerStageDescriptorSetFeaturesNV = result.sType = sType result.pNext = pNext - result.deviceCoherentMemory = deviceCoherentMemory + result.perStageDescriptorSet = perStageDescriptorSet + result.dynamicPipelineLayout = dynamicPipelineLayout -proc newVkPhysicalDeviceToolPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, name: array[VK_MAX_EXTENSION_NAME_SIZE, char], version: array[VK_MAX_EXTENSION_NAME_SIZE, char], purposes: VkToolPurposeFlagsEXT, description: array[VK_MAX_DESCRIPTION_SIZE, char], layer: array[VK_MAX_EXTENSION_NAME_SIZE, char]): VkPhysicalDeviceToolPropertiesEXT = +proc newVkPhysicalDeviceExternalFormatResolveFeaturesANDROID*(sType: VkStructureType, pNext: pointer = nil, externalFormatResolve: VkBool32): VkPhysicalDeviceExternalFormatResolveFeaturesANDROID = result.sType = sType result.pNext = pNext - result.name = name - result.version = version - result.purposes = purposes - result.description = description - result.layer = layer + result.externalFormatResolve = externalFormatResolve -proc newVkSamplerCustomBorderColorCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, customBorderColor: VkClearColorValue, format: VkFormat): VkSamplerCustomBorderColorCreateInfoEXT = +proc newVkPhysicalDeviceExternalFormatResolvePropertiesANDROID*(sType: VkStructureType, pNext: pointer = nil, nullColorAttachmentWithExternalFormatResolve: VkBool32, externalFormatResolveChromaOffsetX: VkChromaLocation, externalFormatResolveChromaOffsetY: VkChromaLocation): VkPhysicalDeviceExternalFormatResolvePropertiesANDROID = result.sType = sType result.pNext = pNext - result.customBorderColor = customBorderColor - result.format = format + result.nullColorAttachmentWithExternalFormatResolve = nullColorAttachmentWithExternalFormatResolve + result.externalFormatResolveChromaOffsetX = externalFormatResolveChromaOffsetX + result.externalFormatResolveChromaOffsetY = externalFormatResolveChromaOffsetY -proc newVkPhysicalDeviceCustomBorderColorPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxCustomBorderColorSamplers: uint32): VkPhysicalDeviceCustomBorderColorPropertiesEXT = +proc newVkAndroidHardwareBufferFormatResolvePropertiesANDROID*(sType: VkStructureType, pNext: pointer = nil, colorAttachmentFormat: VkFormat): VkAndroidHardwareBufferFormatResolvePropertiesANDROID = result.sType = sType result.pNext = pNext - result.maxCustomBorderColorSamplers = maxCustomBorderColorSamplers + result.colorAttachmentFormat = colorAttachmentFormat -proc newVkPhysicalDeviceCustomBorderColorFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, customBorderColors: VkBool32, customBorderColorWithoutFormat: VkBool32): VkPhysicalDeviceCustomBorderColorFeaturesEXT = +proc newVkLatencySleepModeInfoNV*(sType: VkStructureType, pNext: pointer = nil, lowLatencyMode: VkBool32, lowLatencyBoost: VkBool32, minimumIntervalUs: uint32): VkLatencySleepModeInfoNV = result.sType = sType result.pNext = pNext - result.customBorderColors = customBorderColors - result.customBorderColorWithoutFormat = customBorderColorWithoutFormat + result.lowLatencyMode = lowLatencyMode + result.lowLatencyBoost = lowLatencyBoost + result.minimumIntervalUs = minimumIntervalUs -proc newVkAccelerationStructureGeometryTrianglesDataKHR*(sType: VkStructureType, pNext: pointer = nil, vertexFormat: VkFormat, vertexData: VkDeviceOrHostAddressConstKHR, vertexStride: VkDeviceSize, indexType: VkIndexType, indexData: VkDeviceOrHostAddressConstKHR, transformData: VkDeviceOrHostAddressConstKHR): VkAccelerationStructureGeometryTrianglesDataKHR = +proc newVkLatencySleepInfoNV*(sType: VkStructureType, pNext: pointer = nil, signalSemaphore: VkSemaphore, value: uint64): VkLatencySleepInfoNV = result.sType = sType result.pNext = pNext - result.vertexFormat = vertexFormat - result.vertexData = vertexData - result.vertexStride = vertexStride - result.indexType = indexType - result.indexData = indexData - result.transformData = transformData + result.signalSemaphore = signalSemaphore + result.value = value -proc newVkAccelerationStructureGeometryAabbsDataKHR*(sType: VkStructureType, pNext: pointer = nil, data: VkDeviceOrHostAddressConstKHR, stride: VkDeviceSize): VkAccelerationStructureGeometryAabbsDataKHR = +proc newVkSetLatencyMarkerInfoNV*(sType: VkStructureType, pNext: pointer = nil, presentID: uint64, marker: VkLatencyMarkerNV): VkSetLatencyMarkerInfoNV = result.sType = sType result.pNext = pNext - result.data = data - result.stride = stride + result.presentID = presentID + result.marker = marker -proc newVkAccelerationStructureGeometryInstancesDataKHR*(sType: VkStructureType, pNext: pointer = nil, arrayOfPointers: VkBool32, data: VkDeviceOrHostAddressConstKHR): VkAccelerationStructureGeometryInstancesDataKHR = +proc newVkGetLatencyMarkerInfoNV*(sType: VkStructureType, pNext: pointer = nil, timingCount: uint32, pTimings: ptr VkLatencyTimingsFrameReportNV): VkGetLatencyMarkerInfoNV = result.sType = sType result.pNext = pNext - result.arrayOfPointers = arrayOfPointers - result.data = data + result.timingCount = timingCount + result.pTimings = pTimings -proc newVkAccelerationStructureGeometryKHR*(sType: VkStructureType, pNext: pointer = nil, geometryType: VkGeometryTypeKHR, geometry: VkAccelerationStructureGeometryDataKHR, flags: VkGeometryFlagsKHR = 0.VkGeometryFlagsKHR): VkAccelerationStructureGeometryKHR = +proc newVkLatencyTimingsFrameReportNV*(sType: VkStructureType, pNext: pointer = nil, presentID: uint64, inputSampleTimeUs: uint64, simStartTimeUs: uint64, simEndTimeUs: uint64, renderSubmitStartTimeUs: uint64, renderSubmitEndTimeUs: uint64, presentStartTimeUs: uint64, presentEndTimeUs: uint64, driverStartTimeUs: uint64, driverEndTimeUs: uint64, osRenderQueueStartTimeUs: uint64, osRenderQueueEndTimeUs: uint64, gpuRenderStartTimeUs: uint64, gpuRenderEndTimeUs: uint64): VkLatencyTimingsFrameReportNV = result.sType = sType result.pNext = pNext - result.geometryType = geometryType - result.geometry = geometry - result.flags = flags + result.presentID = presentID + result.inputSampleTimeUs = inputSampleTimeUs + result.simStartTimeUs = simStartTimeUs + result.simEndTimeUs = simEndTimeUs + result.renderSubmitStartTimeUs = renderSubmitStartTimeUs + result.renderSubmitEndTimeUs = renderSubmitEndTimeUs + result.presentStartTimeUs = presentStartTimeUs + result.presentEndTimeUs = presentEndTimeUs + result.driverStartTimeUs = driverStartTimeUs + result.driverEndTimeUs = driverEndTimeUs + result.osRenderQueueStartTimeUs = osRenderQueueStartTimeUs + result.osRenderQueueEndTimeUs = osRenderQueueEndTimeUs + result.gpuRenderStartTimeUs = gpuRenderStartTimeUs + result.gpuRenderEndTimeUs = gpuRenderEndTimeUs -proc newVkAccelerationStructureBuildGeometryInfoKHR*(sType: VkStructureType, pNext: pointer = nil, `type`: VkAccelerationStructureTypeKHR, flags: VkBuildAccelerationStructureFlagsKHR = 0.VkBuildAccelerationStructureFlagsKHR, update: VkBool32, srcAccelerationStructure: VkAccelerationStructureKHR, dstAccelerationStructure: VkAccelerationStructureKHR, geometryArrayOfPointers: VkBool32, geometryCount: uint32, ppGeometries: ptr ptr VkAccelerationStructureGeometryKHR, scratchData: VkDeviceOrHostAddressKHR): VkAccelerationStructureBuildGeometryInfoKHR = +proc newVkOutOfBandQueueTypeInfoNV*(sType: VkStructureType, pNext: pointer = nil, queueType: VkOutOfBandQueueTypeNV): VkOutOfBandQueueTypeInfoNV = result.sType = sType result.pNext = pNext - result.`type` = `type` - result.flags = flags - result.update = update - result.srcAccelerationStructure = srcAccelerationStructure - result.dstAccelerationStructure = dstAccelerationStructure - result.geometryArrayOfPointers = geometryArrayOfPointers - result.geometryCount = geometryCount - result.ppGeometries = ppGeometries - result.scratchData = scratchData + result.queueType = queueType -proc newVkAccelerationStructureBuildOffsetInfoKHR*(primitiveCount: uint32, primitiveOffset: uint32, firstVertex: uint32, transformOffset: uint32): VkAccelerationStructureBuildOffsetInfoKHR = - result.primitiveCount = primitiveCount - result.primitiveOffset = primitiveOffset - result.firstVertex = firstVertex - result.transformOffset = transformOffset +proc newVkLatencySubmissionPresentIdNV*(sType: VkStructureType, pNext: pointer = nil, presentID: uint64): VkLatencySubmissionPresentIdNV = + result.sType = sType + result.pNext = pNext + result.presentID = presentID -proc newVkAccelerationStructureCreateGeometryTypeInfoKHR*(sType: VkStructureType, pNext: pointer = nil, geometryType: VkGeometryTypeKHR, maxPrimitiveCount: uint32, indexType: VkIndexType, maxVertexCount: uint32, vertexFormat: VkFormat, allowsTransforms: VkBool32): VkAccelerationStructureCreateGeometryTypeInfoKHR = +proc newVkSwapchainLatencyCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, latencyModeEnable: VkBool32): VkSwapchainLatencyCreateInfoNV = result.sType = sType result.pNext = pNext - result.geometryType = geometryType - result.maxPrimitiveCount = maxPrimitiveCount - result.indexType = indexType - result.maxVertexCount = maxVertexCount - result.vertexFormat = vertexFormat - result.allowsTransforms = allowsTransforms + result.latencyModeEnable = latencyModeEnable -proc newVkAccelerationStructureCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, compactedSize: VkDeviceSize, `type`: VkAccelerationStructureTypeKHR, flags: VkBuildAccelerationStructureFlagsKHR = 0.VkBuildAccelerationStructureFlagsKHR, maxGeometryCount: uint32, pGeometryInfos: ptr VkAccelerationStructureCreateGeometryTypeInfoKHR, deviceAddress: VkDeviceAddress): VkAccelerationStructureCreateInfoKHR = +proc newVkLatencySurfaceCapabilitiesNV*(sType: VkStructureType, pNext: pointer = nil, presentModeCount: uint32, pPresentModes: ptr VkPresentModeKHR): VkLatencySurfaceCapabilitiesNV = result.sType = sType result.pNext = pNext - result.compactedSize = compactedSize - result.`type` = `type` - result.flags = flags - result.maxGeometryCount = maxGeometryCount - result.pGeometryInfos = pGeometryInfos - result.deviceAddress = deviceAddress + result.presentModeCount = presentModeCount + result.pPresentModes = pPresentModes -proc newVkAabbPositionsKHR*(minX: float32, minY: float32, minZ: float32, maxX: float32, maxY: float32, maxZ: float32): VkAabbPositionsKHR = - result.minX = minX - result.minY = minY - result.minZ = minZ - result.maxX = maxX - result.maxY = maxY - result.maxZ = maxZ +proc newVkPhysicalDeviceCudaKernelLaunchFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, cudaKernelLaunchFeatures: VkBool32): VkPhysicalDeviceCudaKernelLaunchFeaturesNV = + result.sType = sType + result.pNext = pNext + result.cudaKernelLaunchFeatures = cudaKernelLaunchFeatures -proc newVkTransformMatrixKHR*(matrix: array[3, float32]): VkTransformMatrixKHR = - result.matrix = matrix +proc newVkPhysicalDeviceCudaKernelLaunchPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, computeCapabilityMinor: uint32, computeCapabilityMajor: uint32): VkPhysicalDeviceCudaKernelLaunchPropertiesNV = + result.sType = sType + result.pNext = pNext + result.computeCapabilityMinor = computeCapabilityMinor + result.computeCapabilityMajor = computeCapabilityMajor -proc newVkAccelerationStructureInstanceKHR*(transform: VkTransformMatrixKHR, instanceCustomIndex: uint32, mask: uint32, instanceShaderBindingTableRecordOffset: uint32, flags: VkGeometryInstanceFlagsKHR = 0.VkGeometryInstanceFlagsKHR, accelerationStructureReference: uint64): VkAccelerationStructureInstanceKHR = - result.transform = transform - result.instanceCustomIndex = instanceCustomIndex - result.mask = mask - result.instanceShaderBindingTableRecordOffset = instanceShaderBindingTableRecordOffset - result.flags = flags - result.accelerationStructureReference = accelerationStructureReference +proc newVkDeviceQueueShaderCoreControlCreateInfoARM*(sType: VkStructureType, pNext: pointer = nil, shaderCoreCount: uint32): VkDeviceQueueShaderCoreControlCreateInfoARM = + result.sType = sType + result.pNext = pNext + result.shaderCoreCount = shaderCoreCount -proc newVkAccelerationStructureDeviceAddressInfoKHR*(sType: VkStructureType, pNext: pointer = nil, accelerationStructure: VkAccelerationStructureKHR): VkAccelerationStructureDeviceAddressInfoKHR = +proc newVkPhysicalDeviceSchedulingControlsFeaturesARM*(sType: VkStructureType, pNext: pointer = nil, schedulingControls: VkBool32): VkPhysicalDeviceSchedulingControlsFeaturesARM = result.sType = sType result.pNext = pNext - result.accelerationStructure = accelerationStructure + result.schedulingControls = schedulingControls -proc newVkAccelerationStructureVersionKHR*(sType: VkStructureType, pNext: pointer = nil, versionData: ptr uint8): VkAccelerationStructureVersionKHR = +proc newVkPhysicalDeviceSchedulingControlsPropertiesARM*(sType: VkStructureType, pNext: pointer = nil, schedulingControlsFlags: VkPhysicalDeviceSchedulingControlsFlagsARM): VkPhysicalDeviceSchedulingControlsPropertiesARM = result.sType = sType result.pNext = pNext - result.versionData = versionData + result.schedulingControlsFlags = schedulingControlsFlags -proc newVkCopyAccelerationStructureInfoKHR*(sType: VkStructureType, pNext: pointer = nil, src: VkAccelerationStructureKHR, dst: VkAccelerationStructureKHR, mode: VkCopyAccelerationStructureModeKHR): VkCopyAccelerationStructureInfoKHR = +proc newVkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG*(sType: VkStructureType, pNext: pointer = nil, relaxedLineRasterization: VkBool32): VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG = result.sType = sType result.pNext = pNext - result.src = src - result.dst = dst - result.mode = mode + result.relaxedLineRasterization = relaxedLineRasterization -proc newVkCopyAccelerationStructureToMemoryInfoKHR*(sType: VkStructureType, pNext: pointer = nil, src: VkAccelerationStructureKHR, dst: VkDeviceOrHostAddressKHR, mode: VkCopyAccelerationStructureModeKHR): VkCopyAccelerationStructureToMemoryInfoKHR = +proc newVkPhysicalDeviceRenderPassStripedFeaturesARM*(sType: VkStructureType, pNext: pointer = nil, renderPassStriped: VkBool32): VkPhysicalDeviceRenderPassStripedFeaturesARM = result.sType = sType result.pNext = pNext - result.src = src - result.dst = dst - result.mode = mode + result.renderPassStriped = renderPassStriped -proc newVkCopyMemoryToAccelerationStructureInfoKHR*(sType: VkStructureType, pNext: pointer = nil, src: VkDeviceOrHostAddressConstKHR, dst: VkAccelerationStructureKHR, mode: VkCopyAccelerationStructureModeKHR): VkCopyMemoryToAccelerationStructureInfoKHR = +proc newVkPhysicalDeviceRenderPassStripedPropertiesARM*(sType: VkStructureType, pNext: pointer = nil, renderPassStripeGranularity: VkExtent2D, maxRenderPassStripes: uint32): VkPhysicalDeviceRenderPassStripedPropertiesARM = result.sType = sType result.pNext = pNext - result.src = src - result.dst = dst - result.mode = mode + result.renderPassStripeGranularity = renderPassStripeGranularity + result.maxRenderPassStripes = maxRenderPassStripes -proc newVkRayTracingPipelineInterfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, maxPayloadSize: uint32, maxAttributeSize: uint32, maxCallableSize: uint32): VkRayTracingPipelineInterfaceCreateInfoKHR = +proc newVkRenderPassStripeInfoARM*(sType: VkStructureType, pNext: pointer = nil, stripeArea: VkRect2D): VkRenderPassStripeInfoARM = result.sType = sType result.pNext = pNext - result.maxPayloadSize = maxPayloadSize - result.maxAttributeSize = maxAttributeSize - result.maxCallableSize = maxCallableSize + result.stripeArea = stripeArea -proc newVkDeferredOperationInfoKHR*(sType: VkStructureType, pNext: pointer = nil, operationHandle: VkDeferredOperationKHR): VkDeferredOperationInfoKHR = +proc newVkRenderPassStripeBeginInfoARM*(sType: VkStructureType, pNext: pointer = nil, stripeInfoCount: uint32, pStripeInfos: ptr VkRenderPassStripeInfoARM): VkRenderPassStripeBeginInfoARM = result.sType = sType result.pNext = pNext - result.operationHandle = operationHandle + result.stripeInfoCount = stripeInfoCount + result.pStripeInfos = pStripeInfos -proc newVkPipelineLibraryCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, libraryCount: uint32, pLibraries: ptr VkPipeline): VkPipelineLibraryCreateInfoKHR = +proc newVkRenderPassStripeSubmitInfoARM*(sType: VkStructureType, pNext: pointer = nil, stripeSemaphoreInfoCount: uint32, pStripeSemaphoreInfos: ptr VkSemaphoreSubmitInfo): VkRenderPassStripeSubmitInfoARM = result.sType = sType result.pNext = pNext - result.libraryCount = libraryCount - result.pLibraries = pLibraries + result.stripeSemaphoreInfoCount = stripeSemaphoreInfoCount + result.pStripeSemaphoreInfos = pStripeSemaphoreInfos -proc newVkPhysicalDeviceExtendedDynamicStateFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, extendedDynamicState: VkBool32): VkPhysicalDeviceExtendedDynamicStateFeaturesEXT = +proc newVkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, shaderMaximalReconvergence: VkBool32): VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR = result.sType = sType result.pNext = pNext - result.extendedDynamicState = extendedDynamicState + result.shaderMaximalReconvergence = shaderMaximalReconvergence -proc newVkRenderPassTransformBeginInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, transform: VkSurfaceTransformFlagBitsKHR): VkRenderPassTransformBeginInfoQCOM = +proc newVkPhysicalDeviceShaderSubgroupRotateFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, shaderSubgroupRotate: VkBool32, shaderSubgroupRotateClustered: VkBool32): VkPhysicalDeviceShaderSubgroupRotateFeaturesKHR = result.sType = sType result.pNext = pNext - result.transform = transform + result.shaderSubgroupRotate = shaderSubgroupRotate + result.shaderSubgroupRotateClustered = shaderSubgroupRotateClustered -proc newVkCommandBufferInheritanceRenderPassTransformInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, transform: VkSurfaceTransformFlagBitsKHR, renderArea: VkRect2D): VkCommandBufferInheritanceRenderPassTransformInfoQCOM = +proc newVkPhysicalDeviceShaderExpectAssumeFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, shaderExpectAssume: VkBool32): VkPhysicalDeviceShaderExpectAssumeFeaturesKHR = result.sType = sType result.pNext = pNext - result.transform = transform - result.renderArea = renderArea + result.shaderExpectAssume = shaderExpectAssume -proc newVkPhysicalDeviceDiagnosticsConfigFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, diagnosticsConfig: VkBool32): VkPhysicalDeviceDiagnosticsConfigFeaturesNV = +proc newVkPhysicalDeviceShaderFloatControls2FeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, shaderFloatControls2: VkBool32): VkPhysicalDeviceShaderFloatControls2FeaturesKHR = result.sType = sType result.pNext = pNext - result.diagnosticsConfig = diagnosticsConfig + result.shaderFloatControls2 = shaderFloatControls2 -proc newVkDeviceDiagnosticsConfigCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkDeviceDiagnosticsConfigFlagsNV = 0.VkDeviceDiagnosticsConfigFlagsNV): VkDeviceDiagnosticsConfigCreateInfoNV = +proc newVkPhysicalDeviceDynamicRenderingLocalReadFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, dynamicRenderingLocalRead: VkBool32): VkPhysicalDeviceDynamicRenderingLocalReadFeaturesKHR = result.sType = sType result.pNext = pNext - result.flags = flags + result.dynamicRenderingLocalRead = dynamicRenderingLocalRead -proc newVkPhysicalDeviceRobustness2FeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, robustBufferAccess2: VkBool32, robustImageAccess2: VkBool32, nullDescriptor: VkBool32): VkPhysicalDeviceRobustness2FeaturesEXT = +proc newVkRenderingAttachmentLocationInfoKHR*(sType: VkStructureType, pNext: pointer = nil, colorAttachmentCount: uint32, pColorAttachmentLocations: ptr uint32): VkRenderingAttachmentLocationInfoKHR = result.sType = sType result.pNext = pNext - result.robustBufferAccess2 = robustBufferAccess2 - result.robustImageAccess2 = robustImageAccess2 - result.nullDescriptor = nullDescriptor + result.colorAttachmentCount = colorAttachmentCount + result.pColorAttachmentLocations = pColorAttachmentLocations -proc newVkPhysicalDeviceRobustness2PropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, robustStorageBufferAccessSizeAlignment: VkDeviceSize, robustUniformBufferAccessSizeAlignment: VkDeviceSize): VkPhysicalDeviceRobustness2PropertiesEXT = +proc newVkRenderingInputAttachmentIndexInfoKHR*(sType: VkStructureType, pNext: pointer = nil, colorAttachmentCount: uint32, pColorAttachmentInputIndices: ptr uint32, pDepthInputAttachmentIndex: ptr uint32, pStencilInputAttachmentIndex: ptr uint32): VkRenderingInputAttachmentIndexInfoKHR = result.sType = sType result.pNext = pNext - result.robustStorageBufferAccessSizeAlignment = robustStorageBufferAccessSizeAlignment - result.robustUniformBufferAccessSizeAlignment = robustUniformBufferAccessSizeAlignment + result.colorAttachmentCount = colorAttachmentCount + result.pColorAttachmentInputIndices = pColorAttachmentInputIndices + result.pDepthInputAttachmentIndex = pDepthInputAttachmentIndex + result.pStencilInputAttachmentIndex = pStencilInputAttachmentIndex -proc newVkPhysicalDeviceImageRobustnessFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, robustImageAccess: VkBool32): VkPhysicalDeviceImageRobustnessFeaturesEXT = +proc newVkPhysicalDeviceShaderQuadControlFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, shaderQuadControl: VkBool32): VkPhysicalDeviceShaderQuadControlFeaturesKHR = result.sType = sType result.pNext = pNext - result.robustImageAccess = robustImageAccess + result.shaderQuadControl = shaderQuadControl -proc newVkPhysicalDevice4444FormatsFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, formatA4R4G4B4: VkBool32, formatA4B4G4R4: VkBool32): VkPhysicalDevice4444FormatsFeaturesEXT = +proc newVkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, shaderFloat16VectorAtomics: VkBool32): VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV = result.sType = sType result.pNext = pNext - result.formatA4R4G4B4 = formatA4R4G4B4 - result.formatA4B4G4R4 = formatA4B4G4R4 + result.shaderFloat16VectorAtomics = shaderFloat16VectorAtomics + +proc newVkPhysicalDeviceMapMemoryPlacedFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, memoryMapPlaced: VkBool32, memoryMapRangePlaced: VkBool32, memoryUnmapReserve: VkBool32): VkPhysicalDeviceMapMemoryPlacedFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.memoryMapPlaced = memoryMapPlaced + result.memoryMapRangePlaced = memoryMapRangePlaced + result.memoryUnmapReserve = memoryUnmapReserve + +proc newVkPhysicalDeviceMapMemoryPlacedPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, minPlacedMemoryMapAlignment: VkDeviceSize): VkPhysicalDeviceMapMemoryPlacedPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.minPlacedMemoryMapAlignment = minPlacedMemoryMapAlignment + +proc newVkMemoryMapPlacedInfoEXT*(sType: VkStructureType, pNext: pointer = nil, pPlacedAddress: pointer = nil): VkMemoryMapPlacedInfoEXT = + result.sType = sType + result.pNext = pNext + result.pPlacedAddress = pPlacedAddress + +proc newVkPhysicalDeviceRawAccessChainsFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, shaderRawAccessChains: VkBool32): VkPhysicalDeviceRawAccessChainsFeaturesNV = + result.sType = sType + result.pNext = pNext + result.shaderRawAccessChains = shaderRawAccessChains # Procs var - vkCreateInstance*: proc(pCreateInfo: ptr VkInstanceCreateInfo , pAllocator: ptr VkAllocationCallbacks , pInstance: ptr VkInstance ): VkResult {.stdcall.} vkDestroyInstance*: proc(instance: VkInstance, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} vkEnumeratePhysicalDevices*: proc(instance: VkInstance, pPhysicalDeviceCount: ptr uint32 , pPhysicalDevices: ptr VkPhysicalDevice ): VkResult {.stdcall.} vkGetDeviceProcAddr*: proc(device: VkDevice, pName: cstring ): PFN_vkVoidFunction {.stdcall.} @@ -9827,10 +18149,9 @@ var vkGetPhysicalDeviceFormatProperties*: proc(physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: ptr VkFormatProperties ): void {.stdcall.} vkGetPhysicalDeviceImageFormatProperties*: proc(physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, tiling: VkImageTiling, usage: VkImageUsageFlags, flags: VkImageCreateFlags, pImageFormatProperties: ptr VkImageFormatProperties ): VkResult {.stdcall.} vkCreateDevice*: proc(physicalDevice: VkPhysicalDevice, pCreateInfo: ptr VkDeviceCreateInfo , pAllocator: ptr VkAllocationCallbacks , pDevice: ptr VkDevice ): VkResult {.stdcall.} + vkCreateDevice*: proc(physicalDevice: VkPhysicalDevice, pCreateInfo: ptr VkDeviceCreateInfo , pAllocator: ptr VkAllocationCallbacks , pDevice: ptr VkDevice ): VkResult {.stdcall.} vkDestroyDevice*: proc(device: VkDevice, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkEnumerateInstanceVersion*: proc(pApiVersion: ptr uint32 ): VkResult {.stdcall.} - vkEnumerateInstanceLayerProperties*: proc(pPropertyCount: ptr uint32 , pProperties: ptr VkLayerProperties ): VkResult {.stdcall.} - vkEnumerateInstanceExtensionProperties*: proc(pLayerName: cstring , pPropertyCount: ptr uint32 , pProperties: ptr VkExtensionProperties ): VkResult {.stdcall.} + vkEnumerateDeviceLayerProperties*: proc(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkLayerProperties ): VkResult {.stdcall.} vkEnumerateDeviceLayerProperties*: proc(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkLayerProperties ): VkResult {.stdcall.} vkEnumerateDeviceExtensionProperties*: proc(physicalDevice: VkPhysicalDevice, pLayerName: cstring , pPropertyCount: ptr uint32 , pProperties: ptr VkExtensionProperties ): VkResult {.stdcall.} vkGetDeviceQueue*: proc(device: VkDevice, queueFamilyIndex: uint32, queueIndex: uint32, pQueue: ptr VkQueue ): void {.stdcall.} @@ -9879,11 +18200,15 @@ var vkCreateShaderModule*: proc(device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo , pAllocator: ptr VkAllocationCallbacks , pShaderModule: ptr VkShaderModule ): VkResult {.stdcall.} vkDestroyShaderModule*: proc(device: VkDevice, shaderModule: VkShaderModule, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} vkCreatePipelineCache*: proc(device: VkDevice, pCreateInfo: ptr VkPipelineCacheCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelineCache: ptr VkPipelineCache ): VkResult {.stdcall.} + vkCreatePipelineCache*: proc(device: VkDevice, pCreateInfo: ptr VkPipelineCacheCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelineCache: ptr VkPipelineCache ): VkResult {.stdcall.} vkDestroyPipelineCache*: proc(device: VkDevice, pipelineCache: VkPipelineCache, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} vkGetPipelineCacheData*: proc(device: VkDevice, pipelineCache: VkPipelineCache, pDataSize: ptr uint , pData: pointer ): VkResult {.stdcall.} vkMergePipelineCaches*: proc(device: VkDevice, dstCache: VkPipelineCache, srcCacheCount: uint32, pSrcCaches: ptr VkPipelineCache ): VkResult {.stdcall.} vkCreateGraphicsPipelines*: proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkGraphicsPipelineCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.} + vkCreateGraphicsPipelines*: proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkGraphicsPipelineCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.} vkCreateComputePipelines*: proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkComputePipelineCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.} + vkCreateComputePipelines*: proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkComputePipelineCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.} + vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI*: proc(device: VkDevice, renderpass: VkRenderPass, pMaxWorkgroupSize: ptr VkExtent2D ): VkResult {.stdcall.} vkDestroyPipeline*: proc(device: VkDevice, pipeline: VkPipeline, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} vkCreatePipelineLayout*: proc(device: VkDevice, pCreateInfo: ptr VkPipelineLayoutCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelineLayout: ptr VkPipelineLayout ): VkResult {.stdcall.} vkDestroyPipelineLayout*: proc(device: VkDevice, pipelineLayout: VkPipelineLayout, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} @@ -9902,6 +18227,7 @@ var vkCreateRenderPass*: proc(device: VkDevice, pCreateInfo: ptr VkRenderPassCreateInfo , pAllocator: ptr VkAllocationCallbacks , pRenderPass: ptr VkRenderPass ): VkResult {.stdcall.} vkDestroyRenderPass*: proc(device: VkDevice, renderPass: VkRenderPass, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} vkGetRenderAreaGranularity*: proc(device: VkDevice, renderPass: VkRenderPass, pGranularity: ptr VkExtent2D ): void {.stdcall.} + vkGetRenderingAreaGranularityKHR*: proc(device: VkDevice, pRenderingAreaInfo: ptr VkRenderingAreaInfoKHR , pGranularity: ptr VkExtent2D ): void {.stdcall.} vkCreateCommandPool*: proc(device: VkDevice, pCreateInfo: ptr VkCommandPoolCreateInfo , pAllocator: ptr VkAllocationCallbacks , pCommandPool: ptr VkCommandPool ): VkResult {.stdcall.} vkDestroyCommandPool*: proc(device: VkDevice, commandPool: VkCommandPool, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} vkResetCommandPool*: proc(device: VkDevice, commandPool: VkCommandPool, flags: VkCommandPoolResetFlags): VkResult {.stdcall.} @@ -9911,6 +18237,7 @@ var vkEndCommandBuffer*: proc(commandBuffer: VkCommandBuffer): VkResult {.stdcall.} vkResetCommandBuffer*: proc(commandBuffer: VkCommandBuffer, flags: VkCommandBufferResetFlags): VkResult {.stdcall.} vkCmdBindPipeline*: proc(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline): void {.stdcall.} + vkCmdSetAttachmentFeedbackLoopEnableEXT*: proc(commandBuffer: VkCommandBuffer, aspectMask: VkImageAspectFlags): void {.stdcall.} vkCmdSetViewport*: proc(commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewports: ptr VkViewport ): void {.stdcall.} vkCmdSetScissor*: proc(commandBuffer: VkCommandBuffer, firstScissor: uint32, scissorCount: uint32, pScissors: ptr VkRect2D ): void {.stdcall.} vkCmdSetLineWidth*: proc(commandBuffer: VkCommandBuffer, lineWidth: float32): void {.stdcall.} @@ -9925,15 +18252,23 @@ var vkCmdBindVertexBuffers*: proc(commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer , pOffsets: ptr VkDeviceSize ): void {.stdcall.} vkCmdDraw*: proc(commandBuffer: VkCommandBuffer, vertexCount: uint32, instanceCount: uint32, firstVertex: uint32, firstInstance: uint32): void {.stdcall.} vkCmdDrawIndexed*: proc(commandBuffer: VkCommandBuffer, indexCount: uint32, instanceCount: uint32, firstIndex: uint32, vertexOffset: int32, firstInstance: uint32): void {.stdcall.} + vkCmdDrawMultiEXT*: proc(commandBuffer: VkCommandBuffer, drawCount: uint32, pVertexInfo: ptr VkMultiDrawInfoEXT , instanceCount: uint32, firstInstance: uint32, stride: uint32): void {.stdcall.} + vkCmdDrawMultiIndexedEXT*: proc(commandBuffer: VkCommandBuffer, drawCount: uint32, pIndexInfo: ptr VkMultiDrawIndexedInfoEXT , instanceCount: uint32, firstInstance: uint32, stride: uint32, pVertexOffset: ptr int32 ): void {.stdcall.} vkCmdDrawIndirect*: proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.} vkCmdDrawIndexedIndirect*: proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.} vkCmdDispatch*: proc(commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.} vkCmdDispatchIndirect*: proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize): void {.stdcall.} + vkCmdSubpassShadingHUAWEI*: proc(commandBuffer: VkCommandBuffer): void {.stdcall.} + vkCmdDrawClusterHUAWEI*: proc(commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.} + vkCmdDrawClusterIndirectHUAWEI*: proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize): void {.stdcall.} + vkCmdUpdatePipelineIndirectBufferNV*: proc(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline): void {.stdcall.} vkCmdCopyBuffer*: proc(commandBuffer: VkCommandBuffer, srcBuffer: VkBuffer, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferCopy ): void {.stdcall.} vkCmdCopyImage*: proc(commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageCopy ): void {.stdcall.} vkCmdBlitImage*: proc(commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageBlit , filter: VkFilter): void {.stdcall.} vkCmdCopyBufferToImage*: proc(commandBuffer: VkCommandBuffer, srcBuffer: VkBuffer, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkBufferImageCopy ): void {.stdcall.} vkCmdCopyImageToBuffer*: proc(commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferImageCopy ): void {.stdcall.} + vkCmdCopyMemoryIndirectNV*: proc(commandBuffer: VkCommandBuffer, copyBufferAddress: VkDeviceAddress, copyCount: uint32, stride: uint32): void {.stdcall.} + vkCmdCopyMemoryToImageIndirectNV*: proc(commandBuffer: VkCommandBuffer, copyBufferAddress: VkDeviceAddress, copyCount: uint32, stride: uint32, dstImage: VkImage, dstImageLayout: VkImageLayout, pImageSubresources: ptr VkImageSubresourceLayers ): void {.stdcall.} vkCmdUpdateBuffer*: proc(commandBuffer: VkCommandBuffer, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, dataSize: VkDeviceSize, pData: pointer ): void {.stdcall.} vkCmdFillBuffer*: proc(commandBuffer: VkCommandBuffer, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, size: VkDeviceSize, data: uint32): void {.stdcall.} vkCmdClearColorImage*: proc(commandBuffer: VkCommandBuffer, image: VkImage, imageLayout: VkImageLayout, pColor: ptr VkClearColorValue , rangeCount: uint32, pRanges: ptr VkImageSubresourceRange ): void {.stdcall.} @@ -9964,13 +18299,13 @@ var vkCreateDisplayModeKHR*: proc(physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pCreateInfo: ptr VkDisplayModeCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pMode: ptr VkDisplayModeKHR ): VkResult {.stdcall.} vkGetDisplayPlaneCapabilitiesKHR*: proc(physicalDevice: VkPhysicalDevice, mode: VkDisplayModeKHR, planeIndex: uint32, pCapabilities: ptr VkDisplayPlaneCapabilitiesKHR ): VkResult {.stdcall.} vkCreateDisplayPlaneSurfaceKHR*: proc(instance: VkInstance, pCreateInfo: ptr VkDisplaySurfaceCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.} - vkCreateSharedSwapchainsKHR*: proc(device: VkDevice, swapchainCount: uint32, pCreateInfos: ptr VkSwapchainCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSwapchains: ptr VkSwapchainKHR ): VkResult {.stdcall.} + vkCreateSharedSwapchainsKHR*: proc(device: VkDevice, swapchainCount: uint32, pCreateInfos: ptr VkSwapchainCreateInfoKHR , pCreateInfos: ptr VkSwapchainCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSwapchains: ptr VkSwapchainKHR ): VkResult {.stdcall.} vkDestroySurfaceKHR*: proc(instance: VkInstance, surface: VkSurfaceKHR, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} vkGetPhysicalDeviceSurfaceSupportKHR*: proc(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, surface: VkSurfaceKHR, pSupported: ptr VkBool32 ): VkResult {.stdcall.} vkGetPhysicalDeviceSurfaceCapabilitiesKHR*: proc(physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceCapabilities: ptr VkSurfaceCapabilitiesKHR ): VkResult {.stdcall.} vkGetPhysicalDeviceSurfaceFormatsKHR*: proc(physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceFormatCount: ptr uint32 , pSurfaceFormats: ptr VkSurfaceFormatKHR ): VkResult {.stdcall.} vkGetPhysicalDeviceSurfacePresentModesKHR*: proc(physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pPresentModeCount: ptr uint32 , pPresentModes: ptr VkPresentModeKHR ): VkResult {.stdcall.} - vkCreateSwapchainKHR*: proc(device: VkDevice, pCreateInfo: ptr VkSwapchainCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSwapchain: ptr VkSwapchainKHR ): VkResult {.stdcall.} + vkCreateSwapchainKHR*: proc(device: VkDevice, pCreateInfo: ptr VkSwapchainCreateInfoKHR , pCreateInfo: ptr VkSwapchainCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSwapchain: ptr VkSwapchainKHR ): VkResult {.stdcall.} vkDestroySwapchainKHR*: proc(device: VkDevice, swapchain: VkSwapchainKHR, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} vkGetSwapchainImagesKHR*: proc(device: VkDevice, swapchain: VkSwapchainKHR, pSwapchainImageCount: ptr uint32 , pSwapchainImages: ptr VkImage ): VkResult {.stdcall.} vkAcquireNextImageKHR*: proc(device: VkDevice, swapchain: VkSwapchainKHR, timeout: uint64, semaphore: VkSemaphore, fence: VkFence, pImageIndex: ptr uint32 ): VkResult {.stdcall.} @@ -9988,6 +18323,8 @@ var vkGetPhysicalDeviceDirectFBPresentationSupportEXT*: proc(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, dfb: ptr IDirectFB ): VkBool32 {.stdcall.} vkCreateImagePipeSurfaceFUCHSIA*: proc(instance: VkInstance, pCreateInfo: ptr VkImagePipeSurfaceCreateInfoFUCHSIA , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.} vkCreateStreamDescriptorSurfaceGGP*: proc(instance: VkInstance, pCreateInfo: ptr VkStreamDescriptorSurfaceCreateInfoGGP , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.} + vkCreateScreenSurfaceQNX*: proc(instance: VkInstance, pCreateInfo: ptr VkScreenSurfaceCreateInfoQNX , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.} + vkGetPhysicalDeviceScreenPresentationSupportQNX*: proc(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, window: ptr _screen_window ): VkBool32 {.stdcall.} vkCreateDebugReportCallbackEXT*: proc(instance: VkInstance, pCreateInfo: ptr VkDebugReportCallbackCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pCallback: ptr VkDebugReportCallbackEXT ): VkResult {.stdcall.} vkDestroyDebugReportCallbackEXT*: proc(instance: VkInstance, callback: VkDebugReportCallbackEXT, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} vkDebugReportMessageEXT*: proc(instance: VkInstance, flags: VkDebugReportFlagsEXT, objectType: VkDebugReportObjectTypeEXT, `object`: uint64, location: uint, messageCode: int32, pLayerPrefix: cstring , pMessage: cstring ): void {.stdcall.} @@ -10018,19 +18355,38 @@ var vkGetMemoryWin32HandlePropertiesKHR*: proc(device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, handle: HANDLE, pMemoryWin32HandleProperties: ptr VkMemoryWin32HandlePropertiesKHR ): VkResult {.stdcall.} vkGetMemoryFdKHR*: proc(device: VkDevice, pGetFdInfo: ptr VkMemoryGetFdInfoKHR , pFd: ptr int ): VkResult {.stdcall.} vkGetMemoryFdPropertiesKHR*: proc(device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, fd: int, pMemoryFdProperties: ptr VkMemoryFdPropertiesKHR ): VkResult {.stdcall.} + vkGetMemoryZirconHandleFUCHSIA*: proc(device: VkDevice, pGetZirconHandleInfo: ptr VkMemoryGetZirconHandleInfoFUCHSIA , pZirconHandle: ptr zx_handle_t ): VkResult {.stdcall.} + vkGetMemoryZirconHandlePropertiesFUCHSIA*: proc(device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, zirconHandle: zx_handle_t, pMemoryZirconHandleProperties: ptr VkMemoryZirconHandlePropertiesFUCHSIA ): VkResult {.stdcall.} + vkGetMemoryRemoteAddressNV*: proc(device: VkDevice, pMemoryGetRemoteAddressInfo: ptr VkMemoryGetRemoteAddressInfoNV , pAddress: ptr VkRemoteAddressNV ): VkResult {.stdcall.} + vkGetMemorySciBufNV*: proc(device: VkDevice, pGetSciBufInfo: ptr VkMemoryGetSciBufInfoNV , pHandle: ptr NvSciBufObj ): VkResult {.stdcall.} + vkGetPhysicalDeviceExternalMemorySciBufPropertiesNV*: proc(physicalDevice: VkPhysicalDevice, handleType: VkExternalMemoryHandleTypeFlagBits, handle: NvSciBufObj, pMemorySciBufProperties: ptr VkMemorySciBufPropertiesNV ): VkResult {.stdcall.} + vkGetPhysicalDeviceSciBufAttributesNV*: proc(physicalDevice: VkPhysicalDevice, pAttributes: NvSciBufAttrList): VkResult {.stdcall.} vkGetPhysicalDeviceExternalSemaphoreProperties*: proc(physicalDevice: VkPhysicalDevice, pExternalSemaphoreInfo: ptr VkPhysicalDeviceExternalSemaphoreInfo , pExternalSemaphoreProperties: ptr VkExternalSemaphoreProperties ): void {.stdcall.} vkGetSemaphoreWin32HandleKHR*: proc(device: VkDevice, pGetWin32HandleInfo: ptr VkSemaphoreGetWin32HandleInfoKHR , pHandle: ptr HANDLE ): VkResult {.stdcall.} vkImportSemaphoreWin32HandleKHR*: proc(device: VkDevice, pImportSemaphoreWin32HandleInfo: ptr VkImportSemaphoreWin32HandleInfoKHR ): VkResult {.stdcall.} vkGetSemaphoreFdKHR*: proc(device: VkDevice, pGetFdInfo: ptr VkSemaphoreGetFdInfoKHR , pFd: ptr int ): VkResult {.stdcall.} vkImportSemaphoreFdKHR*: proc(device: VkDevice, pImportSemaphoreFdInfo: ptr VkImportSemaphoreFdInfoKHR ): VkResult {.stdcall.} + vkGetSemaphoreZirconHandleFUCHSIA*: proc(device: VkDevice, pGetZirconHandleInfo: ptr VkSemaphoreGetZirconHandleInfoFUCHSIA , pZirconHandle: ptr zx_handle_t ): VkResult {.stdcall.} + vkImportSemaphoreZirconHandleFUCHSIA*: proc(device: VkDevice, pImportSemaphoreZirconHandleInfo: ptr VkImportSemaphoreZirconHandleInfoFUCHSIA ): VkResult {.stdcall.} vkGetPhysicalDeviceExternalFenceProperties*: proc(physicalDevice: VkPhysicalDevice, pExternalFenceInfo: ptr VkPhysicalDeviceExternalFenceInfo , pExternalFenceProperties: ptr VkExternalFenceProperties ): void {.stdcall.} vkGetFenceWin32HandleKHR*: proc(device: VkDevice, pGetWin32HandleInfo: ptr VkFenceGetWin32HandleInfoKHR , pHandle: ptr HANDLE ): VkResult {.stdcall.} vkImportFenceWin32HandleKHR*: proc(device: VkDevice, pImportFenceWin32HandleInfo: ptr VkImportFenceWin32HandleInfoKHR ): VkResult {.stdcall.} vkGetFenceFdKHR*: proc(device: VkDevice, pGetFdInfo: ptr VkFenceGetFdInfoKHR , pFd: ptr int ): VkResult {.stdcall.} vkImportFenceFdKHR*: proc(device: VkDevice, pImportFenceFdInfo: ptr VkImportFenceFdInfoKHR ): VkResult {.stdcall.} + vkGetFenceSciSyncFenceNV*: proc(device: VkDevice, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV , pHandle: pointer ): VkResult {.stdcall.} + vkGetFenceSciSyncObjNV*: proc(device: VkDevice, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV , pHandle: pointer ): VkResult {.stdcall.} + vkImportFenceSciSyncFenceNV*: proc(device: VkDevice, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV ): VkResult {.stdcall.} + vkImportFenceSciSyncObjNV*: proc(device: VkDevice, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV ): VkResult {.stdcall.} + vkGetSemaphoreSciSyncObjNV*: proc(device: VkDevice, pGetSciSyncInfo: ptr VkSemaphoreGetSciSyncInfoNV , pHandle: pointer ): VkResult {.stdcall.} + vkImportSemaphoreSciSyncObjNV*: proc(device: VkDevice, pImportSemaphoreSciSyncInfo: ptr VkImportSemaphoreSciSyncInfoNV ): VkResult {.stdcall.} + vkGetPhysicalDeviceSciSyncAttributesNV*: proc(physicalDevice: VkPhysicalDevice, pSciSyncAttributesInfo: ptr VkSciSyncAttributesInfoNV , pAttributes: NvSciSyncAttrList): VkResult {.stdcall.} + vkCreateSemaphoreSciSyncPoolNV*: proc(device: VkDevice, pCreateInfo: ptr VkSemaphoreSciSyncPoolCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pSemaphorePool: ptr VkSemaphoreSciSyncPoolNV ): VkResult {.stdcall.} + vkDestroySemaphoreSciSyncPoolNV*: proc(device: VkDevice, semaphorePool: VkSemaphoreSciSyncPoolNV, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} vkReleaseDisplayEXT*: proc(physicalDevice: VkPhysicalDevice, display: VkDisplayKHR): VkResult {.stdcall.} vkAcquireXlibDisplayEXT*: proc(physicalDevice: VkPhysicalDevice, dpy: ptr Display , display: VkDisplayKHR): VkResult {.stdcall.} vkGetRandROutputDisplayEXT*: proc(physicalDevice: VkPhysicalDevice, dpy: ptr Display , rrOutput: RROutput, pDisplay: ptr VkDisplayKHR ): VkResult {.stdcall.} + vkAcquireWinrtDisplayNV*: proc(physicalDevice: VkPhysicalDevice, display: VkDisplayKHR): VkResult {.stdcall.} + vkGetWinrtDisplayNV*: proc(physicalDevice: VkPhysicalDevice, deviceRelativeId: uint32, pDisplay: ptr VkDisplayKHR ): VkResult {.stdcall.} vkDisplayPowerControlEXT*: proc(device: VkDevice, display: VkDisplayKHR, pDisplayPowerInfo: ptr VkDisplayPowerInfoEXT ): VkResult {.stdcall.} vkRegisterDeviceEventEXT*: proc(device: VkDevice, pDeviceEventInfo: ptr VkDeviceEventInfoEXT , pAllocator: ptr VkAllocationCallbacks , pFence: ptr VkFence ): VkResult {.stdcall.} vkRegisterDisplayEventEXT*: proc(device: VkDevice, display: VkDisplayKHR, pDisplayEventInfo: ptr VkDisplayEventInfoEXT , pAllocator: ptr VkAllocationCallbacks , pFence: ptr VkFence ): VkResult {.stdcall.} @@ -10059,6 +18415,8 @@ var vkCreateMetalSurfaceEXT*: proc(instance: VkInstance, pCreateInfo: ptr VkMetalSurfaceCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.} vkCmdSetViewportWScalingNV*: proc(commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportWScalings: ptr VkViewportWScalingNV ): void {.stdcall.} vkCmdSetDiscardRectangleEXT*: proc(commandBuffer: VkCommandBuffer, firstDiscardRectangle: uint32, discardRectangleCount: uint32, pDiscardRectangles: ptr VkRect2D ): void {.stdcall.} + vkCmdSetDiscardRectangleEnableEXT*: proc(commandBuffer: VkCommandBuffer, discardRectangleEnable: VkBool32): void {.stdcall.} + vkCmdSetDiscardRectangleModeEXT*: proc(commandBuffer: VkCommandBuffer, discardRectangleMode: VkDiscardRectangleModeEXT): void {.stdcall.} vkCmdSetSampleLocationsEXT*: proc(commandBuffer: VkCommandBuffer, pSampleLocationsInfo: ptr VkSampleLocationsInfoEXT ): void {.stdcall.} vkGetPhysicalDeviceMultisamplePropertiesEXT*: proc(physicalDevice: VkPhysicalDevice, samples: VkSampleCountFlagBits, pMultisampleProperties: ptr VkMultisamplePropertiesEXT ): void {.stdcall.} vkGetPhysicalDeviceSurfaceCapabilities2KHR*: proc(physicalDevice: VkPhysicalDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR , pSurfaceCapabilities: ptr VkSurfaceCapabilities2KHR ): VkResult {.stdcall.} @@ -10070,6 +18428,9 @@ var vkGetBufferMemoryRequirements2*: proc(device: VkDevice, pInfo: ptr VkBufferMemoryRequirementsInfo2 , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.stdcall.} vkGetImageMemoryRequirements2*: proc(device: VkDevice, pInfo: ptr VkImageMemoryRequirementsInfo2 , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.stdcall.} vkGetImageSparseMemoryRequirements2*: proc(device: VkDevice, pInfo: ptr VkImageSparseMemoryRequirementsInfo2 , pSparseMemoryRequirementCount: ptr uint32 , pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2 ): void {.stdcall.} + vkGetDeviceBufferMemoryRequirements*: proc(device: VkDevice, pInfo: ptr VkDeviceBufferMemoryRequirements , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.stdcall.} + vkGetDeviceImageMemoryRequirements*: proc(device: VkDevice, pInfo: ptr VkDeviceImageMemoryRequirements , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.stdcall.} + vkGetDeviceImageSparseMemoryRequirements*: proc(device: VkDevice, pInfo: ptr VkDeviceImageMemoryRequirements , pSparseMemoryRequirementCount: ptr uint32 , pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2 ): void {.stdcall.} vkCreateSamplerYcbcrConversion*: proc(device: VkDevice, pCreateInfo: ptr VkSamplerYcbcrConversionCreateInfo , pAllocator: ptr VkAllocationCallbacks , pYcbcrConversion: ptr VkSamplerYcbcrConversion ): VkResult {.stdcall.} vkDestroySamplerYcbcrConversion*: proc(device: VkDevice, ycbcrConversion: VkSamplerYcbcrConversion, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} vkGetDeviceQueue2*: proc(device: VkDevice, pQueueInfo: ptr VkDeviceQueueInfo2 , pQueue: ptr VkQueue ): void {.stdcall.} @@ -10084,8 +18445,8 @@ var vkQueueSignalReleaseImageANDROID*: proc(queue: VkQueue, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore , image: VkImage, pNativeFenceFd: ptr int ): VkResult {.stdcall.} vkGetShaderInfoAMD*: proc(device: VkDevice, pipeline: VkPipeline, shaderStage: VkShaderStageFlagBits, infoType: VkShaderInfoTypeAMD, pInfoSize: ptr uint , pInfo: pointer ): VkResult {.stdcall.} vkSetLocalDimmingAMD*: proc(device: VkDevice, swapChain: VkSwapchainKHR, localDimmingEnable: VkBool32): void {.stdcall.} - vkGetPhysicalDeviceCalibrateableTimeDomainsEXT*: proc(physicalDevice: VkPhysicalDevice, pTimeDomainCount: ptr uint32 , pTimeDomains: ptr VkTimeDomainEXT ): VkResult {.stdcall.} - vkGetCalibratedTimestampsEXT*: proc(device: VkDevice, timestampCount: uint32, pTimestampInfos: ptr VkCalibratedTimestampInfoEXT , pTimestamps: ptr uint64 , pMaxDeviation: ptr uint64 ): VkResult {.stdcall.} + vkGetPhysicalDeviceCalibrateableTimeDomainsKHR*: proc(physicalDevice: VkPhysicalDevice, pTimeDomainCount: ptr uint32 , pTimeDomains: ptr VkTimeDomainKHR ): VkResult {.stdcall.} + vkGetCalibratedTimestampsKHR*: proc(device: VkDevice, timestampCount: uint32, pTimestampInfos: ptr VkCalibratedTimestampInfoKHR , pTimestamps: ptr uint64 , pMaxDeviation: ptr uint64 ): VkResult {.stdcall.} vkSetDebugUtilsObjectNameEXT*: proc(device: VkDevice, pNameInfo: ptr VkDebugUtilsObjectNameInfoEXT ): VkResult {.stdcall.} vkSetDebugUtilsObjectTagEXT*: proc(device: VkDevice, pTagInfo: ptr VkDebugUtilsObjectTagInfoEXT ): VkResult {.stdcall.} vkQueueBeginDebugUtilsLabelEXT*: proc(queue: VkQueue, pLabelInfo: ptr VkDebugUtilsLabelEXT ): void {.stdcall.} @@ -10119,38 +18480,49 @@ var vkCmdEndQueryIndexedEXT*: proc(commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, index: uint32): void {.stdcall.} vkCmdDrawIndirectByteCountEXT*: proc(commandBuffer: VkCommandBuffer, instanceCount: uint32, firstInstance: uint32, counterBuffer: VkBuffer, counterBufferOffset: VkDeviceSize, counterOffset: uint32, vertexStride: uint32): void {.stdcall.} vkCmdSetExclusiveScissorNV*: proc(commandBuffer: VkCommandBuffer, firstExclusiveScissor: uint32, exclusiveScissorCount: uint32, pExclusiveScissors: ptr VkRect2D ): void {.stdcall.} + vkCmdSetExclusiveScissorEnableNV*: proc(commandBuffer: VkCommandBuffer, firstExclusiveScissor: uint32, exclusiveScissorCount: uint32, pExclusiveScissorEnables: ptr VkBool32 ): void {.stdcall.} vkCmdBindShadingRateImageNV*: proc(commandBuffer: VkCommandBuffer, imageView: VkImageView, imageLayout: VkImageLayout): void {.stdcall.} vkCmdSetViewportShadingRatePaletteNV*: proc(commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pShadingRatePalettes: ptr VkShadingRatePaletteNV ): void {.stdcall.} vkCmdSetCoarseSampleOrderNV*: proc(commandBuffer: VkCommandBuffer, sampleOrderType: VkCoarseSampleOrderTypeNV, customSampleOrderCount: uint32, pCustomSampleOrders: ptr VkCoarseSampleOrderCustomNV ): void {.stdcall.} vkCmdDrawMeshTasksNV*: proc(commandBuffer: VkCommandBuffer, taskCount: uint32, firstTask: uint32): void {.stdcall.} vkCmdDrawMeshTasksIndirectNV*: proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.} vkCmdDrawMeshTasksIndirectCountNV*: proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.} + vkCmdDrawMeshTasksEXT*: proc(commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.} + vkCmdDrawMeshTasksIndirectEXT*: proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.} + vkCmdDrawMeshTasksIndirectCountEXT*: proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.} vkCompileDeferredNV*: proc(device: VkDevice, pipeline: VkPipeline, shader: uint32): VkResult {.stdcall.} vkCreateAccelerationStructureNV*: proc(device: VkDevice, pCreateInfo: ptr VkAccelerationStructureCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pAccelerationStructure: ptr VkAccelerationStructureNV ): VkResult {.stdcall.} + vkCmdBindInvocationMaskHUAWEI*: proc(commandBuffer: VkCommandBuffer, imageView: VkImageView, imageLayout: VkImageLayout): void {.stdcall.} vkDestroyAccelerationStructureKHR*: proc(device: VkDevice, accelerationStructure: VkAccelerationStructureKHR, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkGetAccelerationStructureMemoryRequirementsKHR*: proc(device: VkDevice, pInfo: ptr VkAccelerationStructureMemoryRequirementsInfoKHR , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.stdcall.} + vkDestroyAccelerationStructureNV*: proc(device: VkDevice, accelerationStructure: VkAccelerationStructureNV, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} vkGetAccelerationStructureMemoryRequirementsNV*: proc(device: VkDevice, pInfo: ptr VkAccelerationStructureMemoryRequirementsInfoNV , pMemoryRequirements: ptr VkMemoryRequirements2KHR ): void {.stdcall.} - vkBindAccelerationStructureMemoryKHR*: proc(device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindAccelerationStructureMemoryInfoKHR ): VkResult {.stdcall.} - vkCmdCopyAccelerationStructureNV*: proc(commandBuffer: VkCommandBuffer, dst: VkAccelerationStructureKHR, src: VkAccelerationStructureKHR, mode: VkCopyAccelerationStructureModeKHR): void {.stdcall.} + vkBindAccelerationStructureMemoryNV*: proc(device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindAccelerationStructureMemoryInfoNV ): VkResult {.stdcall.} + vkCmdCopyAccelerationStructureNV*: proc(commandBuffer: VkCommandBuffer, dst: VkAccelerationStructureNV, src: VkAccelerationStructureNV, mode: VkCopyAccelerationStructureModeKHR): void {.stdcall.} vkCmdCopyAccelerationStructureKHR*: proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyAccelerationStructureInfoKHR ): void {.stdcall.} - vkCopyAccelerationStructureKHR*: proc(device: VkDevice, pInfo: ptr VkCopyAccelerationStructureInfoKHR ): VkResult {.stdcall.} + vkCopyAccelerationStructureKHR*: proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyAccelerationStructureInfoKHR ): VkResult {.stdcall.} vkCmdCopyAccelerationStructureToMemoryKHR*: proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR ): void {.stdcall.} - vkCopyAccelerationStructureToMemoryKHR*: proc(device: VkDevice, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR ): VkResult {.stdcall.} + vkCopyAccelerationStructureToMemoryKHR*: proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR ): VkResult {.stdcall.} vkCmdCopyMemoryToAccelerationStructureKHR*: proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR ): void {.stdcall.} - vkCopyMemoryToAccelerationStructureKHR*: proc(device: VkDevice, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR ): VkResult {.stdcall.} + vkCopyMemoryToAccelerationStructureKHR*: proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR ): VkResult {.stdcall.} vkCmdWriteAccelerationStructuresPropertiesKHR*: proc(commandBuffer: VkCommandBuffer, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR , queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.stdcall.} - vkCmdBuildAccelerationStructureNV*: proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkAccelerationStructureInfoNV , instanceData: VkBuffer, instanceOffset: VkDeviceSize, update: VkBool32, dst: VkAccelerationStructureKHR, src: VkAccelerationStructureKHR, scratch: VkBuffer, scratchOffset: VkDeviceSize): void {.stdcall.} + vkCmdWriteAccelerationStructuresPropertiesNV*: proc(commandBuffer: VkCommandBuffer, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureNV , queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.stdcall.} + vkCmdBuildAccelerationStructureNV*: proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkAccelerationStructureInfoNV , instanceData: VkBuffer, instanceOffset: VkDeviceSize, update: VkBool32, dst: VkAccelerationStructureNV, src: VkAccelerationStructureNV, scratch: VkBuffer, scratchOffset: VkDeviceSize): void {.stdcall.} vkWriteAccelerationStructuresPropertiesKHR*: proc(device: VkDevice, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR , queryType: VkQueryType, dataSize: uint, pData: pointer , stride: uint): VkResult {.stdcall.} - vkCmdTraceRaysKHR*: proc(commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedBufferRegionKHR , pMissShaderBindingTable: ptr VkStridedBufferRegionKHR , pHitShaderBindingTable: ptr VkStridedBufferRegionKHR , pCallableShaderBindingTable: ptr VkStridedBufferRegionKHR , width: uint32, height: uint32, depth: uint32): void {.stdcall.} + vkCmdTraceRaysKHR*: proc(commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , width: uint32, height: uint32, depth: uint32): void {.stdcall.} vkCmdTraceRaysNV*: proc(commandBuffer: VkCommandBuffer, raygenShaderBindingTableBuffer: VkBuffer, raygenShaderBindingOffset: VkDeviceSize, missShaderBindingTableBuffer: VkBuffer, missShaderBindingOffset: VkDeviceSize, missShaderBindingStride: VkDeviceSize, hitShaderBindingTableBuffer: VkBuffer, hitShaderBindingOffset: VkDeviceSize, hitShaderBindingStride: VkDeviceSize, callableShaderBindingTableBuffer: VkBuffer, callableShaderBindingOffset: VkDeviceSize, callableShaderBindingStride: VkDeviceSize, width: uint32, height: uint32, depth: uint32): void {.stdcall.} vkGetRayTracingShaderGroupHandlesKHR*: proc(device: VkDevice, pipeline: VkPipeline, firstGroup: uint32, groupCount: uint32, dataSize: uint, pData: pointer ): VkResult {.stdcall.} vkGetRayTracingCaptureReplayShaderGroupHandlesKHR*: proc(device: VkDevice, pipeline: VkPipeline, firstGroup: uint32, groupCount: uint32, dataSize: uint, pData: pointer ): VkResult {.stdcall.} - vkGetAccelerationStructureHandleNV*: proc(device: VkDevice, accelerationStructure: VkAccelerationStructureKHR, dataSize: uint, pData: pointer ): VkResult {.stdcall.} + vkGetAccelerationStructureHandleNV*: proc(device: VkDevice, accelerationStructure: VkAccelerationStructureNV, dataSize: uint, pData: pointer ): VkResult {.stdcall.} + vkCreateRayTracingPipelinesNV*: proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.} vkCreateRayTracingPipelinesNV*: proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.} - vkCreateRayTracingPipelinesKHR*: proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.} + vkCreateRayTracingPipelinesKHR*: proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.} + vkCreateRayTracingPipelinesKHR*: proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.} vkGetPhysicalDeviceCooperativeMatrixPropertiesNV*: proc(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkCooperativeMatrixPropertiesNV ): VkResult {.stdcall.} - vkCmdTraceRaysIndirectKHR*: proc(commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedBufferRegionKHR , pMissShaderBindingTable: ptr VkStridedBufferRegionKHR , pHitShaderBindingTable: ptr VkStridedBufferRegionKHR , pCallableShaderBindingTable: ptr VkStridedBufferRegionKHR , buffer: VkBuffer, offset: VkDeviceSize): void {.stdcall.} - vkGetDeviceAccelerationStructureCompatibilityKHR*: proc(device: VkDevice, version: ptr VkAccelerationStructureVersionKHR ): VkResult {.stdcall.} + vkCmdTraceRaysIndirectKHR*: proc(commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , indirectDeviceAddress: VkDeviceAddress): void {.stdcall.} + vkCmdTraceRaysIndirect2KHR*: proc(commandBuffer: VkCommandBuffer, indirectDeviceAddress: VkDeviceAddress): void {.stdcall.} + vkGetDeviceAccelerationStructureCompatibilityKHR*: proc(device: VkDevice, pVersionInfo: ptr VkAccelerationStructureVersionInfoKHR , pCompatibility: ptr VkAccelerationStructureCompatibilityKHR ): void {.stdcall.} + vkGetRayTracingShaderGroupStackSizeKHR*: proc(device: VkDevice, pipeline: VkPipeline, group: uint32, groupShader: VkShaderGroupShaderKHR): VkDeviceSize {.stdcall.} + vkCmdSetRayTracingPipelineStackSizeKHR*: proc(commandBuffer: VkCommandBuffer, pipelineStackSize: uint32): void {.stdcall.} vkGetImageViewHandleNVX*: proc(device: VkDevice, pInfo: ptr VkImageViewHandleInfoNVX ): uint32 {.stdcall.} vkGetImageViewAddressNVX*: proc(device: VkDevice, imageView: VkImageView, pProperties: ptr VkImageViewAddressPropertiesNVX ): VkResult {.stdcall.} vkGetPhysicalDeviceSurfacePresentModes2EXT*: proc(physicalDevice: VkPhysicalDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR , pPresentModeCount: ptr uint32 , pPresentModes: ptr VkPresentModeKHR ): VkResult {.stdcall.} @@ -10179,38 +18551,215 @@ var vkGetPipelineExecutablePropertiesKHR*: proc(device: VkDevice, pPipelineInfo: ptr VkPipelineInfoKHR , pExecutableCount: ptr uint32 , pProperties: ptr VkPipelineExecutablePropertiesKHR ): VkResult {.stdcall.} vkGetPipelineExecutableStatisticsKHR*: proc(device: VkDevice, pExecutableInfo: ptr VkPipelineExecutableInfoKHR , pStatisticCount: ptr uint32 , pStatistics: ptr VkPipelineExecutableStatisticKHR ): VkResult {.stdcall.} vkGetPipelineExecutableInternalRepresentationsKHR*: proc(device: VkDevice, pExecutableInfo: ptr VkPipelineExecutableInfoKHR , pInternalRepresentationCount: ptr uint32 , pInternalRepresentations: ptr VkPipelineExecutableInternalRepresentationKHR ): VkResult {.stdcall.} - vkCmdSetLineStippleEXT*: proc(commandBuffer: VkCommandBuffer, lineStippleFactor: uint32, lineStipplePattern: uint16): void {.stdcall.} - vkGetPhysicalDeviceToolPropertiesEXT*: proc(physicalDevice: VkPhysicalDevice, pToolCount: ptr uint32 , pToolProperties: ptr VkPhysicalDeviceToolPropertiesEXT ): VkResult {.stdcall.} + vkCmdSetLineStippleKHR*: proc(commandBuffer: VkCommandBuffer, lineStippleFactor: uint32, lineStipplePattern: uint16): void {.stdcall.} + vkGetFaultData*: proc(device: VkDevice, faultQueryBehavior: VkFaultQueryBehavior, pUnrecordedFaults: ptr VkBool32 , pFaultCount: ptr uint32 , pFaults: ptr VkFaultData ): VkResult {.stdcall.} + vkGetPhysicalDeviceToolProperties*: proc(physicalDevice: VkPhysicalDevice, pToolCount: ptr uint32 , pToolProperties: ptr VkPhysicalDeviceToolProperties ): VkResult {.stdcall.} vkCreateAccelerationStructureKHR*: proc(device: VkDevice, pCreateInfo: ptr VkAccelerationStructureCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pAccelerationStructure: ptr VkAccelerationStructureKHR ): VkResult {.stdcall.} - vkCmdBuildAccelerationStructureKHR*: proc(commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR , ppOffsetInfos: ptr ptr VkAccelerationStructureBuildOffsetInfoKHR ): void {.stdcall.} - vkCmdBuildAccelerationStructureIndirectKHR*: proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkAccelerationStructureBuildGeometryInfoKHR , indirectBuffer: VkBuffer, indirectOffset: VkDeviceSize, indirectStride: uint32): void {.stdcall.} - vkBuildAccelerationStructureKHR*: proc(device: VkDevice, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR , ppOffsetInfos: ptr ptr VkAccelerationStructureBuildOffsetInfoKHR ): VkResult {.stdcall.} + vkCmdBuildAccelerationStructuresKHR*: proc(commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR , ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR ): void {.stdcall.} + vkCmdBuildAccelerationStructuresIndirectKHR*: proc(commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR , pIndirectDeviceAddresses: ptr VkDeviceAddress , pIndirectStrides: ptr uint32 , ppMaxPrimitiveCounts: ptr ptr uint32 ): void {.stdcall.} + vkBuildAccelerationStructuresKHR*: proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR , ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR ): VkResult {.stdcall.} vkGetAccelerationStructureDeviceAddressKHR*: proc(device: VkDevice, pInfo: ptr VkAccelerationStructureDeviceAddressInfoKHR ): VkDeviceAddress {.stdcall.} vkCreateDeferredOperationKHR*: proc(device: VkDevice, pAllocator: ptr VkAllocationCallbacks , pDeferredOperation: ptr VkDeferredOperationKHR ): VkResult {.stdcall.} vkDestroyDeferredOperationKHR*: proc(device: VkDevice, operation: VkDeferredOperationKHR, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} vkGetDeferredOperationMaxConcurrencyKHR*: proc(device: VkDevice, operation: VkDeferredOperationKHR): uint32 {.stdcall.} vkGetDeferredOperationResultKHR*: proc(device: VkDevice, operation: VkDeferredOperationKHR): VkResult {.stdcall.} vkDeferredOperationJoinKHR*: proc(device: VkDevice, operation: VkDeferredOperationKHR): VkResult {.stdcall.} - vkCmdSetCullModeEXT*: proc(commandBuffer: VkCommandBuffer, cullMode: VkCullModeFlags): void {.stdcall.} - vkCmdSetFrontFaceEXT*: proc(commandBuffer: VkCommandBuffer, frontFace: VkFrontFace): void {.stdcall.} - vkCmdSetPrimitiveTopologyEXT*: proc(commandBuffer: VkCommandBuffer, primitiveTopology: VkPrimitiveTopology): void {.stdcall.} - vkCmdSetViewportWithCountEXT*: proc(commandBuffer: VkCommandBuffer, viewportCount: uint32, pViewports: ptr VkViewport ): void {.stdcall.} - vkCmdSetScissorWithCountEXT*: proc(commandBuffer: VkCommandBuffer, scissorCount: uint32, pScissors: ptr VkRect2D ): void {.stdcall.} - vkCmdBindVertexBuffers2EXT*: proc(commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer , pOffsets: ptr VkDeviceSize , pSizes: ptr VkDeviceSize , pStrides: ptr VkDeviceSize ): void {.stdcall.} - vkCmdSetDepthTestEnableEXT*: proc(commandBuffer: VkCommandBuffer, depthTestEnable: VkBool32): void {.stdcall.} - vkCmdSetDepthWriteEnableEXT*: proc(commandBuffer: VkCommandBuffer, depthWriteEnable: VkBool32): void {.stdcall.} - vkCmdSetDepthCompareOpEXT*: proc(commandBuffer: VkCommandBuffer, depthCompareOp: VkCompareOp): void {.stdcall.} - vkCmdSetDepthBoundsTestEnableEXT*: proc(commandBuffer: VkCommandBuffer, depthBoundsTestEnable: VkBool32): void {.stdcall.} - vkCmdSetStencilTestEnableEXT*: proc(commandBuffer: VkCommandBuffer, stencilTestEnable: VkBool32): void {.stdcall.} - vkCmdSetStencilOpEXT*: proc(commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, failOp: VkStencilOp, passOp: VkStencilOp, depthFailOp: VkStencilOp, compareOp: VkCompareOp): void {.stdcall.} - vkCreatePrivateDataSlotEXT*: proc(device: VkDevice, pCreateInfo: ptr VkPrivateDataSlotCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pPrivateDataSlot: ptr VkPrivateDataSlotEXT ): VkResult {.stdcall.} - vkDestroyPrivateDataSlotEXT*: proc(device: VkDevice, privateDataSlot: VkPrivateDataSlotEXT, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkSetPrivateDataEXT*: proc(device: VkDevice, objectType: VkObjectType, objectHandle: uint64, privateDataSlot: VkPrivateDataSlotEXT, data: uint64): VkResult {.stdcall.} - vkGetPrivateDataEXT*: proc(device: VkDevice, objectType: VkObjectType, objectHandle: uint64, privateDataSlot: VkPrivateDataSlotEXT, pData: ptr uint64 ): void {.stdcall.} + vkGetPipelineIndirectMemoryRequirementsNV*: proc(device: VkDevice, pCreateInfo: ptr VkComputePipelineCreateInfo , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.stdcall.} + vkGetPipelineIndirectDeviceAddressNV*: proc(device: VkDevice, pInfo: ptr VkPipelineIndirectDeviceAddressInfoNV ): VkDeviceAddress {.stdcall.} + vkCmdSetCullMode*: proc(commandBuffer: VkCommandBuffer, cullMode: VkCullModeFlags): void {.stdcall.} + vkCmdSetFrontFace*: proc(commandBuffer: VkCommandBuffer, frontFace: VkFrontFace): void {.stdcall.} + vkCmdSetPrimitiveTopology*: proc(commandBuffer: VkCommandBuffer, primitiveTopology: VkPrimitiveTopology): void {.stdcall.} + vkCmdSetViewportWithCount*: proc(commandBuffer: VkCommandBuffer, viewportCount: uint32, pViewports: ptr VkViewport ): void {.stdcall.} + vkCmdSetScissorWithCount*: proc(commandBuffer: VkCommandBuffer, scissorCount: uint32, pScissors: ptr VkRect2D ): void {.stdcall.} + vkCmdBindIndexBuffer2KHR*: proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize, indexType: VkIndexType): void {.stdcall.} + vkCmdBindVertexBuffers2*: proc(commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer , pOffsets: ptr VkDeviceSize , pSizes: ptr VkDeviceSize , pStrides: ptr VkDeviceSize ): void {.stdcall.} + vkCmdSetDepthTestEnable*: proc(commandBuffer: VkCommandBuffer, depthTestEnable: VkBool32): void {.stdcall.} + vkCmdSetDepthWriteEnable*: proc(commandBuffer: VkCommandBuffer, depthWriteEnable: VkBool32): void {.stdcall.} + vkCmdSetDepthCompareOp*: proc(commandBuffer: VkCommandBuffer, depthCompareOp: VkCompareOp): void {.stdcall.} + vkCmdSetDepthBoundsTestEnable*: proc(commandBuffer: VkCommandBuffer, depthBoundsTestEnable: VkBool32): void {.stdcall.} + vkCmdSetStencilTestEnable*: proc(commandBuffer: VkCommandBuffer, stencilTestEnable: VkBool32): void {.stdcall.} + vkCmdSetStencilOp*: proc(commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, failOp: VkStencilOp, passOp: VkStencilOp, depthFailOp: VkStencilOp, compareOp: VkCompareOp): void {.stdcall.} + vkCmdSetPatchControlPointsEXT*: proc(commandBuffer: VkCommandBuffer, patchControlPoints: uint32): void {.stdcall.} + vkCmdSetRasterizerDiscardEnable*: proc(commandBuffer: VkCommandBuffer, rasterizerDiscardEnable: VkBool32): void {.stdcall.} + vkCmdSetDepthBiasEnable*: proc(commandBuffer: VkCommandBuffer, depthBiasEnable: VkBool32): void {.stdcall.} + vkCmdSetLogicOpEXT*: proc(commandBuffer: VkCommandBuffer, logicOp: VkLogicOp): void {.stdcall.} + vkCmdSetPrimitiveRestartEnable*: proc(commandBuffer: VkCommandBuffer, primitiveRestartEnable: VkBool32): void {.stdcall.} + vkCmdSetTessellationDomainOriginEXT*: proc(commandBuffer: VkCommandBuffer, domainOrigin: VkTessellationDomainOrigin): void {.stdcall.} + vkCmdSetDepthClampEnableEXT*: proc(commandBuffer: VkCommandBuffer, depthClampEnable: VkBool32): void {.stdcall.} + vkCmdSetPolygonModeEXT*: proc(commandBuffer: VkCommandBuffer, polygonMode: VkPolygonMode): void {.stdcall.} + vkCmdSetRasterizationSamplesEXT*: proc(commandBuffer: VkCommandBuffer, rasterizationSamples: VkSampleCountFlagBits): void {.stdcall.} + vkCmdSetSampleMaskEXT*: proc(commandBuffer: VkCommandBuffer, samples: VkSampleCountFlagBits, pSampleMask: ptr VkSampleMask ): void {.stdcall.} + vkCmdSetAlphaToCoverageEnableEXT*: proc(commandBuffer: VkCommandBuffer, alphaToCoverageEnable: VkBool32): void {.stdcall.} + vkCmdSetAlphaToOneEnableEXT*: proc(commandBuffer: VkCommandBuffer, alphaToOneEnable: VkBool32): void {.stdcall.} + vkCmdSetLogicOpEnableEXT*: proc(commandBuffer: VkCommandBuffer, logicOpEnable: VkBool32): void {.stdcall.} + vkCmdSetColorBlendEnableEXT*: proc(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEnables: ptr VkBool32 ): void {.stdcall.} + vkCmdSetColorBlendEquationEXT*: proc(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEquations: ptr VkColorBlendEquationEXT ): void {.stdcall.} + vkCmdSetColorWriteMaskEXT*: proc(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorWriteMasks: ptr VkColorComponentFlags ): void {.stdcall.} + vkCmdSetRasterizationStreamEXT*: proc(commandBuffer: VkCommandBuffer, rasterizationStream: uint32): void {.stdcall.} + vkCmdSetConservativeRasterizationModeEXT*: proc(commandBuffer: VkCommandBuffer, conservativeRasterizationMode: VkConservativeRasterizationModeEXT): void {.stdcall.} + vkCmdSetExtraPrimitiveOverestimationSizeEXT*: proc(commandBuffer: VkCommandBuffer, extraPrimitiveOverestimationSize: float32): void {.stdcall.} + vkCmdSetDepthClipEnableEXT*: proc(commandBuffer: VkCommandBuffer, depthClipEnable: VkBool32): void {.stdcall.} + vkCmdSetSampleLocationsEnableEXT*: proc(commandBuffer: VkCommandBuffer, sampleLocationsEnable: VkBool32): void {.stdcall.} + vkCmdSetColorBlendAdvancedEXT*: proc(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendAdvanced: ptr VkColorBlendAdvancedEXT ): void {.stdcall.} + vkCmdSetProvokingVertexModeEXT*: proc(commandBuffer: VkCommandBuffer, provokingVertexMode: VkProvokingVertexModeEXT): void {.stdcall.} + vkCmdSetLineRasterizationModeEXT*: proc(commandBuffer: VkCommandBuffer, lineRasterizationMode: VkLineRasterizationModeEXT): void {.stdcall.} + vkCmdSetLineStippleEnableEXT*: proc(commandBuffer: VkCommandBuffer, stippledLineEnable: VkBool32): void {.stdcall.} + vkCmdSetDepthClipNegativeOneToOneEXT*: proc(commandBuffer: VkCommandBuffer, negativeOneToOne: VkBool32): void {.stdcall.} + vkCmdSetViewportWScalingEnableNV*: proc(commandBuffer: VkCommandBuffer, viewportWScalingEnable: VkBool32): void {.stdcall.} + vkCmdSetViewportSwizzleNV*: proc(commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportSwizzles: ptr VkViewportSwizzleNV ): void {.stdcall.} + vkCmdSetCoverageToColorEnableNV*: proc(commandBuffer: VkCommandBuffer, coverageToColorEnable: VkBool32): void {.stdcall.} + vkCmdSetCoverageToColorLocationNV*: proc(commandBuffer: VkCommandBuffer, coverageToColorLocation: uint32): void {.stdcall.} + vkCmdSetCoverageModulationModeNV*: proc(commandBuffer: VkCommandBuffer, coverageModulationMode: VkCoverageModulationModeNV): void {.stdcall.} + vkCmdSetCoverageModulationTableEnableNV*: proc(commandBuffer: VkCommandBuffer, coverageModulationTableEnable: VkBool32): void {.stdcall.} + vkCmdSetCoverageModulationTableNV*: proc(commandBuffer: VkCommandBuffer, coverageModulationTableCount: uint32, pCoverageModulationTable: ptr float32 ): void {.stdcall.} + vkCmdSetShadingRateImageEnableNV*: proc(commandBuffer: VkCommandBuffer, shadingRateImageEnable: VkBool32): void {.stdcall.} + vkCmdSetCoverageReductionModeNV*: proc(commandBuffer: VkCommandBuffer, coverageReductionMode: VkCoverageReductionModeNV): void {.stdcall.} + vkCmdSetRepresentativeFragmentTestEnableNV*: proc(commandBuffer: VkCommandBuffer, representativeFragmentTestEnable: VkBool32): void {.stdcall.} + vkCreatePrivateDataSlot*: proc(device: VkDevice, pCreateInfo: ptr VkPrivateDataSlotCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPrivateDataSlot: ptr VkPrivateDataSlot ): VkResult {.stdcall.} + vkDestroyPrivateDataSlot*: proc(device: VkDevice, privateDataSlot: VkPrivateDataSlot, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} + vkSetPrivateData*: proc(device: VkDevice, objectType: VkObjectType, objectHandle: uint64, privateDataSlot: VkPrivateDataSlot, data: uint64): VkResult {.stdcall.} + vkGetPrivateData*: proc(device: VkDevice, objectType: VkObjectType, objectHandle: uint64, privateDataSlot: VkPrivateDataSlot, pData: ptr uint64 ): void {.stdcall.} + vkCmdCopyBuffer2*: proc(commandBuffer: VkCommandBuffer, pCopyBufferInfo: ptr VkCopyBufferInfo2 ): void {.stdcall.} + vkCmdCopyImage2*: proc(commandBuffer: VkCommandBuffer, pCopyImageInfo: ptr VkCopyImageInfo2 ): void {.stdcall.} + vkCmdBlitImage2*: proc(commandBuffer: VkCommandBuffer, pBlitImageInfo: ptr VkBlitImageInfo2 ): void {.stdcall.} + vkCmdCopyBufferToImage2*: proc(commandBuffer: VkCommandBuffer, pCopyBufferToImageInfo: ptr VkCopyBufferToImageInfo2 ): void {.stdcall.} + vkCmdCopyImageToBuffer2*: proc(commandBuffer: VkCommandBuffer, pCopyImageToBufferInfo: ptr VkCopyImageToBufferInfo2 ): void {.stdcall.} + vkCmdResolveImage2*: proc(commandBuffer: VkCommandBuffer, pResolveImageInfo: ptr VkResolveImageInfo2 ): void {.stdcall.} + vkCmdRefreshObjectsKHR*: proc(commandBuffer: VkCommandBuffer, pRefreshObjects: ptr VkRefreshObjectListKHR ): void {.stdcall.} + vkGetPhysicalDeviceRefreshableObjectTypesKHR*: proc(physicalDevice: VkPhysicalDevice, pRefreshableObjectTypeCount: ptr uint32 , pRefreshableObjectTypes: ptr VkObjectType ): VkResult {.stdcall.} + vkCmdSetFragmentShadingRateKHR*: proc(commandBuffer: VkCommandBuffer, pFragmentSize: ptr VkExtent2D , combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): void {.stdcall.} + vkGetPhysicalDeviceFragmentShadingRatesKHR*: proc(physicalDevice: VkPhysicalDevice, pFragmentShadingRateCount: ptr uint32 , pFragmentShadingRates: ptr VkPhysicalDeviceFragmentShadingRateKHR ): VkResult {.stdcall.} + vkCmdSetFragmentShadingRateEnumNV*: proc(commandBuffer: VkCommandBuffer, shadingRate: VkFragmentShadingRateNV, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): void {.stdcall.} + vkGetAccelerationStructureBuildSizesKHR*: proc(device: VkDevice, buildType: VkAccelerationStructureBuildTypeKHR, pBuildInfo: ptr VkAccelerationStructureBuildGeometryInfoKHR , pMaxPrimitiveCounts: ptr uint32 , pSizeInfo: ptr VkAccelerationStructureBuildSizesInfoKHR ): void {.stdcall.} + vkCmdSetVertexInputEXT*: proc(commandBuffer: VkCommandBuffer, vertexBindingDescriptionCount: uint32, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription2EXT , vertexAttributeDescriptionCount: uint32, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription2EXT ): void {.stdcall.} + vkCmdSetColorWriteEnableEXT*: proc(commandBuffer: VkCommandBuffer, attachmentCount: uint32, pColorWriteEnables: ptr VkBool32 ): void {.stdcall.} + vkCmdSetEvent2*: proc(commandBuffer: VkCommandBuffer, event: VkEvent, pDependencyInfo: ptr VkDependencyInfo ): void {.stdcall.} + vkCmdResetEvent2*: proc(commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags2): void {.stdcall.} + vkCmdWaitEvents2*: proc(commandBuffer: VkCommandBuffer, eventCount: uint32, pEvents: ptr VkEvent , pDependencyInfos: ptr VkDependencyInfo ): void {.stdcall.} + vkCmdPipelineBarrier2*: proc(commandBuffer: VkCommandBuffer, pDependencyInfo: ptr VkDependencyInfo ): void {.stdcall.} + vkQueueSubmit2*: proc(queue: VkQueue, submitCount: uint32, pSubmits: ptr VkSubmitInfo2 , fence: VkFence): VkResult {.stdcall.} + vkCmdWriteTimestamp2*: proc(commandBuffer: VkCommandBuffer, stage: VkPipelineStageFlags2, queryPool: VkQueryPool, query: uint32): void {.stdcall.} + vkCmdWriteBufferMarker2AMD*: proc(commandBuffer: VkCommandBuffer, stage: VkPipelineStageFlags2, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, marker: uint32): void {.stdcall.} + vkGetQueueCheckpointData2NV*: proc(queue: VkQueue, pCheckpointDataCount: ptr uint32 , pCheckpointData: ptr VkCheckpointData2NV ): void {.stdcall.} + vkCopyMemoryToImageEXT*: proc(device: VkDevice, pCopyMemoryToImageInfo: ptr VkCopyMemoryToImageInfoEXT ): VkResult {.stdcall.} + vkCopyImageToMemoryEXT*: proc(device: VkDevice, pCopyImageToMemoryInfo: ptr VkCopyImageToMemoryInfoEXT ): VkResult {.stdcall.} + vkCopyImageToImageEXT*: proc(device: VkDevice, pCopyImageToImageInfo: ptr VkCopyImageToImageInfoEXT ): VkResult {.stdcall.} + vkTransitionImageLayoutEXT*: proc(device: VkDevice, transitionCount: uint32, pTransitions: ptr VkHostImageLayoutTransitionInfoEXT ): VkResult {.stdcall.} + vkGetCommandPoolMemoryConsumption*: proc(device: VkDevice, commandPool: VkCommandPool, commandBuffer: VkCommandBuffer, pConsumption: ptr VkCommandPoolMemoryConsumption ): void {.stdcall.} + vkGetPhysicalDeviceVideoCapabilitiesKHR*: proc(physicalDevice: VkPhysicalDevice, pVideoProfile: ptr VkVideoProfileInfoKHR , pCapabilities: ptr VkVideoCapabilitiesKHR ): VkResult {.stdcall.} + vkGetPhysicalDeviceVideoFormatPropertiesKHR*: proc(physicalDevice: VkPhysicalDevice, pVideoFormatInfo: ptr VkPhysicalDeviceVideoFormatInfoKHR , pVideoFormatPropertyCount: ptr uint32 , pVideoFormatProperties: ptr VkVideoFormatPropertiesKHR ): VkResult {.stdcall.} + vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR*: proc(physicalDevice: VkPhysicalDevice, pQualityLevelInfo: ptr VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR , pQualityLevelProperties: ptr VkVideoEncodeQualityLevelPropertiesKHR ): VkResult {.stdcall.} + vkCreateVideoSessionKHR*: proc(device: VkDevice, pCreateInfo: ptr VkVideoSessionCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pVideoSession: ptr VkVideoSessionKHR ): VkResult {.stdcall.} + vkDestroyVideoSessionKHR*: proc(device: VkDevice, videoSession: VkVideoSessionKHR, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} + vkCreateVideoSessionParametersKHR*: proc(device: VkDevice, pCreateInfo: ptr VkVideoSessionParametersCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pVideoSessionParameters: ptr VkVideoSessionParametersKHR ): VkResult {.stdcall.} + vkUpdateVideoSessionParametersKHR*: proc(device: VkDevice, videoSessionParameters: VkVideoSessionParametersKHR, pUpdateInfo: ptr VkVideoSessionParametersUpdateInfoKHR ): VkResult {.stdcall.} + vkGetEncodedVideoSessionParametersKHR*: proc(device: VkDevice, pVideoSessionParametersInfo: ptr VkVideoEncodeSessionParametersGetInfoKHR , pFeedbackInfo: ptr VkVideoEncodeSessionParametersFeedbackInfoKHR , pDataSize: ptr uint , pData: pointer ): VkResult {.stdcall.} + vkDestroyVideoSessionParametersKHR*: proc(device: VkDevice, videoSessionParameters: VkVideoSessionParametersKHR, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} + vkGetVideoSessionMemoryRequirementsKHR*: proc(device: VkDevice, videoSession: VkVideoSessionKHR, pMemoryRequirementsCount: ptr uint32 , pMemoryRequirements: ptr VkVideoSessionMemoryRequirementsKHR ): VkResult {.stdcall.} + vkBindVideoSessionMemoryKHR*: proc(device: VkDevice, videoSession: VkVideoSessionKHR, bindSessionMemoryInfoCount: uint32, pBindSessionMemoryInfos: ptr VkBindVideoSessionMemoryInfoKHR ): VkResult {.stdcall.} + vkCmdDecodeVideoKHR*: proc(commandBuffer: VkCommandBuffer, pDecodeInfo: ptr VkVideoDecodeInfoKHR ): void {.stdcall.} + vkCmdBeginVideoCodingKHR*: proc(commandBuffer: VkCommandBuffer, pBeginInfo: ptr VkVideoBeginCodingInfoKHR ): void {.stdcall.} + vkCmdControlVideoCodingKHR*: proc(commandBuffer: VkCommandBuffer, pCodingControlInfo: ptr VkVideoCodingControlInfoKHR ): void {.stdcall.} + vkCmdEndVideoCodingKHR*: proc(commandBuffer: VkCommandBuffer, pEndCodingInfo: ptr VkVideoEndCodingInfoKHR ): void {.stdcall.} + vkCmdEncodeVideoKHR*: proc(commandBuffer: VkCommandBuffer, pEncodeInfo: ptr VkVideoEncodeInfoKHR ): void {.stdcall.} + vkCmdDecompressMemoryNV*: proc(commandBuffer: VkCommandBuffer, decompressRegionCount: uint32, pDecompressMemoryRegions: ptr VkDecompressMemoryRegionNV ): void {.stdcall.} + vkCmdDecompressMemoryIndirectCountNV*: proc(commandBuffer: VkCommandBuffer, indirectCommandsAddress: VkDeviceAddress, indirectCommandsCountAddress: VkDeviceAddress, stride: uint32): void {.stdcall.} + vkCreateCuModuleNVX*: proc(device: VkDevice, pCreateInfo: ptr VkCuModuleCreateInfoNVX , pAllocator: ptr VkAllocationCallbacks , pModule: ptr VkCuModuleNVX ): VkResult {.stdcall.} + vkCreateCuFunctionNVX*: proc(device: VkDevice, pCreateInfo: ptr VkCuFunctionCreateInfoNVX , pAllocator: ptr VkAllocationCallbacks , pFunction: ptr VkCuFunctionNVX ): VkResult {.stdcall.} + vkDestroyCuModuleNVX*: proc(device: VkDevice, module: VkCuModuleNVX, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} + vkDestroyCuFunctionNVX*: proc(device: VkDevice, function: VkCuFunctionNVX, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} + vkCmdCuLaunchKernelNVX*: proc(commandBuffer: VkCommandBuffer, pLaunchInfo: ptr VkCuLaunchInfoNVX ): void {.stdcall.} + vkGetDescriptorSetLayoutSizeEXT*: proc(device: VkDevice, layout: VkDescriptorSetLayout, pLayoutSizeInBytes: ptr VkDeviceSize ): void {.stdcall.} + vkGetDescriptorSetLayoutBindingOffsetEXT*: proc(device: VkDevice, layout: VkDescriptorSetLayout, binding: uint32, pOffset: ptr VkDeviceSize ): void {.stdcall.} + vkGetDescriptorEXT*: proc(device: VkDevice, pDescriptorInfo: ptr VkDescriptorGetInfoEXT , dataSize: uint, pDescriptor: pointer ): void {.stdcall.} + vkCmdBindDescriptorBuffersEXT*: proc(commandBuffer: VkCommandBuffer, bufferCount: uint32, pBindingInfos: ptr VkDescriptorBufferBindingInfoEXT ): void {.stdcall.} + vkCmdSetDescriptorBufferOffsetsEXT*: proc(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, firstSet: uint32, setCount: uint32, pBufferIndices: ptr uint32 , pOffsets: ptr VkDeviceSize ): void {.stdcall.} + vkCmdBindDescriptorBufferEmbeddedSamplersEXT*: proc(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, set: uint32): void {.stdcall.} + vkGetBufferOpaqueCaptureDescriptorDataEXT*: proc(device: VkDevice, pInfo: ptr VkBufferCaptureDescriptorDataInfoEXT , pData: pointer ): VkResult {.stdcall.} + vkGetImageOpaqueCaptureDescriptorDataEXT*: proc(device: VkDevice, pInfo: ptr VkImageCaptureDescriptorDataInfoEXT , pData: pointer ): VkResult {.stdcall.} + vkGetImageViewOpaqueCaptureDescriptorDataEXT*: proc(device: VkDevice, pInfo: ptr VkImageViewCaptureDescriptorDataInfoEXT , pData: pointer ): VkResult {.stdcall.} + vkGetSamplerOpaqueCaptureDescriptorDataEXT*: proc(device: VkDevice, pInfo: ptr VkSamplerCaptureDescriptorDataInfoEXT , pData: pointer ): VkResult {.stdcall.} + vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT*: proc(device: VkDevice, pInfo: ptr VkAccelerationStructureCaptureDescriptorDataInfoEXT , pData: pointer ): VkResult {.stdcall.} + vkSetDeviceMemoryPriorityEXT*: proc(device: VkDevice, memory: VkDeviceMemory, priority: float32): void {.stdcall.} + vkAcquireDrmDisplayEXT*: proc(physicalDevice: VkPhysicalDevice, drmFd: int32, display: VkDisplayKHR): VkResult {.stdcall.} + vkGetDrmDisplayEXT*: proc(physicalDevice: VkPhysicalDevice, drmFd: int32, connectorId: uint32, display: ptr VkDisplayKHR ): VkResult {.stdcall.} + vkWaitForPresentKHR*: proc(device: VkDevice, swapchain: VkSwapchainKHR, presentId: uint64, timeout: uint64): VkResult {.stdcall.} + vkCreateBufferCollectionFUCHSIA*: proc(device: VkDevice, pCreateInfo: ptr VkBufferCollectionCreateInfoFUCHSIA , pAllocator: ptr VkAllocationCallbacks , pCollection: ptr VkBufferCollectionFUCHSIA ): VkResult {.stdcall.} + vkSetBufferCollectionBufferConstraintsFUCHSIA*: proc(device: VkDevice, collection: VkBufferCollectionFUCHSIA, pBufferConstraintsInfo: ptr VkBufferConstraintsInfoFUCHSIA ): VkResult {.stdcall.} + vkSetBufferCollectionImageConstraintsFUCHSIA*: proc(device: VkDevice, collection: VkBufferCollectionFUCHSIA, pImageConstraintsInfo: ptr VkImageConstraintsInfoFUCHSIA ): VkResult {.stdcall.} + vkDestroyBufferCollectionFUCHSIA*: proc(device: VkDevice, collection: VkBufferCollectionFUCHSIA, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} + vkGetBufferCollectionPropertiesFUCHSIA*: proc(device: VkDevice, collection: VkBufferCollectionFUCHSIA, pProperties: ptr VkBufferCollectionPropertiesFUCHSIA ): VkResult {.stdcall.} + vkCreateCudaModuleNV*: proc(device: VkDevice, pCreateInfo: ptr VkCudaModuleCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pModule: ptr VkCudaModuleNV ): VkResult {.stdcall.} + vkGetCudaModuleCacheNV*: proc(device: VkDevice, module: VkCudaModuleNV, pCacheSize: ptr uint , pCacheData: pointer ): VkResult {.stdcall.} + vkCreateCudaFunctionNV*: proc(device: VkDevice, pCreateInfo: ptr VkCudaFunctionCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pFunction: ptr VkCudaFunctionNV ): VkResult {.stdcall.} + vkDestroyCudaModuleNV*: proc(device: VkDevice, module: VkCudaModuleNV, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} + vkDestroyCudaFunctionNV*: proc(device: VkDevice, function: VkCudaFunctionNV, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} + vkCmdCudaLaunchKernelNV*: proc(commandBuffer: VkCommandBuffer, pLaunchInfo: ptr VkCudaLaunchInfoNV ): void {.stdcall.} + vkCmdBeginRendering*: proc(commandBuffer: VkCommandBuffer, pRenderingInfo: ptr VkRenderingInfo ): void {.stdcall.} + vkCmdEndRendering*: proc(commandBuffer: VkCommandBuffer): void {.stdcall.} + vkGetDescriptorSetLayoutHostMappingInfoVALVE*: proc(device: VkDevice, pBindingReference: ptr VkDescriptorSetBindingReferenceVALVE , pHostMapping: ptr VkDescriptorSetLayoutHostMappingInfoVALVE ): void {.stdcall.} + vkGetDescriptorSetHostMappingVALVE*: proc(device: VkDevice, descriptorSet: VkDescriptorSet, ppData: ptr pointer ): void {.stdcall.} + vkCreateMicromapEXT*: proc(device: VkDevice, pCreateInfo: ptr VkMicromapCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pMicromap: ptr VkMicromapEXT ): VkResult {.stdcall.} + vkCmdBuildMicromapsEXT*: proc(commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkMicromapBuildInfoEXT ): void {.stdcall.} + vkBuildMicromapsEXT*: proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, infoCount: uint32, pInfos: ptr VkMicromapBuildInfoEXT ): VkResult {.stdcall.} + vkDestroyMicromapEXT*: proc(device: VkDevice, micromap: VkMicromapEXT, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} + vkCmdCopyMicromapEXT*: proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMicromapInfoEXT ): void {.stdcall.} + vkCopyMicromapEXT*: proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMicromapInfoEXT ): VkResult {.stdcall.} + vkCmdCopyMicromapToMemoryEXT*: proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMicromapToMemoryInfoEXT ): void {.stdcall.} + vkCopyMicromapToMemoryEXT*: proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMicromapToMemoryInfoEXT ): VkResult {.stdcall.} + vkCmdCopyMemoryToMicromapEXT*: proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMemoryToMicromapInfoEXT ): void {.stdcall.} + vkCopyMemoryToMicromapEXT*: proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMemoryToMicromapInfoEXT ): VkResult {.stdcall.} + vkCmdWriteMicromapsPropertiesEXT*: proc(commandBuffer: VkCommandBuffer, micromapCount: uint32, pMicromaps: ptr VkMicromapEXT , queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.stdcall.} + vkWriteMicromapsPropertiesEXT*: proc(device: VkDevice, micromapCount: uint32, pMicromaps: ptr VkMicromapEXT , queryType: VkQueryType, dataSize: uint, pData: pointer , stride: uint): VkResult {.stdcall.} + vkGetDeviceMicromapCompatibilityEXT*: proc(device: VkDevice, pVersionInfo: ptr VkMicromapVersionInfoEXT , pCompatibility: ptr VkAccelerationStructureCompatibilityKHR ): void {.stdcall.} + vkGetMicromapBuildSizesEXT*: proc(device: VkDevice, buildType: VkAccelerationStructureBuildTypeKHR, pBuildInfo: ptr VkMicromapBuildInfoEXT , pSizeInfo: ptr VkMicromapBuildSizesInfoEXT ): void {.stdcall.} + vkGetShaderModuleIdentifierEXT*: proc(device: VkDevice, shaderModule: VkShaderModule, pIdentifier: ptr VkShaderModuleIdentifierEXT ): void {.stdcall.} + vkGetShaderModuleCreateInfoIdentifierEXT*: proc(device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo , pIdentifier: ptr VkShaderModuleIdentifierEXT ): void {.stdcall.} + vkGetImageSubresourceLayout2KHR*: proc(device: VkDevice, image: VkImage, pSubresource: ptr VkImageSubresource2KHR , pLayout: ptr VkSubresourceLayout2KHR ): void {.stdcall.} + vkGetPipelinePropertiesEXT*: proc(device: VkDevice, pPipelineInfo: ptr VkPipelineInfoEXT , pPipelineProperties: ptr VkBaseOutStructure ): VkResult {.stdcall.} + vkExportMetalObjectsEXT*: proc(device: VkDevice, pMetalObjectsInfo: ptr VkExportMetalObjectsInfoEXT ): void {.stdcall.} + vkGetFramebufferTilePropertiesQCOM*: proc(device: VkDevice, framebuffer: VkFramebuffer, pPropertiesCount: ptr uint32 , pProperties: ptr VkTilePropertiesQCOM ): VkResult {.stdcall.} + vkGetDynamicRenderingTilePropertiesQCOM*: proc(device: VkDevice, pRenderingInfo: ptr VkRenderingInfo , pProperties: ptr VkTilePropertiesQCOM ): VkResult {.stdcall.} + vkGetPhysicalDeviceOpticalFlowImageFormatsNV*: proc(physicalDevice: VkPhysicalDevice, pOpticalFlowImageFormatInfo: ptr VkOpticalFlowImageFormatInfoNV , pFormatCount: ptr uint32 , pImageFormatProperties: ptr VkOpticalFlowImageFormatPropertiesNV ): VkResult {.stdcall.} + vkCreateOpticalFlowSessionNV*: proc(device: VkDevice, pCreateInfo: ptr VkOpticalFlowSessionCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pSession: ptr VkOpticalFlowSessionNV ): VkResult {.stdcall.} + vkDestroyOpticalFlowSessionNV*: proc(device: VkDevice, session: VkOpticalFlowSessionNV, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} + vkBindOpticalFlowSessionImageNV*: proc(device: VkDevice, session: VkOpticalFlowSessionNV, bindingPoint: VkOpticalFlowSessionBindingPointNV, view: VkImageView, layout: VkImageLayout): VkResult {.stdcall.} + vkCmdOpticalFlowExecuteNV*: proc(commandBuffer: VkCommandBuffer, session: VkOpticalFlowSessionNV, pExecuteInfo: ptr VkOpticalFlowExecuteInfoNV ): void {.stdcall.} + vkGetDeviceFaultInfoEXT*: proc(device: VkDevice, pFaultCounts: ptr VkDeviceFaultCountsEXT , pFaultInfo: ptr VkDeviceFaultInfoEXT ): VkResult {.stdcall.} + vkCmdSetDepthBias2EXT*: proc(commandBuffer: VkCommandBuffer, pDepthBiasInfo: ptr VkDepthBiasInfoEXT ): void {.stdcall.} + vkReleaseSwapchainImagesEXT*: proc(device: VkDevice, pReleaseInfo: ptr VkReleaseSwapchainImagesInfoEXT ): VkResult {.stdcall.} + vkGetDeviceImageSubresourceLayoutKHR*: proc(device: VkDevice, pInfo: ptr VkDeviceImageSubresourceInfoKHR , pLayout: ptr VkSubresourceLayout2KHR ): void {.stdcall.} + vkMapMemory2KHR*: proc(device: VkDevice, pMemoryMapInfo: ptr VkMemoryMapInfoKHR , ppData: ptr pointer ): VkResult {.stdcall.} + vkUnmapMemory2KHR*: proc(device: VkDevice, pMemoryUnmapInfo: ptr VkMemoryUnmapInfoKHR ): VkResult {.stdcall.} + vkCreateShadersEXT*: proc(device: VkDevice, createInfoCount: uint32, pCreateInfos: ptr VkShaderCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pShaders: ptr VkShaderEXT ): VkResult {.stdcall.} + vkDestroyShaderEXT*: proc(device: VkDevice, shader: VkShaderEXT, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} + vkGetShaderBinaryDataEXT*: proc(device: VkDevice, shader: VkShaderEXT, pDataSize: ptr uint , pData: pointer ): VkResult {.stdcall.} + vkCmdBindShadersEXT*: proc(commandBuffer: VkCommandBuffer, stageCount: uint32, pStages: ptr VkShaderStageFlagBits , pShaders: ptr VkShaderEXT ): void {.stdcall.} + vkGetScreenBufferPropertiesQNX*: proc(device: VkDevice, buffer: ptr _screen_buffer , pProperties: ptr VkScreenBufferPropertiesQNX ): VkResult {.stdcall.} + vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR*: proc(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkCooperativeMatrixPropertiesKHR ): VkResult {.stdcall.} + vkGetExecutionGraphPipelineScratchSizeAMDX*: proc(device: VkDevice, executionGraph: VkPipeline, pSizeInfo: ptr VkExecutionGraphPipelineScratchSizeAMDX ): VkResult {.stdcall.} + vkGetExecutionGraphPipelineNodeIndexAMDX*: proc(device: VkDevice, executionGraph: VkPipeline, pNodeInfo: ptr VkPipelineShaderStageNodeCreateInfoAMDX , pNodeIndex: ptr uint32 ): VkResult {.stdcall.} + vkCreateExecutionGraphPipelinesAMDX*: proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkExecutionGraphPipelineCreateInfoAMDX , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.} + vkCmdInitializeGraphScratchMemoryAMDX*: proc(commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress): void {.stdcall.} + vkCmdDispatchGraphAMDX*: proc(commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, pCountInfo: ptr VkDispatchGraphCountInfoAMDX ): void {.stdcall.} + vkCmdDispatchGraphIndirectAMDX*: proc(commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, pCountInfo: ptr VkDispatchGraphCountInfoAMDX ): void {.stdcall.} + vkCmdDispatchGraphIndirectCountAMDX*: proc(commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, countInfo: VkDeviceAddress): void {.stdcall.} + vkCmdBindDescriptorSets2KHR*: proc(commandBuffer: VkCommandBuffer, pBindDescriptorSetsInfo: ptr VkBindDescriptorSetsInfoKHR ): void {.stdcall.} + vkCmdPushConstants2KHR*: proc(commandBuffer: VkCommandBuffer, pPushConstantsInfo: ptr VkPushConstantsInfoKHR ): void {.stdcall.} + vkCmdPushDescriptorSet2KHR*: proc(commandBuffer: VkCommandBuffer, pPushDescriptorSetInfo: ptr VkPushDescriptorSetInfoKHR ): void {.stdcall.} + vkCmdPushDescriptorSetWithTemplate2KHR*: proc(commandBuffer: VkCommandBuffer, pPushDescriptorSetWithTemplateInfo: ptr VkPushDescriptorSetWithTemplateInfoKHR ): void {.stdcall.} + vkCmdSetDescriptorBufferOffsets2EXT*: proc(commandBuffer: VkCommandBuffer, pSetDescriptorBufferOffsetsInfo: ptr VkSetDescriptorBufferOffsetsInfoEXT ): void {.stdcall.} + vkCmdBindDescriptorBufferEmbeddedSamplers2EXT*: proc(commandBuffer: VkCommandBuffer, pBindDescriptorBufferEmbeddedSamplersInfo: ptr VkBindDescriptorBufferEmbeddedSamplersInfoEXT ): void {.stdcall.} + vkSetLatencySleepModeNV*: proc(device: VkDevice, swapchain: VkSwapchainKHR, pSleepModeInfo: ptr VkLatencySleepModeInfoNV ): VkResult {.stdcall.} + vkLatencySleepNV*: proc(device: VkDevice, swapchain: VkSwapchainKHR, pSleepInfo: ptr VkLatencySleepInfoNV ): VkResult {.stdcall.} + vkSetLatencyMarkerNV*: proc(device: VkDevice, swapchain: VkSwapchainKHR, pLatencyMarkerInfo: ptr VkSetLatencyMarkerInfoNV ): void {.stdcall.} + vkGetLatencyTimingsNV*: proc(device: VkDevice, swapchain: VkSwapchainKHR, pLatencyMarkerInfo: ptr VkGetLatencyMarkerInfoNV ): void {.stdcall.} + vkQueueNotifyOutOfBandNV*: proc(queue: VkQueue, pQueueTypeInfo: ptr VkOutOfBandQueueTypeInfoNV ): void {.stdcall.} + vkCmdSetRenderingAttachmentLocationsKHR*: proc(commandBuffer: VkCommandBuffer, pLocationInfo: ptr VkRenderingAttachmentLocationInfoKHR ): void {.stdcall.} + vkCmdSetRenderingInputAttachmentIndicesKHR*: proc(commandBuffer: VkCommandBuffer, pLocationInfo: ptr VkRenderingInputAttachmentIndexInfoKHR ): void {.stdcall.} # Vulkan 1_0 proc vkLoad1_0*() = - vkCreateInstance = cast[proc(pCreateInfo: ptr VkInstanceCreateInfo , pAllocator: ptr VkAllocationCallbacks , pInstance: ptr VkInstance ): VkResult {.stdcall.}](vkGetProc("vkCreateInstance")) vkDestroyInstance = cast[proc(instance: VkInstance, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyInstance")) vkEnumeratePhysicalDevices = cast[proc(instance: VkInstance, pPhysicalDeviceCount: ptr uint32 , pPhysicalDevices: ptr VkPhysicalDevice ): VkResult {.stdcall.}](vkGetProc("vkEnumeratePhysicalDevices")) vkGetPhysicalDeviceFeatures = cast[proc(physicalDevice: VkPhysicalDevice, pFeatures: ptr VkPhysicalDeviceFeatures ): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFeatures")) @@ -10222,10 +18771,10 @@ proc vkLoad1_0*() = vkGetInstanceProcAddr = cast[proc(instance: VkInstance, pName: cstring ): PFN_vkVoidFunction {.stdcall.}](vkGetProc("vkGetInstanceProcAddr")) vkGetDeviceProcAddr = cast[proc(device: VkDevice, pName: cstring ): PFN_vkVoidFunction {.stdcall.}](vkGetProc("vkGetDeviceProcAddr")) vkCreateDevice = cast[proc(physicalDevice: VkPhysicalDevice, pCreateInfo: ptr VkDeviceCreateInfo , pAllocator: ptr VkAllocationCallbacks , pDevice: ptr VkDevice ): VkResult {.stdcall.}](vkGetProc("vkCreateDevice")) + vkCreateDevice = cast[proc(physicalDevice: VkPhysicalDevice, pCreateInfo: ptr VkDeviceCreateInfo , pAllocator: ptr VkAllocationCallbacks , pDevice: ptr VkDevice ): VkResult {.stdcall.}](vkGetProc("vkCreateDevice")) vkDestroyDevice = cast[proc(device: VkDevice, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyDevice")) - vkEnumerateInstanceExtensionProperties = cast[proc(pLayerName: cstring , pPropertyCount: ptr uint32 , pProperties: ptr VkExtensionProperties ): VkResult {.stdcall.}](vkGetProc("vkEnumerateInstanceExtensionProperties")) vkEnumerateDeviceExtensionProperties = cast[proc(physicalDevice: VkPhysicalDevice, pLayerName: cstring , pPropertyCount: ptr uint32 , pProperties: ptr VkExtensionProperties ): VkResult {.stdcall.}](vkGetProc("vkEnumerateDeviceExtensionProperties")) - vkEnumerateInstanceLayerProperties = cast[proc(pPropertyCount: ptr uint32 , pProperties: ptr VkLayerProperties ): VkResult {.stdcall.}](vkGetProc("vkEnumerateInstanceLayerProperties")) + vkEnumerateDeviceLayerProperties = cast[proc(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkLayerProperties ): VkResult {.stdcall.}](vkGetProc("vkEnumerateDeviceLayerProperties")) vkEnumerateDeviceLayerProperties = cast[proc(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkLayerProperties ): VkResult {.stdcall.}](vkGetProc("vkEnumerateDeviceLayerProperties")) vkGetDeviceQueue = cast[proc(device: VkDevice, queueFamilyIndex: uint32, queueIndex: uint32, pQueue: ptr VkQueue ): void {.stdcall.}](vkGetProc("vkGetDeviceQueue")) vkQueueSubmit = cast[proc(queue: VkQueue, submitCount: uint32, pSubmits: ptr VkSubmitInfo , fence: VkFence): VkResult {.stdcall.}](vkGetProc("vkQueueSubmit")) @@ -10272,10 +18821,13 @@ proc vkLoad1_0*() = vkCreateShaderModule = cast[proc(device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo , pAllocator: ptr VkAllocationCallbacks , pShaderModule: ptr VkShaderModule ): VkResult {.stdcall.}](vkGetProc("vkCreateShaderModule")) vkDestroyShaderModule = cast[proc(device: VkDevice, shaderModule: VkShaderModule, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyShaderModule")) vkCreatePipelineCache = cast[proc(device: VkDevice, pCreateInfo: ptr VkPipelineCacheCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelineCache: ptr VkPipelineCache ): VkResult {.stdcall.}](vkGetProc("vkCreatePipelineCache")) + vkCreatePipelineCache = cast[proc(device: VkDevice, pCreateInfo: ptr VkPipelineCacheCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelineCache: ptr VkPipelineCache ): VkResult {.stdcall.}](vkGetProc("vkCreatePipelineCache")) vkDestroyPipelineCache = cast[proc(device: VkDevice, pipelineCache: VkPipelineCache, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyPipelineCache")) vkGetPipelineCacheData = cast[proc(device: VkDevice, pipelineCache: VkPipelineCache, pDataSize: ptr uint , pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetPipelineCacheData")) vkMergePipelineCaches = cast[proc(device: VkDevice, dstCache: VkPipelineCache, srcCacheCount: uint32, pSrcCaches: ptr VkPipelineCache ): VkResult {.stdcall.}](vkGetProc("vkMergePipelineCaches")) vkCreateGraphicsPipelines = cast[proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkGraphicsPipelineCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.}](vkGetProc("vkCreateGraphicsPipelines")) + vkCreateGraphicsPipelines = cast[proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkGraphicsPipelineCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.}](vkGetProc("vkCreateGraphicsPipelines")) + vkCreateComputePipelines = cast[proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkComputePipelineCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.}](vkGetProc("vkCreateComputePipelines")) vkCreateComputePipelines = cast[proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkComputePipelineCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.}](vkGetProc("vkCreateComputePipelines")) vkDestroyPipeline = cast[proc(device: VkDevice, pipeline: VkPipeline, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyPipeline")) vkCreatePipelineLayout = cast[proc(device: VkDevice, pCreateInfo: ptr VkPipelineLayoutCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelineLayout: ptr VkPipelineLayout ): VkResult {.stdcall.}](vkGetProc("vkCreatePipelineLayout")) @@ -10350,7 +18902,6 @@ proc vkLoad1_0*() = # Vulkan 1_1 proc vkLoad1_1*() = - vkEnumerateInstanceVersion = cast[proc(pApiVersion: ptr uint32 ): VkResult {.stdcall.}](vkGetProc("vkEnumerateInstanceVersion")) vkBindBufferMemory2 = cast[proc(device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindBufferMemoryInfo ): VkResult {.stdcall.}](vkGetProc("vkBindBufferMemory2")) vkBindImageMemory2 = cast[proc(device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindImageMemoryInfo ): VkResult {.stdcall.}](vkGetProc("vkBindImageMemory2")) vkGetDeviceGroupPeerMemoryFeatures = cast[proc(device: VkDevice, heapIndex: uint32, localDeviceIndex: uint32, remoteDeviceIndex: uint32, pPeerMemoryFeatures: ptr VkPeerMemoryFeatureFlags ): void {.stdcall.}](vkGetProc("vkGetDeviceGroupPeerMemoryFeatures")) @@ -10395,6 +18946,70 @@ proc vkLoad1_2*() = vkGetBufferOpaqueCaptureAddress = cast[proc(device: VkDevice, pInfo: ptr VkBufferDeviceAddressInfo ): uint64 {.stdcall.}](vkGetProc("vkGetBufferOpaqueCaptureAddress")) vkGetDeviceMemoryOpaqueCaptureAddress = cast[proc(device: VkDevice, pInfo: ptr VkDeviceMemoryOpaqueCaptureAddressInfo ): uint64 {.stdcall.}](vkGetProc("vkGetDeviceMemoryOpaqueCaptureAddress")) +# Vulkan 1_3 +proc vkLoad1_3*() = + vkGetPhysicalDeviceToolProperties = cast[proc(physicalDevice: VkPhysicalDevice, pToolCount: ptr uint32 , pToolProperties: ptr VkPhysicalDeviceToolProperties ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceToolProperties")) + vkCreatePrivateDataSlot = cast[proc(device: VkDevice, pCreateInfo: ptr VkPrivateDataSlotCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPrivateDataSlot: ptr VkPrivateDataSlot ): VkResult {.stdcall.}](vkGetProc("vkCreatePrivateDataSlot")) + vkDestroyPrivateDataSlot = cast[proc(device: VkDevice, privateDataSlot: VkPrivateDataSlot, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyPrivateDataSlot")) + vkSetPrivateData = cast[proc(device: VkDevice, objectType: VkObjectType, objectHandle: uint64, privateDataSlot: VkPrivateDataSlot, data: uint64): VkResult {.stdcall.}](vkGetProc("vkSetPrivateData")) + vkGetPrivateData = cast[proc(device: VkDevice, objectType: VkObjectType, objectHandle: uint64, privateDataSlot: VkPrivateDataSlot, pData: ptr uint64 ): void {.stdcall.}](vkGetProc("vkGetPrivateData")) + vkCmdSetEvent2 = cast[proc(commandBuffer: VkCommandBuffer, event: VkEvent, pDependencyInfo: ptr VkDependencyInfo ): void {.stdcall.}](vkGetProc("vkCmdSetEvent2")) + vkCmdResetEvent2 = cast[proc(commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags2): void {.stdcall.}](vkGetProc("vkCmdResetEvent2")) + vkCmdWaitEvents2 = cast[proc(commandBuffer: VkCommandBuffer, eventCount: uint32, pEvents: ptr VkEvent , pDependencyInfos: ptr VkDependencyInfo ): void {.stdcall.}](vkGetProc("vkCmdWaitEvents2")) + vkCmdPipelineBarrier2 = cast[proc(commandBuffer: VkCommandBuffer, pDependencyInfo: ptr VkDependencyInfo ): void {.stdcall.}](vkGetProc("vkCmdPipelineBarrier2")) + vkCmdWriteTimestamp2 = cast[proc(commandBuffer: VkCommandBuffer, stage: VkPipelineStageFlags2, queryPool: VkQueryPool, query: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteTimestamp2")) + vkQueueSubmit2 = cast[proc(queue: VkQueue, submitCount: uint32, pSubmits: ptr VkSubmitInfo2 , fence: VkFence): VkResult {.stdcall.}](vkGetProc("vkQueueSubmit2")) + vkCmdCopyBuffer2 = cast[proc(commandBuffer: VkCommandBuffer, pCopyBufferInfo: ptr VkCopyBufferInfo2 ): void {.stdcall.}](vkGetProc("vkCmdCopyBuffer2")) + vkCmdCopyImage2 = cast[proc(commandBuffer: VkCommandBuffer, pCopyImageInfo: ptr VkCopyImageInfo2 ): void {.stdcall.}](vkGetProc("vkCmdCopyImage2")) + vkCmdCopyBufferToImage2 = cast[proc(commandBuffer: VkCommandBuffer, pCopyBufferToImageInfo: ptr VkCopyBufferToImageInfo2 ): void {.stdcall.}](vkGetProc("vkCmdCopyBufferToImage2")) + vkCmdCopyImageToBuffer2 = cast[proc(commandBuffer: VkCommandBuffer, pCopyImageToBufferInfo: ptr VkCopyImageToBufferInfo2 ): void {.stdcall.}](vkGetProc("vkCmdCopyImageToBuffer2")) + vkCmdBlitImage2 = cast[proc(commandBuffer: VkCommandBuffer, pBlitImageInfo: ptr VkBlitImageInfo2 ): void {.stdcall.}](vkGetProc("vkCmdBlitImage2")) + vkCmdResolveImage2 = cast[proc(commandBuffer: VkCommandBuffer, pResolveImageInfo: ptr VkResolveImageInfo2 ): void {.stdcall.}](vkGetProc("vkCmdResolveImage2")) + vkCmdBeginRendering = cast[proc(commandBuffer: VkCommandBuffer, pRenderingInfo: ptr VkRenderingInfo ): void {.stdcall.}](vkGetProc("vkCmdBeginRendering")) + vkCmdEndRendering = cast[proc(commandBuffer: VkCommandBuffer): void {.stdcall.}](vkGetProc("vkCmdEndRendering")) + vkCmdSetCullMode = cast[proc(commandBuffer: VkCommandBuffer, cullMode: VkCullModeFlags): void {.stdcall.}](vkGetProc("vkCmdSetCullMode")) + vkCmdSetFrontFace = cast[proc(commandBuffer: VkCommandBuffer, frontFace: VkFrontFace): void {.stdcall.}](vkGetProc("vkCmdSetFrontFace")) + vkCmdSetPrimitiveTopology = cast[proc(commandBuffer: VkCommandBuffer, primitiveTopology: VkPrimitiveTopology): void {.stdcall.}](vkGetProc("vkCmdSetPrimitiveTopology")) + vkCmdSetViewportWithCount = cast[proc(commandBuffer: VkCommandBuffer, viewportCount: uint32, pViewports: ptr VkViewport ): void {.stdcall.}](vkGetProc("vkCmdSetViewportWithCount")) + vkCmdSetScissorWithCount = cast[proc(commandBuffer: VkCommandBuffer, scissorCount: uint32, pScissors: ptr VkRect2D ): void {.stdcall.}](vkGetProc("vkCmdSetScissorWithCount")) + vkCmdBindVertexBuffers2 = cast[proc(commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer , pOffsets: ptr VkDeviceSize , pSizes: ptr VkDeviceSize , pStrides: ptr VkDeviceSize ): void {.stdcall.}](vkGetProc("vkCmdBindVertexBuffers2")) + vkCmdSetDepthTestEnable = cast[proc(commandBuffer: VkCommandBuffer, depthTestEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthTestEnable")) + vkCmdSetDepthWriteEnable = cast[proc(commandBuffer: VkCommandBuffer, depthWriteEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthWriteEnable")) + vkCmdSetDepthCompareOp = cast[proc(commandBuffer: VkCommandBuffer, depthCompareOp: VkCompareOp): void {.stdcall.}](vkGetProc("vkCmdSetDepthCompareOp")) + vkCmdSetDepthBoundsTestEnable = cast[proc(commandBuffer: VkCommandBuffer, depthBoundsTestEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthBoundsTestEnable")) + vkCmdSetStencilTestEnable = cast[proc(commandBuffer: VkCommandBuffer, stencilTestEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetStencilTestEnable")) + vkCmdSetStencilOp = cast[proc(commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, failOp: VkStencilOp, passOp: VkStencilOp, depthFailOp: VkStencilOp, compareOp: VkCompareOp): void {.stdcall.}](vkGetProc("vkCmdSetStencilOp")) + vkCmdSetRasterizerDiscardEnable = cast[proc(commandBuffer: VkCommandBuffer, rasterizerDiscardEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetRasterizerDiscardEnable")) + vkCmdSetDepthBiasEnable = cast[proc(commandBuffer: VkCommandBuffer, depthBiasEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthBiasEnable")) + vkCmdSetPrimitiveRestartEnable = cast[proc(commandBuffer: VkCommandBuffer, primitiveRestartEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetPrimitiveRestartEnable")) + vkGetDeviceBufferMemoryRequirements = cast[proc(device: VkDevice, pInfo: ptr VkDeviceBufferMemoryRequirements , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.stdcall.}](vkGetProc("vkGetDeviceBufferMemoryRequirements")) + vkGetDeviceImageMemoryRequirements = cast[proc(device: VkDevice, pInfo: ptr VkDeviceImageMemoryRequirements , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.stdcall.}](vkGetProc("vkGetDeviceImageMemoryRequirements")) + vkGetDeviceImageSparseMemoryRequirements = cast[proc(device: VkDevice, pInfo: ptr VkDeviceImageMemoryRequirements , pSparseMemoryRequirementCount: ptr uint32 , pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2 ): void {.stdcall.}](vkGetProc("vkGetDeviceImageSparseMemoryRequirements")) + +# Vulkan 1_0 +proc vkLoad1_0*() = + vkGetCommandPoolMemoryConsumption = cast[proc(device: VkDevice, commandPool: VkCommandPool, commandBuffer: VkCommandBuffer, pConsumption: ptr VkCommandPoolMemoryConsumption ): void {.stdcall.}](vkGetProc("vkGetCommandPoolMemoryConsumption")) + vkGetFaultData = cast[proc(device: VkDevice, faultQueryBehavior: VkFaultQueryBehavior, pUnrecordedFaults: ptr VkBool32 , pFaultCount: ptr uint32 , pFaults: ptr VkFaultData ): VkResult {.stdcall.}](vkGetProc("vkGetFaultData")) + vkCreateShaderModule = cast[proc(device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo , pAllocator: ptr VkAllocationCallbacks , pShaderModule: ptr VkShaderModule ): VkResult {.stdcall.}](vkGetProc("vkCreateShaderModule")) + vkDestroyShaderModule = cast[proc(device: VkDevice, shaderModule: VkShaderModule, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyShaderModule")) + vkMergePipelineCaches = cast[proc(device: VkDevice, dstCache: VkPipelineCache, srcCacheCount: uint32, pSrcCaches: ptr VkPipelineCache ): VkResult {.stdcall.}](vkGetProc("vkMergePipelineCaches")) + vkGetPipelineCacheData = cast[proc(device: VkDevice, pipelineCache: VkPipelineCache, pDataSize: ptr uint , pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetPipelineCacheData")) + vkTrimCommandPool = cast[proc(device: VkDevice, commandPool: VkCommandPool, flags: VkCommandPoolTrimFlags): void {.stdcall.}](vkGetProc("vkTrimCommandPool")) + vkDestroyCommandPool = cast[proc(device: VkDevice, commandPool: VkCommandPool, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyCommandPool")) + vkDestroyDescriptorPool = cast[proc(device: VkDevice, descriptorPool: VkDescriptorPool, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyDescriptorPool")) + vkDestroyQueryPool = cast[proc(device: VkDevice, queryPool: VkQueryPool, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyQueryPool")) + vkDestroySwapchainKHR = cast[proc(device: VkDevice, swapchain: VkSwapchainKHR, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroySwapchainKHR")) + vkFreeMemory = cast[proc(device: VkDevice, memory: VkDeviceMemory, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkFreeMemory")) + vkCreateDescriptorUpdateTemplate = cast[proc(device: VkDevice, pCreateInfo: ptr VkDescriptorUpdateTemplateCreateInfo , pAllocator: ptr VkAllocationCallbacks , pDescriptorUpdateTemplate: ptr VkDescriptorUpdateTemplate ): VkResult {.stdcall.}](vkGetProc("vkCreateDescriptorUpdateTemplate")) + vkDestroyDescriptorUpdateTemplate = cast[proc(device: VkDevice, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyDescriptorUpdateTemplate")) + vkUpdateDescriptorSetWithTemplate = cast[proc(device: VkDevice, descriptorSet: VkDescriptorSet, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pData: pointer ): void {.stdcall.}](vkGetProc("vkUpdateDescriptorSetWithTemplate")) + vkGetPhysicalDeviceSparseImageFormatProperties = cast[proc(physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, samples: VkSampleCountFlagBits, usage: VkImageUsageFlags, tiling: VkImageTiling, pPropertyCount: ptr uint32 , pProperties: ptr VkSparseImageFormatProperties ): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSparseImageFormatProperties")) + vkGetPhysicalDeviceSparseImageFormatProperties2 = cast[proc(physicalDevice: VkPhysicalDevice, pFormatInfo: ptr VkPhysicalDeviceSparseImageFormatInfo2 , pPropertyCount: ptr uint32 , pProperties: ptr VkSparseImageFormatProperties2 ): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSparseImageFormatProperties2")) + vkGetImageSparseMemoryRequirements = cast[proc(device: VkDevice, image: VkImage, pSparseMemoryRequirementCount: ptr uint32 , pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements ): void {.stdcall.}](vkGetProc("vkGetImageSparseMemoryRequirements")) + vkGetImageSparseMemoryRequirements2 = cast[proc(device: VkDevice, pInfo: ptr VkImageSparseMemoryRequirementsInfo2 , pSparseMemoryRequirementCount: ptr uint32 , pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2 ): void {.stdcall.}](vkGetProc("vkGetImageSparseMemoryRequirements2")) + vkQueueBindSparse = cast[proc(queue: VkQueue, bindInfoCount: uint32, pBindInfo: ptr VkBindSparseInfo , fence: VkFence): VkResult {.stdcall.}](vkGetProc("vkQueueBindSparse")) + vkDestroySemaphoreSciSyncPoolNV = cast[proc(device: VkDevice, semaphorePool: VkSemaphoreSciSyncPoolNV, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroySemaphoreSciSyncPoolNV")) + # Load VK_KHR_surface proc loadVK_KHR_surface*() = vkDestroySurfaceKHR = cast[proc(instance: VkInstance, surface: VkSurfaceKHR, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroySurfaceKHR")) @@ -10405,7 +19020,7 @@ proc loadVK_KHR_surface*() = # Load VK_KHR_swapchain proc loadVK_KHR_swapchain*() = - vkCreateSwapchainKHR = cast[proc(device: VkDevice, pCreateInfo: ptr VkSwapchainCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSwapchain: ptr VkSwapchainKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateSwapchainKHR")) + vkCreateSwapchainKHR = cast[proc(device: VkDevice, pCreateInfo: ptr VkSwapchainCreateInfoKHR , pCreateInfo: ptr VkSwapchainCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSwapchain: ptr VkSwapchainKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateSwapchainKHR")) vkDestroySwapchainKHR = cast[proc(device: VkDevice, swapchain: VkSwapchainKHR, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroySwapchainKHR")) vkGetSwapchainImagesKHR = cast[proc(device: VkDevice, swapchain: VkSwapchainKHR, pSwapchainImageCount: ptr uint32 , pSwapchainImages: ptr VkImage ): VkResult {.stdcall.}](vkGetProc("vkGetSwapchainImagesKHR")) vkAcquireNextImageKHR = cast[proc(device: VkDevice, swapchain: VkSwapchainKHR, timeout: uint64, semaphore: VkSemaphore, fence: VkFence, pImageIndex: ptr uint32 ): VkResult {.stdcall.}](vkGetProc("vkAcquireNextImageKHR")) @@ -10427,7 +19042,7 @@ proc loadVK_KHR_display*() = # Load VK_KHR_display_swapchain proc loadVK_KHR_display_swapchain*() = - vkCreateSharedSwapchainsKHR = cast[proc(device: VkDevice, swapchainCount: uint32, pCreateInfos: ptr VkSwapchainCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSwapchains: ptr VkSwapchainKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateSharedSwapchainsKHR")) + vkCreateSharedSwapchainsKHR = cast[proc(device: VkDevice, swapchainCount: uint32, pCreateInfos: ptr VkSwapchainCreateInfoKHR , pCreateInfos: ptr VkSwapchainCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSwapchains: ptr VkSwapchainKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateSharedSwapchainsKHR")) # Load VK_KHR_xlib_surface proc loadVK_KHR_xlib_surface*() = @@ -10474,6 +19089,25 @@ proc loadVK_EXT_debug_marker*() = vkCmdDebugMarkerEndEXT = cast[proc(commandBuffer: VkCommandBuffer): void {.stdcall.}](vkGetProc("vkCmdDebugMarkerEndEXT")) vkCmdDebugMarkerInsertEXT = cast[proc(commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT ): void {.stdcall.}](vkGetProc("vkCmdDebugMarkerInsertEXT")) +# Load VK_KHR_video_queue +proc loadVK_KHR_video_queue*() = + vkGetPhysicalDeviceVideoCapabilitiesKHR = cast[proc(physicalDevice: VkPhysicalDevice, pVideoProfile: ptr VkVideoProfileInfoKHR , pCapabilities: ptr VkVideoCapabilitiesKHR ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceVideoCapabilitiesKHR")) + vkGetPhysicalDeviceVideoFormatPropertiesKHR = cast[proc(physicalDevice: VkPhysicalDevice, pVideoFormatInfo: ptr VkPhysicalDeviceVideoFormatInfoKHR , pVideoFormatPropertyCount: ptr uint32 , pVideoFormatProperties: ptr VkVideoFormatPropertiesKHR ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceVideoFormatPropertiesKHR")) + vkCreateVideoSessionKHR = cast[proc(device: VkDevice, pCreateInfo: ptr VkVideoSessionCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pVideoSession: ptr VkVideoSessionKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateVideoSessionKHR")) + vkDestroyVideoSessionKHR = cast[proc(device: VkDevice, videoSession: VkVideoSessionKHR, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyVideoSessionKHR")) + vkGetVideoSessionMemoryRequirementsKHR = cast[proc(device: VkDevice, videoSession: VkVideoSessionKHR, pMemoryRequirementsCount: ptr uint32 , pMemoryRequirements: ptr VkVideoSessionMemoryRequirementsKHR ): VkResult {.stdcall.}](vkGetProc("vkGetVideoSessionMemoryRequirementsKHR")) + vkBindVideoSessionMemoryKHR = cast[proc(device: VkDevice, videoSession: VkVideoSessionKHR, bindSessionMemoryInfoCount: uint32, pBindSessionMemoryInfos: ptr VkBindVideoSessionMemoryInfoKHR ): VkResult {.stdcall.}](vkGetProc("vkBindVideoSessionMemoryKHR")) + vkCreateVideoSessionParametersKHR = cast[proc(device: VkDevice, pCreateInfo: ptr VkVideoSessionParametersCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pVideoSessionParameters: ptr VkVideoSessionParametersKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateVideoSessionParametersKHR")) + vkUpdateVideoSessionParametersKHR = cast[proc(device: VkDevice, videoSessionParameters: VkVideoSessionParametersKHR, pUpdateInfo: ptr VkVideoSessionParametersUpdateInfoKHR ): VkResult {.stdcall.}](vkGetProc("vkUpdateVideoSessionParametersKHR")) + vkDestroyVideoSessionParametersKHR = cast[proc(device: VkDevice, videoSessionParameters: VkVideoSessionParametersKHR, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyVideoSessionParametersKHR")) + vkCmdBeginVideoCodingKHR = cast[proc(commandBuffer: VkCommandBuffer, pBeginInfo: ptr VkVideoBeginCodingInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdBeginVideoCodingKHR")) + vkCmdEndVideoCodingKHR = cast[proc(commandBuffer: VkCommandBuffer, pEndCodingInfo: ptr VkVideoEndCodingInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdEndVideoCodingKHR")) + vkCmdControlVideoCodingKHR = cast[proc(commandBuffer: VkCommandBuffer, pCodingControlInfo: ptr VkVideoCodingControlInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdControlVideoCodingKHR")) + +# Load VK_KHR_video_decode_queue +proc loadVK_KHR_video_decode_queue*() = + vkCmdDecodeVideoKHR = cast[proc(commandBuffer: VkCommandBuffer, pDecodeInfo: ptr VkVideoDecodeInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdDecodeVideoKHR")) + # Load VK_EXT_transform_feedback proc loadVK_EXT_transform_feedback*() = vkCmdBindTransformFeedbackBuffersEXT = cast[proc(commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer , pOffsets: ptr VkDeviceSize , pSizes: ptr VkDeviceSize ): void {.stdcall.}](vkGetProc("vkCmdBindTransformFeedbackBuffersEXT")) @@ -10483,6 +19117,14 @@ proc loadVK_EXT_transform_feedback*() = vkCmdEndQueryIndexedEXT = cast[proc(commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, index: uint32): void {.stdcall.}](vkGetProc("vkCmdEndQueryIndexedEXT")) vkCmdDrawIndirectByteCountEXT = cast[proc(commandBuffer: VkCommandBuffer, instanceCount: uint32, firstInstance: uint32, counterBuffer: VkBuffer, counterBufferOffset: VkDeviceSize, counterOffset: uint32, vertexStride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawIndirectByteCountEXT")) +# Load VK_NVX_binary_import +proc loadVK_NVX_binary_import*() = + vkCreateCuModuleNVX = cast[proc(device: VkDevice, pCreateInfo: ptr VkCuModuleCreateInfoNVX , pAllocator: ptr VkAllocationCallbacks , pModule: ptr VkCuModuleNVX ): VkResult {.stdcall.}](vkGetProc("vkCreateCuModuleNVX")) + vkCreateCuFunctionNVX = cast[proc(device: VkDevice, pCreateInfo: ptr VkCuFunctionCreateInfoNVX , pAllocator: ptr VkAllocationCallbacks , pFunction: ptr VkCuFunctionNVX ): VkResult {.stdcall.}](vkGetProc("vkCreateCuFunctionNVX")) + vkDestroyCuModuleNVX = cast[proc(device: VkDevice, module: VkCuModuleNVX, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyCuModuleNVX")) + vkDestroyCuFunctionNVX = cast[proc(device: VkDevice, function: VkCuFunctionNVX, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyCuFunctionNVX")) + vkCmdCuLaunchKernelNVX = cast[proc(commandBuffer: VkCommandBuffer, pLaunchInfo: ptr VkCuLaunchInfoNVX ): void {.stdcall.}](vkGetProc("vkCmdCuLaunchKernelNVX")) + # Load VK_NVX_image_view_handle proc loadVK_NVX_image_view_handle*() = vkGetImageViewHandleNVX = cast[proc(device: VkDevice, pInfo: ptr VkImageViewHandleInfoNVX ): uint32 {.stdcall.}](vkGetProc("vkGetImageViewHandleNVX")) @@ -10582,6 +19224,8 @@ proc loadVK_GOOGLE_display_timing*() = # Load VK_EXT_discard_rectangles proc loadVK_EXT_discard_rectangles*() = vkCmdSetDiscardRectangleEXT = cast[proc(commandBuffer: VkCommandBuffer, firstDiscardRectangle: uint32, discardRectangleCount: uint32, pDiscardRectangles: ptr VkRect2D ): void {.stdcall.}](vkGetProc("vkCmdSetDiscardRectangleEXT")) + vkCmdSetDiscardRectangleEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, discardRectangleEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDiscardRectangleEnableEXT")) + vkCmdSetDiscardRectangleModeEXT = cast[proc(commandBuffer: VkCommandBuffer, discardRectangleMode: VkDiscardRectangleModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetDiscardRectangleModeEXT")) # Load VK_EXT_hdr_metadata proc loadVK_EXT_hdr_metadata*() = @@ -10647,35 +19291,50 @@ proc loadVK_ANDROID_external_memory_android_hardware_buffer*() = vkGetAndroidHardwareBufferPropertiesANDROID = cast[proc(device: VkDevice, buffer: ptr AHardwareBuffer , pProperties: ptr VkAndroidHardwareBufferPropertiesANDROID ): VkResult {.stdcall.}](vkGetProc("vkGetAndroidHardwareBufferPropertiesANDROID")) vkGetMemoryAndroidHardwareBufferANDROID = cast[proc(device: VkDevice, pInfo: ptr VkMemoryGetAndroidHardwareBufferInfoANDROID , pBuffer: ptr ptr AHardwareBuffer ): VkResult {.stdcall.}](vkGetProc("vkGetMemoryAndroidHardwareBufferANDROID")) +# Load VK_AMDX_shader_enqueue +proc loadVK_AMDX_shader_enqueue*() = + vkCreateExecutionGraphPipelinesAMDX = cast[proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkExecutionGraphPipelineCreateInfoAMDX , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.}](vkGetProc("vkCreateExecutionGraphPipelinesAMDX")) + vkGetExecutionGraphPipelineScratchSizeAMDX = cast[proc(device: VkDevice, executionGraph: VkPipeline, pSizeInfo: ptr VkExecutionGraphPipelineScratchSizeAMDX ): VkResult {.stdcall.}](vkGetProc("vkGetExecutionGraphPipelineScratchSizeAMDX")) + vkGetExecutionGraphPipelineNodeIndexAMDX = cast[proc(device: VkDevice, executionGraph: VkPipeline, pNodeInfo: ptr VkPipelineShaderStageNodeCreateInfoAMDX , pNodeIndex: ptr uint32 ): VkResult {.stdcall.}](vkGetProc("vkGetExecutionGraphPipelineNodeIndexAMDX")) + vkCmdInitializeGraphScratchMemoryAMDX = cast[proc(commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress): void {.stdcall.}](vkGetProc("vkCmdInitializeGraphScratchMemoryAMDX")) + vkCmdDispatchGraphAMDX = cast[proc(commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, pCountInfo: ptr VkDispatchGraphCountInfoAMDX ): void {.stdcall.}](vkGetProc("vkCmdDispatchGraphAMDX")) + vkCmdDispatchGraphIndirectAMDX = cast[proc(commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, pCountInfo: ptr VkDispatchGraphCountInfoAMDX ): void {.stdcall.}](vkGetProc("vkCmdDispatchGraphIndirectAMDX")) + vkCmdDispatchGraphIndirectCountAMDX = cast[proc(commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, countInfo: VkDeviceAddress): void {.stdcall.}](vkGetProc("vkCmdDispatchGraphIndirectCountAMDX")) + # Load VK_EXT_sample_locations proc loadVK_EXT_sample_locations*() = vkCmdSetSampleLocationsEXT = cast[proc(commandBuffer: VkCommandBuffer, pSampleLocationsInfo: ptr VkSampleLocationsInfoEXT ): void {.stdcall.}](vkGetProc("vkCmdSetSampleLocationsEXT")) vkGetPhysicalDeviceMultisamplePropertiesEXT = cast[proc(physicalDevice: VkPhysicalDevice, samples: VkSampleCountFlagBits, pMultisampleProperties: ptr VkMultisamplePropertiesEXT ): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceMultisamplePropertiesEXT")) -# Load VK_KHR_ray_tracing -proc loadVK_KHR_ray_tracing*() = +# Load VK_KHR_acceleration_structure +proc loadVK_KHR_acceleration_structure*() = vkCreateAccelerationStructureKHR = cast[proc(device: VkDevice, pCreateInfo: ptr VkAccelerationStructureCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pAccelerationStructure: ptr VkAccelerationStructureKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateAccelerationStructureKHR")) vkDestroyAccelerationStructureKHR = cast[proc(device: VkDevice, accelerationStructure: VkAccelerationStructureKHR, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyAccelerationStructureKHR")) - vkGetAccelerationStructureMemoryRequirementsKHR = cast[proc(device: VkDevice, pInfo: ptr VkAccelerationStructureMemoryRequirementsInfoKHR , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.stdcall.}](vkGetProc("vkGetAccelerationStructureMemoryRequirementsKHR")) - vkBindAccelerationStructureMemoryKHR = cast[proc(device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindAccelerationStructureMemoryInfoKHR ): VkResult {.stdcall.}](vkGetProc("vkBindAccelerationStructureMemoryKHR")) - vkCmdBuildAccelerationStructureKHR = cast[proc(commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR , ppOffsetInfos: ptr ptr VkAccelerationStructureBuildOffsetInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdBuildAccelerationStructureKHR")) - vkCmdBuildAccelerationStructureIndirectKHR = cast[proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkAccelerationStructureBuildGeometryInfoKHR , indirectBuffer: VkBuffer, indirectOffset: VkDeviceSize, indirectStride: uint32): void {.stdcall.}](vkGetProc("vkCmdBuildAccelerationStructureIndirectKHR")) - vkBuildAccelerationStructureKHR = cast[proc(device: VkDevice, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR , ppOffsetInfos: ptr ptr VkAccelerationStructureBuildOffsetInfoKHR ): VkResult {.stdcall.}](vkGetProc("vkBuildAccelerationStructureKHR")) - vkCopyAccelerationStructureKHR = cast[proc(device: VkDevice, pInfo: ptr VkCopyAccelerationStructureInfoKHR ): VkResult {.stdcall.}](vkGetProc("vkCopyAccelerationStructureKHR")) - vkCopyAccelerationStructureToMemoryKHR = cast[proc(device: VkDevice, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR ): VkResult {.stdcall.}](vkGetProc("vkCopyAccelerationStructureToMemoryKHR")) - vkCopyMemoryToAccelerationStructureKHR = cast[proc(device: VkDevice, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR ): VkResult {.stdcall.}](vkGetProc("vkCopyMemoryToAccelerationStructureKHR")) + vkCmdBuildAccelerationStructuresKHR = cast[proc(commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR , ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdBuildAccelerationStructuresKHR")) + vkCmdBuildAccelerationStructuresIndirectKHR = cast[proc(commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR , pIndirectDeviceAddresses: ptr VkDeviceAddress , pIndirectStrides: ptr uint32 , ppMaxPrimitiveCounts: ptr ptr uint32 ): void {.stdcall.}](vkGetProc("vkCmdBuildAccelerationStructuresIndirectKHR")) + vkBuildAccelerationStructuresKHR = cast[proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR , ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR ): VkResult {.stdcall.}](vkGetProc("vkBuildAccelerationStructuresKHR")) + vkCopyAccelerationStructureKHR = cast[proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyAccelerationStructureInfoKHR ): VkResult {.stdcall.}](vkGetProc("vkCopyAccelerationStructureKHR")) + vkCopyAccelerationStructureToMemoryKHR = cast[proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR ): VkResult {.stdcall.}](vkGetProc("vkCopyAccelerationStructureToMemoryKHR")) + vkCopyMemoryToAccelerationStructureKHR = cast[proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR ): VkResult {.stdcall.}](vkGetProc("vkCopyMemoryToAccelerationStructureKHR")) vkWriteAccelerationStructuresPropertiesKHR = cast[proc(device: VkDevice, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR , queryType: VkQueryType, dataSize: uint, pData: pointer , stride: uint): VkResult {.stdcall.}](vkGetProc("vkWriteAccelerationStructuresPropertiesKHR")) vkCmdCopyAccelerationStructureKHR = cast[proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyAccelerationStructureInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdCopyAccelerationStructureKHR")) vkCmdCopyAccelerationStructureToMemoryKHR = cast[proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdCopyAccelerationStructureToMemoryKHR")) vkCmdCopyMemoryToAccelerationStructureKHR = cast[proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdCopyMemoryToAccelerationStructureKHR")) - vkCmdTraceRaysKHR = cast[proc(commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedBufferRegionKHR , pMissShaderBindingTable: ptr VkStridedBufferRegionKHR , pHitShaderBindingTable: ptr VkStridedBufferRegionKHR , pCallableShaderBindingTable: ptr VkStridedBufferRegionKHR , width: uint32, height: uint32, depth: uint32): void {.stdcall.}](vkGetProc("vkCmdTraceRaysKHR")) - vkCreateRayTracingPipelinesKHR = cast[proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesKHR")) - vkGetRayTracingShaderGroupHandlesKHR = cast[proc(device: VkDevice, pipeline: VkPipeline, firstGroup: uint32, groupCount: uint32, dataSize: uint, pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetRayTracingShaderGroupHandlesKHR")) vkGetAccelerationStructureDeviceAddressKHR = cast[proc(device: VkDevice, pInfo: ptr VkAccelerationStructureDeviceAddressInfoKHR ): VkDeviceAddress {.stdcall.}](vkGetProc("vkGetAccelerationStructureDeviceAddressKHR")) - vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = cast[proc(device: VkDevice, pipeline: VkPipeline, firstGroup: uint32, groupCount: uint32, dataSize: uint, pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetRayTracingCaptureReplayShaderGroupHandlesKHR")) vkCmdWriteAccelerationStructuresPropertiesKHR = cast[proc(commandBuffer: VkCommandBuffer, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR , queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteAccelerationStructuresPropertiesKHR")) - vkCmdTraceRaysIndirectKHR = cast[proc(commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedBufferRegionKHR , pMissShaderBindingTable: ptr VkStridedBufferRegionKHR , pHitShaderBindingTable: ptr VkStridedBufferRegionKHR , pCallableShaderBindingTable: ptr VkStridedBufferRegionKHR , buffer: VkBuffer, offset: VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdTraceRaysIndirectKHR")) - vkGetDeviceAccelerationStructureCompatibilityKHR = cast[proc(device: VkDevice, version: ptr VkAccelerationStructureVersionKHR ): VkResult {.stdcall.}](vkGetProc("vkGetDeviceAccelerationStructureCompatibilityKHR")) + vkGetDeviceAccelerationStructureCompatibilityKHR = cast[proc(device: VkDevice, pVersionInfo: ptr VkAccelerationStructureVersionInfoKHR , pCompatibility: ptr VkAccelerationStructureCompatibilityKHR ): void {.stdcall.}](vkGetProc("vkGetDeviceAccelerationStructureCompatibilityKHR")) + vkGetAccelerationStructureBuildSizesKHR = cast[proc(device: VkDevice, buildType: VkAccelerationStructureBuildTypeKHR, pBuildInfo: ptr VkAccelerationStructureBuildGeometryInfoKHR , pMaxPrimitiveCounts: ptr uint32 , pSizeInfo: ptr VkAccelerationStructureBuildSizesInfoKHR ): void {.stdcall.}](vkGetProc("vkGetAccelerationStructureBuildSizesKHR")) + +# Load VK_KHR_ray_tracing_pipeline +proc loadVK_KHR_ray_tracing_pipeline*() = + vkCmdTraceRaysKHR = cast[proc(commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , width: uint32, height: uint32, depth: uint32): void {.stdcall.}](vkGetProc("vkCmdTraceRaysKHR")) + vkCreateRayTracingPipelinesKHR = cast[proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesKHR")) + vkCreateRayTracingPipelinesKHR = cast[proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesKHR")) + vkGetRayTracingShaderGroupHandlesKHR = cast[proc(device: VkDevice, pipeline: VkPipeline, firstGroup: uint32, groupCount: uint32, dataSize: uint, pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetRayTracingShaderGroupHandlesKHR")) + vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = cast[proc(device: VkDevice, pipeline: VkPipeline, firstGroup: uint32, groupCount: uint32, dataSize: uint, pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetRayTracingCaptureReplayShaderGroupHandlesKHR")) + vkCmdTraceRaysIndirectKHR = cast[proc(commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , indirectDeviceAddress: VkDeviceAddress): void {.stdcall.}](vkGetProc("vkCmdTraceRaysIndirectKHR")) + vkGetRayTracingShaderGroupStackSizeKHR = cast[proc(device: VkDevice, pipeline: VkPipeline, group: uint32, groupShader: VkShaderGroupShaderKHR): VkDeviceSize {.stdcall.}](vkGetProc("vkGetRayTracingShaderGroupStackSizeKHR")) + vkCmdSetRayTracingPipelineStackSizeKHR = cast[proc(commandBuffer: VkCommandBuffer, pipelineStackSize: uint32): void {.stdcall.}](vkGetProc("vkCmdSetRayTracingPipelineStackSizeKHR")) # Load VK_EXT_image_drm_format_modifier proc loadVK_EXT_image_drm_format_modifier*() = @@ -10697,12 +19356,16 @@ proc loadVK_NV_shading_rate_image*() = # Load VK_NV_ray_tracing proc loadVK_NV_ray_tracing*() = vkCreateAccelerationStructureNV = cast[proc(device: VkDevice, pCreateInfo: ptr VkAccelerationStructureCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pAccelerationStructure: ptr VkAccelerationStructureNV ): VkResult {.stdcall.}](vkGetProc("vkCreateAccelerationStructureNV")) + vkDestroyAccelerationStructureNV = cast[proc(device: VkDevice, accelerationStructure: VkAccelerationStructureNV, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyAccelerationStructureNV")) vkGetAccelerationStructureMemoryRequirementsNV = cast[proc(device: VkDevice, pInfo: ptr VkAccelerationStructureMemoryRequirementsInfoNV , pMemoryRequirements: ptr VkMemoryRequirements2KHR ): void {.stdcall.}](vkGetProc("vkGetAccelerationStructureMemoryRequirementsNV")) - vkCmdBuildAccelerationStructureNV = cast[proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkAccelerationStructureInfoNV , instanceData: VkBuffer, instanceOffset: VkDeviceSize, update: VkBool32, dst: VkAccelerationStructureKHR, src: VkAccelerationStructureKHR, scratch: VkBuffer, scratchOffset: VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdBuildAccelerationStructureNV")) - vkCmdCopyAccelerationStructureNV = cast[proc(commandBuffer: VkCommandBuffer, dst: VkAccelerationStructureKHR, src: VkAccelerationStructureKHR, mode: VkCopyAccelerationStructureModeKHR): void {.stdcall.}](vkGetProc("vkCmdCopyAccelerationStructureNV")) + vkBindAccelerationStructureMemoryNV = cast[proc(device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindAccelerationStructureMemoryInfoNV ): VkResult {.stdcall.}](vkGetProc("vkBindAccelerationStructureMemoryNV")) + vkCmdBuildAccelerationStructureNV = cast[proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkAccelerationStructureInfoNV , instanceData: VkBuffer, instanceOffset: VkDeviceSize, update: VkBool32, dst: VkAccelerationStructureNV, src: VkAccelerationStructureNV, scratch: VkBuffer, scratchOffset: VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdBuildAccelerationStructureNV")) + vkCmdCopyAccelerationStructureNV = cast[proc(commandBuffer: VkCommandBuffer, dst: VkAccelerationStructureNV, src: VkAccelerationStructureNV, mode: VkCopyAccelerationStructureModeKHR): void {.stdcall.}](vkGetProc("vkCmdCopyAccelerationStructureNV")) vkCmdTraceRaysNV = cast[proc(commandBuffer: VkCommandBuffer, raygenShaderBindingTableBuffer: VkBuffer, raygenShaderBindingOffset: VkDeviceSize, missShaderBindingTableBuffer: VkBuffer, missShaderBindingOffset: VkDeviceSize, missShaderBindingStride: VkDeviceSize, hitShaderBindingTableBuffer: VkBuffer, hitShaderBindingOffset: VkDeviceSize, hitShaderBindingStride: VkDeviceSize, callableShaderBindingTableBuffer: VkBuffer, callableShaderBindingOffset: VkDeviceSize, callableShaderBindingStride: VkDeviceSize, width: uint32, height: uint32, depth: uint32): void {.stdcall.}](vkGetProc("vkCmdTraceRaysNV")) vkCreateRayTracingPipelinesNV = cast[proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesNV")) - vkGetAccelerationStructureHandleNV = cast[proc(device: VkDevice, accelerationStructure: VkAccelerationStructureKHR, dataSize: uint, pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetAccelerationStructureHandleNV")) + vkCreateRayTracingPipelinesNV = cast[proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesNV")) + vkGetAccelerationStructureHandleNV = cast[proc(device: VkDevice, accelerationStructure: VkAccelerationStructureNV, dataSize: uint, pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetAccelerationStructureHandleNV")) + vkCmdWriteAccelerationStructuresPropertiesNV = cast[proc(commandBuffer: VkCommandBuffer, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureNV , queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteAccelerationStructuresPropertiesNV")) vkCompileDeferredNV = cast[proc(device: VkDevice, pipeline: VkPipeline, shader: uint32): VkResult {.stdcall.}](vkGetProc("vkCompileDeferredNV")) # Load VK_EXT_external_memory_host @@ -10713,11 +19376,6 @@ proc loadVK_EXT_external_memory_host*() = proc loadVK_AMD_buffer_marker*() = vkCmdWriteBufferMarkerAMD = cast[proc(commandBuffer: VkCommandBuffer, pipelineStage: VkPipelineStageFlagBits, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, marker: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteBufferMarkerAMD")) -# Load VK_EXT_calibrated_timestamps -proc loadVK_EXT_calibrated_timestamps*() = - vkGetPhysicalDeviceCalibrateableTimeDomainsEXT = cast[proc(physicalDevice: VkPhysicalDevice, pTimeDomainCount: ptr uint32 , pTimeDomains: ptr VkTimeDomainEXT ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceCalibrateableTimeDomainsEXT")) - vkGetCalibratedTimestampsEXT = cast[proc(device: VkDevice, timestampCount: uint32, pTimestampInfos: ptr VkCalibratedTimestampInfoEXT , pTimestamps: ptr uint64 , pMaxDeviation: ptr uint64 ): VkResult {.stdcall.}](vkGetProc("vkGetCalibratedTimestampsEXT")) - # Load VK_NV_mesh_shader proc loadVK_NV_mesh_shader*() = vkCmdDrawMeshTasksNV = cast[proc(commandBuffer: VkCommandBuffer, taskCount: uint32, firstTask: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksNV")) @@ -10726,6 +19384,7 @@ proc loadVK_NV_mesh_shader*() = # Load VK_NV_scissor_exclusive proc loadVK_NV_scissor_exclusive*() = + vkCmdSetExclusiveScissorEnableNV = cast[proc(commandBuffer: VkCommandBuffer, firstExclusiveScissor: uint32, exclusiveScissorCount: uint32, pExclusiveScissorEnables: ptr VkBool32 ): void {.stdcall.}](vkGetProc("vkCmdSetExclusiveScissorEnableNV")) vkCmdSetExclusiveScissorNV = cast[proc(commandBuffer: VkCommandBuffer, firstExclusiveScissor: uint32, exclusiveScissorCount: uint32, pExclusiveScissors: ptr VkRect2D ): void {.stdcall.}](vkGetProc("vkCmdSetExclusiveScissorNV")) # Load VK_NV_device_diagnostic_checkpoints @@ -10757,9 +19416,19 @@ proc loadVK_FUCHSIA_imagepipe_surface*() = proc loadVK_EXT_metal_surface*() = vkCreateMetalSurfaceEXT = cast[proc(instance: VkInstance, pCreateInfo: ptr VkMetalSurfaceCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateMetalSurfaceEXT")) -# Load VK_EXT_tooling_info -proc loadVK_EXT_tooling_info*() = - vkGetPhysicalDeviceToolPropertiesEXT = cast[proc(physicalDevice: VkPhysicalDevice, pToolCount: ptr uint32 , pToolProperties: ptr VkPhysicalDeviceToolPropertiesEXT ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceToolPropertiesEXT")) +# Load VK_KHR_fragment_shading_rate +proc loadVK_KHR_fragment_shading_rate*() = + vkGetPhysicalDeviceFragmentShadingRatesKHR = cast[proc(physicalDevice: VkPhysicalDevice, pFragmentShadingRateCount: ptr uint32 , pFragmentShadingRates: ptr VkPhysicalDeviceFragmentShadingRateKHR ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFragmentShadingRatesKHR")) + vkCmdSetFragmentShadingRateKHR = cast[proc(commandBuffer: VkCommandBuffer, pFragmentSize: ptr VkExtent2D , combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): void {.stdcall.}](vkGetProc("vkCmdSetFragmentShadingRateKHR")) + +# Load VK_KHR_dynamic_rendering_local_read +proc loadVK_KHR_dynamic_rendering_local_read*() = + vkCmdSetRenderingAttachmentLocationsKHR = cast[proc(commandBuffer: VkCommandBuffer, pLocationInfo: ptr VkRenderingAttachmentLocationInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdSetRenderingAttachmentLocationsKHR")) + vkCmdSetRenderingInputAttachmentIndicesKHR = cast[proc(commandBuffer: VkCommandBuffer, pLocationInfo: ptr VkRenderingInputAttachmentIndexInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdSetRenderingInputAttachmentIndicesKHR")) + +# Load VK_KHR_present_wait +proc loadVK_KHR_present_wait*() = + vkWaitForPresentKHR = cast[proc(device: VkDevice, swapchain: VkSwapchainKHR, presentId: uint64, timeout: uint64): VkResult {.stdcall.}](vkGetProc("vkWaitForPresentKHR")) # Load VK_NV_cooperative_matrix proc loadVK_NV_cooperative_matrix*() = @@ -10781,25 +19450,6 @@ proc loadVK_EXT_full_screen_exclusive*() = proc loadVK_EXT_headless_surface*() = vkCreateHeadlessSurfaceEXT = cast[proc(instance: VkInstance, pCreateInfo: ptr VkHeadlessSurfaceCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateHeadlessSurfaceEXT")) -# Load VK_EXT_line_rasterization -proc loadVK_EXT_line_rasterization*() = - vkCmdSetLineStippleEXT = cast[proc(commandBuffer: VkCommandBuffer, lineStippleFactor: uint32, lineStipplePattern: uint16): void {.stdcall.}](vkGetProc("vkCmdSetLineStippleEXT")) - -# Load VK_EXT_extended_dynamic_state -proc loadVK_EXT_extended_dynamic_state*() = - vkCmdSetCullModeEXT = cast[proc(commandBuffer: VkCommandBuffer, cullMode: VkCullModeFlags): void {.stdcall.}](vkGetProc("vkCmdSetCullModeEXT")) - vkCmdSetFrontFaceEXT = cast[proc(commandBuffer: VkCommandBuffer, frontFace: VkFrontFace): void {.stdcall.}](vkGetProc("vkCmdSetFrontFaceEXT")) - vkCmdSetPrimitiveTopologyEXT = cast[proc(commandBuffer: VkCommandBuffer, primitiveTopology: VkPrimitiveTopology): void {.stdcall.}](vkGetProc("vkCmdSetPrimitiveTopologyEXT")) - vkCmdSetViewportWithCountEXT = cast[proc(commandBuffer: VkCommandBuffer, viewportCount: uint32, pViewports: ptr VkViewport ): void {.stdcall.}](vkGetProc("vkCmdSetViewportWithCountEXT")) - vkCmdSetScissorWithCountEXT = cast[proc(commandBuffer: VkCommandBuffer, scissorCount: uint32, pScissors: ptr VkRect2D ): void {.stdcall.}](vkGetProc("vkCmdSetScissorWithCountEXT")) - vkCmdBindVertexBuffers2EXT = cast[proc(commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer , pOffsets: ptr VkDeviceSize , pSizes: ptr VkDeviceSize , pStrides: ptr VkDeviceSize ): void {.stdcall.}](vkGetProc("vkCmdBindVertexBuffers2EXT")) - vkCmdSetDepthTestEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, depthTestEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthTestEnableEXT")) - vkCmdSetDepthWriteEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, depthWriteEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthWriteEnableEXT")) - vkCmdSetDepthCompareOpEXT = cast[proc(commandBuffer: VkCommandBuffer, depthCompareOp: VkCompareOp): void {.stdcall.}](vkGetProc("vkCmdSetDepthCompareOpEXT")) - vkCmdSetDepthBoundsTestEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, depthBoundsTestEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthBoundsTestEnableEXT")) - vkCmdSetStencilTestEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, stencilTestEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetStencilTestEnableEXT")) - vkCmdSetStencilOpEXT = cast[proc(commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, failOp: VkStencilOp, passOp: VkStencilOp, depthFailOp: VkStencilOp, compareOp: VkCompareOp): void {.stdcall.}](vkGetProc("vkCmdSetStencilOpEXT")) - # Load VK_KHR_deferred_host_operations proc loadVK_KHR_deferred_host_operations*() = vkCreateDeferredOperationKHR = cast[proc(device: VkDevice, pAllocator: ptr VkAllocationCallbacks , pDeferredOperation: ptr VkDeferredOperationKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateDeferredOperationKHR")) @@ -10814,6 +19464,22 @@ proc loadVK_KHR_pipeline_executable_properties*() = vkGetPipelineExecutableStatisticsKHR = cast[proc(device: VkDevice, pExecutableInfo: ptr VkPipelineExecutableInfoKHR , pStatisticCount: ptr uint32 , pStatistics: ptr VkPipelineExecutableStatisticKHR ): VkResult {.stdcall.}](vkGetProc("vkGetPipelineExecutableStatisticsKHR")) vkGetPipelineExecutableInternalRepresentationsKHR = cast[proc(device: VkDevice, pExecutableInfo: ptr VkPipelineExecutableInfoKHR , pInternalRepresentationCount: ptr uint32 , pInternalRepresentations: ptr VkPipelineExecutableInternalRepresentationKHR ): VkResult {.stdcall.}](vkGetProc("vkGetPipelineExecutableInternalRepresentationsKHR")) +# Load VK_EXT_host_image_copy +proc loadVK_EXT_host_image_copy*() = + vkCopyMemoryToImageEXT = cast[proc(device: VkDevice, pCopyMemoryToImageInfo: ptr VkCopyMemoryToImageInfoEXT ): VkResult {.stdcall.}](vkGetProc("vkCopyMemoryToImageEXT")) + vkCopyImageToMemoryEXT = cast[proc(device: VkDevice, pCopyImageToMemoryInfo: ptr VkCopyImageToMemoryInfoEXT ): VkResult {.stdcall.}](vkGetProc("vkCopyImageToMemoryEXT")) + vkCopyImageToImageEXT = cast[proc(device: VkDevice, pCopyImageToImageInfo: ptr VkCopyImageToImageInfoEXT ): VkResult {.stdcall.}](vkGetProc("vkCopyImageToImageEXT")) + vkTransitionImageLayoutEXT = cast[proc(device: VkDevice, transitionCount: uint32, pTransitions: ptr VkHostImageLayoutTransitionInfoEXT ): VkResult {.stdcall.}](vkGetProc("vkTransitionImageLayoutEXT")) + +# Load VK_KHR_map_memory2 +proc loadVK_KHR_map_memory2*() = + vkMapMemory2KHR = cast[proc(device: VkDevice, pMemoryMapInfo: ptr VkMemoryMapInfoKHR , ppData: ptr pointer ): VkResult {.stdcall.}](vkGetProc("vkMapMemory2KHR")) + vkUnmapMemory2KHR = cast[proc(device: VkDevice, pMemoryUnmapInfo: ptr VkMemoryUnmapInfoKHR ): VkResult {.stdcall.}](vkGetProc("vkUnmapMemory2KHR")) + +# Load VK_EXT_swapchain_maintenance1 +proc loadVK_EXT_swapchain_maintenance1*() = + vkReleaseSwapchainImagesEXT = cast[proc(device: VkDevice, pReleaseInfo: ptr VkReleaseSwapchainImagesInfoEXT ): VkResult {.stdcall.}](vkGetProc("vkReleaseSwapchainImagesEXT")) + # Load VK_NV_device_generated_commands proc loadVK_NV_device_generated_commands*() = vkGetGeneratedCommandsMemoryRequirementsNV = cast[proc(device: VkDevice, pInfo: ptr VkGeneratedCommandsMemoryRequirementsInfoNV , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.stdcall.}](vkGetProc("vkGetGeneratedCommandsMemoryRequirementsNV")) @@ -10823,19 +19489,373 @@ proc loadVK_NV_device_generated_commands*() = vkCreateIndirectCommandsLayoutNV = cast[proc(device: VkDevice, pCreateInfo: ptr VkIndirectCommandsLayoutCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pIndirectCommandsLayout: ptr VkIndirectCommandsLayoutNV ): VkResult {.stdcall.}](vkGetProc("vkCreateIndirectCommandsLayoutNV")) vkDestroyIndirectCommandsLayoutNV = cast[proc(device: VkDevice, indirectCommandsLayout: VkIndirectCommandsLayoutNV, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyIndirectCommandsLayoutNV")) -# Load VK_EXT_private_data -proc loadVK_EXT_private_data*() = - vkCreatePrivateDataSlotEXT = cast[proc(device: VkDevice, pCreateInfo: ptr VkPrivateDataSlotCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pPrivateDataSlot: ptr VkPrivateDataSlotEXT ): VkResult {.stdcall.}](vkGetProc("vkCreatePrivateDataSlotEXT")) - vkDestroyPrivateDataSlotEXT = cast[proc(device: VkDevice, privateDataSlot: VkPrivateDataSlotEXT, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyPrivateDataSlotEXT")) - vkSetPrivateDataEXT = cast[proc(device: VkDevice, objectType: VkObjectType, objectHandle: uint64, privateDataSlot: VkPrivateDataSlotEXT, data: uint64): VkResult {.stdcall.}](vkGetProc("vkSetPrivateDataEXT")) - vkGetPrivateDataEXT = cast[proc(device: VkDevice, objectType: VkObjectType, objectHandle: uint64, privateDataSlot: VkPrivateDataSlotEXT, pData: ptr uint64 ): void {.stdcall.}](vkGetProc("vkGetPrivateDataEXT")) +# Load VK_EXT_depth_bias_control +proc loadVK_EXT_depth_bias_control*() = + vkCmdSetDepthBias2EXT = cast[proc(commandBuffer: VkCommandBuffer, pDepthBiasInfo: ptr VkDepthBiasInfoEXT ): void {.stdcall.}](vkGetProc("vkCmdSetDepthBias2EXT")) + +# Load VK_EXT_acquire_drm_display +proc loadVK_EXT_acquire_drm_display*() = + vkAcquireDrmDisplayEXT = cast[proc(physicalDevice: VkPhysicalDevice, drmFd: int32, display: VkDisplayKHR): VkResult {.stdcall.}](vkGetProc("vkAcquireDrmDisplayEXT")) + vkGetDrmDisplayEXT = cast[proc(physicalDevice: VkPhysicalDevice, drmFd: int32, connectorId: uint32, display: ptr VkDisplayKHR ): VkResult {.stdcall.}](vkGetProc("vkGetDrmDisplayEXT")) + +# Load VK_KHR_video_encode_queue +proc loadVK_KHR_video_encode_queue*() = + vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR = cast[proc(physicalDevice: VkPhysicalDevice, pQualityLevelInfo: ptr VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR , pQualityLevelProperties: ptr VkVideoEncodeQualityLevelPropertiesKHR ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR")) + vkGetEncodedVideoSessionParametersKHR = cast[proc(device: VkDevice, pVideoSessionParametersInfo: ptr VkVideoEncodeSessionParametersGetInfoKHR , pFeedbackInfo: ptr VkVideoEncodeSessionParametersFeedbackInfoKHR , pDataSize: ptr uint , pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetEncodedVideoSessionParametersKHR")) + vkCmdEncodeVideoKHR = cast[proc(commandBuffer: VkCommandBuffer, pEncodeInfo: ptr VkVideoEncodeInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdEncodeVideoKHR")) + +# Load VK_NV_cuda_kernel_launch +proc loadVK_NV_cuda_kernel_launch*() = + vkCreateCudaModuleNV = cast[proc(device: VkDevice, pCreateInfo: ptr VkCudaModuleCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pModule: ptr VkCudaModuleNV ): VkResult {.stdcall.}](vkGetProc("vkCreateCudaModuleNV")) + vkGetCudaModuleCacheNV = cast[proc(device: VkDevice, module: VkCudaModuleNV, pCacheSize: ptr uint , pCacheData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetCudaModuleCacheNV")) + vkCreateCudaFunctionNV = cast[proc(device: VkDevice, pCreateInfo: ptr VkCudaFunctionCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pFunction: ptr VkCudaFunctionNV ): VkResult {.stdcall.}](vkGetProc("vkCreateCudaFunctionNV")) + vkDestroyCudaModuleNV = cast[proc(device: VkDevice, module: VkCudaModuleNV, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyCudaModuleNV")) + vkDestroyCudaFunctionNV = cast[proc(device: VkDevice, function: VkCudaFunctionNV, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyCudaFunctionNV")) + vkCmdCudaLaunchKernelNV = cast[proc(commandBuffer: VkCommandBuffer, pLaunchInfo: ptr VkCudaLaunchInfoNV ): void {.stdcall.}](vkGetProc("vkCmdCudaLaunchKernelNV")) + +# Load VK_KHR_object_refresh +proc loadVK_KHR_object_refresh*() = + vkCmdRefreshObjectsKHR = cast[proc(commandBuffer: VkCommandBuffer, pRefreshObjects: ptr VkRefreshObjectListKHR ): void {.stdcall.}](vkGetProc("vkCmdRefreshObjectsKHR")) + vkGetPhysicalDeviceRefreshableObjectTypesKHR = cast[proc(physicalDevice: VkPhysicalDevice, pRefreshableObjectTypeCount: ptr uint32 , pRefreshableObjectTypes: ptr VkObjectType ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceRefreshableObjectTypesKHR")) + +# Load VK_EXT_metal_objects +proc loadVK_EXT_metal_objects*() = + vkExportMetalObjectsEXT = cast[proc(device: VkDevice, pMetalObjectsInfo: ptr VkExportMetalObjectsInfoEXT ): void {.stdcall.}](vkGetProc("vkExportMetalObjectsEXT")) + +# Load VK_KHR_synchronization2 +proc loadVK_KHR_synchronization2*() = + vkCmdWriteBufferMarker2AMD = cast[proc(commandBuffer: VkCommandBuffer, stage: VkPipelineStageFlags2, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, marker: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteBufferMarker2AMD")) + vkGetQueueCheckpointData2NV = cast[proc(queue: VkQueue, pCheckpointDataCount: ptr uint32 , pCheckpointData: ptr VkCheckpointData2NV ): void {.stdcall.}](vkGetProc("vkGetQueueCheckpointData2NV")) + +# Load VK_EXT_descriptor_buffer +proc loadVK_EXT_descriptor_buffer*() = + vkGetDescriptorSetLayoutSizeEXT = cast[proc(device: VkDevice, layout: VkDescriptorSetLayout, pLayoutSizeInBytes: ptr VkDeviceSize ): void {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutSizeEXT")) + vkGetDescriptorSetLayoutBindingOffsetEXT = cast[proc(device: VkDevice, layout: VkDescriptorSetLayout, binding: uint32, pOffset: ptr VkDeviceSize ): void {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutBindingOffsetEXT")) + vkGetDescriptorEXT = cast[proc(device: VkDevice, pDescriptorInfo: ptr VkDescriptorGetInfoEXT , dataSize: uint, pDescriptor: pointer ): void {.stdcall.}](vkGetProc("vkGetDescriptorEXT")) + vkCmdBindDescriptorBuffersEXT = cast[proc(commandBuffer: VkCommandBuffer, bufferCount: uint32, pBindingInfos: ptr VkDescriptorBufferBindingInfoEXT ): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorBuffersEXT")) + vkCmdSetDescriptorBufferOffsetsEXT = cast[proc(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, firstSet: uint32, setCount: uint32, pBufferIndices: ptr uint32 , pOffsets: ptr VkDeviceSize ): void {.stdcall.}](vkGetProc("vkCmdSetDescriptorBufferOffsetsEXT")) + vkCmdBindDescriptorBufferEmbeddedSamplersEXT = cast[proc(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, set: uint32): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorBufferEmbeddedSamplersEXT")) + vkGetBufferOpaqueCaptureDescriptorDataEXT = cast[proc(device: VkDevice, pInfo: ptr VkBufferCaptureDescriptorDataInfoEXT , pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetBufferOpaqueCaptureDescriptorDataEXT")) + vkGetImageOpaqueCaptureDescriptorDataEXT = cast[proc(device: VkDevice, pInfo: ptr VkImageCaptureDescriptorDataInfoEXT , pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetImageOpaqueCaptureDescriptorDataEXT")) + vkGetImageViewOpaqueCaptureDescriptorDataEXT = cast[proc(device: VkDevice, pInfo: ptr VkImageViewCaptureDescriptorDataInfoEXT , pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetImageViewOpaqueCaptureDescriptorDataEXT")) + vkGetSamplerOpaqueCaptureDescriptorDataEXT = cast[proc(device: VkDevice, pInfo: ptr VkSamplerCaptureDescriptorDataInfoEXT , pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetSamplerOpaqueCaptureDescriptorDataEXT")) + vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT = cast[proc(device: VkDevice, pInfo: ptr VkAccelerationStructureCaptureDescriptorDataInfoEXT , pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT")) + +# Load VK_NV_fragment_shading_rate_enums +proc loadVK_NV_fragment_shading_rate_enums*() = + vkCmdSetFragmentShadingRateEnumNV = cast[proc(commandBuffer: VkCommandBuffer, shadingRate: VkFragmentShadingRateNV, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): void {.stdcall.}](vkGetProc("vkCmdSetFragmentShadingRateEnumNV")) + +# Load VK_EXT_mesh_shader +proc loadVK_EXT_mesh_shader*() = + vkCmdDrawMeshTasksEXT = cast[proc(commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksEXT")) + vkCmdDrawMeshTasksIndirectEXT = cast[proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksIndirectEXT")) + vkCmdDrawMeshTasksIndirectCountEXT = cast[proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksIndirectCountEXT")) + +# Load VK_EXT_device_fault +proc loadVK_EXT_device_fault*() = + vkGetDeviceFaultInfoEXT = cast[proc(device: VkDevice, pFaultCounts: ptr VkDeviceFaultCountsEXT , pFaultInfo: ptr VkDeviceFaultInfoEXT ): VkResult {.stdcall.}](vkGetProc("vkGetDeviceFaultInfoEXT")) + +# Load VK_NV_acquire_winrt_display +proc loadVK_NV_acquire_winrt_display*() = + vkAcquireWinrtDisplayNV = cast[proc(physicalDevice: VkPhysicalDevice, display: VkDisplayKHR): VkResult {.stdcall.}](vkGetProc("vkAcquireWinrtDisplayNV")) + vkGetWinrtDisplayNV = cast[proc(physicalDevice: VkPhysicalDevice, deviceRelativeId: uint32, pDisplay: ptr VkDisplayKHR ): VkResult {.stdcall.}](vkGetProc("vkGetWinrtDisplayNV")) # Load VK_EXT_directfb_surface proc loadVK_EXT_directfb_surface*() = vkCreateDirectFBSurfaceEXT = cast[proc(instance: VkInstance, pCreateInfo: ptr VkDirectFBSurfaceCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateDirectFBSurfaceEXT")) vkGetPhysicalDeviceDirectFBPresentationSupportEXT = cast[proc(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, dfb: ptr IDirectFB ): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceDirectFBPresentationSupportEXT")) -proc vkInit*(load1_0: bool = true, load1_1: bool = true): bool = +# Load VK_EXT_vertex_input_dynamic_state +proc loadVK_EXT_vertex_input_dynamic_state*() = + vkCmdSetVertexInputEXT = cast[proc(commandBuffer: VkCommandBuffer, vertexBindingDescriptionCount: uint32, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription2EXT , vertexAttributeDescriptionCount: uint32, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription2EXT ): void {.stdcall.}](vkGetProc("vkCmdSetVertexInputEXT")) + +# Load VK_FUCHSIA_external_memory +proc loadVK_FUCHSIA_external_memory*() = + vkGetMemoryZirconHandleFUCHSIA = cast[proc(device: VkDevice, pGetZirconHandleInfo: ptr VkMemoryGetZirconHandleInfoFUCHSIA , pZirconHandle: ptr zx_handle_t ): VkResult {.stdcall.}](vkGetProc("vkGetMemoryZirconHandleFUCHSIA")) + vkGetMemoryZirconHandlePropertiesFUCHSIA = cast[proc(device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, zirconHandle: zx_handle_t, pMemoryZirconHandleProperties: ptr VkMemoryZirconHandlePropertiesFUCHSIA ): VkResult {.stdcall.}](vkGetProc("vkGetMemoryZirconHandlePropertiesFUCHSIA")) + +# Load VK_FUCHSIA_external_semaphore +proc loadVK_FUCHSIA_external_semaphore*() = + vkImportSemaphoreZirconHandleFUCHSIA = cast[proc(device: VkDevice, pImportSemaphoreZirconHandleInfo: ptr VkImportSemaphoreZirconHandleInfoFUCHSIA ): VkResult {.stdcall.}](vkGetProc("vkImportSemaphoreZirconHandleFUCHSIA")) + vkGetSemaphoreZirconHandleFUCHSIA = cast[proc(device: VkDevice, pGetZirconHandleInfo: ptr VkSemaphoreGetZirconHandleInfoFUCHSIA , pZirconHandle: ptr zx_handle_t ): VkResult {.stdcall.}](vkGetProc("vkGetSemaphoreZirconHandleFUCHSIA")) + +# Load VK_FUCHSIA_buffer_collection +proc loadVK_FUCHSIA_buffer_collection*() = + vkCreateBufferCollectionFUCHSIA = cast[proc(device: VkDevice, pCreateInfo: ptr VkBufferCollectionCreateInfoFUCHSIA , pAllocator: ptr VkAllocationCallbacks , pCollection: ptr VkBufferCollectionFUCHSIA ): VkResult {.stdcall.}](vkGetProc("vkCreateBufferCollectionFUCHSIA")) + vkSetBufferCollectionImageConstraintsFUCHSIA = cast[proc(device: VkDevice, collection: VkBufferCollectionFUCHSIA, pImageConstraintsInfo: ptr VkImageConstraintsInfoFUCHSIA ): VkResult {.stdcall.}](vkGetProc("vkSetBufferCollectionImageConstraintsFUCHSIA")) + vkSetBufferCollectionBufferConstraintsFUCHSIA = cast[proc(device: VkDevice, collection: VkBufferCollectionFUCHSIA, pBufferConstraintsInfo: ptr VkBufferConstraintsInfoFUCHSIA ): VkResult {.stdcall.}](vkGetProc("vkSetBufferCollectionBufferConstraintsFUCHSIA")) + vkDestroyBufferCollectionFUCHSIA = cast[proc(device: VkDevice, collection: VkBufferCollectionFUCHSIA, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyBufferCollectionFUCHSIA")) + vkGetBufferCollectionPropertiesFUCHSIA = cast[proc(device: VkDevice, collection: VkBufferCollectionFUCHSIA, pProperties: ptr VkBufferCollectionPropertiesFUCHSIA ): VkResult {.stdcall.}](vkGetProc("vkGetBufferCollectionPropertiesFUCHSIA")) + +# Load VK_HUAWEI_subpass_shading +proc loadVK_HUAWEI_subpass_shading*() = + vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = cast[proc(device: VkDevice, renderpass: VkRenderPass, pMaxWorkgroupSize: ptr VkExtent2D ): VkResult {.stdcall.}](vkGetProc("vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI")) + vkCmdSubpassShadingHUAWEI = cast[proc(commandBuffer: VkCommandBuffer): void {.stdcall.}](vkGetProc("vkCmdSubpassShadingHUAWEI")) + +# Load VK_HUAWEI_invocation_mask +proc loadVK_HUAWEI_invocation_mask*() = + vkCmdBindInvocationMaskHUAWEI = cast[proc(commandBuffer: VkCommandBuffer, imageView: VkImageView, imageLayout: VkImageLayout): void {.stdcall.}](vkGetProc("vkCmdBindInvocationMaskHUAWEI")) + +# Load VK_NV_external_memory_rdma +proc loadVK_NV_external_memory_rdma*() = + vkGetMemoryRemoteAddressNV = cast[proc(device: VkDevice, pMemoryGetRemoteAddressInfo: ptr VkMemoryGetRemoteAddressInfoNV , pAddress: ptr VkRemoteAddressNV ): VkResult {.stdcall.}](vkGetProc("vkGetMemoryRemoteAddressNV")) + +# Load VK_EXT_pipeline_properties +proc loadVK_EXT_pipeline_properties*() = + vkGetPipelinePropertiesEXT = cast[proc(device: VkDevice, pPipelineInfo: ptr VkPipelineInfoEXT , pPipelineProperties: ptr VkBaseOutStructure ): VkResult {.stdcall.}](vkGetProc("vkGetPipelinePropertiesEXT")) + +# Load VK_NV_external_sci_sync +proc loadVK_NV_external_sci_sync*() = + vkGetFenceSciSyncFenceNV = cast[proc(device: VkDevice, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV , pHandle: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetFenceSciSyncFenceNV")) + vkGetFenceSciSyncObjNV = cast[proc(device: VkDevice, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV , pHandle: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetFenceSciSyncObjNV")) + vkImportFenceSciSyncFenceNV = cast[proc(device: VkDevice, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV ): VkResult {.stdcall.}](vkGetProc("vkImportFenceSciSyncFenceNV")) + vkImportFenceSciSyncObjNV = cast[proc(device: VkDevice, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV ): VkResult {.stdcall.}](vkGetProc("vkImportFenceSciSyncObjNV")) + vkGetPhysicalDeviceSciSyncAttributesNV = cast[proc(physicalDevice: VkPhysicalDevice, pSciSyncAttributesInfo: ptr VkSciSyncAttributesInfoNV , pAttributes: NvSciSyncAttrList): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSciSyncAttributesNV")) + vkGetSemaphoreSciSyncObjNV = cast[proc(device: VkDevice, pGetSciSyncInfo: ptr VkSemaphoreGetSciSyncInfoNV , pHandle: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetSemaphoreSciSyncObjNV")) + vkImportSemaphoreSciSyncObjNV = cast[proc(device: VkDevice, pImportSemaphoreSciSyncInfo: ptr VkImportSemaphoreSciSyncInfoNV ): VkResult {.stdcall.}](vkGetProc("vkImportSemaphoreSciSyncObjNV")) + +# Load VK_NV_external_memory_sci_buf +proc loadVK_NV_external_memory_sci_buf*() = + vkGetMemorySciBufNV = cast[proc(device: VkDevice, pGetSciBufInfo: ptr VkMemoryGetSciBufInfoNV , pHandle: ptr NvSciBufObj ): VkResult {.stdcall.}](vkGetProc("vkGetMemorySciBufNV")) + vkGetPhysicalDeviceExternalMemorySciBufPropertiesNV = cast[proc(physicalDevice: VkPhysicalDevice, handleType: VkExternalMemoryHandleTypeFlagBits, handle: NvSciBufObj, pMemorySciBufProperties: ptr VkMemorySciBufPropertiesNV ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalMemorySciBufPropertiesNV")) + vkGetPhysicalDeviceSciBufAttributesNV = cast[proc(physicalDevice: VkPhysicalDevice, pAttributes: NvSciBufAttrList): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSciBufAttributesNV")) + +# Load VK_EXT_extended_dynamic_state2 +proc loadVK_EXT_extended_dynamic_state2*() = + vkCmdSetPatchControlPointsEXT = cast[proc(commandBuffer: VkCommandBuffer, patchControlPoints: uint32): void {.stdcall.}](vkGetProc("vkCmdSetPatchControlPointsEXT")) + vkCmdSetLogicOpEXT = cast[proc(commandBuffer: VkCommandBuffer, logicOp: VkLogicOp): void {.stdcall.}](vkGetProc("vkCmdSetLogicOpEXT")) + +# Load VK_QNX_screen_surface +proc loadVK_QNX_screen_surface*() = + vkCreateScreenSurfaceQNX = cast[proc(instance: VkInstance, pCreateInfo: ptr VkScreenSurfaceCreateInfoQNX , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateScreenSurfaceQNX")) + vkGetPhysicalDeviceScreenPresentationSupportQNX = cast[proc(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, window: ptr _screen_window ): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceScreenPresentationSupportQNX")) + +# Load VK_EXT_color_write_enable +proc loadVK_EXT_color_write_enable*() = + vkCmdSetColorWriteEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, attachmentCount: uint32, pColorWriteEnables: ptr VkBool32 ): void {.stdcall.}](vkGetProc("vkCmdSetColorWriteEnableEXT")) + +# Load VK_KHR_ray_tracing_maintenance1 +proc loadVK_KHR_ray_tracing_maintenance1*() = + vkCmdTraceRaysIndirect2KHR = cast[proc(commandBuffer: VkCommandBuffer, indirectDeviceAddress: VkDeviceAddress): void {.stdcall.}](vkGetProc("vkCmdTraceRaysIndirect2KHR")) + +# Load VK_EXT_multi_draw +proc loadVK_EXT_multi_draw*() = + vkCmdDrawMultiEXT = cast[proc(commandBuffer: VkCommandBuffer, drawCount: uint32, pVertexInfo: ptr VkMultiDrawInfoEXT , instanceCount: uint32, firstInstance: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawMultiEXT")) + vkCmdDrawMultiIndexedEXT = cast[proc(commandBuffer: VkCommandBuffer, drawCount: uint32, pIndexInfo: ptr VkMultiDrawIndexedInfoEXT , instanceCount: uint32, firstInstance: uint32, stride: uint32, pVertexOffset: ptr int32 ): void {.stdcall.}](vkGetProc("vkCmdDrawMultiIndexedEXT")) + +# Load VK_EXT_opacity_micromap +proc loadVK_EXT_opacity_micromap*() = + vkCreateMicromapEXT = cast[proc(device: VkDevice, pCreateInfo: ptr VkMicromapCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pMicromap: ptr VkMicromapEXT ): VkResult {.stdcall.}](vkGetProc("vkCreateMicromapEXT")) + vkDestroyMicromapEXT = cast[proc(device: VkDevice, micromap: VkMicromapEXT, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyMicromapEXT")) + vkCmdBuildMicromapsEXT = cast[proc(commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkMicromapBuildInfoEXT ): void {.stdcall.}](vkGetProc("vkCmdBuildMicromapsEXT")) + vkBuildMicromapsEXT = cast[proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, infoCount: uint32, pInfos: ptr VkMicromapBuildInfoEXT ): VkResult {.stdcall.}](vkGetProc("vkBuildMicromapsEXT")) + vkCopyMicromapEXT = cast[proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMicromapInfoEXT ): VkResult {.stdcall.}](vkGetProc("vkCopyMicromapEXT")) + vkCopyMicromapToMemoryEXT = cast[proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMicromapToMemoryInfoEXT ): VkResult {.stdcall.}](vkGetProc("vkCopyMicromapToMemoryEXT")) + vkCopyMemoryToMicromapEXT = cast[proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMemoryToMicromapInfoEXT ): VkResult {.stdcall.}](vkGetProc("vkCopyMemoryToMicromapEXT")) + vkWriteMicromapsPropertiesEXT = cast[proc(device: VkDevice, micromapCount: uint32, pMicromaps: ptr VkMicromapEXT , queryType: VkQueryType, dataSize: uint, pData: pointer , stride: uint): VkResult {.stdcall.}](vkGetProc("vkWriteMicromapsPropertiesEXT")) + vkCmdCopyMicromapEXT = cast[proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMicromapInfoEXT ): void {.stdcall.}](vkGetProc("vkCmdCopyMicromapEXT")) + vkCmdCopyMicromapToMemoryEXT = cast[proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMicromapToMemoryInfoEXT ): void {.stdcall.}](vkGetProc("vkCmdCopyMicromapToMemoryEXT")) + vkCmdCopyMemoryToMicromapEXT = cast[proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMemoryToMicromapInfoEXT ): void {.stdcall.}](vkGetProc("vkCmdCopyMemoryToMicromapEXT")) + vkCmdWriteMicromapsPropertiesEXT = cast[proc(commandBuffer: VkCommandBuffer, micromapCount: uint32, pMicromaps: ptr VkMicromapEXT , queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteMicromapsPropertiesEXT")) + vkGetDeviceMicromapCompatibilityEXT = cast[proc(device: VkDevice, pVersionInfo: ptr VkMicromapVersionInfoEXT , pCompatibility: ptr VkAccelerationStructureCompatibilityKHR ): void {.stdcall.}](vkGetProc("vkGetDeviceMicromapCompatibilityEXT")) + vkGetMicromapBuildSizesEXT = cast[proc(device: VkDevice, buildType: VkAccelerationStructureBuildTypeKHR, pBuildInfo: ptr VkMicromapBuildInfoEXT , pSizeInfo: ptr VkMicromapBuildSizesInfoEXT ): void {.stdcall.}](vkGetProc("vkGetMicromapBuildSizesEXT")) + +# Load VK_HUAWEI_cluster_culling_shader +proc loadVK_HUAWEI_cluster_culling_shader*() = + vkCmdDrawClusterHUAWEI = cast[proc(commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawClusterHUAWEI")) + vkCmdDrawClusterIndirectHUAWEI = cast[proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdDrawClusterIndirectHUAWEI")) + +# Load VK_EXT_pageable_device_local_memory +proc loadVK_EXT_pageable_device_local_memory*() = + vkSetDeviceMemoryPriorityEXT = cast[proc(device: VkDevice, memory: VkDeviceMemory, priority: float32): void {.stdcall.}](vkGetProc("vkSetDeviceMemoryPriorityEXT")) + +# Load VK_VALVE_descriptor_set_host_mapping +proc loadVK_VALVE_descriptor_set_host_mapping*() = + vkGetDescriptorSetLayoutHostMappingInfoVALVE = cast[proc(device: VkDevice, pBindingReference: ptr VkDescriptorSetBindingReferenceVALVE , pHostMapping: ptr VkDescriptorSetLayoutHostMappingInfoVALVE ): void {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutHostMappingInfoVALVE")) + vkGetDescriptorSetHostMappingVALVE = cast[proc(device: VkDevice, descriptorSet: VkDescriptorSet, ppData: ptr pointer ): void {.stdcall.}](vkGetProc("vkGetDescriptorSetHostMappingVALVE")) + +# Load VK_NV_copy_memory_indirect +proc loadVK_NV_copy_memory_indirect*() = + vkCmdCopyMemoryIndirectNV = cast[proc(commandBuffer: VkCommandBuffer, copyBufferAddress: VkDeviceAddress, copyCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdCopyMemoryIndirectNV")) + vkCmdCopyMemoryToImageIndirectNV = cast[proc(commandBuffer: VkCommandBuffer, copyBufferAddress: VkDeviceAddress, copyCount: uint32, stride: uint32, dstImage: VkImage, dstImageLayout: VkImageLayout, pImageSubresources: ptr VkImageSubresourceLayers ): void {.stdcall.}](vkGetProc("vkCmdCopyMemoryToImageIndirectNV")) + +# Load VK_NV_memory_decompression +proc loadVK_NV_memory_decompression*() = + vkCmdDecompressMemoryNV = cast[proc(commandBuffer: VkCommandBuffer, decompressRegionCount: uint32, pDecompressMemoryRegions: ptr VkDecompressMemoryRegionNV ): void {.stdcall.}](vkGetProc("vkCmdDecompressMemoryNV")) + vkCmdDecompressMemoryIndirectCountNV = cast[proc(commandBuffer: VkCommandBuffer, indirectCommandsAddress: VkDeviceAddress, indirectCommandsCountAddress: VkDeviceAddress, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDecompressMemoryIndirectCountNV")) + +# Load VK_NV_device_generated_commands_compute +proc loadVK_NV_device_generated_commands_compute*() = + vkGetPipelineIndirectMemoryRequirementsNV = cast[proc(device: VkDevice, pCreateInfo: ptr VkComputePipelineCreateInfo , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.stdcall.}](vkGetProc("vkGetPipelineIndirectMemoryRequirementsNV")) + vkCmdUpdatePipelineIndirectBufferNV = cast[proc(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline): void {.stdcall.}](vkGetProc("vkCmdUpdatePipelineIndirectBufferNV")) + vkGetPipelineIndirectDeviceAddressNV = cast[proc(device: VkDevice, pInfo: ptr VkPipelineIndirectDeviceAddressInfoNV ): VkDeviceAddress {.stdcall.}](vkGetProc("vkGetPipelineIndirectDeviceAddressNV")) + +# Load VK_EXT_extended_dynamic_state3 +proc loadVK_EXT_extended_dynamic_state3*() = + vkCmdSetDepthClampEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, depthClampEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthClampEnableEXT")) + vkCmdSetPolygonModeEXT = cast[proc(commandBuffer: VkCommandBuffer, polygonMode: VkPolygonMode): void {.stdcall.}](vkGetProc("vkCmdSetPolygonModeEXT")) + vkCmdSetRasterizationSamplesEXT = cast[proc(commandBuffer: VkCommandBuffer, rasterizationSamples: VkSampleCountFlagBits): void {.stdcall.}](vkGetProc("vkCmdSetRasterizationSamplesEXT")) + vkCmdSetSampleMaskEXT = cast[proc(commandBuffer: VkCommandBuffer, samples: VkSampleCountFlagBits, pSampleMask: ptr VkSampleMask ): void {.stdcall.}](vkGetProc("vkCmdSetSampleMaskEXT")) + vkCmdSetAlphaToCoverageEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, alphaToCoverageEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetAlphaToCoverageEnableEXT")) + vkCmdSetAlphaToOneEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, alphaToOneEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetAlphaToOneEnableEXT")) + vkCmdSetLogicOpEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, logicOpEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetLogicOpEnableEXT")) + vkCmdSetColorBlendEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEnables: ptr VkBool32 ): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendEnableEXT")) + vkCmdSetColorBlendEquationEXT = cast[proc(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEquations: ptr VkColorBlendEquationEXT ): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendEquationEXT")) + vkCmdSetColorWriteMaskEXT = cast[proc(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorWriteMasks: ptr VkColorComponentFlags ): void {.stdcall.}](vkGetProc("vkCmdSetColorWriteMaskEXT")) + vkCmdSetTessellationDomainOriginEXT = cast[proc(commandBuffer: VkCommandBuffer, domainOrigin: VkTessellationDomainOrigin): void {.stdcall.}](vkGetProc("vkCmdSetTessellationDomainOriginEXT")) + vkCmdSetRasterizationStreamEXT = cast[proc(commandBuffer: VkCommandBuffer, rasterizationStream: uint32): void {.stdcall.}](vkGetProc("vkCmdSetRasterizationStreamEXT")) + vkCmdSetConservativeRasterizationModeEXT = cast[proc(commandBuffer: VkCommandBuffer, conservativeRasterizationMode: VkConservativeRasterizationModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetConservativeRasterizationModeEXT")) + vkCmdSetExtraPrimitiveOverestimationSizeEXT = cast[proc(commandBuffer: VkCommandBuffer, extraPrimitiveOverestimationSize: float32): void {.stdcall.}](vkGetProc("vkCmdSetExtraPrimitiveOverestimationSizeEXT")) + vkCmdSetDepthClipEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, depthClipEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthClipEnableEXT")) + vkCmdSetSampleLocationsEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, sampleLocationsEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetSampleLocationsEnableEXT")) + vkCmdSetColorBlendAdvancedEXT = cast[proc(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendAdvanced: ptr VkColorBlendAdvancedEXT ): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendAdvancedEXT")) + vkCmdSetProvokingVertexModeEXT = cast[proc(commandBuffer: VkCommandBuffer, provokingVertexMode: VkProvokingVertexModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetProvokingVertexModeEXT")) + vkCmdSetLineRasterizationModeEXT = cast[proc(commandBuffer: VkCommandBuffer, lineRasterizationMode: VkLineRasterizationModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetLineRasterizationModeEXT")) + vkCmdSetLineStippleEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, stippledLineEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetLineStippleEnableEXT")) + vkCmdSetDepthClipNegativeOneToOneEXT = cast[proc(commandBuffer: VkCommandBuffer, negativeOneToOne: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthClipNegativeOneToOneEXT")) + vkCmdSetViewportWScalingEnableNV = cast[proc(commandBuffer: VkCommandBuffer, viewportWScalingEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetViewportWScalingEnableNV")) + vkCmdSetViewportSwizzleNV = cast[proc(commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportSwizzles: ptr VkViewportSwizzleNV ): void {.stdcall.}](vkGetProc("vkCmdSetViewportSwizzleNV")) + vkCmdSetCoverageToColorEnableNV = cast[proc(commandBuffer: VkCommandBuffer, coverageToColorEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorEnableNV")) + vkCmdSetCoverageToColorLocationNV = cast[proc(commandBuffer: VkCommandBuffer, coverageToColorLocation: uint32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorLocationNV")) + vkCmdSetCoverageModulationModeNV = cast[proc(commandBuffer: VkCommandBuffer, coverageModulationMode: VkCoverageModulationModeNV): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationModeNV")) + vkCmdSetCoverageModulationTableEnableNV = cast[proc(commandBuffer: VkCommandBuffer, coverageModulationTableEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableEnableNV")) + vkCmdSetCoverageModulationTableNV = cast[proc(commandBuffer: VkCommandBuffer, coverageModulationTableCount: uint32, pCoverageModulationTable: ptr float32 ): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableNV")) + vkCmdSetShadingRateImageEnableNV = cast[proc(commandBuffer: VkCommandBuffer, shadingRateImageEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetShadingRateImageEnableNV")) + vkCmdSetRepresentativeFragmentTestEnableNV = cast[proc(commandBuffer: VkCommandBuffer, representativeFragmentTestEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetRepresentativeFragmentTestEnableNV")) + vkCmdSetCoverageReductionModeNV = cast[proc(commandBuffer: VkCommandBuffer, coverageReductionMode: VkCoverageReductionModeNV): void {.stdcall.}](vkGetProc("vkCmdSetCoverageReductionModeNV")) + +# Load VK_EXT_shader_module_identifier +proc loadVK_EXT_shader_module_identifier*() = + vkGetShaderModuleIdentifierEXT = cast[proc(device: VkDevice, shaderModule: VkShaderModule, pIdentifier: ptr VkShaderModuleIdentifierEXT ): void {.stdcall.}](vkGetProc("vkGetShaderModuleIdentifierEXT")) + vkGetShaderModuleCreateInfoIdentifierEXT = cast[proc(device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo , pIdentifier: ptr VkShaderModuleIdentifierEXT ): void {.stdcall.}](vkGetProc("vkGetShaderModuleCreateInfoIdentifierEXT")) + +# Load VK_NV_optical_flow +proc loadVK_NV_optical_flow*() = + vkGetPhysicalDeviceOpticalFlowImageFormatsNV = cast[proc(physicalDevice: VkPhysicalDevice, pOpticalFlowImageFormatInfo: ptr VkOpticalFlowImageFormatInfoNV , pFormatCount: ptr uint32 , pImageFormatProperties: ptr VkOpticalFlowImageFormatPropertiesNV ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceOpticalFlowImageFormatsNV")) + vkCreateOpticalFlowSessionNV = cast[proc(device: VkDevice, pCreateInfo: ptr VkOpticalFlowSessionCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pSession: ptr VkOpticalFlowSessionNV ): VkResult {.stdcall.}](vkGetProc("vkCreateOpticalFlowSessionNV")) + vkDestroyOpticalFlowSessionNV = cast[proc(device: VkDevice, session: VkOpticalFlowSessionNV, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyOpticalFlowSessionNV")) + vkBindOpticalFlowSessionImageNV = cast[proc(device: VkDevice, session: VkOpticalFlowSessionNV, bindingPoint: VkOpticalFlowSessionBindingPointNV, view: VkImageView, layout: VkImageLayout): VkResult {.stdcall.}](vkGetProc("vkBindOpticalFlowSessionImageNV")) + vkCmdOpticalFlowExecuteNV = cast[proc(commandBuffer: VkCommandBuffer, session: VkOpticalFlowSessionNV, pExecuteInfo: ptr VkOpticalFlowExecuteInfoNV ): void {.stdcall.}](vkGetProc("vkCmdOpticalFlowExecuteNV")) + +# Load VK_KHR_maintenance5 +proc loadVK_KHR_maintenance5*() = + vkCmdBindIndexBuffer2KHR = cast[proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize, indexType: VkIndexType): void {.stdcall.}](vkGetProc("vkCmdBindIndexBuffer2KHR")) + vkGetRenderingAreaGranularityKHR = cast[proc(device: VkDevice, pRenderingAreaInfo: ptr VkRenderingAreaInfoKHR , pGranularity: ptr VkExtent2D ): void {.stdcall.}](vkGetProc("vkGetRenderingAreaGranularityKHR")) + vkGetDeviceImageSubresourceLayoutKHR = cast[proc(device: VkDevice, pInfo: ptr VkDeviceImageSubresourceInfoKHR , pLayout: ptr VkSubresourceLayout2KHR ): void {.stdcall.}](vkGetProc("vkGetDeviceImageSubresourceLayoutKHR")) + vkGetImageSubresourceLayout2KHR = cast[proc(device: VkDevice, image: VkImage, pSubresource: ptr VkImageSubresource2KHR , pLayout: ptr VkSubresourceLayout2KHR ): void {.stdcall.}](vkGetProc("vkGetImageSubresourceLayout2KHR")) + +# Load VK_EXT_shader_object +proc loadVK_EXT_shader_object*() = + vkCreateShadersEXT = cast[proc(device: VkDevice, createInfoCount: uint32, pCreateInfos: ptr VkShaderCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pShaders: ptr VkShaderEXT ): VkResult {.stdcall.}](vkGetProc("vkCreateShadersEXT")) + vkDestroyShaderEXT = cast[proc(device: VkDevice, shader: VkShaderEXT, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyShaderEXT")) + vkGetShaderBinaryDataEXT = cast[proc(device: VkDevice, shader: VkShaderEXT, pDataSize: ptr uint , pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetShaderBinaryDataEXT")) + vkCmdBindShadersEXT = cast[proc(commandBuffer: VkCommandBuffer, stageCount: uint32, pStages: ptr VkShaderStageFlagBits , pShaders: ptr VkShaderEXT ): void {.stdcall.}](vkGetProc("vkCmdBindShadersEXT")) + vkCmdSetVertexInputEXT = cast[proc(commandBuffer: VkCommandBuffer, vertexBindingDescriptionCount: uint32, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription2EXT , vertexAttributeDescriptionCount: uint32, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription2EXT ): void {.stdcall.}](vkGetProc("vkCmdSetVertexInputEXT")) + vkCmdSetPatchControlPointsEXT = cast[proc(commandBuffer: VkCommandBuffer, patchControlPoints: uint32): void {.stdcall.}](vkGetProc("vkCmdSetPatchControlPointsEXT")) + vkCmdSetLogicOpEXT = cast[proc(commandBuffer: VkCommandBuffer, logicOp: VkLogicOp): void {.stdcall.}](vkGetProc("vkCmdSetLogicOpEXT")) + vkCmdSetTessellationDomainOriginEXT = cast[proc(commandBuffer: VkCommandBuffer, domainOrigin: VkTessellationDomainOrigin): void {.stdcall.}](vkGetProc("vkCmdSetTessellationDomainOriginEXT")) + vkCmdSetDepthClampEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, depthClampEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthClampEnableEXT")) + vkCmdSetPolygonModeEXT = cast[proc(commandBuffer: VkCommandBuffer, polygonMode: VkPolygonMode): void {.stdcall.}](vkGetProc("vkCmdSetPolygonModeEXT")) + vkCmdSetRasterizationSamplesEXT = cast[proc(commandBuffer: VkCommandBuffer, rasterizationSamples: VkSampleCountFlagBits): void {.stdcall.}](vkGetProc("vkCmdSetRasterizationSamplesEXT")) + vkCmdSetSampleMaskEXT = cast[proc(commandBuffer: VkCommandBuffer, samples: VkSampleCountFlagBits, pSampleMask: ptr VkSampleMask ): void {.stdcall.}](vkGetProc("vkCmdSetSampleMaskEXT")) + vkCmdSetAlphaToCoverageEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, alphaToCoverageEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetAlphaToCoverageEnableEXT")) + vkCmdSetAlphaToOneEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, alphaToOneEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetAlphaToOneEnableEXT")) + vkCmdSetLogicOpEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, logicOpEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetLogicOpEnableEXT")) + vkCmdSetColorBlendEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEnables: ptr VkBool32 ): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendEnableEXT")) + vkCmdSetColorBlendEquationEXT = cast[proc(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEquations: ptr VkColorBlendEquationEXT ): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendEquationEXT")) + vkCmdSetColorWriteMaskEXT = cast[proc(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorWriteMasks: ptr VkColorComponentFlags ): void {.stdcall.}](vkGetProc("vkCmdSetColorWriteMaskEXT")) + vkCmdSetRasterizationStreamEXT = cast[proc(commandBuffer: VkCommandBuffer, rasterizationStream: uint32): void {.stdcall.}](vkGetProc("vkCmdSetRasterizationStreamEXT")) + vkCmdSetConservativeRasterizationModeEXT = cast[proc(commandBuffer: VkCommandBuffer, conservativeRasterizationMode: VkConservativeRasterizationModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetConservativeRasterizationModeEXT")) + vkCmdSetExtraPrimitiveOverestimationSizeEXT = cast[proc(commandBuffer: VkCommandBuffer, extraPrimitiveOverestimationSize: float32): void {.stdcall.}](vkGetProc("vkCmdSetExtraPrimitiveOverestimationSizeEXT")) + vkCmdSetDepthClipEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, depthClipEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthClipEnableEXT")) + vkCmdSetSampleLocationsEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, sampleLocationsEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetSampleLocationsEnableEXT")) + vkCmdSetColorBlendAdvancedEXT = cast[proc(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendAdvanced: ptr VkColorBlendAdvancedEXT ): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendAdvancedEXT")) + vkCmdSetProvokingVertexModeEXT = cast[proc(commandBuffer: VkCommandBuffer, provokingVertexMode: VkProvokingVertexModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetProvokingVertexModeEXT")) + vkCmdSetLineRasterizationModeEXT = cast[proc(commandBuffer: VkCommandBuffer, lineRasterizationMode: VkLineRasterizationModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetLineRasterizationModeEXT")) + vkCmdSetLineStippleEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, stippledLineEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetLineStippleEnableEXT")) + vkCmdSetDepthClipNegativeOneToOneEXT = cast[proc(commandBuffer: VkCommandBuffer, negativeOneToOne: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthClipNegativeOneToOneEXT")) + vkCmdSetViewportWScalingEnableNV = cast[proc(commandBuffer: VkCommandBuffer, viewportWScalingEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetViewportWScalingEnableNV")) + vkCmdSetViewportSwizzleNV = cast[proc(commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportSwizzles: ptr VkViewportSwizzleNV ): void {.stdcall.}](vkGetProc("vkCmdSetViewportSwizzleNV")) + vkCmdSetCoverageToColorEnableNV = cast[proc(commandBuffer: VkCommandBuffer, coverageToColorEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorEnableNV")) + vkCmdSetCoverageToColorLocationNV = cast[proc(commandBuffer: VkCommandBuffer, coverageToColorLocation: uint32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorLocationNV")) + vkCmdSetCoverageModulationModeNV = cast[proc(commandBuffer: VkCommandBuffer, coverageModulationMode: VkCoverageModulationModeNV): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationModeNV")) + vkCmdSetCoverageModulationTableEnableNV = cast[proc(commandBuffer: VkCommandBuffer, coverageModulationTableEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableEnableNV")) + vkCmdSetCoverageModulationTableNV = cast[proc(commandBuffer: VkCommandBuffer, coverageModulationTableCount: uint32, pCoverageModulationTable: ptr float32 ): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableNV")) + vkCmdSetShadingRateImageEnableNV = cast[proc(commandBuffer: VkCommandBuffer, shadingRateImageEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetShadingRateImageEnableNV")) + vkCmdSetRepresentativeFragmentTestEnableNV = cast[proc(commandBuffer: VkCommandBuffer, representativeFragmentTestEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetRepresentativeFragmentTestEnableNV")) + vkCmdSetCoverageReductionModeNV = cast[proc(commandBuffer: VkCommandBuffer, coverageReductionMode: VkCoverageReductionModeNV): void {.stdcall.}](vkGetProc("vkCmdSetCoverageReductionModeNV")) + +# Load VK_QCOM_tile_properties +proc loadVK_QCOM_tile_properties*() = + vkGetFramebufferTilePropertiesQCOM = cast[proc(device: VkDevice, framebuffer: VkFramebuffer, pPropertiesCount: ptr uint32 , pProperties: ptr VkTilePropertiesQCOM ): VkResult {.stdcall.}](vkGetProc("vkGetFramebufferTilePropertiesQCOM")) + vkGetDynamicRenderingTilePropertiesQCOM = cast[proc(device: VkDevice, pRenderingInfo: ptr VkRenderingInfo , pProperties: ptr VkTilePropertiesQCOM ): VkResult {.stdcall.}](vkGetProc("vkGetDynamicRenderingTilePropertiesQCOM")) + +# Load VK_NV_external_sci_sync2 +proc loadVK_NV_external_sci_sync2*() = + vkCreateSemaphoreSciSyncPoolNV = cast[proc(device: VkDevice, pCreateInfo: ptr VkSemaphoreSciSyncPoolCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pSemaphorePool: ptr VkSemaphoreSciSyncPoolNV ): VkResult {.stdcall.}](vkGetProc("vkCreateSemaphoreSciSyncPoolNV")) + vkDestroySemaphoreSciSyncPoolNV = cast[proc(device: VkDevice, semaphorePool: VkSemaphoreSciSyncPoolNV, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroySemaphoreSciSyncPoolNV")) + vkGetFenceSciSyncFenceNV = cast[proc(device: VkDevice, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV , pHandle: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetFenceSciSyncFenceNV")) + vkGetFenceSciSyncObjNV = cast[proc(device: VkDevice, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV , pHandle: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetFenceSciSyncObjNV")) + vkImportFenceSciSyncFenceNV = cast[proc(device: VkDevice, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV ): VkResult {.stdcall.}](vkGetProc("vkImportFenceSciSyncFenceNV")) + vkImportFenceSciSyncObjNV = cast[proc(device: VkDevice, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV ): VkResult {.stdcall.}](vkGetProc("vkImportFenceSciSyncObjNV")) + vkGetPhysicalDeviceSciSyncAttributesNV = cast[proc(physicalDevice: VkPhysicalDevice, pSciSyncAttributesInfo: ptr VkSciSyncAttributesInfoNV , pAttributes: NvSciSyncAttrList): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSciSyncAttributesNV")) + +# Load VK_NV_low_latency2 +proc loadVK_NV_low_latency2*() = + vkSetLatencySleepModeNV = cast[proc(device: VkDevice, swapchain: VkSwapchainKHR, pSleepModeInfo: ptr VkLatencySleepModeInfoNV ): VkResult {.stdcall.}](vkGetProc("vkSetLatencySleepModeNV")) + vkLatencySleepNV = cast[proc(device: VkDevice, swapchain: VkSwapchainKHR, pSleepInfo: ptr VkLatencySleepInfoNV ): VkResult {.stdcall.}](vkGetProc("vkLatencySleepNV")) + vkSetLatencyMarkerNV = cast[proc(device: VkDevice, swapchain: VkSwapchainKHR, pLatencyMarkerInfo: ptr VkSetLatencyMarkerInfoNV ): void {.stdcall.}](vkGetProc("vkSetLatencyMarkerNV")) + vkGetLatencyTimingsNV = cast[proc(device: VkDevice, swapchain: VkSwapchainKHR, pLatencyMarkerInfo: ptr VkGetLatencyMarkerInfoNV ): void {.stdcall.}](vkGetProc("vkGetLatencyTimingsNV")) + vkQueueNotifyOutOfBandNV = cast[proc(queue: VkQueue, pQueueTypeInfo: ptr VkOutOfBandQueueTypeInfoNV ): void {.stdcall.}](vkGetProc("vkQueueNotifyOutOfBandNV")) + +# Load VK_KHR_cooperative_matrix +proc loadVK_KHR_cooperative_matrix*() = + vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR = cast[proc(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkCooperativeMatrixPropertiesKHR ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR")) + +# Load VK_EXT_attachment_feedback_loop_dynamic_state +proc loadVK_EXT_attachment_feedback_loop_dynamic_state*() = + vkCmdSetAttachmentFeedbackLoopEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, aspectMask: VkImageAspectFlags): void {.stdcall.}](vkGetProc("vkCmdSetAttachmentFeedbackLoopEnableEXT")) + +# Load VK_QNX_external_memory_screen_buffer +proc loadVK_QNX_external_memory_screen_buffer*() = + vkGetScreenBufferPropertiesQNX = cast[proc(device: VkDevice, buffer: ptr _screen_buffer , pProperties: ptr VkScreenBufferPropertiesQNX ): VkResult {.stdcall.}](vkGetProc("vkGetScreenBufferPropertiesQNX")) + +# Load VK_KHR_line_rasterization +proc loadVK_KHR_line_rasterization*() = + vkCmdSetLineStippleKHR = cast[proc(commandBuffer: VkCommandBuffer, lineStippleFactor: uint32, lineStipplePattern: uint16): void {.stdcall.}](vkGetProc("vkCmdSetLineStippleKHR")) + +# Load VK_KHR_calibrated_timestamps +proc loadVK_KHR_calibrated_timestamps*() = + vkGetPhysicalDeviceCalibrateableTimeDomainsKHR = cast[proc(physicalDevice: VkPhysicalDevice, pTimeDomainCount: ptr uint32 , pTimeDomains: ptr VkTimeDomainKHR ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceCalibrateableTimeDomainsKHR")) + vkGetCalibratedTimestampsKHR = cast[proc(device: VkDevice, timestampCount: uint32, pTimestampInfos: ptr VkCalibratedTimestampInfoKHR , pTimestamps: ptr uint64 , pMaxDeviation: ptr uint64 ): VkResult {.stdcall.}](vkGetProc("vkGetCalibratedTimestampsKHR")) + +# Load VK_KHR_maintenance6 +proc loadVK_KHR_maintenance6*() = + vkCmdBindDescriptorSets2KHR = cast[proc(commandBuffer: VkCommandBuffer, pBindDescriptorSetsInfo: ptr VkBindDescriptorSetsInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorSets2KHR")) + vkCmdPushConstants2KHR = cast[proc(commandBuffer: VkCommandBuffer, pPushConstantsInfo: ptr VkPushConstantsInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdPushConstants2KHR")) + vkCmdPushDescriptorSet2KHR = cast[proc(commandBuffer: VkCommandBuffer, pPushDescriptorSetInfo: ptr VkPushDescriptorSetInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSet2KHR")) + vkCmdPushDescriptorSetWithTemplate2KHR = cast[proc(commandBuffer: VkCommandBuffer, pPushDescriptorSetWithTemplateInfo: ptr VkPushDescriptorSetWithTemplateInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplate2KHR")) + vkCmdSetDescriptorBufferOffsets2EXT = cast[proc(commandBuffer: VkCommandBuffer, pSetDescriptorBufferOffsetsInfo: ptr VkSetDescriptorBufferOffsetsInfoEXT ): void {.stdcall.}](vkGetProc("vkCmdSetDescriptorBufferOffsets2EXT")) + vkCmdBindDescriptorBufferEmbeddedSamplers2EXT = cast[proc(commandBuffer: VkCommandBuffer, pBindDescriptorBufferEmbeddedSamplersInfo: ptr VkBindDescriptorBufferEmbeddedSamplersInfoEXT ): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorBufferEmbeddedSamplers2EXT")) + +var + vkCreateInstance*: proc(pCreateInfo: ptr VkInstanceCreateInfo , pAllocator: ptr VkAllocationCallbacks , pInstance: ptr VkInstance ): VkResult {.stdcall.} + vkEnumerateInstanceExtensionProperties*: proc(pLayerName: cstring , pPropertyCount: ptr uint32 , pProperties: ptr VkExtensionProperties ): VkResult {.stdcall.} + vkEnumerateInstanceLayerProperties*: proc(pPropertyCount: ptr uint32 , pProperties: ptr VkLayerProperties ): VkResult {.stdcall.} + vkEnumerateInstanceVersion*: proc(pApiVersion: ptr uint32 ): VkResult {.stdcall.} + +proc vkPreload*(load1_1: bool = true) = + vkGetInstanceProcAddr = cast[proc(instance: VkInstance, pName: cstring ): PFN_vkVoidFunction {.stdcall.}](symAddr(vkHandleDLL, "vkGetInstanceProcAddr")) + + vkCreateInstance = cast[proc(pCreateInfo: ptr VkInstanceCreateInfo , pAllocator: ptr VkAllocationCallbacks , pInstance: ptr VkInstance ): VkResult {.stdcall.}](vkGetProc("vkCreateInstance")) + vkEnumerateInstanceExtensionProperties = cast[proc(pLayerName: cstring , pPropertyCount: ptr uint32 , pProperties: ptr VkExtensionProperties ): VkResult {.stdcall.}](vkGetProc("vkEnumerateInstanceExtensionProperties")) + vkEnumerateInstanceLayerProperties = cast[proc(pPropertyCount: ptr uint32 , pProperties: ptr VkLayerProperties ): VkResult {.stdcall.}](vkGetProc("vkEnumerateInstanceLayerProperties")) + + if load1_1: + vkEnumerateInstanceVersion = cast[proc(pApiVersion: ptr uint32 ): VkResult {.stdcall.}](vkGetProc("vkEnumerateInstanceVersion")) + +proc vkInit*(instance: VkInstance, load1_0: bool = true, load1_1: bool = true): bool = + currInst = cast[pointer](instance) if load1_0: vkLoad1_0() when not defined(macosx): diff --git a/tools/generator.nim b/tools/generator.nim index bd33003..3d2b87f 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -72,7 +72,7 @@ proc genTypes(node: XmlNode, output: var string) = continue inType = false let name = t.child("name").innerText - if name == "VK_MAKE_VERSION": + if name == "VK_MAKE_VERSION": output.add("\ntemplate vkMakeVersion*(major, minor, patch: untyped): untyped =\n") output.add(" (((major) shl 22) or ((minor) shl 12) or (patch))\n") elif name == "VK_VERSION_MAJOR": @@ -90,6 +90,8 @@ proc genTypes(node: XmlNode, output: var string) = output.add("const vkApiVersion1_1* = vkMakeVersion(1, 1, 0)\n") elif name == "VK_API_VERSION_1_2": output.add("const vkApiVersion1_2* = vkMakeVersion(1, 2, 0)\n") + elif name == "VK_API_VERSION_1_3": + output.add("const vkApiVersion1_2* = vkMakeVersion(1, 3, 0)\n") else: echo "category:define not found {name}".fmt continue @@ -174,10 +176,16 @@ proc genTypes(node: XmlNode, output: var string) = output.add(" PFN_vkFreeFunction* = proc(pUserData: pointer; pMemory: pointer) {.cdecl.}\n") elif name == "PFN_vkVoidFunction": output.add(" PFN_vkVoidFunction* = proc() {.cdecl.}\n") + elif name == "PFN_vkFaultCallbackFunction": + output.add(" PFN_vkFaultCallbackFunction* = proc(unrecordedFaults: VkBool32; faultCount: uint32; pFaults: ptr VkFaultData) {.cdecl.}\n") + elif name == "PFN_vkDeviceMemoryReportCallbackEXT": + output.add(" PFN_vkDeviceMemoryReportCallbackEXT* = proc(pCallbackData: ptr VkDeviceMemoryReportCallbackDataEXT; pUserData: pointer) {.cdecl.}\n") + elif name == "PFN_vkGetInstanceProcAddrLUNARG": + output.add(" PFN_vkGetInstanceProcAddrLUNARG* = proc(instance: VkInstance; pName: cstring): PFN_vkVoidFunction {.cdecl.}\n") elif name == "PFN_vkDebugReportCallbackEXT": - output.add(" PFN_vkDebugReportCallbackEXT* = proc(flags: VkDebugReportFlagsEXT; objectType: VkDebugReportObjectTypeEXT; cbObject: uint64; location: csize; messageCode: int32; pLayerPrefix: cstring; pMessage: cstring; pUserData: pointer): VkBool32 {.cdecl.}\n") + output.add(" PFN_vkDebugReportCallbackEXT* = proc(flags: VkDebugReportFlagsEXT; objectType: VkDebugReportObjectTypeEXT; cbObject: uint64; location: csize; messageCode: int32; pLayerPrefix: cstring; pMessage: cstring; pUserData: pointer): VkBool32 {.cdecl.}\n") elif name == "PFN_vkDebugUtilsMessengerCallbackEXT": - output.add(" PFN_vkDebugUtilsMessengerCallbackEXT* = proc(messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEXT, messageTypes: VkDebugUtilsMessageTypeFlagsEXT, pCallbackData: VkDebugUtilsMessengerCallbackDataEXT, userData: pointer): VkBool32 {.cdecl.}\n"): + output.add(" PFN_vkDebugUtilsMessengerCallbackEXT* = proc(messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEXT, messageTypes: VkDebugUtilsMessageTypeFlagsEXT, pCallbackData: VkDebugUtilsMessengerCallbackDataEXT, userData: pointer): VkBool32 {.cdecl.}\n") else: echo "category:funcpointer not found {name}".fmt continue @@ -294,6 +302,8 @@ proc genEnums(node: XmlNode, output: var string) = enumValue = e.attr("alias") else: enumValue = enumValue.replace("(~0U)", "(not 0'u32)") + enumValue = enumValue.replace("(~1U)", "(not 1'u32)") + enumValue = enumValue.replace("(~2U)", "(not 2'u32)") enumValue = enumValue.replace("(~0U-1)", "(not 0'u32) - 1") enumValue = enumValue.replace("(~0U-2)", "(not 0'u32) - 2") enumValue = enumValue.replace("(~0ULL)", "(not 0'u64)") @@ -476,7 +486,7 @@ proc genConstructors(node: XmlNode, output: var string) = proc main() = if not os.fileExists("vk.xml"): let client = newHttpClient() - let glUrl = "https://raw.githubusercontent.com/KhronosGroup/Vulkan-Docs/master/xml/vk.xml" + let glUrl = "https://raw.githubusercontent.com/KhronosGroup/Vulkan-Docs/main/xml/vk.xml" client.downloadFile(glUrl, "vk.xml") var output = srcHeader & "\n" @@ -493,7 +503,7 @@ proc main() = output.add("\n" & vkInit) - writeFile("src/vulkan.nim", output) + writeFile("../src/vulkan.nim", output) if isMainModule: main() diff --git a/tools/utils.nim b/tools/utils.nim index 64789b0..3ae35bf 100644 --- a/tools/utils.nim +++ b/tools/utils.nim @@ -43,7 +43,7 @@ proc setVKGetProc*(getProc: proc(procName: cstring): pointer {.cdecl.}) = type VkHandle* = int64 - VkNonDispatchableHandle* = int64 + VkNonDispatchableHandle* = uint64 ANativeWindow = ptr object CAMetalLayer = ptr object AHardwareBuffer = ptr object From c3075474c7dfbbd869a7d869fdaad6a7cc811bf3 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Mon, 29 Apr 2024 00:30:03 +0300 Subject: [PATCH 02/57] progress --- src/vulkan.nim | 17 ++++++++++------- tools/generator.nim | 23 +++++++++++++---------- tools/utils.nim | 2 +- 3 files changed, 24 insertions(+), 18 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 2909a22..2c009e2 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -39,7 +39,7 @@ proc setVKGetProc*(getProc: proc(procName: cstring): pointer {.cdecl.}) = vkGetProc = getProc type - VkHandle* = int64 + VkHandle* = uint64 VkNonDispatchableHandle* = uint64 ANativeWindow = ptr object CAMetalLayer = ptr object @@ -1774,8 +1774,11 @@ type NvSciBufAttrList* = ptr object NvSciBufObj* = ptr object -template vkMakeVersion*(major, minor, patch: untyped): untyped = - (((major) shl 22) or ((minor) shl 12) or (patch)) +template vkMakeVersion*(variant, major, minor, patch: untyped): untyped = + (((variant) shl 29) or ((major) shl 22) or ((minor) shl 12) or (patch)) + +template vkVersionVariant*(version: untyped): untyped = + ((uint32)(version) shr 29) template vkVersionMajor*(version: untyped): untyped = ((uint32)(version) shr 22) @@ -1786,10 +1789,10 @@ template vkVersionMinor*(version: untyped): untyped = template vkVersionPatch*(version: untyped): untyped = ((uint32)(version) and 0x00000FFF) -const vkApiVersion1_0* = vkMakeVersion(1, 0, 0) -const vkApiVersion1_1* = vkMakeVersion(1, 1, 0) -const vkApiVersion1_2* = vkMakeVersion(1, 2, 0) -const vkApiVersion1_2* = vkMakeVersion(1, 3, 0) +const vkApiVersion1_0* = vkMakeVersion(0, 1, 0, 0) +const vkApiVersion1_1* = vkMakeVersion(0, 1, 1, 0) +const vkApiVersion1_2* = vkMakeVersion(0, 1, 2, 0) +const vkApiVersion1_2* = vkMakeVersion(0, 1, 3, 0) type VkSampleMask* = distinct uint32 diff --git a/tools/generator.nim b/tools/generator.nim index 3d2b87f..6dc5cf4 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -72,26 +72,29 @@ proc genTypes(node: XmlNode, output: var string) = continue inType = false let name = t.child("name").innerText - if name == "VK_MAKE_VERSION": - output.add("\ntemplate vkMakeVersion*(major, minor, patch: untyped): untyped =\n") - output.add(" (((major) shl 22) or ((minor) shl 12) or (patch))\n") - elif name == "VK_VERSION_MAJOR": + if name == "VK_MAKE_API_VERSION": + output.add("\ntemplate vkMakeVersion*(variant, major, minor, patch: untyped): untyped =\n") + output.add(" (((variant) shl 29) or ((major) shl 22) or ((minor) shl 12) or (patch))\n") + elif name == "VK_API_VERSION_VARIANT": + output.add("\ntemplate vkVersionVariant*(version: untyped): untyped =\n") + output.add(" ((uint32)(version) shr 29)\n") + elif name == "VK_API_VERSION_MAJOR": output.add("\ntemplate vkVersionMajor*(version: untyped): untyped =\n") output.add(" ((uint32)(version) shr 22)\n") - elif name == "VK_VERSION_MINOR": + elif name == "VK_API_VERSION_MINOR": output.add("\ntemplate vkVersionMinor*(version: untyped): untyped =\n") output.add(" (((uint32)(version) shr 12) and 0x000003FF)\n") - elif name == "VK_VERSION_PATCH": + elif name == "VK_API_VERSION_PATCH": output.add("\ntemplate vkVersionPatch*(version: untyped): untyped =\n") output.add(" ((uint32)(version) and 0x00000FFF)\n") elif name == "VK_API_VERSION_1_0": - output.add("\nconst vkApiVersion1_0* = vkMakeVersion(1, 0, 0)\n") + output.add("\nconst vkApiVersion1_0* = vkMakeVersion(0, 1, 0, 0)\n") elif name == "VK_API_VERSION_1_1": - output.add("const vkApiVersion1_1* = vkMakeVersion(1, 1, 0)\n") + output.add("const vkApiVersion1_1* = vkMakeVersion(0, 1, 1, 0)\n") elif name == "VK_API_VERSION_1_2": - output.add("const vkApiVersion1_2* = vkMakeVersion(1, 2, 0)\n") + output.add("const vkApiVersion1_2* = vkMakeVersion(0, 1, 2, 0)\n") elif name == "VK_API_VERSION_1_3": - output.add("const vkApiVersion1_2* = vkMakeVersion(1, 3, 0)\n") + output.add("const vkApiVersion1_3* = vkMakeVersion(0, 1, 3, 0)\n") else: echo "category:define not found {name}".fmt continue diff --git a/tools/utils.nim b/tools/utils.nim index 3ae35bf..09b3f34 100644 --- a/tools/utils.nim +++ b/tools/utils.nim @@ -42,7 +42,7 @@ proc setVKGetProc*(getProc: proc(procName: cstring): pointer {.cdecl.}) = vkGetProc = getProc type - VkHandle* = int64 + VkHandle* = uint64 VkNonDispatchableHandle* = uint64 ANativeWindow = ptr object CAMetalLayer = ptr object From 389a90f07b48dd3619d18a7332143802ea0d9166 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Mon, 29 Apr 2024 00:46:55 +0300 Subject: [PATCH 03/57] progress --- src/vulkan.nim | 208 ++++++++++++++++++++++---------------------- tools/generator.nim | 10 ++- 2 files changed, 112 insertions(+), 106 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 2c009e2..0b7027f 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -1744,35 +1744,35 @@ type # Types type - Display* = ptr object - VisualID* = ptr object - Window* = ptr object - RROutput* = ptr object - wl_display* = ptr object - wl_surface* = ptr object - HINSTANCE* = ptr object - HWND* = ptr object - HMONITOR* = ptr object - HANDLE* = ptr object - SECURITY_ATTRIBUTES* = ptr object - DWORD* = ptr object - LPCWSTR* = ptr object - xcb_connection_t* = ptr object - xcb_visualid_t* = ptr object - xcb_window_t* = ptr object - IDirectFB* = ptr object - IDirectFBSurface* = ptr object - zx_handle_t* = ptr object - GgpStreamDescriptor* = ptr object - GgpFrameToken* = ptr object - _screen_context* = ptr object - _screen_window* = ptr object - _screen_buffer* = ptr object - NvSciSyncAttrList* = ptr object - NvSciSyncObj* = ptr object - NvSciSyncFence* = ptr object - NvSciBufAttrList* = ptr object - NvSciBufObj* = ptr object + Display* {.header: X11/Xlib.h.} = ptr object + VisualID* {.header: X11/Xlib.h.} = ptr object + Window* {.header: X11/Xlib.h.} = ptr object + RROutput* {.header: X11/extensions/Xrandr.h.} = ptr object + wl_display* {.header: wayland-client.h.} = ptr object + wl_surface* {.header: wayland-client.h.} = ptr object + HINSTANCE* {.header: windows.h.} = ptr object + HWND* {.header: windows.h.} = ptr object + HMONITOR* {.header: windows.h.} = ptr object + HANDLE* {.header: windows.h.} = ptr object + SECURITY_ATTRIBUTES* {.header: windows.h.} = ptr object + DWORD* {.header: windows.h.} = ptr object + LPCWSTR* {.header: windows.h.} = ptr object + xcb_connection_t* {.header: xcb/xcb.h.} = ptr object + xcb_visualid_t* {.header: xcb/xcb.h.} = ptr object + xcb_window_t* {.header: xcb/xcb.h.} = ptr object + IDirectFB* {.header: directfb.h.} = ptr object + IDirectFBSurface* {.header: directfb.h.} = ptr object + zx_handle_t* {.header: zircon/types.h.} = ptr object + GgpStreamDescriptor* {.header: ggp_c/vulkan_types.h.} = ptr object + GgpFrameToken* {.header: ggp_c/vulkan_types.h.} = ptr object + screen_context* {.header: screen/screen.h.} = ptr object + screen_window* {.header: screen/screen.h.} = ptr object + _screen_buffer* {.header: screen/screen.h.} = ptr object + NvSciSyncAttrList* {.header: nvscisync.h.} = ptr object + NvSciSyncObj* {.header: nvscisync.h.} = ptr object + NvSciSyncFence* {.header: nvscisync.h.} = ptr object + NvSciBufAttrList* {.header: nvscibuf.h.} = ptr object + NvSciBufObj* {.header: nvscibuf.h.} = ptr object template vkMakeVersion*(variant, major, minor, patch: untyped): untyped = (((variant) shl 29) or ((major) shl 22) or ((minor) shl 12) or (patch)) @@ -1792,7 +1792,7 @@ template vkVersionPatch*(version: untyped): untyped = const vkApiVersion1_0* = vkMakeVersion(0, 1, 0, 0) const vkApiVersion1_1* = vkMakeVersion(0, 1, 1, 0) const vkApiVersion1_2* = vkMakeVersion(0, 1, 2, 0) -const vkApiVersion1_2* = vkMakeVersion(0, 1, 3, 0) +const vkApiVersion1_3* = vkMakeVersion(0, 1, 3, 0) type VkSampleMask* = distinct uint32 @@ -3295,8 +3295,8 @@ type sType*: VkStructureType pNext*: pointer flags*: VkScreenSurfaceCreateFlagsQNX - context*: ptr _screen_context - window*: ptr _screen_window + context*: ptr screen_context + window*: ptr screen_window VkSurfaceFormatKHR* = object format*: VkFormat @@ -8027,28 +8027,28 @@ type queryPool*: VkQueryPool firstQuery*: uint32 queryCount*: uint32 - StdVideoH264ProfileIdc* = ptr object - StdVideoH264LevelIdc* = ptr object - StdVideoH264ChromaFormatIdc* = ptr object - StdVideoH264PocType* = ptr object - StdVideoH264SpsFlags* = ptr object - StdVideoH264ScalingLists* = ptr object - StdVideoH264SequenceParameterSetVui* = ptr object - StdVideoH264AspectRatioIdc* = ptr object - StdVideoH264HrdParameters* = ptr object - StdVideoH264SpsVuiFlags* = ptr object - StdVideoH264WeightedBipredIdc* = ptr object - StdVideoH264PpsFlags* = ptr object - StdVideoH264SliceType* = ptr object - StdVideoH264CabacInitIdc* = ptr object - StdVideoH264DisableDeblockingFilterIdc* = ptr object - StdVideoH264PictureType* = ptr object - StdVideoH264ModificationOfPicNumsIdc* = ptr object - StdVideoH264MemMgmtControlOp* = ptr object - StdVideoDecodeH264PictureInfo* = ptr object - StdVideoDecodeH264ReferenceInfo* = ptr object - StdVideoDecodeH264PictureInfoFlags* = ptr object - StdVideoDecodeH264ReferenceInfoFlags* = ptr object + StdVideoH264ProfileIdc* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object + StdVideoH264LevelIdc* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object + StdVideoH264ChromaFormatIdc* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object + StdVideoH264PocType* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object + StdVideoH264SpsFlags* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object + StdVideoH264ScalingLists* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object + StdVideoH264SequenceParameterSetVui* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object + StdVideoH264AspectRatioIdc* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object + StdVideoH264HrdParameters* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object + StdVideoH264SpsVuiFlags* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object + StdVideoH264WeightedBipredIdc* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object + StdVideoH264PpsFlags* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object + StdVideoH264SliceType* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object + StdVideoH264CabacInitIdc* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object + StdVideoH264DisableDeblockingFilterIdc* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object + StdVideoH264PictureType* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object + StdVideoH264ModificationOfPicNumsIdc* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object + StdVideoH264MemMgmtControlOp* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object + StdVideoDecodeH264PictureInfo* {.header: vk_video/vulkan_video_codec_h264std_decode.h.} = ptr object + StdVideoDecodeH264ReferenceInfo* {.header: vk_video/vulkan_video_codec_h264std_decode.h.} = ptr object + StdVideoDecodeH264PictureInfoFlags* {.header: vk_video/vulkan_video_codec_h264std_decode.h.} = ptr object + StdVideoDecodeH264ReferenceInfoFlags* {.header: vk_video/vulkan_video_codec_h264std_decode.h.} = ptr object VkVideoDecodeH264ProfileInfoKHR* = object sType*: VkStructureType @@ -8061,8 +8061,8 @@ type pNext*: pointer maxLevelIdc*: StdVideoH264LevelIdc fieldOffsetGranularity*: VkOffset2D - StdVideoH264SequenceParameterSet* = ptr object - StdVideoH264PictureParameterSet* = ptr object + StdVideoH264SequenceParameterSet* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object + StdVideoH264PictureParameterSet* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object VkVideoDecodeH264SessionParametersAddInfoKHR* = object sType*: VkStructureType @@ -8090,28 +8090,28 @@ type sType*: VkStructureType pNext*: pointer pStdReferenceInfo*: ptr StdVideoDecodeH264ReferenceInfo - StdVideoH265ProfileIdc* = ptr object - StdVideoH265VideoParameterSet* = ptr object - StdVideoH265SequenceParameterSet* = ptr object - StdVideoH265PictureParameterSet* = ptr object - StdVideoH265DecPicBufMgr* = ptr object - StdVideoH265HrdParameters* = ptr object - StdVideoH265VpsFlags* = ptr object - StdVideoH265LevelIdc* = ptr object - StdVideoH265SpsFlags* = ptr object - StdVideoH265ScalingLists* = ptr object - StdVideoH265SequenceParameterSetVui* = ptr object - StdVideoH265PredictorPaletteEntries* = ptr object - StdVideoH265PpsFlags* = ptr object - StdVideoH265SubLayerHrdParameters* = ptr object - StdVideoH265HrdFlags* = ptr object - StdVideoH265SpsVuiFlags* = ptr object - StdVideoH265SliceType* = ptr object - StdVideoH265PictureType* = ptr object - StdVideoDecodeH265PictureInfo* = ptr object - StdVideoDecodeH265ReferenceInfo* = ptr object - StdVideoDecodeH265PictureInfoFlags* = ptr object - StdVideoDecodeH265ReferenceInfoFlags* = ptr object + StdVideoH265ProfileIdc* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object + StdVideoH265VideoParameterSet* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object + StdVideoH265SequenceParameterSet* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object + StdVideoH265PictureParameterSet* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object + StdVideoH265DecPicBufMgr* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object + StdVideoH265HrdParameters* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object + StdVideoH265VpsFlags* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object + StdVideoH265LevelIdc* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object + StdVideoH265SpsFlags* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object + StdVideoH265ScalingLists* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object + StdVideoH265SequenceParameterSetVui* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object + StdVideoH265PredictorPaletteEntries* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object + StdVideoH265PpsFlags* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object + StdVideoH265SubLayerHrdParameters* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object + StdVideoH265HrdFlags* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object + StdVideoH265SpsVuiFlags* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object + StdVideoH265SliceType* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object + StdVideoH265PictureType* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object + StdVideoDecodeH265PictureInfo* {.header: vk_video/vulkan_video_codec_h265std_decode.h.} = ptr object + StdVideoDecodeH265ReferenceInfo* {.header: vk_video/vulkan_video_codec_h265std_decode.h.} = ptr object + StdVideoDecodeH265PictureInfoFlags* {.header: vk_video/vulkan_video_codec_h265std_decode.h.} = ptr object + StdVideoDecodeH265ReferenceInfoFlags* {.header: vk_video/vulkan_video_codec_h265std_decode.h.} = ptr object VkVideoDecodeH265ProfileInfoKHR* = object sType*: VkStructureType @@ -8152,11 +8152,11 @@ type sType*: VkStructureType pNext*: pointer pStdReferenceInfo*: ptr StdVideoDecodeH265ReferenceInfo - StdVideoAV1Profile* = ptr object - StdVideoAV1Level* = ptr object - StdVideoAV1SequenceHeader* = ptr object - StdVideoDecodeAV1PictureInfo* = ptr object - StdVideoDecodeAV1ReferenceInfo* = ptr object + StdVideoAV1Profile* {.header: vk_video/vulkan_video_codec_av1std.h.} = ptr object + StdVideoAV1Level* {.header: vk_video/vulkan_video_codec_av1std.h.} = ptr object + StdVideoAV1SequenceHeader* {.header: vk_video/vulkan_video_codec_av1std.h.} = ptr object + StdVideoDecodeAV1PictureInfo* {.header: vk_video/vulkan_video_codec_av1std_decode.h.} = ptr object + StdVideoDecodeAV1ReferenceInfo* {.header: vk_video/vulkan_video_codec_av1std_decode.h.} = ptr object VkVideoDecodeAV1ProfileInfoKHR* = object sType*: VkStructureType @@ -8343,16 +8343,16 @@ type preferredMaxL0ReferenceCount*: uint32 preferredMaxL1ReferenceCount*: uint32 preferredStdEntropyCodingModeFlag*: VkBool32 - StdVideoEncodeH264SliceHeader* = ptr object - StdVideoEncodeH264PictureInfo* = ptr object - StdVideoEncodeH264ReferenceInfo* = ptr object - StdVideoEncodeH264SliceHeaderFlags* = ptr object - StdVideoEncodeH264ReferenceListsInfo* = ptr object - StdVideoEncodeH264PictureInfoFlags* = ptr object - StdVideoEncodeH264ReferenceInfoFlags* = ptr object - StdVideoEncodeH264RefMgmtFlags* = ptr object - StdVideoEncodeH264RefListModEntry* = ptr object - StdVideoEncodeH264RefPicMarkingEntry* = ptr object + StdVideoEncodeH264SliceHeader* {.header: vk_video/vulkan_video_codec_h264std_encode.h.} = ptr object + StdVideoEncodeH264PictureInfo* {.header: vk_video/vulkan_video_codec_h264std_encode.h.} = ptr object + StdVideoEncodeH264ReferenceInfo* {.header: vk_video/vulkan_video_codec_h264std_encode.h.} = ptr object + StdVideoEncodeH264SliceHeaderFlags* {.header: vk_video/vulkan_video_codec_h264std_encode.h.} = ptr object + StdVideoEncodeH264ReferenceListsInfo* {.header: vk_video/vulkan_video_codec_h264std_encode.h.} = ptr object + StdVideoEncodeH264PictureInfoFlags* {.header: vk_video/vulkan_video_codec_h264std_encode.h.} = ptr object + StdVideoEncodeH264ReferenceInfoFlags* {.header: vk_video/vulkan_video_codec_h264std_encode.h.} = ptr object + StdVideoEncodeH264RefMgmtFlags* {.header: vk_video/vulkan_video_codec_h264std_encode.h.} = ptr object + StdVideoEncodeH264RefListModEntry* {.header: vk_video/vulkan_video_codec_h264std_encode.h.} = ptr object + StdVideoEncodeH264RefPicMarkingEntry* {.header: vk_video/vulkan_video_codec_h264std_encode.h.} = ptr object VkVideoEncodeH264SessionCreateInfoKHR* = object sType*: VkStructureType @@ -8481,14 +8481,14 @@ type preferredConstantQp*: VkVideoEncodeH265QpKHR preferredMaxL0ReferenceCount*: uint32 preferredMaxL1ReferenceCount*: uint32 - StdVideoEncodeH265PictureInfoFlags* = ptr object - StdVideoEncodeH265PictureInfo* = ptr object - StdVideoEncodeH265SliceSegmentHeader* = ptr object - StdVideoEncodeH265ReferenceInfo* = ptr object - StdVideoEncodeH265ReferenceListsInfo* = ptr object - StdVideoEncodeH265SliceSegmentHeaderFlags* = ptr object - StdVideoEncodeH265ReferenceInfoFlags* = ptr object - StdVideoEncodeH265ReferenceModificationFlags* = ptr object + StdVideoEncodeH265PictureInfoFlags* {.header: vk_video/vulkan_video_codec_h265std_encode.h.} = ptr object + StdVideoEncodeH265PictureInfo* {.header: vk_video/vulkan_video_codec_h265std_encode.h.} = ptr object + StdVideoEncodeH265SliceSegmentHeader* {.header: vk_video/vulkan_video_codec_h265std_encode.h.} = ptr object + StdVideoEncodeH265ReferenceInfo* {.header: vk_video/vulkan_video_codec_h265std_encode.h.} = ptr object + StdVideoEncodeH265ReferenceListsInfo* {.header: vk_video/vulkan_video_codec_h265std_encode.h.} = ptr object + StdVideoEncodeH265SliceSegmentHeaderFlags* {.header: vk_video/vulkan_video_codec_h265std_encode.h.} = ptr object + StdVideoEncodeH265ReferenceInfoFlags* {.header: vk_video/vulkan_video_codec_h265std_encode.h.} = ptr object + StdVideoEncodeH265ReferenceModificationFlags* {.header: vk_video/vulkan_video_codec_h265std_encode.h.} = ptr object VkVideoEncodeH265SessionCreateInfoKHR* = object sType*: VkStructureType @@ -11550,7 +11550,7 @@ proc newVkStreamDescriptorSurfaceCreateInfoGGP*(sType: VkStructureType, pNext: p result.flags = flags result.streamDescriptor = streamDescriptor -proc newVkScreenSurfaceCreateInfoQNX*(sType: VkStructureType, pNext: pointer = nil, flags: VkScreenSurfaceCreateFlagsQNX = 0.VkScreenSurfaceCreateFlagsQNX, context: ptr _screen_context, window: ptr _screen_window): VkScreenSurfaceCreateInfoQNX = +proc newVkScreenSurfaceCreateInfoQNX*(sType: VkStructureType, pNext: pointer = nil, flags: VkScreenSurfaceCreateFlagsQNX = 0.VkScreenSurfaceCreateFlagsQNX, context: ptr screen_context, window: ptr screen_window): VkScreenSurfaceCreateInfoQNX = result.sType = sType result.pNext = pNext result.flags = flags @@ -18327,7 +18327,7 @@ var vkCreateImagePipeSurfaceFUCHSIA*: proc(instance: VkInstance, pCreateInfo: ptr VkImagePipeSurfaceCreateInfoFUCHSIA , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.} vkCreateStreamDescriptorSurfaceGGP*: proc(instance: VkInstance, pCreateInfo: ptr VkStreamDescriptorSurfaceCreateInfoGGP , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.} vkCreateScreenSurfaceQNX*: proc(instance: VkInstance, pCreateInfo: ptr VkScreenSurfaceCreateInfoQNX , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.} - vkGetPhysicalDeviceScreenPresentationSupportQNX*: proc(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, window: ptr _screen_window ): VkBool32 {.stdcall.} + vkGetPhysicalDeviceScreenPresentationSupportQNX*: proc(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, window: ptr screen_window ): VkBool32 {.stdcall.} vkCreateDebugReportCallbackEXT*: proc(instance: VkInstance, pCreateInfo: ptr VkDebugReportCallbackCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pCallback: ptr VkDebugReportCallbackEXT ): VkResult {.stdcall.} vkDestroyDebugReportCallbackEXT*: proc(instance: VkInstance, callback: VkDebugReportCallbackEXT, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} vkDebugReportMessageEXT*: proc(instance: VkInstance, flags: VkDebugReportFlagsEXT, objectType: VkDebugReportObjectTypeEXT, `object`: uint64, location: uint, messageCode: int32, pLayerPrefix: cstring , pMessage: cstring ): void {.stdcall.} @@ -19631,7 +19631,7 @@ proc loadVK_EXT_extended_dynamic_state2*() = # Load VK_QNX_screen_surface proc loadVK_QNX_screen_surface*() = vkCreateScreenSurfaceQNX = cast[proc(instance: VkInstance, pCreateInfo: ptr VkScreenSurfaceCreateInfoQNX , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateScreenSurfaceQNX")) - vkGetPhysicalDeviceScreenPresentationSupportQNX = cast[proc(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, window: ptr _screen_window ): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceScreenPresentationSupportQNX")) + vkGetPhysicalDeviceScreenPresentationSupportQNX = cast[proc(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, window: ptr screen_window ): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceScreenPresentationSupportQNX")) # Load VK_EXT_color_write_enable proc loadVK_EXT_color_write_enable*() = diff --git a/tools/generator.nim b/tools/generator.nim index 6dc5cf4..f3a558e 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -34,6 +34,9 @@ proc translateType(s: string): string = result = result.replace("unsigned ", "u") result = result.replace("signed ", "") result = result.replace("struct ", "") + result = result.replace("_screen_context", "screen_context") + result = result.replace("_screen_window", "screen_window") + result = result.replace("_screen_buffer", "_screen_buffer") if result.contains('*'): let levels = result.count('*') @@ -62,8 +65,11 @@ proc genTypes(node: XmlNode, output: var string) = if not inType: output.add("\ntype\n") inType = true - - output.add(" {t.attr(\"name\")}* = ptr object\n".fmt) + var name = t.attr("name") + name = name.replace("_screen_context", "screen_context") + name = name.replace("_screen_window", "screen_window") + name = name.replace("_screen_buffer", "_screen_buffer") + output.add(" {name}* {{.header: {t.attr(\"requires\")}.}} = ptr object\n".fmt) # Define category From a0c0d56dd2c31b6ddd2ca3f21c434fc1e633cbbe Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Mon, 29 Apr 2024 00:48:56 +0300 Subject: [PATCH 04/57] fix --- src/vulkan.nim | 204 ++++++++++++++++++++++---------------------- tools/generator.nim | 6 +- 2 files changed, 105 insertions(+), 105 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 0b7027f..9181ac3 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -1744,35 +1744,35 @@ type # Types type - Display* {.header: X11/Xlib.h.} = ptr object - VisualID* {.header: X11/Xlib.h.} = ptr object - Window* {.header: X11/Xlib.h.} = ptr object - RROutput* {.header: X11/extensions/Xrandr.h.} = ptr object - wl_display* {.header: wayland-client.h.} = ptr object - wl_surface* {.header: wayland-client.h.} = ptr object - HINSTANCE* {.header: windows.h.} = ptr object - HWND* {.header: windows.h.} = ptr object - HMONITOR* {.header: windows.h.} = ptr object - HANDLE* {.header: windows.h.} = ptr object - SECURITY_ATTRIBUTES* {.header: windows.h.} = ptr object - DWORD* {.header: windows.h.} = ptr object - LPCWSTR* {.header: windows.h.} = ptr object - xcb_connection_t* {.header: xcb/xcb.h.} = ptr object - xcb_visualid_t* {.header: xcb/xcb.h.} = ptr object - xcb_window_t* {.header: xcb/xcb.h.} = ptr object - IDirectFB* {.header: directfb.h.} = ptr object - IDirectFBSurface* {.header: directfb.h.} = ptr object - zx_handle_t* {.header: zircon/types.h.} = ptr object - GgpStreamDescriptor* {.header: ggp_c/vulkan_types.h.} = ptr object - GgpFrameToken* {.header: ggp_c/vulkan_types.h.} = ptr object - screen_context* {.header: screen/screen.h.} = ptr object - screen_window* {.header: screen/screen.h.} = ptr object - _screen_buffer* {.header: screen/screen.h.} = ptr object - NvSciSyncAttrList* {.header: nvscisync.h.} = ptr object - NvSciSyncObj* {.header: nvscisync.h.} = ptr object - NvSciSyncFence* {.header: nvscisync.h.} = ptr object - NvSciBufAttrList* {.header: nvscibuf.h.} = ptr object - NvSciBufObj* {.header: nvscibuf.h.} = ptr object + Display* {.header: "X11/Xlib.h".} = ptr object + VisualID* {.header: "X11/Xlib.h".} = ptr object + Window* {.header: "X11/Xlib.h".} = ptr object + RROutput* {.header: "X11/extensions/Xrandr.h".} = ptr object + wl_display* {.header: "wayland-client.h".} = ptr object + wl_surface* {.header: "wayland-client.h".} = ptr object + HINSTANCE* {.header: "windows.h".} = ptr object + HWND* {.header: "windows.h".} = ptr object + HMONITOR* {.header: "windows.h".} = ptr object + HANDLE* {.header: "windows.h".} = ptr object + SECURITY_ATTRIBUTES* {.header: "windows.h".} = ptr object + DWORD* {.header: "windows.h".} = ptr object + LPCWSTR* {.header: "windows.h".} = ptr object + xcb_connection_t* {.header: "xcb/xcb.h".} = ptr object + xcb_visualid_t* {.header: "xcb/xcb.h".} = ptr object + xcb_window_t* {.header: "xcb/xcb.h".} = ptr object + IDirectFB* {.header: "directfb.h".} = ptr object + IDirectFBSurface* {.header: "directfb.h".} = ptr object + zx_handle_t* {.header: "zircon/types.h".} = ptr object + GgpStreamDescriptor* {.header: "ggp_c/vulkan_types.h".} = ptr object + GgpFrameToken* {.header: "ggp_c/vulkan_types.h".} = ptr object + screen_context* {.header: "screen/screen.h".} = ptr object + screen_window* {.header: "screen/screen.h".} = ptr object + screen_buffer* {.header: "screen/screen.h".} = ptr object + NvSciSyncAttrList* {.header: "nvscisync.h".} = ptr object + NvSciSyncObj* {.header: "nvscisync.h".} = ptr object + NvSciSyncFence* {.header: "nvscisync.h".} = ptr object + NvSciBufAttrList* {.header: "nvscibuf.h".} = ptr object + NvSciBufObj* {.header: "nvscibuf.h".} = ptr object template vkMakeVersion*(variant, major, minor, patch: untyped): untyped = (((variant) shl 29) or ((major) shl 22) or ((minor) shl 12) or (patch)) @@ -8027,28 +8027,28 @@ type queryPool*: VkQueryPool firstQuery*: uint32 queryCount*: uint32 - StdVideoH264ProfileIdc* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object - StdVideoH264LevelIdc* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object - StdVideoH264ChromaFormatIdc* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object - StdVideoH264PocType* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object - StdVideoH264SpsFlags* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object - StdVideoH264ScalingLists* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object - StdVideoH264SequenceParameterSetVui* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object - StdVideoH264AspectRatioIdc* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object - StdVideoH264HrdParameters* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object - StdVideoH264SpsVuiFlags* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object - StdVideoH264WeightedBipredIdc* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object - StdVideoH264PpsFlags* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object - StdVideoH264SliceType* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object - StdVideoH264CabacInitIdc* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object - StdVideoH264DisableDeblockingFilterIdc* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object - StdVideoH264PictureType* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object - StdVideoH264ModificationOfPicNumsIdc* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object - StdVideoH264MemMgmtControlOp* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object - StdVideoDecodeH264PictureInfo* {.header: vk_video/vulkan_video_codec_h264std_decode.h.} = ptr object - StdVideoDecodeH264ReferenceInfo* {.header: vk_video/vulkan_video_codec_h264std_decode.h.} = ptr object - StdVideoDecodeH264PictureInfoFlags* {.header: vk_video/vulkan_video_codec_h264std_decode.h.} = ptr object - StdVideoDecodeH264ReferenceInfoFlags* {.header: vk_video/vulkan_video_codec_h264std_decode.h.} = ptr object + StdVideoH264ProfileIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object + StdVideoH264LevelIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object + StdVideoH264ChromaFormatIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object + StdVideoH264PocType* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object + StdVideoH264SpsFlags* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object + StdVideoH264ScalingLists* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object + StdVideoH264SequenceParameterSetVui* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object + StdVideoH264AspectRatioIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object + StdVideoH264HrdParameters* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object + StdVideoH264SpsVuiFlags* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object + StdVideoH264WeightedBipredIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object + StdVideoH264PpsFlags* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object + StdVideoH264SliceType* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object + StdVideoH264CabacInitIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object + StdVideoH264DisableDeblockingFilterIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object + StdVideoH264PictureType* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object + StdVideoH264ModificationOfPicNumsIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object + StdVideoH264MemMgmtControlOp* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object + StdVideoDecodeH264PictureInfo* {.header: "vk_video/vulkan_video_codec_h264std_decode.h".} = ptr object + StdVideoDecodeH264ReferenceInfo* {.header: "vk_video/vulkan_video_codec_h264std_decode.h".} = ptr object + StdVideoDecodeH264PictureInfoFlags* {.header: "vk_video/vulkan_video_codec_h264std_decode.h".} = ptr object + StdVideoDecodeH264ReferenceInfoFlags* {.header: "vk_video/vulkan_video_codec_h264std_decode.h".} = ptr object VkVideoDecodeH264ProfileInfoKHR* = object sType*: VkStructureType @@ -8061,8 +8061,8 @@ type pNext*: pointer maxLevelIdc*: StdVideoH264LevelIdc fieldOffsetGranularity*: VkOffset2D - StdVideoH264SequenceParameterSet* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object - StdVideoH264PictureParameterSet* {.header: vk_video/vulkan_video_codec_h264std.h.} = ptr object + StdVideoH264SequenceParameterSet* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object + StdVideoH264PictureParameterSet* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object VkVideoDecodeH264SessionParametersAddInfoKHR* = object sType*: VkStructureType @@ -8090,28 +8090,28 @@ type sType*: VkStructureType pNext*: pointer pStdReferenceInfo*: ptr StdVideoDecodeH264ReferenceInfo - StdVideoH265ProfileIdc* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object - StdVideoH265VideoParameterSet* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object - StdVideoH265SequenceParameterSet* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object - StdVideoH265PictureParameterSet* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object - StdVideoH265DecPicBufMgr* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object - StdVideoH265HrdParameters* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object - StdVideoH265VpsFlags* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object - StdVideoH265LevelIdc* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object - StdVideoH265SpsFlags* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object - StdVideoH265ScalingLists* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object - StdVideoH265SequenceParameterSetVui* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object - StdVideoH265PredictorPaletteEntries* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object - StdVideoH265PpsFlags* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object - StdVideoH265SubLayerHrdParameters* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object - StdVideoH265HrdFlags* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object - StdVideoH265SpsVuiFlags* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object - StdVideoH265SliceType* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object - StdVideoH265PictureType* {.header: vk_video/vulkan_video_codec_h265std.h.} = ptr object - StdVideoDecodeH265PictureInfo* {.header: vk_video/vulkan_video_codec_h265std_decode.h.} = ptr object - StdVideoDecodeH265ReferenceInfo* {.header: vk_video/vulkan_video_codec_h265std_decode.h.} = ptr object - StdVideoDecodeH265PictureInfoFlags* {.header: vk_video/vulkan_video_codec_h265std_decode.h.} = ptr object - StdVideoDecodeH265ReferenceInfoFlags* {.header: vk_video/vulkan_video_codec_h265std_decode.h.} = ptr object + StdVideoH265ProfileIdc* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object + StdVideoH265VideoParameterSet* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object + StdVideoH265SequenceParameterSet* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object + StdVideoH265PictureParameterSet* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object + StdVideoH265DecPicBufMgr* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object + StdVideoH265HrdParameters* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object + StdVideoH265VpsFlags* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object + StdVideoH265LevelIdc* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object + StdVideoH265SpsFlags* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object + StdVideoH265ScalingLists* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object + StdVideoH265SequenceParameterSetVui* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object + StdVideoH265PredictorPaletteEntries* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object + StdVideoH265PpsFlags* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object + StdVideoH265SubLayerHrdParameters* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object + StdVideoH265HrdFlags* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object + StdVideoH265SpsVuiFlags* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object + StdVideoH265SliceType* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object + StdVideoH265PictureType* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object + StdVideoDecodeH265PictureInfo* {.header: "vk_video/vulkan_video_codec_h265std_decode.h".} = ptr object + StdVideoDecodeH265ReferenceInfo* {.header: "vk_video/vulkan_video_codec_h265std_decode.h".} = ptr object + StdVideoDecodeH265PictureInfoFlags* {.header: "vk_video/vulkan_video_codec_h265std_decode.h".} = ptr object + StdVideoDecodeH265ReferenceInfoFlags* {.header: "vk_video/vulkan_video_codec_h265std_decode.h".} = ptr object VkVideoDecodeH265ProfileInfoKHR* = object sType*: VkStructureType @@ -8152,11 +8152,11 @@ type sType*: VkStructureType pNext*: pointer pStdReferenceInfo*: ptr StdVideoDecodeH265ReferenceInfo - StdVideoAV1Profile* {.header: vk_video/vulkan_video_codec_av1std.h.} = ptr object - StdVideoAV1Level* {.header: vk_video/vulkan_video_codec_av1std.h.} = ptr object - StdVideoAV1SequenceHeader* {.header: vk_video/vulkan_video_codec_av1std.h.} = ptr object - StdVideoDecodeAV1PictureInfo* {.header: vk_video/vulkan_video_codec_av1std_decode.h.} = ptr object - StdVideoDecodeAV1ReferenceInfo* {.header: vk_video/vulkan_video_codec_av1std_decode.h.} = ptr object + StdVideoAV1Profile* {.header: "vk_video/vulkan_video_codec_av1std.h".} = ptr object + StdVideoAV1Level* {.header: "vk_video/vulkan_video_codec_av1std.h".} = ptr object + StdVideoAV1SequenceHeader* {.header: "vk_video/vulkan_video_codec_av1std.h".} = ptr object + StdVideoDecodeAV1PictureInfo* {.header: "vk_video/vulkan_video_codec_av1std_decode.h".} = ptr object + StdVideoDecodeAV1ReferenceInfo* {.header: "vk_video/vulkan_video_codec_av1std_decode.h".} = ptr object VkVideoDecodeAV1ProfileInfoKHR* = object sType*: VkStructureType @@ -8343,16 +8343,16 @@ type preferredMaxL0ReferenceCount*: uint32 preferredMaxL1ReferenceCount*: uint32 preferredStdEntropyCodingModeFlag*: VkBool32 - StdVideoEncodeH264SliceHeader* {.header: vk_video/vulkan_video_codec_h264std_encode.h.} = ptr object - StdVideoEncodeH264PictureInfo* {.header: vk_video/vulkan_video_codec_h264std_encode.h.} = ptr object - StdVideoEncodeH264ReferenceInfo* {.header: vk_video/vulkan_video_codec_h264std_encode.h.} = ptr object - StdVideoEncodeH264SliceHeaderFlags* {.header: vk_video/vulkan_video_codec_h264std_encode.h.} = ptr object - StdVideoEncodeH264ReferenceListsInfo* {.header: vk_video/vulkan_video_codec_h264std_encode.h.} = ptr object - StdVideoEncodeH264PictureInfoFlags* {.header: vk_video/vulkan_video_codec_h264std_encode.h.} = ptr object - StdVideoEncodeH264ReferenceInfoFlags* {.header: vk_video/vulkan_video_codec_h264std_encode.h.} = ptr object - StdVideoEncodeH264RefMgmtFlags* {.header: vk_video/vulkan_video_codec_h264std_encode.h.} = ptr object - StdVideoEncodeH264RefListModEntry* {.header: vk_video/vulkan_video_codec_h264std_encode.h.} = ptr object - StdVideoEncodeH264RefPicMarkingEntry* {.header: vk_video/vulkan_video_codec_h264std_encode.h.} = ptr object + StdVideoEncodeH264SliceHeader* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = ptr object + StdVideoEncodeH264PictureInfo* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = ptr object + StdVideoEncodeH264ReferenceInfo* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = ptr object + StdVideoEncodeH264SliceHeaderFlags* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = ptr object + StdVideoEncodeH264ReferenceListsInfo* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = ptr object + StdVideoEncodeH264PictureInfoFlags* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = ptr object + StdVideoEncodeH264ReferenceInfoFlags* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = ptr object + StdVideoEncodeH264RefMgmtFlags* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = ptr object + StdVideoEncodeH264RefListModEntry* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = ptr object + StdVideoEncodeH264RefPicMarkingEntry* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = ptr object VkVideoEncodeH264SessionCreateInfoKHR* = object sType*: VkStructureType @@ -8481,14 +8481,14 @@ type preferredConstantQp*: VkVideoEncodeH265QpKHR preferredMaxL0ReferenceCount*: uint32 preferredMaxL1ReferenceCount*: uint32 - StdVideoEncodeH265PictureInfoFlags* {.header: vk_video/vulkan_video_codec_h265std_encode.h.} = ptr object - StdVideoEncodeH265PictureInfo* {.header: vk_video/vulkan_video_codec_h265std_encode.h.} = ptr object - StdVideoEncodeH265SliceSegmentHeader* {.header: vk_video/vulkan_video_codec_h265std_encode.h.} = ptr object - StdVideoEncodeH265ReferenceInfo* {.header: vk_video/vulkan_video_codec_h265std_encode.h.} = ptr object - StdVideoEncodeH265ReferenceListsInfo* {.header: vk_video/vulkan_video_codec_h265std_encode.h.} = ptr object - StdVideoEncodeH265SliceSegmentHeaderFlags* {.header: vk_video/vulkan_video_codec_h265std_encode.h.} = ptr object - StdVideoEncodeH265ReferenceInfoFlags* {.header: vk_video/vulkan_video_codec_h265std_encode.h.} = ptr object - StdVideoEncodeH265ReferenceModificationFlags* {.header: vk_video/vulkan_video_codec_h265std_encode.h.} = ptr object + StdVideoEncodeH265PictureInfoFlags* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = ptr object + StdVideoEncodeH265PictureInfo* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = ptr object + StdVideoEncodeH265SliceSegmentHeader* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = ptr object + StdVideoEncodeH265ReferenceInfo* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = ptr object + StdVideoEncodeH265ReferenceListsInfo* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = ptr object + StdVideoEncodeH265SliceSegmentHeaderFlags* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = ptr object + StdVideoEncodeH265ReferenceInfoFlags* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = ptr object + StdVideoEncodeH265ReferenceModificationFlags* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = ptr object VkVideoEncodeH265SessionCreateInfoKHR* = object sType*: VkStructureType @@ -9955,7 +9955,7 @@ type VkImportScreenBufferInfoQNX* = object sType*: VkStructureType pNext*: pointer - buffer*: ptr _screen_buffer + buffer*: ptr screen_buffer VkScreenBufferPropertiesQNX* = object sType*: VkStructureType @@ -17700,7 +17700,7 @@ proc newVkPhysicalDeviceShaderTileImagePropertiesEXT*(sType: VkStructureType, pN result.shaderTileImageReadSampleFromPixelRateInvocation = shaderTileImageReadSampleFromPixelRateInvocation result.shaderTileImageReadFromHelperInvocation = shaderTileImageReadFromHelperInvocation -proc newVkImportScreenBufferInfoQNX*(sType: VkStructureType, pNext: pointer = nil, buffer: ptr _screen_buffer): VkImportScreenBufferInfoQNX = +proc newVkImportScreenBufferInfoQNX*(sType: VkStructureType, pNext: pointer = nil, buffer: ptr screen_buffer): VkImportScreenBufferInfoQNX = result.sType = sType result.pNext = pNext result.buffer = buffer @@ -18738,7 +18738,7 @@ var vkDestroyShaderEXT*: proc(device: VkDevice, shader: VkShaderEXT, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} vkGetShaderBinaryDataEXT*: proc(device: VkDevice, shader: VkShaderEXT, pDataSize: ptr uint , pData: pointer ): VkResult {.stdcall.} vkCmdBindShadersEXT*: proc(commandBuffer: VkCommandBuffer, stageCount: uint32, pStages: ptr VkShaderStageFlagBits , pShaders: ptr VkShaderEXT ): void {.stdcall.} - vkGetScreenBufferPropertiesQNX*: proc(device: VkDevice, buffer: ptr _screen_buffer , pProperties: ptr VkScreenBufferPropertiesQNX ): VkResult {.stdcall.} + vkGetScreenBufferPropertiesQNX*: proc(device: VkDevice, buffer: ptr screen_buffer , pProperties: ptr VkScreenBufferPropertiesQNX ): VkResult {.stdcall.} vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR*: proc(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkCooperativeMatrixPropertiesKHR ): VkResult {.stdcall.} vkGetExecutionGraphPipelineScratchSizeAMDX*: proc(device: VkDevice, executionGraph: VkPipeline, pSizeInfo: ptr VkExecutionGraphPipelineScratchSizeAMDX ): VkResult {.stdcall.} vkGetExecutionGraphPipelineNodeIndexAMDX*: proc(device: VkDevice, executionGraph: VkPipeline, pNodeInfo: ptr VkPipelineShaderStageNodeCreateInfoAMDX , pNodeIndex: ptr uint32 ): VkResult {.stdcall.} @@ -19821,7 +19821,7 @@ proc loadVK_EXT_attachment_feedback_loop_dynamic_state*() = # Load VK_QNX_external_memory_screen_buffer proc loadVK_QNX_external_memory_screen_buffer*() = - vkGetScreenBufferPropertiesQNX = cast[proc(device: VkDevice, buffer: ptr _screen_buffer , pProperties: ptr VkScreenBufferPropertiesQNX ): VkResult {.stdcall.}](vkGetProc("vkGetScreenBufferPropertiesQNX")) + vkGetScreenBufferPropertiesQNX = cast[proc(device: VkDevice, buffer: ptr screen_buffer , pProperties: ptr VkScreenBufferPropertiesQNX ): VkResult {.stdcall.}](vkGetProc("vkGetScreenBufferPropertiesQNX")) # Load VK_KHR_line_rasterization proc loadVK_KHR_line_rasterization*() = diff --git a/tools/generator.nim b/tools/generator.nim index f3a558e..9b86e1d 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -36,7 +36,7 @@ proc translateType(s: string): string = result = result.replace("struct ", "") result = result.replace("_screen_context", "screen_context") result = result.replace("_screen_window", "screen_window") - result = result.replace("_screen_buffer", "_screen_buffer") + result = result.replace("_screen_buffer", "screen_buffer") if result.contains('*'): let levels = result.count('*') @@ -68,8 +68,8 @@ proc genTypes(node: XmlNode, output: var string) = var name = t.attr("name") name = name.replace("_screen_context", "screen_context") name = name.replace("_screen_window", "screen_window") - name = name.replace("_screen_buffer", "_screen_buffer") - output.add(" {name}* {{.header: {t.attr(\"requires\")}.}} = ptr object\n".fmt) + name = name.replace("_screen_buffer", "screen_buffer") + output.add(" {name}* {{.header: \"{t.attr(\"requires\")}\".}} = ptr object\n".fmt) # Define category From 34bb32bfd0531099dab037b569d62032343faa3f Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Mon, 29 Apr 2024 01:09:53 +0300 Subject: [PATCH 05/57] fix formating and off by one error --- src/vulkan.nim | 2654 +++++++++++++++++++++---------------------- tools/generator.nim | 42 +- tools/utils.nim | 26 +- 3 files changed, 1359 insertions(+), 1363 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 9181ac3..545af2f 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -5,7 +5,7 @@ ## WARNING: This is a generated file. Do not edit ## Any edits will be overwritten by the generator. -var vkGetProc: proc(procName: cstring): pointer {.cdecl.} +var vkGetProc: proc (procName: cstring): pointer {.cdecl.} var currInst: pointer = nil when not defined(vkCustomLoader): @@ -22,11 +22,11 @@ when not defined(vkCustomLoader): if isNil(vkHandleDLL): quit("could not load: " & vkDLL) - let vkGetProcAddress = cast[proc(inst: pointer, s: cstring): pointer {.stdcall.}](symAddr(vkHandleDLL, "vkGetInstanceProcAddr")) + let vkGetProcAddress = cast[proc (inst: pointer, s: cstring): pointer {.stdcall.}](symAddr(vkHandleDLL, "vkGetInstanceProcAddr")) if vkGetProcAddress == nil: quit("failed to load `vkGetInstanceProcAddr` from " & vkDLL) - vkGetProc = proc(procName: cstring): pointer {.cdecl.} = + vkGetProc = proc (procName: cstring): pointer {.cdecl.} = when defined(windows): result = vkGetProcAddress(currInst, procName) if result != nil: @@ -35,7 +35,7 @@ when not defined(vkCustomLoader): if result == nil: raiseInvalidLibrary(procName) -proc setVKGetProc*(getProc: proc(procName: cstring): pointer {.cdecl.}) = +proc setVKGetProc*(getProc: proc (procName: cstring): pointer {.cdecl.}) = vkGetProc = getProc type @@ -2113,17 +2113,17 @@ type VkShaderFloatControlsIndependenceKHR* = VkShaderFloatControlsIndependence VkSubmitFlagBitsKHR* = VkSubmitFlagBits VkDriverIdKHR* = VkDriverId - PFN_vkInternalAllocationNotification* = proc(pUserData: pointer; size: csize; allocationType: VkInternalAllocationType; allocationScope: VkSystemAllocationScope) {.cdecl.} - PFN_vkInternalFreeNotification* = proc(pUserData: pointer; size: csize; allocationType: VkInternalAllocationType; allocationScope: VkSystemAllocationScope) {.cdecl.} - PFN_vkReallocationFunction* = proc(pUserData: pointer; pOriginal: pointer; size: csize; alignment: csize; allocationScope: VkSystemAllocationScope): pointer {.cdecl.} - PFN_vkAllocationFunction* = proc(pUserData: pointer; size: csize; alignment: csize; allocationScope: VkSystemAllocationScope): pointer {.cdecl.} - PFN_vkFreeFunction* = proc(pUserData: pointer; pMemory: pointer) {.cdecl.} - PFN_vkVoidFunction* = proc() {.cdecl.} - PFN_vkDebugReportCallbackEXT* = proc(flags: VkDebugReportFlagsEXT; objectType: VkDebugReportObjectTypeEXT; cbObject: uint64; location: csize; messageCode: int32; pLayerPrefix: cstring; pMessage: cstring; pUserData: pointer): VkBool32 {.cdecl.} - PFN_vkDebugUtilsMessengerCallbackEXT* = proc(messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEXT, messageTypes: VkDebugUtilsMessageTypeFlagsEXT, pCallbackData: VkDebugUtilsMessengerCallbackDataEXT, userData: pointer): VkBool32 {.cdecl.} - PFN_vkFaultCallbackFunction* = proc(unrecordedFaults: VkBool32; faultCount: uint32; pFaults: ptr VkFaultData) {.cdecl.} - PFN_vkDeviceMemoryReportCallbackEXT* = proc(pCallbackData: ptr VkDeviceMemoryReportCallbackDataEXT; pUserData: pointer) {.cdecl.} - PFN_vkGetInstanceProcAddrLUNARG* = proc(instance: VkInstance; pName: cstring): PFN_vkVoidFunction {.cdecl.} + PFN_vkInternalAllocationNotification* = proc (pUserData: pointer; size: csize; allocationType: VkInternalAllocationType; allocationScope: VkSystemAllocationScope) {.cdecl.} + PFN_vkInternalFreeNotification* = proc (pUserData: pointer; size: csize; allocationType: VkInternalAllocationType; allocationScope: VkSystemAllocationScope) {.cdecl.} + PFN_vkReallocationFunction* = proc (pUserData: pointer; pOriginal: pointer; size: csize; alignment: csize; allocationScope: VkSystemAllocationScope): pointer {.cdecl.} + PFN_vkAllocationFunction* = proc (pUserData: pointer; size: csize; alignment: csize; allocationScope: VkSystemAllocationScope): pointer {.cdecl.} + PFN_vkFreeFunction* = proc (pUserData: pointer; pMemory: pointer) {.cdecl.} + PFN_vkVoidFunction* = proc () {.cdecl.} + PFN_vkDebugReportCallbackEXT* = proc (flags: VkDebugReportFlagsEXT; objectType: VkDebugReportObjectTypeEXT; cbObject: uint64; location: csize; messageCode: int32; pLayerPrefix: cstring; pMessage: cstring; pUserData: pointer): VkBool32 {.cdecl.} + PFN_vkDebugUtilsMessengerCallbackEXT* = proc (messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEXT, messageTypes: VkDebugUtilsMessageTypeFlagsEXT, pCallbackData: VkDebugUtilsMessengerCallbackDataEXT, userData: pointer): VkBool32 {.cdecl.} + PFN_vkFaultCallbackFunction* = proc (unrecordedFaults: VkBool32; faultCount: uint32; pFaults: ptr VkFaultData) {.cdecl.} + PFN_vkDeviceMemoryReportCallbackEXT* = proc (pCallbackData: ptr VkDeviceMemoryReportCallbackDataEXT; pUserData: pointer) {.cdecl.} + PFN_vkGetInstanceProcAddrLUNARG* = proc (instance: VkInstance; pName: cstring): PFN_vkVoidFunction {.cdecl.} VkOffset2D* = object x*: int32 @@ -18141,1721 +18141,1721 @@ proc newVkPhysicalDeviceRawAccessChainsFeaturesNV*(sType: VkStructureType, pNext # Procs var - vkDestroyInstance*: proc(instance: VkInstance, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkEnumeratePhysicalDevices*: proc(instance: VkInstance, pPhysicalDeviceCount: ptr uint32 , pPhysicalDevices: ptr VkPhysicalDevice ): VkResult {.stdcall.} - vkGetDeviceProcAddr*: proc(device: VkDevice, pName: cstring ): PFN_vkVoidFunction {.stdcall.} - vkGetInstanceProcAddr*: proc(instance: VkInstance, pName: cstring ): PFN_vkVoidFunction {.stdcall.} - vkGetPhysicalDeviceProperties*: proc(physicalDevice: VkPhysicalDevice, pProperties: ptr VkPhysicalDeviceProperties ): void {.stdcall.} - vkGetPhysicalDeviceQueueFamilyProperties*: proc(physicalDevice: VkPhysicalDevice, pQueueFamilyPropertyCount: ptr uint32 , pQueueFamilyProperties: ptr VkQueueFamilyProperties ): void {.stdcall.} - vkGetPhysicalDeviceMemoryProperties*: proc(physicalDevice: VkPhysicalDevice, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties ): void {.stdcall.} - vkGetPhysicalDeviceFeatures*: proc(physicalDevice: VkPhysicalDevice, pFeatures: ptr VkPhysicalDeviceFeatures ): void {.stdcall.} - vkGetPhysicalDeviceFormatProperties*: proc(physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: ptr VkFormatProperties ): void {.stdcall.} - vkGetPhysicalDeviceImageFormatProperties*: proc(physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, tiling: VkImageTiling, usage: VkImageUsageFlags, flags: VkImageCreateFlags, pImageFormatProperties: ptr VkImageFormatProperties ): VkResult {.stdcall.} - vkCreateDevice*: proc(physicalDevice: VkPhysicalDevice, pCreateInfo: ptr VkDeviceCreateInfo , pAllocator: ptr VkAllocationCallbacks , pDevice: ptr VkDevice ): VkResult {.stdcall.} - vkCreateDevice*: proc(physicalDevice: VkPhysicalDevice, pCreateInfo: ptr VkDeviceCreateInfo , pAllocator: ptr VkAllocationCallbacks , pDevice: ptr VkDevice ): VkResult {.stdcall.} - vkDestroyDevice*: proc(device: VkDevice, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkEnumerateDeviceLayerProperties*: proc(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkLayerProperties ): VkResult {.stdcall.} - vkEnumerateDeviceLayerProperties*: proc(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkLayerProperties ): VkResult {.stdcall.} - vkEnumerateDeviceExtensionProperties*: proc(physicalDevice: VkPhysicalDevice, pLayerName: cstring , pPropertyCount: ptr uint32 , pProperties: ptr VkExtensionProperties ): VkResult {.stdcall.} - vkGetDeviceQueue*: proc(device: VkDevice, queueFamilyIndex: uint32, queueIndex: uint32, pQueue: ptr VkQueue ): void {.stdcall.} - vkQueueSubmit*: proc(queue: VkQueue, submitCount: uint32, pSubmits: ptr VkSubmitInfo , fence: VkFence): VkResult {.stdcall.} - vkQueueWaitIdle*: proc(queue: VkQueue): VkResult {.stdcall.} - vkDeviceWaitIdle*: proc(device: VkDevice): VkResult {.stdcall.} - vkAllocateMemory*: proc(device: VkDevice, pAllocateInfo: ptr VkMemoryAllocateInfo , pAllocator: ptr VkAllocationCallbacks , pMemory: ptr VkDeviceMemory ): VkResult {.stdcall.} - vkFreeMemory*: proc(device: VkDevice, memory: VkDeviceMemory, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkMapMemory*: proc(device: VkDevice, memory: VkDeviceMemory, offset: VkDeviceSize, size: VkDeviceSize, flags: VkMemoryMapFlags, ppData: ptr pointer ): VkResult {.stdcall.} - vkUnmapMemory*: proc(device: VkDevice, memory: VkDeviceMemory): void {.stdcall.} - vkFlushMappedMemoryRanges*: proc(device: VkDevice, memoryRangeCount: uint32, pMemoryRanges: ptr VkMappedMemoryRange ): VkResult {.stdcall.} - vkInvalidateMappedMemoryRanges*: proc(device: VkDevice, memoryRangeCount: uint32, pMemoryRanges: ptr VkMappedMemoryRange ): VkResult {.stdcall.} - vkGetDeviceMemoryCommitment*: proc(device: VkDevice, memory: VkDeviceMemory, pCommittedMemoryInBytes: ptr VkDeviceSize ): void {.stdcall.} - vkGetBufferMemoryRequirements*: proc(device: VkDevice, buffer: VkBuffer, pMemoryRequirements: ptr VkMemoryRequirements ): void {.stdcall.} - vkBindBufferMemory*: proc(device: VkDevice, buffer: VkBuffer, memory: VkDeviceMemory, memoryOffset: VkDeviceSize): VkResult {.stdcall.} - vkGetImageMemoryRequirements*: proc(device: VkDevice, image: VkImage, pMemoryRequirements: ptr VkMemoryRequirements ): void {.stdcall.} - vkBindImageMemory*: proc(device: VkDevice, image: VkImage, memory: VkDeviceMemory, memoryOffset: VkDeviceSize): VkResult {.stdcall.} - vkGetImageSparseMemoryRequirements*: proc(device: VkDevice, image: VkImage, pSparseMemoryRequirementCount: ptr uint32 , pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements ): void {.stdcall.} - vkGetPhysicalDeviceSparseImageFormatProperties*: proc(physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, samples: VkSampleCountFlagBits, usage: VkImageUsageFlags, tiling: VkImageTiling, pPropertyCount: ptr uint32 , pProperties: ptr VkSparseImageFormatProperties ): void {.stdcall.} - vkQueueBindSparse*: proc(queue: VkQueue, bindInfoCount: uint32, pBindInfo: ptr VkBindSparseInfo , fence: VkFence): VkResult {.stdcall.} - vkCreateFence*: proc(device: VkDevice, pCreateInfo: ptr VkFenceCreateInfo , pAllocator: ptr VkAllocationCallbacks , pFence: ptr VkFence ): VkResult {.stdcall.} - vkDestroyFence*: proc(device: VkDevice, fence: VkFence, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkResetFences*: proc(device: VkDevice, fenceCount: uint32, pFences: ptr VkFence ): VkResult {.stdcall.} - vkGetFenceStatus*: proc(device: VkDevice, fence: VkFence): VkResult {.stdcall.} - vkWaitForFences*: proc(device: VkDevice, fenceCount: uint32, pFences: ptr VkFence , waitAll: VkBool32, timeout: uint64): VkResult {.stdcall.} - vkCreateSemaphore*: proc(device: VkDevice, pCreateInfo: ptr VkSemaphoreCreateInfo , pAllocator: ptr VkAllocationCallbacks , pSemaphore: ptr VkSemaphore ): VkResult {.stdcall.} - vkDestroySemaphore*: proc(device: VkDevice, semaphore: VkSemaphore, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkCreateEvent*: proc(device: VkDevice, pCreateInfo: ptr VkEventCreateInfo , pAllocator: ptr VkAllocationCallbacks , pEvent: ptr VkEvent ): VkResult {.stdcall.} - vkDestroyEvent*: proc(device: VkDevice, event: VkEvent, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkGetEventStatus*: proc(device: VkDevice, event: VkEvent): VkResult {.stdcall.} - vkSetEvent*: proc(device: VkDevice, event: VkEvent): VkResult {.stdcall.} - vkResetEvent*: proc(device: VkDevice, event: VkEvent): VkResult {.stdcall.} - vkCreateQueryPool*: proc(device: VkDevice, pCreateInfo: ptr VkQueryPoolCreateInfo , pAllocator: ptr VkAllocationCallbacks , pQueryPool: ptr VkQueryPool ): VkResult {.stdcall.} - vkDestroyQueryPool*: proc(device: VkDevice, queryPool: VkQueryPool, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkGetQueryPoolResults*: proc(device: VkDevice, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32, dataSize: uint, pData: pointer , stride: VkDeviceSize, flags: VkQueryResultFlags): VkResult {.stdcall.} - vkResetQueryPool*: proc(device: VkDevice, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32): void {.stdcall.} - vkCreateBuffer*: proc(device: VkDevice, pCreateInfo: ptr VkBufferCreateInfo , pAllocator: ptr VkAllocationCallbacks , pBuffer: ptr VkBuffer ): VkResult {.stdcall.} - vkDestroyBuffer*: proc(device: VkDevice, buffer: VkBuffer, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkCreateBufferView*: proc(device: VkDevice, pCreateInfo: ptr VkBufferViewCreateInfo , pAllocator: ptr VkAllocationCallbacks , pView: ptr VkBufferView ): VkResult {.stdcall.} - vkDestroyBufferView*: proc(device: VkDevice, bufferView: VkBufferView, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkCreateImage*: proc(device: VkDevice, pCreateInfo: ptr VkImageCreateInfo , pAllocator: ptr VkAllocationCallbacks , pImage: ptr VkImage ): VkResult {.stdcall.} - vkDestroyImage*: proc(device: VkDevice, image: VkImage, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkGetImageSubresourceLayout*: proc(device: VkDevice, image: VkImage, pSubresource: ptr VkImageSubresource , pLayout: ptr VkSubresourceLayout ): void {.stdcall.} - vkCreateImageView*: proc(device: VkDevice, pCreateInfo: ptr VkImageViewCreateInfo , pAllocator: ptr VkAllocationCallbacks , pView: ptr VkImageView ): VkResult {.stdcall.} - vkDestroyImageView*: proc(device: VkDevice, imageView: VkImageView, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkCreateShaderModule*: proc(device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo , pAllocator: ptr VkAllocationCallbacks , pShaderModule: ptr VkShaderModule ): VkResult {.stdcall.} - vkDestroyShaderModule*: proc(device: VkDevice, shaderModule: VkShaderModule, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkCreatePipelineCache*: proc(device: VkDevice, pCreateInfo: ptr VkPipelineCacheCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelineCache: ptr VkPipelineCache ): VkResult {.stdcall.} - vkCreatePipelineCache*: proc(device: VkDevice, pCreateInfo: ptr VkPipelineCacheCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelineCache: ptr VkPipelineCache ): VkResult {.stdcall.} - vkDestroyPipelineCache*: proc(device: VkDevice, pipelineCache: VkPipelineCache, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkGetPipelineCacheData*: proc(device: VkDevice, pipelineCache: VkPipelineCache, pDataSize: ptr uint , pData: pointer ): VkResult {.stdcall.} - vkMergePipelineCaches*: proc(device: VkDevice, dstCache: VkPipelineCache, srcCacheCount: uint32, pSrcCaches: ptr VkPipelineCache ): VkResult {.stdcall.} - vkCreateGraphicsPipelines*: proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkGraphicsPipelineCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.} - vkCreateGraphicsPipelines*: proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkGraphicsPipelineCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.} - vkCreateComputePipelines*: proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkComputePipelineCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.} - vkCreateComputePipelines*: proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkComputePipelineCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.} - vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI*: proc(device: VkDevice, renderpass: VkRenderPass, pMaxWorkgroupSize: ptr VkExtent2D ): VkResult {.stdcall.} - vkDestroyPipeline*: proc(device: VkDevice, pipeline: VkPipeline, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkCreatePipelineLayout*: proc(device: VkDevice, pCreateInfo: ptr VkPipelineLayoutCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelineLayout: ptr VkPipelineLayout ): VkResult {.stdcall.} - vkDestroyPipelineLayout*: proc(device: VkDevice, pipelineLayout: VkPipelineLayout, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkCreateSampler*: proc(device: VkDevice, pCreateInfo: ptr VkSamplerCreateInfo , pAllocator: ptr VkAllocationCallbacks , pSampler: ptr VkSampler ): VkResult {.stdcall.} - vkDestroySampler*: proc(device: VkDevice, sampler: VkSampler, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkCreateDescriptorSetLayout*: proc(device: VkDevice, pCreateInfo: ptr VkDescriptorSetLayoutCreateInfo , pAllocator: ptr VkAllocationCallbacks , pSetLayout: ptr VkDescriptorSetLayout ): VkResult {.stdcall.} - vkDestroyDescriptorSetLayout*: proc(device: VkDevice, descriptorSetLayout: VkDescriptorSetLayout, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkCreateDescriptorPool*: proc(device: VkDevice, pCreateInfo: ptr VkDescriptorPoolCreateInfo , pAllocator: ptr VkAllocationCallbacks , pDescriptorPool: ptr VkDescriptorPool ): VkResult {.stdcall.} - vkDestroyDescriptorPool*: proc(device: VkDevice, descriptorPool: VkDescriptorPool, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkResetDescriptorPool*: proc(device: VkDevice, descriptorPool: VkDescriptorPool, flags: VkDescriptorPoolResetFlags): VkResult {.stdcall.} - vkAllocateDescriptorSets*: proc(device: VkDevice, pAllocateInfo: ptr VkDescriptorSetAllocateInfo , pDescriptorSets: ptr VkDescriptorSet ): VkResult {.stdcall.} - vkFreeDescriptorSets*: proc(device: VkDevice, descriptorPool: VkDescriptorPool, descriptorSetCount: uint32, pDescriptorSets: ptr VkDescriptorSet ): VkResult {.stdcall.} - vkUpdateDescriptorSets*: proc(device: VkDevice, descriptorWriteCount: uint32, pDescriptorWrites: ptr VkWriteDescriptorSet , descriptorCopyCount: uint32, pDescriptorCopies: ptr VkCopyDescriptorSet ): void {.stdcall.} - vkCreateFramebuffer*: proc(device: VkDevice, pCreateInfo: ptr VkFramebufferCreateInfo , pAllocator: ptr VkAllocationCallbacks , pFramebuffer: ptr VkFramebuffer ): VkResult {.stdcall.} - vkDestroyFramebuffer*: proc(device: VkDevice, framebuffer: VkFramebuffer, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkCreateRenderPass*: proc(device: VkDevice, pCreateInfo: ptr VkRenderPassCreateInfo , pAllocator: ptr VkAllocationCallbacks , pRenderPass: ptr VkRenderPass ): VkResult {.stdcall.} - vkDestroyRenderPass*: proc(device: VkDevice, renderPass: VkRenderPass, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkGetRenderAreaGranularity*: proc(device: VkDevice, renderPass: VkRenderPass, pGranularity: ptr VkExtent2D ): void {.stdcall.} - vkGetRenderingAreaGranularityKHR*: proc(device: VkDevice, pRenderingAreaInfo: ptr VkRenderingAreaInfoKHR , pGranularity: ptr VkExtent2D ): void {.stdcall.} - vkCreateCommandPool*: proc(device: VkDevice, pCreateInfo: ptr VkCommandPoolCreateInfo , pAllocator: ptr VkAllocationCallbacks , pCommandPool: ptr VkCommandPool ): VkResult {.stdcall.} - vkDestroyCommandPool*: proc(device: VkDevice, commandPool: VkCommandPool, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkResetCommandPool*: proc(device: VkDevice, commandPool: VkCommandPool, flags: VkCommandPoolResetFlags): VkResult {.stdcall.} - vkAllocateCommandBuffers*: proc(device: VkDevice, pAllocateInfo: ptr VkCommandBufferAllocateInfo , pCommandBuffers: ptr VkCommandBuffer ): VkResult {.stdcall.} - vkFreeCommandBuffers*: proc(device: VkDevice, commandPool: VkCommandPool, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer ): void {.stdcall.} - vkBeginCommandBuffer*: proc(commandBuffer: VkCommandBuffer, pBeginInfo: ptr VkCommandBufferBeginInfo ): VkResult {.stdcall.} - vkEndCommandBuffer*: proc(commandBuffer: VkCommandBuffer): VkResult {.stdcall.} - vkResetCommandBuffer*: proc(commandBuffer: VkCommandBuffer, flags: VkCommandBufferResetFlags): VkResult {.stdcall.} - vkCmdBindPipeline*: proc(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline): void {.stdcall.} - vkCmdSetAttachmentFeedbackLoopEnableEXT*: proc(commandBuffer: VkCommandBuffer, aspectMask: VkImageAspectFlags): void {.stdcall.} - vkCmdSetViewport*: proc(commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewports: ptr VkViewport ): void {.stdcall.} - vkCmdSetScissor*: proc(commandBuffer: VkCommandBuffer, firstScissor: uint32, scissorCount: uint32, pScissors: ptr VkRect2D ): void {.stdcall.} - vkCmdSetLineWidth*: proc(commandBuffer: VkCommandBuffer, lineWidth: float32): void {.stdcall.} - vkCmdSetDepthBias*: proc(commandBuffer: VkCommandBuffer, depthBiasConstantFactor: float32, depthBiasClamp: float32, depthBiasSlopeFactor: float32): void {.stdcall.} - vkCmdSetBlendConstants*: proc(commandBuffer: VkCommandBuffer, blendConstants: array[4, float32]): void {.stdcall.} - vkCmdSetDepthBounds*: proc(commandBuffer: VkCommandBuffer, minDepthBounds: float32, maxDepthBounds: float32): void {.stdcall.} - vkCmdSetStencilCompareMask*: proc(commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, compareMask: uint32): void {.stdcall.} - vkCmdSetStencilWriteMask*: proc(commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, writeMask: uint32): void {.stdcall.} - vkCmdSetStencilReference*: proc(commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, reference: uint32): void {.stdcall.} - vkCmdBindDescriptorSets*: proc(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, firstSet: uint32, descriptorSetCount: uint32, pDescriptorSets: ptr VkDescriptorSet , dynamicOffsetCount: uint32, pDynamicOffsets: ptr uint32 ): void {.stdcall.} - vkCmdBindIndexBuffer*: proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, indexType: VkIndexType): void {.stdcall.} - vkCmdBindVertexBuffers*: proc(commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer , pOffsets: ptr VkDeviceSize ): void {.stdcall.} - vkCmdDraw*: proc(commandBuffer: VkCommandBuffer, vertexCount: uint32, instanceCount: uint32, firstVertex: uint32, firstInstance: uint32): void {.stdcall.} - vkCmdDrawIndexed*: proc(commandBuffer: VkCommandBuffer, indexCount: uint32, instanceCount: uint32, firstIndex: uint32, vertexOffset: int32, firstInstance: uint32): void {.stdcall.} - vkCmdDrawMultiEXT*: proc(commandBuffer: VkCommandBuffer, drawCount: uint32, pVertexInfo: ptr VkMultiDrawInfoEXT , instanceCount: uint32, firstInstance: uint32, stride: uint32): void {.stdcall.} - vkCmdDrawMultiIndexedEXT*: proc(commandBuffer: VkCommandBuffer, drawCount: uint32, pIndexInfo: ptr VkMultiDrawIndexedInfoEXT , instanceCount: uint32, firstInstance: uint32, stride: uint32, pVertexOffset: ptr int32 ): void {.stdcall.} - vkCmdDrawIndirect*: proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.} - vkCmdDrawIndexedIndirect*: proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.} - vkCmdDispatch*: proc(commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.} - vkCmdDispatchIndirect*: proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize): void {.stdcall.} - vkCmdSubpassShadingHUAWEI*: proc(commandBuffer: VkCommandBuffer): void {.stdcall.} - vkCmdDrawClusterHUAWEI*: proc(commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.} - vkCmdDrawClusterIndirectHUAWEI*: proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize): void {.stdcall.} - vkCmdUpdatePipelineIndirectBufferNV*: proc(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline): void {.stdcall.} - vkCmdCopyBuffer*: proc(commandBuffer: VkCommandBuffer, srcBuffer: VkBuffer, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferCopy ): void {.stdcall.} - vkCmdCopyImage*: proc(commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageCopy ): void {.stdcall.} - vkCmdBlitImage*: proc(commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageBlit , filter: VkFilter): void {.stdcall.} - vkCmdCopyBufferToImage*: proc(commandBuffer: VkCommandBuffer, srcBuffer: VkBuffer, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkBufferImageCopy ): void {.stdcall.} - vkCmdCopyImageToBuffer*: proc(commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferImageCopy ): void {.stdcall.} - vkCmdCopyMemoryIndirectNV*: proc(commandBuffer: VkCommandBuffer, copyBufferAddress: VkDeviceAddress, copyCount: uint32, stride: uint32): void {.stdcall.} - vkCmdCopyMemoryToImageIndirectNV*: proc(commandBuffer: VkCommandBuffer, copyBufferAddress: VkDeviceAddress, copyCount: uint32, stride: uint32, dstImage: VkImage, dstImageLayout: VkImageLayout, pImageSubresources: ptr VkImageSubresourceLayers ): void {.stdcall.} - vkCmdUpdateBuffer*: proc(commandBuffer: VkCommandBuffer, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, dataSize: VkDeviceSize, pData: pointer ): void {.stdcall.} - vkCmdFillBuffer*: proc(commandBuffer: VkCommandBuffer, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, size: VkDeviceSize, data: uint32): void {.stdcall.} - vkCmdClearColorImage*: proc(commandBuffer: VkCommandBuffer, image: VkImage, imageLayout: VkImageLayout, pColor: ptr VkClearColorValue , rangeCount: uint32, pRanges: ptr VkImageSubresourceRange ): void {.stdcall.} - vkCmdClearDepthStencilImage*: proc(commandBuffer: VkCommandBuffer, image: VkImage, imageLayout: VkImageLayout, pDepthStencil: ptr VkClearDepthStencilValue , rangeCount: uint32, pRanges: ptr VkImageSubresourceRange ): void {.stdcall.} - vkCmdClearAttachments*: proc(commandBuffer: VkCommandBuffer, attachmentCount: uint32, pAttachments: ptr VkClearAttachment , rectCount: uint32, pRects: ptr VkClearRect ): void {.stdcall.} - vkCmdResolveImage*: proc(commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageResolve ): void {.stdcall.} - vkCmdSetEvent*: proc(commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags): void {.stdcall.} - vkCmdResetEvent*: proc(commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags): void {.stdcall.} - vkCmdWaitEvents*: proc(commandBuffer: VkCommandBuffer, eventCount: uint32, pEvents: ptr VkEvent , srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, memoryBarrierCount: uint32, pMemoryBarriers: ptr VkMemoryBarrier , bufferMemoryBarrierCount: uint32, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier , imageMemoryBarrierCount: uint32, pImageMemoryBarriers: ptr VkImageMemoryBarrier ): void {.stdcall.} - vkCmdPipelineBarrier*: proc(commandBuffer: VkCommandBuffer, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, dependencyFlags: VkDependencyFlags, memoryBarrierCount: uint32, pMemoryBarriers: ptr VkMemoryBarrier , bufferMemoryBarrierCount: uint32, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier , imageMemoryBarrierCount: uint32, pImageMemoryBarriers: ptr VkImageMemoryBarrier ): void {.stdcall.} - vkCmdBeginQuery*: proc(commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, flags: VkQueryControlFlags): void {.stdcall.} - vkCmdEndQuery*: proc(commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32): void {.stdcall.} - vkCmdBeginConditionalRenderingEXT*: proc(commandBuffer: VkCommandBuffer, pConditionalRenderingBegin: ptr VkConditionalRenderingBeginInfoEXT ): void {.stdcall.} - vkCmdEndConditionalRenderingEXT*: proc(commandBuffer: VkCommandBuffer): void {.stdcall.} - vkCmdResetQueryPool*: proc(commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32): void {.stdcall.} - vkCmdWriteTimestamp*: proc(commandBuffer: VkCommandBuffer, pipelineStage: VkPipelineStageFlagBits, queryPool: VkQueryPool, query: uint32): void {.stdcall.} - vkCmdCopyQueryPoolResults*: proc(commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, stride: VkDeviceSize, flags: VkQueryResultFlags): void {.stdcall.} - vkCmdPushConstants*: proc(commandBuffer: VkCommandBuffer, layout: VkPipelineLayout, stageFlags: VkShaderStageFlags, offset: uint32, size: uint32, pValues: pointer ): void {.stdcall.} - vkCmdBeginRenderPass*: proc(commandBuffer: VkCommandBuffer, pRenderPassBegin: ptr VkRenderPassBeginInfo , contents: VkSubpassContents): void {.stdcall.} - vkCmdNextSubpass*: proc(commandBuffer: VkCommandBuffer, contents: VkSubpassContents): void {.stdcall.} - vkCmdEndRenderPass*: proc(commandBuffer: VkCommandBuffer): void {.stdcall.} - vkCmdExecuteCommands*: proc(commandBuffer: VkCommandBuffer, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer ): void {.stdcall.} - vkCreateAndroidSurfaceKHR*: proc(instance: VkInstance, pCreateInfo: ptr VkAndroidSurfaceCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.} - vkGetPhysicalDeviceDisplayPropertiesKHR*: proc(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkDisplayPropertiesKHR ): VkResult {.stdcall.} - vkGetPhysicalDeviceDisplayPlanePropertiesKHR*: proc(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkDisplayPlanePropertiesKHR ): VkResult {.stdcall.} - vkGetDisplayPlaneSupportedDisplaysKHR*: proc(physicalDevice: VkPhysicalDevice, planeIndex: uint32, pDisplayCount: ptr uint32 , pDisplays: ptr VkDisplayKHR ): VkResult {.stdcall.} - vkGetDisplayModePropertiesKHR*: proc(physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pPropertyCount: ptr uint32 , pProperties: ptr VkDisplayModePropertiesKHR ): VkResult {.stdcall.} - vkCreateDisplayModeKHR*: proc(physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pCreateInfo: ptr VkDisplayModeCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pMode: ptr VkDisplayModeKHR ): VkResult {.stdcall.} - vkGetDisplayPlaneCapabilitiesKHR*: proc(physicalDevice: VkPhysicalDevice, mode: VkDisplayModeKHR, planeIndex: uint32, pCapabilities: ptr VkDisplayPlaneCapabilitiesKHR ): VkResult {.stdcall.} - vkCreateDisplayPlaneSurfaceKHR*: proc(instance: VkInstance, pCreateInfo: ptr VkDisplaySurfaceCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.} - vkCreateSharedSwapchainsKHR*: proc(device: VkDevice, swapchainCount: uint32, pCreateInfos: ptr VkSwapchainCreateInfoKHR , pCreateInfos: ptr VkSwapchainCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSwapchains: ptr VkSwapchainKHR ): VkResult {.stdcall.} - vkDestroySurfaceKHR*: proc(instance: VkInstance, surface: VkSurfaceKHR, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkGetPhysicalDeviceSurfaceSupportKHR*: proc(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, surface: VkSurfaceKHR, pSupported: ptr VkBool32 ): VkResult {.stdcall.} - vkGetPhysicalDeviceSurfaceCapabilitiesKHR*: proc(physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceCapabilities: ptr VkSurfaceCapabilitiesKHR ): VkResult {.stdcall.} - vkGetPhysicalDeviceSurfaceFormatsKHR*: proc(physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceFormatCount: ptr uint32 , pSurfaceFormats: ptr VkSurfaceFormatKHR ): VkResult {.stdcall.} - vkGetPhysicalDeviceSurfacePresentModesKHR*: proc(physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pPresentModeCount: ptr uint32 , pPresentModes: ptr VkPresentModeKHR ): VkResult {.stdcall.} - vkCreateSwapchainKHR*: proc(device: VkDevice, pCreateInfo: ptr VkSwapchainCreateInfoKHR , pCreateInfo: ptr VkSwapchainCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSwapchain: ptr VkSwapchainKHR ): VkResult {.stdcall.} - vkDestroySwapchainKHR*: proc(device: VkDevice, swapchain: VkSwapchainKHR, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkGetSwapchainImagesKHR*: proc(device: VkDevice, swapchain: VkSwapchainKHR, pSwapchainImageCount: ptr uint32 , pSwapchainImages: ptr VkImage ): VkResult {.stdcall.} - vkAcquireNextImageKHR*: proc(device: VkDevice, swapchain: VkSwapchainKHR, timeout: uint64, semaphore: VkSemaphore, fence: VkFence, pImageIndex: ptr uint32 ): VkResult {.stdcall.} - vkQueuePresentKHR*: proc(queue: VkQueue, pPresentInfo: ptr VkPresentInfoKHR ): VkResult {.stdcall.} - vkCreateViSurfaceNN*: proc(instance: VkInstance, pCreateInfo: ptr VkViSurfaceCreateInfoNN , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.} - vkCreateWaylandSurfaceKHR*: proc(instance: VkInstance, pCreateInfo: ptr VkWaylandSurfaceCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.} - vkGetPhysicalDeviceWaylandPresentationSupportKHR*: proc(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, display: ptr wl_display ): VkBool32 {.stdcall.} - vkCreateWin32SurfaceKHR*: proc(instance: VkInstance, pCreateInfo: ptr VkWin32SurfaceCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.} - vkGetPhysicalDeviceWin32PresentationSupportKHR*: proc(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32): VkBool32 {.stdcall.} - vkCreateXlibSurfaceKHR*: proc(instance: VkInstance, pCreateInfo: ptr VkXlibSurfaceCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.} - vkGetPhysicalDeviceXlibPresentationSupportKHR*: proc(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, dpy: ptr Display , visualID: VisualID): VkBool32 {.stdcall.} - vkCreateXcbSurfaceKHR*: proc(instance: VkInstance, pCreateInfo: ptr VkXcbSurfaceCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.} - vkGetPhysicalDeviceXcbPresentationSupportKHR*: proc(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, connection: ptr xcb_connection_t , visual_id: xcb_visualid_t): VkBool32 {.stdcall.} - vkCreateDirectFBSurfaceEXT*: proc(instance: VkInstance, pCreateInfo: ptr VkDirectFBSurfaceCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.} - vkGetPhysicalDeviceDirectFBPresentationSupportEXT*: proc(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, dfb: ptr IDirectFB ): VkBool32 {.stdcall.} - vkCreateImagePipeSurfaceFUCHSIA*: proc(instance: VkInstance, pCreateInfo: ptr VkImagePipeSurfaceCreateInfoFUCHSIA , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.} - vkCreateStreamDescriptorSurfaceGGP*: proc(instance: VkInstance, pCreateInfo: ptr VkStreamDescriptorSurfaceCreateInfoGGP , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.} - vkCreateScreenSurfaceQNX*: proc(instance: VkInstance, pCreateInfo: ptr VkScreenSurfaceCreateInfoQNX , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.} - vkGetPhysicalDeviceScreenPresentationSupportQNX*: proc(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, window: ptr screen_window ): VkBool32 {.stdcall.} - vkCreateDebugReportCallbackEXT*: proc(instance: VkInstance, pCreateInfo: ptr VkDebugReportCallbackCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pCallback: ptr VkDebugReportCallbackEXT ): VkResult {.stdcall.} - vkDestroyDebugReportCallbackEXT*: proc(instance: VkInstance, callback: VkDebugReportCallbackEXT, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkDebugReportMessageEXT*: proc(instance: VkInstance, flags: VkDebugReportFlagsEXT, objectType: VkDebugReportObjectTypeEXT, `object`: uint64, location: uint, messageCode: int32, pLayerPrefix: cstring , pMessage: cstring ): void {.stdcall.} - vkDebugMarkerSetObjectNameEXT*: proc(device: VkDevice, pNameInfo: ptr VkDebugMarkerObjectNameInfoEXT ): VkResult {.stdcall.} - vkDebugMarkerSetObjectTagEXT*: proc(device: VkDevice, pTagInfo: ptr VkDebugMarkerObjectTagInfoEXT ): VkResult {.stdcall.} - vkCmdDebugMarkerBeginEXT*: proc(commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT ): void {.stdcall.} - vkCmdDebugMarkerEndEXT*: proc(commandBuffer: VkCommandBuffer): void {.stdcall.} - vkCmdDebugMarkerInsertEXT*: proc(commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT ): void {.stdcall.} - vkGetPhysicalDeviceExternalImageFormatPropertiesNV*: proc(physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, tiling: VkImageTiling, usage: VkImageUsageFlags, flags: VkImageCreateFlags, externalHandleType: VkExternalMemoryHandleTypeFlagsNV, pExternalImageFormatProperties: ptr VkExternalImageFormatPropertiesNV ): VkResult {.stdcall.} - vkGetMemoryWin32HandleNV*: proc(device: VkDevice, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagsNV, pHandle: ptr HANDLE ): VkResult {.stdcall.} - vkCmdExecuteGeneratedCommandsNV*: proc(commandBuffer: VkCommandBuffer, isPreprocessed: VkBool32, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV ): void {.stdcall.} - vkCmdPreprocessGeneratedCommandsNV*: proc(commandBuffer: VkCommandBuffer, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV ): void {.stdcall.} - vkCmdBindPipelineShaderGroupNV*: proc(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline, groupIndex: uint32): void {.stdcall.} - vkGetGeneratedCommandsMemoryRequirementsNV*: proc(device: VkDevice, pInfo: ptr VkGeneratedCommandsMemoryRequirementsInfoNV , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.stdcall.} - vkCreateIndirectCommandsLayoutNV*: proc(device: VkDevice, pCreateInfo: ptr VkIndirectCommandsLayoutCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pIndirectCommandsLayout: ptr VkIndirectCommandsLayoutNV ): VkResult {.stdcall.} - vkDestroyIndirectCommandsLayoutNV*: proc(device: VkDevice, indirectCommandsLayout: VkIndirectCommandsLayoutNV, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkGetPhysicalDeviceFeatures2*: proc(physicalDevice: VkPhysicalDevice, pFeatures: ptr VkPhysicalDeviceFeatures2 ): void {.stdcall.} - vkGetPhysicalDeviceProperties2*: proc(physicalDevice: VkPhysicalDevice, pProperties: ptr VkPhysicalDeviceProperties2 ): void {.stdcall.} - vkGetPhysicalDeviceFormatProperties2*: proc(physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: ptr VkFormatProperties2 ): void {.stdcall.} - vkGetPhysicalDeviceImageFormatProperties2*: proc(physicalDevice: VkPhysicalDevice, pImageFormatInfo: ptr VkPhysicalDeviceImageFormatInfo2 , pImageFormatProperties: ptr VkImageFormatProperties2 ): VkResult {.stdcall.} - vkGetPhysicalDeviceQueueFamilyProperties2*: proc(physicalDevice: VkPhysicalDevice, pQueueFamilyPropertyCount: ptr uint32 , pQueueFamilyProperties: ptr VkQueueFamilyProperties2 ): void {.stdcall.} - vkGetPhysicalDeviceMemoryProperties2*: proc(physicalDevice: VkPhysicalDevice, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties2 ): void {.stdcall.} - vkGetPhysicalDeviceSparseImageFormatProperties2*: proc(physicalDevice: VkPhysicalDevice, pFormatInfo: ptr VkPhysicalDeviceSparseImageFormatInfo2 , pPropertyCount: ptr uint32 , pProperties: ptr VkSparseImageFormatProperties2 ): void {.stdcall.} - vkCmdPushDescriptorSetKHR*: proc(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, set: uint32, descriptorWriteCount: uint32, pDescriptorWrites: ptr VkWriteDescriptorSet ): void {.stdcall.} - vkTrimCommandPool*: proc(device: VkDevice, commandPool: VkCommandPool, flags: VkCommandPoolTrimFlags): void {.stdcall.} - vkGetPhysicalDeviceExternalBufferProperties*: proc(physicalDevice: VkPhysicalDevice, pExternalBufferInfo: ptr VkPhysicalDeviceExternalBufferInfo , pExternalBufferProperties: ptr VkExternalBufferProperties ): void {.stdcall.} - vkGetMemoryWin32HandleKHR*: proc(device: VkDevice, pGetWin32HandleInfo: ptr VkMemoryGetWin32HandleInfoKHR , pHandle: ptr HANDLE ): VkResult {.stdcall.} - vkGetMemoryWin32HandlePropertiesKHR*: proc(device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, handle: HANDLE, pMemoryWin32HandleProperties: ptr VkMemoryWin32HandlePropertiesKHR ): VkResult {.stdcall.} - vkGetMemoryFdKHR*: proc(device: VkDevice, pGetFdInfo: ptr VkMemoryGetFdInfoKHR , pFd: ptr int ): VkResult {.stdcall.} - vkGetMemoryFdPropertiesKHR*: proc(device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, fd: int, pMemoryFdProperties: ptr VkMemoryFdPropertiesKHR ): VkResult {.stdcall.} - vkGetMemoryZirconHandleFUCHSIA*: proc(device: VkDevice, pGetZirconHandleInfo: ptr VkMemoryGetZirconHandleInfoFUCHSIA , pZirconHandle: ptr zx_handle_t ): VkResult {.stdcall.} - vkGetMemoryZirconHandlePropertiesFUCHSIA*: proc(device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, zirconHandle: zx_handle_t, pMemoryZirconHandleProperties: ptr VkMemoryZirconHandlePropertiesFUCHSIA ): VkResult {.stdcall.} - vkGetMemoryRemoteAddressNV*: proc(device: VkDevice, pMemoryGetRemoteAddressInfo: ptr VkMemoryGetRemoteAddressInfoNV , pAddress: ptr VkRemoteAddressNV ): VkResult {.stdcall.} - vkGetMemorySciBufNV*: proc(device: VkDevice, pGetSciBufInfo: ptr VkMemoryGetSciBufInfoNV , pHandle: ptr NvSciBufObj ): VkResult {.stdcall.} - vkGetPhysicalDeviceExternalMemorySciBufPropertiesNV*: proc(physicalDevice: VkPhysicalDevice, handleType: VkExternalMemoryHandleTypeFlagBits, handle: NvSciBufObj, pMemorySciBufProperties: ptr VkMemorySciBufPropertiesNV ): VkResult {.stdcall.} - vkGetPhysicalDeviceSciBufAttributesNV*: proc(physicalDevice: VkPhysicalDevice, pAttributes: NvSciBufAttrList): VkResult {.stdcall.} - vkGetPhysicalDeviceExternalSemaphoreProperties*: proc(physicalDevice: VkPhysicalDevice, pExternalSemaphoreInfo: ptr VkPhysicalDeviceExternalSemaphoreInfo , pExternalSemaphoreProperties: ptr VkExternalSemaphoreProperties ): void {.stdcall.} - vkGetSemaphoreWin32HandleKHR*: proc(device: VkDevice, pGetWin32HandleInfo: ptr VkSemaphoreGetWin32HandleInfoKHR , pHandle: ptr HANDLE ): VkResult {.stdcall.} - vkImportSemaphoreWin32HandleKHR*: proc(device: VkDevice, pImportSemaphoreWin32HandleInfo: ptr VkImportSemaphoreWin32HandleInfoKHR ): VkResult {.stdcall.} - vkGetSemaphoreFdKHR*: proc(device: VkDevice, pGetFdInfo: ptr VkSemaphoreGetFdInfoKHR , pFd: ptr int ): VkResult {.stdcall.} - vkImportSemaphoreFdKHR*: proc(device: VkDevice, pImportSemaphoreFdInfo: ptr VkImportSemaphoreFdInfoKHR ): VkResult {.stdcall.} - vkGetSemaphoreZirconHandleFUCHSIA*: proc(device: VkDevice, pGetZirconHandleInfo: ptr VkSemaphoreGetZirconHandleInfoFUCHSIA , pZirconHandle: ptr zx_handle_t ): VkResult {.stdcall.} - vkImportSemaphoreZirconHandleFUCHSIA*: proc(device: VkDevice, pImportSemaphoreZirconHandleInfo: ptr VkImportSemaphoreZirconHandleInfoFUCHSIA ): VkResult {.stdcall.} - vkGetPhysicalDeviceExternalFenceProperties*: proc(physicalDevice: VkPhysicalDevice, pExternalFenceInfo: ptr VkPhysicalDeviceExternalFenceInfo , pExternalFenceProperties: ptr VkExternalFenceProperties ): void {.stdcall.} - vkGetFenceWin32HandleKHR*: proc(device: VkDevice, pGetWin32HandleInfo: ptr VkFenceGetWin32HandleInfoKHR , pHandle: ptr HANDLE ): VkResult {.stdcall.} - vkImportFenceWin32HandleKHR*: proc(device: VkDevice, pImportFenceWin32HandleInfo: ptr VkImportFenceWin32HandleInfoKHR ): VkResult {.stdcall.} - vkGetFenceFdKHR*: proc(device: VkDevice, pGetFdInfo: ptr VkFenceGetFdInfoKHR , pFd: ptr int ): VkResult {.stdcall.} - vkImportFenceFdKHR*: proc(device: VkDevice, pImportFenceFdInfo: ptr VkImportFenceFdInfoKHR ): VkResult {.stdcall.} - vkGetFenceSciSyncFenceNV*: proc(device: VkDevice, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV , pHandle: pointer ): VkResult {.stdcall.} - vkGetFenceSciSyncObjNV*: proc(device: VkDevice, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV , pHandle: pointer ): VkResult {.stdcall.} - vkImportFenceSciSyncFenceNV*: proc(device: VkDevice, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV ): VkResult {.stdcall.} - vkImportFenceSciSyncObjNV*: proc(device: VkDevice, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV ): VkResult {.stdcall.} - vkGetSemaphoreSciSyncObjNV*: proc(device: VkDevice, pGetSciSyncInfo: ptr VkSemaphoreGetSciSyncInfoNV , pHandle: pointer ): VkResult {.stdcall.} - vkImportSemaphoreSciSyncObjNV*: proc(device: VkDevice, pImportSemaphoreSciSyncInfo: ptr VkImportSemaphoreSciSyncInfoNV ): VkResult {.stdcall.} - vkGetPhysicalDeviceSciSyncAttributesNV*: proc(physicalDevice: VkPhysicalDevice, pSciSyncAttributesInfo: ptr VkSciSyncAttributesInfoNV , pAttributes: NvSciSyncAttrList): VkResult {.stdcall.} - vkCreateSemaphoreSciSyncPoolNV*: proc(device: VkDevice, pCreateInfo: ptr VkSemaphoreSciSyncPoolCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pSemaphorePool: ptr VkSemaphoreSciSyncPoolNV ): VkResult {.stdcall.} - vkDestroySemaphoreSciSyncPoolNV*: proc(device: VkDevice, semaphorePool: VkSemaphoreSciSyncPoolNV, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkReleaseDisplayEXT*: proc(physicalDevice: VkPhysicalDevice, display: VkDisplayKHR): VkResult {.stdcall.} - vkAcquireXlibDisplayEXT*: proc(physicalDevice: VkPhysicalDevice, dpy: ptr Display , display: VkDisplayKHR): VkResult {.stdcall.} - vkGetRandROutputDisplayEXT*: proc(physicalDevice: VkPhysicalDevice, dpy: ptr Display , rrOutput: RROutput, pDisplay: ptr VkDisplayKHR ): VkResult {.stdcall.} - vkAcquireWinrtDisplayNV*: proc(physicalDevice: VkPhysicalDevice, display: VkDisplayKHR): VkResult {.stdcall.} - vkGetWinrtDisplayNV*: proc(physicalDevice: VkPhysicalDevice, deviceRelativeId: uint32, pDisplay: ptr VkDisplayKHR ): VkResult {.stdcall.} - vkDisplayPowerControlEXT*: proc(device: VkDevice, display: VkDisplayKHR, pDisplayPowerInfo: ptr VkDisplayPowerInfoEXT ): VkResult {.stdcall.} - vkRegisterDeviceEventEXT*: proc(device: VkDevice, pDeviceEventInfo: ptr VkDeviceEventInfoEXT , pAllocator: ptr VkAllocationCallbacks , pFence: ptr VkFence ): VkResult {.stdcall.} - vkRegisterDisplayEventEXT*: proc(device: VkDevice, display: VkDisplayKHR, pDisplayEventInfo: ptr VkDisplayEventInfoEXT , pAllocator: ptr VkAllocationCallbacks , pFence: ptr VkFence ): VkResult {.stdcall.} - vkGetSwapchainCounterEXT*: proc(device: VkDevice, swapchain: VkSwapchainKHR, counter: VkSurfaceCounterFlagBitsEXT, pCounterValue: ptr uint64 ): VkResult {.stdcall.} - vkGetPhysicalDeviceSurfaceCapabilities2EXT*: proc(physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceCapabilities: ptr VkSurfaceCapabilities2EXT ): VkResult {.stdcall.} - vkEnumeratePhysicalDeviceGroups*: proc(instance: VkInstance, pPhysicalDeviceGroupCount: ptr uint32 , pPhysicalDeviceGroupProperties: ptr VkPhysicalDeviceGroupProperties ): VkResult {.stdcall.} - vkGetDeviceGroupPeerMemoryFeatures*: proc(device: VkDevice, heapIndex: uint32, localDeviceIndex: uint32, remoteDeviceIndex: uint32, pPeerMemoryFeatures: ptr VkPeerMemoryFeatureFlags ): void {.stdcall.} - vkBindBufferMemory2*: proc(device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindBufferMemoryInfo ): VkResult {.stdcall.} - vkBindImageMemory2*: proc(device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindImageMemoryInfo ): VkResult {.stdcall.} - vkCmdSetDeviceMask*: proc(commandBuffer: VkCommandBuffer, deviceMask: uint32): void {.stdcall.} - vkGetDeviceGroupPresentCapabilitiesKHR*: proc(device: VkDevice, pDeviceGroupPresentCapabilities: ptr VkDeviceGroupPresentCapabilitiesKHR ): VkResult {.stdcall.} - vkGetDeviceGroupSurfacePresentModesKHR*: proc(device: VkDevice, surface: VkSurfaceKHR, pModes: ptr VkDeviceGroupPresentModeFlagsKHR ): VkResult {.stdcall.} - vkAcquireNextImage2KHR*: proc(device: VkDevice, pAcquireInfo: ptr VkAcquireNextImageInfoKHR , pImageIndex: ptr uint32 ): VkResult {.stdcall.} - vkCmdDispatchBase*: proc(commandBuffer: VkCommandBuffer, baseGroupX: uint32, baseGroupY: uint32, baseGroupZ: uint32, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.} - vkGetPhysicalDevicePresentRectanglesKHR*: proc(physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pRectCount: ptr uint32 , pRects: ptr VkRect2D ): VkResult {.stdcall.} - vkCreateDescriptorUpdateTemplate*: proc(device: VkDevice, pCreateInfo: ptr VkDescriptorUpdateTemplateCreateInfo , pAllocator: ptr VkAllocationCallbacks , pDescriptorUpdateTemplate: ptr VkDescriptorUpdateTemplate ): VkResult {.stdcall.} - vkDestroyDescriptorUpdateTemplate*: proc(device: VkDevice, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkUpdateDescriptorSetWithTemplate*: proc(device: VkDevice, descriptorSet: VkDescriptorSet, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pData: pointer ): void {.stdcall.} - vkCmdPushDescriptorSetWithTemplateKHR*: proc(commandBuffer: VkCommandBuffer, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: uint32, pData: pointer ): void {.stdcall.} - vkSetHdrMetadataEXT*: proc(device: VkDevice, swapchainCount: uint32, pSwapchains: ptr VkSwapchainKHR , pMetadata: ptr VkHdrMetadataEXT ): void {.stdcall.} - vkGetSwapchainStatusKHR*: proc(device: VkDevice, swapchain: VkSwapchainKHR): VkResult {.stdcall.} - vkGetRefreshCycleDurationGOOGLE*: proc(device: VkDevice, swapchain: VkSwapchainKHR, pDisplayTimingProperties: ptr VkRefreshCycleDurationGOOGLE ): VkResult {.stdcall.} - vkGetPastPresentationTimingGOOGLE*: proc(device: VkDevice, swapchain: VkSwapchainKHR, pPresentationTimingCount: ptr uint32 , pPresentationTimings: ptr VkPastPresentationTimingGOOGLE ): VkResult {.stdcall.} - vkCreateIOSSurfaceMVK*: proc(instance: VkInstance, pCreateInfo: ptr VkIOSSurfaceCreateInfoMVK , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.} - vkCreateMacOSSurfaceMVK*: proc(instance: VkInstance, pCreateInfo: ptr VkMacOSSurfaceCreateInfoMVK , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.} - vkCreateMetalSurfaceEXT*: proc(instance: VkInstance, pCreateInfo: ptr VkMetalSurfaceCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.} - vkCmdSetViewportWScalingNV*: proc(commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportWScalings: ptr VkViewportWScalingNV ): void {.stdcall.} - vkCmdSetDiscardRectangleEXT*: proc(commandBuffer: VkCommandBuffer, firstDiscardRectangle: uint32, discardRectangleCount: uint32, pDiscardRectangles: ptr VkRect2D ): void {.stdcall.} - vkCmdSetDiscardRectangleEnableEXT*: proc(commandBuffer: VkCommandBuffer, discardRectangleEnable: VkBool32): void {.stdcall.} - vkCmdSetDiscardRectangleModeEXT*: proc(commandBuffer: VkCommandBuffer, discardRectangleMode: VkDiscardRectangleModeEXT): void {.stdcall.} - vkCmdSetSampleLocationsEXT*: proc(commandBuffer: VkCommandBuffer, pSampleLocationsInfo: ptr VkSampleLocationsInfoEXT ): void {.stdcall.} - vkGetPhysicalDeviceMultisamplePropertiesEXT*: proc(physicalDevice: VkPhysicalDevice, samples: VkSampleCountFlagBits, pMultisampleProperties: ptr VkMultisamplePropertiesEXT ): void {.stdcall.} - vkGetPhysicalDeviceSurfaceCapabilities2KHR*: proc(physicalDevice: VkPhysicalDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR , pSurfaceCapabilities: ptr VkSurfaceCapabilities2KHR ): VkResult {.stdcall.} - vkGetPhysicalDeviceSurfaceFormats2KHR*: proc(physicalDevice: VkPhysicalDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR , pSurfaceFormatCount: ptr uint32 , pSurfaceFormats: ptr VkSurfaceFormat2KHR ): VkResult {.stdcall.} - vkGetPhysicalDeviceDisplayProperties2KHR*: proc(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkDisplayProperties2KHR ): VkResult {.stdcall.} - vkGetPhysicalDeviceDisplayPlaneProperties2KHR*: proc(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkDisplayPlaneProperties2KHR ): VkResult {.stdcall.} - vkGetDisplayModeProperties2KHR*: proc(physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pPropertyCount: ptr uint32 , pProperties: ptr VkDisplayModeProperties2KHR ): VkResult {.stdcall.} - vkGetDisplayPlaneCapabilities2KHR*: proc(physicalDevice: VkPhysicalDevice, pDisplayPlaneInfo: ptr VkDisplayPlaneInfo2KHR , pCapabilities: ptr VkDisplayPlaneCapabilities2KHR ): VkResult {.stdcall.} - vkGetBufferMemoryRequirements2*: proc(device: VkDevice, pInfo: ptr VkBufferMemoryRequirementsInfo2 , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.stdcall.} - vkGetImageMemoryRequirements2*: proc(device: VkDevice, pInfo: ptr VkImageMemoryRequirementsInfo2 , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.stdcall.} - vkGetImageSparseMemoryRequirements2*: proc(device: VkDevice, pInfo: ptr VkImageSparseMemoryRequirementsInfo2 , pSparseMemoryRequirementCount: ptr uint32 , pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2 ): void {.stdcall.} - vkGetDeviceBufferMemoryRequirements*: proc(device: VkDevice, pInfo: ptr VkDeviceBufferMemoryRequirements , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.stdcall.} - vkGetDeviceImageMemoryRequirements*: proc(device: VkDevice, pInfo: ptr VkDeviceImageMemoryRequirements , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.stdcall.} - vkGetDeviceImageSparseMemoryRequirements*: proc(device: VkDevice, pInfo: ptr VkDeviceImageMemoryRequirements , pSparseMemoryRequirementCount: ptr uint32 , pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2 ): void {.stdcall.} - vkCreateSamplerYcbcrConversion*: proc(device: VkDevice, pCreateInfo: ptr VkSamplerYcbcrConversionCreateInfo , pAllocator: ptr VkAllocationCallbacks , pYcbcrConversion: ptr VkSamplerYcbcrConversion ): VkResult {.stdcall.} - vkDestroySamplerYcbcrConversion*: proc(device: VkDevice, ycbcrConversion: VkSamplerYcbcrConversion, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkGetDeviceQueue2*: proc(device: VkDevice, pQueueInfo: ptr VkDeviceQueueInfo2 , pQueue: ptr VkQueue ): void {.stdcall.} - vkCreateValidationCacheEXT*: proc(device: VkDevice, pCreateInfo: ptr VkValidationCacheCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pValidationCache: ptr VkValidationCacheEXT ): VkResult {.stdcall.} - vkDestroyValidationCacheEXT*: proc(device: VkDevice, validationCache: VkValidationCacheEXT, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkGetValidationCacheDataEXT*: proc(device: VkDevice, validationCache: VkValidationCacheEXT, pDataSize: ptr uint , pData: pointer ): VkResult {.stdcall.} - vkMergeValidationCachesEXT*: proc(device: VkDevice, dstCache: VkValidationCacheEXT, srcCacheCount: uint32, pSrcCaches: ptr VkValidationCacheEXT ): VkResult {.stdcall.} - vkGetDescriptorSetLayoutSupport*: proc(device: VkDevice, pCreateInfo: ptr VkDescriptorSetLayoutCreateInfo , pSupport: ptr VkDescriptorSetLayoutSupport ): void {.stdcall.} - vkGetSwapchainGrallocUsageANDROID*: proc(device: VkDevice, format: VkFormat, imageUsage: VkImageUsageFlags, grallocUsage: ptr int ): VkResult {.stdcall.} - vkGetSwapchainGrallocUsage2ANDROID*: proc(device: VkDevice, format: VkFormat, imageUsage: VkImageUsageFlags, swapchainImageUsage: VkSwapchainImageUsageFlagsANDROID, grallocConsumerUsage: ptr uint64 , grallocProducerUsage: ptr uint64 ): VkResult {.stdcall.} - vkAcquireImageANDROID*: proc(device: VkDevice, image: VkImage, nativeFenceFd: int, semaphore: VkSemaphore, fence: VkFence): VkResult {.stdcall.} - vkQueueSignalReleaseImageANDROID*: proc(queue: VkQueue, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore , image: VkImage, pNativeFenceFd: ptr int ): VkResult {.stdcall.} - vkGetShaderInfoAMD*: proc(device: VkDevice, pipeline: VkPipeline, shaderStage: VkShaderStageFlagBits, infoType: VkShaderInfoTypeAMD, pInfoSize: ptr uint , pInfo: pointer ): VkResult {.stdcall.} - vkSetLocalDimmingAMD*: proc(device: VkDevice, swapChain: VkSwapchainKHR, localDimmingEnable: VkBool32): void {.stdcall.} - vkGetPhysicalDeviceCalibrateableTimeDomainsKHR*: proc(physicalDevice: VkPhysicalDevice, pTimeDomainCount: ptr uint32 , pTimeDomains: ptr VkTimeDomainKHR ): VkResult {.stdcall.} - vkGetCalibratedTimestampsKHR*: proc(device: VkDevice, timestampCount: uint32, pTimestampInfos: ptr VkCalibratedTimestampInfoKHR , pTimestamps: ptr uint64 , pMaxDeviation: ptr uint64 ): VkResult {.stdcall.} - vkSetDebugUtilsObjectNameEXT*: proc(device: VkDevice, pNameInfo: ptr VkDebugUtilsObjectNameInfoEXT ): VkResult {.stdcall.} - vkSetDebugUtilsObjectTagEXT*: proc(device: VkDevice, pTagInfo: ptr VkDebugUtilsObjectTagInfoEXT ): VkResult {.stdcall.} - vkQueueBeginDebugUtilsLabelEXT*: proc(queue: VkQueue, pLabelInfo: ptr VkDebugUtilsLabelEXT ): void {.stdcall.} - vkQueueEndDebugUtilsLabelEXT*: proc(queue: VkQueue): void {.stdcall.} - vkQueueInsertDebugUtilsLabelEXT*: proc(queue: VkQueue, pLabelInfo: ptr VkDebugUtilsLabelEXT ): void {.stdcall.} - vkCmdBeginDebugUtilsLabelEXT*: proc(commandBuffer: VkCommandBuffer, pLabelInfo: ptr VkDebugUtilsLabelEXT ): void {.stdcall.} - vkCmdEndDebugUtilsLabelEXT*: proc(commandBuffer: VkCommandBuffer): void {.stdcall.} - vkCmdInsertDebugUtilsLabelEXT*: proc(commandBuffer: VkCommandBuffer, pLabelInfo: ptr VkDebugUtilsLabelEXT ): void {.stdcall.} - vkCreateDebugUtilsMessengerEXT*: proc(instance: VkInstance, pCreateInfo: ptr VkDebugUtilsMessengerCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pMessenger: ptr VkDebugUtilsMessengerEXT ): VkResult {.stdcall.} - vkDestroyDebugUtilsMessengerEXT*: proc(instance: VkInstance, messenger: VkDebugUtilsMessengerEXT, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkSubmitDebugUtilsMessageEXT*: proc(instance: VkInstance, messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEXT, messageTypes: VkDebugUtilsMessageTypeFlagsEXT, pCallbackData: ptr VkDebugUtilsMessengerCallbackDataEXT ): void {.stdcall.} - vkGetMemoryHostPointerPropertiesEXT*: proc(device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, pHostPointer: pointer , pMemoryHostPointerProperties: ptr VkMemoryHostPointerPropertiesEXT ): VkResult {.stdcall.} - vkCmdWriteBufferMarkerAMD*: proc(commandBuffer: VkCommandBuffer, pipelineStage: VkPipelineStageFlagBits, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, marker: uint32): void {.stdcall.} - vkCreateRenderPass2*: proc(device: VkDevice, pCreateInfo: ptr VkRenderPassCreateInfo2 , pAllocator: ptr VkAllocationCallbacks , pRenderPass: ptr VkRenderPass ): VkResult {.stdcall.} - vkCmdBeginRenderPass2*: proc(commandBuffer: VkCommandBuffer, pRenderPassBegin: ptr VkRenderPassBeginInfo , pSubpassBeginInfo: ptr VkSubpassBeginInfo ): void {.stdcall.} - vkCmdNextSubpass2*: proc(commandBuffer: VkCommandBuffer, pSubpassBeginInfo: ptr VkSubpassBeginInfo , pSubpassEndInfo: ptr VkSubpassEndInfo ): void {.stdcall.} - vkCmdEndRenderPass2*: proc(commandBuffer: VkCommandBuffer, pSubpassEndInfo: ptr VkSubpassEndInfo ): void {.stdcall.} - vkGetSemaphoreCounterValue*: proc(device: VkDevice, semaphore: VkSemaphore, pValue: ptr uint64 ): VkResult {.stdcall.} - vkWaitSemaphores*: proc(device: VkDevice, pWaitInfo: ptr VkSemaphoreWaitInfo , timeout: uint64): VkResult {.stdcall.} - vkSignalSemaphore*: proc(device: VkDevice, pSignalInfo: ptr VkSemaphoreSignalInfo ): VkResult {.stdcall.} - vkGetAndroidHardwareBufferPropertiesANDROID*: proc(device: VkDevice, buffer: ptr AHardwareBuffer , pProperties: ptr VkAndroidHardwareBufferPropertiesANDROID ): VkResult {.stdcall.} - vkGetMemoryAndroidHardwareBufferANDROID*: proc(device: VkDevice, pInfo: ptr VkMemoryGetAndroidHardwareBufferInfoANDROID , pBuffer: ptr ptr AHardwareBuffer ): VkResult {.stdcall.} - vkCmdDrawIndirectCount*: proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.} - vkCmdDrawIndexedIndirectCount*: proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.} - vkCmdSetCheckpointNV*: proc(commandBuffer: VkCommandBuffer, pCheckpointMarker: pointer ): void {.stdcall.} - vkGetQueueCheckpointDataNV*: proc(queue: VkQueue, pCheckpointDataCount: ptr uint32 , pCheckpointData: ptr VkCheckpointDataNV ): void {.stdcall.} - vkCmdBindTransformFeedbackBuffersEXT*: proc(commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer , pOffsets: ptr VkDeviceSize , pSizes: ptr VkDeviceSize ): void {.stdcall.} - vkCmdBeginTransformFeedbackEXT*: proc(commandBuffer: VkCommandBuffer, firstCounterBuffer: uint32, counterBufferCount: uint32, pCounterBuffers: ptr VkBuffer , pCounterBufferOffsets: ptr VkDeviceSize ): void {.stdcall.} - vkCmdEndTransformFeedbackEXT*: proc(commandBuffer: VkCommandBuffer, firstCounterBuffer: uint32, counterBufferCount: uint32, pCounterBuffers: ptr VkBuffer , pCounterBufferOffsets: ptr VkDeviceSize ): void {.stdcall.} - vkCmdBeginQueryIndexedEXT*: proc(commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, flags: VkQueryControlFlags, index: uint32): void {.stdcall.} - vkCmdEndQueryIndexedEXT*: proc(commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, index: uint32): void {.stdcall.} - vkCmdDrawIndirectByteCountEXT*: proc(commandBuffer: VkCommandBuffer, instanceCount: uint32, firstInstance: uint32, counterBuffer: VkBuffer, counterBufferOffset: VkDeviceSize, counterOffset: uint32, vertexStride: uint32): void {.stdcall.} - vkCmdSetExclusiveScissorNV*: proc(commandBuffer: VkCommandBuffer, firstExclusiveScissor: uint32, exclusiveScissorCount: uint32, pExclusiveScissors: ptr VkRect2D ): void {.stdcall.} - vkCmdSetExclusiveScissorEnableNV*: proc(commandBuffer: VkCommandBuffer, firstExclusiveScissor: uint32, exclusiveScissorCount: uint32, pExclusiveScissorEnables: ptr VkBool32 ): void {.stdcall.} - vkCmdBindShadingRateImageNV*: proc(commandBuffer: VkCommandBuffer, imageView: VkImageView, imageLayout: VkImageLayout): void {.stdcall.} - vkCmdSetViewportShadingRatePaletteNV*: proc(commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pShadingRatePalettes: ptr VkShadingRatePaletteNV ): void {.stdcall.} - vkCmdSetCoarseSampleOrderNV*: proc(commandBuffer: VkCommandBuffer, sampleOrderType: VkCoarseSampleOrderTypeNV, customSampleOrderCount: uint32, pCustomSampleOrders: ptr VkCoarseSampleOrderCustomNV ): void {.stdcall.} - vkCmdDrawMeshTasksNV*: proc(commandBuffer: VkCommandBuffer, taskCount: uint32, firstTask: uint32): void {.stdcall.} - vkCmdDrawMeshTasksIndirectNV*: proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.} - vkCmdDrawMeshTasksIndirectCountNV*: proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.} - vkCmdDrawMeshTasksEXT*: proc(commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.} - vkCmdDrawMeshTasksIndirectEXT*: proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.} - vkCmdDrawMeshTasksIndirectCountEXT*: proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.} - vkCompileDeferredNV*: proc(device: VkDevice, pipeline: VkPipeline, shader: uint32): VkResult {.stdcall.} - vkCreateAccelerationStructureNV*: proc(device: VkDevice, pCreateInfo: ptr VkAccelerationStructureCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pAccelerationStructure: ptr VkAccelerationStructureNV ): VkResult {.stdcall.} - vkCmdBindInvocationMaskHUAWEI*: proc(commandBuffer: VkCommandBuffer, imageView: VkImageView, imageLayout: VkImageLayout): void {.stdcall.} - vkDestroyAccelerationStructureKHR*: proc(device: VkDevice, accelerationStructure: VkAccelerationStructureKHR, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkDestroyAccelerationStructureNV*: proc(device: VkDevice, accelerationStructure: VkAccelerationStructureNV, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkGetAccelerationStructureMemoryRequirementsNV*: proc(device: VkDevice, pInfo: ptr VkAccelerationStructureMemoryRequirementsInfoNV , pMemoryRequirements: ptr VkMemoryRequirements2KHR ): void {.stdcall.} - vkBindAccelerationStructureMemoryNV*: proc(device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindAccelerationStructureMemoryInfoNV ): VkResult {.stdcall.} - vkCmdCopyAccelerationStructureNV*: proc(commandBuffer: VkCommandBuffer, dst: VkAccelerationStructureNV, src: VkAccelerationStructureNV, mode: VkCopyAccelerationStructureModeKHR): void {.stdcall.} - vkCmdCopyAccelerationStructureKHR*: proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyAccelerationStructureInfoKHR ): void {.stdcall.} - vkCopyAccelerationStructureKHR*: proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyAccelerationStructureInfoKHR ): VkResult {.stdcall.} - vkCmdCopyAccelerationStructureToMemoryKHR*: proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR ): void {.stdcall.} - vkCopyAccelerationStructureToMemoryKHR*: proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR ): VkResult {.stdcall.} - vkCmdCopyMemoryToAccelerationStructureKHR*: proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR ): void {.stdcall.} - vkCopyMemoryToAccelerationStructureKHR*: proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR ): VkResult {.stdcall.} - vkCmdWriteAccelerationStructuresPropertiesKHR*: proc(commandBuffer: VkCommandBuffer, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR , queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.stdcall.} - vkCmdWriteAccelerationStructuresPropertiesNV*: proc(commandBuffer: VkCommandBuffer, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureNV , queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.stdcall.} - vkCmdBuildAccelerationStructureNV*: proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkAccelerationStructureInfoNV , instanceData: VkBuffer, instanceOffset: VkDeviceSize, update: VkBool32, dst: VkAccelerationStructureNV, src: VkAccelerationStructureNV, scratch: VkBuffer, scratchOffset: VkDeviceSize): void {.stdcall.} - vkWriteAccelerationStructuresPropertiesKHR*: proc(device: VkDevice, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR , queryType: VkQueryType, dataSize: uint, pData: pointer , stride: uint): VkResult {.stdcall.} - vkCmdTraceRaysKHR*: proc(commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , width: uint32, height: uint32, depth: uint32): void {.stdcall.} - vkCmdTraceRaysNV*: proc(commandBuffer: VkCommandBuffer, raygenShaderBindingTableBuffer: VkBuffer, raygenShaderBindingOffset: VkDeviceSize, missShaderBindingTableBuffer: VkBuffer, missShaderBindingOffset: VkDeviceSize, missShaderBindingStride: VkDeviceSize, hitShaderBindingTableBuffer: VkBuffer, hitShaderBindingOffset: VkDeviceSize, hitShaderBindingStride: VkDeviceSize, callableShaderBindingTableBuffer: VkBuffer, callableShaderBindingOffset: VkDeviceSize, callableShaderBindingStride: VkDeviceSize, width: uint32, height: uint32, depth: uint32): void {.stdcall.} - vkGetRayTracingShaderGroupHandlesKHR*: proc(device: VkDevice, pipeline: VkPipeline, firstGroup: uint32, groupCount: uint32, dataSize: uint, pData: pointer ): VkResult {.stdcall.} - vkGetRayTracingCaptureReplayShaderGroupHandlesKHR*: proc(device: VkDevice, pipeline: VkPipeline, firstGroup: uint32, groupCount: uint32, dataSize: uint, pData: pointer ): VkResult {.stdcall.} - vkGetAccelerationStructureHandleNV*: proc(device: VkDevice, accelerationStructure: VkAccelerationStructureNV, dataSize: uint, pData: pointer ): VkResult {.stdcall.} - vkCreateRayTracingPipelinesNV*: proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.} - vkCreateRayTracingPipelinesNV*: proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.} - vkCreateRayTracingPipelinesKHR*: proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.} - vkCreateRayTracingPipelinesKHR*: proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.} - vkGetPhysicalDeviceCooperativeMatrixPropertiesNV*: proc(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkCooperativeMatrixPropertiesNV ): VkResult {.stdcall.} - vkCmdTraceRaysIndirectKHR*: proc(commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , indirectDeviceAddress: VkDeviceAddress): void {.stdcall.} - vkCmdTraceRaysIndirect2KHR*: proc(commandBuffer: VkCommandBuffer, indirectDeviceAddress: VkDeviceAddress): void {.stdcall.} - vkGetDeviceAccelerationStructureCompatibilityKHR*: proc(device: VkDevice, pVersionInfo: ptr VkAccelerationStructureVersionInfoKHR , pCompatibility: ptr VkAccelerationStructureCompatibilityKHR ): void {.stdcall.} - vkGetRayTracingShaderGroupStackSizeKHR*: proc(device: VkDevice, pipeline: VkPipeline, group: uint32, groupShader: VkShaderGroupShaderKHR): VkDeviceSize {.stdcall.} - vkCmdSetRayTracingPipelineStackSizeKHR*: proc(commandBuffer: VkCommandBuffer, pipelineStackSize: uint32): void {.stdcall.} - vkGetImageViewHandleNVX*: proc(device: VkDevice, pInfo: ptr VkImageViewHandleInfoNVX ): uint32 {.stdcall.} - vkGetImageViewAddressNVX*: proc(device: VkDevice, imageView: VkImageView, pProperties: ptr VkImageViewAddressPropertiesNVX ): VkResult {.stdcall.} - vkGetPhysicalDeviceSurfacePresentModes2EXT*: proc(physicalDevice: VkPhysicalDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR , pPresentModeCount: ptr uint32 , pPresentModes: ptr VkPresentModeKHR ): VkResult {.stdcall.} - vkGetDeviceGroupSurfacePresentModes2EXT*: proc(device: VkDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR , pModes: ptr VkDeviceGroupPresentModeFlagsKHR ): VkResult {.stdcall.} - vkAcquireFullScreenExclusiveModeEXT*: proc(device: VkDevice, swapchain: VkSwapchainKHR): VkResult {.stdcall.} - vkReleaseFullScreenExclusiveModeEXT*: proc(device: VkDevice, swapchain: VkSwapchainKHR): VkResult {.stdcall.} - vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR*: proc(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, pCounterCount: ptr uint32 , pCounters: ptr VkPerformanceCounterKHR , pCounterDescriptions: ptr VkPerformanceCounterDescriptionKHR ): VkResult {.stdcall.} - vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR*: proc(physicalDevice: VkPhysicalDevice, pPerformanceQueryCreateInfo: ptr VkQueryPoolPerformanceCreateInfoKHR , pNumPasses: ptr uint32 ): void {.stdcall.} - vkAcquireProfilingLockKHR*: proc(device: VkDevice, pInfo: ptr VkAcquireProfilingLockInfoKHR ): VkResult {.stdcall.} - vkReleaseProfilingLockKHR*: proc(device: VkDevice): void {.stdcall.} - vkGetImageDrmFormatModifierPropertiesEXT*: proc(device: VkDevice, image: VkImage, pProperties: ptr VkImageDrmFormatModifierPropertiesEXT ): VkResult {.stdcall.} - vkGetBufferOpaqueCaptureAddress*: proc(device: VkDevice, pInfo: ptr VkBufferDeviceAddressInfo ): uint64 {.stdcall.} - vkGetBufferDeviceAddress*: proc(device: VkDevice, pInfo: ptr VkBufferDeviceAddressInfo ): VkDeviceAddress {.stdcall.} - vkCreateHeadlessSurfaceEXT*: proc(instance: VkInstance, pCreateInfo: ptr VkHeadlessSurfaceCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.} - vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV*: proc(physicalDevice: VkPhysicalDevice, pCombinationCount: ptr uint32 , pCombinations: ptr VkFramebufferMixedSamplesCombinationNV ): VkResult {.stdcall.} - vkInitializePerformanceApiINTEL*: proc(device: VkDevice, pInitializeInfo: ptr VkInitializePerformanceApiInfoINTEL ): VkResult {.stdcall.} - vkUninitializePerformanceApiINTEL*: proc(device: VkDevice): void {.stdcall.} - vkCmdSetPerformanceMarkerINTEL*: proc(commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkPerformanceMarkerInfoINTEL ): VkResult {.stdcall.} - vkCmdSetPerformanceStreamMarkerINTEL*: proc(commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkPerformanceStreamMarkerInfoINTEL ): VkResult {.stdcall.} - vkCmdSetPerformanceOverrideINTEL*: proc(commandBuffer: VkCommandBuffer, pOverrideInfo: ptr VkPerformanceOverrideInfoINTEL ): VkResult {.stdcall.} - vkAcquirePerformanceConfigurationINTEL*: proc(device: VkDevice, pAcquireInfo: ptr VkPerformanceConfigurationAcquireInfoINTEL , pConfiguration: ptr VkPerformanceConfigurationINTEL ): VkResult {.stdcall.} - vkReleasePerformanceConfigurationINTEL*: proc(device: VkDevice, configuration: VkPerformanceConfigurationINTEL): VkResult {.stdcall.} - vkQueueSetPerformanceConfigurationINTEL*: proc(queue: VkQueue, configuration: VkPerformanceConfigurationINTEL): VkResult {.stdcall.} - vkGetPerformanceParameterINTEL*: proc(device: VkDevice, parameter: VkPerformanceParameterTypeINTEL, pValue: ptr VkPerformanceValueINTEL ): VkResult {.stdcall.} - vkGetDeviceMemoryOpaqueCaptureAddress*: proc(device: VkDevice, pInfo: ptr VkDeviceMemoryOpaqueCaptureAddressInfo ): uint64 {.stdcall.} - vkGetPipelineExecutablePropertiesKHR*: proc(device: VkDevice, pPipelineInfo: ptr VkPipelineInfoKHR , pExecutableCount: ptr uint32 , pProperties: ptr VkPipelineExecutablePropertiesKHR ): VkResult {.stdcall.} - vkGetPipelineExecutableStatisticsKHR*: proc(device: VkDevice, pExecutableInfo: ptr VkPipelineExecutableInfoKHR , pStatisticCount: ptr uint32 , pStatistics: ptr VkPipelineExecutableStatisticKHR ): VkResult {.stdcall.} - vkGetPipelineExecutableInternalRepresentationsKHR*: proc(device: VkDevice, pExecutableInfo: ptr VkPipelineExecutableInfoKHR , pInternalRepresentationCount: ptr uint32 , pInternalRepresentations: ptr VkPipelineExecutableInternalRepresentationKHR ): VkResult {.stdcall.} - vkCmdSetLineStippleKHR*: proc(commandBuffer: VkCommandBuffer, lineStippleFactor: uint32, lineStipplePattern: uint16): void {.stdcall.} - vkGetFaultData*: proc(device: VkDevice, faultQueryBehavior: VkFaultQueryBehavior, pUnrecordedFaults: ptr VkBool32 , pFaultCount: ptr uint32 , pFaults: ptr VkFaultData ): VkResult {.stdcall.} - vkGetPhysicalDeviceToolProperties*: proc(physicalDevice: VkPhysicalDevice, pToolCount: ptr uint32 , pToolProperties: ptr VkPhysicalDeviceToolProperties ): VkResult {.stdcall.} - vkCreateAccelerationStructureKHR*: proc(device: VkDevice, pCreateInfo: ptr VkAccelerationStructureCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pAccelerationStructure: ptr VkAccelerationStructureKHR ): VkResult {.stdcall.} - vkCmdBuildAccelerationStructuresKHR*: proc(commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR , ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR ): void {.stdcall.} - vkCmdBuildAccelerationStructuresIndirectKHR*: proc(commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR , pIndirectDeviceAddresses: ptr VkDeviceAddress , pIndirectStrides: ptr uint32 , ppMaxPrimitiveCounts: ptr ptr uint32 ): void {.stdcall.} - vkBuildAccelerationStructuresKHR*: proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR , ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR ): VkResult {.stdcall.} - vkGetAccelerationStructureDeviceAddressKHR*: proc(device: VkDevice, pInfo: ptr VkAccelerationStructureDeviceAddressInfoKHR ): VkDeviceAddress {.stdcall.} - vkCreateDeferredOperationKHR*: proc(device: VkDevice, pAllocator: ptr VkAllocationCallbacks , pDeferredOperation: ptr VkDeferredOperationKHR ): VkResult {.stdcall.} - vkDestroyDeferredOperationKHR*: proc(device: VkDevice, operation: VkDeferredOperationKHR, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkGetDeferredOperationMaxConcurrencyKHR*: proc(device: VkDevice, operation: VkDeferredOperationKHR): uint32 {.stdcall.} - vkGetDeferredOperationResultKHR*: proc(device: VkDevice, operation: VkDeferredOperationKHR): VkResult {.stdcall.} - vkDeferredOperationJoinKHR*: proc(device: VkDevice, operation: VkDeferredOperationKHR): VkResult {.stdcall.} - vkGetPipelineIndirectMemoryRequirementsNV*: proc(device: VkDevice, pCreateInfo: ptr VkComputePipelineCreateInfo , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.stdcall.} - vkGetPipelineIndirectDeviceAddressNV*: proc(device: VkDevice, pInfo: ptr VkPipelineIndirectDeviceAddressInfoNV ): VkDeviceAddress {.stdcall.} - vkCmdSetCullMode*: proc(commandBuffer: VkCommandBuffer, cullMode: VkCullModeFlags): void {.stdcall.} - vkCmdSetFrontFace*: proc(commandBuffer: VkCommandBuffer, frontFace: VkFrontFace): void {.stdcall.} - vkCmdSetPrimitiveTopology*: proc(commandBuffer: VkCommandBuffer, primitiveTopology: VkPrimitiveTopology): void {.stdcall.} - vkCmdSetViewportWithCount*: proc(commandBuffer: VkCommandBuffer, viewportCount: uint32, pViewports: ptr VkViewport ): void {.stdcall.} - vkCmdSetScissorWithCount*: proc(commandBuffer: VkCommandBuffer, scissorCount: uint32, pScissors: ptr VkRect2D ): void {.stdcall.} - vkCmdBindIndexBuffer2KHR*: proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize, indexType: VkIndexType): void {.stdcall.} - vkCmdBindVertexBuffers2*: proc(commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer , pOffsets: ptr VkDeviceSize , pSizes: ptr VkDeviceSize , pStrides: ptr VkDeviceSize ): void {.stdcall.} - vkCmdSetDepthTestEnable*: proc(commandBuffer: VkCommandBuffer, depthTestEnable: VkBool32): void {.stdcall.} - vkCmdSetDepthWriteEnable*: proc(commandBuffer: VkCommandBuffer, depthWriteEnable: VkBool32): void {.stdcall.} - vkCmdSetDepthCompareOp*: proc(commandBuffer: VkCommandBuffer, depthCompareOp: VkCompareOp): void {.stdcall.} - vkCmdSetDepthBoundsTestEnable*: proc(commandBuffer: VkCommandBuffer, depthBoundsTestEnable: VkBool32): void {.stdcall.} - vkCmdSetStencilTestEnable*: proc(commandBuffer: VkCommandBuffer, stencilTestEnable: VkBool32): void {.stdcall.} - vkCmdSetStencilOp*: proc(commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, failOp: VkStencilOp, passOp: VkStencilOp, depthFailOp: VkStencilOp, compareOp: VkCompareOp): void {.stdcall.} - vkCmdSetPatchControlPointsEXT*: proc(commandBuffer: VkCommandBuffer, patchControlPoints: uint32): void {.stdcall.} - vkCmdSetRasterizerDiscardEnable*: proc(commandBuffer: VkCommandBuffer, rasterizerDiscardEnable: VkBool32): void {.stdcall.} - vkCmdSetDepthBiasEnable*: proc(commandBuffer: VkCommandBuffer, depthBiasEnable: VkBool32): void {.stdcall.} - vkCmdSetLogicOpEXT*: proc(commandBuffer: VkCommandBuffer, logicOp: VkLogicOp): void {.stdcall.} - vkCmdSetPrimitiveRestartEnable*: proc(commandBuffer: VkCommandBuffer, primitiveRestartEnable: VkBool32): void {.stdcall.} - vkCmdSetTessellationDomainOriginEXT*: proc(commandBuffer: VkCommandBuffer, domainOrigin: VkTessellationDomainOrigin): void {.stdcall.} - vkCmdSetDepthClampEnableEXT*: proc(commandBuffer: VkCommandBuffer, depthClampEnable: VkBool32): void {.stdcall.} - vkCmdSetPolygonModeEXT*: proc(commandBuffer: VkCommandBuffer, polygonMode: VkPolygonMode): void {.stdcall.} - vkCmdSetRasterizationSamplesEXT*: proc(commandBuffer: VkCommandBuffer, rasterizationSamples: VkSampleCountFlagBits): void {.stdcall.} - vkCmdSetSampleMaskEXT*: proc(commandBuffer: VkCommandBuffer, samples: VkSampleCountFlagBits, pSampleMask: ptr VkSampleMask ): void {.stdcall.} - vkCmdSetAlphaToCoverageEnableEXT*: proc(commandBuffer: VkCommandBuffer, alphaToCoverageEnable: VkBool32): void {.stdcall.} - vkCmdSetAlphaToOneEnableEXT*: proc(commandBuffer: VkCommandBuffer, alphaToOneEnable: VkBool32): void {.stdcall.} - vkCmdSetLogicOpEnableEXT*: proc(commandBuffer: VkCommandBuffer, logicOpEnable: VkBool32): void {.stdcall.} - vkCmdSetColorBlendEnableEXT*: proc(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEnables: ptr VkBool32 ): void {.stdcall.} - vkCmdSetColorBlendEquationEXT*: proc(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEquations: ptr VkColorBlendEquationEXT ): void {.stdcall.} - vkCmdSetColorWriteMaskEXT*: proc(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorWriteMasks: ptr VkColorComponentFlags ): void {.stdcall.} - vkCmdSetRasterizationStreamEXT*: proc(commandBuffer: VkCommandBuffer, rasterizationStream: uint32): void {.stdcall.} - vkCmdSetConservativeRasterizationModeEXT*: proc(commandBuffer: VkCommandBuffer, conservativeRasterizationMode: VkConservativeRasterizationModeEXT): void {.stdcall.} - vkCmdSetExtraPrimitiveOverestimationSizeEXT*: proc(commandBuffer: VkCommandBuffer, extraPrimitiveOverestimationSize: float32): void {.stdcall.} - vkCmdSetDepthClipEnableEXT*: proc(commandBuffer: VkCommandBuffer, depthClipEnable: VkBool32): void {.stdcall.} - vkCmdSetSampleLocationsEnableEXT*: proc(commandBuffer: VkCommandBuffer, sampleLocationsEnable: VkBool32): void {.stdcall.} - vkCmdSetColorBlendAdvancedEXT*: proc(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendAdvanced: ptr VkColorBlendAdvancedEXT ): void {.stdcall.} - vkCmdSetProvokingVertexModeEXT*: proc(commandBuffer: VkCommandBuffer, provokingVertexMode: VkProvokingVertexModeEXT): void {.stdcall.} - vkCmdSetLineRasterizationModeEXT*: proc(commandBuffer: VkCommandBuffer, lineRasterizationMode: VkLineRasterizationModeEXT): void {.stdcall.} - vkCmdSetLineStippleEnableEXT*: proc(commandBuffer: VkCommandBuffer, stippledLineEnable: VkBool32): void {.stdcall.} - vkCmdSetDepthClipNegativeOneToOneEXT*: proc(commandBuffer: VkCommandBuffer, negativeOneToOne: VkBool32): void {.stdcall.} - vkCmdSetViewportWScalingEnableNV*: proc(commandBuffer: VkCommandBuffer, viewportWScalingEnable: VkBool32): void {.stdcall.} - vkCmdSetViewportSwizzleNV*: proc(commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportSwizzles: ptr VkViewportSwizzleNV ): void {.stdcall.} - vkCmdSetCoverageToColorEnableNV*: proc(commandBuffer: VkCommandBuffer, coverageToColorEnable: VkBool32): void {.stdcall.} - vkCmdSetCoverageToColorLocationNV*: proc(commandBuffer: VkCommandBuffer, coverageToColorLocation: uint32): void {.stdcall.} - vkCmdSetCoverageModulationModeNV*: proc(commandBuffer: VkCommandBuffer, coverageModulationMode: VkCoverageModulationModeNV): void {.stdcall.} - vkCmdSetCoverageModulationTableEnableNV*: proc(commandBuffer: VkCommandBuffer, coverageModulationTableEnable: VkBool32): void {.stdcall.} - vkCmdSetCoverageModulationTableNV*: proc(commandBuffer: VkCommandBuffer, coverageModulationTableCount: uint32, pCoverageModulationTable: ptr float32 ): void {.stdcall.} - vkCmdSetShadingRateImageEnableNV*: proc(commandBuffer: VkCommandBuffer, shadingRateImageEnable: VkBool32): void {.stdcall.} - vkCmdSetCoverageReductionModeNV*: proc(commandBuffer: VkCommandBuffer, coverageReductionMode: VkCoverageReductionModeNV): void {.stdcall.} - vkCmdSetRepresentativeFragmentTestEnableNV*: proc(commandBuffer: VkCommandBuffer, representativeFragmentTestEnable: VkBool32): void {.stdcall.} - vkCreatePrivateDataSlot*: proc(device: VkDevice, pCreateInfo: ptr VkPrivateDataSlotCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPrivateDataSlot: ptr VkPrivateDataSlot ): VkResult {.stdcall.} - vkDestroyPrivateDataSlot*: proc(device: VkDevice, privateDataSlot: VkPrivateDataSlot, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkSetPrivateData*: proc(device: VkDevice, objectType: VkObjectType, objectHandle: uint64, privateDataSlot: VkPrivateDataSlot, data: uint64): VkResult {.stdcall.} - vkGetPrivateData*: proc(device: VkDevice, objectType: VkObjectType, objectHandle: uint64, privateDataSlot: VkPrivateDataSlot, pData: ptr uint64 ): void {.stdcall.} - vkCmdCopyBuffer2*: proc(commandBuffer: VkCommandBuffer, pCopyBufferInfo: ptr VkCopyBufferInfo2 ): void {.stdcall.} - vkCmdCopyImage2*: proc(commandBuffer: VkCommandBuffer, pCopyImageInfo: ptr VkCopyImageInfo2 ): void {.stdcall.} - vkCmdBlitImage2*: proc(commandBuffer: VkCommandBuffer, pBlitImageInfo: ptr VkBlitImageInfo2 ): void {.stdcall.} - vkCmdCopyBufferToImage2*: proc(commandBuffer: VkCommandBuffer, pCopyBufferToImageInfo: ptr VkCopyBufferToImageInfo2 ): void {.stdcall.} - vkCmdCopyImageToBuffer2*: proc(commandBuffer: VkCommandBuffer, pCopyImageToBufferInfo: ptr VkCopyImageToBufferInfo2 ): void {.stdcall.} - vkCmdResolveImage2*: proc(commandBuffer: VkCommandBuffer, pResolveImageInfo: ptr VkResolveImageInfo2 ): void {.stdcall.} - vkCmdRefreshObjectsKHR*: proc(commandBuffer: VkCommandBuffer, pRefreshObjects: ptr VkRefreshObjectListKHR ): void {.stdcall.} - vkGetPhysicalDeviceRefreshableObjectTypesKHR*: proc(physicalDevice: VkPhysicalDevice, pRefreshableObjectTypeCount: ptr uint32 , pRefreshableObjectTypes: ptr VkObjectType ): VkResult {.stdcall.} - vkCmdSetFragmentShadingRateKHR*: proc(commandBuffer: VkCommandBuffer, pFragmentSize: ptr VkExtent2D , combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): void {.stdcall.} - vkGetPhysicalDeviceFragmentShadingRatesKHR*: proc(physicalDevice: VkPhysicalDevice, pFragmentShadingRateCount: ptr uint32 , pFragmentShadingRates: ptr VkPhysicalDeviceFragmentShadingRateKHR ): VkResult {.stdcall.} - vkCmdSetFragmentShadingRateEnumNV*: proc(commandBuffer: VkCommandBuffer, shadingRate: VkFragmentShadingRateNV, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): void {.stdcall.} - vkGetAccelerationStructureBuildSizesKHR*: proc(device: VkDevice, buildType: VkAccelerationStructureBuildTypeKHR, pBuildInfo: ptr VkAccelerationStructureBuildGeometryInfoKHR , pMaxPrimitiveCounts: ptr uint32 , pSizeInfo: ptr VkAccelerationStructureBuildSizesInfoKHR ): void {.stdcall.} - vkCmdSetVertexInputEXT*: proc(commandBuffer: VkCommandBuffer, vertexBindingDescriptionCount: uint32, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription2EXT , vertexAttributeDescriptionCount: uint32, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription2EXT ): void {.stdcall.} - vkCmdSetColorWriteEnableEXT*: proc(commandBuffer: VkCommandBuffer, attachmentCount: uint32, pColorWriteEnables: ptr VkBool32 ): void {.stdcall.} - vkCmdSetEvent2*: proc(commandBuffer: VkCommandBuffer, event: VkEvent, pDependencyInfo: ptr VkDependencyInfo ): void {.stdcall.} - vkCmdResetEvent2*: proc(commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags2): void {.stdcall.} - vkCmdWaitEvents2*: proc(commandBuffer: VkCommandBuffer, eventCount: uint32, pEvents: ptr VkEvent , pDependencyInfos: ptr VkDependencyInfo ): void {.stdcall.} - vkCmdPipelineBarrier2*: proc(commandBuffer: VkCommandBuffer, pDependencyInfo: ptr VkDependencyInfo ): void {.stdcall.} - vkQueueSubmit2*: proc(queue: VkQueue, submitCount: uint32, pSubmits: ptr VkSubmitInfo2 , fence: VkFence): VkResult {.stdcall.} - vkCmdWriteTimestamp2*: proc(commandBuffer: VkCommandBuffer, stage: VkPipelineStageFlags2, queryPool: VkQueryPool, query: uint32): void {.stdcall.} - vkCmdWriteBufferMarker2AMD*: proc(commandBuffer: VkCommandBuffer, stage: VkPipelineStageFlags2, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, marker: uint32): void {.stdcall.} - vkGetQueueCheckpointData2NV*: proc(queue: VkQueue, pCheckpointDataCount: ptr uint32 , pCheckpointData: ptr VkCheckpointData2NV ): void {.stdcall.} - vkCopyMemoryToImageEXT*: proc(device: VkDevice, pCopyMemoryToImageInfo: ptr VkCopyMemoryToImageInfoEXT ): VkResult {.stdcall.} - vkCopyImageToMemoryEXT*: proc(device: VkDevice, pCopyImageToMemoryInfo: ptr VkCopyImageToMemoryInfoEXT ): VkResult {.stdcall.} - vkCopyImageToImageEXT*: proc(device: VkDevice, pCopyImageToImageInfo: ptr VkCopyImageToImageInfoEXT ): VkResult {.stdcall.} - vkTransitionImageLayoutEXT*: proc(device: VkDevice, transitionCount: uint32, pTransitions: ptr VkHostImageLayoutTransitionInfoEXT ): VkResult {.stdcall.} - vkGetCommandPoolMemoryConsumption*: proc(device: VkDevice, commandPool: VkCommandPool, commandBuffer: VkCommandBuffer, pConsumption: ptr VkCommandPoolMemoryConsumption ): void {.stdcall.} - vkGetPhysicalDeviceVideoCapabilitiesKHR*: proc(physicalDevice: VkPhysicalDevice, pVideoProfile: ptr VkVideoProfileInfoKHR , pCapabilities: ptr VkVideoCapabilitiesKHR ): VkResult {.stdcall.} - vkGetPhysicalDeviceVideoFormatPropertiesKHR*: proc(physicalDevice: VkPhysicalDevice, pVideoFormatInfo: ptr VkPhysicalDeviceVideoFormatInfoKHR , pVideoFormatPropertyCount: ptr uint32 , pVideoFormatProperties: ptr VkVideoFormatPropertiesKHR ): VkResult {.stdcall.} - vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR*: proc(physicalDevice: VkPhysicalDevice, pQualityLevelInfo: ptr VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR , pQualityLevelProperties: ptr VkVideoEncodeQualityLevelPropertiesKHR ): VkResult {.stdcall.} - vkCreateVideoSessionKHR*: proc(device: VkDevice, pCreateInfo: ptr VkVideoSessionCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pVideoSession: ptr VkVideoSessionKHR ): VkResult {.stdcall.} - vkDestroyVideoSessionKHR*: proc(device: VkDevice, videoSession: VkVideoSessionKHR, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkCreateVideoSessionParametersKHR*: proc(device: VkDevice, pCreateInfo: ptr VkVideoSessionParametersCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pVideoSessionParameters: ptr VkVideoSessionParametersKHR ): VkResult {.stdcall.} - vkUpdateVideoSessionParametersKHR*: proc(device: VkDevice, videoSessionParameters: VkVideoSessionParametersKHR, pUpdateInfo: ptr VkVideoSessionParametersUpdateInfoKHR ): VkResult {.stdcall.} - vkGetEncodedVideoSessionParametersKHR*: proc(device: VkDevice, pVideoSessionParametersInfo: ptr VkVideoEncodeSessionParametersGetInfoKHR , pFeedbackInfo: ptr VkVideoEncodeSessionParametersFeedbackInfoKHR , pDataSize: ptr uint , pData: pointer ): VkResult {.stdcall.} - vkDestroyVideoSessionParametersKHR*: proc(device: VkDevice, videoSessionParameters: VkVideoSessionParametersKHR, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkGetVideoSessionMemoryRequirementsKHR*: proc(device: VkDevice, videoSession: VkVideoSessionKHR, pMemoryRequirementsCount: ptr uint32 , pMemoryRequirements: ptr VkVideoSessionMemoryRequirementsKHR ): VkResult {.stdcall.} - vkBindVideoSessionMemoryKHR*: proc(device: VkDevice, videoSession: VkVideoSessionKHR, bindSessionMemoryInfoCount: uint32, pBindSessionMemoryInfos: ptr VkBindVideoSessionMemoryInfoKHR ): VkResult {.stdcall.} - vkCmdDecodeVideoKHR*: proc(commandBuffer: VkCommandBuffer, pDecodeInfo: ptr VkVideoDecodeInfoKHR ): void {.stdcall.} - vkCmdBeginVideoCodingKHR*: proc(commandBuffer: VkCommandBuffer, pBeginInfo: ptr VkVideoBeginCodingInfoKHR ): void {.stdcall.} - vkCmdControlVideoCodingKHR*: proc(commandBuffer: VkCommandBuffer, pCodingControlInfo: ptr VkVideoCodingControlInfoKHR ): void {.stdcall.} - vkCmdEndVideoCodingKHR*: proc(commandBuffer: VkCommandBuffer, pEndCodingInfo: ptr VkVideoEndCodingInfoKHR ): void {.stdcall.} - vkCmdEncodeVideoKHR*: proc(commandBuffer: VkCommandBuffer, pEncodeInfo: ptr VkVideoEncodeInfoKHR ): void {.stdcall.} - vkCmdDecompressMemoryNV*: proc(commandBuffer: VkCommandBuffer, decompressRegionCount: uint32, pDecompressMemoryRegions: ptr VkDecompressMemoryRegionNV ): void {.stdcall.} - vkCmdDecompressMemoryIndirectCountNV*: proc(commandBuffer: VkCommandBuffer, indirectCommandsAddress: VkDeviceAddress, indirectCommandsCountAddress: VkDeviceAddress, stride: uint32): void {.stdcall.} - vkCreateCuModuleNVX*: proc(device: VkDevice, pCreateInfo: ptr VkCuModuleCreateInfoNVX , pAllocator: ptr VkAllocationCallbacks , pModule: ptr VkCuModuleNVX ): VkResult {.stdcall.} - vkCreateCuFunctionNVX*: proc(device: VkDevice, pCreateInfo: ptr VkCuFunctionCreateInfoNVX , pAllocator: ptr VkAllocationCallbacks , pFunction: ptr VkCuFunctionNVX ): VkResult {.stdcall.} - vkDestroyCuModuleNVX*: proc(device: VkDevice, module: VkCuModuleNVX, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkDestroyCuFunctionNVX*: proc(device: VkDevice, function: VkCuFunctionNVX, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkCmdCuLaunchKernelNVX*: proc(commandBuffer: VkCommandBuffer, pLaunchInfo: ptr VkCuLaunchInfoNVX ): void {.stdcall.} - vkGetDescriptorSetLayoutSizeEXT*: proc(device: VkDevice, layout: VkDescriptorSetLayout, pLayoutSizeInBytes: ptr VkDeviceSize ): void {.stdcall.} - vkGetDescriptorSetLayoutBindingOffsetEXT*: proc(device: VkDevice, layout: VkDescriptorSetLayout, binding: uint32, pOffset: ptr VkDeviceSize ): void {.stdcall.} - vkGetDescriptorEXT*: proc(device: VkDevice, pDescriptorInfo: ptr VkDescriptorGetInfoEXT , dataSize: uint, pDescriptor: pointer ): void {.stdcall.} - vkCmdBindDescriptorBuffersEXT*: proc(commandBuffer: VkCommandBuffer, bufferCount: uint32, pBindingInfos: ptr VkDescriptorBufferBindingInfoEXT ): void {.stdcall.} - vkCmdSetDescriptorBufferOffsetsEXT*: proc(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, firstSet: uint32, setCount: uint32, pBufferIndices: ptr uint32 , pOffsets: ptr VkDeviceSize ): void {.stdcall.} - vkCmdBindDescriptorBufferEmbeddedSamplersEXT*: proc(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, set: uint32): void {.stdcall.} - vkGetBufferOpaqueCaptureDescriptorDataEXT*: proc(device: VkDevice, pInfo: ptr VkBufferCaptureDescriptorDataInfoEXT , pData: pointer ): VkResult {.stdcall.} - vkGetImageOpaqueCaptureDescriptorDataEXT*: proc(device: VkDevice, pInfo: ptr VkImageCaptureDescriptorDataInfoEXT , pData: pointer ): VkResult {.stdcall.} - vkGetImageViewOpaqueCaptureDescriptorDataEXT*: proc(device: VkDevice, pInfo: ptr VkImageViewCaptureDescriptorDataInfoEXT , pData: pointer ): VkResult {.stdcall.} - vkGetSamplerOpaqueCaptureDescriptorDataEXT*: proc(device: VkDevice, pInfo: ptr VkSamplerCaptureDescriptorDataInfoEXT , pData: pointer ): VkResult {.stdcall.} - vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT*: proc(device: VkDevice, pInfo: ptr VkAccelerationStructureCaptureDescriptorDataInfoEXT , pData: pointer ): VkResult {.stdcall.} - vkSetDeviceMemoryPriorityEXT*: proc(device: VkDevice, memory: VkDeviceMemory, priority: float32): void {.stdcall.} - vkAcquireDrmDisplayEXT*: proc(physicalDevice: VkPhysicalDevice, drmFd: int32, display: VkDisplayKHR): VkResult {.stdcall.} - vkGetDrmDisplayEXT*: proc(physicalDevice: VkPhysicalDevice, drmFd: int32, connectorId: uint32, display: ptr VkDisplayKHR ): VkResult {.stdcall.} - vkWaitForPresentKHR*: proc(device: VkDevice, swapchain: VkSwapchainKHR, presentId: uint64, timeout: uint64): VkResult {.stdcall.} - vkCreateBufferCollectionFUCHSIA*: proc(device: VkDevice, pCreateInfo: ptr VkBufferCollectionCreateInfoFUCHSIA , pAllocator: ptr VkAllocationCallbacks , pCollection: ptr VkBufferCollectionFUCHSIA ): VkResult {.stdcall.} - vkSetBufferCollectionBufferConstraintsFUCHSIA*: proc(device: VkDevice, collection: VkBufferCollectionFUCHSIA, pBufferConstraintsInfo: ptr VkBufferConstraintsInfoFUCHSIA ): VkResult {.stdcall.} - vkSetBufferCollectionImageConstraintsFUCHSIA*: proc(device: VkDevice, collection: VkBufferCollectionFUCHSIA, pImageConstraintsInfo: ptr VkImageConstraintsInfoFUCHSIA ): VkResult {.stdcall.} - vkDestroyBufferCollectionFUCHSIA*: proc(device: VkDevice, collection: VkBufferCollectionFUCHSIA, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkGetBufferCollectionPropertiesFUCHSIA*: proc(device: VkDevice, collection: VkBufferCollectionFUCHSIA, pProperties: ptr VkBufferCollectionPropertiesFUCHSIA ): VkResult {.stdcall.} - vkCreateCudaModuleNV*: proc(device: VkDevice, pCreateInfo: ptr VkCudaModuleCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pModule: ptr VkCudaModuleNV ): VkResult {.stdcall.} - vkGetCudaModuleCacheNV*: proc(device: VkDevice, module: VkCudaModuleNV, pCacheSize: ptr uint , pCacheData: pointer ): VkResult {.stdcall.} - vkCreateCudaFunctionNV*: proc(device: VkDevice, pCreateInfo: ptr VkCudaFunctionCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pFunction: ptr VkCudaFunctionNV ): VkResult {.stdcall.} - vkDestroyCudaModuleNV*: proc(device: VkDevice, module: VkCudaModuleNV, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkDestroyCudaFunctionNV*: proc(device: VkDevice, function: VkCudaFunctionNV, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkCmdCudaLaunchKernelNV*: proc(commandBuffer: VkCommandBuffer, pLaunchInfo: ptr VkCudaLaunchInfoNV ): void {.stdcall.} - vkCmdBeginRendering*: proc(commandBuffer: VkCommandBuffer, pRenderingInfo: ptr VkRenderingInfo ): void {.stdcall.} - vkCmdEndRendering*: proc(commandBuffer: VkCommandBuffer): void {.stdcall.} - vkGetDescriptorSetLayoutHostMappingInfoVALVE*: proc(device: VkDevice, pBindingReference: ptr VkDescriptorSetBindingReferenceVALVE , pHostMapping: ptr VkDescriptorSetLayoutHostMappingInfoVALVE ): void {.stdcall.} - vkGetDescriptorSetHostMappingVALVE*: proc(device: VkDevice, descriptorSet: VkDescriptorSet, ppData: ptr pointer ): void {.stdcall.} - vkCreateMicromapEXT*: proc(device: VkDevice, pCreateInfo: ptr VkMicromapCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pMicromap: ptr VkMicromapEXT ): VkResult {.stdcall.} - vkCmdBuildMicromapsEXT*: proc(commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkMicromapBuildInfoEXT ): void {.stdcall.} - vkBuildMicromapsEXT*: proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, infoCount: uint32, pInfos: ptr VkMicromapBuildInfoEXT ): VkResult {.stdcall.} - vkDestroyMicromapEXT*: proc(device: VkDevice, micromap: VkMicromapEXT, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkCmdCopyMicromapEXT*: proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMicromapInfoEXT ): void {.stdcall.} - vkCopyMicromapEXT*: proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMicromapInfoEXT ): VkResult {.stdcall.} - vkCmdCopyMicromapToMemoryEXT*: proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMicromapToMemoryInfoEXT ): void {.stdcall.} - vkCopyMicromapToMemoryEXT*: proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMicromapToMemoryInfoEXT ): VkResult {.stdcall.} - vkCmdCopyMemoryToMicromapEXT*: proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMemoryToMicromapInfoEXT ): void {.stdcall.} - vkCopyMemoryToMicromapEXT*: proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMemoryToMicromapInfoEXT ): VkResult {.stdcall.} - vkCmdWriteMicromapsPropertiesEXT*: proc(commandBuffer: VkCommandBuffer, micromapCount: uint32, pMicromaps: ptr VkMicromapEXT , queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.stdcall.} - vkWriteMicromapsPropertiesEXT*: proc(device: VkDevice, micromapCount: uint32, pMicromaps: ptr VkMicromapEXT , queryType: VkQueryType, dataSize: uint, pData: pointer , stride: uint): VkResult {.stdcall.} - vkGetDeviceMicromapCompatibilityEXT*: proc(device: VkDevice, pVersionInfo: ptr VkMicromapVersionInfoEXT , pCompatibility: ptr VkAccelerationStructureCompatibilityKHR ): void {.stdcall.} - vkGetMicromapBuildSizesEXT*: proc(device: VkDevice, buildType: VkAccelerationStructureBuildTypeKHR, pBuildInfo: ptr VkMicromapBuildInfoEXT , pSizeInfo: ptr VkMicromapBuildSizesInfoEXT ): void {.stdcall.} - vkGetShaderModuleIdentifierEXT*: proc(device: VkDevice, shaderModule: VkShaderModule, pIdentifier: ptr VkShaderModuleIdentifierEXT ): void {.stdcall.} - vkGetShaderModuleCreateInfoIdentifierEXT*: proc(device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo , pIdentifier: ptr VkShaderModuleIdentifierEXT ): void {.stdcall.} - vkGetImageSubresourceLayout2KHR*: proc(device: VkDevice, image: VkImage, pSubresource: ptr VkImageSubresource2KHR , pLayout: ptr VkSubresourceLayout2KHR ): void {.stdcall.} - vkGetPipelinePropertiesEXT*: proc(device: VkDevice, pPipelineInfo: ptr VkPipelineInfoEXT , pPipelineProperties: ptr VkBaseOutStructure ): VkResult {.stdcall.} - vkExportMetalObjectsEXT*: proc(device: VkDevice, pMetalObjectsInfo: ptr VkExportMetalObjectsInfoEXT ): void {.stdcall.} - vkGetFramebufferTilePropertiesQCOM*: proc(device: VkDevice, framebuffer: VkFramebuffer, pPropertiesCount: ptr uint32 , pProperties: ptr VkTilePropertiesQCOM ): VkResult {.stdcall.} - vkGetDynamicRenderingTilePropertiesQCOM*: proc(device: VkDevice, pRenderingInfo: ptr VkRenderingInfo , pProperties: ptr VkTilePropertiesQCOM ): VkResult {.stdcall.} - vkGetPhysicalDeviceOpticalFlowImageFormatsNV*: proc(physicalDevice: VkPhysicalDevice, pOpticalFlowImageFormatInfo: ptr VkOpticalFlowImageFormatInfoNV , pFormatCount: ptr uint32 , pImageFormatProperties: ptr VkOpticalFlowImageFormatPropertiesNV ): VkResult {.stdcall.} - vkCreateOpticalFlowSessionNV*: proc(device: VkDevice, pCreateInfo: ptr VkOpticalFlowSessionCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pSession: ptr VkOpticalFlowSessionNV ): VkResult {.stdcall.} - vkDestroyOpticalFlowSessionNV*: proc(device: VkDevice, session: VkOpticalFlowSessionNV, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkBindOpticalFlowSessionImageNV*: proc(device: VkDevice, session: VkOpticalFlowSessionNV, bindingPoint: VkOpticalFlowSessionBindingPointNV, view: VkImageView, layout: VkImageLayout): VkResult {.stdcall.} - vkCmdOpticalFlowExecuteNV*: proc(commandBuffer: VkCommandBuffer, session: VkOpticalFlowSessionNV, pExecuteInfo: ptr VkOpticalFlowExecuteInfoNV ): void {.stdcall.} - vkGetDeviceFaultInfoEXT*: proc(device: VkDevice, pFaultCounts: ptr VkDeviceFaultCountsEXT , pFaultInfo: ptr VkDeviceFaultInfoEXT ): VkResult {.stdcall.} - vkCmdSetDepthBias2EXT*: proc(commandBuffer: VkCommandBuffer, pDepthBiasInfo: ptr VkDepthBiasInfoEXT ): void {.stdcall.} - vkReleaseSwapchainImagesEXT*: proc(device: VkDevice, pReleaseInfo: ptr VkReleaseSwapchainImagesInfoEXT ): VkResult {.stdcall.} - vkGetDeviceImageSubresourceLayoutKHR*: proc(device: VkDevice, pInfo: ptr VkDeviceImageSubresourceInfoKHR , pLayout: ptr VkSubresourceLayout2KHR ): void {.stdcall.} - vkMapMemory2KHR*: proc(device: VkDevice, pMemoryMapInfo: ptr VkMemoryMapInfoKHR , ppData: ptr pointer ): VkResult {.stdcall.} - vkUnmapMemory2KHR*: proc(device: VkDevice, pMemoryUnmapInfo: ptr VkMemoryUnmapInfoKHR ): VkResult {.stdcall.} - vkCreateShadersEXT*: proc(device: VkDevice, createInfoCount: uint32, pCreateInfos: ptr VkShaderCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pShaders: ptr VkShaderEXT ): VkResult {.stdcall.} - vkDestroyShaderEXT*: proc(device: VkDevice, shader: VkShaderEXT, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.} - vkGetShaderBinaryDataEXT*: proc(device: VkDevice, shader: VkShaderEXT, pDataSize: ptr uint , pData: pointer ): VkResult {.stdcall.} - vkCmdBindShadersEXT*: proc(commandBuffer: VkCommandBuffer, stageCount: uint32, pStages: ptr VkShaderStageFlagBits , pShaders: ptr VkShaderEXT ): void {.stdcall.} - vkGetScreenBufferPropertiesQNX*: proc(device: VkDevice, buffer: ptr screen_buffer , pProperties: ptr VkScreenBufferPropertiesQNX ): VkResult {.stdcall.} - vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR*: proc(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkCooperativeMatrixPropertiesKHR ): VkResult {.stdcall.} - vkGetExecutionGraphPipelineScratchSizeAMDX*: proc(device: VkDevice, executionGraph: VkPipeline, pSizeInfo: ptr VkExecutionGraphPipelineScratchSizeAMDX ): VkResult {.stdcall.} - vkGetExecutionGraphPipelineNodeIndexAMDX*: proc(device: VkDevice, executionGraph: VkPipeline, pNodeInfo: ptr VkPipelineShaderStageNodeCreateInfoAMDX , pNodeIndex: ptr uint32 ): VkResult {.stdcall.} - vkCreateExecutionGraphPipelinesAMDX*: proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkExecutionGraphPipelineCreateInfoAMDX , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.} - vkCmdInitializeGraphScratchMemoryAMDX*: proc(commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress): void {.stdcall.} - vkCmdDispatchGraphAMDX*: proc(commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, pCountInfo: ptr VkDispatchGraphCountInfoAMDX ): void {.stdcall.} - vkCmdDispatchGraphIndirectAMDX*: proc(commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, pCountInfo: ptr VkDispatchGraphCountInfoAMDX ): void {.stdcall.} - vkCmdDispatchGraphIndirectCountAMDX*: proc(commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, countInfo: VkDeviceAddress): void {.stdcall.} - vkCmdBindDescriptorSets2KHR*: proc(commandBuffer: VkCommandBuffer, pBindDescriptorSetsInfo: ptr VkBindDescriptorSetsInfoKHR ): void {.stdcall.} - vkCmdPushConstants2KHR*: proc(commandBuffer: VkCommandBuffer, pPushConstantsInfo: ptr VkPushConstantsInfoKHR ): void {.stdcall.} - vkCmdPushDescriptorSet2KHR*: proc(commandBuffer: VkCommandBuffer, pPushDescriptorSetInfo: ptr VkPushDescriptorSetInfoKHR ): void {.stdcall.} - vkCmdPushDescriptorSetWithTemplate2KHR*: proc(commandBuffer: VkCommandBuffer, pPushDescriptorSetWithTemplateInfo: ptr VkPushDescriptorSetWithTemplateInfoKHR ): void {.stdcall.} - vkCmdSetDescriptorBufferOffsets2EXT*: proc(commandBuffer: VkCommandBuffer, pSetDescriptorBufferOffsetsInfo: ptr VkSetDescriptorBufferOffsetsInfoEXT ): void {.stdcall.} - vkCmdBindDescriptorBufferEmbeddedSamplers2EXT*: proc(commandBuffer: VkCommandBuffer, pBindDescriptorBufferEmbeddedSamplersInfo: ptr VkBindDescriptorBufferEmbeddedSamplersInfoEXT ): void {.stdcall.} - vkSetLatencySleepModeNV*: proc(device: VkDevice, swapchain: VkSwapchainKHR, pSleepModeInfo: ptr VkLatencySleepModeInfoNV ): VkResult {.stdcall.} - vkLatencySleepNV*: proc(device: VkDevice, swapchain: VkSwapchainKHR, pSleepInfo: ptr VkLatencySleepInfoNV ): VkResult {.stdcall.} - vkSetLatencyMarkerNV*: proc(device: VkDevice, swapchain: VkSwapchainKHR, pLatencyMarkerInfo: ptr VkSetLatencyMarkerInfoNV ): void {.stdcall.} - vkGetLatencyTimingsNV*: proc(device: VkDevice, swapchain: VkSwapchainKHR, pLatencyMarkerInfo: ptr VkGetLatencyMarkerInfoNV ): void {.stdcall.} - vkQueueNotifyOutOfBandNV*: proc(queue: VkQueue, pQueueTypeInfo: ptr VkOutOfBandQueueTypeInfoNV ): void {.stdcall.} - vkCmdSetRenderingAttachmentLocationsKHR*: proc(commandBuffer: VkCommandBuffer, pLocationInfo: ptr VkRenderingAttachmentLocationInfoKHR ): void {.stdcall.} - vkCmdSetRenderingInputAttachmentIndicesKHR*: proc(commandBuffer: VkCommandBuffer, pLocationInfo: ptr VkRenderingInputAttachmentIndexInfoKHR ): void {.stdcall.} + vkDestroyInstance*: proc (instance: VkInstanc, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkEnumeratePhysicalDevices*: proc (instance: VkInstanc, pPhysicalDeviceCount: ptr uint32, pPhysicalDevices: ptr VkPhysicalDevice): VkResult {.stdcall.} + vkGetDeviceProcAddr*: proc (device: VkDevic, pName: cstring): PFN_vkVoidFunction {.stdcall.} + vkGetInstanceProcAddr*: proc (instance: VkInstanc, pName: cstring): PFN_vkVoidFunction {.stdcall.} + vkGetPhysicalDeviceProperties*: proc (physicalDevice: VkPhysicalDevic, pProperties: ptr VkPhysicalDeviceProperties): void {.stdcall.} + vkGetPhysicalDeviceQueueFamilyProperties*: proc (physicalDevice: VkPhysicalDevic, pQueueFamilyPropertyCount: ptr uint32, pQueueFamilyProperties: ptr VkQueueFamilyProperties): void {.stdcall.} + vkGetPhysicalDeviceMemoryProperties*: proc (physicalDevice: VkPhysicalDevic, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties): void {.stdcall.} + vkGetPhysicalDeviceFeatures*: proc (physicalDevice: VkPhysicalDevic, pFeatures: ptr VkPhysicalDeviceFeatures): void {.stdcall.} + vkGetPhysicalDeviceFormatProperties*: proc (physicalDevice: VkPhysicalDevic, format: VkForma, pFormatProperties: ptr VkFormatProperties): void {.stdcall.} + vkGetPhysicalDeviceImageFormatProperties*: proc (physicalDevice: VkPhysicalDevic, format: VkForma, `type`: VkImageTyp, tiling: VkImageTilin, usage: VkImageUsageFlag, flags: VkImageCreateFlag, pImageFormatProperties: ptr VkImageFormatProperties): VkResult {.stdcall.} + vkCreateDevice*: proc (physicalDevice: VkPhysicalDevic, pCreateInfo: ptr VkDeviceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDevice: ptr VkDevice): VkResult {.stdcall.} + vkCreateDevice*: proc (physicalDevice: VkPhysicalDevic, pCreateInfo: ptr VkDeviceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDevice: ptr VkDevice): VkResult {.stdcall.} + vkDestroyDevice*: proc (device: VkDevic, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkEnumerateDeviceLayerProperties*: proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkLayerProperties): VkResult {.stdcall.} + vkEnumerateDeviceLayerProperties*: proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkLayerProperties): VkResult {.stdcall.} + vkEnumerateDeviceExtensionProperties*: proc (physicalDevice: VkPhysicalDevic, pLayerName: cstring, pPropertyCount: ptr uint32, pProperties: ptr VkExtensionProperties): VkResult {.stdcall.} + vkGetDeviceQueue*: proc (device: VkDevic, queueFamilyIndex: uint32_, queueIndex: uint32_, pQueue: ptr VkQueue): void {.stdcall.} + vkQueueSubmit*: proc (queue: VkQueu, submitCount: uint32_, pSubmits: ptr VkSubmitInfo, fence: VkFenc): VkResult {.stdcall.} + vkQueueWaitIdle*: proc (queue: VkQueu): VkResult {.stdcall.} + vkDeviceWaitIdle*: proc (device: VkDevic): VkResult {.stdcall.} + vkAllocateMemory*: proc (device: VkDevic, pAllocateInfo: ptr VkMemoryAllocateInfo, pAllocator: ptr VkAllocationCallbacks, pMemory: ptr VkDeviceMemory): VkResult {.stdcall.} + vkFreeMemory*: proc (device: VkDevic, memory: VkDeviceMemor, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkMapMemory*: proc (device: VkDevic, memory: VkDeviceMemor, offset: VkDeviceSiz, size: VkDeviceSiz, flags: VkMemoryMapFlag, ppData: ptr pointer): VkResult {.stdcall.} + vkUnmapMemory*: proc (device: VkDevic, memory: VkDeviceMemor): void {.stdcall.} + vkFlushMappedMemoryRanges*: proc (device: VkDevic, memoryRangeCount: uint32_, pMemoryRanges: ptr VkMappedMemoryRange): VkResult {.stdcall.} + vkInvalidateMappedMemoryRanges*: proc (device: VkDevic, memoryRangeCount: uint32_, pMemoryRanges: ptr VkMappedMemoryRange): VkResult {.stdcall.} + vkGetDeviceMemoryCommitment*: proc (device: VkDevic, memory: VkDeviceMemor, pCommittedMemoryInBytes: ptr VkDeviceSize): void {.stdcall.} + vkGetBufferMemoryRequirements*: proc (device: VkDevic, buffer: VkBuffe, pMemoryRequirements: ptr VkMemoryRequirements): void {.stdcall.} + vkBindBufferMemory*: proc (device: VkDevic, buffer: VkBuffe, memory: VkDeviceMemor, memoryOffset: VkDeviceSiz): VkResult {.stdcall.} + vkGetImageMemoryRequirements*: proc (device: VkDevic, image: VkImag, pMemoryRequirements: ptr VkMemoryRequirements): void {.stdcall.} + vkBindImageMemory*: proc (device: VkDevic, image: VkImag, memory: VkDeviceMemor, memoryOffset: VkDeviceSiz): VkResult {.stdcall.} + vkGetImageSparseMemoryRequirements*: proc (device: VkDevic, image: VkImag, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements): void {.stdcall.} + vkGetPhysicalDeviceSparseImageFormatProperties*: proc (physicalDevice: VkPhysicalDevic, format: VkForma, `type`: VkImageTyp, samples: VkSampleCountFlagBit, usage: VkImageUsageFlag, tiling: VkImageTilin, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties): void {.stdcall.} + vkQueueBindSparse*: proc (queue: VkQueu, bindInfoCount: uint32_, pBindInfo: ptr VkBindSparseInfo, fence: VkFenc): VkResult {.stdcall.} + vkCreateFence*: proc (device: VkDevic, pCreateInfo: ptr VkFenceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pFence: ptr VkFence): VkResult {.stdcall.} + vkDestroyFence*: proc (device: VkDevic, fence: VkFenc, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkResetFences*: proc (device: VkDevic, fenceCount: uint32_, pFences: ptr VkFence): VkResult {.stdcall.} + vkGetFenceStatus*: proc (device: VkDevic, fence: VkFenc): VkResult {.stdcall.} + vkWaitForFences*: proc (device: VkDevic, fenceCount: uint32_, pFences: ptr VkFence, waitAll: VkBool3, timeout: uint64_): VkResult {.stdcall.} + vkCreateSemaphore*: proc (device: VkDevic, pCreateInfo: ptr VkSemaphoreCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSemaphore: ptr VkSemaphore): VkResult {.stdcall.} + vkDestroySemaphore*: proc (device: VkDevic, semaphore: VkSemaphor, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCreateEvent*: proc (device: VkDevic, pCreateInfo: ptr VkEventCreateInfo, pAllocator: ptr VkAllocationCallbacks, pEvent: ptr VkEvent): VkResult {.stdcall.} + vkDestroyEvent*: proc (device: VkDevic, event: VkEven, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetEventStatus*: proc (device: VkDevic, event: VkEven): VkResult {.stdcall.} + vkSetEvent*: proc (device: VkDevic, event: VkEven): VkResult {.stdcall.} + vkResetEvent*: proc (device: VkDevic, event: VkEven): VkResult {.stdcall.} + vkCreateQueryPool*: proc (device: VkDevic, pCreateInfo: ptr VkQueryPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pQueryPool: ptr VkQueryPool): VkResult {.stdcall.} + vkDestroyQueryPool*: proc (device: VkDevic, queryPool: VkQueryPoo, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetQueryPoolResults*: proc (device: VkDevic, queryPool: VkQueryPoo, firstQuery: uint32_, queryCount: uint32_, dataSize: size_, pData: pointer, stride: VkDeviceSiz, flags: VkQueryResultFlag): VkResult {.stdcall.} + vkResetQueryPool*: proc (device: VkDevic, queryPool: VkQueryPoo, firstQuery: uint32_, queryCount: uint32_): void {.stdcall.} + vkCreateBuffer*: proc (device: VkDevic, pCreateInfo: ptr VkBufferCreateInfo, pAllocator: ptr VkAllocationCallbacks, pBuffer: ptr VkBuffer): VkResult {.stdcall.} + vkDestroyBuffer*: proc (device: VkDevic, buffer: VkBuffe, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCreateBufferView*: proc (device: VkDevic, pCreateInfo: ptr VkBufferViewCreateInfo, pAllocator: ptr VkAllocationCallbacks, pView: ptr VkBufferView): VkResult {.stdcall.} + vkDestroyBufferView*: proc (device: VkDevic, bufferView: VkBufferVie, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCreateImage*: proc (device: VkDevic, pCreateInfo: ptr VkImageCreateInfo, pAllocator: ptr VkAllocationCallbacks, pImage: ptr VkImage): VkResult {.stdcall.} + vkDestroyImage*: proc (device: VkDevic, image: VkImag, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetImageSubresourceLayout*: proc (device: VkDevic, image: VkImag, pSubresource: ptr VkImageSubresource, pLayout: ptr VkSubresourceLayout): void {.stdcall.} + vkCreateImageView*: proc (device: VkDevic, pCreateInfo: ptr VkImageViewCreateInfo, pAllocator: ptr VkAllocationCallbacks, pView: ptr VkImageView): VkResult {.stdcall.} + vkDestroyImageView*: proc (device: VkDevic, imageView: VkImageVie, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCreateShaderModule*: proc (device: VkDevic, pCreateInfo: ptr VkShaderModuleCreateInfo, pAllocator: ptr VkAllocationCallbacks, pShaderModule: ptr VkShaderModule): VkResult {.stdcall.} + vkDestroyShaderModule*: proc (device: VkDevic, shaderModule: VkShaderModul, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCreatePipelineCache*: proc (device: VkDevic, pCreateInfo: ptr VkPipelineCacheCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineCache: ptr VkPipelineCache): VkResult {.stdcall.} + vkCreatePipelineCache*: proc (device: VkDevic, pCreateInfo: ptr VkPipelineCacheCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineCache: ptr VkPipelineCache): VkResult {.stdcall.} + vkDestroyPipelineCache*: proc (device: VkDevic, pipelineCache: VkPipelineCach, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetPipelineCacheData*: proc (device: VkDevic, pipelineCache: VkPipelineCach, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.} + vkMergePipelineCaches*: proc (device: VkDevic, dstCache: VkPipelineCach, srcCacheCount: uint32_, pSrcCaches: ptr VkPipelineCache): VkResult {.stdcall.} + vkCreateGraphicsPipelines*: proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkGraphicsPipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} + vkCreateGraphicsPipelines*: proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkGraphicsPipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} + vkCreateComputePipelines*: proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkComputePipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} + vkCreateComputePipelines*: proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkComputePipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} + vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI*: proc (device: VkDevic, renderpass: VkRenderPas, pMaxWorkgroupSize: ptr VkExtent2D): VkResult {.stdcall.} + vkDestroyPipeline*: proc (device: VkDevic, pipeline: VkPipelin, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCreatePipelineLayout*: proc (device: VkDevic, pCreateInfo: ptr VkPipelineLayoutCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineLayout: ptr VkPipelineLayout): VkResult {.stdcall.} + vkDestroyPipelineLayout*: proc (device: VkDevic, pipelineLayout: VkPipelineLayou, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCreateSampler*: proc (device: VkDevic, pCreateInfo: ptr VkSamplerCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSampler: ptr VkSampler): VkResult {.stdcall.} + vkDestroySampler*: proc (device: VkDevic, sampler: VkSample, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCreateDescriptorSetLayout*: proc (device: VkDevic, pCreateInfo: ptr VkDescriptorSetLayoutCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSetLayout: ptr VkDescriptorSetLayout): VkResult {.stdcall.} + vkDestroyDescriptorSetLayout*: proc (device: VkDevic, descriptorSetLayout: VkDescriptorSetLayou, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCreateDescriptorPool*: proc (device: VkDevic, pCreateInfo: ptr VkDescriptorPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDescriptorPool: ptr VkDescriptorPool): VkResult {.stdcall.} + vkDestroyDescriptorPool*: proc (device: VkDevic, descriptorPool: VkDescriptorPoo, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkResetDescriptorPool*: proc (device: VkDevic, descriptorPool: VkDescriptorPoo, flags: VkDescriptorPoolResetFlag): VkResult {.stdcall.} + vkAllocateDescriptorSets*: proc (device: VkDevic, pAllocateInfo: ptr VkDescriptorSetAllocateInfo, pDescriptorSets: ptr VkDescriptorSet): VkResult {.stdcall.} + vkFreeDescriptorSets*: proc (device: VkDevic, descriptorPool: VkDescriptorPoo, descriptorSetCount: uint32_, pDescriptorSets: ptr VkDescriptorSet): VkResult {.stdcall.} + vkUpdateDescriptorSets*: proc (device: VkDevic, descriptorWriteCount: uint32_, pDescriptorWrites: ptr VkWriteDescriptorSet, descriptorCopyCount: uint32_, pDescriptorCopies: ptr VkCopyDescriptorSet): void {.stdcall.} + vkCreateFramebuffer*: proc (device: VkDevic, pCreateInfo: ptr VkFramebufferCreateInfo, pAllocator: ptr VkAllocationCallbacks, pFramebuffer: ptr VkFramebuffer): VkResult {.stdcall.} + vkDestroyFramebuffer*: proc (device: VkDevic, framebuffer: VkFramebuffe, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCreateRenderPass*: proc (device: VkDevic, pCreateInfo: ptr VkRenderPassCreateInfo, pAllocator: ptr VkAllocationCallbacks, pRenderPass: ptr VkRenderPass): VkResult {.stdcall.} + vkDestroyRenderPass*: proc (device: VkDevic, renderPass: VkRenderPas, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetRenderAreaGranularity*: proc (device: VkDevic, renderPass: VkRenderPas, pGranularity: ptr VkExtent2D): void {.stdcall.} + vkGetRenderingAreaGranularityKHR*: proc (device: VkDevic, pRenderingAreaInfo: ptr VkRenderingAreaInfoKHR, pGranularity: ptr VkExtent2D): void {.stdcall.} + vkCreateCommandPool*: proc (device: VkDevic, pCreateInfo: ptr VkCommandPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pCommandPool: ptr VkCommandPool): VkResult {.stdcall.} + vkDestroyCommandPool*: proc (device: VkDevic, commandPool: VkCommandPoo, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkResetCommandPool*: proc (device: VkDevic, commandPool: VkCommandPoo, flags: VkCommandPoolResetFlag): VkResult {.stdcall.} + vkAllocateCommandBuffers*: proc (device: VkDevic, pAllocateInfo: ptr VkCommandBufferAllocateInfo, pCommandBuffers: ptr VkCommandBuffer): VkResult {.stdcall.} + vkFreeCommandBuffers*: proc (device: VkDevic, commandPool: VkCommandPoo, commandBufferCount: uint32_, pCommandBuffers: ptr VkCommandBuffer): void {.stdcall.} + vkBeginCommandBuffer*: proc (commandBuffer: VkCommandBuffe, pBeginInfo: ptr VkCommandBufferBeginInfo): VkResult {.stdcall.} + vkEndCommandBuffer*: proc (commandBuffer: VkCommandBuffe): VkResult {.stdcall.} + vkResetCommandBuffer*: proc (commandBuffer: VkCommandBuffe, flags: VkCommandBufferResetFlag): VkResult {.stdcall.} + vkCmdBindPipeline*: proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, pipeline: VkPipelin): void {.stdcall.} + vkCmdSetAttachmentFeedbackLoopEnableEXT*: proc (commandBuffer: VkCommandBuffe, aspectMask: VkImageAspectFlag): void {.stdcall.} + vkCmdSetViewport*: proc (commandBuffer: VkCommandBuffe, firstViewport: uint32_, viewportCount: uint32_, pViewports: ptr VkViewport): void {.stdcall.} + vkCmdSetScissor*: proc (commandBuffer: VkCommandBuffe, firstScissor: uint32_, scissorCount: uint32_, pScissors: ptr VkRect2D): void {.stdcall.} + vkCmdSetLineWidth*: proc (commandBuffer: VkCommandBuffe, lineWidth: floa): void {.stdcall.} + vkCmdSetDepthBias*: proc (commandBuffer: VkCommandBuffe, depthBiasConstantFactor: floa, depthBiasClamp: floa, depthBiasSlopeFactor: floa): void {.stdcall.} + vkCmdSetBlendConstants*: proc (commandBuffer: VkCommandBuffe, blendConstants: array[4, float3]): void {.stdcall.} + vkCmdSetDepthBounds*: proc (commandBuffer: VkCommandBuffe, minDepthBounds: floa, maxDepthBounds: floa): void {.stdcall.} + vkCmdSetStencilCompareMask*: proc (commandBuffer: VkCommandBuffe, faceMask: VkStencilFaceFlag, compareMask: uint32_): void {.stdcall.} + vkCmdSetStencilWriteMask*: proc (commandBuffer: VkCommandBuffe, faceMask: VkStencilFaceFlag, writeMask: uint32_): void {.stdcall.} + vkCmdSetStencilReference*: proc (commandBuffer: VkCommandBuffe, faceMask: VkStencilFaceFlag, reference: uint32_): void {.stdcall.} + vkCmdBindDescriptorSets*: proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, layout: VkPipelineLayou, firstSet: uint32_, descriptorSetCount: uint32_, pDescriptorSets: ptr VkDescriptorSet, dynamicOffsetCount: uint32_, pDynamicOffsets: ptr uint32): void {.stdcall.} + vkCmdBindIndexBuffer*: proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, indexType: VkIndexTyp): void {.stdcall.} + vkCmdBindVertexBuffers*: proc (commandBuffer: VkCommandBuffe, firstBinding: uint32_, bindingCount: uint32_, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize): void {.stdcall.} + vkCmdDraw*: proc (commandBuffer: VkCommandBuffe, vertexCount: uint32_, instanceCount: uint32_, firstVertex: uint32_, firstInstance: uint32_): void {.stdcall.} + vkCmdDrawIndexed*: proc (commandBuffer: VkCommandBuffe, indexCount: uint32_, instanceCount: uint32_, firstIndex: uint32_, vertexOffset: int32_, firstInstance: uint32_): void {.stdcall.} + vkCmdDrawMultiEXT*: proc (commandBuffer: VkCommandBuffe, drawCount: uint32_, pVertexInfo: ptr VkMultiDrawInfoEXT, instanceCount: uint32_, firstInstance: uint32_, stride: uint32_): void {.stdcall.} + vkCmdDrawMultiIndexedEXT*: proc (commandBuffer: VkCommandBuffe, drawCount: uint32_, pIndexInfo: ptr VkMultiDrawIndexedInfoEXT, instanceCount: uint32_, firstInstance: uint32_, stride: uint32_, pVertexOffset: ptr int32): void {.stdcall.} + vkCmdDrawIndirect*: proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, drawCount: uint32_, stride: uint32_): void {.stdcall.} + vkCmdDrawIndexedIndirect*: proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, drawCount: uint32_, stride: uint32_): void {.stdcall.} + vkCmdDispatch*: proc (commandBuffer: VkCommandBuffe, groupCountX: uint32_, groupCountY: uint32_, groupCountZ: uint32_): void {.stdcall.} + vkCmdDispatchIndirect*: proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz): void {.stdcall.} + vkCmdSubpassShadingHUAWEI*: proc (commandBuffer: VkCommandBuffe): void {.stdcall.} + vkCmdDrawClusterHUAWEI*: proc (commandBuffer: VkCommandBuffe, groupCountX: uint32_, groupCountY: uint32_, groupCountZ: uint32_): void {.stdcall.} + vkCmdDrawClusterIndirectHUAWEI*: proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz): void {.stdcall.} + vkCmdUpdatePipelineIndirectBufferNV*: proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, pipeline: VkPipelin): void {.stdcall.} + vkCmdCopyBuffer*: proc (commandBuffer: VkCommandBuffe, srcBuffer: VkBuffe, dstBuffer: VkBuffe, regionCount: uint32_, pRegions: ptr VkBufferCopy): void {.stdcall.} + vkCmdCopyImage*: proc (commandBuffer: VkCommandBuffe, srcImage: VkImag, srcImageLayout: VkImageLayou, dstImage: VkImag, dstImageLayout: VkImageLayou, regionCount: uint32_, pRegions: ptr VkImageCopy): void {.stdcall.} + vkCmdBlitImage*: proc (commandBuffer: VkCommandBuffe, srcImage: VkImag, srcImageLayout: VkImageLayou, dstImage: VkImag, dstImageLayout: VkImageLayou, regionCount: uint32_, pRegions: ptr VkImageBlit, filter: VkFilte): void {.stdcall.} + vkCmdCopyBufferToImage*: proc (commandBuffer: VkCommandBuffe, srcBuffer: VkBuffe, dstImage: VkImag, dstImageLayout: VkImageLayou, regionCount: uint32_, pRegions: ptr VkBufferImageCopy): void {.stdcall.} + vkCmdCopyImageToBuffer*: proc (commandBuffer: VkCommandBuffe, srcImage: VkImag, srcImageLayout: VkImageLayou, dstBuffer: VkBuffe, regionCount: uint32_, pRegions: ptr VkBufferImageCopy): void {.stdcall.} + vkCmdCopyMemoryIndirectNV*: proc (commandBuffer: VkCommandBuffe, copyBufferAddress: VkDeviceAddres, copyCount: uint32_, stride: uint32_): void {.stdcall.} + vkCmdCopyMemoryToImageIndirectNV*: proc (commandBuffer: VkCommandBuffe, copyBufferAddress: VkDeviceAddres, copyCount: uint32_, stride: uint32_, dstImage: VkImag, dstImageLayout: VkImageLayou, pImageSubresources: ptr VkImageSubresourceLayers): void {.stdcall.} + vkCmdUpdateBuffer*: proc (commandBuffer: VkCommandBuffe, dstBuffer: VkBuffe, dstOffset: VkDeviceSiz, dataSize: VkDeviceSiz, pData: pointer): void {.stdcall.} + vkCmdFillBuffer*: proc (commandBuffer: VkCommandBuffe, dstBuffer: VkBuffe, dstOffset: VkDeviceSiz, size: VkDeviceSiz, data: uint32_): void {.stdcall.} + vkCmdClearColorImage*: proc (commandBuffer: VkCommandBuffe, image: VkImag, imageLayout: VkImageLayou, pColor: ptr VkClearColorValue, rangeCount: uint32_, pRanges: ptr VkImageSubresourceRange): void {.stdcall.} + vkCmdClearDepthStencilImage*: proc (commandBuffer: VkCommandBuffe, image: VkImag, imageLayout: VkImageLayou, pDepthStencil: ptr VkClearDepthStencilValue, rangeCount: uint32_, pRanges: ptr VkImageSubresourceRange): void {.stdcall.} + vkCmdClearAttachments*: proc (commandBuffer: VkCommandBuffe, attachmentCount: uint32_, pAttachments: ptr VkClearAttachment, rectCount: uint32_, pRects: ptr VkClearRect): void {.stdcall.} + vkCmdResolveImage*: proc (commandBuffer: VkCommandBuffe, srcImage: VkImag, srcImageLayout: VkImageLayou, dstImage: VkImag, dstImageLayout: VkImageLayou, regionCount: uint32_, pRegions: ptr VkImageResolve): void {.stdcall.} + vkCmdSetEvent*: proc (commandBuffer: VkCommandBuffe, event: VkEven, stageMask: VkPipelineStageFlag): void {.stdcall.} + vkCmdResetEvent*: proc (commandBuffer: VkCommandBuffe, event: VkEven, stageMask: VkPipelineStageFlag): void {.stdcall.} + vkCmdWaitEvents*: proc (commandBuffer: VkCommandBuffe, eventCount: uint32_, pEvents: ptr VkEvent, srcStageMask: VkPipelineStageFlag, dstStageMask: VkPipelineStageFlag, memoryBarrierCount: uint32_, pMemoryBarriers: ptr VkMemoryBarrier, bufferMemoryBarrierCount: uint32_, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier, imageMemoryBarrierCount: uint32_, pImageMemoryBarriers: ptr VkImageMemoryBarrier): void {.stdcall.} + vkCmdPipelineBarrier*: proc (commandBuffer: VkCommandBuffe, srcStageMask: VkPipelineStageFlag, dstStageMask: VkPipelineStageFlag, dependencyFlags: VkDependencyFlag, memoryBarrierCount: uint32_, pMemoryBarriers: ptr VkMemoryBarrier, bufferMemoryBarrierCount: uint32_, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier, imageMemoryBarrierCount: uint32_, pImageMemoryBarriers: ptr VkImageMemoryBarrier): void {.stdcall.} + vkCmdBeginQuery*: proc (commandBuffer: VkCommandBuffe, queryPool: VkQueryPoo, query: uint32_, flags: VkQueryControlFlag): void {.stdcall.} + vkCmdEndQuery*: proc (commandBuffer: VkCommandBuffe, queryPool: VkQueryPoo, query: uint32_): void {.stdcall.} + vkCmdBeginConditionalRenderingEXT*: proc (commandBuffer: VkCommandBuffe, pConditionalRenderingBegin: ptr VkConditionalRenderingBeginInfoEXT): void {.stdcall.} + vkCmdEndConditionalRenderingEXT*: proc (commandBuffer: VkCommandBuffe): void {.stdcall.} + vkCmdResetQueryPool*: proc (commandBuffer: VkCommandBuffe, queryPool: VkQueryPoo, firstQuery: uint32_, queryCount: uint32_): void {.stdcall.} + vkCmdWriteTimestamp*: proc (commandBuffer: VkCommandBuffe, pipelineStage: VkPipelineStageFlagBit, queryPool: VkQueryPoo, query: uint32_): void {.stdcall.} + vkCmdCopyQueryPoolResults*: proc (commandBuffer: VkCommandBuffe, queryPool: VkQueryPoo, firstQuery: uint32_, queryCount: uint32_, dstBuffer: VkBuffe, dstOffset: VkDeviceSiz, stride: VkDeviceSiz, flags: VkQueryResultFlag): void {.stdcall.} + vkCmdPushConstants*: proc (commandBuffer: VkCommandBuffe, layout: VkPipelineLayou, stageFlags: VkShaderStageFlag, offset: uint32_, size: uint32_, pValues: pointer): void {.stdcall.} + vkCmdBeginRenderPass*: proc (commandBuffer: VkCommandBuffe, pRenderPassBegin: ptr VkRenderPassBeginInfo, contents: VkSubpassContent): void {.stdcall.} + vkCmdNextSubpass*: proc (commandBuffer: VkCommandBuffe, contents: VkSubpassContent): void {.stdcall.} + vkCmdEndRenderPass*: proc (commandBuffer: VkCommandBuffe): void {.stdcall.} + vkCmdExecuteCommands*: proc (commandBuffer: VkCommandBuffe, commandBufferCount: uint32_, pCommandBuffers: ptr VkCommandBuffer): void {.stdcall.} + vkCreateAndroidSurfaceKHR*: proc (instance: VkInstanc, pCreateInfo: ptr VkAndroidSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceDisplayPropertiesKHR*: proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayPropertiesKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceDisplayPlanePropertiesKHR*: proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayPlanePropertiesKHR): VkResult {.stdcall.} + vkGetDisplayPlaneSupportedDisplaysKHR*: proc (physicalDevice: VkPhysicalDevic, planeIndex: uint32_, pDisplayCount: ptr uint32, pDisplays: ptr VkDisplayKHR): VkResult {.stdcall.} + vkGetDisplayModePropertiesKHR*: proc (physicalDevice: VkPhysicalDevic, display: VkDisplayKH, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayModePropertiesKHR): VkResult {.stdcall.} + vkCreateDisplayModeKHR*: proc (physicalDevice: VkPhysicalDevic, display: VkDisplayKH, pCreateInfo: ptr VkDisplayModeCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pMode: ptr VkDisplayModeKHR): VkResult {.stdcall.} + vkGetDisplayPlaneCapabilitiesKHR*: proc (physicalDevice: VkPhysicalDevic, mode: VkDisplayModeKH, planeIndex: uint32_, pCapabilities: ptr VkDisplayPlaneCapabilitiesKHR): VkResult {.stdcall.} + vkCreateDisplayPlaneSurfaceKHR*: proc (instance: VkInstanc, pCreateInfo: ptr VkDisplaySurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkCreateSharedSwapchainsKHR*: proc (device: VkDevic, swapchainCount: uint32_, pCreateInfos: ptr VkSwapchainCreateInfoKHR, pCreateInfos: ptr VkSwapchainCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSwapchains: ptr VkSwapchainKHR): VkResult {.stdcall.} + vkDestroySurfaceKHR*: proc (instance: VkInstanc, surface: VkSurfaceKH, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetPhysicalDeviceSurfaceSupportKHR*: proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, surface: VkSurfaceKH, pSupported: ptr VkBool32): VkResult {.stdcall.} + vkGetPhysicalDeviceSurfaceCapabilitiesKHR*: proc (physicalDevice: VkPhysicalDevic, surface: VkSurfaceKH, pSurfaceCapabilities: ptr VkSurfaceCapabilitiesKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceSurfaceFormatsKHR*: proc (physicalDevice: VkPhysicalDevic, surface: VkSurfaceKH, pSurfaceFormatCount: ptr uint32, pSurfaceFormats: ptr VkSurfaceFormatKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceSurfacePresentModesKHR*: proc (physicalDevice: VkPhysicalDevic, surface: VkSurfaceKH, pPresentModeCount: ptr uint32, pPresentModes: ptr VkPresentModeKHR): VkResult {.stdcall.} + vkCreateSwapchainKHR*: proc (device: VkDevic, pCreateInfo: ptr VkSwapchainCreateInfoKHR, pCreateInfo: ptr VkSwapchainCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSwapchain: ptr VkSwapchainKHR): VkResult {.stdcall.} + vkDestroySwapchainKHR*: proc (device: VkDevic, swapchain: VkSwapchainKH, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetSwapchainImagesKHR*: proc (device: VkDevic, swapchain: VkSwapchainKH, pSwapchainImageCount: ptr uint32, pSwapchainImages: ptr VkImage): VkResult {.stdcall.} + vkAcquireNextImageKHR*: proc (device: VkDevic, swapchain: VkSwapchainKH, timeout: uint64_, semaphore: VkSemaphor, fence: VkFenc, pImageIndex: ptr uint32): VkResult {.stdcall.} + vkQueuePresentKHR*: proc (queue: VkQueu, pPresentInfo: ptr VkPresentInfoKHR): VkResult {.stdcall.} + vkCreateViSurfaceNN*: proc (instance: VkInstanc, pCreateInfo: ptr VkViSurfaceCreateInfoNN, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkCreateWaylandSurfaceKHR*: proc (instance: VkInstanc, pCreateInfo: ptr VkWaylandSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceWaylandPresentationSupportKHR*: proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, display: ptr wl_display): VkBool32 {.stdcall.} + vkCreateWin32SurfaceKHR*: proc (instance: VkInstanc, pCreateInfo: ptr VkWin32SurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceWin32PresentationSupportKHR*: proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_): VkBool32 {.stdcall.} + vkCreateXlibSurfaceKHR*: proc (instance: VkInstanc, pCreateInfo: ptr VkXlibSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceXlibPresentationSupportKHR*: proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, dpy: ptr Display, visualID: VisualI): VkBool32 {.stdcall.} + vkCreateXcbSurfaceKHR*: proc (instance: VkInstanc, pCreateInfo: ptr VkXcbSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceXcbPresentationSupportKHR*: proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, connection: ptr xcb_connection_t, visual_id: xcb_visualid_): VkBool32 {.stdcall.} + vkCreateDirectFBSurfaceEXT*: proc (instance: VkInstanc, pCreateInfo: ptr VkDirectFBSurfaceCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceDirectFBPresentationSupportEXT*: proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, dfb: ptr IDirectFB): VkBool32 {.stdcall.} + vkCreateImagePipeSurfaceFUCHSIA*: proc (instance: VkInstanc, pCreateInfo: ptr VkImagePipeSurfaceCreateInfoFUCHSIA, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkCreateStreamDescriptorSurfaceGGP*: proc (instance: VkInstanc, pCreateInfo: ptr VkStreamDescriptorSurfaceCreateInfoGGP, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkCreateScreenSurfaceQNX*: proc (instance: VkInstanc, pCreateInfo: ptr VkScreenSurfaceCreateInfoQNX, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceScreenPresentationSupportQNX*: proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, window: ptr screen_window): VkBool32 {.stdcall.} + vkCreateDebugReportCallbackEXT*: proc (instance: VkInstanc, pCreateInfo: ptr VkDebugReportCallbackCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pCallback: ptr VkDebugReportCallbackEXT): VkResult {.stdcall.} + vkDestroyDebugReportCallbackEXT*: proc (instance: VkInstanc, callback: VkDebugReportCallbackEX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDebugReportMessageEXT*: proc (instance: VkInstanc, flags: VkDebugReportFlagsEX, objectType: VkDebugReportObjectTypeEX, `object`: uint64_, location: size_, messageCode: int32_, pLayerPrefix: cstring, pMessage: cstring): void {.stdcall.} + vkDebugMarkerSetObjectNameEXT*: proc (device: VkDevic, pNameInfo: ptr VkDebugMarkerObjectNameInfoEXT): VkResult {.stdcall.} + vkDebugMarkerSetObjectTagEXT*: proc (device: VkDevic, pTagInfo: ptr VkDebugMarkerObjectTagInfoEXT): VkResult {.stdcall.} + vkCmdDebugMarkerBeginEXT*: proc (commandBuffer: VkCommandBuffe, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT): void {.stdcall.} + vkCmdDebugMarkerEndEXT*: proc (commandBuffer: VkCommandBuffe): void {.stdcall.} + vkCmdDebugMarkerInsertEXT*: proc (commandBuffer: VkCommandBuffe, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT): void {.stdcall.} + vkGetPhysicalDeviceExternalImageFormatPropertiesNV*: proc (physicalDevice: VkPhysicalDevic, format: VkForma, `type`: VkImageTyp, tiling: VkImageTilin, usage: VkImageUsageFlag, flags: VkImageCreateFlag, externalHandleType: VkExternalMemoryHandleTypeFlagsN, pExternalImageFormatProperties: ptr VkExternalImageFormatPropertiesNV): VkResult {.stdcall.} + vkGetMemoryWin32HandleNV*: proc (device: VkDevic, memory: VkDeviceMemor, handleType: VkExternalMemoryHandleTypeFlagsN, pHandle: ptr HANDLE): VkResult {.stdcall.} + vkCmdExecuteGeneratedCommandsNV*: proc (commandBuffer: VkCommandBuffe, isPreprocessed: VkBool3, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV): void {.stdcall.} + vkCmdPreprocessGeneratedCommandsNV*: proc (commandBuffer: VkCommandBuffe, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV): void {.stdcall.} + vkCmdBindPipelineShaderGroupNV*: proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, pipeline: VkPipelin, groupIndex: uint32_): void {.stdcall.} + vkGetGeneratedCommandsMemoryRequirementsNV*: proc (device: VkDevic, pInfo: ptr VkGeneratedCommandsMemoryRequirementsInfoNV, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.} + vkCreateIndirectCommandsLayoutNV*: proc (device: VkDevic, pCreateInfo: ptr VkIndirectCommandsLayoutCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pIndirectCommandsLayout: ptr VkIndirectCommandsLayoutNV): VkResult {.stdcall.} + vkDestroyIndirectCommandsLayoutNV*: proc (device: VkDevic, indirectCommandsLayout: VkIndirectCommandsLayoutN, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetPhysicalDeviceFeatures2*: proc (physicalDevice: VkPhysicalDevic, pFeatures: ptr VkPhysicalDeviceFeatures2): void {.stdcall.} + vkGetPhysicalDeviceProperties2*: proc (physicalDevice: VkPhysicalDevic, pProperties: ptr VkPhysicalDeviceProperties2): void {.stdcall.} + vkGetPhysicalDeviceFormatProperties2*: proc (physicalDevice: VkPhysicalDevic, format: VkForma, pFormatProperties: ptr VkFormatProperties2): void {.stdcall.} + vkGetPhysicalDeviceImageFormatProperties2*: proc (physicalDevice: VkPhysicalDevic, pImageFormatInfo: ptr VkPhysicalDeviceImageFormatInfo2, pImageFormatProperties: ptr VkImageFormatProperties2): VkResult {.stdcall.} + vkGetPhysicalDeviceQueueFamilyProperties2*: proc (physicalDevice: VkPhysicalDevic, pQueueFamilyPropertyCount: ptr uint32, pQueueFamilyProperties: ptr VkQueueFamilyProperties2): void {.stdcall.} + vkGetPhysicalDeviceMemoryProperties2*: proc (physicalDevice: VkPhysicalDevic, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties2): void {.stdcall.} + vkGetPhysicalDeviceSparseImageFormatProperties2*: proc (physicalDevice: VkPhysicalDevic, pFormatInfo: ptr VkPhysicalDeviceSparseImageFormatInfo2, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties2): void {.stdcall.} + vkCmdPushDescriptorSetKHR*: proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, layout: VkPipelineLayou, set: uint32_, descriptorWriteCount: uint32_, pDescriptorWrites: ptr VkWriteDescriptorSet): void {.stdcall.} + vkTrimCommandPool*: proc (device: VkDevic, commandPool: VkCommandPoo, flags: VkCommandPoolTrimFlag): void {.stdcall.} + vkGetPhysicalDeviceExternalBufferProperties*: proc (physicalDevice: VkPhysicalDevic, pExternalBufferInfo: ptr VkPhysicalDeviceExternalBufferInfo, pExternalBufferProperties: ptr VkExternalBufferProperties): void {.stdcall.} + vkGetMemoryWin32HandleKHR*: proc (device: VkDevic, pGetWin32HandleInfo: ptr VkMemoryGetWin32HandleInfoKHR, pHandle: ptr HANDLE): VkResult {.stdcall.} + vkGetMemoryWin32HandlePropertiesKHR*: proc (device: VkDevic, handleType: VkExternalMemoryHandleTypeFlagBit, handle: HANDL, pMemoryWin32HandleProperties: ptr VkMemoryWin32HandlePropertiesKHR): VkResult {.stdcall.} + vkGetMemoryFdKHR*: proc (device: VkDevic, pGetFdInfo: ptr VkMemoryGetFdInfoKHR, pFd: ptr int): VkResult {.stdcall.} + vkGetMemoryFdPropertiesKHR*: proc (device: VkDevic, handleType: VkExternalMemoryHandleTypeFlagBit, fd: in, pMemoryFdProperties: ptr VkMemoryFdPropertiesKHR): VkResult {.stdcall.} + vkGetMemoryZirconHandleFUCHSIA*: proc (device: VkDevic, pGetZirconHandleInfo: ptr VkMemoryGetZirconHandleInfoFUCHSIA, pZirconHandle: ptr zx_handle_t): VkResult {.stdcall.} + vkGetMemoryZirconHandlePropertiesFUCHSIA*: proc (device: VkDevic, handleType: VkExternalMemoryHandleTypeFlagBit, zirconHandle: zx_handle_, pMemoryZirconHandleProperties: ptr VkMemoryZirconHandlePropertiesFUCHSIA): VkResult {.stdcall.} + vkGetMemoryRemoteAddressNV*: proc (device: VkDevic, pMemoryGetRemoteAddressInfo: ptr VkMemoryGetRemoteAddressInfoNV, pAddress: ptr VkRemoteAddressNV): VkResult {.stdcall.} + vkGetMemorySciBufNV*: proc (device: VkDevic, pGetSciBufInfo: ptr VkMemoryGetSciBufInfoNV, pHandle: ptr NvSciBufObj): VkResult {.stdcall.} + vkGetPhysicalDeviceExternalMemorySciBufPropertiesNV*: proc (physicalDevice: VkPhysicalDevic, handleType: VkExternalMemoryHandleTypeFlagBit, handle: NvSciBufOb, pMemorySciBufProperties: ptr VkMemorySciBufPropertiesNV): VkResult {.stdcall.} + vkGetPhysicalDeviceSciBufAttributesNV*: proc (physicalDevice: VkPhysicalDevic, pAttributes: NvSciBufAttrLis): VkResult {.stdcall.} + vkGetPhysicalDeviceExternalSemaphoreProperties*: proc (physicalDevice: VkPhysicalDevic, pExternalSemaphoreInfo: ptr VkPhysicalDeviceExternalSemaphoreInfo, pExternalSemaphoreProperties: ptr VkExternalSemaphoreProperties): void {.stdcall.} + vkGetSemaphoreWin32HandleKHR*: proc (device: VkDevic, pGetWin32HandleInfo: ptr VkSemaphoreGetWin32HandleInfoKHR, pHandle: ptr HANDLE): VkResult {.stdcall.} + vkImportSemaphoreWin32HandleKHR*: proc (device: VkDevic, pImportSemaphoreWin32HandleInfo: ptr VkImportSemaphoreWin32HandleInfoKHR): VkResult {.stdcall.} + vkGetSemaphoreFdKHR*: proc (device: VkDevic, pGetFdInfo: ptr VkSemaphoreGetFdInfoKHR, pFd: ptr int): VkResult {.stdcall.} + vkImportSemaphoreFdKHR*: proc (device: VkDevic, pImportSemaphoreFdInfo: ptr VkImportSemaphoreFdInfoKHR): VkResult {.stdcall.} + vkGetSemaphoreZirconHandleFUCHSIA*: proc (device: VkDevic, pGetZirconHandleInfo: ptr VkSemaphoreGetZirconHandleInfoFUCHSIA, pZirconHandle: ptr zx_handle_t): VkResult {.stdcall.} + vkImportSemaphoreZirconHandleFUCHSIA*: proc (device: VkDevic, pImportSemaphoreZirconHandleInfo: ptr VkImportSemaphoreZirconHandleInfoFUCHSIA): VkResult {.stdcall.} + vkGetPhysicalDeviceExternalFenceProperties*: proc (physicalDevice: VkPhysicalDevic, pExternalFenceInfo: ptr VkPhysicalDeviceExternalFenceInfo, pExternalFenceProperties: ptr VkExternalFenceProperties): void {.stdcall.} + vkGetFenceWin32HandleKHR*: proc (device: VkDevic, pGetWin32HandleInfo: ptr VkFenceGetWin32HandleInfoKHR, pHandle: ptr HANDLE): VkResult {.stdcall.} + vkImportFenceWin32HandleKHR*: proc (device: VkDevic, pImportFenceWin32HandleInfo: ptr VkImportFenceWin32HandleInfoKHR): VkResult {.stdcall.} + vkGetFenceFdKHR*: proc (device: VkDevic, pGetFdInfo: ptr VkFenceGetFdInfoKHR, pFd: ptr int): VkResult {.stdcall.} + vkImportFenceFdKHR*: proc (device: VkDevic, pImportFenceFdInfo: ptr VkImportFenceFdInfoKHR): VkResult {.stdcall.} + vkGetFenceSciSyncFenceNV*: proc (device: VkDevic, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV, pHandle: pointer): VkResult {.stdcall.} + vkGetFenceSciSyncObjNV*: proc (device: VkDevic, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV, pHandle: pointer): VkResult {.stdcall.} + vkImportFenceSciSyncFenceNV*: proc (device: VkDevic, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV): VkResult {.stdcall.} + vkImportFenceSciSyncObjNV*: proc (device: VkDevic, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV): VkResult {.stdcall.} + vkGetSemaphoreSciSyncObjNV*: proc (device: VkDevic, pGetSciSyncInfo: ptr VkSemaphoreGetSciSyncInfoNV, pHandle: pointer): VkResult {.stdcall.} + vkImportSemaphoreSciSyncObjNV*: proc (device: VkDevic, pImportSemaphoreSciSyncInfo: ptr VkImportSemaphoreSciSyncInfoNV): VkResult {.stdcall.} + vkGetPhysicalDeviceSciSyncAttributesNV*: proc (physicalDevice: VkPhysicalDevic, pSciSyncAttributesInfo: ptr VkSciSyncAttributesInfoNV, pAttributes: NvSciSyncAttrLis): VkResult {.stdcall.} + vkCreateSemaphoreSciSyncPoolNV*: proc (device: VkDevic, pCreateInfo: ptr VkSemaphoreSciSyncPoolCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pSemaphorePool: ptr VkSemaphoreSciSyncPoolNV): VkResult {.stdcall.} + vkDestroySemaphoreSciSyncPoolNV*: proc (device: VkDevic, semaphorePool: VkSemaphoreSciSyncPoolN, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkReleaseDisplayEXT*: proc (physicalDevice: VkPhysicalDevic, display: VkDisplayKH): VkResult {.stdcall.} + vkAcquireXlibDisplayEXT*: proc (physicalDevice: VkPhysicalDevic, dpy: ptr Display, display: VkDisplayKH): VkResult {.stdcall.} + vkGetRandROutputDisplayEXT*: proc (physicalDevice: VkPhysicalDevic, dpy: ptr Display, rrOutput: RROutpu, pDisplay: ptr VkDisplayKHR): VkResult {.stdcall.} + vkAcquireWinrtDisplayNV*: proc (physicalDevice: VkPhysicalDevic, display: VkDisplayKH): VkResult {.stdcall.} + vkGetWinrtDisplayNV*: proc (physicalDevice: VkPhysicalDevic, deviceRelativeId: uint32_, pDisplay: ptr VkDisplayKHR): VkResult {.stdcall.} + vkDisplayPowerControlEXT*: proc (device: VkDevic, display: VkDisplayKH, pDisplayPowerInfo: ptr VkDisplayPowerInfoEXT): VkResult {.stdcall.} + vkRegisterDeviceEventEXT*: proc (device: VkDevic, pDeviceEventInfo: ptr VkDeviceEventInfoEXT, pAllocator: ptr VkAllocationCallbacks, pFence: ptr VkFence): VkResult {.stdcall.} + vkRegisterDisplayEventEXT*: proc (device: VkDevic, display: VkDisplayKH, pDisplayEventInfo: ptr VkDisplayEventInfoEXT, pAllocator: ptr VkAllocationCallbacks, pFence: ptr VkFence): VkResult {.stdcall.} + vkGetSwapchainCounterEXT*: proc (device: VkDevic, swapchain: VkSwapchainKH, counter: VkSurfaceCounterFlagBitsEX, pCounterValue: ptr uint64): VkResult {.stdcall.} + vkGetPhysicalDeviceSurfaceCapabilities2EXT*: proc (physicalDevice: VkPhysicalDevic, surface: VkSurfaceKH, pSurfaceCapabilities: ptr VkSurfaceCapabilities2EXT): VkResult {.stdcall.} + vkEnumeratePhysicalDeviceGroups*: proc (instance: VkInstanc, pPhysicalDeviceGroupCount: ptr uint32, pPhysicalDeviceGroupProperties: ptr VkPhysicalDeviceGroupProperties): VkResult {.stdcall.} + vkGetDeviceGroupPeerMemoryFeatures*: proc (device: VkDevic, heapIndex: uint32_, localDeviceIndex: uint32_, remoteDeviceIndex: uint32_, pPeerMemoryFeatures: ptr VkPeerMemoryFeatureFlags): void {.stdcall.} + vkBindBufferMemory2*: proc (device: VkDevic, bindInfoCount: uint32_, pBindInfos: ptr VkBindBufferMemoryInfo): VkResult {.stdcall.} + vkBindImageMemory2*: proc (device: VkDevic, bindInfoCount: uint32_, pBindInfos: ptr VkBindImageMemoryInfo): VkResult {.stdcall.} + vkCmdSetDeviceMask*: proc (commandBuffer: VkCommandBuffe, deviceMask: uint32_): void {.stdcall.} + vkGetDeviceGroupPresentCapabilitiesKHR*: proc (device: VkDevic, pDeviceGroupPresentCapabilities: ptr VkDeviceGroupPresentCapabilitiesKHR): VkResult {.stdcall.} + vkGetDeviceGroupSurfacePresentModesKHR*: proc (device: VkDevic, surface: VkSurfaceKH, pModes: ptr VkDeviceGroupPresentModeFlagsKHR): VkResult {.stdcall.} + vkAcquireNextImage2KHR*: proc (device: VkDevic, pAcquireInfo: ptr VkAcquireNextImageInfoKHR, pImageIndex: ptr uint32): VkResult {.stdcall.} + vkCmdDispatchBase*: proc (commandBuffer: VkCommandBuffe, baseGroupX: uint32_, baseGroupY: uint32_, baseGroupZ: uint32_, groupCountX: uint32_, groupCountY: uint32_, groupCountZ: uint32_): void {.stdcall.} + vkGetPhysicalDevicePresentRectanglesKHR*: proc (physicalDevice: VkPhysicalDevic, surface: VkSurfaceKH, pRectCount: ptr uint32, pRects: ptr VkRect2D): VkResult {.stdcall.} + vkCreateDescriptorUpdateTemplate*: proc (device: VkDevic, pCreateInfo: ptr VkDescriptorUpdateTemplateCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDescriptorUpdateTemplate: ptr VkDescriptorUpdateTemplate): VkResult {.stdcall.} + vkDestroyDescriptorUpdateTemplate*: proc (device: VkDevic, descriptorUpdateTemplate: VkDescriptorUpdateTemplat, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkUpdateDescriptorSetWithTemplate*: proc (device: VkDevic, descriptorSet: VkDescriptorSe, descriptorUpdateTemplate: VkDescriptorUpdateTemplat, pData: pointer): void {.stdcall.} + vkCmdPushDescriptorSetWithTemplateKHR*: proc (commandBuffer: VkCommandBuffe, descriptorUpdateTemplate: VkDescriptorUpdateTemplat, layout: VkPipelineLayou, set: uint32_, pData: pointer): void {.stdcall.} + vkSetHdrMetadataEXT*: proc (device: VkDevic, swapchainCount: uint32_, pSwapchains: ptr VkSwapchainKHR, pMetadata: ptr VkHdrMetadataEXT): void {.stdcall.} + vkGetSwapchainStatusKHR*: proc (device: VkDevic, swapchain: VkSwapchainKH): VkResult {.stdcall.} + vkGetRefreshCycleDurationGOOGLE*: proc (device: VkDevic, swapchain: VkSwapchainKH, pDisplayTimingProperties: ptr VkRefreshCycleDurationGOOGLE): VkResult {.stdcall.} + vkGetPastPresentationTimingGOOGLE*: proc (device: VkDevic, swapchain: VkSwapchainKH, pPresentationTimingCount: ptr uint32, pPresentationTimings: ptr VkPastPresentationTimingGOOGLE): VkResult {.stdcall.} + vkCreateIOSSurfaceMVK*: proc (instance: VkInstanc, pCreateInfo: ptr VkIOSSurfaceCreateInfoMVK, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkCreateMacOSSurfaceMVK*: proc (instance: VkInstanc, pCreateInfo: ptr VkMacOSSurfaceCreateInfoMVK, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkCreateMetalSurfaceEXT*: proc (instance: VkInstanc, pCreateInfo: ptr VkMetalSurfaceCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkCmdSetViewportWScalingNV*: proc (commandBuffer: VkCommandBuffe, firstViewport: uint32_, viewportCount: uint32_, pViewportWScalings: ptr VkViewportWScalingNV): void {.stdcall.} + vkCmdSetDiscardRectangleEXT*: proc (commandBuffer: VkCommandBuffe, firstDiscardRectangle: uint32_, discardRectangleCount: uint32_, pDiscardRectangles: ptr VkRect2D): void {.stdcall.} + vkCmdSetDiscardRectangleEnableEXT*: proc (commandBuffer: VkCommandBuffe, discardRectangleEnable: VkBool3): void {.stdcall.} + vkCmdSetDiscardRectangleModeEXT*: proc (commandBuffer: VkCommandBuffe, discardRectangleMode: VkDiscardRectangleModeEX): void {.stdcall.} + vkCmdSetSampleLocationsEXT*: proc (commandBuffer: VkCommandBuffe, pSampleLocationsInfo: ptr VkSampleLocationsInfoEXT): void {.stdcall.} + vkGetPhysicalDeviceMultisamplePropertiesEXT*: proc (physicalDevice: VkPhysicalDevic, samples: VkSampleCountFlagBit, pMultisampleProperties: ptr VkMultisamplePropertiesEXT): void {.stdcall.} + vkGetPhysicalDeviceSurfaceCapabilities2KHR*: proc (physicalDevice: VkPhysicalDevic, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pSurfaceCapabilities: ptr VkSurfaceCapabilities2KHR): VkResult {.stdcall.} + vkGetPhysicalDeviceSurfaceFormats2KHR*: proc (physicalDevice: VkPhysicalDevic, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pSurfaceFormatCount: ptr uint32, pSurfaceFormats: ptr VkSurfaceFormat2KHR): VkResult {.stdcall.} + vkGetPhysicalDeviceDisplayProperties2KHR*: proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayProperties2KHR): VkResult {.stdcall.} + vkGetPhysicalDeviceDisplayPlaneProperties2KHR*: proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayPlaneProperties2KHR): VkResult {.stdcall.} + vkGetDisplayModeProperties2KHR*: proc (physicalDevice: VkPhysicalDevic, display: VkDisplayKH, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayModeProperties2KHR): VkResult {.stdcall.} + vkGetDisplayPlaneCapabilities2KHR*: proc (physicalDevice: VkPhysicalDevic, pDisplayPlaneInfo: ptr VkDisplayPlaneInfo2KHR, pCapabilities: ptr VkDisplayPlaneCapabilities2KHR): VkResult {.stdcall.} + vkGetBufferMemoryRequirements2*: proc (device: VkDevic, pInfo: ptr VkBufferMemoryRequirementsInfo2, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.} + vkGetImageMemoryRequirements2*: proc (device: VkDevic, pInfo: ptr VkImageMemoryRequirementsInfo2, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.} + vkGetImageSparseMemoryRequirements2*: proc (device: VkDevic, pInfo: ptr VkImageSparseMemoryRequirementsInfo2, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2): void {.stdcall.} + vkGetDeviceBufferMemoryRequirements*: proc (device: VkDevic, pInfo: ptr VkDeviceBufferMemoryRequirements, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.} + vkGetDeviceImageMemoryRequirements*: proc (device: VkDevic, pInfo: ptr VkDeviceImageMemoryRequirements, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.} + vkGetDeviceImageSparseMemoryRequirements*: proc (device: VkDevic, pInfo: ptr VkDeviceImageMemoryRequirements, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2): void {.stdcall.} + vkCreateSamplerYcbcrConversion*: proc (device: VkDevic, pCreateInfo: ptr VkSamplerYcbcrConversionCreateInfo, pAllocator: ptr VkAllocationCallbacks, pYcbcrConversion: ptr VkSamplerYcbcrConversion): VkResult {.stdcall.} + vkDestroySamplerYcbcrConversion*: proc (device: VkDevic, ycbcrConversion: VkSamplerYcbcrConversio, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetDeviceQueue2*: proc (device: VkDevic, pQueueInfo: ptr VkDeviceQueueInfo2, pQueue: ptr VkQueue): void {.stdcall.} + vkCreateValidationCacheEXT*: proc (device: VkDevic, pCreateInfo: ptr VkValidationCacheCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pValidationCache: ptr VkValidationCacheEXT): VkResult {.stdcall.} + vkDestroyValidationCacheEXT*: proc (device: VkDevic, validationCache: VkValidationCacheEX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetValidationCacheDataEXT*: proc (device: VkDevic, validationCache: VkValidationCacheEX, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.} + vkMergeValidationCachesEXT*: proc (device: VkDevic, dstCache: VkValidationCacheEX, srcCacheCount: uint32_, pSrcCaches: ptr VkValidationCacheEXT): VkResult {.stdcall.} + vkGetDescriptorSetLayoutSupport*: proc (device: VkDevic, pCreateInfo: ptr VkDescriptorSetLayoutCreateInfo, pSupport: ptr VkDescriptorSetLayoutSupport): void {.stdcall.} + vkGetSwapchainGrallocUsageANDROID*: proc (device: VkDevic, format: VkForma, imageUsage: VkImageUsageFlag, grallocUsage: ptr int): VkResult {.stdcall.} + vkGetSwapchainGrallocUsage2ANDROID*: proc (device: VkDevic, format: VkForma, imageUsage: VkImageUsageFlag, swapchainImageUsage: VkSwapchainImageUsageFlagsANDROI, grallocConsumerUsage: ptr uint64, grallocProducerUsage: ptr uint64): VkResult {.stdcall.} + vkAcquireImageANDROID*: proc (device: VkDevic, image: VkImag, nativeFenceFd: in, semaphore: VkSemaphor, fence: VkFenc): VkResult {.stdcall.} + vkQueueSignalReleaseImageANDROID*: proc (queue: VkQueu, waitSemaphoreCount: uint32_, pWaitSemaphores: ptr VkSemaphore, image: VkImag, pNativeFenceFd: ptr int): VkResult {.stdcall.} + vkGetShaderInfoAMD*: proc (device: VkDevic, pipeline: VkPipelin, shaderStage: VkShaderStageFlagBit, infoType: VkShaderInfoTypeAM, pInfoSize: ptr uint, pInfo: pointer): VkResult {.stdcall.} + vkSetLocalDimmingAMD*: proc (device: VkDevic, swapChain: VkSwapchainKH, localDimmingEnable: VkBool3): void {.stdcall.} + vkGetPhysicalDeviceCalibrateableTimeDomainsKHR*: proc (physicalDevice: VkPhysicalDevic, pTimeDomainCount: ptr uint32, pTimeDomains: ptr VkTimeDomainKHR): VkResult {.stdcall.} + vkGetCalibratedTimestampsKHR*: proc (device: VkDevic, timestampCount: uint32_, pTimestampInfos: ptr VkCalibratedTimestampInfoKHR, pTimestamps: ptr uint64, pMaxDeviation: ptr uint64): VkResult {.stdcall.} + vkSetDebugUtilsObjectNameEXT*: proc (device: VkDevic, pNameInfo: ptr VkDebugUtilsObjectNameInfoEXT): VkResult {.stdcall.} + vkSetDebugUtilsObjectTagEXT*: proc (device: VkDevic, pTagInfo: ptr VkDebugUtilsObjectTagInfoEXT): VkResult {.stdcall.} + vkQueueBeginDebugUtilsLabelEXT*: proc (queue: VkQueu, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.} + vkQueueEndDebugUtilsLabelEXT*: proc (queue: VkQueu): void {.stdcall.} + vkQueueInsertDebugUtilsLabelEXT*: proc (queue: VkQueu, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.} + vkCmdBeginDebugUtilsLabelEXT*: proc (commandBuffer: VkCommandBuffe, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.} + vkCmdEndDebugUtilsLabelEXT*: proc (commandBuffer: VkCommandBuffe): void {.stdcall.} + vkCmdInsertDebugUtilsLabelEXT*: proc (commandBuffer: VkCommandBuffe, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.} + vkCreateDebugUtilsMessengerEXT*: proc (instance: VkInstanc, pCreateInfo: ptr VkDebugUtilsMessengerCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pMessenger: ptr VkDebugUtilsMessengerEXT): VkResult {.stdcall.} + vkDestroyDebugUtilsMessengerEXT*: proc (instance: VkInstanc, messenger: VkDebugUtilsMessengerEX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkSubmitDebugUtilsMessageEXT*: proc (instance: VkInstanc, messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEX, messageTypes: VkDebugUtilsMessageTypeFlagsEX, pCallbackData: ptr VkDebugUtilsMessengerCallbackDataEXT): void {.stdcall.} + vkGetMemoryHostPointerPropertiesEXT*: proc (device: VkDevic, handleType: VkExternalMemoryHandleTypeFlagBit, pHostPointer: pointer, pMemoryHostPointerProperties: ptr VkMemoryHostPointerPropertiesEXT): VkResult {.stdcall.} + vkCmdWriteBufferMarkerAMD*: proc (commandBuffer: VkCommandBuffe, pipelineStage: VkPipelineStageFlagBit, dstBuffer: VkBuffe, dstOffset: VkDeviceSiz, marker: uint32_): void {.stdcall.} + vkCreateRenderPass2*: proc (device: VkDevic, pCreateInfo: ptr VkRenderPassCreateInfo2, pAllocator: ptr VkAllocationCallbacks, pRenderPass: ptr VkRenderPass): VkResult {.stdcall.} + vkCmdBeginRenderPass2*: proc (commandBuffer: VkCommandBuffe, pRenderPassBegin: ptr VkRenderPassBeginInfo , pSubpassBeginInfo: ptr VkSubpassBeginInfo ): void {.stdcall.} + vkCmdNextSubpass2*: proc (commandBuffer: VkCommandBuffe, pSubpassBeginInfo: ptr VkSubpassBeginInfo , pSubpassEndInfo: ptr VkSubpassEndInfo ): void {.stdcall.} + vkCmdEndRenderPass2*: proc (commandBuffer: VkCommandBuffe, pSubpassEndInfo: ptr VkSubpassEndInfo ): void {.stdcall.} + vkGetSemaphoreCounterValue*: proc (device: VkDevic, semaphore: VkSemaphor, pValue: ptr uint64): VkResult {.stdcall.} + vkWaitSemaphores*: proc (device: VkDevic, pWaitInfo: ptr VkSemaphoreWaitInfo, timeout: uint64_): VkResult {.stdcall.} + vkSignalSemaphore*: proc (device: VkDevic, pSignalInfo: ptr VkSemaphoreSignalInfo): VkResult {.stdcall.} + vkGetAndroidHardwareBufferPropertiesANDROID*: proc (device: VkDevic, buffer: ptr AHardwareBuffer, pProperties: ptr VkAndroidHardwareBufferPropertiesANDROID): VkResult {.stdcall.} + vkGetMemoryAndroidHardwareBufferANDROID*: proc (device: VkDevic, pInfo: ptr VkMemoryGetAndroidHardwareBufferInfoANDROID, pBuffer: ptr ptr AHardwareBuffer): VkResult {.stdcall.} + vkCmdDrawIndirectCount*: proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, countBuffer: VkBuffe, countBufferOffset: VkDeviceSiz, maxDrawCount: uint32_, stride: uint32_): void {.stdcall.} + vkCmdDrawIndexedIndirectCount*: proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, countBuffer: VkBuffe, countBufferOffset: VkDeviceSiz, maxDrawCount: uint32_, stride: uint32_): void {.stdcall.} + vkCmdSetCheckpointNV*: proc (commandBuffer: VkCommandBuffe, pCheckpointMarker: pointer): void {.stdcall.} + vkGetQueueCheckpointDataNV*: proc (queue: VkQueu, pCheckpointDataCount: ptr uint32, pCheckpointData: ptr VkCheckpointDataNV): void {.stdcall.} + vkCmdBindTransformFeedbackBuffersEXT*: proc (commandBuffer: VkCommandBuffe, firstBinding: uint32_, bindingCount: uint32_, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize, pSizes: ptr VkDeviceSize): void {.stdcall.} + vkCmdBeginTransformFeedbackEXT*: proc (commandBuffer: VkCommandBuffe, firstCounterBuffer: uint32_, counterBufferCount: uint32_, pCounterBuffers: ptr VkBuffer, pCounterBufferOffsets: ptr VkDeviceSize): void {.stdcall.} + vkCmdEndTransformFeedbackEXT*: proc (commandBuffer: VkCommandBuffe, firstCounterBuffer: uint32_, counterBufferCount: uint32_, pCounterBuffers: ptr VkBuffer, pCounterBufferOffsets: ptr VkDeviceSize): void {.stdcall.} + vkCmdBeginQueryIndexedEXT*: proc (commandBuffer: VkCommandBuffe, queryPool: VkQueryPoo, query: uint32_, flags: VkQueryControlFlag, index: uint32_): void {.stdcall.} + vkCmdEndQueryIndexedEXT*: proc (commandBuffer: VkCommandBuffe, queryPool: VkQueryPoo, query: uint32_, index: uint32_): void {.stdcall.} + vkCmdDrawIndirectByteCountEXT*: proc (commandBuffer: VkCommandBuffe, instanceCount: uint32_, firstInstance: uint32_, counterBuffer: VkBuffe, counterBufferOffset: VkDeviceSiz, counterOffset: uint32_, vertexStride: uint32_): void {.stdcall.} + vkCmdSetExclusiveScissorNV*: proc (commandBuffer: VkCommandBuffe, firstExclusiveScissor: uint32_, exclusiveScissorCount: uint32_, pExclusiveScissors: ptr VkRect2D): void {.stdcall.} + vkCmdSetExclusiveScissorEnableNV*: proc (commandBuffer: VkCommandBuffe, firstExclusiveScissor: uint32_, exclusiveScissorCount: uint32_, pExclusiveScissorEnables: ptr VkBool32): void {.stdcall.} + vkCmdBindShadingRateImageNV*: proc (commandBuffer: VkCommandBuffe, imageView: VkImageVie, imageLayout: VkImageLayou): void {.stdcall.} + vkCmdSetViewportShadingRatePaletteNV*: proc (commandBuffer: VkCommandBuffe, firstViewport: uint32_, viewportCount: uint32_, pShadingRatePalettes: ptr VkShadingRatePaletteNV): void {.stdcall.} + vkCmdSetCoarseSampleOrderNV*: proc (commandBuffer: VkCommandBuffe, sampleOrderType: VkCoarseSampleOrderTypeN, customSampleOrderCount: uint32_, pCustomSampleOrders: ptr VkCoarseSampleOrderCustomNV): void {.stdcall.} + vkCmdDrawMeshTasksNV*: proc (commandBuffer: VkCommandBuffe, taskCount: uint32_, firstTask: uint32_): void {.stdcall.} + vkCmdDrawMeshTasksIndirectNV*: proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, drawCount: uint32_, stride: uint32_): void {.stdcall.} + vkCmdDrawMeshTasksIndirectCountNV*: proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, countBuffer: VkBuffe, countBufferOffset: VkDeviceSiz, maxDrawCount: uint32_, stride: uint32_): void {.stdcall.} + vkCmdDrawMeshTasksEXT*: proc (commandBuffer: VkCommandBuffe, groupCountX: uint32_, groupCountY: uint32_, groupCountZ: uint32_): void {.stdcall.} + vkCmdDrawMeshTasksIndirectEXT*: proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, drawCount: uint32_, stride: uint32_): void {.stdcall.} + vkCmdDrawMeshTasksIndirectCountEXT*: proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, countBuffer: VkBuffe, countBufferOffset: VkDeviceSiz, maxDrawCount: uint32_, stride: uint32_): void {.stdcall.} + vkCompileDeferredNV*: proc (device: VkDevic, pipeline: VkPipelin, shader: uint32_): VkResult {.stdcall.} + vkCreateAccelerationStructureNV*: proc (device: VkDevic, pCreateInfo: ptr VkAccelerationStructureCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pAccelerationStructure: ptr VkAccelerationStructureNV): VkResult {.stdcall.} + vkCmdBindInvocationMaskHUAWEI*: proc (commandBuffer: VkCommandBuffe, imageView: VkImageVie, imageLayout: VkImageLayou): void {.stdcall.} + vkDestroyAccelerationStructureKHR*: proc (device: VkDevic, accelerationStructure: VkAccelerationStructureKH, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyAccelerationStructureNV*: proc (device: VkDevic, accelerationStructure: VkAccelerationStructureN, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetAccelerationStructureMemoryRequirementsNV*: proc (device: VkDevic, pInfo: ptr VkAccelerationStructureMemoryRequirementsInfoNV, pMemoryRequirements: ptr VkMemoryRequirements2KHR): void {.stdcall.} + vkBindAccelerationStructureMemoryNV*: proc (device: VkDevic, bindInfoCount: uint32_, pBindInfos: ptr VkBindAccelerationStructureMemoryInfoNV): VkResult {.stdcall.} + vkCmdCopyAccelerationStructureNV*: proc (commandBuffer: VkCommandBuffe, dst: VkAccelerationStructureN, src: VkAccelerationStructureN, mode: VkCopyAccelerationStructureModeKH): void {.stdcall.} + vkCmdCopyAccelerationStructureKHR*: proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkCopyAccelerationStructureInfoKHR): void {.stdcall.} + vkCopyAccelerationStructureKHR*: proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pInfo: ptr VkCopyAccelerationStructureInfoKHR): VkResult {.stdcall.} + vkCmdCopyAccelerationStructureToMemoryKHR*: proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR): void {.stdcall.} + vkCopyAccelerationStructureToMemoryKHR*: proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR): VkResult {.stdcall.} + vkCmdCopyMemoryToAccelerationStructureKHR*: proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR): void {.stdcall.} + vkCopyMemoryToAccelerationStructureKHR*: proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR): VkResult {.stdcall.} + vkCmdWriteAccelerationStructuresPropertiesKHR*: proc (commandBuffer: VkCommandBuffe, accelerationStructureCount: uint32_, pAccelerationStructures: ptr VkAccelerationStructureKHR, queryType: VkQueryTyp, queryPool: VkQueryPoo, firstQuery: uint32_): void {.stdcall.} + vkCmdWriteAccelerationStructuresPropertiesNV*: proc (commandBuffer: VkCommandBuffe, accelerationStructureCount: uint32_, pAccelerationStructures: ptr VkAccelerationStructureNV, queryType: VkQueryTyp, queryPool: VkQueryPoo, firstQuery: uint32_): void {.stdcall.} + vkCmdBuildAccelerationStructureNV*: proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkAccelerationStructureInfoNV, instanceData: VkBuffe, instanceOffset: VkDeviceSiz, update: VkBool3, dst: VkAccelerationStructureN, src: VkAccelerationStructureN, scratch: VkBuffe, scratchOffset: VkDeviceSiz): void {.stdcall.} + vkWriteAccelerationStructuresPropertiesKHR*: proc (device: VkDevic, accelerationStructureCount: uint32_, pAccelerationStructures: ptr VkAccelerationStructureKHR, queryType: VkQueryTyp, dataSize: size_, pData: pointer, stride: size_): VkResult {.stdcall.} + vkCmdTraceRaysKHR*: proc (commandBuffer: VkCommandBuffe, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, width: uint32_, height: uint32_, depth: uint32_): void {.stdcall.} + vkCmdTraceRaysNV*: proc (commandBuffer: VkCommandBuffe, raygenShaderBindingTableBuffer: VkBuffe, raygenShaderBindingOffset: VkDeviceSiz, missShaderBindingTableBuffer: VkBuffe, missShaderBindingOffset: VkDeviceSiz, missShaderBindingStride: VkDeviceSiz, hitShaderBindingTableBuffer: VkBuffe, hitShaderBindingOffset: VkDeviceSiz, hitShaderBindingStride: VkDeviceSiz, callableShaderBindingTableBuffer: VkBuffe, callableShaderBindingOffset: VkDeviceSiz, callableShaderBindingStride: VkDeviceSiz, width: uint32_, height: uint32_, depth: uint32_): void {.stdcall.} + vkGetRayTracingShaderGroupHandlesKHR*: proc (device: VkDevic, pipeline: VkPipelin, firstGroup: uint32_, groupCount: uint32_, dataSize: size_, pData: pointer): VkResult {.stdcall.} + vkGetRayTracingCaptureReplayShaderGroupHandlesKHR*: proc (device: VkDevic, pipeline: VkPipelin, firstGroup: uint32_, groupCount: uint32_, dataSize: size_, pData: pointer): VkResult {.stdcall.} + vkGetAccelerationStructureHandleNV*: proc (device: VkDevic, accelerationStructure: VkAccelerationStructureN, dataSize: size_, pData: pointer): VkResult {.stdcall.} + vkCreateRayTracingPipelinesNV*: proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} + vkCreateRayTracingPipelinesNV*: proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} + vkCreateRayTracingPipelinesKHR*: proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} + vkCreateRayTracingPipelinesKHR*: proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} + vkGetPhysicalDeviceCooperativeMatrixPropertiesNV*: proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkCooperativeMatrixPropertiesNV): VkResult {.stdcall.} + vkCmdTraceRaysIndirectKHR*: proc (commandBuffer: VkCommandBuffe, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, indirectDeviceAddress: VkDeviceAddres): void {.stdcall.} + vkCmdTraceRaysIndirect2KHR*: proc (commandBuffer: VkCommandBuffe, indirectDeviceAddress: VkDeviceAddres): void {.stdcall.} + vkGetDeviceAccelerationStructureCompatibilityKHR*: proc (device: VkDevic, pVersionInfo: ptr VkAccelerationStructureVersionInfoKHR, pCompatibility: ptr VkAccelerationStructureCompatibilityKHR): void {.stdcall.} + vkGetRayTracingShaderGroupStackSizeKHR*: proc (device: VkDevic, pipeline: VkPipelin, group: uint32_, groupShader: VkShaderGroupShaderKH): VkDeviceSize {.stdcall.} + vkCmdSetRayTracingPipelineStackSizeKHR*: proc (commandBuffer: VkCommandBuffe, pipelineStackSize: uint32_): void {.stdcall.} + vkGetImageViewHandleNVX*: proc (device: VkDevic, pInfo: ptr VkImageViewHandleInfoNVX): uint32 {.stdcall.} + vkGetImageViewAddressNVX*: proc (device: VkDevic, imageView: VkImageVie, pProperties: ptr VkImageViewAddressPropertiesNVX): VkResult {.stdcall.} + vkGetPhysicalDeviceSurfacePresentModes2EXT*: proc (physicalDevice: VkPhysicalDevic, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pPresentModeCount: ptr uint32, pPresentModes: ptr VkPresentModeKHR): VkResult {.stdcall.} + vkGetDeviceGroupSurfacePresentModes2EXT*: proc (device: VkDevic, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pModes: ptr VkDeviceGroupPresentModeFlagsKHR): VkResult {.stdcall.} + vkAcquireFullScreenExclusiveModeEXT*: proc (device: VkDevic, swapchain: VkSwapchainKH): VkResult {.stdcall.} + vkReleaseFullScreenExclusiveModeEXT*: proc (device: VkDevic, swapchain: VkSwapchainKH): VkResult {.stdcall.} + vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR*: proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, pCounterCount: ptr uint32, pCounters: ptr VkPerformanceCounterKHR, pCounterDescriptions: ptr VkPerformanceCounterDescriptionKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR*: proc (physicalDevice: VkPhysicalDevic, pPerformanceQueryCreateInfo: ptr VkQueryPoolPerformanceCreateInfoKHR, pNumPasses: ptr uint32): void {.stdcall.} + vkAcquireProfilingLockKHR*: proc (device: VkDevic, pInfo: ptr VkAcquireProfilingLockInfoKHR): VkResult {.stdcall.} + vkReleaseProfilingLockKHR*: proc (device: VkDevic): void {.stdcall.} + vkGetImageDrmFormatModifierPropertiesEXT*: proc (device: VkDevic, image: VkImag, pProperties: ptr VkImageDrmFormatModifierPropertiesEXT): VkResult {.stdcall.} + vkGetBufferOpaqueCaptureAddress*: proc (device: VkDevic, pInfo: ptr VkBufferDeviceAddressInfo): uint64 {.stdcall.} + vkGetBufferDeviceAddress*: proc (device: VkDevic, pInfo: ptr VkBufferDeviceAddressInfo): VkDeviceAddress {.stdcall.} + vkCreateHeadlessSurfaceEXT*: proc (instance: VkInstanc, pCreateInfo: ptr VkHeadlessSurfaceCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV*: proc (physicalDevice: VkPhysicalDevic, pCombinationCount: ptr uint32, pCombinations: ptr VkFramebufferMixedSamplesCombinationNV): VkResult {.stdcall.} + vkInitializePerformanceApiINTEL*: proc (device: VkDevic, pInitializeInfo: ptr VkInitializePerformanceApiInfoINTEL): VkResult {.stdcall.} + vkUninitializePerformanceApiINTEL*: proc (device: VkDevic): void {.stdcall.} + vkCmdSetPerformanceMarkerINTEL*: proc (commandBuffer: VkCommandBuffe, pMarkerInfo: ptr VkPerformanceMarkerInfoINTEL): VkResult {.stdcall.} + vkCmdSetPerformanceStreamMarkerINTEL*: proc (commandBuffer: VkCommandBuffe, pMarkerInfo: ptr VkPerformanceStreamMarkerInfoINTEL): VkResult {.stdcall.} + vkCmdSetPerformanceOverrideINTEL*: proc (commandBuffer: VkCommandBuffe, pOverrideInfo: ptr VkPerformanceOverrideInfoINTEL): VkResult {.stdcall.} + vkAcquirePerformanceConfigurationINTEL*: proc (device: VkDevic, pAcquireInfo: ptr VkPerformanceConfigurationAcquireInfoINTEL, pConfiguration: ptr VkPerformanceConfigurationINTEL): VkResult {.stdcall.} + vkReleasePerformanceConfigurationINTEL*: proc (device: VkDevic, configuration: VkPerformanceConfigurationINTE): VkResult {.stdcall.} + vkQueueSetPerformanceConfigurationINTEL*: proc (queue: VkQueu, configuration: VkPerformanceConfigurationINTE): VkResult {.stdcall.} + vkGetPerformanceParameterINTEL*: proc (device: VkDevic, parameter: VkPerformanceParameterTypeINTE, pValue: ptr VkPerformanceValueINTEL): VkResult {.stdcall.} + vkGetDeviceMemoryOpaqueCaptureAddress*: proc (device: VkDevic, pInfo: ptr VkDeviceMemoryOpaqueCaptureAddressInfo): uint64 {.stdcall.} + vkGetPipelineExecutablePropertiesKHR*: proc (device: VkDevic, pPipelineInfo: ptr VkPipelineInfoKHR , pExecutableCount: ptr uint32, pProperties: ptr VkPipelineExecutablePropertiesKHR): VkResult {.stdcall.} + vkGetPipelineExecutableStatisticsKHR*: proc (device: VkDevic, pExecutableInfo: ptr VkPipelineExecutableInfoKHR , pStatisticCount: ptr uint32, pStatistics: ptr VkPipelineExecutableStatisticKHR): VkResult {.stdcall.} + vkGetPipelineExecutableInternalRepresentationsKHR*: proc (device: VkDevic, pExecutableInfo: ptr VkPipelineExecutableInfoKHR , pInternalRepresentationCount: ptr uint32, pInternalRepresentations: ptr VkPipelineExecutableInternalRepresentationKHR): VkResult {.stdcall.} + vkCmdSetLineStippleKHR*: proc (commandBuffer: VkCommandBuffe, lineStippleFactor: uint32_, lineStipplePattern: uint16_): void {.stdcall.} + vkGetFaultData*: proc (device: VkDevic, faultQueryBehavior: VkFaultQueryBehavio, pUnrecordedFaults: ptr VkBool32, pFaultCount: ptr uint32, pFaults: ptr VkFaultData): VkResult {.stdcall.} + vkGetPhysicalDeviceToolProperties*: proc (physicalDevice: VkPhysicalDevic, pToolCount: ptr uint32, pToolProperties: ptr VkPhysicalDeviceToolProperties): VkResult {.stdcall.} + vkCreateAccelerationStructureKHR*: proc (device: VkDevic, pCreateInfo: ptr VkAccelerationStructureCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pAccelerationStructure: ptr VkAccelerationStructureKHR ): VkResult {.stdcall.} + vkCmdBuildAccelerationStructuresKHR*: proc (commandBuffer: VkCommandBuffe, infoCount: uint32_, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR): void {.stdcall.} + vkCmdBuildAccelerationStructuresIndirectKHR*: proc (commandBuffer: VkCommandBuffe, infoCount: uint32_, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, pIndirectDeviceAddresses: ptr VkDeviceAddress , pIndirectStrides: ptr uint32 , ppMaxPrimitiveCounts: ptr ptr uint32 ): void {.stdcall.} + vkBuildAccelerationStructuresKHR*: proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, infoCount: uint32_, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR): VkResult {.stdcall.} + vkGetAccelerationStructureDeviceAddressKHR*: proc (device: VkDevic, pInfo: ptr VkAccelerationStructureDeviceAddressInfoKHR): VkDeviceAddress {.stdcall.} + vkCreateDeferredOperationKHR*: proc (device: VkDevic, pAllocator: ptr VkAllocationCallbacks, pDeferredOperation: ptr VkDeferredOperationKHR): VkResult {.stdcall.} + vkDestroyDeferredOperationKHR*: proc (device: VkDevic, operation: VkDeferredOperationKH, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetDeferredOperationMaxConcurrencyKHR*: proc (device: VkDevic, operation: VkDeferredOperationKH): uint32 {.stdcall.} + vkGetDeferredOperationResultKHR*: proc (device: VkDevic, operation: VkDeferredOperationKH): VkResult {.stdcall.} + vkDeferredOperationJoinKHR*: proc (device: VkDevic, operation: VkDeferredOperationKH): VkResult {.stdcall.} + vkGetPipelineIndirectMemoryRequirementsNV*: proc (device: VkDevic, pCreateInfo: ptr VkComputePipelineCreateInfo, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.} + vkGetPipelineIndirectDeviceAddressNV*: proc (device: VkDevic, pInfo: ptr VkPipelineIndirectDeviceAddressInfoNV): VkDeviceAddress {.stdcall.} + vkCmdSetCullMode*: proc (commandBuffer: VkCommandBuffe, cullMode: VkCullModeFlag): void {.stdcall.} + vkCmdSetFrontFace*: proc (commandBuffer: VkCommandBuffe, frontFace: VkFrontFac): void {.stdcall.} + vkCmdSetPrimitiveTopology*: proc (commandBuffer: VkCommandBuffe, primitiveTopology: VkPrimitiveTopolog): void {.stdcall.} + vkCmdSetViewportWithCount*: proc (commandBuffer: VkCommandBuffe, viewportCount: uint32_, pViewports: ptr VkViewport): void {.stdcall.} + vkCmdSetScissorWithCount*: proc (commandBuffer: VkCommandBuffe, scissorCount: uint32_, pScissors: ptr VkRect2D): void {.stdcall.} + vkCmdBindIndexBuffer2KHR*: proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, size: VkDeviceSiz, indexType: VkIndexTyp): void {.stdcall.} + vkCmdBindVertexBuffers2*: proc (commandBuffer: VkCommandBuffe, firstBinding: uint32_, bindingCount: uint32_, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize, pSizes: ptr VkDeviceSize, pStrides: ptr VkDeviceSize): void {.stdcall.} + vkCmdSetDepthTestEnable*: proc (commandBuffer: VkCommandBuffe, depthTestEnable: VkBool3): void {.stdcall.} + vkCmdSetDepthWriteEnable*: proc (commandBuffer: VkCommandBuffe, depthWriteEnable: VkBool3): void {.stdcall.} + vkCmdSetDepthCompareOp*: proc (commandBuffer: VkCommandBuffe, depthCompareOp: VkCompareO): void {.stdcall.} + vkCmdSetDepthBoundsTestEnable*: proc (commandBuffer: VkCommandBuffe, depthBoundsTestEnable: VkBool3): void {.stdcall.} + vkCmdSetStencilTestEnable*: proc (commandBuffer: VkCommandBuffe, stencilTestEnable: VkBool3): void {.stdcall.} + vkCmdSetStencilOp*: proc (commandBuffer: VkCommandBuffe, faceMask: VkStencilFaceFlag, failOp: VkStencilO, passOp: VkStencilO, depthFailOp: VkStencilO, compareOp: VkCompareO): void {.stdcall.} + vkCmdSetPatchControlPointsEXT*: proc (commandBuffer: VkCommandBuffe, patchControlPoints: uint32_): void {.stdcall.} + vkCmdSetRasterizerDiscardEnable*: proc (commandBuffer: VkCommandBuffe, rasterizerDiscardEnable: VkBool3): void {.stdcall.} + vkCmdSetDepthBiasEnable*: proc (commandBuffer: VkCommandBuffe, depthBiasEnable: VkBool3): void {.stdcall.} + vkCmdSetLogicOpEXT*: proc (commandBuffer: VkCommandBuffe, logicOp: VkLogicO): void {.stdcall.} + vkCmdSetPrimitiveRestartEnable*: proc (commandBuffer: VkCommandBuffe, primitiveRestartEnable: VkBool3): void {.stdcall.} + vkCmdSetTessellationDomainOriginEXT*: proc (commandBuffer: VkCommandBuffe, domainOrigin: VkTessellationDomainOrigi): void {.stdcall.} + vkCmdSetDepthClampEnableEXT*: proc (commandBuffer: VkCommandBuffe, depthClampEnable: VkBool3): void {.stdcall.} + vkCmdSetPolygonModeEXT*: proc (commandBuffer: VkCommandBuffe, polygonMode: VkPolygonMod): void {.stdcall.} + vkCmdSetRasterizationSamplesEXT*: proc (commandBuffer: VkCommandBuffe, rasterizationSamples: VkSampleCountFlagBit): void {.stdcall.} + vkCmdSetSampleMaskEXT*: proc (commandBuffer: VkCommandBuffe, samples: VkSampleCountFlagBit, pSampleMask: ptr VkSampleMask ): void {.stdcall.} + vkCmdSetAlphaToCoverageEnableEXT*: proc (commandBuffer: VkCommandBuffe, alphaToCoverageEnable: VkBool3): void {.stdcall.} + vkCmdSetAlphaToOneEnableEXT*: proc (commandBuffer: VkCommandBuffe, alphaToOneEnable: VkBool3): void {.stdcall.} + vkCmdSetLogicOpEnableEXT*: proc (commandBuffer: VkCommandBuffe, logicOpEnable: VkBool3): void {.stdcall.} + vkCmdSetColorBlendEnableEXT*: proc (commandBuffer: VkCommandBuffe, firstAttachment: uint32_, attachmentCount: uint32_, pColorBlendEnables: ptr VkBool32): void {.stdcall.} + vkCmdSetColorBlendEquationEXT*: proc (commandBuffer: VkCommandBuffe, firstAttachment: uint32_, attachmentCount: uint32_, pColorBlendEquations: ptr VkColorBlendEquationEXT): void {.stdcall.} + vkCmdSetColorWriteMaskEXT*: proc (commandBuffer: VkCommandBuffe, firstAttachment: uint32_, attachmentCount: uint32_, pColorWriteMasks: ptr VkColorComponentFlags): void {.stdcall.} + vkCmdSetRasterizationStreamEXT*: proc (commandBuffer: VkCommandBuffe, rasterizationStream: uint32_): void {.stdcall.} + vkCmdSetConservativeRasterizationModeEXT*: proc (commandBuffer: VkCommandBuffe, conservativeRasterizationMode: VkConservativeRasterizationModeEX): void {.stdcall.} + vkCmdSetExtraPrimitiveOverestimationSizeEXT*: proc (commandBuffer: VkCommandBuffe, extraPrimitiveOverestimationSize: floa): void {.stdcall.} + vkCmdSetDepthClipEnableEXT*: proc (commandBuffer: VkCommandBuffe, depthClipEnable: VkBool3): void {.stdcall.} + vkCmdSetSampleLocationsEnableEXT*: proc (commandBuffer: VkCommandBuffe, sampleLocationsEnable: VkBool3): void {.stdcall.} + vkCmdSetColorBlendAdvancedEXT*: proc (commandBuffer: VkCommandBuffe, firstAttachment: uint32_, attachmentCount: uint32_, pColorBlendAdvanced: ptr VkColorBlendAdvancedEXT): void {.stdcall.} + vkCmdSetProvokingVertexModeEXT*: proc (commandBuffer: VkCommandBuffe, provokingVertexMode: VkProvokingVertexModeEX): void {.stdcall.} + vkCmdSetLineRasterizationModeEXT*: proc (commandBuffer: VkCommandBuffe, lineRasterizationMode: VkLineRasterizationModeEX): void {.stdcall.} + vkCmdSetLineStippleEnableEXT*: proc (commandBuffer: VkCommandBuffe, stippledLineEnable: VkBool3): void {.stdcall.} + vkCmdSetDepthClipNegativeOneToOneEXT*: proc (commandBuffer: VkCommandBuffe, negativeOneToOne: VkBool3): void {.stdcall.} + vkCmdSetViewportWScalingEnableNV*: proc (commandBuffer: VkCommandBuffe, viewportWScalingEnable: VkBool3): void {.stdcall.} + vkCmdSetViewportSwizzleNV*: proc (commandBuffer: VkCommandBuffe, firstViewport: uint32_, viewportCount: uint32_, pViewportSwizzles: ptr VkViewportSwizzleNV): void {.stdcall.} + vkCmdSetCoverageToColorEnableNV*: proc (commandBuffer: VkCommandBuffe, coverageToColorEnable: VkBool3): void {.stdcall.} + vkCmdSetCoverageToColorLocationNV*: proc (commandBuffer: VkCommandBuffe, coverageToColorLocation: uint32_): void {.stdcall.} + vkCmdSetCoverageModulationModeNV*: proc (commandBuffer: VkCommandBuffe, coverageModulationMode: VkCoverageModulationModeN): void {.stdcall.} + vkCmdSetCoverageModulationTableEnableNV*: proc (commandBuffer: VkCommandBuffe, coverageModulationTableEnable: VkBool3): void {.stdcall.} + vkCmdSetCoverageModulationTableNV*: proc (commandBuffer: VkCommandBuffe, coverageModulationTableCount: uint32_, pCoverageModulationTable: ptr float32): void {.stdcall.} + vkCmdSetShadingRateImageEnableNV*: proc (commandBuffer: VkCommandBuffe, shadingRateImageEnable: VkBool3): void {.stdcall.} + vkCmdSetCoverageReductionModeNV*: proc (commandBuffer: VkCommandBuffe, coverageReductionMode: VkCoverageReductionModeN): void {.stdcall.} + vkCmdSetRepresentativeFragmentTestEnableNV*: proc (commandBuffer: VkCommandBuffe, representativeFragmentTestEnable: VkBool3): void {.stdcall.} + vkCreatePrivateDataSlot*: proc (device: VkDevic, pCreateInfo: ptr VkPrivateDataSlotCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPrivateDataSlot: ptr VkPrivateDataSlot): VkResult {.stdcall.} + vkDestroyPrivateDataSlot*: proc (device: VkDevic, privateDataSlot: VkPrivateDataSlo, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkSetPrivateData*: proc (device: VkDevic, objectType: VkObjectTyp, objectHandle: uint64_, privateDataSlot: VkPrivateDataSlo, data: uint64_): VkResult {.stdcall.} + vkGetPrivateData*: proc (device: VkDevic, objectType: VkObjectTyp, objectHandle: uint64_, privateDataSlot: VkPrivateDataSlo, pData: ptr uint64): void {.stdcall.} + vkCmdCopyBuffer2*: proc (commandBuffer: VkCommandBuffe, pCopyBufferInfo: ptr VkCopyBufferInfo2): void {.stdcall.} + vkCmdCopyImage2*: proc (commandBuffer: VkCommandBuffe, pCopyImageInfo: ptr VkCopyImageInfo2): void {.stdcall.} + vkCmdBlitImage2*: proc (commandBuffer: VkCommandBuffe, pBlitImageInfo: ptr VkBlitImageInfo2): void {.stdcall.} + vkCmdCopyBufferToImage2*: proc (commandBuffer: VkCommandBuffe, pCopyBufferToImageInfo: ptr VkCopyBufferToImageInfo2): void {.stdcall.} + vkCmdCopyImageToBuffer2*: proc (commandBuffer: VkCommandBuffe, pCopyImageToBufferInfo: ptr VkCopyImageToBufferInfo2): void {.stdcall.} + vkCmdResolveImage2*: proc (commandBuffer: VkCommandBuffe, pResolveImageInfo: ptr VkResolveImageInfo2): void {.stdcall.} + vkCmdRefreshObjectsKHR*: proc (commandBuffer: VkCommandBuffe, pRefreshObjects: ptr VkRefreshObjectListKHR): void {.stdcall.} + vkGetPhysicalDeviceRefreshableObjectTypesKHR*: proc (physicalDevice: VkPhysicalDevic, pRefreshableObjectTypeCount: ptr uint32, pRefreshableObjectTypes: ptr VkObjectType): VkResult {.stdcall.} + vkCmdSetFragmentShadingRateKHR*: proc (commandBuffer: VkCommandBuffe, pFragmentSize: ptr VkExtent2D , combinerOps: array[2, VkFragmentShadingRateCombinerOpKH]): void {.stdcall.} + vkGetPhysicalDeviceFragmentShadingRatesKHR*: proc (physicalDevice: VkPhysicalDevic, pFragmentShadingRateCount: ptr uint32, pFragmentShadingRates: ptr VkPhysicalDeviceFragmentShadingRateKHR): VkResult {.stdcall.} + vkCmdSetFragmentShadingRateEnumNV*: proc (commandBuffer: VkCommandBuffe, shadingRate: VkFragmentShadingRateN, combinerOps: array[2, VkFragmentShadingRateCombinerOpKH]): void {.stdcall.} + vkGetAccelerationStructureBuildSizesKHR*: proc (device: VkDevic, buildType: VkAccelerationStructureBuildTypeKH, pBuildInfo: ptr VkAccelerationStructureBuildGeometryInfoKHR , pMaxPrimitiveCounts: ptr uint32 , pSizeInfo: ptr VkAccelerationStructureBuildSizesInfoKHR ): void {.stdcall.} + vkCmdSetVertexInputEXT*: proc (commandBuffer: VkCommandBuffe, vertexBindingDescriptionCount: uint32_, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription2EXT, vertexAttributeDescriptionCount: uint32_, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription2EXT): void {.stdcall.} + vkCmdSetColorWriteEnableEXT*: proc (commandBuffer: VkCommandBuffe, attachmentCount: uint32_, pColorWriteEnables: ptr VkBool32 ): void {.stdcall.} + vkCmdSetEvent2*: proc (commandBuffer: VkCommandBuffe, event: VkEven, pDependencyInfo: ptr VkDependencyInfo ): void {.stdcall.} + vkCmdResetEvent2*: proc (commandBuffer: VkCommandBuffe, event: VkEven, stageMask: VkPipelineStageFlags): void {.stdcall.} + vkCmdWaitEvents2*: proc (commandBuffer: VkCommandBuffe, eventCount: uint32_, pEvents: ptr VkEvent , pDependencyInfos: ptr VkDependencyInfo ): void {.stdcall.} + vkCmdPipelineBarrier2*: proc (commandBuffer: VkCommandBuffe, pDependencyInfo: ptr VkDependencyInfo ): void {.stdcall.} + vkQueueSubmit2*: proc (queue: VkQueu, submitCount: uint32_, pSubmits: ptr VkSubmitInfo2 , fence: VkFenc): VkResult {.stdcall.} + vkCmdWriteTimestamp2*: proc (commandBuffer: VkCommandBuffe, stage: VkPipelineStageFlags, queryPool: VkQueryPoo, query: uint32_): void {.stdcall.} + vkCmdWriteBufferMarker2AMD*: proc (commandBuffer: VkCommandBuffe, stage: VkPipelineStageFlags, dstBuffer: VkBuffe, dstOffset: VkDeviceSiz, marker: uint32_): void {.stdcall.} + vkGetQueueCheckpointData2NV*: proc (queue: VkQueu, pCheckpointDataCount: ptr uint32, pCheckpointData: ptr VkCheckpointData2NV): void {.stdcall.} + vkCopyMemoryToImageEXT*: proc (device: VkDevic, pCopyMemoryToImageInfo: ptr VkCopyMemoryToImageInfoEXT): VkResult {.stdcall.} + vkCopyImageToMemoryEXT*: proc (device: VkDevic, pCopyImageToMemoryInfo: ptr VkCopyImageToMemoryInfoEXT): VkResult {.stdcall.} + vkCopyImageToImageEXT*: proc (device: VkDevic, pCopyImageToImageInfo: ptr VkCopyImageToImageInfoEXT): VkResult {.stdcall.} + vkTransitionImageLayoutEXT*: proc (device: VkDevic, transitionCount: uint32_, pTransitions: ptr VkHostImageLayoutTransitionInfoEXT): VkResult {.stdcall.} + vkGetCommandPoolMemoryConsumption*: proc (device: VkDevic, commandPool: VkCommandPoo, commandBuffer: VkCommandBuffe, pConsumption: ptr VkCommandPoolMemoryConsumption): void {.stdcall.} + vkGetPhysicalDeviceVideoCapabilitiesKHR*: proc (physicalDevice: VkPhysicalDevic, pVideoProfile: ptr VkVideoProfileInfoKHR, pCapabilities: ptr VkVideoCapabilitiesKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceVideoFormatPropertiesKHR*: proc (physicalDevice: VkPhysicalDevic, pVideoFormatInfo: ptr VkPhysicalDeviceVideoFormatInfoKHR, pVideoFormatPropertyCount: ptr uint32, pVideoFormatProperties: ptr VkVideoFormatPropertiesKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR*: proc (physicalDevice: VkPhysicalDevic, pQualityLevelInfo: ptr VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR, pQualityLevelProperties: ptr VkVideoEncodeQualityLevelPropertiesKHR): VkResult {.stdcall.} + vkCreateVideoSessionKHR*: proc (device: VkDevic, pCreateInfo: ptr VkVideoSessionCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pVideoSession: ptr VkVideoSessionKHR): VkResult {.stdcall.} + vkDestroyVideoSessionKHR*: proc (device: VkDevic, videoSession: VkVideoSessionKH, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCreateVideoSessionParametersKHR*: proc (device: VkDevic, pCreateInfo: ptr VkVideoSessionParametersCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pVideoSessionParameters: ptr VkVideoSessionParametersKHR): VkResult {.stdcall.} + vkUpdateVideoSessionParametersKHR*: proc (device: VkDevic, videoSessionParameters: VkVideoSessionParametersKH, pUpdateInfo: ptr VkVideoSessionParametersUpdateInfoKHR): VkResult {.stdcall.} + vkGetEncodedVideoSessionParametersKHR*: proc (device: VkDevic, pVideoSessionParametersInfo: ptr VkVideoEncodeSessionParametersGetInfoKHR, pFeedbackInfo: ptr VkVideoEncodeSessionParametersFeedbackInfoKHR, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.} + vkDestroyVideoSessionParametersKHR*: proc (device: VkDevic, videoSessionParameters: VkVideoSessionParametersKH, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetVideoSessionMemoryRequirementsKHR*: proc (device: VkDevic, videoSession: VkVideoSessionKH, pMemoryRequirementsCount: ptr uint32, pMemoryRequirements: ptr VkVideoSessionMemoryRequirementsKHR): VkResult {.stdcall.} + vkBindVideoSessionMemoryKHR*: proc (device: VkDevic, videoSession: VkVideoSessionKH, bindSessionMemoryInfoCount: uint32_, pBindSessionMemoryInfos: ptr VkBindVideoSessionMemoryInfoKHR): VkResult {.stdcall.} + vkCmdDecodeVideoKHR*: proc (commandBuffer: VkCommandBuffe, pDecodeInfo: ptr VkVideoDecodeInfoKHR): void {.stdcall.} + vkCmdBeginVideoCodingKHR*: proc (commandBuffer: VkCommandBuffe, pBeginInfo: ptr VkVideoBeginCodingInfoKHR): void {.stdcall.} + vkCmdControlVideoCodingKHR*: proc (commandBuffer: VkCommandBuffe, pCodingControlInfo: ptr VkVideoCodingControlInfoKHR): void {.stdcall.} + vkCmdEndVideoCodingKHR*: proc (commandBuffer: VkCommandBuffe, pEndCodingInfo: ptr VkVideoEndCodingInfoKHR): void {.stdcall.} + vkCmdEncodeVideoKHR*: proc (commandBuffer: VkCommandBuffe, pEncodeInfo: ptr VkVideoEncodeInfoKHR): void {.stdcall.} + vkCmdDecompressMemoryNV*: proc (commandBuffer: VkCommandBuffe, decompressRegionCount: uint32_, pDecompressMemoryRegions: ptr VkDecompressMemoryRegionNV): void {.stdcall.} + vkCmdDecompressMemoryIndirectCountNV*: proc (commandBuffer: VkCommandBuffe, indirectCommandsAddress: VkDeviceAddres, indirectCommandsCountAddress: VkDeviceAddres, stride: uint32_): void {.stdcall.} + vkCreateCuModuleNVX*: proc (device: VkDevic, pCreateInfo: ptr VkCuModuleCreateInfoNVX, pAllocator: ptr VkAllocationCallbacks, pModule: ptr VkCuModuleNVX): VkResult {.stdcall.} + vkCreateCuFunctionNVX*: proc (device: VkDevic, pCreateInfo: ptr VkCuFunctionCreateInfoNVX, pAllocator: ptr VkAllocationCallbacks, pFunction: ptr VkCuFunctionNVX): VkResult {.stdcall.} + vkDestroyCuModuleNVX*: proc (device: VkDevic, module: VkCuModuleNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyCuFunctionNVX*: proc (device: VkDevic, function: VkCuFunctionNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCmdCuLaunchKernelNVX*: proc (commandBuffer: VkCommandBuffe, pLaunchInfo: ptr VkCuLaunchInfoNVX): void {.stdcall.} + vkGetDescriptorSetLayoutSizeEXT*: proc (device: VkDevic, layout: VkDescriptorSetLayou, pLayoutSizeInBytes: ptr VkDeviceSize): void {.stdcall.} + vkGetDescriptorSetLayoutBindingOffsetEXT*: proc (device: VkDevic, layout: VkDescriptorSetLayou, binding: uint32_, pOffset: ptr VkDeviceSize): void {.stdcall.} + vkGetDescriptorEXT*: proc (device: VkDevic, pDescriptorInfo: ptr VkDescriptorGetInfoEXT, dataSize: size_, pDescriptor: pointer): void {.stdcall.} + vkCmdBindDescriptorBuffersEXT*: proc (commandBuffer: VkCommandBuffe, bufferCount: uint32_, pBindingInfos: ptr VkDescriptorBufferBindingInfoEXT): void {.stdcall.} + vkCmdSetDescriptorBufferOffsetsEXT*: proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, layout: VkPipelineLayou, firstSet: uint32_, setCount: uint32_, pBufferIndices: ptr uint32, pOffsets: ptr VkDeviceSize): void {.stdcall.} + vkCmdBindDescriptorBufferEmbeddedSamplersEXT*: proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, layout: VkPipelineLayou, set: uint32_): void {.stdcall.} + vkGetBufferOpaqueCaptureDescriptorDataEXT*: proc (device: VkDevic, pInfo: ptr VkBufferCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.} + vkGetImageOpaqueCaptureDescriptorDataEXT*: proc (device: VkDevic, pInfo: ptr VkImageCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.} + vkGetImageViewOpaqueCaptureDescriptorDataEXT*: proc (device: VkDevic, pInfo: ptr VkImageViewCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.} + vkGetSamplerOpaqueCaptureDescriptorDataEXT*: proc (device: VkDevic, pInfo: ptr VkSamplerCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.} + vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT*: proc (device: VkDevic, pInfo: ptr VkAccelerationStructureCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.} + vkSetDeviceMemoryPriorityEXT*: proc (device: VkDevic, memory: VkDeviceMemor, priority: floa): void {.stdcall.} + vkAcquireDrmDisplayEXT*: proc (physicalDevice: VkPhysicalDevic, drmFd: int32_, display: VkDisplayKH): VkResult {.stdcall.} + vkGetDrmDisplayEXT*: proc (physicalDevice: VkPhysicalDevic, drmFd: int32_, connectorId: uint32_, display: ptr VkDisplayKHR): VkResult {.stdcall.} + vkWaitForPresentKHR*: proc (device: VkDevic, swapchain: VkSwapchainKH, presentId: uint64_, timeout: uint64_): VkResult {.stdcall.} + vkCreateBufferCollectionFUCHSIA*: proc (device: VkDevic, pCreateInfo: ptr VkBufferCollectionCreateInfoFUCHSIA, pAllocator: ptr VkAllocationCallbacks, pCollection: ptr VkBufferCollectionFUCHSIA): VkResult {.stdcall.} + vkSetBufferCollectionBufferConstraintsFUCHSIA*: proc (device: VkDevic, collection: VkBufferCollectionFUCHSI, pBufferConstraintsInfo: ptr VkBufferConstraintsInfoFUCHSIA): VkResult {.stdcall.} + vkSetBufferCollectionImageConstraintsFUCHSIA*: proc (device: VkDevic, collection: VkBufferCollectionFUCHSI, pImageConstraintsInfo: ptr VkImageConstraintsInfoFUCHSIA): VkResult {.stdcall.} + vkDestroyBufferCollectionFUCHSIA*: proc (device: VkDevic, collection: VkBufferCollectionFUCHSI, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetBufferCollectionPropertiesFUCHSIA*: proc (device: VkDevic, collection: VkBufferCollectionFUCHSI, pProperties: ptr VkBufferCollectionPropertiesFUCHSIA): VkResult {.stdcall.} + vkCreateCudaModuleNV*: proc (device: VkDevic, pCreateInfo: ptr VkCudaModuleCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pModule: ptr VkCudaModuleNV): VkResult {.stdcall.} + vkGetCudaModuleCacheNV*: proc (device: VkDevic, module: VkCudaModuleN, pCacheSize: ptr uint, pCacheData: pointer): VkResult {.stdcall.} + vkCreateCudaFunctionNV*: proc (device: VkDevic, pCreateInfo: ptr VkCudaFunctionCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pFunction: ptr VkCudaFunctionNV): VkResult {.stdcall.} + vkDestroyCudaModuleNV*: proc (device: VkDevic, module: VkCudaModuleN, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyCudaFunctionNV*: proc (device: VkDevic, function: VkCudaFunctionN, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCmdCudaLaunchKernelNV*: proc (commandBuffer: VkCommandBuffe, pLaunchInfo: ptr VkCudaLaunchInfoNV): void {.stdcall.} + vkCmdBeginRendering*: proc (commandBuffer: VkCommandBuffe, pRenderingInfo: ptr VkRenderingInfo ): void {.stdcall.} + vkCmdEndRendering*: proc (commandBuffer: VkCommandBuffe): void {.stdcall.} + vkGetDescriptorSetLayoutHostMappingInfoVALVE*: proc (device: VkDevic, pBindingReference: ptr VkDescriptorSetBindingReferenceVALVE, pHostMapping: ptr VkDescriptorSetLayoutHostMappingInfoVALVE): void {.stdcall.} + vkGetDescriptorSetHostMappingVALVE*: proc (device: VkDevic, descriptorSet: VkDescriptorSe, ppData: ptr pointer): void {.stdcall.} + vkCreateMicromapEXT*: proc (device: VkDevic, pCreateInfo: ptr VkMicromapCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pMicromap: ptr VkMicromapEXT ): VkResult {.stdcall.} + vkCmdBuildMicromapsEXT*: proc (commandBuffer: VkCommandBuffe, infoCount: uint32_, pInfos: ptr VkMicromapBuildInfoEXT): void {.stdcall.} + vkBuildMicromapsEXT*: proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, infoCount: uint32_, pInfos: ptr VkMicromapBuildInfoEXT): VkResult {.stdcall.} + vkDestroyMicromapEXT*: proc (device: VkDevic, micromap: VkMicromapEX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCmdCopyMicromapEXT*: proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkCopyMicromapInfoEXT): void {.stdcall.} + vkCopyMicromapEXT*: proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pInfo: ptr VkCopyMicromapInfoEXT): VkResult {.stdcall.} + vkCmdCopyMicromapToMemoryEXT*: proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkCopyMicromapToMemoryInfoEXT): void {.stdcall.} + vkCopyMicromapToMemoryEXT*: proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pInfo: ptr VkCopyMicromapToMemoryInfoEXT): VkResult {.stdcall.} + vkCmdCopyMemoryToMicromapEXT*: proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkCopyMemoryToMicromapInfoEXT): void {.stdcall.} + vkCopyMemoryToMicromapEXT*: proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pInfo: ptr VkCopyMemoryToMicromapInfoEXT): VkResult {.stdcall.} + vkCmdWriteMicromapsPropertiesEXT*: proc (commandBuffer: VkCommandBuffe, micromapCount: uint32_, pMicromaps: ptr VkMicromapEXT, queryType: VkQueryTyp, queryPool: VkQueryPoo, firstQuery: uint32_): void {.stdcall.} + vkWriteMicromapsPropertiesEXT*: proc (device: VkDevic, micromapCount: uint32_, pMicromaps: ptr VkMicromapEXT, queryType: VkQueryTyp, dataSize: size_, pData: pointer, stride: size_): VkResult {.stdcall.} + vkGetDeviceMicromapCompatibilityEXT*: proc (device: VkDevic, pVersionInfo: ptr VkMicromapVersionInfoEXT, pCompatibility: ptr VkAccelerationStructureCompatibilityKHR): void {.stdcall.} + vkGetMicromapBuildSizesEXT*: proc (device: VkDevic, buildType: VkAccelerationStructureBuildTypeKH, pBuildInfo: ptr VkMicromapBuildInfoEXT , pSizeInfo: ptr VkMicromapBuildSizesInfoEXT ): void {.stdcall.} + vkGetShaderModuleIdentifierEXT*: proc (device: VkDevic, shaderModule: VkShaderModul, pIdentifier: ptr VkShaderModuleIdentifierEXT): void {.stdcall.} + vkGetShaderModuleCreateInfoIdentifierEXT*: proc (device: VkDevic, pCreateInfo: ptr VkShaderModuleCreateInfo, pIdentifier: ptr VkShaderModuleIdentifierEXT): void {.stdcall.} + vkGetImageSubresourceLayout2KHR*: proc (device: VkDevic, image: VkImag, pSubresource: ptr VkImageSubresource2KHR, pLayout: ptr VkSubresourceLayout2KHR): void {.stdcall.} + vkGetPipelinePropertiesEXT*: proc (device: VkDevic, pPipelineInfo: ptr VkPipelineInfoEXT, pPipelineProperties: ptr VkBaseOutStructure): VkResult {.stdcall.} + vkExportMetalObjectsEXT*: proc (device: VkDevic, pMetalObjectsInfo: ptr VkExportMetalObjectsInfoEXT): void {.stdcall.} + vkGetFramebufferTilePropertiesQCOM*: proc (device: VkDevic, framebuffer: VkFramebuffe, pPropertiesCount: ptr uint32, pProperties: ptr VkTilePropertiesQCOM): VkResult {.stdcall.} + vkGetDynamicRenderingTilePropertiesQCOM*: proc (device: VkDevic, pRenderingInfo: ptr VkRenderingInfo, pProperties: ptr VkTilePropertiesQCOM): VkResult {.stdcall.} + vkGetPhysicalDeviceOpticalFlowImageFormatsNV*: proc (physicalDevice: VkPhysicalDevic, pOpticalFlowImageFormatInfo: ptr VkOpticalFlowImageFormatInfoNV, pFormatCount: ptr uint32, pImageFormatProperties: ptr VkOpticalFlowImageFormatPropertiesNV): VkResult {.stdcall.} + vkCreateOpticalFlowSessionNV*: proc (device: VkDevic, pCreateInfo: ptr VkOpticalFlowSessionCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pSession: ptr VkOpticalFlowSessionNV): VkResult {.stdcall.} + vkDestroyOpticalFlowSessionNV*: proc (device: VkDevic, session: VkOpticalFlowSessionN, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkBindOpticalFlowSessionImageNV*: proc (device: VkDevic, session: VkOpticalFlowSessionN, bindingPoint: VkOpticalFlowSessionBindingPointN, view: VkImageVie, layout: VkImageLayou): VkResult {.stdcall.} + vkCmdOpticalFlowExecuteNV*: proc (commandBuffer: VkCommandBuffe, session: VkOpticalFlowSessionN, pExecuteInfo: ptr VkOpticalFlowExecuteInfoNV): void {.stdcall.} + vkGetDeviceFaultInfoEXT*: proc (device: VkDevic, pFaultCounts: ptr VkDeviceFaultCountsEXT, pFaultInfo: ptr VkDeviceFaultInfoEXT): VkResult {.stdcall.} + vkCmdSetDepthBias2EXT*: proc (commandBuffer: VkCommandBuffe, pDepthBiasInfo: ptr VkDepthBiasInfoEXT ): void {.stdcall.} + vkReleaseSwapchainImagesEXT*: proc (device: VkDevic, pReleaseInfo: ptr VkReleaseSwapchainImagesInfoEXT): VkResult {.stdcall.} + vkGetDeviceImageSubresourceLayoutKHR*: proc (device: VkDevic, pInfo: ptr VkDeviceImageSubresourceInfoKHR, pLayout: ptr VkSubresourceLayout2KHR): void {.stdcall.} + vkMapMemory2KHR*: proc (device: VkDevic, pMemoryMapInfo: ptr VkMemoryMapInfoKHR, ppData: ptr pointer): VkResult {.stdcall.} + vkUnmapMemory2KHR*: proc (device: VkDevic, pMemoryUnmapInfo: ptr VkMemoryUnmapInfoKHR): VkResult {.stdcall.} + vkCreateShadersEXT*: proc (device: VkDevic, createInfoCount: uint32_, pCreateInfos: ptr VkShaderCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pShaders: ptr VkShaderEXT): VkResult {.stdcall.} + vkDestroyShaderEXT*: proc (device: VkDevic, shader: VkShaderEX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetShaderBinaryDataEXT*: proc (device: VkDevic, shader: VkShaderEX, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.} + vkCmdBindShadersEXT*: proc (commandBuffer: VkCommandBuffe, stageCount: uint32_, pStages: ptr VkShaderStageFlagBits, pShaders: ptr VkShaderEXT): void {.stdcall.} + vkGetScreenBufferPropertiesQNX*: proc (device: VkDevic, buffer: ptr screen_buffer, pProperties: ptr VkScreenBufferPropertiesQNX): VkResult {.stdcall.} + vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR*: proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkCooperativeMatrixPropertiesKHR): VkResult {.stdcall.} + vkGetExecutionGraphPipelineScratchSizeAMDX*: proc (device: VkDevic, executionGraph: VkPipelin, pSizeInfo: ptr VkExecutionGraphPipelineScratchSizeAMDX ): VkResult {.stdcall.} + vkGetExecutionGraphPipelineNodeIndexAMDX*: proc (device: VkDevic, executionGraph: VkPipelin, pNodeInfo: ptr VkPipelineShaderStageNodeCreateInfoAMDX , pNodeIndex: ptr uint32 ): VkResult {.stdcall.} + vkCreateExecutionGraphPipelinesAMDX*: proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkExecutionGraphPipelineCreateInfoAMDX, pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.} + vkCmdInitializeGraphScratchMemoryAMDX*: proc (commandBuffer: VkCommandBuffe, scratch: VkDeviceAddres): void {.stdcall.} + vkCmdDispatchGraphAMDX*: proc (commandBuffer: VkCommandBuffe, scratch: VkDeviceAddres, pCountInfo: ptr VkDispatchGraphCountInfoAMDX ): void {.stdcall.} + vkCmdDispatchGraphIndirectAMDX*: proc (commandBuffer: VkCommandBuffe, scratch: VkDeviceAddres, pCountInfo: ptr VkDispatchGraphCountInfoAMDX ): void {.stdcall.} + vkCmdDispatchGraphIndirectCountAMDX*: proc (commandBuffer: VkCommandBuffe, scratch: VkDeviceAddres, countInfo: VkDeviceAddres): void {.stdcall.} + vkCmdBindDescriptorSets2KHR*: proc (commandBuffer: VkCommandBuffe, pBindDescriptorSetsInfo: ptr VkBindDescriptorSetsInfoKHR): void {.stdcall.} + vkCmdPushConstants2KHR*: proc (commandBuffer: VkCommandBuffe, pPushConstantsInfo: ptr VkPushConstantsInfoKHR): void {.stdcall.} + vkCmdPushDescriptorSet2KHR*: proc (commandBuffer: VkCommandBuffe, pPushDescriptorSetInfo: ptr VkPushDescriptorSetInfoKHR): void {.stdcall.} + vkCmdPushDescriptorSetWithTemplate2KHR*: proc (commandBuffer: VkCommandBuffe, pPushDescriptorSetWithTemplateInfo: ptr VkPushDescriptorSetWithTemplateInfoKHR): void {.stdcall.} + vkCmdSetDescriptorBufferOffsets2EXT*: proc (commandBuffer: VkCommandBuffe, pSetDescriptorBufferOffsetsInfo: ptr VkSetDescriptorBufferOffsetsInfoEXT): void {.stdcall.} + vkCmdBindDescriptorBufferEmbeddedSamplers2EXT*: proc (commandBuffer: VkCommandBuffe, pBindDescriptorBufferEmbeddedSamplersInfo: ptr VkBindDescriptorBufferEmbeddedSamplersInfoEXT): void {.stdcall.} + vkSetLatencySleepModeNV*: proc (device: VkDevic, swapchain: VkSwapchainKH, pSleepModeInfo: ptr VkLatencySleepModeInfoNV): VkResult {.stdcall.} + vkLatencySleepNV*: proc (device: VkDevic, swapchain: VkSwapchainKH, pSleepInfo: ptr VkLatencySleepInfoNV): VkResult {.stdcall.} + vkSetLatencyMarkerNV*: proc (device: VkDevic, swapchain: VkSwapchainKH, pLatencyMarkerInfo: ptr VkSetLatencyMarkerInfoNV): void {.stdcall.} + vkGetLatencyTimingsNV*: proc (device: VkDevic, swapchain: VkSwapchainKH, pLatencyMarkerInfo: ptr VkGetLatencyMarkerInfoNV): void {.stdcall.} + vkQueueNotifyOutOfBandNV*: proc (queue: VkQueu, pQueueTypeInfo: ptr VkOutOfBandQueueTypeInfoNV): void {.stdcall.} + vkCmdSetRenderingAttachmentLocationsKHR*: proc (commandBuffer: VkCommandBuffe, pLocationInfo: ptr VkRenderingAttachmentLocationInfoKHR): void {.stdcall.} + vkCmdSetRenderingInputAttachmentIndicesKHR*: proc (commandBuffer: VkCommandBuffe, pLocationInfo: ptr VkRenderingInputAttachmentIndexInfoKHR): void {.stdcall.} # Vulkan 1_0 proc vkLoad1_0*() = - vkDestroyInstance = cast[proc(instance: VkInstance, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyInstance")) - vkEnumeratePhysicalDevices = cast[proc(instance: VkInstance, pPhysicalDeviceCount: ptr uint32 , pPhysicalDevices: ptr VkPhysicalDevice ): VkResult {.stdcall.}](vkGetProc("vkEnumeratePhysicalDevices")) - vkGetPhysicalDeviceFeatures = cast[proc(physicalDevice: VkPhysicalDevice, pFeatures: ptr VkPhysicalDeviceFeatures ): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFeatures")) - vkGetPhysicalDeviceFormatProperties = cast[proc(physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: ptr VkFormatProperties ): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFormatProperties")) - vkGetPhysicalDeviceImageFormatProperties = cast[proc(physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, tiling: VkImageTiling, usage: VkImageUsageFlags, flags: VkImageCreateFlags, pImageFormatProperties: ptr VkImageFormatProperties ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceImageFormatProperties")) - vkGetPhysicalDeviceProperties = cast[proc(physicalDevice: VkPhysicalDevice, pProperties: ptr VkPhysicalDeviceProperties ): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceProperties")) - vkGetPhysicalDeviceQueueFamilyProperties = cast[proc(physicalDevice: VkPhysicalDevice, pQueueFamilyPropertyCount: ptr uint32 , pQueueFamilyProperties: ptr VkQueueFamilyProperties ): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceQueueFamilyProperties")) - vkGetPhysicalDeviceMemoryProperties = cast[proc(physicalDevice: VkPhysicalDevice, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties ): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceMemoryProperties")) - vkGetInstanceProcAddr = cast[proc(instance: VkInstance, pName: cstring ): PFN_vkVoidFunction {.stdcall.}](vkGetProc("vkGetInstanceProcAddr")) - vkGetDeviceProcAddr = cast[proc(device: VkDevice, pName: cstring ): PFN_vkVoidFunction {.stdcall.}](vkGetProc("vkGetDeviceProcAddr")) - vkCreateDevice = cast[proc(physicalDevice: VkPhysicalDevice, pCreateInfo: ptr VkDeviceCreateInfo , pAllocator: ptr VkAllocationCallbacks , pDevice: ptr VkDevice ): VkResult {.stdcall.}](vkGetProc("vkCreateDevice")) - vkCreateDevice = cast[proc(physicalDevice: VkPhysicalDevice, pCreateInfo: ptr VkDeviceCreateInfo , pAllocator: ptr VkAllocationCallbacks , pDevice: ptr VkDevice ): VkResult {.stdcall.}](vkGetProc("vkCreateDevice")) - vkDestroyDevice = cast[proc(device: VkDevice, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyDevice")) - vkEnumerateDeviceExtensionProperties = cast[proc(physicalDevice: VkPhysicalDevice, pLayerName: cstring , pPropertyCount: ptr uint32 , pProperties: ptr VkExtensionProperties ): VkResult {.stdcall.}](vkGetProc("vkEnumerateDeviceExtensionProperties")) - vkEnumerateDeviceLayerProperties = cast[proc(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkLayerProperties ): VkResult {.stdcall.}](vkGetProc("vkEnumerateDeviceLayerProperties")) - vkEnumerateDeviceLayerProperties = cast[proc(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkLayerProperties ): VkResult {.stdcall.}](vkGetProc("vkEnumerateDeviceLayerProperties")) - vkGetDeviceQueue = cast[proc(device: VkDevice, queueFamilyIndex: uint32, queueIndex: uint32, pQueue: ptr VkQueue ): void {.stdcall.}](vkGetProc("vkGetDeviceQueue")) - vkQueueSubmit = cast[proc(queue: VkQueue, submitCount: uint32, pSubmits: ptr VkSubmitInfo , fence: VkFence): VkResult {.stdcall.}](vkGetProc("vkQueueSubmit")) - vkQueueWaitIdle = cast[proc(queue: VkQueue): VkResult {.stdcall.}](vkGetProc("vkQueueWaitIdle")) - vkDeviceWaitIdle = cast[proc(device: VkDevice): VkResult {.stdcall.}](vkGetProc("vkDeviceWaitIdle")) - vkAllocateMemory = cast[proc(device: VkDevice, pAllocateInfo: ptr VkMemoryAllocateInfo , pAllocator: ptr VkAllocationCallbacks , pMemory: ptr VkDeviceMemory ): VkResult {.stdcall.}](vkGetProc("vkAllocateMemory")) - vkFreeMemory = cast[proc(device: VkDevice, memory: VkDeviceMemory, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkFreeMemory")) - vkMapMemory = cast[proc(device: VkDevice, memory: VkDeviceMemory, offset: VkDeviceSize, size: VkDeviceSize, flags: VkMemoryMapFlags, ppData: ptr pointer ): VkResult {.stdcall.}](vkGetProc("vkMapMemory")) - vkUnmapMemory = cast[proc(device: VkDevice, memory: VkDeviceMemory): void {.stdcall.}](vkGetProc("vkUnmapMemory")) - vkFlushMappedMemoryRanges = cast[proc(device: VkDevice, memoryRangeCount: uint32, pMemoryRanges: ptr VkMappedMemoryRange ): VkResult {.stdcall.}](vkGetProc("vkFlushMappedMemoryRanges")) - vkInvalidateMappedMemoryRanges = cast[proc(device: VkDevice, memoryRangeCount: uint32, pMemoryRanges: ptr VkMappedMemoryRange ): VkResult {.stdcall.}](vkGetProc("vkInvalidateMappedMemoryRanges")) - vkGetDeviceMemoryCommitment = cast[proc(device: VkDevice, memory: VkDeviceMemory, pCommittedMemoryInBytes: ptr VkDeviceSize ): void {.stdcall.}](vkGetProc("vkGetDeviceMemoryCommitment")) - vkBindBufferMemory = cast[proc(device: VkDevice, buffer: VkBuffer, memory: VkDeviceMemory, memoryOffset: VkDeviceSize): VkResult {.stdcall.}](vkGetProc("vkBindBufferMemory")) - vkBindImageMemory = cast[proc(device: VkDevice, image: VkImage, memory: VkDeviceMemory, memoryOffset: VkDeviceSize): VkResult {.stdcall.}](vkGetProc("vkBindImageMemory")) - vkGetBufferMemoryRequirements = cast[proc(device: VkDevice, buffer: VkBuffer, pMemoryRequirements: ptr VkMemoryRequirements ): void {.stdcall.}](vkGetProc("vkGetBufferMemoryRequirements")) - vkGetImageMemoryRequirements = cast[proc(device: VkDevice, image: VkImage, pMemoryRequirements: ptr VkMemoryRequirements ): void {.stdcall.}](vkGetProc("vkGetImageMemoryRequirements")) - vkGetImageSparseMemoryRequirements = cast[proc(device: VkDevice, image: VkImage, pSparseMemoryRequirementCount: ptr uint32 , pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements ): void {.stdcall.}](vkGetProc("vkGetImageSparseMemoryRequirements")) - vkGetPhysicalDeviceSparseImageFormatProperties = cast[proc(physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, samples: VkSampleCountFlagBits, usage: VkImageUsageFlags, tiling: VkImageTiling, pPropertyCount: ptr uint32 , pProperties: ptr VkSparseImageFormatProperties ): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSparseImageFormatProperties")) - vkQueueBindSparse = cast[proc(queue: VkQueue, bindInfoCount: uint32, pBindInfo: ptr VkBindSparseInfo , fence: VkFence): VkResult {.stdcall.}](vkGetProc("vkQueueBindSparse")) - vkCreateFence = cast[proc(device: VkDevice, pCreateInfo: ptr VkFenceCreateInfo , pAllocator: ptr VkAllocationCallbacks , pFence: ptr VkFence ): VkResult {.stdcall.}](vkGetProc("vkCreateFence")) - vkDestroyFence = cast[proc(device: VkDevice, fence: VkFence, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyFence")) - vkResetFences = cast[proc(device: VkDevice, fenceCount: uint32, pFences: ptr VkFence ): VkResult {.stdcall.}](vkGetProc("vkResetFences")) - vkGetFenceStatus = cast[proc(device: VkDevice, fence: VkFence): VkResult {.stdcall.}](vkGetProc("vkGetFenceStatus")) - vkWaitForFences = cast[proc(device: VkDevice, fenceCount: uint32, pFences: ptr VkFence , waitAll: VkBool32, timeout: uint64): VkResult {.stdcall.}](vkGetProc("vkWaitForFences")) - vkCreateSemaphore = cast[proc(device: VkDevice, pCreateInfo: ptr VkSemaphoreCreateInfo , pAllocator: ptr VkAllocationCallbacks , pSemaphore: ptr VkSemaphore ): VkResult {.stdcall.}](vkGetProc("vkCreateSemaphore")) - vkDestroySemaphore = cast[proc(device: VkDevice, semaphore: VkSemaphore, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroySemaphore")) - vkCreateEvent = cast[proc(device: VkDevice, pCreateInfo: ptr VkEventCreateInfo , pAllocator: ptr VkAllocationCallbacks , pEvent: ptr VkEvent ): VkResult {.stdcall.}](vkGetProc("vkCreateEvent")) - vkDestroyEvent = cast[proc(device: VkDevice, event: VkEvent, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyEvent")) - vkGetEventStatus = cast[proc(device: VkDevice, event: VkEvent): VkResult {.stdcall.}](vkGetProc("vkGetEventStatus")) - vkSetEvent = cast[proc(device: VkDevice, event: VkEvent): VkResult {.stdcall.}](vkGetProc("vkSetEvent")) - vkResetEvent = cast[proc(device: VkDevice, event: VkEvent): VkResult {.stdcall.}](vkGetProc("vkResetEvent")) - vkCreateQueryPool = cast[proc(device: VkDevice, pCreateInfo: ptr VkQueryPoolCreateInfo , pAllocator: ptr VkAllocationCallbacks , pQueryPool: ptr VkQueryPool ): VkResult {.stdcall.}](vkGetProc("vkCreateQueryPool")) - vkDestroyQueryPool = cast[proc(device: VkDevice, queryPool: VkQueryPool, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyQueryPool")) - vkGetQueryPoolResults = cast[proc(device: VkDevice, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32, dataSize: uint, pData: pointer , stride: VkDeviceSize, flags: VkQueryResultFlags): VkResult {.stdcall.}](vkGetProc("vkGetQueryPoolResults")) - vkCreateBuffer = cast[proc(device: VkDevice, pCreateInfo: ptr VkBufferCreateInfo , pAllocator: ptr VkAllocationCallbacks , pBuffer: ptr VkBuffer ): VkResult {.stdcall.}](vkGetProc("vkCreateBuffer")) - vkDestroyBuffer = cast[proc(device: VkDevice, buffer: VkBuffer, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyBuffer")) - vkCreateBufferView = cast[proc(device: VkDevice, pCreateInfo: ptr VkBufferViewCreateInfo , pAllocator: ptr VkAllocationCallbacks , pView: ptr VkBufferView ): VkResult {.stdcall.}](vkGetProc("vkCreateBufferView")) - vkDestroyBufferView = cast[proc(device: VkDevice, bufferView: VkBufferView, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyBufferView")) - vkCreateImage = cast[proc(device: VkDevice, pCreateInfo: ptr VkImageCreateInfo , pAllocator: ptr VkAllocationCallbacks , pImage: ptr VkImage ): VkResult {.stdcall.}](vkGetProc("vkCreateImage")) - vkDestroyImage = cast[proc(device: VkDevice, image: VkImage, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyImage")) - vkGetImageSubresourceLayout = cast[proc(device: VkDevice, image: VkImage, pSubresource: ptr VkImageSubresource , pLayout: ptr VkSubresourceLayout ): void {.stdcall.}](vkGetProc("vkGetImageSubresourceLayout")) - vkCreateImageView = cast[proc(device: VkDevice, pCreateInfo: ptr VkImageViewCreateInfo , pAllocator: ptr VkAllocationCallbacks , pView: ptr VkImageView ): VkResult {.stdcall.}](vkGetProc("vkCreateImageView")) - vkDestroyImageView = cast[proc(device: VkDevice, imageView: VkImageView, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyImageView")) - vkCreateShaderModule = cast[proc(device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo , pAllocator: ptr VkAllocationCallbacks , pShaderModule: ptr VkShaderModule ): VkResult {.stdcall.}](vkGetProc("vkCreateShaderModule")) - vkDestroyShaderModule = cast[proc(device: VkDevice, shaderModule: VkShaderModule, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyShaderModule")) - vkCreatePipelineCache = cast[proc(device: VkDevice, pCreateInfo: ptr VkPipelineCacheCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelineCache: ptr VkPipelineCache ): VkResult {.stdcall.}](vkGetProc("vkCreatePipelineCache")) - vkCreatePipelineCache = cast[proc(device: VkDevice, pCreateInfo: ptr VkPipelineCacheCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelineCache: ptr VkPipelineCache ): VkResult {.stdcall.}](vkGetProc("vkCreatePipelineCache")) - vkDestroyPipelineCache = cast[proc(device: VkDevice, pipelineCache: VkPipelineCache, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyPipelineCache")) - vkGetPipelineCacheData = cast[proc(device: VkDevice, pipelineCache: VkPipelineCache, pDataSize: ptr uint , pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetPipelineCacheData")) - vkMergePipelineCaches = cast[proc(device: VkDevice, dstCache: VkPipelineCache, srcCacheCount: uint32, pSrcCaches: ptr VkPipelineCache ): VkResult {.stdcall.}](vkGetProc("vkMergePipelineCaches")) - vkCreateGraphicsPipelines = cast[proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkGraphicsPipelineCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.}](vkGetProc("vkCreateGraphicsPipelines")) - vkCreateGraphicsPipelines = cast[proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkGraphicsPipelineCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.}](vkGetProc("vkCreateGraphicsPipelines")) - vkCreateComputePipelines = cast[proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkComputePipelineCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.}](vkGetProc("vkCreateComputePipelines")) - vkCreateComputePipelines = cast[proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkComputePipelineCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.}](vkGetProc("vkCreateComputePipelines")) - vkDestroyPipeline = cast[proc(device: VkDevice, pipeline: VkPipeline, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyPipeline")) - vkCreatePipelineLayout = cast[proc(device: VkDevice, pCreateInfo: ptr VkPipelineLayoutCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelineLayout: ptr VkPipelineLayout ): VkResult {.stdcall.}](vkGetProc("vkCreatePipelineLayout")) - vkDestroyPipelineLayout = cast[proc(device: VkDevice, pipelineLayout: VkPipelineLayout, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyPipelineLayout")) - vkCreateSampler = cast[proc(device: VkDevice, pCreateInfo: ptr VkSamplerCreateInfo , pAllocator: ptr VkAllocationCallbacks , pSampler: ptr VkSampler ): VkResult {.stdcall.}](vkGetProc("vkCreateSampler")) - vkDestroySampler = cast[proc(device: VkDevice, sampler: VkSampler, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroySampler")) - vkCreateDescriptorSetLayout = cast[proc(device: VkDevice, pCreateInfo: ptr VkDescriptorSetLayoutCreateInfo , pAllocator: ptr VkAllocationCallbacks , pSetLayout: ptr VkDescriptorSetLayout ): VkResult {.stdcall.}](vkGetProc("vkCreateDescriptorSetLayout")) - vkDestroyDescriptorSetLayout = cast[proc(device: VkDevice, descriptorSetLayout: VkDescriptorSetLayout, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyDescriptorSetLayout")) - vkCreateDescriptorPool = cast[proc(device: VkDevice, pCreateInfo: ptr VkDescriptorPoolCreateInfo , pAllocator: ptr VkAllocationCallbacks , pDescriptorPool: ptr VkDescriptorPool ): VkResult {.stdcall.}](vkGetProc("vkCreateDescriptorPool")) - vkDestroyDescriptorPool = cast[proc(device: VkDevice, descriptorPool: VkDescriptorPool, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyDescriptorPool")) - vkResetDescriptorPool = cast[proc(device: VkDevice, descriptorPool: VkDescriptorPool, flags: VkDescriptorPoolResetFlags): VkResult {.stdcall.}](vkGetProc("vkResetDescriptorPool")) - vkAllocateDescriptorSets = cast[proc(device: VkDevice, pAllocateInfo: ptr VkDescriptorSetAllocateInfo , pDescriptorSets: ptr VkDescriptorSet ): VkResult {.stdcall.}](vkGetProc("vkAllocateDescriptorSets")) - vkFreeDescriptorSets = cast[proc(device: VkDevice, descriptorPool: VkDescriptorPool, descriptorSetCount: uint32, pDescriptorSets: ptr VkDescriptorSet ): VkResult {.stdcall.}](vkGetProc("vkFreeDescriptorSets")) - vkUpdateDescriptorSets = cast[proc(device: VkDevice, descriptorWriteCount: uint32, pDescriptorWrites: ptr VkWriteDescriptorSet , descriptorCopyCount: uint32, pDescriptorCopies: ptr VkCopyDescriptorSet ): void {.stdcall.}](vkGetProc("vkUpdateDescriptorSets")) - vkCreateFramebuffer = cast[proc(device: VkDevice, pCreateInfo: ptr VkFramebufferCreateInfo , pAllocator: ptr VkAllocationCallbacks , pFramebuffer: ptr VkFramebuffer ): VkResult {.stdcall.}](vkGetProc("vkCreateFramebuffer")) - vkDestroyFramebuffer = cast[proc(device: VkDevice, framebuffer: VkFramebuffer, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyFramebuffer")) - vkCreateRenderPass = cast[proc(device: VkDevice, pCreateInfo: ptr VkRenderPassCreateInfo , pAllocator: ptr VkAllocationCallbacks , pRenderPass: ptr VkRenderPass ): VkResult {.stdcall.}](vkGetProc("vkCreateRenderPass")) - vkDestroyRenderPass = cast[proc(device: VkDevice, renderPass: VkRenderPass, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyRenderPass")) - vkGetRenderAreaGranularity = cast[proc(device: VkDevice, renderPass: VkRenderPass, pGranularity: ptr VkExtent2D ): void {.stdcall.}](vkGetProc("vkGetRenderAreaGranularity")) - vkCreateCommandPool = cast[proc(device: VkDevice, pCreateInfo: ptr VkCommandPoolCreateInfo , pAllocator: ptr VkAllocationCallbacks , pCommandPool: ptr VkCommandPool ): VkResult {.stdcall.}](vkGetProc("vkCreateCommandPool")) - vkDestroyCommandPool = cast[proc(device: VkDevice, commandPool: VkCommandPool, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyCommandPool")) - vkResetCommandPool = cast[proc(device: VkDevice, commandPool: VkCommandPool, flags: VkCommandPoolResetFlags): VkResult {.stdcall.}](vkGetProc("vkResetCommandPool")) - vkAllocateCommandBuffers = cast[proc(device: VkDevice, pAllocateInfo: ptr VkCommandBufferAllocateInfo , pCommandBuffers: ptr VkCommandBuffer ): VkResult {.stdcall.}](vkGetProc("vkAllocateCommandBuffers")) - vkFreeCommandBuffers = cast[proc(device: VkDevice, commandPool: VkCommandPool, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer ): void {.stdcall.}](vkGetProc("vkFreeCommandBuffers")) - vkBeginCommandBuffer = cast[proc(commandBuffer: VkCommandBuffer, pBeginInfo: ptr VkCommandBufferBeginInfo ): VkResult {.stdcall.}](vkGetProc("vkBeginCommandBuffer")) - vkEndCommandBuffer = cast[proc(commandBuffer: VkCommandBuffer): VkResult {.stdcall.}](vkGetProc("vkEndCommandBuffer")) - vkResetCommandBuffer = cast[proc(commandBuffer: VkCommandBuffer, flags: VkCommandBufferResetFlags): VkResult {.stdcall.}](vkGetProc("vkResetCommandBuffer")) - vkCmdBindPipeline = cast[proc(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline): void {.stdcall.}](vkGetProc("vkCmdBindPipeline")) - vkCmdSetViewport = cast[proc(commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewports: ptr VkViewport ): void {.stdcall.}](vkGetProc("vkCmdSetViewport")) - vkCmdSetScissor = cast[proc(commandBuffer: VkCommandBuffer, firstScissor: uint32, scissorCount: uint32, pScissors: ptr VkRect2D ): void {.stdcall.}](vkGetProc("vkCmdSetScissor")) - vkCmdSetLineWidth = cast[proc(commandBuffer: VkCommandBuffer, lineWidth: float32): void {.stdcall.}](vkGetProc("vkCmdSetLineWidth")) - vkCmdSetDepthBias = cast[proc(commandBuffer: VkCommandBuffer, depthBiasConstantFactor: float32, depthBiasClamp: float32, depthBiasSlopeFactor: float32): void {.stdcall.}](vkGetProc("vkCmdSetDepthBias")) - vkCmdSetBlendConstants = cast[proc(commandBuffer: VkCommandBuffer, blendConstants: array[4, float32]): void {.stdcall.}](vkGetProc("vkCmdSetBlendConstants")) - vkCmdSetDepthBounds = cast[proc(commandBuffer: VkCommandBuffer, minDepthBounds: float32, maxDepthBounds: float32): void {.stdcall.}](vkGetProc("vkCmdSetDepthBounds")) - vkCmdSetStencilCompareMask = cast[proc(commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, compareMask: uint32): void {.stdcall.}](vkGetProc("vkCmdSetStencilCompareMask")) - vkCmdSetStencilWriteMask = cast[proc(commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, writeMask: uint32): void {.stdcall.}](vkGetProc("vkCmdSetStencilWriteMask")) - vkCmdSetStencilReference = cast[proc(commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, reference: uint32): void {.stdcall.}](vkGetProc("vkCmdSetStencilReference")) - vkCmdBindDescriptorSets = cast[proc(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, firstSet: uint32, descriptorSetCount: uint32, pDescriptorSets: ptr VkDescriptorSet , dynamicOffsetCount: uint32, pDynamicOffsets: ptr uint32 ): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorSets")) - vkCmdBindIndexBuffer = cast[proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, indexType: VkIndexType): void {.stdcall.}](vkGetProc("vkCmdBindIndexBuffer")) - vkCmdBindVertexBuffers = cast[proc(commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer , pOffsets: ptr VkDeviceSize ): void {.stdcall.}](vkGetProc("vkCmdBindVertexBuffers")) - vkCmdDraw = cast[proc(commandBuffer: VkCommandBuffer, vertexCount: uint32, instanceCount: uint32, firstVertex: uint32, firstInstance: uint32): void {.stdcall.}](vkGetProc("vkCmdDraw")) - vkCmdDrawIndexed = cast[proc(commandBuffer: VkCommandBuffer, indexCount: uint32, instanceCount: uint32, firstIndex: uint32, vertexOffset: int32, firstInstance: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawIndexed")) - vkCmdDrawIndirect = cast[proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawIndirect")) - vkCmdDrawIndexedIndirect = cast[proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawIndexedIndirect")) - vkCmdDispatch = cast[proc(commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.}](vkGetProc("vkCmdDispatch")) - vkCmdDispatchIndirect = cast[proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdDispatchIndirect")) - vkCmdCopyBuffer = cast[proc(commandBuffer: VkCommandBuffer, srcBuffer: VkBuffer, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferCopy ): void {.stdcall.}](vkGetProc("vkCmdCopyBuffer")) - vkCmdCopyImage = cast[proc(commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageCopy ): void {.stdcall.}](vkGetProc("vkCmdCopyImage")) - vkCmdBlitImage = cast[proc(commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageBlit , filter: VkFilter): void {.stdcall.}](vkGetProc("vkCmdBlitImage")) - vkCmdCopyBufferToImage = cast[proc(commandBuffer: VkCommandBuffer, srcBuffer: VkBuffer, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkBufferImageCopy ): void {.stdcall.}](vkGetProc("vkCmdCopyBufferToImage")) - vkCmdCopyImageToBuffer = cast[proc(commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferImageCopy ): void {.stdcall.}](vkGetProc("vkCmdCopyImageToBuffer")) - vkCmdUpdateBuffer = cast[proc(commandBuffer: VkCommandBuffer, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, dataSize: VkDeviceSize, pData: pointer ): void {.stdcall.}](vkGetProc("vkCmdUpdateBuffer")) - vkCmdFillBuffer = cast[proc(commandBuffer: VkCommandBuffer, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, size: VkDeviceSize, data: uint32): void {.stdcall.}](vkGetProc("vkCmdFillBuffer")) - vkCmdClearColorImage = cast[proc(commandBuffer: VkCommandBuffer, image: VkImage, imageLayout: VkImageLayout, pColor: ptr VkClearColorValue , rangeCount: uint32, pRanges: ptr VkImageSubresourceRange ): void {.stdcall.}](vkGetProc("vkCmdClearColorImage")) - vkCmdClearDepthStencilImage = cast[proc(commandBuffer: VkCommandBuffer, image: VkImage, imageLayout: VkImageLayout, pDepthStencil: ptr VkClearDepthStencilValue , rangeCount: uint32, pRanges: ptr VkImageSubresourceRange ): void {.stdcall.}](vkGetProc("vkCmdClearDepthStencilImage")) - vkCmdClearAttachments = cast[proc(commandBuffer: VkCommandBuffer, attachmentCount: uint32, pAttachments: ptr VkClearAttachment , rectCount: uint32, pRects: ptr VkClearRect ): void {.stdcall.}](vkGetProc("vkCmdClearAttachments")) - vkCmdResolveImage = cast[proc(commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageResolve ): void {.stdcall.}](vkGetProc("vkCmdResolveImage")) - vkCmdSetEvent = cast[proc(commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags): void {.stdcall.}](vkGetProc("vkCmdSetEvent")) - vkCmdResetEvent = cast[proc(commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags): void {.stdcall.}](vkGetProc("vkCmdResetEvent")) - vkCmdWaitEvents = cast[proc(commandBuffer: VkCommandBuffer, eventCount: uint32, pEvents: ptr VkEvent , srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, memoryBarrierCount: uint32, pMemoryBarriers: ptr VkMemoryBarrier , bufferMemoryBarrierCount: uint32, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier , imageMemoryBarrierCount: uint32, pImageMemoryBarriers: ptr VkImageMemoryBarrier ): void {.stdcall.}](vkGetProc("vkCmdWaitEvents")) - vkCmdPipelineBarrier = cast[proc(commandBuffer: VkCommandBuffer, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, dependencyFlags: VkDependencyFlags, memoryBarrierCount: uint32, pMemoryBarriers: ptr VkMemoryBarrier , bufferMemoryBarrierCount: uint32, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier , imageMemoryBarrierCount: uint32, pImageMemoryBarriers: ptr VkImageMemoryBarrier ): void {.stdcall.}](vkGetProc("vkCmdPipelineBarrier")) - vkCmdBeginQuery = cast[proc(commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, flags: VkQueryControlFlags): void {.stdcall.}](vkGetProc("vkCmdBeginQuery")) - vkCmdEndQuery = cast[proc(commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32): void {.stdcall.}](vkGetProc("vkCmdEndQuery")) - vkCmdResetQueryPool = cast[proc(commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32): void {.stdcall.}](vkGetProc("vkCmdResetQueryPool")) - vkCmdWriteTimestamp = cast[proc(commandBuffer: VkCommandBuffer, pipelineStage: VkPipelineStageFlagBits, queryPool: VkQueryPool, query: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteTimestamp")) - vkCmdCopyQueryPoolResults = cast[proc(commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, stride: VkDeviceSize, flags: VkQueryResultFlags): void {.stdcall.}](vkGetProc("vkCmdCopyQueryPoolResults")) - vkCmdPushConstants = cast[proc(commandBuffer: VkCommandBuffer, layout: VkPipelineLayout, stageFlags: VkShaderStageFlags, offset: uint32, size: uint32, pValues: pointer ): void {.stdcall.}](vkGetProc("vkCmdPushConstants")) - vkCmdBeginRenderPass = cast[proc(commandBuffer: VkCommandBuffer, pRenderPassBegin: ptr VkRenderPassBeginInfo , contents: VkSubpassContents): void {.stdcall.}](vkGetProc("vkCmdBeginRenderPass")) - vkCmdNextSubpass = cast[proc(commandBuffer: VkCommandBuffer, contents: VkSubpassContents): void {.stdcall.}](vkGetProc("vkCmdNextSubpass")) - vkCmdEndRenderPass = cast[proc(commandBuffer: VkCommandBuffer): void {.stdcall.}](vkGetProc("vkCmdEndRenderPass")) - vkCmdExecuteCommands = cast[proc(commandBuffer: VkCommandBuffer, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer ): void {.stdcall.}](vkGetProc("vkCmdExecuteCommands")) + vkDestroyInstance = cast[proc (instance: VkInstanc, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyInstance")) + vkEnumeratePhysicalDevices = cast[proc (instance: VkInstanc, pPhysicalDeviceCount: ptr uint32, pPhysicalDevices: ptr VkPhysicalDevice): VkResult {.stdcall.}](vkGetProc("vkEnumeratePhysicalDevices")) + vkGetPhysicalDeviceFeatures = cast[proc (physicalDevice: VkPhysicalDevic, pFeatures: ptr VkPhysicalDeviceFeatures): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFeatures")) + vkGetPhysicalDeviceFormatProperties = cast[proc (physicalDevice: VkPhysicalDevic, format: VkForma, pFormatProperties: ptr VkFormatProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFormatProperties")) + vkGetPhysicalDeviceImageFormatProperties = cast[proc (physicalDevice: VkPhysicalDevic, format: VkForma, `type`: VkImageTyp, tiling: VkImageTilin, usage: VkImageUsageFlag, flags: VkImageCreateFlag, pImageFormatProperties: ptr VkImageFormatProperties): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceImageFormatProperties")) + vkGetPhysicalDeviceProperties = cast[proc (physicalDevice: VkPhysicalDevic, pProperties: ptr VkPhysicalDeviceProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceProperties")) + vkGetPhysicalDeviceQueueFamilyProperties = cast[proc (physicalDevice: VkPhysicalDevic, pQueueFamilyPropertyCount: ptr uint32, pQueueFamilyProperties: ptr VkQueueFamilyProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceQueueFamilyProperties")) + vkGetPhysicalDeviceMemoryProperties = cast[proc (physicalDevice: VkPhysicalDevic, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceMemoryProperties")) + vkGetInstanceProcAddr = cast[proc (instance: VkInstanc, pName: cstring): PFN_vkVoidFunction {.stdcall.}](vkGetProc("vkGetInstanceProcAddr")) + vkGetDeviceProcAddr = cast[proc (device: VkDevic, pName: cstring): PFN_vkVoidFunction {.stdcall.}](vkGetProc("vkGetDeviceProcAddr")) + vkCreateDevice = cast[proc (physicalDevice: VkPhysicalDevic, pCreateInfo: ptr VkDeviceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDevice: ptr VkDevice): VkResult {.stdcall.}](vkGetProc("vkCreateDevice")) + vkCreateDevice = cast[proc (physicalDevice: VkPhysicalDevic, pCreateInfo: ptr VkDeviceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDevice: ptr VkDevice): VkResult {.stdcall.}](vkGetProc("vkCreateDevice")) + vkDestroyDevice = cast[proc (device: VkDevic, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDevice")) + vkEnumerateDeviceExtensionProperties = cast[proc (physicalDevice: VkPhysicalDevic, pLayerName: cstring, pPropertyCount: ptr uint32, pProperties: ptr VkExtensionProperties): VkResult {.stdcall.}](vkGetProc("vkEnumerateDeviceExtensionProperties")) + vkEnumerateDeviceLayerProperties = cast[proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkLayerProperties): VkResult {.stdcall.}](vkGetProc("vkEnumerateDeviceLayerProperties")) + vkEnumerateDeviceLayerProperties = cast[proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkLayerProperties): VkResult {.stdcall.}](vkGetProc("vkEnumerateDeviceLayerProperties")) + vkGetDeviceQueue = cast[proc (device: VkDevic, queueFamilyIndex: uint32_, queueIndex: uint32_, pQueue: ptr VkQueue): void {.stdcall.}](vkGetProc("vkGetDeviceQueue")) + vkQueueSubmit = cast[proc (queue: VkQueu, submitCount: uint32_, pSubmits: ptr VkSubmitInfo, fence: VkFenc): VkResult {.stdcall.}](vkGetProc("vkQueueSubmit")) + vkQueueWaitIdle = cast[proc (queue: VkQueu): VkResult {.stdcall.}](vkGetProc("vkQueueWaitIdle")) + vkDeviceWaitIdle = cast[proc (device: VkDevic): VkResult {.stdcall.}](vkGetProc("vkDeviceWaitIdle")) + vkAllocateMemory = cast[proc (device: VkDevic, pAllocateInfo: ptr VkMemoryAllocateInfo, pAllocator: ptr VkAllocationCallbacks, pMemory: ptr VkDeviceMemory): VkResult {.stdcall.}](vkGetProc("vkAllocateMemory")) + vkFreeMemory = cast[proc (device: VkDevic, memory: VkDeviceMemor, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkFreeMemory")) + vkMapMemory = cast[proc (device: VkDevic, memory: VkDeviceMemor, offset: VkDeviceSiz, size: VkDeviceSiz, flags: VkMemoryMapFlag, ppData: ptr pointer): VkResult {.stdcall.}](vkGetProc("vkMapMemory")) + vkUnmapMemory = cast[proc (device: VkDevic, memory: VkDeviceMemor): void {.stdcall.}](vkGetProc("vkUnmapMemory")) + vkFlushMappedMemoryRanges = cast[proc (device: VkDevic, memoryRangeCount: uint32_, pMemoryRanges: ptr VkMappedMemoryRange): VkResult {.stdcall.}](vkGetProc("vkFlushMappedMemoryRanges")) + vkInvalidateMappedMemoryRanges = cast[proc (device: VkDevic, memoryRangeCount: uint32_, pMemoryRanges: ptr VkMappedMemoryRange): VkResult {.stdcall.}](vkGetProc("vkInvalidateMappedMemoryRanges")) + vkGetDeviceMemoryCommitment = cast[proc (device: VkDevic, memory: VkDeviceMemor, pCommittedMemoryInBytes: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkGetDeviceMemoryCommitment")) + vkBindBufferMemory = cast[proc (device: VkDevic, buffer: VkBuffe, memory: VkDeviceMemor, memoryOffset: VkDeviceSiz): VkResult {.stdcall.}](vkGetProc("vkBindBufferMemory")) + vkBindImageMemory = cast[proc (device: VkDevic, image: VkImag, memory: VkDeviceMemor, memoryOffset: VkDeviceSiz): VkResult {.stdcall.}](vkGetProc("vkBindImageMemory")) + vkGetBufferMemoryRequirements = cast[proc (device: VkDevic, buffer: VkBuffe, pMemoryRequirements: ptr VkMemoryRequirements): void {.stdcall.}](vkGetProc("vkGetBufferMemoryRequirements")) + vkGetImageMemoryRequirements = cast[proc (device: VkDevic, image: VkImag, pMemoryRequirements: ptr VkMemoryRequirements): void {.stdcall.}](vkGetProc("vkGetImageMemoryRequirements")) + vkGetImageSparseMemoryRequirements = cast[proc (device: VkDevic, image: VkImag, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements): void {.stdcall.}](vkGetProc("vkGetImageSparseMemoryRequirements")) + vkGetPhysicalDeviceSparseImageFormatProperties = cast[proc (physicalDevice: VkPhysicalDevic, format: VkForma, `type`: VkImageTyp, samples: VkSampleCountFlagBit, usage: VkImageUsageFlag, tiling: VkImageTilin, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSparseImageFormatProperties")) + vkQueueBindSparse = cast[proc (queue: VkQueu, bindInfoCount: uint32_, pBindInfo: ptr VkBindSparseInfo, fence: VkFenc): VkResult {.stdcall.}](vkGetProc("vkQueueBindSparse")) + vkCreateFence = cast[proc (device: VkDevic, pCreateInfo: ptr VkFenceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pFence: ptr VkFence): VkResult {.stdcall.}](vkGetProc("vkCreateFence")) + vkDestroyFence = cast[proc (device: VkDevic, fence: VkFenc, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyFence")) + vkResetFences = cast[proc (device: VkDevic, fenceCount: uint32_, pFences: ptr VkFence): VkResult {.stdcall.}](vkGetProc("vkResetFences")) + vkGetFenceStatus = cast[proc (device: VkDevic, fence: VkFenc): VkResult {.stdcall.}](vkGetProc("vkGetFenceStatus")) + vkWaitForFences = cast[proc (device: VkDevic, fenceCount: uint32_, pFences: ptr VkFence, waitAll: VkBool3, timeout: uint64_): VkResult {.stdcall.}](vkGetProc("vkWaitForFences")) + vkCreateSemaphore = cast[proc (device: VkDevic, pCreateInfo: ptr VkSemaphoreCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSemaphore: ptr VkSemaphore): VkResult {.stdcall.}](vkGetProc("vkCreateSemaphore")) + vkDestroySemaphore = cast[proc (device: VkDevic, semaphore: VkSemaphor, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySemaphore")) + vkCreateEvent = cast[proc (device: VkDevic, pCreateInfo: ptr VkEventCreateInfo, pAllocator: ptr VkAllocationCallbacks, pEvent: ptr VkEvent): VkResult {.stdcall.}](vkGetProc("vkCreateEvent")) + vkDestroyEvent = cast[proc (device: VkDevic, event: VkEven, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyEvent")) + vkGetEventStatus = cast[proc (device: VkDevic, event: VkEven): VkResult {.stdcall.}](vkGetProc("vkGetEventStatus")) + vkSetEvent = cast[proc (device: VkDevic, event: VkEven): VkResult {.stdcall.}](vkGetProc("vkSetEvent")) + vkResetEvent = cast[proc (device: VkDevic, event: VkEven): VkResult {.stdcall.}](vkGetProc("vkResetEvent")) + vkCreateQueryPool = cast[proc (device: VkDevic, pCreateInfo: ptr VkQueryPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pQueryPool: ptr VkQueryPool): VkResult {.stdcall.}](vkGetProc("vkCreateQueryPool")) + vkDestroyQueryPool = cast[proc (device: VkDevic, queryPool: VkQueryPoo, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyQueryPool")) + vkGetQueryPoolResults = cast[proc (device: VkDevic, queryPool: VkQueryPoo, firstQuery: uint32_, queryCount: uint32_, dataSize: size_, pData: pointer, stride: VkDeviceSiz, flags: VkQueryResultFlag): VkResult {.stdcall.}](vkGetProc("vkGetQueryPoolResults")) + vkCreateBuffer = cast[proc (device: VkDevic, pCreateInfo: ptr VkBufferCreateInfo, pAllocator: ptr VkAllocationCallbacks, pBuffer: ptr VkBuffer): VkResult {.stdcall.}](vkGetProc("vkCreateBuffer")) + vkDestroyBuffer = cast[proc (device: VkDevic, buffer: VkBuffe, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyBuffer")) + vkCreateBufferView = cast[proc (device: VkDevic, pCreateInfo: ptr VkBufferViewCreateInfo, pAllocator: ptr VkAllocationCallbacks, pView: ptr VkBufferView): VkResult {.stdcall.}](vkGetProc("vkCreateBufferView")) + vkDestroyBufferView = cast[proc (device: VkDevic, bufferView: VkBufferVie, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyBufferView")) + vkCreateImage = cast[proc (device: VkDevic, pCreateInfo: ptr VkImageCreateInfo, pAllocator: ptr VkAllocationCallbacks, pImage: ptr VkImage): VkResult {.stdcall.}](vkGetProc("vkCreateImage")) + vkDestroyImage = cast[proc (device: VkDevic, image: VkImag, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyImage")) + vkGetImageSubresourceLayout = cast[proc (device: VkDevic, image: VkImag, pSubresource: ptr VkImageSubresource, pLayout: ptr VkSubresourceLayout): void {.stdcall.}](vkGetProc("vkGetImageSubresourceLayout")) + vkCreateImageView = cast[proc (device: VkDevic, pCreateInfo: ptr VkImageViewCreateInfo, pAllocator: ptr VkAllocationCallbacks, pView: ptr VkImageView): VkResult {.stdcall.}](vkGetProc("vkCreateImageView")) + vkDestroyImageView = cast[proc (device: VkDevic, imageView: VkImageVie, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyImageView")) + vkCreateShaderModule = cast[proc (device: VkDevic, pCreateInfo: ptr VkShaderModuleCreateInfo, pAllocator: ptr VkAllocationCallbacks, pShaderModule: ptr VkShaderModule): VkResult {.stdcall.}](vkGetProc("vkCreateShaderModule")) + vkDestroyShaderModule = cast[proc (device: VkDevic, shaderModule: VkShaderModul, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyShaderModule")) + vkCreatePipelineCache = cast[proc (device: VkDevic, pCreateInfo: ptr VkPipelineCacheCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineCache: ptr VkPipelineCache): VkResult {.stdcall.}](vkGetProc("vkCreatePipelineCache")) + vkCreatePipelineCache = cast[proc (device: VkDevic, pCreateInfo: ptr VkPipelineCacheCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineCache: ptr VkPipelineCache): VkResult {.stdcall.}](vkGetProc("vkCreatePipelineCache")) + vkDestroyPipelineCache = cast[proc (device: VkDevic, pipelineCache: VkPipelineCach, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyPipelineCache")) + vkGetPipelineCacheData = cast[proc (device: VkDevic, pipelineCache: VkPipelineCach, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetPipelineCacheData")) + vkMergePipelineCaches = cast[proc (device: VkDevic, dstCache: VkPipelineCach, srcCacheCount: uint32_, pSrcCaches: ptr VkPipelineCache): VkResult {.stdcall.}](vkGetProc("vkMergePipelineCaches")) + vkCreateGraphicsPipelines = cast[proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkGraphicsPipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateGraphicsPipelines")) + vkCreateGraphicsPipelines = cast[proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkGraphicsPipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateGraphicsPipelines")) + vkCreateComputePipelines = cast[proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkComputePipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateComputePipelines")) + vkCreateComputePipelines = cast[proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkComputePipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateComputePipelines")) + vkDestroyPipeline = cast[proc (device: VkDevic, pipeline: VkPipelin, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyPipeline")) + vkCreatePipelineLayout = cast[proc (device: VkDevic, pCreateInfo: ptr VkPipelineLayoutCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineLayout: ptr VkPipelineLayout): VkResult {.stdcall.}](vkGetProc("vkCreatePipelineLayout")) + vkDestroyPipelineLayout = cast[proc (device: VkDevic, pipelineLayout: VkPipelineLayou, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyPipelineLayout")) + vkCreateSampler = cast[proc (device: VkDevic, pCreateInfo: ptr VkSamplerCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSampler: ptr VkSampler): VkResult {.stdcall.}](vkGetProc("vkCreateSampler")) + vkDestroySampler = cast[proc (device: VkDevic, sampler: VkSample, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySampler")) + vkCreateDescriptorSetLayout = cast[proc (device: VkDevic, pCreateInfo: ptr VkDescriptorSetLayoutCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSetLayout: ptr VkDescriptorSetLayout): VkResult {.stdcall.}](vkGetProc("vkCreateDescriptorSetLayout")) + vkDestroyDescriptorSetLayout = cast[proc (device: VkDevic, descriptorSetLayout: VkDescriptorSetLayou, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDescriptorSetLayout")) + vkCreateDescriptorPool = cast[proc (device: VkDevic, pCreateInfo: ptr VkDescriptorPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDescriptorPool: ptr VkDescriptorPool): VkResult {.stdcall.}](vkGetProc("vkCreateDescriptorPool")) + vkDestroyDescriptorPool = cast[proc (device: VkDevic, descriptorPool: VkDescriptorPoo, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDescriptorPool")) + vkResetDescriptorPool = cast[proc (device: VkDevic, descriptorPool: VkDescriptorPoo, flags: VkDescriptorPoolResetFlag): VkResult {.stdcall.}](vkGetProc("vkResetDescriptorPool")) + vkAllocateDescriptorSets = cast[proc (device: VkDevic, pAllocateInfo: ptr VkDescriptorSetAllocateInfo, pDescriptorSets: ptr VkDescriptorSet): VkResult {.stdcall.}](vkGetProc("vkAllocateDescriptorSets")) + vkFreeDescriptorSets = cast[proc (device: VkDevic, descriptorPool: VkDescriptorPoo, descriptorSetCount: uint32_, pDescriptorSets: ptr VkDescriptorSet): VkResult {.stdcall.}](vkGetProc("vkFreeDescriptorSets")) + vkUpdateDescriptorSets = cast[proc (device: VkDevic, descriptorWriteCount: uint32_, pDescriptorWrites: ptr VkWriteDescriptorSet, descriptorCopyCount: uint32_, pDescriptorCopies: ptr VkCopyDescriptorSet): void {.stdcall.}](vkGetProc("vkUpdateDescriptorSets")) + vkCreateFramebuffer = cast[proc (device: VkDevic, pCreateInfo: ptr VkFramebufferCreateInfo, pAllocator: ptr VkAllocationCallbacks, pFramebuffer: ptr VkFramebuffer): VkResult {.stdcall.}](vkGetProc("vkCreateFramebuffer")) + vkDestroyFramebuffer = cast[proc (device: VkDevic, framebuffer: VkFramebuffe, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyFramebuffer")) + vkCreateRenderPass = cast[proc (device: VkDevic, pCreateInfo: ptr VkRenderPassCreateInfo, pAllocator: ptr VkAllocationCallbacks, pRenderPass: ptr VkRenderPass): VkResult {.stdcall.}](vkGetProc("vkCreateRenderPass")) + vkDestroyRenderPass = cast[proc (device: VkDevic, renderPass: VkRenderPas, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyRenderPass")) + vkGetRenderAreaGranularity = cast[proc (device: VkDevic, renderPass: VkRenderPas, pGranularity: ptr VkExtent2D): void {.stdcall.}](vkGetProc("vkGetRenderAreaGranularity")) + vkCreateCommandPool = cast[proc (device: VkDevic, pCreateInfo: ptr VkCommandPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pCommandPool: ptr VkCommandPool): VkResult {.stdcall.}](vkGetProc("vkCreateCommandPool")) + vkDestroyCommandPool = cast[proc (device: VkDevic, commandPool: VkCommandPoo, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyCommandPool")) + vkResetCommandPool = cast[proc (device: VkDevic, commandPool: VkCommandPoo, flags: VkCommandPoolResetFlag): VkResult {.stdcall.}](vkGetProc("vkResetCommandPool")) + vkAllocateCommandBuffers = cast[proc (device: VkDevic, pAllocateInfo: ptr VkCommandBufferAllocateInfo, pCommandBuffers: ptr VkCommandBuffer): VkResult {.stdcall.}](vkGetProc("vkAllocateCommandBuffers")) + vkFreeCommandBuffers = cast[proc (device: VkDevic, commandPool: VkCommandPoo, commandBufferCount: uint32_, pCommandBuffers: ptr VkCommandBuffer): void {.stdcall.}](vkGetProc("vkFreeCommandBuffers")) + vkBeginCommandBuffer = cast[proc (commandBuffer: VkCommandBuffe, pBeginInfo: ptr VkCommandBufferBeginInfo): VkResult {.stdcall.}](vkGetProc("vkBeginCommandBuffer")) + vkEndCommandBuffer = cast[proc (commandBuffer: VkCommandBuffe): VkResult {.stdcall.}](vkGetProc("vkEndCommandBuffer")) + vkResetCommandBuffer = cast[proc (commandBuffer: VkCommandBuffe, flags: VkCommandBufferResetFlag): VkResult {.stdcall.}](vkGetProc("vkResetCommandBuffer")) + vkCmdBindPipeline = cast[proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, pipeline: VkPipelin): void {.stdcall.}](vkGetProc("vkCmdBindPipeline")) + vkCmdSetViewport = cast[proc (commandBuffer: VkCommandBuffe, firstViewport: uint32_, viewportCount: uint32_, pViewports: ptr VkViewport): void {.stdcall.}](vkGetProc("vkCmdSetViewport")) + vkCmdSetScissor = cast[proc (commandBuffer: VkCommandBuffe, firstScissor: uint32_, scissorCount: uint32_, pScissors: ptr VkRect2D): void {.stdcall.}](vkGetProc("vkCmdSetScissor")) + vkCmdSetLineWidth = cast[proc (commandBuffer: VkCommandBuffe, lineWidth: floa): void {.stdcall.}](vkGetProc("vkCmdSetLineWidth")) + vkCmdSetDepthBias = cast[proc (commandBuffer: VkCommandBuffe, depthBiasConstantFactor: floa, depthBiasClamp: floa, depthBiasSlopeFactor: floa): void {.stdcall.}](vkGetProc("vkCmdSetDepthBias")) + vkCmdSetBlendConstants = cast[proc (commandBuffer: VkCommandBuffe, blendConstants: array[4, float3]): void {.stdcall.}](vkGetProc("vkCmdSetBlendConstants")) + vkCmdSetDepthBounds = cast[proc (commandBuffer: VkCommandBuffe, minDepthBounds: floa, maxDepthBounds: floa): void {.stdcall.}](vkGetProc("vkCmdSetDepthBounds")) + vkCmdSetStencilCompareMask = cast[proc (commandBuffer: VkCommandBuffe, faceMask: VkStencilFaceFlag, compareMask: uint32_): void {.stdcall.}](vkGetProc("vkCmdSetStencilCompareMask")) + vkCmdSetStencilWriteMask = cast[proc (commandBuffer: VkCommandBuffe, faceMask: VkStencilFaceFlag, writeMask: uint32_): void {.stdcall.}](vkGetProc("vkCmdSetStencilWriteMask")) + vkCmdSetStencilReference = cast[proc (commandBuffer: VkCommandBuffe, faceMask: VkStencilFaceFlag, reference: uint32_): void {.stdcall.}](vkGetProc("vkCmdSetStencilReference")) + vkCmdBindDescriptorSets = cast[proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, layout: VkPipelineLayou, firstSet: uint32_, descriptorSetCount: uint32_, pDescriptorSets: ptr VkDescriptorSet, dynamicOffsetCount: uint32_, pDynamicOffsets: ptr uint32): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorSets")) + vkCmdBindIndexBuffer = cast[proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, indexType: VkIndexTyp): void {.stdcall.}](vkGetProc("vkCmdBindIndexBuffer")) + vkCmdBindVertexBuffers = cast[proc (commandBuffer: VkCommandBuffe, firstBinding: uint32_, bindingCount: uint32_, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdBindVertexBuffers")) + vkCmdDraw = cast[proc (commandBuffer: VkCommandBuffe, vertexCount: uint32_, instanceCount: uint32_, firstVertex: uint32_, firstInstance: uint32_): void {.stdcall.}](vkGetProc("vkCmdDraw")) + vkCmdDrawIndexed = cast[proc (commandBuffer: VkCommandBuffe, indexCount: uint32_, instanceCount: uint32_, firstIndex: uint32_, vertexOffset: int32_, firstInstance: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawIndexed")) + vkCmdDrawIndirect = cast[proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, drawCount: uint32_, stride: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawIndirect")) + vkCmdDrawIndexedIndirect = cast[proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, drawCount: uint32_, stride: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawIndexedIndirect")) + vkCmdDispatch = cast[proc (commandBuffer: VkCommandBuffe, groupCountX: uint32_, groupCountY: uint32_, groupCountZ: uint32_): void {.stdcall.}](vkGetProc("vkCmdDispatch")) + vkCmdDispatchIndirect = cast[proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz): void {.stdcall.}](vkGetProc("vkCmdDispatchIndirect")) + vkCmdCopyBuffer = cast[proc (commandBuffer: VkCommandBuffe, srcBuffer: VkBuffe, dstBuffer: VkBuffe, regionCount: uint32_, pRegions: ptr VkBufferCopy): void {.stdcall.}](vkGetProc("vkCmdCopyBuffer")) + vkCmdCopyImage = cast[proc (commandBuffer: VkCommandBuffe, srcImage: VkImag, srcImageLayout: VkImageLayou, dstImage: VkImag, dstImageLayout: VkImageLayou, regionCount: uint32_, pRegions: ptr VkImageCopy): void {.stdcall.}](vkGetProc("vkCmdCopyImage")) + vkCmdBlitImage = cast[proc (commandBuffer: VkCommandBuffe, srcImage: VkImag, srcImageLayout: VkImageLayou, dstImage: VkImag, dstImageLayout: VkImageLayou, regionCount: uint32_, pRegions: ptr VkImageBlit, filter: VkFilte): void {.stdcall.}](vkGetProc("vkCmdBlitImage")) + vkCmdCopyBufferToImage = cast[proc (commandBuffer: VkCommandBuffe, srcBuffer: VkBuffe, dstImage: VkImag, dstImageLayout: VkImageLayou, regionCount: uint32_, pRegions: ptr VkBufferImageCopy): void {.stdcall.}](vkGetProc("vkCmdCopyBufferToImage")) + vkCmdCopyImageToBuffer = cast[proc (commandBuffer: VkCommandBuffe, srcImage: VkImag, srcImageLayout: VkImageLayou, dstBuffer: VkBuffe, regionCount: uint32_, pRegions: ptr VkBufferImageCopy): void {.stdcall.}](vkGetProc("vkCmdCopyImageToBuffer")) + vkCmdUpdateBuffer = cast[proc (commandBuffer: VkCommandBuffe, dstBuffer: VkBuffe, dstOffset: VkDeviceSiz, dataSize: VkDeviceSiz, pData: pointer): void {.stdcall.}](vkGetProc("vkCmdUpdateBuffer")) + vkCmdFillBuffer = cast[proc (commandBuffer: VkCommandBuffe, dstBuffer: VkBuffe, dstOffset: VkDeviceSiz, size: VkDeviceSiz, data: uint32_): void {.stdcall.}](vkGetProc("vkCmdFillBuffer")) + vkCmdClearColorImage = cast[proc (commandBuffer: VkCommandBuffe, image: VkImag, imageLayout: VkImageLayou, pColor: ptr VkClearColorValue, rangeCount: uint32_, pRanges: ptr VkImageSubresourceRange): void {.stdcall.}](vkGetProc("vkCmdClearColorImage")) + vkCmdClearDepthStencilImage = cast[proc (commandBuffer: VkCommandBuffe, image: VkImag, imageLayout: VkImageLayou, pDepthStencil: ptr VkClearDepthStencilValue, rangeCount: uint32_, pRanges: ptr VkImageSubresourceRange): void {.stdcall.}](vkGetProc("vkCmdClearDepthStencilImage")) + vkCmdClearAttachments = cast[proc (commandBuffer: VkCommandBuffe, attachmentCount: uint32_, pAttachments: ptr VkClearAttachment, rectCount: uint32_, pRects: ptr VkClearRect): void {.stdcall.}](vkGetProc("vkCmdClearAttachments")) + vkCmdResolveImage = cast[proc (commandBuffer: VkCommandBuffe, srcImage: VkImag, srcImageLayout: VkImageLayou, dstImage: VkImag, dstImageLayout: VkImageLayou, regionCount: uint32_, pRegions: ptr VkImageResolve): void {.stdcall.}](vkGetProc("vkCmdResolveImage")) + vkCmdSetEvent = cast[proc (commandBuffer: VkCommandBuffe, event: VkEven, stageMask: VkPipelineStageFlag): void {.stdcall.}](vkGetProc("vkCmdSetEvent")) + vkCmdResetEvent = cast[proc (commandBuffer: VkCommandBuffe, event: VkEven, stageMask: VkPipelineStageFlag): void {.stdcall.}](vkGetProc("vkCmdResetEvent")) + vkCmdWaitEvents = cast[proc (commandBuffer: VkCommandBuffe, eventCount: uint32_, pEvents: ptr VkEvent, srcStageMask: VkPipelineStageFlag, dstStageMask: VkPipelineStageFlag, memoryBarrierCount: uint32_, pMemoryBarriers: ptr VkMemoryBarrier, bufferMemoryBarrierCount: uint32_, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier, imageMemoryBarrierCount: uint32_, pImageMemoryBarriers: ptr VkImageMemoryBarrier): void {.stdcall.}](vkGetProc("vkCmdWaitEvents")) + vkCmdPipelineBarrier = cast[proc (commandBuffer: VkCommandBuffe, srcStageMask: VkPipelineStageFlag, dstStageMask: VkPipelineStageFlag, dependencyFlags: VkDependencyFlag, memoryBarrierCount: uint32_, pMemoryBarriers: ptr VkMemoryBarrier, bufferMemoryBarrierCount: uint32_, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier, imageMemoryBarrierCount: uint32_, pImageMemoryBarriers: ptr VkImageMemoryBarrier): void {.stdcall.}](vkGetProc("vkCmdPipelineBarrier")) + vkCmdBeginQuery = cast[proc (commandBuffer: VkCommandBuffe, queryPool: VkQueryPoo, query: uint32_, flags: VkQueryControlFlag): void {.stdcall.}](vkGetProc("vkCmdBeginQuery")) + vkCmdEndQuery = cast[proc (commandBuffer: VkCommandBuffe, queryPool: VkQueryPoo, query: uint32_): void {.stdcall.}](vkGetProc("vkCmdEndQuery")) + vkCmdResetQueryPool = cast[proc (commandBuffer: VkCommandBuffe, queryPool: VkQueryPoo, firstQuery: uint32_, queryCount: uint32_): void {.stdcall.}](vkGetProc("vkCmdResetQueryPool")) + vkCmdWriteTimestamp = cast[proc (commandBuffer: VkCommandBuffe, pipelineStage: VkPipelineStageFlagBit, queryPool: VkQueryPoo, query: uint32_): void {.stdcall.}](vkGetProc("vkCmdWriteTimestamp")) + vkCmdCopyQueryPoolResults = cast[proc (commandBuffer: VkCommandBuffe, queryPool: VkQueryPoo, firstQuery: uint32_, queryCount: uint32_, dstBuffer: VkBuffe, dstOffset: VkDeviceSiz, stride: VkDeviceSiz, flags: VkQueryResultFlag): void {.stdcall.}](vkGetProc("vkCmdCopyQueryPoolResults")) + vkCmdPushConstants = cast[proc (commandBuffer: VkCommandBuffe, layout: VkPipelineLayou, stageFlags: VkShaderStageFlag, offset: uint32_, size: uint32_, pValues: pointer): void {.stdcall.}](vkGetProc("vkCmdPushConstants")) + vkCmdBeginRenderPass = cast[proc (commandBuffer: VkCommandBuffe, pRenderPassBegin: ptr VkRenderPassBeginInfo, contents: VkSubpassContent): void {.stdcall.}](vkGetProc("vkCmdBeginRenderPass")) + vkCmdNextSubpass = cast[proc (commandBuffer: VkCommandBuffe, contents: VkSubpassContent): void {.stdcall.}](vkGetProc("vkCmdNextSubpass")) + vkCmdEndRenderPass = cast[proc (commandBuffer: VkCommandBuffe): void {.stdcall.}](vkGetProc("vkCmdEndRenderPass")) + vkCmdExecuteCommands = cast[proc (commandBuffer: VkCommandBuffe, commandBufferCount: uint32_, pCommandBuffers: ptr VkCommandBuffer): void {.stdcall.}](vkGetProc("vkCmdExecuteCommands")) # Vulkan 1_1 proc vkLoad1_1*() = - vkBindBufferMemory2 = cast[proc(device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindBufferMemoryInfo ): VkResult {.stdcall.}](vkGetProc("vkBindBufferMemory2")) - vkBindImageMemory2 = cast[proc(device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindImageMemoryInfo ): VkResult {.stdcall.}](vkGetProc("vkBindImageMemory2")) - vkGetDeviceGroupPeerMemoryFeatures = cast[proc(device: VkDevice, heapIndex: uint32, localDeviceIndex: uint32, remoteDeviceIndex: uint32, pPeerMemoryFeatures: ptr VkPeerMemoryFeatureFlags ): void {.stdcall.}](vkGetProc("vkGetDeviceGroupPeerMemoryFeatures")) - vkCmdSetDeviceMask = cast[proc(commandBuffer: VkCommandBuffer, deviceMask: uint32): void {.stdcall.}](vkGetProc("vkCmdSetDeviceMask")) - vkCmdDispatchBase = cast[proc(commandBuffer: VkCommandBuffer, baseGroupX: uint32, baseGroupY: uint32, baseGroupZ: uint32, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.}](vkGetProc("vkCmdDispatchBase")) - vkEnumeratePhysicalDeviceGroups = cast[proc(instance: VkInstance, pPhysicalDeviceGroupCount: ptr uint32 , pPhysicalDeviceGroupProperties: ptr VkPhysicalDeviceGroupProperties ): VkResult {.stdcall.}](vkGetProc("vkEnumeratePhysicalDeviceGroups")) - vkGetImageMemoryRequirements2 = cast[proc(device: VkDevice, pInfo: ptr VkImageMemoryRequirementsInfo2 , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.stdcall.}](vkGetProc("vkGetImageMemoryRequirements2")) - vkGetBufferMemoryRequirements2 = cast[proc(device: VkDevice, pInfo: ptr VkBufferMemoryRequirementsInfo2 , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.stdcall.}](vkGetProc("vkGetBufferMemoryRequirements2")) - vkGetImageSparseMemoryRequirements2 = cast[proc(device: VkDevice, pInfo: ptr VkImageSparseMemoryRequirementsInfo2 , pSparseMemoryRequirementCount: ptr uint32 , pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2 ): void {.stdcall.}](vkGetProc("vkGetImageSparseMemoryRequirements2")) - vkGetPhysicalDeviceFeatures2 = cast[proc(physicalDevice: VkPhysicalDevice, pFeatures: ptr VkPhysicalDeviceFeatures2 ): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFeatures2")) - vkGetPhysicalDeviceProperties2 = cast[proc(physicalDevice: VkPhysicalDevice, pProperties: ptr VkPhysicalDeviceProperties2 ): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceProperties2")) - vkGetPhysicalDeviceFormatProperties2 = cast[proc(physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: ptr VkFormatProperties2 ): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFormatProperties2")) - vkGetPhysicalDeviceImageFormatProperties2 = cast[proc(physicalDevice: VkPhysicalDevice, pImageFormatInfo: ptr VkPhysicalDeviceImageFormatInfo2 , pImageFormatProperties: ptr VkImageFormatProperties2 ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceImageFormatProperties2")) - vkGetPhysicalDeviceQueueFamilyProperties2 = cast[proc(physicalDevice: VkPhysicalDevice, pQueueFamilyPropertyCount: ptr uint32 , pQueueFamilyProperties: ptr VkQueueFamilyProperties2 ): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceQueueFamilyProperties2")) - vkGetPhysicalDeviceMemoryProperties2 = cast[proc(physicalDevice: VkPhysicalDevice, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties2 ): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceMemoryProperties2")) - vkGetPhysicalDeviceSparseImageFormatProperties2 = cast[proc(physicalDevice: VkPhysicalDevice, pFormatInfo: ptr VkPhysicalDeviceSparseImageFormatInfo2 , pPropertyCount: ptr uint32 , pProperties: ptr VkSparseImageFormatProperties2 ): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSparseImageFormatProperties2")) - vkTrimCommandPool = cast[proc(device: VkDevice, commandPool: VkCommandPool, flags: VkCommandPoolTrimFlags): void {.stdcall.}](vkGetProc("vkTrimCommandPool")) - vkGetDeviceQueue2 = cast[proc(device: VkDevice, pQueueInfo: ptr VkDeviceQueueInfo2 , pQueue: ptr VkQueue ): void {.stdcall.}](vkGetProc("vkGetDeviceQueue2")) - vkCreateSamplerYcbcrConversion = cast[proc(device: VkDevice, pCreateInfo: ptr VkSamplerYcbcrConversionCreateInfo , pAllocator: ptr VkAllocationCallbacks , pYcbcrConversion: ptr VkSamplerYcbcrConversion ): VkResult {.stdcall.}](vkGetProc("vkCreateSamplerYcbcrConversion")) - vkDestroySamplerYcbcrConversion = cast[proc(device: VkDevice, ycbcrConversion: VkSamplerYcbcrConversion, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroySamplerYcbcrConversion")) - vkCreateDescriptorUpdateTemplate = cast[proc(device: VkDevice, pCreateInfo: ptr VkDescriptorUpdateTemplateCreateInfo , pAllocator: ptr VkAllocationCallbacks , pDescriptorUpdateTemplate: ptr VkDescriptorUpdateTemplate ): VkResult {.stdcall.}](vkGetProc("vkCreateDescriptorUpdateTemplate")) - vkDestroyDescriptorUpdateTemplate = cast[proc(device: VkDevice, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyDescriptorUpdateTemplate")) - vkUpdateDescriptorSetWithTemplate = cast[proc(device: VkDevice, descriptorSet: VkDescriptorSet, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pData: pointer ): void {.stdcall.}](vkGetProc("vkUpdateDescriptorSetWithTemplate")) - vkGetPhysicalDeviceExternalBufferProperties = cast[proc(physicalDevice: VkPhysicalDevice, pExternalBufferInfo: ptr VkPhysicalDeviceExternalBufferInfo , pExternalBufferProperties: ptr VkExternalBufferProperties ): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalBufferProperties")) - vkGetPhysicalDeviceExternalFenceProperties = cast[proc(physicalDevice: VkPhysicalDevice, pExternalFenceInfo: ptr VkPhysicalDeviceExternalFenceInfo , pExternalFenceProperties: ptr VkExternalFenceProperties ): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalFenceProperties")) - vkGetPhysicalDeviceExternalSemaphoreProperties = cast[proc(physicalDevice: VkPhysicalDevice, pExternalSemaphoreInfo: ptr VkPhysicalDeviceExternalSemaphoreInfo , pExternalSemaphoreProperties: ptr VkExternalSemaphoreProperties ): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalSemaphoreProperties")) - vkGetDescriptorSetLayoutSupport = cast[proc(device: VkDevice, pCreateInfo: ptr VkDescriptorSetLayoutCreateInfo , pSupport: ptr VkDescriptorSetLayoutSupport ): void {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutSupport")) + vkBindBufferMemory2 = cast[proc (device: VkDevic, bindInfoCount: uint32_, pBindInfos: ptr VkBindBufferMemoryInfo): VkResult {.stdcall.}](vkGetProc("vkBindBufferMemory2")) + vkBindImageMemory2 = cast[proc (device: VkDevic, bindInfoCount: uint32_, pBindInfos: ptr VkBindImageMemoryInfo): VkResult {.stdcall.}](vkGetProc("vkBindImageMemory2")) + vkGetDeviceGroupPeerMemoryFeatures = cast[proc (device: VkDevic, heapIndex: uint32_, localDeviceIndex: uint32_, remoteDeviceIndex: uint32_, pPeerMemoryFeatures: ptr VkPeerMemoryFeatureFlags): void {.stdcall.}](vkGetProc("vkGetDeviceGroupPeerMemoryFeatures")) + vkCmdSetDeviceMask = cast[proc (commandBuffer: VkCommandBuffe, deviceMask: uint32_): void {.stdcall.}](vkGetProc("vkCmdSetDeviceMask")) + vkCmdDispatchBase = cast[proc (commandBuffer: VkCommandBuffe, baseGroupX: uint32_, baseGroupY: uint32_, baseGroupZ: uint32_, groupCountX: uint32_, groupCountY: uint32_, groupCountZ: uint32_): void {.stdcall.}](vkGetProc("vkCmdDispatchBase")) + vkEnumeratePhysicalDeviceGroups = cast[proc (instance: VkInstanc, pPhysicalDeviceGroupCount: ptr uint32, pPhysicalDeviceGroupProperties: ptr VkPhysicalDeviceGroupProperties): VkResult {.stdcall.}](vkGetProc("vkEnumeratePhysicalDeviceGroups")) + vkGetImageMemoryRequirements2 = cast[proc (device: VkDevic, pInfo: ptr VkImageMemoryRequirementsInfo2, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetImageMemoryRequirements2")) + vkGetBufferMemoryRequirements2 = cast[proc (device: VkDevic, pInfo: ptr VkBufferMemoryRequirementsInfo2, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetBufferMemoryRequirements2")) + vkGetImageSparseMemoryRequirements2 = cast[proc (device: VkDevic, pInfo: ptr VkImageSparseMemoryRequirementsInfo2, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetImageSparseMemoryRequirements2")) + vkGetPhysicalDeviceFeatures2 = cast[proc (physicalDevice: VkPhysicalDevic, pFeatures: ptr VkPhysicalDeviceFeatures2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFeatures2")) + vkGetPhysicalDeviceProperties2 = cast[proc (physicalDevice: VkPhysicalDevic, pProperties: ptr VkPhysicalDeviceProperties2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceProperties2")) + vkGetPhysicalDeviceFormatProperties2 = cast[proc (physicalDevice: VkPhysicalDevic, format: VkForma, pFormatProperties: ptr VkFormatProperties2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFormatProperties2")) + vkGetPhysicalDeviceImageFormatProperties2 = cast[proc (physicalDevice: VkPhysicalDevic, pImageFormatInfo: ptr VkPhysicalDeviceImageFormatInfo2, pImageFormatProperties: ptr VkImageFormatProperties2): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceImageFormatProperties2")) + vkGetPhysicalDeviceQueueFamilyProperties2 = cast[proc (physicalDevice: VkPhysicalDevic, pQueueFamilyPropertyCount: ptr uint32, pQueueFamilyProperties: ptr VkQueueFamilyProperties2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceQueueFamilyProperties2")) + vkGetPhysicalDeviceMemoryProperties2 = cast[proc (physicalDevice: VkPhysicalDevic, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceMemoryProperties2")) + vkGetPhysicalDeviceSparseImageFormatProperties2 = cast[proc (physicalDevice: VkPhysicalDevic, pFormatInfo: ptr VkPhysicalDeviceSparseImageFormatInfo2, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSparseImageFormatProperties2")) + vkTrimCommandPool = cast[proc (device: VkDevic, commandPool: VkCommandPoo, flags: VkCommandPoolTrimFlag): void {.stdcall.}](vkGetProc("vkTrimCommandPool")) + vkGetDeviceQueue2 = cast[proc (device: VkDevic, pQueueInfo: ptr VkDeviceQueueInfo2, pQueue: ptr VkQueue): void {.stdcall.}](vkGetProc("vkGetDeviceQueue2")) + vkCreateSamplerYcbcrConversion = cast[proc (device: VkDevic, pCreateInfo: ptr VkSamplerYcbcrConversionCreateInfo, pAllocator: ptr VkAllocationCallbacks, pYcbcrConversion: ptr VkSamplerYcbcrConversion): VkResult {.stdcall.}](vkGetProc("vkCreateSamplerYcbcrConversion")) + vkDestroySamplerYcbcrConversion = cast[proc (device: VkDevic, ycbcrConversion: VkSamplerYcbcrConversio, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySamplerYcbcrConversion")) + vkCreateDescriptorUpdateTemplate = cast[proc (device: VkDevic, pCreateInfo: ptr VkDescriptorUpdateTemplateCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDescriptorUpdateTemplate: ptr VkDescriptorUpdateTemplate): VkResult {.stdcall.}](vkGetProc("vkCreateDescriptorUpdateTemplate")) + vkDestroyDescriptorUpdateTemplate = cast[proc (device: VkDevic, descriptorUpdateTemplate: VkDescriptorUpdateTemplat, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDescriptorUpdateTemplate")) + vkUpdateDescriptorSetWithTemplate = cast[proc (device: VkDevic, descriptorSet: VkDescriptorSe, descriptorUpdateTemplate: VkDescriptorUpdateTemplat, pData: pointer): void {.stdcall.}](vkGetProc("vkUpdateDescriptorSetWithTemplate")) + vkGetPhysicalDeviceExternalBufferProperties = cast[proc (physicalDevice: VkPhysicalDevic, pExternalBufferInfo: ptr VkPhysicalDeviceExternalBufferInfo, pExternalBufferProperties: ptr VkExternalBufferProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalBufferProperties")) + vkGetPhysicalDeviceExternalFenceProperties = cast[proc (physicalDevice: VkPhysicalDevic, pExternalFenceInfo: ptr VkPhysicalDeviceExternalFenceInfo, pExternalFenceProperties: ptr VkExternalFenceProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalFenceProperties")) + vkGetPhysicalDeviceExternalSemaphoreProperties = cast[proc (physicalDevice: VkPhysicalDevic, pExternalSemaphoreInfo: ptr VkPhysicalDeviceExternalSemaphoreInfo, pExternalSemaphoreProperties: ptr VkExternalSemaphoreProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalSemaphoreProperties")) + vkGetDescriptorSetLayoutSupport = cast[proc (device: VkDevic, pCreateInfo: ptr VkDescriptorSetLayoutCreateInfo, pSupport: ptr VkDescriptorSetLayoutSupport): void {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutSupport")) # Vulkan 1_2 proc vkLoad1_2*() = - vkCmdDrawIndirectCount = cast[proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawIndirectCount")) - vkCmdDrawIndexedIndirectCount = cast[proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawIndexedIndirectCount")) - vkCreateRenderPass2 = cast[proc(device: VkDevice, pCreateInfo: ptr VkRenderPassCreateInfo2 , pAllocator: ptr VkAllocationCallbacks , pRenderPass: ptr VkRenderPass ): VkResult {.stdcall.}](vkGetProc("vkCreateRenderPass2")) - vkCmdBeginRenderPass2 = cast[proc(commandBuffer: VkCommandBuffer, pRenderPassBegin: ptr VkRenderPassBeginInfo , pSubpassBeginInfo: ptr VkSubpassBeginInfo ): void {.stdcall.}](vkGetProc("vkCmdBeginRenderPass2")) - vkCmdNextSubpass2 = cast[proc(commandBuffer: VkCommandBuffer, pSubpassBeginInfo: ptr VkSubpassBeginInfo , pSubpassEndInfo: ptr VkSubpassEndInfo ): void {.stdcall.}](vkGetProc("vkCmdNextSubpass2")) - vkCmdEndRenderPass2 = cast[proc(commandBuffer: VkCommandBuffer, pSubpassEndInfo: ptr VkSubpassEndInfo ): void {.stdcall.}](vkGetProc("vkCmdEndRenderPass2")) - vkResetQueryPool = cast[proc(device: VkDevice, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32): void {.stdcall.}](vkGetProc("vkResetQueryPool")) - vkGetSemaphoreCounterValue = cast[proc(device: VkDevice, semaphore: VkSemaphore, pValue: ptr uint64 ): VkResult {.stdcall.}](vkGetProc("vkGetSemaphoreCounterValue")) - vkWaitSemaphores = cast[proc(device: VkDevice, pWaitInfo: ptr VkSemaphoreWaitInfo , timeout: uint64): VkResult {.stdcall.}](vkGetProc("vkWaitSemaphores")) - vkSignalSemaphore = cast[proc(device: VkDevice, pSignalInfo: ptr VkSemaphoreSignalInfo ): VkResult {.stdcall.}](vkGetProc("vkSignalSemaphore")) - vkGetBufferDeviceAddress = cast[proc(device: VkDevice, pInfo: ptr VkBufferDeviceAddressInfo ): VkDeviceAddress {.stdcall.}](vkGetProc("vkGetBufferDeviceAddress")) - vkGetBufferOpaqueCaptureAddress = cast[proc(device: VkDevice, pInfo: ptr VkBufferDeviceAddressInfo ): uint64 {.stdcall.}](vkGetProc("vkGetBufferOpaqueCaptureAddress")) - vkGetDeviceMemoryOpaqueCaptureAddress = cast[proc(device: VkDevice, pInfo: ptr VkDeviceMemoryOpaqueCaptureAddressInfo ): uint64 {.stdcall.}](vkGetProc("vkGetDeviceMemoryOpaqueCaptureAddress")) + vkCmdDrawIndirectCount = cast[proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, countBuffer: VkBuffe, countBufferOffset: VkDeviceSiz, maxDrawCount: uint32_, stride: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawIndirectCount")) + vkCmdDrawIndexedIndirectCount = cast[proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, countBuffer: VkBuffe, countBufferOffset: VkDeviceSiz, maxDrawCount: uint32_, stride: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawIndexedIndirectCount")) + vkCreateRenderPass2 = cast[proc (device: VkDevic, pCreateInfo: ptr VkRenderPassCreateInfo2, pAllocator: ptr VkAllocationCallbacks, pRenderPass: ptr VkRenderPass): VkResult {.stdcall.}](vkGetProc("vkCreateRenderPass2")) + vkCmdBeginRenderPass2 = cast[proc (commandBuffer: VkCommandBuffe, pRenderPassBegin: ptr VkRenderPassBeginInfo , pSubpassBeginInfo: ptr VkSubpassBeginInfo ): void {.stdcall.}](vkGetProc("vkCmdBeginRenderPass2")) + vkCmdNextSubpass2 = cast[proc (commandBuffer: VkCommandBuffe, pSubpassBeginInfo: ptr VkSubpassBeginInfo , pSubpassEndInfo: ptr VkSubpassEndInfo ): void {.stdcall.}](vkGetProc("vkCmdNextSubpass2")) + vkCmdEndRenderPass2 = cast[proc (commandBuffer: VkCommandBuffe, pSubpassEndInfo: ptr VkSubpassEndInfo ): void {.stdcall.}](vkGetProc("vkCmdEndRenderPass2")) + vkResetQueryPool = cast[proc (device: VkDevic, queryPool: VkQueryPoo, firstQuery: uint32_, queryCount: uint32_): void {.stdcall.}](vkGetProc("vkResetQueryPool")) + vkGetSemaphoreCounterValue = cast[proc (device: VkDevic, semaphore: VkSemaphor, pValue: ptr uint64): VkResult {.stdcall.}](vkGetProc("vkGetSemaphoreCounterValue")) + vkWaitSemaphores = cast[proc (device: VkDevic, pWaitInfo: ptr VkSemaphoreWaitInfo, timeout: uint64_): VkResult {.stdcall.}](vkGetProc("vkWaitSemaphores")) + vkSignalSemaphore = cast[proc (device: VkDevic, pSignalInfo: ptr VkSemaphoreSignalInfo): VkResult {.stdcall.}](vkGetProc("vkSignalSemaphore")) + vkGetBufferDeviceAddress = cast[proc (device: VkDevic, pInfo: ptr VkBufferDeviceAddressInfo): VkDeviceAddress {.stdcall.}](vkGetProc("vkGetBufferDeviceAddress")) + vkGetBufferOpaqueCaptureAddress = cast[proc (device: VkDevic, pInfo: ptr VkBufferDeviceAddressInfo): uint64 {.stdcall.}](vkGetProc("vkGetBufferOpaqueCaptureAddress")) + vkGetDeviceMemoryOpaqueCaptureAddress = cast[proc (device: VkDevic, pInfo: ptr VkDeviceMemoryOpaqueCaptureAddressInfo): uint64 {.stdcall.}](vkGetProc("vkGetDeviceMemoryOpaqueCaptureAddress")) # Vulkan 1_3 proc vkLoad1_3*() = - vkGetPhysicalDeviceToolProperties = cast[proc(physicalDevice: VkPhysicalDevice, pToolCount: ptr uint32 , pToolProperties: ptr VkPhysicalDeviceToolProperties ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceToolProperties")) - vkCreatePrivateDataSlot = cast[proc(device: VkDevice, pCreateInfo: ptr VkPrivateDataSlotCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPrivateDataSlot: ptr VkPrivateDataSlot ): VkResult {.stdcall.}](vkGetProc("vkCreatePrivateDataSlot")) - vkDestroyPrivateDataSlot = cast[proc(device: VkDevice, privateDataSlot: VkPrivateDataSlot, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyPrivateDataSlot")) - vkSetPrivateData = cast[proc(device: VkDevice, objectType: VkObjectType, objectHandle: uint64, privateDataSlot: VkPrivateDataSlot, data: uint64): VkResult {.stdcall.}](vkGetProc("vkSetPrivateData")) - vkGetPrivateData = cast[proc(device: VkDevice, objectType: VkObjectType, objectHandle: uint64, privateDataSlot: VkPrivateDataSlot, pData: ptr uint64 ): void {.stdcall.}](vkGetProc("vkGetPrivateData")) - vkCmdSetEvent2 = cast[proc(commandBuffer: VkCommandBuffer, event: VkEvent, pDependencyInfo: ptr VkDependencyInfo ): void {.stdcall.}](vkGetProc("vkCmdSetEvent2")) - vkCmdResetEvent2 = cast[proc(commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags2): void {.stdcall.}](vkGetProc("vkCmdResetEvent2")) - vkCmdWaitEvents2 = cast[proc(commandBuffer: VkCommandBuffer, eventCount: uint32, pEvents: ptr VkEvent , pDependencyInfos: ptr VkDependencyInfo ): void {.stdcall.}](vkGetProc("vkCmdWaitEvents2")) - vkCmdPipelineBarrier2 = cast[proc(commandBuffer: VkCommandBuffer, pDependencyInfo: ptr VkDependencyInfo ): void {.stdcall.}](vkGetProc("vkCmdPipelineBarrier2")) - vkCmdWriteTimestamp2 = cast[proc(commandBuffer: VkCommandBuffer, stage: VkPipelineStageFlags2, queryPool: VkQueryPool, query: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteTimestamp2")) - vkQueueSubmit2 = cast[proc(queue: VkQueue, submitCount: uint32, pSubmits: ptr VkSubmitInfo2 , fence: VkFence): VkResult {.stdcall.}](vkGetProc("vkQueueSubmit2")) - vkCmdCopyBuffer2 = cast[proc(commandBuffer: VkCommandBuffer, pCopyBufferInfo: ptr VkCopyBufferInfo2 ): void {.stdcall.}](vkGetProc("vkCmdCopyBuffer2")) - vkCmdCopyImage2 = cast[proc(commandBuffer: VkCommandBuffer, pCopyImageInfo: ptr VkCopyImageInfo2 ): void {.stdcall.}](vkGetProc("vkCmdCopyImage2")) - vkCmdCopyBufferToImage2 = cast[proc(commandBuffer: VkCommandBuffer, pCopyBufferToImageInfo: ptr VkCopyBufferToImageInfo2 ): void {.stdcall.}](vkGetProc("vkCmdCopyBufferToImage2")) - vkCmdCopyImageToBuffer2 = cast[proc(commandBuffer: VkCommandBuffer, pCopyImageToBufferInfo: ptr VkCopyImageToBufferInfo2 ): void {.stdcall.}](vkGetProc("vkCmdCopyImageToBuffer2")) - vkCmdBlitImage2 = cast[proc(commandBuffer: VkCommandBuffer, pBlitImageInfo: ptr VkBlitImageInfo2 ): void {.stdcall.}](vkGetProc("vkCmdBlitImage2")) - vkCmdResolveImage2 = cast[proc(commandBuffer: VkCommandBuffer, pResolveImageInfo: ptr VkResolveImageInfo2 ): void {.stdcall.}](vkGetProc("vkCmdResolveImage2")) - vkCmdBeginRendering = cast[proc(commandBuffer: VkCommandBuffer, pRenderingInfo: ptr VkRenderingInfo ): void {.stdcall.}](vkGetProc("vkCmdBeginRendering")) - vkCmdEndRendering = cast[proc(commandBuffer: VkCommandBuffer): void {.stdcall.}](vkGetProc("vkCmdEndRendering")) - vkCmdSetCullMode = cast[proc(commandBuffer: VkCommandBuffer, cullMode: VkCullModeFlags): void {.stdcall.}](vkGetProc("vkCmdSetCullMode")) - vkCmdSetFrontFace = cast[proc(commandBuffer: VkCommandBuffer, frontFace: VkFrontFace): void {.stdcall.}](vkGetProc("vkCmdSetFrontFace")) - vkCmdSetPrimitiveTopology = cast[proc(commandBuffer: VkCommandBuffer, primitiveTopology: VkPrimitiveTopology): void {.stdcall.}](vkGetProc("vkCmdSetPrimitiveTopology")) - vkCmdSetViewportWithCount = cast[proc(commandBuffer: VkCommandBuffer, viewportCount: uint32, pViewports: ptr VkViewport ): void {.stdcall.}](vkGetProc("vkCmdSetViewportWithCount")) - vkCmdSetScissorWithCount = cast[proc(commandBuffer: VkCommandBuffer, scissorCount: uint32, pScissors: ptr VkRect2D ): void {.stdcall.}](vkGetProc("vkCmdSetScissorWithCount")) - vkCmdBindVertexBuffers2 = cast[proc(commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer , pOffsets: ptr VkDeviceSize , pSizes: ptr VkDeviceSize , pStrides: ptr VkDeviceSize ): void {.stdcall.}](vkGetProc("vkCmdBindVertexBuffers2")) - vkCmdSetDepthTestEnable = cast[proc(commandBuffer: VkCommandBuffer, depthTestEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthTestEnable")) - vkCmdSetDepthWriteEnable = cast[proc(commandBuffer: VkCommandBuffer, depthWriteEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthWriteEnable")) - vkCmdSetDepthCompareOp = cast[proc(commandBuffer: VkCommandBuffer, depthCompareOp: VkCompareOp): void {.stdcall.}](vkGetProc("vkCmdSetDepthCompareOp")) - vkCmdSetDepthBoundsTestEnable = cast[proc(commandBuffer: VkCommandBuffer, depthBoundsTestEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthBoundsTestEnable")) - vkCmdSetStencilTestEnable = cast[proc(commandBuffer: VkCommandBuffer, stencilTestEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetStencilTestEnable")) - vkCmdSetStencilOp = cast[proc(commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, failOp: VkStencilOp, passOp: VkStencilOp, depthFailOp: VkStencilOp, compareOp: VkCompareOp): void {.stdcall.}](vkGetProc("vkCmdSetStencilOp")) - vkCmdSetRasterizerDiscardEnable = cast[proc(commandBuffer: VkCommandBuffer, rasterizerDiscardEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetRasterizerDiscardEnable")) - vkCmdSetDepthBiasEnable = cast[proc(commandBuffer: VkCommandBuffer, depthBiasEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthBiasEnable")) - vkCmdSetPrimitiveRestartEnable = cast[proc(commandBuffer: VkCommandBuffer, primitiveRestartEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetPrimitiveRestartEnable")) - vkGetDeviceBufferMemoryRequirements = cast[proc(device: VkDevice, pInfo: ptr VkDeviceBufferMemoryRequirements , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.stdcall.}](vkGetProc("vkGetDeviceBufferMemoryRequirements")) - vkGetDeviceImageMemoryRequirements = cast[proc(device: VkDevice, pInfo: ptr VkDeviceImageMemoryRequirements , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.stdcall.}](vkGetProc("vkGetDeviceImageMemoryRequirements")) - vkGetDeviceImageSparseMemoryRequirements = cast[proc(device: VkDevice, pInfo: ptr VkDeviceImageMemoryRequirements , pSparseMemoryRequirementCount: ptr uint32 , pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2 ): void {.stdcall.}](vkGetProc("vkGetDeviceImageSparseMemoryRequirements")) + vkGetPhysicalDeviceToolProperties = cast[proc (physicalDevice: VkPhysicalDevic, pToolCount: ptr uint32, pToolProperties: ptr VkPhysicalDeviceToolProperties): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceToolProperties")) + vkCreatePrivateDataSlot = cast[proc (device: VkDevic, pCreateInfo: ptr VkPrivateDataSlotCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPrivateDataSlot: ptr VkPrivateDataSlot): VkResult {.stdcall.}](vkGetProc("vkCreatePrivateDataSlot")) + vkDestroyPrivateDataSlot = cast[proc (device: VkDevic, privateDataSlot: VkPrivateDataSlo, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyPrivateDataSlot")) + vkSetPrivateData = cast[proc (device: VkDevic, objectType: VkObjectTyp, objectHandle: uint64_, privateDataSlot: VkPrivateDataSlo, data: uint64_): VkResult {.stdcall.}](vkGetProc("vkSetPrivateData")) + vkGetPrivateData = cast[proc (device: VkDevic, objectType: VkObjectTyp, objectHandle: uint64_, privateDataSlot: VkPrivateDataSlo, pData: ptr uint64): void {.stdcall.}](vkGetProc("vkGetPrivateData")) + vkCmdSetEvent2 = cast[proc (commandBuffer: VkCommandBuffe, event: VkEven, pDependencyInfo: ptr VkDependencyInfo ): void {.stdcall.}](vkGetProc("vkCmdSetEvent2")) + vkCmdResetEvent2 = cast[proc (commandBuffer: VkCommandBuffe, event: VkEven, stageMask: VkPipelineStageFlags): void {.stdcall.}](vkGetProc("vkCmdResetEvent2")) + vkCmdWaitEvents2 = cast[proc (commandBuffer: VkCommandBuffe, eventCount: uint32_, pEvents: ptr VkEvent , pDependencyInfos: ptr VkDependencyInfo ): void {.stdcall.}](vkGetProc("vkCmdWaitEvents2")) + vkCmdPipelineBarrier2 = cast[proc (commandBuffer: VkCommandBuffe, pDependencyInfo: ptr VkDependencyInfo ): void {.stdcall.}](vkGetProc("vkCmdPipelineBarrier2")) + vkCmdWriteTimestamp2 = cast[proc (commandBuffer: VkCommandBuffe, stage: VkPipelineStageFlags, queryPool: VkQueryPoo, query: uint32_): void {.stdcall.}](vkGetProc("vkCmdWriteTimestamp2")) + vkQueueSubmit2 = cast[proc (queue: VkQueu, submitCount: uint32_, pSubmits: ptr VkSubmitInfo2 , fence: VkFenc): VkResult {.stdcall.}](vkGetProc("vkQueueSubmit2")) + vkCmdCopyBuffer2 = cast[proc (commandBuffer: VkCommandBuffe, pCopyBufferInfo: ptr VkCopyBufferInfo2): void {.stdcall.}](vkGetProc("vkCmdCopyBuffer2")) + vkCmdCopyImage2 = cast[proc (commandBuffer: VkCommandBuffe, pCopyImageInfo: ptr VkCopyImageInfo2): void {.stdcall.}](vkGetProc("vkCmdCopyImage2")) + vkCmdCopyBufferToImage2 = cast[proc (commandBuffer: VkCommandBuffe, pCopyBufferToImageInfo: ptr VkCopyBufferToImageInfo2): void {.stdcall.}](vkGetProc("vkCmdCopyBufferToImage2")) + vkCmdCopyImageToBuffer2 = cast[proc (commandBuffer: VkCommandBuffe, pCopyImageToBufferInfo: ptr VkCopyImageToBufferInfo2): void {.stdcall.}](vkGetProc("vkCmdCopyImageToBuffer2")) + vkCmdBlitImage2 = cast[proc (commandBuffer: VkCommandBuffe, pBlitImageInfo: ptr VkBlitImageInfo2): void {.stdcall.}](vkGetProc("vkCmdBlitImage2")) + vkCmdResolveImage2 = cast[proc (commandBuffer: VkCommandBuffe, pResolveImageInfo: ptr VkResolveImageInfo2): void {.stdcall.}](vkGetProc("vkCmdResolveImage2")) + vkCmdBeginRendering = cast[proc (commandBuffer: VkCommandBuffe, pRenderingInfo: ptr VkRenderingInfo ): void {.stdcall.}](vkGetProc("vkCmdBeginRendering")) + vkCmdEndRendering = cast[proc (commandBuffer: VkCommandBuffe): void {.stdcall.}](vkGetProc("vkCmdEndRendering")) + vkCmdSetCullMode = cast[proc (commandBuffer: VkCommandBuffe, cullMode: VkCullModeFlag): void {.stdcall.}](vkGetProc("vkCmdSetCullMode")) + vkCmdSetFrontFace = cast[proc (commandBuffer: VkCommandBuffe, frontFace: VkFrontFac): void {.stdcall.}](vkGetProc("vkCmdSetFrontFace")) + vkCmdSetPrimitiveTopology = cast[proc (commandBuffer: VkCommandBuffe, primitiveTopology: VkPrimitiveTopolog): void {.stdcall.}](vkGetProc("vkCmdSetPrimitiveTopology")) + vkCmdSetViewportWithCount = cast[proc (commandBuffer: VkCommandBuffe, viewportCount: uint32_, pViewports: ptr VkViewport): void {.stdcall.}](vkGetProc("vkCmdSetViewportWithCount")) + vkCmdSetScissorWithCount = cast[proc (commandBuffer: VkCommandBuffe, scissorCount: uint32_, pScissors: ptr VkRect2D): void {.stdcall.}](vkGetProc("vkCmdSetScissorWithCount")) + vkCmdBindVertexBuffers2 = cast[proc (commandBuffer: VkCommandBuffe, firstBinding: uint32_, bindingCount: uint32_, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize, pSizes: ptr VkDeviceSize, pStrides: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdBindVertexBuffers2")) + vkCmdSetDepthTestEnable = cast[proc (commandBuffer: VkCommandBuffe, depthTestEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetDepthTestEnable")) + vkCmdSetDepthWriteEnable = cast[proc (commandBuffer: VkCommandBuffe, depthWriteEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetDepthWriteEnable")) + vkCmdSetDepthCompareOp = cast[proc (commandBuffer: VkCommandBuffe, depthCompareOp: VkCompareO): void {.stdcall.}](vkGetProc("vkCmdSetDepthCompareOp")) + vkCmdSetDepthBoundsTestEnable = cast[proc (commandBuffer: VkCommandBuffe, depthBoundsTestEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetDepthBoundsTestEnable")) + vkCmdSetStencilTestEnable = cast[proc (commandBuffer: VkCommandBuffe, stencilTestEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetStencilTestEnable")) + vkCmdSetStencilOp = cast[proc (commandBuffer: VkCommandBuffe, faceMask: VkStencilFaceFlag, failOp: VkStencilO, passOp: VkStencilO, depthFailOp: VkStencilO, compareOp: VkCompareO): void {.stdcall.}](vkGetProc("vkCmdSetStencilOp")) + vkCmdSetRasterizerDiscardEnable = cast[proc (commandBuffer: VkCommandBuffe, rasterizerDiscardEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetRasterizerDiscardEnable")) + vkCmdSetDepthBiasEnable = cast[proc (commandBuffer: VkCommandBuffe, depthBiasEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetDepthBiasEnable")) + vkCmdSetPrimitiveRestartEnable = cast[proc (commandBuffer: VkCommandBuffe, primitiveRestartEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetPrimitiveRestartEnable")) + vkGetDeviceBufferMemoryRequirements = cast[proc (device: VkDevic, pInfo: ptr VkDeviceBufferMemoryRequirements, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetDeviceBufferMemoryRequirements")) + vkGetDeviceImageMemoryRequirements = cast[proc (device: VkDevic, pInfo: ptr VkDeviceImageMemoryRequirements, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetDeviceImageMemoryRequirements")) + vkGetDeviceImageSparseMemoryRequirements = cast[proc (device: VkDevic, pInfo: ptr VkDeviceImageMemoryRequirements, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetDeviceImageSparseMemoryRequirements")) # Vulkan 1_0 proc vkLoad1_0*() = - vkGetCommandPoolMemoryConsumption = cast[proc(device: VkDevice, commandPool: VkCommandPool, commandBuffer: VkCommandBuffer, pConsumption: ptr VkCommandPoolMemoryConsumption ): void {.stdcall.}](vkGetProc("vkGetCommandPoolMemoryConsumption")) - vkGetFaultData = cast[proc(device: VkDevice, faultQueryBehavior: VkFaultQueryBehavior, pUnrecordedFaults: ptr VkBool32 , pFaultCount: ptr uint32 , pFaults: ptr VkFaultData ): VkResult {.stdcall.}](vkGetProc("vkGetFaultData")) - vkCreateShaderModule = cast[proc(device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo , pAllocator: ptr VkAllocationCallbacks , pShaderModule: ptr VkShaderModule ): VkResult {.stdcall.}](vkGetProc("vkCreateShaderModule")) - vkDestroyShaderModule = cast[proc(device: VkDevice, shaderModule: VkShaderModule, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyShaderModule")) - vkMergePipelineCaches = cast[proc(device: VkDevice, dstCache: VkPipelineCache, srcCacheCount: uint32, pSrcCaches: ptr VkPipelineCache ): VkResult {.stdcall.}](vkGetProc("vkMergePipelineCaches")) - vkGetPipelineCacheData = cast[proc(device: VkDevice, pipelineCache: VkPipelineCache, pDataSize: ptr uint , pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetPipelineCacheData")) - vkTrimCommandPool = cast[proc(device: VkDevice, commandPool: VkCommandPool, flags: VkCommandPoolTrimFlags): void {.stdcall.}](vkGetProc("vkTrimCommandPool")) - vkDestroyCommandPool = cast[proc(device: VkDevice, commandPool: VkCommandPool, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyCommandPool")) - vkDestroyDescriptorPool = cast[proc(device: VkDevice, descriptorPool: VkDescriptorPool, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyDescriptorPool")) - vkDestroyQueryPool = cast[proc(device: VkDevice, queryPool: VkQueryPool, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyQueryPool")) - vkDestroySwapchainKHR = cast[proc(device: VkDevice, swapchain: VkSwapchainKHR, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroySwapchainKHR")) - vkFreeMemory = cast[proc(device: VkDevice, memory: VkDeviceMemory, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkFreeMemory")) - vkCreateDescriptorUpdateTemplate = cast[proc(device: VkDevice, pCreateInfo: ptr VkDescriptorUpdateTemplateCreateInfo , pAllocator: ptr VkAllocationCallbacks , pDescriptorUpdateTemplate: ptr VkDescriptorUpdateTemplate ): VkResult {.stdcall.}](vkGetProc("vkCreateDescriptorUpdateTemplate")) - vkDestroyDescriptorUpdateTemplate = cast[proc(device: VkDevice, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyDescriptorUpdateTemplate")) - vkUpdateDescriptorSetWithTemplate = cast[proc(device: VkDevice, descriptorSet: VkDescriptorSet, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pData: pointer ): void {.stdcall.}](vkGetProc("vkUpdateDescriptorSetWithTemplate")) - vkGetPhysicalDeviceSparseImageFormatProperties = cast[proc(physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, samples: VkSampleCountFlagBits, usage: VkImageUsageFlags, tiling: VkImageTiling, pPropertyCount: ptr uint32 , pProperties: ptr VkSparseImageFormatProperties ): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSparseImageFormatProperties")) - vkGetPhysicalDeviceSparseImageFormatProperties2 = cast[proc(physicalDevice: VkPhysicalDevice, pFormatInfo: ptr VkPhysicalDeviceSparseImageFormatInfo2 , pPropertyCount: ptr uint32 , pProperties: ptr VkSparseImageFormatProperties2 ): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSparseImageFormatProperties2")) - vkGetImageSparseMemoryRequirements = cast[proc(device: VkDevice, image: VkImage, pSparseMemoryRequirementCount: ptr uint32 , pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements ): void {.stdcall.}](vkGetProc("vkGetImageSparseMemoryRequirements")) - vkGetImageSparseMemoryRequirements2 = cast[proc(device: VkDevice, pInfo: ptr VkImageSparseMemoryRequirementsInfo2 , pSparseMemoryRequirementCount: ptr uint32 , pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2 ): void {.stdcall.}](vkGetProc("vkGetImageSparseMemoryRequirements2")) - vkQueueBindSparse = cast[proc(queue: VkQueue, bindInfoCount: uint32, pBindInfo: ptr VkBindSparseInfo , fence: VkFence): VkResult {.stdcall.}](vkGetProc("vkQueueBindSparse")) - vkDestroySemaphoreSciSyncPoolNV = cast[proc(device: VkDevice, semaphorePool: VkSemaphoreSciSyncPoolNV, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroySemaphoreSciSyncPoolNV")) + vkGetCommandPoolMemoryConsumption = cast[proc (device: VkDevic, commandPool: VkCommandPoo, commandBuffer: VkCommandBuffe, pConsumption: ptr VkCommandPoolMemoryConsumption): void {.stdcall.}](vkGetProc("vkGetCommandPoolMemoryConsumption")) + vkGetFaultData = cast[proc (device: VkDevic, faultQueryBehavior: VkFaultQueryBehavio, pUnrecordedFaults: ptr VkBool32, pFaultCount: ptr uint32, pFaults: ptr VkFaultData): VkResult {.stdcall.}](vkGetProc("vkGetFaultData")) + vkCreateShaderModule = cast[proc (device: VkDevic, pCreateInfo: ptr VkShaderModuleCreateInfo, pAllocator: ptr VkAllocationCallbacks, pShaderModule: ptr VkShaderModule): VkResult {.stdcall.}](vkGetProc("vkCreateShaderModule")) + vkDestroyShaderModule = cast[proc (device: VkDevic, shaderModule: VkShaderModul, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyShaderModule")) + vkMergePipelineCaches = cast[proc (device: VkDevic, dstCache: VkPipelineCach, srcCacheCount: uint32_, pSrcCaches: ptr VkPipelineCache): VkResult {.stdcall.}](vkGetProc("vkMergePipelineCaches")) + vkGetPipelineCacheData = cast[proc (device: VkDevic, pipelineCache: VkPipelineCach, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetPipelineCacheData")) + vkTrimCommandPool = cast[proc (device: VkDevic, commandPool: VkCommandPoo, flags: VkCommandPoolTrimFlag): void {.stdcall.}](vkGetProc("vkTrimCommandPool")) + vkDestroyCommandPool = cast[proc (device: VkDevic, commandPool: VkCommandPoo, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyCommandPool")) + vkDestroyDescriptorPool = cast[proc (device: VkDevic, descriptorPool: VkDescriptorPoo, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDescriptorPool")) + vkDestroyQueryPool = cast[proc (device: VkDevic, queryPool: VkQueryPoo, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyQueryPool")) + vkDestroySwapchainKHR = cast[proc (device: VkDevic, swapchain: VkSwapchainKH, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySwapchainKHR")) + vkFreeMemory = cast[proc (device: VkDevic, memory: VkDeviceMemor, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkFreeMemory")) + vkCreateDescriptorUpdateTemplate = cast[proc (device: VkDevic, pCreateInfo: ptr VkDescriptorUpdateTemplateCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDescriptorUpdateTemplate: ptr VkDescriptorUpdateTemplate): VkResult {.stdcall.}](vkGetProc("vkCreateDescriptorUpdateTemplate")) + vkDestroyDescriptorUpdateTemplate = cast[proc (device: VkDevic, descriptorUpdateTemplate: VkDescriptorUpdateTemplat, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDescriptorUpdateTemplate")) + vkUpdateDescriptorSetWithTemplate = cast[proc (device: VkDevic, descriptorSet: VkDescriptorSe, descriptorUpdateTemplate: VkDescriptorUpdateTemplat, pData: pointer): void {.stdcall.}](vkGetProc("vkUpdateDescriptorSetWithTemplate")) + vkGetPhysicalDeviceSparseImageFormatProperties = cast[proc (physicalDevice: VkPhysicalDevic, format: VkForma, `type`: VkImageTyp, samples: VkSampleCountFlagBit, usage: VkImageUsageFlag, tiling: VkImageTilin, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSparseImageFormatProperties")) + vkGetPhysicalDeviceSparseImageFormatProperties2 = cast[proc (physicalDevice: VkPhysicalDevic, pFormatInfo: ptr VkPhysicalDeviceSparseImageFormatInfo2, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSparseImageFormatProperties2")) + vkGetImageSparseMemoryRequirements = cast[proc (device: VkDevic, image: VkImag, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements): void {.stdcall.}](vkGetProc("vkGetImageSparseMemoryRequirements")) + vkGetImageSparseMemoryRequirements2 = cast[proc (device: VkDevic, pInfo: ptr VkImageSparseMemoryRequirementsInfo2, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetImageSparseMemoryRequirements2")) + vkQueueBindSparse = cast[proc (queue: VkQueu, bindInfoCount: uint32_, pBindInfo: ptr VkBindSparseInfo, fence: VkFenc): VkResult {.stdcall.}](vkGetProc("vkQueueBindSparse")) + vkDestroySemaphoreSciSyncPoolNV = cast[proc (device: VkDevic, semaphorePool: VkSemaphoreSciSyncPoolN, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySemaphoreSciSyncPoolNV")) # Load VK_KHR_surface proc loadVK_KHR_surface*() = - vkDestroySurfaceKHR = cast[proc(instance: VkInstance, surface: VkSurfaceKHR, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroySurfaceKHR")) - vkGetPhysicalDeviceSurfaceSupportKHR = cast[proc(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, surface: VkSurfaceKHR, pSupported: ptr VkBool32 ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceSupportKHR")) - vkGetPhysicalDeviceSurfaceCapabilitiesKHR = cast[proc(physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceCapabilities: ptr VkSurfaceCapabilitiesKHR ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceCapabilitiesKHR")) - vkGetPhysicalDeviceSurfaceFormatsKHR = cast[proc(physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceFormatCount: ptr uint32 , pSurfaceFormats: ptr VkSurfaceFormatKHR ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceFormatsKHR")) - vkGetPhysicalDeviceSurfacePresentModesKHR = cast[proc(physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pPresentModeCount: ptr uint32 , pPresentModes: ptr VkPresentModeKHR ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfacePresentModesKHR")) + vkDestroySurfaceKHR = cast[proc (instance: VkInstanc, surface: VkSurfaceKH, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySurfaceKHR")) + vkGetPhysicalDeviceSurfaceSupportKHR = cast[proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, surface: VkSurfaceKH, pSupported: ptr VkBool32): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceSupportKHR")) + vkGetPhysicalDeviceSurfaceCapabilitiesKHR = cast[proc (physicalDevice: VkPhysicalDevic, surface: VkSurfaceKH, pSurfaceCapabilities: ptr VkSurfaceCapabilitiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceCapabilitiesKHR")) + vkGetPhysicalDeviceSurfaceFormatsKHR = cast[proc (physicalDevice: VkPhysicalDevic, surface: VkSurfaceKH, pSurfaceFormatCount: ptr uint32, pSurfaceFormats: ptr VkSurfaceFormatKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceFormatsKHR")) + vkGetPhysicalDeviceSurfacePresentModesKHR = cast[proc (physicalDevice: VkPhysicalDevic, surface: VkSurfaceKH, pPresentModeCount: ptr uint32, pPresentModes: ptr VkPresentModeKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfacePresentModesKHR")) # Load VK_KHR_swapchain proc loadVK_KHR_swapchain*() = - vkCreateSwapchainKHR = cast[proc(device: VkDevice, pCreateInfo: ptr VkSwapchainCreateInfoKHR , pCreateInfo: ptr VkSwapchainCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSwapchain: ptr VkSwapchainKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateSwapchainKHR")) - vkDestroySwapchainKHR = cast[proc(device: VkDevice, swapchain: VkSwapchainKHR, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroySwapchainKHR")) - vkGetSwapchainImagesKHR = cast[proc(device: VkDevice, swapchain: VkSwapchainKHR, pSwapchainImageCount: ptr uint32 , pSwapchainImages: ptr VkImage ): VkResult {.stdcall.}](vkGetProc("vkGetSwapchainImagesKHR")) - vkAcquireNextImageKHR = cast[proc(device: VkDevice, swapchain: VkSwapchainKHR, timeout: uint64, semaphore: VkSemaphore, fence: VkFence, pImageIndex: ptr uint32 ): VkResult {.stdcall.}](vkGetProc("vkAcquireNextImageKHR")) - vkQueuePresentKHR = cast[proc(queue: VkQueue, pPresentInfo: ptr VkPresentInfoKHR ): VkResult {.stdcall.}](vkGetProc("vkQueuePresentKHR")) - vkGetDeviceGroupPresentCapabilitiesKHR = cast[proc(device: VkDevice, pDeviceGroupPresentCapabilities: ptr VkDeviceGroupPresentCapabilitiesKHR ): VkResult {.stdcall.}](vkGetProc("vkGetDeviceGroupPresentCapabilitiesKHR")) - vkGetDeviceGroupSurfacePresentModesKHR = cast[proc(device: VkDevice, surface: VkSurfaceKHR, pModes: ptr VkDeviceGroupPresentModeFlagsKHR ): VkResult {.stdcall.}](vkGetProc("vkGetDeviceGroupSurfacePresentModesKHR")) - vkGetPhysicalDevicePresentRectanglesKHR = cast[proc(physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pRectCount: ptr uint32 , pRects: ptr VkRect2D ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDevicePresentRectanglesKHR")) - vkAcquireNextImage2KHR = cast[proc(device: VkDevice, pAcquireInfo: ptr VkAcquireNextImageInfoKHR , pImageIndex: ptr uint32 ): VkResult {.stdcall.}](vkGetProc("vkAcquireNextImage2KHR")) + vkCreateSwapchainKHR = cast[proc (device: VkDevic, pCreateInfo: ptr VkSwapchainCreateInfoKHR, pCreateInfo: ptr VkSwapchainCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSwapchain: ptr VkSwapchainKHR): VkResult {.stdcall.}](vkGetProc("vkCreateSwapchainKHR")) + vkDestroySwapchainKHR = cast[proc (device: VkDevic, swapchain: VkSwapchainKH, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySwapchainKHR")) + vkGetSwapchainImagesKHR = cast[proc (device: VkDevic, swapchain: VkSwapchainKH, pSwapchainImageCount: ptr uint32, pSwapchainImages: ptr VkImage): VkResult {.stdcall.}](vkGetProc("vkGetSwapchainImagesKHR")) + vkAcquireNextImageKHR = cast[proc (device: VkDevic, swapchain: VkSwapchainKH, timeout: uint64_, semaphore: VkSemaphor, fence: VkFenc, pImageIndex: ptr uint32): VkResult {.stdcall.}](vkGetProc("vkAcquireNextImageKHR")) + vkQueuePresentKHR = cast[proc (queue: VkQueu, pPresentInfo: ptr VkPresentInfoKHR): VkResult {.stdcall.}](vkGetProc("vkQueuePresentKHR")) + vkGetDeviceGroupPresentCapabilitiesKHR = cast[proc (device: VkDevic, pDeviceGroupPresentCapabilities: ptr VkDeviceGroupPresentCapabilitiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetDeviceGroupPresentCapabilitiesKHR")) + vkGetDeviceGroupSurfacePresentModesKHR = cast[proc (device: VkDevic, surface: VkSurfaceKH, pModes: ptr VkDeviceGroupPresentModeFlagsKHR): VkResult {.stdcall.}](vkGetProc("vkGetDeviceGroupSurfacePresentModesKHR")) + vkGetPhysicalDevicePresentRectanglesKHR = cast[proc (physicalDevice: VkPhysicalDevic, surface: VkSurfaceKH, pRectCount: ptr uint32, pRects: ptr VkRect2D): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDevicePresentRectanglesKHR")) + vkAcquireNextImage2KHR = cast[proc (device: VkDevic, pAcquireInfo: ptr VkAcquireNextImageInfoKHR, pImageIndex: ptr uint32): VkResult {.stdcall.}](vkGetProc("vkAcquireNextImage2KHR")) # Load VK_KHR_display proc loadVK_KHR_display*() = - vkGetPhysicalDeviceDisplayPropertiesKHR = cast[proc(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkDisplayPropertiesKHR ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceDisplayPropertiesKHR")) - vkGetPhysicalDeviceDisplayPlanePropertiesKHR = cast[proc(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkDisplayPlanePropertiesKHR ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceDisplayPlanePropertiesKHR")) - vkGetDisplayPlaneSupportedDisplaysKHR = cast[proc(physicalDevice: VkPhysicalDevice, planeIndex: uint32, pDisplayCount: ptr uint32 , pDisplays: ptr VkDisplayKHR ): VkResult {.stdcall.}](vkGetProc("vkGetDisplayPlaneSupportedDisplaysKHR")) - vkGetDisplayModePropertiesKHR = cast[proc(physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pPropertyCount: ptr uint32 , pProperties: ptr VkDisplayModePropertiesKHR ): VkResult {.stdcall.}](vkGetProc("vkGetDisplayModePropertiesKHR")) - vkCreateDisplayModeKHR = cast[proc(physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pCreateInfo: ptr VkDisplayModeCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pMode: ptr VkDisplayModeKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateDisplayModeKHR")) - vkGetDisplayPlaneCapabilitiesKHR = cast[proc(physicalDevice: VkPhysicalDevice, mode: VkDisplayModeKHR, planeIndex: uint32, pCapabilities: ptr VkDisplayPlaneCapabilitiesKHR ): VkResult {.stdcall.}](vkGetProc("vkGetDisplayPlaneCapabilitiesKHR")) - vkCreateDisplayPlaneSurfaceKHR = cast[proc(instance: VkInstance, pCreateInfo: ptr VkDisplaySurfaceCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateDisplayPlaneSurfaceKHR")) + vkGetPhysicalDeviceDisplayPropertiesKHR = cast[proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayPropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceDisplayPropertiesKHR")) + vkGetPhysicalDeviceDisplayPlanePropertiesKHR = cast[proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayPlanePropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceDisplayPlanePropertiesKHR")) + vkGetDisplayPlaneSupportedDisplaysKHR = cast[proc (physicalDevice: VkPhysicalDevic, planeIndex: uint32_, pDisplayCount: ptr uint32, pDisplays: ptr VkDisplayKHR): VkResult {.stdcall.}](vkGetProc("vkGetDisplayPlaneSupportedDisplaysKHR")) + vkGetDisplayModePropertiesKHR = cast[proc (physicalDevice: VkPhysicalDevic, display: VkDisplayKH, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayModePropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetDisplayModePropertiesKHR")) + vkCreateDisplayModeKHR = cast[proc (physicalDevice: VkPhysicalDevic, display: VkDisplayKH, pCreateInfo: ptr VkDisplayModeCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pMode: ptr VkDisplayModeKHR): VkResult {.stdcall.}](vkGetProc("vkCreateDisplayModeKHR")) + vkGetDisplayPlaneCapabilitiesKHR = cast[proc (physicalDevice: VkPhysicalDevic, mode: VkDisplayModeKH, planeIndex: uint32_, pCapabilities: ptr VkDisplayPlaneCapabilitiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetDisplayPlaneCapabilitiesKHR")) + vkCreateDisplayPlaneSurfaceKHR = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkDisplaySurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateDisplayPlaneSurfaceKHR")) # Load VK_KHR_display_swapchain proc loadVK_KHR_display_swapchain*() = - vkCreateSharedSwapchainsKHR = cast[proc(device: VkDevice, swapchainCount: uint32, pCreateInfos: ptr VkSwapchainCreateInfoKHR , pCreateInfos: ptr VkSwapchainCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSwapchains: ptr VkSwapchainKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateSharedSwapchainsKHR")) + vkCreateSharedSwapchainsKHR = cast[proc (device: VkDevic, swapchainCount: uint32_, pCreateInfos: ptr VkSwapchainCreateInfoKHR, pCreateInfos: ptr VkSwapchainCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSwapchains: ptr VkSwapchainKHR): VkResult {.stdcall.}](vkGetProc("vkCreateSharedSwapchainsKHR")) # Load VK_KHR_xlib_surface proc loadVK_KHR_xlib_surface*() = - vkCreateXlibSurfaceKHR = cast[proc(instance: VkInstance, pCreateInfo: ptr VkXlibSurfaceCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateXlibSurfaceKHR")) - vkGetPhysicalDeviceXlibPresentationSupportKHR = cast[proc(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, dpy: ptr Display , visualID: VisualID): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceXlibPresentationSupportKHR")) + vkCreateXlibSurfaceKHR = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkXlibSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateXlibSurfaceKHR")) + vkGetPhysicalDeviceXlibPresentationSupportKHR = cast[proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, dpy: ptr Display, visualID: VisualI): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceXlibPresentationSupportKHR")) # Load VK_KHR_xcb_surface proc loadVK_KHR_xcb_surface*() = - vkCreateXcbSurfaceKHR = cast[proc(instance: VkInstance, pCreateInfo: ptr VkXcbSurfaceCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateXcbSurfaceKHR")) - vkGetPhysicalDeviceXcbPresentationSupportKHR = cast[proc(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, connection: ptr xcb_connection_t , visual_id: xcb_visualid_t): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceXcbPresentationSupportKHR")) + vkCreateXcbSurfaceKHR = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkXcbSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateXcbSurfaceKHR")) + vkGetPhysicalDeviceXcbPresentationSupportKHR = cast[proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, connection: ptr xcb_connection_t, visual_id: xcb_visualid_): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceXcbPresentationSupportKHR")) # Load VK_KHR_wayland_surface proc loadVK_KHR_wayland_surface*() = - vkCreateWaylandSurfaceKHR = cast[proc(instance: VkInstance, pCreateInfo: ptr VkWaylandSurfaceCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateWaylandSurfaceKHR")) - vkGetPhysicalDeviceWaylandPresentationSupportKHR = cast[proc(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, display: ptr wl_display ): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceWaylandPresentationSupportKHR")) + vkCreateWaylandSurfaceKHR = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkWaylandSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateWaylandSurfaceKHR")) + vkGetPhysicalDeviceWaylandPresentationSupportKHR = cast[proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, display: ptr wl_display): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceWaylandPresentationSupportKHR")) # Load VK_KHR_android_surface proc loadVK_KHR_android_surface*() = - vkCreateAndroidSurfaceKHR = cast[proc(instance: VkInstance, pCreateInfo: ptr VkAndroidSurfaceCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateAndroidSurfaceKHR")) + vkCreateAndroidSurfaceKHR = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkAndroidSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateAndroidSurfaceKHR")) # Load VK_KHR_win32_surface proc loadVK_KHR_win32_surface*() = - vkCreateWin32SurfaceKHR = cast[proc(instance: VkInstance, pCreateInfo: ptr VkWin32SurfaceCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateWin32SurfaceKHR")) - vkGetPhysicalDeviceWin32PresentationSupportKHR = cast[proc(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceWin32PresentationSupportKHR")) + vkCreateWin32SurfaceKHR = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkWin32SurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateWin32SurfaceKHR")) + vkGetPhysicalDeviceWin32PresentationSupportKHR = cast[proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceWin32PresentationSupportKHR")) # Load VK_ANDROID_native_buffer proc loadVK_ANDROID_native_buffer*() = - vkGetSwapchainGrallocUsageANDROID = cast[proc(device: VkDevice, format: VkFormat, imageUsage: VkImageUsageFlags, grallocUsage: ptr int ): VkResult {.stdcall.}](vkGetProc("vkGetSwapchainGrallocUsageANDROID")) - vkAcquireImageANDROID = cast[proc(device: VkDevice, image: VkImage, nativeFenceFd: int, semaphore: VkSemaphore, fence: VkFence): VkResult {.stdcall.}](vkGetProc("vkAcquireImageANDROID")) - vkQueueSignalReleaseImageANDROID = cast[proc(queue: VkQueue, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore , image: VkImage, pNativeFenceFd: ptr int ): VkResult {.stdcall.}](vkGetProc("vkQueueSignalReleaseImageANDROID")) - vkGetSwapchainGrallocUsage2ANDROID = cast[proc(device: VkDevice, format: VkFormat, imageUsage: VkImageUsageFlags, swapchainImageUsage: VkSwapchainImageUsageFlagsANDROID, grallocConsumerUsage: ptr uint64 , grallocProducerUsage: ptr uint64 ): VkResult {.stdcall.}](vkGetProc("vkGetSwapchainGrallocUsage2ANDROID")) + vkGetSwapchainGrallocUsageANDROID = cast[proc (device: VkDevic, format: VkForma, imageUsage: VkImageUsageFlag, grallocUsage: ptr int): VkResult {.stdcall.}](vkGetProc("vkGetSwapchainGrallocUsageANDROID")) + vkAcquireImageANDROID = cast[proc (device: VkDevic, image: VkImag, nativeFenceFd: in, semaphore: VkSemaphor, fence: VkFenc): VkResult {.stdcall.}](vkGetProc("vkAcquireImageANDROID")) + vkQueueSignalReleaseImageANDROID = cast[proc (queue: VkQueu, waitSemaphoreCount: uint32_, pWaitSemaphores: ptr VkSemaphore, image: VkImag, pNativeFenceFd: ptr int): VkResult {.stdcall.}](vkGetProc("vkQueueSignalReleaseImageANDROID")) + vkGetSwapchainGrallocUsage2ANDROID = cast[proc (device: VkDevic, format: VkForma, imageUsage: VkImageUsageFlag, swapchainImageUsage: VkSwapchainImageUsageFlagsANDROI, grallocConsumerUsage: ptr uint64, grallocProducerUsage: ptr uint64): VkResult {.stdcall.}](vkGetProc("vkGetSwapchainGrallocUsage2ANDROID")) # Load VK_EXT_debug_report proc loadVK_EXT_debug_report*() = - vkCreateDebugReportCallbackEXT = cast[proc(instance: VkInstance, pCreateInfo: ptr VkDebugReportCallbackCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pCallback: ptr VkDebugReportCallbackEXT ): VkResult {.stdcall.}](vkGetProc("vkCreateDebugReportCallbackEXT")) - vkDestroyDebugReportCallbackEXT = cast[proc(instance: VkInstance, callback: VkDebugReportCallbackEXT, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyDebugReportCallbackEXT")) - vkDebugReportMessageEXT = cast[proc(instance: VkInstance, flags: VkDebugReportFlagsEXT, objectType: VkDebugReportObjectTypeEXT, `object`: uint64, location: uint, messageCode: int32, pLayerPrefix: cstring , pMessage: cstring ): void {.stdcall.}](vkGetProc("vkDebugReportMessageEXT")) + vkCreateDebugReportCallbackEXT = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkDebugReportCallbackCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pCallback: ptr VkDebugReportCallbackEXT): VkResult {.stdcall.}](vkGetProc("vkCreateDebugReportCallbackEXT")) + vkDestroyDebugReportCallbackEXT = cast[proc (instance: VkInstanc, callback: VkDebugReportCallbackEX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDebugReportCallbackEXT")) + vkDebugReportMessageEXT = cast[proc (instance: VkInstanc, flags: VkDebugReportFlagsEX, objectType: VkDebugReportObjectTypeEX, `object`: uint64_, location: size_, messageCode: int32_, pLayerPrefix: cstring, pMessage: cstring): void {.stdcall.}](vkGetProc("vkDebugReportMessageEXT")) # Load VK_EXT_debug_marker proc loadVK_EXT_debug_marker*() = - vkDebugMarkerSetObjectTagEXT = cast[proc(device: VkDevice, pTagInfo: ptr VkDebugMarkerObjectTagInfoEXT ): VkResult {.stdcall.}](vkGetProc("vkDebugMarkerSetObjectTagEXT")) - vkDebugMarkerSetObjectNameEXT = cast[proc(device: VkDevice, pNameInfo: ptr VkDebugMarkerObjectNameInfoEXT ): VkResult {.stdcall.}](vkGetProc("vkDebugMarkerSetObjectNameEXT")) - vkCmdDebugMarkerBeginEXT = cast[proc(commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT ): void {.stdcall.}](vkGetProc("vkCmdDebugMarkerBeginEXT")) - vkCmdDebugMarkerEndEXT = cast[proc(commandBuffer: VkCommandBuffer): void {.stdcall.}](vkGetProc("vkCmdDebugMarkerEndEXT")) - vkCmdDebugMarkerInsertEXT = cast[proc(commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT ): void {.stdcall.}](vkGetProc("vkCmdDebugMarkerInsertEXT")) + vkDebugMarkerSetObjectTagEXT = cast[proc (device: VkDevic, pTagInfo: ptr VkDebugMarkerObjectTagInfoEXT): VkResult {.stdcall.}](vkGetProc("vkDebugMarkerSetObjectTagEXT")) + vkDebugMarkerSetObjectNameEXT = cast[proc (device: VkDevic, pNameInfo: ptr VkDebugMarkerObjectNameInfoEXT): VkResult {.stdcall.}](vkGetProc("vkDebugMarkerSetObjectNameEXT")) + vkCmdDebugMarkerBeginEXT = cast[proc (commandBuffer: VkCommandBuffe, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT): void {.stdcall.}](vkGetProc("vkCmdDebugMarkerBeginEXT")) + vkCmdDebugMarkerEndEXT = cast[proc (commandBuffer: VkCommandBuffe): void {.stdcall.}](vkGetProc("vkCmdDebugMarkerEndEXT")) + vkCmdDebugMarkerInsertEXT = cast[proc (commandBuffer: VkCommandBuffe, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT): void {.stdcall.}](vkGetProc("vkCmdDebugMarkerInsertEXT")) # Load VK_KHR_video_queue proc loadVK_KHR_video_queue*() = - vkGetPhysicalDeviceVideoCapabilitiesKHR = cast[proc(physicalDevice: VkPhysicalDevice, pVideoProfile: ptr VkVideoProfileInfoKHR , pCapabilities: ptr VkVideoCapabilitiesKHR ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceVideoCapabilitiesKHR")) - vkGetPhysicalDeviceVideoFormatPropertiesKHR = cast[proc(physicalDevice: VkPhysicalDevice, pVideoFormatInfo: ptr VkPhysicalDeviceVideoFormatInfoKHR , pVideoFormatPropertyCount: ptr uint32 , pVideoFormatProperties: ptr VkVideoFormatPropertiesKHR ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceVideoFormatPropertiesKHR")) - vkCreateVideoSessionKHR = cast[proc(device: VkDevice, pCreateInfo: ptr VkVideoSessionCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pVideoSession: ptr VkVideoSessionKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateVideoSessionKHR")) - vkDestroyVideoSessionKHR = cast[proc(device: VkDevice, videoSession: VkVideoSessionKHR, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyVideoSessionKHR")) - vkGetVideoSessionMemoryRequirementsKHR = cast[proc(device: VkDevice, videoSession: VkVideoSessionKHR, pMemoryRequirementsCount: ptr uint32 , pMemoryRequirements: ptr VkVideoSessionMemoryRequirementsKHR ): VkResult {.stdcall.}](vkGetProc("vkGetVideoSessionMemoryRequirementsKHR")) - vkBindVideoSessionMemoryKHR = cast[proc(device: VkDevice, videoSession: VkVideoSessionKHR, bindSessionMemoryInfoCount: uint32, pBindSessionMemoryInfos: ptr VkBindVideoSessionMemoryInfoKHR ): VkResult {.stdcall.}](vkGetProc("vkBindVideoSessionMemoryKHR")) - vkCreateVideoSessionParametersKHR = cast[proc(device: VkDevice, pCreateInfo: ptr VkVideoSessionParametersCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pVideoSessionParameters: ptr VkVideoSessionParametersKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateVideoSessionParametersKHR")) - vkUpdateVideoSessionParametersKHR = cast[proc(device: VkDevice, videoSessionParameters: VkVideoSessionParametersKHR, pUpdateInfo: ptr VkVideoSessionParametersUpdateInfoKHR ): VkResult {.stdcall.}](vkGetProc("vkUpdateVideoSessionParametersKHR")) - vkDestroyVideoSessionParametersKHR = cast[proc(device: VkDevice, videoSessionParameters: VkVideoSessionParametersKHR, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyVideoSessionParametersKHR")) - vkCmdBeginVideoCodingKHR = cast[proc(commandBuffer: VkCommandBuffer, pBeginInfo: ptr VkVideoBeginCodingInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdBeginVideoCodingKHR")) - vkCmdEndVideoCodingKHR = cast[proc(commandBuffer: VkCommandBuffer, pEndCodingInfo: ptr VkVideoEndCodingInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdEndVideoCodingKHR")) - vkCmdControlVideoCodingKHR = cast[proc(commandBuffer: VkCommandBuffer, pCodingControlInfo: ptr VkVideoCodingControlInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdControlVideoCodingKHR")) + vkGetPhysicalDeviceVideoCapabilitiesKHR = cast[proc (physicalDevice: VkPhysicalDevic, pVideoProfile: ptr VkVideoProfileInfoKHR, pCapabilities: ptr VkVideoCapabilitiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceVideoCapabilitiesKHR")) + vkGetPhysicalDeviceVideoFormatPropertiesKHR = cast[proc (physicalDevice: VkPhysicalDevic, pVideoFormatInfo: ptr VkPhysicalDeviceVideoFormatInfoKHR, pVideoFormatPropertyCount: ptr uint32, pVideoFormatProperties: ptr VkVideoFormatPropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceVideoFormatPropertiesKHR")) + vkCreateVideoSessionKHR = cast[proc (device: VkDevic, pCreateInfo: ptr VkVideoSessionCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pVideoSession: ptr VkVideoSessionKHR): VkResult {.stdcall.}](vkGetProc("vkCreateVideoSessionKHR")) + vkDestroyVideoSessionKHR = cast[proc (device: VkDevic, videoSession: VkVideoSessionKH, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyVideoSessionKHR")) + vkGetVideoSessionMemoryRequirementsKHR = cast[proc (device: VkDevic, videoSession: VkVideoSessionKH, pMemoryRequirementsCount: ptr uint32, pMemoryRequirements: ptr VkVideoSessionMemoryRequirementsKHR): VkResult {.stdcall.}](vkGetProc("vkGetVideoSessionMemoryRequirementsKHR")) + vkBindVideoSessionMemoryKHR = cast[proc (device: VkDevic, videoSession: VkVideoSessionKH, bindSessionMemoryInfoCount: uint32_, pBindSessionMemoryInfos: ptr VkBindVideoSessionMemoryInfoKHR): VkResult {.stdcall.}](vkGetProc("vkBindVideoSessionMemoryKHR")) + vkCreateVideoSessionParametersKHR = cast[proc (device: VkDevic, pCreateInfo: ptr VkVideoSessionParametersCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pVideoSessionParameters: ptr VkVideoSessionParametersKHR): VkResult {.stdcall.}](vkGetProc("vkCreateVideoSessionParametersKHR")) + vkUpdateVideoSessionParametersKHR = cast[proc (device: VkDevic, videoSessionParameters: VkVideoSessionParametersKH, pUpdateInfo: ptr VkVideoSessionParametersUpdateInfoKHR): VkResult {.stdcall.}](vkGetProc("vkUpdateVideoSessionParametersKHR")) + vkDestroyVideoSessionParametersKHR = cast[proc (device: VkDevic, videoSessionParameters: VkVideoSessionParametersKH, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyVideoSessionParametersKHR")) + vkCmdBeginVideoCodingKHR = cast[proc (commandBuffer: VkCommandBuffe, pBeginInfo: ptr VkVideoBeginCodingInfoKHR): void {.stdcall.}](vkGetProc("vkCmdBeginVideoCodingKHR")) + vkCmdEndVideoCodingKHR = cast[proc (commandBuffer: VkCommandBuffe, pEndCodingInfo: ptr VkVideoEndCodingInfoKHR): void {.stdcall.}](vkGetProc("vkCmdEndVideoCodingKHR")) + vkCmdControlVideoCodingKHR = cast[proc (commandBuffer: VkCommandBuffe, pCodingControlInfo: ptr VkVideoCodingControlInfoKHR): void {.stdcall.}](vkGetProc("vkCmdControlVideoCodingKHR")) # Load VK_KHR_video_decode_queue proc loadVK_KHR_video_decode_queue*() = - vkCmdDecodeVideoKHR = cast[proc(commandBuffer: VkCommandBuffer, pDecodeInfo: ptr VkVideoDecodeInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdDecodeVideoKHR")) + vkCmdDecodeVideoKHR = cast[proc (commandBuffer: VkCommandBuffe, pDecodeInfo: ptr VkVideoDecodeInfoKHR): void {.stdcall.}](vkGetProc("vkCmdDecodeVideoKHR")) # Load VK_EXT_transform_feedback proc loadVK_EXT_transform_feedback*() = - vkCmdBindTransformFeedbackBuffersEXT = cast[proc(commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer , pOffsets: ptr VkDeviceSize , pSizes: ptr VkDeviceSize ): void {.stdcall.}](vkGetProc("vkCmdBindTransformFeedbackBuffersEXT")) - vkCmdBeginTransformFeedbackEXT = cast[proc(commandBuffer: VkCommandBuffer, firstCounterBuffer: uint32, counterBufferCount: uint32, pCounterBuffers: ptr VkBuffer , pCounterBufferOffsets: ptr VkDeviceSize ): void {.stdcall.}](vkGetProc("vkCmdBeginTransformFeedbackEXT")) - vkCmdEndTransformFeedbackEXT = cast[proc(commandBuffer: VkCommandBuffer, firstCounterBuffer: uint32, counterBufferCount: uint32, pCounterBuffers: ptr VkBuffer , pCounterBufferOffsets: ptr VkDeviceSize ): void {.stdcall.}](vkGetProc("vkCmdEndTransformFeedbackEXT")) - vkCmdBeginQueryIndexedEXT = cast[proc(commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, flags: VkQueryControlFlags, index: uint32): void {.stdcall.}](vkGetProc("vkCmdBeginQueryIndexedEXT")) - vkCmdEndQueryIndexedEXT = cast[proc(commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, index: uint32): void {.stdcall.}](vkGetProc("vkCmdEndQueryIndexedEXT")) - vkCmdDrawIndirectByteCountEXT = cast[proc(commandBuffer: VkCommandBuffer, instanceCount: uint32, firstInstance: uint32, counterBuffer: VkBuffer, counterBufferOffset: VkDeviceSize, counterOffset: uint32, vertexStride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawIndirectByteCountEXT")) + vkCmdBindTransformFeedbackBuffersEXT = cast[proc (commandBuffer: VkCommandBuffe, firstBinding: uint32_, bindingCount: uint32_, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize, pSizes: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdBindTransformFeedbackBuffersEXT")) + vkCmdBeginTransformFeedbackEXT = cast[proc (commandBuffer: VkCommandBuffe, firstCounterBuffer: uint32_, counterBufferCount: uint32_, pCounterBuffers: ptr VkBuffer, pCounterBufferOffsets: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdBeginTransformFeedbackEXT")) + vkCmdEndTransformFeedbackEXT = cast[proc (commandBuffer: VkCommandBuffe, firstCounterBuffer: uint32_, counterBufferCount: uint32_, pCounterBuffers: ptr VkBuffer, pCounterBufferOffsets: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdEndTransformFeedbackEXT")) + vkCmdBeginQueryIndexedEXT = cast[proc (commandBuffer: VkCommandBuffe, queryPool: VkQueryPoo, query: uint32_, flags: VkQueryControlFlag, index: uint32_): void {.stdcall.}](vkGetProc("vkCmdBeginQueryIndexedEXT")) + vkCmdEndQueryIndexedEXT = cast[proc (commandBuffer: VkCommandBuffe, queryPool: VkQueryPoo, query: uint32_, index: uint32_): void {.stdcall.}](vkGetProc("vkCmdEndQueryIndexedEXT")) + vkCmdDrawIndirectByteCountEXT = cast[proc (commandBuffer: VkCommandBuffe, instanceCount: uint32_, firstInstance: uint32_, counterBuffer: VkBuffe, counterBufferOffset: VkDeviceSiz, counterOffset: uint32_, vertexStride: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawIndirectByteCountEXT")) # Load VK_NVX_binary_import proc loadVK_NVX_binary_import*() = - vkCreateCuModuleNVX = cast[proc(device: VkDevice, pCreateInfo: ptr VkCuModuleCreateInfoNVX , pAllocator: ptr VkAllocationCallbacks , pModule: ptr VkCuModuleNVX ): VkResult {.stdcall.}](vkGetProc("vkCreateCuModuleNVX")) - vkCreateCuFunctionNVX = cast[proc(device: VkDevice, pCreateInfo: ptr VkCuFunctionCreateInfoNVX , pAllocator: ptr VkAllocationCallbacks , pFunction: ptr VkCuFunctionNVX ): VkResult {.stdcall.}](vkGetProc("vkCreateCuFunctionNVX")) - vkDestroyCuModuleNVX = cast[proc(device: VkDevice, module: VkCuModuleNVX, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyCuModuleNVX")) - vkDestroyCuFunctionNVX = cast[proc(device: VkDevice, function: VkCuFunctionNVX, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyCuFunctionNVX")) - vkCmdCuLaunchKernelNVX = cast[proc(commandBuffer: VkCommandBuffer, pLaunchInfo: ptr VkCuLaunchInfoNVX ): void {.stdcall.}](vkGetProc("vkCmdCuLaunchKernelNVX")) + vkCreateCuModuleNVX = cast[proc (device: VkDevic, pCreateInfo: ptr VkCuModuleCreateInfoNVX, pAllocator: ptr VkAllocationCallbacks, pModule: ptr VkCuModuleNVX): VkResult {.stdcall.}](vkGetProc("vkCreateCuModuleNVX")) + vkCreateCuFunctionNVX = cast[proc (device: VkDevic, pCreateInfo: ptr VkCuFunctionCreateInfoNVX, pAllocator: ptr VkAllocationCallbacks, pFunction: ptr VkCuFunctionNVX): VkResult {.stdcall.}](vkGetProc("vkCreateCuFunctionNVX")) + vkDestroyCuModuleNVX = cast[proc (device: VkDevic, module: VkCuModuleNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyCuModuleNVX")) + vkDestroyCuFunctionNVX = cast[proc (device: VkDevic, function: VkCuFunctionNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyCuFunctionNVX")) + vkCmdCuLaunchKernelNVX = cast[proc (commandBuffer: VkCommandBuffe, pLaunchInfo: ptr VkCuLaunchInfoNVX): void {.stdcall.}](vkGetProc("vkCmdCuLaunchKernelNVX")) # Load VK_NVX_image_view_handle proc loadVK_NVX_image_view_handle*() = - vkGetImageViewHandleNVX = cast[proc(device: VkDevice, pInfo: ptr VkImageViewHandleInfoNVX ): uint32 {.stdcall.}](vkGetProc("vkGetImageViewHandleNVX")) - vkGetImageViewAddressNVX = cast[proc(device: VkDevice, imageView: VkImageView, pProperties: ptr VkImageViewAddressPropertiesNVX ): VkResult {.stdcall.}](vkGetProc("vkGetImageViewAddressNVX")) + vkGetImageViewHandleNVX = cast[proc (device: VkDevic, pInfo: ptr VkImageViewHandleInfoNVX): uint32 {.stdcall.}](vkGetProc("vkGetImageViewHandleNVX")) + vkGetImageViewAddressNVX = cast[proc (device: VkDevic, imageView: VkImageVie, pProperties: ptr VkImageViewAddressPropertiesNVX): VkResult {.stdcall.}](vkGetProc("vkGetImageViewAddressNVX")) # Load VK_AMD_shader_info proc loadVK_AMD_shader_info*() = - vkGetShaderInfoAMD = cast[proc(device: VkDevice, pipeline: VkPipeline, shaderStage: VkShaderStageFlagBits, infoType: VkShaderInfoTypeAMD, pInfoSize: ptr uint , pInfo: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetShaderInfoAMD")) + vkGetShaderInfoAMD = cast[proc (device: VkDevic, pipeline: VkPipelin, shaderStage: VkShaderStageFlagBit, infoType: VkShaderInfoTypeAM, pInfoSize: ptr uint, pInfo: pointer): VkResult {.stdcall.}](vkGetProc("vkGetShaderInfoAMD")) # Load VK_GGP_stream_descriptor_surface proc loadVK_GGP_stream_descriptor_surface*() = - vkCreateStreamDescriptorSurfaceGGP = cast[proc(instance: VkInstance, pCreateInfo: ptr VkStreamDescriptorSurfaceCreateInfoGGP , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateStreamDescriptorSurfaceGGP")) + vkCreateStreamDescriptorSurfaceGGP = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkStreamDescriptorSurfaceCreateInfoGGP, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateStreamDescriptorSurfaceGGP")) # Load VK_NV_external_memory_capabilities proc loadVK_NV_external_memory_capabilities*() = - vkGetPhysicalDeviceExternalImageFormatPropertiesNV = cast[proc(physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, tiling: VkImageTiling, usage: VkImageUsageFlags, flags: VkImageCreateFlags, externalHandleType: VkExternalMemoryHandleTypeFlagsNV, pExternalImageFormatProperties: ptr VkExternalImageFormatPropertiesNV ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalImageFormatPropertiesNV")) + vkGetPhysicalDeviceExternalImageFormatPropertiesNV = cast[proc (physicalDevice: VkPhysicalDevic, format: VkForma, `type`: VkImageTyp, tiling: VkImageTilin, usage: VkImageUsageFlag, flags: VkImageCreateFlag, externalHandleType: VkExternalMemoryHandleTypeFlagsN, pExternalImageFormatProperties: ptr VkExternalImageFormatPropertiesNV): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalImageFormatPropertiesNV")) # Load VK_NV_external_memory_win32 proc loadVK_NV_external_memory_win32*() = - vkGetMemoryWin32HandleNV = cast[proc(device: VkDevice, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagsNV, pHandle: ptr HANDLE ): VkResult {.stdcall.}](vkGetProc("vkGetMemoryWin32HandleNV")) + vkGetMemoryWin32HandleNV = cast[proc (device: VkDevic, memory: VkDeviceMemor, handleType: VkExternalMemoryHandleTypeFlagsN, pHandle: ptr HANDLE): VkResult {.stdcall.}](vkGetProc("vkGetMemoryWin32HandleNV")) # Load VK_KHR_device_group proc loadVK_KHR_device_group*() = - vkGetDeviceGroupPresentCapabilitiesKHR = cast[proc(device: VkDevice, pDeviceGroupPresentCapabilities: ptr VkDeviceGroupPresentCapabilitiesKHR ): VkResult {.stdcall.}](vkGetProc("vkGetDeviceGroupPresentCapabilitiesKHR")) - vkGetDeviceGroupSurfacePresentModesKHR = cast[proc(device: VkDevice, surface: VkSurfaceKHR, pModes: ptr VkDeviceGroupPresentModeFlagsKHR ): VkResult {.stdcall.}](vkGetProc("vkGetDeviceGroupSurfacePresentModesKHR")) - vkGetPhysicalDevicePresentRectanglesKHR = cast[proc(physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pRectCount: ptr uint32 , pRects: ptr VkRect2D ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDevicePresentRectanglesKHR")) - vkAcquireNextImage2KHR = cast[proc(device: VkDevice, pAcquireInfo: ptr VkAcquireNextImageInfoKHR , pImageIndex: ptr uint32 ): VkResult {.stdcall.}](vkGetProc("vkAcquireNextImage2KHR")) + vkGetDeviceGroupPresentCapabilitiesKHR = cast[proc (device: VkDevic, pDeviceGroupPresentCapabilities: ptr VkDeviceGroupPresentCapabilitiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetDeviceGroupPresentCapabilitiesKHR")) + vkGetDeviceGroupSurfacePresentModesKHR = cast[proc (device: VkDevic, surface: VkSurfaceKH, pModes: ptr VkDeviceGroupPresentModeFlagsKHR): VkResult {.stdcall.}](vkGetProc("vkGetDeviceGroupSurfacePresentModesKHR")) + vkGetPhysicalDevicePresentRectanglesKHR = cast[proc (physicalDevice: VkPhysicalDevic, surface: VkSurfaceKH, pRectCount: ptr uint32, pRects: ptr VkRect2D): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDevicePresentRectanglesKHR")) + vkAcquireNextImage2KHR = cast[proc (device: VkDevic, pAcquireInfo: ptr VkAcquireNextImageInfoKHR, pImageIndex: ptr uint32): VkResult {.stdcall.}](vkGetProc("vkAcquireNextImage2KHR")) # Load VK_NN_vi_surface proc loadVK_NN_vi_surface*() = - vkCreateViSurfaceNN = cast[proc(instance: VkInstance, pCreateInfo: ptr VkViSurfaceCreateInfoNN , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateViSurfaceNN")) + vkCreateViSurfaceNN = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkViSurfaceCreateInfoNN, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateViSurfaceNN")) # Load VK_KHR_external_memory_win32 proc loadVK_KHR_external_memory_win32*() = - vkGetMemoryWin32HandleKHR = cast[proc(device: VkDevice, pGetWin32HandleInfo: ptr VkMemoryGetWin32HandleInfoKHR , pHandle: ptr HANDLE ): VkResult {.stdcall.}](vkGetProc("vkGetMemoryWin32HandleKHR")) - vkGetMemoryWin32HandlePropertiesKHR = cast[proc(device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, handle: HANDLE, pMemoryWin32HandleProperties: ptr VkMemoryWin32HandlePropertiesKHR ): VkResult {.stdcall.}](vkGetProc("vkGetMemoryWin32HandlePropertiesKHR")) + vkGetMemoryWin32HandleKHR = cast[proc (device: VkDevic, pGetWin32HandleInfo: ptr VkMemoryGetWin32HandleInfoKHR, pHandle: ptr HANDLE): VkResult {.stdcall.}](vkGetProc("vkGetMemoryWin32HandleKHR")) + vkGetMemoryWin32HandlePropertiesKHR = cast[proc (device: VkDevic, handleType: VkExternalMemoryHandleTypeFlagBit, handle: HANDL, pMemoryWin32HandleProperties: ptr VkMemoryWin32HandlePropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetMemoryWin32HandlePropertiesKHR")) # Load VK_KHR_external_memory_fd proc loadVK_KHR_external_memory_fd*() = - vkGetMemoryFdKHR = cast[proc(device: VkDevice, pGetFdInfo: ptr VkMemoryGetFdInfoKHR , pFd: ptr int ): VkResult {.stdcall.}](vkGetProc("vkGetMemoryFdKHR")) - vkGetMemoryFdPropertiesKHR = cast[proc(device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, fd: int, pMemoryFdProperties: ptr VkMemoryFdPropertiesKHR ): VkResult {.stdcall.}](vkGetProc("vkGetMemoryFdPropertiesKHR")) + vkGetMemoryFdKHR = cast[proc (device: VkDevic, pGetFdInfo: ptr VkMemoryGetFdInfoKHR, pFd: ptr int): VkResult {.stdcall.}](vkGetProc("vkGetMemoryFdKHR")) + vkGetMemoryFdPropertiesKHR = cast[proc (device: VkDevic, handleType: VkExternalMemoryHandleTypeFlagBit, fd: in, pMemoryFdProperties: ptr VkMemoryFdPropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetMemoryFdPropertiesKHR")) # Load VK_KHR_external_semaphore_win32 proc loadVK_KHR_external_semaphore_win32*() = - vkImportSemaphoreWin32HandleKHR = cast[proc(device: VkDevice, pImportSemaphoreWin32HandleInfo: ptr VkImportSemaphoreWin32HandleInfoKHR ): VkResult {.stdcall.}](vkGetProc("vkImportSemaphoreWin32HandleKHR")) - vkGetSemaphoreWin32HandleKHR = cast[proc(device: VkDevice, pGetWin32HandleInfo: ptr VkSemaphoreGetWin32HandleInfoKHR , pHandle: ptr HANDLE ): VkResult {.stdcall.}](vkGetProc("vkGetSemaphoreWin32HandleKHR")) + vkImportSemaphoreWin32HandleKHR = cast[proc (device: VkDevic, pImportSemaphoreWin32HandleInfo: ptr VkImportSemaphoreWin32HandleInfoKHR): VkResult {.stdcall.}](vkGetProc("vkImportSemaphoreWin32HandleKHR")) + vkGetSemaphoreWin32HandleKHR = cast[proc (device: VkDevic, pGetWin32HandleInfo: ptr VkSemaphoreGetWin32HandleInfoKHR, pHandle: ptr HANDLE): VkResult {.stdcall.}](vkGetProc("vkGetSemaphoreWin32HandleKHR")) # Load VK_KHR_external_semaphore_fd proc loadVK_KHR_external_semaphore_fd*() = - vkImportSemaphoreFdKHR = cast[proc(device: VkDevice, pImportSemaphoreFdInfo: ptr VkImportSemaphoreFdInfoKHR ): VkResult {.stdcall.}](vkGetProc("vkImportSemaphoreFdKHR")) - vkGetSemaphoreFdKHR = cast[proc(device: VkDevice, pGetFdInfo: ptr VkSemaphoreGetFdInfoKHR , pFd: ptr int ): VkResult {.stdcall.}](vkGetProc("vkGetSemaphoreFdKHR")) + vkImportSemaphoreFdKHR = cast[proc (device: VkDevic, pImportSemaphoreFdInfo: ptr VkImportSemaphoreFdInfoKHR): VkResult {.stdcall.}](vkGetProc("vkImportSemaphoreFdKHR")) + vkGetSemaphoreFdKHR = cast[proc (device: VkDevic, pGetFdInfo: ptr VkSemaphoreGetFdInfoKHR, pFd: ptr int): VkResult {.stdcall.}](vkGetProc("vkGetSemaphoreFdKHR")) # Load VK_KHR_push_descriptor proc loadVK_KHR_push_descriptor*() = - vkCmdPushDescriptorSetKHR = cast[proc(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, set: uint32, descriptorWriteCount: uint32, pDescriptorWrites: ptr VkWriteDescriptorSet ): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetKHR")) - vkCmdPushDescriptorSetWithTemplateKHR = cast[proc(commandBuffer: VkCommandBuffer, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: uint32, pData: pointer ): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplateKHR")) - vkCmdPushDescriptorSetWithTemplateKHR = cast[proc(commandBuffer: VkCommandBuffer, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: uint32, pData: pointer ): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplateKHR")) + vkCmdPushDescriptorSetKHR = cast[proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, layout: VkPipelineLayou, set: uint32_, descriptorWriteCount: uint32_, pDescriptorWrites: ptr VkWriteDescriptorSet): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetKHR")) + vkCmdPushDescriptorSetWithTemplateKHR = cast[proc (commandBuffer: VkCommandBuffe, descriptorUpdateTemplate: VkDescriptorUpdateTemplat, layout: VkPipelineLayou, set: uint32_, pData: pointer): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplateKHR")) + vkCmdPushDescriptorSetWithTemplateKHR = cast[proc (commandBuffer: VkCommandBuffe, descriptorUpdateTemplate: VkDescriptorUpdateTemplat, layout: VkPipelineLayou, set: uint32_, pData: pointer): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplateKHR")) # Load VK_EXT_conditional_rendering proc loadVK_EXT_conditional_rendering*() = - vkCmdBeginConditionalRenderingEXT = cast[proc(commandBuffer: VkCommandBuffer, pConditionalRenderingBegin: ptr VkConditionalRenderingBeginInfoEXT ): void {.stdcall.}](vkGetProc("vkCmdBeginConditionalRenderingEXT")) - vkCmdEndConditionalRenderingEXT = cast[proc(commandBuffer: VkCommandBuffer): void {.stdcall.}](vkGetProc("vkCmdEndConditionalRenderingEXT")) + vkCmdBeginConditionalRenderingEXT = cast[proc (commandBuffer: VkCommandBuffe, pConditionalRenderingBegin: ptr VkConditionalRenderingBeginInfoEXT): void {.stdcall.}](vkGetProc("vkCmdBeginConditionalRenderingEXT")) + vkCmdEndConditionalRenderingEXT = cast[proc (commandBuffer: VkCommandBuffe): void {.stdcall.}](vkGetProc("vkCmdEndConditionalRenderingEXT")) # Load VK_KHR_descriptor_update_template proc loadVK_KHR_descriptor_update_template*() = - vkCmdPushDescriptorSetWithTemplateKHR = cast[proc(commandBuffer: VkCommandBuffer, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: uint32, pData: pointer ): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplateKHR")) + vkCmdPushDescriptorSetWithTemplateKHR = cast[proc (commandBuffer: VkCommandBuffe, descriptorUpdateTemplate: VkDescriptorUpdateTemplat, layout: VkPipelineLayou, set: uint32_, pData: pointer): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplateKHR")) # Load VK_NV_clip_space_w_scaling proc loadVK_NV_clip_space_w_scaling*() = - vkCmdSetViewportWScalingNV = cast[proc(commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportWScalings: ptr VkViewportWScalingNV ): void {.stdcall.}](vkGetProc("vkCmdSetViewportWScalingNV")) + vkCmdSetViewportWScalingNV = cast[proc (commandBuffer: VkCommandBuffe, firstViewport: uint32_, viewportCount: uint32_, pViewportWScalings: ptr VkViewportWScalingNV): void {.stdcall.}](vkGetProc("vkCmdSetViewportWScalingNV")) # Load VK_EXT_direct_mode_display proc loadVK_EXT_direct_mode_display*() = - vkReleaseDisplayEXT = cast[proc(physicalDevice: VkPhysicalDevice, display: VkDisplayKHR): VkResult {.stdcall.}](vkGetProc("vkReleaseDisplayEXT")) + vkReleaseDisplayEXT = cast[proc (physicalDevice: VkPhysicalDevic, display: VkDisplayKH): VkResult {.stdcall.}](vkGetProc("vkReleaseDisplayEXT")) # Load VK_EXT_acquire_xlib_display proc loadVK_EXT_acquire_xlib_display*() = - vkAcquireXlibDisplayEXT = cast[proc(physicalDevice: VkPhysicalDevice, dpy: ptr Display , display: VkDisplayKHR): VkResult {.stdcall.}](vkGetProc("vkAcquireXlibDisplayEXT")) - vkGetRandROutputDisplayEXT = cast[proc(physicalDevice: VkPhysicalDevice, dpy: ptr Display , rrOutput: RROutput, pDisplay: ptr VkDisplayKHR ): VkResult {.stdcall.}](vkGetProc("vkGetRandROutputDisplayEXT")) + vkAcquireXlibDisplayEXT = cast[proc (physicalDevice: VkPhysicalDevic, dpy: ptr Display, display: VkDisplayKH): VkResult {.stdcall.}](vkGetProc("vkAcquireXlibDisplayEXT")) + vkGetRandROutputDisplayEXT = cast[proc (physicalDevice: VkPhysicalDevic, dpy: ptr Display, rrOutput: RROutpu, pDisplay: ptr VkDisplayKHR): VkResult {.stdcall.}](vkGetProc("vkGetRandROutputDisplayEXT")) # Load VK_EXT_display_surface_counter proc loadVK_EXT_display_surface_counter*() = - vkGetPhysicalDeviceSurfaceCapabilities2EXT = cast[proc(physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceCapabilities: ptr VkSurfaceCapabilities2EXT ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceCapabilities2EXT")) + vkGetPhysicalDeviceSurfaceCapabilities2EXT = cast[proc (physicalDevice: VkPhysicalDevic, surface: VkSurfaceKH, pSurfaceCapabilities: ptr VkSurfaceCapabilities2EXT): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceCapabilities2EXT")) # Load VK_EXT_display_control proc loadVK_EXT_display_control*() = - vkDisplayPowerControlEXT = cast[proc(device: VkDevice, display: VkDisplayKHR, pDisplayPowerInfo: ptr VkDisplayPowerInfoEXT ): VkResult {.stdcall.}](vkGetProc("vkDisplayPowerControlEXT")) - vkRegisterDeviceEventEXT = cast[proc(device: VkDevice, pDeviceEventInfo: ptr VkDeviceEventInfoEXT , pAllocator: ptr VkAllocationCallbacks , pFence: ptr VkFence ): VkResult {.stdcall.}](vkGetProc("vkRegisterDeviceEventEXT")) - vkRegisterDisplayEventEXT = cast[proc(device: VkDevice, display: VkDisplayKHR, pDisplayEventInfo: ptr VkDisplayEventInfoEXT , pAllocator: ptr VkAllocationCallbacks , pFence: ptr VkFence ): VkResult {.stdcall.}](vkGetProc("vkRegisterDisplayEventEXT")) - vkGetSwapchainCounterEXT = cast[proc(device: VkDevice, swapchain: VkSwapchainKHR, counter: VkSurfaceCounterFlagBitsEXT, pCounterValue: ptr uint64 ): VkResult {.stdcall.}](vkGetProc("vkGetSwapchainCounterEXT")) + vkDisplayPowerControlEXT = cast[proc (device: VkDevic, display: VkDisplayKH, pDisplayPowerInfo: ptr VkDisplayPowerInfoEXT): VkResult {.stdcall.}](vkGetProc("vkDisplayPowerControlEXT")) + vkRegisterDeviceEventEXT = cast[proc (device: VkDevic, pDeviceEventInfo: ptr VkDeviceEventInfoEXT, pAllocator: ptr VkAllocationCallbacks, pFence: ptr VkFence): VkResult {.stdcall.}](vkGetProc("vkRegisterDeviceEventEXT")) + vkRegisterDisplayEventEXT = cast[proc (device: VkDevic, display: VkDisplayKH, pDisplayEventInfo: ptr VkDisplayEventInfoEXT, pAllocator: ptr VkAllocationCallbacks, pFence: ptr VkFence): VkResult {.stdcall.}](vkGetProc("vkRegisterDisplayEventEXT")) + vkGetSwapchainCounterEXT = cast[proc (device: VkDevic, swapchain: VkSwapchainKH, counter: VkSurfaceCounterFlagBitsEX, pCounterValue: ptr uint64): VkResult {.stdcall.}](vkGetProc("vkGetSwapchainCounterEXT")) # Load VK_GOOGLE_display_timing proc loadVK_GOOGLE_display_timing*() = - vkGetRefreshCycleDurationGOOGLE = cast[proc(device: VkDevice, swapchain: VkSwapchainKHR, pDisplayTimingProperties: ptr VkRefreshCycleDurationGOOGLE ): VkResult {.stdcall.}](vkGetProc("vkGetRefreshCycleDurationGOOGLE")) - vkGetPastPresentationTimingGOOGLE = cast[proc(device: VkDevice, swapchain: VkSwapchainKHR, pPresentationTimingCount: ptr uint32 , pPresentationTimings: ptr VkPastPresentationTimingGOOGLE ): VkResult {.stdcall.}](vkGetProc("vkGetPastPresentationTimingGOOGLE")) + vkGetRefreshCycleDurationGOOGLE = cast[proc (device: VkDevic, swapchain: VkSwapchainKH, pDisplayTimingProperties: ptr VkRefreshCycleDurationGOOGLE): VkResult {.stdcall.}](vkGetProc("vkGetRefreshCycleDurationGOOGLE")) + vkGetPastPresentationTimingGOOGLE = cast[proc (device: VkDevic, swapchain: VkSwapchainKH, pPresentationTimingCount: ptr uint32, pPresentationTimings: ptr VkPastPresentationTimingGOOGLE): VkResult {.stdcall.}](vkGetProc("vkGetPastPresentationTimingGOOGLE")) # Load VK_EXT_discard_rectangles proc loadVK_EXT_discard_rectangles*() = - vkCmdSetDiscardRectangleEXT = cast[proc(commandBuffer: VkCommandBuffer, firstDiscardRectangle: uint32, discardRectangleCount: uint32, pDiscardRectangles: ptr VkRect2D ): void {.stdcall.}](vkGetProc("vkCmdSetDiscardRectangleEXT")) - vkCmdSetDiscardRectangleEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, discardRectangleEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDiscardRectangleEnableEXT")) - vkCmdSetDiscardRectangleModeEXT = cast[proc(commandBuffer: VkCommandBuffer, discardRectangleMode: VkDiscardRectangleModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetDiscardRectangleModeEXT")) + vkCmdSetDiscardRectangleEXT = cast[proc (commandBuffer: VkCommandBuffe, firstDiscardRectangle: uint32_, discardRectangleCount: uint32_, pDiscardRectangles: ptr VkRect2D): void {.stdcall.}](vkGetProc("vkCmdSetDiscardRectangleEXT")) + vkCmdSetDiscardRectangleEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, discardRectangleEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetDiscardRectangleEnableEXT")) + vkCmdSetDiscardRectangleModeEXT = cast[proc (commandBuffer: VkCommandBuffe, discardRectangleMode: VkDiscardRectangleModeEX): void {.stdcall.}](vkGetProc("vkCmdSetDiscardRectangleModeEXT")) # Load VK_EXT_hdr_metadata proc loadVK_EXT_hdr_metadata*() = - vkSetHdrMetadataEXT = cast[proc(device: VkDevice, swapchainCount: uint32, pSwapchains: ptr VkSwapchainKHR , pMetadata: ptr VkHdrMetadataEXT ): void {.stdcall.}](vkGetProc("vkSetHdrMetadataEXT")) + vkSetHdrMetadataEXT = cast[proc (device: VkDevic, swapchainCount: uint32_, pSwapchains: ptr VkSwapchainKHR, pMetadata: ptr VkHdrMetadataEXT): void {.stdcall.}](vkGetProc("vkSetHdrMetadataEXT")) # Load VK_KHR_shared_presentable_image proc loadVK_KHR_shared_presentable_image*() = - vkGetSwapchainStatusKHR = cast[proc(device: VkDevice, swapchain: VkSwapchainKHR): VkResult {.stdcall.}](vkGetProc("vkGetSwapchainStatusKHR")) + vkGetSwapchainStatusKHR = cast[proc (device: VkDevic, swapchain: VkSwapchainKH): VkResult {.stdcall.}](vkGetProc("vkGetSwapchainStatusKHR")) # Load VK_KHR_external_fence_win32 proc loadVK_KHR_external_fence_win32*() = - vkImportFenceWin32HandleKHR = cast[proc(device: VkDevice, pImportFenceWin32HandleInfo: ptr VkImportFenceWin32HandleInfoKHR ): VkResult {.stdcall.}](vkGetProc("vkImportFenceWin32HandleKHR")) - vkGetFenceWin32HandleKHR = cast[proc(device: VkDevice, pGetWin32HandleInfo: ptr VkFenceGetWin32HandleInfoKHR , pHandle: ptr HANDLE ): VkResult {.stdcall.}](vkGetProc("vkGetFenceWin32HandleKHR")) + vkImportFenceWin32HandleKHR = cast[proc (device: VkDevic, pImportFenceWin32HandleInfo: ptr VkImportFenceWin32HandleInfoKHR): VkResult {.stdcall.}](vkGetProc("vkImportFenceWin32HandleKHR")) + vkGetFenceWin32HandleKHR = cast[proc (device: VkDevic, pGetWin32HandleInfo: ptr VkFenceGetWin32HandleInfoKHR, pHandle: ptr HANDLE): VkResult {.stdcall.}](vkGetProc("vkGetFenceWin32HandleKHR")) # Load VK_KHR_external_fence_fd proc loadVK_KHR_external_fence_fd*() = - vkImportFenceFdKHR = cast[proc(device: VkDevice, pImportFenceFdInfo: ptr VkImportFenceFdInfoKHR ): VkResult {.stdcall.}](vkGetProc("vkImportFenceFdKHR")) - vkGetFenceFdKHR = cast[proc(device: VkDevice, pGetFdInfo: ptr VkFenceGetFdInfoKHR , pFd: ptr int ): VkResult {.stdcall.}](vkGetProc("vkGetFenceFdKHR")) + vkImportFenceFdKHR = cast[proc (device: VkDevic, pImportFenceFdInfo: ptr VkImportFenceFdInfoKHR): VkResult {.stdcall.}](vkGetProc("vkImportFenceFdKHR")) + vkGetFenceFdKHR = cast[proc (device: VkDevic, pGetFdInfo: ptr VkFenceGetFdInfoKHR, pFd: ptr int): VkResult {.stdcall.}](vkGetProc("vkGetFenceFdKHR")) # Load VK_KHR_performance_query proc loadVK_KHR_performance_query*() = - vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = cast[proc(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, pCounterCount: ptr uint32 , pCounters: ptr VkPerformanceCounterKHR , pCounterDescriptions: ptr VkPerformanceCounterDescriptionKHR ): VkResult {.stdcall.}](vkGetProc("vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR")) - vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = cast[proc(physicalDevice: VkPhysicalDevice, pPerformanceQueryCreateInfo: ptr VkQueryPoolPerformanceCreateInfoKHR , pNumPasses: ptr uint32 ): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR")) - vkAcquireProfilingLockKHR = cast[proc(device: VkDevice, pInfo: ptr VkAcquireProfilingLockInfoKHR ): VkResult {.stdcall.}](vkGetProc("vkAcquireProfilingLockKHR")) - vkReleaseProfilingLockKHR = cast[proc(device: VkDevice): void {.stdcall.}](vkGetProc("vkReleaseProfilingLockKHR")) + vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = cast[proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, pCounterCount: ptr uint32, pCounters: ptr VkPerformanceCounterKHR, pCounterDescriptions: ptr VkPerformanceCounterDescriptionKHR): VkResult {.stdcall.}](vkGetProc("vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR")) + vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = cast[proc (physicalDevice: VkPhysicalDevic, pPerformanceQueryCreateInfo: ptr VkQueryPoolPerformanceCreateInfoKHR, pNumPasses: ptr uint32): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR")) + vkAcquireProfilingLockKHR = cast[proc (device: VkDevic, pInfo: ptr VkAcquireProfilingLockInfoKHR): VkResult {.stdcall.}](vkGetProc("vkAcquireProfilingLockKHR")) + vkReleaseProfilingLockKHR = cast[proc (device: VkDevic): void {.stdcall.}](vkGetProc("vkReleaseProfilingLockKHR")) # Load VK_KHR_get_surface_capabilities2 proc loadVK_KHR_get_surface_capabilities2*() = - vkGetPhysicalDeviceSurfaceCapabilities2KHR = cast[proc(physicalDevice: VkPhysicalDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR , pSurfaceCapabilities: ptr VkSurfaceCapabilities2KHR ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceCapabilities2KHR")) - vkGetPhysicalDeviceSurfaceFormats2KHR = cast[proc(physicalDevice: VkPhysicalDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR , pSurfaceFormatCount: ptr uint32 , pSurfaceFormats: ptr VkSurfaceFormat2KHR ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceFormats2KHR")) + vkGetPhysicalDeviceSurfaceCapabilities2KHR = cast[proc (physicalDevice: VkPhysicalDevic, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pSurfaceCapabilities: ptr VkSurfaceCapabilities2KHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceCapabilities2KHR")) + vkGetPhysicalDeviceSurfaceFormats2KHR = cast[proc (physicalDevice: VkPhysicalDevic, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pSurfaceFormatCount: ptr uint32, pSurfaceFormats: ptr VkSurfaceFormat2KHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceFormats2KHR")) # Load VK_KHR_get_display_properties2 proc loadVK_KHR_get_display_properties2*() = - vkGetPhysicalDeviceDisplayProperties2KHR = cast[proc(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkDisplayProperties2KHR ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceDisplayProperties2KHR")) - vkGetPhysicalDeviceDisplayPlaneProperties2KHR = cast[proc(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkDisplayPlaneProperties2KHR ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceDisplayPlaneProperties2KHR")) - vkGetDisplayModeProperties2KHR = cast[proc(physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pPropertyCount: ptr uint32 , pProperties: ptr VkDisplayModeProperties2KHR ): VkResult {.stdcall.}](vkGetProc("vkGetDisplayModeProperties2KHR")) - vkGetDisplayPlaneCapabilities2KHR = cast[proc(physicalDevice: VkPhysicalDevice, pDisplayPlaneInfo: ptr VkDisplayPlaneInfo2KHR , pCapabilities: ptr VkDisplayPlaneCapabilities2KHR ): VkResult {.stdcall.}](vkGetProc("vkGetDisplayPlaneCapabilities2KHR")) + vkGetPhysicalDeviceDisplayProperties2KHR = cast[proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayProperties2KHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceDisplayProperties2KHR")) + vkGetPhysicalDeviceDisplayPlaneProperties2KHR = cast[proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayPlaneProperties2KHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceDisplayPlaneProperties2KHR")) + vkGetDisplayModeProperties2KHR = cast[proc (physicalDevice: VkPhysicalDevic, display: VkDisplayKH, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayModeProperties2KHR): VkResult {.stdcall.}](vkGetProc("vkGetDisplayModeProperties2KHR")) + vkGetDisplayPlaneCapabilities2KHR = cast[proc (physicalDevice: VkPhysicalDevic, pDisplayPlaneInfo: ptr VkDisplayPlaneInfo2KHR, pCapabilities: ptr VkDisplayPlaneCapabilities2KHR): VkResult {.stdcall.}](vkGetProc("vkGetDisplayPlaneCapabilities2KHR")) # Load VK_MVK_ios_surface proc loadVK_MVK_ios_surface*() = - vkCreateIOSSurfaceMVK = cast[proc(instance: VkInstance, pCreateInfo: ptr VkIOSSurfaceCreateInfoMVK , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateIOSSurfaceMVK")) + vkCreateIOSSurfaceMVK = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkIOSSurfaceCreateInfoMVK, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateIOSSurfaceMVK")) # Load VK_MVK_macos_surface proc loadVK_MVK_macos_surface*() = - vkCreateMacOSSurfaceMVK = cast[proc(instance: VkInstance, pCreateInfo: ptr VkMacOSSurfaceCreateInfoMVK , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateMacOSSurfaceMVK")) + vkCreateMacOSSurfaceMVK = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkMacOSSurfaceCreateInfoMVK, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateMacOSSurfaceMVK")) # Load VK_EXT_debug_utils proc loadVK_EXT_debug_utils*() = - vkSetDebugUtilsObjectNameEXT = cast[proc(device: VkDevice, pNameInfo: ptr VkDebugUtilsObjectNameInfoEXT ): VkResult {.stdcall.}](vkGetProc("vkSetDebugUtilsObjectNameEXT")) - vkSetDebugUtilsObjectTagEXT = cast[proc(device: VkDevice, pTagInfo: ptr VkDebugUtilsObjectTagInfoEXT ): VkResult {.stdcall.}](vkGetProc("vkSetDebugUtilsObjectTagEXT")) - vkQueueBeginDebugUtilsLabelEXT = cast[proc(queue: VkQueue, pLabelInfo: ptr VkDebugUtilsLabelEXT ): void {.stdcall.}](vkGetProc("vkQueueBeginDebugUtilsLabelEXT")) - vkQueueEndDebugUtilsLabelEXT = cast[proc(queue: VkQueue): void {.stdcall.}](vkGetProc("vkQueueEndDebugUtilsLabelEXT")) - vkQueueInsertDebugUtilsLabelEXT = cast[proc(queue: VkQueue, pLabelInfo: ptr VkDebugUtilsLabelEXT ): void {.stdcall.}](vkGetProc("vkQueueInsertDebugUtilsLabelEXT")) - vkCmdBeginDebugUtilsLabelEXT = cast[proc(commandBuffer: VkCommandBuffer, pLabelInfo: ptr VkDebugUtilsLabelEXT ): void {.stdcall.}](vkGetProc("vkCmdBeginDebugUtilsLabelEXT")) - vkCmdEndDebugUtilsLabelEXT = cast[proc(commandBuffer: VkCommandBuffer): void {.stdcall.}](vkGetProc("vkCmdEndDebugUtilsLabelEXT")) - vkCmdInsertDebugUtilsLabelEXT = cast[proc(commandBuffer: VkCommandBuffer, pLabelInfo: ptr VkDebugUtilsLabelEXT ): void {.stdcall.}](vkGetProc("vkCmdInsertDebugUtilsLabelEXT")) - vkCreateDebugUtilsMessengerEXT = cast[proc(instance: VkInstance, pCreateInfo: ptr VkDebugUtilsMessengerCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pMessenger: ptr VkDebugUtilsMessengerEXT ): VkResult {.stdcall.}](vkGetProc("vkCreateDebugUtilsMessengerEXT")) - vkDestroyDebugUtilsMessengerEXT = cast[proc(instance: VkInstance, messenger: VkDebugUtilsMessengerEXT, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyDebugUtilsMessengerEXT")) - vkSubmitDebugUtilsMessageEXT = cast[proc(instance: VkInstance, messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEXT, messageTypes: VkDebugUtilsMessageTypeFlagsEXT, pCallbackData: ptr VkDebugUtilsMessengerCallbackDataEXT ): void {.stdcall.}](vkGetProc("vkSubmitDebugUtilsMessageEXT")) + vkSetDebugUtilsObjectNameEXT = cast[proc (device: VkDevic, pNameInfo: ptr VkDebugUtilsObjectNameInfoEXT): VkResult {.stdcall.}](vkGetProc("vkSetDebugUtilsObjectNameEXT")) + vkSetDebugUtilsObjectTagEXT = cast[proc (device: VkDevic, pTagInfo: ptr VkDebugUtilsObjectTagInfoEXT): VkResult {.stdcall.}](vkGetProc("vkSetDebugUtilsObjectTagEXT")) + vkQueueBeginDebugUtilsLabelEXT = cast[proc (queue: VkQueu, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.}](vkGetProc("vkQueueBeginDebugUtilsLabelEXT")) + vkQueueEndDebugUtilsLabelEXT = cast[proc (queue: VkQueu): void {.stdcall.}](vkGetProc("vkQueueEndDebugUtilsLabelEXT")) + vkQueueInsertDebugUtilsLabelEXT = cast[proc (queue: VkQueu, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.}](vkGetProc("vkQueueInsertDebugUtilsLabelEXT")) + vkCmdBeginDebugUtilsLabelEXT = cast[proc (commandBuffer: VkCommandBuffe, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.}](vkGetProc("vkCmdBeginDebugUtilsLabelEXT")) + vkCmdEndDebugUtilsLabelEXT = cast[proc (commandBuffer: VkCommandBuffe): void {.stdcall.}](vkGetProc("vkCmdEndDebugUtilsLabelEXT")) + vkCmdInsertDebugUtilsLabelEXT = cast[proc (commandBuffer: VkCommandBuffe, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.}](vkGetProc("vkCmdInsertDebugUtilsLabelEXT")) + vkCreateDebugUtilsMessengerEXT = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkDebugUtilsMessengerCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pMessenger: ptr VkDebugUtilsMessengerEXT): VkResult {.stdcall.}](vkGetProc("vkCreateDebugUtilsMessengerEXT")) + vkDestroyDebugUtilsMessengerEXT = cast[proc (instance: VkInstanc, messenger: VkDebugUtilsMessengerEX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDebugUtilsMessengerEXT")) + vkSubmitDebugUtilsMessageEXT = cast[proc (instance: VkInstanc, messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEX, messageTypes: VkDebugUtilsMessageTypeFlagsEX, pCallbackData: ptr VkDebugUtilsMessengerCallbackDataEXT): void {.stdcall.}](vkGetProc("vkSubmitDebugUtilsMessageEXT")) # Load VK_ANDROID_external_memory_android_hardware_buffer proc loadVK_ANDROID_external_memory_android_hardware_buffer*() = - vkGetAndroidHardwareBufferPropertiesANDROID = cast[proc(device: VkDevice, buffer: ptr AHardwareBuffer , pProperties: ptr VkAndroidHardwareBufferPropertiesANDROID ): VkResult {.stdcall.}](vkGetProc("vkGetAndroidHardwareBufferPropertiesANDROID")) - vkGetMemoryAndroidHardwareBufferANDROID = cast[proc(device: VkDevice, pInfo: ptr VkMemoryGetAndroidHardwareBufferInfoANDROID , pBuffer: ptr ptr AHardwareBuffer ): VkResult {.stdcall.}](vkGetProc("vkGetMemoryAndroidHardwareBufferANDROID")) + vkGetAndroidHardwareBufferPropertiesANDROID = cast[proc (device: VkDevic, buffer: ptr AHardwareBuffer, pProperties: ptr VkAndroidHardwareBufferPropertiesANDROID): VkResult {.stdcall.}](vkGetProc("vkGetAndroidHardwareBufferPropertiesANDROID")) + vkGetMemoryAndroidHardwareBufferANDROID = cast[proc (device: VkDevic, pInfo: ptr VkMemoryGetAndroidHardwareBufferInfoANDROID, pBuffer: ptr ptr AHardwareBuffer): VkResult {.stdcall.}](vkGetProc("vkGetMemoryAndroidHardwareBufferANDROID")) # Load VK_AMDX_shader_enqueue proc loadVK_AMDX_shader_enqueue*() = - vkCreateExecutionGraphPipelinesAMDX = cast[proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkExecutionGraphPipelineCreateInfoAMDX , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.}](vkGetProc("vkCreateExecutionGraphPipelinesAMDX")) - vkGetExecutionGraphPipelineScratchSizeAMDX = cast[proc(device: VkDevice, executionGraph: VkPipeline, pSizeInfo: ptr VkExecutionGraphPipelineScratchSizeAMDX ): VkResult {.stdcall.}](vkGetProc("vkGetExecutionGraphPipelineScratchSizeAMDX")) - vkGetExecutionGraphPipelineNodeIndexAMDX = cast[proc(device: VkDevice, executionGraph: VkPipeline, pNodeInfo: ptr VkPipelineShaderStageNodeCreateInfoAMDX , pNodeIndex: ptr uint32 ): VkResult {.stdcall.}](vkGetProc("vkGetExecutionGraphPipelineNodeIndexAMDX")) - vkCmdInitializeGraphScratchMemoryAMDX = cast[proc(commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress): void {.stdcall.}](vkGetProc("vkCmdInitializeGraphScratchMemoryAMDX")) - vkCmdDispatchGraphAMDX = cast[proc(commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, pCountInfo: ptr VkDispatchGraphCountInfoAMDX ): void {.stdcall.}](vkGetProc("vkCmdDispatchGraphAMDX")) - vkCmdDispatchGraphIndirectAMDX = cast[proc(commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, pCountInfo: ptr VkDispatchGraphCountInfoAMDX ): void {.stdcall.}](vkGetProc("vkCmdDispatchGraphIndirectAMDX")) - vkCmdDispatchGraphIndirectCountAMDX = cast[proc(commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, countInfo: VkDeviceAddress): void {.stdcall.}](vkGetProc("vkCmdDispatchGraphIndirectCountAMDX")) + vkCreateExecutionGraphPipelinesAMDX = cast[proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkExecutionGraphPipelineCreateInfoAMDX, pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.}](vkGetProc("vkCreateExecutionGraphPipelinesAMDX")) + vkGetExecutionGraphPipelineScratchSizeAMDX = cast[proc (device: VkDevic, executionGraph: VkPipelin, pSizeInfo: ptr VkExecutionGraphPipelineScratchSizeAMDX ): VkResult {.stdcall.}](vkGetProc("vkGetExecutionGraphPipelineScratchSizeAMDX")) + vkGetExecutionGraphPipelineNodeIndexAMDX = cast[proc (device: VkDevic, executionGraph: VkPipelin, pNodeInfo: ptr VkPipelineShaderStageNodeCreateInfoAMDX , pNodeIndex: ptr uint32 ): VkResult {.stdcall.}](vkGetProc("vkGetExecutionGraphPipelineNodeIndexAMDX")) + vkCmdInitializeGraphScratchMemoryAMDX = cast[proc (commandBuffer: VkCommandBuffe, scratch: VkDeviceAddres): void {.stdcall.}](vkGetProc("vkCmdInitializeGraphScratchMemoryAMDX")) + vkCmdDispatchGraphAMDX = cast[proc (commandBuffer: VkCommandBuffe, scratch: VkDeviceAddres, pCountInfo: ptr VkDispatchGraphCountInfoAMDX ): void {.stdcall.}](vkGetProc("vkCmdDispatchGraphAMDX")) + vkCmdDispatchGraphIndirectAMDX = cast[proc (commandBuffer: VkCommandBuffe, scratch: VkDeviceAddres, pCountInfo: ptr VkDispatchGraphCountInfoAMDX ): void {.stdcall.}](vkGetProc("vkCmdDispatchGraphIndirectAMDX")) + vkCmdDispatchGraphIndirectCountAMDX = cast[proc (commandBuffer: VkCommandBuffe, scratch: VkDeviceAddres, countInfo: VkDeviceAddres): void {.stdcall.}](vkGetProc("vkCmdDispatchGraphIndirectCountAMDX")) # Load VK_EXT_sample_locations proc loadVK_EXT_sample_locations*() = - vkCmdSetSampleLocationsEXT = cast[proc(commandBuffer: VkCommandBuffer, pSampleLocationsInfo: ptr VkSampleLocationsInfoEXT ): void {.stdcall.}](vkGetProc("vkCmdSetSampleLocationsEXT")) - vkGetPhysicalDeviceMultisamplePropertiesEXT = cast[proc(physicalDevice: VkPhysicalDevice, samples: VkSampleCountFlagBits, pMultisampleProperties: ptr VkMultisamplePropertiesEXT ): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceMultisamplePropertiesEXT")) + vkCmdSetSampleLocationsEXT = cast[proc (commandBuffer: VkCommandBuffe, pSampleLocationsInfo: ptr VkSampleLocationsInfoEXT): void {.stdcall.}](vkGetProc("vkCmdSetSampleLocationsEXT")) + vkGetPhysicalDeviceMultisamplePropertiesEXT = cast[proc (physicalDevice: VkPhysicalDevic, samples: VkSampleCountFlagBit, pMultisampleProperties: ptr VkMultisamplePropertiesEXT): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceMultisamplePropertiesEXT")) # Load VK_KHR_acceleration_structure proc loadVK_KHR_acceleration_structure*() = - vkCreateAccelerationStructureKHR = cast[proc(device: VkDevice, pCreateInfo: ptr VkAccelerationStructureCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pAccelerationStructure: ptr VkAccelerationStructureKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateAccelerationStructureKHR")) - vkDestroyAccelerationStructureKHR = cast[proc(device: VkDevice, accelerationStructure: VkAccelerationStructureKHR, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyAccelerationStructureKHR")) - vkCmdBuildAccelerationStructuresKHR = cast[proc(commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR , ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdBuildAccelerationStructuresKHR")) - vkCmdBuildAccelerationStructuresIndirectKHR = cast[proc(commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR , pIndirectDeviceAddresses: ptr VkDeviceAddress , pIndirectStrides: ptr uint32 , ppMaxPrimitiveCounts: ptr ptr uint32 ): void {.stdcall.}](vkGetProc("vkCmdBuildAccelerationStructuresIndirectKHR")) - vkBuildAccelerationStructuresKHR = cast[proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR , ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR ): VkResult {.stdcall.}](vkGetProc("vkBuildAccelerationStructuresKHR")) - vkCopyAccelerationStructureKHR = cast[proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyAccelerationStructureInfoKHR ): VkResult {.stdcall.}](vkGetProc("vkCopyAccelerationStructureKHR")) - vkCopyAccelerationStructureToMemoryKHR = cast[proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR ): VkResult {.stdcall.}](vkGetProc("vkCopyAccelerationStructureToMemoryKHR")) - vkCopyMemoryToAccelerationStructureKHR = cast[proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR ): VkResult {.stdcall.}](vkGetProc("vkCopyMemoryToAccelerationStructureKHR")) - vkWriteAccelerationStructuresPropertiesKHR = cast[proc(device: VkDevice, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR , queryType: VkQueryType, dataSize: uint, pData: pointer , stride: uint): VkResult {.stdcall.}](vkGetProc("vkWriteAccelerationStructuresPropertiesKHR")) - vkCmdCopyAccelerationStructureKHR = cast[proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyAccelerationStructureInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdCopyAccelerationStructureKHR")) - vkCmdCopyAccelerationStructureToMemoryKHR = cast[proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdCopyAccelerationStructureToMemoryKHR")) - vkCmdCopyMemoryToAccelerationStructureKHR = cast[proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdCopyMemoryToAccelerationStructureKHR")) - vkGetAccelerationStructureDeviceAddressKHR = cast[proc(device: VkDevice, pInfo: ptr VkAccelerationStructureDeviceAddressInfoKHR ): VkDeviceAddress {.stdcall.}](vkGetProc("vkGetAccelerationStructureDeviceAddressKHR")) - vkCmdWriteAccelerationStructuresPropertiesKHR = cast[proc(commandBuffer: VkCommandBuffer, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR , queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteAccelerationStructuresPropertiesKHR")) - vkGetDeviceAccelerationStructureCompatibilityKHR = cast[proc(device: VkDevice, pVersionInfo: ptr VkAccelerationStructureVersionInfoKHR , pCompatibility: ptr VkAccelerationStructureCompatibilityKHR ): void {.stdcall.}](vkGetProc("vkGetDeviceAccelerationStructureCompatibilityKHR")) - vkGetAccelerationStructureBuildSizesKHR = cast[proc(device: VkDevice, buildType: VkAccelerationStructureBuildTypeKHR, pBuildInfo: ptr VkAccelerationStructureBuildGeometryInfoKHR , pMaxPrimitiveCounts: ptr uint32 , pSizeInfo: ptr VkAccelerationStructureBuildSizesInfoKHR ): void {.stdcall.}](vkGetProc("vkGetAccelerationStructureBuildSizesKHR")) + vkCreateAccelerationStructureKHR = cast[proc (device: VkDevic, pCreateInfo: ptr VkAccelerationStructureCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pAccelerationStructure: ptr VkAccelerationStructureKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateAccelerationStructureKHR")) + vkDestroyAccelerationStructureKHR = cast[proc (device: VkDevic, accelerationStructure: VkAccelerationStructureKH, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyAccelerationStructureKHR")) + vkCmdBuildAccelerationStructuresKHR = cast[proc (commandBuffer: VkCommandBuffe, infoCount: uint32_, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR): void {.stdcall.}](vkGetProc("vkCmdBuildAccelerationStructuresKHR")) + vkCmdBuildAccelerationStructuresIndirectKHR = cast[proc (commandBuffer: VkCommandBuffe, infoCount: uint32_, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, pIndirectDeviceAddresses: ptr VkDeviceAddress , pIndirectStrides: ptr uint32 , ppMaxPrimitiveCounts: ptr ptr uint32 ): void {.stdcall.}](vkGetProc("vkCmdBuildAccelerationStructuresIndirectKHR")) + vkBuildAccelerationStructuresKHR = cast[proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, infoCount: uint32_, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR): VkResult {.stdcall.}](vkGetProc("vkBuildAccelerationStructuresKHR")) + vkCopyAccelerationStructureKHR = cast[proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pInfo: ptr VkCopyAccelerationStructureInfoKHR): VkResult {.stdcall.}](vkGetProc("vkCopyAccelerationStructureKHR")) + vkCopyAccelerationStructureToMemoryKHR = cast[proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR): VkResult {.stdcall.}](vkGetProc("vkCopyAccelerationStructureToMemoryKHR")) + vkCopyMemoryToAccelerationStructureKHR = cast[proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR): VkResult {.stdcall.}](vkGetProc("vkCopyMemoryToAccelerationStructureKHR")) + vkWriteAccelerationStructuresPropertiesKHR = cast[proc (device: VkDevic, accelerationStructureCount: uint32_, pAccelerationStructures: ptr VkAccelerationStructureKHR, queryType: VkQueryTyp, dataSize: size_, pData: pointer, stride: size_): VkResult {.stdcall.}](vkGetProc("vkWriteAccelerationStructuresPropertiesKHR")) + vkCmdCopyAccelerationStructureKHR = cast[proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkCopyAccelerationStructureInfoKHR): void {.stdcall.}](vkGetProc("vkCmdCopyAccelerationStructureKHR")) + vkCmdCopyAccelerationStructureToMemoryKHR = cast[proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR): void {.stdcall.}](vkGetProc("vkCmdCopyAccelerationStructureToMemoryKHR")) + vkCmdCopyMemoryToAccelerationStructureKHR = cast[proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR): void {.stdcall.}](vkGetProc("vkCmdCopyMemoryToAccelerationStructureKHR")) + vkGetAccelerationStructureDeviceAddressKHR = cast[proc (device: VkDevic, pInfo: ptr VkAccelerationStructureDeviceAddressInfoKHR): VkDeviceAddress {.stdcall.}](vkGetProc("vkGetAccelerationStructureDeviceAddressKHR")) + vkCmdWriteAccelerationStructuresPropertiesKHR = cast[proc (commandBuffer: VkCommandBuffe, accelerationStructureCount: uint32_, pAccelerationStructures: ptr VkAccelerationStructureKHR, queryType: VkQueryTyp, queryPool: VkQueryPoo, firstQuery: uint32_): void {.stdcall.}](vkGetProc("vkCmdWriteAccelerationStructuresPropertiesKHR")) + vkGetDeviceAccelerationStructureCompatibilityKHR = cast[proc (device: VkDevic, pVersionInfo: ptr VkAccelerationStructureVersionInfoKHR, pCompatibility: ptr VkAccelerationStructureCompatibilityKHR): void {.stdcall.}](vkGetProc("vkGetDeviceAccelerationStructureCompatibilityKHR")) + vkGetAccelerationStructureBuildSizesKHR = cast[proc (device: VkDevic, buildType: VkAccelerationStructureBuildTypeKH, pBuildInfo: ptr VkAccelerationStructureBuildGeometryInfoKHR , pMaxPrimitiveCounts: ptr uint32 , pSizeInfo: ptr VkAccelerationStructureBuildSizesInfoKHR ): void {.stdcall.}](vkGetProc("vkGetAccelerationStructureBuildSizesKHR")) # Load VK_KHR_ray_tracing_pipeline proc loadVK_KHR_ray_tracing_pipeline*() = - vkCmdTraceRaysKHR = cast[proc(commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , width: uint32, height: uint32, depth: uint32): void {.stdcall.}](vkGetProc("vkCmdTraceRaysKHR")) - vkCreateRayTracingPipelinesKHR = cast[proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesKHR")) - vkCreateRayTracingPipelinesKHR = cast[proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesKHR")) - vkGetRayTracingShaderGroupHandlesKHR = cast[proc(device: VkDevice, pipeline: VkPipeline, firstGroup: uint32, groupCount: uint32, dataSize: uint, pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetRayTracingShaderGroupHandlesKHR")) - vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = cast[proc(device: VkDevice, pipeline: VkPipeline, firstGroup: uint32, groupCount: uint32, dataSize: uint, pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetRayTracingCaptureReplayShaderGroupHandlesKHR")) - vkCmdTraceRaysIndirectKHR = cast[proc(commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , indirectDeviceAddress: VkDeviceAddress): void {.stdcall.}](vkGetProc("vkCmdTraceRaysIndirectKHR")) - vkGetRayTracingShaderGroupStackSizeKHR = cast[proc(device: VkDevice, pipeline: VkPipeline, group: uint32, groupShader: VkShaderGroupShaderKHR): VkDeviceSize {.stdcall.}](vkGetProc("vkGetRayTracingShaderGroupStackSizeKHR")) - vkCmdSetRayTracingPipelineStackSizeKHR = cast[proc(commandBuffer: VkCommandBuffer, pipelineStackSize: uint32): void {.stdcall.}](vkGetProc("vkCmdSetRayTracingPipelineStackSizeKHR")) + vkCmdTraceRaysKHR = cast[proc (commandBuffer: VkCommandBuffe, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, width: uint32_, height: uint32_, depth: uint32_): void {.stdcall.}](vkGetProc("vkCmdTraceRaysKHR")) + vkCreateRayTracingPipelinesKHR = cast[proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesKHR")) + vkCreateRayTracingPipelinesKHR = cast[proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesKHR")) + vkGetRayTracingShaderGroupHandlesKHR = cast[proc (device: VkDevic, pipeline: VkPipelin, firstGroup: uint32_, groupCount: uint32_, dataSize: size_, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetRayTracingShaderGroupHandlesKHR")) + vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = cast[proc (device: VkDevic, pipeline: VkPipelin, firstGroup: uint32_, groupCount: uint32_, dataSize: size_, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetRayTracingCaptureReplayShaderGroupHandlesKHR")) + vkCmdTraceRaysIndirectKHR = cast[proc (commandBuffer: VkCommandBuffe, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, indirectDeviceAddress: VkDeviceAddres): void {.stdcall.}](vkGetProc("vkCmdTraceRaysIndirectKHR")) + vkGetRayTracingShaderGroupStackSizeKHR = cast[proc (device: VkDevic, pipeline: VkPipelin, group: uint32_, groupShader: VkShaderGroupShaderKH): VkDeviceSize {.stdcall.}](vkGetProc("vkGetRayTracingShaderGroupStackSizeKHR")) + vkCmdSetRayTracingPipelineStackSizeKHR = cast[proc (commandBuffer: VkCommandBuffe, pipelineStackSize: uint32_): void {.stdcall.}](vkGetProc("vkCmdSetRayTracingPipelineStackSizeKHR")) # Load VK_EXT_image_drm_format_modifier proc loadVK_EXT_image_drm_format_modifier*() = - vkGetImageDrmFormatModifierPropertiesEXT = cast[proc(device: VkDevice, image: VkImage, pProperties: ptr VkImageDrmFormatModifierPropertiesEXT ): VkResult {.stdcall.}](vkGetProc("vkGetImageDrmFormatModifierPropertiesEXT")) + vkGetImageDrmFormatModifierPropertiesEXT = cast[proc (device: VkDevic, image: VkImag, pProperties: ptr VkImageDrmFormatModifierPropertiesEXT): VkResult {.stdcall.}](vkGetProc("vkGetImageDrmFormatModifierPropertiesEXT")) # Load VK_EXT_validation_cache proc loadVK_EXT_validation_cache*() = - vkCreateValidationCacheEXT = cast[proc(device: VkDevice, pCreateInfo: ptr VkValidationCacheCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pValidationCache: ptr VkValidationCacheEXT ): VkResult {.stdcall.}](vkGetProc("vkCreateValidationCacheEXT")) - vkDestroyValidationCacheEXT = cast[proc(device: VkDevice, validationCache: VkValidationCacheEXT, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyValidationCacheEXT")) - vkMergeValidationCachesEXT = cast[proc(device: VkDevice, dstCache: VkValidationCacheEXT, srcCacheCount: uint32, pSrcCaches: ptr VkValidationCacheEXT ): VkResult {.stdcall.}](vkGetProc("vkMergeValidationCachesEXT")) - vkGetValidationCacheDataEXT = cast[proc(device: VkDevice, validationCache: VkValidationCacheEXT, pDataSize: ptr uint , pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetValidationCacheDataEXT")) + vkCreateValidationCacheEXT = cast[proc (device: VkDevic, pCreateInfo: ptr VkValidationCacheCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pValidationCache: ptr VkValidationCacheEXT): VkResult {.stdcall.}](vkGetProc("vkCreateValidationCacheEXT")) + vkDestroyValidationCacheEXT = cast[proc (device: VkDevic, validationCache: VkValidationCacheEX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyValidationCacheEXT")) + vkMergeValidationCachesEXT = cast[proc (device: VkDevic, dstCache: VkValidationCacheEX, srcCacheCount: uint32_, pSrcCaches: ptr VkValidationCacheEXT): VkResult {.stdcall.}](vkGetProc("vkMergeValidationCachesEXT")) + vkGetValidationCacheDataEXT = cast[proc (device: VkDevic, validationCache: VkValidationCacheEX, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetValidationCacheDataEXT")) # Load VK_NV_shading_rate_image proc loadVK_NV_shading_rate_image*() = - vkCmdBindShadingRateImageNV = cast[proc(commandBuffer: VkCommandBuffer, imageView: VkImageView, imageLayout: VkImageLayout): void {.stdcall.}](vkGetProc("vkCmdBindShadingRateImageNV")) - vkCmdSetViewportShadingRatePaletteNV = cast[proc(commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pShadingRatePalettes: ptr VkShadingRatePaletteNV ): void {.stdcall.}](vkGetProc("vkCmdSetViewportShadingRatePaletteNV")) - vkCmdSetCoarseSampleOrderNV = cast[proc(commandBuffer: VkCommandBuffer, sampleOrderType: VkCoarseSampleOrderTypeNV, customSampleOrderCount: uint32, pCustomSampleOrders: ptr VkCoarseSampleOrderCustomNV ): void {.stdcall.}](vkGetProc("vkCmdSetCoarseSampleOrderNV")) + vkCmdBindShadingRateImageNV = cast[proc (commandBuffer: VkCommandBuffe, imageView: VkImageVie, imageLayout: VkImageLayou): void {.stdcall.}](vkGetProc("vkCmdBindShadingRateImageNV")) + vkCmdSetViewportShadingRatePaletteNV = cast[proc (commandBuffer: VkCommandBuffe, firstViewport: uint32_, viewportCount: uint32_, pShadingRatePalettes: ptr VkShadingRatePaletteNV): void {.stdcall.}](vkGetProc("vkCmdSetViewportShadingRatePaletteNV")) + vkCmdSetCoarseSampleOrderNV = cast[proc (commandBuffer: VkCommandBuffe, sampleOrderType: VkCoarseSampleOrderTypeN, customSampleOrderCount: uint32_, pCustomSampleOrders: ptr VkCoarseSampleOrderCustomNV): void {.stdcall.}](vkGetProc("vkCmdSetCoarseSampleOrderNV")) # Load VK_NV_ray_tracing proc loadVK_NV_ray_tracing*() = - vkCreateAccelerationStructureNV = cast[proc(device: VkDevice, pCreateInfo: ptr VkAccelerationStructureCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pAccelerationStructure: ptr VkAccelerationStructureNV ): VkResult {.stdcall.}](vkGetProc("vkCreateAccelerationStructureNV")) - vkDestroyAccelerationStructureNV = cast[proc(device: VkDevice, accelerationStructure: VkAccelerationStructureNV, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyAccelerationStructureNV")) - vkGetAccelerationStructureMemoryRequirementsNV = cast[proc(device: VkDevice, pInfo: ptr VkAccelerationStructureMemoryRequirementsInfoNV , pMemoryRequirements: ptr VkMemoryRequirements2KHR ): void {.stdcall.}](vkGetProc("vkGetAccelerationStructureMemoryRequirementsNV")) - vkBindAccelerationStructureMemoryNV = cast[proc(device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindAccelerationStructureMemoryInfoNV ): VkResult {.stdcall.}](vkGetProc("vkBindAccelerationStructureMemoryNV")) - vkCmdBuildAccelerationStructureNV = cast[proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkAccelerationStructureInfoNV , instanceData: VkBuffer, instanceOffset: VkDeviceSize, update: VkBool32, dst: VkAccelerationStructureNV, src: VkAccelerationStructureNV, scratch: VkBuffer, scratchOffset: VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdBuildAccelerationStructureNV")) - vkCmdCopyAccelerationStructureNV = cast[proc(commandBuffer: VkCommandBuffer, dst: VkAccelerationStructureNV, src: VkAccelerationStructureNV, mode: VkCopyAccelerationStructureModeKHR): void {.stdcall.}](vkGetProc("vkCmdCopyAccelerationStructureNV")) - vkCmdTraceRaysNV = cast[proc(commandBuffer: VkCommandBuffer, raygenShaderBindingTableBuffer: VkBuffer, raygenShaderBindingOffset: VkDeviceSize, missShaderBindingTableBuffer: VkBuffer, missShaderBindingOffset: VkDeviceSize, missShaderBindingStride: VkDeviceSize, hitShaderBindingTableBuffer: VkBuffer, hitShaderBindingOffset: VkDeviceSize, hitShaderBindingStride: VkDeviceSize, callableShaderBindingTableBuffer: VkBuffer, callableShaderBindingOffset: VkDeviceSize, callableShaderBindingStride: VkDeviceSize, width: uint32, height: uint32, depth: uint32): void {.stdcall.}](vkGetProc("vkCmdTraceRaysNV")) - vkCreateRayTracingPipelinesNV = cast[proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesNV")) - vkCreateRayTracingPipelinesNV = cast[proc(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesNV")) - vkGetAccelerationStructureHandleNV = cast[proc(device: VkDevice, accelerationStructure: VkAccelerationStructureNV, dataSize: uint, pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetAccelerationStructureHandleNV")) - vkCmdWriteAccelerationStructuresPropertiesNV = cast[proc(commandBuffer: VkCommandBuffer, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureNV , queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteAccelerationStructuresPropertiesNV")) - vkCompileDeferredNV = cast[proc(device: VkDevice, pipeline: VkPipeline, shader: uint32): VkResult {.stdcall.}](vkGetProc("vkCompileDeferredNV")) + vkCreateAccelerationStructureNV = cast[proc (device: VkDevic, pCreateInfo: ptr VkAccelerationStructureCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pAccelerationStructure: ptr VkAccelerationStructureNV): VkResult {.stdcall.}](vkGetProc("vkCreateAccelerationStructureNV")) + vkDestroyAccelerationStructureNV = cast[proc (device: VkDevic, accelerationStructure: VkAccelerationStructureN, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyAccelerationStructureNV")) + vkGetAccelerationStructureMemoryRequirementsNV = cast[proc (device: VkDevic, pInfo: ptr VkAccelerationStructureMemoryRequirementsInfoNV, pMemoryRequirements: ptr VkMemoryRequirements2KHR): void {.stdcall.}](vkGetProc("vkGetAccelerationStructureMemoryRequirementsNV")) + vkBindAccelerationStructureMemoryNV = cast[proc (device: VkDevic, bindInfoCount: uint32_, pBindInfos: ptr VkBindAccelerationStructureMemoryInfoNV): VkResult {.stdcall.}](vkGetProc("vkBindAccelerationStructureMemoryNV")) + vkCmdBuildAccelerationStructureNV = cast[proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkAccelerationStructureInfoNV, instanceData: VkBuffe, instanceOffset: VkDeviceSiz, update: VkBool3, dst: VkAccelerationStructureN, src: VkAccelerationStructureN, scratch: VkBuffe, scratchOffset: VkDeviceSiz): void {.stdcall.}](vkGetProc("vkCmdBuildAccelerationStructureNV")) + vkCmdCopyAccelerationStructureNV = cast[proc (commandBuffer: VkCommandBuffe, dst: VkAccelerationStructureN, src: VkAccelerationStructureN, mode: VkCopyAccelerationStructureModeKH): void {.stdcall.}](vkGetProc("vkCmdCopyAccelerationStructureNV")) + vkCmdTraceRaysNV = cast[proc (commandBuffer: VkCommandBuffe, raygenShaderBindingTableBuffer: VkBuffe, raygenShaderBindingOffset: VkDeviceSiz, missShaderBindingTableBuffer: VkBuffe, missShaderBindingOffset: VkDeviceSiz, missShaderBindingStride: VkDeviceSiz, hitShaderBindingTableBuffer: VkBuffe, hitShaderBindingOffset: VkDeviceSiz, hitShaderBindingStride: VkDeviceSiz, callableShaderBindingTableBuffer: VkBuffe, callableShaderBindingOffset: VkDeviceSiz, callableShaderBindingStride: VkDeviceSiz, width: uint32_, height: uint32_, depth: uint32_): void {.stdcall.}](vkGetProc("vkCmdTraceRaysNV")) + vkCreateRayTracingPipelinesNV = cast[proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesNV")) + vkCreateRayTracingPipelinesNV = cast[proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesNV")) + vkGetAccelerationStructureHandleNV = cast[proc (device: VkDevic, accelerationStructure: VkAccelerationStructureN, dataSize: size_, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetAccelerationStructureHandleNV")) + vkCmdWriteAccelerationStructuresPropertiesNV = cast[proc (commandBuffer: VkCommandBuffe, accelerationStructureCount: uint32_, pAccelerationStructures: ptr VkAccelerationStructureNV, queryType: VkQueryTyp, queryPool: VkQueryPoo, firstQuery: uint32_): void {.stdcall.}](vkGetProc("vkCmdWriteAccelerationStructuresPropertiesNV")) + vkCompileDeferredNV = cast[proc (device: VkDevic, pipeline: VkPipelin, shader: uint32_): VkResult {.stdcall.}](vkGetProc("vkCompileDeferredNV")) # Load VK_EXT_external_memory_host proc loadVK_EXT_external_memory_host*() = - vkGetMemoryHostPointerPropertiesEXT = cast[proc(device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, pHostPointer: pointer , pMemoryHostPointerProperties: ptr VkMemoryHostPointerPropertiesEXT ): VkResult {.stdcall.}](vkGetProc("vkGetMemoryHostPointerPropertiesEXT")) + vkGetMemoryHostPointerPropertiesEXT = cast[proc (device: VkDevic, handleType: VkExternalMemoryHandleTypeFlagBit, pHostPointer: pointer, pMemoryHostPointerProperties: ptr VkMemoryHostPointerPropertiesEXT): VkResult {.stdcall.}](vkGetProc("vkGetMemoryHostPointerPropertiesEXT")) # Load VK_AMD_buffer_marker proc loadVK_AMD_buffer_marker*() = - vkCmdWriteBufferMarkerAMD = cast[proc(commandBuffer: VkCommandBuffer, pipelineStage: VkPipelineStageFlagBits, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, marker: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteBufferMarkerAMD")) + vkCmdWriteBufferMarkerAMD = cast[proc (commandBuffer: VkCommandBuffe, pipelineStage: VkPipelineStageFlagBit, dstBuffer: VkBuffe, dstOffset: VkDeviceSiz, marker: uint32_): void {.stdcall.}](vkGetProc("vkCmdWriteBufferMarkerAMD")) # Load VK_NV_mesh_shader proc loadVK_NV_mesh_shader*() = - vkCmdDrawMeshTasksNV = cast[proc(commandBuffer: VkCommandBuffer, taskCount: uint32, firstTask: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksNV")) - vkCmdDrawMeshTasksIndirectNV = cast[proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksIndirectNV")) - vkCmdDrawMeshTasksIndirectCountNV = cast[proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksIndirectCountNV")) + vkCmdDrawMeshTasksNV = cast[proc (commandBuffer: VkCommandBuffe, taskCount: uint32_, firstTask: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksNV")) + vkCmdDrawMeshTasksIndirectNV = cast[proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, drawCount: uint32_, stride: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksIndirectNV")) + vkCmdDrawMeshTasksIndirectCountNV = cast[proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, countBuffer: VkBuffe, countBufferOffset: VkDeviceSiz, maxDrawCount: uint32_, stride: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksIndirectCountNV")) # Load VK_NV_scissor_exclusive proc loadVK_NV_scissor_exclusive*() = - vkCmdSetExclusiveScissorEnableNV = cast[proc(commandBuffer: VkCommandBuffer, firstExclusiveScissor: uint32, exclusiveScissorCount: uint32, pExclusiveScissorEnables: ptr VkBool32 ): void {.stdcall.}](vkGetProc("vkCmdSetExclusiveScissorEnableNV")) - vkCmdSetExclusiveScissorNV = cast[proc(commandBuffer: VkCommandBuffer, firstExclusiveScissor: uint32, exclusiveScissorCount: uint32, pExclusiveScissors: ptr VkRect2D ): void {.stdcall.}](vkGetProc("vkCmdSetExclusiveScissorNV")) + vkCmdSetExclusiveScissorEnableNV = cast[proc (commandBuffer: VkCommandBuffe, firstExclusiveScissor: uint32_, exclusiveScissorCount: uint32_, pExclusiveScissorEnables: ptr VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetExclusiveScissorEnableNV")) + vkCmdSetExclusiveScissorNV = cast[proc (commandBuffer: VkCommandBuffe, firstExclusiveScissor: uint32_, exclusiveScissorCount: uint32_, pExclusiveScissors: ptr VkRect2D): void {.stdcall.}](vkGetProc("vkCmdSetExclusiveScissorNV")) # Load VK_NV_device_diagnostic_checkpoints proc loadVK_NV_device_diagnostic_checkpoints*() = - vkCmdSetCheckpointNV = cast[proc(commandBuffer: VkCommandBuffer, pCheckpointMarker: pointer ): void {.stdcall.}](vkGetProc("vkCmdSetCheckpointNV")) - vkGetQueueCheckpointDataNV = cast[proc(queue: VkQueue, pCheckpointDataCount: ptr uint32 , pCheckpointData: ptr VkCheckpointDataNV ): void {.stdcall.}](vkGetProc("vkGetQueueCheckpointDataNV")) + vkCmdSetCheckpointNV = cast[proc (commandBuffer: VkCommandBuffe, pCheckpointMarker: pointer): void {.stdcall.}](vkGetProc("vkCmdSetCheckpointNV")) + vkGetQueueCheckpointDataNV = cast[proc (queue: VkQueu, pCheckpointDataCount: ptr uint32, pCheckpointData: ptr VkCheckpointDataNV): void {.stdcall.}](vkGetProc("vkGetQueueCheckpointDataNV")) # Load VK_INTEL_performance_query proc loadVK_INTEL_performance_query*() = - vkInitializePerformanceApiINTEL = cast[proc(device: VkDevice, pInitializeInfo: ptr VkInitializePerformanceApiInfoINTEL ): VkResult {.stdcall.}](vkGetProc("vkInitializePerformanceApiINTEL")) - vkUninitializePerformanceApiINTEL = cast[proc(device: VkDevice): void {.stdcall.}](vkGetProc("vkUninitializePerformanceApiINTEL")) - vkCmdSetPerformanceMarkerINTEL = cast[proc(commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkPerformanceMarkerInfoINTEL ): VkResult {.stdcall.}](vkGetProc("vkCmdSetPerformanceMarkerINTEL")) - vkCmdSetPerformanceStreamMarkerINTEL = cast[proc(commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkPerformanceStreamMarkerInfoINTEL ): VkResult {.stdcall.}](vkGetProc("vkCmdSetPerformanceStreamMarkerINTEL")) - vkCmdSetPerformanceOverrideINTEL = cast[proc(commandBuffer: VkCommandBuffer, pOverrideInfo: ptr VkPerformanceOverrideInfoINTEL ): VkResult {.stdcall.}](vkGetProc("vkCmdSetPerformanceOverrideINTEL")) - vkAcquirePerformanceConfigurationINTEL = cast[proc(device: VkDevice, pAcquireInfo: ptr VkPerformanceConfigurationAcquireInfoINTEL , pConfiguration: ptr VkPerformanceConfigurationINTEL ): VkResult {.stdcall.}](vkGetProc("vkAcquirePerformanceConfigurationINTEL")) - vkReleasePerformanceConfigurationINTEL = cast[proc(device: VkDevice, configuration: VkPerformanceConfigurationINTEL): VkResult {.stdcall.}](vkGetProc("vkReleasePerformanceConfigurationINTEL")) - vkQueueSetPerformanceConfigurationINTEL = cast[proc(queue: VkQueue, configuration: VkPerformanceConfigurationINTEL): VkResult {.stdcall.}](vkGetProc("vkQueueSetPerformanceConfigurationINTEL")) - vkGetPerformanceParameterINTEL = cast[proc(device: VkDevice, parameter: VkPerformanceParameterTypeINTEL, pValue: ptr VkPerformanceValueINTEL ): VkResult {.stdcall.}](vkGetProc("vkGetPerformanceParameterINTEL")) + vkInitializePerformanceApiINTEL = cast[proc (device: VkDevic, pInitializeInfo: ptr VkInitializePerformanceApiInfoINTEL): VkResult {.stdcall.}](vkGetProc("vkInitializePerformanceApiINTEL")) + vkUninitializePerformanceApiINTEL = cast[proc (device: VkDevic): void {.stdcall.}](vkGetProc("vkUninitializePerformanceApiINTEL")) + vkCmdSetPerformanceMarkerINTEL = cast[proc (commandBuffer: VkCommandBuffe, pMarkerInfo: ptr VkPerformanceMarkerInfoINTEL): VkResult {.stdcall.}](vkGetProc("vkCmdSetPerformanceMarkerINTEL")) + vkCmdSetPerformanceStreamMarkerINTEL = cast[proc (commandBuffer: VkCommandBuffe, pMarkerInfo: ptr VkPerformanceStreamMarkerInfoINTEL): VkResult {.stdcall.}](vkGetProc("vkCmdSetPerformanceStreamMarkerINTEL")) + vkCmdSetPerformanceOverrideINTEL = cast[proc (commandBuffer: VkCommandBuffe, pOverrideInfo: ptr VkPerformanceOverrideInfoINTEL): VkResult {.stdcall.}](vkGetProc("vkCmdSetPerformanceOverrideINTEL")) + vkAcquirePerformanceConfigurationINTEL = cast[proc (device: VkDevic, pAcquireInfo: ptr VkPerformanceConfigurationAcquireInfoINTEL, pConfiguration: ptr VkPerformanceConfigurationINTEL): VkResult {.stdcall.}](vkGetProc("vkAcquirePerformanceConfigurationINTEL")) + vkReleasePerformanceConfigurationINTEL = cast[proc (device: VkDevic, configuration: VkPerformanceConfigurationINTE): VkResult {.stdcall.}](vkGetProc("vkReleasePerformanceConfigurationINTEL")) + vkQueueSetPerformanceConfigurationINTEL = cast[proc (queue: VkQueu, configuration: VkPerformanceConfigurationINTE): VkResult {.stdcall.}](vkGetProc("vkQueueSetPerformanceConfigurationINTEL")) + vkGetPerformanceParameterINTEL = cast[proc (device: VkDevic, parameter: VkPerformanceParameterTypeINTE, pValue: ptr VkPerformanceValueINTEL): VkResult {.stdcall.}](vkGetProc("vkGetPerformanceParameterINTEL")) # Load VK_AMD_display_native_hdr proc loadVK_AMD_display_native_hdr*() = - vkSetLocalDimmingAMD = cast[proc(device: VkDevice, swapChain: VkSwapchainKHR, localDimmingEnable: VkBool32): void {.stdcall.}](vkGetProc("vkSetLocalDimmingAMD")) + vkSetLocalDimmingAMD = cast[proc (device: VkDevic, swapChain: VkSwapchainKH, localDimmingEnable: VkBool3): void {.stdcall.}](vkGetProc("vkSetLocalDimmingAMD")) # Load VK_FUCHSIA_imagepipe_surface proc loadVK_FUCHSIA_imagepipe_surface*() = - vkCreateImagePipeSurfaceFUCHSIA = cast[proc(instance: VkInstance, pCreateInfo: ptr VkImagePipeSurfaceCreateInfoFUCHSIA , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateImagePipeSurfaceFUCHSIA")) + vkCreateImagePipeSurfaceFUCHSIA = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkImagePipeSurfaceCreateInfoFUCHSIA, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateImagePipeSurfaceFUCHSIA")) # Load VK_EXT_metal_surface proc loadVK_EXT_metal_surface*() = - vkCreateMetalSurfaceEXT = cast[proc(instance: VkInstance, pCreateInfo: ptr VkMetalSurfaceCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateMetalSurfaceEXT")) + vkCreateMetalSurfaceEXT = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkMetalSurfaceCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateMetalSurfaceEXT")) # Load VK_KHR_fragment_shading_rate proc loadVK_KHR_fragment_shading_rate*() = - vkGetPhysicalDeviceFragmentShadingRatesKHR = cast[proc(physicalDevice: VkPhysicalDevice, pFragmentShadingRateCount: ptr uint32 , pFragmentShadingRates: ptr VkPhysicalDeviceFragmentShadingRateKHR ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFragmentShadingRatesKHR")) - vkCmdSetFragmentShadingRateKHR = cast[proc(commandBuffer: VkCommandBuffer, pFragmentSize: ptr VkExtent2D , combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): void {.stdcall.}](vkGetProc("vkCmdSetFragmentShadingRateKHR")) + vkGetPhysicalDeviceFragmentShadingRatesKHR = cast[proc (physicalDevice: VkPhysicalDevic, pFragmentShadingRateCount: ptr uint32, pFragmentShadingRates: ptr VkPhysicalDeviceFragmentShadingRateKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFragmentShadingRatesKHR")) + vkCmdSetFragmentShadingRateKHR = cast[proc (commandBuffer: VkCommandBuffe, pFragmentSize: ptr VkExtent2D , combinerOps: array[2, VkFragmentShadingRateCombinerOpKH]): void {.stdcall.}](vkGetProc("vkCmdSetFragmentShadingRateKHR")) # Load VK_KHR_dynamic_rendering_local_read proc loadVK_KHR_dynamic_rendering_local_read*() = - vkCmdSetRenderingAttachmentLocationsKHR = cast[proc(commandBuffer: VkCommandBuffer, pLocationInfo: ptr VkRenderingAttachmentLocationInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdSetRenderingAttachmentLocationsKHR")) - vkCmdSetRenderingInputAttachmentIndicesKHR = cast[proc(commandBuffer: VkCommandBuffer, pLocationInfo: ptr VkRenderingInputAttachmentIndexInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdSetRenderingInputAttachmentIndicesKHR")) + vkCmdSetRenderingAttachmentLocationsKHR = cast[proc (commandBuffer: VkCommandBuffe, pLocationInfo: ptr VkRenderingAttachmentLocationInfoKHR): void {.stdcall.}](vkGetProc("vkCmdSetRenderingAttachmentLocationsKHR")) + vkCmdSetRenderingInputAttachmentIndicesKHR = cast[proc (commandBuffer: VkCommandBuffe, pLocationInfo: ptr VkRenderingInputAttachmentIndexInfoKHR): void {.stdcall.}](vkGetProc("vkCmdSetRenderingInputAttachmentIndicesKHR")) # Load VK_KHR_present_wait proc loadVK_KHR_present_wait*() = - vkWaitForPresentKHR = cast[proc(device: VkDevice, swapchain: VkSwapchainKHR, presentId: uint64, timeout: uint64): VkResult {.stdcall.}](vkGetProc("vkWaitForPresentKHR")) + vkWaitForPresentKHR = cast[proc (device: VkDevic, swapchain: VkSwapchainKH, presentId: uint64_, timeout: uint64_): VkResult {.stdcall.}](vkGetProc("vkWaitForPresentKHR")) # Load VK_NV_cooperative_matrix proc loadVK_NV_cooperative_matrix*() = - vkGetPhysicalDeviceCooperativeMatrixPropertiesNV = cast[proc(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkCooperativeMatrixPropertiesNV ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceCooperativeMatrixPropertiesNV")) + vkGetPhysicalDeviceCooperativeMatrixPropertiesNV = cast[proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkCooperativeMatrixPropertiesNV): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceCooperativeMatrixPropertiesNV")) # Load VK_NV_coverage_reduction_mode proc loadVK_NV_coverage_reduction_mode*() = - vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV = cast[proc(physicalDevice: VkPhysicalDevice, pCombinationCount: ptr uint32 , pCombinations: ptr VkFramebufferMixedSamplesCombinationNV ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV")) + vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV = cast[proc (physicalDevice: VkPhysicalDevic, pCombinationCount: ptr uint32, pCombinations: ptr VkFramebufferMixedSamplesCombinationNV): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV")) # Load VK_EXT_full_screen_exclusive proc loadVK_EXT_full_screen_exclusive*() = - vkGetPhysicalDeviceSurfacePresentModes2EXT = cast[proc(physicalDevice: VkPhysicalDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR , pPresentModeCount: ptr uint32 , pPresentModes: ptr VkPresentModeKHR ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfacePresentModes2EXT")) - vkAcquireFullScreenExclusiveModeEXT = cast[proc(device: VkDevice, swapchain: VkSwapchainKHR): VkResult {.stdcall.}](vkGetProc("vkAcquireFullScreenExclusiveModeEXT")) - vkReleaseFullScreenExclusiveModeEXT = cast[proc(device: VkDevice, swapchain: VkSwapchainKHR): VkResult {.stdcall.}](vkGetProc("vkReleaseFullScreenExclusiveModeEXT")) - vkGetDeviceGroupSurfacePresentModes2EXT = cast[proc(device: VkDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR , pModes: ptr VkDeviceGroupPresentModeFlagsKHR ): VkResult {.stdcall.}](vkGetProc("vkGetDeviceGroupSurfacePresentModes2EXT")) - vkGetDeviceGroupSurfacePresentModes2EXT = cast[proc(device: VkDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR , pModes: ptr VkDeviceGroupPresentModeFlagsKHR ): VkResult {.stdcall.}](vkGetProc("vkGetDeviceGroupSurfacePresentModes2EXT")) + vkGetPhysicalDeviceSurfacePresentModes2EXT = cast[proc (physicalDevice: VkPhysicalDevic, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pPresentModeCount: ptr uint32, pPresentModes: ptr VkPresentModeKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfacePresentModes2EXT")) + vkAcquireFullScreenExclusiveModeEXT = cast[proc (device: VkDevic, swapchain: VkSwapchainKH): VkResult {.stdcall.}](vkGetProc("vkAcquireFullScreenExclusiveModeEXT")) + vkReleaseFullScreenExclusiveModeEXT = cast[proc (device: VkDevic, swapchain: VkSwapchainKH): VkResult {.stdcall.}](vkGetProc("vkReleaseFullScreenExclusiveModeEXT")) + vkGetDeviceGroupSurfacePresentModes2EXT = cast[proc (device: VkDevic, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pModes: ptr VkDeviceGroupPresentModeFlagsKHR): VkResult {.stdcall.}](vkGetProc("vkGetDeviceGroupSurfacePresentModes2EXT")) + vkGetDeviceGroupSurfacePresentModes2EXT = cast[proc (device: VkDevic, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pModes: ptr VkDeviceGroupPresentModeFlagsKHR): VkResult {.stdcall.}](vkGetProc("vkGetDeviceGroupSurfacePresentModes2EXT")) # Load VK_EXT_headless_surface proc loadVK_EXT_headless_surface*() = - vkCreateHeadlessSurfaceEXT = cast[proc(instance: VkInstance, pCreateInfo: ptr VkHeadlessSurfaceCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateHeadlessSurfaceEXT")) + vkCreateHeadlessSurfaceEXT = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkHeadlessSurfaceCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateHeadlessSurfaceEXT")) # Load VK_KHR_deferred_host_operations proc loadVK_KHR_deferred_host_operations*() = - vkCreateDeferredOperationKHR = cast[proc(device: VkDevice, pAllocator: ptr VkAllocationCallbacks , pDeferredOperation: ptr VkDeferredOperationKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateDeferredOperationKHR")) - vkDestroyDeferredOperationKHR = cast[proc(device: VkDevice, operation: VkDeferredOperationKHR, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyDeferredOperationKHR")) - vkGetDeferredOperationMaxConcurrencyKHR = cast[proc(device: VkDevice, operation: VkDeferredOperationKHR): uint32 {.stdcall.}](vkGetProc("vkGetDeferredOperationMaxConcurrencyKHR")) - vkGetDeferredOperationResultKHR = cast[proc(device: VkDevice, operation: VkDeferredOperationKHR): VkResult {.stdcall.}](vkGetProc("vkGetDeferredOperationResultKHR")) - vkDeferredOperationJoinKHR = cast[proc(device: VkDevice, operation: VkDeferredOperationKHR): VkResult {.stdcall.}](vkGetProc("vkDeferredOperationJoinKHR")) + vkCreateDeferredOperationKHR = cast[proc (device: VkDevic, pAllocator: ptr VkAllocationCallbacks, pDeferredOperation: ptr VkDeferredOperationKHR): VkResult {.stdcall.}](vkGetProc("vkCreateDeferredOperationKHR")) + vkDestroyDeferredOperationKHR = cast[proc (device: VkDevic, operation: VkDeferredOperationKH, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDeferredOperationKHR")) + vkGetDeferredOperationMaxConcurrencyKHR = cast[proc (device: VkDevic, operation: VkDeferredOperationKH): uint32 {.stdcall.}](vkGetProc("vkGetDeferredOperationMaxConcurrencyKHR")) + vkGetDeferredOperationResultKHR = cast[proc (device: VkDevic, operation: VkDeferredOperationKH): VkResult {.stdcall.}](vkGetProc("vkGetDeferredOperationResultKHR")) + vkDeferredOperationJoinKHR = cast[proc (device: VkDevic, operation: VkDeferredOperationKH): VkResult {.stdcall.}](vkGetProc("vkDeferredOperationJoinKHR")) # Load VK_KHR_pipeline_executable_properties proc loadVK_KHR_pipeline_executable_properties*() = - vkGetPipelineExecutablePropertiesKHR = cast[proc(device: VkDevice, pPipelineInfo: ptr VkPipelineInfoKHR , pExecutableCount: ptr uint32 , pProperties: ptr VkPipelineExecutablePropertiesKHR ): VkResult {.stdcall.}](vkGetProc("vkGetPipelineExecutablePropertiesKHR")) - vkGetPipelineExecutableStatisticsKHR = cast[proc(device: VkDevice, pExecutableInfo: ptr VkPipelineExecutableInfoKHR , pStatisticCount: ptr uint32 , pStatistics: ptr VkPipelineExecutableStatisticKHR ): VkResult {.stdcall.}](vkGetProc("vkGetPipelineExecutableStatisticsKHR")) - vkGetPipelineExecutableInternalRepresentationsKHR = cast[proc(device: VkDevice, pExecutableInfo: ptr VkPipelineExecutableInfoKHR , pInternalRepresentationCount: ptr uint32 , pInternalRepresentations: ptr VkPipelineExecutableInternalRepresentationKHR ): VkResult {.stdcall.}](vkGetProc("vkGetPipelineExecutableInternalRepresentationsKHR")) + vkGetPipelineExecutablePropertiesKHR = cast[proc (device: VkDevic, pPipelineInfo: ptr VkPipelineInfoKHR , pExecutableCount: ptr uint32, pProperties: ptr VkPipelineExecutablePropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPipelineExecutablePropertiesKHR")) + vkGetPipelineExecutableStatisticsKHR = cast[proc (device: VkDevic, pExecutableInfo: ptr VkPipelineExecutableInfoKHR , pStatisticCount: ptr uint32, pStatistics: ptr VkPipelineExecutableStatisticKHR): VkResult {.stdcall.}](vkGetProc("vkGetPipelineExecutableStatisticsKHR")) + vkGetPipelineExecutableInternalRepresentationsKHR = cast[proc (device: VkDevic, pExecutableInfo: ptr VkPipelineExecutableInfoKHR , pInternalRepresentationCount: ptr uint32, pInternalRepresentations: ptr VkPipelineExecutableInternalRepresentationKHR): VkResult {.stdcall.}](vkGetProc("vkGetPipelineExecutableInternalRepresentationsKHR")) # Load VK_EXT_host_image_copy proc loadVK_EXT_host_image_copy*() = - vkCopyMemoryToImageEXT = cast[proc(device: VkDevice, pCopyMemoryToImageInfo: ptr VkCopyMemoryToImageInfoEXT ): VkResult {.stdcall.}](vkGetProc("vkCopyMemoryToImageEXT")) - vkCopyImageToMemoryEXT = cast[proc(device: VkDevice, pCopyImageToMemoryInfo: ptr VkCopyImageToMemoryInfoEXT ): VkResult {.stdcall.}](vkGetProc("vkCopyImageToMemoryEXT")) - vkCopyImageToImageEXT = cast[proc(device: VkDevice, pCopyImageToImageInfo: ptr VkCopyImageToImageInfoEXT ): VkResult {.stdcall.}](vkGetProc("vkCopyImageToImageEXT")) - vkTransitionImageLayoutEXT = cast[proc(device: VkDevice, transitionCount: uint32, pTransitions: ptr VkHostImageLayoutTransitionInfoEXT ): VkResult {.stdcall.}](vkGetProc("vkTransitionImageLayoutEXT")) + vkCopyMemoryToImageEXT = cast[proc (device: VkDevic, pCopyMemoryToImageInfo: ptr VkCopyMemoryToImageInfoEXT): VkResult {.stdcall.}](vkGetProc("vkCopyMemoryToImageEXT")) + vkCopyImageToMemoryEXT = cast[proc (device: VkDevic, pCopyImageToMemoryInfo: ptr VkCopyImageToMemoryInfoEXT): VkResult {.stdcall.}](vkGetProc("vkCopyImageToMemoryEXT")) + vkCopyImageToImageEXT = cast[proc (device: VkDevic, pCopyImageToImageInfo: ptr VkCopyImageToImageInfoEXT): VkResult {.stdcall.}](vkGetProc("vkCopyImageToImageEXT")) + vkTransitionImageLayoutEXT = cast[proc (device: VkDevic, transitionCount: uint32_, pTransitions: ptr VkHostImageLayoutTransitionInfoEXT): VkResult {.stdcall.}](vkGetProc("vkTransitionImageLayoutEXT")) # Load VK_KHR_map_memory2 proc loadVK_KHR_map_memory2*() = - vkMapMemory2KHR = cast[proc(device: VkDevice, pMemoryMapInfo: ptr VkMemoryMapInfoKHR , ppData: ptr pointer ): VkResult {.stdcall.}](vkGetProc("vkMapMemory2KHR")) - vkUnmapMemory2KHR = cast[proc(device: VkDevice, pMemoryUnmapInfo: ptr VkMemoryUnmapInfoKHR ): VkResult {.stdcall.}](vkGetProc("vkUnmapMemory2KHR")) + vkMapMemory2KHR = cast[proc (device: VkDevic, pMemoryMapInfo: ptr VkMemoryMapInfoKHR, ppData: ptr pointer): VkResult {.stdcall.}](vkGetProc("vkMapMemory2KHR")) + vkUnmapMemory2KHR = cast[proc (device: VkDevic, pMemoryUnmapInfo: ptr VkMemoryUnmapInfoKHR): VkResult {.stdcall.}](vkGetProc("vkUnmapMemory2KHR")) # Load VK_EXT_swapchain_maintenance1 proc loadVK_EXT_swapchain_maintenance1*() = - vkReleaseSwapchainImagesEXT = cast[proc(device: VkDevice, pReleaseInfo: ptr VkReleaseSwapchainImagesInfoEXT ): VkResult {.stdcall.}](vkGetProc("vkReleaseSwapchainImagesEXT")) + vkReleaseSwapchainImagesEXT = cast[proc (device: VkDevic, pReleaseInfo: ptr VkReleaseSwapchainImagesInfoEXT): VkResult {.stdcall.}](vkGetProc("vkReleaseSwapchainImagesEXT")) # Load VK_NV_device_generated_commands proc loadVK_NV_device_generated_commands*() = - vkGetGeneratedCommandsMemoryRequirementsNV = cast[proc(device: VkDevice, pInfo: ptr VkGeneratedCommandsMemoryRequirementsInfoNV , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.stdcall.}](vkGetProc("vkGetGeneratedCommandsMemoryRequirementsNV")) - vkCmdPreprocessGeneratedCommandsNV = cast[proc(commandBuffer: VkCommandBuffer, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV ): void {.stdcall.}](vkGetProc("vkCmdPreprocessGeneratedCommandsNV")) - vkCmdExecuteGeneratedCommandsNV = cast[proc(commandBuffer: VkCommandBuffer, isPreprocessed: VkBool32, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV ): void {.stdcall.}](vkGetProc("vkCmdExecuteGeneratedCommandsNV")) - vkCmdBindPipelineShaderGroupNV = cast[proc(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline, groupIndex: uint32): void {.stdcall.}](vkGetProc("vkCmdBindPipelineShaderGroupNV")) - vkCreateIndirectCommandsLayoutNV = cast[proc(device: VkDevice, pCreateInfo: ptr VkIndirectCommandsLayoutCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pIndirectCommandsLayout: ptr VkIndirectCommandsLayoutNV ): VkResult {.stdcall.}](vkGetProc("vkCreateIndirectCommandsLayoutNV")) - vkDestroyIndirectCommandsLayoutNV = cast[proc(device: VkDevice, indirectCommandsLayout: VkIndirectCommandsLayoutNV, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyIndirectCommandsLayoutNV")) + vkGetGeneratedCommandsMemoryRequirementsNV = cast[proc (device: VkDevic, pInfo: ptr VkGeneratedCommandsMemoryRequirementsInfoNV, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetGeneratedCommandsMemoryRequirementsNV")) + vkCmdPreprocessGeneratedCommandsNV = cast[proc (commandBuffer: VkCommandBuffe, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV): void {.stdcall.}](vkGetProc("vkCmdPreprocessGeneratedCommandsNV")) + vkCmdExecuteGeneratedCommandsNV = cast[proc (commandBuffer: VkCommandBuffe, isPreprocessed: VkBool3, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV): void {.stdcall.}](vkGetProc("vkCmdExecuteGeneratedCommandsNV")) + vkCmdBindPipelineShaderGroupNV = cast[proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, pipeline: VkPipelin, groupIndex: uint32_): void {.stdcall.}](vkGetProc("vkCmdBindPipelineShaderGroupNV")) + vkCreateIndirectCommandsLayoutNV = cast[proc (device: VkDevic, pCreateInfo: ptr VkIndirectCommandsLayoutCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pIndirectCommandsLayout: ptr VkIndirectCommandsLayoutNV): VkResult {.stdcall.}](vkGetProc("vkCreateIndirectCommandsLayoutNV")) + vkDestroyIndirectCommandsLayoutNV = cast[proc (device: VkDevic, indirectCommandsLayout: VkIndirectCommandsLayoutN, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyIndirectCommandsLayoutNV")) # Load VK_EXT_depth_bias_control proc loadVK_EXT_depth_bias_control*() = - vkCmdSetDepthBias2EXT = cast[proc(commandBuffer: VkCommandBuffer, pDepthBiasInfo: ptr VkDepthBiasInfoEXT ): void {.stdcall.}](vkGetProc("vkCmdSetDepthBias2EXT")) + vkCmdSetDepthBias2EXT = cast[proc (commandBuffer: VkCommandBuffe, pDepthBiasInfo: ptr VkDepthBiasInfoEXT ): void {.stdcall.}](vkGetProc("vkCmdSetDepthBias2EXT")) # Load VK_EXT_acquire_drm_display proc loadVK_EXT_acquire_drm_display*() = - vkAcquireDrmDisplayEXT = cast[proc(physicalDevice: VkPhysicalDevice, drmFd: int32, display: VkDisplayKHR): VkResult {.stdcall.}](vkGetProc("vkAcquireDrmDisplayEXT")) - vkGetDrmDisplayEXT = cast[proc(physicalDevice: VkPhysicalDevice, drmFd: int32, connectorId: uint32, display: ptr VkDisplayKHR ): VkResult {.stdcall.}](vkGetProc("vkGetDrmDisplayEXT")) + vkAcquireDrmDisplayEXT = cast[proc (physicalDevice: VkPhysicalDevic, drmFd: int32_, display: VkDisplayKH): VkResult {.stdcall.}](vkGetProc("vkAcquireDrmDisplayEXT")) + vkGetDrmDisplayEXT = cast[proc (physicalDevice: VkPhysicalDevic, drmFd: int32_, connectorId: uint32_, display: ptr VkDisplayKHR): VkResult {.stdcall.}](vkGetProc("vkGetDrmDisplayEXT")) # Load VK_KHR_video_encode_queue proc loadVK_KHR_video_encode_queue*() = - vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR = cast[proc(physicalDevice: VkPhysicalDevice, pQualityLevelInfo: ptr VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR , pQualityLevelProperties: ptr VkVideoEncodeQualityLevelPropertiesKHR ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR")) - vkGetEncodedVideoSessionParametersKHR = cast[proc(device: VkDevice, pVideoSessionParametersInfo: ptr VkVideoEncodeSessionParametersGetInfoKHR , pFeedbackInfo: ptr VkVideoEncodeSessionParametersFeedbackInfoKHR , pDataSize: ptr uint , pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetEncodedVideoSessionParametersKHR")) - vkCmdEncodeVideoKHR = cast[proc(commandBuffer: VkCommandBuffer, pEncodeInfo: ptr VkVideoEncodeInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdEncodeVideoKHR")) + vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR = cast[proc (physicalDevice: VkPhysicalDevic, pQualityLevelInfo: ptr VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR, pQualityLevelProperties: ptr VkVideoEncodeQualityLevelPropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR")) + vkGetEncodedVideoSessionParametersKHR = cast[proc (device: VkDevic, pVideoSessionParametersInfo: ptr VkVideoEncodeSessionParametersGetInfoKHR, pFeedbackInfo: ptr VkVideoEncodeSessionParametersFeedbackInfoKHR, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetEncodedVideoSessionParametersKHR")) + vkCmdEncodeVideoKHR = cast[proc (commandBuffer: VkCommandBuffe, pEncodeInfo: ptr VkVideoEncodeInfoKHR): void {.stdcall.}](vkGetProc("vkCmdEncodeVideoKHR")) # Load VK_NV_cuda_kernel_launch proc loadVK_NV_cuda_kernel_launch*() = - vkCreateCudaModuleNV = cast[proc(device: VkDevice, pCreateInfo: ptr VkCudaModuleCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pModule: ptr VkCudaModuleNV ): VkResult {.stdcall.}](vkGetProc("vkCreateCudaModuleNV")) - vkGetCudaModuleCacheNV = cast[proc(device: VkDevice, module: VkCudaModuleNV, pCacheSize: ptr uint , pCacheData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetCudaModuleCacheNV")) - vkCreateCudaFunctionNV = cast[proc(device: VkDevice, pCreateInfo: ptr VkCudaFunctionCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pFunction: ptr VkCudaFunctionNV ): VkResult {.stdcall.}](vkGetProc("vkCreateCudaFunctionNV")) - vkDestroyCudaModuleNV = cast[proc(device: VkDevice, module: VkCudaModuleNV, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyCudaModuleNV")) - vkDestroyCudaFunctionNV = cast[proc(device: VkDevice, function: VkCudaFunctionNV, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyCudaFunctionNV")) - vkCmdCudaLaunchKernelNV = cast[proc(commandBuffer: VkCommandBuffer, pLaunchInfo: ptr VkCudaLaunchInfoNV ): void {.stdcall.}](vkGetProc("vkCmdCudaLaunchKernelNV")) + vkCreateCudaModuleNV = cast[proc (device: VkDevic, pCreateInfo: ptr VkCudaModuleCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pModule: ptr VkCudaModuleNV): VkResult {.stdcall.}](vkGetProc("vkCreateCudaModuleNV")) + vkGetCudaModuleCacheNV = cast[proc (device: VkDevic, module: VkCudaModuleN, pCacheSize: ptr uint, pCacheData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetCudaModuleCacheNV")) + vkCreateCudaFunctionNV = cast[proc (device: VkDevic, pCreateInfo: ptr VkCudaFunctionCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pFunction: ptr VkCudaFunctionNV): VkResult {.stdcall.}](vkGetProc("vkCreateCudaFunctionNV")) + vkDestroyCudaModuleNV = cast[proc (device: VkDevic, module: VkCudaModuleN, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyCudaModuleNV")) + vkDestroyCudaFunctionNV = cast[proc (device: VkDevic, function: VkCudaFunctionN, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyCudaFunctionNV")) + vkCmdCudaLaunchKernelNV = cast[proc (commandBuffer: VkCommandBuffe, pLaunchInfo: ptr VkCudaLaunchInfoNV): void {.stdcall.}](vkGetProc("vkCmdCudaLaunchKernelNV")) # Load VK_KHR_object_refresh proc loadVK_KHR_object_refresh*() = - vkCmdRefreshObjectsKHR = cast[proc(commandBuffer: VkCommandBuffer, pRefreshObjects: ptr VkRefreshObjectListKHR ): void {.stdcall.}](vkGetProc("vkCmdRefreshObjectsKHR")) - vkGetPhysicalDeviceRefreshableObjectTypesKHR = cast[proc(physicalDevice: VkPhysicalDevice, pRefreshableObjectTypeCount: ptr uint32 , pRefreshableObjectTypes: ptr VkObjectType ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceRefreshableObjectTypesKHR")) + vkCmdRefreshObjectsKHR = cast[proc (commandBuffer: VkCommandBuffe, pRefreshObjects: ptr VkRefreshObjectListKHR): void {.stdcall.}](vkGetProc("vkCmdRefreshObjectsKHR")) + vkGetPhysicalDeviceRefreshableObjectTypesKHR = cast[proc (physicalDevice: VkPhysicalDevic, pRefreshableObjectTypeCount: ptr uint32, pRefreshableObjectTypes: ptr VkObjectType): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceRefreshableObjectTypesKHR")) # Load VK_EXT_metal_objects proc loadVK_EXT_metal_objects*() = - vkExportMetalObjectsEXT = cast[proc(device: VkDevice, pMetalObjectsInfo: ptr VkExportMetalObjectsInfoEXT ): void {.stdcall.}](vkGetProc("vkExportMetalObjectsEXT")) + vkExportMetalObjectsEXT = cast[proc (device: VkDevic, pMetalObjectsInfo: ptr VkExportMetalObjectsInfoEXT): void {.stdcall.}](vkGetProc("vkExportMetalObjectsEXT")) # Load VK_KHR_synchronization2 proc loadVK_KHR_synchronization2*() = - vkCmdWriteBufferMarker2AMD = cast[proc(commandBuffer: VkCommandBuffer, stage: VkPipelineStageFlags2, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, marker: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteBufferMarker2AMD")) - vkGetQueueCheckpointData2NV = cast[proc(queue: VkQueue, pCheckpointDataCount: ptr uint32 , pCheckpointData: ptr VkCheckpointData2NV ): void {.stdcall.}](vkGetProc("vkGetQueueCheckpointData2NV")) + vkCmdWriteBufferMarker2AMD = cast[proc (commandBuffer: VkCommandBuffe, stage: VkPipelineStageFlags, dstBuffer: VkBuffe, dstOffset: VkDeviceSiz, marker: uint32_): void {.stdcall.}](vkGetProc("vkCmdWriteBufferMarker2AMD")) + vkGetQueueCheckpointData2NV = cast[proc (queue: VkQueu, pCheckpointDataCount: ptr uint32, pCheckpointData: ptr VkCheckpointData2NV): void {.stdcall.}](vkGetProc("vkGetQueueCheckpointData2NV")) # Load VK_EXT_descriptor_buffer proc loadVK_EXT_descriptor_buffer*() = - vkGetDescriptorSetLayoutSizeEXT = cast[proc(device: VkDevice, layout: VkDescriptorSetLayout, pLayoutSizeInBytes: ptr VkDeviceSize ): void {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutSizeEXT")) - vkGetDescriptorSetLayoutBindingOffsetEXT = cast[proc(device: VkDevice, layout: VkDescriptorSetLayout, binding: uint32, pOffset: ptr VkDeviceSize ): void {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutBindingOffsetEXT")) - vkGetDescriptorEXT = cast[proc(device: VkDevice, pDescriptorInfo: ptr VkDescriptorGetInfoEXT , dataSize: uint, pDescriptor: pointer ): void {.stdcall.}](vkGetProc("vkGetDescriptorEXT")) - vkCmdBindDescriptorBuffersEXT = cast[proc(commandBuffer: VkCommandBuffer, bufferCount: uint32, pBindingInfos: ptr VkDescriptorBufferBindingInfoEXT ): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorBuffersEXT")) - vkCmdSetDescriptorBufferOffsetsEXT = cast[proc(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, firstSet: uint32, setCount: uint32, pBufferIndices: ptr uint32 , pOffsets: ptr VkDeviceSize ): void {.stdcall.}](vkGetProc("vkCmdSetDescriptorBufferOffsetsEXT")) - vkCmdBindDescriptorBufferEmbeddedSamplersEXT = cast[proc(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, set: uint32): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorBufferEmbeddedSamplersEXT")) - vkGetBufferOpaqueCaptureDescriptorDataEXT = cast[proc(device: VkDevice, pInfo: ptr VkBufferCaptureDescriptorDataInfoEXT , pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetBufferOpaqueCaptureDescriptorDataEXT")) - vkGetImageOpaqueCaptureDescriptorDataEXT = cast[proc(device: VkDevice, pInfo: ptr VkImageCaptureDescriptorDataInfoEXT , pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetImageOpaqueCaptureDescriptorDataEXT")) - vkGetImageViewOpaqueCaptureDescriptorDataEXT = cast[proc(device: VkDevice, pInfo: ptr VkImageViewCaptureDescriptorDataInfoEXT , pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetImageViewOpaqueCaptureDescriptorDataEXT")) - vkGetSamplerOpaqueCaptureDescriptorDataEXT = cast[proc(device: VkDevice, pInfo: ptr VkSamplerCaptureDescriptorDataInfoEXT , pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetSamplerOpaqueCaptureDescriptorDataEXT")) - vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT = cast[proc(device: VkDevice, pInfo: ptr VkAccelerationStructureCaptureDescriptorDataInfoEXT , pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT")) + vkGetDescriptorSetLayoutSizeEXT = cast[proc (device: VkDevic, layout: VkDescriptorSetLayou, pLayoutSizeInBytes: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutSizeEXT")) + vkGetDescriptorSetLayoutBindingOffsetEXT = cast[proc (device: VkDevic, layout: VkDescriptorSetLayou, binding: uint32_, pOffset: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutBindingOffsetEXT")) + vkGetDescriptorEXT = cast[proc (device: VkDevic, pDescriptorInfo: ptr VkDescriptorGetInfoEXT, dataSize: size_, pDescriptor: pointer): void {.stdcall.}](vkGetProc("vkGetDescriptorEXT")) + vkCmdBindDescriptorBuffersEXT = cast[proc (commandBuffer: VkCommandBuffe, bufferCount: uint32_, pBindingInfos: ptr VkDescriptorBufferBindingInfoEXT): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorBuffersEXT")) + vkCmdSetDescriptorBufferOffsetsEXT = cast[proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, layout: VkPipelineLayou, firstSet: uint32_, setCount: uint32_, pBufferIndices: ptr uint32, pOffsets: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdSetDescriptorBufferOffsetsEXT")) + vkCmdBindDescriptorBufferEmbeddedSamplersEXT = cast[proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, layout: VkPipelineLayou, set: uint32_): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorBufferEmbeddedSamplersEXT")) + vkGetBufferOpaqueCaptureDescriptorDataEXT = cast[proc (device: VkDevic, pInfo: ptr VkBufferCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetBufferOpaqueCaptureDescriptorDataEXT")) + vkGetImageOpaqueCaptureDescriptorDataEXT = cast[proc (device: VkDevic, pInfo: ptr VkImageCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetImageOpaqueCaptureDescriptorDataEXT")) + vkGetImageViewOpaqueCaptureDescriptorDataEXT = cast[proc (device: VkDevic, pInfo: ptr VkImageViewCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetImageViewOpaqueCaptureDescriptorDataEXT")) + vkGetSamplerOpaqueCaptureDescriptorDataEXT = cast[proc (device: VkDevic, pInfo: ptr VkSamplerCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetSamplerOpaqueCaptureDescriptorDataEXT")) + vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT = cast[proc (device: VkDevic, pInfo: ptr VkAccelerationStructureCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT")) # Load VK_NV_fragment_shading_rate_enums proc loadVK_NV_fragment_shading_rate_enums*() = - vkCmdSetFragmentShadingRateEnumNV = cast[proc(commandBuffer: VkCommandBuffer, shadingRate: VkFragmentShadingRateNV, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): void {.stdcall.}](vkGetProc("vkCmdSetFragmentShadingRateEnumNV")) + vkCmdSetFragmentShadingRateEnumNV = cast[proc (commandBuffer: VkCommandBuffe, shadingRate: VkFragmentShadingRateN, combinerOps: array[2, VkFragmentShadingRateCombinerOpKH]): void {.stdcall.}](vkGetProc("vkCmdSetFragmentShadingRateEnumNV")) # Load VK_EXT_mesh_shader proc loadVK_EXT_mesh_shader*() = - vkCmdDrawMeshTasksEXT = cast[proc(commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksEXT")) - vkCmdDrawMeshTasksIndirectEXT = cast[proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksIndirectEXT")) - vkCmdDrawMeshTasksIndirectCountEXT = cast[proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksIndirectCountEXT")) + vkCmdDrawMeshTasksEXT = cast[proc (commandBuffer: VkCommandBuffe, groupCountX: uint32_, groupCountY: uint32_, groupCountZ: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksEXT")) + vkCmdDrawMeshTasksIndirectEXT = cast[proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, drawCount: uint32_, stride: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksIndirectEXT")) + vkCmdDrawMeshTasksIndirectCountEXT = cast[proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, countBuffer: VkBuffe, countBufferOffset: VkDeviceSiz, maxDrawCount: uint32_, stride: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksIndirectCountEXT")) # Load VK_EXT_device_fault proc loadVK_EXT_device_fault*() = - vkGetDeviceFaultInfoEXT = cast[proc(device: VkDevice, pFaultCounts: ptr VkDeviceFaultCountsEXT , pFaultInfo: ptr VkDeviceFaultInfoEXT ): VkResult {.stdcall.}](vkGetProc("vkGetDeviceFaultInfoEXT")) + vkGetDeviceFaultInfoEXT = cast[proc (device: VkDevic, pFaultCounts: ptr VkDeviceFaultCountsEXT, pFaultInfo: ptr VkDeviceFaultInfoEXT): VkResult {.stdcall.}](vkGetProc("vkGetDeviceFaultInfoEXT")) # Load VK_NV_acquire_winrt_display proc loadVK_NV_acquire_winrt_display*() = - vkAcquireWinrtDisplayNV = cast[proc(physicalDevice: VkPhysicalDevice, display: VkDisplayKHR): VkResult {.stdcall.}](vkGetProc("vkAcquireWinrtDisplayNV")) - vkGetWinrtDisplayNV = cast[proc(physicalDevice: VkPhysicalDevice, deviceRelativeId: uint32, pDisplay: ptr VkDisplayKHR ): VkResult {.stdcall.}](vkGetProc("vkGetWinrtDisplayNV")) + vkAcquireWinrtDisplayNV = cast[proc (physicalDevice: VkPhysicalDevic, display: VkDisplayKH): VkResult {.stdcall.}](vkGetProc("vkAcquireWinrtDisplayNV")) + vkGetWinrtDisplayNV = cast[proc (physicalDevice: VkPhysicalDevic, deviceRelativeId: uint32_, pDisplay: ptr VkDisplayKHR): VkResult {.stdcall.}](vkGetProc("vkGetWinrtDisplayNV")) # Load VK_EXT_directfb_surface proc loadVK_EXT_directfb_surface*() = - vkCreateDirectFBSurfaceEXT = cast[proc(instance: VkInstance, pCreateInfo: ptr VkDirectFBSurfaceCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateDirectFBSurfaceEXT")) - vkGetPhysicalDeviceDirectFBPresentationSupportEXT = cast[proc(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, dfb: ptr IDirectFB ): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceDirectFBPresentationSupportEXT")) + vkCreateDirectFBSurfaceEXT = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkDirectFBSurfaceCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateDirectFBSurfaceEXT")) + vkGetPhysicalDeviceDirectFBPresentationSupportEXT = cast[proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, dfb: ptr IDirectFB): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceDirectFBPresentationSupportEXT")) # Load VK_EXT_vertex_input_dynamic_state proc loadVK_EXT_vertex_input_dynamic_state*() = - vkCmdSetVertexInputEXT = cast[proc(commandBuffer: VkCommandBuffer, vertexBindingDescriptionCount: uint32, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription2EXT , vertexAttributeDescriptionCount: uint32, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription2EXT ): void {.stdcall.}](vkGetProc("vkCmdSetVertexInputEXT")) + vkCmdSetVertexInputEXT = cast[proc (commandBuffer: VkCommandBuffe, vertexBindingDescriptionCount: uint32_, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription2EXT, vertexAttributeDescriptionCount: uint32_, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription2EXT): void {.stdcall.}](vkGetProc("vkCmdSetVertexInputEXT")) # Load VK_FUCHSIA_external_memory proc loadVK_FUCHSIA_external_memory*() = - vkGetMemoryZirconHandleFUCHSIA = cast[proc(device: VkDevice, pGetZirconHandleInfo: ptr VkMemoryGetZirconHandleInfoFUCHSIA , pZirconHandle: ptr zx_handle_t ): VkResult {.stdcall.}](vkGetProc("vkGetMemoryZirconHandleFUCHSIA")) - vkGetMemoryZirconHandlePropertiesFUCHSIA = cast[proc(device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, zirconHandle: zx_handle_t, pMemoryZirconHandleProperties: ptr VkMemoryZirconHandlePropertiesFUCHSIA ): VkResult {.stdcall.}](vkGetProc("vkGetMemoryZirconHandlePropertiesFUCHSIA")) + vkGetMemoryZirconHandleFUCHSIA = cast[proc (device: VkDevic, pGetZirconHandleInfo: ptr VkMemoryGetZirconHandleInfoFUCHSIA, pZirconHandle: ptr zx_handle_t): VkResult {.stdcall.}](vkGetProc("vkGetMemoryZirconHandleFUCHSIA")) + vkGetMemoryZirconHandlePropertiesFUCHSIA = cast[proc (device: VkDevic, handleType: VkExternalMemoryHandleTypeFlagBit, zirconHandle: zx_handle_, pMemoryZirconHandleProperties: ptr VkMemoryZirconHandlePropertiesFUCHSIA): VkResult {.stdcall.}](vkGetProc("vkGetMemoryZirconHandlePropertiesFUCHSIA")) # Load VK_FUCHSIA_external_semaphore proc loadVK_FUCHSIA_external_semaphore*() = - vkImportSemaphoreZirconHandleFUCHSIA = cast[proc(device: VkDevice, pImportSemaphoreZirconHandleInfo: ptr VkImportSemaphoreZirconHandleInfoFUCHSIA ): VkResult {.stdcall.}](vkGetProc("vkImportSemaphoreZirconHandleFUCHSIA")) - vkGetSemaphoreZirconHandleFUCHSIA = cast[proc(device: VkDevice, pGetZirconHandleInfo: ptr VkSemaphoreGetZirconHandleInfoFUCHSIA , pZirconHandle: ptr zx_handle_t ): VkResult {.stdcall.}](vkGetProc("vkGetSemaphoreZirconHandleFUCHSIA")) + vkImportSemaphoreZirconHandleFUCHSIA = cast[proc (device: VkDevic, pImportSemaphoreZirconHandleInfo: ptr VkImportSemaphoreZirconHandleInfoFUCHSIA): VkResult {.stdcall.}](vkGetProc("vkImportSemaphoreZirconHandleFUCHSIA")) + vkGetSemaphoreZirconHandleFUCHSIA = cast[proc (device: VkDevic, pGetZirconHandleInfo: ptr VkSemaphoreGetZirconHandleInfoFUCHSIA, pZirconHandle: ptr zx_handle_t): VkResult {.stdcall.}](vkGetProc("vkGetSemaphoreZirconHandleFUCHSIA")) # Load VK_FUCHSIA_buffer_collection proc loadVK_FUCHSIA_buffer_collection*() = - vkCreateBufferCollectionFUCHSIA = cast[proc(device: VkDevice, pCreateInfo: ptr VkBufferCollectionCreateInfoFUCHSIA , pAllocator: ptr VkAllocationCallbacks , pCollection: ptr VkBufferCollectionFUCHSIA ): VkResult {.stdcall.}](vkGetProc("vkCreateBufferCollectionFUCHSIA")) - vkSetBufferCollectionImageConstraintsFUCHSIA = cast[proc(device: VkDevice, collection: VkBufferCollectionFUCHSIA, pImageConstraintsInfo: ptr VkImageConstraintsInfoFUCHSIA ): VkResult {.stdcall.}](vkGetProc("vkSetBufferCollectionImageConstraintsFUCHSIA")) - vkSetBufferCollectionBufferConstraintsFUCHSIA = cast[proc(device: VkDevice, collection: VkBufferCollectionFUCHSIA, pBufferConstraintsInfo: ptr VkBufferConstraintsInfoFUCHSIA ): VkResult {.stdcall.}](vkGetProc("vkSetBufferCollectionBufferConstraintsFUCHSIA")) - vkDestroyBufferCollectionFUCHSIA = cast[proc(device: VkDevice, collection: VkBufferCollectionFUCHSIA, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyBufferCollectionFUCHSIA")) - vkGetBufferCollectionPropertiesFUCHSIA = cast[proc(device: VkDevice, collection: VkBufferCollectionFUCHSIA, pProperties: ptr VkBufferCollectionPropertiesFUCHSIA ): VkResult {.stdcall.}](vkGetProc("vkGetBufferCollectionPropertiesFUCHSIA")) + vkCreateBufferCollectionFUCHSIA = cast[proc (device: VkDevic, pCreateInfo: ptr VkBufferCollectionCreateInfoFUCHSIA, pAllocator: ptr VkAllocationCallbacks, pCollection: ptr VkBufferCollectionFUCHSIA): VkResult {.stdcall.}](vkGetProc("vkCreateBufferCollectionFUCHSIA")) + vkSetBufferCollectionImageConstraintsFUCHSIA = cast[proc (device: VkDevic, collection: VkBufferCollectionFUCHSI, pImageConstraintsInfo: ptr VkImageConstraintsInfoFUCHSIA): VkResult {.stdcall.}](vkGetProc("vkSetBufferCollectionImageConstraintsFUCHSIA")) + vkSetBufferCollectionBufferConstraintsFUCHSIA = cast[proc (device: VkDevic, collection: VkBufferCollectionFUCHSI, pBufferConstraintsInfo: ptr VkBufferConstraintsInfoFUCHSIA): VkResult {.stdcall.}](vkGetProc("vkSetBufferCollectionBufferConstraintsFUCHSIA")) + vkDestroyBufferCollectionFUCHSIA = cast[proc (device: VkDevic, collection: VkBufferCollectionFUCHSI, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyBufferCollectionFUCHSIA")) + vkGetBufferCollectionPropertiesFUCHSIA = cast[proc (device: VkDevic, collection: VkBufferCollectionFUCHSI, pProperties: ptr VkBufferCollectionPropertiesFUCHSIA): VkResult {.stdcall.}](vkGetProc("vkGetBufferCollectionPropertiesFUCHSIA")) # Load VK_HUAWEI_subpass_shading proc loadVK_HUAWEI_subpass_shading*() = - vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = cast[proc(device: VkDevice, renderpass: VkRenderPass, pMaxWorkgroupSize: ptr VkExtent2D ): VkResult {.stdcall.}](vkGetProc("vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI")) - vkCmdSubpassShadingHUAWEI = cast[proc(commandBuffer: VkCommandBuffer): void {.stdcall.}](vkGetProc("vkCmdSubpassShadingHUAWEI")) + vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = cast[proc (device: VkDevic, renderpass: VkRenderPas, pMaxWorkgroupSize: ptr VkExtent2D): VkResult {.stdcall.}](vkGetProc("vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI")) + vkCmdSubpassShadingHUAWEI = cast[proc (commandBuffer: VkCommandBuffe): void {.stdcall.}](vkGetProc("vkCmdSubpassShadingHUAWEI")) # Load VK_HUAWEI_invocation_mask proc loadVK_HUAWEI_invocation_mask*() = - vkCmdBindInvocationMaskHUAWEI = cast[proc(commandBuffer: VkCommandBuffer, imageView: VkImageView, imageLayout: VkImageLayout): void {.stdcall.}](vkGetProc("vkCmdBindInvocationMaskHUAWEI")) + vkCmdBindInvocationMaskHUAWEI = cast[proc (commandBuffer: VkCommandBuffe, imageView: VkImageVie, imageLayout: VkImageLayou): void {.stdcall.}](vkGetProc("vkCmdBindInvocationMaskHUAWEI")) # Load VK_NV_external_memory_rdma proc loadVK_NV_external_memory_rdma*() = - vkGetMemoryRemoteAddressNV = cast[proc(device: VkDevice, pMemoryGetRemoteAddressInfo: ptr VkMemoryGetRemoteAddressInfoNV , pAddress: ptr VkRemoteAddressNV ): VkResult {.stdcall.}](vkGetProc("vkGetMemoryRemoteAddressNV")) + vkGetMemoryRemoteAddressNV = cast[proc (device: VkDevic, pMemoryGetRemoteAddressInfo: ptr VkMemoryGetRemoteAddressInfoNV, pAddress: ptr VkRemoteAddressNV): VkResult {.stdcall.}](vkGetProc("vkGetMemoryRemoteAddressNV")) # Load VK_EXT_pipeline_properties proc loadVK_EXT_pipeline_properties*() = - vkGetPipelinePropertiesEXT = cast[proc(device: VkDevice, pPipelineInfo: ptr VkPipelineInfoEXT , pPipelineProperties: ptr VkBaseOutStructure ): VkResult {.stdcall.}](vkGetProc("vkGetPipelinePropertiesEXT")) + vkGetPipelinePropertiesEXT = cast[proc (device: VkDevic, pPipelineInfo: ptr VkPipelineInfoEXT, pPipelineProperties: ptr VkBaseOutStructure): VkResult {.stdcall.}](vkGetProc("vkGetPipelinePropertiesEXT")) # Load VK_NV_external_sci_sync proc loadVK_NV_external_sci_sync*() = - vkGetFenceSciSyncFenceNV = cast[proc(device: VkDevice, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV , pHandle: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetFenceSciSyncFenceNV")) - vkGetFenceSciSyncObjNV = cast[proc(device: VkDevice, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV , pHandle: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetFenceSciSyncObjNV")) - vkImportFenceSciSyncFenceNV = cast[proc(device: VkDevice, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV ): VkResult {.stdcall.}](vkGetProc("vkImportFenceSciSyncFenceNV")) - vkImportFenceSciSyncObjNV = cast[proc(device: VkDevice, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV ): VkResult {.stdcall.}](vkGetProc("vkImportFenceSciSyncObjNV")) - vkGetPhysicalDeviceSciSyncAttributesNV = cast[proc(physicalDevice: VkPhysicalDevice, pSciSyncAttributesInfo: ptr VkSciSyncAttributesInfoNV , pAttributes: NvSciSyncAttrList): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSciSyncAttributesNV")) - vkGetSemaphoreSciSyncObjNV = cast[proc(device: VkDevice, pGetSciSyncInfo: ptr VkSemaphoreGetSciSyncInfoNV , pHandle: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetSemaphoreSciSyncObjNV")) - vkImportSemaphoreSciSyncObjNV = cast[proc(device: VkDevice, pImportSemaphoreSciSyncInfo: ptr VkImportSemaphoreSciSyncInfoNV ): VkResult {.stdcall.}](vkGetProc("vkImportSemaphoreSciSyncObjNV")) + vkGetFenceSciSyncFenceNV = cast[proc (device: VkDevic, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV, pHandle: pointer): VkResult {.stdcall.}](vkGetProc("vkGetFenceSciSyncFenceNV")) + vkGetFenceSciSyncObjNV = cast[proc (device: VkDevic, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV, pHandle: pointer): VkResult {.stdcall.}](vkGetProc("vkGetFenceSciSyncObjNV")) + vkImportFenceSciSyncFenceNV = cast[proc (device: VkDevic, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV): VkResult {.stdcall.}](vkGetProc("vkImportFenceSciSyncFenceNV")) + vkImportFenceSciSyncObjNV = cast[proc (device: VkDevic, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV): VkResult {.stdcall.}](vkGetProc("vkImportFenceSciSyncObjNV")) + vkGetPhysicalDeviceSciSyncAttributesNV = cast[proc (physicalDevice: VkPhysicalDevic, pSciSyncAttributesInfo: ptr VkSciSyncAttributesInfoNV, pAttributes: NvSciSyncAttrLis): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSciSyncAttributesNV")) + vkGetSemaphoreSciSyncObjNV = cast[proc (device: VkDevic, pGetSciSyncInfo: ptr VkSemaphoreGetSciSyncInfoNV, pHandle: pointer): VkResult {.stdcall.}](vkGetProc("vkGetSemaphoreSciSyncObjNV")) + vkImportSemaphoreSciSyncObjNV = cast[proc (device: VkDevic, pImportSemaphoreSciSyncInfo: ptr VkImportSemaphoreSciSyncInfoNV): VkResult {.stdcall.}](vkGetProc("vkImportSemaphoreSciSyncObjNV")) # Load VK_NV_external_memory_sci_buf proc loadVK_NV_external_memory_sci_buf*() = - vkGetMemorySciBufNV = cast[proc(device: VkDevice, pGetSciBufInfo: ptr VkMemoryGetSciBufInfoNV , pHandle: ptr NvSciBufObj ): VkResult {.stdcall.}](vkGetProc("vkGetMemorySciBufNV")) - vkGetPhysicalDeviceExternalMemorySciBufPropertiesNV = cast[proc(physicalDevice: VkPhysicalDevice, handleType: VkExternalMemoryHandleTypeFlagBits, handle: NvSciBufObj, pMemorySciBufProperties: ptr VkMemorySciBufPropertiesNV ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalMemorySciBufPropertiesNV")) - vkGetPhysicalDeviceSciBufAttributesNV = cast[proc(physicalDevice: VkPhysicalDevice, pAttributes: NvSciBufAttrList): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSciBufAttributesNV")) + vkGetMemorySciBufNV = cast[proc (device: VkDevic, pGetSciBufInfo: ptr VkMemoryGetSciBufInfoNV, pHandle: ptr NvSciBufObj): VkResult {.stdcall.}](vkGetProc("vkGetMemorySciBufNV")) + vkGetPhysicalDeviceExternalMemorySciBufPropertiesNV = cast[proc (physicalDevice: VkPhysicalDevic, handleType: VkExternalMemoryHandleTypeFlagBit, handle: NvSciBufOb, pMemorySciBufProperties: ptr VkMemorySciBufPropertiesNV): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalMemorySciBufPropertiesNV")) + vkGetPhysicalDeviceSciBufAttributesNV = cast[proc (physicalDevice: VkPhysicalDevic, pAttributes: NvSciBufAttrLis): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSciBufAttributesNV")) # Load VK_EXT_extended_dynamic_state2 proc loadVK_EXT_extended_dynamic_state2*() = - vkCmdSetPatchControlPointsEXT = cast[proc(commandBuffer: VkCommandBuffer, patchControlPoints: uint32): void {.stdcall.}](vkGetProc("vkCmdSetPatchControlPointsEXT")) - vkCmdSetLogicOpEXT = cast[proc(commandBuffer: VkCommandBuffer, logicOp: VkLogicOp): void {.stdcall.}](vkGetProc("vkCmdSetLogicOpEXT")) + vkCmdSetPatchControlPointsEXT = cast[proc (commandBuffer: VkCommandBuffe, patchControlPoints: uint32_): void {.stdcall.}](vkGetProc("vkCmdSetPatchControlPointsEXT")) + vkCmdSetLogicOpEXT = cast[proc (commandBuffer: VkCommandBuffe, logicOp: VkLogicO): void {.stdcall.}](vkGetProc("vkCmdSetLogicOpEXT")) # Load VK_QNX_screen_surface proc loadVK_QNX_screen_surface*() = - vkCreateScreenSurfaceQNX = cast[proc(instance: VkInstance, pCreateInfo: ptr VkScreenSurfaceCreateInfoQNX , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateScreenSurfaceQNX")) - vkGetPhysicalDeviceScreenPresentationSupportQNX = cast[proc(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, window: ptr screen_window ): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceScreenPresentationSupportQNX")) + vkCreateScreenSurfaceQNX = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkScreenSurfaceCreateInfoQNX, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateScreenSurfaceQNX")) + vkGetPhysicalDeviceScreenPresentationSupportQNX = cast[proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, window: ptr screen_window): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceScreenPresentationSupportQNX")) # Load VK_EXT_color_write_enable proc loadVK_EXT_color_write_enable*() = - vkCmdSetColorWriteEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, attachmentCount: uint32, pColorWriteEnables: ptr VkBool32 ): void {.stdcall.}](vkGetProc("vkCmdSetColorWriteEnableEXT")) + vkCmdSetColorWriteEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, attachmentCount: uint32_, pColorWriteEnables: ptr VkBool32 ): void {.stdcall.}](vkGetProc("vkCmdSetColorWriteEnableEXT")) # Load VK_KHR_ray_tracing_maintenance1 proc loadVK_KHR_ray_tracing_maintenance1*() = - vkCmdTraceRaysIndirect2KHR = cast[proc(commandBuffer: VkCommandBuffer, indirectDeviceAddress: VkDeviceAddress): void {.stdcall.}](vkGetProc("vkCmdTraceRaysIndirect2KHR")) + vkCmdTraceRaysIndirect2KHR = cast[proc (commandBuffer: VkCommandBuffe, indirectDeviceAddress: VkDeviceAddres): void {.stdcall.}](vkGetProc("vkCmdTraceRaysIndirect2KHR")) # Load VK_EXT_multi_draw proc loadVK_EXT_multi_draw*() = - vkCmdDrawMultiEXT = cast[proc(commandBuffer: VkCommandBuffer, drawCount: uint32, pVertexInfo: ptr VkMultiDrawInfoEXT , instanceCount: uint32, firstInstance: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawMultiEXT")) - vkCmdDrawMultiIndexedEXT = cast[proc(commandBuffer: VkCommandBuffer, drawCount: uint32, pIndexInfo: ptr VkMultiDrawIndexedInfoEXT , instanceCount: uint32, firstInstance: uint32, stride: uint32, pVertexOffset: ptr int32 ): void {.stdcall.}](vkGetProc("vkCmdDrawMultiIndexedEXT")) + vkCmdDrawMultiEXT = cast[proc (commandBuffer: VkCommandBuffe, drawCount: uint32_, pVertexInfo: ptr VkMultiDrawInfoEXT, instanceCount: uint32_, firstInstance: uint32_, stride: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawMultiEXT")) + vkCmdDrawMultiIndexedEXT = cast[proc (commandBuffer: VkCommandBuffe, drawCount: uint32_, pIndexInfo: ptr VkMultiDrawIndexedInfoEXT, instanceCount: uint32_, firstInstance: uint32_, stride: uint32_, pVertexOffset: ptr int32): void {.stdcall.}](vkGetProc("vkCmdDrawMultiIndexedEXT")) # Load VK_EXT_opacity_micromap proc loadVK_EXT_opacity_micromap*() = - vkCreateMicromapEXT = cast[proc(device: VkDevice, pCreateInfo: ptr VkMicromapCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pMicromap: ptr VkMicromapEXT ): VkResult {.stdcall.}](vkGetProc("vkCreateMicromapEXT")) - vkDestroyMicromapEXT = cast[proc(device: VkDevice, micromap: VkMicromapEXT, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyMicromapEXT")) - vkCmdBuildMicromapsEXT = cast[proc(commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkMicromapBuildInfoEXT ): void {.stdcall.}](vkGetProc("vkCmdBuildMicromapsEXT")) - vkBuildMicromapsEXT = cast[proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, infoCount: uint32, pInfos: ptr VkMicromapBuildInfoEXT ): VkResult {.stdcall.}](vkGetProc("vkBuildMicromapsEXT")) - vkCopyMicromapEXT = cast[proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMicromapInfoEXT ): VkResult {.stdcall.}](vkGetProc("vkCopyMicromapEXT")) - vkCopyMicromapToMemoryEXT = cast[proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMicromapToMemoryInfoEXT ): VkResult {.stdcall.}](vkGetProc("vkCopyMicromapToMemoryEXT")) - vkCopyMemoryToMicromapEXT = cast[proc(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMemoryToMicromapInfoEXT ): VkResult {.stdcall.}](vkGetProc("vkCopyMemoryToMicromapEXT")) - vkWriteMicromapsPropertiesEXT = cast[proc(device: VkDevice, micromapCount: uint32, pMicromaps: ptr VkMicromapEXT , queryType: VkQueryType, dataSize: uint, pData: pointer , stride: uint): VkResult {.stdcall.}](vkGetProc("vkWriteMicromapsPropertiesEXT")) - vkCmdCopyMicromapEXT = cast[proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMicromapInfoEXT ): void {.stdcall.}](vkGetProc("vkCmdCopyMicromapEXT")) - vkCmdCopyMicromapToMemoryEXT = cast[proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMicromapToMemoryInfoEXT ): void {.stdcall.}](vkGetProc("vkCmdCopyMicromapToMemoryEXT")) - vkCmdCopyMemoryToMicromapEXT = cast[proc(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMemoryToMicromapInfoEXT ): void {.stdcall.}](vkGetProc("vkCmdCopyMemoryToMicromapEXT")) - vkCmdWriteMicromapsPropertiesEXT = cast[proc(commandBuffer: VkCommandBuffer, micromapCount: uint32, pMicromaps: ptr VkMicromapEXT , queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteMicromapsPropertiesEXT")) - vkGetDeviceMicromapCompatibilityEXT = cast[proc(device: VkDevice, pVersionInfo: ptr VkMicromapVersionInfoEXT , pCompatibility: ptr VkAccelerationStructureCompatibilityKHR ): void {.stdcall.}](vkGetProc("vkGetDeviceMicromapCompatibilityEXT")) - vkGetMicromapBuildSizesEXT = cast[proc(device: VkDevice, buildType: VkAccelerationStructureBuildTypeKHR, pBuildInfo: ptr VkMicromapBuildInfoEXT , pSizeInfo: ptr VkMicromapBuildSizesInfoEXT ): void {.stdcall.}](vkGetProc("vkGetMicromapBuildSizesEXT")) + vkCreateMicromapEXT = cast[proc (device: VkDevic, pCreateInfo: ptr VkMicromapCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pMicromap: ptr VkMicromapEXT ): VkResult {.stdcall.}](vkGetProc("vkCreateMicromapEXT")) + vkDestroyMicromapEXT = cast[proc (device: VkDevic, micromap: VkMicromapEX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyMicromapEXT")) + vkCmdBuildMicromapsEXT = cast[proc (commandBuffer: VkCommandBuffe, infoCount: uint32_, pInfos: ptr VkMicromapBuildInfoEXT): void {.stdcall.}](vkGetProc("vkCmdBuildMicromapsEXT")) + vkBuildMicromapsEXT = cast[proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, infoCount: uint32_, pInfos: ptr VkMicromapBuildInfoEXT): VkResult {.stdcall.}](vkGetProc("vkBuildMicromapsEXT")) + vkCopyMicromapEXT = cast[proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pInfo: ptr VkCopyMicromapInfoEXT): VkResult {.stdcall.}](vkGetProc("vkCopyMicromapEXT")) + vkCopyMicromapToMemoryEXT = cast[proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pInfo: ptr VkCopyMicromapToMemoryInfoEXT): VkResult {.stdcall.}](vkGetProc("vkCopyMicromapToMemoryEXT")) + vkCopyMemoryToMicromapEXT = cast[proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pInfo: ptr VkCopyMemoryToMicromapInfoEXT): VkResult {.stdcall.}](vkGetProc("vkCopyMemoryToMicromapEXT")) + vkWriteMicromapsPropertiesEXT = cast[proc (device: VkDevic, micromapCount: uint32_, pMicromaps: ptr VkMicromapEXT, queryType: VkQueryTyp, dataSize: size_, pData: pointer, stride: size_): VkResult {.stdcall.}](vkGetProc("vkWriteMicromapsPropertiesEXT")) + vkCmdCopyMicromapEXT = cast[proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkCopyMicromapInfoEXT): void {.stdcall.}](vkGetProc("vkCmdCopyMicromapEXT")) + vkCmdCopyMicromapToMemoryEXT = cast[proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkCopyMicromapToMemoryInfoEXT): void {.stdcall.}](vkGetProc("vkCmdCopyMicromapToMemoryEXT")) + vkCmdCopyMemoryToMicromapEXT = cast[proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkCopyMemoryToMicromapInfoEXT): void {.stdcall.}](vkGetProc("vkCmdCopyMemoryToMicromapEXT")) + vkCmdWriteMicromapsPropertiesEXT = cast[proc (commandBuffer: VkCommandBuffe, micromapCount: uint32_, pMicromaps: ptr VkMicromapEXT, queryType: VkQueryTyp, queryPool: VkQueryPoo, firstQuery: uint32_): void {.stdcall.}](vkGetProc("vkCmdWriteMicromapsPropertiesEXT")) + vkGetDeviceMicromapCompatibilityEXT = cast[proc (device: VkDevic, pVersionInfo: ptr VkMicromapVersionInfoEXT, pCompatibility: ptr VkAccelerationStructureCompatibilityKHR): void {.stdcall.}](vkGetProc("vkGetDeviceMicromapCompatibilityEXT")) + vkGetMicromapBuildSizesEXT = cast[proc (device: VkDevic, buildType: VkAccelerationStructureBuildTypeKH, pBuildInfo: ptr VkMicromapBuildInfoEXT , pSizeInfo: ptr VkMicromapBuildSizesInfoEXT ): void {.stdcall.}](vkGetProc("vkGetMicromapBuildSizesEXT")) # Load VK_HUAWEI_cluster_culling_shader proc loadVK_HUAWEI_cluster_culling_shader*() = - vkCmdDrawClusterHUAWEI = cast[proc(commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawClusterHUAWEI")) - vkCmdDrawClusterIndirectHUAWEI = cast[proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdDrawClusterIndirectHUAWEI")) + vkCmdDrawClusterHUAWEI = cast[proc (commandBuffer: VkCommandBuffe, groupCountX: uint32_, groupCountY: uint32_, groupCountZ: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawClusterHUAWEI")) + vkCmdDrawClusterIndirectHUAWEI = cast[proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz): void {.stdcall.}](vkGetProc("vkCmdDrawClusterIndirectHUAWEI")) # Load VK_EXT_pageable_device_local_memory proc loadVK_EXT_pageable_device_local_memory*() = - vkSetDeviceMemoryPriorityEXT = cast[proc(device: VkDevice, memory: VkDeviceMemory, priority: float32): void {.stdcall.}](vkGetProc("vkSetDeviceMemoryPriorityEXT")) + vkSetDeviceMemoryPriorityEXT = cast[proc (device: VkDevic, memory: VkDeviceMemor, priority: floa): void {.stdcall.}](vkGetProc("vkSetDeviceMemoryPriorityEXT")) # Load VK_VALVE_descriptor_set_host_mapping proc loadVK_VALVE_descriptor_set_host_mapping*() = - vkGetDescriptorSetLayoutHostMappingInfoVALVE = cast[proc(device: VkDevice, pBindingReference: ptr VkDescriptorSetBindingReferenceVALVE , pHostMapping: ptr VkDescriptorSetLayoutHostMappingInfoVALVE ): void {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutHostMappingInfoVALVE")) - vkGetDescriptorSetHostMappingVALVE = cast[proc(device: VkDevice, descriptorSet: VkDescriptorSet, ppData: ptr pointer ): void {.stdcall.}](vkGetProc("vkGetDescriptorSetHostMappingVALVE")) + vkGetDescriptorSetLayoutHostMappingInfoVALVE = cast[proc (device: VkDevic, pBindingReference: ptr VkDescriptorSetBindingReferenceVALVE, pHostMapping: ptr VkDescriptorSetLayoutHostMappingInfoVALVE): void {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutHostMappingInfoVALVE")) + vkGetDescriptorSetHostMappingVALVE = cast[proc (device: VkDevic, descriptorSet: VkDescriptorSe, ppData: ptr pointer): void {.stdcall.}](vkGetProc("vkGetDescriptorSetHostMappingVALVE")) # Load VK_NV_copy_memory_indirect proc loadVK_NV_copy_memory_indirect*() = - vkCmdCopyMemoryIndirectNV = cast[proc(commandBuffer: VkCommandBuffer, copyBufferAddress: VkDeviceAddress, copyCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdCopyMemoryIndirectNV")) - vkCmdCopyMemoryToImageIndirectNV = cast[proc(commandBuffer: VkCommandBuffer, copyBufferAddress: VkDeviceAddress, copyCount: uint32, stride: uint32, dstImage: VkImage, dstImageLayout: VkImageLayout, pImageSubresources: ptr VkImageSubresourceLayers ): void {.stdcall.}](vkGetProc("vkCmdCopyMemoryToImageIndirectNV")) + vkCmdCopyMemoryIndirectNV = cast[proc (commandBuffer: VkCommandBuffe, copyBufferAddress: VkDeviceAddres, copyCount: uint32_, stride: uint32_): void {.stdcall.}](vkGetProc("vkCmdCopyMemoryIndirectNV")) + vkCmdCopyMemoryToImageIndirectNV = cast[proc (commandBuffer: VkCommandBuffe, copyBufferAddress: VkDeviceAddres, copyCount: uint32_, stride: uint32_, dstImage: VkImag, dstImageLayout: VkImageLayou, pImageSubresources: ptr VkImageSubresourceLayers): void {.stdcall.}](vkGetProc("vkCmdCopyMemoryToImageIndirectNV")) # Load VK_NV_memory_decompression proc loadVK_NV_memory_decompression*() = - vkCmdDecompressMemoryNV = cast[proc(commandBuffer: VkCommandBuffer, decompressRegionCount: uint32, pDecompressMemoryRegions: ptr VkDecompressMemoryRegionNV ): void {.stdcall.}](vkGetProc("vkCmdDecompressMemoryNV")) - vkCmdDecompressMemoryIndirectCountNV = cast[proc(commandBuffer: VkCommandBuffer, indirectCommandsAddress: VkDeviceAddress, indirectCommandsCountAddress: VkDeviceAddress, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDecompressMemoryIndirectCountNV")) + vkCmdDecompressMemoryNV = cast[proc (commandBuffer: VkCommandBuffe, decompressRegionCount: uint32_, pDecompressMemoryRegions: ptr VkDecompressMemoryRegionNV): void {.stdcall.}](vkGetProc("vkCmdDecompressMemoryNV")) + vkCmdDecompressMemoryIndirectCountNV = cast[proc (commandBuffer: VkCommandBuffe, indirectCommandsAddress: VkDeviceAddres, indirectCommandsCountAddress: VkDeviceAddres, stride: uint32_): void {.stdcall.}](vkGetProc("vkCmdDecompressMemoryIndirectCountNV")) # Load VK_NV_device_generated_commands_compute proc loadVK_NV_device_generated_commands_compute*() = - vkGetPipelineIndirectMemoryRequirementsNV = cast[proc(device: VkDevice, pCreateInfo: ptr VkComputePipelineCreateInfo , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.stdcall.}](vkGetProc("vkGetPipelineIndirectMemoryRequirementsNV")) - vkCmdUpdatePipelineIndirectBufferNV = cast[proc(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline): void {.stdcall.}](vkGetProc("vkCmdUpdatePipelineIndirectBufferNV")) - vkGetPipelineIndirectDeviceAddressNV = cast[proc(device: VkDevice, pInfo: ptr VkPipelineIndirectDeviceAddressInfoNV ): VkDeviceAddress {.stdcall.}](vkGetProc("vkGetPipelineIndirectDeviceAddressNV")) + vkGetPipelineIndirectMemoryRequirementsNV = cast[proc (device: VkDevic, pCreateInfo: ptr VkComputePipelineCreateInfo, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetPipelineIndirectMemoryRequirementsNV")) + vkCmdUpdatePipelineIndirectBufferNV = cast[proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, pipeline: VkPipelin): void {.stdcall.}](vkGetProc("vkCmdUpdatePipelineIndirectBufferNV")) + vkGetPipelineIndirectDeviceAddressNV = cast[proc (device: VkDevic, pInfo: ptr VkPipelineIndirectDeviceAddressInfoNV): VkDeviceAddress {.stdcall.}](vkGetProc("vkGetPipelineIndirectDeviceAddressNV")) # Load VK_EXT_extended_dynamic_state3 proc loadVK_EXT_extended_dynamic_state3*() = - vkCmdSetDepthClampEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, depthClampEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthClampEnableEXT")) - vkCmdSetPolygonModeEXT = cast[proc(commandBuffer: VkCommandBuffer, polygonMode: VkPolygonMode): void {.stdcall.}](vkGetProc("vkCmdSetPolygonModeEXT")) - vkCmdSetRasterizationSamplesEXT = cast[proc(commandBuffer: VkCommandBuffer, rasterizationSamples: VkSampleCountFlagBits): void {.stdcall.}](vkGetProc("vkCmdSetRasterizationSamplesEXT")) - vkCmdSetSampleMaskEXT = cast[proc(commandBuffer: VkCommandBuffer, samples: VkSampleCountFlagBits, pSampleMask: ptr VkSampleMask ): void {.stdcall.}](vkGetProc("vkCmdSetSampleMaskEXT")) - vkCmdSetAlphaToCoverageEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, alphaToCoverageEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetAlphaToCoverageEnableEXT")) - vkCmdSetAlphaToOneEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, alphaToOneEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetAlphaToOneEnableEXT")) - vkCmdSetLogicOpEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, logicOpEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetLogicOpEnableEXT")) - vkCmdSetColorBlendEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEnables: ptr VkBool32 ): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendEnableEXT")) - vkCmdSetColorBlendEquationEXT = cast[proc(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEquations: ptr VkColorBlendEquationEXT ): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendEquationEXT")) - vkCmdSetColorWriteMaskEXT = cast[proc(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorWriteMasks: ptr VkColorComponentFlags ): void {.stdcall.}](vkGetProc("vkCmdSetColorWriteMaskEXT")) - vkCmdSetTessellationDomainOriginEXT = cast[proc(commandBuffer: VkCommandBuffer, domainOrigin: VkTessellationDomainOrigin): void {.stdcall.}](vkGetProc("vkCmdSetTessellationDomainOriginEXT")) - vkCmdSetRasterizationStreamEXT = cast[proc(commandBuffer: VkCommandBuffer, rasterizationStream: uint32): void {.stdcall.}](vkGetProc("vkCmdSetRasterizationStreamEXT")) - vkCmdSetConservativeRasterizationModeEXT = cast[proc(commandBuffer: VkCommandBuffer, conservativeRasterizationMode: VkConservativeRasterizationModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetConservativeRasterizationModeEXT")) - vkCmdSetExtraPrimitiveOverestimationSizeEXT = cast[proc(commandBuffer: VkCommandBuffer, extraPrimitiveOverestimationSize: float32): void {.stdcall.}](vkGetProc("vkCmdSetExtraPrimitiveOverestimationSizeEXT")) - vkCmdSetDepthClipEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, depthClipEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthClipEnableEXT")) - vkCmdSetSampleLocationsEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, sampleLocationsEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetSampleLocationsEnableEXT")) - vkCmdSetColorBlendAdvancedEXT = cast[proc(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendAdvanced: ptr VkColorBlendAdvancedEXT ): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendAdvancedEXT")) - vkCmdSetProvokingVertexModeEXT = cast[proc(commandBuffer: VkCommandBuffer, provokingVertexMode: VkProvokingVertexModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetProvokingVertexModeEXT")) - vkCmdSetLineRasterizationModeEXT = cast[proc(commandBuffer: VkCommandBuffer, lineRasterizationMode: VkLineRasterizationModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetLineRasterizationModeEXT")) - vkCmdSetLineStippleEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, stippledLineEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetLineStippleEnableEXT")) - vkCmdSetDepthClipNegativeOneToOneEXT = cast[proc(commandBuffer: VkCommandBuffer, negativeOneToOne: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthClipNegativeOneToOneEXT")) - vkCmdSetViewportWScalingEnableNV = cast[proc(commandBuffer: VkCommandBuffer, viewportWScalingEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetViewportWScalingEnableNV")) - vkCmdSetViewportSwizzleNV = cast[proc(commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportSwizzles: ptr VkViewportSwizzleNV ): void {.stdcall.}](vkGetProc("vkCmdSetViewportSwizzleNV")) - vkCmdSetCoverageToColorEnableNV = cast[proc(commandBuffer: VkCommandBuffer, coverageToColorEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorEnableNV")) - vkCmdSetCoverageToColorLocationNV = cast[proc(commandBuffer: VkCommandBuffer, coverageToColorLocation: uint32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorLocationNV")) - vkCmdSetCoverageModulationModeNV = cast[proc(commandBuffer: VkCommandBuffer, coverageModulationMode: VkCoverageModulationModeNV): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationModeNV")) - vkCmdSetCoverageModulationTableEnableNV = cast[proc(commandBuffer: VkCommandBuffer, coverageModulationTableEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableEnableNV")) - vkCmdSetCoverageModulationTableNV = cast[proc(commandBuffer: VkCommandBuffer, coverageModulationTableCount: uint32, pCoverageModulationTable: ptr float32 ): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableNV")) - vkCmdSetShadingRateImageEnableNV = cast[proc(commandBuffer: VkCommandBuffer, shadingRateImageEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetShadingRateImageEnableNV")) - vkCmdSetRepresentativeFragmentTestEnableNV = cast[proc(commandBuffer: VkCommandBuffer, representativeFragmentTestEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetRepresentativeFragmentTestEnableNV")) - vkCmdSetCoverageReductionModeNV = cast[proc(commandBuffer: VkCommandBuffer, coverageReductionMode: VkCoverageReductionModeNV): void {.stdcall.}](vkGetProc("vkCmdSetCoverageReductionModeNV")) + vkCmdSetDepthClampEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, depthClampEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetDepthClampEnableEXT")) + vkCmdSetPolygonModeEXT = cast[proc (commandBuffer: VkCommandBuffe, polygonMode: VkPolygonMod): void {.stdcall.}](vkGetProc("vkCmdSetPolygonModeEXT")) + vkCmdSetRasterizationSamplesEXT = cast[proc (commandBuffer: VkCommandBuffe, rasterizationSamples: VkSampleCountFlagBit): void {.stdcall.}](vkGetProc("vkCmdSetRasterizationSamplesEXT")) + vkCmdSetSampleMaskEXT = cast[proc (commandBuffer: VkCommandBuffe, samples: VkSampleCountFlagBit, pSampleMask: ptr VkSampleMask ): void {.stdcall.}](vkGetProc("vkCmdSetSampleMaskEXT")) + vkCmdSetAlphaToCoverageEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, alphaToCoverageEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetAlphaToCoverageEnableEXT")) + vkCmdSetAlphaToOneEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, alphaToOneEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetAlphaToOneEnableEXT")) + vkCmdSetLogicOpEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, logicOpEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetLogicOpEnableEXT")) + vkCmdSetColorBlendEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, firstAttachment: uint32_, attachmentCount: uint32_, pColorBlendEnables: ptr VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendEnableEXT")) + vkCmdSetColorBlendEquationEXT = cast[proc (commandBuffer: VkCommandBuffe, firstAttachment: uint32_, attachmentCount: uint32_, pColorBlendEquations: ptr VkColorBlendEquationEXT): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendEquationEXT")) + vkCmdSetColorWriteMaskEXT = cast[proc (commandBuffer: VkCommandBuffe, firstAttachment: uint32_, attachmentCount: uint32_, pColorWriteMasks: ptr VkColorComponentFlags): void {.stdcall.}](vkGetProc("vkCmdSetColorWriteMaskEXT")) + vkCmdSetTessellationDomainOriginEXT = cast[proc (commandBuffer: VkCommandBuffe, domainOrigin: VkTessellationDomainOrigi): void {.stdcall.}](vkGetProc("vkCmdSetTessellationDomainOriginEXT")) + vkCmdSetRasterizationStreamEXT = cast[proc (commandBuffer: VkCommandBuffe, rasterizationStream: uint32_): void {.stdcall.}](vkGetProc("vkCmdSetRasterizationStreamEXT")) + vkCmdSetConservativeRasterizationModeEXT = cast[proc (commandBuffer: VkCommandBuffe, conservativeRasterizationMode: VkConservativeRasterizationModeEX): void {.stdcall.}](vkGetProc("vkCmdSetConservativeRasterizationModeEXT")) + vkCmdSetExtraPrimitiveOverestimationSizeEXT = cast[proc (commandBuffer: VkCommandBuffe, extraPrimitiveOverestimationSize: floa): void {.stdcall.}](vkGetProc("vkCmdSetExtraPrimitiveOverestimationSizeEXT")) + vkCmdSetDepthClipEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, depthClipEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetDepthClipEnableEXT")) + vkCmdSetSampleLocationsEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, sampleLocationsEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetSampleLocationsEnableEXT")) + vkCmdSetColorBlendAdvancedEXT = cast[proc (commandBuffer: VkCommandBuffe, firstAttachment: uint32_, attachmentCount: uint32_, pColorBlendAdvanced: ptr VkColorBlendAdvancedEXT): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendAdvancedEXT")) + vkCmdSetProvokingVertexModeEXT = cast[proc (commandBuffer: VkCommandBuffe, provokingVertexMode: VkProvokingVertexModeEX): void {.stdcall.}](vkGetProc("vkCmdSetProvokingVertexModeEXT")) + vkCmdSetLineRasterizationModeEXT = cast[proc (commandBuffer: VkCommandBuffe, lineRasterizationMode: VkLineRasterizationModeEX): void {.stdcall.}](vkGetProc("vkCmdSetLineRasterizationModeEXT")) + vkCmdSetLineStippleEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, stippledLineEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetLineStippleEnableEXT")) + vkCmdSetDepthClipNegativeOneToOneEXT = cast[proc (commandBuffer: VkCommandBuffe, negativeOneToOne: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetDepthClipNegativeOneToOneEXT")) + vkCmdSetViewportWScalingEnableNV = cast[proc (commandBuffer: VkCommandBuffe, viewportWScalingEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetViewportWScalingEnableNV")) + vkCmdSetViewportSwizzleNV = cast[proc (commandBuffer: VkCommandBuffe, firstViewport: uint32_, viewportCount: uint32_, pViewportSwizzles: ptr VkViewportSwizzleNV): void {.stdcall.}](vkGetProc("vkCmdSetViewportSwizzleNV")) + vkCmdSetCoverageToColorEnableNV = cast[proc (commandBuffer: VkCommandBuffe, coverageToColorEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorEnableNV")) + vkCmdSetCoverageToColorLocationNV = cast[proc (commandBuffer: VkCommandBuffe, coverageToColorLocation: uint32_): void {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorLocationNV")) + vkCmdSetCoverageModulationModeNV = cast[proc (commandBuffer: VkCommandBuffe, coverageModulationMode: VkCoverageModulationModeN): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationModeNV")) + vkCmdSetCoverageModulationTableEnableNV = cast[proc (commandBuffer: VkCommandBuffe, coverageModulationTableEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableEnableNV")) + vkCmdSetCoverageModulationTableNV = cast[proc (commandBuffer: VkCommandBuffe, coverageModulationTableCount: uint32_, pCoverageModulationTable: ptr float32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableNV")) + vkCmdSetShadingRateImageEnableNV = cast[proc (commandBuffer: VkCommandBuffe, shadingRateImageEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetShadingRateImageEnableNV")) + vkCmdSetRepresentativeFragmentTestEnableNV = cast[proc (commandBuffer: VkCommandBuffe, representativeFragmentTestEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetRepresentativeFragmentTestEnableNV")) + vkCmdSetCoverageReductionModeNV = cast[proc (commandBuffer: VkCommandBuffe, coverageReductionMode: VkCoverageReductionModeN): void {.stdcall.}](vkGetProc("vkCmdSetCoverageReductionModeNV")) # Load VK_EXT_shader_module_identifier proc loadVK_EXT_shader_module_identifier*() = - vkGetShaderModuleIdentifierEXT = cast[proc(device: VkDevice, shaderModule: VkShaderModule, pIdentifier: ptr VkShaderModuleIdentifierEXT ): void {.stdcall.}](vkGetProc("vkGetShaderModuleIdentifierEXT")) - vkGetShaderModuleCreateInfoIdentifierEXT = cast[proc(device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo , pIdentifier: ptr VkShaderModuleIdentifierEXT ): void {.stdcall.}](vkGetProc("vkGetShaderModuleCreateInfoIdentifierEXT")) + vkGetShaderModuleIdentifierEXT = cast[proc (device: VkDevic, shaderModule: VkShaderModul, pIdentifier: ptr VkShaderModuleIdentifierEXT): void {.stdcall.}](vkGetProc("vkGetShaderModuleIdentifierEXT")) + vkGetShaderModuleCreateInfoIdentifierEXT = cast[proc (device: VkDevic, pCreateInfo: ptr VkShaderModuleCreateInfo, pIdentifier: ptr VkShaderModuleIdentifierEXT): void {.stdcall.}](vkGetProc("vkGetShaderModuleCreateInfoIdentifierEXT")) # Load VK_NV_optical_flow proc loadVK_NV_optical_flow*() = - vkGetPhysicalDeviceOpticalFlowImageFormatsNV = cast[proc(physicalDevice: VkPhysicalDevice, pOpticalFlowImageFormatInfo: ptr VkOpticalFlowImageFormatInfoNV , pFormatCount: ptr uint32 , pImageFormatProperties: ptr VkOpticalFlowImageFormatPropertiesNV ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceOpticalFlowImageFormatsNV")) - vkCreateOpticalFlowSessionNV = cast[proc(device: VkDevice, pCreateInfo: ptr VkOpticalFlowSessionCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pSession: ptr VkOpticalFlowSessionNV ): VkResult {.stdcall.}](vkGetProc("vkCreateOpticalFlowSessionNV")) - vkDestroyOpticalFlowSessionNV = cast[proc(device: VkDevice, session: VkOpticalFlowSessionNV, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyOpticalFlowSessionNV")) - vkBindOpticalFlowSessionImageNV = cast[proc(device: VkDevice, session: VkOpticalFlowSessionNV, bindingPoint: VkOpticalFlowSessionBindingPointNV, view: VkImageView, layout: VkImageLayout): VkResult {.stdcall.}](vkGetProc("vkBindOpticalFlowSessionImageNV")) - vkCmdOpticalFlowExecuteNV = cast[proc(commandBuffer: VkCommandBuffer, session: VkOpticalFlowSessionNV, pExecuteInfo: ptr VkOpticalFlowExecuteInfoNV ): void {.stdcall.}](vkGetProc("vkCmdOpticalFlowExecuteNV")) + vkGetPhysicalDeviceOpticalFlowImageFormatsNV = cast[proc (physicalDevice: VkPhysicalDevic, pOpticalFlowImageFormatInfo: ptr VkOpticalFlowImageFormatInfoNV, pFormatCount: ptr uint32, pImageFormatProperties: ptr VkOpticalFlowImageFormatPropertiesNV): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceOpticalFlowImageFormatsNV")) + vkCreateOpticalFlowSessionNV = cast[proc (device: VkDevic, pCreateInfo: ptr VkOpticalFlowSessionCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pSession: ptr VkOpticalFlowSessionNV): VkResult {.stdcall.}](vkGetProc("vkCreateOpticalFlowSessionNV")) + vkDestroyOpticalFlowSessionNV = cast[proc (device: VkDevic, session: VkOpticalFlowSessionN, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyOpticalFlowSessionNV")) + vkBindOpticalFlowSessionImageNV = cast[proc (device: VkDevic, session: VkOpticalFlowSessionN, bindingPoint: VkOpticalFlowSessionBindingPointN, view: VkImageVie, layout: VkImageLayou): VkResult {.stdcall.}](vkGetProc("vkBindOpticalFlowSessionImageNV")) + vkCmdOpticalFlowExecuteNV = cast[proc (commandBuffer: VkCommandBuffe, session: VkOpticalFlowSessionN, pExecuteInfo: ptr VkOpticalFlowExecuteInfoNV): void {.stdcall.}](vkGetProc("vkCmdOpticalFlowExecuteNV")) # Load VK_KHR_maintenance5 proc loadVK_KHR_maintenance5*() = - vkCmdBindIndexBuffer2KHR = cast[proc(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize, indexType: VkIndexType): void {.stdcall.}](vkGetProc("vkCmdBindIndexBuffer2KHR")) - vkGetRenderingAreaGranularityKHR = cast[proc(device: VkDevice, pRenderingAreaInfo: ptr VkRenderingAreaInfoKHR , pGranularity: ptr VkExtent2D ): void {.stdcall.}](vkGetProc("vkGetRenderingAreaGranularityKHR")) - vkGetDeviceImageSubresourceLayoutKHR = cast[proc(device: VkDevice, pInfo: ptr VkDeviceImageSubresourceInfoKHR , pLayout: ptr VkSubresourceLayout2KHR ): void {.stdcall.}](vkGetProc("vkGetDeviceImageSubresourceLayoutKHR")) - vkGetImageSubresourceLayout2KHR = cast[proc(device: VkDevice, image: VkImage, pSubresource: ptr VkImageSubresource2KHR , pLayout: ptr VkSubresourceLayout2KHR ): void {.stdcall.}](vkGetProc("vkGetImageSubresourceLayout2KHR")) + vkCmdBindIndexBuffer2KHR = cast[proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, size: VkDeviceSiz, indexType: VkIndexTyp): void {.stdcall.}](vkGetProc("vkCmdBindIndexBuffer2KHR")) + vkGetRenderingAreaGranularityKHR = cast[proc (device: VkDevic, pRenderingAreaInfo: ptr VkRenderingAreaInfoKHR, pGranularity: ptr VkExtent2D): void {.stdcall.}](vkGetProc("vkGetRenderingAreaGranularityKHR")) + vkGetDeviceImageSubresourceLayoutKHR = cast[proc (device: VkDevic, pInfo: ptr VkDeviceImageSubresourceInfoKHR, pLayout: ptr VkSubresourceLayout2KHR): void {.stdcall.}](vkGetProc("vkGetDeviceImageSubresourceLayoutKHR")) + vkGetImageSubresourceLayout2KHR = cast[proc (device: VkDevic, image: VkImag, pSubresource: ptr VkImageSubresource2KHR, pLayout: ptr VkSubresourceLayout2KHR): void {.stdcall.}](vkGetProc("vkGetImageSubresourceLayout2KHR")) # Load VK_EXT_shader_object proc loadVK_EXT_shader_object*() = - vkCreateShadersEXT = cast[proc(device: VkDevice, createInfoCount: uint32, pCreateInfos: ptr VkShaderCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pShaders: ptr VkShaderEXT ): VkResult {.stdcall.}](vkGetProc("vkCreateShadersEXT")) - vkDestroyShaderEXT = cast[proc(device: VkDevice, shader: VkShaderEXT, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroyShaderEXT")) - vkGetShaderBinaryDataEXT = cast[proc(device: VkDevice, shader: VkShaderEXT, pDataSize: ptr uint , pData: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetShaderBinaryDataEXT")) - vkCmdBindShadersEXT = cast[proc(commandBuffer: VkCommandBuffer, stageCount: uint32, pStages: ptr VkShaderStageFlagBits , pShaders: ptr VkShaderEXT ): void {.stdcall.}](vkGetProc("vkCmdBindShadersEXT")) - vkCmdSetVertexInputEXT = cast[proc(commandBuffer: VkCommandBuffer, vertexBindingDescriptionCount: uint32, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription2EXT , vertexAttributeDescriptionCount: uint32, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription2EXT ): void {.stdcall.}](vkGetProc("vkCmdSetVertexInputEXT")) - vkCmdSetPatchControlPointsEXT = cast[proc(commandBuffer: VkCommandBuffer, patchControlPoints: uint32): void {.stdcall.}](vkGetProc("vkCmdSetPatchControlPointsEXT")) - vkCmdSetLogicOpEXT = cast[proc(commandBuffer: VkCommandBuffer, logicOp: VkLogicOp): void {.stdcall.}](vkGetProc("vkCmdSetLogicOpEXT")) - vkCmdSetTessellationDomainOriginEXT = cast[proc(commandBuffer: VkCommandBuffer, domainOrigin: VkTessellationDomainOrigin): void {.stdcall.}](vkGetProc("vkCmdSetTessellationDomainOriginEXT")) - vkCmdSetDepthClampEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, depthClampEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthClampEnableEXT")) - vkCmdSetPolygonModeEXT = cast[proc(commandBuffer: VkCommandBuffer, polygonMode: VkPolygonMode): void {.stdcall.}](vkGetProc("vkCmdSetPolygonModeEXT")) - vkCmdSetRasterizationSamplesEXT = cast[proc(commandBuffer: VkCommandBuffer, rasterizationSamples: VkSampleCountFlagBits): void {.stdcall.}](vkGetProc("vkCmdSetRasterizationSamplesEXT")) - vkCmdSetSampleMaskEXT = cast[proc(commandBuffer: VkCommandBuffer, samples: VkSampleCountFlagBits, pSampleMask: ptr VkSampleMask ): void {.stdcall.}](vkGetProc("vkCmdSetSampleMaskEXT")) - vkCmdSetAlphaToCoverageEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, alphaToCoverageEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetAlphaToCoverageEnableEXT")) - vkCmdSetAlphaToOneEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, alphaToOneEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetAlphaToOneEnableEXT")) - vkCmdSetLogicOpEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, logicOpEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetLogicOpEnableEXT")) - vkCmdSetColorBlendEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEnables: ptr VkBool32 ): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendEnableEXT")) - vkCmdSetColorBlendEquationEXT = cast[proc(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEquations: ptr VkColorBlendEquationEXT ): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendEquationEXT")) - vkCmdSetColorWriteMaskEXT = cast[proc(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorWriteMasks: ptr VkColorComponentFlags ): void {.stdcall.}](vkGetProc("vkCmdSetColorWriteMaskEXT")) - vkCmdSetRasterizationStreamEXT = cast[proc(commandBuffer: VkCommandBuffer, rasterizationStream: uint32): void {.stdcall.}](vkGetProc("vkCmdSetRasterizationStreamEXT")) - vkCmdSetConservativeRasterizationModeEXT = cast[proc(commandBuffer: VkCommandBuffer, conservativeRasterizationMode: VkConservativeRasterizationModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetConservativeRasterizationModeEXT")) - vkCmdSetExtraPrimitiveOverestimationSizeEXT = cast[proc(commandBuffer: VkCommandBuffer, extraPrimitiveOverestimationSize: float32): void {.stdcall.}](vkGetProc("vkCmdSetExtraPrimitiveOverestimationSizeEXT")) - vkCmdSetDepthClipEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, depthClipEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthClipEnableEXT")) - vkCmdSetSampleLocationsEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, sampleLocationsEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetSampleLocationsEnableEXT")) - vkCmdSetColorBlendAdvancedEXT = cast[proc(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendAdvanced: ptr VkColorBlendAdvancedEXT ): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendAdvancedEXT")) - vkCmdSetProvokingVertexModeEXT = cast[proc(commandBuffer: VkCommandBuffer, provokingVertexMode: VkProvokingVertexModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetProvokingVertexModeEXT")) - vkCmdSetLineRasterizationModeEXT = cast[proc(commandBuffer: VkCommandBuffer, lineRasterizationMode: VkLineRasterizationModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetLineRasterizationModeEXT")) - vkCmdSetLineStippleEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, stippledLineEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetLineStippleEnableEXT")) - vkCmdSetDepthClipNegativeOneToOneEXT = cast[proc(commandBuffer: VkCommandBuffer, negativeOneToOne: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthClipNegativeOneToOneEXT")) - vkCmdSetViewportWScalingEnableNV = cast[proc(commandBuffer: VkCommandBuffer, viewportWScalingEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetViewportWScalingEnableNV")) - vkCmdSetViewportSwizzleNV = cast[proc(commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportSwizzles: ptr VkViewportSwizzleNV ): void {.stdcall.}](vkGetProc("vkCmdSetViewportSwizzleNV")) - vkCmdSetCoverageToColorEnableNV = cast[proc(commandBuffer: VkCommandBuffer, coverageToColorEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorEnableNV")) - vkCmdSetCoverageToColorLocationNV = cast[proc(commandBuffer: VkCommandBuffer, coverageToColorLocation: uint32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorLocationNV")) - vkCmdSetCoverageModulationModeNV = cast[proc(commandBuffer: VkCommandBuffer, coverageModulationMode: VkCoverageModulationModeNV): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationModeNV")) - vkCmdSetCoverageModulationTableEnableNV = cast[proc(commandBuffer: VkCommandBuffer, coverageModulationTableEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableEnableNV")) - vkCmdSetCoverageModulationTableNV = cast[proc(commandBuffer: VkCommandBuffer, coverageModulationTableCount: uint32, pCoverageModulationTable: ptr float32 ): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableNV")) - vkCmdSetShadingRateImageEnableNV = cast[proc(commandBuffer: VkCommandBuffer, shadingRateImageEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetShadingRateImageEnableNV")) - vkCmdSetRepresentativeFragmentTestEnableNV = cast[proc(commandBuffer: VkCommandBuffer, representativeFragmentTestEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetRepresentativeFragmentTestEnableNV")) - vkCmdSetCoverageReductionModeNV = cast[proc(commandBuffer: VkCommandBuffer, coverageReductionMode: VkCoverageReductionModeNV): void {.stdcall.}](vkGetProc("vkCmdSetCoverageReductionModeNV")) + vkCreateShadersEXT = cast[proc (device: VkDevic, createInfoCount: uint32_, pCreateInfos: ptr VkShaderCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pShaders: ptr VkShaderEXT): VkResult {.stdcall.}](vkGetProc("vkCreateShadersEXT")) + vkDestroyShaderEXT = cast[proc (device: VkDevic, shader: VkShaderEX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyShaderEXT")) + vkGetShaderBinaryDataEXT = cast[proc (device: VkDevic, shader: VkShaderEX, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetShaderBinaryDataEXT")) + vkCmdBindShadersEXT = cast[proc (commandBuffer: VkCommandBuffe, stageCount: uint32_, pStages: ptr VkShaderStageFlagBits, pShaders: ptr VkShaderEXT): void {.stdcall.}](vkGetProc("vkCmdBindShadersEXT")) + vkCmdSetVertexInputEXT = cast[proc (commandBuffer: VkCommandBuffe, vertexBindingDescriptionCount: uint32_, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription2EXT, vertexAttributeDescriptionCount: uint32_, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription2EXT): void {.stdcall.}](vkGetProc("vkCmdSetVertexInputEXT")) + vkCmdSetPatchControlPointsEXT = cast[proc (commandBuffer: VkCommandBuffe, patchControlPoints: uint32_): void {.stdcall.}](vkGetProc("vkCmdSetPatchControlPointsEXT")) + vkCmdSetLogicOpEXT = cast[proc (commandBuffer: VkCommandBuffe, logicOp: VkLogicO): void {.stdcall.}](vkGetProc("vkCmdSetLogicOpEXT")) + vkCmdSetTessellationDomainOriginEXT = cast[proc (commandBuffer: VkCommandBuffe, domainOrigin: VkTessellationDomainOrigi): void {.stdcall.}](vkGetProc("vkCmdSetTessellationDomainOriginEXT")) + vkCmdSetDepthClampEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, depthClampEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetDepthClampEnableEXT")) + vkCmdSetPolygonModeEXT = cast[proc (commandBuffer: VkCommandBuffe, polygonMode: VkPolygonMod): void {.stdcall.}](vkGetProc("vkCmdSetPolygonModeEXT")) + vkCmdSetRasterizationSamplesEXT = cast[proc (commandBuffer: VkCommandBuffe, rasterizationSamples: VkSampleCountFlagBit): void {.stdcall.}](vkGetProc("vkCmdSetRasterizationSamplesEXT")) + vkCmdSetSampleMaskEXT = cast[proc (commandBuffer: VkCommandBuffe, samples: VkSampleCountFlagBit, pSampleMask: ptr VkSampleMask ): void {.stdcall.}](vkGetProc("vkCmdSetSampleMaskEXT")) + vkCmdSetAlphaToCoverageEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, alphaToCoverageEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetAlphaToCoverageEnableEXT")) + vkCmdSetAlphaToOneEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, alphaToOneEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetAlphaToOneEnableEXT")) + vkCmdSetLogicOpEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, logicOpEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetLogicOpEnableEXT")) + vkCmdSetColorBlendEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, firstAttachment: uint32_, attachmentCount: uint32_, pColorBlendEnables: ptr VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendEnableEXT")) + vkCmdSetColorBlendEquationEXT = cast[proc (commandBuffer: VkCommandBuffe, firstAttachment: uint32_, attachmentCount: uint32_, pColorBlendEquations: ptr VkColorBlendEquationEXT): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendEquationEXT")) + vkCmdSetColorWriteMaskEXT = cast[proc (commandBuffer: VkCommandBuffe, firstAttachment: uint32_, attachmentCount: uint32_, pColorWriteMasks: ptr VkColorComponentFlags): void {.stdcall.}](vkGetProc("vkCmdSetColorWriteMaskEXT")) + vkCmdSetRasterizationStreamEXT = cast[proc (commandBuffer: VkCommandBuffe, rasterizationStream: uint32_): void {.stdcall.}](vkGetProc("vkCmdSetRasterizationStreamEXT")) + vkCmdSetConservativeRasterizationModeEXT = cast[proc (commandBuffer: VkCommandBuffe, conservativeRasterizationMode: VkConservativeRasterizationModeEX): void {.stdcall.}](vkGetProc("vkCmdSetConservativeRasterizationModeEXT")) + vkCmdSetExtraPrimitiveOverestimationSizeEXT = cast[proc (commandBuffer: VkCommandBuffe, extraPrimitiveOverestimationSize: floa): void {.stdcall.}](vkGetProc("vkCmdSetExtraPrimitiveOverestimationSizeEXT")) + vkCmdSetDepthClipEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, depthClipEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetDepthClipEnableEXT")) + vkCmdSetSampleLocationsEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, sampleLocationsEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetSampleLocationsEnableEXT")) + vkCmdSetColorBlendAdvancedEXT = cast[proc (commandBuffer: VkCommandBuffe, firstAttachment: uint32_, attachmentCount: uint32_, pColorBlendAdvanced: ptr VkColorBlendAdvancedEXT): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendAdvancedEXT")) + vkCmdSetProvokingVertexModeEXT = cast[proc (commandBuffer: VkCommandBuffe, provokingVertexMode: VkProvokingVertexModeEX): void {.stdcall.}](vkGetProc("vkCmdSetProvokingVertexModeEXT")) + vkCmdSetLineRasterizationModeEXT = cast[proc (commandBuffer: VkCommandBuffe, lineRasterizationMode: VkLineRasterizationModeEX): void {.stdcall.}](vkGetProc("vkCmdSetLineRasterizationModeEXT")) + vkCmdSetLineStippleEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, stippledLineEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetLineStippleEnableEXT")) + vkCmdSetDepthClipNegativeOneToOneEXT = cast[proc (commandBuffer: VkCommandBuffe, negativeOneToOne: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetDepthClipNegativeOneToOneEXT")) + vkCmdSetViewportWScalingEnableNV = cast[proc (commandBuffer: VkCommandBuffe, viewportWScalingEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetViewportWScalingEnableNV")) + vkCmdSetViewportSwizzleNV = cast[proc (commandBuffer: VkCommandBuffe, firstViewport: uint32_, viewportCount: uint32_, pViewportSwizzles: ptr VkViewportSwizzleNV): void {.stdcall.}](vkGetProc("vkCmdSetViewportSwizzleNV")) + vkCmdSetCoverageToColorEnableNV = cast[proc (commandBuffer: VkCommandBuffe, coverageToColorEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorEnableNV")) + vkCmdSetCoverageToColorLocationNV = cast[proc (commandBuffer: VkCommandBuffe, coverageToColorLocation: uint32_): void {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorLocationNV")) + vkCmdSetCoverageModulationModeNV = cast[proc (commandBuffer: VkCommandBuffe, coverageModulationMode: VkCoverageModulationModeN): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationModeNV")) + vkCmdSetCoverageModulationTableEnableNV = cast[proc (commandBuffer: VkCommandBuffe, coverageModulationTableEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableEnableNV")) + vkCmdSetCoverageModulationTableNV = cast[proc (commandBuffer: VkCommandBuffe, coverageModulationTableCount: uint32_, pCoverageModulationTable: ptr float32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableNV")) + vkCmdSetShadingRateImageEnableNV = cast[proc (commandBuffer: VkCommandBuffe, shadingRateImageEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetShadingRateImageEnableNV")) + vkCmdSetRepresentativeFragmentTestEnableNV = cast[proc (commandBuffer: VkCommandBuffe, representativeFragmentTestEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetRepresentativeFragmentTestEnableNV")) + vkCmdSetCoverageReductionModeNV = cast[proc (commandBuffer: VkCommandBuffe, coverageReductionMode: VkCoverageReductionModeN): void {.stdcall.}](vkGetProc("vkCmdSetCoverageReductionModeNV")) # Load VK_QCOM_tile_properties proc loadVK_QCOM_tile_properties*() = - vkGetFramebufferTilePropertiesQCOM = cast[proc(device: VkDevice, framebuffer: VkFramebuffer, pPropertiesCount: ptr uint32 , pProperties: ptr VkTilePropertiesQCOM ): VkResult {.stdcall.}](vkGetProc("vkGetFramebufferTilePropertiesQCOM")) - vkGetDynamicRenderingTilePropertiesQCOM = cast[proc(device: VkDevice, pRenderingInfo: ptr VkRenderingInfo , pProperties: ptr VkTilePropertiesQCOM ): VkResult {.stdcall.}](vkGetProc("vkGetDynamicRenderingTilePropertiesQCOM")) + vkGetFramebufferTilePropertiesQCOM = cast[proc (device: VkDevic, framebuffer: VkFramebuffe, pPropertiesCount: ptr uint32, pProperties: ptr VkTilePropertiesQCOM): VkResult {.stdcall.}](vkGetProc("vkGetFramebufferTilePropertiesQCOM")) + vkGetDynamicRenderingTilePropertiesQCOM = cast[proc (device: VkDevic, pRenderingInfo: ptr VkRenderingInfo, pProperties: ptr VkTilePropertiesQCOM): VkResult {.stdcall.}](vkGetProc("vkGetDynamicRenderingTilePropertiesQCOM")) # Load VK_NV_external_sci_sync2 proc loadVK_NV_external_sci_sync2*() = - vkCreateSemaphoreSciSyncPoolNV = cast[proc(device: VkDevice, pCreateInfo: ptr VkSemaphoreSciSyncPoolCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pSemaphorePool: ptr VkSemaphoreSciSyncPoolNV ): VkResult {.stdcall.}](vkGetProc("vkCreateSemaphoreSciSyncPoolNV")) - vkDestroySemaphoreSciSyncPoolNV = cast[proc(device: VkDevice, semaphorePool: VkSemaphoreSciSyncPoolNV, pAllocator: ptr VkAllocationCallbacks ): void {.stdcall.}](vkGetProc("vkDestroySemaphoreSciSyncPoolNV")) - vkGetFenceSciSyncFenceNV = cast[proc(device: VkDevice, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV , pHandle: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetFenceSciSyncFenceNV")) - vkGetFenceSciSyncObjNV = cast[proc(device: VkDevice, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV , pHandle: pointer ): VkResult {.stdcall.}](vkGetProc("vkGetFenceSciSyncObjNV")) - vkImportFenceSciSyncFenceNV = cast[proc(device: VkDevice, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV ): VkResult {.stdcall.}](vkGetProc("vkImportFenceSciSyncFenceNV")) - vkImportFenceSciSyncObjNV = cast[proc(device: VkDevice, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV ): VkResult {.stdcall.}](vkGetProc("vkImportFenceSciSyncObjNV")) - vkGetPhysicalDeviceSciSyncAttributesNV = cast[proc(physicalDevice: VkPhysicalDevice, pSciSyncAttributesInfo: ptr VkSciSyncAttributesInfoNV , pAttributes: NvSciSyncAttrList): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSciSyncAttributesNV")) + vkCreateSemaphoreSciSyncPoolNV = cast[proc (device: VkDevic, pCreateInfo: ptr VkSemaphoreSciSyncPoolCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pSemaphorePool: ptr VkSemaphoreSciSyncPoolNV): VkResult {.stdcall.}](vkGetProc("vkCreateSemaphoreSciSyncPoolNV")) + vkDestroySemaphoreSciSyncPoolNV = cast[proc (device: VkDevic, semaphorePool: VkSemaphoreSciSyncPoolN, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySemaphoreSciSyncPoolNV")) + vkGetFenceSciSyncFenceNV = cast[proc (device: VkDevic, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV, pHandle: pointer): VkResult {.stdcall.}](vkGetProc("vkGetFenceSciSyncFenceNV")) + vkGetFenceSciSyncObjNV = cast[proc (device: VkDevic, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV, pHandle: pointer): VkResult {.stdcall.}](vkGetProc("vkGetFenceSciSyncObjNV")) + vkImportFenceSciSyncFenceNV = cast[proc (device: VkDevic, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV): VkResult {.stdcall.}](vkGetProc("vkImportFenceSciSyncFenceNV")) + vkImportFenceSciSyncObjNV = cast[proc (device: VkDevic, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV): VkResult {.stdcall.}](vkGetProc("vkImportFenceSciSyncObjNV")) + vkGetPhysicalDeviceSciSyncAttributesNV = cast[proc (physicalDevice: VkPhysicalDevic, pSciSyncAttributesInfo: ptr VkSciSyncAttributesInfoNV, pAttributes: NvSciSyncAttrLis): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSciSyncAttributesNV")) # Load VK_NV_low_latency2 proc loadVK_NV_low_latency2*() = - vkSetLatencySleepModeNV = cast[proc(device: VkDevice, swapchain: VkSwapchainKHR, pSleepModeInfo: ptr VkLatencySleepModeInfoNV ): VkResult {.stdcall.}](vkGetProc("vkSetLatencySleepModeNV")) - vkLatencySleepNV = cast[proc(device: VkDevice, swapchain: VkSwapchainKHR, pSleepInfo: ptr VkLatencySleepInfoNV ): VkResult {.stdcall.}](vkGetProc("vkLatencySleepNV")) - vkSetLatencyMarkerNV = cast[proc(device: VkDevice, swapchain: VkSwapchainKHR, pLatencyMarkerInfo: ptr VkSetLatencyMarkerInfoNV ): void {.stdcall.}](vkGetProc("vkSetLatencyMarkerNV")) - vkGetLatencyTimingsNV = cast[proc(device: VkDevice, swapchain: VkSwapchainKHR, pLatencyMarkerInfo: ptr VkGetLatencyMarkerInfoNV ): void {.stdcall.}](vkGetProc("vkGetLatencyTimingsNV")) - vkQueueNotifyOutOfBandNV = cast[proc(queue: VkQueue, pQueueTypeInfo: ptr VkOutOfBandQueueTypeInfoNV ): void {.stdcall.}](vkGetProc("vkQueueNotifyOutOfBandNV")) + vkSetLatencySleepModeNV = cast[proc (device: VkDevic, swapchain: VkSwapchainKH, pSleepModeInfo: ptr VkLatencySleepModeInfoNV): VkResult {.stdcall.}](vkGetProc("vkSetLatencySleepModeNV")) + vkLatencySleepNV = cast[proc (device: VkDevic, swapchain: VkSwapchainKH, pSleepInfo: ptr VkLatencySleepInfoNV): VkResult {.stdcall.}](vkGetProc("vkLatencySleepNV")) + vkSetLatencyMarkerNV = cast[proc (device: VkDevic, swapchain: VkSwapchainKH, pLatencyMarkerInfo: ptr VkSetLatencyMarkerInfoNV): void {.stdcall.}](vkGetProc("vkSetLatencyMarkerNV")) + vkGetLatencyTimingsNV = cast[proc (device: VkDevic, swapchain: VkSwapchainKH, pLatencyMarkerInfo: ptr VkGetLatencyMarkerInfoNV): void {.stdcall.}](vkGetProc("vkGetLatencyTimingsNV")) + vkQueueNotifyOutOfBandNV = cast[proc (queue: VkQueu, pQueueTypeInfo: ptr VkOutOfBandQueueTypeInfoNV): void {.stdcall.}](vkGetProc("vkQueueNotifyOutOfBandNV")) # Load VK_KHR_cooperative_matrix proc loadVK_KHR_cooperative_matrix*() = - vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR = cast[proc(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkCooperativeMatrixPropertiesKHR ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR")) + vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR = cast[proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkCooperativeMatrixPropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR")) # Load VK_EXT_attachment_feedback_loop_dynamic_state proc loadVK_EXT_attachment_feedback_loop_dynamic_state*() = - vkCmdSetAttachmentFeedbackLoopEnableEXT = cast[proc(commandBuffer: VkCommandBuffer, aspectMask: VkImageAspectFlags): void {.stdcall.}](vkGetProc("vkCmdSetAttachmentFeedbackLoopEnableEXT")) + vkCmdSetAttachmentFeedbackLoopEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, aspectMask: VkImageAspectFlag): void {.stdcall.}](vkGetProc("vkCmdSetAttachmentFeedbackLoopEnableEXT")) # Load VK_QNX_external_memory_screen_buffer proc loadVK_QNX_external_memory_screen_buffer*() = - vkGetScreenBufferPropertiesQNX = cast[proc(device: VkDevice, buffer: ptr screen_buffer , pProperties: ptr VkScreenBufferPropertiesQNX ): VkResult {.stdcall.}](vkGetProc("vkGetScreenBufferPropertiesQNX")) + vkGetScreenBufferPropertiesQNX = cast[proc (device: VkDevic, buffer: ptr screen_buffer, pProperties: ptr VkScreenBufferPropertiesQNX): VkResult {.stdcall.}](vkGetProc("vkGetScreenBufferPropertiesQNX")) # Load VK_KHR_line_rasterization proc loadVK_KHR_line_rasterization*() = - vkCmdSetLineStippleKHR = cast[proc(commandBuffer: VkCommandBuffer, lineStippleFactor: uint32, lineStipplePattern: uint16): void {.stdcall.}](vkGetProc("vkCmdSetLineStippleKHR")) + vkCmdSetLineStippleKHR = cast[proc (commandBuffer: VkCommandBuffe, lineStippleFactor: uint32_, lineStipplePattern: uint16_): void {.stdcall.}](vkGetProc("vkCmdSetLineStippleKHR")) # Load VK_KHR_calibrated_timestamps proc loadVK_KHR_calibrated_timestamps*() = - vkGetPhysicalDeviceCalibrateableTimeDomainsKHR = cast[proc(physicalDevice: VkPhysicalDevice, pTimeDomainCount: ptr uint32 , pTimeDomains: ptr VkTimeDomainKHR ): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceCalibrateableTimeDomainsKHR")) - vkGetCalibratedTimestampsKHR = cast[proc(device: VkDevice, timestampCount: uint32, pTimestampInfos: ptr VkCalibratedTimestampInfoKHR , pTimestamps: ptr uint64 , pMaxDeviation: ptr uint64 ): VkResult {.stdcall.}](vkGetProc("vkGetCalibratedTimestampsKHR")) + vkGetPhysicalDeviceCalibrateableTimeDomainsKHR = cast[proc (physicalDevice: VkPhysicalDevic, pTimeDomainCount: ptr uint32, pTimeDomains: ptr VkTimeDomainKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceCalibrateableTimeDomainsKHR")) + vkGetCalibratedTimestampsKHR = cast[proc (device: VkDevic, timestampCount: uint32_, pTimestampInfos: ptr VkCalibratedTimestampInfoKHR, pTimestamps: ptr uint64, pMaxDeviation: ptr uint64): VkResult {.stdcall.}](vkGetProc("vkGetCalibratedTimestampsKHR")) # Load VK_KHR_maintenance6 proc loadVK_KHR_maintenance6*() = - vkCmdBindDescriptorSets2KHR = cast[proc(commandBuffer: VkCommandBuffer, pBindDescriptorSetsInfo: ptr VkBindDescriptorSetsInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorSets2KHR")) - vkCmdPushConstants2KHR = cast[proc(commandBuffer: VkCommandBuffer, pPushConstantsInfo: ptr VkPushConstantsInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdPushConstants2KHR")) - vkCmdPushDescriptorSet2KHR = cast[proc(commandBuffer: VkCommandBuffer, pPushDescriptorSetInfo: ptr VkPushDescriptorSetInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSet2KHR")) - vkCmdPushDescriptorSetWithTemplate2KHR = cast[proc(commandBuffer: VkCommandBuffer, pPushDescriptorSetWithTemplateInfo: ptr VkPushDescriptorSetWithTemplateInfoKHR ): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplate2KHR")) - vkCmdSetDescriptorBufferOffsets2EXT = cast[proc(commandBuffer: VkCommandBuffer, pSetDescriptorBufferOffsetsInfo: ptr VkSetDescriptorBufferOffsetsInfoEXT ): void {.stdcall.}](vkGetProc("vkCmdSetDescriptorBufferOffsets2EXT")) - vkCmdBindDescriptorBufferEmbeddedSamplers2EXT = cast[proc(commandBuffer: VkCommandBuffer, pBindDescriptorBufferEmbeddedSamplersInfo: ptr VkBindDescriptorBufferEmbeddedSamplersInfoEXT ): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorBufferEmbeddedSamplers2EXT")) + vkCmdBindDescriptorSets2KHR = cast[proc (commandBuffer: VkCommandBuffe, pBindDescriptorSetsInfo: ptr VkBindDescriptorSetsInfoKHR): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorSets2KHR")) + vkCmdPushConstants2KHR = cast[proc (commandBuffer: VkCommandBuffe, pPushConstantsInfo: ptr VkPushConstantsInfoKHR): void {.stdcall.}](vkGetProc("vkCmdPushConstants2KHR")) + vkCmdPushDescriptorSet2KHR = cast[proc (commandBuffer: VkCommandBuffe, pPushDescriptorSetInfo: ptr VkPushDescriptorSetInfoKHR): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSet2KHR")) + vkCmdPushDescriptorSetWithTemplate2KHR = cast[proc (commandBuffer: VkCommandBuffe, pPushDescriptorSetWithTemplateInfo: ptr VkPushDescriptorSetWithTemplateInfoKHR): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplate2KHR")) + vkCmdSetDescriptorBufferOffsets2EXT = cast[proc (commandBuffer: VkCommandBuffe, pSetDescriptorBufferOffsetsInfo: ptr VkSetDescriptorBufferOffsetsInfoEXT): void {.stdcall.}](vkGetProc("vkCmdSetDescriptorBufferOffsets2EXT")) + vkCmdBindDescriptorBufferEmbeddedSamplers2EXT = cast[proc (commandBuffer: VkCommandBuffe, pBindDescriptorBufferEmbeddedSamplersInfo: ptr VkBindDescriptorBufferEmbeddedSamplersInfoEXT): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorBufferEmbeddedSamplers2EXT")) var - vkCreateInstance*: proc(pCreateInfo: ptr VkInstanceCreateInfo , pAllocator: ptr VkAllocationCallbacks , pInstance: ptr VkInstance ): VkResult {.stdcall.} - vkEnumerateInstanceExtensionProperties*: proc(pLayerName: cstring , pPropertyCount: ptr uint32 , pProperties: ptr VkExtensionProperties ): VkResult {.stdcall.} - vkEnumerateInstanceLayerProperties*: proc(pPropertyCount: ptr uint32 , pProperties: ptr VkLayerProperties ): VkResult {.stdcall.} - vkEnumerateInstanceVersion*: proc(pApiVersion: ptr uint32 ): VkResult {.stdcall.} + vkCreateInstance*: proc (pCreateInfo: ptr VkInstanceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pInstance: ptr VkInstance): VkResult {.stdcall.} + vkEnumerateInstanceExtensionProperties*: proc (pLayerName: cstring, pPropertyCount: ptr uint32, pProperties: ptr VkExtensionProperties): VkResult {.stdcall.} + vkEnumerateInstanceLayerProperties*: proc (pPropertyCount: ptr uint32, pProperties: ptr VkLayerProperties): VkResult {.stdcall.} + vkEnumerateInstanceVersion*: proc (pApiVersion: ptr uint32): VkResult {.stdcall.} proc vkPreload*(load1_1: bool = true) = - vkGetInstanceProcAddr = cast[proc(instance: VkInstance, pName: cstring ): PFN_vkVoidFunction {.stdcall.}](symAddr(vkHandleDLL, "vkGetInstanceProcAddr")) + vkGetInstanceProcAddr = cast[proc (instance: VkInstance, pName: cstring): PFN_vkVoidFunction {.stdcall.}](symAddr(vkHandleDLL, "vkGetInstanceProcAddr")) - vkCreateInstance = cast[proc(pCreateInfo: ptr VkInstanceCreateInfo , pAllocator: ptr VkAllocationCallbacks , pInstance: ptr VkInstance ): VkResult {.stdcall.}](vkGetProc("vkCreateInstance")) - vkEnumerateInstanceExtensionProperties = cast[proc(pLayerName: cstring , pPropertyCount: ptr uint32 , pProperties: ptr VkExtensionProperties ): VkResult {.stdcall.}](vkGetProc("vkEnumerateInstanceExtensionProperties")) - vkEnumerateInstanceLayerProperties = cast[proc(pPropertyCount: ptr uint32 , pProperties: ptr VkLayerProperties ): VkResult {.stdcall.}](vkGetProc("vkEnumerateInstanceLayerProperties")) + vkCreateInstance = cast[proc (pCreateInfo: ptr VkInstanceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pInstance: ptr VkInstance): VkResult {.stdcall.}](vkGetProc("vkCreateInstance")) + vkEnumerateInstanceExtensionProperties = cast[proc (pLayerName: cstring, pPropertyCount: ptr uint32, pProperties: ptr VkExtensionProperties): VkResult {.stdcall.}](vkGetProc("vkEnumerateInstanceExtensionProperties")) + vkEnumerateInstanceLayerProperties = cast[proc (pPropertyCount: ptr uint32, pProperties: ptr VkLayerProperties): VkResult {.stdcall.}](vkGetProc("vkEnumerateInstanceLayerProperties")) if load1_1: - vkEnumerateInstanceVersion = cast[proc(pApiVersion: ptr uint32 ): VkResult {.stdcall.}](vkGetProc("vkEnumerateInstanceVersion")) + vkEnumerateInstanceVersion = cast[proc (pApiVersion: ptr uint32): VkResult {.stdcall.}](vkGetProc("vkEnumerateInstanceVersion")) proc vkInit*(instance: VkInstance, load1_0: bool = true, load1_1: bool = true): bool = currInst = cast[pointer](instance) diff --git a/tools/generator.nim b/tools/generator.nim index 9b86e1d..e605aef 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -34,9 +34,7 @@ proc translateType(s: string): string = result = result.replace("unsigned ", "u") result = result.replace("signed ", "") result = result.replace("struct ", "") - result = result.replace("_screen_context", "screen_context") - result = result.replace("_screen_window", "screen_window") - result = result.replace("_screen_buffer", "screen_buffer") + if result.startsWith('_'): result = result.substr(1) if result.contains('*'): let levels = result.count('*') @@ -66,9 +64,7 @@ proc genTypes(node: XmlNode, output: var string) = output.add("\ntype\n") inType = true var name = t.attr("name") - name = name.replace("_screen_context", "screen_context") - name = name.replace("_screen_window", "screen_window") - name = name.replace("_screen_buffer", "screen_buffer") + if name.startsWith('_'): name = name.substr(1) output.add(" {name}* {{.header: \"{t.attr(\"requires\")}\".}} = ptr object\n".fmt) # Define category @@ -174,27 +170,27 @@ proc genTypes(node: XmlNode, output: var string) = if t.attr("category") == "funcpointer": let name = t.child("name").innerText if name == "PFN_vkInternalAllocationNotification": - output.add(" PFN_vkInternalAllocationNotification* = proc(pUserData: pointer; size: csize; allocationType: VkInternalAllocationType; allocationScope: VkSystemAllocationScope) {.cdecl.}\n") + output.add(" PFN_vkInternalAllocationNotification* = proc (pUserData: pointer; size: csize; allocationType: VkInternalAllocationType; allocationScope: VkSystemAllocationScope) {.cdecl.}\n") elif name == "PFN_vkInternalFreeNotification": - output.add(" PFN_vkInternalFreeNotification* = proc(pUserData: pointer; size: csize; allocationType: VkInternalAllocationType; allocationScope: VkSystemAllocationScope) {.cdecl.}\n") + output.add(" PFN_vkInternalFreeNotification* = proc (pUserData: pointer; size: csize; allocationType: VkInternalAllocationType; allocationScope: VkSystemAllocationScope) {.cdecl.}\n") elif name == "PFN_vkReallocationFunction": - output.add(" PFN_vkReallocationFunction* = proc(pUserData: pointer; pOriginal: pointer; size: csize; alignment: csize; allocationScope: VkSystemAllocationScope): pointer {.cdecl.}\n") + output.add(" PFN_vkReallocationFunction* = proc (pUserData: pointer; pOriginal: pointer; size: csize; alignment: csize; allocationScope: VkSystemAllocationScope): pointer {.cdecl.}\n") elif name == "PFN_vkAllocationFunction": - output.add(" PFN_vkAllocationFunction* = proc(pUserData: pointer; size: csize; alignment: csize; allocationScope: VkSystemAllocationScope): pointer {.cdecl.}\n") + output.add(" PFN_vkAllocationFunction* = proc (pUserData: pointer; size: csize; alignment: csize; allocationScope: VkSystemAllocationScope): pointer {.cdecl.}\n") elif name == "PFN_vkFreeFunction": - output.add(" PFN_vkFreeFunction* = proc(pUserData: pointer; pMemory: pointer) {.cdecl.}\n") + output.add(" PFN_vkFreeFunction* = proc (pUserData: pointer; pMemory: pointer) {.cdecl.}\n") elif name == "PFN_vkVoidFunction": - output.add(" PFN_vkVoidFunction* = proc() {.cdecl.}\n") + output.add(" PFN_vkVoidFunction* = proc () {.cdecl.}\n") elif name == "PFN_vkFaultCallbackFunction": - output.add(" PFN_vkFaultCallbackFunction* = proc(unrecordedFaults: VkBool32; faultCount: uint32; pFaults: ptr VkFaultData) {.cdecl.}\n") + output.add(" PFN_vkFaultCallbackFunction* = proc (unrecordedFaults: VkBool32; faultCount: uint32; pFaults: ptr VkFaultData) {.cdecl.}\n") elif name == "PFN_vkDeviceMemoryReportCallbackEXT": - output.add(" PFN_vkDeviceMemoryReportCallbackEXT* = proc(pCallbackData: ptr VkDeviceMemoryReportCallbackDataEXT; pUserData: pointer) {.cdecl.}\n") + output.add(" PFN_vkDeviceMemoryReportCallbackEXT* = proc (pCallbackData: ptr VkDeviceMemoryReportCallbackDataEXT; pUserData: pointer) {.cdecl.}\n") elif name == "PFN_vkGetInstanceProcAddrLUNARG": - output.add(" PFN_vkGetInstanceProcAddrLUNARG* = proc(instance: VkInstance; pName: cstring): PFN_vkVoidFunction {.cdecl.}\n") + output.add(" PFN_vkGetInstanceProcAddrLUNARG* = proc (instance: VkInstance; pName: cstring): PFN_vkVoidFunction {.cdecl.}\n") elif name == "PFN_vkDebugReportCallbackEXT": - output.add(" PFN_vkDebugReportCallbackEXT* = proc(flags: VkDebugReportFlagsEXT; objectType: VkDebugReportObjectTypeEXT; cbObject: uint64; location: csize; messageCode: int32; pLayerPrefix: cstring; pMessage: cstring; pUserData: pointer): VkBool32 {.cdecl.}\n") + output.add(" PFN_vkDebugReportCallbackEXT* = proc (flags: VkDebugReportFlagsEXT; objectType: VkDebugReportObjectTypeEXT; cbObject: uint64; location: csize; messageCode: int32; pLayerPrefix: cstring; pMessage: cstring; pUserData: pointer): VkBool32 {.cdecl.}\n") elif name == "PFN_vkDebugUtilsMessengerCallbackEXT": - output.add(" PFN_vkDebugUtilsMessengerCallbackEXT* = proc(messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEXT, messageTypes: VkDebugUtilsMessageTypeFlagsEXT, pCallbackData: VkDebugUtilsMessengerCallbackDataEXT, userData: pointer): VkBool32 {.cdecl.}\n") + output.add(" PFN_vkDebugUtilsMessengerCallbackEXT* = proc (messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEXT, messageTypes: VkDebugUtilsMessageTypeFlagsEXT, pCallbackData: VkDebugUtilsMessengerCallbackDataEXT, userData: pointer): VkBool32 {.cdecl.}\n") else: echo "category:funcpointer not found {name}".fmt continue @@ -401,10 +397,10 @@ proc genProcs(node: XmlNode, output: var string) = let openBracket = vkArg.argType.find('[') let arraySize = vkArg.argType[openBracket + 1 ..< vkArg.argType.find(']')] var typeName = vkArg.argType[0.. Date: Mon, 29 Apr 2024 01:16:44 +0300 Subject: [PATCH 06/57] use multireplace when applicable. Faster --- tools/generator.nim | 63 ++++++++++++++++++++++++++------------------- 1 file changed, 36 insertions(+), 27 deletions(-) diff --git a/tools/generator.nim b/tools/generator.nim index e605aef..38842b2 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -20,21 +20,24 @@ var vkStructureTypes: seq[string] proc translateType(s: string): string = result = s - result = result.replace("int64_t", "int64") - result = result.replace("int32_t", "int32") - result = result.replace("int16_t", "int16") - result = result.replace("int8_t", "int8") - result = result.replace("size_t", "uint") # uint matches pointer size just like size_t - result = result.replace("float", "float32") - result = result.replace("double", "float64") - result = result.replace("VK_DEFINE_HANDLE", "VkHandle") - result = result.replace("VK_DEFINE_NON_DISPATCHABLE_HANDLE", "VkNonDispatchableHandle") - result = result.replace("const ", "") - result = result.replace(" const", "") - result = result.replace("unsigned ", "u") - result = result.replace("signed ", "") - result = result.replace("struct ", "") - if result.startsWith('_'): result = result.substr(1) + result = result.multiReplace([ + ("int64_t", "int64"), + ("int32_t", "int32"), + ("int16_t", "int16"), + ("int8_t", "int8"), + ("size_t", "uint"), # uint matches pointer size just like size_t + ("float", "float32"), + ("double", "float64"), + ("VK_DEFINE_HANDLE", "VkHandle"), + ("VK_DEFINE_NON_DISPATCHABLE_HANDLE", "VkNonDispatchableHandle"), + ("const ", ""), + (" const", ""), + ("unsigned ", "u"), + ("signed ", ""), + ("struct ", ""), + ]) + if result.startsWith('_'): + result = result.substr(1) if result.contains('*'): let levels = result.count('*') @@ -42,9 +45,11 @@ proc translateType(s: string): string = for i in 0.. Date: Mon, 29 Apr 2024 01:28:56 +0300 Subject: [PATCH 07/57] lol fix mistake --- src/vulkan.nim | 2606 +++++++++++++++++++++---------------------- tools/generator.nim | 8 +- 2 files changed, 1307 insertions(+), 1307 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 545af2f..85f83e7 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -18141,1705 +18141,1705 @@ proc newVkPhysicalDeviceRawAccessChainsFeaturesNV*(sType: VkStructureType, pNext # Procs var - vkDestroyInstance*: proc (instance: VkInstanc, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkEnumeratePhysicalDevices*: proc (instance: VkInstanc, pPhysicalDeviceCount: ptr uint32, pPhysicalDevices: ptr VkPhysicalDevice): VkResult {.stdcall.} - vkGetDeviceProcAddr*: proc (device: VkDevic, pName: cstring): PFN_vkVoidFunction {.stdcall.} - vkGetInstanceProcAddr*: proc (instance: VkInstanc, pName: cstring): PFN_vkVoidFunction {.stdcall.} - vkGetPhysicalDeviceProperties*: proc (physicalDevice: VkPhysicalDevic, pProperties: ptr VkPhysicalDeviceProperties): void {.stdcall.} - vkGetPhysicalDeviceQueueFamilyProperties*: proc (physicalDevice: VkPhysicalDevic, pQueueFamilyPropertyCount: ptr uint32, pQueueFamilyProperties: ptr VkQueueFamilyProperties): void {.stdcall.} - vkGetPhysicalDeviceMemoryProperties*: proc (physicalDevice: VkPhysicalDevic, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties): void {.stdcall.} - vkGetPhysicalDeviceFeatures*: proc (physicalDevice: VkPhysicalDevic, pFeatures: ptr VkPhysicalDeviceFeatures): void {.stdcall.} - vkGetPhysicalDeviceFormatProperties*: proc (physicalDevice: VkPhysicalDevic, format: VkForma, pFormatProperties: ptr VkFormatProperties): void {.stdcall.} - vkGetPhysicalDeviceImageFormatProperties*: proc (physicalDevice: VkPhysicalDevic, format: VkForma, `type`: VkImageTyp, tiling: VkImageTilin, usage: VkImageUsageFlag, flags: VkImageCreateFlag, pImageFormatProperties: ptr VkImageFormatProperties): VkResult {.stdcall.} - vkCreateDevice*: proc (physicalDevice: VkPhysicalDevic, pCreateInfo: ptr VkDeviceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDevice: ptr VkDevice): VkResult {.stdcall.} - vkCreateDevice*: proc (physicalDevice: VkPhysicalDevic, pCreateInfo: ptr VkDeviceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDevice: ptr VkDevice): VkResult {.stdcall.} - vkDestroyDevice*: proc (device: VkDevic, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkEnumerateDeviceLayerProperties*: proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkLayerProperties): VkResult {.stdcall.} - vkEnumerateDeviceLayerProperties*: proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkLayerProperties): VkResult {.stdcall.} - vkEnumerateDeviceExtensionProperties*: proc (physicalDevice: VkPhysicalDevic, pLayerName: cstring, pPropertyCount: ptr uint32, pProperties: ptr VkExtensionProperties): VkResult {.stdcall.} - vkGetDeviceQueue*: proc (device: VkDevic, queueFamilyIndex: uint32_, queueIndex: uint32_, pQueue: ptr VkQueue): void {.stdcall.} - vkQueueSubmit*: proc (queue: VkQueu, submitCount: uint32_, pSubmits: ptr VkSubmitInfo, fence: VkFenc): VkResult {.stdcall.} - vkQueueWaitIdle*: proc (queue: VkQueu): VkResult {.stdcall.} - vkDeviceWaitIdle*: proc (device: VkDevic): VkResult {.stdcall.} - vkAllocateMemory*: proc (device: VkDevic, pAllocateInfo: ptr VkMemoryAllocateInfo, pAllocator: ptr VkAllocationCallbacks, pMemory: ptr VkDeviceMemory): VkResult {.stdcall.} - vkFreeMemory*: proc (device: VkDevic, memory: VkDeviceMemor, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkMapMemory*: proc (device: VkDevic, memory: VkDeviceMemor, offset: VkDeviceSiz, size: VkDeviceSiz, flags: VkMemoryMapFlag, ppData: ptr pointer): VkResult {.stdcall.} - vkUnmapMemory*: proc (device: VkDevic, memory: VkDeviceMemor): void {.stdcall.} - vkFlushMappedMemoryRanges*: proc (device: VkDevic, memoryRangeCount: uint32_, pMemoryRanges: ptr VkMappedMemoryRange): VkResult {.stdcall.} - vkInvalidateMappedMemoryRanges*: proc (device: VkDevic, memoryRangeCount: uint32_, pMemoryRanges: ptr VkMappedMemoryRange): VkResult {.stdcall.} - vkGetDeviceMemoryCommitment*: proc (device: VkDevic, memory: VkDeviceMemor, pCommittedMemoryInBytes: ptr VkDeviceSize): void {.stdcall.} - vkGetBufferMemoryRequirements*: proc (device: VkDevic, buffer: VkBuffe, pMemoryRequirements: ptr VkMemoryRequirements): void {.stdcall.} - vkBindBufferMemory*: proc (device: VkDevic, buffer: VkBuffe, memory: VkDeviceMemor, memoryOffset: VkDeviceSiz): VkResult {.stdcall.} - vkGetImageMemoryRequirements*: proc (device: VkDevic, image: VkImag, pMemoryRequirements: ptr VkMemoryRequirements): void {.stdcall.} - vkBindImageMemory*: proc (device: VkDevic, image: VkImag, memory: VkDeviceMemor, memoryOffset: VkDeviceSiz): VkResult {.stdcall.} - vkGetImageSparseMemoryRequirements*: proc (device: VkDevic, image: VkImag, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements): void {.stdcall.} - vkGetPhysicalDeviceSparseImageFormatProperties*: proc (physicalDevice: VkPhysicalDevic, format: VkForma, `type`: VkImageTyp, samples: VkSampleCountFlagBit, usage: VkImageUsageFlag, tiling: VkImageTilin, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties): void {.stdcall.} - vkQueueBindSparse*: proc (queue: VkQueu, bindInfoCount: uint32_, pBindInfo: ptr VkBindSparseInfo, fence: VkFenc): VkResult {.stdcall.} - vkCreateFence*: proc (device: VkDevic, pCreateInfo: ptr VkFenceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pFence: ptr VkFence): VkResult {.stdcall.} - vkDestroyFence*: proc (device: VkDevic, fence: VkFenc, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkResetFences*: proc (device: VkDevic, fenceCount: uint32_, pFences: ptr VkFence): VkResult {.stdcall.} - vkGetFenceStatus*: proc (device: VkDevic, fence: VkFenc): VkResult {.stdcall.} - vkWaitForFences*: proc (device: VkDevic, fenceCount: uint32_, pFences: ptr VkFence, waitAll: VkBool3, timeout: uint64_): VkResult {.stdcall.} - vkCreateSemaphore*: proc (device: VkDevic, pCreateInfo: ptr VkSemaphoreCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSemaphore: ptr VkSemaphore): VkResult {.stdcall.} - vkDestroySemaphore*: proc (device: VkDevic, semaphore: VkSemaphor, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkCreateEvent*: proc (device: VkDevic, pCreateInfo: ptr VkEventCreateInfo, pAllocator: ptr VkAllocationCallbacks, pEvent: ptr VkEvent): VkResult {.stdcall.} - vkDestroyEvent*: proc (device: VkDevic, event: VkEven, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkGetEventStatus*: proc (device: VkDevic, event: VkEven): VkResult {.stdcall.} - vkSetEvent*: proc (device: VkDevic, event: VkEven): VkResult {.stdcall.} - vkResetEvent*: proc (device: VkDevic, event: VkEven): VkResult {.stdcall.} - vkCreateQueryPool*: proc (device: VkDevic, pCreateInfo: ptr VkQueryPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pQueryPool: ptr VkQueryPool): VkResult {.stdcall.} - vkDestroyQueryPool*: proc (device: VkDevic, queryPool: VkQueryPoo, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkGetQueryPoolResults*: proc (device: VkDevic, queryPool: VkQueryPoo, firstQuery: uint32_, queryCount: uint32_, dataSize: size_, pData: pointer, stride: VkDeviceSiz, flags: VkQueryResultFlag): VkResult {.stdcall.} - vkResetQueryPool*: proc (device: VkDevic, queryPool: VkQueryPoo, firstQuery: uint32_, queryCount: uint32_): void {.stdcall.} - vkCreateBuffer*: proc (device: VkDevic, pCreateInfo: ptr VkBufferCreateInfo, pAllocator: ptr VkAllocationCallbacks, pBuffer: ptr VkBuffer): VkResult {.stdcall.} - vkDestroyBuffer*: proc (device: VkDevic, buffer: VkBuffe, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkCreateBufferView*: proc (device: VkDevic, pCreateInfo: ptr VkBufferViewCreateInfo, pAllocator: ptr VkAllocationCallbacks, pView: ptr VkBufferView): VkResult {.stdcall.} - vkDestroyBufferView*: proc (device: VkDevic, bufferView: VkBufferVie, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkCreateImage*: proc (device: VkDevic, pCreateInfo: ptr VkImageCreateInfo, pAllocator: ptr VkAllocationCallbacks, pImage: ptr VkImage): VkResult {.stdcall.} - vkDestroyImage*: proc (device: VkDevic, image: VkImag, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkGetImageSubresourceLayout*: proc (device: VkDevic, image: VkImag, pSubresource: ptr VkImageSubresource, pLayout: ptr VkSubresourceLayout): void {.stdcall.} - vkCreateImageView*: proc (device: VkDevic, pCreateInfo: ptr VkImageViewCreateInfo, pAllocator: ptr VkAllocationCallbacks, pView: ptr VkImageView): VkResult {.stdcall.} - vkDestroyImageView*: proc (device: VkDevic, imageView: VkImageVie, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkCreateShaderModule*: proc (device: VkDevic, pCreateInfo: ptr VkShaderModuleCreateInfo, pAllocator: ptr VkAllocationCallbacks, pShaderModule: ptr VkShaderModule): VkResult {.stdcall.} - vkDestroyShaderModule*: proc (device: VkDevic, shaderModule: VkShaderModul, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkCreatePipelineCache*: proc (device: VkDevic, pCreateInfo: ptr VkPipelineCacheCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineCache: ptr VkPipelineCache): VkResult {.stdcall.} - vkCreatePipelineCache*: proc (device: VkDevic, pCreateInfo: ptr VkPipelineCacheCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineCache: ptr VkPipelineCache): VkResult {.stdcall.} - vkDestroyPipelineCache*: proc (device: VkDevic, pipelineCache: VkPipelineCach, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkGetPipelineCacheData*: proc (device: VkDevic, pipelineCache: VkPipelineCach, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.} - vkMergePipelineCaches*: proc (device: VkDevic, dstCache: VkPipelineCach, srcCacheCount: uint32_, pSrcCaches: ptr VkPipelineCache): VkResult {.stdcall.} - vkCreateGraphicsPipelines*: proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkGraphicsPipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} - vkCreateGraphicsPipelines*: proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkGraphicsPipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} - vkCreateComputePipelines*: proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkComputePipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} - vkCreateComputePipelines*: proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkComputePipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} - vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI*: proc (device: VkDevic, renderpass: VkRenderPas, pMaxWorkgroupSize: ptr VkExtent2D): VkResult {.stdcall.} - vkDestroyPipeline*: proc (device: VkDevic, pipeline: VkPipelin, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkCreatePipelineLayout*: proc (device: VkDevic, pCreateInfo: ptr VkPipelineLayoutCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineLayout: ptr VkPipelineLayout): VkResult {.stdcall.} - vkDestroyPipelineLayout*: proc (device: VkDevic, pipelineLayout: VkPipelineLayou, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkCreateSampler*: proc (device: VkDevic, pCreateInfo: ptr VkSamplerCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSampler: ptr VkSampler): VkResult {.stdcall.} - vkDestroySampler*: proc (device: VkDevic, sampler: VkSample, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkCreateDescriptorSetLayout*: proc (device: VkDevic, pCreateInfo: ptr VkDescriptorSetLayoutCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSetLayout: ptr VkDescriptorSetLayout): VkResult {.stdcall.} - vkDestroyDescriptorSetLayout*: proc (device: VkDevic, descriptorSetLayout: VkDescriptorSetLayou, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkCreateDescriptorPool*: proc (device: VkDevic, pCreateInfo: ptr VkDescriptorPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDescriptorPool: ptr VkDescriptorPool): VkResult {.stdcall.} - vkDestroyDescriptorPool*: proc (device: VkDevic, descriptorPool: VkDescriptorPoo, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkResetDescriptorPool*: proc (device: VkDevic, descriptorPool: VkDescriptorPoo, flags: VkDescriptorPoolResetFlag): VkResult {.stdcall.} - vkAllocateDescriptorSets*: proc (device: VkDevic, pAllocateInfo: ptr VkDescriptorSetAllocateInfo, pDescriptorSets: ptr VkDescriptorSet): VkResult {.stdcall.} - vkFreeDescriptorSets*: proc (device: VkDevic, descriptorPool: VkDescriptorPoo, descriptorSetCount: uint32_, pDescriptorSets: ptr VkDescriptorSet): VkResult {.stdcall.} - vkUpdateDescriptorSets*: proc (device: VkDevic, descriptorWriteCount: uint32_, pDescriptorWrites: ptr VkWriteDescriptorSet, descriptorCopyCount: uint32_, pDescriptorCopies: ptr VkCopyDescriptorSet): void {.stdcall.} - vkCreateFramebuffer*: proc (device: VkDevic, pCreateInfo: ptr VkFramebufferCreateInfo, pAllocator: ptr VkAllocationCallbacks, pFramebuffer: ptr VkFramebuffer): VkResult {.stdcall.} - vkDestroyFramebuffer*: proc (device: VkDevic, framebuffer: VkFramebuffe, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkCreateRenderPass*: proc (device: VkDevic, pCreateInfo: ptr VkRenderPassCreateInfo, pAllocator: ptr VkAllocationCallbacks, pRenderPass: ptr VkRenderPass): VkResult {.stdcall.} - vkDestroyRenderPass*: proc (device: VkDevic, renderPass: VkRenderPas, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkGetRenderAreaGranularity*: proc (device: VkDevic, renderPass: VkRenderPas, pGranularity: ptr VkExtent2D): void {.stdcall.} - vkGetRenderingAreaGranularityKHR*: proc (device: VkDevic, pRenderingAreaInfo: ptr VkRenderingAreaInfoKHR, pGranularity: ptr VkExtent2D): void {.stdcall.} - vkCreateCommandPool*: proc (device: VkDevic, pCreateInfo: ptr VkCommandPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pCommandPool: ptr VkCommandPool): VkResult {.stdcall.} - vkDestroyCommandPool*: proc (device: VkDevic, commandPool: VkCommandPoo, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkResetCommandPool*: proc (device: VkDevic, commandPool: VkCommandPoo, flags: VkCommandPoolResetFlag): VkResult {.stdcall.} - vkAllocateCommandBuffers*: proc (device: VkDevic, pAllocateInfo: ptr VkCommandBufferAllocateInfo, pCommandBuffers: ptr VkCommandBuffer): VkResult {.stdcall.} - vkFreeCommandBuffers*: proc (device: VkDevic, commandPool: VkCommandPoo, commandBufferCount: uint32_, pCommandBuffers: ptr VkCommandBuffer): void {.stdcall.} - vkBeginCommandBuffer*: proc (commandBuffer: VkCommandBuffe, pBeginInfo: ptr VkCommandBufferBeginInfo): VkResult {.stdcall.} - vkEndCommandBuffer*: proc (commandBuffer: VkCommandBuffe): VkResult {.stdcall.} - vkResetCommandBuffer*: proc (commandBuffer: VkCommandBuffe, flags: VkCommandBufferResetFlag): VkResult {.stdcall.} - vkCmdBindPipeline*: proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, pipeline: VkPipelin): void {.stdcall.} - vkCmdSetAttachmentFeedbackLoopEnableEXT*: proc (commandBuffer: VkCommandBuffe, aspectMask: VkImageAspectFlag): void {.stdcall.} - vkCmdSetViewport*: proc (commandBuffer: VkCommandBuffe, firstViewport: uint32_, viewportCount: uint32_, pViewports: ptr VkViewport): void {.stdcall.} - vkCmdSetScissor*: proc (commandBuffer: VkCommandBuffe, firstScissor: uint32_, scissorCount: uint32_, pScissors: ptr VkRect2D): void {.stdcall.} - vkCmdSetLineWidth*: proc (commandBuffer: VkCommandBuffe, lineWidth: floa): void {.stdcall.} - vkCmdSetDepthBias*: proc (commandBuffer: VkCommandBuffe, depthBiasConstantFactor: floa, depthBiasClamp: floa, depthBiasSlopeFactor: floa): void {.stdcall.} - vkCmdSetBlendConstants*: proc (commandBuffer: VkCommandBuffe, blendConstants: array[4, float3]): void {.stdcall.} - vkCmdSetDepthBounds*: proc (commandBuffer: VkCommandBuffe, minDepthBounds: floa, maxDepthBounds: floa): void {.stdcall.} - vkCmdSetStencilCompareMask*: proc (commandBuffer: VkCommandBuffe, faceMask: VkStencilFaceFlag, compareMask: uint32_): void {.stdcall.} - vkCmdSetStencilWriteMask*: proc (commandBuffer: VkCommandBuffe, faceMask: VkStencilFaceFlag, writeMask: uint32_): void {.stdcall.} - vkCmdSetStencilReference*: proc (commandBuffer: VkCommandBuffe, faceMask: VkStencilFaceFlag, reference: uint32_): void {.stdcall.} - vkCmdBindDescriptorSets*: proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, layout: VkPipelineLayou, firstSet: uint32_, descriptorSetCount: uint32_, pDescriptorSets: ptr VkDescriptorSet, dynamicOffsetCount: uint32_, pDynamicOffsets: ptr uint32): void {.stdcall.} - vkCmdBindIndexBuffer*: proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, indexType: VkIndexTyp): void {.stdcall.} - vkCmdBindVertexBuffers*: proc (commandBuffer: VkCommandBuffe, firstBinding: uint32_, bindingCount: uint32_, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize): void {.stdcall.} - vkCmdDraw*: proc (commandBuffer: VkCommandBuffe, vertexCount: uint32_, instanceCount: uint32_, firstVertex: uint32_, firstInstance: uint32_): void {.stdcall.} - vkCmdDrawIndexed*: proc (commandBuffer: VkCommandBuffe, indexCount: uint32_, instanceCount: uint32_, firstIndex: uint32_, vertexOffset: int32_, firstInstance: uint32_): void {.stdcall.} - vkCmdDrawMultiEXT*: proc (commandBuffer: VkCommandBuffe, drawCount: uint32_, pVertexInfo: ptr VkMultiDrawInfoEXT, instanceCount: uint32_, firstInstance: uint32_, stride: uint32_): void {.stdcall.} - vkCmdDrawMultiIndexedEXT*: proc (commandBuffer: VkCommandBuffe, drawCount: uint32_, pIndexInfo: ptr VkMultiDrawIndexedInfoEXT, instanceCount: uint32_, firstInstance: uint32_, stride: uint32_, pVertexOffset: ptr int32): void {.stdcall.} - vkCmdDrawIndirect*: proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, drawCount: uint32_, stride: uint32_): void {.stdcall.} - vkCmdDrawIndexedIndirect*: proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, drawCount: uint32_, stride: uint32_): void {.stdcall.} - vkCmdDispatch*: proc (commandBuffer: VkCommandBuffe, groupCountX: uint32_, groupCountY: uint32_, groupCountZ: uint32_): void {.stdcall.} - vkCmdDispatchIndirect*: proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz): void {.stdcall.} - vkCmdSubpassShadingHUAWEI*: proc (commandBuffer: VkCommandBuffe): void {.stdcall.} - vkCmdDrawClusterHUAWEI*: proc (commandBuffer: VkCommandBuffe, groupCountX: uint32_, groupCountY: uint32_, groupCountZ: uint32_): void {.stdcall.} - vkCmdDrawClusterIndirectHUAWEI*: proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz): void {.stdcall.} - vkCmdUpdatePipelineIndirectBufferNV*: proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, pipeline: VkPipelin): void {.stdcall.} - vkCmdCopyBuffer*: proc (commandBuffer: VkCommandBuffe, srcBuffer: VkBuffe, dstBuffer: VkBuffe, regionCount: uint32_, pRegions: ptr VkBufferCopy): void {.stdcall.} - vkCmdCopyImage*: proc (commandBuffer: VkCommandBuffe, srcImage: VkImag, srcImageLayout: VkImageLayou, dstImage: VkImag, dstImageLayout: VkImageLayou, regionCount: uint32_, pRegions: ptr VkImageCopy): void {.stdcall.} - vkCmdBlitImage*: proc (commandBuffer: VkCommandBuffe, srcImage: VkImag, srcImageLayout: VkImageLayou, dstImage: VkImag, dstImageLayout: VkImageLayou, regionCount: uint32_, pRegions: ptr VkImageBlit, filter: VkFilte): void {.stdcall.} - vkCmdCopyBufferToImage*: proc (commandBuffer: VkCommandBuffe, srcBuffer: VkBuffe, dstImage: VkImag, dstImageLayout: VkImageLayou, regionCount: uint32_, pRegions: ptr VkBufferImageCopy): void {.stdcall.} - vkCmdCopyImageToBuffer*: proc (commandBuffer: VkCommandBuffe, srcImage: VkImag, srcImageLayout: VkImageLayou, dstBuffer: VkBuffe, regionCount: uint32_, pRegions: ptr VkBufferImageCopy): void {.stdcall.} - vkCmdCopyMemoryIndirectNV*: proc (commandBuffer: VkCommandBuffe, copyBufferAddress: VkDeviceAddres, copyCount: uint32_, stride: uint32_): void {.stdcall.} - vkCmdCopyMemoryToImageIndirectNV*: proc (commandBuffer: VkCommandBuffe, copyBufferAddress: VkDeviceAddres, copyCount: uint32_, stride: uint32_, dstImage: VkImag, dstImageLayout: VkImageLayou, pImageSubresources: ptr VkImageSubresourceLayers): void {.stdcall.} - vkCmdUpdateBuffer*: proc (commandBuffer: VkCommandBuffe, dstBuffer: VkBuffe, dstOffset: VkDeviceSiz, dataSize: VkDeviceSiz, pData: pointer): void {.stdcall.} - vkCmdFillBuffer*: proc (commandBuffer: VkCommandBuffe, dstBuffer: VkBuffe, dstOffset: VkDeviceSiz, size: VkDeviceSiz, data: uint32_): void {.stdcall.} - vkCmdClearColorImage*: proc (commandBuffer: VkCommandBuffe, image: VkImag, imageLayout: VkImageLayou, pColor: ptr VkClearColorValue, rangeCount: uint32_, pRanges: ptr VkImageSubresourceRange): void {.stdcall.} - vkCmdClearDepthStencilImage*: proc (commandBuffer: VkCommandBuffe, image: VkImag, imageLayout: VkImageLayou, pDepthStencil: ptr VkClearDepthStencilValue, rangeCount: uint32_, pRanges: ptr VkImageSubresourceRange): void {.stdcall.} - vkCmdClearAttachments*: proc (commandBuffer: VkCommandBuffe, attachmentCount: uint32_, pAttachments: ptr VkClearAttachment, rectCount: uint32_, pRects: ptr VkClearRect): void {.stdcall.} - vkCmdResolveImage*: proc (commandBuffer: VkCommandBuffe, srcImage: VkImag, srcImageLayout: VkImageLayou, dstImage: VkImag, dstImageLayout: VkImageLayou, regionCount: uint32_, pRegions: ptr VkImageResolve): void {.stdcall.} - vkCmdSetEvent*: proc (commandBuffer: VkCommandBuffe, event: VkEven, stageMask: VkPipelineStageFlag): void {.stdcall.} - vkCmdResetEvent*: proc (commandBuffer: VkCommandBuffe, event: VkEven, stageMask: VkPipelineStageFlag): void {.stdcall.} - vkCmdWaitEvents*: proc (commandBuffer: VkCommandBuffe, eventCount: uint32_, pEvents: ptr VkEvent, srcStageMask: VkPipelineStageFlag, dstStageMask: VkPipelineStageFlag, memoryBarrierCount: uint32_, pMemoryBarriers: ptr VkMemoryBarrier, bufferMemoryBarrierCount: uint32_, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier, imageMemoryBarrierCount: uint32_, pImageMemoryBarriers: ptr VkImageMemoryBarrier): void {.stdcall.} - vkCmdPipelineBarrier*: proc (commandBuffer: VkCommandBuffe, srcStageMask: VkPipelineStageFlag, dstStageMask: VkPipelineStageFlag, dependencyFlags: VkDependencyFlag, memoryBarrierCount: uint32_, pMemoryBarriers: ptr VkMemoryBarrier, bufferMemoryBarrierCount: uint32_, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier, imageMemoryBarrierCount: uint32_, pImageMemoryBarriers: ptr VkImageMemoryBarrier): void {.stdcall.} - vkCmdBeginQuery*: proc (commandBuffer: VkCommandBuffe, queryPool: VkQueryPoo, query: uint32_, flags: VkQueryControlFlag): void {.stdcall.} - vkCmdEndQuery*: proc (commandBuffer: VkCommandBuffe, queryPool: VkQueryPoo, query: uint32_): void {.stdcall.} - vkCmdBeginConditionalRenderingEXT*: proc (commandBuffer: VkCommandBuffe, pConditionalRenderingBegin: ptr VkConditionalRenderingBeginInfoEXT): void {.stdcall.} - vkCmdEndConditionalRenderingEXT*: proc (commandBuffer: VkCommandBuffe): void {.stdcall.} - vkCmdResetQueryPool*: proc (commandBuffer: VkCommandBuffe, queryPool: VkQueryPoo, firstQuery: uint32_, queryCount: uint32_): void {.stdcall.} - vkCmdWriteTimestamp*: proc (commandBuffer: VkCommandBuffe, pipelineStage: VkPipelineStageFlagBit, queryPool: VkQueryPoo, query: uint32_): void {.stdcall.} - vkCmdCopyQueryPoolResults*: proc (commandBuffer: VkCommandBuffe, queryPool: VkQueryPoo, firstQuery: uint32_, queryCount: uint32_, dstBuffer: VkBuffe, dstOffset: VkDeviceSiz, stride: VkDeviceSiz, flags: VkQueryResultFlag): void {.stdcall.} - vkCmdPushConstants*: proc (commandBuffer: VkCommandBuffe, layout: VkPipelineLayou, stageFlags: VkShaderStageFlag, offset: uint32_, size: uint32_, pValues: pointer): void {.stdcall.} - vkCmdBeginRenderPass*: proc (commandBuffer: VkCommandBuffe, pRenderPassBegin: ptr VkRenderPassBeginInfo, contents: VkSubpassContent): void {.stdcall.} - vkCmdNextSubpass*: proc (commandBuffer: VkCommandBuffe, contents: VkSubpassContent): void {.stdcall.} - vkCmdEndRenderPass*: proc (commandBuffer: VkCommandBuffe): void {.stdcall.} - vkCmdExecuteCommands*: proc (commandBuffer: VkCommandBuffe, commandBufferCount: uint32_, pCommandBuffers: ptr VkCommandBuffer): void {.stdcall.} - vkCreateAndroidSurfaceKHR*: proc (instance: VkInstanc, pCreateInfo: ptr VkAndroidSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} - vkGetPhysicalDeviceDisplayPropertiesKHR*: proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayPropertiesKHR): VkResult {.stdcall.} - vkGetPhysicalDeviceDisplayPlanePropertiesKHR*: proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayPlanePropertiesKHR): VkResult {.stdcall.} - vkGetDisplayPlaneSupportedDisplaysKHR*: proc (physicalDevice: VkPhysicalDevic, planeIndex: uint32_, pDisplayCount: ptr uint32, pDisplays: ptr VkDisplayKHR): VkResult {.stdcall.} - vkGetDisplayModePropertiesKHR*: proc (physicalDevice: VkPhysicalDevic, display: VkDisplayKH, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayModePropertiesKHR): VkResult {.stdcall.} - vkCreateDisplayModeKHR*: proc (physicalDevice: VkPhysicalDevic, display: VkDisplayKH, pCreateInfo: ptr VkDisplayModeCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pMode: ptr VkDisplayModeKHR): VkResult {.stdcall.} - vkGetDisplayPlaneCapabilitiesKHR*: proc (physicalDevice: VkPhysicalDevic, mode: VkDisplayModeKH, planeIndex: uint32_, pCapabilities: ptr VkDisplayPlaneCapabilitiesKHR): VkResult {.stdcall.} - vkCreateDisplayPlaneSurfaceKHR*: proc (instance: VkInstanc, pCreateInfo: ptr VkDisplaySurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} - vkCreateSharedSwapchainsKHR*: proc (device: VkDevic, swapchainCount: uint32_, pCreateInfos: ptr VkSwapchainCreateInfoKHR, pCreateInfos: ptr VkSwapchainCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSwapchains: ptr VkSwapchainKHR): VkResult {.stdcall.} - vkDestroySurfaceKHR*: proc (instance: VkInstanc, surface: VkSurfaceKH, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkGetPhysicalDeviceSurfaceSupportKHR*: proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, surface: VkSurfaceKH, pSupported: ptr VkBool32): VkResult {.stdcall.} - vkGetPhysicalDeviceSurfaceCapabilitiesKHR*: proc (physicalDevice: VkPhysicalDevic, surface: VkSurfaceKH, pSurfaceCapabilities: ptr VkSurfaceCapabilitiesKHR): VkResult {.stdcall.} - vkGetPhysicalDeviceSurfaceFormatsKHR*: proc (physicalDevice: VkPhysicalDevic, surface: VkSurfaceKH, pSurfaceFormatCount: ptr uint32, pSurfaceFormats: ptr VkSurfaceFormatKHR): VkResult {.stdcall.} - vkGetPhysicalDeviceSurfacePresentModesKHR*: proc (physicalDevice: VkPhysicalDevic, surface: VkSurfaceKH, pPresentModeCount: ptr uint32, pPresentModes: ptr VkPresentModeKHR): VkResult {.stdcall.} - vkCreateSwapchainKHR*: proc (device: VkDevic, pCreateInfo: ptr VkSwapchainCreateInfoKHR, pCreateInfo: ptr VkSwapchainCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSwapchain: ptr VkSwapchainKHR): VkResult {.stdcall.} - vkDestroySwapchainKHR*: proc (device: VkDevic, swapchain: VkSwapchainKH, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkGetSwapchainImagesKHR*: proc (device: VkDevic, swapchain: VkSwapchainKH, pSwapchainImageCount: ptr uint32, pSwapchainImages: ptr VkImage): VkResult {.stdcall.} - vkAcquireNextImageKHR*: proc (device: VkDevic, swapchain: VkSwapchainKH, timeout: uint64_, semaphore: VkSemaphor, fence: VkFenc, pImageIndex: ptr uint32): VkResult {.stdcall.} - vkQueuePresentKHR*: proc (queue: VkQueu, pPresentInfo: ptr VkPresentInfoKHR): VkResult {.stdcall.} - vkCreateViSurfaceNN*: proc (instance: VkInstanc, pCreateInfo: ptr VkViSurfaceCreateInfoNN, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} - vkCreateWaylandSurfaceKHR*: proc (instance: VkInstanc, pCreateInfo: ptr VkWaylandSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} - vkGetPhysicalDeviceWaylandPresentationSupportKHR*: proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, display: ptr wl_display): VkBool32 {.stdcall.} - vkCreateWin32SurfaceKHR*: proc (instance: VkInstanc, pCreateInfo: ptr VkWin32SurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} - vkGetPhysicalDeviceWin32PresentationSupportKHR*: proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_): VkBool32 {.stdcall.} - vkCreateXlibSurfaceKHR*: proc (instance: VkInstanc, pCreateInfo: ptr VkXlibSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} - vkGetPhysicalDeviceXlibPresentationSupportKHR*: proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, dpy: ptr Display, visualID: VisualI): VkBool32 {.stdcall.} - vkCreateXcbSurfaceKHR*: proc (instance: VkInstanc, pCreateInfo: ptr VkXcbSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} - vkGetPhysicalDeviceXcbPresentationSupportKHR*: proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, connection: ptr xcb_connection_t, visual_id: xcb_visualid_): VkBool32 {.stdcall.} - vkCreateDirectFBSurfaceEXT*: proc (instance: VkInstanc, pCreateInfo: ptr VkDirectFBSurfaceCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} - vkGetPhysicalDeviceDirectFBPresentationSupportEXT*: proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, dfb: ptr IDirectFB): VkBool32 {.stdcall.} - vkCreateImagePipeSurfaceFUCHSIA*: proc (instance: VkInstanc, pCreateInfo: ptr VkImagePipeSurfaceCreateInfoFUCHSIA, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} - vkCreateStreamDescriptorSurfaceGGP*: proc (instance: VkInstanc, pCreateInfo: ptr VkStreamDescriptorSurfaceCreateInfoGGP, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} - vkCreateScreenSurfaceQNX*: proc (instance: VkInstanc, pCreateInfo: ptr VkScreenSurfaceCreateInfoQNX, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} - vkGetPhysicalDeviceScreenPresentationSupportQNX*: proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, window: ptr screen_window): VkBool32 {.stdcall.} - vkCreateDebugReportCallbackEXT*: proc (instance: VkInstanc, pCreateInfo: ptr VkDebugReportCallbackCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pCallback: ptr VkDebugReportCallbackEXT): VkResult {.stdcall.} - vkDestroyDebugReportCallbackEXT*: proc (instance: VkInstanc, callback: VkDebugReportCallbackEX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkDebugReportMessageEXT*: proc (instance: VkInstanc, flags: VkDebugReportFlagsEX, objectType: VkDebugReportObjectTypeEX, `object`: uint64_, location: size_, messageCode: int32_, pLayerPrefix: cstring, pMessage: cstring): void {.stdcall.} - vkDebugMarkerSetObjectNameEXT*: proc (device: VkDevic, pNameInfo: ptr VkDebugMarkerObjectNameInfoEXT): VkResult {.stdcall.} - vkDebugMarkerSetObjectTagEXT*: proc (device: VkDevic, pTagInfo: ptr VkDebugMarkerObjectTagInfoEXT): VkResult {.stdcall.} - vkCmdDebugMarkerBeginEXT*: proc (commandBuffer: VkCommandBuffe, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT): void {.stdcall.} - vkCmdDebugMarkerEndEXT*: proc (commandBuffer: VkCommandBuffe): void {.stdcall.} - vkCmdDebugMarkerInsertEXT*: proc (commandBuffer: VkCommandBuffe, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT): void {.stdcall.} - vkGetPhysicalDeviceExternalImageFormatPropertiesNV*: proc (physicalDevice: VkPhysicalDevic, format: VkForma, `type`: VkImageTyp, tiling: VkImageTilin, usage: VkImageUsageFlag, flags: VkImageCreateFlag, externalHandleType: VkExternalMemoryHandleTypeFlagsN, pExternalImageFormatProperties: ptr VkExternalImageFormatPropertiesNV): VkResult {.stdcall.} - vkGetMemoryWin32HandleNV*: proc (device: VkDevic, memory: VkDeviceMemor, handleType: VkExternalMemoryHandleTypeFlagsN, pHandle: ptr HANDLE): VkResult {.stdcall.} - vkCmdExecuteGeneratedCommandsNV*: proc (commandBuffer: VkCommandBuffe, isPreprocessed: VkBool3, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV): void {.stdcall.} - vkCmdPreprocessGeneratedCommandsNV*: proc (commandBuffer: VkCommandBuffe, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV): void {.stdcall.} - vkCmdBindPipelineShaderGroupNV*: proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, pipeline: VkPipelin, groupIndex: uint32_): void {.stdcall.} - vkGetGeneratedCommandsMemoryRequirementsNV*: proc (device: VkDevic, pInfo: ptr VkGeneratedCommandsMemoryRequirementsInfoNV, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.} - vkCreateIndirectCommandsLayoutNV*: proc (device: VkDevic, pCreateInfo: ptr VkIndirectCommandsLayoutCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pIndirectCommandsLayout: ptr VkIndirectCommandsLayoutNV): VkResult {.stdcall.} - vkDestroyIndirectCommandsLayoutNV*: proc (device: VkDevic, indirectCommandsLayout: VkIndirectCommandsLayoutN, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkGetPhysicalDeviceFeatures2*: proc (physicalDevice: VkPhysicalDevic, pFeatures: ptr VkPhysicalDeviceFeatures2): void {.stdcall.} - vkGetPhysicalDeviceProperties2*: proc (physicalDevice: VkPhysicalDevic, pProperties: ptr VkPhysicalDeviceProperties2): void {.stdcall.} - vkGetPhysicalDeviceFormatProperties2*: proc (physicalDevice: VkPhysicalDevic, format: VkForma, pFormatProperties: ptr VkFormatProperties2): void {.stdcall.} - vkGetPhysicalDeviceImageFormatProperties2*: proc (physicalDevice: VkPhysicalDevic, pImageFormatInfo: ptr VkPhysicalDeviceImageFormatInfo2, pImageFormatProperties: ptr VkImageFormatProperties2): VkResult {.stdcall.} - vkGetPhysicalDeviceQueueFamilyProperties2*: proc (physicalDevice: VkPhysicalDevic, pQueueFamilyPropertyCount: ptr uint32, pQueueFamilyProperties: ptr VkQueueFamilyProperties2): void {.stdcall.} - vkGetPhysicalDeviceMemoryProperties2*: proc (physicalDevice: VkPhysicalDevic, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties2): void {.stdcall.} - vkGetPhysicalDeviceSparseImageFormatProperties2*: proc (physicalDevice: VkPhysicalDevic, pFormatInfo: ptr VkPhysicalDeviceSparseImageFormatInfo2, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties2): void {.stdcall.} - vkCmdPushDescriptorSetKHR*: proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, layout: VkPipelineLayou, set: uint32_, descriptorWriteCount: uint32_, pDescriptorWrites: ptr VkWriteDescriptorSet): void {.stdcall.} - vkTrimCommandPool*: proc (device: VkDevic, commandPool: VkCommandPoo, flags: VkCommandPoolTrimFlag): void {.stdcall.} - vkGetPhysicalDeviceExternalBufferProperties*: proc (physicalDevice: VkPhysicalDevic, pExternalBufferInfo: ptr VkPhysicalDeviceExternalBufferInfo, pExternalBufferProperties: ptr VkExternalBufferProperties): void {.stdcall.} - vkGetMemoryWin32HandleKHR*: proc (device: VkDevic, pGetWin32HandleInfo: ptr VkMemoryGetWin32HandleInfoKHR, pHandle: ptr HANDLE): VkResult {.stdcall.} - vkGetMemoryWin32HandlePropertiesKHR*: proc (device: VkDevic, handleType: VkExternalMemoryHandleTypeFlagBit, handle: HANDL, pMemoryWin32HandleProperties: ptr VkMemoryWin32HandlePropertiesKHR): VkResult {.stdcall.} - vkGetMemoryFdKHR*: proc (device: VkDevic, pGetFdInfo: ptr VkMemoryGetFdInfoKHR, pFd: ptr int): VkResult {.stdcall.} - vkGetMemoryFdPropertiesKHR*: proc (device: VkDevic, handleType: VkExternalMemoryHandleTypeFlagBit, fd: in, pMemoryFdProperties: ptr VkMemoryFdPropertiesKHR): VkResult {.stdcall.} - vkGetMemoryZirconHandleFUCHSIA*: proc (device: VkDevic, pGetZirconHandleInfo: ptr VkMemoryGetZirconHandleInfoFUCHSIA, pZirconHandle: ptr zx_handle_t): VkResult {.stdcall.} - vkGetMemoryZirconHandlePropertiesFUCHSIA*: proc (device: VkDevic, handleType: VkExternalMemoryHandleTypeFlagBit, zirconHandle: zx_handle_, pMemoryZirconHandleProperties: ptr VkMemoryZirconHandlePropertiesFUCHSIA): VkResult {.stdcall.} - vkGetMemoryRemoteAddressNV*: proc (device: VkDevic, pMemoryGetRemoteAddressInfo: ptr VkMemoryGetRemoteAddressInfoNV, pAddress: ptr VkRemoteAddressNV): VkResult {.stdcall.} - vkGetMemorySciBufNV*: proc (device: VkDevic, pGetSciBufInfo: ptr VkMemoryGetSciBufInfoNV, pHandle: ptr NvSciBufObj): VkResult {.stdcall.} - vkGetPhysicalDeviceExternalMemorySciBufPropertiesNV*: proc (physicalDevice: VkPhysicalDevic, handleType: VkExternalMemoryHandleTypeFlagBit, handle: NvSciBufOb, pMemorySciBufProperties: ptr VkMemorySciBufPropertiesNV): VkResult {.stdcall.} - vkGetPhysicalDeviceSciBufAttributesNV*: proc (physicalDevice: VkPhysicalDevic, pAttributes: NvSciBufAttrLis): VkResult {.stdcall.} - vkGetPhysicalDeviceExternalSemaphoreProperties*: proc (physicalDevice: VkPhysicalDevic, pExternalSemaphoreInfo: ptr VkPhysicalDeviceExternalSemaphoreInfo, pExternalSemaphoreProperties: ptr VkExternalSemaphoreProperties): void {.stdcall.} - vkGetSemaphoreWin32HandleKHR*: proc (device: VkDevic, pGetWin32HandleInfo: ptr VkSemaphoreGetWin32HandleInfoKHR, pHandle: ptr HANDLE): VkResult {.stdcall.} - vkImportSemaphoreWin32HandleKHR*: proc (device: VkDevic, pImportSemaphoreWin32HandleInfo: ptr VkImportSemaphoreWin32HandleInfoKHR): VkResult {.stdcall.} - vkGetSemaphoreFdKHR*: proc (device: VkDevic, pGetFdInfo: ptr VkSemaphoreGetFdInfoKHR, pFd: ptr int): VkResult {.stdcall.} - vkImportSemaphoreFdKHR*: proc (device: VkDevic, pImportSemaphoreFdInfo: ptr VkImportSemaphoreFdInfoKHR): VkResult {.stdcall.} - vkGetSemaphoreZirconHandleFUCHSIA*: proc (device: VkDevic, pGetZirconHandleInfo: ptr VkSemaphoreGetZirconHandleInfoFUCHSIA, pZirconHandle: ptr zx_handle_t): VkResult {.stdcall.} - vkImportSemaphoreZirconHandleFUCHSIA*: proc (device: VkDevic, pImportSemaphoreZirconHandleInfo: ptr VkImportSemaphoreZirconHandleInfoFUCHSIA): VkResult {.stdcall.} - vkGetPhysicalDeviceExternalFenceProperties*: proc (physicalDevice: VkPhysicalDevic, pExternalFenceInfo: ptr VkPhysicalDeviceExternalFenceInfo, pExternalFenceProperties: ptr VkExternalFenceProperties): void {.stdcall.} - vkGetFenceWin32HandleKHR*: proc (device: VkDevic, pGetWin32HandleInfo: ptr VkFenceGetWin32HandleInfoKHR, pHandle: ptr HANDLE): VkResult {.stdcall.} - vkImportFenceWin32HandleKHR*: proc (device: VkDevic, pImportFenceWin32HandleInfo: ptr VkImportFenceWin32HandleInfoKHR): VkResult {.stdcall.} - vkGetFenceFdKHR*: proc (device: VkDevic, pGetFdInfo: ptr VkFenceGetFdInfoKHR, pFd: ptr int): VkResult {.stdcall.} - vkImportFenceFdKHR*: proc (device: VkDevic, pImportFenceFdInfo: ptr VkImportFenceFdInfoKHR): VkResult {.stdcall.} - vkGetFenceSciSyncFenceNV*: proc (device: VkDevic, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV, pHandle: pointer): VkResult {.stdcall.} - vkGetFenceSciSyncObjNV*: proc (device: VkDevic, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV, pHandle: pointer): VkResult {.stdcall.} - vkImportFenceSciSyncFenceNV*: proc (device: VkDevic, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV): VkResult {.stdcall.} - vkImportFenceSciSyncObjNV*: proc (device: VkDevic, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV): VkResult {.stdcall.} - vkGetSemaphoreSciSyncObjNV*: proc (device: VkDevic, pGetSciSyncInfo: ptr VkSemaphoreGetSciSyncInfoNV, pHandle: pointer): VkResult {.stdcall.} - vkImportSemaphoreSciSyncObjNV*: proc (device: VkDevic, pImportSemaphoreSciSyncInfo: ptr VkImportSemaphoreSciSyncInfoNV): VkResult {.stdcall.} - vkGetPhysicalDeviceSciSyncAttributesNV*: proc (physicalDevice: VkPhysicalDevic, pSciSyncAttributesInfo: ptr VkSciSyncAttributesInfoNV, pAttributes: NvSciSyncAttrLis): VkResult {.stdcall.} - vkCreateSemaphoreSciSyncPoolNV*: proc (device: VkDevic, pCreateInfo: ptr VkSemaphoreSciSyncPoolCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pSemaphorePool: ptr VkSemaphoreSciSyncPoolNV): VkResult {.stdcall.} - vkDestroySemaphoreSciSyncPoolNV*: proc (device: VkDevic, semaphorePool: VkSemaphoreSciSyncPoolN, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkReleaseDisplayEXT*: proc (physicalDevice: VkPhysicalDevic, display: VkDisplayKH): VkResult {.stdcall.} - vkAcquireXlibDisplayEXT*: proc (physicalDevice: VkPhysicalDevic, dpy: ptr Display, display: VkDisplayKH): VkResult {.stdcall.} - vkGetRandROutputDisplayEXT*: proc (physicalDevice: VkPhysicalDevic, dpy: ptr Display, rrOutput: RROutpu, pDisplay: ptr VkDisplayKHR): VkResult {.stdcall.} - vkAcquireWinrtDisplayNV*: proc (physicalDevice: VkPhysicalDevic, display: VkDisplayKH): VkResult {.stdcall.} - vkGetWinrtDisplayNV*: proc (physicalDevice: VkPhysicalDevic, deviceRelativeId: uint32_, pDisplay: ptr VkDisplayKHR): VkResult {.stdcall.} - vkDisplayPowerControlEXT*: proc (device: VkDevic, display: VkDisplayKH, pDisplayPowerInfo: ptr VkDisplayPowerInfoEXT): VkResult {.stdcall.} - vkRegisterDeviceEventEXT*: proc (device: VkDevic, pDeviceEventInfo: ptr VkDeviceEventInfoEXT, pAllocator: ptr VkAllocationCallbacks, pFence: ptr VkFence): VkResult {.stdcall.} - vkRegisterDisplayEventEXT*: proc (device: VkDevic, display: VkDisplayKH, pDisplayEventInfo: ptr VkDisplayEventInfoEXT, pAllocator: ptr VkAllocationCallbacks, pFence: ptr VkFence): VkResult {.stdcall.} - vkGetSwapchainCounterEXT*: proc (device: VkDevic, swapchain: VkSwapchainKH, counter: VkSurfaceCounterFlagBitsEX, pCounterValue: ptr uint64): VkResult {.stdcall.} - vkGetPhysicalDeviceSurfaceCapabilities2EXT*: proc (physicalDevice: VkPhysicalDevic, surface: VkSurfaceKH, pSurfaceCapabilities: ptr VkSurfaceCapabilities2EXT): VkResult {.stdcall.} - vkEnumeratePhysicalDeviceGroups*: proc (instance: VkInstanc, pPhysicalDeviceGroupCount: ptr uint32, pPhysicalDeviceGroupProperties: ptr VkPhysicalDeviceGroupProperties): VkResult {.stdcall.} - vkGetDeviceGroupPeerMemoryFeatures*: proc (device: VkDevic, heapIndex: uint32_, localDeviceIndex: uint32_, remoteDeviceIndex: uint32_, pPeerMemoryFeatures: ptr VkPeerMemoryFeatureFlags): void {.stdcall.} - vkBindBufferMemory2*: proc (device: VkDevic, bindInfoCount: uint32_, pBindInfos: ptr VkBindBufferMemoryInfo): VkResult {.stdcall.} - vkBindImageMemory2*: proc (device: VkDevic, bindInfoCount: uint32_, pBindInfos: ptr VkBindImageMemoryInfo): VkResult {.stdcall.} - vkCmdSetDeviceMask*: proc (commandBuffer: VkCommandBuffe, deviceMask: uint32_): void {.stdcall.} - vkGetDeviceGroupPresentCapabilitiesKHR*: proc (device: VkDevic, pDeviceGroupPresentCapabilities: ptr VkDeviceGroupPresentCapabilitiesKHR): VkResult {.stdcall.} - vkGetDeviceGroupSurfacePresentModesKHR*: proc (device: VkDevic, surface: VkSurfaceKH, pModes: ptr VkDeviceGroupPresentModeFlagsKHR): VkResult {.stdcall.} - vkAcquireNextImage2KHR*: proc (device: VkDevic, pAcquireInfo: ptr VkAcquireNextImageInfoKHR, pImageIndex: ptr uint32): VkResult {.stdcall.} - vkCmdDispatchBase*: proc (commandBuffer: VkCommandBuffe, baseGroupX: uint32_, baseGroupY: uint32_, baseGroupZ: uint32_, groupCountX: uint32_, groupCountY: uint32_, groupCountZ: uint32_): void {.stdcall.} - vkGetPhysicalDevicePresentRectanglesKHR*: proc (physicalDevice: VkPhysicalDevic, surface: VkSurfaceKH, pRectCount: ptr uint32, pRects: ptr VkRect2D): VkResult {.stdcall.} - vkCreateDescriptorUpdateTemplate*: proc (device: VkDevic, pCreateInfo: ptr VkDescriptorUpdateTemplateCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDescriptorUpdateTemplate: ptr VkDescriptorUpdateTemplate): VkResult {.stdcall.} - vkDestroyDescriptorUpdateTemplate*: proc (device: VkDevic, descriptorUpdateTemplate: VkDescriptorUpdateTemplat, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkUpdateDescriptorSetWithTemplate*: proc (device: VkDevic, descriptorSet: VkDescriptorSe, descriptorUpdateTemplate: VkDescriptorUpdateTemplat, pData: pointer): void {.stdcall.} - vkCmdPushDescriptorSetWithTemplateKHR*: proc (commandBuffer: VkCommandBuffe, descriptorUpdateTemplate: VkDescriptorUpdateTemplat, layout: VkPipelineLayou, set: uint32_, pData: pointer): void {.stdcall.} - vkSetHdrMetadataEXT*: proc (device: VkDevic, swapchainCount: uint32_, pSwapchains: ptr VkSwapchainKHR, pMetadata: ptr VkHdrMetadataEXT): void {.stdcall.} - vkGetSwapchainStatusKHR*: proc (device: VkDevic, swapchain: VkSwapchainKH): VkResult {.stdcall.} - vkGetRefreshCycleDurationGOOGLE*: proc (device: VkDevic, swapchain: VkSwapchainKH, pDisplayTimingProperties: ptr VkRefreshCycleDurationGOOGLE): VkResult {.stdcall.} - vkGetPastPresentationTimingGOOGLE*: proc (device: VkDevic, swapchain: VkSwapchainKH, pPresentationTimingCount: ptr uint32, pPresentationTimings: ptr VkPastPresentationTimingGOOGLE): VkResult {.stdcall.} - vkCreateIOSSurfaceMVK*: proc (instance: VkInstanc, pCreateInfo: ptr VkIOSSurfaceCreateInfoMVK, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} - vkCreateMacOSSurfaceMVK*: proc (instance: VkInstanc, pCreateInfo: ptr VkMacOSSurfaceCreateInfoMVK, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} - vkCreateMetalSurfaceEXT*: proc (instance: VkInstanc, pCreateInfo: ptr VkMetalSurfaceCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} - vkCmdSetViewportWScalingNV*: proc (commandBuffer: VkCommandBuffe, firstViewport: uint32_, viewportCount: uint32_, pViewportWScalings: ptr VkViewportWScalingNV): void {.stdcall.} - vkCmdSetDiscardRectangleEXT*: proc (commandBuffer: VkCommandBuffe, firstDiscardRectangle: uint32_, discardRectangleCount: uint32_, pDiscardRectangles: ptr VkRect2D): void {.stdcall.} - vkCmdSetDiscardRectangleEnableEXT*: proc (commandBuffer: VkCommandBuffe, discardRectangleEnable: VkBool3): void {.stdcall.} - vkCmdSetDiscardRectangleModeEXT*: proc (commandBuffer: VkCommandBuffe, discardRectangleMode: VkDiscardRectangleModeEX): void {.stdcall.} - vkCmdSetSampleLocationsEXT*: proc (commandBuffer: VkCommandBuffe, pSampleLocationsInfo: ptr VkSampleLocationsInfoEXT): void {.stdcall.} - vkGetPhysicalDeviceMultisamplePropertiesEXT*: proc (physicalDevice: VkPhysicalDevic, samples: VkSampleCountFlagBit, pMultisampleProperties: ptr VkMultisamplePropertiesEXT): void {.stdcall.} - vkGetPhysicalDeviceSurfaceCapabilities2KHR*: proc (physicalDevice: VkPhysicalDevic, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pSurfaceCapabilities: ptr VkSurfaceCapabilities2KHR): VkResult {.stdcall.} - vkGetPhysicalDeviceSurfaceFormats2KHR*: proc (physicalDevice: VkPhysicalDevic, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pSurfaceFormatCount: ptr uint32, pSurfaceFormats: ptr VkSurfaceFormat2KHR): VkResult {.stdcall.} - vkGetPhysicalDeviceDisplayProperties2KHR*: proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayProperties2KHR): VkResult {.stdcall.} - vkGetPhysicalDeviceDisplayPlaneProperties2KHR*: proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayPlaneProperties2KHR): VkResult {.stdcall.} - vkGetDisplayModeProperties2KHR*: proc (physicalDevice: VkPhysicalDevic, display: VkDisplayKH, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayModeProperties2KHR): VkResult {.stdcall.} - vkGetDisplayPlaneCapabilities2KHR*: proc (physicalDevice: VkPhysicalDevic, pDisplayPlaneInfo: ptr VkDisplayPlaneInfo2KHR, pCapabilities: ptr VkDisplayPlaneCapabilities2KHR): VkResult {.stdcall.} - vkGetBufferMemoryRequirements2*: proc (device: VkDevic, pInfo: ptr VkBufferMemoryRequirementsInfo2, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.} - vkGetImageMemoryRequirements2*: proc (device: VkDevic, pInfo: ptr VkImageMemoryRequirementsInfo2, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.} - vkGetImageSparseMemoryRequirements2*: proc (device: VkDevic, pInfo: ptr VkImageSparseMemoryRequirementsInfo2, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2): void {.stdcall.} - vkGetDeviceBufferMemoryRequirements*: proc (device: VkDevic, pInfo: ptr VkDeviceBufferMemoryRequirements, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.} - vkGetDeviceImageMemoryRequirements*: proc (device: VkDevic, pInfo: ptr VkDeviceImageMemoryRequirements, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.} - vkGetDeviceImageSparseMemoryRequirements*: proc (device: VkDevic, pInfo: ptr VkDeviceImageMemoryRequirements, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2): void {.stdcall.} - vkCreateSamplerYcbcrConversion*: proc (device: VkDevic, pCreateInfo: ptr VkSamplerYcbcrConversionCreateInfo, pAllocator: ptr VkAllocationCallbacks, pYcbcrConversion: ptr VkSamplerYcbcrConversion): VkResult {.stdcall.} - vkDestroySamplerYcbcrConversion*: proc (device: VkDevic, ycbcrConversion: VkSamplerYcbcrConversio, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkGetDeviceQueue2*: proc (device: VkDevic, pQueueInfo: ptr VkDeviceQueueInfo2, pQueue: ptr VkQueue): void {.stdcall.} - vkCreateValidationCacheEXT*: proc (device: VkDevic, pCreateInfo: ptr VkValidationCacheCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pValidationCache: ptr VkValidationCacheEXT): VkResult {.stdcall.} - vkDestroyValidationCacheEXT*: proc (device: VkDevic, validationCache: VkValidationCacheEX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkGetValidationCacheDataEXT*: proc (device: VkDevic, validationCache: VkValidationCacheEX, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.} - vkMergeValidationCachesEXT*: proc (device: VkDevic, dstCache: VkValidationCacheEX, srcCacheCount: uint32_, pSrcCaches: ptr VkValidationCacheEXT): VkResult {.stdcall.} - vkGetDescriptorSetLayoutSupport*: proc (device: VkDevic, pCreateInfo: ptr VkDescriptorSetLayoutCreateInfo, pSupport: ptr VkDescriptorSetLayoutSupport): void {.stdcall.} - vkGetSwapchainGrallocUsageANDROID*: proc (device: VkDevic, format: VkForma, imageUsage: VkImageUsageFlag, grallocUsage: ptr int): VkResult {.stdcall.} - vkGetSwapchainGrallocUsage2ANDROID*: proc (device: VkDevic, format: VkForma, imageUsage: VkImageUsageFlag, swapchainImageUsage: VkSwapchainImageUsageFlagsANDROI, grallocConsumerUsage: ptr uint64, grallocProducerUsage: ptr uint64): VkResult {.stdcall.} - vkAcquireImageANDROID*: proc (device: VkDevic, image: VkImag, nativeFenceFd: in, semaphore: VkSemaphor, fence: VkFenc): VkResult {.stdcall.} - vkQueueSignalReleaseImageANDROID*: proc (queue: VkQueu, waitSemaphoreCount: uint32_, pWaitSemaphores: ptr VkSemaphore, image: VkImag, pNativeFenceFd: ptr int): VkResult {.stdcall.} - vkGetShaderInfoAMD*: proc (device: VkDevic, pipeline: VkPipelin, shaderStage: VkShaderStageFlagBit, infoType: VkShaderInfoTypeAM, pInfoSize: ptr uint, pInfo: pointer): VkResult {.stdcall.} - vkSetLocalDimmingAMD*: proc (device: VkDevic, swapChain: VkSwapchainKH, localDimmingEnable: VkBool3): void {.stdcall.} - vkGetPhysicalDeviceCalibrateableTimeDomainsKHR*: proc (physicalDevice: VkPhysicalDevic, pTimeDomainCount: ptr uint32, pTimeDomains: ptr VkTimeDomainKHR): VkResult {.stdcall.} - vkGetCalibratedTimestampsKHR*: proc (device: VkDevic, timestampCount: uint32_, pTimestampInfos: ptr VkCalibratedTimestampInfoKHR, pTimestamps: ptr uint64, pMaxDeviation: ptr uint64): VkResult {.stdcall.} - vkSetDebugUtilsObjectNameEXT*: proc (device: VkDevic, pNameInfo: ptr VkDebugUtilsObjectNameInfoEXT): VkResult {.stdcall.} - vkSetDebugUtilsObjectTagEXT*: proc (device: VkDevic, pTagInfo: ptr VkDebugUtilsObjectTagInfoEXT): VkResult {.stdcall.} - vkQueueBeginDebugUtilsLabelEXT*: proc (queue: VkQueu, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.} - vkQueueEndDebugUtilsLabelEXT*: proc (queue: VkQueu): void {.stdcall.} - vkQueueInsertDebugUtilsLabelEXT*: proc (queue: VkQueu, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.} - vkCmdBeginDebugUtilsLabelEXT*: proc (commandBuffer: VkCommandBuffe, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.} - vkCmdEndDebugUtilsLabelEXT*: proc (commandBuffer: VkCommandBuffe): void {.stdcall.} - vkCmdInsertDebugUtilsLabelEXT*: proc (commandBuffer: VkCommandBuffe, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.} - vkCreateDebugUtilsMessengerEXT*: proc (instance: VkInstanc, pCreateInfo: ptr VkDebugUtilsMessengerCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pMessenger: ptr VkDebugUtilsMessengerEXT): VkResult {.stdcall.} - vkDestroyDebugUtilsMessengerEXT*: proc (instance: VkInstanc, messenger: VkDebugUtilsMessengerEX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkSubmitDebugUtilsMessageEXT*: proc (instance: VkInstanc, messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEX, messageTypes: VkDebugUtilsMessageTypeFlagsEX, pCallbackData: ptr VkDebugUtilsMessengerCallbackDataEXT): void {.stdcall.} - vkGetMemoryHostPointerPropertiesEXT*: proc (device: VkDevic, handleType: VkExternalMemoryHandleTypeFlagBit, pHostPointer: pointer, pMemoryHostPointerProperties: ptr VkMemoryHostPointerPropertiesEXT): VkResult {.stdcall.} - vkCmdWriteBufferMarkerAMD*: proc (commandBuffer: VkCommandBuffe, pipelineStage: VkPipelineStageFlagBit, dstBuffer: VkBuffe, dstOffset: VkDeviceSiz, marker: uint32_): void {.stdcall.} - vkCreateRenderPass2*: proc (device: VkDevic, pCreateInfo: ptr VkRenderPassCreateInfo2, pAllocator: ptr VkAllocationCallbacks, pRenderPass: ptr VkRenderPass): VkResult {.stdcall.} - vkCmdBeginRenderPass2*: proc (commandBuffer: VkCommandBuffe, pRenderPassBegin: ptr VkRenderPassBeginInfo , pSubpassBeginInfo: ptr VkSubpassBeginInfo ): void {.stdcall.} - vkCmdNextSubpass2*: proc (commandBuffer: VkCommandBuffe, pSubpassBeginInfo: ptr VkSubpassBeginInfo , pSubpassEndInfo: ptr VkSubpassEndInfo ): void {.stdcall.} - vkCmdEndRenderPass2*: proc (commandBuffer: VkCommandBuffe, pSubpassEndInfo: ptr VkSubpassEndInfo ): void {.stdcall.} - vkGetSemaphoreCounterValue*: proc (device: VkDevic, semaphore: VkSemaphor, pValue: ptr uint64): VkResult {.stdcall.} - vkWaitSemaphores*: proc (device: VkDevic, pWaitInfo: ptr VkSemaphoreWaitInfo, timeout: uint64_): VkResult {.stdcall.} - vkSignalSemaphore*: proc (device: VkDevic, pSignalInfo: ptr VkSemaphoreSignalInfo): VkResult {.stdcall.} - vkGetAndroidHardwareBufferPropertiesANDROID*: proc (device: VkDevic, buffer: ptr AHardwareBuffer, pProperties: ptr VkAndroidHardwareBufferPropertiesANDROID): VkResult {.stdcall.} - vkGetMemoryAndroidHardwareBufferANDROID*: proc (device: VkDevic, pInfo: ptr VkMemoryGetAndroidHardwareBufferInfoANDROID, pBuffer: ptr ptr AHardwareBuffer): VkResult {.stdcall.} - vkCmdDrawIndirectCount*: proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, countBuffer: VkBuffe, countBufferOffset: VkDeviceSiz, maxDrawCount: uint32_, stride: uint32_): void {.stdcall.} - vkCmdDrawIndexedIndirectCount*: proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, countBuffer: VkBuffe, countBufferOffset: VkDeviceSiz, maxDrawCount: uint32_, stride: uint32_): void {.stdcall.} - vkCmdSetCheckpointNV*: proc (commandBuffer: VkCommandBuffe, pCheckpointMarker: pointer): void {.stdcall.} - vkGetQueueCheckpointDataNV*: proc (queue: VkQueu, pCheckpointDataCount: ptr uint32, pCheckpointData: ptr VkCheckpointDataNV): void {.stdcall.} - vkCmdBindTransformFeedbackBuffersEXT*: proc (commandBuffer: VkCommandBuffe, firstBinding: uint32_, bindingCount: uint32_, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize, pSizes: ptr VkDeviceSize): void {.stdcall.} - vkCmdBeginTransformFeedbackEXT*: proc (commandBuffer: VkCommandBuffe, firstCounterBuffer: uint32_, counterBufferCount: uint32_, pCounterBuffers: ptr VkBuffer, pCounterBufferOffsets: ptr VkDeviceSize): void {.stdcall.} - vkCmdEndTransformFeedbackEXT*: proc (commandBuffer: VkCommandBuffe, firstCounterBuffer: uint32_, counterBufferCount: uint32_, pCounterBuffers: ptr VkBuffer, pCounterBufferOffsets: ptr VkDeviceSize): void {.stdcall.} - vkCmdBeginQueryIndexedEXT*: proc (commandBuffer: VkCommandBuffe, queryPool: VkQueryPoo, query: uint32_, flags: VkQueryControlFlag, index: uint32_): void {.stdcall.} - vkCmdEndQueryIndexedEXT*: proc (commandBuffer: VkCommandBuffe, queryPool: VkQueryPoo, query: uint32_, index: uint32_): void {.stdcall.} - vkCmdDrawIndirectByteCountEXT*: proc (commandBuffer: VkCommandBuffe, instanceCount: uint32_, firstInstance: uint32_, counterBuffer: VkBuffe, counterBufferOffset: VkDeviceSiz, counterOffset: uint32_, vertexStride: uint32_): void {.stdcall.} - vkCmdSetExclusiveScissorNV*: proc (commandBuffer: VkCommandBuffe, firstExclusiveScissor: uint32_, exclusiveScissorCount: uint32_, pExclusiveScissors: ptr VkRect2D): void {.stdcall.} - vkCmdSetExclusiveScissorEnableNV*: proc (commandBuffer: VkCommandBuffe, firstExclusiveScissor: uint32_, exclusiveScissorCount: uint32_, pExclusiveScissorEnables: ptr VkBool32): void {.stdcall.} - vkCmdBindShadingRateImageNV*: proc (commandBuffer: VkCommandBuffe, imageView: VkImageVie, imageLayout: VkImageLayou): void {.stdcall.} - vkCmdSetViewportShadingRatePaletteNV*: proc (commandBuffer: VkCommandBuffe, firstViewport: uint32_, viewportCount: uint32_, pShadingRatePalettes: ptr VkShadingRatePaletteNV): void {.stdcall.} - vkCmdSetCoarseSampleOrderNV*: proc (commandBuffer: VkCommandBuffe, sampleOrderType: VkCoarseSampleOrderTypeN, customSampleOrderCount: uint32_, pCustomSampleOrders: ptr VkCoarseSampleOrderCustomNV): void {.stdcall.} - vkCmdDrawMeshTasksNV*: proc (commandBuffer: VkCommandBuffe, taskCount: uint32_, firstTask: uint32_): void {.stdcall.} - vkCmdDrawMeshTasksIndirectNV*: proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, drawCount: uint32_, stride: uint32_): void {.stdcall.} - vkCmdDrawMeshTasksIndirectCountNV*: proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, countBuffer: VkBuffe, countBufferOffset: VkDeviceSiz, maxDrawCount: uint32_, stride: uint32_): void {.stdcall.} - vkCmdDrawMeshTasksEXT*: proc (commandBuffer: VkCommandBuffe, groupCountX: uint32_, groupCountY: uint32_, groupCountZ: uint32_): void {.stdcall.} - vkCmdDrawMeshTasksIndirectEXT*: proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, drawCount: uint32_, stride: uint32_): void {.stdcall.} - vkCmdDrawMeshTasksIndirectCountEXT*: proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, countBuffer: VkBuffe, countBufferOffset: VkDeviceSiz, maxDrawCount: uint32_, stride: uint32_): void {.stdcall.} - vkCompileDeferredNV*: proc (device: VkDevic, pipeline: VkPipelin, shader: uint32_): VkResult {.stdcall.} - vkCreateAccelerationStructureNV*: proc (device: VkDevic, pCreateInfo: ptr VkAccelerationStructureCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pAccelerationStructure: ptr VkAccelerationStructureNV): VkResult {.stdcall.} - vkCmdBindInvocationMaskHUAWEI*: proc (commandBuffer: VkCommandBuffe, imageView: VkImageVie, imageLayout: VkImageLayou): void {.stdcall.} - vkDestroyAccelerationStructureKHR*: proc (device: VkDevic, accelerationStructure: VkAccelerationStructureKH, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkDestroyAccelerationStructureNV*: proc (device: VkDevic, accelerationStructure: VkAccelerationStructureN, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkGetAccelerationStructureMemoryRequirementsNV*: proc (device: VkDevic, pInfo: ptr VkAccelerationStructureMemoryRequirementsInfoNV, pMemoryRequirements: ptr VkMemoryRequirements2KHR): void {.stdcall.} - vkBindAccelerationStructureMemoryNV*: proc (device: VkDevic, bindInfoCount: uint32_, pBindInfos: ptr VkBindAccelerationStructureMemoryInfoNV): VkResult {.stdcall.} - vkCmdCopyAccelerationStructureNV*: proc (commandBuffer: VkCommandBuffe, dst: VkAccelerationStructureN, src: VkAccelerationStructureN, mode: VkCopyAccelerationStructureModeKH): void {.stdcall.} - vkCmdCopyAccelerationStructureKHR*: proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkCopyAccelerationStructureInfoKHR): void {.stdcall.} - vkCopyAccelerationStructureKHR*: proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pInfo: ptr VkCopyAccelerationStructureInfoKHR): VkResult {.stdcall.} - vkCmdCopyAccelerationStructureToMemoryKHR*: proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR): void {.stdcall.} - vkCopyAccelerationStructureToMemoryKHR*: proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR): VkResult {.stdcall.} - vkCmdCopyMemoryToAccelerationStructureKHR*: proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR): void {.stdcall.} - vkCopyMemoryToAccelerationStructureKHR*: proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR): VkResult {.stdcall.} - vkCmdWriteAccelerationStructuresPropertiesKHR*: proc (commandBuffer: VkCommandBuffe, accelerationStructureCount: uint32_, pAccelerationStructures: ptr VkAccelerationStructureKHR, queryType: VkQueryTyp, queryPool: VkQueryPoo, firstQuery: uint32_): void {.stdcall.} - vkCmdWriteAccelerationStructuresPropertiesNV*: proc (commandBuffer: VkCommandBuffe, accelerationStructureCount: uint32_, pAccelerationStructures: ptr VkAccelerationStructureNV, queryType: VkQueryTyp, queryPool: VkQueryPoo, firstQuery: uint32_): void {.stdcall.} - vkCmdBuildAccelerationStructureNV*: proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkAccelerationStructureInfoNV, instanceData: VkBuffe, instanceOffset: VkDeviceSiz, update: VkBool3, dst: VkAccelerationStructureN, src: VkAccelerationStructureN, scratch: VkBuffe, scratchOffset: VkDeviceSiz): void {.stdcall.} - vkWriteAccelerationStructuresPropertiesKHR*: proc (device: VkDevic, accelerationStructureCount: uint32_, pAccelerationStructures: ptr VkAccelerationStructureKHR, queryType: VkQueryTyp, dataSize: size_, pData: pointer, stride: size_): VkResult {.stdcall.} - vkCmdTraceRaysKHR*: proc (commandBuffer: VkCommandBuffe, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, width: uint32_, height: uint32_, depth: uint32_): void {.stdcall.} - vkCmdTraceRaysNV*: proc (commandBuffer: VkCommandBuffe, raygenShaderBindingTableBuffer: VkBuffe, raygenShaderBindingOffset: VkDeviceSiz, missShaderBindingTableBuffer: VkBuffe, missShaderBindingOffset: VkDeviceSiz, missShaderBindingStride: VkDeviceSiz, hitShaderBindingTableBuffer: VkBuffe, hitShaderBindingOffset: VkDeviceSiz, hitShaderBindingStride: VkDeviceSiz, callableShaderBindingTableBuffer: VkBuffe, callableShaderBindingOffset: VkDeviceSiz, callableShaderBindingStride: VkDeviceSiz, width: uint32_, height: uint32_, depth: uint32_): void {.stdcall.} - vkGetRayTracingShaderGroupHandlesKHR*: proc (device: VkDevic, pipeline: VkPipelin, firstGroup: uint32_, groupCount: uint32_, dataSize: size_, pData: pointer): VkResult {.stdcall.} - vkGetRayTracingCaptureReplayShaderGroupHandlesKHR*: proc (device: VkDevic, pipeline: VkPipelin, firstGroup: uint32_, groupCount: uint32_, dataSize: size_, pData: pointer): VkResult {.stdcall.} - vkGetAccelerationStructureHandleNV*: proc (device: VkDevic, accelerationStructure: VkAccelerationStructureN, dataSize: size_, pData: pointer): VkResult {.stdcall.} - vkCreateRayTracingPipelinesNV*: proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} - vkCreateRayTracingPipelinesNV*: proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} - vkCreateRayTracingPipelinesKHR*: proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} - vkCreateRayTracingPipelinesKHR*: proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} - vkGetPhysicalDeviceCooperativeMatrixPropertiesNV*: proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkCooperativeMatrixPropertiesNV): VkResult {.stdcall.} - vkCmdTraceRaysIndirectKHR*: proc (commandBuffer: VkCommandBuffe, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, indirectDeviceAddress: VkDeviceAddres): void {.stdcall.} - vkCmdTraceRaysIndirect2KHR*: proc (commandBuffer: VkCommandBuffe, indirectDeviceAddress: VkDeviceAddres): void {.stdcall.} - vkGetDeviceAccelerationStructureCompatibilityKHR*: proc (device: VkDevic, pVersionInfo: ptr VkAccelerationStructureVersionInfoKHR, pCompatibility: ptr VkAccelerationStructureCompatibilityKHR): void {.stdcall.} - vkGetRayTracingShaderGroupStackSizeKHR*: proc (device: VkDevic, pipeline: VkPipelin, group: uint32_, groupShader: VkShaderGroupShaderKH): VkDeviceSize {.stdcall.} - vkCmdSetRayTracingPipelineStackSizeKHR*: proc (commandBuffer: VkCommandBuffe, pipelineStackSize: uint32_): void {.stdcall.} - vkGetImageViewHandleNVX*: proc (device: VkDevic, pInfo: ptr VkImageViewHandleInfoNVX): uint32 {.stdcall.} - vkGetImageViewAddressNVX*: proc (device: VkDevic, imageView: VkImageVie, pProperties: ptr VkImageViewAddressPropertiesNVX): VkResult {.stdcall.} - vkGetPhysicalDeviceSurfacePresentModes2EXT*: proc (physicalDevice: VkPhysicalDevic, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pPresentModeCount: ptr uint32, pPresentModes: ptr VkPresentModeKHR): VkResult {.stdcall.} - vkGetDeviceGroupSurfacePresentModes2EXT*: proc (device: VkDevic, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pModes: ptr VkDeviceGroupPresentModeFlagsKHR): VkResult {.stdcall.} - vkAcquireFullScreenExclusiveModeEXT*: proc (device: VkDevic, swapchain: VkSwapchainKH): VkResult {.stdcall.} - vkReleaseFullScreenExclusiveModeEXT*: proc (device: VkDevic, swapchain: VkSwapchainKH): VkResult {.stdcall.} - vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR*: proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, pCounterCount: ptr uint32, pCounters: ptr VkPerformanceCounterKHR, pCounterDescriptions: ptr VkPerformanceCounterDescriptionKHR): VkResult {.stdcall.} - vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR*: proc (physicalDevice: VkPhysicalDevic, pPerformanceQueryCreateInfo: ptr VkQueryPoolPerformanceCreateInfoKHR, pNumPasses: ptr uint32): void {.stdcall.} - vkAcquireProfilingLockKHR*: proc (device: VkDevic, pInfo: ptr VkAcquireProfilingLockInfoKHR): VkResult {.stdcall.} - vkReleaseProfilingLockKHR*: proc (device: VkDevic): void {.stdcall.} - vkGetImageDrmFormatModifierPropertiesEXT*: proc (device: VkDevic, image: VkImag, pProperties: ptr VkImageDrmFormatModifierPropertiesEXT): VkResult {.stdcall.} - vkGetBufferOpaqueCaptureAddress*: proc (device: VkDevic, pInfo: ptr VkBufferDeviceAddressInfo): uint64 {.stdcall.} - vkGetBufferDeviceAddress*: proc (device: VkDevic, pInfo: ptr VkBufferDeviceAddressInfo): VkDeviceAddress {.stdcall.} - vkCreateHeadlessSurfaceEXT*: proc (instance: VkInstanc, pCreateInfo: ptr VkHeadlessSurfaceCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} - vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV*: proc (physicalDevice: VkPhysicalDevic, pCombinationCount: ptr uint32, pCombinations: ptr VkFramebufferMixedSamplesCombinationNV): VkResult {.stdcall.} - vkInitializePerformanceApiINTEL*: proc (device: VkDevic, pInitializeInfo: ptr VkInitializePerformanceApiInfoINTEL): VkResult {.stdcall.} - vkUninitializePerformanceApiINTEL*: proc (device: VkDevic): void {.stdcall.} - vkCmdSetPerformanceMarkerINTEL*: proc (commandBuffer: VkCommandBuffe, pMarkerInfo: ptr VkPerformanceMarkerInfoINTEL): VkResult {.stdcall.} - vkCmdSetPerformanceStreamMarkerINTEL*: proc (commandBuffer: VkCommandBuffe, pMarkerInfo: ptr VkPerformanceStreamMarkerInfoINTEL): VkResult {.stdcall.} - vkCmdSetPerformanceOverrideINTEL*: proc (commandBuffer: VkCommandBuffe, pOverrideInfo: ptr VkPerformanceOverrideInfoINTEL): VkResult {.stdcall.} - vkAcquirePerformanceConfigurationINTEL*: proc (device: VkDevic, pAcquireInfo: ptr VkPerformanceConfigurationAcquireInfoINTEL, pConfiguration: ptr VkPerformanceConfigurationINTEL): VkResult {.stdcall.} - vkReleasePerformanceConfigurationINTEL*: proc (device: VkDevic, configuration: VkPerformanceConfigurationINTE): VkResult {.stdcall.} - vkQueueSetPerformanceConfigurationINTEL*: proc (queue: VkQueu, configuration: VkPerformanceConfigurationINTE): VkResult {.stdcall.} - vkGetPerformanceParameterINTEL*: proc (device: VkDevic, parameter: VkPerformanceParameterTypeINTE, pValue: ptr VkPerformanceValueINTEL): VkResult {.stdcall.} - vkGetDeviceMemoryOpaqueCaptureAddress*: proc (device: VkDevic, pInfo: ptr VkDeviceMemoryOpaqueCaptureAddressInfo): uint64 {.stdcall.} - vkGetPipelineExecutablePropertiesKHR*: proc (device: VkDevic, pPipelineInfo: ptr VkPipelineInfoKHR , pExecutableCount: ptr uint32, pProperties: ptr VkPipelineExecutablePropertiesKHR): VkResult {.stdcall.} - vkGetPipelineExecutableStatisticsKHR*: proc (device: VkDevic, pExecutableInfo: ptr VkPipelineExecutableInfoKHR , pStatisticCount: ptr uint32, pStatistics: ptr VkPipelineExecutableStatisticKHR): VkResult {.stdcall.} - vkGetPipelineExecutableInternalRepresentationsKHR*: proc (device: VkDevic, pExecutableInfo: ptr VkPipelineExecutableInfoKHR , pInternalRepresentationCount: ptr uint32, pInternalRepresentations: ptr VkPipelineExecutableInternalRepresentationKHR): VkResult {.stdcall.} - vkCmdSetLineStippleKHR*: proc (commandBuffer: VkCommandBuffe, lineStippleFactor: uint32_, lineStipplePattern: uint16_): void {.stdcall.} - vkGetFaultData*: proc (device: VkDevic, faultQueryBehavior: VkFaultQueryBehavio, pUnrecordedFaults: ptr VkBool32, pFaultCount: ptr uint32, pFaults: ptr VkFaultData): VkResult {.stdcall.} - vkGetPhysicalDeviceToolProperties*: proc (physicalDevice: VkPhysicalDevic, pToolCount: ptr uint32, pToolProperties: ptr VkPhysicalDeviceToolProperties): VkResult {.stdcall.} - vkCreateAccelerationStructureKHR*: proc (device: VkDevic, pCreateInfo: ptr VkAccelerationStructureCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pAccelerationStructure: ptr VkAccelerationStructureKHR ): VkResult {.stdcall.} - vkCmdBuildAccelerationStructuresKHR*: proc (commandBuffer: VkCommandBuffe, infoCount: uint32_, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR): void {.stdcall.} - vkCmdBuildAccelerationStructuresIndirectKHR*: proc (commandBuffer: VkCommandBuffe, infoCount: uint32_, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, pIndirectDeviceAddresses: ptr VkDeviceAddress , pIndirectStrides: ptr uint32 , ppMaxPrimitiveCounts: ptr ptr uint32 ): void {.stdcall.} - vkBuildAccelerationStructuresKHR*: proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, infoCount: uint32_, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR): VkResult {.stdcall.} - vkGetAccelerationStructureDeviceAddressKHR*: proc (device: VkDevic, pInfo: ptr VkAccelerationStructureDeviceAddressInfoKHR): VkDeviceAddress {.stdcall.} - vkCreateDeferredOperationKHR*: proc (device: VkDevic, pAllocator: ptr VkAllocationCallbacks, pDeferredOperation: ptr VkDeferredOperationKHR): VkResult {.stdcall.} - vkDestroyDeferredOperationKHR*: proc (device: VkDevic, operation: VkDeferredOperationKH, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkGetDeferredOperationMaxConcurrencyKHR*: proc (device: VkDevic, operation: VkDeferredOperationKH): uint32 {.stdcall.} - vkGetDeferredOperationResultKHR*: proc (device: VkDevic, operation: VkDeferredOperationKH): VkResult {.stdcall.} - vkDeferredOperationJoinKHR*: proc (device: VkDevic, operation: VkDeferredOperationKH): VkResult {.stdcall.} - vkGetPipelineIndirectMemoryRequirementsNV*: proc (device: VkDevic, pCreateInfo: ptr VkComputePipelineCreateInfo, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.} - vkGetPipelineIndirectDeviceAddressNV*: proc (device: VkDevic, pInfo: ptr VkPipelineIndirectDeviceAddressInfoNV): VkDeviceAddress {.stdcall.} - vkCmdSetCullMode*: proc (commandBuffer: VkCommandBuffe, cullMode: VkCullModeFlag): void {.stdcall.} - vkCmdSetFrontFace*: proc (commandBuffer: VkCommandBuffe, frontFace: VkFrontFac): void {.stdcall.} - vkCmdSetPrimitiveTopology*: proc (commandBuffer: VkCommandBuffe, primitiveTopology: VkPrimitiveTopolog): void {.stdcall.} - vkCmdSetViewportWithCount*: proc (commandBuffer: VkCommandBuffe, viewportCount: uint32_, pViewports: ptr VkViewport): void {.stdcall.} - vkCmdSetScissorWithCount*: proc (commandBuffer: VkCommandBuffe, scissorCount: uint32_, pScissors: ptr VkRect2D): void {.stdcall.} - vkCmdBindIndexBuffer2KHR*: proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, size: VkDeviceSiz, indexType: VkIndexTyp): void {.stdcall.} - vkCmdBindVertexBuffers2*: proc (commandBuffer: VkCommandBuffe, firstBinding: uint32_, bindingCount: uint32_, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize, pSizes: ptr VkDeviceSize, pStrides: ptr VkDeviceSize): void {.stdcall.} - vkCmdSetDepthTestEnable*: proc (commandBuffer: VkCommandBuffe, depthTestEnable: VkBool3): void {.stdcall.} - vkCmdSetDepthWriteEnable*: proc (commandBuffer: VkCommandBuffe, depthWriteEnable: VkBool3): void {.stdcall.} - vkCmdSetDepthCompareOp*: proc (commandBuffer: VkCommandBuffe, depthCompareOp: VkCompareO): void {.stdcall.} - vkCmdSetDepthBoundsTestEnable*: proc (commandBuffer: VkCommandBuffe, depthBoundsTestEnable: VkBool3): void {.stdcall.} - vkCmdSetStencilTestEnable*: proc (commandBuffer: VkCommandBuffe, stencilTestEnable: VkBool3): void {.stdcall.} - vkCmdSetStencilOp*: proc (commandBuffer: VkCommandBuffe, faceMask: VkStencilFaceFlag, failOp: VkStencilO, passOp: VkStencilO, depthFailOp: VkStencilO, compareOp: VkCompareO): void {.stdcall.} - vkCmdSetPatchControlPointsEXT*: proc (commandBuffer: VkCommandBuffe, patchControlPoints: uint32_): void {.stdcall.} - vkCmdSetRasterizerDiscardEnable*: proc (commandBuffer: VkCommandBuffe, rasterizerDiscardEnable: VkBool3): void {.stdcall.} - vkCmdSetDepthBiasEnable*: proc (commandBuffer: VkCommandBuffe, depthBiasEnable: VkBool3): void {.stdcall.} - vkCmdSetLogicOpEXT*: proc (commandBuffer: VkCommandBuffe, logicOp: VkLogicO): void {.stdcall.} - vkCmdSetPrimitiveRestartEnable*: proc (commandBuffer: VkCommandBuffe, primitiveRestartEnable: VkBool3): void {.stdcall.} - vkCmdSetTessellationDomainOriginEXT*: proc (commandBuffer: VkCommandBuffe, domainOrigin: VkTessellationDomainOrigi): void {.stdcall.} - vkCmdSetDepthClampEnableEXT*: proc (commandBuffer: VkCommandBuffe, depthClampEnable: VkBool3): void {.stdcall.} - vkCmdSetPolygonModeEXT*: proc (commandBuffer: VkCommandBuffe, polygonMode: VkPolygonMod): void {.stdcall.} - vkCmdSetRasterizationSamplesEXT*: proc (commandBuffer: VkCommandBuffe, rasterizationSamples: VkSampleCountFlagBit): void {.stdcall.} - vkCmdSetSampleMaskEXT*: proc (commandBuffer: VkCommandBuffe, samples: VkSampleCountFlagBit, pSampleMask: ptr VkSampleMask ): void {.stdcall.} - vkCmdSetAlphaToCoverageEnableEXT*: proc (commandBuffer: VkCommandBuffe, alphaToCoverageEnable: VkBool3): void {.stdcall.} - vkCmdSetAlphaToOneEnableEXT*: proc (commandBuffer: VkCommandBuffe, alphaToOneEnable: VkBool3): void {.stdcall.} - vkCmdSetLogicOpEnableEXT*: proc (commandBuffer: VkCommandBuffe, logicOpEnable: VkBool3): void {.stdcall.} - vkCmdSetColorBlendEnableEXT*: proc (commandBuffer: VkCommandBuffe, firstAttachment: uint32_, attachmentCount: uint32_, pColorBlendEnables: ptr VkBool32): void {.stdcall.} - vkCmdSetColorBlendEquationEXT*: proc (commandBuffer: VkCommandBuffe, firstAttachment: uint32_, attachmentCount: uint32_, pColorBlendEquations: ptr VkColorBlendEquationEXT): void {.stdcall.} - vkCmdSetColorWriteMaskEXT*: proc (commandBuffer: VkCommandBuffe, firstAttachment: uint32_, attachmentCount: uint32_, pColorWriteMasks: ptr VkColorComponentFlags): void {.stdcall.} - vkCmdSetRasterizationStreamEXT*: proc (commandBuffer: VkCommandBuffe, rasterizationStream: uint32_): void {.stdcall.} - vkCmdSetConservativeRasterizationModeEXT*: proc (commandBuffer: VkCommandBuffe, conservativeRasterizationMode: VkConservativeRasterizationModeEX): void {.stdcall.} - vkCmdSetExtraPrimitiveOverestimationSizeEXT*: proc (commandBuffer: VkCommandBuffe, extraPrimitiveOverestimationSize: floa): void {.stdcall.} - vkCmdSetDepthClipEnableEXT*: proc (commandBuffer: VkCommandBuffe, depthClipEnable: VkBool3): void {.stdcall.} - vkCmdSetSampleLocationsEnableEXT*: proc (commandBuffer: VkCommandBuffe, sampleLocationsEnable: VkBool3): void {.stdcall.} - vkCmdSetColorBlendAdvancedEXT*: proc (commandBuffer: VkCommandBuffe, firstAttachment: uint32_, attachmentCount: uint32_, pColorBlendAdvanced: ptr VkColorBlendAdvancedEXT): void {.stdcall.} - vkCmdSetProvokingVertexModeEXT*: proc (commandBuffer: VkCommandBuffe, provokingVertexMode: VkProvokingVertexModeEX): void {.stdcall.} - vkCmdSetLineRasterizationModeEXT*: proc (commandBuffer: VkCommandBuffe, lineRasterizationMode: VkLineRasterizationModeEX): void {.stdcall.} - vkCmdSetLineStippleEnableEXT*: proc (commandBuffer: VkCommandBuffe, stippledLineEnable: VkBool3): void {.stdcall.} - vkCmdSetDepthClipNegativeOneToOneEXT*: proc (commandBuffer: VkCommandBuffe, negativeOneToOne: VkBool3): void {.stdcall.} - vkCmdSetViewportWScalingEnableNV*: proc (commandBuffer: VkCommandBuffe, viewportWScalingEnable: VkBool3): void {.stdcall.} - vkCmdSetViewportSwizzleNV*: proc (commandBuffer: VkCommandBuffe, firstViewport: uint32_, viewportCount: uint32_, pViewportSwizzles: ptr VkViewportSwizzleNV): void {.stdcall.} - vkCmdSetCoverageToColorEnableNV*: proc (commandBuffer: VkCommandBuffe, coverageToColorEnable: VkBool3): void {.stdcall.} - vkCmdSetCoverageToColorLocationNV*: proc (commandBuffer: VkCommandBuffe, coverageToColorLocation: uint32_): void {.stdcall.} - vkCmdSetCoverageModulationModeNV*: proc (commandBuffer: VkCommandBuffe, coverageModulationMode: VkCoverageModulationModeN): void {.stdcall.} - vkCmdSetCoverageModulationTableEnableNV*: proc (commandBuffer: VkCommandBuffe, coverageModulationTableEnable: VkBool3): void {.stdcall.} - vkCmdSetCoverageModulationTableNV*: proc (commandBuffer: VkCommandBuffe, coverageModulationTableCount: uint32_, pCoverageModulationTable: ptr float32): void {.stdcall.} - vkCmdSetShadingRateImageEnableNV*: proc (commandBuffer: VkCommandBuffe, shadingRateImageEnable: VkBool3): void {.stdcall.} - vkCmdSetCoverageReductionModeNV*: proc (commandBuffer: VkCommandBuffe, coverageReductionMode: VkCoverageReductionModeN): void {.stdcall.} - vkCmdSetRepresentativeFragmentTestEnableNV*: proc (commandBuffer: VkCommandBuffe, representativeFragmentTestEnable: VkBool3): void {.stdcall.} - vkCreatePrivateDataSlot*: proc (device: VkDevic, pCreateInfo: ptr VkPrivateDataSlotCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPrivateDataSlot: ptr VkPrivateDataSlot): VkResult {.stdcall.} - vkDestroyPrivateDataSlot*: proc (device: VkDevic, privateDataSlot: VkPrivateDataSlo, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkSetPrivateData*: proc (device: VkDevic, objectType: VkObjectTyp, objectHandle: uint64_, privateDataSlot: VkPrivateDataSlo, data: uint64_): VkResult {.stdcall.} - vkGetPrivateData*: proc (device: VkDevic, objectType: VkObjectTyp, objectHandle: uint64_, privateDataSlot: VkPrivateDataSlo, pData: ptr uint64): void {.stdcall.} - vkCmdCopyBuffer2*: proc (commandBuffer: VkCommandBuffe, pCopyBufferInfo: ptr VkCopyBufferInfo2): void {.stdcall.} - vkCmdCopyImage2*: proc (commandBuffer: VkCommandBuffe, pCopyImageInfo: ptr VkCopyImageInfo2): void {.stdcall.} - vkCmdBlitImage2*: proc (commandBuffer: VkCommandBuffe, pBlitImageInfo: ptr VkBlitImageInfo2): void {.stdcall.} - vkCmdCopyBufferToImage2*: proc (commandBuffer: VkCommandBuffe, pCopyBufferToImageInfo: ptr VkCopyBufferToImageInfo2): void {.stdcall.} - vkCmdCopyImageToBuffer2*: proc (commandBuffer: VkCommandBuffe, pCopyImageToBufferInfo: ptr VkCopyImageToBufferInfo2): void {.stdcall.} - vkCmdResolveImage2*: proc (commandBuffer: VkCommandBuffe, pResolveImageInfo: ptr VkResolveImageInfo2): void {.stdcall.} - vkCmdRefreshObjectsKHR*: proc (commandBuffer: VkCommandBuffe, pRefreshObjects: ptr VkRefreshObjectListKHR): void {.stdcall.} - vkGetPhysicalDeviceRefreshableObjectTypesKHR*: proc (physicalDevice: VkPhysicalDevic, pRefreshableObjectTypeCount: ptr uint32, pRefreshableObjectTypes: ptr VkObjectType): VkResult {.stdcall.} - vkCmdSetFragmentShadingRateKHR*: proc (commandBuffer: VkCommandBuffe, pFragmentSize: ptr VkExtent2D , combinerOps: array[2, VkFragmentShadingRateCombinerOpKH]): void {.stdcall.} - vkGetPhysicalDeviceFragmentShadingRatesKHR*: proc (physicalDevice: VkPhysicalDevic, pFragmentShadingRateCount: ptr uint32, pFragmentShadingRates: ptr VkPhysicalDeviceFragmentShadingRateKHR): VkResult {.stdcall.} - vkCmdSetFragmentShadingRateEnumNV*: proc (commandBuffer: VkCommandBuffe, shadingRate: VkFragmentShadingRateN, combinerOps: array[2, VkFragmentShadingRateCombinerOpKH]): void {.stdcall.} - vkGetAccelerationStructureBuildSizesKHR*: proc (device: VkDevic, buildType: VkAccelerationStructureBuildTypeKH, pBuildInfo: ptr VkAccelerationStructureBuildGeometryInfoKHR , pMaxPrimitiveCounts: ptr uint32 , pSizeInfo: ptr VkAccelerationStructureBuildSizesInfoKHR ): void {.stdcall.} - vkCmdSetVertexInputEXT*: proc (commandBuffer: VkCommandBuffe, vertexBindingDescriptionCount: uint32_, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription2EXT, vertexAttributeDescriptionCount: uint32_, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription2EXT): void {.stdcall.} - vkCmdSetColorWriteEnableEXT*: proc (commandBuffer: VkCommandBuffe, attachmentCount: uint32_, pColorWriteEnables: ptr VkBool32 ): void {.stdcall.} - vkCmdSetEvent2*: proc (commandBuffer: VkCommandBuffe, event: VkEven, pDependencyInfo: ptr VkDependencyInfo ): void {.stdcall.} - vkCmdResetEvent2*: proc (commandBuffer: VkCommandBuffe, event: VkEven, stageMask: VkPipelineStageFlags): void {.stdcall.} - vkCmdWaitEvents2*: proc (commandBuffer: VkCommandBuffe, eventCount: uint32_, pEvents: ptr VkEvent , pDependencyInfos: ptr VkDependencyInfo ): void {.stdcall.} - vkCmdPipelineBarrier2*: proc (commandBuffer: VkCommandBuffe, pDependencyInfo: ptr VkDependencyInfo ): void {.stdcall.} - vkQueueSubmit2*: proc (queue: VkQueu, submitCount: uint32_, pSubmits: ptr VkSubmitInfo2 , fence: VkFenc): VkResult {.stdcall.} - vkCmdWriteTimestamp2*: proc (commandBuffer: VkCommandBuffe, stage: VkPipelineStageFlags, queryPool: VkQueryPoo, query: uint32_): void {.stdcall.} - vkCmdWriteBufferMarker2AMD*: proc (commandBuffer: VkCommandBuffe, stage: VkPipelineStageFlags, dstBuffer: VkBuffe, dstOffset: VkDeviceSiz, marker: uint32_): void {.stdcall.} - vkGetQueueCheckpointData2NV*: proc (queue: VkQueu, pCheckpointDataCount: ptr uint32, pCheckpointData: ptr VkCheckpointData2NV): void {.stdcall.} - vkCopyMemoryToImageEXT*: proc (device: VkDevic, pCopyMemoryToImageInfo: ptr VkCopyMemoryToImageInfoEXT): VkResult {.stdcall.} - vkCopyImageToMemoryEXT*: proc (device: VkDevic, pCopyImageToMemoryInfo: ptr VkCopyImageToMemoryInfoEXT): VkResult {.stdcall.} - vkCopyImageToImageEXT*: proc (device: VkDevic, pCopyImageToImageInfo: ptr VkCopyImageToImageInfoEXT): VkResult {.stdcall.} - vkTransitionImageLayoutEXT*: proc (device: VkDevic, transitionCount: uint32_, pTransitions: ptr VkHostImageLayoutTransitionInfoEXT): VkResult {.stdcall.} - vkGetCommandPoolMemoryConsumption*: proc (device: VkDevic, commandPool: VkCommandPoo, commandBuffer: VkCommandBuffe, pConsumption: ptr VkCommandPoolMemoryConsumption): void {.stdcall.} - vkGetPhysicalDeviceVideoCapabilitiesKHR*: proc (physicalDevice: VkPhysicalDevic, pVideoProfile: ptr VkVideoProfileInfoKHR, pCapabilities: ptr VkVideoCapabilitiesKHR): VkResult {.stdcall.} - vkGetPhysicalDeviceVideoFormatPropertiesKHR*: proc (physicalDevice: VkPhysicalDevic, pVideoFormatInfo: ptr VkPhysicalDeviceVideoFormatInfoKHR, pVideoFormatPropertyCount: ptr uint32, pVideoFormatProperties: ptr VkVideoFormatPropertiesKHR): VkResult {.stdcall.} - vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR*: proc (physicalDevice: VkPhysicalDevic, pQualityLevelInfo: ptr VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR, pQualityLevelProperties: ptr VkVideoEncodeQualityLevelPropertiesKHR): VkResult {.stdcall.} - vkCreateVideoSessionKHR*: proc (device: VkDevic, pCreateInfo: ptr VkVideoSessionCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pVideoSession: ptr VkVideoSessionKHR): VkResult {.stdcall.} - vkDestroyVideoSessionKHR*: proc (device: VkDevic, videoSession: VkVideoSessionKH, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkCreateVideoSessionParametersKHR*: proc (device: VkDevic, pCreateInfo: ptr VkVideoSessionParametersCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pVideoSessionParameters: ptr VkVideoSessionParametersKHR): VkResult {.stdcall.} - vkUpdateVideoSessionParametersKHR*: proc (device: VkDevic, videoSessionParameters: VkVideoSessionParametersKH, pUpdateInfo: ptr VkVideoSessionParametersUpdateInfoKHR): VkResult {.stdcall.} - vkGetEncodedVideoSessionParametersKHR*: proc (device: VkDevic, pVideoSessionParametersInfo: ptr VkVideoEncodeSessionParametersGetInfoKHR, pFeedbackInfo: ptr VkVideoEncodeSessionParametersFeedbackInfoKHR, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.} - vkDestroyVideoSessionParametersKHR*: proc (device: VkDevic, videoSessionParameters: VkVideoSessionParametersKH, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkGetVideoSessionMemoryRequirementsKHR*: proc (device: VkDevic, videoSession: VkVideoSessionKH, pMemoryRequirementsCount: ptr uint32, pMemoryRequirements: ptr VkVideoSessionMemoryRequirementsKHR): VkResult {.stdcall.} - vkBindVideoSessionMemoryKHR*: proc (device: VkDevic, videoSession: VkVideoSessionKH, bindSessionMemoryInfoCount: uint32_, pBindSessionMemoryInfos: ptr VkBindVideoSessionMemoryInfoKHR): VkResult {.stdcall.} - vkCmdDecodeVideoKHR*: proc (commandBuffer: VkCommandBuffe, pDecodeInfo: ptr VkVideoDecodeInfoKHR): void {.stdcall.} - vkCmdBeginVideoCodingKHR*: proc (commandBuffer: VkCommandBuffe, pBeginInfo: ptr VkVideoBeginCodingInfoKHR): void {.stdcall.} - vkCmdControlVideoCodingKHR*: proc (commandBuffer: VkCommandBuffe, pCodingControlInfo: ptr VkVideoCodingControlInfoKHR): void {.stdcall.} - vkCmdEndVideoCodingKHR*: proc (commandBuffer: VkCommandBuffe, pEndCodingInfo: ptr VkVideoEndCodingInfoKHR): void {.stdcall.} - vkCmdEncodeVideoKHR*: proc (commandBuffer: VkCommandBuffe, pEncodeInfo: ptr VkVideoEncodeInfoKHR): void {.stdcall.} - vkCmdDecompressMemoryNV*: proc (commandBuffer: VkCommandBuffe, decompressRegionCount: uint32_, pDecompressMemoryRegions: ptr VkDecompressMemoryRegionNV): void {.stdcall.} - vkCmdDecompressMemoryIndirectCountNV*: proc (commandBuffer: VkCommandBuffe, indirectCommandsAddress: VkDeviceAddres, indirectCommandsCountAddress: VkDeviceAddres, stride: uint32_): void {.stdcall.} - vkCreateCuModuleNVX*: proc (device: VkDevic, pCreateInfo: ptr VkCuModuleCreateInfoNVX, pAllocator: ptr VkAllocationCallbacks, pModule: ptr VkCuModuleNVX): VkResult {.stdcall.} - vkCreateCuFunctionNVX*: proc (device: VkDevic, pCreateInfo: ptr VkCuFunctionCreateInfoNVX, pAllocator: ptr VkAllocationCallbacks, pFunction: ptr VkCuFunctionNVX): VkResult {.stdcall.} - vkDestroyCuModuleNVX*: proc (device: VkDevic, module: VkCuModuleNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkDestroyCuFunctionNVX*: proc (device: VkDevic, function: VkCuFunctionNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkCmdCuLaunchKernelNVX*: proc (commandBuffer: VkCommandBuffe, pLaunchInfo: ptr VkCuLaunchInfoNVX): void {.stdcall.} - vkGetDescriptorSetLayoutSizeEXT*: proc (device: VkDevic, layout: VkDescriptorSetLayou, pLayoutSizeInBytes: ptr VkDeviceSize): void {.stdcall.} - vkGetDescriptorSetLayoutBindingOffsetEXT*: proc (device: VkDevic, layout: VkDescriptorSetLayou, binding: uint32_, pOffset: ptr VkDeviceSize): void {.stdcall.} - vkGetDescriptorEXT*: proc (device: VkDevic, pDescriptorInfo: ptr VkDescriptorGetInfoEXT, dataSize: size_, pDescriptor: pointer): void {.stdcall.} - vkCmdBindDescriptorBuffersEXT*: proc (commandBuffer: VkCommandBuffe, bufferCount: uint32_, pBindingInfos: ptr VkDescriptorBufferBindingInfoEXT): void {.stdcall.} - vkCmdSetDescriptorBufferOffsetsEXT*: proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, layout: VkPipelineLayou, firstSet: uint32_, setCount: uint32_, pBufferIndices: ptr uint32, pOffsets: ptr VkDeviceSize): void {.stdcall.} - vkCmdBindDescriptorBufferEmbeddedSamplersEXT*: proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, layout: VkPipelineLayou, set: uint32_): void {.stdcall.} - vkGetBufferOpaqueCaptureDescriptorDataEXT*: proc (device: VkDevic, pInfo: ptr VkBufferCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.} - vkGetImageOpaqueCaptureDescriptorDataEXT*: proc (device: VkDevic, pInfo: ptr VkImageCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.} - vkGetImageViewOpaqueCaptureDescriptorDataEXT*: proc (device: VkDevic, pInfo: ptr VkImageViewCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.} - vkGetSamplerOpaqueCaptureDescriptorDataEXT*: proc (device: VkDevic, pInfo: ptr VkSamplerCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.} - vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT*: proc (device: VkDevic, pInfo: ptr VkAccelerationStructureCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.} - vkSetDeviceMemoryPriorityEXT*: proc (device: VkDevic, memory: VkDeviceMemor, priority: floa): void {.stdcall.} - vkAcquireDrmDisplayEXT*: proc (physicalDevice: VkPhysicalDevic, drmFd: int32_, display: VkDisplayKH): VkResult {.stdcall.} - vkGetDrmDisplayEXT*: proc (physicalDevice: VkPhysicalDevic, drmFd: int32_, connectorId: uint32_, display: ptr VkDisplayKHR): VkResult {.stdcall.} - vkWaitForPresentKHR*: proc (device: VkDevic, swapchain: VkSwapchainKH, presentId: uint64_, timeout: uint64_): VkResult {.stdcall.} - vkCreateBufferCollectionFUCHSIA*: proc (device: VkDevic, pCreateInfo: ptr VkBufferCollectionCreateInfoFUCHSIA, pAllocator: ptr VkAllocationCallbacks, pCollection: ptr VkBufferCollectionFUCHSIA): VkResult {.stdcall.} - vkSetBufferCollectionBufferConstraintsFUCHSIA*: proc (device: VkDevic, collection: VkBufferCollectionFUCHSI, pBufferConstraintsInfo: ptr VkBufferConstraintsInfoFUCHSIA): VkResult {.stdcall.} - vkSetBufferCollectionImageConstraintsFUCHSIA*: proc (device: VkDevic, collection: VkBufferCollectionFUCHSI, pImageConstraintsInfo: ptr VkImageConstraintsInfoFUCHSIA): VkResult {.stdcall.} - vkDestroyBufferCollectionFUCHSIA*: proc (device: VkDevic, collection: VkBufferCollectionFUCHSI, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkGetBufferCollectionPropertiesFUCHSIA*: proc (device: VkDevic, collection: VkBufferCollectionFUCHSI, pProperties: ptr VkBufferCollectionPropertiesFUCHSIA): VkResult {.stdcall.} - vkCreateCudaModuleNV*: proc (device: VkDevic, pCreateInfo: ptr VkCudaModuleCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pModule: ptr VkCudaModuleNV): VkResult {.stdcall.} - vkGetCudaModuleCacheNV*: proc (device: VkDevic, module: VkCudaModuleN, pCacheSize: ptr uint, pCacheData: pointer): VkResult {.stdcall.} - vkCreateCudaFunctionNV*: proc (device: VkDevic, pCreateInfo: ptr VkCudaFunctionCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pFunction: ptr VkCudaFunctionNV): VkResult {.stdcall.} - vkDestroyCudaModuleNV*: proc (device: VkDevic, module: VkCudaModuleN, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkDestroyCudaFunctionNV*: proc (device: VkDevic, function: VkCudaFunctionN, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkCmdCudaLaunchKernelNV*: proc (commandBuffer: VkCommandBuffe, pLaunchInfo: ptr VkCudaLaunchInfoNV): void {.stdcall.} - vkCmdBeginRendering*: proc (commandBuffer: VkCommandBuffe, pRenderingInfo: ptr VkRenderingInfo ): void {.stdcall.} - vkCmdEndRendering*: proc (commandBuffer: VkCommandBuffe): void {.stdcall.} - vkGetDescriptorSetLayoutHostMappingInfoVALVE*: proc (device: VkDevic, pBindingReference: ptr VkDescriptorSetBindingReferenceVALVE, pHostMapping: ptr VkDescriptorSetLayoutHostMappingInfoVALVE): void {.stdcall.} - vkGetDescriptorSetHostMappingVALVE*: proc (device: VkDevic, descriptorSet: VkDescriptorSe, ppData: ptr pointer): void {.stdcall.} - vkCreateMicromapEXT*: proc (device: VkDevic, pCreateInfo: ptr VkMicromapCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pMicromap: ptr VkMicromapEXT ): VkResult {.stdcall.} - vkCmdBuildMicromapsEXT*: proc (commandBuffer: VkCommandBuffe, infoCount: uint32_, pInfos: ptr VkMicromapBuildInfoEXT): void {.stdcall.} - vkBuildMicromapsEXT*: proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, infoCount: uint32_, pInfos: ptr VkMicromapBuildInfoEXT): VkResult {.stdcall.} - vkDestroyMicromapEXT*: proc (device: VkDevic, micromap: VkMicromapEX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkCmdCopyMicromapEXT*: proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkCopyMicromapInfoEXT): void {.stdcall.} - vkCopyMicromapEXT*: proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pInfo: ptr VkCopyMicromapInfoEXT): VkResult {.stdcall.} - vkCmdCopyMicromapToMemoryEXT*: proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkCopyMicromapToMemoryInfoEXT): void {.stdcall.} - vkCopyMicromapToMemoryEXT*: proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pInfo: ptr VkCopyMicromapToMemoryInfoEXT): VkResult {.stdcall.} - vkCmdCopyMemoryToMicromapEXT*: proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkCopyMemoryToMicromapInfoEXT): void {.stdcall.} - vkCopyMemoryToMicromapEXT*: proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pInfo: ptr VkCopyMemoryToMicromapInfoEXT): VkResult {.stdcall.} - vkCmdWriteMicromapsPropertiesEXT*: proc (commandBuffer: VkCommandBuffe, micromapCount: uint32_, pMicromaps: ptr VkMicromapEXT, queryType: VkQueryTyp, queryPool: VkQueryPoo, firstQuery: uint32_): void {.stdcall.} - vkWriteMicromapsPropertiesEXT*: proc (device: VkDevic, micromapCount: uint32_, pMicromaps: ptr VkMicromapEXT, queryType: VkQueryTyp, dataSize: size_, pData: pointer, stride: size_): VkResult {.stdcall.} - vkGetDeviceMicromapCompatibilityEXT*: proc (device: VkDevic, pVersionInfo: ptr VkMicromapVersionInfoEXT, pCompatibility: ptr VkAccelerationStructureCompatibilityKHR): void {.stdcall.} - vkGetMicromapBuildSizesEXT*: proc (device: VkDevic, buildType: VkAccelerationStructureBuildTypeKH, pBuildInfo: ptr VkMicromapBuildInfoEXT , pSizeInfo: ptr VkMicromapBuildSizesInfoEXT ): void {.stdcall.} - vkGetShaderModuleIdentifierEXT*: proc (device: VkDevic, shaderModule: VkShaderModul, pIdentifier: ptr VkShaderModuleIdentifierEXT): void {.stdcall.} - vkGetShaderModuleCreateInfoIdentifierEXT*: proc (device: VkDevic, pCreateInfo: ptr VkShaderModuleCreateInfo, pIdentifier: ptr VkShaderModuleIdentifierEXT): void {.stdcall.} - vkGetImageSubresourceLayout2KHR*: proc (device: VkDevic, image: VkImag, pSubresource: ptr VkImageSubresource2KHR, pLayout: ptr VkSubresourceLayout2KHR): void {.stdcall.} - vkGetPipelinePropertiesEXT*: proc (device: VkDevic, pPipelineInfo: ptr VkPipelineInfoEXT, pPipelineProperties: ptr VkBaseOutStructure): VkResult {.stdcall.} - vkExportMetalObjectsEXT*: proc (device: VkDevic, pMetalObjectsInfo: ptr VkExportMetalObjectsInfoEXT): void {.stdcall.} - vkGetFramebufferTilePropertiesQCOM*: proc (device: VkDevic, framebuffer: VkFramebuffe, pPropertiesCount: ptr uint32, pProperties: ptr VkTilePropertiesQCOM): VkResult {.stdcall.} - vkGetDynamicRenderingTilePropertiesQCOM*: proc (device: VkDevic, pRenderingInfo: ptr VkRenderingInfo, pProperties: ptr VkTilePropertiesQCOM): VkResult {.stdcall.} - vkGetPhysicalDeviceOpticalFlowImageFormatsNV*: proc (physicalDevice: VkPhysicalDevic, pOpticalFlowImageFormatInfo: ptr VkOpticalFlowImageFormatInfoNV, pFormatCount: ptr uint32, pImageFormatProperties: ptr VkOpticalFlowImageFormatPropertiesNV): VkResult {.stdcall.} - vkCreateOpticalFlowSessionNV*: proc (device: VkDevic, pCreateInfo: ptr VkOpticalFlowSessionCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pSession: ptr VkOpticalFlowSessionNV): VkResult {.stdcall.} - vkDestroyOpticalFlowSessionNV*: proc (device: VkDevic, session: VkOpticalFlowSessionN, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkBindOpticalFlowSessionImageNV*: proc (device: VkDevic, session: VkOpticalFlowSessionN, bindingPoint: VkOpticalFlowSessionBindingPointN, view: VkImageVie, layout: VkImageLayou): VkResult {.stdcall.} - vkCmdOpticalFlowExecuteNV*: proc (commandBuffer: VkCommandBuffe, session: VkOpticalFlowSessionN, pExecuteInfo: ptr VkOpticalFlowExecuteInfoNV): void {.stdcall.} - vkGetDeviceFaultInfoEXT*: proc (device: VkDevic, pFaultCounts: ptr VkDeviceFaultCountsEXT, pFaultInfo: ptr VkDeviceFaultInfoEXT): VkResult {.stdcall.} - vkCmdSetDepthBias2EXT*: proc (commandBuffer: VkCommandBuffe, pDepthBiasInfo: ptr VkDepthBiasInfoEXT ): void {.stdcall.} - vkReleaseSwapchainImagesEXT*: proc (device: VkDevic, pReleaseInfo: ptr VkReleaseSwapchainImagesInfoEXT): VkResult {.stdcall.} - vkGetDeviceImageSubresourceLayoutKHR*: proc (device: VkDevic, pInfo: ptr VkDeviceImageSubresourceInfoKHR, pLayout: ptr VkSubresourceLayout2KHR): void {.stdcall.} - vkMapMemory2KHR*: proc (device: VkDevic, pMemoryMapInfo: ptr VkMemoryMapInfoKHR, ppData: ptr pointer): VkResult {.stdcall.} - vkUnmapMemory2KHR*: proc (device: VkDevic, pMemoryUnmapInfo: ptr VkMemoryUnmapInfoKHR): VkResult {.stdcall.} - vkCreateShadersEXT*: proc (device: VkDevic, createInfoCount: uint32_, pCreateInfos: ptr VkShaderCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pShaders: ptr VkShaderEXT): VkResult {.stdcall.} - vkDestroyShaderEXT*: proc (device: VkDevic, shader: VkShaderEX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkGetShaderBinaryDataEXT*: proc (device: VkDevic, shader: VkShaderEX, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.} - vkCmdBindShadersEXT*: proc (commandBuffer: VkCommandBuffe, stageCount: uint32_, pStages: ptr VkShaderStageFlagBits, pShaders: ptr VkShaderEXT): void {.stdcall.} - vkGetScreenBufferPropertiesQNX*: proc (device: VkDevic, buffer: ptr screen_buffer, pProperties: ptr VkScreenBufferPropertiesQNX): VkResult {.stdcall.} - vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR*: proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkCooperativeMatrixPropertiesKHR): VkResult {.stdcall.} - vkGetExecutionGraphPipelineScratchSizeAMDX*: proc (device: VkDevic, executionGraph: VkPipelin, pSizeInfo: ptr VkExecutionGraphPipelineScratchSizeAMDX ): VkResult {.stdcall.} - vkGetExecutionGraphPipelineNodeIndexAMDX*: proc (device: VkDevic, executionGraph: VkPipelin, pNodeInfo: ptr VkPipelineShaderStageNodeCreateInfoAMDX , pNodeIndex: ptr uint32 ): VkResult {.stdcall.} - vkCreateExecutionGraphPipelinesAMDX*: proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkExecutionGraphPipelineCreateInfoAMDX, pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.} - vkCmdInitializeGraphScratchMemoryAMDX*: proc (commandBuffer: VkCommandBuffe, scratch: VkDeviceAddres): void {.stdcall.} - vkCmdDispatchGraphAMDX*: proc (commandBuffer: VkCommandBuffe, scratch: VkDeviceAddres, pCountInfo: ptr VkDispatchGraphCountInfoAMDX ): void {.stdcall.} - vkCmdDispatchGraphIndirectAMDX*: proc (commandBuffer: VkCommandBuffe, scratch: VkDeviceAddres, pCountInfo: ptr VkDispatchGraphCountInfoAMDX ): void {.stdcall.} - vkCmdDispatchGraphIndirectCountAMDX*: proc (commandBuffer: VkCommandBuffe, scratch: VkDeviceAddres, countInfo: VkDeviceAddres): void {.stdcall.} - vkCmdBindDescriptorSets2KHR*: proc (commandBuffer: VkCommandBuffe, pBindDescriptorSetsInfo: ptr VkBindDescriptorSetsInfoKHR): void {.stdcall.} - vkCmdPushConstants2KHR*: proc (commandBuffer: VkCommandBuffe, pPushConstantsInfo: ptr VkPushConstantsInfoKHR): void {.stdcall.} - vkCmdPushDescriptorSet2KHR*: proc (commandBuffer: VkCommandBuffe, pPushDescriptorSetInfo: ptr VkPushDescriptorSetInfoKHR): void {.stdcall.} - vkCmdPushDescriptorSetWithTemplate2KHR*: proc (commandBuffer: VkCommandBuffe, pPushDescriptorSetWithTemplateInfo: ptr VkPushDescriptorSetWithTemplateInfoKHR): void {.stdcall.} - vkCmdSetDescriptorBufferOffsets2EXT*: proc (commandBuffer: VkCommandBuffe, pSetDescriptorBufferOffsetsInfo: ptr VkSetDescriptorBufferOffsetsInfoEXT): void {.stdcall.} - vkCmdBindDescriptorBufferEmbeddedSamplers2EXT*: proc (commandBuffer: VkCommandBuffe, pBindDescriptorBufferEmbeddedSamplersInfo: ptr VkBindDescriptorBufferEmbeddedSamplersInfoEXT): void {.stdcall.} - vkSetLatencySleepModeNV*: proc (device: VkDevic, swapchain: VkSwapchainKH, pSleepModeInfo: ptr VkLatencySleepModeInfoNV): VkResult {.stdcall.} - vkLatencySleepNV*: proc (device: VkDevic, swapchain: VkSwapchainKH, pSleepInfo: ptr VkLatencySleepInfoNV): VkResult {.stdcall.} - vkSetLatencyMarkerNV*: proc (device: VkDevic, swapchain: VkSwapchainKH, pLatencyMarkerInfo: ptr VkSetLatencyMarkerInfoNV): void {.stdcall.} - vkGetLatencyTimingsNV*: proc (device: VkDevic, swapchain: VkSwapchainKH, pLatencyMarkerInfo: ptr VkGetLatencyMarkerInfoNV): void {.stdcall.} - vkQueueNotifyOutOfBandNV*: proc (queue: VkQueu, pQueueTypeInfo: ptr VkOutOfBandQueueTypeInfoNV): void {.stdcall.} - vkCmdSetRenderingAttachmentLocationsKHR*: proc (commandBuffer: VkCommandBuffe, pLocationInfo: ptr VkRenderingAttachmentLocationInfoKHR): void {.stdcall.} - vkCmdSetRenderingInputAttachmentIndicesKHR*: proc (commandBuffer: VkCommandBuffe, pLocationInfo: ptr VkRenderingInputAttachmentIndexInfoKHR): void {.stdcall.} + vkDestroyInstance*: proc (instance: VkInstance, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkEnumeratePhysicalDevices*: proc (instance: VkInstance, pPhysicalDeviceCount: ptr uint32, pPhysicalDevices: ptr VkPhysicalDevice): VkResult {.stdcall.} + vkGetDeviceProcAddr*: proc (device: VkDevice, pName: cstring): PFN_vkVoidFunction {.stdcall.} + vkGetInstanceProcAddr*: proc (instance: VkInstance, pName: cstring): PFN_vkVoidFunction {.stdcall.} + vkGetPhysicalDeviceProperties*: proc (physicalDevice: VkPhysicalDevice, pProperties: ptr VkPhysicalDeviceProperties): void {.stdcall.} + vkGetPhysicalDeviceQueueFamilyProperties*: proc (physicalDevice: VkPhysicalDevice, pQueueFamilyPropertyCount: ptr uint32, pQueueFamilyProperties: ptr VkQueueFamilyProperties): void {.stdcall.} + vkGetPhysicalDeviceMemoryProperties*: proc (physicalDevice: VkPhysicalDevice, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties): void {.stdcall.} + vkGetPhysicalDeviceFeatures*: proc (physicalDevice: VkPhysicalDevice, pFeatures: ptr VkPhysicalDeviceFeatures): void {.stdcall.} + vkGetPhysicalDeviceFormatProperties*: proc (physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: ptr VkFormatProperties): void {.stdcall.} + vkGetPhysicalDeviceImageFormatProperties*: proc (physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, tiling: VkImageTiling, usage: VkImageUsageFlags, flags: VkImageCreateFlags, pImageFormatProperties: ptr VkImageFormatProperties): VkResult {.stdcall.} + vkCreateDevice*: proc (physicalDevice: VkPhysicalDevice, pCreateInfo: ptr VkDeviceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDevice: ptr VkDevice): VkResult {.stdcall.} + vkCreateDevice*: proc (physicalDevice: VkPhysicalDevice, pCreateInfo: ptr VkDeviceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDevice: ptr VkDevice): VkResult {.stdcall.} + vkDestroyDevice*: proc (device: VkDevice, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkEnumerateDeviceLayerProperties*: proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkLayerProperties): VkResult {.stdcall.} + vkEnumerateDeviceLayerProperties*: proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkLayerProperties): VkResult {.stdcall.} + vkEnumerateDeviceExtensionProperties*: proc (physicalDevice: VkPhysicalDevice, pLayerName: cstring, pPropertyCount: ptr uint32, pProperties: ptr VkExtensionProperties): VkResult {.stdcall.} + vkGetDeviceQueue*: proc (device: VkDevice, queueFamilyIndex: uint32, queueIndex: uint32, pQueue: ptr VkQueue): void {.stdcall.} + vkQueueSubmit*: proc (queue: VkQueue, submitCount: uint32, pSubmits: ptr VkSubmitInfo, fence: VkFence): VkResult {.stdcall.} + vkQueueWaitIdle*: proc (queue: VkQueue): VkResult {.stdcall.} + vkDeviceWaitIdle*: proc (device: VkDevice): VkResult {.stdcall.} + vkAllocateMemory*: proc (device: VkDevice, pAllocateInfo: ptr VkMemoryAllocateInfo, pAllocator: ptr VkAllocationCallbacks, pMemory: ptr VkDeviceMemory): VkResult {.stdcall.} + vkFreeMemory*: proc (device: VkDevice, memory: VkDeviceMemory, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkMapMemory*: proc (device: VkDevice, memory: VkDeviceMemory, offset: VkDeviceSize, size: VkDeviceSize, flags: VkMemoryMapFlags, ppData: ptr pointer): VkResult {.stdcall.} + vkUnmapMemory*: proc (device: VkDevice, memory: VkDeviceMemory): void {.stdcall.} + vkFlushMappedMemoryRanges*: proc (device: VkDevice, memoryRangeCount: uint32, pMemoryRanges: ptr VkMappedMemoryRange): VkResult {.stdcall.} + vkInvalidateMappedMemoryRanges*: proc (device: VkDevice, memoryRangeCount: uint32, pMemoryRanges: ptr VkMappedMemoryRange): VkResult {.stdcall.} + vkGetDeviceMemoryCommitment*: proc (device: VkDevice, memory: VkDeviceMemory, pCommittedMemoryInBytes: ptr VkDeviceSize): void {.stdcall.} + vkGetBufferMemoryRequirements*: proc (device: VkDevice, buffer: VkBuffer, pMemoryRequirements: ptr VkMemoryRequirements): void {.stdcall.} + vkBindBufferMemory*: proc (device: VkDevice, buffer: VkBuffer, memory: VkDeviceMemory, memoryOffset: VkDeviceSize): VkResult {.stdcall.} + vkGetImageMemoryRequirements*: proc (device: VkDevice, image: VkImage, pMemoryRequirements: ptr VkMemoryRequirements): void {.stdcall.} + vkBindImageMemory*: proc (device: VkDevice, image: VkImage, memory: VkDeviceMemory, memoryOffset: VkDeviceSize): VkResult {.stdcall.} + vkGetImageSparseMemoryRequirements*: proc (device: VkDevice, image: VkImage, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements): void {.stdcall.} + vkGetPhysicalDeviceSparseImageFormatProperties*: proc (physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, samples: VkSampleCountFlagBits, usage: VkImageUsageFlags, tiling: VkImageTiling, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties): void {.stdcall.} + vkQueueBindSparse*: proc (queue: VkQueue, bindInfoCount: uint32, pBindInfo: ptr VkBindSparseInfo, fence: VkFence): VkResult {.stdcall.} + vkCreateFence*: proc (device: VkDevice, pCreateInfo: ptr VkFenceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pFence: ptr VkFence): VkResult {.stdcall.} + vkDestroyFence*: proc (device: VkDevice, fence: VkFence, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkResetFences*: proc (device: VkDevice, fenceCount: uint32, pFences: ptr VkFence): VkResult {.stdcall.} + vkGetFenceStatus*: proc (device: VkDevice, fence: VkFence): VkResult {.stdcall.} + vkWaitForFences*: proc (device: VkDevice, fenceCount: uint32, pFences: ptr VkFence, waitAll: VkBool32, timeout: uint64): VkResult {.stdcall.} + vkCreateSemaphore*: proc (device: VkDevice, pCreateInfo: ptr VkSemaphoreCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSemaphore: ptr VkSemaphore): VkResult {.stdcall.} + vkDestroySemaphore*: proc (device: VkDevice, semaphore: VkSemaphore, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCreateEvent*: proc (device: VkDevice, pCreateInfo: ptr VkEventCreateInfo, pAllocator: ptr VkAllocationCallbacks, pEvent: ptr VkEvent): VkResult {.stdcall.} + vkDestroyEvent*: proc (device: VkDevice, event: VkEvent, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetEventStatus*: proc (device: VkDevice, event: VkEvent): VkResult {.stdcall.} + vkSetEvent*: proc (device: VkDevice, event: VkEvent): VkResult {.stdcall.} + vkResetEvent*: proc (device: VkDevice, event: VkEvent): VkResult {.stdcall.} + vkCreateQueryPool*: proc (device: VkDevice, pCreateInfo: ptr VkQueryPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pQueryPool: ptr VkQueryPool): VkResult {.stdcall.} + vkDestroyQueryPool*: proc (device: VkDevice, queryPool: VkQueryPool, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetQueryPoolResults*: proc (device: VkDevice, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32, dataSize: uint, pData: pointer, stride: VkDeviceSize, flags: VkQueryResultFlags): VkResult {.stdcall.} + vkResetQueryPool*: proc (device: VkDevice, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32): void {.stdcall.} + vkCreateBuffer*: proc (device: VkDevice, pCreateInfo: ptr VkBufferCreateInfo, pAllocator: ptr VkAllocationCallbacks, pBuffer: ptr VkBuffer): VkResult {.stdcall.} + vkDestroyBuffer*: proc (device: VkDevice, buffer: VkBuffer, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCreateBufferView*: proc (device: VkDevice, pCreateInfo: ptr VkBufferViewCreateInfo, pAllocator: ptr VkAllocationCallbacks, pView: ptr VkBufferView): VkResult {.stdcall.} + vkDestroyBufferView*: proc (device: VkDevice, bufferView: VkBufferView, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCreateImage*: proc (device: VkDevice, pCreateInfo: ptr VkImageCreateInfo, pAllocator: ptr VkAllocationCallbacks, pImage: ptr VkImage): VkResult {.stdcall.} + vkDestroyImage*: proc (device: VkDevice, image: VkImage, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetImageSubresourceLayout*: proc (device: VkDevice, image: VkImage, pSubresource: ptr VkImageSubresource, pLayout: ptr VkSubresourceLayout): void {.stdcall.} + vkCreateImageView*: proc (device: VkDevice, pCreateInfo: ptr VkImageViewCreateInfo, pAllocator: ptr VkAllocationCallbacks, pView: ptr VkImageView): VkResult {.stdcall.} + vkDestroyImageView*: proc (device: VkDevice, imageView: VkImageView, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCreateShaderModule*: proc (device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo, pAllocator: ptr VkAllocationCallbacks, pShaderModule: ptr VkShaderModule): VkResult {.stdcall.} + vkDestroyShaderModule*: proc (device: VkDevice, shaderModule: VkShaderModule, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCreatePipelineCache*: proc (device: VkDevice, pCreateInfo: ptr VkPipelineCacheCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineCache: ptr VkPipelineCache): VkResult {.stdcall.} + vkCreatePipelineCache*: proc (device: VkDevice, pCreateInfo: ptr VkPipelineCacheCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineCache: ptr VkPipelineCache): VkResult {.stdcall.} + vkDestroyPipelineCache*: proc (device: VkDevice, pipelineCache: VkPipelineCache, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetPipelineCacheData*: proc (device: VkDevice, pipelineCache: VkPipelineCache, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.} + vkMergePipelineCaches*: proc (device: VkDevice, dstCache: VkPipelineCache, srcCacheCount: uint32, pSrcCaches: ptr VkPipelineCache): VkResult {.stdcall.} + vkCreateGraphicsPipelines*: proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkGraphicsPipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} + vkCreateGraphicsPipelines*: proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkGraphicsPipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} + vkCreateComputePipelines*: proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkComputePipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} + vkCreateComputePipelines*: proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkComputePipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} + vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI*: proc (device: VkDevice, renderpass: VkRenderPass, pMaxWorkgroupSize: ptr VkExtent2D): VkResult {.stdcall.} + vkDestroyPipeline*: proc (device: VkDevice, pipeline: VkPipeline, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCreatePipelineLayout*: proc (device: VkDevice, pCreateInfo: ptr VkPipelineLayoutCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineLayout: ptr VkPipelineLayout): VkResult {.stdcall.} + vkDestroyPipelineLayout*: proc (device: VkDevice, pipelineLayout: VkPipelineLayout, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCreateSampler*: proc (device: VkDevice, pCreateInfo: ptr VkSamplerCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSampler: ptr VkSampler): VkResult {.stdcall.} + vkDestroySampler*: proc (device: VkDevice, sampler: VkSampler, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCreateDescriptorSetLayout*: proc (device: VkDevice, pCreateInfo: ptr VkDescriptorSetLayoutCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSetLayout: ptr VkDescriptorSetLayout): VkResult {.stdcall.} + vkDestroyDescriptorSetLayout*: proc (device: VkDevice, descriptorSetLayout: VkDescriptorSetLayout, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCreateDescriptorPool*: proc (device: VkDevice, pCreateInfo: ptr VkDescriptorPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDescriptorPool: ptr VkDescriptorPool): VkResult {.stdcall.} + vkDestroyDescriptorPool*: proc (device: VkDevice, descriptorPool: VkDescriptorPool, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkResetDescriptorPool*: proc (device: VkDevice, descriptorPool: VkDescriptorPool, flags: VkDescriptorPoolResetFlags): VkResult {.stdcall.} + vkAllocateDescriptorSets*: proc (device: VkDevice, pAllocateInfo: ptr VkDescriptorSetAllocateInfo, pDescriptorSets: ptr VkDescriptorSet): VkResult {.stdcall.} + vkFreeDescriptorSets*: proc (device: VkDevice, descriptorPool: VkDescriptorPool, descriptorSetCount: uint32, pDescriptorSets: ptr VkDescriptorSet): VkResult {.stdcall.} + vkUpdateDescriptorSets*: proc (device: VkDevice, descriptorWriteCount: uint32, pDescriptorWrites: ptr VkWriteDescriptorSet, descriptorCopyCount: uint32, pDescriptorCopies: ptr VkCopyDescriptorSet): void {.stdcall.} + vkCreateFramebuffer*: proc (device: VkDevice, pCreateInfo: ptr VkFramebufferCreateInfo, pAllocator: ptr VkAllocationCallbacks, pFramebuffer: ptr VkFramebuffer): VkResult {.stdcall.} + vkDestroyFramebuffer*: proc (device: VkDevice, framebuffer: VkFramebuffer, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCreateRenderPass*: proc (device: VkDevice, pCreateInfo: ptr VkRenderPassCreateInfo, pAllocator: ptr VkAllocationCallbacks, pRenderPass: ptr VkRenderPass): VkResult {.stdcall.} + vkDestroyRenderPass*: proc (device: VkDevice, renderPass: VkRenderPass, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetRenderAreaGranularity*: proc (device: VkDevice, renderPass: VkRenderPass, pGranularity: ptr VkExtent2D): void {.stdcall.} + vkGetRenderingAreaGranularityKHR*: proc (device: VkDevice, pRenderingAreaInfo: ptr VkRenderingAreaInfoKHR, pGranularity: ptr VkExtent2D): void {.stdcall.} + vkCreateCommandPool*: proc (device: VkDevice, pCreateInfo: ptr VkCommandPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pCommandPool: ptr VkCommandPool): VkResult {.stdcall.} + vkDestroyCommandPool*: proc (device: VkDevice, commandPool: VkCommandPool, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkResetCommandPool*: proc (device: VkDevice, commandPool: VkCommandPool, flags: VkCommandPoolResetFlags): VkResult {.stdcall.} + vkAllocateCommandBuffers*: proc (device: VkDevice, pAllocateInfo: ptr VkCommandBufferAllocateInfo, pCommandBuffers: ptr VkCommandBuffer): VkResult {.stdcall.} + vkFreeCommandBuffers*: proc (device: VkDevice, commandPool: VkCommandPool, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer): void {.stdcall.} + vkBeginCommandBuffer*: proc (commandBuffer: VkCommandBuffer, pBeginInfo: ptr VkCommandBufferBeginInfo): VkResult {.stdcall.} + vkEndCommandBuffer*: proc (commandBuffer: VkCommandBuffer): VkResult {.stdcall.} + vkResetCommandBuffer*: proc (commandBuffer: VkCommandBuffer, flags: VkCommandBufferResetFlags): VkResult {.stdcall.} + vkCmdBindPipeline*: proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline): void {.stdcall.} + vkCmdSetAttachmentFeedbackLoopEnableEXT*: proc (commandBuffer: VkCommandBuffer, aspectMask: VkImageAspectFlags): void {.stdcall.} + vkCmdSetViewport*: proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewports: ptr VkViewport): void {.stdcall.} + vkCmdSetScissor*: proc (commandBuffer: VkCommandBuffer, firstScissor: uint32, scissorCount: uint32, pScissors: ptr VkRect2D): void {.stdcall.} + vkCmdSetLineWidth*: proc (commandBuffer: VkCommandBuffer, lineWidth: float32): void {.stdcall.} + vkCmdSetDepthBias*: proc (commandBuffer: VkCommandBuffer, depthBiasConstantFactor: float32, depthBiasClamp: float32, depthBiasSlopeFactor: float32): void {.stdcall.} + vkCmdSetBlendConstants*: proc (commandBuffer: VkCommandBuffer, blendConstants: array[4, float32]): void {.stdcall.} + vkCmdSetDepthBounds*: proc (commandBuffer: VkCommandBuffer, minDepthBounds: float32, maxDepthBounds: float32): void {.stdcall.} + vkCmdSetStencilCompareMask*: proc (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, compareMask: uint32): void {.stdcall.} + vkCmdSetStencilWriteMask*: proc (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, writeMask: uint32): void {.stdcall.} + vkCmdSetStencilReference*: proc (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, reference: uint32): void {.stdcall.} + vkCmdBindDescriptorSets*: proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, firstSet: uint32, descriptorSetCount: uint32, pDescriptorSets: ptr VkDescriptorSet, dynamicOffsetCount: uint32, pDynamicOffsets: ptr uint32): void {.stdcall.} + vkCmdBindIndexBuffer*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, indexType: VkIndexType): void {.stdcall.} + vkCmdBindVertexBuffers*: proc (commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize): void {.stdcall.} + vkCmdDraw*: proc (commandBuffer: VkCommandBuffer, vertexCount: uint32, instanceCount: uint32, firstVertex: uint32, firstInstance: uint32): void {.stdcall.} + vkCmdDrawIndexed*: proc (commandBuffer: VkCommandBuffer, indexCount: uint32, instanceCount: uint32, firstIndex: uint32, vertexOffset: int32, firstInstance: uint32): void {.stdcall.} + vkCmdDrawMultiEXT*: proc (commandBuffer: VkCommandBuffer, drawCount: uint32, pVertexInfo: ptr VkMultiDrawInfoEXT, instanceCount: uint32, firstInstance: uint32, stride: uint32): void {.stdcall.} + vkCmdDrawMultiIndexedEXT*: proc (commandBuffer: VkCommandBuffer, drawCount: uint32, pIndexInfo: ptr VkMultiDrawIndexedInfoEXT, instanceCount: uint32, firstInstance: uint32, stride: uint32, pVertexOffset: ptr int32): void {.stdcall.} + vkCmdDrawIndirect*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.} + vkCmdDrawIndexedIndirect*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.} + vkCmdDispatch*: proc (commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.} + vkCmdDispatchIndirect*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize): void {.stdcall.} + vkCmdSubpassShadingHUAWEI*: proc (commandBuffer: VkCommandBuffer): void {.stdcall.} + vkCmdDrawClusterHUAWEI*: proc (commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.} + vkCmdDrawClusterIndirectHUAWEI*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize): void {.stdcall.} + vkCmdUpdatePipelineIndirectBufferNV*: proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline): void {.stdcall.} + vkCmdCopyBuffer*: proc (commandBuffer: VkCommandBuffer, srcBuffer: VkBuffer, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferCopy): void {.stdcall.} + vkCmdCopyImage*: proc (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageCopy): void {.stdcall.} + vkCmdBlitImage*: proc (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageBlit, filter: VkFilter): void {.stdcall.} + vkCmdCopyBufferToImage*: proc (commandBuffer: VkCommandBuffer, srcBuffer: VkBuffer, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkBufferImageCopy): void {.stdcall.} + vkCmdCopyImageToBuffer*: proc (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferImageCopy): void {.stdcall.} + vkCmdCopyMemoryIndirectNV*: proc (commandBuffer: VkCommandBuffer, copyBufferAddress: VkDeviceAddress, copyCount: uint32, stride: uint32): void {.stdcall.} + vkCmdCopyMemoryToImageIndirectNV*: proc (commandBuffer: VkCommandBuffer, copyBufferAddress: VkDeviceAddress, copyCount: uint32, stride: uint32, dstImage: VkImage, dstImageLayout: VkImageLayout, pImageSubresources: ptr VkImageSubresourceLayers): void {.stdcall.} + vkCmdUpdateBuffer*: proc (commandBuffer: VkCommandBuffer, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, dataSize: VkDeviceSize, pData: pointer): void {.stdcall.} + vkCmdFillBuffer*: proc (commandBuffer: VkCommandBuffer, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, size: VkDeviceSize, data: uint32): void {.stdcall.} + vkCmdClearColorImage*: proc (commandBuffer: VkCommandBuffer, image: VkImage, imageLayout: VkImageLayout, pColor: ptr VkClearColorValue, rangeCount: uint32, pRanges: ptr VkImageSubresourceRange): void {.stdcall.} + vkCmdClearDepthStencilImage*: proc (commandBuffer: VkCommandBuffer, image: VkImage, imageLayout: VkImageLayout, pDepthStencil: ptr VkClearDepthStencilValue, rangeCount: uint32, pRanges: ptr VkImageSubresourceRange): void {.stdcall.} + vkCmdClearAttachments*: proc (commandBuffer: VkCommandBuffer, attachmentCount: uint32, pAttachments: ptr VkClearAttachment, rectCount: uint32, pRects: ptr VkClearRect): void {.stdcall.} + vkCmdResolveImage*: proc (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageResolve): void {.stdcall.} + vkCmdSetEvent*: proc (commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags): void {.stdcall.} + vkCmdResetEvent*: proc (commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags): void {.stdcall.} + vkCmdWaitEvents*: proc (commandBuffer: VkCommandBuffer, eventCount: uint32, pEvents: ptr VkEvent, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, memoryBarrierCount: uint32, pMemoryBarriers: ptr VkMemoryBarrier, bufferMemoryBarrierCount: uint32, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier, imageMemoryBarrierCount: uint32, pImageMemoryBarriers: ptr VkImageMemoryBarrier): void {.stdcall.} + vkCmdPipelineBarrier*: proc (commandBuffer: VkCommandBuffer, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, dependencyFlags: VkDependencyFlags, memoryBarrierCount: uint32, pMemoryBarriers: ptr VkMemoryBarrier, bufferMemoryBarrierCount: uint32, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier, imageMemoryBarrierCount: uint32, pImageMemoryBarriers: ptr VkImageMemoryBarrier): void {.stdcall.} + vkCmdBeginQuery*: proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, flags: VkQueryControlFlags): void {.stdcall.} + vkCmdEndQuery*: proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32): void {.stdcall.} + vkCmdBeginConditionalRenderingEXT*: proc (commandBuffer: VkCommandBuffer, pConditionalRenderingBegin: ptr VkConditionalRenderingBeginInfoEXT): void {.stdcall.} + vkCmdEndConditionalRenderingEXT*: proc (commandBuffer: VkCommandBuffer): void {.stdcall.} + vkCmdResetQueryPool*: proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32): void {.stdcall.} + vkCmdWriteTimestamp*: proc (commandBuffer: VkCommandBuffer, pipelineStage: VkPipelineStageFlagBits, queryPool: VkQueryPool, query: uint32): void {.stdcall.} + vkCmdCopyQueryPoolResults*: proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, stride: VkDeviceSize, flags: VkQueryResultFlags): void {.stdcall.} + vkCmdPushConstants*: proc (commandBuffer: VkCommandBuffer, layout: VkPipelineLayout, stageFlags: VkShaderStageFlags, offset: uint32, size: uint32, pValues: pointer): void {.stdcall.} + vkCmdBeginRenderPass*: proc (commandBuffer: VkCommandBuffer, pRenderPassBegin: ptr VkRenderPassBeginInfo, contents: VkSubpassContents): void {.stdcall.} + vkCmdNextSubpass*: proc (commandBuffer: VkCommandBuffer, contents: VkSubpassContents): void {.stdcall.} + vkCmdEndRenderPass*: proc (commandBuffer: VkCommandBuffer): void {.stdcall.} + vkCmdExecuteCommands*: proc (commandBuffer: VkCommandBuffer, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer): void {.stdcall.} + vkCreateAndroidSurfaceKHR*: proc (instance: VkInstance, pCreateInfo: ptr VkAndroidSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceDisplayPropertiesKHR*: proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayPropertiesKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceDisplayPlanePropertiesKHR*: proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayPlanePropertiesKHR): VkResult {.stdcall.} + vkGetDisplayPlaneSupportedDisplaysKHR*: proc (physicalDevice: VkPhysicalDevice, planeIndex: uint32, pDisplayCount: ptr uint32, pDisplays: ptr VkDisplayKHR): VkResult {.stdcall.} + vkGetDisplayModePropertiesKHR*: proc (physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayModePropertiesKHR): VkResult {.stdcall.} + vkCreateDisplayModeKHR*: proc (physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pCreateInfo: ptr VkDisplayModeCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pMode: ptr VkDisplayModeKHR): VkResult {.stdcall.} + vkGetDisplayPlaneCapabilitiesKHR*: proc (physicalDevice: VkPhysicalDevice, mode: VkDisplayModeKHR, planeIndex: uint32, pCapabilities: ptr VkDisplayPlaneCapabilitiesKHR): VkResult {.stdcall.} + vkCreateDisplayPlaneSurfaceKHR*: proc (instance: VkInstance, pCreateInfo: ptr VkDisplaySurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkCreateSharedSwapchainsKHR*: proc (device: VkDevice, swapchainCount: uint32, pCreateInfos: ptr VkSwapchainCreateInfoKHR, pCreateInfos: ptr VkSwapchainCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSwapchains: ptr VkSwapchainKHR): VkResult {.stdcall.} + vkDestroySurfaceKHR*: proc (instance: VkInstance, surface: VkSurfaceKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetPhysicalDeviceSurfaceSupportKHR*: proc (physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, surface: VkSurfaceKHR, pSupported: ptr VkBool32): VkResult {.stdcall.} + vkGetPhysicalDeviceSurfaceCapabilitiesKHR*: proc (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceCapabilities: ptr VkSurfaceCapabilitiesKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceSurfaceFormatsKHR*: proc (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceFormatCount: ptr uint32, pSurfaceFormats: ptr VkSurfaceFormatKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceSurfacePresentModesKHR*: proc (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pPresentModeCount: ptr uint32, pPresentModes: ptr VkPresentModeKHR): VkResult {.stdcall.} + vkCreateSwapchainKHR*: proc (device: VkDevice, pCreateInfo: ptr VkSwapchainCreateInfoKHR, pCreateInfo: ptr VkSwapchainCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSwapchain: ptr VkSwapchainKHR): VkResult {.stdcall.} + vkDestroySwapchainKHR*: proc (device: VkDevice, swapchain: VkSwapchainKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetSwapchainImagesKHR*: proc (device: VkDevice, swapchain: VkSwapchainKHR, pSwapchainImageCount: ptr uint32, pSwapchainImages: ptr VkImage): VkResult {.stdcall.} + vkAcquireNextImageKHR*: proc (device: VkDevice, swapchain: VkSwapchainKHR, timeout: uint64, semaphore: VkSemaphore, fence: VkFence, pImageIndex: ptr uint32): VkResult {.stdcall.} + vkQueuePresentKHR*: proc (queue: VkQueue, pPresentInfo: ptr VkPresentInfoKHR): VkResult {.stdcall.} + vkCreateViSurfaceNN*: proc (instance: VkInstance, pCreateInfo: ptr VkViSurfaceCreateInfoNN, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkCreateWaylandSurfaceKHR*: proc (instance: VkInstance, pCreateInfo: ptr VkWaylandSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceWaylandPresentationSupportKHR*: proc (physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, display: ptr wl_display): VkBool32 {.stdcall.} + vkCreateWin32SurfaceKHR*: proc (instance: VkInstance, pCreateInfo: ptr VkWin32SurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceWin32PresentationSupportKHR*: proc (physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32): VkBool32 {.stdcall.} + vkCreateXlibSurfaceKHR*: proc (instance: VkInstance, pCreateInfo: ptr VkXlibSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceXlibPresentationSupportKHR*: proc (physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, dpy: ptr Display, visualID: VisualID): VkBool32 {.stdcall.} + vkCreateXcbSurfaceKHR*: proc (instance: VkInstance, pCreateInfo: ptr VkXcbSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceXcbPresentationSupportKHR*: proc (physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, connection: ptr xcb_connection_t, visual_id: xcb_visualid_t): VkBool32 {.stdcall.} + vkCreateDirectFBSurfaceEXT*: proc (instance: VkInstance, pCreateInfo: ptr VkDirectFBSurfaceCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceDirectFBPresentationSupportEXT*: proc (physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, dfb: ptr IDirectFB): VkBool32 {.stdcall.} + vkCreateImagePipeSurfaceFUCHSIA*: proc (instance: VkInstance, pCreateInfo: ptr VkImagePipeSurfaceCreateInfoFUCHSIA, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkCreateStreamDescriptorSurfaceGGP*: proc (instance: VkInstance, pCreateInfo: ptr VkStreamDescriptorSurfaceCreateInfoGGP, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkCreateScreenSurfaceQNX*: proc (instance: VkInstance, pCreateInfo: ptr VkScreenSurfaceCreateInfoQNX, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceScreenPresentationSupportQNX*: proc (physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, window: ptr screen_window): VkBool32 {.stdcall.} + vkCreateDebugReportCallbackEXT*: proc (instance: VkInstance, pCreateInfo: ptr VkDebugReportCallbackCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pCallback: ptr VkDebugReportCallbackEXT): VkResult {.stdcall.} + vkDestroyDebugReportCallbackEXT*: proc (instance: VkInstance, callback: VkDebugReportCallbackEXT, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDebugReportMessageEXT*: proc (instance: VkInstance, flags: VkDebugReportFlagsEXT, objectType: VkDebugReportObjectTypeEXT, `object`: uint64, location: uint, messageCode: int32, pLayerPrefix: cstring, pMessage: cstring): void {.stdcall.} + vkDebugMarkerSetObjectNameEXT*: proc (device: VkDevice, pNameInfo: ptr VkDebugMarkerObjectNameInfoEXT): VkResult {.stdcall.} + vkDebugMarkerSetObjectTagEXT*: proc (device: VkDevice, pTagInfo: ptr VkDebugMarkerObjectTagInfoEXT): VkResult {.stdcall.} + vkCmdDebugMarkerBeginEXT*: proc (commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT): void {.stdcall.} + vkCmdDebugMarkerEndEXT*: proc (commandBuffer: VkCommandBuffer): void {.stdcall.} + vkCmdDebugMarkerInsertEXT*: proc (commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT): void {.stdcall.} + vkGetPhysicalDeviceExternalImageFormatPropertiesNV*: proc (physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, tiling: VkImageTiling, usage: VkImageUsageFlags, flags: VkImageCreateFlags, externalHandleType: VkExternalMemoryHandleTypeFlagsNV, pExternalImageFormatProperties: ptr VkExternalImageFormatPropertiesNV): VkResult {.stdcall.} + vkGetMemoryWin32HandleNV*: proc (device: VkDevice, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagsNV, pHandle: ptr HANDLE): VkResult {.stdcall.} + vkCmdExecuteGeneratedCommandsNV*: proc (commandBuffer: VkCommandBuffer, isPreprocessed: VkBool32, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV): void {.stdcall.} + vkCmdPreprocessGeneratedCommandsNV*: proc (commandBuffer: VkCommandBuffer, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV): void {.stdcall.} + vkCmdBindPipelineShaderGroupNV*: proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline, groupIndex: uint32): void {.stdcall.} + vkGetGeneratedCommandsMemoryRequirementsNV*: proc (device: VkDevice, pInfo: ptr VkGeneratedCommandsMemoryRequirementsInfoNV, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.} + vkCreateIndirectCommandsLayoutNV*: proc (device: VkDevice, pCreateInfo: ptr VkIndirectCommandsLayoutCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pIndirectCommandsLayout: ptr VkIndirectCommandsLayoutNV): VkResult {.stdcall.} + vkDestroyIndirectCommandsLayoutNV*: proc (device: VkDevice, indirectCommandsLayout: VkIndirectCommandsLayoutNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetPhysicalDeviceFeatures2*: proc (physicalDevice: VkPhysicalDevice, pFeatures: ptr VkPhysicalDeviceFeatures2): void {.stdcall.} + vkGetPhysicalDeviceProperties2*: proc (physicalDevice: VkPhysicalDevice, pProperties: ptr VkPhysicalDeviceProperties2): void {.stdcall.} + vkGetPhysicalDeviceFormatProperties2*: proc (physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: ptr VkFormatProperties2): void {.stdcall.} + vkGetPhysicalDeviceImageFormatProperties2*: proc (physicalDevice: VkPhysicalDevice, pImageFormatInfo: ptr VkPhysicalDeviceImageFormatInfo2, pImageFormatProperties: ptr VkImageFormatProperties2): VkResult {.stdcall.} + vkGetPhysicalDeviceQueueFamilyProperties2*: proc (physicalDevice: VkPhysicalDevice, pQueueFamilyPropertyCount: ptr uint32, pQueueFamilyProperties: ptr VkQueueFamilyProperties2): void {.stdcall.} + vkGetPhysicalDeviceMemoryProperties2*: proc (physicalDevice: VkPhysicalDevice, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties2): void {.stdcall.} + vkGetPhysicalDeviceSparseImageFormatProperties2*: proc (physicalDevice: VkPhysicalDevice, pFormatInfo: ptr VkPhysicalDeviceSparseImageFormatInfo2, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties2): void {.stdcall.} + vkCmdPushDescriptorSetKHR*: proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, set: uint32, descriptorWriteCount: uint32, pDescriptorWrites: ptr VkWriteDescriptorSet): void {.stdcall.} + vkTrimCommandPool*: proc (device: VkDevice, commandPool: VkCommandPool, flags: VkCommandPoolTrimFlags): void {.stdcall.} + vkGetPhysicalDeviceExternalBufferProperties*: proc (physicalDevice: VkPhysicalDevice, pExternalBufferInfo: ptr VkPhysicalDeviceExternalBufferInfo, pExternalBufferProperties: ptr VkExternalBufferProperties): void {.stdcall.} + vkGetMemoryWin32HandleKHR*: proc (device: VkDevice, pGetWin32HandleInfo: ptr VkMemoryGetWin32HandleInfoKHR, pHandle: ptr HANDLE): VkResult {.stdcall.} + vkGetMemoryWin32HandlePropertiesKHR*: proc (device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, handle: HANDLE, pMemoryWin32HandleProperties: ptr VkMemoryWin32HandlePropertiesKHR): VkResult {.stdcall.} + vkGetMemoryFdKHR*: proc (device: VkDevice, pGetFdInfo: ptr VkMemoryGetFdInfoKHR, pFd: ptr int): VkResult {.stdcall.} + vkGetMemoryFdPropertiesKHR*: proc (device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, fd: int, pMemoryFdProperties: ptr VkMemoryFdPropertiesKHR): VkResult {.stdcall.} + vkGetMemoryZirconHandleFUCHSIA*: proc (device: VkDevice, pGetZirconHandleInfo: ptr VkMemoryGetZirconHandleInfoFUCHSIA, pZirconHandle: ptr zx_handle_t): VkResult {.stdcall.} + vkGetMemoryZirconHandlePropertiesFUCHSIA*: proc (device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, zirconHandle: zx_handle_t, pMemoryZirconHandleProperties: ptr VkMemoryZirconHandlePropertiesFUCHSIA): VkResult {.stdcall.} + vkGetMemoryRemoteAddressNV*: proc (device: VkDevice, pMemoryGetRemoteAddressInfo: ptr VkMemoryGetRemoteAddressInfoNV, pAddress: ptr VkRemoteAddressNV): VkResult {.stdcall.} + vkGetMemorySciBufNV*: proc (device: VkDevice, pGetSciBufInfo: ptr VkMemoryGetSciBufInfoNV, pHandle: ptr NvSciBufObj): VkResult {.stdcall.} + vkGetPhysicalDeviceExternalMemorySciBufPropertiesNV*: proc (physicalDevice: VkPhysicalDevice, handleType: VkExternalMemoryHandleTypeFlagBits, handle: NvSciBufObj, pMemorySciBufProperties: ptr VkMemorySciBufPropertiesNV): VkResult {.stdcall.} + vkGetPhysicalDeviceSciBufAttributesNV*: proc (physicalDevice: VkPhysicalDevice, pAttributes: NvSciBufAttrList): VkResult {.stdcall.} + vkGetPhysicalDeviceExternalSemaphoreProperties*: proc (physicalDevice: VkPhysicalDevice, pExternalSemaphoreInfo: ptr VkPhysicalDeviceExternalSemaphoreInfo, pExternalSemaphoreProperties: ptr VkExternalSemaphoreProperties): void {.stdcall.} + vkGetSemaphoreWin32HandleKHR*: proc (device: VkDevice, pGetWin32HandleInfo: ptr VkSemaphoreGetWin32HandleInfoKHR, pHandle: ptr HANDLE): VkResult {.stdcall.} + vkImportSemaphoreWin32HandleKHR*: proc (device: VkDevice, pImportSemaphoreWin32HandleInfo: ptr VkImportSemaphoreWin32HandleInfoKHR): VkResult {.stdcall.} + vkGetSemaphoreFdKHR*: proc (device: VkDevice, pGetFdInfo: ptr VkSemaphoreGetFdInfoKHR, pFd: ptr int): VkResult {.stdcall.} + vkImportSemaphoreFdKHR*: proc (device: VkDevice, pImportSemaphoreFdInfo: ptr VkImportSemaphoreFdInfoKHR): VkResult {.stdcall.} + vkGetSemaphoreZirconHandleFUCHSIA*: proc (device: VkDevice, pGetZirconHandleInfo: ptr VkSemaphoreGetZirconHandleInfoFUCHSIA, pZirconHandle: ptr zx_handle_t): VkResult {.stdcall.} + vkImportSemaphoreZirconHandleFUCHSIA*: proc (device: VkDevice, pImportSemaphoreZirconHandleInfo: ptr VkImportSemaphoreZirconHandleInfoFUCHSIA): VkResult {.stdcall.} + vkGetPhysicalDeviceExternalFenceProperties*: proc (physicalDevice: VkPhysicalDevice, pExternalFenceInfo: ptr VkPhysicalDeviceExternalFenceInfo, pExternalFenceProperties: ptr VkExternalFenceProperties): void {.stdcall.} + vkGetFenceWin32HandleKHR*: proc (device: VkDevice, pGetWin32HandleInfo: ptr VkFenceGetWin32HandleInfoKHR, pHandle: ptr HANDLE): VkResult {.stdcall.} + vkImportFenceWin32HandleKHR*: proc (device: VkDevice, pImportFenceWin32HandleInfo: ptr VkImportFenceWin32HandleInfoKHR): VkResult {.stdcall.} + vkGetFenceFdKHR*: proc (device: VkDevice, pGetFdInfo: ptr VkFenceGetFdInfoKHR, pFd: ptr int): VkResult {.stdcall.} + vkImportFenceFdKHR*: proc (device: VkDevice, pImportFenceFdInfo: ptr VkImportFenceFdInfoKHR): VkResult {.stdcall.} + vkGetFenceSciSyncFenceNV*: proc (device: VkDevice, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV, pHandle: pointer): VkResult {.stdcall.} + vkGetFenceSciSyncObjNV*: proc (device: VkDevice, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV, pHandle: pointer): VkResult {.stdcall.} + vkImportFenceSciSyncFenceNV*: proc (device: VkDevice, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV): VkResult {.stdcall.} + vkImportFenceSciSyncObjNV*: proc (device: VkDevice, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV): VkResult {.stdcall.} + vkGetSemaphoreSciSyncObjNV*: proc (device: VkDevice, pGetSciSyncInfo: ptr VkSemaphoreGetSciSyncInfoNV, pHandle: pointer): VkResult {.stdcall.} + vkImportSemaphoreSciSyncObjNV*: proc (device: VkDevice, pImportSemaphoreSciSyncInfo: ptr VkImportSemaphoreSciSyncInfoNV): VkResult {.stdcall.} + vkGetPhysicalDeviceSciSyncAttributesNV*: proc (physicalDevice: VkPhysicalDevice, pSciSyncAttributesInfo: ptr VkSciSyncAttributesInfoNV, pAttributes: NvSciSyncAttrList): VkResult {.stdcall.} + vkCreateSemaphoreSciSyncPoolNV*: proc (device: VkDevice, pCreateInfo: ptr VkSemaphoreSciSyncPoolCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pSemaphorePool: ptr VkSemaphoreSciSyncPoolNV): VkResult {.stdcall.} + vkDestroySemaphoreSciSyncPoolNV*: proc (device: VkDevice, semaphorePool: VkSemaphoreSciSyncPoolNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkReleaseDisplayEXT*: proc (physicalDevice: VkPhysicalDevice, display: VkDisplayKHR): VkResult {.stdcall.} + vkAcquireXlibDisplayEXT*: proc (physicalDevice: VkPhysicalDevice, dpy: ptr Display, display: VkDisplayKHR): VkResult {.stdcall.} + vkGetRandROutputDisplayEXT*: proc (physicalDevice: VkPhysicalDevice, dpy: ptr Display, rrOutput: RROutput, pDisplay: ptr VkDisplayKHR): VkResult {.stdcall.} + vkAcquireWinrtDisplayNV*: proc (physicalDevice: VkPhysicalDevice, display: VkDisplayKHR): VkResult {.stdcall.} + vkGetWinrtDisplayNV*: proc (physicalDevice: VkPhysicalDevice, deviceRelativeId: uint32, pDisplay: ptr VkDisplayKHR): VkResult {.stdcall.} + vkDisplayPowerControlEXT*: proc (device: VkDevice, display: VkDisplayKHR, pDisplayPowerInfo: ptr VkDisplayPowerInfoEXT): VkResult {.stdcall.} + vkRegisterDeviceEventEXT*: proc (device: VkDevice, pDeviceEventInfo: ptr VkDeviceEventInfoEXT, pAllocator: ptr VkAllocationCallbacks, pFence: ptr VkFence): VkResult {.stdcall.} + vkRegisterDisplayEventEXT*: proc (device: VkDevice, display: VkDisplayKHR, pDisplayEventInfo: ptr VkDisplayEventInfoEXT, pAllocator: ptr VkAllocationCallbacks, pFence: ptr VkFence): VkResult {.stdcall.} + vkGetSwapchainCounterEXT*: proc (device: VkDevice, swapchain: VkSwapchainKHR, counter: VkSurfaceCounterFlagBitsEXT, pCounterValue: ptr uint64): VkResult {.stdcall.} + vkGetPhysicalDeviceSurfaceCapabilities2EXT*: proc (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceCapabilities: ptr VkSurfaceCapabilities2EXT): VkResult {.stdcall.} + vkEnumeratePhysicalDeviceGroups*: proc (instance: VkInstance, pPhysicalDeviceGroupCount: ptr uint32, pPhysicalDeviceGroupProperties: ptr VkPhysicalDeviceGroupProperties): VkResult {.stdcall.} + vkGetDeviceGroupPeerMemoryFeatures*: proc (device: VkDevice, heapIndex: uint32, localDeviceIndex: uint32, remoteDeviceIndex: uint32, pPeerMemoryFeatures: ptr VkPeerMemoryFeatureFlags): void {.stdcall.} + vkBindBufferMemory2*: proc (device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindBufferMemoryInfo): VkResult {.stdcall.} + vkBindImageMemory2*: proc (device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindImageMemoryInfo): VkResult {.stdcall.} + vkCmdSetDeviceMask*: proc (commandBuffer: VkCommandBuffer, deviceMask: uint32): void {.stdcall.} + vkGetDeviceGroupPresentCapabilitiesKHR*: proc (device: VkDevice, pDeviceGroupPresentCapabilities: ptr VkDeviceGroupPresentCapabilitiesKHR): VkResult {.stdcall.} + vkGetDeviceGroupSurfacePresentModesKHR*: proc (device: VkDevice, surface: VkSurfaceKHR, pModes: ptr VkDeviceGroupPresentModeFlagsKHR): VkResult {.stdcall.} + vkAcquireNextImage2KHR*: proc (device: VkDevice, pAcquireInfo: ptr VkAcquireNextImageInfoKHR, pImageIndex: ptr uint32): VkResult {.stdcall.} + vkCmdDispatchBase*: proc (commandBuffer: VkCommandBuffer, baseGroupX: uint32, baseGroupY: uint32, baseGroupZ: uint32, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.} + vkGetPhysicalDevicePresentRectanglesKHR*: proc (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pRectCount: ptr uint32, pRects: ptr VkRect2D): VkResult {.stdcall.} + vkCreateDescriptorUpdateTemplate*: proc (device: VkDevice, pCreateInfo: ptr VkDescriptorUpdateTemplateCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDescriptorUpdateTemplate: ptr VkDescriptorUpdateTemplate): VkResult {.stdcall.} + vkDestroyDescriptorUpdateTemplate*: proc (device: VkDevice, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkUpdateDescriptorSetWithTemplate*: proc (device: VkDevice, descriptorSet: VkDescriptorSet, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pData: pointer): void {.stdcall.} + vkCmdPushDescriptorSetWithTemplateKHR*: proc (commandBuffer: VkCommandBuffer, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: uint32, pData: pointer): void {.stdcall.} + vkSetHdrMetadataEXT*: proc (device: VkDevice, swapchainCount: uint32, pSwapchains: ptr VkSwapchainKHR, pMetadata: ptr VkHdrMetadataEXT): void {.stdcall.} + vkGetSwapchainStatusKHR*: proc (device: VkDevice, swapchain: VkSwapchainKHR): VkResult {.stdcall.} + vkGetRefreshCycleDurationGOOGLE*: proc (device: VkDevice, swapchain: VkSwapchainKHR, pDisplayTimingProperties: ptr VkRefreshCycleDurationGOOGLE): VkResult {.stdcall.} + vkGetPastPresentationTimingGOOGLE*: proc (device: VkDevice, swapchain: VkSwapchainKHR, pPresentationTimingCount: ptr uint32, pPresentationTimings: ptr VkPastPresentationTimingGOOGLE): VkResult {.stdcall.} + vkCreateIOSSurfaceMVK*: proc (instance: VkInstance, pCreateInfo: ptr VkIOSSurfaceCreateInfoMVK, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkCreateMacOSSurfaceMVK*: proc (instance: VkInstance, pCreateInfo: ptr VkMacOSSurfaceCreateInfoMVK, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkCreateMetalSurfaceEXT*: proc (instance: VkInstance, pCreateInfo: ptr VkMetalSurfaceCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkCmdSetViewportWScalingNV*: proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportWScalings: ptr VkViewportWScalingNV): void {.stdcall.} + vkCmdSetDiscardRectangleEXT*: proc (commandBuffer: VkCommandBuffer, firstDiscardRectangle: uint32, discardRectangleCount: uint32, pDiscardRectangles: ptr VkRect2D): void {.stdcall.} + vkCmdSetDiscardRectangleEnableEXT*: proc (commandBuffer: VkCommandBuffer, discardRectangleEnable: VkBool32): void {.stdcall.} + vkCmdSetDiscardRectangleModeEXT*: proc (commandBuffer: VkCommandBuffer, discardRectangleMode: VkDiscardRectangleModeEXT): void {.stdcall.} + vkCmdSetSampleLocationsEXT*: proc (commandBuffer: VkCommandBuffer, pSampleLocationsInfo: ptr VkSampleLocationsInfoEXT): void {.stdcall.} + vkGetPhysicalDeviceMultisamplePropertiesEXT*: proc (physicalDevice: VkPhysicalDevice, samples: VkSampleCountFlagBits, pMultisampleProperties: ptr VkMultisamplePropertiesEXT): void {.stdcall.} + vkGetPhysicalDeviceSurfaceCapabilities2KHR*: proc (physicalDevice: VkPhysicalDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pSurfaceCapabilities: ptr VkSurfaceCapabilities2KHR): VkResult {.stdcall.} + vkGetPhysicalDeviceSurfaceFormats2KHR*: proc (physicalDevice: VkPhysicalDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pSurfaceFormatCount: ptr uint32, pSurfaceFormats: ptr VkSurfaceFormat2KHR): VkResult {.stdcall.} + vkGetPhysicalDeviceDisplayProperties2KHR*: proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayProperties2KHR): VkResult {.stdcall.} + vkGetPhysicalDeviceDisplayPlaneProperties2KHR*: proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayPlaneProperties2KHR): VkResult {.stdcall.} + vkGetDisplayModeProperties2KHR*: proc (physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayModeProperties2KHR): VkResult {.stdcall.} + vkGetDisplayPlaneCapabilities2KHR*: proc (physicalDevice: VkPhysicalDevice, pDisplayPlaneInfo: ptr VkDisplayPlaneInfo2KHR, pCapabilities: ptr VkDisplayPlaneCapabilities2KHR): VkResult {.stdcall.} + vkGetBufferMemoryRequirements2*: proc (device: VkDevice, pInfo: ptr VkBufferMemoryRequirementsInfo2, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.} + vkGetImageMemoryRequirements2*: proc (device: VkDevice, pInfo: ptr VkImageMemoryRequirementsInfo2, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.} + vkGetImageSparseMemoryRequirements2*: proc (device: VkDevice, pInfo: ptr VkImageSparseMemoryRequirementsInfo2, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2): void {.stdcall.} + vkGetDeviceBufferMemoryRequirements*: proc (device: VkDevice, pInfo: ptr VkDeviceBufferMemoryRequirements, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.} + vkGetDeviceImageMemoryRequirements*: proc (device: VkDevice, pInfo: ptr VkDeviceImageMemoryRequirements, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.} + vkGetDeviceImageSparseMemoryRequirements*: proc (device: VkDevice, pInfo: ptr VkDeviceImageMemoryRequirements, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2): void {.stdcall.} + vkCreateSamplerYcbcrConversion*: proc (device: VkDevice, pCreateInfo: ptr VkSamplerYcbcrConversionCreateInfo, pAllocator: ptr VkAllocationCallbacks, pYcbcrConversion: ptr VkSamplerYcbcrConversion): VkResult {.stdcall.} + vkDestroySamplerYcbcrConversion*: proc (device: VkDevice, ycbcrConversion: VkSamplerYcbcrConversion, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetDeviceQueue2*: proc (device: VkDevice, pQueueInfo: ptr VkDeviceQueueInfo2, pQueue: ptr VkQueue): void {.stdcall.} + vkCreateValidationCacheEXT*: proc (device: VkDevice, pCreateInfo: ptr VkValidationCacheCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pValidationCache: ptr VkValidationCacheEXT): VkResult {.stdcall.} + vkDestroyValidationCacheEXT*: proc (device: VkDevice, validationCache: VkValidationCacheEXT, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetValidationCacheDataEXT*: proc (device: VkDevice, validationCache: VkValidationCacheEXT, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.} + vkMergeValidationCachesEXT*: proc (device: VkDevice, dstCache: VkValidationCacheEXT, srcCacheCount: uint32, pSrcCaches: ptr VkValidationCacheEXT): VkResult {.stdcall.} + vkGetDescriptorSetLayoutSupport*: proc (device: VkDevice, pCreateInfo: ptr VkDescriptorSetLayoutCreateInfo, pSupport: ptr VkDescriptorSetLayoutSupport): void {.stdcall.} + vkGetSwapchainGrallocUsageANDROID*: proc (device: VkDevice, format: VkFormat, imageUsage: VkImageUsageFlags, grallocUsage: ptr int): VkResult {.stdcall.} + vkGetSwapchainGrallocUsage2ANDROID*: proc (device: VkDevice, format: VkFormat, imageUsage: VkImageUsageFlags, swapchainImageUsage: VkSwapchainImageUsageFlagsANDROID, grallocConsumerUsage: ptr uint64, grallocProducerUsage: ptr uint64): VkResult {.stdcall.} + vkAcquireImageANDROID*: proc (device: VkDevice, image: VkImage, nativeFenceFd: int, semaphore: VkSemaphore, fence: VkFence): VkResult {.stdcall.} + vkQueueSignalReleaseImageANDROID*: proc (queue: VkQueue, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, image: VkImage, pNativeFenceFd: ptr int): VkResult {.stdcall.} + vkGetShaderInfoAMD*: proc (device: VkDevice, pipeline: VkPipeline, shaderStage: VkShaderStageFlagBits, infoType: VkShaderInfoTypeAMD, pInfoSize: ptr uint, pInfo: pointer): VkResult {.stdcall.} + vkSetLocalDimmingAMD*: proc (device: VkDevice, swapChain: VkSwapchainKHR, localDimmingEnable: VkBool32): void {.stdcall.} + vkGetPhysicalDeviceCalibrateableTimeDomainsKHR*: proc (physicalDevice: VkPhysicalDevice, pTimeDomainCount: ptr uint32, pTimeDomains: ptr VkTimeDomainKHR): VkResult {.stdcall.} + vkGetCalibratedTimestampsKHR*: proc (device: VkDevice, timestampCount: uint32, pTimestampInfos: ptr VkCalibratedTimestampInfoKHR, pTimestamps: ptr uint64, pMaxDeviation: ptr uint64): VkResult {.stdcall.} + vkSetDebugUtilsObjectNameEXT*: proc (device: VkDevice, pNameInfo: ptr VkDebugUtilsObjectNameInfoEXT): VkResult {.stdcall.} + vkSetDebugUtilsObjectTagEXT*: proc (device: VkDevice, pTagInfo: ptr VkDebugUtilsObjectTagInfoEXT): VkResult {.stdcall.} + vkQueueBeginDebugUtilsLabelEXT*: proc (queue: VkQueue, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.} + vkQueueEndDebugUtilsLabelEXT*: proc (queue: VkQueue): void {.stdcall.} + vkQueueInsertDebugUtilsLabelEXT*: proc (queue: VkQueue, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.} + vkCmdBeginDebugUtilsLabelEXT*: proc (commandBuffer: VkCommandBuffer, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.} + vkCmdEndDebugUtilsLabelEXT*: proc (commandBuffer: VkCommandBuffer): void {.stdcall.} + vkCmdInsertDebugUtilsLabelEXT*: proc (commandBuffer: VkCommandBuffer, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.} + vkCreateDebugUtilsMessengerEXT*: proc (instance: VkInstance, pCreateInfo: ptr VkDebugUtilsMessengerCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pMessenger: ptr VkDebugUtilsMessengerEXT): VkResult {.stdcall.} + vkDestroyDebugUtilsMessengerEXT*: proc (instance: VkInstance, messenger: VkDebugUtilsMessengerEXT, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkSubmitDebugUtilsMessageEXT*: proc (instance: VkInstance, messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEXT, messageTypes: VkDebugUtilsMessageTypeFlagsEXT, pCallbackData: ptr VkDebugUtilsMessengerCallbackDataEXT): void {.stdcall.} + vkGetMemoryHostPointerPropertiesEXT*: proc (device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, pHostPointer: pointer, pMemoryHostPointerProperties: ptr VkMemoryHostPointerPropertiesEXT): VkResult {.stdcall.} + vkCmdWriteBufferMarkerAMD*: proc (commandBuffer: VkCommandBuffer, pipelineStage: VkPipelineStageFlagBits, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, marker: uint32): void {.stdcall.} + vkCreateRenderPass2*: proc (device: VkDevice, pCreateInfo: ptr VkRenderPassCreateInfo2, pAllocator: ptr VkAllocationCallbacks, pRenderPass: ptr VkRenderPass): VkResult {.stdcall.} + vkCmdBeginRenderPass2*: proc (commandBuffer: VkCommandBuffer, pRenderPassBegin: ptr VkRenderPassBeginInfo, pSubpassBeginInfo: ptr VkSubpassBeginInfo): void {.stdcall.} + vkCmdNextSubpass2*: proc (commandBuffer: VkCommandBuffer, pSubpassBeginInfo: ptr VkSubpassBeginInfo, pSubpassEndInfo: ptr VkSubpassEndInfo): void {.stdcall.} + vkCmdEndRenderPass2*: proc (commandBuffer: VkCommandBuffer, pSubpassEndInfo: ptr VkSubpassEndInfo): void {.stdcall.} + vkGetSemaphoreCounterValue*: proc (device: VkDevice, semaphore: VkSemaphore, pValue: ptr uint64): VkResult {.stdcall.} + vkWaitSemaphores*: proc (device: VkDevice, pWaitInfo: ptr VkSemaphoreWaitInfo, timeout: uint64): VkResult {.stdcall.} + vkSignalSemaphore*: proc (device: VkDevice, pSignalInfo: ptr VkSemaphoreSignalInfo): VkResult {.stdcall.} + vkGetAndroidHardwareBufferPropertiesANDROID*: proc (device: VkDevice, buffer: ptr AHardwareBuffer, pProperties: ptr VkAndroidHardwareBufferPropertiesANDROID): VkResult {.stdcall.} + vkGetMemoryAndroidHardwareBufferANDROID*: proc (device: VkDevice, pInfo: ptr VkMemoryGetAndroidHardwareBufferInfoANDROID, pBuffer: ptr ptr AHardwareBuffer): VkResult {.stdcall.} + vkCmdDrawIndirectCount*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.} + vkCmdDrawIndexedIndirectCount*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.} + vkCmdSetCheckpointNV*: proc (commandBuffer: VkCommandBuffer, pCheckpointMarker: pointer): void {.stdcall.} + vkGetQueueCheckpointDataNV*: proc (queue: VkQueue, pCheckpointDataCount: ptr uint32, pCheckpointData: ptr VkCheckpointDataNV): void {.stdcall.} + vkCmdBindTransformFeedbackBuffersEXT*: proc (commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize, pSizes: ptr VkDeviceSize): void {.stdcall.} + vkCmdBeginTransformFeedbackEXT*: proc (commandBuffer: VkCommandBuffer, firstCounterBuffer: uint32, counterBufferCount: uint32, pCounterBuffers: ptr VkBuffer, pCounterBufferOffsets: ptr VkDeviceSize): void {.stdcall.} + vkCmdEndTransformFeedbackEXT*: proc (commandBuffer: VkCommandBuffer, firstCounterBuffer: uint32, counterBufferCount: uint32, pCounterBuffers: ptr VkBuffer, pCounterBufferOffsets: ptr VkDeviceSize): void {.stdcall.} + vkCmdBeginQueryIndexedEXT*: proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, flags: VkQueryControlFlags, index: uint32): void {.stdcall.} + vkCmdEndQueryIndexedEXT*: proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, index: uint32): void {.stdcall.} + vkCmdDrawIndirectByteCountEXT*: proc (commandBuffer: VkCommandBuffer, instanceCount: uint32, firstInstance: uint32, counterBuffer: VkBuffer, counterBufferOffset: VkDeviceSize, counterOffset: uint32, vertexStride: uint32): void {.stdcall.} + vkCmdSetExclusiveScissorNV*: proc (commandBuffer: VkCommandBuffer, firstExclusiveScissor: uint32, exclusiveScissorCount: uint32, pExclusiveScissors: ptr VkRect2D): void {.stdcall.} + vkCmdSetExclusiveScissorEnableNV*: proc (commandBuffer: VkCommandBuffer, firstExclusiveScissor: uint32, exclusiveScissorCount: uint32, pExclusiveScissorEnables: ptr VkBool32): void {.stdcall.} + vkCmdBindShadingRateImageNV*: proc (commandBuffer: VkCommandBuffer, imageView: VkImageView, imageLayout: VkImageLayout): void {.stdcall.} + vkCmdSetViewportShadingRatePaletteNV*: proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pShadingRatePalettes: ptr VkShadingRatePaletteNV): void {.stdcall.} + vkCmdSetCoarseSampleOrderNV*: proc (commandBuffer: VkCommandBuffer, sampleOrderType: VkCoarseSampleOrderTypeNV, customSampleOrderCount: uint32, pCustomSampleOrders: ptr VkCoarseSampleOrderCustomNV): void {.stdcall.} + vkCmdDrawMeshTasksNV*: proc (commandBuffer: VkCommandBuffer, taskCount: uint32, firstTask: uint32): void {.stdcall.} + vkCmdDrawMeshTasksIndirectNV*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.} + vkCmdDrawMeshTasksIndirectCountNV*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.} + vkCmdDrawMeshTasksEXT*: proc (commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.} + vkCmdDrawMeshTasksIndirectEXT*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.} + vkCmdDrawMeshTasksIndirectCountEXT*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.} + vkCompileDeferredNV*: proc (device: VkDevice, pipeline: VkPipeline, shader: uint32): VkResult {.stdcall.} + vkCreateAccelerationStructureNV*: proc (device: VkDevice, pCreateInfo: ptr VkAccelerationStructureCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pAccelerationStructure: ptr VkAccelerationStructureNV): VkResult {.stdcall.} + vkCmdBindInvocationMaskHUAWEI*: proc (commandBuffer: VkCommandBuffer, imageView: VkImageView, imageLayout: VkImageLayout): void {.stdcall.} + vkDestroyAccelerationStructureKHR*: proc (device: VkDevice, accelerationStructure: VkAccelerationStructureKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyAccelerationStructureNV*: proc (device: VkDevice, accelerationStructure: VkAccelerationStructureNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetAccelerationStructureMemoryRequirementsNV*: proc (device: VkDevice, pInfo: ptr VkAccelerationStructureMemoryRequirementsInfoNV, pMemoryRequirements: ptr VkMemoryRequirements2KHR): void {.stdcall.} + vkBindAccelerationStructureMemoryNV*: proc (device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindAccelerationStructureMemoryInfoNV): VkResult {.stdcall.} + vkCmdCopyAccelerationStructureNV*: proc (commandBuffer: VkCommandBuffer, dst: VkAccelerationStructureNV, src: VkAccelerationStructureNV, mode: VkCopyAccelerationStructureModeKHR): void {.stdcall.} + vkCmdCopyAccelerationStructureKHR*: proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyAccelerationStructureInfoKHR): void {.stdcall.} + vkCopyAccelerationStructureKHR*: proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyAccelerationStructureInfoKHR): VkResult {.stdcall.} + vkCmdCopyAccelerationStructureToMemoryKHR*: proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR): void {.stdcall.} + vkCopyAccelerationStructureToMemoryKHR*: proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR): VkResult {.stdcall.} + vkCmdCopyMemoryToAccelerationStructureKHR*: proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR): void {.stdcall.} + vkCopyMemoryToAccelerationStructureKHR*: proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR): VkResult {.stdcall.} + vkCmdWriteAccelerationStructuresPropertiesKHR*: proc (commandBuffer: VkCommandBuffer, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR, queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.stdcall.} + vkCmdWriteAccelerationStructuresPropertiesNV*: proc (commandBuffer: VkCommandBuffer, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureNV, queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.stdcall.} + vkCmdBuildAccelerationStructureNV*: proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkAccelerationStructureInfoNV, instanceData: VkBuffer, instanceOffset: VkDeviceSize, update: VkBool32, dst: VkAccelerationStructureNV, src: VkAccelerationStructureNV, scratch: VkBuffer, scratchOffset: VkDeviceSize): void {.stdcall.} + vkWriteAccelerationStructuresPropertiesKHR*: proc (device: VkDevice, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR, queryType: VkQueryType, dataSize: uint, pData: pointer, stride: uint): VkResult {.stdcall.} + vkCmdTraceRaysKHR*: proc (commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, width: uint32, height: uint32, depth: uint32): void {.stdcall.} + vkCmdTraceRaysNV*: proc (commandBuffer: VkCommandBuffer, raygenShaderBindingTableBuffer: VkBuffer, raygenShaderBindingOffset: VkDeviceSize, missShaderBindingTableBuffer: VkBuffer, missShaderBindingOffset: VkDeviceSize, missShaderBindingStride: VkDeviceSize, hitShaderBindingTableBuffer: VkBuffer, hitShaderBindingOffset: VkDeviceSize, hitShaderBindingStride: VkDeviceSize, callableShaderBindingTableBuffer: VkBuffer, callableShaderBindingOffset: VkDeviceSize, callableShaderBindingStride: VkDeviceSize, width: uint32, height: uint32, depth: uint32): void {.stdcall.} + vkGetRayTracingShaderGroupHandlesKHR*: proc (device: VkDevice, pipeline: VkPipeline, firstGroup: uint32, groupCount: uint32, dataSize: uint, pData: pointer): VkResult {.stdcall.} + vkGetRayTracingCaptureReplayShaderGroupHandlesKHR*: proc (device: VkDevice, pipeline: VkPipeline, firstGroup: uint32, groupCount: uint32, dataSize: uint, pData: pointer): VkResult {.stdcall.} + vkGetAccelerationStructureHandleNV*: proc (device: VkDevice, accelerationStructure: VkAccelerationStructureNV, dataSize: uint, pData: pointer): VkResult {.stdcall.} + vkCreateRayTracingPipelinesNV*: proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} + vkCreateRayTracingPipelinesNV*: proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} + vkCreateRayTracingPipelinesKHR*: proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} + vkCreateRayTracingPipelinesKHR*: proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} + vkGetPhysicalDeviceCooperativeMatrixPropertiesNV*: proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkCooperativeMatrixPropertiesNV): VkResult {.stdcall.} + vkCmdTraceRaysIndirectKHR*: proc (commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, indirectDeviceAddress: VkDeviceAddress): void {.stdcall.} + vkCmdTraceRaysIndirect2KHR*: proc (commandBuffer: VkCommandBuffer, indirectDeviceAddress: VkDeviceAddress): void {.stdcall.} + vkGetDeviceAccelerationStructureCompatibilityKHR*: proc (device: VkDevice, pVersionInfo: ptr VkAccelerationStructureVersionInfoKHR, pCompatibility: ptr VkAccelerationStructureCompatibilityKHR): void {.stdcall.} + vkGetRayTracingShaderGroupStackSizeKHR*: proc (device: VkDevice, pipeline: VkPipeline, group: uint32, groupShader: VkShaderGroupShaderKHR): VkDeviceSize {.stdcall.} + vkCmdSetRayTracingPipelineStackSizeKHR*: proc (commandBuffer: VkCommandBuffer, pipelineStackSize: uint32): void {.stdcall.} + vkGetImageViewHandleNVX*: proc (device: VkDevice, pInfo: ptr VkImageViewHandleInfoNVX): uint32 {.stdcall.} + vkGetImageViewAddressNVX*: proc (device: VkDevice, imageView: VkImageView, pProperties: ptr VkImageViewAddressPropertiesNVX): VkResult {.stdcall.} + vkGetPhysicalDeviceSurfacePresentModes2EXT*: proc (physicalDevice: VkPhysicalDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pPresentModeCount: ptr uint32, pPresentModes: ptr VkPresentModeKHR): VkResult {.stdcall.} + vkGetDeviceGroupSurfacePresentModes2EXT*: proc (device: VkDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pModes: ptr VkDeviceGroupPresentModeFlagsKHR): VkResult {.stdcall.} + vkAcquireFullScreenExclusiveModeEXT*: proc (device: VkDevice, swapchain: VkSwapchainKHR): VkResult {.stdcall.} + vkReleaseFullScreenExclusiveModeEXT*: proc (device: VkDevice, swapchain: VkSwapchainKHR): VkResult {.stdcall.} + vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR*: proc (physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, pCounterCount: ptr uint32, pCounters: ptr VkPerformanceCounterKHR, pCounterDescriptions: ptr VkPerformanceCounterDescriptionKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR*: proc (physicalDevice: VkPhysicalDevice, pPerformanceQueryCreateInfo: ptr VkQueryPoolPerformanceCreateInfoKHR, pNumPasses: ptr uint32): void {.stdcall.} + vkAcquireProfilingLockKHR*: proc (device: VkDevice, pInfo: ptr VkAcquireProfilingLockInfoKHR): VkResult {.stdcall.} + vkReleaseProfilingLockKHR*: proc (device: VkDevice): void {.stdcall.} + vkGetImageDrmFormatModifierPropertiesEXT*: proc (device: VkDevice, image: VkImage, pProperties: ptr VkImageDrmFormatModifierPropertiesEXT): VkResult {.stdcall.} + vkGetBufferOpaqueCaptureAddress*: proc (device: VkDevice, pInfo: ptr VkBufferDeviceAddressInfo): uint64 {.stdcall.} + vkGetBufferDeviceAddress*: proc (device: VkDevice, pInfo: ptr VkBufferDeviceAddressInfo): VkDeviceAddress {.stdcall.} + vkCreateHeadlessSurfaceEXT*: proc (instance: VkInstance, pCreateInfo: ptr VkHeadlessSurfaceCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV*: proc (physicalDevice: VkPhysicalDevice, pCombinationCount: ptr uint32, pCombinations: ptr VkFramebufferMixedSamplesCombinationNV): VkResult {.stdcall.} + vkInitializePerformanceApiINTEL*: proc (device: VkDevice, pInitializeInfo: ptr VkInitializePerformanceApiInfoINTEL): VkResult {.stdcall.} + vkUninitializePerformanceApiINTEL*: proc (device: VkDevice): void {.stdcall.} + vkCmdSetPerformanceMarkerINTEL*: proc (commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkPerformanceMarkerInfoINTEL): VkResult {.stdcall.} + vkCmdSetPerformanceStreamMarkerINTEL*: proc (commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkPerformanceStreamMarkerInfoINTEL): VkResult {.stdcall.} + vkCmdSetPerformanceOverrideINTEL*: proc (commandBuffer: VkCommandBuffer, pOverrideInfo: ptr VkPerformanceOverrideInfoINTEL): VkResult {.stdcall.} + vkAcquirePerformanceConfigurationINTEL*: proc (device: VkDevice, pAcquireInfo: ptr VkPerformanceConfigurationAcquireInfoINTEL, pConfiguration: ptr VkPerformanceConfigurationINTEL): VkResult {.stdcall.} + vkReleasePerformanceConfigurationINTEL*: proc (device: VkDevice, configuration: VkPerformanceConfigurationINTEL): VkResult {.stdcall.} + vkQueueSetPerformanceConfigurationINTEL*: proc (queue: VkQueue, configuration: VkPerformanceConfigurationINTEL): VkResult {.stdcall.} + vkGetPerformanceParameterINTEL*: proc (device: VkDevice, parameter: VkPerformanceParameterTypeINTEL, pValue: ptr VkPerformanceValueINTEL): VkResult {.stdcall.} + vkGetDeviceMemoryOpaqueCaptureAddress*: proc (device: VkDevice, pInfo: ptr VkDeviceMemoryOpaqueCaptureAddressInfo): uint64 {.stdcall.} + vkGetPipelineExecutablePropertiesKHR*: proc (device: VkDevice, pPipelineInfo: ptr VkPipelineInfoKHR, pExecutableCount: ptr uint32, pProperties: ptr VkPipelineExecutablePropertiesKHR): VkResult {.stdcall.} + vkGetPipelineExecutableStatisticsKHR*: proc (device: VkDevice, pExecutableInfo: ptr VkPipelineExecutableInfoKHR, pStatisticCount: ptr uint32, pStatistics: ptr VkPipelineExecutableStatisticKHR): VkResult {.stdcall.} + vkGetPipelineExecutableInternalRepresentationsKHR*: proc (device: VkDevice, pExecutableInfo: ptr VkPipelineExecutableInfoKHR, pInternalRepresentationCount: ptr uint32, pInternalRepresentations: ptr VkPipelineExecutableInternalRepresentationKHR): VkResult {.stdcall.} + vkCmdSetLineStippleKHR*: proc (commandBuffer: VkCommandBuffer, lineStippleFactor: uint32, lineStipplePattern: uint16): void {.stdcall.} + vkGetFaultData*: proc (device: VkDevice, faultQueryBehavior: VkFaultQueryBehavior, pUnrecordedFaults: ptr VkBool32, pFaultCount: ptr uint32, pFaults: ptr VkFaultData): VkResult {.stdcall.} + vkGetPhysicalDeviceToolProperties*: proc (physicalDevice: VkPhysicalDevice, pToolCount: ptr uint32, pToolProperties: ptr VkPhysicalDeviceToolProperties): VkResult {.stdcall.} + vkCreateAccelerationStructureKHR*: proc (device: VkDevice, pCreateInfo: ptr VkAccelerationStructureCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pAccelerationStructure: ptr VkAccelerationStructureKHR): VkResult {.stdcall.} + vkCmdBuildAccelerationStructuresKHR*: proc (commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR): void {.stdcall.} + vkCmdBuildAccelerationStructuresIndirectKHR*: proc (commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, pIndirectDeviceAddresses: ptr VkDeviceAddress, pIndirectStrides: ptr uint32, ppMaxPrimitiveCounts: ptr ptr uint32): void {.stdcall.} + vkBuildAccelerationStructuresKHR*: proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR): VkResult {.stdcall.} + vkGetAccelerationStructureDeviceAddressKHR*: proc (device: VkDevice, pInfo: ptr VkAccelerationStructureDeviceAddressInfoKHR): VkDeviceAddress {.stdcall.} + vkCreateDeferredOperationKHR*: proc (device: VkDevice, pAllocator: ptr VkAllocationCallbacks, pDeferredOperation: ptr VkDeferredOperationKHR): VkResult {.stdcall.} + vkDestroyDeferredOperationKHR*: proc (device: VkDevice, operation: VkDeferredOperationKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetDeferredOperationMaxConcurrencyKHR*: proc (device: VkDevice, operation: VkDeferredOperationKHR): uint32 {.stdcall.} + vkGetDeferredOperationResultKHR*: proc (device: VkDevice, operation: VkDeferredOperationKHR): VkResult {.stdcall.} + vkDeferredOperationJoinKHR*: proc (device: VkDevice, operation: VkDeferredOperationKHR): VkResult {.stdcall.} + vkGetPipelineIndirectMemoryRequirementsNV*: proc (device: VkDevice, pCreateInfo: ptr VkComputePipelineCreateInfo, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.} + vkGetPipelineIndirectDeviceAddressNV*: proc (device: VkDevice, pInfo: ptr VkPipelineIndirectDeviceAddressInfoNV): VkDeviceAddress {.stdcall.} + vkCmdSetCullMode*: proc (commandBuffer: VkCommandBuffer, cullMode: VkCullModeFlags): void {.stdcall.} + vkCmdSetFrontFace*: proc (commandBuffer: VkCommandBuffer, frontFace: VkFrontFace): void {.stdcall.} + vkCmdSetPrimitiveTopology*: proc (commandBuffer: VkCommandBuffer, primitiveTopology: VkPrimitiveTopology): void {.stdcall.} + vkCmdSetViewportWithCount*: proc (commandBuffer: VkCommandBuffer, viewportCount: uint32, pViewports: ptr VkViewport): void {.stdcall.} + vkCmdSetScissorWithCount*: proc (commandBuffer: VkCommandBuffer, scissorCount: uint32, pScissors: ptr VkRect2D): void {.stdcall.} + vkCmdBindIndexBuffer2KHR*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize, indexType: VkIndexType): void {.stdcall.} + vkCmdBindVertexBuffers2*: proc (commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize, pSizes: ptr VkDeviceSize, pStrides: ptr VkDeviceSize): void {.stdcall.} + vkCmdSetDepthTestEnable*: proc (commandBuffer: VkCommandBuffer, depthTestEnable: VkBool32): void {.stdcall.} + vkCmdSetDepthWriteEnable*: proc (commandBuffer: VkCommandBuffer, depthWriteEnable: VkBool32): void {.stdcall.} + vkCmdSetDepthCompareOp*: proc (commandBuffer: VkCommandBuffer, depthCompareOp: VkCompareOp): void {.stdcall.} + vkCmdSetDepthBoundsTestEnable*: proc (commandBuffer: VkCommandBuffer, depthBoundsTestEnable: VkBool32): void {.stdcall.} + vkCmdSetStencilTestEnable*: proc (commandBuffer: VkCommandBuffer, stencilTestEnable: VkBool32): void {.stdcall.} + vkCmdSetStencilOp*: proc (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, failOp: VkStencilOp, passOp: VkStencilOp, depthFailOp: VkStencilOp, compareOp: VkCompareOp): void {.stdcall.} + vkCmdSetPatchControlPointsEXT*: proc (commandBuffer: VkCommandBuffer, patchControlPoints: uint32): void {.stdcall.} + vkCmdSetRasterizerDiscardEnable*: proc (commandBuffer: VkCommandBuffer, rasterizerDiscardEnable: VkBool32): void {.stdcall.} + vkCmdSetDepthBiasEnable*: proc (commandBuffer: VkCommandBuffer, depthBiasEnable: VkBool32): void {.stdcall.} + vkCmdSetLogicOpEXT*: proc (commandBuffer: VkCommandBuffer, logicOp: VkLogicOp): void {.stdcall.} + vkCmdSetPrimitiveRestartEnable*: proc (commandBuffer: VkCommandBuffer, primitiveRestartEnable: VkBool32): void {.stdcall.} + vkCmdSetTessellationDomainOriginEXT*: proc (commandBuffer: VkCommandBuffer, domainOrigin: VkTessellationDomainOrigin): void {.stdcall.} + vkCmdSetDepthClampEnableEXT*: proc (commandBuffer: VkCommandBuffer, depthClampEnable: VkBool32): void {.stdcall.} + vkCmdSetPolygonModeEXT*: proc (commandBuffer: VkCommandBuffer, polygonMode: VkPolygonMode): void {.stdcall.} + vkCmdSetRasterizationSamplesEXT*: proc (commandBuffer: VkCommandBuffer, rasterizationSamples: VkSampleCountFlagBits): void {.stdcall.} + vkCmdSetSampleMaskEXT*: proc (commandBuffer: VkCommandBuffer, samples: VkSampleCountFlagBits, pSampleMask: ptr VkSampleMask): void {.stdcall.} + vkCmdSetAlphaToCoverageEnableEXT*: proc (commandBuffer: VkCommandBuffer, alphaToCoverageEnable: VkBool32): void {.stdcall.} + vkCmdSetAlphaToOneEnableEXT*: proc (commandBuffer: VkCommandBuffer, alphaToOneEnable: VkBool32): void {.stdcall.} + vkCmdSetLogicOpEnableEXT*: proc (commandBuffer: VkCommandBuffer, logicOpEnable: VkBool32): void {.stdcall.} + vkCmdSetColorBlendEnableEXT*: proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEnables: ptr VkBool32): void {.stdcall.} + vkCmdSetColorBlendEquationEXT*: proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEquations: ptr VkColorBlendEquationEXT): void {.stdcall.} + vkCmdSetColorWriteMaskEXT*: proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorWriteMasks: ptr VkColorComponentFlags): void {.stdcall.} + vkCmdSetRasterizationStreamEXT*: proc (commandBuffer: VkCommandBuffer, rasterizationStream: uint32): void {.stdcall.} + vkCmdSetConservativeRasterizationModeEXT*: proc (commandBuffer: VkCommandBuffer, conservativeRasterizationMode: VkConservativeRasterizationModeEXT): void {.stdcall.} + vkCmdSetExtraPrimitiveOverestimationSizeEXT*: proc (commandBuffer: VkCommandBuffer, extraPrimitiveOverestimationSize: float32): void {.stdcall.} + vkCmdSetDepthClipEnableEXT*: proc (commandBuffer: VkCommandBuffer, depthClipEnable: VkBool32): void {.stdcall.} + vkCmdSetSampleLocationsEnableEXT*: proc (commandBuffer: VkCommandBuffer, sampleLocationsEnable: VkBool32): void {.stdcall.} + vkCmdSetColorBlendAdvancedEXT*: proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendAdvanced: ptr VkColorBlendAdvancedEXT): void {.stdcall.} + vkCmdSetProvokingVertexModeEXT*: proc (commandBuffer: VkCommandBuffer, provokingVertexMode: VkProvokingVertexModeEXT): void {.stdcall.} + vkCmdSetLineRasterizationModeEXT*: proc (commandBuffer: VkCommandBuffer, lineRasterizationMode: VkLineRasterizationModeEXT): void {.stdcall.} + vkCmdSetLineStippleEnableEXT*: proc (commandBuffer: VkCommandBuffer, stippledLineEnable: VkBool32): void {.stdcall.} + vkCmdSetDepthClipNegativeOneToOneEXT*: proc (commandBuffer: VkCommandBuffer, negativeOneToOne: VkBool32): void {.stdcall.} + vkCmdSetViewportWScalingEnableNV*: proc (commandBuffer: VkCommandBuffer, viewportWScalingEnable: VkBool32): void {.stdcall.} + vkCmdSetViewportSwizzleNV*: proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportSwizzles: ptr VkViewportSwizzleNV): void {.stdcall.} + vkCmdSetCoverageToColorEnableNV*: proc (commandBuffer: VkCommandBuffer, coverageToColorEnable: VkBool32): void {.stdcall.} + vkCmdSetCoverageToColorLocationNV*: proc (commandBuffer: VkCommandBuffer, coverageToColorLocation: uint32): void {.stdcall.} + vkCmdSetCoverageModulationModeNV*: proc (commandBuffer: VkCommandBuffer, coverageModulationMode: VkCoverageModulationModeNV): void {.stdcall.} + vkCmdSetCoverageModulationTableEnableNV*: proc (commandBuffer: VkCommandBuffer, coverageModulationTableEnable: VkBool32): void {.stdcall.} + vkCmdSetCoverageModulationTableNV*: proc (commandBuffer: VkCommandBuffer, coverageModulationTableCount: uint32, pCoverageModulationTable: ptr float32): void {.stdcall.} + vkCmdSetShadingRateImageEnableNV*: proc (commandBuffer: VkCommandBuffer, shadingRateImageEnable: VkBool32): void {.stdcall.} + vkCmdSetCoverageReductionModeNV*: proc (commandBuffer: VkCommandBuffer, coverageReductionMode: VkCoverageReductionModeNV): void {.stdcall.} + vkCmdSetRepresentativeFragmentTestEnableNV*: proc (commandBuffer: VkCommandBuffer, representativeFragmentTestEnable: VkBool32): void {.stdcall.} + vkCreatePrivateDataSlot*: proc (device: VkDevice, pCreateInfo: ptr VkPrivateDataSlotCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPrivateDataSlot: ptr VkPrivateDataSlot): VkResult {.stdcall.} + vkDestroyPrivateDataSlot*: proc (device: VkDevice, privateDataSlot: VkPrivateDataSlot, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkSetPrivateData*: proc (device: VkDevice, objectType: VkObjectType, objectHandle: uint64, privateDataSlot: VkPrivateDataSlot, data: uint64): VkResult {.stdcall.} + vkGetPrivateData*: proc (device: VkDevice, objectType: VkObjectType, objectHandle: uint64, privateDataSlot: VkPrivateDataSlot, pData: ptr uint64): void {.stdcall.} + vkCmdCopyBuffer2*: proc (commandBuffer: VkCommandBuffer, pCopyBufferInfo: ptr VkCopyBufferInfo2): void {.stdcall.} + vkCmdCopyImage2*: proc (commandBuffer: VkCommandBuffer, pCopyImageInfo: ptr VkCopyImageInfo2): void {.stdcall.} + vkCmdBlitImage2*: proc (commandBuffer: VkCommandBuffer, pBlitImageInfo: ptr VkBlitImageInfo2): void {.stdcall.} + vkCmdCopyBufferToImage2*: proc (commandBuffer: VkCommandBuffer, pCopyBufferToImageInfo: ptr VkCopyBufferToImageInfo2): void {.stdcall.} + vkCmdCopyImageToBuffer2*: proc (commandBuffer: VkCommandBuffer, pCopyImageToBufferInfo: ptr VkCopyImageToBufferInfo2): void {.stdcall.} + vkCmdResolveImage2*: proc (commandBuffer: VkCommandBuffer, pResolveImageInfo: ptr VkResolveImageInfo2): void {.stdcall.} + vkCmdRefreshObjectsKHR*: proc (commandBuffer: VkCommandBuffer, pRefreshObjects: ptr VkRefreshObjectListKHR): void {.stdcall.} + vkGetPhysicalDeviceRefreshableObjectTypesKHR*: proc (physicalDevice: VkPhysicalDevice, pRefreshableObjectTypeCount: ptr uint32, pRefreshableObjectTypes: ptr VkObjectType): VkResult {.stdcall.} + vkCmdSetFragmentShadingRateKHR*: proc (commandBuffer: VkCommandBuffer, pFragmentSize: ptr VkExtent2D, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): void {.stdcall.} + vkGetPhysicalDeviceFragmentShadingRatesKHR*: proc (physicalDevice: VkPhysicalDevice, pFragmentShadingRateCount: ptr uint32, pFragmentShadingRates: ptr VkPhysicalDeviceFragmentShadingRateKHR): VkResult {.stdcall.} + vkCmdSetFragmentShadingRateEnumNV*: proc (commandBuffer: VkCommandBuffer, shadingRate: VkFragmentShadingRateNV, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): void {.stdcall.} + vkGetAccelerationStructureBuildSizesKHR*: proc (device: VkDevice, buildType: VkAccelerationStructureBuildTypeKHR, pBuildInfo: ptr VkAccelerationStructureBuildGeometryInfoKHR, pMaxPrimitiveCounts: ptr uint32, pSizeInfo: ptr VkAccelerationStructureBuildSizesInfoKHR): void {.stdcall.} + vkCmdSetVertexInputEXT*: proc (commandBuffer: VkCommandBuffer, vertexBindingDescriptionCount: uint32, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription2EXT, vertexAttributeDescriptionCount: uint32, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription2EXT): void {.stdcall.} + vkCmdSetColorWriteEnableEXT*: proc (commandBuffer: VkCommandBuffer, attachmentCount: uint32, pColorWriteEnables: ptr VkBool32): void {.stdcall.} + vkCmdSetEvent2*: proc (commandBuffer: VkCommandBuffer, event: VkEvent, pDependencyInfo: ptr VkDependencyInfo): void {.stdcall.} + vkCmdResetEvent2*: proc (commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags2): void {.stdcall.} + vkCmdWaitEvents2*: proc (commandBuffer: VkCommandBuffer, eventCount: uint32, pEvents: ptr VkEvent, pDependencyInfos: ptr VkDependencyInfo): void {.stdcall.} + vkCmdPipelineBarrier2*: proc (commandBuffer: VkCommandBuffer, pDependencyInfo: ptr VkDependencyInfo): void {.stdcall.} + vkQueueSubmit2*: proc (queue: VkQueue, submitCount: uint32, pSubmits: ptr VkSubmitInfo2, fence: VkFence): VkResult {.stdcall.} + vkCmdWriteTimestamp2*: proc (commandBuffer: VkCommandBuffer, stage: VkPipelineStageFlags2, queryPool: VkQueryPool, query: uint32): void {.stdcall.} + vkCmdWriteBufferMarker2AMD*: proc (commandBuffer: VkCommandBuffer, stage: VkPipelineStageFlags2, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, marker: uint32): void {.stdcall.} + vkGetQueueCheckpointData2NV*: proc (queue: VkQueue, pCheckpointDataCount: ptr uint32, pCheckpointData: ptr VkCheckpointData2NV): void {.stdcall.} + vkCopyMemoryToImageEXT*: proc (device: VkDevice, pCopyMemoryToImageInfo: ptr VkCopyMemoryToImageInfoEXT): VkResult {.stdcall.} + vkCopyImageToMemoryEXT*: proc (device: VkDevice, pCopyImageToMemoryInfo: ptr VkCopyImageToMemoryInfoEXT): VkResult {.stdcall.} + vkCopyImageToImageEXT*: proc (device: VkDevice, pCopyImageToImageInfo: ptr VkCopyImageToImageInfoEXT): VkResult {.stdcall.} + vkTransitionImageLayoutEXT*: proc (device: VkDevice, transitionCount: uint32, pTransitions: ptr VkHostImageLayoutTransitionInfoEXT): VkResult {.stdcall.} + vkGetCommandPoolMemoryConsumption*: proc (device: VkDevice, commandPool: VkCommandPool, commandBuffer: VkCommandBuffer, pConsumption: ptr VkCommandPoolMemoryConsumption): void {.stdcall.} + vkGetPhysicalDeviceVideoCapabilitiesKHR*: proc (physicalDevice: VkPhysicalDevice, pVideoProfile: ptr VkVideoProfileInfoKHR, pCapabilities: ptr VkVideoCapabilitiesKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceVideoFormatPropertiesKHR*: proc (physicalDevice: VkPhysicalDevice, pVideoFormatInfo: ptr VkPhysicalDeviceVideoFormatInfoKHR, pVideoFormatPropertyCount: ptr uint32, pVideoFormatProperties: ptr VkVideoFormatPropertiesKHR): VkResult {.stdcall.} + vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR*: proc (physicalDevice: VkPhysicalDevice, pQualityLevelInfo: ptr VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR, pQualityLevelProperties: ptr VkVideoEncodeQualityLevelPropertiesKHR): VkResult {.stdcall.} + vkCreateVideoSessionKHR*: proc (device: VkDevice, pCreateInfo: ptr VkVideoSessionCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pVideoSession: ptr VkVideoSessionKHR): VkResult {.stdcall.} + vkDestroyVideoSessionKHR*: proc (device: VkDevice, videoSession: VkVideoSessionKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCreateVideoSessionParametersKHR*: proc (device: VkDevice, pCreateInfo: ptr VkVideoSessionParametersCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pVideoSessionParameters: ptr VkVideoSessionParametersKHR): VkResult {.stdcall.} + vkUpdateVideoSessionParametersKHR*: proc (device: VkDevice, videoSessionParameters: VkVideoSessionParametersKHR, pUpdateInfo: ptr VkVideoSessionParametersUpdateInfoKHR): VkResult {.stdcall.} + vkGetEncodedVideoSessionParametersKHR*: proc (device: VkDevice, pVideoSessionParametersInfo: ptr VkVideoEncodeSessionParametersGetInfoKHR, pFeedbackInfo: ptr VkVideoEncodeSessionParametersFeedbackInfoKHR, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.} + vkDestroyVideoSessionParametersKHR*: proc (device: VkDevice, videoSessionParameters: VkVideoSessionParametersKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetVideoSessionMemoryRequirementsKHR*: proc (device: VkDevice, videoSession: VkVideoSessionKHR, pMemoryRequirementsCount: ptr uint32, pMemoryRequirements: ptr VkVideoSessionMemoryRequirementsKHR): VkResult {.stdcall.} + vkBindVideoSessionMemoryKHR*: proc (device: VkDevice, videoSession: VkVideoSessionKHR, bindSessionMemoryInfoCount: uint32, pBindSessionMemoryInfos: ptr VkBindVideoSessionMemoryInfoKHR): VkResult {.stdcall.} + vkCmdDecodeVideoKHR*: proc (commandBuffer: VkCommandBuffer, pDecodeInfo: ptr VkVideoDecodeInfoKHR): void {.stdcall.} + vkCmdBeginVideoCodingKHR*: proc (commandBuffer: VkCommandBuffer, pBeginInfo: ptr VkVideoBeginCodingInfoKHR): void {.stdcall.} + vkCmdControlVideoCodingKHR*: proc (commandBuffer: VkCommandBuffer, pCodingControlInfo: ptr VkVideoCodingControlInfoKHR): void {.stdcall.} + vkCmdEndVideoCodingKHR*: proc (commandBuffer: VkCommandBuffer, pEndCodingInfo: ptr VkVideoEndCodingInfoKHR): void {.stdcall.} + vkCmdEncodeVideoKHR*: proc (commandBuffer: VkCommandBuffer, pEncodeInfo: ptr VkVideoEncodeInfoKHR): void {.stdcall.} + vkCmdDecompressMemoryNV*: proc (commandBuffer: VkCommandBuffer, decompressRegionCount: uint32, pDecompressMemoryRegions: ptr VkDecompressMemoryRegionNV): void {.stdcall.} + vkCmdDecompressMemoryIndirectCountNV*: proc (commandBuffer: VkCommandBuffer, indirectCommandsAddress: VkDeviceAddress, indirectCommandsCountAddress: VkDeviceAddress, stride: uint32): void {.stdcall.} + vkCreateCuModuleNVX*: proc (device: VkDevice, pCreateInfo: ptr VkCuModuleCreateInfoNVX, pAllocator: ptr VkAllocationCallbacks, pModule: ptr VkCuModuleNVX): VkResult {.stdcall.} + vkCreateCuFunctionNVX*: proc (device: VkDevice, pCreateInfo: ptr VkCuFunctionCreateInfoNVX, pAllocator: ptr VkAllocationCallbacks, pFunction: ptr VkCuFunctionNVX): VkResult {.stdcall.} + vkDestroyCuModuleNVX*: proc (device: VkDevice, module: VkCuModuleNVX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyCuFunctionNVX*: proc (device: VkDevice, function: VkCuFunctionNVX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCmdCuLaunchKernelNVX*: proc (commandBuffer: VkCommandBuffer, pLaunchInfo: ptr VkCuLaunchInfoNVX): void {.stdcall.} + vkGetDescriptorSetLayoutSizeEXT*: proc (device: VkDevice, layout: VkDescriptorSetLayout, pLayoutSizeInBytes: ptr VkDeviceSize): void {.stdcall.} + vkGetDescriptorSetLayoutBindingOffsetEXT*: proc (device: VkDevice, layout: VkDescriptorSetLayout, binding: uint32, pOffset: ptr VkDeviceSize): void {.stdcall.} + vkGetDescriptorEXT*: proc (device: VkDevice, pDescriptorInfo: ptr VkDescriptorGetInfoEXT, dataSize: uint, pDescriptor: pointer): void {.stdcall.} + vkCmdBindDescriptorBuffersEXT*: proc (commandBuffer: VkCommandBuffer, bufferCount: uint32, pBindingInfos: ptr VkDescriptorBufferBindingInfoEXT): void {.stdcall.} + vkCmdSetDescriptorBufferOffsetsEXT*: proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, firstSet: uint32, setCount: uint32, pBufferIndices: ptr uint32, pOffsets: ptr VkDeviceSize): void {.stdcall.} + vkCmdBindDescriptorBufferEmbeddedSamplersEXT*: proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, set: uint32): void {.stdcall.} + vkGetBufferOpaqueCaptureDescriptorDataEXT*: proc (device: VkDevice, pInfo: ptr VkBufferCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.} + vkGetImageOpaqueCaptureDescriptorDataEXT*: proc (device: VkDevice, pInfo: ptr VkImageCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.} + vkGetImageViewOpaqueCaptureDescriptorDataEXT*: proc (device: VkDevice, pInfo: ptr VkImageViewCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.} + vkGetSamplerOpaqueCaptureDescriptorDataEXT*: proc (device: VkDevice, pInfo: ptr VkSamplerCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.} + vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT*: proc (device: VkDevice, pInfo: ptr VkAccelerationStructureCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.} + vkSetDeviceMemoryPriorityEXT*: proc (device: VkDevice, memory: VkDeviceMemory, priority: float32): void {.stdcall.} + vkAcquireDrmDisplayEXT*: proc (physicalDevice: VkPhysicalDevice, drmFd: int32, display: VkDisplayKHR): VkResult {.stdcall.} + vkGetDrmDisplayEXT*: proc (physicalDevice: VkPhysicalDevice, drmFd: int32, connectorId: uint32, display: ptr VkDisplayKHR): VkResult {.stdcall.} + vkWaitForPresentKHR*: proc (device: VkDevice, swapchain: VkSwapchainKHR, presentId: uint64, timeout: uint64): VkResult {.stdcall.} + vkCreateBufferCollectionFUCHSIA*: proc (device: VkDevice, pCreateInfo: ptr VkBufferCollectionCreateInfoFUCHSIA, pAllocator: ptr VkAllocationCallbacks, pCollection: ptr VkBufferCollectionFUCHSIA): VkResult {.stdcall.} + vkSetBufferCollectionBufferConstraintsFUCHSIA*: proc (device: VkDevice, collection: VkBufferCollectionFUCHSIA, pBufferConstraintsInfo: ptr VkBufferConstraintsInfoFUCHSIA): VkResult {.stdcall.} + vkSetBufferCollectionImageConstraintsFUCHSIA*: proc (device: VkDevice, collection: VkBufferCollectionFUCHSIA, pImageConstraintsInfo: ptr VkImageConstraintsInfoFUCHSIA): VkResult {.stdcall.} + vkDestroyBufferCollectionFUCHSIA*: proc (device: VkDevice, collection: VkBufferCollectionFUCHSIA, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetBufferCollectionPropertiesFUCHSIA*: proc (device: VkDevice, collection: VkBufferCollectionFUCHSIA, pProperties: ptr VkBufferCollectionPropertiesFUCHSIA): VkResult {.stdcall.} + vkCreateCudaModuleNV*: proc (device: VkDevice, pCreateInfo: ptr VkCudaModuleCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pModule: ptr VkCudaModuleNV): VkResult {.stdcall.} + vkGetCudaModuleCacheNV*: proc (device: VkDevice, module: VkCudaModuleNV, pCacheSize: ptr uint, pCacheData: pointer): VkResult {.stdcall.} + vkCreateCudaFunctionNV*: proc (device: VkDevice, pCreateInfo: ptr VkCudaFunctionCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pFunction: ptr VkCudaFunctionNV): VkResult {.stdcall.} + vkDestroyCudaModuleNV*: proc (device: VkDevice, module: VkCudaModuleNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyCudaFunctionNV*: proc (device: VkDevice, function: VkCudaFunctionNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCmdCudaLaunchKernelNV*: proc (commandBuffer: VkCommandBuffer, pLaunchInfo: ptr VkCudaLaunchInfoNV): void {.stdcall.} + vkCmdBeginRendering*: proc (commandBuffer: VkCommandBuffer, pRenderingInfo: ptr VkRenderingInfo): void {.stdcall.} + vkCmdEndRendering*: proc (commandBuffer: VkCommandBuffer): void {.stdcall.} + vkGetDescriptorSetLayoutHostMappingInfoVALVE*: proc (device: VkDevice, pBindingReference: ptr VkDescriptorSetBindingReferenceVALVE, pHostMapping: ptr VkDescriptorSetLayoutHostMappingInfoVALVE): void {.stdcall.} + vkGetDescriptorSetHostMappingVALVE*: proc (device: VkDevice, descriptorSet: VkDescriptorSet, ppData: ptr pointer): void {.stdcall.} + vkCreateMicromapEXT*: proc (device: VkDevice, pCreateInfo: ptr VkMicromapCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pMicromap: ptr VkMicromapEXT): VkResult {.stdcall.} + vkCmdBuildMicromapsEXT*: proc (commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkMicromapBuildInfoEXT): void {.stdcall.} + vkBuildMicromapsEXT*: proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, infoCount: uint32, pInfos: ptr VkMicromapBuildInfoEXT): VkResult {.stdcall.} + vkDestroyMicromapEXT*: proc (device: VkDevice, micromap: VkMicromapEXT, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkCmdCopyMicromapEXT*: proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMicromapInfoEXT): void {.stdcall.} + vkCopyMicromapEXT*: proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMicromapInfoEXT): VkResult {.stdcall.} + vkCmdCopyMicromapToMemoryEXT*: proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMicromapToMemoryInfoEXT): void {.stdcall.} + vkCopyMicromapToMemoryEXT*: proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMicromapToMemoryInfoEXT): VkResult {.stdcall.} + vkCmdCopyMemoryToMicromapEXT*: proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMemoryToMicromapInfoEXT): void {.stdcall.} + vkCopyMemoryToMicromapEXT*: proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMemoryToMicromapInfoEXT): VkResult {.stdcall.} + vkCmdWriteMicromapsPropertiesEXT*: proc (commandBuffer: VkCommandBuffer, micromapCount: uint32, pMicromaps: ptr VkMicromapEXT, queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.stdcall.} + vkWriteMicromapsPropertiesEXT*: proc (device: VkDevice, micromapCount: uint32, pMicromaps: ptr VkMicromapEXT, queryType: VkQueryType, dataSize: uint, pData: pointer, stride: uint): VkResult {.stdcall.} + vkGetDeviceMicromapCompatibilityEXT*: proc (device: VkDevice, pVersionInfo: ptr VkMicromapVersionInfoEXT, pCompatibility: ptr VkAccelerationStructureCompatibilityKHR): void {.stdcall.} + vkGetMicromapBuildSizesEXT*: proc (device: VkDevice, buildType: VkAccelerationStructureBuildTypeKHR, pBuildInfo: ptr VkMicromapBuildInfoEXT, pSizeInfo: ptr VkMicromapBuildSizesInfoEXT): void {.stdcall.} + vkGetShaderModuleIdentifierEXT*: proc (device: VkDevice, shaderModule: VkShaderModule, pIdentifier: ptr VkShaderModuleIdentifierEXT): void {.stdcall.} + vkGetShaderModuleCreateInfoIdentifierEXT*: proc (device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo, pIdentifier: ptr VkShaderModuleIdentifierEXT): void {.stdcall.} + vkGetImageSubresourceLayout2KHR*: proc (device: VkDevice, image: VkImage, pSubresource: ptr VkImageSubresource2KHR, pLayout: ptr VkSubresourceLayout2KHR): void {.stdcall.} + vkGetPipelinePropertiesEXT*: proc (device: VkDevice, pPipelineInfo: ptr VkPipelineInfoEXT, pPipelineProperties: ptr VkBaseOutStructure): VkResult {.stdcall.} + vkExportMetalObjectsEXT*: proc (device: VkDevice, pMetalObjectsInfo: ptr VkExportMetalObjectsInfoEXT): void {.stdcall.} + vkGetFramebufferTilePropertiesQCOM*: proc (device: VkDevice, framebuffer: VkFramebuffer, pPropertiesCount: ptr uint32, pProperties: ptr VkTilePropertiesQCOM): VkResult {.stdcall.} + vkGetDynamicRenderingTilePropertiesQCOM*: proc (device: VkDevice, pRenderingInfo: ptr VkRenderingInfo, pProperties: ptr VkTilePropertiesQCOM): VkResult {.stdcall.} + vkGetPhysicalDeviceOpticalFlowImageFormatsNV*: proc (physicalDevice: VkPhysicalDevice, pOpticalFlowImageFormatInfo: ptr VkOpticalFlowImageFormatInfoNV, pFormatCount: ptr uint32, pImageFormatProperties: ptr VkOpticalFlowImageFormatPropertiesNV): VkResult {.stdcall.} + vkCreateOpticalFlowSessionNV*: proc (device: VkDevice, pCreateInfo: ptr VkOpticalFlowSessionCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pSession: ptr VkOpticalFlowSessionNV): VkResult {.stdcall.} + vkDestroyOpticalFlowSessionNV*: proc (device: VkDevice, session: VkOpticalFlowSessionNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkBindOpticalFlowSessionImageNV*: proc (device: VkDevice, session: VkOpticalFlowSessionNV, bindingPoint: VkOpticalFlowSessionBindingPointNV, view: VkImageView, layout: VkImageLayout): VkResult {.stdcall.} + vkCmdOpticalFlowExecuteNV*: proc (commandBuffer: VkCommandBuffer, session: VkOpticalFlowSessionNV, pExecuteInfo: ptr VkOpticalFlowExecuteInfoNV): void {.stdcall.} + vkGetDeviceFaultInfoEXT*: proc (device: VkDevice, pFaultCounts: ptr VkDeviceFaultCountsEXT, pFaultInfo: ptr VkDeviceFaultInfoEXT): VkResult {.stdcall.} + vkCmdSetDepthBias2EXT*: proc (commandBuffer: VkCommandBuffer, pDepthBiasInfo: ptr VkDepthBiasInfoEXT): void {.stdcall.} + vkReleaseSwapchainImagesEXT*: proc (device: VkDevice, pReleaseInfo: ptr VkReleaseSwapchainImagesInfoEXT): VkResult {.stdcall.} + vkGetDeviceImageSubresourceLayoutKHR*: proc (device: VkDevice, pInfo: ptr VkDeviceImageSubresourceInfoKHR, pLayout: ptr VkSubresourceLayout2KHR): void {.stdcall.} + vkMapMemory2KHR*: proc (device: VkDevice, pMemoryMapInfo: ptr VkMemoryMapInfoKHR, ppData: ptr pointer): VkResult {.stdcall.} + vkUnmapMemory2KHR*: proc (device: VkDevice, pMemoryUnmapInfo: ptr VkMemoryUnmapInfoKHR): VkResult {.stdcall.} + vkCreateShadersEXT*: proc (device: VkDevice, createInfoCount: uint32, pCreateInfos: ptr VkShaderCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pShaders: ptr VkShaderEXT): VkResult {.stdcall.} + vkDestroyShaderEXT*: proc (device: VkDevice, shader: VkShaderEXT, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkGetShaderBinaryDataEXT*: proc (device: VkDevice, shader: VkShaderEXT, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.} + vkCmdBindShadersEXT*: proc (commandBuffer: VkCommandBuffer, stageCount: uint32, pStages: ptr VkShaderStageFlagBits, pShaders: ptr VkShaderEXT): void {.stdcall.} + vkGetScreenBufferPropertiesQNX*: proc (device: VkDevice, buffer: ptr screen_buffer, pProperties: ptr VkScreenBufferPropertiesQNX): VkResult {.stdcall.} + vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR*: proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkCooperativeMatrixPropertiesKHR): VkResult {.stdcall.} + vkGetExecutionGraphPipelineScratchSizeAMDX*: proc (device: VkDevice, executionGraph: VkPipeline, pSizeInfo: ptr VkExecutionGraphPipelineScratchSizeAMDX): VkResult {.stdcall.} + vkGetExecutionGraphPipelineNodeIndexAMDX*: proc (device: VkDevice, executionGraph: VkPipeline, pNodeInfo: ptr VkPipelineShaderStageNodeCreateInfoAMDX, pNodeIndex: ptr uint32): VkResult {.stdcall.} + vkCreateExecutionGraphPipelinesAMDX*: proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkExecutionGraphPipelineCreateInfoAMDX, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} + vkCmdInitializeGraphScratchMemoryAMDX*: proc (commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress): void {.stdcall.} + vkCmdDispatchGraphAMDX*: proc (commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, pCountInfo: ptr VkDispatchGraphCountInfoAMDX): void {.stdcall.} + vkCmdDispatchGraphIndirectAMDX*: proc (commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, pCountInfo: ptr VkDispatchGraphCountInfoAMDX): void {.stdcall.} + vkCmdDispatchGraphIndirectCountAMDX*: proc (commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, countInfo: VkDeviceAddress): void {.stdcall.} + vkCmdBindDescriptorSets2KHR*: proc (commandBuffer: VkCommandBuffer, pBindDescriptorSetsInfo: ptr VkBindDescriptorSetsInfoKHR): void {.stdcall.} + vkCmdPushConstants2KHR*: proc (commandBuffer: VkCommandBuffer, pPushConstantsInfo: ptr VkPushConstantsInfoKHR): void {.stdcall.} + vkCmdPushDescriptorSet2KHR*: proc (commandBuffer: VkCommandBuffer, pPushDescriptorSetInfo: ptr VkPushDescriptorSetInfoKHR): void {.stdcall.} + vkCmdPushDescriptorSetWithTemplate2KHR*: proc (commandBuffer: VkCommandBuffer, pPushDescriptorSetWithTemplateInfo: ptr VkPushDescriptorSetWithTemplateInfoKHR): void {.stdcall.} + vkCmdSetDescriptorBufferOffsets2EXT*: proc (commandBuffer: VkCommandBuffer, pSetDescriptorBufferOffsetsInfo: ptr VkSetDescriptorBufferOffsetsInfoEXT): void {.stdcall.} + vkCmdBindDescriptorBufferEmbeddedSamplers2EXT*: proc (commandBuffer: VkCommandBuffer, pBindDescriptorBufferEmbeddedSamplersInfo: ptr VkBindDescriptorBufferEmbeddedSamplersInfoEXT): void {.stdcall.} + vkSetLatencySleepModeNV*: proc (device: VkDevice, swapchain: VkSwapchainKHR, pSleepModeInfo: ptr VkLatencySleepModeInfoNV): VkResult {.stdcall.} + vkLatencySleepNV*: proc (device: VkDevice, swapchain: VkSwapchainKHR, pSleepInfo: ptr VkLatencySleepInfoNV): VkResult {.stdcall.} + vkSetLatencyMarkerNV*: proc (device: VkDevice, swapchain: VkSwapchainKHR, pLatencyMarkerInfo: ptr VkSetLatencyMarkerInfoNV): void {.stdcall.} + vkGetLatencyTimingsNV*: proc (device: VkDevice, swapchain: VkSwapchainKHR, pLatencyMarkerInfo: ptr VkGetLatencyMarkerInfoNV): void {.stdcall.} + vkQueueNotifyOutOfBandNV*: proc (queue: VkQueue, pQueueTypeInfo: ptr VkOutOfBandQueueTypeInfoNV): void {.stdcall.} + vkCmdSetRenderingAttachmentLocationsKHR*: proc (commandBuffer: VkCommandBuffer, pLocationInfo: ptr VkRenderingAttachmentLocationInfoKHR): void {.stdcall.} + vkCmdSetRenderingInputAttachmentIndicesKHR*: proc (commandBuffer: VkCommandBuffer, pLocationInfo: ptr VkRenderingInputAttachmentIndexInfoKHR): void {.stdcall.} # Vulkan 1_0 proc vkLoad1_0*() = - vkDestroyInstance = cast[proc (instance: VkInstanc, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyInstance")) - vkEnumeratePhysicalDevices = cast[proc (instance: VkInstanc, pPhysicalDeviceCount: ptr uint32, pPhysicalDevices: ptr VkPhysicalDevice): VkResult {.stdcall.}](vkGetProc("vkEnumeratePhysicalDevices")) - vkGetPhysicalDeviceFeatures = cast[proc (physicalDevice: VkPhysicalDevic, pFeatures: ptr VkPhysicalDeviceFeatures): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFeatures")) - vkGetPhysicalDeviceFormatProperties = cast[proc (physicalDevice: VkPhysicalDevic, format: VkForma, pFormatProperties: ptr VkFormatProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFormatProperties")) - vkGetPhysicalDeviceImageFormatProperties = cast[proc (physicalDevice: VkPhysicalDevic, format: VkForma, `type`: VkImageTyp, tiling: VkImageTilin, usage: VkImageUsageFlag, flags: VkImageCreateFlag, pImageFormatProperties: ptr VkImageFormatProperties): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceImageFormatProperties")) - vkGetPhysicalDeviceProperties = cast[proc (physicalDevice: VkPhysicalDevic, pProperties: ptr VkPhysicalDeviceProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceProperties")) - vkGetPhysicalDeviceQueueFamilyProperties = cast[proc (physicalDevice: VkPhysicalDevic, pQueueFamilyPropertyCount: ptr uint32, pQueueFamilyProperties: ptr VkQueueFamilyProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceQueueFamilyProperties")) - vkGetPhysicalDeviceMemoryProperties = cast[proc (physicalDevice: VkPhysicalDevic, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceMemoryProperties")) - vkGetInstanceProcAddr = cast[proc (instance: VkInstanc, pName: cstring): PFN_vkVoidFunction {.stdcall.}](vkGetProc("vkGetInstanceProcAddr")) - vkGetDeviceProcAddr = cast[proc (device: VkDevic, pName: cstring): PFN_vkVoidFunction {.stdcall.}](vkGetProc("vkGetDeviceProcAddr")) - vkCreateDevice = cast[proc (physicalDevice: VkPhysicalDevic, pCreateInfo: ptr VkDeviceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDevice: ptr VkDevice): VkResult {.stdcall.}](vkGetProc("vkCreateDevice")) - vkCreateDevice = cast[proc (physicalDevice: VkPhysicalDevic, pCreateInfo: ptr VkDeviceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDevice: ptr VkDevice): VkResult {.stdcall.}](vkGetProc("vkCreateDevice")) - vkDestroyDevice = cast[proc (device: VkDevic, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDevice")) - vkEnumerateDeviceExtensionProperties = cast[proc (physicalDevice: VkPhysicalDevic, pLayerName: cstring, pPropertyCount: ptr uint32, pProperties: ptr VkExtensionProperties): VkResult {.stdcall.}](vkGetProc("vkEnumerateDeviceExtensionProperties")) - vkEnumerateDeviceLayerProperties = cast[proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkLayerProperties): VkResult {.stdcall.}](vkGetProc("vkEnumerateDeviceLayerProperties")) - vkEnumerateDeviceLayerProperties = cast[proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkLayerProperties): VkResult {.stdcall.}](vkGetProc("vkEnumerateDeviceLayerProperties")) - vkGetDeviceQueue = cast[proc (device: VkDevic, queueFamilyIndex: uint32_, queueIndex: uint32_, pQueue: ptr VkQueue): void {.stdcall.}](vkGetProc("vkGetDeviceQueue")) - vkQueueSubmit = cast[proc (queue: VkQueu, submitCount: uint32_, pSubmits: ptr VkSubmitInfo, fence: VkFenc): VkResult {.stdcall.}](vkGetProc("vkQueueSubmit")) - vkQueueWaitIdle = cast[proc (queue: VkQueu): VkResult {.stdcall.}](vkGetProc("vkQueueWaitIdle")) - vkDeviceWaitIdle = cast[proc (device: VkDevic): VkResult {.stdcall.}](vkGetProc("vkDeviceWaitIdle")) - vkAllocateMemory = cast[proc (device: VkDevic, pAllocateInfo: ptr VkMemoryAllocateInfo, pAllocator: ptr VkAllocationCallbacks, pMemory: ptr VkDeviceMemory): VkResult {.stdcall.}](vkGetProc("vkAllocateMemory")) - vkFreeMemory = cast[proc (device: VkDevic, memory: VkDeviceMemor, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkFreeMemory")) - vkMapMemory = cast[proc (device: VkDevic, memory: VkDeviceMemor, offset: VkDeviceSiz, size: VkDeviceSiz, flags: VkMemoryMapFlag, ppData: ptr pointer): VkResult {.stdcall.}](vkGetProc("vkMapMemory")) - vkUnmapMemory = cast[proc (device: VkDevic, memory: VkDeviceMemor): void {.stdcall.}](vkGetProc("vkUnmapMemory")) - vkFlushMappedMemoryRanges = cast[proc (device: VkDevic, memoryRangeCount: uint32_, pMemoryRanges: ptr VkMappedMemoryRange): VkResult {.stdcall.}](vkGetProc("vkFlushMappedMemoryRanges")) - vkInvalidateMappedMemoryRanges = cast[proc (device: VkDevic, memoryRangeCount: uint32_, pMemoryRanges: ptr VkMappedMemoryRange): VkResult {.stdcall.}](vkGetProc("vkInvalidateMappedMemoryRanges")) - vkGetDeviceMemoryCommitment = cast[proc (device: VkDevic, memory: VkDeviceMemor, pCommittedMemoryInBytes: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkGetDeviceMemoryCommitment")) - vkBindBufferMemory = cast[proc (device: VkDevic, buffer: VkBuffe, memory: VkDeviceMemor, memoryOffset: VkDeviceSiz): VkResult {.stdcall.}](vkGetProc("vkBindBufferMemory")) - vkBindImageMemory = cast[proc (device: VkDevic, image: VkImag, memory: VkDeviceMemor, memoryOffset: VkDeviceSiz): VkResult {.stdcall.}](vkGetProc("vkBindImageMemory")) - vkGetBufferMemoryRequirements = cast[proc (device: VkDevic, buffer: VkBuffe, pMemoryRequirements: ptr VkMemoryRequirements): void {.stdcall.}](vkGetProc("vkGetBufferMemoryRequirements")) - vkGetImageMemoryRequirements = cast[proc (device: VkDevic, image: VkImag, pMemoryRequirements: ptr VkMemoryRequirements): void {.stdcall.}](vkGetProc("vkGetImageMemoryRequirements")) - vkGetImageSparseMemoryRequirements = cast[proc (device: VkDevic, image: VkImag, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements): void {.stdcall.}](vkGetProc("vkGetImageSparseMemoryRequirements")) - vkGetPhysicalDeviceSparseImageFormatProperties = cast[proc (physicalDevice: VkPhysicalDevic, format: VkForma, `type`: VkImageTyp, samples: VkSampleCountFlagBit, usage: VkImageUsageFlag, tiling: VkImageTilin, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSparseImageFormatProperties")) - vkQueueBindSparse = cast[proc (queue: VkQueu, bindInfoCount: uint32_, pBindInfo: ptr VkBindSparseInfo, fence: VkFenc): VkResult {.stdcall.}](vkGetProc("vkQueueBindSparse")) - vkCreateFence = cast[proc (device: VkDevic, pCreateInfo: ptr VkFenceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pFence: ptr VkFence): VkResult {.stdcall.}](vkGetProc("vkCreateFence")) - vkDestroyFence = cast[proc (device: VkDevic, fence: VkFenc, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyFence")) - vkResetFences = cast[proc (device: VkDevic, fenceCount: uint32_, pFences: ptr VkFence): VkResult {.stdcall.}](vkGetProc("vkResetFences")) - vkGetFenceStatus = cast[proc (device: VkDevic, fence: VkFenc): VkResult {.stdcall.}](vkGetProc("vkGetFenceStatus")) - vkWaitForFences = cast[proc (device: VkDevic, fenceCount: uint32_, pFences: ptr VkFence, waitAll: VkBool3, timeout: uint64_): VkResult {.stdcall.}](vkGetProc("vkWaitForFences")) - vkCreateSemaphore = cast[proc (device: VkDevic, pCreateInfo: ptr VkSemaphoreCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSemaphore: ptr VkSemaphore): VkResult {.stdcall.}](vkGetProc("vkCreateSemaphore")) - vkDestroySemaphore = cast[proc (device: VkDevic, semaphore: VkSemaphor, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySemaphore")) - vkCreateEvent = cast[proc (device: VkDevic, pCreateInfo: ptr VkEventCreateInfo, pAllocator: ptr VkAllocationCallbacks, pEvent: ptr VkEvent): VkResult {.stdcall.}](vkGetProc("vkCreateEvent")) - vkDestroyEvent = cast[proc (device: VkDevic, event: VkEven, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyEvent")) - vkGetEventStatus = cast[proc (device: VkDevic, event: VkEven): VkResult {.stdcall.}](vkGetProc("vkGetEventStatus")) - vkSetEvent = cast[proc (device: VkDevic, event: VkEven): VkResult {.stdcall.}](vkGetProc("vkSetEvent")) - vkResetEvent = cast[proc (device: VkDevic, event: VkEven): VkResult {.stdcall.}](vkGetProc("vkResetEvent")) - vkCreateQueryPool = cast[proc (device: VkDevic, pCreateInfo: ptr VkQueryPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pQueryPool: ptr VkQueryPool): VkResult {.stdcall.}](vkGetProc("vkCreateQueryPool")) - vkDestroyQueryPool = cast[proc (device: VkDevic, queryPool: VkQueryPoo, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyQueryPool")) - vkGetQueryPoolResults = cast[proc (device: VkDevic, queryPool: VkQueryPoo, firstQuery: uint32_, queryCount: uint32_, dataSize: size_, pData: pointer, stride: VkDeviceSiz, flags: VkQueryResultFlag): VkResult {.stdcall.}](vkGetProc("vkGetQueryPoolResults")) - vkCreateBuffer = cast[proc (device: VkDevic, pCreateInfo: ptr VkBufferCreateInfo, pAllocator: ptr VkAllocationCallbacks, pBuffer: ptr VkBuffer): VkResult {.stdcall.}](vkGetProc("vkCreateBuffer")) - vkDestroyBuffer = cast[proc (device: VkDevic, buffer: VkBuffe, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyBuffer")) - vkCreateBufferView = cast[proc (device: VkDevic, pCreateInfo: ptr VkBufferViewCreateInfo, pAllocator: ptr VkAllocationCallbacks, pView: ptr VkBufferView): VkResult {.stdcall.}](vkGetProc("vkCreateBufferView")) - vkDestroyBufferView = cast[proc (device: VkDevic, bufferView: VkBufferVie, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyBufferView")) - vkCreateImage = cast[proc (device: VkDevic, pCreateInfo: ptr VkImageCreateInfo, pAllocator: ptr VkAllocationCallbacks, pImage: ptr VkImage): VkResult {.stdcall.}](vkGetProc("vkCreateImage")) - vkDestroyImage = cast[proc (device: VkDevic, image: VkImag, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyImage")) - vkGetImageSubresourceLayout = cast[proc (device: VkDevic, image: VkImag, pSubresource: ptr VkImageSubresource, pLayout: ptr VkSubresourceLayout): void {.stdcall.}](vkGetProc("vkGetImageSubresourceLayout")) - vkCreateImageView = cast[proc (device: VkDevic, pCreateInfo: ptr VkImageViewCreateInfo, pAllocator: ptr VkAllocationCallbacks, pView: ptr VkImageView): VkResult {.stdcall.}](vkGetProc("vkCreateImageView")) - vkDestroyImageView = cast[proc (device: VkDevic, imageView: VkImageVie, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyImageView")) - vkCreateShaderModule = cast[proc (device: VkDevic, pCreateInfo: ptr VkShaderModuleCreateInfo, pAllocator: ptr VkAllocationCallbacks, pShaderModule: ptr VkShaderModule): VkResult {.stdcall.}](vkGetProc("vkCreateShaderModule")) - vkDestroyShaderModule = cast[proc (device: VkDevic, shaderModule: VkShaderModul, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyShaderModule")) - vkCreatePipelineCache = cast[proc (device: VkDevic, pCreateInfo: ptr VkPipelineCacheCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineCache: ptr VkPipelineCache): VkResult {.stdcall.}](vkGetProc("vkCreatePipelineCache")) - vkCreatePipelineCache = cast[proc (device: VkDevic, pCreateInfo: ptr VkPipelineCacheCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineCache: ptr VkPipelineCache): VkResult {.stdcall.}](vkGetProc("vkCreatePipelineCache")) - vkDestroyPipelineCache = cast[proc (device: VkDevic, pipelineCache: VkPipelineCach, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyPipelineCache")) - vkGetPipelineCacheData = cast[proc (device: VkDevic, pipelineCache: VkPipelineCach, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetPipelineCacheData")) - vkMergePipelineCaches = cast[proc (device: VkDevic, dstCache: VkPipelineCach, srcCacheCount: uint32_, pSrcCaches: ptr VkPipelineCache): VkResult {.stdcall.}](vkGetProc("vkMergePipelineCaches")) - vkCreateGraphicsPipelines = cast[proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkGraphicsPipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateGraphicsPipelines")) - vkCreateGraphicsPipelines = cast[proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkGraphicsPipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateGraphicsPipelines")) - vkCreateComputePipelines = cast[proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkComputePipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateComputePipelines")) - vkCreateComputePipelines = cast[proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkComputePipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateComputePipelines")) - vkDestroyPipeline = cast[proc (device: VkDevic, pipeline: VkPipelin, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyPipeline")) - vkCreatePipelineLayout = cast[proc (device: VkDevic, pCreateInfo: ptr VkPipelineLayoutCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineLayout: ptr VkPipelineLayout): VkResult {.stdcall.}](vkGetProc("vkCreatePipelineLayout")) - vkDestroyPipelineLayout = cast[proc (device: VkDevic, pipelineLayout: VkPipelineLayou, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyPipelineLayout")) - vkCreateSampler = cast[proc (device: VkDevic, pCreateInfo: ptr VkSamplerCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSampler: ptr VkSampler): VkResult {.stdcall.}](vkGetProc("vkCreateSampler")) - vkDestroySampler = cast[proc (device: VkDevic, sampler: VkSample, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySampler")) - vkCreateDescriptorSetLayout = cast[proc (device: VkDevic, pCreateInfo: ptr VkDescriptorSetLayoutCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSetLayout: ptr VkDescriptorSetLayout): VkResult {.stdcall.}](vkGetProc("vkCreateDescriptorSetLayout")) - vkDestroyDescriptorSetLayout = cast[proc (device: VkDevic, descriptorSetLayout: VkDescriptorSetLayou, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDescriptorSetLayout")) - vkCreateDescriptorPool = cast[proc (device: VkDevic, pCreateInfo: ptr VkDescriptorPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDescriptorPool: ptr VkDescriptorPool): VkResult {.stdcall.}](vkGetProc("vkCreateDescriptorPool")) - vkDestroyDescriptorPool = cast[proc (device: VkDevic, descriptorPool: VkDescriptorPoo, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDescriptorPool")) - vkResetDescriptorPool = cast[proc (device: VkDevic, descriptorPool: VkDescriptorPoo, flags: VkDescriptorPoolResetFlag): VkResult {.stdcall.}](vkGetProc("vkResetDescriptorPool")) - vkAllocateDescriptorSets = cast[proc (device: VkDevic, pAllocateInfo: ptr VkDescriptorSetAllocateInfo, pDescriptorSets: ptr VkDescriptorSet): VkResult {.stdcall.}](vkGetProc("vkAllocateDescriptorSets")) - vkFreeDescriptorSets = cast[proc (device: VkDevic, descriptorPool: VkDescriptorPoo, descriptorSetCount: uint32_, pDescriptorSets: ptr VkDescriptorSet): VkResult {.stdcall.}](vkGetProc("vkFreeDescriptorSets")) - vkUpdateDescriptorSets = cast[proc (device: VkDevic, descriptorWriteCount: uint32_, pDescriptorWrites: ptr VkWriteDescriptorSet, descriptorCopyCount: uint32_, pDescriptorCopies: ptr VkCopyDescriptorSet): void {.stdcall.}](vkGetProc("vkUpdateDescriptorSets")) - vkCreateFramebuffer = cast[proc (device: VkDevic, pCreateInfo: ptr VkFramebufferCreateInfo, pAllocator: ptr VkAllocationCallbacks, pFramebuffer: ptr VkFramebuffer): VkResult {.stdcall.}](vkGetProc("vkCreateFramebuffer")) - vkDestroyFramebuffer = cast[proc (device: VkDevic, framebuffer: VkFramebuffe, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyFramebuffer")) - vkCreateRenderPass = cast[proc (device: VkDevic, pCreateInfo: ptr VkRenderPassCreateInfo, pAllocator: ptr VkAllocationCallbacks, pRenderPass: ptr VkRenderPass): VkResult {.stdcall.}](vkGetProc("vkCreateRenderPass")) - vkDestroyRenderPass = cast[proc (device: VkDevic, renderPass: VkRenderPas, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyRenderPass")) - vkGetRenderAreaGranularity = cast[proc (device: VkDevic, renderPass: VkRenderPas, pGranularity: ptr VkExtent2D): void {.stdcall.}](vkGetProc("vkGetRenderAreaGranularity")) - vkCreateCommandPool = cast[proc (device: VkDevic, pCreateInfo: ptr VkCommandPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pCommandPool: ptr VkCommandPool): VkResult {.stdcall.}](vkGetProc("vkCreateCommandPool")) - vkDestroyCommandPool = cast[proc (device: VkDevic, commandPool: VkCommandPoo, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyCommandPool")) - vkResetCommandPool = cast[proc (device: VkDevic, commandPool: VkCommandPoo, flags: VkCommandPoolResetFlag): VkResult {.stdcall.}](vkGetProc("vkResetCommandPool")) - vkAllocateCommandBuffers = cast[proc (device: VkDevic, pAllocateInfo: ptr VkCommandBufferAllocateInfo, pCommandBuffers: ptr VkCommandBuffer): VkResult {.stdcall.}](vkGetProc("vkAllocateCommandBuffers")) - vkFreeCommandBuffers = cast[proc (device: VkDevic, commandPool: VkCommandPoo, commandBufferCount: uint32_, pCommandBuffers: ptr VkCommandBuffer): void {.stdcall.}](vkGetProc("vkFreeCommandBuffers")) - vkBeginCommandBuffer = cast[proc (commandBuffer: VkCommandBuffe, pBeginInfo: ptr VkCommandBufferBeginInfo): VkResult {.stdcall.}](vkGetProc("vkBeginCommandBuffer")) - vkEndCommandBuffer = cast[proc (commandBuffer: VkCommandBuffe): VkResult {.stdcall.}](vkGetProc("vkEndCommandBuffer")) - vkResetCommandBuffer = cast[proc (commandBuffer: VkCommandBuffe, flags: VkCommandBufferResetFlag): VkResult {.stdcall.}](vkGetProc("vkResetCommandBuffer")) - vkCmdBindPipeline = cast[proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, pipeline: VkPipelin): void {.stdcall.}](vkGetProc("vkCmdBindPipeline")) - vkCmdSetViewport = cast[proc (commandBuffer: VkCommandBuffe, firstViewport: uint32_, viewportCount: uint32_, pViewports: ptr VkViewport): void {.stdcall.}](vkGetProc("vkCmdSetViewport")) - vkCmdSetScissor = cast[proc (commandBuffer: VkCommandBuffe, firstScissor: uint32_, scissorCount: uint32_, pScissors: ptr VkRect2D): void {.stdcall.}](vkGetProc("vkCmdSetScissor")) - vkCmdSetLineWidth = cast[proc (commandBuffer: VkCommandBuffe, lineWidth: floa): void {.stdcall.}](vkGetProc("vkCmdSetLineWidth")) - vkCmdSetDepthBias = cast[proc (commandBuffer: VkCommandBuffe, depthBiasConstantFactor: floa, depthBiasClamp: floa, depthBiasSlopeFactor: floa): void {.stdcall.}](vkGetProc("vkCmdSetDepthBias")) - vkCmdSetBlendConstants = cast[proc (commandBuffer: VkCommandBuffe, blendConstants: array[4, float3]): void {.stdcall.}](vkGetProc("vkCmdSetBlendConstants")) - vkCmdSetDepthBounds = cast[proc (commandBuffer: VkCommandBuffe, minDepthBounds: floa, maxDepthBounds: floa): void {.stdcall.}](vkGetProc("vkCmdSetDepthBounds")) - vkCmdSetStencilCompareMask = cast[proc (commandBuffer: VkCommandBuffe, faceMask: VkStencilFaceFlag, compareMask: uint32_): void {.stdcall.}](vkGetProc("vkCmdSetStencilCompareMask")) - vkCmdSetStencilWriteMask = cast[proc (commandBuffer: VkCommandBuffe, faceMask: VkStencilFaceFlag, writeMask: uint32_): void {.stdcall.}](vkGetProc("vkCmdSetStencilWriteMask")) - vkCmdSetStencilReference = cast[proc (commandBuffer: VkCommandBuffe, faceMask: VkStencilFaceFlag, reference: uint32_): void {.stdcall.}](vkGetProc("vkCmdSetStencilReference")) - vkCmdBindDescriptorSets = cast[proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, layout: VkPipelineLayou, firstSet: uint32_, descriptorSetCount: uint32_, pDescriptorSets: ptr VkDescriptorSet, dynamicOffsetCount: uint32_, pDynamicOffsets: ptr uint32): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorSets")) - vkCmdBindIndexBuffer = cast[proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, indexType: VkIndexTyp): void {.stdcall.}](vkGetProc("vkCmdBindIndexBuffer")) - vkCmdBindVertexBuffers = cast[proc (commandBuffer: VkCommandBuffe, firstBinding: uint32_, bindingCount: uint32_, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdBindVertexBuffers")) - vkCmdDraw = cast[proc (commandBuffer: VkCommandBuffe, vertexCount: uint32_, instanceCount: uint32_, firstVertex: uint32_, firstInstance: uint32_): void {.stdcall.}](vkGetProc("vkCmdDraw")) - vkCmdDrawIndexed = cast[proc (commandBuffer: VkCommandBuffe, indexCount: uint32_, instanceCount: uint32_, firstIndex: uint32_, vertexOffset: int32_, firstInstance: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawIndexed")) - vkCmdDrawIndirect = cast[proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, drawCount: uint32_, stride: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawIndirect")) - vkCmdDrawIndexedIndirect = cast[proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, drawCount: uint32_, stride: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawIndexedIndirect")) - vkCmdDispatch = cast[proc (commandBuffer: VkCommandBuffe, groupCountX: uint32_, groupCountY: uint32_, groupCountZ: uint32_): void {.stdcall.}](vkGetProc("vkCmdDispatch")) - vkCmdDispatchIndirect = cast[proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz): void {.stdcall.}](vkGetProc("vkCmdDispatchIndirect")) - vkCmdCopyBuffer = cast[proc (commandBuffer: VkCommandBuffe, srcBuffer: VkBuffe, dstBuffer: VkBuffe, regionCount: uint32_, pRegions: ptr VkBufferCopy): void {.stdcall.}](vkGetProc("vkCmdCopyBuffer")) - vkCmdCopyImage = cast[proc (commandBuffer: VkCommandBuffe, srcImage: VkImag, srcImageLayout: VkImageLayou, dstImage: VkImag, dstImageLayout: VkImageLayou, regionCount: uint32_, pRegions: ptr VkImageCopy): void {.stdcall.}](vkGetProc("vkCmdCopyImage")) - vkCmdBlitImage = cast[proc (commandBuffer: VkCommandBuffe, srcImage: VkImag, srcImageLayout: VkImageLayou, dstImage: VkImag, dstImageLayout: VkImageLayou, regionCount: uint32_, pRegions: ptr VkImageBlit, filter: VkFilte): void {.stdcall.}](vkGetProc("vkCmdBlitImage")) - vkCmdCopyBufferToImage = cast[proc (commandBuffer: VkCommandBuffe, srcBuffer: VkBuffe, dstImage: VkImag, dstImageLayout: VkImageLayou, regionCount: uint32_, pRegions: ptr VkBufferImageCopy): void {.stdcall.}](vkGetProc("vkCmdCopyBufferToImage")) - vkCmdCopyImageToBuffer = cast[proc (commandBuffer: VkCommandBuffe, srcImage: VkImag, srcImageLayout: VkImageLayou, dstBuffer: VkBuffe, regionCount: uint32_, pRegions: ptr VkBufferImageCopy): void {.stdcall.}](vkGetProc("vkCmdCopyImageToBuffer")) - vkCmdUpdateBuffer = cast[proc (commandBuffer: VkCommandBuffe, dstBuffer: VkBuffe, dstOffset: VkDeviceSiz, dataSize: VkDeviceSiz, pData: pointer): void {.stdcall.}](vkGetProc("vkCmdUpdateBuffer")) - vkCmdFillBuffer = cast[proc (commandBuffer: VkCommandBuffe, dstBuffer: VkBuffe, dstOffset: VkDeviceSiz, size: VkDeviceSiz, data: uint32_): void {.stdcall.}](vkGetProc("vkCmdFillBuffer")) - vkCmdClearColorImage = cast[proc (commandBuffer: VkCommandBuffe, image: VkImag, imageLayout: VkImageLayou, pColor: ptr VkClearColorValue, rangeCount: uint32_, pRanges: ptr VkImageSubresourceRange): void {.stdcall.}](vkGetProc("vkCmdClearColorImage")) - vkCmdClearDepthStencilImage = cast[proc (commandBuffer: VkCommandBuffe, image: VkImag, imageLayout: VkImageLayou, pDepthStencil: ptr VkClearDepthStencilValue, rangeCount: uint32_, pRanges: ptr VkImageSubresourceRange): void {.stdcall.}](vkGetProc("vkCmdClearDepthStencilImage")) - vkCmdClearAttachments = cast[proc (commandBuffer: VkCommandBuffe, attachmentCount: uint32_, pAttachments: ptr VkClearAttachment, rectCount: uint32_, pRects: ptr VkClearRect): void {.stdcall.}](vkGetProc("vkCmdClearAttachments")) - vkCmdResolveImage = cast[proc (commandBuffer: VkCommandBuffe, srcImage: VkImag, srcImageLayout: VkImageLayou, dstImage: VkImag, dstImageLayout: VkImageLayou, regionCount: uint32_, pRegions: ptr VkImageResolve): void {.stdcall.}](vkGetProc("vkCmdResolveImage")) - vkCmdSetEvent = cast[proc (commandBuffer: VkCommandBuffe, event: VkEven, stageMask: VkPipelineStageFlag): void {.stdcall.}](vkGetProc("vkCmdSetEvent")) - vkCmdResetEvent = cast[proc (commandBuffer: VkCommandBuffe, event: VkEven, stageMask: VkPipelineStageFlag): void {.stdcall.}](vkGetProc("vkCmdResetEvent")) - vkCmdWaitEvents = cast[proc (commandBuffer: VkCommandBuffe, eventCount: uint32_, pEvents: ptr VkEvent, srcStageMask: VkPipelineStageFlag, dstStageMask: VkPipelineStageFlag, memoryBarrierCount: uint32_, pMemoryBarriers: ptr VkMemoryBarrier, bufferMemoryBarrierCount: uint32_, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier, imageMemoryBarrierCount: uint32_, pImageMemoryBarriers: ptr VkImageMemoryBarrier): void {.stdcall.}](vkGetProc("vkCmdWaitEvents")) - vkCmdPipelineBarrier = cast[proc (commandBuffer: VkCommandBuffe, srcStageMask: VkPipelineStageFlag, dstStageMask: VkPipelineStageFlag, dependencyFlags: VkDependencyFlag, memoryBarrierCount: uint32_, pMemoryBarriers: ptr VkMemoryBarrier, bufferMemoryBarrierCount: uint32_, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier, imageMemoryBarrierCount: uint32_, pImageMemoryBarriers: ptr VkImageMemoryBarrier): void {.stdcall.}](vkGetProc("vkCmdPipelineBarrier")) - vkCmdBeginQuery = cast[proc (commandBuffer: VkCommandBuffe, queryPool: VkQueryPoo, query: uint32_, flags: VkQueryControlFlag): void {.stdcall.}](vkGetProc("vkCmdBeginQuery")) - vkCmdEndQuery = cast[proc (commandBuffer: VkCommandBuffe, queryPool: VkQueryPoo, query: uint32_): void {.stdcall.}](vkGetProc("vkCmdEndQuery")) - vkCmdResetQueryPool = cast[proc (commandBuffer: VkCommandBuffe, queryPool: VkQueryPoo, firstQuery: uint32_, queryCount: uint32_): void {.stdcall.}](vkGetProc("vkCmdResetQueryPool")) - vkCmdWriteTimestamp = cast[proc (commandBuffer: VkCommandBuffe, pipelineStage: VkPipelineStageFlagBit, queryPool: VkQueryPoo, query: uint32_): void {.stdcall.}](vkGetProc("vkCmdWriteTimestamp")) - vkCmdCopyQueryPoolResults = cast[proc (commandBuffer: VkCommandBuffe, queryPool: VkQueryPoo, firstQuery: uint32_, queryCount: uint32_, dstBuffer: VkBuffe, dstOffset: VkDeviceSiz, stride: VkDeviceSiz, flags: VkQueryResultFlag): void {.stdcall.}](vkGetProc("vkCmdCopyQueryPoolResults")) - vkCmdPushConstants = cast[proc (commandBuffer: VkCommandBuffe, layout: VkPipelineLayou, stageFlags: VkShaderStageFlag, offset: uint32_, size: uint32_, pValues: pointer): void {.stdcall.}](vkGetProc("vkCmdPushConstants")) - vkCmdBeginRenderPass = cast[proc (commandBuffer: VkCommandBuffe, pRenderPassBegin: ptr VkRenderPassBeginInfo, contents: VkSubpassContent): void {.stdcall.}](vkGetProc("vkCmdBeginRenderPass")) - vkCmdNextSubpass = cast[proc (commandBuffer: VkCommandBuffe, contents: VkSubpassContent): void {.stdcall.}](vkGetProc("vkCmdNextSubpass")) - vkCmdEndRenderPass = cast[proc (commandBuffer: VkCommandBuffe): void {.stdcall.}](vkGetProc("vkCmdEndRenderPass")) - vkCmdExecuteCommands = cast[proc (commandBuffer: VkCommandBuffe, commandBufferCount: uint32_, pCommandBuffers: ptr VkCommandBuffer): void {.stdcall.}](vkGetProc("vkCmdExecuteCommands")) + vkDestroyInstance = cast[proc (instance: VkInstance, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyInstance")) + vkEnumeratePhysicalDevices = cast[proc (instance: VkInstance, pPhysicalDeviceCount: ptr uint32, pPhysicalDevices: ptr VkPhysicalDevice): VkResult {.stdcall.}](vkGetProc("vkEnumeratePhysicalDevices")) + vkGetPhysicalDeviceFeatures = cast[proc (physicalDevice: VkPhysicalDevice, pFeatures: ptr VkPhysicalDeviceFeatures): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFeatures")) + vkGetPhysicalDeviceFormatProperties = cast[proc (physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: ptr VkFormatProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFormatProperties")) + vkGetPhysicalDeviceImageFormatProperties = cast[proc (physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, tiling: VkImageTiling, usage: VkImageUsageFlags, flags: VkImageCreateFlags, pImageFormatProperties: ptr VkImageFormatProperties): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceImageFormatProperties")) + vkGetPhysicalDeviceProperties = cast[proc (physicalDevice: VkPhysicalDevice, pProperties: ptr VkPhysicalDeviceProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceProperties")) + vkGetPhysicalDeviceQueueFamilyProperties = cast[proc (physicalDevice: VkPhysicalDevice, pQueueFamilyPropertyCount: ptr uint32, pQueueFamilyProperties: ptr VkQueueFamilyProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceQueueFamilyProperties")) + vkGetPhysicalDeviceMemoryProperties = cast[proc (physicalDevice: VkPhysicalDevice, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceMemoryProperties")) + vkGetInstanceProcAddr = cast[proc (instance: VkInstance, pName: cstring): PFN_vkVoidFunction {.stdcall.}](vkGetProc("vkGetInstanceProcAddr")) + vkGetDeviceProcAddr = cast[proc (device: VkDevice, pName: cstring): PFN_vkVoidFunction {.stdcall.}](vkGetProc("vkGetDeviceProcAddr")) + vkCreateDevice = cast[proc (physicalDevice: VkPhysicalDevice, pCreateInfo: ptr VkDeviceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDevice: ptr VkDevice): VkResult {.stdcall.}](vkGetProc("vkCreateDevice")) + vkCreateDevice = cast[proc (physicalDevice: VkPhysicalDevice, pCreateInfo: ptr VkDeviceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDevice: ptr VkDevice): VkResult {.stdcall.}](vkGetProc("vkCreateDevice")) + vkDestroyDevice = cast[proc (device: VkDevice, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDevice")) + vkEnumerateDeviceExtensionProperties = cast[proc (physicalDevice: VkPhysicalDevice, pLayerName: cstring, pPropertyCount: ptr uint32, pProperties: ptr VkExtensionProperties): VkResult {.stdcall.}](vkGetProc("vkEnumerateDeviceExtensionProperties")) + vkEnumerateDeviceLayerProperties = cast[proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkLayerProperties): VkResult {.stdcall.}](vkGetProc("vkEnumerateDeviceLayerProperties")) + vkEnumerateDeviceLayerProperties = cast[proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkLayerProperties): VkResult {.stdcall.}](vkGetProc("vkEnumerateDeviceLayerProperties")) + vkGetDeviceQueue = cast[proc (device: VkDevice, queueFamilyIndex: uint32, queueIndex: uint32, pQueue: ptr VkQueue): void {.stdcall.}](vkGetProc("vkGetDeviceQueue")) + vkQueueSubmit = cast[proc (queue: VkQueue, submitCount: uint32, pSubmits: ptr VkSubmitInfo, fence: VkFence): VkResult {.stdcall.}](vkGetProc("vkQueueSubmit")) + vkQueueWaitIdle = cast[proc (queue: VkQueue): VkResult {.stdcall.}](vkGetProc("vkQueueWaitIdle")) + vkDeviceWaitIdle = cast[proc (device: VkDevice): VkResult {.stdcall.}](vkGetProc("vkDeviceWaitIdle")) + vkAllocateMemory = cast[proc (device: VkDevice, pAllocateInfo: ptr VkMemoryAllocateInfo, pAllocator: ptr VkAllocationCallbacks, pMemory: ptr VkDeviceMemory): VkResult {.stdcall.}](vkGetProc("vkAllocateMemory")) + vkFreeMemory = cast[proc (device: VkDevice, memory: VkDeviceMemory, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkFreeMemory")) + vkMapMemory = cast[proc (device: VkDevice, memory: VkDeviceMemory, offset: VkDeviceSize, size: VkDeviceSize, flags: VkMemoryMapFlags, ppData: ptr pointer): VkResult {.stdcall.}](vkGetProc("vkMapMemory")) + vkUnmapMemory = cast[proc (device: VkDevice, memory: VkDeviceMemory): void {.stdcall.}](vkGetProc("vkUnmapMemory")) + vkFlushMappedMemoryRanges = cast[proc (device: VkDevice, memoryRangeCount: uint32, pMemoryRanges: ptr VkMappedMemoryRange): VkResult {.stdcall.}](vkGetProc("vkFlushMappedMemoryRanges")) + vkInvalidateMappedMemoryRanges = cast[proc (device: VkDevice, memoryRangeCount: uint32, pMemoryRanges: ptr VkMappedMemoryRange): VkResult {.stdcall.}](vkGetProc("vkInvalidateMappedMemoryRanges")) + vkGetDeviceMemoryCommitment = cast[proc (device: VkDevice, memory: VkDeviceMemory, pCommittedMemoryInBytes: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkGetDeviceMemoryCommitment")) + vkBindBufferMemory = cast[proc (device: VkDevice, buffer: VkBuffer, memory: VkDeviceMemory, memoryOffset: VkDeviceSize): VkResult {.stdcall.}](vkGetProc("vkBindBufferMemory")) + vkBindImageMemory = cast[proc (device: VkDevice, image: VkImage, memory: VkDeviceMemory, memoryOffset: VkDeviceSize): VkResult {.stdcall.}](vkGetProc("vkBindImageMemory")) + vkGetBufferMemoryRequirements = cast[proc (device: VkDevice, buffer: VkBuffer, pMemoryRequirements: ptr VkMemoryRequirements): void {.stdcall.}](vkGetProc("vkGetBufferMemoryRequirements")) + vkGetImageMemoryRequirements = cast[proc (device: VkDevice, image: VkImage, pMemoryRequirements: ptr VkMemoryRequirements): void {.stdcall.}](vkGetProc("vkGetImageMemoryRequirements")) + vkGetImageSparseMemoryRequirements = cast[proc (device: VkDevice, image: VkImage, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements): void {.stdcall.}](vkGetProc("vkGetImageSparseMemoryRequirements")) + vkGetPhysicalDeviceSparseImageFormatProperties = cast[proc (physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, samples: VkSampleCountFlagBits, usage: VkImageUsageFlags, tiling: VkImageTiling, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSparseImageFormatProperties")) + vkQueueBindSparse = cast[proc (queue: VkQueue, bindInfoCount: uint32, pBindInfo: ptr VkBindSparseInfo, fence: VkFence): VkResult {.stdcall.}](vkGetProc("vkQueueBindSparse")) + vkCreateFence = cast[proc (device: VkDevice, pCreateInfo: ptr VkFenceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pFence: ptr VkFence): VkResult {.stdcall.}](vkGetProc("vkCreateFence")) + vkDestroyFence = cast[proc (device: VkDevice, fence: VkFence, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyFence")) + vkResetFences = cast[proc (device: VkDevice, fenceCount: uint32, pFences: ptr VkFence): VkResult {.stdcall.}](vkGetProc("vkResetFences")) + vkGetFenceStatus = cast[proc (device: VkDevice, fence: VkFence): VkResult {.stdcall.}](vkGetProc("vkGetFenceStatus")) + vkWaitForFences = cast[proc (device: VkDevice, fenceCount: uint32, pFences: ptr VkFence, waitAll: VkBool32, timeout: uint64): VkResult {.stdcall.}](vkGetProc("vkWaitForFences")) + vkCreateSemaphore = cast[proc (device: VkDevice, pCreateInfo: ptr VkSemaphoreCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSemaphore: ptr VkSemaphore): VkResult {.stdcall.}](vkGetProc("vkCreateSemaphore")) + vkDestroySemaphore = cast[proc (device: VkDevice, semaphore: VkSemaphore, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySemaphore")) + vkCreateEvent = cast[proc (device: VkDevice, pCreateInfo: ptr VkEventCreateInfo, pAllocator: ptr VkAllocationCallbacks, pEvent: ptr VkEvent): VkResult {.stdcall.}](vkGetProc("vkCreateEvent")) + vkDestroyEvent = cast[proc (device: VkDevice, event: VkEvent, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyEvent")) + vkGetEventStatus = cast[proc (device: VkDevice, event: VkEvent): VkResult {.stdcall.}](vkGetProc("vkGetEventStatus")) + vkSetEvent = cast[proc (device: VkDevice, event: VkEvent): VkResult {.stdcall.}](vkGetProc("vkSetEvent")) + vkResetEvent = cast[proc (device: VkDevice, event: VkEvent): VkResult {.stdcall.}](vkGetProc("vkResetEvent")) + vkCreateQueryPool = cast[proc (device: VkDevice, pCreateInfo: ptr VkQueryPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pQueryPool: ptr VkQueryPool): VkResult {.stdcall.}](vkGetProc("vkCreateQueryPool")) + vkDestroyQueryPool = cast[proc (device: VkDevice, queryPool: VkQueryPool, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyQueryPool")) + vkGetQueryPoolResults = cast[proc (device: VkDevice, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32, dataSize: uint, pData: pointer, stride: VkDeviceSize, flags: VkQueryResultFlags): VkResult {.stdcall.}](vkGetProc("vkGetQueryPoolResults")) + vkCreateBuffer = cast[proc (device: VkDevice, pCreateInfo: ptr VkBufferCreateInfo, pAllocator: ptr VkAllocationCallbacks, pBuffer: ptr VkBuffer): VkResult {.stdcall.}](vkGetProc("vkCreateBuffer")) + vkDestroyBuffer = cast[proc (device: VkDevice, buffer: VkBuffer, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyBuffer")) + vkCreateBufferView = cast[proc (device: VkDevice, pCreateInfo: ptr VkBufferViewCreateInfo, pAllocator: ptr VkAllocationCallbacks, pView: ptr VkBufferView): VkResult {.stdcall.}](vkGetProc("vkCreateBufferView")) + vkDestroyBufferView = cast[proc (device: VkDevice, bufferView: VkBufferView, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyBufferView")) + vkCreateImage = cast[proc (device: VkDevice, pCreateInfo: ptr VkImageCreateInfo, pAllocator: ptr VkAllocationCallbacks, pImage: ptr VkImage): VkResult {.stdcall.}](vkGetProc("vkCreateImage")) + vkDestroyImage = cast[proc (device: VkDevice, image: VkImage, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyImage")) + vkGetImageSubresourceLayout = cast[proc (device: VkDevice, image: VkImage, pSubresource: ptr VkImageSubresource, pLayout: ptr VkSubresourceLayout): void {.stdcall.}](vkGetProc("vkGetImageSubresourceLayout")) + vkCreateImageView = cast[proc (device: VkDevice, pCreateInfo: ptr VkImageViewCreateInfo, pAllocator: ptr VkAllocationCallbacks, pView: ptr VkImageView): VkResult {.stdcall.}](vkGetProc("vkCreateImageView")) + vkDestroyImageView = cast[proc (device: VkDevice, imageView: VkImageView, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyImageView")) + vkCreateShaderModule = cast[proc (device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo, pAllocator: ptr VkAllocationCallbacks, pShaderModule: ptr VkShaderModule): VkResult {.stdcall.}](vkGetProc("vkCreateShaderModule")) + vkDestroyShaderModule = cast[proc (device: VkDevice, shaderModule: VkShaderModule, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyShaderModule")) + vkCreatePipelineCache = cast[proc (device: VkDevice, pCreateInfo: ptr VkPipelineCacheCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineCache: ptr VkPipelineCache): VkResult {.stdcall.}](vkGetProc("vkCreatePipelineCache")) + vkCreatePipelineCache = cast[proc (device: VkDevice, pCreateInfo: ptr VkPipelineCacheCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineCache: ptr VkPipelineCache): VkResult {.stdcall.}](vkGetProc("vkCreatePipelineCache")) + vkDestroyPipelineCache = cast[proc (device: VkDevice, pipelineCache: VkPipelineCache, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyPipelineCache")) + vkGetPipelineCacheData = cast[proc (device: VkDevice, pipelineCache: VkPipelineCache, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetPipelineCacheData")) + vkMergePipelineCaches = cast[proc (device: VkDevice, dstCache: VkPipelineCache, srcCacheCount: uint32, pSrcCaches: ptr VkPipelineCache): VkResult {.stdcall.}](vkGetProc("vkMergePipelineCaches")) + vkCreateGraphicsPipelines = cast[proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkGraphicsPipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateGraphicsPipelines")) + vkCreateGraphicsPipelines = cast[proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkGraphicsPipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateGraphicsPipelines")) + vkCreateComputePipelines = cast[proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkComputePipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateComputePipelines")) + vkCreateComputePipelines = cast[proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkComputePipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateComputePipelines")) + vkDestroyPipeline = cast[proc (device: VkDevice, pipeline: VkPipeline, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyPipeline")) + vkCreatePipelineLayout = cast[proc (device: VkDevice, pCreateInfo: ptr VkPipelineLayoutCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineLayout: ptr VkPipelineLayout): VkResult {.stdcall.}](vkGetProc("vkCreatePipelineLayout")) + vkDestroyPipelineLayout = cast[proc (device: VkDevice, pipelineLayout: VkPipelineLayout, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyPipelineLayout")) + vkCreateSampler = cast[proc (device: VkDevice, pCreateInfo: ptr VkSamplerCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSampler: ptr VkSampler): VkResult {.stdcall.}](vkGetProc("vkCreateSampler")) + vkDestroySampler = cast[proc (device: VkDevice, sampler: VkSampler, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySampler")) + vkCreateDescriptorSetLayout = cast[proc (device: VkDevice, pCreateInfo: ptr VkDescriptorSetLayoutCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSetLayout: ptr VkDescriptorSetLayout): VkResult {.stdcall.}](vkGetProc("vkCreateDescriptorSetLayout")) + vkDestroyDescriptorSetLayout = cast[proc (device: VkDevice, descriptorSetLayout: VkDescriptorSetLayout, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDescriptorSetLayout")) + vkCreateDescriptorPool = cast[proc (device: VkDevice, pCreateInfo: ptr VkDescriptorPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDescriptorPool: ptr VkDescriptorPool): VkResult {.stdcall.}](vkGetProc("vkCreateDescriptorPool")) + vkDestroyDescriptorPool = cast[proc (device: VkDevice, descriptorPool: VkDescriptorPool, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDescriptorPool")) + vkResetDescriptorPool = cast[proc (device: VkDevice, descriptorPool: VkDescriptorPool, flags: VkDescriptorPoolResetFlags): VkResult {.stdcall.}](vkGetProc("vkResetDescriptorPool")) + vkAllocateDescriptorSets = cast[proc (device: VkDevice, pAllocateInfo: ptr VkDescriptorSetAllocateInfo, pDescriptorSets: ptr VkDescriptorSet): VkResult {.stdcall.}](vkGetProc("vkAllocateDescriptorSets")) + vkFreeDescriptorSets = cast[proc (device: VkDevice, descriptorPool: VkDescriptorPool, descriptorSetCount: uint32, pDescriptorSets: ptr VkDescriptorSet): VkResult {.stdcall.}](vkGetProc("vkFreeDescriptorSets")) + vkUpdateDescriptorSets = cast[proc (device: VkDevice, descriptorWriteCount: uint32, pDescriptorWrites: ptr VkWriteDescriptorSet, descriptorCopyCount: uint32, pDescriptorCopies: ptr VkCopyDescriptorSet): void {.stdcall.}](vkGetProc("vkUpdateDescriptorSets")) + vkCreateFramebuffer = cast[proc (device: VkDevice, pCreateInfo: ptr VkFramebufferCreateInfo, pAllocator: ptr VkAllocationCallbacks, pFramebuffer: ptr VkFramebuffer): VkResult {.stdcall.}](vkGetProc("vkCreateFramebuffer")) + vkDestroyFramebuffer = cast[proc (device: VkDevice, framebuffer: VkFramebuffer, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyFramebuffer")) + vkCreateRenderPass = cast[proc (device: VkDevice, pCreateInfo: ptr VkRenderPassCreateInfo, pAllocator: ptr VkAllocationCallbacks, pRenderPass: ptr VkRenderPass): VkResult {.stdcall.}](vkGetProc("vkCreateRenderPass")) + vkDestroyRenderPass = cast[proc (device: VkDevice, renderPass: VkRenderPass, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyRenderPass")) + vkGetRenderAreaGranularity = cast[proc (device: VkDevice, renderPass: VkRenderPass, pGranularity: ptr VkExtent2D): void {.stdcall.}](vkGetProc("vkGetRenderAreaGranularity")) + vkCreateCommandPool = cast[proc (device: VkDevice, pCreateInfo: ptr VkCommandPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pCommandPool: ptr VkCommandPool): VkResult {.stdcall.}](vkGetProc("vkCreateCommandPool")) + vkDestroyCommandPool = cast[proc (device: VkDevice, commandPool: VkCommandPool, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyCommandPool")) + vkResetCommandPool = cast[proc (device: VkDevice, commandPool: VkCommandPool, flags: VkCommandPoolResetFlags): VkResult {.stdcall.}](vkGetProc("vkResetCommandPool")) + vkAllocateCommandBuffers = cast[proc (device: VkDevice, pAllocateInfo: ptr VkCommandBufferAllocateInfo, pCommandBuffers: ptr VkCommandBuffer): VkResult {.stdcall.}](vkGetProc("vkAllocateCommandBuffers")) + vkFreeCommandBuffers = cast[proc (device: VkDevice, commandPool: VkCommandPool, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer): void {.stdcall.}](vkGetProc("vkFreeCommandBuffers")) + vkBeginCommandBuffer = cast[proc (commandBuffer: VkCommandBuffer, pBeginInfo: ptr VkCommandBufferBeginInfo): VkResult {.stdcall.}](vkGetProc("vkBeginCommandBuffer")) + vkEndCommandBuffer = cast[proc (commandBuffer: VkCommandBuffer): VkResult {.stdcall.}](vkGetProc("vkEndCommandBuffer")) + vkResetCommandBuffer = cast[proc (commandBuffer: VkCommandBuffer, flags: VkCommandBufferResetFlags): VkResult {.stdcall.}](vkGetProc("vkResetCommandBuffer")) + vkCmdBindPipeline = cast[proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline): void {.stdcall.}](vkGetProc("vkCmdBindPipeline")) + vkCmdSetViewport = cast[proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewports: ptr VkViewport): void {.stdcall.}](vkGetProc("vkCmdSetViewport")) + vkCmdSetScissor = cast[proc (commandBuffer: VkCommandBuffer, firstScissor: uint32, scissorCount: uint32, pScissors: ptr VkRect2D): void {.stdcall.}](vkGetProc("vkCmdSetScissor")) + vkCmdSetLineWidth = cast[proc (commandBuffer: VkCommandBuffer, lineWidth: float32): void {.stdcall.}](vkGetProc("vkCmdSetLineWidth")) + vkCmdSetDepthBias = cast[proc (commandBuffer: VkCommandBuffer, depthBiasConstantFactor: float32, depthBiasClamp: float32, depthBiasSlopeFactor: float32): void {.stdcall.}](vkGetProc("vkCmdSetDepthBias")) + vkCmdSetBlendConstants = cast[proc (commandBuffer: VkCommandBuffer, blendConstants: array[4, float32]): void {.stdcall.}](vkGetProc("vkCmdSetBlendConstants")) + vkCmdSetDepthBounds = cast[proc (commandBuffer: VkCommandBuffer, minDepthBounds: float32, maxDepthBounds: float32): void {.stdcall.}](vkGetProc("vkCmdSetDepthBounds")) + vkCmdSetStencilCompareMask = cast[proc (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, compareMask: uint32): void {.stdcall.}](vkGetProc("vkCmdSetStencilCompareMask")) + vkCmdSetStencilWriteMask = cast[proc (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, writeMask: uint32): void {.stdcall.}](vkGetProc("vkCmdSetStencilWriteMask")) + vkCmdSetStencilReference = cast[proc (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, reference: uint32): void {.stdcall.}](vkGetProc("vkCmdSetStencilReference")) + vkCmdBindDescriptorSets = cast[proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, firstSet: uint32, descriptorSetCount: uint32, pDescriptorSets: ptr VkDescriptorSet, dynamicOffsetCount: uint32, pDynamicOffsets: ptr uint32): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorSets")) + vkCmdBindIndexBuffer = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, indexType: VkIndexType): void {.stdcall.}](vkGetProc("vkCmdBindIndexBuffer")) + vkCmdBindVertexBuffers = cast[proc (commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdBindVertexBuffers")) + vkCmdDraw = cast[proc (commandBuffer: VkCommandBuffer, vertexCount: uint32, instanceCount: uint32, firstVertex: uint32, firstInstance: uint32): void {.stdcall.}](vkGetProc("vkCmdDraw")) + vkCmdDrawIndexed = cast[proc (commandBuffer: VkCommandBuffer, indexCount: uint32, instanceCount: uint32, firstIndex: uint32, vertexOffset: int32, firstInstance: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawIndexed")) + vkCmdDrawIndirect = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawIndirect")) + vkCmdDrawIndexedIndirect = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawIndexedIndirect")) + vkCmdDispatch = cast[proc (commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.}](vkGetProc("vkCmdDispatch")) + vkCmdDispatchIndirect = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdDispatchIndirect")) + vkCmdCopyBuffer = cast[proc (commandBuffer: VkCommandBuffer, srcBuffer: VkBuffer, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferCopy): void {.stdcall.}](vkGetProc("vkCmdCopyBuffer")) + vkCmdCopyImage = cast[proc (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageCopy): void {.stdcall.}](vkGetProc("vkCmdCopyImage")) + vkCmdBlitImage = cast[proc (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageBlit, filter: VkFilter): void {.stdcall.}](vkGetProc("vkCmdBlitImage")) + vkCmdCopyBufferToImage = cast[proc (commandBuffer: VkCommandBuffer, srcBuffer: VkBuffer, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkBufferImageCopy): void {.stdcall.}](vkGetProc("vkCmdCopyBufferToImage")) + vkCmdCopyImageToBuffer = cast[proc (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferImageCopy): void {.stdcall.}](vkGetProc("vkCmdCopyImageToBuffer")) + vkCmdUpdateBuffer = cast[proc (commandBuffer: VkCommandBuffer, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, dataSize: VkDeviceSize, pData: pointer): void {.stdcall.}](vkGetProc("vkCmdUpdateBuffer")) + vkCmdFillBuffer = cast[proc (commandBuffer: VkCommandBuffer, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, size: VkDeviceSize, data: uint32): void {.stdcall.}](vkGetProc("vkCmdFillBuffer")) + vkCmdClearColorImage = cast[proc (commandBuffer: VkCommandBuffer, image: VkImage, imageLayout: VkImageLayout, pColor: ptr VkClearColorValue, rangeCount: uint32, pRanges: ptr VkImageSubresourceRange): void {.stdcall.}](vkGetProc("vkCmdClearColorImage")) + vkCmdClearDepthStencilImage = cast[proc (commandBuffer: VkCommandBuffer, image: VkImage, imageLayout: VkImageLayout, pDepthStencil: ptr VkClearDepthStencilValue, rangeCount: uint32, pRanges: ptr VkImageSubresourceRange): void {.stdcall.}](vkGetProc("vkCmdClearDepthStencilImage")) + vkCmdClearAttachments = cast[proc (commandBuffer: VkCommandBuffer, attachmentCount: uint32, pAttachments: ptr VkClearAttachment, rectCount: uint32, pRects: ptr VkClearRect): void {.stdcall.}](vkGetProc("vkCmdClearAttachments")) + vkCmdResolveImage = cast[proc (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageResolve): void {.stdcall.}](vkGetProc("vkCmdResolveImage")) + vkCmdSetEvent = cast[proc (commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags): void {.stdcall.}](vkGetProc("vkCmdSetEvent")) + vkCmdResetEvent = cast[proc (commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags): void {.stdcall.}](vkGetProc("vkCmdResetEvent")) + vkCmdWaitEvents = cast[proc (commandBuffer: VkCommandBuffer, eventCount: uint32, pEvents: ptr VkEvent, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, memoryBarrierCount: uint32, pMemoryBarriers: ptr VkMemoryBarrier, bufferMemoryBarrierCount: uint32, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier, imageMemoryBarrierCount: uint32, pImageMemoryBarriers: ptr VkImageMemoryBarrier): void {.stdcall.}](vkGetProc("vkCmdWaitEvents")) + vkCmdPipelineBarrier = cast[proc (commandBuffer: VkCommandBuffer, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, dependencyFlags: VkDependencyFlags, memoryBarrierCount: uint32, pMemoryBarriers: ptr VkMemoryBarrier, bufferMemoryBarrierCount: uint32, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier, imageMemoryBarrierCount: uint32, pImageMemoryBarriers: ptr VkImageMemoryBarrier): void {.stdcall.}](vkGetProc("vkCmdPipelineBarrier")) + vkCmdBeginQuery = cast[proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, flags: VkQueryControlFlags): void {.stdcall.}](vkGetProc("vkCmdBeginQuery")) + vkCmdEndQuery = cast[proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32): void {.stdcall.}](vkGetProc("vkCmdEndQuery")) + vkCmdResetQueryPool = cast[proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32): void {.stdcall.}](vkGetProc("vkCmdResetQueryPool")) + vkCmdWriteTimestamp = cast[proc (commandBuffer: VkCommandBuffer, pipelineStage: VkPipelineStageFlagBits, queryPool: VkQueryPool, query: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteTimestamp")) + vkCmdCopyQueryPoolResults = cast[proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, stride: VkDeviceSize, flags: VkQueryResultFlags): void {.stdcall.}](vkGetProc("vkCmdCopyQueryPoolResults")) + vkCmdPushConstants = cast[proc (commandBuffer: VkCommandBuffer, layout: VkPipelineLayout, stageFlags: VkShaderStageFlags, offset: uint32, size: uint32, pValues: pointer): void {.stdcall.}](vkGetProc("vkCmdPushConstants")) + vkCmdBeginRenderPass = cast[proc (commandBuffer: VkCommandBuffer, pRenderPassBegin: ptr VkRenderPassBeginInfo, contents: VkSubpassContents): void {.stdcall.}](vkGetProc("vkCmdBeginRenderPass")) + vkCmdNextSubpass = cast[proc (commandBuffer: VkCommandBuffer, contents: VkSubpassContents): void {.stdcall.}](vkGetProc("vkCmdNextSubpass")) + vkCmdEndRenderPass = cast[proc (commandBuffer: VkCommandBuffer): void {.stdcall.}](vkGetProc("vkCmdEndRenderPass")) + vkCmdExecuteCommands = cast[proc (commandBuffer: VkCommandBuffer, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer): void {.stdcall.}](vkGetProc("vkCmdExecuteCommands")) # Vulkan 1_1 proc vkLoad1_1*() = - vkBindBufferMemory2 = cast[proc (device: VkDevic, bindInfoCount: uint32_, pBindInfos: ptr VkBindBufferMemoryInfo): VkResult {.stdcall.}](vkGetProc("vkBindBufferMemory2")) - vkBindImageMemory2 = cast[proc (device: VkDevic, bindInfoCount: uint32_, pBindInfos: ptr VkBindImageMemoryInfo): VkResult {.stdcall.}](vkGetProc("vkBindImageMemory2")) - vkGetDeviceGroupPeerMemoryFeatures = cast[proc (device: VkDevic, heapIndex: uint32_, localDeviceIndex: uint32_, remoteDeviceIndex: uint32_, pPeerMemoryFeatures: ptr VkPeerMemoryFeatureFlags): void {.stdcall.}](vkGetProc("vkGetDeviceGroupPeerMemoryFeatures")) - vkCmdSetDeviceMask = cast[proc (commandBuffer: VkCommandBuffe, deviceMask: uint32_): void {.stdcall.}](vkGetProc("vkCmdSetDeviceMask")) - vkCmdDispatchBase = cast[proc (commandBuffer: VkCommandBuffe, baseGroupX: uint32_, baseGroupY: uint32_, baseGroupZ: uint32_, groupCountX: uint32_, groupCountY: uint32_, groupCountZ: uint32_): void {.stdcall.}](vkGetProc("vkCmdDispatchBase")) - vkEnumeratePhysicalDeviceGroups = cast[proc (instance: VkInstanc, pPhysicalDeviceGroupCount: ptr uint32, pPhysicalDeviceGroupProperties: ptr VkPhysicalDeviceGroupProperties): VkResult {.stdcall.}](vkGetProc("vkEnumeratePhysicalDeviceGroups")) - vkGetImageMemoryRequirements2 = cast[proc (device: VkDevic, pInfo: ptr VkImageMemoryRequirementsInfo2, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetImageMemoryRequirements2")) - vkGetBufferMemoryRequirements2 = cast[proc (device: VkDevic, pInfo: ptr VkBufferMemoryRequirementsInfo2, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetBufferMemoryRequirements2")) - vkGetImageSparseMemoryRequirements2 = cast[proc (device: VkDevic, pInfo: ptr VkImageSparseMemoryRequirementsInfo2, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetImageSparseMemoryRequirements2")) - vkGetPhysicalDeviceFeatures2 = cast[proc (physicalDevice: VkPhysicalDevic, pFeatures: ptr VkPhysicalDeviceFeatures2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFeatures2")) - vkGetPhysicalDeviceProperties2 = cast[proc (physicalDevice: VkPhysicalDevic, pProperties: ptr VkPhysicalDeviceProperties2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceProperties2")) - vkGetPhysicalDeviceFormatProperties2 = cast[proc (physicalDevice: VkPhysicalDevic, format: VkForma, pFormatProperties: ptr VkFormatProperties2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFormatProperties2")) - vkGetPhysicalDeviceImageFormatProperties2 = cast[proc (physicalDevice: VkPhysicalDevic, pImageFormatInfo: ptr VkPhysicalDeviceImageFormatInfo2, pImageFormatProperties: ptr VkImageFormatProperties2): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceImageFormatProperties2")) - vkGetPhysicalDeviceQueueFamilyProperties2 = cast[proc (physicalDevice: VkPhysicalDevic, pQueueFamilyPropertyCount: ptr uint32, pQueueFamilyProperties: ptr VkQueueFamilyProperties2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceQueueFamilyProperties2")) - vkGetPhysicalDeviceMemoryProperties2 = cast[proc (physicalDevice: VkPhysicalDevic, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceMemoryProperties2")) - vkGetPhysicalDeviceSparseImageFormatProperties2 = cast[proc (physicalDevice: VkPhysicalDevic, pFormatInfo: ptr VkPhysicalDeviceSparseImageFormatInfo2, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSparseImageFormatProperties2")) - vkTrimCommandPool = cast[proc (device: VkDevic, commandPool: VkCommandPoo, flags: VkCommandPoolTrimFlag): void {.stdcall.}](vkGetProc("vkTrimCommandPool")) - vkGetDeviceQueue2 = cast[proc (device: VkDevic, pQueueInfo: ptr VkDeviceQueueInfo2, pQueue: ptr VkQueue): void {.stdcall.}](vkGetProc("vkGetDeviceQueue2")) - vkCreateSamplerYcbcrConversion = cast[proc (device: VkDevic, pCreateInfo: ptr VkSamplerYcbcrConversionCreateInfo, pAllocator: ptr VkAllocationCallbacks, pYcbcrConversion: ptr VkSamplerYcbcrConversion): VkResult {.stdcall.}](vkGetProc("vkCreateSamplerYcbcrConversion")) - vkDestroySamplerYcbcrConversion = cast[proc (device: VkDevic, ycbcrConversion: VkSamplerYcbcrConversio, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySamplerYcbcrConversion")) - vkCreateDescriptorUpdateTemplate = cast[proc (device: VkDevic, pCreateInfo: ptr VkDescriptorUpdateTemplateCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDescriptorUpdateTemplate: ptr VkDescriptorUpdateTemplate): VkResult {.stdcall.}](vkGetProc("vkCreateDescriptorUpdateTemplate")) - vkDestroyDescriptorUpdateTemplate = cast[proc (device: VkDevic, descriptorUpdateTemplate: VkDescriptorUpdateTemplat, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDescriptorUpdateTemplate")) - vkUpdateDescriptorSetWithTemplate = cast[proc (device: VkDevic, descriptorSet: VkDescriptorSe, descriptorUpdateTemplate: VkDescriptorUpdateTemplat, pData: pointer): void {.stdcall.}](vkGetProc("vkUpdateDescriptorSetWithTemplate")) - vkGetPhysicalDeviceExternalBufferProperties = cast[proc (physicalDevice: VkPhysicalDevic, pExternalBufferInfo: ptr VkPhysicalDeviceExternalBufferInfo, pExternalBufferProperties: ptr VkExternalBufferProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalBufferProperties")) - vkGetPhysicalDeviceExternalFenceProperties = cast[proc (physicalDevice: VkPhysicalDevic, pExternalFenceInfo: ptr VkPhysicalDeviceExternalFenceInfo, pExternalFenceProperties: ptr VkExternalFenceProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalFenceProperties")) - vkGetPhysicalDeviceExternalSemaphoreProperties = cast[proc (physicalDevice: VkPhysicalDevic, pExternalSemaphoreInfo: ptr VkPhysicalDeviceExternalSemaphoreInfo, pExternalSemaphoreProperties: ptr VkExternalSemaphoreProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalSemaphoreProperties")) - vkGetDescriptorSetLayoutSupport = cast[proc (device: VkDevic, pCreateInfo: ptr VkDescriptorSetLayoutCreateInfo, pSupport: ptr VkDescriptorSetLayoutSupport): void {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutSupport")) + vkBindBufferMemory2 = cast[proc (device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindBufferMemoryInfo): VkResult {.stdcall.}](vkGetProc("vkBindBufferMemory2")) + vkBindImageMemory2 = cast[proc (device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindImageMemoryInfo): VkResult {.stdcall.}](vkGetProc("vkBindImageMemory2")) + vkGetDeviceGroupPeerMemoryFeatures = cast[proc (device: VkDevice, heapIndex: uint32, localDeviceIndex: uint32, remoteDeviceIndex: uint32, pPeerMemoryFeatures: ptr VkPeerMemoryFeatureFlags): void {.stdcall.}](vkGetProc("vkGetDeviceGroupPeerMemoryFeatures")) + vkCmdSetDeviceMask = cast[proc (commandBuffer: VkCommandBuffer, deviceMask: uint32): void {.stdcall.}](vkGetProc("vkCmdSetDeviceMask")) + vkCmdDispatchBase = cast[proc (commandBuffer: VkCommandBuffer, baseGroupX: uint32, baseGroupY: uint32, baseGroupZ: uint32, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.}](vkGetProc("vkCmdDispatchBase")) + vkEnumeratePhysicalDeviceGroups = cast[proc (instance: VkInstance, pPhysicalDeviceGroupCount: ptr uint32, pPhysicalDeviceGroupProperties: ptr VkPhysicalDeviceGroupProperties): VkResult {.stdcall.}](vkGetProc("vkEnumeratePhysicalDeviceGroups")) + vkGetImageMemoryRequirements2 = cast[proc (device: VkDevice, pInfo: ptr VkImageMemoryRequirementsInfo2, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetImageMemoryRequirements2")) + vkGetBufferMemoryRequirements2 = cast[proc (device: VkDevice, pInfo: ptr VkBufferMemoryRequirementsInfo2, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetBufferMemoryRequirements2")) + vkGetImageSparseMemoryRequirements2 = cast[proc (device: VkDevice, pInfo: ptr VkImageSparseMemoryRequirementsInfo2, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetImageSparseMemoryRequirements2")) + vkGetPhysicalDeviceFeatures2 = cast[proc (physicalDevice: VkPhysicalDevice, pFeatures: ptr VkPhysicalDeviceFeatures2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFeatures2")) + vkGetPhysicalDeviceProperties2 = cast[proc (physicalDevice: VkPhysicalDevice, pProperties: ptr VkPhysicalDeviceProperties2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceProperties2")) + vkGetPhysicalDeviceFormatProperties2 = cast[proc (physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: ptr VkFormatProperties2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFormatProperties2")) + vkGetPhysicalDeviceImageFormatProperties2 = cast[proc (physicalDevice: VkPhysicalDevice, pImageFormatInfo: ptr VkPhysicalDeviceImageFormatInfo2, pImageFormatProperties: ptr VkImageFormatProperties2): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceImageFormatProperties2")) + vkGetPhysicalDeviceQueueFamilyProperties2 = cast[proc (physicalDevice: VkPhysicalDevice, pQueueFamilyPropertyCount: ptr uint32, pQueueFamilyProperties: ptr VkQueueFamilyProperties2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceQueueFamilyProperties2")) + vkGetPhysicalDeviceMemoryProperties2 = cast[proc (physicalDevice: VkPhysicalDevice, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceMemoryProperties2")) + vkGetPhysicalDeviceSparseImageFormatProperties2 = cast[proc (physicalDevice: VkPhysicalDevice, pFormatInfo: ptr VkPhysicalDeviceSparseImageFormatInfo2, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSparseImageFormatProperties2")) + vkTrimCommandPool = cast[proc (device: VkDevice, commandPool: VkCommandPool, flags: VkCommandPoolTrimFlags): void {.stdcall.}](vkGetProc("vkTrimCommandPool")) + vkGetDeviceQueue2 = cast[proc (device: VkDevice, pQueueInfo: ptr VkDeviceQueueInfo2, pQueue: ptr VkQueue): void {.stdcall.}](vkGetProc("vkGetDeviceQueue2")) + vkCreateSamplerYcbcrConversion = cast[proc (device: VkDevice, pCreateInfo: ptr VkSamplerYcbcrConversionCreateInfo, pAllocator: ptr VkAllocationCallbacks, pYcbcrConversion: ptr VkSamplerYcbcrConversion): VkResult {.stdcall.}](vkGetProc("vkCreateSamplerYcbcrConversion")) + vkDestroySamplerYcbcrConversion = cast[proc (device: VkDevice, ycbcrConversion: VkSamplerYcbcrConversion, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySamplerYcbcrConversion")) + vkCreateDescriptorUpdateTemplate = cast[proc (device: VkDevice, pCreateInfo: ptr VkDescriptorUpdateTemplateCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDescriptorUpdateTemplate: ptr VkDescriptorUpdateTemplate): VkResult {.stdcall.}](vkGetProc("vkCreateDescriptorUpdateTemplate")) + vkDestroyDescriptorUpdateTemplate = cast[proc (device: VkDevice, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDescriptorUpdateTemplate")) + vkUpdateDescriptorSetWithTemplate = cast[proc (device: VkDevice, descriptorSet: VkDescriptorSet, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pData: pointer): void {.stdcall.}](vkGetProc("vkUpdateDescriptorSetWithTemplate")) + vkGetPhysicalDeviceExternalBufferProperties = cast[proc (physicalDevice: VkPhysicalDevice, pExternalBufferInfo: ptr VkPhysicalDeviceExternalBufferInfo, pExternalBufferProperties: ptr VkExternalBufferProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalBufferProperties")) + vkGetPhysicalDeviceExternalFenceProperties = cast[proc (physicalDevice: VkPhysicalDevice, pExternalFenceInfo: ptr VkPhysicalDeviceExternalFenceInfo, pExternalFenceProperties: ptr VkExternalFenceProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalFenceProperties")) + vkGetPhysicalDeviceExternalSemaphoreProperties = cast[proc (physicalDevice: VkPhysicalDevice, pExternalSemaphoreInfo: ptr VkPhysicalDeviceExternalSemaphoreInfo, pExternalSemaphoreProperties: ptr VkExternalSemaphoreProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalSemaphoreProperties")) + vkGetDescriptorSetLayoutSupport = cast[proc (device: VkDevice, pCreateInfo: ptr VkDescriptorSetLayoutCreateInfo, pSupport: ptr VkDescriptorSetLayoutSupport): void {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutSupport")) # Vulkan 1_2 proc vkLoad1_2*() = - vkCmdDrawIndirectCount = cast[proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, countBuffer: VkBuffe, countBufferOffset: VkDeviceSiz, maxDrawCount: uint32_, stride: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawIndirectCount")) - vkCmdDrawIndexedIndirectCount = cast[proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, countBuffer: VkBuffe, countBufferOffset: VkDeviceSiz, maxDrawCount: uint32_, stride: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawIndexedIndirectCount")) - vkCreateRenderPass2 = cast[proc (device: VkDevic, pCreateInfo: ptr VkRenderPassCreateInfo2, pAllocator: ptr VkAllocationCallbacks, pRenderPass: ptr VkRenderPass): VkResult {.stdcall.}](vkGetProc("vkCreateRenderPass2")) - vkCmdBeginRenderPass2 = cast[proc (commandBuffer: VkCommandBuffe, pRenderPassBegin: ptr VkRenderPassBeginInfo , pSubpassBeginInfo: ptr VkSubpassBeginInfo ): void {.stdcall.}](vkGetProc("vkCmdBeginRenderPass2")) - vkCmdNextSubpass2 = cast[proc (commandBuffer: VkCommandBuffe, pSubpassBeginInfo: ptr VkSubpassBeginInfo , pSubpassEndInfo: ptr VkSubpassEndInfo ): void {.stdcall.}](vkGetProc("vkCmdNextSubpass2")) - vkCmdEndRenderPass2 = cast[proc (commandBuffer: VkCommandBuffe, pSubpassEndInfo: ptr VkSubpassEndInfo ): void {.stdcall.}](vkGetProc("vkCmdEndRenderPass2")) - vkResetQueryPool = cast[proc (device: VkDevic, queryPool: VkQueryPoo, firstQuery: uint32_, queryCount: uint32_): void {.stdcall.}](vkGetProc("vkResetQueryPool")) - vkGetSemaphoreCounterValue = cast[proc (device: VkDevic, semaphore: VkSemaphor, pValue: ptr uint64): VkResult {.stdcall.}](vkGetProc("vkGetSemaphoreCounterValue")) - vkWaitSemaphores = cast[proc (device: VkDevic, pWaitInfo: ptr VkSemaphoreWaitInfo, timeout: uint64_): VkResult {.stdcall.}](vkGetProc("vkWaitSemaphores")) - vkSignalSemaphore = cast[proc (device: VkDevic, pSignalInfo: ptr VkSemaphoreSignalInfo): VkResult {.stdcall.}](vkGetProc("vkSignalSemaphore")) - vkGetBufferDeviceAddress = cast[proc (device: VkDevic, pInfo: ptr VkBufferDeviceAddressInfo): VkDeviceAddress {.stdcall.}](vkGetProc("vkGetBufferDeviceAddress")) - vkGetBufferOpaqueCaptureAddress = cast[proc (device: VkDevic, pInfo: ptr VkBufferDeviceAddressInfo): uint64 {.stdcall.}](vkGetProc("vkGetBufferOpaqueCaptureAddress")) - vkGetDeviceMemoryOpaqueCaptureAddress = cast[proc (device: VkDevic, pInfo: ptr VkDeviceMemoryOpaqueCaptureAddressInfo): uint64 {.stdcall.}](vkGetProc("vkGetDeviceMemoryOpaqueCaptureAddress")) + vkCmdDrawIndirectCount = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawIndirectCount")) + vkCmdDrawIndexedIndirectCount = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawIndexedIndirectCount")) + vkCreateRenderPass2 = cast[proc (device: VkDevice, pCreateInfo: ptr VkRenderPassCreateInfo2, pAllocator: ptr VkAllocationCallbacks, pRenderPass: ptr VkRenderPass): VkResult {.stdcall.}](vkGetProc("vkCreateRenderPass2")) + vkCmdBeginRenderPass2 = cast[proc (commandBuffer: VkCommandBuffer, pRenderPassBegin: ptr VkRenderPassBeginInfo, pSubpassBeginInfo: ptr VkSubpassBeginInfo): void {.stdcall.}](vkGetProc("vkCmdBeginRenderPass2")) + vkCmdNextSubpass2 = cast[proc (commandBuffer: VkCommandBuffer, pSubpassBeginInfo: ptr VkSubpassBeginInfo, pSubpassEndInfo: ptr VkSubpassEndInfo): void {.stdcall.}](vkGetProc("vkCmdNextSubpass2")) + vkCmdEndRenderPass2 = cast[proc (commandBuffer: VkCommandBuffer, pSubpassEndInfo: ptr VkSubpassEndInfo): void {.stdcall.}](vkGetProc("vkCmdEndRenderPass2")) + vkResetQueryPool = cast[proc (device: VkDevice, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32): void {.stdcall.}](vkGetProc("vkResetQueryPool")) + vkGetSemaphoreCounterValue = cast[proc (device: VkDevice, semaphore: VkSemaphore, pValue: ptr uint64): VkResult {.stdcall.}](vkGetProc("vkGetSemaphoreCounterValue")) + vkWaitSemaphores = cast[proc (device: VkDevice, pWaitInfo: ptr VkSemaphoreWaitInfo, timeout: uint64): VkResult {.stdcall.}](vkGetProc("vkWaitSemaphores")) + vkSignalSemaphore = cast[proc (device: VkDevice, pSignalInfo: ptr VkSemaphoreSignalInfo): VkResult {.stdcall.}](vkGetProc("vkSignalSemaphore")) + vkGetBufferDeviceAddress = cast[proc (device: VkDevice, pInfo: ptr VkBufferDeviceAddressInfo): VkDeviceAddress {.stdcall.}](vkGetProc("vkGetBufferDeviceAddress")) + vkGetBufferOpaqueCaptureAddress = cast[proc (device: VkDevice, pInfo: ptr VkBufferDeviceAddressInfo): uint64 {.stdcall.}](vkGetProc("vkGetBufferOpaqueCaptureAddress")) + vkGetDeviceMemoryOpaqueCaptureAddress = cast[proc (device: VkDevice, pInfo: ptr VkDeviceMemoryOpaqueCaptureAddressInfo): uint64 {.stdcall.}](vkGetProc("vkGetDeviceMemoryOpaqueCaptureAddress")) # Vulkan 1_3 proc vkLoad1_3*() = - vkGetPhysicalDeviceToolProperties = cast[proc (physicalDevice: VkPhysicalDevic, pToolCount: ptr uint32, pToolProperties: ptr VkPhysicalDeviceToolProperties): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceToolProperties")) - vkCreatePrivateDataSlot = cast[proc (device: VkDevic, pCreateInfo: ptr VkPrivateDataSlotCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPrivateDataSlot: ptr VkPrivateDataSlot): VkResult {.stdcall.}](vkGetProc("vkCreatePrivateDataSlot")) - vkDestroyPrivateDataSlot = cast[proc (device: VkDevic, privateDataSlot: VkPrivateDataSlo, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyPrivateDataSlot")) - vkSetPrivateData = cast[proc (device: VkDevic, objectType: VkObjectTyp, objectHandle: uint64_, privateDataSlot: VkPrivateDataSlo, data: uint64_): VkResult {.stdcall.}](vkGetProc("vkSetPrivateData")) - vkGetPrivateData = cast[proc (device: VkDevic, objectType: VkObjectTyp, objectHandle: uint64_, privateDataSlot: VkPrivateDataSlo, pData: ptr uint64): void {.stdcall.}](vkGetProc("vkGetPrivateData")) - vkCmdSetEvent2 = cast[proc (commandBuffer: VkCommandBuffe, event: VkEven, pDependencyInfo: ptr VkDependencyInfo ): void {.stdcall.}](vkGetProc("vkCmdSetEvent2")) - vkCmdResetEvent2 = cast[proc (commandBuffer: VkCommandBuffe, event: VkEven, stageMask: VkPipelineStageFlags): void {.stdcall.}](vkGetProc("vkCmdResetEvent2")) - vkCmdWaitEvents2 = cast[proc (commandBuffer: VkCommandBuffe, eventCount: uint32_, pEvents: ptr VkEvent , pDependencyInfos: ptr VkDependencyInfo ): void {.stdcall.}](vkGetProc("vkCmdWaitEvents2")) - vkCmdPipelineBarrier2 = cast[proc (commandBuffer: VkCommandBuffe, pDependencyInfo: ptr VkDependencyInfo ): void {.stdcall.}](vkGetProc("vkCmdPipelineBarrier2")) - vkCmdWriteTimestamp2 = cast[proc (commandBuffer: VkCommandBuffe, stage: VkPipelineStageFlags, queryPool: VkQueryPoo, query: uint32_): void {.stdcall.}](vkGetProc("vkCmdWriteTimestamp2")) - vkQueueSubmit2 = cast[proc (queue: VkQueu, submitCount: uint32_, pSubmits: ptr VkSubmitInfo2 , fence: VkFenc): VkResult {.stdcall.}](vkGetProc("vkQueueSubmit2")) - vkCmdCopyBuffer2 = cast[proc (commandBuffer: VkCommandBuffe, pCopyBufferInfo: ptr VkCopyBufferInfo2): void {.stdcall.}](vkGetProc("vkCmdCopyBuffer2")) - vkCmdCopyImage2 = cast[proc (commandBuffer: VkCommandBuffe, pCopyImageInfo: ptr VkCopyImageInfo2): void {.stdcall.}](vkGetProc("vkCmdCopyImage2")) - vkCmdCopyBufferToImage2 = cast[proc (commandBuffer: VkCommandBuffe, pCopyBufferToImageInfo: ptr VkCopyBufferToImageInfo2): void {.stdcall.}](vkGetProc("vkCmdCopyBufferToImage2")) - vkCmdCopyImageToBuffer2 = cast[proc (commandBuffer: VkCommandBuffe, pCopyImageToBufferInfo: ptr VkCopyImageToBufferInfo2): void {.stdcall.}](vkGetProc("vkCmdCopyImageToBuffer2")) - vkCmdBlitImage2 = cast[proc (commandBuffer: VkCommandBuffe, pBlitImageInfo: ptr VkBlitImageInfo2): void {.stdcall.}](vkGetProc("vkCmdBlitImage2")) - vkCmdResolveImage2 = cast[proc (commandBuffer: VkCommandBuffe, pResolveImageInfo: ptr VkResolveImageInfo2): void {.stdcall.}](vkGetProc("vkCmdResolveImage2")) - vkCmdBeginRendering = cast[proc (commandBuffer: VkCommandBuffe, pRenderingInfo: ptr VkRenderingInfo ): void {.stdcall.}](vkGetProc("vkCmdBeginRendering")) - vkCmdEndRendering = cast[proc (commandBuffer: VkCommandBuffe): void {.stdcall.}](vkGetProc("vkCmdEndRendering")) - vkCmdSetCullMode = cast[proc (commandBuffer: VkCommandBuffe, cullMode: VkCullModeFlag): void {.stdcall.}](vkGetProc("vkCmdSetCullMode")) - vkCmdSetFrontFace = cast[proc (commandBuffer: VkCommandBuffe, frontFace: VkFrontFac): void {.stdcall.}](vkGetProc("vkCmdSetFrontFace")) - vkCmdSetPrimitiveTopology = cast[proc (commandBuffer: VkCommandBuffe, primitiveTopology: VkPrimitiveTopolog): void {.stdcall.}](vkGetProc("vkCmdSetPrimitiveTopology")) - vkCmdSetViewportWithCount = cast[proc (commandBuffer: VkCommandBuffe, viewportCount: uint32_, pViewports: ptr VkViewport): void {.stdcall.}](vkGetProc("vkCmdSetViewportWithCount")) - vkCmdSetScissorWithCount = cast[proc (commandBuffer: VkCommandBuffe, scissorCount: uint32_, pScissors: ptr VkRect2D): void {.stdcall.}](vkGetProc("vkCmdSetScissorWithCount")) - vkCmdBindVertexBuffers2 = cast[proc (commandBuffer: VkCommandBuffe, firstBinding: uint32_, bindingCount: uint32_, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize, pSizes: ptr VkDeviceSize, pStrides: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdBindVertexBuffers2")) - vkCmdSetDepthTestEnable = cast[proc (commandBuffer: VkCommandBuffe, depthTestEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetDepthTestEnable")) - vkCmdSetDepthWriteEnable = cast[proc (commandBuffer: VkCommandBuffe, depthWriteEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetDepthWriteEnable")) - vkCmdSetDepthCompareOp = cast[proc (commandBuffer: VkCommandBuffe, depthCompareOp: VkCompareO): void {.stdcall.}](vkGetProc("vkCmdSetDepthCompareOp")) - vkCmdSetDepthBoundsTestEnable = cast[proc (commandBuffer: VkCommandBuffe, depthBoundsTestEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetDepthBoundsTestEnable")) - vkCmdSetStencilTestEnable = cast[proc (commandBuffer: VkCommandBuffe, stencilTestEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetStencilTestEnable")) - vkCmdSetStencilOp = cast[proc (commandBuffer: VkCommandBuffe, faceMask: VkStencilFaceFlag, failOp: VkStencilO, passOp: VkStencilO, depthFailOp: VkStencilO, compareOp: VkCompareO): void {.stdcall.}](vkGetProc("vkCmdSetStencilOp")) - vkCmdSetRasterizerDiscardEnable = cast[proc (commandBuffer: VkCommandBuffe, rasterizerDiscardEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetRasterizerDiscardEnable")) - vkCmdSetDepthBiasEnable = cast[proc (commandBuffer: VkCommandBuffe, depthBiasEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetDepthBiasEnable")) - vkCmdSetPrimitiveRestartEnable = cast[proc (commandBuffer: VkCommandBuffe, primitiveRestartEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetPrimitiveRestartEnable")) - vkGetDeviceBufferMemoryRequirements = cast[proc (device: VkDevic, pInfo: ptr VkDeviceBufferMemoryRequirements, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetDeviceBufferMemoryRequirements")) - vkGetDeviceImageMemoryRequirements = cast[proc (device: VkDevic, pInfo: ptr VkDeviceImageMemoryRequirements, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetDeviceImageMemoryRequirements")) - vkGetDeviceImageSparseMemoryRequirements = cast[proc (device: VkDevic, pInfo: ptr VkDeviceImageMemoryRequirements, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetDeviceImageSparseMemoryRequirements")) + vkGetPhysicalDeviceToolProperties = cast[proc (physicalDevice: VkPhysicalDevice, pToolCount: ptr uint32, pToolProperties: ptr VkPhysicalDeviceToolProperties): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceToolProperties")) + vkCreatePrivateDataSlot = cast[proc (device: VkDevice, pCreateInfo: ptr VkPrivateDataSlotCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPrivateDataSlot: ptr VkPrivateDataSlot): VkResult {.stdcall.}](vkGetProc("vkCreatePrivateDataSlot")) + vkDestroyPrivateDataSlot = cast[proc (device: VkDevice, privateDataSlot: VkPrivateDataSlot, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyPrivateDataSlot")) + vkSetPrivateData = cast[proc (device: VkDevice, objectType: VkObjectType, objectHandle: uint64, privateDataSlot: VkPrivateDataSlot, data: uint64): VkResult {.stdcall.}](vkGetProc("vkSetPrivateData")) + vkGetPrivateData = cast[proc (device: VkDevice, objectType: VkObjectType, objectHandle: uint64, privateDataSlot: VkPrivateDataSlot, pData: ptr uint64): void {.stdcall.}](vkGetProc("vkGetPrivateData")) + vkCmdSetEvent2 = cast[proc (commandBuffer: VkCommandBuffer, event: VkEvent, pDependencyInfo: ptr VkDependencyInfo): void {.stdcall.}](vkGetProc("vkCmdSetEvent2")) + vkCmdResetEvent2 = cast[proc (commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags2): void {.stdcall.}](vkGetProc("vkCmdResetEvent2")) + vkCmdWaitEvents2 = cast[proc (commandBuffer: VkCommandBuffer, eventCount: uint32, pEvents: ptr VkEvent, pDependencyInfos: ptr VkDependencyInfo): void {.stdcall.}](vkGetProc("vkCmdWaitEvents2")) + vkCmdPipelineBarrier2 = cast[proc (commandBuffer: VkCommandBuffer, pDependencyInfo: ptr VkDependencyInfo): void {.stdcall.}](vkGetProc("vkCmdPipelineBarrier2")) + vkCmdWriteTimestamp2 = cast[proc (commandBuffer: VkCommandBuffer, stage: VkPipelineStageFlags2, queryPool: VkQueryPool, query: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteTimestamp2")) + vkQueueSubmit2 = cast[proc (queue: VkQueue, submitCount: uint32, pSubmits: ptr VkSubmitInfo2, fence: VkFence): VkResult {.stdcall.}](vkGetProc("vkQueueSubmit2")) + vkCmdCopyBuffer2 = cast[proc (commandBuffer: VkCommandBuffer, pCopyBufferInfo: ptr VkCopyBufferInfo2): void {.stdcall.}](vkGetProc("vkCmdCopyBuffer2")) + vkCmdCopyImage2 = cast[proc (commandBuffer: VkCommandBuffer, pCopyImageInfo: ptr VkCopyImageInfo2): void {.stdcall.}](vkGetProc("vkCmdCopyImage2")) + vkCmdCopyBufferToImage2 = cast[proc (commandBuffer: VkCommandBuffer, pCopyBufferToImageInfo: ptr VkCopyBufferToImageInfo2): void {.stdcall.}](vkGetProc("vkCmdCopyBufferToImage2")) + vkCmdCopyImageToBuffer2 = cast[proc (commandBuffer: VkCommandBuffer, pCopyImageToBufferInfo: ptr VkCopyImageToBufferInfo2): void {.stdcall.}](vkGetProc("vkCmdCopyImageToBuffer2")) + vkCmdBlitImage2 = cast[proc (commandBuffer: VkCommandBuffer, pBlitImageInfo: ptr VkBlitImageInfo2): void {.stdcall.}](vkGetProc("vkCmdBlitImage2")) + vkCmdResolveImage2 = cast[proc (commandBuffer: VkCommandBuffer, pResolveImageInfo: ptr VkResolveImageInfo2): void {.stdcall.}](vkGetProc("vkCmdResolveImage2")) + vkCmdBeginRendering = cast[proc (commandBuffer: VkCommandBuffer, pRenderingInfo: ptr VkRenderingInfo): void {.stdcall.}](vkGetProc("vkCmdBeginRendering")) + vkCmdEndRendering = cast[proc (commandBuffer: VkCommandBuffer): void {.stdcall.}](vkGetProc("vkCmdEndRendering")) + vkCmdSetCullMode = cast[proc (commandBuffer: VkCommandBuffer, cullMode: VkCullModeFlags): void {.stdcall.}](vkGetProc("vkCmdSetCullMode")) + vkCmdSetFrontFace = cast[proc (commandBuffer: VkCommandBuffer, frontFace: VkFrontFace): void {.stdcall.}](vkGetProc("vkCmdSetFrontFace")) + vkCmdSetPrimitiveTopology = cast[proc (commandBuffer: VkCommandBuffer, primitiveTopology: VkPrimitiveTopology): void {.stdcall.}](vkGetProc("vkCmdSetPrimitiveTopology")) + vkCmdSetViewportWithCount = cast[proc (commandBuffer: VkCommandBuffer, viewportCount: uint32, pViewports: ptr VkViewport): void {.stdcall.}](vkGetProc("vkCmdSetViewportWithCount")) + vkCmdSetScissorWithCount = cast[proc (commandBuffer: VkCommandBuffer, scissorCount: uint32, pScissors: ptr VkRect2D): void {.stdcall.}](vkGetProc("vkCmdSetScissorWithCount")) + vkCmdBindVertexBuffers2 = cast[proc (commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize, pSizes: ptr VkDeviceSize, pStrides: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdBindVertexBuffers2")) + vkCmdSetDepthTestEnable = cast[proc (commandBuffer: VkCommandBuffer, depthTestEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthTestEnable")) + vkCmdSetDepthWriteEnable = cast[proc (commandBuffer: VkCommandBuffer, depthWriteEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthWriteEnable")) + vkCmdSetDepthCompareOp = cast[proc (commandBuffer: VkCommandBuffer, depthCompareOp: VkCompareOp): void {.stdcall.}](vkGetProc("vkCmdSetDepthCompareOp")) + vkCmdSetDepthBoundsTestEnable = cast[proc (commandBuffer: VkCommandBuffer, depthBoundsTestEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthBoundsTestEnable")) + vkCmdSetStencilTestEnable = cast[proc (commandBuffer: VkCommandBuffer, stencilTestEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetStencilTestEnable")) + vkCmdSetStencilOp = cast[proc (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, failOp: VkStencilOp, passOp: VkStencilOp, depthFailOp: VkStencilOp, compareOp: VkCompareOp): void {.stdcall.}](vkGetProc("vkCmdSetStencilOp")) + vkCmdSetRasterizerDiscardEnable = cast[proc (commandBuffer: VkCommandBuffer, rasterizerDiscardEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetRasterizerDiscardEnable")) + vkCmdSetDepthBiasEnable = cast[proc (commandBuffer: VkCommandBuffer, depthBiasEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthBiasEnable")) + vkCmdSetPrimitiveRestartEnable = cast[proc (commandBuffer: VkCommandBuffer, primitiveRestartEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetPrimitiveRestartEnable")) + vkGetDeviceBufferMemoryRequirements = cast[proc (device: VkDevice, pInfo: ptr VkDeviceBufferMemoryRequirements, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetDeviceBufferMemoryRequirements")) + vkGetDeviceImageMemoryRequirements = cast[proc (device: VkDevice, pInfo: ptr VkDeviceImageMemoryRequirements, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetDeviceImageMemoryRequirements")) + vkGetDeviceImageSparseMemoryRequirements = cast[proc (device: VkDevice, pInfo: ptr VkDeviceImageMemoryRequirements, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetDeviceImageSparseMemoryRequirements")) # Vulkan 1_0 proc vkLoad1_0*() = - vkGetCommandPoolMemoryConsumption = cast[proc (device: VkDevic, commandPool: VkCommandPoo, commandBuffer: VkCommandBuffe, pConsumption: ptr VkCommandPoolMemoryConsumption): void {.stdcall.}](vkGetProc("vkGetCommandPoolMemoryConsumption")) - vkGetFaultData = cast[proc (device: VkDevic, faultQueryBehavior: VkFaultQueryBehavio, pUnrecordedFaults: ptr VkBool32, pFaultCount: ptr uint32, pFaults: ptr VkFaultData): VkResult {.stdcall.}](vkGetProc("vkGetFaultData")) - vkCreateShaderModule = cast[proc (device: VkDevic, pCreateInfo: ptr VkShaderModuleCreateInfo, pAllocator: ptr VkAllocationCallbacks, pShaderModule: ptr VkShaderModule): VkResult {.stdcall.}](vkGetProc("vkCreateShaderModule")) - vkDestroyShaderModule = cast[proc (device: VkDevic, shaderModule: VkShaderModul, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyShaderModule")) - vkMergePipelineCaches = cast[proc (device: VkDevic, dstCache: VkPipelineCach, srcCacheCount: uint32_, pSrcCaches: ptr VkPipelineCache): VkResult {.stdcall.}](vkGetProc("vkMergePipelineCaches")) - vkGetPipelineCacheData = cast[proc (device: VkDevic, pipelineCache: VkPipelineCach, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetPipelineCacheData")) - vkTrimCommandPool = cast[proc (device: VkDevic, commandPool: VkCommandPoo, flags: VkCommandPoolTrimFlag): void {.stdcall.}](vkGetProc("vkTrimCommandPool")) - vkDestroyCommandPool = cast[proc (device: VkDevic, commandPool: VkCommandPoo, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyCommandPool")) - vkDestroyDescriptorPool = cast[proc (device: VkDevic, descriptorPool: VkDescriptorPoo, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDescriptorPool")) - vkDestroyQueryPool = cast[proc (device: VkDevic, queryPool: VkQueryPoo, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyQueryPool")) - vkDestroySwapchainKHR = cast[proc (device: VkDevic, swapchain: VkSwapchainKH, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySwapchainKHR")) - vkFreeMemory = cast[proc (device: VkDevic, memory: VkDeviceMemor, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkFreeMemory")) - vkCreateDescriptorUpdateTemplate = cast[proc (device: VkDevic, pCreateInfo: ptr VkDescriptorUpdateTemplateCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDescriptorUpdateTemplate: ptr VkDescriptorUpdateTemplate): VkResult {.stdcall.}](vkGetProc("vkCreateDescriptorUpdateTemplate")) - vkDestroyDescriptorUpdateTemplate = cast[proc (device: VkDevic, descriptorUpdateTemplate: VkDescriptorUpdateTemplat, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDescriptorUpdateTemplate")) - vkUpdateDescriptorSetWithTemplate = cast[proc (device: VkDevic, descriptorSet: VkDescriptorSe, descriptorUpdateTemplate: VkDescriptorUpdateTemplat, pData: pointer): void {.stdcall.}](vkGetProc("vkUpdateDescriptorSetWithTemplate")) - vkGetPhysicalDeviceSparseImageFormatProperties = cast[proc (physicalDevice: VkPhysicalDevic, format: VkForma, `type`: VkImageTyp, samples: VkSampleCountFlagBit, usage: VkImageUsageFlag, tiling: VkImageTilin, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSparseImageFormatProperties")) - vkGetPhysicalDeviceSparseImageFormatProperties2 = cast[proc (physicalDevice: VkPhysicalDevic, pFormatInfo: ptr VkPhysicalDeviceSparseImageFormatInfo2, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSparseImageFormatProperties2")) - vkGetImageSparseMemoryRequirements = cast[proc (device: VkDevic, image: VkImag, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements): void {.stdcall.}](vkGetProc("vkGetImageSparseMemoryRequirements")) - vkGetImageSparseMemoryRequirements2 = cast[proc (device: VkDevic, pInfo: ptr VkImageSparseMemoryRequirementsInfo2, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetImageSparseMemoryRequirements2")) - vkQueueBindSparse = cast[proc (queue: VkQueu, bindInfoCount: uint32_, pBindInfo: ptr VkBindSparseInfo, fence: VkFenc): VkResult {.stdcall.}](vkGetProc("vkQueueBindSparse")) - vkDestroySemaphoreSciSyncPoolNV = cast[proc (device: VkDevic, semaphorePool: VkSemaphoreSciSyncPoolN, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySemaphoreSciSyncPoolNV")) + vkGetCommandPoolMemoryConsumption = cast[proc (device: VkDevice, commandPool: VkCommandPool, commandBuffer: VkCommandBuffer, pConsumption: ptr VkCommandPoolMemoryConsumption): void {.stdcall.}](vkGetProc("vkGetCommandPoolMemoryConsumption")) + vkGetFaultData = cast[proc (device: VkDevice, faultQueryBehavior: VkFaultQueryBehavior, pUnrecordedFaults: ptr VkBool32, pFaultCount: ptr uint32, pFaults: ptr VkFaultData): VkResult {.stdcall.}](vkGetProc("vkGetFaultData")) + vkCreateShaderModule = cast[proc (device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo, pAllocator: ptr VkAllocationCallbacks, pShaderModule: ptr VkShaderModule): VkResult {.stdcall.}](vkGetProc("vkCreateShaderModule")) + vkDestroyShaderModule = cast[proc (device: VkDevice, shaderModule: VkShaderModule, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyShaderModule")) + vkMergePipelineCaches = cast[proc (device: VkDevice, dstCache: VkPipelineCache, srcCacheCount: uint32, pSrcCaches: ptr VkPipelineCache): VkResult {.stdcall.}](vkGetProc("vkMergePipelineCaches")) + vkGetPipelineCacheData = cast[proc (device: VkDevice, pipelineCache: VkPipelineCache, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetPipelineCacheData")) + vkTrimCommandPool = cast[proc (device: VkDevice, commandPool: VkCommandPool, flags: VkCommandPoolTrimFlags): void {.stdcall.}](vkGetProc("vkTrimCommandPool")) + vkDestroyCommandPool = cast[proc (device: VkDevice, commandPool: VkCommandPool, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyCommandPool")) + vkDestroyDescriptorPool = cast[proc (device: VkDevice, descriptorPool: VkDescriptorPool, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDescriptorPool")) + vkDestroyQueryPool = cast[proc (device: VkDevice, queryPool: VkQueryPool, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyQueryPool")) + vkDestroySwapchainKHR = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySwapchainKHR")) + vkFreeMemory = cast[proc (device: VkDevice, memory: VkDeviceMemory, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkFreeMemory")) + vkCreateDescriptorUpdateTemplate = cast[proc (device: VkDevice, pCreateInfo: ptr VkDescriptorUpdateTemplateCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDescriptorUpdateTemplate: ptr VkDescriptorUpdateTemplate): VkResult {.stdcall.}](vkGetProc("vkCreateDescriptorUpdateTemplate")) + vkDestroyDescriptorUpdateTemplate = cast[proc (device: VkDevice, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDescriptorUpdateTemplate")) + vkUpdateDescriptorSetWithTemplate = cast[proc (device: VkDevice, descriptorSet: VkDescriptorSet, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pData: pointer): void {.stdcall.}](vkGetProc("vkUpdateDescriptorSetWithTemplate")) + vkGetPhysicalDeviceSparseImageFormatProperties = cast[proc (physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, samples: VkSampleCountFlagBits, usage: VkImageUsageFlags, tiling: VkImageTiling, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSparseImageFormatProperties")) + vkGetPhysicalDeviceSparseImageFormatProperties2 = cast[proc (physicalDevice: VkPhysicalDevice, pFormatInfo: ptr VkPhysicalDeviceSparseImageFormatInfo2, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSparseImageFormatProperties2")) + vkGetImageSparseMemoryRequirements = cast[proc (device: VkDevice, image: VkImage, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements): void {.stdcall.}](vkGetProc("vkGetImageSparseMemoryRequirements")) + vkGetImageSparseMemoryRequirements2 = cast[proc (device: VkDevice, pInfo: ptr VkImageSparseMemoryRequirementsInfo2, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetImageSparseMemoryRequirements2")) + vkQueueBindSparse = cast[proc (queue: VkQueue, bindInfoCount: uint32, pBindInfo: ptr VkBindSparseInfo, fence: VkFence): VkResult {.stdcall.}](vkGetProc("vkQueueBindSparse")) + vkDestroySemaphoreSciSyncPoolNV = cast[proc (device: VkDevice, semaphorePool: VkSemaphoreSciSyncPoolNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySemaphoreSciSyncPoolNV")) # Load VK_KHR_surface proc loadVK_KHR_surface*() = - vkDestroySurfaceKHR = cast[proc (instance: VkInstanc, surface: VkSurfaceKH, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySurfaceKHR")) - vkGetPhysicalDeviceSurfaceSupportKHR = cast[proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, surface: VkSurfaceKH, pSupported: ptr VkBool32): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceSupportKHR")) - vkGetPhysicalDeviceSurfaceCapabilitiesKHR = cast[proc (physicalDevice: VkPhysicalDevic, surface: VkSurfaceKH, pSurfaceCapabilities: ptr VkSurfaceCapabilitiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceCapabilitiesKHR")) - vkGetPhysicalDeviceSurfaceFormatsKHR = cast[proc (physicalDevice: VkPhysicalDevic, surface: VkSurfaceKH, pSurfaceFormatCount: ptr uint32, pSurfaceFormats: ptr VkSurfaceFormatKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceFormatsKHR")) - vkGetPhysicalDeviceSurfacePresentModesKHR = cast[proc (physicalDevice: VkPhysicalDevic, surface: VkSurfaceKH, pPresentModeCount: ptr uint32, pPresentModes: ptr VkPresentModeKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfacePresentModesKHR")) + vkDestroySurfaceKHR = cast[proc (instance: VkInstance, surface: VkSurfaceKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySurfaceKHR")) + vkGetPhysicalDeviceSurfaceSupportKHR = cast[proc (physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, surface: VkSurfaceKHR, pSupported: ptr VkBool32): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceSupportKHR")) + vkGetPhysicalDeviceSurfaceCapabilitiesKHR = cast[proc (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceCapabilities: ptr VkSurfaceCapabilitiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceCapabilitiesKHR")) + vkGetPhysicalDeviceSurfaceFormatsKHR = cast[proc (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceFormatCount: ptr uint32, pSurfaceFormats: ptr VkSurfaceFormatKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceFormatsKHR")) + vkGetPhysicalDeviceSurfacePresentModesKHR = cast[proc (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pPresentModeCount: ptr uint32, pPresentModes: ptr VkPresentModeKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfacePresentModesKHR")) # Load VK_KHR_swapchain proc loadVK_KHR_swapchain*() = - vkCreateSwapchainKHR = cast[proc (device: VkDevic, pCreateInfo: ptr VkSwapchainCreateInfoKHR, pCreateInfo: ptr VkSwapchainCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSwapchain: ptr VkSwapchainKHR): VkResult {.stdcall.}](vkGetProc("vkCreateSwapchainKHR")) - vkDestroySwapchainKHR = cast[proc (device: VkDevic, swapchain: VkSwapchainKH, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySwapchainKHR")) - vkGetSwapchainImagesKHR = cast[proc (device: VkDevic, swapchain: VkSwapchainKH, pSwapchainImageCount: ptr uint32, pSwapchainImages: ptr VkImage): VkResult {.stdcall.}](vkGetProc("vkGetSwapchainImagesKHR")) - vkAcquireNextImageKHR = cast[proc (device: VkDevic, swapchain: VkSwapchainKH, timeout: uint64_, semaphore: VkSemaphor, fence: VkFenc, pImageIndex: ptr uint32): VkResult {.stdcall.}](vkGetProc("vkAcquireNextImageKHR")) - vkQueuePresentKHR = cast[proc (queue: VkQueu, pPresentInfo: ptr VkPresentInfoKHR): VkResult {.stdcall.}](vkGetProc("vkQueuePresentKHR")) - vkGetDeviceGroupPresentCapabilitiesKHR = cast[proc (device: VkDevic, pDeviceGroupPresentCapabilities: ptr VkDeviceGroupPresentCapabilitiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetDeviceGroupPresentCapabilitiesKHR")) - vkGetDeviceGroupSurfacePresentModesKHR = cast[proc (device: VkDevic, surface: VkSurfaceKH, pModes: ptr VkDeviceGroupPresentModeFlagsKHR): VkResult {.stdcall.}](vkGetProc("vkGetDeviceGroupSurfacePresentModesKHR")) - vkGetPhysicalDevicePresentRectanglesKHR = cast[proc (physicalDevice: VkPhysicalDevic, surface: VkSurfaceKH, pRectCount: ptr uint32, pRects: ptr VkRect2D): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDevicePresentRectanglesKHR")) - vkAcquireNextImage2KHR = cast[proc (device: VkDevic, pAcquireInfo: ptr VkAcquireNextImageInfoKHR, pImageIndex: ptr uint32): VkResult {.stdcall.}](vkGetProc("vkAcquireNextImage2KHR")) + vkCreateSwapchainKHR = cast[proc (device: VkDevice, pCreateInfo: ptr VkSwapchainCreateInfoKHR, pCreateInfo: ptr VkSwapchainCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSwapchain: ptr VkSwapchainKHR): VkResult {.stdcall.}](vkGetProc("vkCreateSwapchainKHR")) + vkDestroySwapchainKHR = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySwapchainKHR")) + vkGetSwapchainImagesKHR = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR, pSwapchainImageCount: ptr uint32, pSwapchainImages: ptr VkImage): VkResult {.stdcall.}](vkGetProc("vkGetSwapchainImagesKHR")) + vkAcquireNextImageKHR = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR, timeout: uint64, semaphore: VkSemaphore, fence: VkFence, pImageIndex: ptr uint32): VkResult {.stdcall.}](vkGetProc("vkAcquireNextImageKHR")) + vkQueuePresentKHR = cast[proc (queue: VkQueue, pPresentInfo: ptr VkPresentInfoKHR): VkResult {.stdcall.}](vkGetProc("vkQueuePresentKHR")) + vkGetDeviceGroupPresentCapabilitiesKHR = cast[proc (device: VkDevice, pDeviceGroupPresentCapabilities: ptr VkDeviceGroupPresentCapabilitiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetDeviceGroupPresentCapabilitiesKHR")) + vkGetDeviceGroupSurfacePresentModesKHR = cast[proc (device: VkDevice, surface: VkSurfaceKHR, pModes: ptr VkDeviceGroupPresentModeFlagsKHR): VkResult {.stdcall.}](vkGetProc("vkGetDeviceGroupSurfacePresentModesKHR")) + vkGetPhysicalDevicePresentRectanglesKHR = cast[proc (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pRectCount: ptr uint32, pRects: ptr VkRect2D): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDevicePresentRectanglesKHR")) + vkAcquireNextImage2KHR = cast[proc (device: VkDevice, pAcquireInfo: ptr VkAcquireNextImageInfoKHR, pImageIndex: ptr uint32): VkResult {.stdcall.}](vkGetProc("vkAcquireNextImage2KHR")) # Load VK_KHR_display proc loadVK_KHR_display*() = - vkGetPhysicalDeviceDisplayPropertiesKHR = cast[proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayPropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceDisplayPropertiesKHR")) - vkGetPhysicalDeviceDisplayPlanePropertiesKHR = cast[proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayPlanePropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceDisplayPlanePropertiesKHR")) - vkGetDisplayPlaneSupportedDisplaysKHR = cast[proc (physicalDevice: VkPhysicalDevic, planeIndex: uint32_, pDisplayCount: ptr uint32, pDisplays: ptr VkDisplayKHR): VkResult {.stdcall.}](vkGetProc("vkGetDisplayPlaneSupportedDisplaysKHR")) - vkGetDisplayModePropertiesKHR = cast[proc (physicalDevice: VkPhysicalDevic, display: VkDisplayKH, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayModePropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetDisplayModePropertiesKHR")) - vkCreateDisplayModeKHR = cast[proc (physicalDevice: VkPhysicalDevic, display: VkDisplayKH, pCreateInfo: ptr VkDisplayModeCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pMode: ptr VkDisplayModeKHR): VkResult {.stdcall.}](vkGetProc("vkCreateDisplayModeKHR")) - vkGetDisplayPlaneCapabilitiesKHR = cast[proc (physicalDevice: VkPhysicalDevic, mode: VkDisplayModeKH, planeIndex: uint32_, pCapabilities: ptr VkDisplayPlaneCapabilitiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetDisplayPlaneCapabilitiesKHR")) - vkCreateDisplayPlaneSurfaceKHR = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkDisplaySurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateDisplayPlaneSurfaceKHR")) + vkGetPhysicalDeviceDisplayPropertiesKHR = cast[proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayPropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceDisplayPropertiesKHR")) + vkGetPhysicalDeviceDisplayPlanePropertiesKHR = cast[proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayPlanePropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceDisplayPlanePropertiesKHR")) + vkGetDisplayPlaneSupportedDisplaysKHR = cast[proc (physicalDevice: VkPhysicalDevice, planeIndex: uint32, pDisplayCount: ptr uint32, pDisplays: ptr VkDisplayKHR): VkResult {.stdcall.}](vkGetProc("vkGetDisplayPlaneSupportedDisplaysKHR")) + vkGetDisplayModePropertiesKHR = cast[proc (physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayModePropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetDisplayModePropertiesKHR")) + vkCreateDisplayModeKHR = cast[proc (physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pCreateInfo: ptr VkDisplayModeCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pMode: ptr VkDisplayModeKHR): VkResult {.stdcall.}](vkGetProc("vkCreateDisplayModeKHR")) + vkGetDisplayPlaneCapabilitiesKHR = cast[proc (physicalDevice: VkPhysicalDevice, mode: VkDisplayModeKHR, planeIndex: uint32, pCapabilities: ptr VkDisplayPlaneCapabilitiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetDisplayPlaneCapabilitiesKHR")) + vkCreateDisplayPlaneSurfaceKHR = cast[proc (instance: VkInstance, pCreateInfo: ptr VkDisplaySurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateDisplayPlaneSurfaceKHR")) # Load VK_KHR_display_swapchain proc loadVK_KHR_display_swapchain*() = - vkCreateSharedSwapchainsKHR = cast[proc (device: VkDevic, swapchainCount: uint32_, pCreateInfos: ptr VkSwapchainCreateInfoKHR, pCreateInfos: ptr VkSwapchainCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSwapchains: ptr VkSwapchainKHR): VkResult {.stdcall.}](vkGetProc("vkCreateSharedSwapchainsKHR")) + vkCreateSharedSwapchainsKHR = cast[proc (device: VkDevice, swapchainCount: uint32, pCreateInfos: ptr VkSwapchainCreateInfoKHR, pCreateInfos: ptr VkSwapchainCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSwapchains: ptr VkSwapchainKHR): VkResult {.stdcall.}](vkGetProc("vkCreateSharedSwapchainsKHR")) # Load VK_KHR_xlib_surface proc loadVK_KHR_xlib_surface*() = - vkCreateXlibSurfaceKHR = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkXlibSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateXlibSurfaceKHR")) - vkGetPhysicalDeviceXlibPresentationSupportKHR = cast[proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, dpy: ptr Display, visualID: VisualI): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceXlibPresentationSupportKHR")) + vkCreateXlibSurfaceKHR = cast[proc (instance: VkInstance, pCreateInfo: ptr VkXlibSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateXlibSurfaceKHR")) + vkGetPhysicalDeviceXlibPresentationSupportKHR = cast[proc (physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, dpy: ptr Display, visualID: VisualID): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceXlibPresentationSupportKHR")) # Load VK_KHR_xcb_surface proc loadVK_KHR_xcb_surface*() = - vkCreateXcbSurfaceKHR = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkXcbSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateXcbSurfaceKHR")) - vkGetPhysicalDeviceXcbPresentationSupportKHR = cast[proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, connection: ptr xcb_connection_t, visual_id: xcb_visualid_): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceXcbPresentationSupportKHR")) + vkCreateXcbSurfaceKHR = cast[proc (instance: VkInstance, pCreateInfo: ptr VkXcbSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateXcbSurfaceKHR")) + vkGetPhysicalDeviceXcbPresentationSupportKHR = cast[proc (physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, connection: ptr xcb_connection_t, visual_id: xcb_visualid_t): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceXcbPresentationSupportKHR")) # Load VK_KHR_wayland_surface proc loadVK_KHR_wayland_surface*() = - vkCreateWaylandSurfaceKHR = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkWaylandSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateWaylandSurfaceKHR")) - vkGetPhysicalDeviceWaylandPresentationSupportKHR = cast[proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, display: ptr wl_display): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceWaylandPresentationSupportKHR")) + vkCreateWaylandSurfaceKHR = cast[proc (instance: VkInstance, pCreateInfo: ptr VkWaylandSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateWaylandSurfaceKHR")) + vkGetPhysicalDeviceWaylandPresentationSupportKHR = cast[proc (physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, display: ptr wl_display): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceWaylandPresentationSupportKHR")) # Load VK_KHR_android_surface proc loadVK_KHR_android_surface*() = - vkCreateAndroidSurfaceKHR = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkAndroidSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateAndroidSurfaceKHR")) + vkCreateAndroidSurfaceKHR = cast[proc (instance: VkInstance, pCreateInfo: ptr VkAndroidSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateAndroidSurfaceKHR")) # Load VK_KHR_win32_surface proc loadVK_KHR_win32_surface*() = - vkCreateWin32SurfaceKHR = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkWin32SurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateWin32SurfaceKHR")) - vkGetPhysicalDeviceWin32PresentationSupportKHR = cast[proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceWin32PresentationSupportKHR")) + vkCreateWin32SurfaceKHR = cast[proc (instance: VkInstance, pCreateInfo: ptr VkWin32SurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateWin32SurfaceKHR")) + vkGetPhysicalDeviceWin32PresentationSupportKHR = cast[proc (physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceWin32PresentationSupportKHR")) # Load VK_ANDROID_native_buffer proc loadVK_ANDROID_native_buffer*() = - vkGetSwapchainGrallocUsageANDROID = cast[proc (device: VkDevic, format: VkForma, imageUsage: VkImageUsageFlag, grallocUsage: ptr int): VkResult {.stdcall.}](vkGetProc("vkGetSwapchainGrallocUsageANDROID")) - vkAcquireImageANDROID = cast[proc (device: VkDevic, image: VkImag, nativeFenceFd: in, semaphore: VkSemaphor, fence: VkFenc): VkResult {.stdcall.}](vkGetProc("vkAcquireImageANDROID")) - vkQueueSignalReleaseImageANDROID = cast[proc (queue: VkQueu, waitSemaphoreCount: uint32_, pWaitSemaphores: ptr VkSemaphore, image: VkImag, pNativeFenceFd: ptr int): VkResult {.stdcall.}](vkGetProc("vkQueueSignalReleaseImageANDROID")) - vkGetSwapchainGrallocUsage2ANDROID = cast[proc (device: VkDevic, format: VkForma, imageUsage: VkImageUsageFlag, swapchainImageUsage: VkSwapchainImageUsageFlagsANDROI, grallocConsumerUsage: ptr uint64, grallocProducerUsage: ptr uint64): VkResult {.stdcall.}](vkGetProc("vkGetSwapchainGrallocUsage2ANDROID")) + vkGetSwapchainGrallocUsageANDROID = cast[proc (device: VkDevice, format: VkFormat, imageUsage: VkImageUsageFlags, grallocUsage: ptr int): VkResult {.stdcall.}](vkGetProc("vkGetSwapchainGrallocUsageANDROID")) + vkAcquireImageANDROID = cast[proc (device: VkDevice, image: VkImage, nativeFenceFd: int, semaphore: VkSemaphore, fence: VkFence): VkResult {.stdcall.}](vkGetProc("vkAcquireImageANDROID")) + vkQueueSignalReleaseImageANDROID = cast[proc (queue: VkQueue, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, image: VkImage, pNativeFenceFd: ptr int): VkResult {.stdcall.}](vkGetProc("vkQueueSignalReleaseImageANDROID")) + vkGetSwapchainGrallocUsage2ANDROID = cast[proc (device: VkDevice, format: VkFormat, imageUsage: VkImageUsageFlags, swapchainImageUsage: VkSwapchainImageUsageFlagsANDROID, grallocConsumerUsage: ptr uint64, grallocProducerUsage: ptr uint64): VkResult {.stdcall.}](vkGetProc("vkGetSwapchainGrallocUsage2ANDROID")) # Load VK_EXT_debug_report proc loadVK_EXT_debug_report*() = - vkCreateDebugReportCallbackEXT = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkDebugReportCallbackCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pCallback: ptr VkDebugReportCallbackEXT): VkResult {.stdcall.}](vkGetProc("vkCreateDebugReportCallbackEXT")) - vkDestroyDebugReportCallbackEXT = cast[proc (instance: VkInstanc, callback: VkDebugReportCallbackEX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDebugReportCallbackEXT")) - vkDebugReportMessageEXT = cast[proc (instance: VkInstanc, flags: VkDebugReportFlagsEX, objectType: VkDebugReportObjectTypeEX, `object`: uint64_, location: size_, messageCode: int32_, pLayerPrefix: cstring, pMessage: cstring): void {.stdcall.}](vkGetProc("vkDebugReportMessageEXT")) + vkCreateDebugReportCallbackEXT = cast[proc (instance: VkInstance, pCreateInfo: ptr VkDebugReportCallbackCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pCallback: ptr VkDebugReportCallbackEXT): VkResult {.stdcall.}](vkGetProc("vkCreateDebugReportCallbackEXT")) + vkDestroyDebugReportCallbackEXT = cast[proc (instance: VkInstance, callback: VkDebugReportCallbackEXT, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDebugReportCallbackEXT")) + vkDebugReportMessageEXT = cast[proc (instance: VkInstance, flags: VkDebugReportFlagsEXT, objectType: VkDebugReportObjectTypeEXT, `object`: uint64, location: uint, messageCode: int32, pLayerPrefix: cstring, pMessage: cstring): void {.stdcall.}](vkGetProc("vkDebugReportMessageEXT")) # Load VK_EXT_debug_marker proc loadVK_EXT_debug_marker*() = - vkDebugMarkerSetObjectTagEXT = cast[proc (device: VkDevic, pTagInfo: ptr VkDebugMarkerObjectTagInfoEXT): VkResult {.stdcall.}](vkGetProc("vkDebugMarkerSetObjectTagEXT")) - vkDebugMarkerSetObjectNameEXT = cast[proc (device: VkDevic, pNameInfo: ptr VkDebugMarkerObjectNameInfoEXT): VkResult {.stdcall.}](vkGetProc("vkDebugMarkerSetObjectNameEXT")) - vkCmdDebugMarkerBeginEXT = cast[proc (commandBuffer: VkCommandBuffe, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT): void {.stdcall.}](vkGetProc("vkCmdDebugMarkerBeginEXT")) - vkCmdDebugMarkerEndEXT = cast[proc (commandBuffer: VkCommandBuffe): void {.stdcall.}](vkGetProc("vkCmdDebugMarkerEndEXT")) - vkCmdDebugMarkerInsertEXT = cast[proc (commandBuffer: VkCommandBuffe, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT): void {.stdcall.}](vkGetProc("vkCmdDebugMarkerInsertEXT")) + vkDebugMarkerSetObjectTagEXT = cast[proc (device: VkDevice, pTagInfo: ptr VkDebugMarkerObjectTagInfoEXT): VkResult {.stdcall.}](vkGetProc("vkDebugMarkerSetObjectTagEXT")) + vkDebugMarkerSetObjectNameEXT = cast[proc (device: VkDevice, pNameInfo: ptr VkDebugMarkerObjectNameInfoEXT): VkResult {.stdcall.}](vkGetProc("vkDebugMarkerSetObjectNameEXT")) + vkCmdDebugMarkerBeginEXT = cast[proc (commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT): void {.stdcall.}](vkGetProc("vkCmdDebugMarkerBeginEXT")) + vkCmdDebugMarkerEndEXT = cast[proc (commandBuffer: VkCommandBuffer): void {.stdcall.}](vkGetProc("vkCmdDebugMarkerEndEXT")) + vkCmdDebugMarkerInsertEXT = cast[proc (commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT): void {.stdcall.}](vkGetProc("vkCmdDebugMarkerInsertEXT")) # Load VK_KHR_video_queue proc loadVK_KHR_video_queue*() = - vkGetPhysicalDeviceVideoCapabilitiesKHR = cast[proc (physicalDevice: VkPhysicalDevic, pVideoProfile: ptr VkVideoProfileInfoKHR, pCapabilities: ptr VkVideoCapabilitiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceVideoCapabilitiesKHR")) - vkGetPhysicalDeviceVideoFormatPropertiesKHR = cast[proc (physicalDevice: VkPhysicalDevic, pVideoFormatInfo: ptr VkPhysicalDeviceVideoFormatInfoKHR, pVideoFormatPropertyCount: ptr uint32, pVideoFormatProperties: ptr VkVideoFormatPropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceVideoFormatPropertiesKHR")) - vkCreateVideoSessionKHR = cast[proc (device: VkDevic, pCreateInfo: ptr VkVideoSessionCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pVideoSession: ptr VkVideoSessionKHR): VkResult {.stdcall.}](vkGetProc("vkCreateVideoSessionKHR")) - vkDestroyVideoSessionKHR = cast[proc (device: VkDevic, videoSession: VkVideoSessionKH, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyVideoSessionKHR")) - vkGetVideoSessionMemoryRequirementsKHR = cast[proc (device: VkDevic, videoSession: VkVideoSessionKH, pMemoryRequirementsCount: ptr uint32, pMemoryRequirements: ptr VkVideoSessionMemoryRequirementsKHR): VkResult {.stdcall.}](vkGetProc("vkGetVideoSessionMemoryRequirementsKHR")) - vkBindVideoSessionMemoryKHR = cast[proc (device: VkDevic, videoSession: VkVideoSessionKH, bindSessionMemoryInfoCount: uint32_, pBindSessionMemoryInfos: ptr VkBindVideoSessionMemoryInfoKHR): VkResult {.stdcall.}](vkGetProc("vkBindVideoSessionMemoryKHR")) - vkCreateVideoSessionParametersKHR = cast[proc (device: VkDevic, pCreateInfo: ptr VkVideoSessionParametersCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pVideoSessionParameters: ptr VkVideoSessionParametersKHR): VkResult {.stdcall.}](vkGetProc("vkCreateVideoSessionParametersKHR")) - vkUpdateVideoSessionParametersKHR = cast[proc (device: VkDevic, videoSessionParameters: VkVideoSessionParametersKH, pUpdateInfo: ptr VkVideoSessionParametersUpdateInfoKHR): VkResult {.stdcall.}](vkGetProc("vkUpdateVideoSessionParametersKHR")) - vkDestroyVideoSessionParametersKHR = cast[proc (device: VkDevic, videoSessionParameters: VkVideoSessionParametersKH, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyVideoSessionParametersKHR")) - vkCmdBeginVideoCodingKHR = cast[proc (commandBuffer: VkCommandBuffe, pBeginInfo: ptr VkVideoBeginCodingInfoKHR): void {.stdcall.}](vkGetProc("vkCmdBeginVideoCodingKHR")) - vkCmdEndVideoCodingKHR = cast[proc (commandBuffer: VkCommandBuffe, pEndCodingInfo: ptr VkVideoEndCodingInfoKHR): void {.stdcall.}](vkGetProc("vkCmdEndVideoCodingKHR")) - vkCmdControlVideoCodingKHR = cast[proc (commandBuffer: VkCommandBuffe, pCodingControlInfo: ptr VkVideoCodingControlInfoKHR): void {.stdcall.}](vkGetProc("vkCmdControlVideoCodingKHR")) + vkGetPhysicalDeviceVideoCapabilitiesKHR = cast[proc (physicalDevice: VkPhysicalDevice, pVideoProfile: ptr VkVideoProfileInfoKHR, pCapabilities: ptr VkVideoCapabilitiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceVideoCapabilitiesKHR")) + vkGetPhysicalDeviceVideoFormatPropertiesKHR = cast[proc (physicalDevice: VkPhysicalDevice, pVideoFormatInfo: ptr VkPhysicalDeviceVideoFormatInfoKHR, pVideoFormatPropertyCount: ptr uint32, pVideoFormatProperties: ptr VkVideoFormatPropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceVideoFormatPropertiesKHR")) + vkCreateVideoSessionKHR = cast[proc (device: VkDevice, pCreateInfo: ptr VkVideoSessionCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pVideoSession: ptr VkVideoSessionKHR): VkResult {.stdcall.}](vkGetProc("vkCreateVideoSessionKHR")) + vkDestroyVideoSessionKHR = cast[proc (device: VkDevice, videoSession: VkVideoSessionKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyVideoSessionKHR")) + vkGetVideoSessionMemoryRequirementsKHR = cast[proc (device: VkDevice, videoSession: VkVideoSessionKHR, pMemoryRequirementsCount: ptr uint32, pMemoryRequirements: ptr VkVideoSessionMemoryRequirementsKHR): VkResult {.stdcall.}](vkGetProc("vkGetVideoSessionMemoryRequirementsKHR")) + vkBindVideoSessionMemoryKHR = cast[proc (device: VkDevice, videoSession: VkVideoSessionKHR, bindSessionMemoryInfoCount: uint32, pBindSessionMemoryInfos: ptr VkBindVideoSessionMemoryInfoKHR): VkResult {.stdcall.}](vkGetProc("vkBindVideoSessionMemoryKHR")) + vkCreateVideoSessionParametersKHR = cast[proc (device: VkDevice, pCreateInfo: ptr VkVideoSessionParametersCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pVideoSessionParameters: ptr VkVideoSessionParametersKHR): VkResult {.stdcall.}](vkGetProc("vkCreateVideoSessionParametersKHR")) + vkUpdateVideoSessionParametersKHR = cast[proc (device: VkDevice, videoSessionParameters: VkVideoSessionParametersKHR, pUpdateInfo: ptr VkVideoSessionParametersUpdateInfoKHR): VkResult {.stdcall.}](vkGetProc("vkUpdateVideoSessionParametersKHR")) + vkDestroyVideoSessionParametersKHR = cast[proc (device: VkDevice, videoSessionParameters: VkVideoSessionParametersKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyVideoSessionParametersKHR")) + vkCmdBeginVideoCodingKHR = cast[proc (commandBuffer: VkCommandBuffer, pBeginInfo: ptr VkVideoBeginCodingInfoKHR): void {.stdcall.}](vkGetProc("vkCmdBeginVideoCodingKHR")) + vkCmdEndVideoCodingKHR = cast[proc (commandBuffer: VkCommandBuffer, pEndCodingInfo: ptr VkVideoEndCodingInfoKHR): void {.stdcall.}](vkGetProc("vkCmdEndVideoCodingKHR")) + vkCmdControlVideoCodingKHR = cast[proc (commandBuffer: VkCommandBuffer, pCodingControlInfo: ptr VkVideoCodingControlInfoKHR): void {.stdcall.}](vkGetProc("vkCmdControlVideoCodingKHR")) # Load VK_KHR_video_decode_queue proc loadVK_KHR_video_decode_queue*() = - vkCmdDecodeVideoKHR = cast[proc (commandBuffer: VkCommandBuffe, pDecodeInfo: ptr VkVideoDecodeInfoKHR): void {.stdcall.}](vkGetProc("vkCmdDecodeVideoKHR")) + vkCmdDecodeVideoKHR = cast[proc (commandBuffer: VkCommandBuffer, pDecodeInfo: ptr VkVideoDecodeInfoKHR): void {.stdcall.}](vkGetProc("vkCmdDecodeVideoKHR")) # Load VK_EXT_transform_feedback proc loadVK_EXT_transform_feedback*() = - vkCmdBindTransformFeedbackBuffersEXT = cast[proc (commandBuffer: VkCommandBuffe, firstBinding: uint32_, bindingCount: uint32_, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize, pSizes: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdBindTransformFeedbackBuffersEXT")) - vkCmdBeginTransformFeedbackEXT = cast[proc (commandBuffer: VkCommandBuffe, firstCounterBuffer: uint32_, counterBufferCount: uint32_, pCounterBuffers: ptr VkBuffer, pCounterBufferOffsets: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdBeginTransformFeedbackEXT")) - vkCmdEndTransformFeedbackEXT = cast[proc (commandBuffer: VkCommandBuffe, firstCounterBuffer: uint32_, counterBufferCount: uint32_, pCounterBuffers: ptr VkBuffer, pCounterBufferOffsets: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdEndTransformFeedbackEXT")) - vkCmdBeginQueryIndexedEXT = cast[proc (commandBuffer: VkCommandBuffe, queryPool: VkQueryPoo, query: uint32_, flags: VkQueryControlFlag, index: uint32_): void {.stdcall.}](vkGetProc("vkCmdBeginQueryIndexedEXT")) - vkCmdEndQueryIndexedEXT = cast[proc (commandBuffer: VkCommandBuffe, queryPool: VkQueryPoo, query: uint32_, index: uint32_): void {.stdcall.}](vkGetProc("vkCmdEndQueryIndexedEXT")) - vkCmdDrawIndirectByteCountEXT = cast[proc (commandBuffer: VkCommandBuffe, instanceCount: uint32_, firstInstance: uint32_, counterBuffer: VkBuffe, counterBufferOffset: VkDeviceSiz, counterOffset: uint32_, vertexStride: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawIndirectByteCountEXT")) + vkCmdBindTransformFeedbackBuffersEXT = cast[proc (commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize, pSizes: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdBindTransformFeedbackBuffersEXT")) + vkCmdBeginTransformFeedbackEXT = cast[proc (commandBuffer: VkCommandBuffer, firstCounterBuffer: uint32, counterBufferCount: uint32, pCounterBuffers: ptr VkBuffer, pCounterBufferOffsets: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdBeginTransformFeedbackEXT")) + vkCmdEndTransformFeedbackEXT = cast[proc (commandBuffer: VkCommandBuffer, firstCounterBuffer: uint32, counterBufferCount: uint32, pCounterBuffers: ptr VkBuffer, pCounterBufferOffsets: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdEndTransformFeedbackEXT")) + vkCmdBeginQueryIndexedEXT = cast[proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, flags: VkQueryControlFlags, index: uint32): void {.stdcall.}](vkGetProc("vkCmdBeginQueryIndexedEXT")) + vkCmdEndQueryIndexedEXT = cast[proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, index: uint32): void {.stdcall.}](vkGetProc("vkCmdEndQueryIndexedEXT")) + vkCmdDrawIndirectByteCountEXT = cast[proc (commandBuffer: VkCommandBuffer, instanceCount: uint32, firstInstance: uint32, counterBuffer: VkBuffer, counterBufferOffset: VkDeviceSize, counterOffset: uint32, vertexStride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawIndirectByteCountEXT")) # Load VK_NVX_binary_import proc loadVK_NVX_binary_import*() = - vkCreateCuModuleNVX = cast[proc (device: VkDevic, pCreateInfo: ptr VkCuModuleCreateInfoNVX, pAllocator: ptr VkAllocationCallbacks, pModule: ptr VkCuModuleNVX): VkResult {.stdcall.}](vkGetProc("vkCreateCuModuleNVX")) - vkCreateCuFunctionNVX = cast[proc (device: VkDevic, pCreateInfo: ptr VkCuFunctionCreateInfoNVX, pAllocator: ptr VkAllocationCallbacks, pFunction: ptr VkCuFunctionNVX): VkResult {.stdcall.}](vkGetProc("vkCreateCuFunctionNVX")) - vkDestroyCuModuleNVX = cast[proc (device: VkDevic, module: VkCuModuleNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyCuModuleNVX")) - vkDestroyCuFunctionNVX = cast[proc (device: VkDevic, function: VkCuFunctionNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyCuFunctionNVX")) - vkCmdCuLaunchKernelNVX = cast[proc (commandBuffer: VkCommandBuffe, pLaunchInfo: ptr VkCuLaunchInfoNVX): void {.stdcall.}](vkGetProc("vkCmdCuLaunchKernelNVX")) + vkCreateCuModuleNVX = cast[proc (device: VkDevice, pCreateInfo: ptr VkCuModuleCreateInfoNVX, pAllocator: ptr VkAllocationCallbacks, pModule: ptr VkCuModuleNVX): VkResult {.stdcall.}](vkGetProc("vkCreateCuModuleNVX")) + vkCreateCuFunctionNVX = cast[proc (device: VkDevice, pCreateInfo: ptr VkCuFunctionCreateInfoNVX, pAllocator: ptr VkAllocationCallbacks, pFunction: ptr VkCuFunctionNVX): VkResult {.stdcall.}](vkGetProc("vkCreateCuFunctionNVX")) + vkDestroyCuModuleNVX = cast[proc (device: VkDevice, module: VkCuModuleNVX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyCuModuleNVX")) + vkDestroyCuFunctionNVX = cast[proc (device: VkDevice, function: VkCuFunctionNVX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyCuFunctionNVX")) + vkCmdCuLaunchKernelNVX = cast[proc (commandBuffer: VkCommandBuffer, pLaunchInfo: ptr VkCuLaunchInfoNVX): void {.stdcall.}](vkGetProc("vkCmdCuLaunchKernelNVX")) # Load VK_NVX_image_view_handle proc loadVK_NVX_image_view_handle*() = - vkGetImageViewHandleNVX = cast[proc (device: VkDevic, pInfo: ptr VkImageViewHandleInfoNVX): uint32 {.stdcall.}](vkGetProc("vkGetImageViewHandleNVX")) - vkGetImageViewAddressNVX = cast[proc (device: VkDevic, imageView: VkImageVie, pProperties: ptr VkImageViewAddressPropertiesNVX): VkResult {.stdcall.}](vkGetProc("vkGetImageViewAddressNVX")) + vkGetImageViewHandleNVX = cast[proc (device: VkDevice, pInfo: ptr VkImageViewHandleInfoNVX): uint32 {.stdcall.}](vkGetProc("vkGetImageViewHandleNVX")) + vkGetImageViewAddressNVX = cast[proc (device: VkDevice, imageView: VkImageView, pProperties: ptr VkImageViewAddressPropertiesNVX): VkResult {.stdcall.}](vkGetProc("vkGetImageViewAddressNVX")) # Load VK_AMD_shader_info proc loadVK_AMD_shader_info*() = - vkGetShaderInfoAMD = cast[proc (device: VkDevic, pipeline: VkPipelin, shaderStage: VkShaderStageFlagBit, infoType: VkShaderInfoTypeAM, pInfoSize: ptr uint, pInfo: pointer): VkResult {.stdcall.}](vkGetProc("vkGetShaderInfoAMD")) + vkGetShaderInfoAMD = cast[proc (device: VkDevice, pipeline: VkPipeline, shaderStage: VkShaderStageFlagBits, infoType: VkShaderInfoTypeAMD, pInfoSize: ptr uint, pInfo: pointer): VkResult {.stdcall.}](vkGetProc("vkGetShaderInfoAMD")) # Load VK_GGP_stream_descriptor_surface proc loadVK_GGP_stream_descriptor_surface*() = - vkCreateStreamDescriptorSurfaceGGP = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkStreamDescriptorSurfaceCreateInfoGGP, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateStreamDescriptorSurfaceGGP")) + vkCreateStreamDescriptorSurfaceGGP = cast[proc (instance: VkInstance, pCreateInfo: ptr VkStreamDescriptorSurfaceCreateInfoGGP, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateStreamDescriptorSurfaceGGP")) # Load VK_NV_external_memory_capabilities proc loadVK_NV_external_memory_capabilities*() = - vkGetPhysicalDeviceExternalImageFormatPropertiesNV = cast[proc (physicalDevice: VkPhysicalDevic, format: VkForma, `type`: VkImageTyp, tiling: VkImageTilin, usage: VkImageUsageFlag, flags: VkImageCreateFlag, externalHandleType: VkExternalMemoryHandleTypeFlagsN, pExternalImageFormatProperties: ptr VkExternalImageFormatPropertiesNV): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalImageFormatPropertiesNV")) + vkGetPhysicalDeviceExternalImageFormatPropertiesNV = cast[proc (physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, tiling: VkImageTiling, usage: VkImageUsageFlags, flags: VkImageCreateFlags, externalHandleType: VkExternalMemoryHandleTypeFlagsNV, pExternalImageFormatProperties: ptr VkExternalImageFormatPropertiesNV): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalImageFormatPropertiesNV")) # Load VK_NV_external_memory_win32 proc loadVK_NV_external_memory_win32*() = - vkGetMemoryWin32HandleNV = cast[proc (device: VkDevic, memory: VkDeviceMemor, handleType: VkExternalMemoryHandleTypeFlagsN, pHandle: ptr HANDLE): VkResult {.stdcall.}](vkGetProc("vkGetMemoryWin32HandleNV")) + vkGetMemoryWin32HandleNV = cast[proc (device: VkDevice, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagsNV, pHandle: ptr HANDLE): VkResult {.stdcall.}](vkGetProc("vkGetMemoryWin32HandleNV")) # Load VK_KHR_device_group proc loadVK_KHR_device_group*() = - vkGetDeviceGroupPresentCapabilitiesKHR = cast[proc (device: VkDevic, pDeviceGroupPresentCapabilities: ptr VkDeviceGroupPresentCapabilitiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetDeviceGroupPresentCapabilitiesKHR")) - vkGetDeviceGroupSurfacePresentModesKHR = cast[proc (device: VkDevic, surface: VkSurfaceKH, pModes: ptr VkDeviceGroupPresentModeFlagsKHR): VkResult {.stdcall.}](vkGetProc("vkGetDeviceGroupSurfacePresentModesKHR")) - vkGetPhysicalDevicePresentRectanglesKHR = cast[proc (physicalDevice: VkPhysicalDevic, surface: VkSurfaceKH, pRectCount: ptr uint32, pRects: ptr VkRect2D): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDevicePresentRectanglesKHR")) - vkAcquireNextImage2KHR = cast[proc (device: VkDevic, pAcquireInfo: ptr VkAcquireNextImageInfoKHR, pImageIndex: ptr uint32): VkResult {.stdcall.}](vkGetProc("vkAcquireNextImage2KHR")) + vkGetDeviceGroupPresentCapabilitiesKHR = cast[proc (device: VkDevice, pDeviceGroupPresentCapabilities: ptr VkDeviceGroupPresentCapabilitiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetDeviceGroupPresentCapabilitiesKHR")) + vkGetDeviceGroupSurfacePresentModesKHR = cast[proc (device: VkDevice, surface: VkSurfaceKHR, pModes: ptr VkDeviceGroupPresentModeFlagsKHR): VkResult {.stdcall.}](vkGetProc("vkGetDeviceGroupSurfacePresentModesKHR")) + vkGetPhysicalDevicePresentRectanglesKHR = cast[proc (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pRectCount: ptr uint32, pRects: ptr VkRect2D): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDevicePresentRectanglesKHR")) + vkAcquireNextImage2KHR = cast[proc (device: VkDevice, pAcquireInfo: ptr VkAcquireNextImageInfoKHR, pImageIndex: ptr uint32): VkResult {.stdcall.}](vkGetProc("vkAcquireNextImage2KHR")) # Load VK_NN_vi_surface proc loadVK_NN_vi_surface*() = - vkCreateViSurfaceNN = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkViSurfaceCreateInfoNN, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateViSurfaceNN")) + vkCreateViSurfaceNN = cast[proc (instance: VkInstance, pCreateInfo: ptr VkViSurfaceCreateInfoNN, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateViSurfaceNN")) # Load VK_KHR_external_memory_win32 proc loadVK_KHR_external_memory_win32*() = - vkGetMemoryWin32HandleKHR = cast[proc (device: VkDevic, pGetWin32HandleInfo: ptr VkMemoryGetWin32HandleInfoKHR, pHandle: ptr HANDLE): VkResult {.stdcall.}](vkGetProc("vkGetMemoryWin32HandleKHR")) - vkGetMemoryWin32HandlePropertiesKHR = cast[proc (device: VkDevic, handleType: VkExternalMemoryHandleTypeFlagBit, handle: HANDL, pMemoryWin32HandleProperties: ptr VkMemoryWin32HandlePropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetMemoryWin32HandlePropertiesKHR")) + vkGetMemoryWin32HandleKHR = cast[proc (device: VkDevice, pGetWin32HandleInfo: ptr VkMemoryGetWin32HandleInfoKHR, pHandle: ptr HANDLE): VkResult {.stdcall.}](vkGetProc("vkGetMemoryWin32HandleKHR")) + vkGetMemoryWin32HandlePropertiesKHR = cast[proc (device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, handle: HANDLE, pMemoryWin32HandleProperties: ptr VkMemoryWin32HandlePropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetMemoryWin32HandlePropertiesKHR")) # Load VK_KHR_external_memory_fd proc loadVK_KHR_external_memory_fd*() = - vkGetMemoryFdKHR = cast[proc (device: VkDevic, pGetFdInfo: ptr VkMemoryGetFdInfoKHR, pFd: ptr int): VkResult {.stdcall.}](vkGetProc("vkGetMemoryFdKHR")) - vkGetMemoryFdPropertiesKHR = cast[proc (device: VkDevic, handleType: VkExternalMemoryHandleTypeFlagBit, fd: in, pMemoryFdProperties: ptr VkMemoryFdPropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetMemoryFdPropertiesKHR")) + vkGetMemoryFdKHR = cast[proc (device: VkDevice, pGetFdInfo: ptr VkMemoryGetFdInfoKHR, pFd: ptr int): VkResult {.stdcall.}](vkGetProc("vkGetMemoryFdKHR")) + vkGetMemoryFdPropertiesKHR = cast[proc (device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, fd: int, pMemoryFdProperties: ptr VkMemoryFdPropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetMemoryFdPropertiesKHR")) # Load VK_KHR_external_semaphore_win32 proc loadVK_KHR_external_semaphore_win32*() = - vkImportSemaphoreWin32HandleKHR = cast[proc (device: VkDevic, pImportSemaphoreWin32HandleInfo: ptr VkImportSemaphoreWin32HandleInfoKHR): VkResult {.stdcall.}](vkGetProc("vkImportSemaphoreWin32HandleKHR")) - vkGetSemaphoreWin32HandleKHR = cast[proc (device: VkDevic, pGetWin32HandleInfo: ptr VkSemaphoreGetWin32HandleInfoKHR, pHandle: ptr HANDLE): VkResult {.stdcall.}](vkGetProc("vkGetSemaphoreWin32HandleKHR")) + vkImportSemaphoreWin32HandleKHR = cast[proc (device: VkDevice, pImportSemaphoreWin32HandleInfo: ptr VkImportSemaphoreWin32HandleInfoKHR): VkResult {.stdcall.}](vkGetProc("vkImportSemaphoreWin32HandleKHR")) + vkGetSemaphoreWin32HandleKHR = cast[proc (device: VkDevice, pGetWin32HandleInfo: ptr VkSemaphoreGetWin32HandleInfoKHR, pHandle: ptr HANDLE): VkResult {.stdcall.}](vkGetProc("vkGetSemaphoreWin32HandleKHR")) # Load VK_KHR_external_semaphore_fd proc loadVK_KHR_external_semaphore_fd*() = - vkImportSemaphoreFdKHR = cast[proc (device: VkDevic, pImportSemaphoreFdInfo: ptr VkImportSemaphoreFdInfoKHR): VkResult {.stdcall.}](vkGetProc("vkImportSemaphoreFdKHR")) - vkGetSemaphoreFdKHR = cast[proc (device: VkDevic, pGetFdInfo: ptr VkSemaphoreGetFdInfoKHR, pFd: ptr int): VkResult {.stdcall.}](vkGetProc("vkGetSemaphoreFdKHR")) + vkImportSemaphoreFdKHR = cast[proc (device: VkDevice, pImportSemaphoreFdInfo: ptr VkImportSemaphoreFdInfoKHR): VkResult {.stdcall.}](vkGetProc("vkImportSemaphoreFdKHR")) + vkGetSemaphoreFdKHR = cast[proc (device: VkDevice, pGetFdInfo: ptr VkSemaphoreGetFdInfoKHR, pFd: ptr int): VkResult {.stdcall.}](vkGetProc("vkGetSemaphoreFdKHR")) # Load VK_KHR_push_descriptor proc loadVK_KHR_push_descriptor*() = - vkCmdPushDescriptorSetKHR = cast[proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, layout: VkPipelineLayou, set: uint32_, descriptorWriteCount: uint32_, pDescriptorWrites: ptr VkWriteDescriptorSet): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetKHR")) - vkCmdPushDescriptorSetWithTemplateKHR = cast[proc (commandBuffer: VkCommandBuffe, descriptorUpdateTemplate: VkDescriptorUpdateTemplat, layout: VkPipelineLayou, set: uint32_, pData: pointer): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplateKHR")) - vkCmdPushDescriptorSetWithTemplateKHR = cast[proc (commandBuffer: VkCommandBuffe, descriptorUpdateTemplate: VkDescriptorUpdateTemplat, layout: VkPipelineLayou, set: uint32_, pData: pointer): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplateKHR")) + vkCmdPushDescriptorSetKHR = cast[proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, set: uint32, descriptorWriteCount: uint32, pDescriptorWrites: ptr VkWriteDescriptorSet): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetKHR")) + vkCmdPushDescriptorSetWithTemplateKHR = cast[proc (commandBuffer: VkCommandBuffer, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: uint32, pData: pointer): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplateKHR")) + vkCmdPushDescriptorSetWithTemplateKHR = cast[proc (commandBuffer: VkCommandBuffer, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: uint32, pData: pointer): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplateKHR")) # Load VK_EXT_conditional_rendering proc loadVK_EXT_conditional_rendering*() = - vkCmdBeginConditionalRenderingEXT = cast[proc (commandBuffer: VkCommandBuffe, pConditionalRenderingBegin: ptr VkConditionalRenderingBeginInfoEXT): void {.stdcall.}](vkGetProc("vkCmdBeginConditionalRenderingEXT")) - vkCmdEndConditionalRenderingEXT = cast[proc (commandBuffer: VkCommandBuffe): void {.stdcall.}](vkGetProc("vkCmdEndConditionalRenderingEXT")) + vkCmdBeginConditionalRenderingEXT = cast[proc (commandBuffer: VkCommandBuffer, pConditionalRenderingBegin: ptr VkConditionalRenderingBeginInfoEXT): void {.stdcall.}](vkGetProc("vkCmdBeginConditionalRenderingEXT")) + vkCmdEndConditionalRenderingEXT = cast[proc (commandBuffer: VkCommandBuffer): void {.stdcall.}](vkGetProc("vkCmdEndConditionalRenderingEXT")) # Load VK_KHR_descriptor_update_template proc loadVK_KHR_descriptor_update_template*() = - vkCmdPushDescriptorSetWithTemplateKHR = cast[proc (commandBuffer: VkCommandBuffe, descriptorUpdateTemplate: VkDescriptorUpdateTemplat, layout: VkPipelineLayou, set: uint32_, pData: pointer): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplateKHR")) + vkCmdPushDescriptorSetWithTemplateKHR = cast[proc (commandBuffer: VkCommandBuffer, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: uint32, pData: pointer): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplateKHR")) # Load VK_NV_clip_space_w_scaling proc loadVK_NV_clip_space_w_scaling*() = - vkCmdSetViewportWScalingNV = cast[proc (commandBuffer: VkCommandBuffe, firstViewport: uint32_, viewportCount: uint32_, pViewportWScalings: ptr VkViewportWScalingNV): void {.stdcall.}](vkGetProc("vkCmdSetViewportWScalingNV")) + vkCmdSetViewportWScalingNV = cast[proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportWScalings: ptr VkViewportWScalingNV): void {.stdcall.}](vkGetProc("vkCmdSetViewportWScalingNV")) # Load VK_EXT_direct_mode_display proc loadVK_EXT_direct_mode_display*() = - vkReleaseDisplayEXT = cast[proc (physicalDevice: VkPhysicalDevic, display: VkDisplayKH): VkResult {.stdcall.}](vkGetProc("vkReleaseDisplayEXT")) + vkReleaseDisplayEXT = cast[proc (physicalDevice: VkPhysicalDevice, display: VkDisplayKHR): VkResult {.stdcall.}](vkGetProc("vkReleaseDisplayEXT")) # Load VK_EXT_acquire_xlib_display proc loadVK_EXT_acquire_xlib_display*() = - vkAcquireXlibDisplayEXT = cast[proc (physicalDevice: VkPhysicalDevic, dpy: ptr Display, display: VkDisplayKH): VkResult {.stdcall.}](vkGetProc("vkAcquireXlibDisplayEXT")) - vkGetRandROutputDisplayEXT = cast[proc (physicalDevice: VkPhysicalDevic, dpy: ptr Display, rrOutput: RROutpu, pDisplay: ptr VkDisplayKHR): VkResult {.stdcall.}](vkGetProc("vkGetRandROutputDisplayEXT")) + vkAcquireXlibDisplayEXT = cast[proc (physicalDevice: VkPhysicalDevice, dpy: ptr Display, display: VkDisplayKHR): VkResult {.stdcall.}](vkGetProc("vkAcquireXlibDisplayEXT")) + vkGetRandROutputDisplayEXT = cast[proc (physicalDevice: VkPhysicalDevice, dpy: ptr Display, rrOutput: RROutput, pDisplay: ptr VkDisplayKHR): VkResult {.stdcall.}](vkGetProc("vkGetRandROutputDisplayEXT")) # Load VK_EXT_display_surface_counter proc loadVK_EXT_display_surface_counter*() = - vkGetPhysicalDeviceSurfaceCapabilities2EXT = cast[proc (physicalDevice: VkPhysicalDevic, surface: VkSurfaceKH, pSurfaceCapabilities: ptr VkSurfaceCapabilities2EXT): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceCapabilities2EXT")) + vkGetPhysicalDeviceSurfaceCapabilities2EXT = cast[proc (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceCapabilities: ptr VkSurfaceCapabilities2EXT): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceCapabilities2EXT")) # Load VK_EXT_display_control proc loadVK_EXT_display_control*() = - vkDisplayPowerControlEXT = cast[proc (device: VkDevic, display: VkDisplayKH, pDisplayPowerInfo: ptr VkDisplayPowerInfoEXT): VkResult {.stdcall.}](vkGetProc("vkDisplayPowerControlEXT")) - vkRegisterDeviceEventEXT = cast[proc (device: VkDevic, pDeviceEventInfo: ptr VkDeviceEventInfoEXT, pAllocator: ptr VkAllocationCallbacks, pFence: ptr VkFence): VkResult {.stdcall.}](vkGetProc("vkRegisterDeviceEventEXT")) - vkRegisterDisplayEventEXT = cast[proc (device: VkDevic, display: VkDisplayKH, pDisplayEventInfo: ptr VkDisplayEventInfoEXT, pAllocator: ptr VkAllocationCallbacks, pFence: ptr VkFence): VkResult {.stdcall.}](vkGetProc("vkRegisterDisplayEventEXT")) - vkGetSwapchainCounterEXT = cast[proc (device: VkDevic, swapchain: VkSwapchainKH, counter: VkSurfaceCounterFlagBitsEX, pCounterValue: ptr uint64): VkResult {.stdcall.}](vkGetProc("vkGetSwapchainCounterEXT")) + vkDisplayPowerControlEXT = cast[proc (device: VkDevice, display: VkDisplayKHR, pDisplayPowerInfo: ptr VkDisplayPowerInfoEXT): VkResult {.stdcall.}](vkGetProc("vkDisplayPowerControlEXT")) + vkRegisterDeviceEventEXT = cast[proc (device: VkDevice, pDeviceEventInfo: ptr VkDeviceEventInfoEXT, pAllocator: ptr VkAllocationCallbacks, pFence: ptr VkFence): VkResult {.stdcall.}](vkGetProc("vkRegisterDeviceEventEXT")) + vkRegisterDisplayEventEXT = cast[proc (device: VkDevice, display: VkDisplayKHR, pDisplayEventInfo: ptr VkDisplayEventInfoEXT, pAllocator: ptr VkAllocationCallbacks, pFence: ptr VkFence): VkResult {.stdcall.}](vkGetProc("vkRegisterDisplayEventEXT")) + vkGetSwapchainCounterEXT = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR, counter: VkSurfaceCounterFlagBitsEXT, pCounterValue: ptr uint64): VkResult {.stdcall.}](vkGetProc("vkGetSwapchainCounterEXT")) # Load VK_GOOGLE_display_timing proc loadVK_GOOGLE_display_timing*() = - vkGetRefreshCycleDurationGOOGLE = cast[proc (device: VkDevic, swapchain: VkSwapchainKH, pDisplayTimingProperties: ptr VkRefreshCycleDurationGOOGLE): VkResult {.stdcall.}](vkGetProc("vkGetRefreshCycleDurationGOOGLE")) - vkGetPastPresentationTimingGOOGLE = cast[proc (device: VkDevic, swapchain: VkSwapchainKH, pPresentationTimingCount: ptr uint32, pPresentationTimings: ptr VkPastPresentationTimingGOOGLE): VkResult {.stdcall.}](vkGetProc("vkGetPastPresentationTimingGOOGLE")) + vkGetRefreshCycleDurationGOOGLE = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR, pDisplayTimingProperties: ptr VkRefreshCycleDurationGOOGLE): VkResult {.stdcall.}](vkGetProc("vkGetRefreshCycleDurationGOOGLE")) + vkGetPastPresentationTimingGOOGLE = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR, pPresentationTimingCount: ptr uint32, pPresentationTimings: ptr VkPastPresentationTimingGOOGLE): VkResult {.stdcall.}](vkGetProc("vkGetPastPresentationTimingGOOGLE")) # Load VK_EXT_discard_rectangles proc loadVK_EXT_discard_rectangles*() = - vkCmdSetDiscardRectangleEXT = cast[proc (commandBuffer: VkCommandBuffe, firstDiscardRectangle: uint32_, discardRectangleCount: uint32_, pDiscardRectangles: ptr VkRect2D): void {.stdcall.}](vkGetProc("vkCmdSetDiscardRectangleEXT")) - vkCmdSetDiscardRectangleEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, discardRectangleEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetDiscardRectangleEnableEXT")) - vkCmdSetDiscardRectangleModeEXT = cast[proc (commandBuffer: VkCommandBuffe, discardRectangleMode: VkDiscardRectangleModeEX): void {.stdcall.}](vkGetProc("vkCmdSetDiscardRectangleModeEXT")) + vkCmdSetDiscardRectangleEXT = cast[proc (commandBuffer: VkCommandBuffer, firstDiscardRectangle: uint32, discardRectangleCount: uint32, pDiscardRectangles: ptr VkRect2D): void {.stdcall.}](vkGetProc("vkCmdSetDiscardRectangleEXT")) + vkCmdSetDiscardRectangleEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, discardRectangleEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDiscardRectangleEnableEXT")) + vkCmdSetDiscardRectangleModeEXT = cast[proc (commandBuffer: VkCommandBuffer, discardRectangleMode: VkDiscardRectangleModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetDiscardRectangleModeEXT")) # Load VK_EXT_hdr_metadata proc loadVK_EXT_hdr_metadata*() = - vkSetHdrMetadataEXT = cast[proc (device: VkDevic, swapchainCount: uint32_, pSwapchains: ptr VkSwapchainKHR, pMetadata: ptr VkHdrMetadataEXT): void {.stdcall.}](vkGetProc("vkSetHdrMetadataEXT")) + vkSetHdrMetadataEXT = cast[proc (device: VkDevice, swapchainCount: uint32, pSwapchains: ptr VkSwapchainKHR, pMetadata: ptr VkHdrMetadataEXT): void {.stdcall.}](vkGetProc("vkSetHdrMetadataEXT")) # Load VK_KHR_shared_presentable_image proc loadVK_KHR_shared_presentable_image*() = - vkGetSwapchainStatusKHR = cast[proc (device: VkDevic, swapchain: VkSwapchainKH): VkResult {.stdcall.}](vkGetProc("vkGetSwapchainStatusKHR")) + vkGetSwapchainStatusKHR = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR): VkResult {.stdcall.}](vkGetProc("vkGetSwapchainStatusKHR")) # Load VK_KHR_external_fence_win32 proc loadVK_KHR_external_fence_win32*() = - vkImportFenceWin32HandleKHR = cast[proc (device: VkDevic, pImportFenceWin32HandleInfo: ptr VkImportFenceWin32HandleInfoKHR): VkResult {.stdcall.}](vkGetProc("vkImportFenceWin32HandleKHR")) - vkGetFenceWin32HandleKHR = cast[proc (device: VkDevic, pGetWin32HandleInfo: ptr VkFenceGetWin32HandleInfoKHR, pHandle: ptr HANDLE): VkResult {.stdcall.}](vkGetProc("vkGetFenceWin32HandleKHR")) + vkImportFenceWin32HandleKHR = cast[proc (device: VkDevice, pImportFenceWin32HandleInfo: ptr VkImportFenceWin32HandleInfoKHR): VkResult {.stdcall.}](vkGetProc("vkImportFenceWin32HandleKHR")) + vkGetFenceWin32HandleKHR = cast[proc (device: VkDevice, pGetWin32HandleInfo: ptr VkFenceGetWin32HandleInfoKHR, pHandle: ptr HANDLE): VkResult {.stdcall.}](vkGetProc("vkGetFenceWin32HandleKHR")) # Load VK_KHR_external_fence_fd proc loadVK_KHR_external_fence_fd*() = - vkImportFenceFdKHR = cast[proc (device: VkDevic, pImportFenceFdInfo: ptr VkImportFenceFdInfoKHR): VkResult {.stdcall.}](vkGetProc("vkImportFenceFdKHR")) - vkGetFenceFdKHR = cast[proc (device: VkDevic, pGetFdInfo: ptr VkFenceGetFdInfoKHR, pFd: ptr int): VkResult {.stdcall.}](vkGetProc("vkGetFenceFdKHR")) + vkImportFenceFdKHR = cast[proc (device: VkDevice, pImportFenceFdInfo: ptr VkImportFenceFdInfoKHR): VkResult {.stdcall.}](vkGetProc("vkImportFenceFdKHR")) + vkGetFenceFdKHR = cast[proc (device: VkDevice, pGetFdInfo: ptr VkFenceGetFdInfoKHR, pFd: ptr int): VkResult {.stdcall.}](vkGetProc("vkGetFenceFdKHR")) # Load VK_KHR_performance_query proc loadVK_KHR_performance_query*() = - vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = cast[proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, pCounterCount: ptr uint32, pCounters: ptr VkPerformanceCounterKHR, pCounterDescriptions: ptr VkPerformanceCounterDescriptionKHR): VkResult {.stdcall.}](vkGetProc("vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR")) - vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = cast[proc (physicalDevice: VkPhysicalDevic, pPerformanceQueryCreateInfo: ptr VkQueryPoolPerformanceCreateInfoKHR, pNumPasses: ptr uint32): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR")) - vkAcquireProfilingLockKHR = cast[proc (device: VkDevic, pInfo: ptr VkAcquireProfilingLockInfoKHR): VkResult {.stdcall.}](vkGetProc("vkAcquireProfilingLockKHR")) - vkReleaseProfilingLockKHR = cast[proc (device: VkDevic): void {.stdcall.}](vkGetProc("vkReleaseProfilingLockKHR")) + vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = cast[proc (physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, pCounterCount: ptr uint32, pCounters: ptr VkPerformanceCounterKHR, pCounterDescriptions: ptr VkPerformanceCounterDescriptionKHR): VkResult {.stdcall.}](vkGetProc("vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR")) + vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = cast[proc (physicalDevice: VkPhysicalDevice, pPerformanceQueryCreateInfo: ptr VkQueryPoolPerformanceCreateInfoKHR, pNumPasses: ptr uint32): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR")) + vkAcquireProfilingLockKHR = cast[proc (device: VkDevice, pInfo: ptr VkAcquireProfilingLockInfoKHR): VkResult {.stdcall.}](vkGetProc("vkAcquireProfilingLockKHR")) + vkReleaseProfilingLockKHR = cast[proc (device: VkDevice): void {.stdcall.}](vkGetProc("vkReleaseProfilingLockKHR")) # Load VK_KHR_get_surface_capabilities2 proc loadVK_KHR_get_surface_capabilities2*() = - vkGetPhysicalDeviceSurfaceCapabilities2KHR = cast[proc (physicalDevice: VkPhysicalDevic, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pSurfaceCapabilities: ptr VkSurfaceCapabilities2KHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceCapabilities2KHR")) - vkGetPhysicalDeviceSurfaceFormats2KHR = cast[proc (physicalDevice: VkPhysicalDevic, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pSurfaceFormatCount: ptr uint32, pSurfaceFormats: ptr VkSurfaceFormat2KHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceFormats2KHR")) + vkGetPhysicalDeviceSurfaceCapabilities2KHR = cast[proc (physicalDevice: VkPhysicalDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pSurfaceCapabilities: ptr VkSurfaceCapabilities2KHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceCapabilities2KHR")) + vkGetPhysicalDeviceSurfaceFormats2KHR = cast[proc (physicalDevice: VkPhysicalDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pSurfaceFormatCount: ptr uint32, pSurfaceFormats: ptr VkSurfaceFormat2KHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceFormats2KHR")) # Load VK_KHR_get_display_properties2 proc loadVK_KHR_get_display_properties2*() = - vkGetPhysicalDeviceDisplayProperties2KHR = cast[proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayProperties2KHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceDisplayProperties2KHR")) - vkGetPhysicalDeviceDisplayPlaneProperties2KHR = cast[proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayPlaneProperties2KHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceDisplayPlaneProperties2KHR")) - vkGetDisplayModeProperties2KHR = cast[proc (physicalDevice: VkPhysicalDevic, display: VkDisplayKH, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayModeProperties2KHR): VkResult {.stdcall.}](vkGetProc("vkGetDisplayModeProperties2KHR")) - vkGetDisplayPlaneCapabilities2KHR = cast[proc (physicalDevice: VkPhysicalDevic, pDisplayPlaneInfo: ptr VkDisplayPlaneInfo2KHR, pCapabilities: ptr VkDisplayPlaneCapabilities2KHR): VkResult {.stdcall.}](vkGetProc("vkGetDisplayPlaneCapabilities2KHR")) + vkGetPhysicalDeviceDisplayProperties2KHR = cast[proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayProperties2KHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceDisplayProperties2KHR")) + vkGetPhysicalDeviceDisplayPlaneProperties2KHR = cast[proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayPlaneProperties2KHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceDisplayPlaneProperties2KHR")) + vkGetDisplayModeProperties2KHR = cast[proc (physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayModeProperties2KHR): VkResult {.stdcall.}](vkGetProc("vkGetDisplayModeProperties2KHR")) + vkGetDisplayPlaneCapabilities2KHR = cast[proc (physicalDevice: VkPhysicalDevice, pDisplayPlaneInfo: ptr VkDisplayPlaneInfo2KHR, pCapabilities: ptr VkDisplayPlaneCapabilities2KHR): VkResult {.stdcall.}](vkGetProc("vkGetDisplayPlaneCapabilities2KHR")) # Load VK_MVK_ios_surface proc loadVK_MVK_ios_surface*() = - vkCreateIOSSurfaceMVK = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkIOSSurfaceCreateInfoMVK, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateIOSSurfaceMVK")) + vkCreateIOSSurfaceMVK = cast[proc (instance: VkInstance, pCreateInfo: ptr VkIOSSurfaceCreateInfoMVK, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateIOSSurfaceMVK")) # Load VK_MVK_macos_surface proc loadVK_MVK_macos_surface*() = - vkCreateMacOSSurfaceMVK = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkMacOSSurfaceCreateInfoMVK, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateMacOSSurfaceMVK")) + vkCreateMacOSSurfaceMVK = cast[proc (instance: VkInstance, pCreateInfo: ptr VkMacOSSurfaceCreateInfoMVK, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateMacOSSurfaceMVK")) # Load VK_EXT_debug_utils proc loadVK_EXT_debug_utils*() = - vkSetDebugUtilsObjectNameEXT = cast[proc (device: VkDevic, pNameInfo: ptr VkDebugUtilsObjectNameInfoEXT): VkResult {.stdcall.}](vkGetProc("vkSetDebugUtilsObjectNameEXT")) - vkSetDebugUtilsObjectTagEXT = cast[proc (device: VkDevic, pTagInfo: ptr VkDebugUtilsObjectTagInfoEXT): VkResult {.stdcall.}](vkGetProc("vkSetDebugUtilsObjectTagEXT")) - vkQueueBeginDebugUtilsLabelEXT = cast[proc (queue: VkQueu, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.}](vkGetProc("vkQueueBeginDebugUtilsLabelEXT")) - vkQueueEndDebugUtilsLabelEXT = cast[proc (queue: VkQueu): void {.stdcall.}](vkGetProc("vkQueueEndDebugUtilsLabelEXT")) - vkQueueInsertDebugUtilsLabelEXT = cast[proc (queue: VkQueu, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.}](vkGetProc("vkQueueInsertDebugUtilsLabelEXT")) - vkCmdBeginDebugUtilsLabelEXT = cast[proc (commandBuffer: VkCommandBuffe, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.}](vkGetProc("vkCmdBeginDebugUtilsLabelEXT")) - vkCmdEndDebugUtilsLabelEXT = cast[proc (commandBuffer: VkCommandBuffe): void {.stdcall.}](vkGetProc("vkCmdEndDebugUtilsLabelEXT")) - vkCmdInsertDebugUtilsLabelEXT = cast[proc (commandBuffer: VkCommandBuffe, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.}](vkGetProc("vkCmdInsertDebugUtilsLabelEXT")) - vkCreateDebugUtilsMessengerEXT = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkDebugUtilsMessengerCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pMessenger: ptr VkDebugUtilsMessengerEXT): VkResult {.stdcall.}](vkGetProc("vkCreateDebugUtilsMessengerEXT")) - vkDestroyDebugUtilsMessengerEXT = cast[proc (instance: VkInstanc, messenger: VkDebugUtilsMessengerEX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDebugUtilsMessengerEXT")) - vkSubmitDebugUtilsMessageEXT = cast[proc (instance: VkInstanc, messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEX, messageTypes: VkDebugUtilsMessageTypeFlagsEX, pCallbackData: ptr VkDebugUtilsMessengerCallbackDataEXT): void {.stdcall.}](vkGetProc("vkSubmitDebugUtilsMessageEXT")) + vkSetDebugUtilsObjectNameEXT = cast[proc (device: VkDevice, pNameInfo: ptr VkDebugUtilsObjectNameInfoEXT): VkResult {.stdcall.}](vkGetProc("vkSetDebugUtilsObjectNameEXT")) + vkSetDebugUtilsObjectTagEXT = cast[proc (device: VkDevice, pTagInfo: ptr VkDebugUtilsObjectTagInfoEXT): VkResult {.stdcall.}](vkGetProc("vkSetDebugUtilsObjectTagEXT")) + vkQueueBeginDebugUtilsLabelEXT = cast[proc (queue: VkQueue, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.}](vkGetProc("vkQueueBeginDebugUtilsLabelEXT")) + vkQueueEndDebugUtilsLabelEXT = cast[proc (queue: VkQueue): void {.stdcall.}](vkGetProc("vkQueueEndDebugUtilsLabelEXT")) + vkQueueInsertDebugUtilsLabelEXT = cast[proc (queue: VkQueue, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.}](vkGetProc("vkQueueInsertDebugUtilsLabelEXT")) + vkCmdBeginDebugUtilsLabelEXT = cast[proc (commandBuffer: VkCommandBuffer, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.}](vkGetProc("vkCmdBeginDebugUtilsLabelEXT")) + vkCmdEndDebugUtilsLabelEXT = cast[proc (commandBuffer: VkCommandBuffer): void {.stdcall.}](vkGetProc("vkCmdEndDebugUtilsLabelEXT")) + vkCmdInsertDebugUtilsLabelEXT = cast[proc (commandBuffer: VkCommandBuffer, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.}](vkGetProc("vkCmdInsertDebugUtilsLabelEXT")) + vkCreateDebugUtilsMessengerEXT = cast[proc (instance: VkInstance, pCreateInfo: ptr VkDebugUtilsMessengerCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pMessenger: ptr VkDebugUtilsMessengerEXT): VkResult {.stdcall.}](vkGetProc("vkCreateDebugUtilsMessengerEXT")) + vkDestroyDebugUtilsMessengerEXT = cast[proc (instance: VkInstance, messenger: VkDebugUtilsMessengerEXT, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDebugUtilsMessengerEXT")) + vkSubmitDebugUtilsMessageEXT = cast[proc (instance: VkInstance, messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEXT, messageTypes: VkDebugUtilsMessageTypeFlagsEXT, pCallbackData: ptr VkDebugUtilsMessengerCallbackDataEXT): void {.stdcall.}](vkGetProc("vkSubmitDebugUtilsMessageEXT")) # Load VK_ANDROID_external_memory_android_hardware_buffer proc loadVK_ANDROID_external_memory_android_hardware_buffer*() = - vkGetAndroidHardwareBufferPropertiesANDROID = cast[proc (device: VkDevic, buffer: ptr AHardwareBuffer, pProperties: ptr VkAndroidHardwareBufferPropertiesANDROID): VkResult {.stdcall.}](vkGetProc("vkGetAndroidHardwareBufferPropertiesANDROID")) - vkGetMemoryAndroidHardwareBufferANDROID = cast[proc (device: VkDevic, pInfo: ptr VkMemoryGetAndroidHardwareBufferInfoANDROID, pBuffer: ptr ptr AHardwareBuffer): VkResult {.stdcall.}](vkGetProc("vkGetMemoryAndroidHardwareBufferANDROID")) + vkGetAndroidHardwareBufferPropertiesANDROID = cast[proc (device: VkDevice, buffer: ptr AHardwareBuffer, pProperties: ptr VkAndroidHardwareBufferPropertiesANDROID): VkResult {.stdcall.}](vkGetProc("vkGetAndroidHardwareBufferPropertiesANDROID")) + vkGetMemoryAndroidHardwareBufferANDROID = cast[proc (device: VkDevice, pInfo: ptr VkMemoryGetAndroidHardwareBufferInfoANDROID, pBuffer: ptr ptr AHardwareBuffer): VkResult {.stdcall.}](vkGetProc("vkGetMemoryAndroidHardwareBufferANDROID")) # Load VK_AMDX_shader_enqueue proc loadVK_AMDX_shader_enqueue*() = - vkCreateExecutionGraphPipelinesAMDX = cast[proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkExecutionGraphPipelineCreateInfoAMDX, pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.stdcall.}](vkGetProc("vkCreateExecutionGraphPipelinesAMDX")) - vkGetExecutionGraphPipelineScratchSizeAMDX = cast[proc (device: VkDevic, executionGraph: VkPipelin, pSizeInfo: ptr VkExecutionGraphPipelineScratchSizeAMDX ): VkResult {.stdcall.}](vkGetProc("vkGetExecutionGraphPipelineScratchSizeAMDX")) - vkGetExecutionGraphPipelineNodeIndexAMDX = cast[proc (device: VkDevic, executionGraph: VkPipelin, pNodeInfo: ptr VkPipelineShaderStageNodeCreateInfoAMDX , pNodeIndex: ptr uint32 ): VkResult {.stdcall.}](vkGetProc("vkGetExecutionGraphPipelineNodeIndexAMDX")) - vkCmdInitializeGraphScratchMemoryAMDX = cast[proc (commandBuffer: VkCommandBuffe, scratch: VkDeviceAddres): void {.stdcall.}](vkGetProc("vkCmdInitializeGraphScratchMemoryAMDX")) - vkCmdDispatchGraphAMDX = cast[proc (commandBuffer: VkCommandBuffe, scratch: VkDeviceAddres, pCountInfo: ptr VkDispatchGraphCountInfoAMDX ): void {.stdcall.}](vkGetProc("vkCmdDispatchGraphAMDX")) - vkCmdDispatchGraphIndirectAMDX = cast[proc (commandBuffer: VkCommandBuffe, scratch: VkDeviceAddres, pCountInfo: ptr VkDispatchGraphCountInfoAMDX ): void {.stdcall.}](vkGetProc("vkCmdDispatchGraphIndirectAMDX")) - vkCmdDispatchGraphIndirectCountAMDX = cast[proc (commandBuffer: VkCommandBuffe, scratch: VkDeviceAddres, countInfo: VkDeviceAddres): void {.stdcall.}](vkGetProc("vkCmdDispatchGraphIndirectCountAMDX")) + vkCreateExecutionGraphPipelinesAMDX = cast[proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkExecutionGraphPipelineCreateInfoAMDX, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateExecutionGraphPipelinesAMDX")) + vkGetExecutionGraphPipelineScratchSizeAMDX = cast[proc (device: VkDevice, executionGraph: VkPipeline, pSizeInfo: ptr VkExecutionGraphPipelineScratchSizeAMDX): VkResult {.stdcall.}](vkGetProc("vkGetExecutionGraphPipelineScratchSizeAMDX")) + vkGetExecutionGraphPipelineNodeIndexAMDX = cast[proc (device: VkDevice, executionGraph: VkPipeline, pNodeInfo: ptr VkPipelineShaderStageNodeCreateInfoAMDX, pNodeIndex: ptr uint32): VkResult {.stdcall.}](vkGetProc("vkGetExecutionGraphPipelineNodeIndexAMDX")) + vkCmdInitializeGraphScratchMemoryAMDX = cast[proc (commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress): void {.stdcall.}](vkGetProc("vkCmdInitializeGraphScratchMemoryAMDX")) + vkCmdDispatchGraphAMDX = cast[proc (commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, pCountInfo: ptr VkDispatchGraphCountInfoAMDX): void {.stdcall.}](vkGetProc("vkCmdDispatchGraphAMDX")) + vkCmdDispatchGraphIndirectAMDX = cast[proc (commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, pCountInfo: ptr VkDispatchGraphCountInfoAMDX): void {.stdcall.}](vkGetProc("vkCmdDispatchGraphIndirectAMDX")) + vkCmdDispatchGraphIndirectCountAMDX = cast[proc (commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, countInfo: VkDeviceAddress): void {.stdcall.}](vkGetProc("vkCmdDispatchGraphIndirectCountAMDX")) # Load VK_EXT_sample_locations proc loadVK_EXT_sample_locations*() = - vkCmdSetSampleLocationsEXT = cast[proc (commandBuffer: VkCommandBuffe, pSampleLocationsInfo: ptr VkSampleLocationsInfoEXT): void {.stdcall.}](vkGetProc("vkCmdSetSampleLocationsEXT")) - vkGetPhysicalDeviceMultisamplePropertiesEXT = cast[proc (physicalDevice: VkPhysicalDevic, samples: VkSampleCountFlagBit, pMultisampleProperties: ptr VkMultisamplePropertiesEXT): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceMultisamplePropertiesEXT")) + vkCmdSetSampleLocationsEXT = cast[proc (commandBuffer: VkCommandBuffer, pSampleLocationsInfo: ptr VkSampleLocationsInfoEXT): void {.stdcall.}](vkGetProc("vkCmdSetSampleLocationsEXT")) + vkGetPhysicalDeviceMultisamplePropertiesEXT = cast[proc (physicalDevice: VkPhysicalDevice, samples: VkSampleCountFlagBits, pMultisampleProperties: ptr VkMultisamplePropertiesEXT): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceMultisamplePropertiesEXT")) # Load VK_KHR_acceleration_structure proc loadVK_KHR_acceleration_structure*() = - vkCreateAccelerationStructureKHR = cast[proc (device: VkDevic, pCreateInfo: ptr VkAccelerationStructureCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pAccelerationStructure: ptr VkAccelerationStructureKHR ): VkResult {.stdcall.}](vkGetProc("vkCreateAccelerationStructureKHR")) - vkDestroyAccelerationStructureKHR = cast[proc (device: VkDevic, accelerationStructure: VkAccelerationStructureKH, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyAccelerationStructureKHR")) - vkCmdBuildAccelerationStructuresKHR = cast[proc (commandBuffer: VkCommandBuffe, infoCount: uint32_, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR): void {.stdcall.}](vkGetProc("vkCmdBuildAccelerationStructuresKHR")) - vkCmdBuildAccelerationStructuresIndirectKHR = cast[proc (commandBuffer: VkCommandBuffe, infoCount: uint32_, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, pIndirectDeviceAddresses: ptr VkDeviceAddress , pIndirectStrides: ptr uint32 , ppMaxPrimitiveCounts: ptr ptr uint32 ): void {.stdcall.}](vkGetProc("vkCmdBuildAccelerationStructuresIndirectKHR")) - vkBuildAccelerationStructuresKHR = cast[proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, infoCount: uint32_, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR): VkResult {.stdcall.}](vkGetProc("vkBuildAccelerationStructuresKHR")) - vkCopyAccelerationStructureKHR = cast[proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pInfo: ptr VkCopyAccelerationStructureInfoKHR): VkResult {.stdcall.}](vkGetProc("vkCopyAccelerationStructureKHR")) - vkCopyAccelerationStructureToMemoryKHR = cast[proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR): VkResult {.stdcall.}](vkGetProc("vkCopyAccelerationStructureToMemoryKHR")) - vkCopyMemoryToAccelerationStructureKHR = cast[proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR): VkResult {.stdcall.}](vkGetProc("vkCopyMemoryToAccelerationStructureKHR")) - vkWriteAccelerationStructuresPropertiesKHR = cast[proc (device: VkDevic, accelerationStructureCount: uint32_, pAccelerationStructures: ptr VkAccelerationStructureKHR, queryType: VkQueryTyp, dataSize: size_, pData: pointer, stride: size_): VkResult {.stdcall.}](vkGetProc("vkWriteAccelerationStructuresPropertiesKHR")) - vkCmdCopyAccelerationStructureKHR = cast[proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkCopyAccelerationStructureInfoKHR): void {.stdcall.}](vkGetProc("vkCmdCopyAccelerationStructureKHR")) - vkCmdCopyAccelerationStructureToMemoryKHR = cast[proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR): void {.stdcall.}](vkGetProc("vkCmdCopyAccelerationStructureToMemoryKHR")) - vkCmdCopyMemoryToAccelerationStructureKHR = cast[proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR): void {.stdcall.}](vkGetProc("vkCmdCopyMemoryToAccelerationStructureKHR")) - vkGetAccelerationStructureDeviceAddressKHR = cast[proc (device: VkDevic, pInfo: ptr VkAccelerationStructureDeviceAddressInfoKHR): VkDeviceAddress {.stdcall.}](vkGetProc("vkGetAccelerationStructureDeviceAddressKHR")) - vkCmdWriteAccelerationStructuresPropertiesKHR = cast[proc (commandBuffer: VkCommandBuffe, accelerationStructureCount: uint32_, pAccelerationStructures: ptr VkAccelerationStructureKHR, queryType: VkQueryTyp, queryPool: VkQueryPoo, firstQuery: uint32_): void {.stdcall.}](vkGetProc("vkCmdWriteAccelerationStructuresPropertiesKHR")) - vkGetDeviceAccelerationStructureCompatibilityKHR = cast[proc (device: VkDevic, pVersionInfo: ptr VkAccelerationStructureVersionInfoKHR, pCompatibility: ptr VkAccelerationStructureCompatibilityKHR): void {.stdcall.}](vkGetProc("vkGetDeviceAccelerationStructureCompatibilityKHR")) - vkGetAccelerationStructureBuildSizesKHR = cast[proc (device: VkDevic, buildType: VkAccelerationStructureBuildTypeKH, pBuildInfo: ptr VkAccelerationStructureBuildGeometryInfoKHR , pMaxPrimitiveCounts: ptr uint32 , pSizeInfo: ptr VkAccelerationStructureBuildSizesInfoKHR ): void {.stdcall.}](vkGetProc("vkGetAccelerationStructureBuildSizesKHR")) + vkCreateAccelerationStructureKHR = cast[proc (device: VkDevice, pCreateInfo: ptr VkAccelerationStructureCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pAccelerationStructure: ptr VkAccelerationStructureKHR): VkResult {.stdcall.}](vkGetProc("vkCreateAccelerationStructureKHR")) + vkDestroyAccelerationStructureKHR = cast[proc (device: VkDevice, accelerationStructure: VkAccelerationStructureKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyAccelerationStructureKHR")) + vkCmdBuildAccelerationStructuresKHR = cast[proc (commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR): void {.stdcall.}](vkGetProc("vkCmdBuildAccelerationStructuresKHR")) + vkCmdBuildAccelerationStructuresIndirectKHR = cast[proc (commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, pIndirectDeviceAddresses: ptr VkDeviceAddress, pIndirectStrides: ptr uint32, ppMaxPrimitiveCounts: ptr ptr uint32): void {.stdcall.}](vkGetProc("vkCmdBuildAccelerationStructuresIndirectKHR")) + vkBuildAccelerationStructuresKHR = cast[proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR): VkResult {.stdcall.}](vkGetProc("vkBuildAccelerationStructuresKHR")) + vkCopyAccelerationStructureKHR = cast[proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyAccelerationStructureInfoKHR): VkResult {.stdcall.}](vkGetProc("vkCopyAccelerationStructureKHR")) + vkCopyAccelerationStructureToMemoryKHR = cast[proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR): VkResult {.stdcall.}](vkGetProc("vkCopyAccelerationStructureToMemoryKHR")) + vkCopyMemoryToAccelerationStructureKHR = cast[proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR): VkResult {.stdcall.}](vkGetProc("vkCopyMemoryToAccelerationStructureKHR")) + vkWriteAccelerationStructuresPropertiesKHR = cast[proc (device: VkDevice, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR, queryType: VkQueryType, dataSize: uint, pData: pointer, stride: uint): VkResult {.stdcall.}](vkGetProc("vkWriteAccelerationStructuresPropertiesKHR")) + vkCmdCopyAccelerationStructureKHR = cast[proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyAccelerationStructureInfoKHR): void {.stdcall.}](vkGetProc("vkCmdCopyAccelerationStructureKHR")) + vkCmdCopyAccelerationStructureToMemoryKHR = cast[proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR): void {.stdcall.}](vkGetProc("vkCmdCopyAccelerationStructureToMemoryKHR")) + vkCmdCopyMemoryToAccelerationStructureKHR = cast[proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR): void {.stdcall.}](vkGetProc("vkCmdCopyMemoryToAccelerationStructureKHR")) + vkGetAccelerationStructureDeviceAddressKHR = cast[proc (device: VkDevice, pInfo: ptr VkAccelerationStructureDeviceAddressInfoKHR): VkDeviceAddress {.stdcall.}](vkGetProc("vkGetAccelerationStructureDeviceAddressKHR")) + vkCmdWriteAccelerationStructuresPropertiesKHR = cast[proc (commandBuffer: VkCommandBuffer, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR, queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteAccelerationStructuresPropertiesKHR")) + vkGetDeviceAccelerationStructureCompatibilityKHR = cast[proc (device: VkDevice, pVersionInfo: ptr VkAccelerationStructureVersionInfoKHR, pCompatibility: ptr VkAccelerationStructureCompatibilityKHR): void {.stdcall.}](vkGetProc("vkGetDeviceAccelerationStructureCompatibilityKHR")) + vkGetAccelerationStructureBuildSizesKHR = cast[proc (device: VkDevice, buildType: VkAccelerationStructureBuildTypeKHR, pBuildInfo: ptr VkAccelerationStructureBuildGeometryInfoKHR, pMaxPrimitiveCounts: ptr uint32, pSizeInfo: ptr VkAccelerationStructureBuildSizesInfoKHR): void {.stdcall.}](vkGetProc("vkGetAccelerationStructureBuildSizesKHR")) # Load VK_KHR_ray_tracing_pipeline proc loadVK_KHR_ray_tracing_pipeline*() = - vkCmdTraceRaysKHR = cast[proc (commandBuffer: VkCommandBuffe, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, width: uint32_, height: uint32_, depth: uint32_): void {.stdcall.}](vkGetProc("vkCmdTraceRaysKHR")) - vkCreateRayTracingPipelinesKHR = cast[proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesKHR")) - vkCreateRayTracingPipelinesKHR = cast[proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesKHR")) - vkGetRayTracingShaderGroupHandlesKHR = cast[proc (device: VkDevic, pipeline: VkPipelin, firstGroup: uint32_, groupCount: uint32_, dataSize: size_, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetRayTracingShaderGroupHandlesKHR")) - vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = cast[proc (device: VkDevic, pipeline: VkPipelin, firstGroup: uint32_, groupCount: uint32_, dataSize: size_, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetRayTracingCaptureReplayShaderGroupHandlesKHR")) - vkCmdTraceRaysIndirectKHR = cast[proc (commandBuffer: VkCommandBuffe, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, indirectDeviceAddress: VkDeviceAddres): void {.stdcall.}](vkGetProc("vkCmdTraceRaysIndirectKHR")) - vkGetRayTracingShaderGroupStackSizeKHR = cast[proc (device: VkDevic, pipeline: VkPipelin, group: uint32_, groupShader: VkShaderGroupShaderKH): VkDeviceSize {.stdcall.}](vkGetProc("vkGetRayTracingShaderGroupStackSizeKHR")) - vkCmdSetRayTracingPipelineStackSizeKHR = cast[proc (commandBuffer: VkCommandBuffe, pipelineStackSize: uint32_): void {.stdcall.}](vkGetProc("vkCmdSetRayTracingPipelineStackSizeKHR")) + vkCmdTraceRaysKHR = cast[proc (commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, width: uint32, height: uint32, depth: uint32): void {.stdcall.}](vkGetProc("vkCmdTraceRaysKHR")) + vkCreateRayTracingPipelinesKHR = cast[proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesKHR")) + vkCreateRayTracingPipelinesKHR = cast[proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesKHR")) + vkGetRayTracingShaderGroupHandlesKHR = cast[proc (device: VkDevice, pipeline: VkPipeline, firstGroup: uint32, groupCount: uint32, dataSize: uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetRayTracingShaderGroupHandlesKHR")) + vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = cast[proc (device: VkDevice, pipeline: VkPipeline, firstGroup: uint32, groupCount: uint32, dataSize: uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetRayTracingCaptureReplayShaderGroupHandlesKHR")) + vkCmdTraceRaysIndirectKHR = cast[proc (commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, indirectDeviceAddress: VkDeviceAddress): void {.stdcall.}](vkGetProc("vkCmdTraceRaysIndirectKHR")) + vkGetRayTracingShaderGroupStackSizeKHR = cast[proc (device: VkDevice, pipeline: VkPipeline, group: uint32, groupShader: VkShaderGroupShaderKHR): VkDeviceSize {.stdcall.}](vkGetProc("vkGetRayTracingShaderGroupStackSizeKHR")) + vkCmdSetRayTracingPipelineStackSizeKHR = cast[proc (commandBuffer: VkCommandBuffer, pipelineStackSize: uint32): void {.stdcall.}](vkGetProc("vkCmdSetRayTracingPipelineStackSizeKHR")) # Load VK_EXT_image_drm_format_modifier proc loadVK_EXT_image_drm_format_modifier*() = - vkGetImageDrmFormatModifierPropertiesEXT = cast[proc (device: VkDevic, image: VkImag, pProperties: ptr VkImageDrmFormatModifierPropertiesEXT): VkResult {.stdcall.}](vkGetProc("vkGetImageDrmFormatModifierPropertiesEXT")) + vkGetImageDrmFormatModifierPropertiesEXT = cast[proc (device: VkDevice, image: VkImage, pProperties: ptr VkImageDrmFormatModifierPropertiesEXT): VkResult {.stdcall.}](vkGetProc("vkGetImageDrmFormatModifierPropertiesEXT")) # Load VK_EXT_validation_cache proc loadVK_EXT_validation_cache*() = - vkCreateValidationCacheEXT = cast[proc (device: VkDevic, pCreateInfo: ptr VkValidationCacheCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pValidationCache: ptr VkValidationCacheEXT): VkResult {.stdcall.}](vkGetProc("vkCreateValidationCacheEXT")) - vkDestroyValidationCacheEXT = cast[proc (device: VkDevic, validationCache: VkValidationCacheEX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyValidationCacheEXT")) - vkMergeValidationCachesEXT = cast[proc (device: VkDevic, dstCache: VkValidationCacheEX, srcCacheCount: uint32_, pSrcCaches: ptr VkValidationCacheEXT): VkResult {.stdcall.}](vkGetProc("vkMergeValidationCachesEXT")) - vkGetValidationCacheDataEXT = cast[proc (device: VkDevic, validationCache: VkValidationCacheEX, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetValidationCacheDataEXT")) + vkCreateValidationCacheEXT = cast[proc (device: VkDevice, pCreateInfo: ptr VkValidationCacheCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pValidationCache: ptr VkValidationCacheEXT): VkResult {.stdcall.}](vkGetProc("vkCreateValidationCacheEXT")) + vkDestroyValidationCacheEXT = cast[proc (device: VkDevice, validationCache: VkValidationCacheEXT, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyValidationCacheEXT")) + vkMergeValidationCachesEXT = cast[proc (device: VkDevice, dstCache: VkValidationCacheEXT, srcCacheCount: uint32, pSrcCaches: ptr VkValidationCacheEXT): VkResult {.stdcall.}](vkGetProc("vkMergeValidationCachesEXT")) + vkGetValidationCacheDataEXT = cast[proc (device: VkDevice, validationCache: VkValidationCacheEXT, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetValidationCacheDataEXT")) # Load VK_NV_shading_rate_image proc loadVK_NV_shading_rate_image*() = - vkCmdBindShadingRateImageNV = cast[proc (commandBuffer: VkCommandBuffe, imageView: VkImageVie, imageLayout: VkImageLayou): void {.stdcall.}](vkGetProc("vkCmdBindShadingRateImageNV")) - vkCmdSetViewportShadingRatePaletteNV = cast[proc (commandBuffer: VkCommandBuffe, firstViewport: uint32_, viewportCount: uint32_, pShadingRatePalettes: ptr VkShadingRatePaletteNV): void {.stdcall.}](vkGetProc("vkCmdSetViewportShadingRatePaletteNV")) - vkCmdSetCoarseSampleOrderNV = cast[proc (commandBuffer: VkCommandBuffe, sampleOrderType: VkCoarseSampleOrderTypeN, customSampleOrderCount: uint32_, pCustomSampleOrders: ptr VkCoarseSampleOrderCustomNV): void {.stdcall.}](vkGetProc("vkCmdSetCoarseSampleOrderNV")) + vkCmdBindShadingRateImageNV = cast[proc (commandBuffer: VkCommandBuffer, imageView: VkImageView, imageLayout: VkImageLayout): void {.stdcall.}](vkGetProc("vkCmdBindShadingRateImageNV")) + vkCmdSetViewportShadingRatePaletteNV = cast[proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pShadingRatePalettes: ptr VkShadingRatePaletteNV): void {.stdcall.}](vkGetProc("vkCmdSetViewportShadingRatePaletteNV")) + vkCmdSetCoarseSampleOrderNV = cast[proc (commandBuffer: VkCommandBuffer, sampleOrderType: VkCoarseSampleOrderTypeNV, customSampleOrderCount: uint32, pCustomSampleOrders: ptr VkCoarseSampleOrderCustomNV): void {.stdcall.}](vkGetProc("vkCmdSetCoarseSampleOrderNV")) # Load VK_NV_ray_tracing proc loadVK_NV_ray_tracing*() = - vkCreateAccelerationStructureNV = cast[proc (device: VkDevic, pCreateInfo: ptr VkAccelerationStructureCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pAccelerationStructure: ptr VkAccelerationStructureNV): VkResult {.stdcall.}](vkGetProc("vkCreateAccelerationStructureNV")) - vkDestroyAccelerationStructureNV = cast[proc (device: VkDevic, accelerationStructure: VkAccelerationStructureN, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyAccelerationStructureNV")) - vkGetAccelerationStructureMemoryRequirementsNV = cast[proc (device: VkDevic, pInfo: ptr VkAccelerationStructureMemoryRequirementsInfoNV, pMemoryRequirements: ptr VkMemoryRequirements2KHR): void {.stdcall.}](vkGetProc("vkGetAccelerationStructureMemoryRequirementsNV")) - vkBindAccelerationStructureMemoryNV = cast[proc (device: VkDevic, bindInfoCount: uint32_, pBindInfos: ptr VkBindAccelerationStructureMemoryInfoNV): VkResult {.stdcall.}](vkGetProc("vkBindAccelerationStructureMemoryNV")) - vkCmdBuildAccelerationStructureNV = cast[proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkAccelerationStructureInfoNV, instanceData: VkBuffe, instanceOffset: VkDeviceSiz, update: VkBool3, dst: VkAccelerationStructureN, src: VkAccelerationStructureN, scratch: VkBuffe, scratchOffset: VkDeviceSiz): void {.stdcall.}](vkGetProc("vkCmdBuildAccelerationStructureNV")) - vkCmdCopyAccelerationStructureNV = cast[proc (commandBuffer: VkCommandBuffe, dst: VkAccelerationStructureN, src: VkAccelerationStructureN, mode: VkCopyAccelerationStructureModeKH): void {.stdcall.}](vkGetProc("vkCmdCopyAccelerationStructureNV")) - vkCmdTraceRaysNV = cast[proc (commandBuffer: VkCommandBuffe, raygenShaderBindingTableBuffer: VkBuffe, raygenShaderBindingOffset: VkDeviceSiz, missShaderBindingTableBuffer: VkBuffe, missShaderBindingOffset: VkDeviceSiz, missShaderBindingStride: VkDeviceSiz, hitShaderBindingTableBuffer: VkBuffe, hitShaderBindingOffset: VkDeviceSiz, hitShaderBindingStride: VkDeviceSiz, callableShaderBindingTableBuffer: VkBuffe, callableShaderBindingOffset: VkDeviceSiz, callableShaderBindingStride: VkDeviceSiz, width: uint32_, height: uint32_, depth: uint32_): void {.stdcall.}](vkGetProc("vkCmdTraceRaysNV")) - vkCreateRayTracingPipelinesNV = cast[proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesNV")) - vkCreateRayTracingPipelinesNV = cast[proc (device: VkDevic, pipelineCache: VkPipelineCach, createInfoCount: uint32_, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesNV")) - vkGetAccelerationStructureHandleNV = cast[proc (device: VkDevic, accelerationStructure: VkAccelerationStructureN, dataSize: size_, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetAccelerationStructureHandleNV")) - vkCmdWriteAccelerationStructuresPropertiesNV = cast[proc (commandBuffer: VkCommandBuffe, accelerationStructureCount: uint32_, pAccelerationStructures: ptr VkAccelerationStructureNV, queryType: VkQueryTyp, queryPool: VkQueryPoo, firstQuery: uint32_): void {.stdcall.}](vkGetProc("vkCmdWriteAccelerationStructuresPropertiesNV")) - vkCompileDeferredNV = cast[proc (device: VkDevic, pipeline: VkPipelin, shader: uint32_): VkResult {.stdcall.}](vkGetProc("vkCompileDeferredNV")) + vkCreateAccelerationStructureNV = cast[proc (device: VkDevice, pCreateInfo: ptr VkAccelerationStructureCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pAccelerationStructure: ptr VkAccelerationStructureNV): VkResult {.stdcall.}](vkGetProc("vkCreateAccelerationStructureNV")) + vkDestroyAccelerationStructureNV = cast[proc (device: VkDevice, accelerationStructure: VkAccelerationStructureNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyAccelerationStructureNV")) + vkGetAccelerationStructureMemoryRequirementsNV = cast[proc (device: VkDevice, pInfo: ptr VkAccelerationStructureMemoryRequirementsInfoNV, pMemoryRequirements: ptr VkMemoryRequirements2KHR): void {.stdcall.}](vkGetProc("vkGetAccelerationStructureMemoryRequirementsNV")) + vkBindAccelerationStructureMemoryNV = cast[proc (device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindAccelerationStructureMemoryInfoNV): VkResult {.stdcall.}](vkGetProc("vkBindAccelerationStructureMemoryNV")) + vkCmdBuildAccelerationStructureNV = cast[proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkAccelerationStructureInfoNV, instanceData: VkBuffer, instanceOffset: VkDeviceSize, update: VkBool32, dst: VkAccelerationStructureNV, src: VkAccelerationStructureNV, scratch: VkBuffer, scratchOffset: VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdBuildAccelerationStructureNV")) + vkCmdCopyAccelerationStructureNV = cast[proc (commandBuffer: VkCommandBuffer, dst: VkAccelerationStructureNV, src: VkAccelerationStructureNV, mode: VkCopyAccelerationStructureModeKHR): void {.stdcall.}](vkGetProc("vkCmdCopyAccelerationStructureNV")) + vkCmdTraceRaysNV = cast[proc (commandBuffer: VkCommandBuffer, raygenShaderBindingTableBuffer: VkBuffer, raygenShaderBindingOffset: VkDeviceSize, missShaderBindingTableBuffer: VkBuffer, missShaderBindingOffset: VkDeviceSize, missShaderBindingStride: VkDeviceSize, hitShaderBindingTableBuffer: VkBuffer, hitShaderBindingOffset: VkDeviceSize, hitShaderBindingStride: VkDeviceSize, callableShaderBindingTableBuffer: VkBuffer, callableShaderBindingOffset: VkDeviceSize, callableShaderBindingStride: VkDeviceSize, width: uint32, height: uint32, depth: uint32): void {.stdcall.}](vkGetProc("vkCmdTraceRaysNV")) + vkCreateRayTracingPipelinesNV = cast[proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesNV")) + vkCreateRayTracingPipelinesNV = cast[proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesNV")) + vkGetAccelerationStructureHandleNV = cast[proc (device: VkDevice, accelerationStructure: VkAccelerationStructureNV, dataSize: uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetAccelerationStructureHandleNV")) + vkCmdWriteAccelerationStructuresPropertiesNV = cast[proc (commandBuffer: VkCommandBuffer, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureNV, queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteAccelerationStructuresPropertiesNV")) + vkCompileDeferredNV = cast[proc (device: VkDevice, pipeline: VkPipeline, shader: uint32): VkResult {.stdcall.}](vkGetProc("vkCompileDeferredNV")) # Load VK_EXT_external_memory_host proc loadVK_EXT_external_memory_host*() = - vkGetMemoryHostPointerPropertiesEXT = cast[proc (device: VkDevic, handleType: VkExternalMemoryHandleTypeFlagBit, pHostPointer: pointer, pMemoryHostPointerProperties: ptr VkMemoryHostPointerPropertiesEXT): VkResult {.stdcall.}](vkGetProc("vkGetMemoryHostPointerPropertiesEXT")) + vkGetMemoryHostPointerPropertiesEXT = cast[proc (device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, pHostPointer: pointer, pMemoryHostPointerProperties: ptr VkMemoryHostPointerPropertiesEXT): VkResult {.stdcall.}](vkGetProc("vkGetMemoryHostPointerPropertiesEXT")) # Load VK_AMD_buffer_marker proc loadVK_AMD_buffer_marker*() = - vkCmdWriteBufferMarkerAMD = cast[proc (commandBuffer: VkCommandBuffe, pipelineStage: VkPipelineStageFlagBit, dstBuffer: VkBuffe, dstOffset: VkDeviceSiz, marker: uint32_): void {.stdcall.}](vkGetProc("vkCmdWriteBufferMarkerAMD")) + vkCmdWriteBufferMarkerAMD = cast[proc (commandBuffer: VkCommandBuffer, pipelineStage: VkPipelineStageFlagBits, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, marker: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteBufferMarkerAMD")) # Load VK_NV_mesh_shader proc loadVK_NV_mesh_shader*() = - vkCmdDrawMeshTasksNV = cast[proc (commandBuffer: VkCommandBuffe, taskCount: uint32_, firstTask: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksNV")) - vkCmdDrawMeshTasksIndirectNV = cast[proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, drawCount: uint32_, stride: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksIndirectNV")) - vkCmdDrawMeshTasksIndirectCountNV = cast[proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, countBuffer: VkBuffe, countBufferOffset: VkDeviceSiz, maxDrawCount: uint32_, stride: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksIndirectCountNV")) + vkCmdDrawMeshTasksNV = cast[proc (commandBuffer: VkCommandBuffer, taskCount: uint32, firstTask: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksNV")) + vkCmdDrawMeshTasksIndirectNV = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksIndirectNV")) + vkCmdDrawMeshTasksIndirectCountNV = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksIndirectCountNV")) # Load VK_NV_scissor_exclusive proc loadVK_NV_scissor_exclusive*() = - vkCmdSetExclusiveScissorEnableNV = cast[proc (commandBuffer: VkCommandBuffe, firstExclusiveScissor: uint32_, exclusiveScissorCount: uint32_, pExclusiveScissorEnables: ptr VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetExclusiveScissorEnableNV")) - vkCmdSetExclusiveScissorNV = cast[proc (commandBuffer: VkCommandBuffe, firstExclusiveScissor: uint32_, exclusiveScissorCount: uint32_, pExclusiveScissors: ptr VkRect2D): void {.stdcall.}](vkGetProc("vkCmdSetExclusiveScissorNV")) + vkCmdSetExclusiveScissorEnableNV = cast[proc (commandBuffer: VkCommandBuffer, firstExclusiveScissor: uint32, exclusiveScissorCount: uint32, pExclusiveScissorEnables: ptr VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetExclusiveScissorEnableNV")) + vkCmdSetExclusiveScissorNV = cast[proc (commandBuffer: VkCommandBuffer, firstExclusiveScissor: uint32, exclusiveScissorCount: uint32, pExclusiveScissors: ptr VkRect2D): void {.stdcall.}](vkGetProc("vkCmdSetExclusiveScissorNV")) # Load VK_NV_device_diagnostic_checkpoints proc loadVK_NV_device_diagnostic_checkpoints*() = - vkCmdSetCheckpointNV = cast[proc (commandBuffer: VkCommandBuffe, pCheckpointMarker: pointer): void {.stdcall.}](vkGetProc("vkCmdSetCheckpointNV")) - vkGetQueueCheckpointDataNV = cast[proc (queue: VkQueu, pCheckpointDataCount: ptr uint32, pCheckpointData: ptr VkCheckpointDataNV): void {.stdcall.}](vkGetProc("vkGetQueueCheckpointDataNV")) + vkCmdSetCheckpointNV = cast[proc (commandBuffer: VkCommandBuffer, pCheckpointMarker: pointer): void {.stdcall.}](vkGetProc("vkCmdSetCheckpointNV")) + vkGetQueueCheckpointDataNV = cast[proc (queue: VkQueue, pCheckpointDataCount: ptr uint32, pCheckpointData: ptr VkCheckpointDataNV): void {.stdcall.}](vkGetProc("vkGetQueueCheckpointDataNV")) # Load VK_INTEL_performance_query proc loadVK_INTEL_performance_query*() = - vkInitializePerformanceApiINTEL = cast[proc (device: VkDevic, pInitializeInfo: ptr VkInitializePerformanceApiInfoINTEL): VkResult {.stdcall.}](vkGetProc("vkInitializePerformanceApiINTEL")) - vkUninitializePerformanceApiINTEL = cast[proc (device: VkDevic): void {.stdcall.}](vkGetProc("vkUninitializePerformanceApiINTEL")) - vkCmdSetPerformanceMarkerINTEL = cast[proc (commandBuffer: VkCommandBuffe, pMarkerInfo: ptr VkPerformanceMarkerInfoINTEL): VkResult {.stdcall.}](vkGetProc("vkCmdSetPerformanceMarkerINTEL")) - vkCmdSetPerformanceStreamMarkerINTEL = cast[proc (commandBuffer: VkCommandBuffe, pMarkerInfo: ptr VkPerformanceStreamMarkerInfoINTEL): VkResult {.stdcall.}](vkGetProc("vkCmdSetPerformanceStreamMarkerINTEL")) - vkCmdSetPerformanceOverrideINTEL = cast[proc (commandBuffer: VkCommandBuffe, pOverrideInfo: ptr VkPerformanceOverrideInfoINTEL): VkResult {.stdcall.}](vkGetProc("vkCmdSetPerformanceOverrideINTEL")) - vkAcquirePerformanceConfigurationINTEL = cast[proc (device: VkDevic, pAcquireInfo: ptr VkPerformanceConfigurationAcquireInfoINTEL, pConfiguration: ptr VkPerformanceConfigurationINTEL): VkResult {.stdcall.}](vkGetProc("vkAcquirePerformanceConfigurationINTEL")) - vkReleasePerformanceConfigurationINTEL = cast[proc (device: VkDevic, configuration: VkPerformanceConfigurationINTE): VkResult {.stdcall.}](vkGetProc("vkReleasePerformanceConfigurationINTEL")) - vkQueueSetPerformanceConfigurationINTEL = cast[proc (queue: VkQueu, configuration: VkPerformanceConfigurationINTE): VkResult {.stdcall.}](vkGetProc("vkQueueSetPerformanceConfigurationINTEL")) - vkGetPerformanceParameterINTEL = cast[proc (device: VkDevic, parameter: VkPerformanceParameterTypeINTE, pValue: ptr VkPerformanceValueINTEL): VkResult {.stdcall.}](vkGetProc("vkGetPerformanceParameterINTEL")) + vkInitializePerformanceApiINTEL = cast[proc (device: VkDevice, pInitializeInfo: ptr VkInitializePerformanceApiInfoINTEL): VkResult {.stdcall.}](vkGetProc("vkInitializePerformanceApiINTEL")) + vkUninitializePerformanceApiINTEL = cast[proc (device: VkDevice): void {.stdcall.}](vkGetProc("vkUninitializePerformanceApiINTEL")) + vkCmdSetPerformanceMarkerINTEL = cast[proc (commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkPerformanceMarkerInfoINTEL): VkResult {.stdcall.}](vkGetProc("vkCmdSetPerformanceMarkerINTEL")) + vkCmdSetPerformanceStreamMarkerINTEL = cast[proc (commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkPerformanceStreamMarkerInfoINTEL): VkResult {.stdcall.}](vkGetProc("vkCmdSetPerformanceStreamMarkerINTEL")) + vkCmdSetPerformanceOverrideINTEL = cast[proc (commandBuffer: VkCommandBuffer, pOverrideInfo: ptr VkPerformanceOverrideInfoINTEL): VkResult {.stdcall.}](vkGetProc("vkCmdSetPerformanceOverrideINTEL")) + vkAcquirePerformanceConfigurationINTEL = cast[proc (device: VkDevice, pAcquireInfo: ptr VkPerformanceConfigurationAcquireInfoINTEL, pConfiguration: ptr VkPerformanceConfigurationINTEL): VkResult {.stdcall.}](vkGetProc("vkAcquirePerformanceConfigurationINTEL")) + vkReleasePerformanceConfigurationINTEL = cast[proc (device: VkDevice, configuration: VkPerformanceConfigurationINTEL): VkResult {.stdcall.}](vkGetProc("vkReleasePerformanceConfigurationINTEL")) + vkQueueSetPerformanceConfigurationINTEL = cast[proc (queue: VkQueue, configuration: VkPerformanceConfigurationINTEL): VkResult {.stdcall.}](vkGetProc("vkQueueSetPerformanceConfigurationINTEL")) + vkGetPerformanceParameterINTEL = cast[proc (device: VkDevice, parameter: VkPerformanceParameterTypeINTEL, pValue: ptr VkPerformanceValueINTEL): VkResult {.stdcall.}](vkGetProc("vkGetPerformanceParameterINTEL")) # Load VK_AMD_display_native_hdr proc loadVK_AMD_display_native_hdr*() = - vkSetLocalDimmingAMD = cast[proc (device: VkDevic, swapChain: VkSwapchainKH, localDimmingEnable: VkBool3): void {.stdcall.}](vkGetProc("vkSetLocalDimmingAMD")) + vkSetLocalDimmingAMD = cast[proc (device: VkDevice, swapChain: VkSwapchainKHR, localDimmingEnable: VkBool32): void {.stdcall.}](vkGetProc("vkSetLocalDimmingAMD")) # Load VK_FUCHSIA_imagepipe_surface proc loadVK_FUCHSIA_imagepipe_surface*() = - vkCreateImagePipeSurfaceFUCHSIA = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkImagePipeSurfaceCreateInfoFUCHSIA, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateImagePipeSurfaceFUCHSIA")) + vkCreateImagePipeSurfaceFUCHSIA = cast[proc (instance: VkInstance, pCreateInfo: ptr VkImagePipeSurfaceCreateInfoFUCHSIA, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateImagePipeSurfaceFUCHSIA")) # Load VK_EXT_metal_surface proc loadVK_EXT_metal_surface*() = - vkCreateMetalSurfaceEXT = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkMetalSurfaceCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateMetalSurfaceEXT")) + vkCreateMetalSurfaceEXT = cast[proc (instance: VkInstance, pCreateInfo: ptr VkMetalSurfaceCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateMetalSurfaceEXT")) # Load VK_KHR_fragment_shading_rate proc loadVK_KHR_fragment_shading_rate*() = - vkGetPhysicalDeviceFragmentShadingRatesKHR = cast[proc (physicalDevice: VkPhysicalDevic, pFragmentShadingRateCount: ptr uint32, pFragmentShadingRates: ptr VkPhysicalDeviceFragmentShadingRateKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFragmentShadingRatesKHR")) - vkCmdSetFragmentShadingRateKHR = cast[proc (commandBuffer: VkCommandBuffe, pFragmentSize: ptr VkExtent2D , combinerOps: array[2, VkFragmentShadingRateCombinerOpKH]): void {.stdcall.}](vkGetProc("vkCmdSetFragmentShadingRateKHR")) + vkGetPhysicalDeviceFragmentShadingRatesKHR = cast[proc (physicalDevice: VkPhysicalDevice, pFragmentShadingRateCount: ptr uint32, pFragmentShadingRates: ptr VkPhysicalDeviceFragmentShadingRateKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFragmentShadingRatesKHR")) + vkCmdSetFragmentShadingRateKHR = cast[proc (commandBuffer: VkCommandBuffer, pFragmentSize: ptr VkExtent2D, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): void {.stdcall.}](vkGetProc("vkCmdSetFragmentShadingRateKHR")) # Load VK_KHR_dynamic_rendering_local_read proc loadVK_KHR_dynamic_rendering_local_read*() = - vkCmdSetRenderingAttachmentLocationsKHR = cast[proc (commandBuffer: VkCommandBuffe, pLocationInfo: ptr VkRenderingAttachmentLocationInfoKHR): void {.stdcall.}](vkGetProc("vkCmdSetRenderingAttachmentLocationsKHR")) - vkCmdSetRenderingInputAttachmentIndicesKHR = cast[proc (commandBuffer: VkCommandBuffe, pLocationInfo: ptr VkRenderingInputAttachmentIndexInfoKHR): void {.stdcall.}](vkGetProc("vkCmdSetRenderingInputAttachmentIndicesKHR")) + vkCmdSetRenderingAttachmentLocationsKHR = cast[proc (commandBuffer: VkCommandBuffer, pLocationInfo: ptr VkRenderingAttachmentLocationInfoKHR): void {.stdcall.}](vkGetProc("vkCmdSetRenderingAttachmentLocationsKHR")) + vkCmdSetRenderingInputAttachmentIndicesKHR = cast[proc (commandBuffer: VkCommandBuffer, pLocationInfo: ptr VkRenderingInputAttachmentIndexInfoKHR): void {.stdcall.}](vkGetProc("vkCmdSetRenderingInputAttachmentIndicesKHR")) # Load VK_KHR_present_wait proc loadVK_KHR_present_wait*() = - vkWaitForPresentKHR = cast[proc (device: VkDevic, swapchain: VkSwapchainKH, presentId: uint64_, timeout: uint64_): VkResult {.stdcall.}](vkGetProc("vkWaitForPresentKHR")) + vkWaitForPresentKHR = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR, presentId: uint64, timeout: uint64): VkResult {.stdcall.}](vkGetProc("vkWaitForPresentKHR")) # Load VK_NV_cooperative_matrix proc loadVK_NV_cooperative_matrix*() = - vkGetPhysicalDeviceCooperativeMatrixPropertiesNV = cast[proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkCooperativeMatrixPropertiesNV): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceCooperativeMatrixPropertiesNV")) + vkGetPhysicalDeviceCooperativeMatrixPropertiesNV = cast[proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkCooperativeMatrixPropertiesNV): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceCooperativeMatrixPropertiesNV")) # Load VK_NV_coverage_reduction_mode proc loadVK_NV_coverage_reduction_mode*() = - vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV = cast[proc (physicalDevice: VkPhysicalDevic, pCombinationCount: ptr uint32, pCombinations: ptr VkFramebufferMixedSamplesCombinationNV): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV")) + vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV = cast[proc (physicalDevice: VkPhysicalDevice, pCombinationCount: ptr uint32, pCombinations: ptr VkFramebufferMixedSamplesCombinationNV): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV")) # Load VK_EXT_full_screen_exclusive proc loadVK_EXT_full_screen_exclusive*() = - vkGetPhysicalDeviceSurfacePresentModes2EXT = cast[proc (physicalDevice: VkPhysicalDevic, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pPresentModeCount: ptr uint32, pPresentModes: ptr VkPresentModeKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfacePresentModes2EXT")) - vkAcquireFullScreenExclusiveModeEXT = cast[proc (device: VkDevic, swapchain: VkSwapchainKH): VkResult {.stdcall.}](vkGetProc("vkAcquireFullScreenExclusiveModeEXT")) - vkReleaseFullScreenExclusiveModeEXT = cast[proc (device: VkDevic, swapchain: VkSwapchainKH): VkResult {.stdcall.}](vkGetProc("vkReleaseFullScreenExclusiveModeEXT")) - vkGetDeviceGroupSurfacePresentModes2EXT = cast[proc (device: VkDevic, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pModes: ptr VkDeviceGroupPresentModeFlagsKHR): VkResult {.stdcall.}](vkGetProc("vkGetDeviceGroupSurfacePresentModes2EXT")) - vkGetDeviceGroupSurfacePresentModes2EXT = cast[proc (device: VkDevic, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pModes: ptr VkDeviceGroupPresentModeFlagsKHR): VkResult {.stdcall.}](vkGetProc("vkGetDeviceGroupSurfacePresentModes2EXT")) + vkGetPhysicalDeviceSurfacePresentModes2EXT = cast[proc (physicalDevice: VkPhysicalDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pPresentModeCount: ptr uint32, pPresentModes: ptr VkPresentModeKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfacePresentModes2EXT")) + vkAcquireFullScreenExclusiveModeEXT = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR): VkResult {.stdcall.}](vkGetProc("vkAcquireFullScreenExclusiveModeEXT")) + vkReleaseFullScreenExclusiveModeEXT = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR): VkResult {.stdcall.}](vkGetProc("vkReleaseFullScreenExclusiveModeEXT")) + vkGetDeviceGroupSurfacePresentModes2EXT = cast[proc (device: VkDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pModes: ptr VkDeviceGroupPresentModeFlagsKHR): VkResult {.stdcall.}](vkGetProc("vkGetDeviceGroupSurfacePresentModes2EXT")) + vkGetDeviceGroupSurfacePresentModes2EXT = cast[proc (device: VkDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pModes: ptr VkDeviceGroupPresentModeFlagsKHR): VkResult {.stdcall.}](vkGetProc("vkGetDeviceGroupSurfacePresentModes2EXT")) # Load VK_EXT_headless_surface proc loadVK_EXT_headless_surface*() = - vkCreateHeadlessSurfaceEXT = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkHeadlessSurfaceCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateHeadlessSurfaceEXT")) + vkCreateHeadlessSurfaceEXT = cast[proc (instance: VkInstance, pCreateInfo: ptr VkHeadlessSurfaceCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateHeadlessSurfaceEXT")) # Load VK_KHR_deferred_host_operations proc loadVK_KHR_deferred_host_operations*() = - vkCreateDeferredOperationKHR = cast[proc (device: VkDevic, pAllocator: ptr VkAllocationCallbacks, pDeferredOperation: ptr VkDeferredOperationKHR): VkResult {.stdcall.}](vkGetProc("vkCreateDeferredOperationKHR")) - vkDestroyDeferredOperationKHR = cast[proc (device: VkDevic, operation: VkDeferredOperationKH, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDeferredOperationKHR")) - vkGetDeferredOperationMaxConcurrencyKHR = cast[proc (device: VkDevic, operation: VkDeferredOperationKH): uint32 {.stdcall.}](vkGetProc("vkGetDeferredOperationMaxConcurrencyKHR")) - vkGetDeferredOperationResultKHR = cast[proc (device: VkDevic, operation: VkDeferredOperationKH): VkResult {.stdcall.}](vkGetProc("vkGetDeferredOperationResultKHR")) - vkDeferredOperationJoinKHR = cast[proc (device: VkDevic, operation: VkDeferredOperationKH): VkResult {.stdcall.}](vkGetProc("vkDeferredOperationJoinKHR")) + vkCreateDeferredOperationKHR = cast[proc (device: VkDevice, pAllocator: ptr VkAllocationCallbacks, pDeferredOperation: ptr VkDeferredOperationKHR): VkResult {.stdcall.}](vkGetProc("vkCreateDeferredOperationKHR")) + vkDestroyDeferredOperationKHR = cast[proc (device: VkDevice, operation: VkDeferredOperationKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDeferredOperationKHR")) + vkGetDeferredOperationMaxConcurrencyKHR = cast[proc (device: VkDevice, operation: VkDeferredOperationKHR): uint32 {.stdcall.}](vkGetProc("vkGetDeferredOperationMaxConcurrencyKHR")) + vkGetDeferredOperationResultKHR = cast[proc (device: VkDevice, operation: VkDeferredOperationKHR): VkResult {.stdcall.}](vkGetProc("vkGetDeferredOperationResultKHR")) + vkDeferredOperationJoinKHR = cast[proc (device: VkDevice, operation: VkDeferredOperationKHR): VkResult {.stdcall.}](vkGetProc("vkDeferredOperationJoinKHR")) # Load VK_KHR_pipeline_executable_properties proc loadVK_KHR_pipeline_executable_properties*() = - vkGetPipelineExecutablePropertiesKHR = cast[proc (device: VkDevic, pPipelineInfo: ptr VkPipelineInfoKHR , pExecutableCount: ptr uint32, pProperties: ptr VkPipelineExecutablePropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPipelineExecutablePropertiesKHR")) - vkGetPipelineExecutableStatisticsKHR = cast[proc (device: VkDevic, pExecutableInfo: ptr VkPipelineExecutableInfoKHR , pStatisticCount: ptr uint32, pStatistics: ptr VkPipelineExecutableStatisticKHR): VkResult {.stdcall.}](vkGetProc("vkGetPipelineExecutableStatisticsKHR")) - vkGetPipelineExecutableInternalRepresentationsKHR = cast[proc (device: VkDevic, pExecutableInfo: ptr VkPipelineExecutableInfoKHR , pInternalRepresentationCount: ptr uint32, pInternalRepresentations: ptr VkPipelineExecutableInternalRepresentationKHR): VkResult {.stdcall.}](vkGetProc("vkGetPipelineExecutableInternalRepresentationsKHR")) + vkGetPipelineExecutablePropertiesKHR = cast[proc (device: VkDevice, pPipelineInfo: ptr VkPipelineInfoKHR, pExecutableCount: ptr uint32, pProperties: ptr VkPipelineExecutablePropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPipelineExecutablePropertiesKHR")) + vkGetPipelineExecutableStatisticsKHR = cast[proc (device: VkDevice, pExecutableInfo: ptr VkPipelineExecutableInfoKHR, pStatisticCount: ptr uint32, pStatistics: ptr VkPipelineExecutableStatisticKHR): VkResult {.stdcall.}](vkGetProc("vkGetPipelineExecutableStatisticsKHR")) + vkGetPipelineExecutableInternalRepresentationsKHR = cast[proc (device: VkDevice, pExecutableInfo: ptr VkPipelineExecutableInfoKHR, pInternalRepresentationCount: ptr uint32, pInternalRepresentations: ptr VkPipelineExecutableInternalRepresentationKHR): VkResult {.stdcall.}](vkGetProc("vkGetPipelineExecutableInternalRepresentationsKHR")) # Load VK_EXT_host_image_copy proc loadVK_EXT_host_image_copy*() = - vkCopyMemoryToImageEXT = cast[proc (device: VkDevic, pCopyMemoryToImageInfo: ptr VkCopyMemoryToImageInfoEXT): VkResult {.stdcall.}](vkGetProc("vkCopyMemoryToImageEXT")) - vkCopyImageToMemoryEXT = cast[proc (device: VkDevic, pCopyImageToMemoryInfo: ptr VkCopyImageToMemoryInfoEXT): VkResult {.stdcall.}](vkGetProc("vkCopyImageToMemoryEXT")) - vkCopyImageToImageEXT = cast[proc (device: VkDevic, pCopyImageToImageInfo: ptr VkCopyImageToImageInfoEXT): VkResult {.stdcall.}](vkGetProc("vkCopyImageToImageEXT")) - vkTransitionImageLayoutEXT = cast[proc (device: VkDevic, transitionCount: uint32_, pTransitions: ptr VkHostImageLayoutTransitionInfoEXT): VkResult {.stdcall.}](vkGetProc("vkTransitionImageLayoutEXT")) + vkCopyMemoryToImageEXT = cast[proc (device: VkDevice, pCopyMemoryToImageInfo: ptr VkCopyMemoryToImageInfoEXT): VkResult {.stdcall.}](vkGetProc("vkCopyMemoryToImageEXT")) + vkCopyImageToMemoryEXT = cast[proc (device: VkDevice, pCopyImageToMemoryInfo: ptr VkCopyImageToMemoryInfoEXT): VkResult {.stdcall.}](vkGetProc("vkCopyImageToMemoryEXT")) + vkCopyImageToImageEXT = cast[proc (device: VkDevice, pCopyImageToImageInfo: ptr VkCopyImageToImageInfoEXT): VkResult {.stdcall.}](vkGetProc("vkCopyImageToImageEXT")) + vkTransitionImageLayoutEXT = cast[proc (device: VkDevice, transitionCount: uint32, pTransitions: ptr VkHostImageLayoutTransitionInfoEXT): VkResult {.stdcall.}](vkGetProc("vkTransitionImageLayoutEXT")) # Load VK_KHR_map_memory2 proc loadVK_KHR_map_memory2*() = - vkMapMemory2KHR = cast[proc (device: VkDevic, pMemoryMapInfo: ptr VkMemoryMapInfoKHR, ppData: ptr pointer): VkResult {.stdcall.}](vkGetProc("vkMapMemory2KHR")) - vkUnmapMemory2KHR = cast[proc (device: VkDevic, pMemoryUnmapInfo: ptr VkMemoryUnmapInfoKHR): VkResult {.stdcall.}](vkGetProc("vkUnmapMemory2KHR")) + vkMapMemory2KHR = cast[proc (device: VkDevice, pMemoryMapInfo: ptr VkMemoryMapInfoKHR, ppData: ptr pointer): VkResult {.stdcall.}](vkGetProc("vkMapMemory2KHR")) + vkUnmapMemory2KHR = cast[proc (device: VkDevice, pMemoryUnmapInfo: ptr VkMemoryUnmapInfoKHR): VkResult {.stdcall.}](vkGetProc("vkUnmapMemory2KHR")) # Load VK_EXT_swapchain_maintenance1 proc loadVK_EXT_swapchain_maintenance1*() = - vkReleaseSwapchainImagesEXT = cast[proc (device: VkDevic, pReleaseInfo: ptr VkReleaseSwapchainImagesInfoEXT): VkResult {.stdcall.}](vkGetProc("vkReleaseSwapchainImagesEXT")) + vkReleaseSwapchainImagesEXT = cast[proc (device: VkDevice, pReleaseInfo: ptr VkReleaseSwapchainImagesInfoEXT): VkResult {.stdcall.}](vkGetProc("vkReleaseSwapchainImagesEXT")) # Load VK_NV_device_generated_commands proc loadVK_NV_device_generated_commands*() = - vkGetGeneratedCommandsMemoryRequirementsNV = cast[proc (device: VkDevic, pInfo: ptr VkGeneratedCommandsMemoryRequirementsInfoNV, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetGeneratedCommandsMemoryRequirementsNV")) - vkCmdPreprocessGeneratedCommandsNV = cast[proc (commandBuffer: VkCommandBuffe, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV): void {.stdcall.}](vkGetProc("vkCmdPreprocessGeneratedCommandsNV")) - vkCmdExecuteGeneratedCommandsNV = cast[proc (commandBuffer: VkCommandBuffe, isPreprocessed: VkBool3, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV): void {.stdcall.}](vkGetProc("vkCmdExecuteGeneratedCommandsNV")) - vkCmdBindPipelineShaderGroupNV = cast[proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, pipeline: VkPipelin, groupIndex: uint32_): void {.stdcall.}](vkGetProc("vkCmdBindPipelineShaderGroupNV")) - vkCreateIndirectCommandsLayoutNV = cast[proc (device: VkDevic, pCreateInfo: ptr VkIndirectCommandsLayoutCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pIndirectCommandsLayout: ptr VkIndirectCommandsLayoutNV): VkResult {.stdcall.}](vkGetProc("vkCreateIndirectCommandsLayoutNV")) - vkDestroyIndirectCommandsLayoutNV = cast[proc (device: VkDevic, indirectCommandsLayout: VkIndirectCommandsLayoutN, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyIndirectCommandsLayoutNV")) + vkGetGeneratedCommandsMemoryRequirementsNV = cast[proc (device: VkDevice, pInfo: ptr VkGeneratedCommandsMemoryRequirementsInfoNV, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetGeneratedCommandsMemoryRequirementsNV")) + vkCmdPreprocessGeneratedCommandsNV = cast[proc (commandBuffer: VkCommandBuffer, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV): void {.stdcall.}](vkGetProc("vkCmdPreprocessGeneratedCommandsNV")) + vkCmdExecuteGeneratedCommandsNV = cast[proc (commandBuffer: VkCommandBuffer, isPreprocessed: VkBool32, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV): void {.stdcall.}](vkGetProc("vkCmdExecuteGeneratedCommandsNV")) + vkCmdBindPipelineShaderGroupNV = cast[proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline, groupIndex: uint32): void {.stdcall.}](vkGetProc("vkCmdBindPipelineShaderGroupNV")) + vkCreateIndirectCommandsLayoutNV = cast[proc (device: VkDevice, pCreateInfo: ptr VkIndirectCommandsLayoutCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pIndirectCommandsLayout: ptr VkIndirectCommandsLayoutNV): VkResult {.stdcall.}](vkGetProc("vkCreateIndirectCommandsLayoutNV")) + vkDestroyIndirectCommandsLayoutNV = cast[proc (device: VkDevice, indirectCommandsLayout: VkIndirectCommandsLayoutNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyIndirectCommandsLayoutNV")) # Load VK_EXT_depth_bias_control proc loadVK_EXT_depth_bias_control*() = - vkCmdSetDepthBias2EXT = cast[proc (commandBuffer: VkCommandBuffe, pDepthBiasInfo: ptr VkDepthBiasInfoEXT ): void {.stdcall.}](vkGetProc("vkCmdSetDepthBias2EXT")) + vkCmdSetDepthBias2EXT = cast[proc (commandBuffer: VkCommandBuffer, pDepthBiasInfo: ptr VkDepthBiasInfoEXT): void {.stdcall.}](vkGetProc("vkCmdSetDepthBias2EXT")) # Load VK_EXT_acquire_drm_display proc loadVK_EXT_acquire_drm_display*() = - vkAcquireDrmDisplayEXT = cast[proc (physicalDevice: VkPhysicalDevic, drmFd: int32_, display: VkDisplayKH): VkResult {.stdcall.}](vkGetProc("vkAcquireDrmDisplayEXT")) - vkGetDrmDisplayEXT = cast[proc (physicalDevice: VkPhysicalDevic, drmFd: int32_, connectorId: uint32_, display: ptr VkDisplayKHR): VkResult {.stdcall.}](vkGetProc("vkGetDrmDisplayEXT")) + vkAcquireDrmDisplayEXT = cast[proc (physicalDevice: VkPhysicalDevice, drmFd: int32, display: VkDisplayKHR): VkResult {.stdcall.}](vkGetProc("vkAcquireDrmDisplayEXT")) + vkGetDrmDisplayEXT = cast[proc (physicalDevice: VkPhysicalDevice, drmFd: int32, connectorId: uint32, display: ptr VkDisplayKHR): VkResult {.stdcall.}](vkGetProc("vkGetDrmDisplayEXT")) # Load VK_KHR_video_encode_queue proc loadVK_KHR_video_encode_queue*() = - vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR = cast[proc (physicalDevice: VkPhysicalDevic, pQualityLevelInfo: ptr VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR, pQualityLevelProperties: ptr VkVideoEncodeQualityLevelPropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR")) - vkGetEncodedVideoSessionParametersKHR = cast[proc (device: VkDevic, pVideoSessionParametersInfo: ptr VkVideoEncodeSessionParametersGetInfoKHR, pFeedbackInfo: ptr VkVideoEncodeSessionParametersFeedbackInfoKHR, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetEncodedVideoSessionParametersKHR")) - vkCmdEncodeVideoKHR = cast[proc (commandBuffer: VkCommandBuffe, pEncodeInfo: ptr VkVideoEncodeInfoKHR): void {.stdcall.}](vkGetProc("vkCmdEncodeVideoKHR")) + vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR = cast[proc (physicalDevice: VkPhysicalDevice, pQualityLevelInfo: ptr VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR, pQualityLevelProperties: ptr VkVideoEncodeQualityLevelPropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR")) + vkGetEncodedVideoSessionParametersKHR = cast[proc (device: VkDevice, pVideoSessionParametersInfo: ptr VkVideoEncodeSessionParametersGetInfoKHR, pFeedbackInfo: ptr VkVideoEncodeSessionParametersFeedbackInfoKHR, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetEncodedVideoSessionParametersKHR")) + vkCmdEncodeVideoKHR = cast[proc (commandBuffer: VkCommandBuffer, pEncodeInfo: ptr VkVideoEncodeInfoKHR): void {.stdcall.}](vkGetProc("vkCmdEncodeVideoKHR")) # Load VK_NV_cuda_kernel_launch proc loadVK_NV_cuda_kernel_launch*() = - vkCreateCudaModuleNV = cast[proc (device: VkDevic, pCreateInfo: ptr VkCudaModuleCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pModule: ptr VkCudaModuleNV): VkResult {.stdcall.}](vkGetProc("vkCreateCudaModuleNV")) - vkGetCudaModuleCacheNV = cast[proc (device: VkDevic, module: VkCudaModuleN, pCacheSize: ptr uint, pCacheData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetCudaModuleCacheNV")) - vkCreateCudaFunctionNV = cast[proc (device: VkDevic, pCreateInfo: ptr VkCudaFunctionCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pFunction: ptr VkCudaFunctionNV): VkResult {.stdcall.}](vkGetProc("vkCreateCudaFunctionNV")) - vkDestroyCudaModuleNV = cast[proc (device: VkDevic, module: VkCudaModuleN, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyCudaModuleNV")) - vkDestroyCudaFunctionNV = cast[proc (device: VkDevic, function: VkCudaFunctionN, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyCudaFunctionNV")) - vkCmdCudaLaunchKernelNV = cast[proc (commandBuffer: VkCommandBuffe, pLaunchInfo: ptr VkCudaLaunchInfoNV): void {.stdcall.}](vkGetProc("vkCmdCudaLaunchKernelNV")) + vkCreateCudaModuleNV = cast[proc (device: VkDevice, pCreateInfo: ptr VkCudaModuleCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pModule: ptr VkCudaModuleNV): VkResult {.stdcall.}](vkGetProc("vkCreateCudaModuleNV")) + vkGetCudaModuleCacheNV = cast[proc (device: VkDevice, module: VkCudaModuleNV, pCacheSize: ptr uint, pCacheData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetCudaModuleCacheNV")) + vkCreateCudaFunctionNV = cast[proc (device: VkDevice, pCreateInfo: ptr VkCudaFunctionCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pFunction: ptr VkCudaFunctionNV): VkResult {.stdcall.}](vkGetProc("vkCreateCudaFunctionNV")) + vkDestroyCudaModuleNV = cast[proc (device: VkDevice, module: VkCudaModuleNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyCudaModuleNV")) + vkDestroyCudaFunctionNV = cast[proc (device: VkDevice, function: VkCudaFunctionNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyCudaFunctionNV")) + vkCmdCudaLaunchKernelNV = cast[proc (commandBuffer: VkCommandBuffer, pLaunchInfo: ptr VkCudaLaunchInfoNV): void {.stdcall.}](vkGetProc("vkCmdCudaLaunchKernelNV")) # Load VK_KHR_object_refresh proc loadVK_KHR_object_refresh*() = - vkCmdRefreshObjectsKHR = cast[proc (commandBuffer: VkCommandBuffe, pRefreshObjects: ptr VkRefreshObjectListKHR): void {.stdcall.}](vkGetProc("vkCmdRefreshObjectsKHR")) - vkGetPhysicalDeviceRefreshableObjectTypesKHR = cast[proc (physicalDevice: VkPhysicalDevic, pRefreshableObjectTypeCount: ptr uint32, pRefreshableObjectTypes: ptr VkObjectType): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceRefreshableObjectTypesKHR")) + vkCmdRefreshObjectsKHR = cast[proc (commandBuffer: VkCommandBuffer, pRefreshObjects: ptr VkRefreshObjectListKHR): void {.stdcall.}](vkGetProc("vkCmdRefreshObjectsKHR")) + vkGetPhysicalDeviceRefreshableObjectTypesKHR = cast[proc (physicalDevice: VkPhysicalDevice, pRefreshableObjectTypeCount: ptr uint32, pRefreshableObjectTypes: ptr VkObjectType): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceRefreshableObjectTypesKHR")) # Load VK_EXT_metal_objects proc loadVK_EXT_metal_objects*() = - vkExportMetalObjectsEXT = cast[proc (device: VkDevic, pMetalObjectsInfo: ptr VkExportMetalObjectsInfoEXT): void {.stdcall.}](vkGetProc("vkExportMetalObjectsEXT")) + vkExportMetalObjectsEXT = cast[proc (device: VkDevice, pMetalObjectsInfo: ptr VkExportMetalObjectsInfoEXT): void {.stdcall.}](vkGetProc("vkExportMetalObjectsEXT")) # Load VK_KHR_synchronization2 proc loadVK_KHR_synchronization2*() = - vkCmdWriteBufferMarker2AMD = cast[proc (commandBuffer: VkCommandBuffe, stage: VkPipelineStageFlags, dstBuffer: VkBuffe, dstOffset: VkDeviceSiz, marker: uint32_): void {.stdcall.}](vkGetProc("vkCmdWriteBufferMarker2AMD")) - vkGetQueueCheckpointData2NV = cast[proc (queue: VkQueu, pCheckpointDataCount: ptr uint32, pCheckpointData: ptr VkCheckpointData2NV): void {.stdcall.}](vkGetProc("vkGetQueueCheckpointData2NV")) + vkCmdWriteBufferMarker2AMD = cast[proc (commandBuffer: VkCommandBuffer, stage: VkPipelineStageFlags2, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, marker: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteBufferMarker2AMD")) + vkGetQueueCheckpointData2NV = cast[proc (queue: VkQueue, pCheckpointDataCount: ptr uint32, pCheckpointData: ptr VkCheckpointData2NV): void {.stdcall.}](vkGetProc("vkGetQueueCheckpointData2NV")) # Load VK_EXT_descriptor_buffer proc loadVK_EXT_descriptor_buffer*() = - vkGetDescriptorSetLayoutSizeEXT = cast[proc (device: VkDevic, layout: VkDescriptorSetLayou, pLayoutSizeInBytes: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutSizeEXT")) - vkGetDescriptorSetLayoutBindingOffsetEXT = cast[proc (device: VkDevic, layout: VkDescriptorSetLayou, binding: uint32_, pOffset: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutBindingOffsetEXT")) - vkGetDescriptorEXT = cast[proc (device: VkDevic, pDescriptorInfo: ptr VkDescriptorGetInfoEXT, dataSize: size_, pDescriptor: pointer): void {.stdcall.}](vkGetProc("vkGetDescriptorEXT")) - vkCmdBindDescriptorBuffersEXT = cast[proc (commandBuffer: VkCommandBuffe, bufferCount: uint32_, pBindingInfos: ptr VkDescriptorBufferBindingInfoEXT): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorBuffersEXT")) - vkCmdSetDescriptorBufferOffsetsEXT = cast[proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, layout: VkPipelineLayou, firstSet: uint32_, setCount: uint32_, pBufferIndices: ptr uint32, pOffsets: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdSetDescriptorBufferOffsetsEXT")) - vkCmdBindDescriptorBufferEmbeddedSamplersEXT = cast[proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, layout: VkPipelineLayou, set: uint32_): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorBufferEmbeddedSamplersEXT")) - vkGetBufferOpaqueCaptureDescriptorDataEXT = cast[proc (device: VkDevic, pInfo: ptr VkBufferCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetBufferOpaqueCaptureDescriptorDataEXT")) - vkGetImageOpaqueCaptureDescriptorDataEXT = cast[proc (device: VkDevic, pInfo: ptr VkImageCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetImageOpaqueCaptureDescriptorDataEXT")) - vkGetImageViewOpaqueCaptureDescriptorDataEXT = cast[proc (device: VkDevic, pInfo: ptr VkImageViewCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetImageViewOpaqueCaptureDescriptorDataEXT")) - vkGetSamplerOpaqueCaptureDescriptorDataEXT = cast[proc (device: VkDevic, pInfo: ptr VkSamplerCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetSamplerOpaqueCaptureDescriptorDataEXT")) - vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT = cast[proc (device: VkDevic, pInfo: ptr VkAccelerationStructureCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT")) + vkGetDescriptorSetLayoutSizeEXT = cast[proc (device: VkDevice, layout: VkDescriptorSetLayout, pLayoutSizeInBytes: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutSizeEXT")) + vkGetDescriptorSetLayoutBindingOffsetEXT = cast[proc (device: VkDevice, layout: VkDescriptorSetLayout, binding: uint32, pOffset: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutBindingOffsetEXT")) + vkGetDescriptorEXT = cast[proc (device: VkDevice, pDescriptorInfo: ptr VkDescriptorGetInfoEXT, dataSize: uint, pDescriptor: pointer): void {.stdcall.}](vkGetProc("vkGetDescriptorEXT")) + vkCmdBindDescriptorBuffersEXT = cast[proc (commandBuffer: VkCommandBuffer, bufferCount: uint32, pBindingInfos: ptr VkDescriptorBufferBindingInfoEXT): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorBuffersEXT")) + vkCmdSetDescriptorBufferOffsetsEXT = cast[proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, firstSet: uint32, setCount: uint32, pBufferIndices: ptr uint32, pOffsets: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdSetDescriptorBufferOffsetsEXT")) + vkCmdBindDescriptorBufferEmbeddedSamplersEXT = cast[proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, set: uint32): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorBufferEmbeddedSamplersEXT")) + vkGetBufferOpaqueCaptureDescriptorDataEXT = cast[proc (device: VkDevice, pInfo: ptr VkBufferCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetBufferOpaqueCaptureDescriptorDataEXT")) + vkGetImageOpaqueCaptureDescriptorDataEXT = cast[proc (device: VkDevice, pInfo: ptr VkImageCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetImageOpaqueCaptureDescriptorDataEXT")) + vkGetImageViewOpaqueCaptureDescriptorDataEXT = cast[proc (device: VkDevice, pInfo: ptr VkImageViewCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetImageViewOpaqueCaptureDescriptorDataEXT")) + vkGetSamplerOpaqueCaptureDescriptorDataEXT = cast[proc (device: VkDevice, pInfo: ptr VkSamplerCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetSamplerOpaqueCaptureDescriptorDataEXT")) + vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT = cast[proc (device: VkDevice, pInfo: ptr VkAccelerationStructureCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT")) # Load VK_NV_fragment_shading_rate_enums proc loadVK_NV_fragment_shading_rate_enums*() = - vkCmdSetFragmentShadingRateEnumNV = cast[proc (commandBuffer: VkCommandBuffe, shadingRate: VkFragmentShadingRateN, combinerOps: array[2, VkFragmentShadingRateCombinerOpKH]): void {.stdcall.}](vkGetProc("vkCmdSetFragmentShadingRateEnumNV")) + vkCmdSetFragmentShadingRateEnumNV = cast[proc (commandBuffer: VkCommandBuffer, shadingRate: VkFragmentShadingRateNV, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): void {.stdcall.}](vkGetProc("vkCmdSetFragmentShadingRateEnumNV")) # Load VK_EXT_mesh_shader proc loadVK_EXT_mesh_shader*() = - vkCmdDrawMeshTasksEXT = cast[proc (commandBuffer: VkCommandBuffe, groupCountX: uint32_, groupCountY: uint32_, groupCountZ: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksEXT")) - vkCmdDrawMeshTasksIndirectEXT = cast[proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, drawCount: uint32_, stride: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksIndirectEXT")) - vkCmdDrawMeshTasksIndirectCountEXT = cast[proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, countBuffer: VkBuffe, countBufferOffset: VkDeviceSiz, maxDrawCount: uint32_, stride: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksIndirectCountEXT")) + vkCmdDrawMeshTasksEXT = cast[proc (commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksEXT")) + vkCmdDrawMeshTasksIndirectEXT = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksIndirectEXT")) + vkCmdDrawMeshTasksIndirectCountEXT = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksIndirectCountEXT")) # Load VK_EXT_device_fault proc loadVK_EXT_device_fault*() = - vkGetDeviceFaultInfoEXT = cast[proc (device: VkDevic, pFaultCounts: ptr VkDeviceFaultCountsEXT, pFaultInfo: ptr VkDeviceFaultInfoEXT): VkResult {.stdcall.}](vkGetProc("vkGetDeviceFaultInfoEXT")) + vkGetDeviceFaultInfoEXT = cast[proc (device: VkDevice, pFaultCounts: ptr VkDeviceFaultCountsEXT, pFaultInfo: ptr VkDeviceFaultInfoEXT): VkResult {.stdcall.}](vkGetProc("vkGetDeviceFaultInfoEXT")) # Load VK_NV_acquire_winrt_display proc loadVK_NV_acquire_winrt_display*() = - vkAcquireWinrtDisplayNV = cast[proc (physicalDevice: VkPhysicalDevic, display: VkDisplayKH): VkResult {.stdcall.}](vkGetProc("vkAcquireWinrtDisplayNV")) - vkGetWinrtDisplayNV = cast[proc (physicalDevice: VkPhysicalDevic, deviceRelativeId: uint32_, pDisplay: ptr VkDisplayKHR): VkResult {.stdcall.}](vkGetProc("vkGetWinrtDisplayNV")) + vkAcquireWinrtDisplayNV = cast[proc (physicalDevice: VkPhysicalDevice, display: VkDisplayKHR): VkResult {.stdcall.}](vkGetProc("vkAcquireWinrtDisplayNV")) + vkGetWinrtDisplayNV = cast[proc (physicalDevice: VkPhysicalDevice, deviceRelativeId: uint32, pDisplay: ptr VkDisplayKHR): VkResult {.stdcall.}](vkGetProc("vkGetWinrtDisplayNV")) # Load VK_EXT_directfb_surface proc loadVK_EXT_directfb_surface*() = - vkCreateDirectFBSurfaceEXT = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkDirectFBSurfaceCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateDirectFBSurfaceEXT")) - vkGetPhysicalDeviceDirectFBPresentationSupportEXT = cast[proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, dfb: ptr IDirectFB): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceDirectFBPresentationSupportEXT")) + vkCreateDirectFBSurfaceEXT = cast[proc (instance: VkInstance, pCreateInfo: ptr VkDirectFBSurfaceCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateDirectFBSurfaceEXT")) + vkGetPhysicalDeviceDirectFBPresentationSupportEXT = cast[proc (physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, dfb: ptr IDirectFB): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceDirectFBPresentationSupportEXT")) # Load VK_EXT_vertex_input_dynamic_state proc loadVK_EXT_vertex_input_dynamic_state*() = - vkCmdSetVertexInputEXT = cast[proc (commandBuffer: VkCommandBuffe, vertexBindingDescriptionCount: uint32_, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription2EXT, vertexAttributeDescriptionCount: uint32_, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription2EXT): void {.stdcall.}](vkGetProc("vkCmdSetVertexInputEXT")) + vkCmdSetVertexInputEXT = cast[proc (commandBuffer: VkCommandBuffer, vertexBindingDescriptionCount: uint32, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription2EXT, vertexAttributeDescriptionCount: uint32, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription2EXT): void {.stdcall.}](vkGetProc("vkCmdSetVertexInputEXT")) # Load VK_FUCHSIA_external_memory proc loadVK_FUCHSIA_external_memory*() = - vkGetMemoryZirconHandleFUCHSIA = cast[proc (device: VkDevic, pGetZirconHandleInfo: ptr VkMemoryGetZirconHandleInfoFUCHSIA, pZirconHandle: ptr zx_handle_t): VkResult {.stdcall.}](vkGetProc("vkGetMemoryZirconHandleFUCHSIA")) - vkGetMemoryZirconHandlePropertiesFUCHSIA = cast[proc (device: VkDevic, handleType: VkExternalMemoryHandleTypeFlagBit, zirconHandle: zx_handle_, pMemoryZirconHandleProperties: ptr VkMemoryZirconHandlePropertiesFUCHSIA): VkResult {.stdcall.}](vkGetProc("vkGetMemoryZirconHandlePropertiesFUCHSIA")) + vkGetMemoryZirconHandleFUCHSIA = cast[proc (device: VkDevice, pGetZirconHandleInfo: ptr VkMemoryGetZirconHandleInfoFUCHSIA, pZirconHandle: ptr zx_handle_t): VkResult {.stdcall.}](vkGetProc("vkGetMemoryZirconHandleFUCHSIA")) + vkGetMemoryZirconHandlePropertiesFUCHSIA = cast[proc (device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, zirconHandle: zx_handle_t, pMemoryZirconHandleProperties: ptr VkMemoryZirconHandlePropertiesFUCHSIA): VkResult {.stdcall.}](vkGetProc("vkGetMemoryZirconHandlePropertiesFUCHSIA")) # Load VK_FUCHSIA_external_semaphore proc loadVK_FUCHSIA_external_semaphore*() = - vkImportSemaphoreZirconHandleFUCHSIA = cast[proc (device: VkDevic, pImportSemaphoreZirconHandleInfo: ptr VkImportSemaphoreZirconHandleInfoFUCHSIA): VkResult {.stdcall.}](vkGetProc("vkImportSemaphoreZirconHandleFUCHSIA")) - vkGetSemaphoreZirconHandleFUCHSIA = cast[proc (device: VkDevic, pGetZirconHandleInfo: ptr VkSemaphoreGetZirconHandleInfoFUCHSIA, pZirconHandle: ptr zx_handle_t): VkResult {.stdcall.}](vkGetProc("vkGetSemaphoreZirconHandleFUCHSIA")) + vkImportSemaphoreZirconHandleFUCHSIA = cast[proc (device: VkDevice, pImportSemaphoreZirconHandleInfo: ptr VkImportSemaphoreZirconHandleInfoFUCHSIA): VkResult {.stdcall.}](vkGetProc("vkImportSemaphoreZirconHandleFUCHSIA")) + vkGetSemaphoreZirconHandleFUCHSIA = cast[proc (device: VkDevice, pGetZirconHandleInfo: ptr VkSemaphoreGetZirconHandleInfoFUCHSIA, pZirconHandle: ptr zx_handle_t): VkResult {.stdcall.}](vkGetProc("vkGetSemaphoreZirconHandleFUCHSIA")) # Load VK_FUCHSIA_buffer_collection proc loadVK_FUCHSIA_buffer_collection*() = - vkCreateBufferCollectionFUCHSIA = cast[proc (device: VkDevic, pCreateInfo: ptr VkBufferCollectionCreateInfoFUCHSIA, pAllocator: ptr VkAllocationCallbacks, pCollection: ptr VkBufferCollectionFUCHSIA): VkResult {.stdcall.}](vkGetProc("vkCreateBufferCollectionFUCHSIA")) - vkSetBufferCollectionImageConstraintsFUCHSIA = cast[proc (device: VkDevic, collection: VkBufferCollectionFUCHSI, pImageConstraintsInfo: ptr VkImageConstraintsInfoFUCHSIA): VkResult {.stdcall.}](vkGetProc("vkSetBufferCollectionImageConstraintsFUCHSIA")) - vkSetBufferCollectionBufferConstraintsFUCHSIA = cast[proc (device: VkDevic, collection: VkBufferCollectionFUCHSI, pBufferConstraintsInfo: ptr VkBufferConstraintsInfoFUCHSIA): VkResult {.stdcall.}](vkGetProc("vkSetBufferCollectionBufferConstraintsFUCHSIA")) - vkDestroyBufferCollectionFUCHSIA = cast[proc (device: VkDevic, collection: VkBufferCollectionFUCHSI, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyBufferCollectionFUCHSIA")) - vkGetBufferCollectionPropertiesFUCHSIA = cast[proc (device: VkDevic, collection: VkBufferCollectionFUCHSI, pProperties: ptr VkBufferCollectionPropertiesFUCHSIA): VkResult {.stdcall.}](vkGetProc("vkGetBufferCollectionPropertiesFUCHSIA")) + vkCreateBufferCollectionFUCHSIA = cast[proc (device: VkDevice, pCreateInfo: ptr VkBufferCollectionCreateInfoFUCHSIA, pAllocator: ptr VkAllocationCallbacks, pCollection: ptr VkBufferCollectionFUCHSIA): VkResult {.stdcall.}](vkGetProc("vkCreateBufferCollectionFUCHSIA")) + vkSetBufferCollectionImageConstraintsFUCHSIA = cast[proc (device: VkDevice, collection: VkBufferCollectionFUCHSIA, pImageConstraintsInfo: ptr VkImageConstraintsInfoFUCHSIA): VkResult {.stdcall.}](vkGetProc("vkSetBufferCollectionImageConstraintsFUCHSIA")) + vkSetBufferCollectionBufferConstraintsFUCHSIA = cast[proc (device: VkDevice, collection: VkBufferCollectionFUCHSIA, pBufferConstraintsInfo: ptr VkBufferConstraintsInfoFUCHSIA): VkResult {.stdcall.}](vkGetProc("vkSetBufferCollectionBufferConstraintsFUCHSIA")) + vkDestroyBufferCollectionFUCHSIA = cast[proc (device: VkDevice, collection: VkBufferCollectionFUCHSIA, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyBufferCollectionFUCHSIA")) + vkGetBufferCollectionPropertiesFUCHSIA = cast[proc (device: VkDevice, collection: VkBufferCollectionFUCHSIA, pProperties: ptr VkBufferCollectionPropertiesFUCHSIA): VkResult {.stdcall.}](vkGetProc("vkGetBufferCollectionPropertiesFUCHSIA")) # Load VK_HUAWEI_subpass_shading proc loadVK_HUAWEI_subpass_shading*() = - vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = cast[proc (device: VkDevic, renderpass: VkRenderPas, pMaxWorkgroupSize: ptr VkExtent2D): VkResult {.stdcall.}](vkGetProc("vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI")) - vkCmdSubpassShadingHUAWEI = cast[proc (commandBuffer: VkCommandBuffe): void {.stdcall.}](vkGetProc("vkCmdSubpassShadingHUAWEI")) + vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = cast[proc (device: VkDevice, renderpass: VkRenderPass, pMaxWorkgroupSize: ptr VkExtent2D): VkResult {.stdcall.}](vkGetProc("vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI")) + vkCmdSubpassShadingHUAWEI = cast[proc (commandBuffer: VkCommandBuffer): void {.stdcall.}](vkGetProc("vkCmdSubpassShadingHUAWEI")) # Load VK_HUAWEI_invocation_mask proc loadVK_HUAWEI_invocation_mask*() = - vkCmdBindInvocationMaskHUAWEI = cast[proc (commandBuffer: VkCommandBuffe, imageView: VkImageVie, imageLayout: VkImageLayou): void {.stdcall.}](vkGetProc("vkCmdBindInvocationMaskHUAWEI")) + vkCmdBindInvocationMaskHUAWEI = cast[proc (commandBuffer: VkCommandBuffer, imageView: VkImageView, imageLayout: VkImageLayout): void {.stdcall.}](vkGetProc("vkCmdBindInvocationMaskHUAWEI")) # Load VK_NV_external_memory_rdma proc loadVK_NV_external_memory_rdma*() = - vkGetMemoryRemoteAddressNV = cast[proc (device: VkDevic, pMemoryGetRemoteAddressInfo: ptr VkMemoryGetRemoteAddressInfoNV, pAddress: ptr VkRemoteAddressNV): VkResult {.stdcall.}](vkGetProc("vkGetMemoryRemoteAddressNV")) + vkGetMemoryRemoteAddressNV = cast[proc (device: VkDevice, pMemoryGetRemoteAddressInfo: ptr VkMemoryGetRemoteAddressInfoNV, pAddress: ptr VkRemoteAddressNV): VkResult {.stdcall.}](vkGetProc("vkGetMemoryRemoteAddressNV")) # Load VK_EXT_pipeline_properties proc loadVK_EXT_pipeline_properties*() = - vkGetPipelinePropertiesEXT = cast[proc (device: VkDevic, pPipelineInfo: ptr VkPipelineInfoEXT, pPipelineProperties: ptr VkBaseOutStructure): VkResult {.stdcall.}](vkGetProc("vkGetPipelinePropertiesEXT")) + vkGetPipelinePropertiesEXT = cast[proc (device: VkDevice, pPipelineInfo: ptr VkPipelineInfoEXT, pPipelineProperties: ptr VkBaseOutStructure): VkResult {.stdcall.}](vkGetProc("vkGetPipelinePropertiesEXT")) # Load VK_NV_external_sci_sync proc loadVK_NV_external_sci_sync*() = - vkGetFenceSciSyncFenceNV = cast[proc (device: VkDevic, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV, pHandle: pointer): VkResult {.stdcall.}](vkGetProc("vkGetFenceSciSyncFenceNV")) - vkGetFenceSciSyncObjNV = cast[proc (device: VkDevic, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV, pHandle: pointer): VkResult {.stdcall.}](vkGetProc("vkGetFenceSciSyncObjNV")) - vkImportFenceSciSyncFenceNV = cast[proc (device: VkDevic, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV): VkResult {.stdcall.}](vkGetProc("vkImportFenceSciSyncFenceNV")) - vkImportFenceSciSyncObjNV = cast[proc (device: VkDevic, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV): VkResult {.stdcall.}](vkGetProc("vkImportFenceSciSyncObjNV")) - vkGetPhysicalDeviceSciSyncAttributesNV = cast[proc (physicalDevice: VkPhysicalDevic, pSciSyncAttributesInfo: ptr VkSciSyncAttributesInfoNV, pAttributes: NvSciSyncAttrLis): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSciSyncAttributesNV")) - vkGetSemaphoreSciSyncObjNV = cast[proc (device: VkDevic, pGetSciSyncInfo: ptr VkSemaphoreGetSciSyncInfoNV, pHandle: pointer): VkResult {.stdcall.}](vkGetProc("vkGetSemaphoreSciSyncObjNV")) - vkImportSemaphoreSciSyncObjNV = cast[proc (device: VkDevic, pImportSemaphoreSciSyncInfo: ptr VkImportSemaphoreSciSyncInfoNV): VkResult {.stdcall.}](vkGetProc("vkImportSemaphoreSciSyncObjNV")) + vkGetFenceSciSyncFenceNV = cast[proc (device: VkDevice, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV, pHandle: pointer): VkResult {.stdcall.}](vkGetProc("vkGetFenceSciSyncFenceNV")) + vkGetFenceSciSyncObjNV = cast[proc (device: VkDevice, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV, pHandle: pointer): VkResult {.stdcall.}](vkGetProc("vkGetFenceSciSyncObjNV")) + vkImportFenceSciSyncFenceNV = cast[proc (device: VkDevice, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV): VkResult {.stdcall.}](vkGetProc("vkImportFenceSciSyncFenceNV")) + vkImportFenceSciSyncObjNV = cast[proc (device: VkDevice, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV): VkResult {.stdcall.}](vkGetProc("vkImportFenceSciSyncObjNV")) + vkGetPhysicalDeviceSciSyncAttributesNV = cast[proc (physicalDevice: VkPhysicalDevice, pSciSyncAttributesInfo: ptr VkSciSyncAttributesInfoNV, pAttributes: NvSciSyncAttrList): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSciSyncAttributesNV")) + vkGetSemaphoreSciSyncObjNV = cast[proc (device: VkDevice, pGetSciSyncInfo: ptr VkSemaphoreGetSciSyncInfoNV, pHandle: pointer): VkResult {.stdcall.}](vkGetProc("vkGetSemaphoreSciSyncObjNV")) + vkImportSemaphoreSciSyncObjNV = cast[proc (device: VkDevice, pImportSemaphoreSciSyncInfo: ptr VkImportSemaphoreSciSyncInfoNV): VkResult {.stdcall.}](vkGetProc("vkImportSemaphoreSciSyncObjNV")) # Load VK_NV_external_memory_sci_buf proc loadVK_NV_external_memory_sci_buf*() = - vkGetMemorySciBufNV = cast[proc (device: VkDevic, pGetSciBufInfo: ptr VkMemoryGetSciBufInfoNV, pHandle: ptr NvSciBufObj): VkResult {.stdcall.}](vkGetProc("vkGetMemorySciBufNV")) - vkGetPhysicalDeviceExternalMemorySciBufPropertiesNV = cast[proc (physicalDevice: VkPhysicalDevic, handleType: VkExternalMemoryHandleTypeFlagBit, handle: NvSciBufOb, pMemorySciBufProperties: ptr VkMemorySciBufPropertiesNV): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalMemorySciBufPropertiesNV")) - vkGetPhysicalDeviceSciBufAttributesNV = cast[proc (physicalDevice: VkPhysicalDevic, pAttributes: NvSciBufAttrLis): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSciBufAttributesNV")) + vkGetMemorySciBufNV = cast[proc (device: VkDevice, pGetSciBufInfo: ptr VkMemoryGetSciBufInfoNV, pHandle: ptr NvSciBufObj): VkResult {.stdcall.}](vkGetProc("vkGetMemorySciBufNV")) + vkGetPhysicalDeviceExternalMemorySciBufPropertiesNV = cast[proc (physicalDevice: VkPhysicalDevice, handleType: VkExternalMemoryHandleTypeFlagBits, handle: NvSciBufObj, pMemorySciBufProperties: ptr VkMemorySciBufPropertiesNV): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalMemorySciBufPropertiesNV")) + vkGetPhysicalDeviceSciBufAttributesNV = cast[proc (physicalDevice: VkPhysicalDevice, pAttributes: NvSciBufAttrList): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSciBufAttributesNV")) # Load VK_EXT_extended_dynamic_state2 proc loadVK_EXT_extended_dynamic_state2*() = - vkCmdSetPatchControlPointsEXT = cast[proc (commandBuffer: VkCommandBuffe, patchControlPoints: uint32_): void {.stdcall.}](vkGetProc("vkCmdSetPatchControlPointsEXT")) - vkCmdSetLogicOpEXT = cast[proc (commandBuffer: VkCommandBuffe, logicOp: VkLogicO): void {.stdcall.}](vkGetProc("vkCmdSetLogicOpEXT")) + vkCmdSetPatchControlPointsEXT = cast[proc (commandBuffer: VkCommandBuffer, patchControlPoints: uint32): void {.stdcall.}](vkGetProc("vkCmdSetPatchControlPointsEXT")) + vkCmdSetLogicOpEXT = cast[proc (commandBuffer: VkCommandBuffer, logicOp: VkLogicOp): void {.stdcall.}](vkGetProc("vkCmdSetLogicOpEXT")) # Load VK_QNX_screen_surface proc loadVK_QNX_screen_surface*() = - vkCreateScreenSurfaceQNX = cast[proc (instance: VkInstanc, pCreateInfo: ptr VkScreenSurfaceCreateInfoQNX, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateScreenSurfaceQNX")) - vkGetPhysicalDeviceScreenPresentationSupportQNX = cast[proc (physicalDevice: VkPhysicalDevic, queueFamilyIndex: uint32_, window: ptr screen_window): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceScreenPresentationSupportQNX")) + vkCreateScreenSurfaceQNX = cast[proc (instance: VkInstance, pCreateInfo: ptr VkScreenSurfaceCreateInfoQNX, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.}](vkGetProc("vkCreateScreenSurfaceQNX")) + vkGetPhysicalDeviceScreenPresentationSupportQNX = cast[proc (physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, window: ptr screen_window): VkBool32 {.stdcall.}](vkGetProc("vkGetPhysicalDeviceScreenPresentationSupportQNX")) # Load VK_EXT_color_write_enable proc loadVK_EXT_color_write_enable*() = - vkCmdSetColorWriteEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, attachmentCount: uint32_, pColorWriteEnables: ptr VkBool32 ): void {.stdcall.}](vkGetProc("vkCmdSetColorWriteEnableEXT")) + vkCmdSetColorWriteEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, attachmentCount: uint32, pColorWriteEnables: ptr VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetColorWriteEnableEXT")) # Load VK_KHR_ray_tracing_maintenance1 proc loadVK_KHR_ray_tracing_maintenance1*() = - vkCmdTraceRaysIndirect2KHR = cast[proc (commandBuffer: VkCommandBuffe, indirectDeviceAddress: VkDeviceAddres): void {.stdcall.}](vkGetProc("vkCmdTraceRaysIndirect2KHR")) + vkCmdTraceRaysIndirect2KHR = cast[proc (commandBuffer: VkCommandBuffer, indirectDeviceAddress: VkDeviceAddress): void {.stdcall.}](vkGetProc("vkCmdTraceRaysIndirect2KHR")) # Load VK_EXT_multi_draw proc loadVK_EXT_multi_draw*() = - vkCmdDrawMultiEXT = cast[proc (commandBuffer: VkCommandBuffe, drawCount: uint32_, pVertexInfo: ptr VkMultiDrawInfoEXT, instanceCount: uint32_, firstInstance: uint32_, stride: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawMultiEXT")) - vkCmdDrawMultiIndexedEXT = cast[proc (commandBuffer: VkCommandBuffe, drawCount: uint32_, pIndexInfo: ptr VkMultiDrawIndexedInfoEXT, instanceCount: uint32_, firstInstance: uint32_, stride: uint32_, pVertexOffset: ptr int32): void {.stdcall.}](vkGetProc("vkCmdDrawMultiIndexedEXT")) + vkCmdDrawMultiEXT = cast[proc (commandBuffer: VkCommandBuffer, drawCount: uint32, pVertexInfo: ptr VkMultiDrawInfoEXT, instanceCount: uint32, firstInstance: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawMultiEXT")) + vkCmdDrawMultiIndexedEXT = cast[proc (commandBuffer: VkCommandBuffer, drawCount: uint32, pIndexInfo: ptr VkMultiDrawIndexedInfoEXT, instanceCount: uint32, firstInstance: uint32, stride: uint32, pVertexOffset: ptr int32): void {.stdcall.}](vkGetProc("vkCmdDrawMultiIndexedEXT")) # Load VK_EXT_opacity_micromap proc loadVK_EXT_opacity_micromap*() = - vkCreateMicromapEXT = cast[proc (device: VkDevic, pCreateInfo: ptr VkMicromapCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pMicromap: ptr VkMicromapEXT ): VkResult {.stdcall.}](vkGetProc("vkCreateMicromapEXT")) - vkDestroyMicromapEXT = cast[proc (device: VkDevic, micromap: VkMicromapEX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyMicromapEXT")) - vkCmdBuildMicromapsEXT = cast[proc (commandBuffer: VkCommandBuffe, infoCount: uint32_, pInfos: ptr VkMicromapBuildInfoEXT): void {.stdcall.}](vkGetProc("vkCmdBuildMicromapsEXT")) - vkBuildMicromapsEXT = cast[proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, infoCount: uint32_, pInfos: ptr VkMicromapBuildInfoEXT): VkResult {.stdcall.}](vkGetProc("vkBuildMicromapsEXT")) - vkCopyMicromapEXT = cast[proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pInfo: ptr VkCopyMicromapInfoEXT): VkResult {.stdcall.}](vkGetProc("vkCopyMicromapEXT")) - vkCopyMicromapToMemoryEXT = cast[proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pInfo: ptr VkCopyMicromapToMemoryInfoEXT): VkResult {.stdcall.}](vkGetProc("vkCopyMicromapToMemoryEXT")) - vkCopyMemoryToMicromapEXT = cast[proc (device: VkDevic, deferredOperation: VkDeferredOperationKH, pInfo: ptr VkCopyMemoryToMicromapInfoEXT): VkResult {.stdcall.}](vkGetProc("vkCopyMemoryToMicromapEXT")) - vkWriteMicromapsPropertiesEXT = cast[proc (device: VkDevic, micromapCount: uint32_, pMicromaps: ptr VkMicromapEXT, queryType: VkQueryTyp, dataSize: size_, pData: pointer, stride: size_): VkResult {.stdcall.}](vkGetProc("vkWriteMicromapsPropertiesEXT")) - vkCmdCopyMicromapEXT = cast[proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkCopyMicromapInfoEXT): void {.stdcall.}](vkGetProc("vkCmdCopyMicromapEXT")) - vkCmdCopyMicromapToMemoryEXT = cast[proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkCopyMicromapToMemoryInfoEXT): void {.stdcall.}](vkGetProc("vkCmdCopyMicromapToMemoryEXT")) - vkCmdCopyMemoryToMicromapEXT = cast[proc (commandBuffer: VkCommandBuffe, pInfo: ptr VkCopyMemoryToMicromapInfoEXT): void {.stdcall.}](vkGetProc("vkCmdCopyMemoryToMicromapEXT")) - vkCmdWriteMicromapsPropertiesEXT = cast[proc (commandBuffer: VkCommandBuffe, micromapCount: uint32_, pMicromaps: ptr VkMicromapEXT, queryType: VkQueryTyp, queryPool: VkQueryPoo, firstQuery: uint32_): void {.stdcall.}](vkGetProc("vkCmdWriteMicromapsPropertiesEXT")) - vkGetDeviceMicromapCompatibilityEXT = cast[proc (device: VkDevic, pVersionInfo: ptr VkMicromapVersionInfoEXT, pCompatibility: ptr VkAccelerationStructureCompatibilityKHR): void {.stdcall.}](vkGetProc("vkGetDeviceMicromapCompatibilityEXT")) - vkGetMicromapBuildSizesEXT = cast[proc (device: VkDevic, buildType: VkAccelerationStructureBuildTypeKH, pBuildInfo: ptr VkMicromapBuildInfoEXT , pSizeInfo: ptr VkMicromapBuildSizesInfoEXT ): void {.stdcall.}](vkGetProc("vkGetMicromapBuildSizesEXT")) + vkCreateMicromapEXT = cast[proc (device: VkDevice, pCreateInfo: ptr VkMicromapCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pMicromap: ptr VkMicromapEXT): VkResult {.stdcall.}](vkGetProc("vkCreateMicromapEXT")) + vkDestroyMicromapEXT = cast[proc (device: VkDevice, micromap: VkMicromapEXT, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyMicromapEXT")) + vkCmdBuildMicromapsEXT = cast[proc (commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkMicromapBuildInfoEXT): void {.stdcall.}](vkGetProc("vkCmdBuildMicromapsEXT")) + vkBuildMicromapsEXT = cast[proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, infoCount: uint32, pInfos: ptr VkMicromapBuildInfoEXT): VkResult {.stdcall.}](vkGetProc("vkBuildMicromapsEXT")) + vkCopyMicromapEXT = cast[proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMicromapInfoEXT): VkResult {.stdcall.}](vkGetProc("vkCopyMicromapEXT")) + vkCopyMicromapToMemoryEXT = cast[proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMicromapToMemoryInfoEXT): VkResult {.stdcall.}](vkGetProc("vkCopyMicromapToMemoryEXT")) + vkCopyMemoryToMicromapEXT = cast[proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMemoryToMicromapInfoEXT): VkResult {.stdcall.}](vkGetProc("vkCopyMemoryToMicromapEXT")) + vkWriteMicromapsPropertiesEXT = cast[proc (device: VkDevice, micromapCount: uint32, pMicromaps: ptr VkMicromapEXT, queryType: VkQueryType, dataSize: uint, pData: pointer, stride: uint): VkResult {.stdcall.}](vkGetProc("vkWriteMicromapsPropertiesEXT")) + vkCmdCopyMicromapEXT = cast[proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMicromapInfoEXT): void {.stdcall.}](vkGetProc("vkCmdCopyMicromapEXT")) + vkCmdCopyMicromapToMemoryEXT = cast[proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMicromapToMemoryInfoEXT): void {.stdcall.}](vkGetProc("vkCmdCopyMicromapToMemoryEXT")) + vkCmdCopyMemoryToMicromapEXT = cast[proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMemoryToMicromapInfoEXT): void {.stdcall.}](vkGetProc("vkCmdCopyMemoryToMicromapEXT")) + vkCmdWriteMicromapsPropertiesEXT = cast[proc (commandBuffer: VkCommandBuffer, micromapCount: uint32, pMicromaps: ptr VkMicromapEXT, queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteMicromapsPropertiesEXT")) + vkGetDeviceMicromapCompatibilityEXT = cast[proc (device: VkDevice, pVersionInfo: ptr VkMicromapVersionInfoEXT, pCompatibility: ptr VkAccelerationStructureCompatibilityKHR): void {.stdcall.}](vkGetProc("vkGetDeviceMicromapCompatibilityEXT")) + vkGetMicromapBuildSizesEXT = cast[proc (device: VkDevice, buildType: VkAccelerationStructureBuildTypeKHR, pBuildInfo: ptr VkMicromapBuildInfoEXT, pSizeInfo: ptr VkMicromapBuildSizesInfoEXT): void {.stdcall.}](vkGetProc("vkGetMicromapBuildSizesEXT")) # Load VK_HUAWEI_cluster_culling_shader proc loadVK_HUAWEI_cluster_culling_shader*() = - vkCmdDrawClusterHUAWEI = cast[proc (commandBuffer: VkCommandBuffe, groupCountX: uint32_, groupCountY: uint32_, groupCountZ: uint32_): void {.stdcall.}](vkGetProc("vkCmdDrawClusterHUAWEI")) - vkCmdDrawClusterIndirectHUAWEI = cast[proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz): void {.stdcall.}](vkGetProc("vkCmdDrawClusterIndirectHUAWEI")) + vkCmdDrawClusterHUAWEI = cast[proc (commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawClusterHUAWEI")) + vkCmdDrawClusterIndirectHUAWEI = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdDrawClusterIndirectHUAWEI")) # Load VK_EXT_pageable_device_local_memory proc loadVK_EXT_pageable_device_local_memory*() = - vkSetDeviceMemoryPriorityEXT = cast[proc (device: VkDevic, memory: VkDeviceMemor, priority: floa): void {.stdcall.}](vkGetProc("vkSetDeviceMemoryPriorityEXT")) + vkSetDeviceMemoryPriorityEXT = cast[proc (device: VkDevice, memory: VkDeviceMemory, priority: float32): void {.stdcall.}](vkGetProc("vkSetDeviceMemoryPriorityEXT")) # Load VK_VALVE_descriptor_set_host_mapping proc loadVK_VALVE_descriptor_set_host_mapping*() = - vkGetDescriptorSetLayoutHostMappingInfoVALVE = cast[proc (device: VkDevic, pBindingReference: ptr VkDescriptorSetBindingReferenceVALVE, pHostMapping: ptr VkDescriptorSetLayoutHostMappingInfoVALVE): void {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutHostMappingInfoVALVE")) - vkGetDescriptorSetHostMappingVALVE = cast[proc (device: VkDevic, descriptorSet: VkDescriptorSe, ppData: ptr pointer): void {.stdcall.}](vkGetProc("vkGetDescriptorSetHostMappingVALVE")) + vkGetDescriptorSetLayoutHostMappingInfoVALVE = cast[proc (device: VkDevice, pBindingReference: ptr VkDescriptorSetBindingReferenceVALVE, pHostMapping: ptr VkDescriptorSetLayoutHostMappingInfoVALVE): void {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutHostMappingInfoVALVE")) + vkGetDescriptorSetHostMappingVALVE = cast[proc (device: VkDevice, descriptorSet: VkDescriptorSet, ppData: ptr pointer): void {.stdcall.}](vkGetProc("vkGetDescriptorSetHostMappingVALVE")) # Load VK_NV_copy_memory_indirect proc loadVK_NV_copy_memory_indirect*() = - vkCmdCopyMemoryIndirectNV = cast[proc (commandBuffer: VkCommandBuffe, copyBufferAddress: VkDeviceAddres, copyCount: uint32_, stride: uint32_): void {.stdcall.}](vkGetProc("vkCmdCopyMemoryIndirectNV")) - vkCmdCopyMemoryToImageIndirectNV = cast[proc (commandBuffer: VkCommandBuffe, copyBufferAddress: VkDeviceAddres, copyCount: uint32_, stride: uint32_, dstImage: VkImag, dstImageLayout: VkImageLayou, pImageSubresources: ptr VkImageSubresourceLayers): void {.stdcall.}](vkGetProc("vkCmdCopyMemoryToImageIndirectNV")) + vkCmdCopyMemoryIndirectNV = cast[proc (commandBuffer: VkCommandBuffer, copyBufferAddress: VkDeviceAddress, copyCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdCopyMemoryIndirectNV")) + vkCmdCopyMemoryToImageIndirectNV = cast[proc (commandBuffer: VkCommandBuffer, copyBufferAddress: VkDeviceAddress, copyCount: uint32, stride: uint32, dstImage: VkImage, dstImageLayout: VkImageLayout, pImageSubresources: ptr VkImageSubresourceLayers): void {.stdcall.}](vkGetProc("vkCmdCopyMemoryToImageIndirectNV")) # Load VK_NV_memory_decompression proc loadVK_NV_memory_decompression*() = - vkCmdDecompressMemoryNV = cast[proc (commandBuffer: VkCommandBuffe, decompressRegionCount: uint32_, pDecompressMemoryRegions: ptr VkDecompressMemoryRegionNV): void {.stdcall.}](vkGetProc("vkCmdDecompressMemoryNV")) - vkCmdDecompressMemoryIndirectCountNV = cast[proc (commandBuffer: VkCommandBuffe, indirectCommandsAddress: VkDeviceAddres, indirectCommandsCountAddress: VkDeviceAddres, stride: uint32_): void {.stdcall.}](vkGetProc("vkCmdDecompressMemoryIndirectCountNV")) + vkCmdDecompressMemoryNV = cast[proc (commandBuffer: VkCommandBuffer, decompressRegionCount: uint32, pDecompressMemoryRegions: ptr VkDecompressMemoryRegionNV): void {.stdcall.}](vkGetProc("vkCmdDecompressMemoryNV")) + vkCmdDecompressMemoryIndirectCountNV = cast[proc (commandBuffer: VkCommandBuffer, indirectCommandsAddress: VkDeviceAddress, indirectCommandsCountAddress: VkDeviceAddress, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDecompressMemoryIndirectCountNV")) # Load VK_NV_device_generated_commands_compute proc loadVK_NV_device_generated_commands_compute*() = - vkGetPipelineIndirectMemoryRequirementsNV = cast[proc (device: VkDevic, pCreateInfo: ptr VkComputePipelineCreateInfo, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetPipelineIndirectMemoryRequirementsNV")) - vkCmdUpdatePipelineIndirectBufferNV = cast[proc (commandBuffer: VkCommandBuffe, pipelineBindPoint: VkPipelineBindPoin, pipeline: VkPipelin): void {.stdcall.}](vkGetProc("vkCmdUpdatePipelineIndirectBufferNV")) - vkGetPipelineIndirectDeviceAddressNV = cast[proc (device: VkDevic, pInfo: ptr VkPipelineIndirectDeviceAddressInfoNV): VkDeviceAddress {.stdcall.}](vkGetProc("vkGetPipelineIndirectDeviceAddressNV")) + vkGetPipelineIndirectMemoryRequirementsNV = cast[proc (device: VkDevice, pCreateInfo: ptr VkComputePipelineCreateInfo, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetPipelineIndirectMemoryRequirementsNV")) + vkCmdUpdatePipelineIndirectBufferNV = cast[proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline): void {.stdcall.}](vkGetProc("vkCmdUpdatePipelineIndirectBufferNV")) + vkGetPipelineIndirectDeviceAddressNV = cast[proc (device: VkDevice, pInfo: ptr VkPipelineIndirectDeviceAddressInfoNV): VkDeviceAddress {.stdcall.}](vkGetProc("vkGetPipelineIndirectDeviceAddressNV")) # Load VK_EXT_extended_dynamic_state3 proc loadVK_EXT_extended_dynamic_state3*() = - vkCmdSetDepthClampEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, depthClampEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetDepthClampEnableEXT")) - vkCmdSetPolygonModeEXT = cast[proc (commandBuffer: VkCommandBuffe, polygonMode: VkPolygonMod): void {.stdcall.}](vkGetProc("vkCmdSetPolygonModeEXT")) - vkCmdSetRasterizationSamplesEXT = cast[proc (commandBuffer: VkCommandBuffe, rasterizationSamples: VkSampleCountFlagBit): void {.stdcall.}](vkGetProc("vkCmdSetRasterizationSamplesEXT")) - vkCmdSetSampleMaskEXT = cast[proc (commandBuffer: VkCommandBuffe, samples: VkSampleCountFlagBit, pSampleMask: ptr VkSampleMask ): void {.stdcall.}](vkGetProc("vkCmdSetSampleMaskEXT")) - vkCmdSetAlphaToCoverageEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, alphaToCoverageEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetAlphaToCoverageEnableEXT")) - vkCmdSetAlphaToOneEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, alphaToOneEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetAlphaToOneEnableEXT")) - vkCmdSetLogicOpEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, logicOpEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetLogicOpEnableEXT")) - vkCmdSetColorBlendEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, firstAttachment: uint32_, attachmentCount: uint32_, pColorBlendEnables: ptr VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendEnableEXT")) - vkCmdSetColorBlendEquationEXT = cast[proc (commandBuffer: VkCommandBuffe, firstAttachment: uint32_, attachmentCount: uint32_, pColorBlendEquations: ptr VkColorBlendEquationEXT): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendEquationEXT")) - vkCmdSetColorWriteMaskEXT = cast[proc (commandBuffer: VkCommandBuffe, firstAttachment: uint32_, attachmentCount: uint32_, pColorWriteMasks: ptr VkColorComponentFlags): void {.stdcall.}](vkGetProc("vkCmdSetColorWriteMaskEXT")) - vkCmdSetTessellationDomainOriginEXT = cast[proc (commandBuffer: VkCommandBuffe, domainOrigin: VkTessellationDomainOrigi): void {.stdcall.}](vkGetProc("vkCmdSetTessellationDomainOriginEXT")) - vkCmdSetRasterizationStreamEXT = cast[proc (commandBuffer: VkCommandBuffe, rasterizationStream: uint32_): void {.stdcall.}](vkGetProc("vkCmdSetRasterizationStreamEXT")) - vkCmdSetConservativeRasterizationModeEXT = cast[proc (commandBuffer: VkCommandBuffe, conservativeRasterizationMode: VkConservativeRasterizationModeEX): void {.stdcall.}](vkGetProc("vkCmdSetConservativeRasterizationModeEXT")) - vkCmdSetExtraPrimitiveOverestimationSizeEXT = cast[proc (commandBuffer: VkCommandBuffe, extraPrimitiveOverestimationSize: floa): void {.stdcall.}](vkGetProc("vkCmdSetExtraPrimitiveOverestimationSizeEXT")) - vkCmdSetDepthClipEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, depthClipEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetDepthClipEnableEXT")) - vkCmdSetSampleLocationsEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, sampleLocationsEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetSampleLocationsEnableEXT")) - vkCmdSetColorBlendAdvancedEXT = cast[proc (commandBuffer: VkCommandBuffe, firstAttachment: uint32_, attachmentCount: uint32_, pColorBlendAdvanced: ptr VkColorBlendAdvancedEXT): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendAdvancedEXT")) - vkCmdSetProvokingVertexModeEXT = cast[proc (commandBuffer: VkCommandBuffe, provokingVertexMode: VkProvokingVertexModeEX): void {.stdcall.}](vkGetProc("vkCmdSetProvokingVertexModeEXT")) - vkCmdSetLineRasterizationModeEXT = cast[proc (commandBuffer: VkCommandBuffe, lineRasterizationMode: VkLineRasterizationModeEX): void {.stdcall.}](vkGetProc("vkCmdSetLineRasterizationModeEXT")) - vkCmdSetLineStippleEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, stippledLineEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetLineStippleEnableEXT")) - vkCmdSetDepthClipNegativeOneToOneEXT = cast[proc (commandBuffer: VkCommandBuffe, negativeOneToOne: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetDepthClipNegativeOneToOneEXT")) - vkCmdSetViewportWScalingEnableNV = cast[proc (commandBuffer: VkCommandBuffe, viewportWScalingEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetViewportWScalingEnableNV")) - vkCmdSetViewportSwizzleNV = cast[proc (commandBuffer: VkCommandBuffe, firstViewport: uint32_, viewportCount: uint32_, pViewportSwizzles: ptr VkViewportSwizzleNV): void {.stdcall.}](vkGetProc("vkCmdSetViewportSwizzleNV")) - vkCmdSetCoverageToColorEnableNV = cast[proc (commandBuffer: VkCommandBuffe, coverageToColorEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorEnableNV")) - vkCmdSetCoverageToColorLocationNV = cast[proc (commandBuffer: VkCommandBuffe, coverageToColorLocation: uint32_): void {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorLocationNV")) - vkCmdSetCoverageModulationModeNV = cast[proc (commandBuffer: VkCommandBuffe, coverageModulationMode: VkCoverageModulationModeN): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationModeNV")) - vkCmdSetCoverageModulationTableEnableNV = cast[proc (commandBuffer: VkCommandBuffe, coverageModulationTableEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableEnableNV")) - vkCmdSetCoverageModulationTableNV = cast[proc (commandBuffer: VkCommandBuffe, coverageModulationTableCount: uint32_, pCoverageModulationTable: ptr float32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableNV")) - vkCmdSetShadingRateImageEnableNV = cast[proc (commandBuffer: VkCommandBuffe, shadingRateImageEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetShadingRateImageEnableNV")) - vkCmdSetRepresentativeFragmentTestEnableNV = cast[proc (commandBuffer: VkCommandBuffe, representativeFragmentTestEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetRepresentativeFragmentTestEnableNV")) - vkCmdSetCoverageReductionModeNV = cast[proc (commandBuffer: VkCommandBuffe, coverageReductionMode: VkCoverageReductionModeN): void {.stdcall.}](vkGetProc("vkCmdSetCoverageReductionModeNV")) + vkCmdSetDepthClampEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, depthClampEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthClampEnableEXT")) + vkCmdSetPolygonModeEXT = cast[proc (commandBuffer: VkCommandBuffer, polygonMode: VkPolygonMode): void {.stdcall.}](vkGetProc("vkCmdSetPolygonModeEXT")) + vkCmdSetRasterizationSamplesEXT = cast[proc (commandBuffer: VkCommandBuffer, rasterizationSamples: VkSampleCountFlagBits): void {.stdcall.}](vkGetProc("vkCmdSetRasterizationSamplesEXT")) + vkCmdSetSampleMaskEXT = cast[proc (commandBuffer: VkCommandBuffer, samples: VkSampleCountFlagBits, pSampleMask: ptr VkSampleMask): void {.stdcall.}](vkGetProc("vkCmdSetSampleMaskEXT")) + vkCmdSetAlphaToCoverageEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, alphaToCoverageEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetAlphaToCoverageEnableEXT")) + vkCmdSetAlphaToOneEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, alphaToOneEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetAlphaToOneEnableEXT")) + vkCmdSetLogicOpEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, logicOpEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetLogicOpEnableEXT")) + vkCmdSetColorBlendEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEnables: ptr VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendEnableEXT")) + vkCmdSetColorBlendEquationEXT = cast[proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEquations: ptr VkColorBlendEquationEXT): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendEquationEXT")) + vkCmdSetColorWriteMaskEXT = cast[proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorWriteMasks: ptr VkColorComponentFlags): void {.stdcall.}](vkGetProc("vkCmdSetColorWriteMaskEXT")) + vkCmdSetTessellationDomainOriginEXT = cast[proc (commandBuffer: VkCommandBuffer, domainOrigin: VkTessellationDomainOrigin): void {.stdcall.}](vkGetProc("vkCmdSetTessellationDomainOriginEXT")) + vkCmdSetRasterizationStreamEXT = cast[proc (commandBuffer: VkCommandBuffer, rasterizationStream: uint32): void {.stdcall.}](vkGetProc("vkCmdSetRasterizationStreamEXT")) + vkCmdSetConservativeRasterizationModeEXT = cast[proc (commandBuffer: VkCommandBuffer, conservativeRasterizationMode: VkConservativeRasterizationModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetConservativeRasterizationModeEXT")) + vkCmdSetExtraPrimitiveOverestimationSizeEXT = cast[proc (commandBuffer: VkCommandBuffer, extraPrimitiveOverestimationSize: float32): void {.stdcall.}](vkGetProc("vkCmdSetExtraPrimitiveOverestimationSizeEXT")) + vkCmdSetDepthClipEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, depthClipEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthClipEnableEXT")) + vkCmdSetSampleLocationsEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, sampleLocationsEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetSampleLocationsEnableEXT")) + vkCmdSetColorBlendAdvancedEXT = cast[proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendAdvanced: ptr VkColorBlendAdvancedEXT): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendAdvancedEXT")) + vkCmdSetProvokingVertexModeEXT = cast[proc (commandBuffer: VkCommandBuffer, provokingVertexMode: VkProvokingVertexModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetProvokingVertexModeEXT")) + vkCmdSetLineRasterizationModeEXT = cast[proc (commandBuffer: VkCommandBuffer, lineRasterizationMode: VkLineRasterizationModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetLineRasterizationModeEXT")) + vkCmdSetLineStippleEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, stippledLineEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetLineStippleEnableEXT")) + vkCmdSetDepthClipNegativeOneToOneEXT = cast[proc (commandBuffer: VkCommandBuffer, negativeOneToOne: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthClipNegativeOneToOneEXT")) + vkCmdSetViewportWScalingEnableNV = cast[proc (commandBuffer: VkCommandBuffer, viewportWScalingEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetViewportWScalingEnableNV")) + vkCmdSetViewportSwizzleNV = cast[proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportSwizzles: ptr VkViewportSwizzleNV): void {.stdcall.}](vkGetProc("vkCmdSetViewportSwizzleNV")) + vkCmdSetCoverageToColorEnableNV = cast[proc (commandBuffer: VkCommandBuffer, coverageToColorEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorEnableNV")) + vkCmdSetCoverageToColorLocationNV = cast[proc (commandBuffer: VkCommandBuffer, coverageToColorLocation: uint32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorLocationNV")) + vkCmdSetCoverageModulationModeNV = cast[proc (commandBuffer: VkCommandBuffer, coverageModulationMode: VkCoverageModulationModeNV): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationModeNV")) + vkCmdSetCoverageModulationTableEnableNV = cast[proc (commandBuffer: VkCommandBuffer, coverageModulationTableEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableEnableNV")) + vkCmdSetCoverageModulationTableNV = cast[proc (commandBuffer: VkCommandBuffer, coverageModulationTableCount: uint32, pCoverageModulationTable: ptr float32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableNV")) + vkCmdSetShadingRateImageEnableNV = cast[proc (commandBuffer: VkCommandBuffer, shadingRateImageEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetShadingRateImageEnableNV")) + vkCmdSetRepresentativeFragmentTestEnableNV = cast[proc (commandBuffer: VkCommandBuffer, representativeFragmentTestEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetRepresentativeFragmentTestEnableNV")) + vkCmdSetCoverageReductionModeNV = cast[proc (commandBuffer: VkCommandBuffer, coverageReductionMode: VkCoverageReductionModeNV): void {.stdcall.}](vkGetProc("vkCmdSetCoverageReductionModeNV")) # Load VK_EXT_shader_module_identifier proc loadVK_EXT_shader_module_identifier*() = - vkGetShaderModuleIdentifierEXT = cast[proc (device: VkDevic, shaderModule: VkShaderModul, pIdentifier: ptr VkShaderModuleIdentifierEXT): void {.stdcall.}](vkGetProc("vkGetShaderModuleIdentifierEXT")) - vkGetShaderModuleCreateInfoIdentifierEXT = cast[proc (device: VkDevic, pCreateInfo: ptr VkShaderModuleCreateInfo, pIdentifier: ptr VkShaderModuleIdentifierEXT): void {.stdcall.}](vkGetProc("vkGetShaderModuleCreateInfoIdentifierEXT")) + vkGetShaderModuleIdentifierEXT = cast[proc (device: VkDevice, shaderModule: VkShaderModule, pIdentifier: ptr VkShaderModuleIdentifierEXT): void {.stdcall.}](vkGetProc("vkGetShaderModuleIdentifierEXT")) + vkGetShaderModuleCreateInfoIdentifierEXT = cast[proc (device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo, pIdentifier: ptr VkShaderModuleIdentifierEXT): void {.stdcall.}](vkGetProc("vkGetShaderModuleCreateInfoIdentifierEXT")) # Load VK_NV_optical_flow proc loadVK_NV_optical_flow*() = - vkGetPhysicalDeviceOpticalFlowImageFormatsNV = cast[proc (physicalDevice: VkPhysicalDevic, pOpticalFlowImageFormatInfo: ptr VkOpticalFlowImageFormatInfoNV, pFormatCount: ptr uint32, pImageFormatProperties: ptr VkOpticalFlowImageFormatPropertiesNV): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceOpticalFlowImageFormatsNV")) - vkCreateOpticalFlowSessionNV = cast[proc (device: VkDevic, pCreateInfo: ptr VkOpticalFlowSessionCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pSession: ptr VkOpticalFlowSessionNV): VkResult {.stdcall.}](vkGetProc("vkCreateOpticalFlowSessionNV")) - vkDestroyOpticalFlowSessionNV = cast[proc (device: VkDevic, session: VkOpticalFlowSessionN, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyOpticalFlowSessionNV")) - vkBindOpticalFlowSessionImageNV = cast[proc (device: VkDevic, session: VkOpticalFlowSessionN, bindingPoint: VkOpticalFlowSessionBindingPointN, view: VkImageVie, layout: VkImageLayou): VkResult {.stdcall.}](vkGetProc("vkBindOpticalFlowSessionImageNV")) - vkCmdOpticalFlowExecuteNV = cast[proc (commandBuffer: VkCommandBuffe, session: VkOpticalFlowSessionN, pExecuteInfo: ptr VkOpticalFlowExecuteInfoNV): void {.stdcall.}](vkGetProc("vkCmdOpticalFlowExecuteNV")) + vkGetPhysicalDeviceOpticalFlowImageFormatsNV = cast[proc (physicalDevice: VkPhysicalDevice, pOpticalFlowImageFormatInfo: ptr VkOpticalFlowImageFormatInfoNV, pFormatCount: ptr uint32, pImageFormatProperties: ptr VkOpticalFlowImageFormatPropertiesNV): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceOpticalFlowImageFormatsNV")) + vkCreateOpticalFlowSessionNV = cast[proc (device: VkDevice, pCreateInfo: ptr VkOpticalFlowSessionCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pSession: ptr VkOpticalFlowSessionNV): VkResult {.stdcall.}](vkGetProc("vkCreateOpticalFlowSessionNV")) + vkDestroyOpticalFlowSessionNV = cast[proc (device: VkDevice, session: VkOpticalFlowSessionNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyOpticalFlowSessionNV")) + vkBindOpticalFlowSessionImageNV = cast[proc (device: VkDevice, session: VkOpticalFlowSessionNV, bindingPoint: VkOpticalFlowSessionBindingPointNV, view: VkImageView, layout: VkImageLayout): VkResult {.stdcall.}](vkGetProc("vkBindOpticalFlowSessionImageNV")) + vkCmdOpticalFlowExecuteNV = cast[proc (commandBuffer: VkCommandBuffer, session: VkOpticalFlowSessionNV, pExecuteInfo: ptr VkOpticalFlowExecuteInfoNV): void {.stdcall.}](vkGetProc("vkCmdOpticalFlowExecuteNV")) # Load VK_KHR_maintenance5 proc loadVK_KHR_maintenance5*() = - vkCmdBindIndexBuffer2KHR = cast[proc (commandBuffer: VkCommandBuffe, buffer: VkBuffe, offset: VkDeviceSiz, size: VkDeviceSiz, indexType: VkIndexTyp): void {.stdcall.}](vkGetProc("vkCmdBindIndexBuffer2KHR")) - vkGetRenderingAreaGranularityKHR = cast[proc (device: VkDevic, pRenderingAreaInfo: ptr VkRenderingAreaInfoKHR, pGranularity: ptr VkExtent2D): void {.stdcall.}](vkGetProc("vkGetRenderingAreaGranularityKHR")) - vkGetDeviceImageSubresourceLayoutKHR = cast[proc (device: VkDevic, pInfo: ptr VkDeviceImageSubresourceInfoKHR, pLayout: ptr VkSubresourceLayout2KHR): void {.stdcall.}](vkGetProc("vkGetDeviceImageSubresourceLayoutKHR")) - vkGetImageSubresourceLayout2KHR = cast[proc (device: VkDevic, image: VkImag, pSubresource: ptr VkImageSubresource2KHR, pLayout: ptr VkSubresourceLayout2KHR): void {.stdcall.}](vkGetProc("vkGetImageSubresourceLayout2KHR")) + vkCmdBindIndexBuffer2KHR = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize, indexType: VkIndexType): void {.stdcall.}](vkGetProc("vkCmdBindIndexBuffer2KHR")) + vkGetRenderingAreaGranularityKHR = cast[proc (device: VkDevice, pRenderingAreaInfo: ptr VkRenderingAreaInfoKHR, pGranularity: ptr VkExtent2D): void {.stdcall.}](vkGetProc("vkGetRenderingAreaGranularityKHR")) + vkGetDeviceImageSubresourceLayoutKHR = cast[proc (device: VkDevice, pInfo: ptr VkDeviceImageSubresourceInfoKHR, pLayout: ptr VkSubresourceLayout2KHR): void {.stdcall.}](vkGetProc("vkGetDeviceImageSubresourceLayoutKHR")) + vkGetImageSubresourceLayout2KHR = cast[proc (device: VkDevice, image: VkImage, pSubresource: ptr VkImageSubresource2KHR, pLayout: ptr VkSubresourceLayout2KHR): void {.stdcall.}](vkGetProc("vkGetImageSubresourceLayout2KHR")) # Load VK_EXT_shader_object proc loadVK_EXT_shader_object*() = - vkCreateShadersEXT = cast[proc (device: VkDevic, createInfoCount: uint32_, pCreateInfos: ptr VkShaderCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pShaders: ptr VkShaderEXT): VkResult {.stdcall.}](vkGetProc("vkCreateShadersEXT")) - vkDestroyShaderEXT = cast[proc (device: VkDevic, shader: VkShaderEX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyShaderEXT")) - vkGetShaderBinaryDataEXT = cast[proc (device: VkDevic, shader: VkShaderEX, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetShaderBinaryDataEXT")) - vkCmdBindShadersEXT = cast[proc (commandBuffer: VkCommandBuffe, stageCount: uint32_, pStages: ptr VkShaderStageFlagBits, pShaders: ptr VkShaderEXT): void {.stdcall.}](vkGetProc("vkCmdBindShadersEXT")) - vkCmdSetVertexInputEXT = cast[proc (commandBuffer: VkCommandBuffe, vertexBindingDescriptionCount: uint32_, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription2EXT, vertexAttributeDescriptionCount: uint32_, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription2EXT): void {.stdcall.}](vkGetProc("vkCmdSetVertexInputEXT")) - vkCmdSetPatchControlPointsEXT = cast[proc (commandBuffer: VkCommandBuffe, patchControlPoints: uint32_): void {.stdcall.}](vkGetProc("vkCmdSetPatchControlPointsEXT")) - vkCmdSetLogicOpEXT = cast[proc (commandBuffer: VkCommandBuffe, logicOp: VkLogicO): void {.stdcall.}](vkGetProc("vkCmdSetLogicOpEXT")) - vkCmdSetTessellationDomainOriginEXT = cast[proc (commandBuffer: VkCommandBuffe, domainOrigin: VkTessellationDomainOrigi): void {.stdcall.}](vkGetProc("vkCmdSetTessellationDomainOriginEXT")) - vkCmdSetDepthClampEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, depthClampEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetDepthClampEnableEXT")) - vkCmdSetPolygonModeEXT = cast[proc (commandBuffer: VkCommandBuffe, polygonMode: VkPolygonMod): void {.stdcall.}](vkGetProc("vkCmdSetPolygonModeEXT")) - vkCmdSetRasterizationSamplesEXT = cast[proc (commandBuffer: VkCommandBuffe, rasterizationSamples: VkSampleCountFlagBit): void {.stdcall.}](vkGetProc("vkCmdSetRasterizationSamplesEXT")) - vkCmdSetSampleMaskEXT = cast[proc (commandBuffer: VkCommandBuffe, samples: VkSampleCountFlagBit, pSampleMask: ptr VkSampleMask ): void {.stdcall.}](vkGetProc("vkCmdSetSampleMaskEXT")) - vkCmdSetAlphaToCoverageEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, alphaToCoverageEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetAlphaToCoverageEnableEXT")) - vkCmdSetAlphaToOneEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, alphaToOneEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetAlphaToOneEnableEXT")) - vkCmdSetLogicOpEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, logicOpEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetLogicOpEnableEXT")) - vkCmdSetColorBlendEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, firstAttachment: uint32_, attachmentCount: uint32_, pColorBlendEnables: ptr VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendEnableEXT")) - vkCmdSetColorBlendEquationEXT = cast[proc (commandBuffer: VkCommandBuffe, firstAttachment: uint32_, attachmentCount: uint32_, pColorBlendEquations: ptr VkColorBlendEquationEXT): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendEquationEXT")) - vkCmdSetColorWriteMaskEXT = cast[proc (commandBuffer: VkCommandBuffe, firstAttachment: uint32_, attachmentCount: uint32_, pColorWriteMasks: ptr VkColorComponentFlags): void {.stdcall.}](vkGetProc("vkCmdSetColorWriteMaskEXT")) - vkCmdSetRasterizationStreamEXT = cast[proc (commandBuffer: VkCommandBuffe, rasterizationStream: uint32_): void {.stdcall.}](vkGetProc("vkCmdSetRasterizationStreamEXT")) - vkCmdSetConservativeRasterizationModeEXT = cast[proc (commandBuffer: VkCommandBuffe, conservativeRasterizationMode: VkConservativeRasterizationModeEX): void {.stdcall.}](vkGetProc("vkCmdSetConservativeRasterizationModeEXT")) - vkCmdSetExtraPrimitiveOverestimationSizeEXT = cast[proc (commandBuffer: VkCommandBuffe, extraPrimitiveOverestimationSize: floa): void {.stdcall.}](vkGetProc("vkCmdSetExtraPrimitiveOverestimationSizeEXT")) - vkCmdSetDepthClipEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, depthClipEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetDepthClipEnableEXT")) - vkCmdSetSampleLocationsEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, sampleLocationsEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetSampleLocationsEnableEXT")) - vkCmdSetColorBlendAdvancedEXT = cast[proc (commandBuffer: VkCommandBuffe, firstAttachment: uint32_, attachmentCount: uint32_, pColorBlendAdvanced: ptr VkColorBlendAdvancedEXT): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendAdvancedEXT")) - vkCmdSetProvokingVertexModeEXT = cast[proc (commandBuffer: VkCommandBuffe, provokingVertexMode: VkProvokingVertexModeEX): void {.stdcall.}](vkGetProc("vkCmdSetProvokingVertexModeEXT")) - vkCmdSetLineRasterizationModeEXT = cast[proc (commandBuffer: VkCommandBuffe, lineRasterizationMode: VkLineRasterizationModeEX): void {.stdcall.}](vkGetProc("vkCmdSetLineRasterizationModeEXT")) - vkCmdSetLineStippleEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, stippledLineEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetLineStippleEnableEXT")) - vkCmdSetDepthClipNegativeOneToOneEXT = cast[proc (commandBuffer: VkCommandBuffe, negativeOneToOne: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetDepthClipNegativeOneToOneEXT")) - vkCmdSetViewportWScalingEnableNV = cast[proc (commandBuffer: VkCommandBuffe, viewportWScalingEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetViewportWScalingEnableNV")) - vkCmdSetViewportSwizzleNV = cast[proc (commandBuffer: VkCommandBuffe, firstViewport: uint32_, viewportCount: uint32_, pViewportSwizzles: ptr VkViewportSwizzleNV): void {.stdcall.}](vkGetProc("vkCmdSetViewportSwizzleNV")) - vkCmdSetCoverageToColorEnableNV = cast[proc (commandBuffer: VkCommandBuffe, coverageToColorEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorEnableNV")) - vkCmdSetCoverageToColorLocationNV = cast[proc (commandBuffer: VkCommandBuffe, coverageToColorLocation: uint32_): void {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorLocationNV")) - vkCmdSetCoverageModulationModeNV = cast[proc (commandBuffer: VkCommandBuffe, coverageModulationMode: VkCoverageModulationModeN): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationModeNV")) - vkCmdSetCoverageModulationTableEnableNV = cast[proc (commandBuffer: VkCommandBuffe, coverageModulationTableEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableEnableNV")) - vkCmdSetCoverageModulationTableNV = cast[proc (commandBuffer: VkCommandBuffe, coverageModulationTableCount: uint32_, pCoverageModulationTable: ptr float32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableNV")) - vkCmdSetShadingRateImageEnableNV = cast[proc (commandBuffer: VkCommandBuffe, shadingRateImageEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetShadingRateImageEnableNV")) - vkCmdSetRepresentativeFragmentTestEnableNV = cast[proc (commandBuffer: VkCommandBuffe, representativeFragmentTestEnable: VkBool3): void {.stdcall.}](vkGetProc("vkCmdSetRepresentativeFragmentTestEnableNV")) - vkCmdSetCoverageReductionModeNV = cast[proc (commandBuffer: VkCommandBuffe, coverageReductionMode: VkCoverageReductionModeN): void {.stdcall.}](vkGetProc("vkCmdSetCoverageReductionModeNV")) + vkCreateShadersEXT = cast[proc (device: VkDevice, createInfoCount: uint32, pCreateInfos: ptr VkShaderCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pShaders: ptr VkShaderEXT): VkResult {.stdcall.}](vkGetProc("vkCreateShadersEXT")) + vkDestroyShaderEXT = cast[proc (device: VkDevice, shader: VkShaderEXT, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyShaderEXT")) + vkGetShaderBinaryDataEXT = cast[proc (device: VkDevice, shader: VkShaderEXT, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetShaderBinaryDataEXT")) + vkCmdBindShadersEXT = cast[proc (commandBuffer: VkCommandBuffer, stageCount: uint32, pStages: ptr VkShaderStageFlagBits, pShaders: ptr VkShaderEXT): void {.stdcall.}](vkGetProc("vkCmdBindShadersEXT")) + vkCmdSetVertexInputEXT = cast[proc (commandBuffer: VkCommandBuffer, vertexBindingDescriptionCount: uint32, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription2EXT, vertexAttributeDescriptionCount: uint32, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription2EXT): void {.stdcall.}](vkGetProc("vkCmdSetVertexInputEXT")) + vkCmdSetPatchControlPointsEXT = cast[proc (commandBuffer: VkCommandBuffer, patchControlPoints: uint32): void {.stdcall.}](vkGetProc("vkCmdSetPatchControlPointsEXT")) + vkCmdSetLogicOpEXT = cast[proc (commandBuffer: VkCommandBuffer, logicOp: VkLogicOp): void {.stdcall.}](vkGetProc("vkCmdSetLogicOpEXT")) + vkCmdSetTessellationDomainOriginEXT = cast[proc (commandBuffer: VkCommandBuffer, domainOrigin: VkTessellationDomainOrigin): void {.stdcall.}](vkGetProc("vkCmdSetTessellationDomainOriginEXT")) + vkCmdSetDepthClampEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, depthClampEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthClampEnableEXT")) + vkCmdSetPolygonModeEXT = cast[proc (commandBuffer: VkCommandBuffer, polygonMode: VkPolygonMode): void {.stdcall.}](vkGetProc("vkCmdSetPolygonModeEXT")) + vkCmdSetRasterizationSamplesEXT = cast[proc (commandBuffer: VkCommandBuffer, rasterizationSamples: VkSampleCountFlagBits): void {.stdcall.}](vkGetProc("vkCmdSetRasterizationSamplesEXT")) + vkCmdSetSampleMaskEXT = cast[proc (commandBuffer: VkCommandBuffer, samples: VkSampleCountFlagBits, pSampleMask: ptr VkSampleMask): void {.stdcall.}](vkGetProc("vkCmdSetSampleMaskEXT")) + vkCmdSetAlphaToCoverageEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, alphaToCoverageEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetAlphaToCoverageEnableEXT")) + vkCmdSetAlphaToOneEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, alphaToOneEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetAlphaToOneEnableEXT")) + vkCmdSetLogicOpEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, logicOpEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetLogicOpEnableEXT")) + vkCmdSetColorBlendEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEnables: ptr VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendEnableEXT")) + vkCmdSetColorBlendEquationEXT = cast[proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEquations: ptr VkColorBlendEquationEXT): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendEquationEXT")) + vkCmdSetColorWriteMaskEXT = cast[proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorWriteMasks: ptr VkColorComponentFlags): void {.stdcall.}](vkGetProc("vkCmdSetColorWriteMaskEXT")) + vkCmdSetRasterizationStreamEXT = cast[proc (commandBuffer: VkCommandBuffer, rasterizationStream: uint32): void {.stdcall.}](vkGetProc("vkCmdSetRasterizationStreamEXT")) + vkCmdSetConservativeRasterizationModeEXT = cast[proc (commandBuffer: VkCommandBuffer, conservativeRasterizationMode: VkConservativeRasterizationModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetConservativeRasterizationModeEXT")) + vkCmdSetExtraPrimitiveOverestimationSizeEXT = cast[proc (commandBuffer: VkCommandBuffer, extraPrimitiveOverestimationSize: float32): void {.stdcall.}](vkGetProc("vkCmdSetExtraPrimitiveOverestimationSizeEXT")) + vkCmdSetDepthClipEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, depthClipEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthClipEnableEXT")) + vkCmdSetSampleLocationsEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, sampleLocationsEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetSampleLocationsEnableEXT")) + vkCmdSetColorBlendAdvancedEXT = cast[proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendAdvanced: ptr VkColorBlendAdvancedEXT): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendAdvancedEXT")) + vkCmdSetProvokingVertexModeEXT = cast[proc (commandBuffer: VkCommandBuffer, provokingVertexMode: VkProvokingVertexModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetProvokingVertexModeEXT")) + vkCmdSetLineRasterizationModeEXT = cast[proc (commandBuffer: VkCommandBuffer, lineRasterizationMode: VkLineRasterizationModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetLineRasterizationModeEXT")) + vkCmdSetLineStippleEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, stippledLineEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetLineStippleEnableEXT")) + vkCmdSetDepthClipNegativeOneToOneEXT = cast[proc (commandBuffer: VkCommandBuffer, negativeOneToOne: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthClipNegativeOneToOneEXT")) + vkCmdSetViewportWScalingEnableNV = cast[proc (commandBuffer: VkCommandBuffer, viewportWScalingEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetViewportWScalingEnableNV")) + vkCmdSetViewportSwizzleNV = cast[proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportSwizzles: ptr VkViewportSwizzleNV): void {.stdcall.}](vkGetProc("vkCmdSetViewportSwizzleNV")) + vkCmdSetCoverageToColorEnableNV = cast[proc (commandBuffer: VkCommandBuffer, coverageToColorEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorEnableNV")) + vkCmdSetCoverageToColorLocationNV = cast[proc (commandBuffer: VkCommandBuffer, coverageToColorLocation: uint32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorLocationNV")) + vkCmdSetCoverageModulationModeNV = cast[proc (commandBuffer: VkCommandBuffer, coverageModulationMode: VkCoverageModulationModeNV): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationModeNV")) + vkCmdSetCoverageModulationTableEnableNV = cast[proc (commandBuffer: VkCommandBuffer, coverageModulationTableEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableEnableNV")) + vkCmdSetCoverageModulationTableNV = cast[proc (commandBuffer: VkCommandBuffer, coverageModulationTableCount: uint32, pCoverageModulationTable: ptr float32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableNV")) + vkCmdSetShadingRateImageEnableNV = cast[proc (commandBuffer: VkCommandBuffer, shadingRateImageEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetShadingRateImageEnableNV")) + vkCmdSetRepresentativeFragmentTestEnableNV = cast[proc (commandBuffer: VkCommandBuffer, representativeFragmentTestEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetRepresentativeFragmentTestEnableNV")) + vkCmdSetCoverageReductionModeNV = cast[proc (commandBuffer: VkCommandBuffer, coverageReductionMode: VkCoverageReductionModeNV): void {.stdcall.}](vkGetProc("vkCmdSetCoverageReductionModeNV")) # Load VK_QCOM_tile_properties proc loadVK_QCOM_tile_properties*() = - vkGetFramebufferTilePropertiesQCOM = cast[proc (device: VkDevic, framebuffer: VkFramebuffe, pPropertiesCount: ptr uint32, pProperties: ptr VkTilePropertiesQCOM): VkResult {.stdcall.}](vkGetProc("vkGetFramebufferTilePropertiesQCOM")) - vkGetDynamicRenderingTilePropertiesQCOM = cast[proc (device: VkDevic, pRenderingInfo: ptr VkRenderingInfo, pProperties: ptr VkTilePropertiesQCOM): VkResult {.stdcall.}](vkGetProc("vkGetDynamicRenderingTilePropertiesQCOM")) + vkGetFramebufferTilePropertiesQCOM = cast[proc (device: VkDevice, framebuffer: VkFramebuffer, pPropertiesCount: ptr uint32, pProperties: ptr VkTilePropertiesQCOM): VkResult {.stdcall.}](vkGetProc("vkGetFramebufferTilePropertiesQCOM")) + vkGetDynamicRenderingTilePropertiesQCOM = cast[proc (device: VkDevice, pRenderingInfo: ptr VkRenderingInfo, pProperties: ptr VkTilePropertiesQCOM): VkResult {.stdcall.}](vkGetProc("vkGetDynamicRenderingTilePropertiesQCOM")) # Load VK_NV_external_sci_sync2 proc loadVK_NV_external_sci_sync2*() = - vkCreateSemaphoreSciSyncPoolNV = cast[proc (device: VkDevic, pCreateInfo: ptr VkSemaphoreSciSyncPoolCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pSemaphorePool: ptr VkSemaphoreSciSyncPoolNV): VkResult {.stdcall.}](vkGetProc("vkCreateSemaphoreSciSyncPoolNV")) - vkDestroySemaphoreSciSyncPoolNV = cast[proc (device: VkDevic, semaphorePool: VkSemaphoreSciSyncPoolN, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySemaphoreSciSyncPoolNV")) - vkGetFenceSciSyncFenceNV = cast[proc (device: VkDevic, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV, pHandle: pointer): VkResult {.stdcall.}](vkGetProc("vkGetFenceSciSyncFenceNV")) - vkGetFenceSciSyncObjNV = cast[proc (device: VkDevic, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV, pHandle: pointer): VkResult {.stdcall.}](vkGetProc("vkGetFenceSciSyncObjNV")) - vkImportFenceSciSyncFenceNV = cast[proc (device: VkDevic, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV): VkResult {.stdcall.}](vkGetProc("vkImportFenceSciSyncFenceNV")) - vkImportFenceSciSyncObjNV = cast[proc (device: VkDevic, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV): VkResult {.stdcall.}](vkGetProc("vkImportFenceSciSyncObjNV")) - vkGetPhysicalDeviceSciSyncAttributesNV = cast[proc (physicalDevice: VkPhysicalDevic, pSciSyncAttributesInfo: ptr VkSciSyncAttributesInfoNV, pAttributes: NvSciSyncAttrLis): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSciSyncAttributesNV")) + vkCreateSemaphoreSciSyncPoolNV = cast[proc (device: VkDevice, pCreateInfo: ptr VkSemaphoreSciSyncPoolCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pSemaphorePool: ptr VkSemaphoreSciSyncPoolNV): VkResult {.stdcall.}](vkGetProc("vkCreateSemaphoreSciSyncPoolNV")) + vkDestroySemaphoreSciSyncPoolNV = cast[proc (device: VkDevice, semaphorePool: VkSemaphoreSciSyncPoolNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySemaphoreSciSyncPoolNV")) + vkGetFenceSciSyncFenceNV = cast[proc (device: VkDevice, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV, pHandle: pointer): VkResult {.stdcall.}](vkGetProc("vkGetFenceSciSyncFenceNV")) + vkGetFenceSciSyncObjNV = cast[proc (device: VkDevice, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV, pHandle: pointer): VkResult {.stdcall.}](vkGetProc("vkGetFenceSciSyncObjNV")) + vkImportFenceSciSyncFenceNV = cast[proc (device: VkDevice, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV): VkResult {.stdcall.}](vkGetProc("vkImportFenceSciSyncFenceNV")) + vkImportFenceSciSyncObjNV = cast[proc (device: VkDevice, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV): VkResult {.stdcall.}](vkGetProc("vkImportFenceSciSyncObjNV")) + vkGetPhysicalDeviceSciSyncAttributesNV = cast[proc (physicalDevice: VkPhysicalDevice, pSciSyncAttributesInfo: ptr VkSciSyncAttributesInfoNV, pAttributes: NvSciSyncAttrList): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSciSyncAttributesNV")) # Load VK_NV_low_latency2 proc loadVK_NV_low_latency2*() = - vkSetLatencySleepModeNV = cast[proc (device: VkDevic, swapchain: VkSwapchainKH, pSleepModeInfo: ptr VkLatencySleepModeInfoNV): VkResult {.stdcall.}](vkGetProc("vkSetLatencySleepModeNV")) - vkLatencySleepNV = cast[proc (device: VkDevic, swapchain: VkSwapchainKH, pSleepInfo: ptr VkLatencySleepInfoNV): VkResult {.stdcall.}](vkGetProc("vkLatencySleepNV")) - vkSetLatencyMarkerNV = cast[proc (device: VkDevic, swapchain: VkSwapchainKH, pLatencyMarkerInfo: ptr VkSetLatencyMarkerInfoNV): void {.stdcall.}](vkGetProc("vkSetLatencyMarkerNV")) - vkGetLatencyTimingsNV = cast[proc (device: VkDevic, swapchain: VkSwapchainKH, pLatencyMarkerInfo: ptr VkGetLatencyMarkerInfoNV): void {.stdcall.}](vkGetProc("vkGetLatencyTimingsNV")) - vkQueueNotifyOutOfBandNV = cast[proc (queue: VkQueu, pQueueTypeInfo: ptr VkOutOfBandQueueTypeInfoNV): void {.stdcall.}](vkGetProc("vkQueueNotifyOutOfBandNV")) + vkSetLatencySleepModeNV = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR, pSleepModeInfo: ptr VkLatencySleepModeInfoNV): VkResult {.stdcall.}](vkGetProc("vkSetLatencySleepModeNV")) + vkLatencySleepNV = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR, pSleepInfo: ptr VkLatencySleepInfoNV): VkResult {.stdcall.}](vkGetProc("vkLatencySleepNV")) + vkSetLatencyMarkerNV = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR, pLatencyMarkerInfo: ptr VkSetLatencyMarkerInfoNV): void {.stdcall.}](vkGetProc("vkSetLatencyMarkerNV")) + vkGetLatencyTimingsNV = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR, pLatencyMarkerInfo: ptr VkGetLatencyMarkerInfoNV): void {.stdcall.}](vkGetProc("vkGetLatencyTimingsNV")) + vkQueueNotifyOutOfBandNV = cast[proc (queue: VkQueue, pQueueTypeInfo: ptr VkOutOfBandQueueTypeInfoNV): void {.stdcall.}](vkGetProc("vkQueueNotifyOutOfBandNV")) # Load VK_KHR_cooperative_matrix proc loadVK_KHR_cooperative_matrix*() = - vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR = cast[proc (physicalDevice: VkPhysicalDevic, pPropertyCount: ptr uint32, pProperties: ptr VkCooperativeMatrixPropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR")) + vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR = cast[proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkCooperativeMatrixPropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR")) # Load VK_EXT_attachment_feedback_loop_dynamic_state proc loadVK_EXT_attachment_feedback_loop_dynamic_state*() = - vkCmdSetAttachmentFeedbackLoopEnableEXT = cast[proc (commandBuffer: VkCommandBuffe, aspectMask: VkImageAspectFlag): void {.stdcall.}](vkGetProc("vkCmdSetAttachmentFeedbackLoopEnableEXT")) + vkCmdSetAttachmentFeedbackLoopEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, aspectMask: VkImageAspectFlags): void {.stdcall.}](vkGetProc("vkCmdSetAttachmentFeedbackLoopEnableEXT")) # Load VK_QNX_external_memory_screen_buffer proc loadVK_QNX_external_memory_screen_buffer*() = - vkGetScreenBufferPropertiesQNX = cast[proc (device: VkDevic, buffer: ptr screen_buffer, pProperties: ptr VkScreenBufferPropertiesQNX): VkResult {.stdcall.}](vkGetProc("vkGetScreenBufferPropertiesQNX")) + vkGetScreenBufferPropertiesQNX = cast[proc (device: VkDevice, buffer: ptr screen_buffer, pProperties: ptr VkScreenBufferPropertiesQNX): VkResult {.stdcall.}](vkGetProc("vkGetScreenBufferPropertiesQNX")) # Load VK_KHR_line_rasterization proc loadVK_KHR_line_rasterization*() = - vkCmdSetLineStippleKHR = cast[proc (commandBuffer: VkCommandBuffe, lineStippleFactor: uint32_, lineStipplePattern: uint16_): void {.stdcall.}](vkGetProc("vkCmdSetLineStippleKHR")) + vkCmdSetLineStippleKHR = cast[proc (commandBuffer: VkCommandBuffer, lineStippleFactor: uint32, lineStipplePattern: uint16): void {.stdcall.}](vkGetProc("vkCmdSetLineStippleKHR")) # Load VK_KHR_calibrated_timestamps proc loadVK_KHR_calibrated_timestamps*() = - vkGetPhysicalDeviceCalibrateableTimeDomainsKHR = cast[proc (physicalDevice: VkPhysicalDevic, pTimeDomainCount: ptr uint32, pTimeDomains: ptr VkTimeDomainKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceCalibrateableTimeDomainsKHR")) - vkGetCalibratedTimestampsKHR = cast[proc (device: VkDevic, timestampCount: uint32_, pTimestampInfos: ptr VkCalibratedTimestampInfoKHR, pTimestamps: ptr uint64, pMaxDeviation: ptr uint64): VkResult {.stdcall.}](vkGetProc("vkGetCalibratedTimestampsKHR")) + vkGetPhysicalDeviceCalibrateableTimeDomainsKHR = cast[proc (physicalDevice: VkPhysicalDevice, pTimeDomainCount: ptr uint32, pTimeDomains: ptr VkTimeDomainKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceCalibrateableTimeDomainsKHR")) + vkGetCalibratedTimestampsKHR = cast[proc (device: VkDevice, timestampCount: uint32, pTimestampInfos: ptr VkCalibratedTimestampInfoKHR, pTimestamps: ptr uint64, pMaxDeviation: ptr uint64): VkResult {.stdcall.}](vkGetProc("vkGetCalibratedTimestampsKHR")) # Load VK_KHR_maintenance6 proc loadVK_KHR_maintenance6*() = - vkCmdBindDescriptorSets2KHR = cast[proc (commandBuffer: VkCommandBuffe, pBindDescriptorSetsInfo: ptr VkBindDescriptorSetsInfoKHR): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorSets2KHR")) - vkCmdPushConstants2KHR = cast[proc (commandBuffer: VkCommandBuffe, pPushConstantsInfo: ptr VkPushConstantsInfoKHR): void {.stdcall.}](vkGetProc("vkCmdPushConstants2KHR")) - vkCmdPushDescriptorSet2KHR = cast[proc (commandBuffer: VkCommandBuffe, pPushDescriptorSetInfo: ptr VkPushDescriptorSetInfoKHR): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSet2KHR")) - vkCmdPushDescriptorSetWithTemplate2KHR = cast[proc (commandBuffer: VkCommandBuffe, pPushDescriptorSetWithTemplateInfo: ptr VkPushDescriptorSetWithTemplateInfoKHR): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplate2KHR")) - vkCmdSetDescriptorBufferOffsets2EXT = cast[proc (commandBuffer: VkCommandBuffe, pSetDescriptorBufferOffsetsInfo: ptr VkSetDescriptorBufferOffsetsInfoEXT): void {.stdcall.}](vkGetProc("vkCmdSetDescriptorBufferOffsets2EXT")) - vkCmdBindDescriptorBufferEmbeddedSamplers2EXT = cast[proc (commandBuffer: VkCommandBuffe, pBindDescriptorBufferEmbeddedSamplersInfo: ptr VkBindDescriptorBufferEmbeddedSamplersInfoEXT): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorBufferEmbeddedSamplers2EXT")) + vkCmdBindDescriptorSets2KHR = cast[proc (commandBuffer: VkCommandBuffer, pBindDescriptorSetsInfo: ptr VkBindDescriptorSetsInfoKHR): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorSets2KHR")) + vkCmdPushConstants2KHR = cast[proc (commandBuffer: VkCommandBuffer, pPushConstantsInfo: ptr VkPushConstantsInfoKHR): void {.stdcall.}](vkGetProc("vkCmdPushConstants2KHR")) + vkCmdPushDescriptorSet2KHR = cast[proc (commandBuffer: VkCommandBuffer, pPushDescriptorSetInfo: ptr VkPushDescriptorSetInfoKHR): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSet2KHR")) + vkCmdPushDescriptorSetWithTemplate2KHR = cast[proc (commandBuffer: VkCommandBuffer, pPushDescriptorSetWithTemplateInfo: ptr VkPushDescriptorSetWithTemplateInfoKHR): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplate2KHR")) + vkCmdSetDescriptorBufferOffsets2EXT = cast[proc (commandBuffer: VkCommandBuffer, pSetDescriptorBufferOffsetsInfo: ptr VkSetDescriptorBufferOffsetsInfoEXT): void {.stdcall.}](vkGetProc("vkCmdSetDescriptorBufferOffsets2EXT")) + vkCmdBindDescriptorBufferEmbeddedSamplers2EXT = cast[proc (commandBuffer: VkCommandBuffer, pBindDescriptorBufferEmbeddedSamplersInfo: ptr VkBindDescriptorBufferEmbeddedSamplersInfoEXT): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorBufferEmbeddedSamplers2EXT")) var vkCreateInstance*: proc (pCreateInfo: ptr VkInstanceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pInstance: ptr VkInstance): VkResult {.stdcall.} diff --git a/tools/generator.nim b/tools/generator.nim index 38842b2..d0129fe 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -406,11 +406,11 @@ proc genProcs(node: XmlNode, output: var string) = let openBracket = vkArg.argType.find('[') let arraySize = vkArg.argType[openBracket + 1 ..< vkArg.argType.find(']')] var typeName = vkArg.argType[0.. Date: Mon, 29 Apr 2024 01:38:39 +0300 Subject: [PATCH 08/57] fix some dups --- src/vulkan.nim | 2 -- tools/generator.nim | 4 ++-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 85f83e7..6a09678 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -1808,10 +1808,8 @@ type VkPipelineLayoutCreateFlags* = distinct VkFlags VkPipelineCacheCreateFlags* = distinct VkFlags VkPipelineDepthStencilStateCreateFlags* = distinct VkFlags - VkPipelineDepthStencilStateCreateFlags* = distinct VkFlags VkPipelineDynamicStateCreateFlags* = distinct VkFlags VkPipelineColorBlendStateCreateFlags* = distinct VkFlags - VkPipelineColorBlendStateCreateFlags* = distinct VkFlags VkPipelineMultisampleStateCreateFlags* = distinct VkFlags VkPipelineRasterizationStateCreateFlags* = distinct VkFlags VkPipelineViewportStateCreateFlags* = distinct VkFlags diff --git a/tools/generator.nim b/tools/generator.nim index d0129fe..dd98f9a 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -60,7 +60,7 @@ proc genTypes(node: XmlNode, output: var string) = for types in node.findAll("types"): for t in types.items: if t.attr("category") == "include" or t.attr("requires") == "vk_platform" or - t.tag != "type" or t.attr("name") == "int": + t.tag != "type" or t.attr("name") == "int" or t.attr("api") == "vulkansc": continue # Require Header @@ -407,7 +407,7 @@ proc genProcs(node: XmlNode, output: var string) = let arraySize = vkArg.argType[openBracket + 1 ..< vkArg.argType.find(']')] var typeName = vkArg.argType[0.. Date: Mon, 29 Apr 2024 01:50:09 +0300 Subject: [PATCH 09/57] less dups --- src/vulkan.nim | 38 -------------------------------------- tools/generator.nim | 4 +++- 2 files changed, 3 insertions(+), 39 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 6a09678..c95e7df 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -18150,10 +18150,8 @@ var vkGetPhysicalDeviceFormatProperties*: proc (physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: ptr VkFormatProperties): void {.stdcall.} vkGetPhysicalDeviceImageFormatProperties*: proc (physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, tiling: VkImageTiling, usage: VkImageUsageFlags, flags: VkImageCreateFlags, pImageFormatProperties: ptr VkImageFormatProperties): VkResult {.stdcall.} vkCreateDevice*: proc (physicalDevice: VkPhysicalDevice, pCreateInfo: ptr VkDeviceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDevice: ptr VkDevice): VkResult {.stdcall.} - vkCreateDevice*: proc (physicalDevice: VkPhysicalDevice, pCreateInfo: ptr VkDeviceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDevice: ptr VkDevice): VkResult {.stdcall.} vkDestroyDevice*: proc (device: VkDevice, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} vkEnumerateDeviceLayerProperties*: proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkLayerProperties): VkResult {.stdcall.} - vkEnumerateDeviceLayerProperties*: proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkLayerProperties): VkResult {.stdcall.} vkEnumerateDeviceExtensionProperties*: proc (physicalDevice: VkPhysicalDevice, pLayerName: cstring, pPropertyCount: ptr uint32, pProperties: ptr VkExtensionProperties): VkResult {.stdcall.} vkGetDeviceQueue*: proc (device: VkDevice, queueFamilyIndex: uint32, queueIndex: uint32, pQueue: ptr VkQueue): void {.stdcall.} vkQueueSubmit*: proc (queue: VkQueue, submitCount: uint32, pSubmits: ptr VkSubmitInfo, fence: VkFence): VkResult {.stdcall.} @@ -18201,13 +18199,10 @@ var vkCreateShaderModule*: proc (device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo, pAllocator: ptr VkAllocationCallbacks, pShaderModule: ptr VkShaderModule): VkResult {.stdcall.} vkDestroyShaderModule*: proc (device: VkDevice, shaderModule: VkShaderModule, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} vkCreatePipelineCache*: proc (device: VkDevice, pCreateInfo: ptr VkPipelineCacheCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineCache: ptr VkPipelineCache): VkResult {.stdcall.} - vkCreatePipelineCache*: proc (device: VkDevice, pCreateInfo: ptr VkPipelineCacheCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineCache: ptr VkPipelineCache): VkResult {.stdcall.} vkDestroyPipelineCache*: proc (device: VkDevice, pipelineCache: VkPipelineCache, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} vkGetPipelineCacheData*: proc (device: VkDevice, pipelineCache: VkPipelineCache, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.} vkMergePipelineCaches*: proc (device: VkDevice, dstCache: VkPipelineCache, srcCacheCount: uint32, pSrcCaches: ptr VkPipelineCache): VkResult {.stdcall.} vkCreateGraphicsPipelines*: proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkGraphicsPipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} - vkCreateGraphicsPipelines*: proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkGraphicsPipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} - vkCreateComputePipelines*: proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkComputePipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} vkCreateComputePipelines*: proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkComputePipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI*: proc (device: VkDevice, renderpass: VkRenderPass, pMaxWorkgroupSize: ptr VkExtent2D): VkResult {.stdcall.} vkDestroyPipeline*: proc (device: VkDevice, pipeline: VkPipeline, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} @@ -18515,8 +18510,6 @@ var vkGetRayTracingCaptureReplayShaderGroupHandlesKHR*: proc (device: VkDevice, pipeline: VkPipeline, firstGroup: uint32, groupCount: uint32, dataSize: uint, pData: pointer): VkResult {.stdcall.} vkGetAccelerationStructureHandleNV*: proc (device: VkDevice, accelerationStructure: VkAccelerationStructureNV, dataSize: uint, pData: pointer): VkResult {.stdcall.} vkCreateRayTracingPipelinesNV*: proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} - vkCreateRayTracingPipelinesNV*: proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} - vkCreateRayTracingPipelinesKHR*: proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} vkCreateRayTracingPipelinesKHR*: proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} vkGetPhysicalDeviceCooperativeMatrixPropertiesNV*: proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkCooperativeMatrixPropertiesNV): VkResult {.stdcall.} vkCmdTraceRaysIndirectKHR*: proc (commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, indirectDeviceAddress: VkDeviceAddress): void {.stdcall.} @@ -18772,11 +18765,9 @@ proc vkLoad1_0*() = vkGetInstanceProcAddr = cast[proc (instance: VkInstance, pName: cstring): PFN_vkVoidFunction {.stdcall.}](vkGetProc("vkGetInstanceProcAddr")) vkGetDeviceProcAddr = cast[proc (device: VkDevice, pName: cstring): PFN_vkVoidFunction {.stdcall.}](vkGetProc("vkGetDeviceProcAddr")) vkCreateDevice = cast[proc (physicalDevice: VkPhysicalDevice, pCreateInfo: ptr VkDeviceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDevice: ptr VkDevice): VkResult {.stdcall.}](vkGetProc("vkCreateDevice")) - vkCreateDevice = cast[proc (physicalDevice: VkPhysicalDevice, pCreateInfo: ptr VkDeviceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDevice: ptr VkDevice): VkResult {.stdcall.}](vkGetProc("vkCreateDevice")) vkDestroyDevice = cast[proc (device: VkDevice, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDevice")) vkEnumerateDeviceExtensionProperties = cast[proc (physicalDevice: VkPhysicalDevice, pLayerName: cstring, pPropertyCount: ptr uint32, pProperties: ptr VkExtensionProperties): VkResult {.stdcall.}](vkGetProc("vkEnumerateDeviceExtensionProperties")) vkEnumerateDeviceLayerProperties = cast[proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkLayerProperties): VkResult {.stdcall.}](vkGetProc("vkEnumerateDeviceLayerProperties")) - vkEnumerateDeviceLayerProperties = cast[proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkLayerProperties): VkResult {.stdcall.}](vkGetProc("vkEnumerateDeviceLayerProperties")) vkGetDeviceQueue = cast[proc (device: VkDevice, queueFamilyIndex: uint32, queueIndex: uint32, pQueue: ptr VkQueue): void {.stdcall.}](vkGetProc("vkGetDeviceQueue")) vkQueueSubmit = cast[proc (queue: VkQueue, submitCount: uint32, pSubmits: ptr VkSubmitInfo, fence: VkFence): VkResult {.stdcall.}](vkGetProc("vkQueueSubmit")) vkQueueWaitIdle = cast[proc (queue: VkQueue): VkResult {.stdcall.}](vkGetProc("vkQueueWaitIdle")) @@ -18822,13 +18813,10 @@ proc vkLoad1_0*() = vkCreateShaderModule = cast[proc (device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo, pAllocator: ptr VkAllocationCallbacks, pShaderModule: ptr VkShaderModule): VkResult {.stdcall.}](vkGetProc("vkCreateShaderModule")) vkDestroyShaderModule = cast[proc (device: VkDevice, shaderModule: VkShaderModule, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyShaderModule")) vkCreatePipelineCache = cast[proc (device: VkDevice, pCreateInfo: ptr VkPipelineCacheCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineCache: ptr VkPipelineCache): VkResult {.stdcall.}](vkGetProc("vkCreatePipelineCache")) - vkCreatePipelineCache = cast[proc (device: VkDevice, pCreateInfo: ptr VkPipelineCacheCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineCache: ptr VkPipelineCache): VkResult {.stdcall.}](vkGetProc("vkCreatePipelineCache")) vkDestroyPipelineCache = cast[proc (device: VkDevice, pipelineCache: VkPipelineCache, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyPipelineCache")) vkGetPipelineCacheData = cast[proc (device: VkDevice, pipelineCache: VkPipelineCache, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetPipelineCacheData")) vkMergePipelineCaches = cast[proc (device: VkDevice, dstCache: VkPipelineCache, srcCacheCount: uint32, pSrcCaches: ptr VkPipelineCache): VkResult {.stdcall.}](vkGetProc("vkMergePipelineCaches")) vkCreateGraphicsPipelines = cast[proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkGraphicsPipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateGraphicsPipelines")) - vkCreateGraphicsPipelines = cast[proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkGraphicsPipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateGraphicsPipelines")) - vkCreateComputePipelines = cast[proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkComputePipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateComputePipelines")) vkCreateComputePipelines = cast[proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkComputePipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateComputePipelines")) vkDestroyPipeline = cast[proc (device: VkDevice, pipeline: VkPipeline, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyPipeline")) vkCreatePipelineLayout = cast[proc (device: VkDevice, pCreateInfo: ptr VkPipelineLayoutCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineLayout: ptr VkPipelineLayout): VkResult {.stdcall.}](vkGetProc("vkCreatePipelineLayout")) @@ -18987,30 +18975,6 @@ proc vkLoad1_3*() = vkGetDeviceImageMemoryRequirements = cast[proc (device: VkDevice, pInfo: ptr VkDeviceImageMemoryRequirements, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetDeviceImageMemoryRequirements")) vkGetDeviceImageSparseMemoryRequirements = cast[proc (device: VkDevice, pInfo: ptr VkDeviceImageMemoryRequirements, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetDeviceImageSparseMemoryRequirements")) -# Vulkan 1_0 -proc vkLoad1_0*() = - vkGetCommandPoolMemoryConsumption = cast[proc (device: VkDevice, commandPool: VkCommandPool, commandBuffer: VkCommandBuffer, pConsumption: ptr VkCommandPoolMemoryConsumption): void {.stdcall.}](vkGetProc("vkGetCommandPoolMemoryConsumption")) - vkGetFaultData = cast[proc (device: VkDevice, faultQueryBehavior: VkFaultQueryBehavior, pUnrecordedFaults: ptr VkBool32, pFaultCount: ptr uint32, pFaults: ptr VkFaultData): VkResult {.stdcall.}](vkGetProc("vkGetFaultData")) - vkCreateShaderModule = cast[proc (device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo, pAllocator: ptr VkAllocationCallbacks, pShaderModule: ptr VkShaderModule): VkResult {.stdcall.}](vkGetProc("vkCreateShaderModule")) - vkDestroyShaderModule = cast[proc (device: VkDevice, shaderModule: VkShaderModule, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyShaderModule")) - vkMergePipelineCaches = cast[proc (device: VkDevice, dstCache: VkPipelineCache, srcCacheCount: uint32, pSrcCaches: ptr VkPipelineCache): VkResult {.stdcall.}](vkGetProc("vkMergePipelineCaches")) - vkGetPipelineCacheData = cast[proc (device: VkDevice, pipelineCache: VkPipelineCache, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetPipelineCacheData")) - vkTrimCommandPool = cast[proc (device: VkDevice, commandPool: VkCommandPool, flags: VkCommandPoolTrimFlags): void {.stdcall.}](vkGetProc("vkTrimCommandPool")) - vkDestroyCommandPool = cast[proc (device: VkDevice, commandPool: VkCommandPool, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyCommandPool")) - vkDestroyDescriptorPool = cast[proc (device: VkDevice, descriptorPool: VkDescriptorPool, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDescriptorPool")) - vkDestroyQueryPool = cast[proc (device: VkDevice, queryPool: VkQueryPool, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyQueryPool")) - vkDestroySwapchainKHR = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySwapchainKHR")) - vkFreeMemory = cast[proc (device: VkDevice, memory: VkDeviceMemory, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkFreeMemory")) - vkCreateDescriptorUpdateTemplate = cast[proc (device: VkDevice, pCreateInfo: ptr VkDescriptorUpdateTemplateCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDescriptorUpdateTemplate: ptr VkDescriptorUpdateTemplate): VkResult {.stdcall.}](vkGetProc("vkCreateDescriptorUpdateTemplate")) - vkDestroyDescriptorUpdateTemplate = cast[proc (device: VkDevice, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDescriptorUpdateTemplate")) - vkUpdateDescriptorSetWithTemplate = cast[proc (device: VkDevice, descriptorSet: VkDescriptorSet, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pData: pointer): void {.stdcall.}](vkGetProc("vkUpdateDescriptorSetWithTemplate")) - vkGetPhysicalDeviceSparseImageFormatProperties = cast[proc (physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, samples: VkSampleCountFlagBits, usage: VkImageUsageFlags, tiling: VkImageTiling, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSparseImageFormatProperties")) - vkGetPhysicalDeviceSparseImageFormatProperties2 = cast[proc (physicalDevice: VkPhysicalDevice, pFormatInfo: ptr VkPhysicalDeviceSparseImageFormatInfo2, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSparseImageFormatProperties2")) - vkGetImageSparseMemoryRequirements = cast[proc (device: VkDevice, image: VkImage, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements): void {.stdcall.}](vkGetProc("vkGetImageSparseMemoryRequirements")) - vkGetImageSparseMemoryRequirements2 = cast[proc (device: VkDevice, pInfo: ptr VkImageSparseMemoryRequirementsInfo2, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetImageSparseMemoryRequirements2")) - vkQueueBindSparse = cast[proc (queue: VkQueue, bindInfoCount: uint32, pBindInfo: ptr VkBindSparseInfo, fence: VkFence): VkResult {.stdcall.}](vkGetProc("vkQueueBindSparse")) - vkDestroySemaphoreSciSyncPoolNV = cast[proc (device: VkDevice, semaphorePool: VkSemaphoreSciSyncPoolNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySemaphoreSciSyncPoolNV")) - # Load VK_KHR_surface proc loadVK_KHR_surface*() = vkDestroySurfaceKHR = cast[proc (instance: VkInstance, surface: VkSurfaceKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySurfaceKHR")) @@ -19330,7 +19294,6 @@ proc loadVK_KHR_acceleration_structure*() = proc loadVK_KHR_ray_tracing_pipeline*() = vkCmdTraceRaysKHR = cast[proc (commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, width: uint32, height: uint32, depth: uint32): void {.stdcall.}](vkGetProc("vkCmdTraceRaysKHR")) vkCreateRayTracingPipelinesKHR = cast[proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesKHR")) - vkCreateRayTracingPipelinesKHR = cast[proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesKHR")) vkGetRayTracingShaderGroupHandlesKHR = cast[proc (device: VkDevice, pipeline: VkPipeline, firstGroup: uint32, groupCount: uint32, dataSize: uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetRayTracingShaderGroupHandlesKHR")) vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = cast[proc (device: VkDevice, pipeline: VkPipeline, firstGroup: uint32, groupCount: uint32, dataSize: uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetRayTracingCaptureReplayShaderGroupHandlesKHR")) vkCmdTraceRaysIndirectKHR = cast[proc (commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, indirectDeviceAddress: VkDeviceAddress): void {.stdcall.}](vkGetProc("vkCmdTraceRaysIndirectKHR")) @@ -19364,7 +19327,6 @@ proc loadVK_NV_ray_tracing*() = vkCmdCopyAccelerationStructureNV = cast[proc (commandBuffer: VkCommandBuffer, dst: VkAccelerationStructureNV, src: VkAccelerationStructureNV, mode: VkCopyAccelerationStructureModeKHR): void {.stdcall.}](vkGetProc("vkCmdCopyAccelerationStructureNV")) vkCmdTraceRaysNV = cast[proc (commandBuffer: VkCommandBuffer, raygenShaderBindingTableBuffer: VkBuffer, raygenShaderBindingOffset: VkDeviceSize, missShaderBindingTableBuffer: VkBuffer, missShaderBindingOffset: VkDeviceSize, missShaderBindingStride: VkDeviceSize, hitShaderBindingTableBuffer: VkBuffer, hitShaderBindingOffset: VkDeviceSize, hitShaderBindingStride: VkDeviceSize, callableShaderBindingTableBuffer: VkBuffer, callableShaderBindingOffset: VkDeviceSize, callableShaderBindingStride: VkDeviceSize, width: uint32, height: uint32, depth: uint32): void {.stdcall.}](vkGetProc("vkCmdTraceRaysNV")) vkCreateRayTracingPipelinesNV = cast[proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesNV")) - vkCreateRayTracingPipelinesNV = cast[proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesNV")) vkGetAccelerationStructureHandleNV = cast[proc (device: VkDevice, accelerationStructure: VkAccelerationStructureNV, dataSize: uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetAccelerationStructureHandleNV")) vkCmdWriteAccelerationStructuresPropertiesNV = cast[proc (commandBuffer: VkCommandBuffer, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureNV, queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteAccelerationStructuresPropertiesNV")) vkCompileDeferredNV = cast[proc (device: VkDevice, pipeline: VkPipeline, shader: uint32): VkResult {.stdcall.}](vkGetProc("vkCompileDeferredNV")) diff --git a/tools/generator.nim b/tools/generator.nim index dd98f9a..ff971a2 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -378,6 +378,7 @@ proc genProcs(node: XmlNode, output: var string) = output.add("var\n") for commands in node.findAll("commands"): for command in commands.findAll("command"): + if command.attr("api") == "vulkansc": continue var vkProc: VkProc if command.child("proto") == nil: continue @@ -429,6 +430,7 @@ proc genProcs(node: XmlNode, output: var string) = proc genFeatures(node: XmlNode, output: var string) = echo "Generating and Adding Features..." for feature in node.findAll("feature"): + if feature.attr("api") == "vulkansc": continue let number = feature.attr("number").replace(".", "_") output.add("\n# Vulkan {number}\n".fmt) output.add("proc vkLoad{number}*() =\n".fmt) @@ -448,7 +450,7 @@ proc genExtensions(node: XmlNode, output: var string) = echo "Generating and Adding Extensions..." for extensions in node.findAll("extensions"): for extension in extensions.findAll("extension"): - + # if extension.attr("api") == "vulkansc": continue var commands: seq[VkProc] for require in extension.findAll("require"): for command in require.findAll("command"): From aeaebaf904fa0fb091843baa9719e77dbebee1dd Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Mon, 29 Apr 2024 02:27:33 +0300 Subject: [PATCH 10/57] Hack: fix duplicate errors --- src/vulkan.nim | 4 ++-- tools/generator.nim | 8 ++++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index c95e7df..a4f2a47 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -153,7 +153,7 @@ type VK_PIPELINE_BIND_POINT_GRAPHICS = 0 VK_PIPELINE_BIND_POINT_COMPUTE = 1 VkPipelineCacheHeaderVersion* {.size: int32.sizeof.} = enum - VK_PIPELINE_CACHE_HEADER_VERSION_ONE = 1 + VK_PIPELINE_CACHE_HEADER_VER_ONE = 1 VkPrimitiveTopology* {.size: int32.sizeof.} = enum VK_PRIMITIVE_TOPOLOGY_POINT_LIST = 0 VK_PRIMITIVE_TOPOLOGY_LINE_LIST = 1 @@ -1686,7 +1686,7 @@ type VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_INVALID_EXT = 5 VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_FAULT_EXT = 6 VkDeviceFaultVendorBinaryHeaderVersionEXT* {.size: int32.sizeof.} = enum - VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VERSION_ONE_EXT = 1 + VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VER_ONE_EXT = 1 VkDisplacementMicromapFormatNV* {.size: int32.sizeof.} = enum VK_DISPLACEMENT_MICROMAP_FORMAT_64_TRIANGLES_64_BYTES_NV = 1 VK_DISPLACEMENT_MICROMAP_FORMAT_256_TRIANGLES_128_BYTES_NV = 2 diff --git a/tools/generator.nim b/tools/generator.nim index ff971a2..3dd80f6 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -341,7 +341,7 @@ proc genEnums(node: XmlNode, output: var string) = if e.kind != xnElement or e.tag != "enum": continue - let enumName = e.attr("name") + var enumName = e.attr("name") var enumValueStr = e.attr("value") if enumValueStr == "": if e.attr("bitpos") == "": @@ -360,6 +360,10 @@ proc genEnums(node: XmlNode, output: var string) = if elements.hasKey(enumValue): continue + if enumName == "VK_PIPELINE_CACHE_HEADER_VERSION_ONE": + enumName = "VK_PIPELINE_CACHE_HEADER_VER_ONE" + elif enumName == "VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VERSION_ONE_EXT": + enumName = "VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VER_ONE_EXT" elements.add(enumValue, enumName) if elements.len == 0: @@ -390,7 +394,7 @@ proc genProcs(node: XmlNode, output: var string) = vkProc.rVal = vkProc.rVal.translateType() # Skip commands that are preloaded - if vkProc.name == "vkCreateInstance" or + if vkProc.name == "vkCreateInstance" or vkProc.name == "vkEnumerateInstanceExtensionProperties" or vkProc.name == "vkEnumerateInstanceLayerProperties" or vkProc.name == "vkEnumerateInstanceVersion": From 01aa83457507670a9bd48c75dc7d29854798d6b7 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Mon, 29 Apr 2024 18:33:48 +0300 Subject: [PATCH 11/57] progress --- src/vulkan.nim | 633 ++++++++++++++++++++++---------------------- tools/generator.nim | 79 ++---- tools/utils.nim | 4 +- 3 files changed, 347 insertions(+), 369 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index a4f2a47..3694920 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -39,8 +39,8 @@ proc setVKGetProc*(getProc: proc (procName: cstring): pointer {.cdecl.}) = vkGetProc = getProc type - VkHandle* = uint64 - VkNonDispatchableHandle* = uint64 + VkHandle* = uint + VkNonDispatchableHandle* = uint ANativeWindow = ptr object CAMetalLayer = ptr object AHardwareBuffer = ptr object @@ -1744,50 +1744,50 @@ type # Types type - Display* {.header: "X11/Xlib.h".} = ptr object - VisualID* {.header: "X11/Xlib.h".} = ptr object - Window* {.header: "X11/Xlib.h".} = ptr object - RROutput* {.header: "X11/extensions/Xrandr.h".} = ptr object - wl_display* {.header: "wayland-client.h".} = ptr object - wl_surface* {.header: "wayland-client.h".} = ptr object - HINSTANCE* {.header: "windows.h".} = ptr object - HWND* {.header: "windows.h".} = ptr object - HMONITOR* {.header: "windows.h".} = ptr object - HANDLE* {.header: "windows.h".} = ptr object - SECURITY_ATTRIBUTES* {.header: "windows.h".} = ptr object - DWORD* {.header: "windows.h".} = ptr object - LPCWSTR* {.header: "windows.h".} = ptr object - xcb_connection_t* {.header: "xcb/xcb.h".} = ptr object - xcb_visualid_t* {.header: "xcb/xcb.h".} = ptr object - xcb_window_t* {.header: "xcb/xcb.h".} = ptr object - IDirectFB* {.header: "directfb.h".} = ptr object - IDirectFBSurface* {.header: "directfb.h".} = ptr object - zx_handle_t* {.header: "zircon/types.h".} = ptr object - GgpStreamDescriptor* {.header: "ggp_c/vulkan_types.h".} = ptr object - GgpFrameToken* {.header: "ggp_c/vulkan_types.h".} = ptr object - screen_context* {.header: "screen/screen.h".} = ptr object - screen_window* {.header: "screen/screen.h".} = ptr object - screen_buffer* {.header: "screen/screen.h".} = ptr object - NvSciSyncAttrList* {.header: "nvscisync.h".} = ptr object - NvSciSyncObj* {.header: "nvscisync.h".} = ptr object - NvSciSyncFence* {.header: "nvscisync.h".} = ptr object - NvSciBufAttrList* {.header: "nvscibuf.h".} = ptr object - NvSciBufObj* {.header: "nvscibuf.h".} = ptr object + Display* {.header: "X11/Xlib.h".} = object + VisualID* {.header: "X11/Xlib.h".} = object + Window* {.header: "X11/Xlib.h".} = object + RROutput* {.header: "X11/extensions/Xrandr.h".} = object + wl_display* {.header: "wayland-client.h".} = object + wl_surface* {.header: "wayland-client.h".} = object + HINSTANCE* {.header: "windows.h".} = object + HWND* {.header: "windows.h".} = object + HMONITOR* {.header: "windows.h".} = object + HANDLE* {.header: "windows.h".} = object + SECURITY_ATTRIBUTES* {.header: "windows.h".} = object + DWORD* {.header: "windows.h".} = object + LPCWSTR* {.header: "windows.h".} = object + xcb_connection_t* {.header: "xcb/xcb.h".} = object + xcb_visualid_t* {.header: "xcb/xcb.h".} = object + xcb_window_t* {.header: "xcb/xcb.h".} = object + IDirectFB* {.header: "directfb.h".} = object + IDirectFBSurface* {.header: "directfb.h".} = object + zx_handle_t* {.header: "zircon/types.h".} = object + GgpStreamDescriptor* {.header: "ggp_c/vulkan_types.h".} = object + GgpFrameToken* {.header: "ggp_c/vulkan_types.h".} = object + screen_context* {.header: "screen/screen.h".} = object + screen_window* {.header: "screen/screen.h".} = object + screen_buffer* {.header: "screen/screen.h".} = object + NvSciSyncAttrList* {.header: "nvscisync.h".} = object + NvSciSyncObj* {.header: "nvscisync.h".} = object + NvSciSyncFence* {.header: "nvscisync.h".} = object + NvSciBufAttrList* {.header: "nvscibuf.h".} = object + NvSciBufObj* {.header: "nvscibuf.h".} = object template vkMakeVersion*(variant, major, minor, patch: untyped): untyped = - (((variant) shl 29) or ((major) shl 22) or ((minor) shl 12) or (patch)) + (variant shl 29) or (major shl 22) or (minor shl 12) or patch template vkVersionVariant*(version: untyped): untyped = - ((uint32)(version) shr 29) + uint32(version) shr 29 template vkVersionMajor*(version: untyped): untyped = - ((uint32)(version) shr 22) + uint32(version) shr 22 template vkVersionMinor*(version: untyped): untyped = - (((uint32)(version) shr 12) and 0x000003FF) + ((uint32(version) shr 12) and 0x000003FF) template vkVersionPatch*(version: untyped): untyped = - ((uint32)(version) and 0x00000FFF) + (uint32(version) and 0x00000FFF) const vkApiVersion1_0* = vkMakeVersion(0, 1, 0, 0) const vkApiVersion1_1* = vkMakeVersion(0, 1, 1, 0) @@ -2123,6 +2123,14 @@ type PFN_vkDeviceMemoryReportCallbackEXT* = proc (pCallbackData: ptr VkDeviceMemoryReportCallbackDataEXT; pUserData: pointer) {.cdecl.} PFN_vkGetInstanceProcAddrLUNARG* = proc (instance: VkInstance; pName: cstring): PFN_vkVoidFunction {.cdecl.} + VkBaseOutStructure* = object + sType*: VkStructureType + pNext*: ptr VkBaseOutStructure + + VkBaseInStructure* = object + sType*: VkStructureType + pNext*: ptr VkBaseInStructure + VkOffset2D* = object x*: int32 y*: int32 @@ -3472,7 +3480,7 @@ type sciBufImport*: VkBool32 sciBufExport*: VkBool32 - VkPhysicalDeviceExternalSciBufFeaturesNV* = object + VkPhysicalDeviceExternalSciBufFeaturesNV* = VkPhysicalDeviceExternalMemorySciBufFeaturesNV VkWin32KeyedMutexAcquireReleaseInfoNV* = object sType*: VkStructureType @@ -3502,21 +3510,21 @@ type pNext*: pointer privateDataSlotRequestCount*: uint32 - VkDevicePrivateDataCreateInfoEXT* = object + VkDevicePrivateDataCreateInfoEXT* = VkDevicePrivateDataCreateInfo VkPrivateDataSlotCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkPrivateDataSlotCreateFlags - VkPrivateDataSlotCreateInfoEXT* = object + VkPrivateDataSlotCreateInfoEXT* = VkPrivateDataSlotCreateInfo VkPhysicalDevicePrivateDataFeatures* = object sType*: VkStructureType pNext*: pointer privateData*: VkBool32 - VkPhysicalDevicePrivateDataFeaturesEXT* = object + VkPhysicalDevicePrivateDataFeaturesEXT* = VkPhysicalDevicePrivateDataFeatures VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV* = object sType*: VkStructureType @@ -3638,28 +3646,28 @@ type pNext*: pointer features*: VkPhysicalDeviceFeatures - VkPhysicalDeviceFeatures2KHR* = object + VkPhysicalDeviceFeatures2KHR* = VkPhysicalDeviceFeatures2 VkPhysicalDeviceProperties2* = object sType*: VkStructureType pNext*: pointer properties*: VkPhysicalDeviceProperties - VkPhysicalDeviceProperties2KHR* = object + VkPhysicalDeviceProperties2KHR* = VkPhysicalDeviceProperties2 VkFormatProperties2* = object sType*: VkStructureType pNext*: pointer formatProperties*: VkFormatProperties - VkFormatProperties2KHR* = object + VkFormatProperties2KHR* = VkFormatProperties2 VkImageFormatProperties2* = object sType*: VkStructureType pNext*: pointer imageFormatProperties*: VkImageFormatProperties - VkImageFormatProperties2KHR* = object + VkImageFormatProperties2KHR* = VkImageFormatProperties2 VkPhysicalDeviceImageFormatInfo2* = object sType*: VkStructureType @@ -3670,28 +3678,28 @@ type usage*: VkImageUsageFlags flags*: VkImageCreateFlags - VkPhysicalDeviceImageFormatInfo2KHR* = object + VkPhysicalDeviceImageFormatInfo2KHR* = VkPhysicalDeviceImageFormatInfo2 VkQueueFamilyProperties2* = object sType*: VkStructureType pNext*: pointer queueFamilyProperties*: VkQueueFamilyProperties - VkQueueFamilyProperties2KHR* = object + VkQueueFamilyProperties2KHR* = VkQueueFamilyProperties2 VkPhysicalDeviceMemoryProperties2* = object sType*: VkStructureType pNext*: pointer memoryProperties*: VkPhysicalDeviceMemoryProperties - VkPhysicalDeviceMemoryProperties2KHR* = object + VkPhysicalDeviceMemoryProperties2KHR* = VkPhysicalDeviceMemoryProperties2 VkSparseImageFormatProperties2* = object sType*: VkStructureType pNext*: pointer properties*: VkSparseImageFormatProperties - VkSparseImageFormatProperties2KHR* = object + VkSparseImageFormatProperties2KHR* = VkSparseImageFormatProperties2 VkPhysicalDeviceSparseImageFormatInfo2* = object sType*: VkStructureType @@ -3702,7 +3710,7 @@ type usage*: VkImageUsageFlags tiling*: VkImageTiling - VkPhysicalDeviceSparseImageFormatInfo2KHR* = object + VkPhysicalDeviceSparseImageFormatInfo2KHR* = VkPhysicalDeviceSparseImageFormatInfo2 VkPhysicalDevicePushDescriptorPropertiesKHR* = object sType*: VkStructureType @@ -3715,7 +3723,7 @@ type subminor*: uint8 patch*: uint8 - VkConformanceVersionKHR* = object + VkConformanceVersionKHR* = VkConformanceVersion VkPhysicalDeviceDriverProperties* = object sType*: VkStructureType @@ -3725,7 +3733,7 @@ type driverInfo*: array[VK_MAX_DRIVER_INFO_SIZE, char] conformanceVersion*: VkConformanceVersion - VkPhysicalDeviceDriverPropertiesKHR* = object + VkPhysicalDeviceDriverPropertiesKHR* = VkPhysicalDeviceDriverProperties VkPresentRegionsKHR* = object sType*: VkStructureType @@ -3748,32 +3756,32 @@ type variablePointersStorageBuffer*: VkBool32 variablePointers*: VkBool32 - VkPhysicalDeviceVariablePointersFeaturesKHR* = object + VkPhysicalDeviceVariablePointersFeaturesKHR* = VkPhysicalDeviceVariablePointersFeatures - VkPhysicalDeviceVariablePointerFeaturesKHR* = object + VkPhysicalDeviceVariablePointerFeaturesKHR* = VkPhysicalDeviceVariablePointersFeatures - VkPhysicalDeviceVariablePointerFeatures* = object + VkPhysicalDeviceVariablePointerFeatures* = VkPhysicalDeviceVariablePointersFeatures VkExternalMemoryProperties* = object externalMemoryFeatures*: VkExternalMemoryFeatureFlags exportFromImportedHandleTypes*: VkExternalMemoryHandleTypeFlags compatibleHandleTypes*: VkExternalMemoryHandleTypeFlags - VkExternalMemoryPropertiesKHR* = object + VkExternalMemoryPropertiesKHR* = VkExternalMemoryProperties VkPhysicalDeviceExternalImageFormatInfo* = object sType*: VkStructureType pNext*: pointer handleType*: VkExternalMemoryHandleTypeFlagBits - VkPhysicalDeviceExternalImageFormatInfoKHR* = object + VkPhysicalDeviceExternalImageFormatInfoKHR* = VkPhysicalDeviceExternalImageFormatInfo VkExternalImageFormatProperties* = object sType*: VkStructureType pNext*: pointer externalMemoryProperties*: VkExternalMemoryProperties - VkExternalImageFormatPropertiesKHR* = object + VkExternalImageFormatPropertiesKHR* = VkExternalImageFormatProperties VkPhysicalDeviceExternalBufferInfo* = object sType*: VkStructureType @@ -3782,14 +3790,14 @@ type usage*: VkBufferUsageFlags handleType*: VkExternalMemoryHandleTypeFlagBits - VkPhysicalDeviceExternalBufferInfoKHR* = object + VkPhysicalDeviceExternalBufferInfoKHR* = VkPhysicalDeviceExternalBufferInfo VkExternalBufferProperties* = object sType*: VkStructureType pNext*: pointer externalMemoryProperties*: VkExternalMemoryProperties - VkExternalBufferPropertiesKHR* = object + VkExternalBufferPropertiesKHR* = VkExternalBufferProperties VkPhysicalDeviceIDProperties* = object sType*: VkStructureType @@ -3800,28 +3808,28 @@ type deviceNodeMask*: uint32 deviceLUIDValid*: VkBool32 - VkPhysicalDeviceIDPropertiesKHR* = object + VkPhysicalDeviceIDPropertiesKHR* = VkPhysicalDeviceIDProperties VkExternalMemoryImageCreateInfo* = object sType*: VkStructureType pNext*: pointer handleTypes*: VkExternalMemoryHandleTypeFlags - VkExternalMemoryImageCreateInfoKHR* = object + VkExternalMemoryImageCreateInfoKHR* = VkExternalMemoryImageCreateInfo VkExternalMemoryBufferCreateInfo* = object sType*: VkStructureType pNext*: pointer handleTypes*: VkExternalMemoryHandleTypeFlags - VkExternalMemoryBufferCreateInfoKHR* = object + VkExternalMemoryBufferCreateInfoKHR* = VkExternalMemoryBufferCreateInfo VkExportMemoryAllocateInfo* = object sType*: VkStructureType pNext*: pointer handleTypes*: VkExternalMemoryHandleTypeFlags - VkExportMemoryAllocateInfoKHR* = object + VkExportMemoryAllocateInfoKHR* = VkExportMemoryAllocateInfo VkImportMemoryWin32HandleInfoKHR* = object sType*: VkStructureType @@ -3898,7 +3906,7 @@ type pNext*: pointer handleType*: VkExternalSemaphoreHandleTypeFlagBits - VkPhysicalDeviceExternalSemaphoreInfoKHR* = object + VkPhysicalDeviceExternalSemaphoreInfoKHR* = VkPhysicalDeviceExternalSemaphoreInfo VkExternalSemaphoreProperties* = object sType*: VkStructureType @@ -3907,14 +3915,14 @@ type compatibleHandleTypes*: VkExternalSemaphoreHandleTypeFlags externalSemaphoreFeatures*: VkExternalSemaphoreFeatureFlags - VkExternalSemaphorePropertiesKHR* = object + VkExternalSemaphorePropertiesKHR* = VkExternalSemaphoreProperties VkExportSemaphoreCreateInfo* = object sType*: VkStructureType pNext*: pointer handleTypes*: VkExternalSemaphoreHandleTypeFlags - VkExportSemaphoreCreateInfoKHR* = object + VkExportSemaphoreCreateInfoKHR* = VkExportSemaphoreCreateInfo VkImportSemaphoreWin32HandleInfoKHR* = object sType*: VkStructureType @@ -3979,7 +3987,7 @@ type pNext*: pointer handleType*: VkExternalFenceHandleTypeFlagBits - VkPhysicalDeviceExternalFenceInfoKHR* = object + VkPhysicalDeviceExternalFenceInfoKHR* = VkPhysicalDeviceExternalFenceInfo VkExternalFenceProperties* = object sType*: VkStructureType @@ -3988,14 +3996,14 @@ type compatibleHandleTypes*: VkExternalFenceHandleTypeFlags externalFenceFeatures*: VkExternalFenceFeatureFlags - VkExternalFencePropertiesKHR* = object + VkExternalFencePropertiesKHR* = VkExternalFenceProperties VkExportFenceCreateInfo* = object sType*: VkStructureType pNext*: pointer handleTypes*: VkExternalFenceHandleTypeFlags - VkExportFenceCreateInfoKHR* = object + VkExportFenceCreateInfoKHR* = VkExportFenceCreateInfo VkImportFenceWin32HandleInfoKHR* = object sType*: VkStructureType @@ -4114,7 +4122,7 @@ type multiviewGeometryShader*: VkBool32 multiviewTessellationShader*: VkBool32 - VkPhysicalDeviceMultiviewFeaturesKHR* = object + VkPhysicalDeviceMultiviewFeaturesKHR* = VkPhysicalDeviceMultiviewFeatures VkPhysicalDeviceMultiviewProperties* = object sType*: VkStructureType @@ -4122,7 +4130,7 @@ type maxMultiviewViewCount*: uint32 maxMultiviewInstanceIndex*: uint32 - VkPhysicalDeviceMultiviewPropertiesKHR* = object + VkPhysicalDeviceMultiviewPropertiesKHR* = VkPhysicalDeviceMultiviewProperties VkRenderPassMultiviewCreateInfo* = object sType*: VkStructureType @@ -4134,7 +4142,7 @@ type correlationMaskCount*: uint32 pCorrelationMasks*: ptr uint32 - VkRenderPassMultiviewCreateInfoKHR* = object + VkRenderPassMultiviewCreateInfoKHR* = VkRenderPassMultiviewCreateInfo VkSurfaceCapabilities2EXT* = object sType*: VkStructureType @@ -4178,7 +4186,7 @@ type physicalDevices*: array[VK_MAX_DEVICE_GROUP_SIZE, VkPhysicalDevice] subsetAllocation*: VkBool32 - VkPhysicalDeviceGroupPropertiesKHR* = object + VkPhysicalDeviceGroupPropertiesKHR* = VkPhysicalDeviceGroupProperties VkMemoryAllocateFlagsInfo* = object sType*: VkStructureType @@ -4186,7 +4194,7 @@ type flags*: VkMemoryAllocateFlags deviceMask*: uint32 - VkMemoryAllocateFlagsInfoKHR* = object + VkMemoryAllocateFlagsInfoKHR* = VkMemoryAllocateFlagsInfo VkBindBufferMemoryInfo* = object sType*: VkStructureType @@ -4195,7 +4203,7 @@ type memory*: VkDeviceMemory memoryOffset*: VkDeviceSize - VkBindBufferMemoryInfoKHR* = object + VkBindBufferMemoryInfoKHR* = VkBindBufferMemoryInfo VkBindBufferMemoryDeviceGroupInfo* = object sType*: VkStructureType @@ -4203,7 +4211,7 @@ type deviceIndexCount*: uint32 pDeviceIndices*: ptr uint32 - VkBindBufferMemoryDeviceGroupInfoKHR* = object + VkBindBufferMemoryDeviceGroupInfoKHR* = VkBindBufferMemoryDeviceGroupInfo VkBindImageMemoryInfo* = object sType*: VkStructureType @@ -4212,7 +4220,7 @@ type memory*: VkDeviceMemory memoryOffset*: VkDeviceSize - VkBindImageMemoryInfoKHR* = object + VkBindImageMemoryInfoKHR* = VkBindImageMemoryInfo VkBindImageMemoryDeviceGroupInfo* = object sType*: VkStructureType @@ -4222,7 +4230,7 @@ type splitInstanceBindRegionCount*: uint32 pSplitInstanceBindRegions*: ptr VkRect2D - VkBindImageMemoryDeviceGroupInfoKHR* = object + VkBindImageMemoryDeviceGroupInfoKHR* = VkBindImageMemoryDeviceGroupInfo VkDeviceGroupRenderPassBeginInfo* = object sType*: VkStructureType @@ -4231,14 +4239,14 @@ type deviceRenderAreaCount*: uint32 pDeviceRenderAreas*: ptr VkRect2D - VkDeviceGroupRenderPassBeginInfoKHR* = object + VkDeviceGroupRenderPassBeginInfoKHR* = VkDeviceGroupRenderPassBeginInfo VkDeviceGroupCommandBufferBeginInfo* = object sType*: VkStructureType pNext*: pointer deviceMask*: uint32 - VkDeviceGroupCommandBufferBeginInfoKHR* = object + VkDeviceGroupCommandBufferBeginInfoKHR* = VkDeviceGroupCommandBufferBeginInfo VkDeviceGroupSubmitInfo* = object sType*: VkStructureType @@ -4250,7 +4258,7 @@ type signalSemaphoreCount*: uint32 pSignalSemaphoreDeviceIndices*: ptr uint32 - VkDeviceGroupSubmitInfoKHR* = object + VkDeviceGroupSubmitInfoKHR* = VkDeviceGroupSubmitInfo VkDeviceGroupBindSparseInfo* = object sType*: VkStructureType @@ -4258,7 +4266,7 @@ type resourceDeviceIndex*: uint32 memoryDeviceIndex*: uint32 - VkDeviceGroupBindSparseInfoKHR* = object + VkDeviceGroupBindSparseInfoKHR* = VkDeviceGroupBindSparseInfo VkDeviceGroupPresentCapabilitiesKHR* = object sType*: VkStructureType @@ -4299,7 +4307,7 @@ type physicalDeviceCount*: uint32 pPhysicalDevices*: ptr VkPhysicalDevice - VkDeviceGroupDeviceCreateInfoKHR* = object + VkDeviceGroupDeviceCreateInfoKHR* = VkDeviceGroupDeviceCreateInfo VkDeviceGroupSwapchainCreateInfoKHR* = object sType*: VkStructureType @@ -4314,7 +4322,7 @@ type offset*: uint stride*: uint - VkDescriptorUpdateTemplateEntryKHR* = object + VkDescriptorUpdateTemplateEntryKHR* = VkDescriptorUpdateTemplateEntry VkDescriptorUpdateTemplateCreateInfo* = object sType*: VkStructureType @@ -4328,7 +4336,7 @@ type pipelineLayout*: VkPipelineLayout set*: uint32 - VkDescriptorUpdateTemplateCreateInfoKHR* = object + VkDescriptorUpdateTemplateCreateInfoKHR* = VkDescriptorUpdateTemplateCreateInfo VkXYColorEXT* = object x*: float32 @@ -4457,7 +4465,7 @@ type inputAttachmentIndex*: uint32 aspectMask*: VkImageAspectFlags - VkInputAttachmentAspectReferenceKHR* = object + VkInputAttachmentAspectReferenceKHR* = VkInputAttachmentAspectReference VkRenderPassInputAttachmentAspectCreateInfo* = object sType*: VkStructureType @@ -4465,7 +4473,7 @@ type aspectReferenceCount*: uint32 pAspectReferences*: ptr VkInputAttachmentAspectReference - VkRenderPassInputAttachmentAspectCreateInfoKHR* = object + VkRenderPassInputAttachmentAspectCreateInfoKHR* = VkRenderPassInputAttachmentAspectCreateInfo VkPhysicalDeviceSurfaceInfo2KHR* = object sType*: VkStructureType @@ -4521,7 +4529,7 @@ type storagePushConstant16*: VkBool32 storageInputOutput16*: VkBool32 - VkPhysicalDevice16BitStorageFeaturesKHR* = object + VkPhysicalDevice16BitStorageFeaturesKHR* = VkPhysicalDevice16BitStorageFeatures VkPhysicalDeviceSubgroupProperties* = object sType*: VkStructureType @@ -4536,35 +4544,35 @@ type pNext*: pointer shaderSubgroupExtendedTypes*: VkBool32 - VkPhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR* = object + VkPhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR* = VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures VkBufferMemoryRequirementsInfo2* = object sType*: VkStructureType pNext*: pointer buffer*: VkBuffer - VkBufferMemoryRequirementsInfo2KHR* = object + VkBufferMemoryRequirementsInfo2KHR* = VkBufferMemoryRequirementsInfo2 VkDeviceBufferMemoryRequirements* = object sType*: VkStructureType pNext*: pointer pCreateInfo*: ptr VkBufferCreateInfo - VkDeviceBufferMemoryRequirementsKHR* = object + VkDeviceBufferMemoryRequirementsKHR* = VkDeviceBufferMemoryRequirements VkImageMemoryRequirementsInfo2* = object sType*: VkStructureType pNext*: pointer image*: VkImage - VkImageMemoryRequirementsInfo2KHR* = object + VkImageMemoryRequirementsInfo2KHR* = VkImageMemoryRequirementsInfo2 VkImageSparseMemoryRequirementsInfo2* = object sType*: VkStructureType pNext*: pointer image*: VkImage - VkImageSparseMemoryRequirementsInfo2KHR* = object + VkImageSparseMemoryRequirementsInfo2KHR* = VkImageSparseMemoryRequirementsInfo2 VkDeviceImageMemoryRequirements* = object sType*: VkStructureType @@ -4572,28 +4580,28 @@ type pCreateInfo*: ptr VkImageCreateInfo planeAspect*: VkImageAspectFlagBits - VkDeviceImageMemoryRequirementsKHR* = object + VkDeviceImageMemoryRequirementsKHR* = VkDeviceImageMemoryRequirements VkMemoryRequirements2* = object sType*: VkStructureType pNext*: pointer memoryRequirements*: VkMemoryRequirements - VkMemoryRequirements2KHR* = object + VkMemoryRequirements2KHR* = VkMemoryRequirements2 VkSparseImageMemoryRequirements2* = object sType*: VkStructureType pNext*: pointer memoryRequirements*: VkSparseImageMemoryRequirements - VkSparseImageMemoryRequirements2KHR* = object + VkSparseImageMemoryRequirements2KHR* = VkSparseImageMemoryRequirements2 VkPhysicalDevicePointClippingProperties* = object sType*: VkStructureType pNext*: pointer pointClippingBehavior*: VkPointClippingBehavior - VkPhysicalDevicePointClippingPropertiesKHR* = object + VkPhysicalDevicePointClippingPropertiesKHR* = VkPhysicalDevicePointClippingProperties VkMemoryDedicatedRequirements* = object sType*: VkStructureType @@ -4601,7 +4609,7 @@ type prefersDedicatedAllocation*: VkBool32 requiresDedicatedAllocation*: VkBool32 - VkMemoryDedicatedRequirementsKHR* = object + VkMemoryDedicatedRequirementsKHR* = VkMemoryDedicatedRequirements VkMemoryDedicatedAllocateInfo* = object sType*: VkStructureType @@ -4609,7 +4617,7 @@ type image*: VkImage buffer*: VkBuffer - VkMemoryDedicatedAllocateInfoKHR* = object + VkMemoryDedicatedAllocateInfoKHR* = VkMemoryDedicatedAllocateInfo VkImageViewUsageCreateInfo* = object sType*: VkStructureType @@ -4622,21 +4630,21 @@ type sliceOffset*: uint32 sliceCount*: uint32 - VkImageViewUsageCreateInfoKHR* = object + VkImageViewUsageCreateInfoKHR* = VkImageViewUsageCreateInfo VkPipelineTessellationDomainOriginStateCreateInfo* = object sType*: VkStructureType pNext*: pointer domainOrigin*: VkTessellationDomainOrigin - VkPipelineTessellationDomainOriginStateCreateInfoKHR* = object + VkPipelineTessellationDomainOriginStateCreateInfoKHR* = VkPipelineTessellationDomainOriginStateCreateInfo VkSamplerYcbcrConversionInfo* = object sType*: VkStructureType pNext*: pointer conversion*: VkSamplerYcbcrConversion - VkSamplerYcbcrConversionInfoKHR* = object + VkSamplerYcbcrConversionInfoKHR* = VkSamplerYcbcrConversionInfo VkSamplerYcbcrConversionCreateInfo* = object sType*: VkStructureType @@ -4650,35 +4658,35 @@ type chromaFilter*: VkFilter forceExplicitReconstruction*: VkBool32 - VkSamplerYcbcrConversionCreateInfoKHR* = object + VkSamplerYcbcrConversionCreateInfoKHR* = VkSamplerYcbcrConversionCreateInfo VkBindImagePlaneMemoryInfo* = object sType*: VkStructureType pNext*: pointer planeAspect*: VkImageAspectFlagBits - VkBindImagePlaneMemoryInfoKHR* = object + VkBindImagePlaneMemoryInfoKHR* = VkBindImagePlaneMemoryInfo VkImagePlaneMemoryRequirementsInfo* = object sType*: VkStructureType pNext*: pointer planeAspect*: VkImageAspectFlagBits - VkImagePlaneMemoryRequirementsInfoKHR* = object + VkImagePlaneMemoryRequirementsInfoKHR* = VkImagePlaneMemoryRequirementsInfo VkPhysicalDeviceSamplerYcbcrConversionFeatures* = object sType*: VkStructureType pNext*: pointer samplerYcbcrConversion*: VkBool32 - VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR* = object + VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR* = VkPhysicalDeviceSamplerYcbcrConversionFeatures VkSamplerYcbcrConversionImageFormatProperties* = object sType*: VkStructureType pNext*: pointer combinedImageSamplerDescriptorCount*: uint32 - VkSamplerYcbcrConversionImageFormatPropertiesKHR* = object + VkSamplerYcbcrConversionImageFormatPropertiesKHR* = VkSamplerYcbcrConversionImageFormatProperties VkTextureLODGatherFormatPropertiesAMD* = object sType*: VkStructureType @@ -4727,7 +4735,7 @@ type filterMinmaxSingleComponentFormats*: VkBool32 filterMinmaxImageComponentMapping*: VkBool32 - VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT* = object + VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT* = VkPhysicalDeviceSamplerFilterMinmaxProperties VkSampleLocationEXT* = object x*: float32 @@ -4782,7 +4790,7 @@ type pNext*: pointer reductionMode*: VkSamplerReductionMode - VkSamplerReductionModeCreateInfoEXT* = object + VkSamplerReductionModeCreateInfoEXT* = VkSamplerReductionModeCreateInfo VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT* = object sType*: VkStructureType @@ -4817,7 +4825,7 @@ type inlineUniformBlock*: VkBool32 descriptorBindingInlineUniformBlockUpdateAfterBind*: VkBool32 - VkPhysicalDeviceInlineUniformBlockFeaturesEXT* = object + VkPhysicalDeviceInlineUniformBlockFeaturesEXT* = VkPhysicalDeviceInlineUniformBlockFeatures VkPhysicalDeviceInlineUniformBlockProperties* = object sType*: VkStructureType @@ -4828,7 +4836,7 @@ type maxDescriptorSetInlineUniformBlocks*: uint32 maxDescriptorSetUpdateAfterBindInlineUniformBlocks*: uint32 - VkPhysicalDeviceInlineUniformBlockPropertiesEXT* = object + VkPhysicalDeviceInlineUniformBlockPropertiesEXT* = VkPhysicalDeviceInlineUniformBlockProperties VkWriteDescriptorSetInlineUniformBlock* = object sType*: VkStructureType @@ -4836,14 +4844,14 @@ type dataSize*: uint32 pData*: pointer - VkWriteDescriptorSetInlineUniformBlockEXT* = object + VkWriteDescriptorSetInlineUniformBlockEXT* = VkWriteDescriptorSetInlineUniformBlock VkDescriptorPoolInlineUniformBlockCreateInfo* = object sType*: VkStructureType pNext*: pointer maxInlineUniformBlockBindings*: uint32 - VkDescriptorPoolInlineUniformBlockCreateInfoEXT* = object + VkDescriptorPoolInlineUniformBlockCreateInfoEXT* = VkDescriptorPoolInlineUniformBlockCreateInfo VkPipelineCoverageModulationStateCreateInfoNV* = object sType*: VkStructureType @@ -4860,7 +4868,7 @@ type viewFormatCount*: uint32 pViewFormats*: ptr VkFormat - VkImageFormatListCreateInfoKHR* = object + VkImageFormatListCreateInfoKHR* = VkImageFormatListCreateInfo VkValidationCacheCreateInfoEXT* = object sType*: VkStructureType @@ -4880,21 +4888,21 @@ type maxPerSetDescriptors*: uint32 maxMemoryAllocationSize*: VkDeviceSize - VkPhysicalDeviceMaintenance3PropertiesKHR* = object + VkPhysicalDeviceMaintenance3PropertiesKHR* = VkPhysicalDeviceMaintenance3Properties VkPhysicalDeviceMaintenance4Features* = object sType*: VkStructureType pNext*: pointer maintenance4*: VkBool32 - VkPhysicalDeviceMaintenance4FeaturesKHR* = object + VkPhysicalDeviceMaintenance4FeaturesKHR* = VkPhysicalDeviceMaintenance4Features VkPhysicalDeviceMaintenance4Properties* = object sType*: VkStructureType pNext*: pointer maxBufferSize*: VkDeviceSize - VkPhysicalDeviceMaintenance4PropertiesKHR* = object + VkPhysicalDeviceMaintenance4PropertiesKHR* = VkPhysicalDeviceMaintenance4Properties VkPhysicalDeviceMaintenance5FeaturesKHR* = object sType*: VkStructureType @@ -4937,14 +4945,14 @@ type pNext*: pointer supported*: VkBool32 - VkDescriptorSetLayoutSupportKHR* = object + VkDescriptorSetLayoutSupportKHR* = VkDescriptorSetLayoutSupport VkPhysicalDeviceShaderDrawParametersFeatures* = object sType*: VkStructureType pNext*: pointer shaderDrawParameters*: VkBool32 - VkPhysicalDeviceShaderDrawParameterFeatures* = object + VkPhysicalDeviceShaderDrawParameterFeatures* = VkPhysicalDeviceShaderDrawParametersFeatures VkPhysicalDeviceShaderFloat16Int8Features* = object sType*: VkStructureType @@ -4952,9 +4960,9 @@ type shaderFloat16*: VkBool32 shaderInt8*: VkBool32 - VkPhysicalDeviceShaderFloat16Int8FeaturesKHR* = object + VkPhysicalDeviceShaderFloat16Int8FeaturesKHR* = VkPhysicalDeviceShaderFloat16Int8Features - VkPhysicalDeviceFloat16Int8FeaturesKHR* = object + VkPhysicalDeviceFloat16Int8FeaturesKHR* = VkPhysicalDeviceShaderFloat16Int8Features VkPhysicalDeviceFloatControlsProperties* = object sType*: VkStructureType @@ -4977,14 +4985,14 @@ type shaderRoundingModeRTZFloat32*: VkBool32 shaderRoundingModeRTZFloat64*: VkBool32 - VkPhysicalDeviceFloatControlsPropertiesKHR* = object + VkPhysicalDeviceFloatControlsPropertiesKHR* = VkPhysicalDeviceFloatControlsProperties VkPhysicalDeviceHostQueryResetFeatures* = object sType*: VkStructureType pNext*: pointer hostQueryReset*: VkBool32 - VkPhysicalDeviceHostQueryResetFeaturesEXT* = object + VkPhysicalDeviceHostQueryResetFeaturesEXT* = VkPhysicalDeviceHostQueryResetFeatures VkNativeBufferUsage2ANDROID* = object consumer*: uint64 @@ -5030,14 +5038,14 @@ type pNext*: pointer globalPriority*: VkQueueGlobalPriorityKHR - VkDeviceQueueGlobalPriorityCreateInfoEXT* = object + VkDeviceQueueGlobalPriorityCreateInfoEXT* = VkDeviceQueueGlobalPriorityCreateInfoKHR VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR* = object sType*: VkStructureType pNext*: pointer globalPriorityQuery*: VkBool32 - VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT* = object + VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT* = VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR VkQueueFamilyGlobalPriorityPropertiesKHR* = object sType*: VkStructureType @@ -5045,7 +5053,7 @@ type priorityCount*: uint32 priorities*: array[VK_MAX_GLOBAL_PRIORITY_SIZE_KHR, VkQueueGlobalPriorityKHR] - VkQueueFamilyGlobalPriorityPropertiesEXT* = object + VkQueueFamilyGlobalPriorityPropertiesEXT* = VkQueueFamilyGlobalPriorityPropertiesKHR VkDebugUtilsObjectNameInfoEXT* = object sType*: VkStructureType @@ -5149,7 +5157,7 @@ type pNext*: pointer timeDomain*: VkTimeDomainKHR - VkCalibratedTimestampInfoEXT* = object + VkCalibratedTimestampInfoEXT* = VkCalibratedTimestampInfoKHR VkPhysicalDeviceShaderCorePropertiesAMD* = object sType*: VkStructureType @@ -5206,7 +5214,7 @@ type descriptorBindingVariableDescriptorCount*: VkBool32 runtimeDescriptorArray*: VkBool32 - VkPhysicalDeviceDescriptorIndexingFeaturesEXT* = object + VkPhysicalDeviceDescriptorIndexingFeaturesEXT* = VkPhysicalDeviceDescriptorIndexingFeatures VkPhysicalDeviceDescriptorIndexingProperties* = object sType*: VkStructureType @@ -5235,7 +5243,7 @@ type maxDescriptorSetUpdateAfterBindStorageImages*: uint32 maxDescriptorSetUpdateAfterBindInputAttachments*: uint32 - VkPhysicalDeviceDescriptorIndexingPropertiesEXT* = object + VkPhysicalDeviceDescriptorIndexingPropertiesEXT* = VkPhysicalDeviceDescriptorIndexingProperties VkDescriptorSetLayoutBindingFlagsCreateInfo* = object sType*: VkStructureType @@ -5243,7 +5251,7 @@ type bindingCount*: uint32 pBindingFlags*: ptr VkDescriptorBindingFlags - VkDescriptorSetLayoutBindingFlagsCreateInfoEXT* = object + VkDescriptorSetLayoutBindingFlagsCreateInfoEXT* = VkDescriptorSetLayoutBindingFlagsCreateInfo VkDescriptorSetVariableDescriptorCountAllocateInfo* = object sType*: VkStructureType @@ -5251,14 +5259,14 @@ type descriptorSetCount*: uint32 pDescriptorCounts*: ptr uint32 - VkDescriptorSetVariableDescriptorCountAllocateInfoEXT* = object + VkDescriptorSetVariableDescriptorCountAllocateInfoEXT* = VkDescriptorSetVariableDescriptorCountAllocateInfo VkDescriptorSetVariableDescriptorCountLayoutSupport* = object sType*: VkStructureType pNext*: pointer maxVariableDescriptorCount*: uint32 - VkDescriptorSetVariableDescriptorCountLayoutSupportEXT* = object + VkDescriptorSetVariableDescriptorCountLayoutSupportEXT* = VkDescriptorSetVariableDescriptorCountLayoutSupport VkAttachmentDescription2* = object sType*: VkStructureType @@ -5273,7 +5281,7 @@ type initialLayout*: VkImageLayout finalLayout*: VkImageLayout - VkAttachmentDescription2KHR* = object + VkAttachmentDescription2KHR* = VkAttachmentDescription2 VkAttachmentReference2* = object sType*: VkStructureType @@ -5282,7 +5290,7 @@ type layout*: VkImageLayout aspectMask*: VkImageAspectFlags - VkAttachmentReference2KHR* = object + VkAttachmentReference2KHR* = VkAttachmentReference2 VkSubpassDescription2* = object sType*: VkStructureType @@ -5299,7 +5307,7 @@ type preserveAttachmentCount*: uint32 pPreserveAttachments*: ptr uint32 - VkSubpassDescription2KHR* = object + VkSubpassDescription2KHR* = VkSubpassDescription2 VkSubpassDependency2* = object sType*: VkStructureType @@ -5313,7 +5321,7 @@ type dependencyFlags*: VkDependencyFlags viewOffset*: int32 - VkSubpassDependency2KHR* = object + VkSubpassDependency2KHR* = VkSubpassDependency2 VkRenderPassCreateInfo2* = object sType*: VkStructureType @@ -5328,34 +5336,34 @@ type correlatedViewMaskCount*: uint32 pCorrelatedViewMasks*: ptr uint32 - VkRenderPassCreateInfo2KHR* = object + VkRenderPassCreateInfo2KHR* = VkRenderPassCreateInfo2 VkSubpassBeginInfo* = object sType*: VkStructureType pNext*: pointer contents*: VkSubpassContents - VkSubpassBeginInfoKHR* = object + VkSubpassBeginInfoKHR* = VkSubpassBeginInfo VkSubpassEndInfo* = object sType*: VkStructureType pNext*: pointer - VkSubpassEndInfoKHR* = object + VkSubpassEndInfoKHR* = VkSubpassEndInfo VkPhysicalDeviceTimelineSemaphoreFeatures* = object sType*: VkStructureType pNext*: pointer timelineSemaphore*: VkBool32 - VkPhysicalDeviceTimelineSemaphoreFeaturesKHR* = object + VkPhysicalDeviceTimelineSemaphoreFeaturesKHR* = VkPhysicalDeviceTimelineSemaphoreFeatures VkPhysicalDeviceTimelineSemaphoreProperties* = object sType*: VkStructureType pNext*: pointer maxTimelineSemaphoreValueDifference*: uint64 - VkPhysicalDeviceTimelineSemaphorePropertiesKHR* = object + VkPhysicalDeviceTimelineSemaphorePropertiesKHR* = VkPhysicalDeviceTimelineSemaphoreProperties VkSemaphoreTypeCreateInfo* = object sType*: VkStructureType @@ -5363,7 +5371,7 @@ type semaphoreType*: VkSemaphoreType initialValue*: uint64 - VkSemaphoreTypeCreateInfoKHR* = object + VkSemaphoreTypeCreateInfoKHR* = VkSemaphoreTypeCreateInfo VkTimelineSemaphoreSubmitInfo* = object sType*: VkStructureType @@ -5373,7 +5381,7 @@ type signalSemaphoreValueCount*: uint32 pSignalSemaphoreValues*: ptr uint64 - VkTimelineSemaphoreSubmitInfoKHR* = object + VkTimelineSemaphoreSubmitInfoKHR* = VkTimelineSemaphoreSubmitInfo VkSemaphoreWaitInfo* = object sType*: VkStructureType @@ -5383,7 +5391,7 @@ type pSemaphores*: ptr VkSemaphore pValues*: ptr uint64 - VkSemaphoreWaitInfoKHR* = object + VkSemaphoreWaitInfoKHR* = VkSemaphoreWaitInfo VkSemaphoreSignalInfo* = object sType*: VkStructureType @@ -5391,13 +5399,13 @@ type semaphore*: VkSemaphore value*: uint64 - VkSemaphoreSignalInfoKHR* = object + VkSemaphoreSignalInfoKHR* = VkSemaphoreSignalInfo VkVertexInputBindingDivisorDescriptionKHR* = object binding*: uint32 divisor*: uint32 - VkVertexInputBindingDivisorDescriptionEXT* = object + VkVertexInputBindingDivisorDescriptionEXT* = VkVertexInputBindingDivisorDescriptionKHR VkPipelineVertexInputDivisorStateCreateInfoKHR* = object sType*: VkStructureType @@ -5405,7 +5413,7 @@ type vertexBindingDivisorCount*: uint32 pVertexBindingDivisors*: ptr VkVertexInputBindingDivisorDescriptionKHR - VkPipelineVertexInputDivisorStateCreateInfoEXT* = object + VkPipelineVertexInputDivisorStateCreateInfoEXT* = VkPipelineVertexInputDivisorStateCreateInfoKHR VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT* = object sType*: VkStructureType @@ -5476,7 +5484,7 @@ type uniformAndStorageBuffer8BitAccess*: VkBool32 storagePushConstant8*: VkBool32 - VkPhysicalDevice8BitStorageFeaturesKHR* = object + VkPhysicalDevice8BitStorageFeaturesKHR* = VkPhysicalDevice8BitStorageFeatures VkPhysicalDeviceConditionalRenderingFeaturesEXT* = object sType*: VkStructureType @@ -5491,7 +5499,7 @@ type vulkanMemoryModelDeviceScope*: VkBool32 vulkanMemoryModelAvailabilityVisibilityChains*: VkBool32 - VkPhysicalDeviceVulkanMemoryModelFeaturesKHR* = object + VkPhysicalDeviceVulkanMemoryModelFeaturesKHR* = VkPhysicalDeviceVulkanMemoryModelFeatures VkPhysicalDeviceShaderAtomicInt64Features* = object sType*: VkStructureType @@ -5499,7 +5507,7 @@ type shaderBufferInt64Atomics*: VkBool32 shaderSharedInt64Atomics*: VkBool32 - VkPhysicalDeviceShaderAtomicInt64FeaturesKHR* = object + VkPhysicalDeviceShaderAtomicInt64FeaturesKHR* = VkPhysicalDeviceShaderAtomicInt64Features VkPhysicalDeviceShaderAtomicFloatFeaturesEXT* = object sType*: VkStructureType @@ -5539,7 +5547,7 @@ type vertexAttributeInstanceRateDivisor*: VkBool32 vertexAttributeInstanceRateZeroDivisor*: VkBool32 - VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT* = object + VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT* = VkPhysicalDeviceVertexAttributeDivisorFeaturesKHR VkQueueFamilyCheckpointPropertiesNV* = object sType*: VkStructureType @@ -5560,7 +5568,7 @@ type independentResolveNone*: VkBool32 independentResolve*: VkBool32 - VkPhysicalDeviceDepthStencilResolvePropertiesKHR* = object + VkPhysicalDeviceDepthStencilResolvePropertiesKHR* = VkPhysicalDeviceDepthStencilResolveProperties VkSubpassDescriptionDepthStencilResolve* = object sType*: VkStructureType @@ -5569,7 +5577,7 @@ type stencilResolveMode*: VkResolveModeFlagBits pDepthStencilResolveAttachment*: ptr VkAttachmentReference2 - VkSubpassDescriptionDepthStencilResolveKHR* = object + VkSubpassDescriptionDepthStencilResolveKHR* = VkSubpassDescriptionDepthStencilResolve VkImageViewASTCDecodeModeEXT* = object sType*: VkStructureType @@ -5639,7 +5647,7 @@ type computeDerivativeGroupQuads*: VkBool32 computeDerivativeGroupLinear*: VkBool32 - VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV* = object + VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV* = VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR VkPhysicalDeviceShaderImageFootprintFeaturesNV* = object sType*: VkStructureType @@ -6049,7 +6057,7 @@ type pNext*: pointer stencilUsage*: VkImageUsageFlags - VkImageStencilUsageCreateInfoEXT* = object + VkImageStencilUsageCreateInfoEXT* = VkImageStencilUsageCreateInfo VkDeviceMemoryOverallocationCreateInfoAMD* = object sType*: VkStructureType @@ -6109,7 +6117,7 @@ type pNext*: pointer scalarBlockLayout*: VkBool32 - VkPhysicalDeviceScalarBlockLayoutFeaturesEXT* = object + VkPhysicalDeviceScalarBlockLayoutFeaturesEXT* = VkPhysicalDeviceScalarBlockLayoutFeatures VkSurfaceProtectedCapabilitiesKHR* = object sType*: VkStructureType @@ -6121,7 +6129,7 @@ type pNext*: pointer uniformBufferStandardLayout*: VkBool32 - VkPhysicalDeviceUniformBufferStandardLayoutFeaturesKHR* = object + VkPhysicalDeviceUniformBufferStandardLayoutFeaturesKHR* = VkPhysicalDeviceUniformBufferStandardLayoutFeatures VkPhysicalDeviceDepthClipEnableFeaturesEXT* = object sType*: VkStructureType @@ -6162,7 +6170,7 @@ type bufferDeviceAddressCaptureReplay*: VkBool32 bufferDeviceAddressMultiDevice*: VkBool32 - VkPhysicalDeviceBufferDeviceAddressFeaturesKHR* = object + VkPhysicalDeviceBufferDeviceAddressFeaturesKHR* = VkPhysicalDeviceBufferDeviceAddressFeatures VkPhysicalDeviceBufferDeviceAddressFeaturesEXT* = object sType*: VkStructureType @@ -6171,23 +6179,23 @@ type bufferDeviceAddressCaptureReplay*: VkBool32 bufferDeviceAddressMultiDevice*: VkBool32 - VkPhysicalDeviceBufferAddressFeaturesEXT* = object + VkPhysicalDeviceBufferAddressFeaturesEXT* = VkPhysicalDeviceBufferDeviceAddressFeaturesEXT VkBufferDeviceAddressInfo* = object sType*: VkStructureType pNext*: pointer buffer*: VkBuffer - VkBufferDeviceAddressInfoKHR* = object + VkBufferDeviceAddressInfoKHR* = VkBufferDeviceAddressInfo - VkBufferDeviceAddressInfoEXT* = object + VkBufferDeviceAddressInfoEXT* = VkBufferDeviceAddressInfo VkBufferOpaqueCaptureAddressCreateInfo* = object sType*: VkStructureType pNext*: pointer opaqueCaptureAddress*: uint64 - VkBufferOpaqueCaptureAddressCreateInfoKHR* = object + VkBufferOpaqueCaptureAddressCreateInfoKHR* = VkBufferOpaqueCaptureAddressCreateInfo VkBufferDeviceAddressCreateInfoEXT* = object sType*: VkStructureType @@ -6210,7 +6218,7 @@ type pNext*: pointer imagelessFramebuffer*: VkBool32 - VkPhysicalDeviceImagelessFramebufferFeaturesKHR* = object + VkPhysicalDeviceImagelessFramebufferFeaturesKHR* = VkPhysicalDeviceImagelessFramebufferFeatures VkFramebufferAttachmentsCreateInfo* = object sType*: VkStructureType @@ -6218,7 +6226,7 @@ type attachmentImageInfoCount*: uint32 pAttachmentImageInfos*: ptr VkFramebufferAttachmentImageInfo - VkFramebufferAttachmentsCreateInfoKHR* = object + VkFramebufferAttachmentsCreateInfoKHR* = VkFramebufferAttachmentsCreateInfo VkFramebufferAttachmentImageInfo* = object sType*: VkStructureType @@ -6231,7 +6239,7 @@ type viewFormatCount*: uint32 pViewFormats*: ptr VkFormat - VkFramebufferAttachmentImageInfoKHR* = object + VkFramebufferAttachmentImageInfoKHR* = VkFramebufferAttachmentImageInfo VkRenderPassAttachmentBeginInfo* = object sType*: VkStructureType @@ -6239,14 +6247,14 @@ type attachmentCount*: uint32 pAttachments*: ptr VkImageView - VkRenderPassAttachmentBeginInfoKHR* = object + VkRenderPassAttachmentBeginInfoKHR* = VkRenderPassAttachmentBeginInfo VkPhysicalDeviceTextureCompressionASTCHDRFeatures* = object sType*: VkStructureType pNext*: pointer textureCompressionASTC_HDR*: VkBool32 - VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT* = object + VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT* = VkPhysicalDeviceTextureCompressionASTCHDRFeatures VkPhysicalDeviceCooperativeMatrixFeaturesNV* = object sType*: VkStructureType @@ -6298,7 +6306,7 @@ type flags*: VkPipelineCreationFeedbackFlags duration*: uint64 - VkPipelineCreationFeedbackEXT* = object + VkPipelineCreationFeedbackEXT* = VkPipelineCreationFeedback VkPipelineCreationFeedbackCreateInfo* = object sType*: VkStructureType @@ -6307,7 +6315,7 @@ type pipelineStageCreationFeedbackCount*: uint32 pPipelineStageCreationFeedbacks*: ptr ptr VkPipelineCreationFeedback - VkPipelineCreationFeedbackCreateInfoEXT* = object + VkPipelineCreationFeedbackCreateInfoEXT* = VkPipelineCreationFeedbackCreateInfo VkSurfaceFullScreenExclusiveInfoEXT* = object sType*: VkStructureType @@ -6447,7 +6455,7 @@ type pNext*: pointer performanceCountersSampling*: VkQueryPoolSamplingModeINTEL - VkQueryPoolCreateInfoINTEL* = object + VkQueryPoolCreateInfoINTEL* = VkQueryPoolPerformanceQueryCreateInfoINTEL VkPerformanceMarkerInfoINTEL* = object sType*: VkStructureType @@ -6482,7 +6490,7 @@ type pNext*: pointer indexTypeUint8*: VkBool32 - VkPhysicalDeviceIndexTypeUint8FeaturesEXT* = object + VkPhysicalDeviceIndexTypeUint8FeaturesEXT* = VkPhysicalDeviceIndexTypeUint8FeaturesKHR VkPhysicalDeviceShaderSMBuiltinsPropertiesNV* = object sType*: VkStructureType @@ -6507,7 +6515,7 @@ type pNext*: pointer separateDepthStencilLayouts*: VkBool32 - VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR* = object + VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR* = VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures VkAttachmentReferenceStencilLayout* = object sType*: VkStructureType @@ -6520,7 +6528,7 @@ type primitiveTopologyListRestart*: VkBool32 primitiveTopologyPatchListRestart*: VkBool32 - VkAttachmentReferenceStencilLayoutKHR* = object + VkAttachmentReferenceStencilLayoutKHR* = VkAttachmentReferenceStencilLayout VkAttachmentDescriptionStencilLayout* = object sType*: VkStructureType @@ -6528,7 +6536,7 @@ type stencilInitialLayout*: VkImageLayout stencilFinalLayout*: VkImageLayout - VkAttachmentDescriptionStencilLayoutKHR* = object + VkAttachmentDescriptionStencilLayoutKHR* = VkAttachmentDescriptionStencilLayout VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR* = object sType*: VkStructureType @@ -6540,7 +6548,7 @@ type pNext*: pointer pipeline*: VkPipeline - VkPipelineInfoEXT* = object + VkPipelineInfoEXT* = VkPipelineInfoKHR VkPipelineExecutablePropertiesKHR* = object sType*: VkStructureType @@ -6584,7 +6592,7 @@ type pNext*: pointer shaderDemoteToHelperInvocation*: VkBool32 - VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT* = object + VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT* = VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT* = object sType*: VkStructureType @@ -6599,7 +6607,7 @@ type uniformTexelBufferOffsetAlignmentBytes*: VkDeviceSize uniformTexelBufferOffsetSingleTexelAlignment*: VkBool32 - VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT* = object + VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT* = VkPhysicalDeviceTexelBufferAlignmentProperties VkPhysicalDeviceSubgroupSizeControlFeatures* = object sType*: VkStructureType @@ -6607,7 +6615,7 @@ type subgroupSizeControl*: VkBool32 computeFullSubgroups*: VkBool32 - VkPhysicalDeviceSubgroupSizeControlFeaturesEXT* = object + VkPhysicalDeviceSubgroupSizeControlFeaturesEXT* = VkPhysicalDeviceSubgroupSizeControlFeatures VkPhysicalDeviceSubgroupSizeControlProperties* = object sType*: VkStructureType @@ -6617,16 +6625,16 @@ type maxComputeWorkgroupSubgroups*: uint32 requiredSubgroupSizeStages*: VkShaderStageFlags - VkPhysicalDeviceSubgroupSizeControlPropertiesEXT* = object + VkPhysicalDeviceSubgroupSizeControlPropertiesEXT* = VkPhysicalDeviceSubgroupSizeControlProperties VkPipelineShaderStageRequiredSubgroupSizeCreateInfo* = object sType*: VkStructureType pNext*: pointer requiredSubgroupSize*: uint32 - VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT* = object + VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT* = VkPipelineShaderStageRequiredSubgroupSizeCreateInfo - VkShaderRequiredSubgroupSizeCreateInfoEXT* = object + VkShaderRequiredSubgroupSizeCreateInfoEXT* = VkPipelineShaderStageRequiredSubgroupSizeCreateInfo VkSubpassShadingPipelineCreateInfoHUAWEI* = object sType*: VkStructureType @@ -6652,14 +6660,14 @@ type pNext*: pointer opaqueCaptureAddress*: uint64 - VkMemoryOpaqueCaptureAddressAllocateInfoKHR* = object + VkMemoryOpaqueCaptureAddressAllocateInfoKHR* = VkMemoryOpaqueCaptureAddressAllocateInfo VkDeviceMemoryOpaqueCaptureAddressInfo* = object sType*: VkStructureType pNext*: pointer memory*: VkDeviceMemory - VkDeviceMemoryOpaqueCaptureAddressInfoKHR* = object + VkDeviceMemoryOpaqueCaptureAddressInfoKHR* = VkDeviceMemoryOpaqueCaptureAddressInfo VkPhysicalDeviceLineRasterizationFeaturesKHR* = object sType*: VkStructureType @@ -6671,14 +6679,14 @@ type stippledBresenhamLines*: VkBool32 stippledSmoothLines*: VkBool32 - VkPhysicalDeviceLineRasterizationFeaturesEXT* = object + VkPhysicalDeviceLineRasterizationFeaturesEXT* = VkPhysicalDeviceLineRasterizationFeaturesKHR VkPhysicalDeviceLineRasterizationPropertiesKHR* = object sType*: VkStructureType pNext*: pointer lineSubPixelPrecisionBits*: uint32 - VkPhysicalDeviceLineRasterizationPropertiesEXT* = object + VkPhysicalDeviceLineRasterizationPropertiesEXT* = VkPhysicalDeviceLineRasterizationPropertiesKHR VkPipelineRasterizationLineStateCreateInfoKHR* = object sType*: VkStructureType @@ -6688,14 +6696,14 @@ type lineStippleFactor*: uint32 lineStipplePattern*: uint16 - VkPipelineRasterizationLineStateCreateInfoEXT* = object + VkPipelineRasterizationLineStateCreateInfoEXT* = VkPipelineRasterizationLineStateCreateInfoKHR VkPhysicalDevicePipelineCreationCacheControlFeatures* = object sType*: VkStructureType pNext*: pointer pipelineCreationCacheControl*: VkBool32 - VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT* = object + VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT* = VkPhysicalDevicePipelineCreationCacheControlFeatures VkPhysicalDeviceVulkan11Features* = object sType*: VkStructureType @@ -6939,7 +6947,7 @@ type description*: array[VK_MAX_DESCRIPTION_SIZE, char] layer*: array[VK_MAX_EXTENSION_NAME_SIZE, char] - VkPhysicalDeviceToolPropertiesEXT* = object + VkPhysicalDeviceToolPropertiesEXT* = VkPhysicalDeviceToolProperties VkSamplerCustomBorderColorCreateInfoEXT* = object sType*: VkStructureType @@ -7054,12 +7062,12 @@ type maxY*: float32 maxZ*: float32 - VkAabbPositionsNV* = object + VkAabbPositionsNV* = VkAabbPositionsKHR VkTransformMatrixKHR* = object matrix*: array[3, float32] - VkTransformMatrixNV* = object + VkTransformMatrixNV* = VkTransformMatrixKHR VkAccelerationStructureInstanceKHR* = object transform*: VkTransformMatrixKHR @@ -7069,7 +7077,7 @@ type flags*: VkGeometryInstanceFlagsKHR accelerationStructureReference*: uint64 - VkAccelerationStructureInstanceNV* = object + VkAccelerationStructureInstanceNV* = VkAccelerationStructureInstanceKHR VkAccelerationStructureDeviceAddressInfoKHR* = object sType*: VkStructureType @@ -7230,7 +7238,7 @@ type pNext*: pointer shaderZeroInitializeWorkgroupMemory*: VkBool32 - VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR* = object + VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR* = VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* = object sType*: VkStructureType @@ -7255,7 +7263,7 @@ type pNext*: pointer robustImageAccess*: VkBool32 - VkPhysicalDeviceImageRobustnessFeaturesEXT* = object + VkPhysicalDeviceImageRobustnessFeaturesEXT* = VkPhysicalDeviceImageRobustnessFeatures VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* = object sType*: VkStructureType @@ -7318,7 +7326,7 @@ type dstOffset*: VkDeviceSize size*: VkDeviceSize - VkBufferCopy2KHR* = object + VkBufferCopy2KHR* = VkBufferCopy2 VkImageCopy2* = object sType*: VkStructureType @@ -7329,7 +7337,7 @@ type dstOffset*: VkOffset3D extent*: VkExtent3D - VkImageCopy2KHR* = object + VkImageCopy2KHR* = VkImageCopy2 VkImageBlit2* = object sType*: VkStructureType @@ -7339,7 +7347,7 @@ type dstSubresource*: VkImageSubresourceLayers dstOffsets*: array[2, VkOffset3D] - VkImageBlit2KHR* = object + VkImageBlit2KHR* = VkImageBlit2 VkBufferImageCopy2* = object sType*: VkStructureType @@ -7351,7 +7359,7 @@ type imageOffset*: VkOffset3D imageExtent*: VkExtent3D - VkBufferImageCopy2KHR* = object + VkBufferImageCopy2KHR* = VkBufferImageCopy2 VkImageResolve2* = object sType*: VkStructureType @@ -7362,7 +7370,7 @@ type dstOffset*: VkOffset3D extent*: VkExtent3D - VkImageResolve2KHR* = object + VkImageResolve2KHR* = VkImageResolve2 VkCopyBufferInfo2* = object sType*: VkStructureType @@ -7372,7 +7380,7 @@ type regionCount*: uint32 pRegions*: ptr VkBufferCopy2 - VkCopyBufferInfo2KHR* = object + VkCopyBufferInfo2KHR* = VkCopyBufferInfo2 VkCopyImageInfo2* = object sType*: VkStructureType @@ -7384,7 +7392,7 @@ type regionCount*: uint32 pRegions*: ptr VkImageCopy2 - VkCopyImageInfo2KHR* = object + VkCopyImageInfo2KHR* = VkCopyImageInfo2 VkBlitImageInfo2* = object sType*: VkStructureType @@ -7397,7 +7405,7 @@ type pRegions*: ptr VkImageBlit2 filter*: VkFilter - VkBlitImageInfo2KHR* = object + VkBlitImageInfo2KHR* = VkBlitImageInfo2 VkCopyBufferToImageInfo2* = object sType*: VkStructureType @@ -7408,7 +7416,7 @@ type regionCount*: uint32 pRegions*: ptr VkBufferImageCopy2 - VkCopyBufferToImageInfo2KHR* = object + VkCopyBufferToImageInfo2KHR* = VkCopyBufferToImageInfo2 VkCopyImageToBufferInfo2* = object sType*: VkStructureType @@ -7419,7 +7427,7 @@ type regionCount*: uint32 pRegions*: ptr VkBufferImageCopy2 - VkCopyImageToBufferInfo2KHR* = object + VkCopyImageToBufferInfo2KHR* = VkCopyImageToBufferInfo2 VkResolveImageInfo2* = object sType*: VkStructureType @@ -7431,7 +7439,7 @@ type regionCount*: uint32 pRegions*: ptr VkImageResolve2 - VkResolveImageInfo2KHR* = object + VkResolveImageInfo2KHR* = VkResolveImageInfo2 VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT* = object sType*: VkStructureType @@ -7490,7 +7498,7 @@ type pNext*: pointer shaderTerminateInvocation*: VkBool32 - VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR* = object + VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR* = VkPhysicalDeviceShaderTerminateInvocationFeatures VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV* = object sType*: VkStructureType @@ -7539,13 +7547,13 @@ type pNext*: pointer mutableDescriptorType*: VkBool32 - VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE* = object + VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE* = VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT VkMutableDescriptorTypeListEXT* = object descriptorTypeCount*: uint32 pDescriptorTypes*: ptr VkDescriptorType - VkMutableDescriptorTypeListVALVE* = object + VkMutableDescriptorTypeListVALVE* = VkMutableDescriptorTypeListEXT VkMutableDescriptorTypeCreateInfoEXT* = object sType*: VkStructureType @@ -7553,7 +7561,7 @@ type mutableDescriptorTypeListCount*: uint32 pMutableDescriptorTypeLists*: ptr VkMutableDescriptorTypeListEXT - VkMutableDescriptorTypeCreateInfoVALVE* = object + VkMutableDescriptorTypeCreateInfoVALVE* = VkMutableDescriptorTypeCreateInfoEXT VkPhysicalDeviceDepthClipControlFeaturesEXT* = object sType*: VkStructureType @@ -7610,7 +7618,7 @@ type dstStageMask*: VkPipelineStageFlags2 dstAccessMask*: VkAccessFlags2 - VkMemoryBarrier2KHR* = object + VkMemoryBarrier2KHR* = VkMemoryBarrier2 VkImageMemoryBarrier2* = object sType*: VkStructureType @@ -7626,7 +7634,7 @@ type image*: VkImage subresourceRange*: VkImageSubresourceRange - VkImageMemoryBarrier2KHR* = object + VkImageMemoryBarrier2KHR* = VkImageMemoryBarrier2 VkBufferMemoryBarrier2* = object sType*: VkStructureType @@ -7641,7 +7649,7 @@ type offset*: VkDeviceSize size*: VkDeviceSize - VkBufferMemoryBarrier2KHR* = object + VkBufferMemoryBarrier2KHR* = VkBufferMemoryBarrier2 VkDependencyInfo* = object sType*: VkStructureType @@ -7654,7 +7662,7 @@ type imageMemoryBarrierCount*: uint32 pImageMemoryBarriers*: ptr VkImageMemoryBarrier2 - VkDependencyInfoKHR* = object + VkDependencyInfoKHR* = VkDependencyInfo VkSemaphoreSubmitInfo* = object sType*: VkStructureType @@ -7664,7 +7672,7 @@ type stageMask*: VkPipelineStageFlags2 deviceIndex*: uint32 - VkSemaphoreSubmitInfoKHR* = object + VkSemaphoreSubmitInfoKHR* = VkSemaphoreSubmitInfo VkCommandBufferSubmitInfo* = object sType*: VkStructureType @@ -7672,7 +7680,7 @@ type commandBuffer*: VkCommandBuffer deviceMask*: uint32 - VkCommandBufferSubmitInfoKHR* = object + VkCommandBufferSubmitInfoKHR* = VkCommandBufferSubmitInfo VkSubmitInfo2* = object sType*: VkStructureType @@ -7685,7 +7693,7 @@ type signalSemaphoreInfoCount*: uint32 pSignalSemaphoreInfos*: ptr VkSemaphoreSubmitInfo - VkSubmitInfo2KHR* = object + VkSubmitInfo2KHR* = VkSubmitInfo2 VkQueueFamilyCheckpointProperties2NV* = object sType*: VkStructureType @@ -7703,7 +7711,7 @@ type pNext*: pointer synchronization2*: VkBool32 - VkPhysicalDeviceSynchronization2FeaturesKHR* = object + VkPhysicalDeviceSynchronization2FeaturesKHR* = VkPhysicalDeviceSynchronization2Features VkPhysicalDeviceHostImageCopyFeaturesEXT* = object sType*: VkStructureType @@ -8025,28 +8033,28 @@ type queryPool*: VkQueryPool firstQuery*: uint32 queryCount*: uint32 - StdVideoH264ProfileIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object - StdVideoH264LevelIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object - StdVideoH264ChromaFormatIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object - StdVideoH264PocType* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object - StdVideoH264SpsFlags* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object - StdVideoH264ScalingLists* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object - StdVideoH264SequenceParameterSetVui* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object - StdVideoH264AspectRatioIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object - StdVideoH264HrdParameters* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object - StdVideoH264SpsVuiFlags* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object - StdVideoH264WeightedBipredIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object - StdVideoH264PpsFlags* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object - StdVideoH264SliceType* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object - StdVideoH264CabacInitIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object - StdVideoH264DisableDeblockingFilterIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object - StdVideoH264PictureType* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object - StdVideoH264ModificationOfPicNumsIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object - StdVideoH264MemMgmtControlOp* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object - StdVideoDecodeH264PictureInfo* {.header: "vk_video/vulkan_video_codec_h264std_decode.h".} = ptr object - StdVideoDecodeH264ReferenceInfo* {.header: "vk_video/vulkan_video_codec_h264std_decode.h".} = ptr object - StdVideoDecodeH264PictureInfoFlags* {.header: "vk_video/vulkan_video_codec_h264std_decode.h".} = ptr object - StdVideoDecodeH264ReferenceInfoFlags* {.header: "vk_video/vulkan_video_codec_h264std_decode.h".} = ptr object + StdVideoH264ProfileIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object + StdVideoH264LevelIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object + StdVideoH264ChromaFormatIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object + StdVideoH264PocType* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object + StdVideoH264SpsFlags* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object + StdVideoH264ScalingLists* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object + StdVideoH264SequenceParameterSetVui* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object + StdVideoH264AspectRatioIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object + StdVideoH264HrdParameters* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object + StdVideoH264SpsVuiFlags* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object + StdVideoH264WeightedBipredIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object + StdVideoH264PpsFlags* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object + StdVideoH264SliceType* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object + StdVideoH264CabacInitIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object + StdVideoH264DisableDeblockingFilterIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object + StdVideoH264PictureType* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object + StdVideoH264ModificationOfPicNumsIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object + StdVideoH264MemMgmtControlOp* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object + StdVideoDecodeH264PictureInfo* {.header: "vk_video/vulkan_video_codec_h264std_decode.h".} = object + StdVideoDecodeH264ReferenceInfo* {.header: "vk_video/vulkan_video_codec_h264std_decode.h".} = object + StdVideoDecodeH264PictureInfoFlags* {.header: "vk_video/vulkan_video_codec_h264std_decode.h".} = object + StdVideoDecodeH264ReferenceInfoFlags* {.header: "vk_video/vulkan_video_codec_h264std_decode.h".} = object VkVideoDecodeH264ProfileInfoKHR* = object sType*: VkStructureType @@ -8059,8 +8067,8 @@ type pNext*: pointer maxLevelIdc*: StdVideoH264LevelIdc fieldOffsetGranularity*: VkOffset2D - StdVideoH264SequenceParameterSet* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object - StdVideoH264PictureParameterSet* {.header: "vk_video/vulkan_video_codec_h264std.h".} = ptr object + StdVideoH264SequenceParameterSet* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object + StdVideoH264PictureParameterSet* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object VkVideoDecodeH264SessionParametersAddInfoKHR* = object sType*: VkStructureType @@ -8088,28 +8096,28 @@ type sType*: VkStructureType pNext*: pointer pStdReferenceInfo*: ptr StdVideoDecodeH264ReferenceInfo - StdVideoH265ProfileIdc* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object - StdVideoH265VideoParameterSet* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object - StdVideoH265SequenceParameterSet* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object - StdVideoH265PictureParameterSet* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object - StdVideoH265DecPicBufMgr* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object - StdVideoH265HrdParameters* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object - StdVideoH265VpsFlags* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object - StdVideoH265LevelIdc* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object - StdVideoH265SpsFlags* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object - StdVideoH265ScalingLists* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object - StdVideoH265SequenceParameterSetVui* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object - StdVideoH265PredictorPaletteEntries* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object - StdVideoH265PpsFlags* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object - StdVideoH265SubLayerHrdParameters* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object - StdVideoH265HrdFlags* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object - StdVideoH265SpsVuiFlags* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object - StdVideoH265SliceType* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object - StdVideoH265PictureType* {.header: "vk_video/vulkan_video_codec_h265std.h".} = ptr object - StdVideoDecodeH265PictureInfo* {.header: "vk_video/vulkan_video_codec_h265std_decode.h".} = ptr object - StdVideoDecodeH265ReferenceInfo* {.header: "vk_video/vulkan_video_codec_h265std_decode.h".} = ptr object - StdVideoDecodeH265PictureInfoFlags* {.header: "vk_video/vulkan_video_codec_h265std_decode.h".} = ptr object - StdVideoDecodeH265ReferenceInfoFlags* {.header: "vk_video/vulkan_video_codec_h265std_decode.h".} = ptr object + StdVideoH265ProfileIdc* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object + StdVideoH265VideoParameterSet* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object + StdVideoH265SequenceParameterSet* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object + StdVideoH265PictureParameterSet* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object + StdVideoH265DecPicBufMgr* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object + StdVideoH265HrdParameters* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object + StdVideoH265VpsFlags* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object + StdVideoH265LevelIdc* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object + StdVideoH265SpsFlags* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object + StdVideoH265ScalingLists* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object + StdVideoH265SequenceParameterSetVui* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object + StdVideoH265PredictorPaletteEntries* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object + StdVideoH265PpsFlags* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object + StdVideoH265SubLayerHrdParameters* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object + StdVideoH265HrdFlags* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object + StdVideoH265SpsVuiFlags* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object + StdVideoH265SliceType* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object + StdVideoH265PictureType* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object + StdVideoDecodeH265PictureInfo* {.header: "vk_video/vulkan_video_codec_h265std_decode.h".} = object + StdVideoDecodeH265ReferenceInfo* {.header: "vk_video/vulkan_video_codec_h265std_decode.h".} = object + StdVideoDecodeH265PictureInfoFlags* {.header: "vk_video/vulkan_video_codec_h265std_decode.h".} = object + StdVideoDecodeH265ReferenceInfoFlags* {.header: "vk_video/vulkan_video_codec_h265std_decode.h".} = object VkVideoDecodeH265ProfileInfoKHR* = object sType*: VkStructureType @@ -8150,11 +8158,11 @@ type sType*: VkStructureType pNext*: pointer pStdReferenceInfo*: ptr StdVideoDecodeH265ReferenceInfo - StdVideoAV1Profile* {.header: "vk_video/vulkan_video_codec_av1std.h".} = ptr object - StdVideoAV1Level* {.header: "vk_video/vulkan_video_codec_av1std.h".} = ptr object - StdVideoAV1SequenceHeader* {.header: "vk_video/vulkan_video_codec_av1std.h".} = ptr object - StdVideoDecodeAV1PictureInfo* {.header: "vk_video/vulkan_video_codec_av1std_decode.h".} = ptr object - StdVideoDecodeAV1ReferenceInfo* {.header: "vk_video/vulkan_video_codec_av1std_decode.h".} = ptr object + StdVideoAV1Profile* {.header: "vk_video/vulkan_video_codec_av1std.h".} = object + StdVideoAV1Level* {.header: "vk_video/vulkan_video_codec_av1std.h".} = object + StdVideoAV1SequenceHeader* {.header: "vk_video/vulkan_video_codec_av1std.h".} = object + StdVideoDecodeAV1PictureInfo* {.header: "vk_video/vulkan_video_codec_av1std_decode.h".} = object + StdVideoDecodeAV1ReferenceInfo* {.header: "vk_video/vulkan_video_codec_av1std_decode.h".} = object VkVideoDecodeAV1ProfileInfoKHR* = object sType*: VkStructureType @@ -8341,16 +8349,16 @@ type preferredMaxL0ReferenceCount*: uint32 preferredMaxL1ReferenceCount*: uint32 preferredStdEntropyCodingModeFlag*: VkBool32 - StdVideoEncodeH264SliceHeader* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = ptr object - StdVideoEncodeH264PictureInfo* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = ptr object - StdVideoEncodeH264ReferenceInfo* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = ptr object - StdVideoEncodeH264SliceHeaderFlags* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = ptr object - StdVideoEncodeH264ReferenceListsInfo* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = ptr object - StdVideoEncodeH264PictureInfoFlags* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = ptr object - StdVideoEncodeH264ReferenceInfoFlags* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = ptr object - StdVideoEncodeH264RefMgmtFlags* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = ptr object - StdVideoEncodeH264RefListModEntry* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = ptr object - StdVideoEncodeH264RefPicMarkingEntry* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = ptr object + StdVideoEncodeH264SliceHeader* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = object + StdVideoEncodeH264PictureInfo* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = object + StdVideoEncodeH264ReferenceInfo* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = object + StdVideoEncodeH264SliceHeaderFlags* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = object + StdVideoEncodeH264ReferenceListsInfo* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = object + StdVideoEncodeH264PictureInfoFlags* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = object + StdVideoEncodeH264ReferenceInfoFlags* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = object + StdVideoEncodeH264RefMgmtFlags* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = object + StdVideoEncodeH264RefListModEntry* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = object + StdVideoEncodeH264RefPicMarkingEntry* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = object VkVideoEncodeH264SessionCreateInfoKHR* = object sType*: VkStructureType @@ -8479,14 +8487,14 @@ type preferredConstantQp*: VkVideoEncodeH265QpKHR preferredMaxL0ReferenceCount*: uint32 preferredMaxL1ReferenceCount*: uint32 - StdVideoEncodeH265PictureInfoFlags* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = ptr object - StdVideoEncodeH265PictureInfo* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = ptr object - StdVideoEncodeH265SliceSegmentHeader* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = ptr object - StdVideoEncodeH265ReferenceInfo* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = ptr object - StdVideoEncodeH265ReferenceListsInfo* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = ptr object - StdVideoEncodeH265SliceSegmentHeaderFlags* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = ptr object - StdVideoEncodeH265ReferenceInfoFlags* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = ptr object - StdVideoEncodeH265ReferenceModificationFlags* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = ptr object + StdVideoEncodeH265PictureInfoFlags* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = object + StdVideoEncodeH265PictureInfo* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = object + StdVideoEncodeH265SliceSegmentHeader* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = object + StdVideoEncodeH265ReferenceInfo* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = object + StdVideoEncodeH265ReferenceListsInfo* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = object + StdVideoEncodeH265SliceSegmentHeaderFlags* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = object + StdVideoEncodeH265ReferenceInfoFlags* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = object + StdVideoEncodeH265ReferenceModificationFlags* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = object VkVideoEncodeH265SessionCreateInfoKHR* = object sType*: VkStructureType @@ -8773,7 +8781,7 @@ type pNext*: pointer shaderIntegerDotProduct*: VkBool32 - VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR* = object + VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR* = VkPhysicalDeviceShaderIntegerDotProductFeatures VkPhysicalDeviceShaderIntegerDotProductProperties* = object sType*: VkStructureType @@ -8809,7 +8817,7 @@ type integerDotProductAccumulatingSaturating64BitSignedAccelerated*: VkBool32 integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated*: VkBool32 - VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR* = object + VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR* = VkPhysicalDeviceShaderIntegerDotProductProperties VkPhysicalDeviceDrmPropertiesEXT* = object sType*: VkStructureType @@ -9020,7 +9028,7 @@ type optimalTilingFeatures*: VkFormatFeatureFlags2 bufferFeatures*: VkFormatFeatureFlags2 - VkFormatProperties3KHR* = object + VkFormatProperties3KHR* = VkFormatProperties3 VkDrmFormatModifierPropertiesList2EXT* = object sType*: VkStructureType @@ -9054,7 +9062,7 @@ type depthAttachmentFormat*: VkFormat stencilAttachmentFormat*: VkFormat - VkPipelineRenderingCreateInfoKHR* = object + VkPipelineRenderingCreateInfoKHR* = VkPipelineRenderingCreateInfo VkRenderingInfo* = object sType*: VkStructureType @@ -9068,7 +9076,7 @@ type pDepthAttachment*: ptr VkRenderingAttachmentInfo pStencilAttachment*: ptr VkRenderingAttachmentInfo - VkRenderingInfoKHR* = object + VkRenderingInfoKHR* = VkRenderingInfo VkRenderingAttachmentInfo* = object sType*: VkStructureType @@ -9082,7 +9090,7 @@ type storeOp*: VkAttachmentStoreOp clearValue*: VkClearValue - VkRenderingAttachmentInfoKHR* = object + VkRenderingAttachmentInfoKHR* = VkRenderingAttachmentInfo VkRenderingFragmentShadingRateAttachmentInfoKHR* = object sType*: VkStructureType @@ -9102,7 +9110,7 @@ type pNext*: pointer dynamicRendering*: VkBool32 - VkPhysicalDeviceDynamicRenderingFeaturesKHR* = object + VkPhysicalDeviceDynamicRenderingFeaturesKHR* = VkPhysicalDeviceDynamicRenderingFeatures VkCommandBufferInheritanceRenderingInfo* = object sType*: VkStructureType @@ -9116,7 +9124,7 @@ type stencilAttachmentFormat*: VkFormat rasterizationSamples*: VkSampleCountFlagBits - VkCommandBufferInheritanceRenderingInfoKHR* = object + VkCommandBufferInheritanceRenderingInfoKHR* = VkCommandBufferInheritanceRenderingInfo VkAttachmentSampleCountInfoAMD* = object sType*: VkStructureType @@ -9125,7 +9133,7 @@ type pColorAttachmentSamples*: ptr VkSampleCountFlagBits depthStencilAttachmentSamples*: VkSampleCountFlagBits - VkAttachmentSampleCountInfoNV* = object + VkAttachmentSampleCountInfoNV* = VkAttachmentSampleCountInfoAMD VkMultiviewPerViewAttributesInfoNVX* = object sType*: VkStructureType @@ -9150,7 +9158,7 @@ type rasterizationOrderDepthAttachmentAccess*: VkBool32 rasterizationOrderStencilAttachmentAccess*: VkBool32 - VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM* = object + VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM* = VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT VkPhysicalDeviceLinearColorAttachmentFeaturesNV* = object sType*: VkStructureType @@ -9252,14 +9260,14 @@ type pNext*: pointer imageSubresource*: VkImageSubresource - VkImageSubresource2EXT* = object + VkImageSubresource2EXT* = VkImageSubresource2KHR VkSubresourceLayout2KHR* = object sType*: VkStructureType pNext*: pointer subresourceLayout*: VkSubresourceLayout - VkSubresourceLayout2EXT* = object + VkSubresourceLayout2EXT* = VkSubresourceLayout2KHR VkRenderPassCreationControlEXT* = object sType*: VkStructureType @@ -10391,6 +10399,14 @@ type # Constructors +proc newVkBaseOutStructure*(sType: VkStructureType, pNext: ptr VkBaseOutStructure): VkBaseOutStructure = + result.sType = sType + result.pNext = pNext + +proc newVkBaseInStructure*(sType: VkStructureType, pNext: ptr VkBaseInStructure): VkBaseInStructure = + result.sType = sType + result.pNext = pNext + proc newVkOffset2D*(x: int32, y: int32): VkOffset2D = result.x = x result.y = y @@ -10841,14 +10857,13 @@ proc newVkSpecializationInfo*(mapEntryCount: uint32, pMapEntries: ptr VkSpeciali result.dataSize = dataSize result.pData = pData -proc newVkPipelineShaderStageCreateInfo*(sType: VkStructureType = VkStructureTypePipelineShaderStageCreateInfo, pNext: pointer = nil, flags: VkPipelineShaderStageCreateFlags = 0.VkPipelineShaderStageCreateFlags, stage: VkShaderStageFlagBits, module: VkShaderModule, pName: cstring, pName: cstring, pSpecializationInfo: ptr VkSpecializationInfo): VkPipelineShaderStageCreateInfo = +proc newVkPipelineShaderStageCreateInfo*(sType: VkStructureType = VkStructureTypePipelineShaderStageCreateInfo, pNext: pointer = nil, flags: VkPipelineShaderStageCreateFlags = 0.VkPipelineShaderStageCreateFlags, stage: VkShaderStageFlagBits, module: VkShaderModule, pName: cstring, pSpecializationInfo: ptr VkSpecializationInfo): VkPipelineShaderStageCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags result.stage = stage result.module = module result.pName = pName - result.pName = pName result.pSpecializationInfo = pSpecializationInfo proc newVkComputePipelineCreateInfo*(sType: VkStructureType = VkStructureTypeComputePipelineCreateInfo, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stage: VkPipelineShaderStageCreateInfo, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkComputePipelineCreateInfo = @@ -10990,13 +11005,12 @@ proc newVkPipelineDepthStencilStateCreateInfo*(sType: VkStructureType = VkStruct result.minDepthBounds = minDepthBounds result.maxDepthBounds = maxDepthBounds -proc newVkGraphicsPipelineCreateInfo*(sType: VkStructureType = VkStructureTypeGraphicsPipelineCreateInfo, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, pStages: ptr VkPipelineShaderStageCreateInfo, pVertexInputState: ptr VkPipelineVertexInputStateCreateInfo, pInputAssemblyState: ptr VkPipelineInputAssemblyStateCreateInfo, pTessellationState: ptr VkPipelineTessellationStateCreateInfo, pViewportState: ptr VkPipelineViewportStateCreateInfo, pRasterizationState: ptr VkPipelineRasterizationStateCreateInfo, pMultisampleState: ptr VkPipelineMultisampleStateCreateInfo, pDepthStencilState: ptr VkPipelineDepthStencilStateCreateInfo, pColorBlendState: ptr VkPipelineColorBlendStateCreateInfo, pDynamicState: ptr VkPipelineDynamicStateCreateInfo, layout: VkPipelineLayout, renderPass: VkRenderPass, subpass: uint32, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkGraphicsPipelineCreateInfo = +proc newVkGraphicsPipelineCreateInfo*(sType: VkStructureType = VkStructureTypeGraphicsPipelineCreateInfo, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, pVertexInputState: ptr VkPipelineVertexInputStateCreateInfo, pInputAssemblyState: ptr VkPipelineInputAssemblyStateCreateInfo, pTessellationState: ptr VkPipelineTessellationStateCreateInfo, pViewportState: ptr VkPipelineViewportStateCreateInfo, pRasterizationState: ptr VkPipelineRasterizationStateCreateInfo, pMultisampleState: ptr VkPipelineMultisampleStateCreateInfo, pDepthStencilState: ptr VkPipelineDepthStencilStateCreateInfo, pColorBlendState: ptr VkPipelineColorBlendStateCreateInfo, pDynamicState: ptr VkPipelineDynamicStateCreateInfo, layout: VkPipelineLayout, renderPass: VkRenderPass, subpass: uint32, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkGraphicsPipelineCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags result.stageCount = stageCount result.pStages = pStages - result.pStages = pStages result.pVertexInputState = pVertexInputState result.pInputAssemblyState = pInputAssemblyState result.pTessellationState = pTessellationState @@ -11012,12 +11026,11 @@ proc newVkGraphicsPipelineCreateInfo*(sType: VkStructureType = VkStructureTypeGr result.basePipelineHandle = basePipelineHandle result.basePipelineIndex = basePipelineIndex -proc newVkPipelineCacheCreateInfo*(sType: VkStructureType = VkStructureTypePipelineCacheCreateInfo, pNext: pointer = nil, flags: VkPipelineCacheCreateFlags = 0.VkPipelineCacheCreateFlags, initialDataSize: uint, initialDataSize: uint, pInitialData: pointer = nil): VkPipelineCacheCreateInfo = +proc newVkPipelineCacheCreateInfo*(sType: VkStructureType = VkStructureTypePipelineCacheCreateInfo, pNext: pointer = nil, flags: VkPipelineCacheCreateFlags = 0.VkPipelineCacheCreateFlags, initialDataSize: uint, pInitialData: pointer = nil): VkPipelineCacheCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags result.initialDataSize = initialDataSize - result.initialDataSize = initialDataSize result.pInitialData = pInitialData proc newVkPipelineCacheHeaderVersionOne*(headerSize: uint32, headerVersion: VkPipelineCacheHeaderVersion, vendorID: uint32, deviceID: uint32, pipelineCacheUUID: array[VK_UUID_SIZE, uint8]): VkPipelineCacheHeaderVersionOne = @@ -11559,7 +11572,7 @@ proc newVkSurfaceFormatKHR*(format: VkFormat, colorSpace: VkColorSpaceKHR): VkSu result.format = format result.colorSpace = colorSpace -proc newVkSwapchainCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkSwapchainCreateFlagsKHR = 0.VkSwapchainCreateFlagsKHR, surface: VkSurfaceKHR, minImageCount: uint32, imageFormat: VkFormat, imageColorSpace: VkColorSpaceKHR, imageExtent: VkExtent2D, imageArrayLayers: uint32, imageUsage: VkImageUsageFlags, imageSharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32, preTransform: VkSurfaceTransformFlagBitsKHR, compositeAlpha: VkCompositeAlphaFlagBitsKHR, presentMode: VkPresentModeKHR, clipped: VkBool32, oldSwapchain: VkSwapchainKHR, oldSwapchain: VkSwapchainKHR): VkSwapchainCreateInfoKHR = +proc newVkSwapchainCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkSwapchainCreateFlagsKHR = 0.VkSwapchainCreateFlagsKHR, surface: VkSurfaceKHR, minImageCount: uint32, imageFormat: VkFormat, imageColorSpace: VkColorSpaceKHR, imageExtent: VkExtent2D, imageArrayLayers: uint32, imageUsage: VkImageUsageFlags, imageSharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32, preTransform: VkSurfaceTransformFlagBitsKHR, compositeAlpha: VkCompositeAlphaFlagBitsKHR, presentMode: VkPresentModeKHR, clipped: VkBool32, oldSwapchain: VkSwapchainKHR): VkSwapchainCreateInfoKHR = result.sType = sType result.pNext = pNext result.flags = flags @@ -11578,7 +11591,6 @@ proc newVkSwapchainCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, result.presentMode = presentMode result.clipped = clipped result.oldSwapchain = oldSwapchain - result.oldSwapchain = oldSwapchain proc newVkPresentInfoKHR*(sType: VkStructureType, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, swapchainCount: uint32, pSwapchains: ptr VkSwapchainKHR, pImageIndices: ptr uint32, pResults: ptr VkResult): VkPresentInfoKHR = result.sType = sType @@ -16862,13 +16874,12 @@ proc newVkPhysicalDeviceDynamicRenderingFeatures*(sType: VkStructureType, pNext: result.pNext = pNext result.dynamicRendering = dynamicRendering -proc newVkCommandBufferInheritanceRenderingInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkRenderingFlags = 0.VkRenderingFlags, viewMask: uint32, colorAttachmentCount: uint32, colorAttachmentCount: uint32, pColorAttachmentFormats: ptr VkFormat, depthAttachmentFormat: VkFormat, stencilAttachmentFormat: VkFormat, rasterizationSamples: VkSampleCountFlagBits): VkCommandBufferInheritanceRenderingInfo = +proc newVkCommandBufferInheritanceRenderingInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkRenderingFlags = 0.VkRenderingFlags, viewMask: uint32, colorAttachmentCount: uint32, pColorAttachmentFormats: ptr VkFormat, depthAttachmentFormat: VkFormat, stencilAttachmentFormat: VkFormat, rasterizationSamples: VkSampleCountFlagBits): VkCommandBufferInheritanceRenderingInfo = result.sType = sType result.pNext = pNext result.flags = flags result.viewMask = viewMask result.colorAttachmentCount = colorAttachmentCount - result.colorAttachmentCount = colorAttachmentCount result.pColorAttachmentFormats = pColorAttachmentFormats result.depthAttachmentFormat = depthAttachmentFormat result.stencilAttachmentFormat = stencilAttachmentFormat @@ -18295,13 +18306,13 @@ var vkCreateDisplayModeKHR*: proc (physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pCreateInfo: ptr VkDisplayModeCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pMode: ptr VkDisplayModeKHR): VkResult {.stdcall.} vkGetDisplayPlaneCapabilitiesKHR*: proc (physicalDevice: VkPhysicalDevice, mode: VkDisplayModeKHR, planeIndex: uint32, pCapabilities: ptr VkDisplayPlaneCapabilitiesKHR): VkResult {.stdcall.} vkCreateDisplayPlaneSurfaceKHR*: proc (instance: VkInstance, pCreateInfo: ptr VkDisplaySurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} - vkCreateSharedSwapchainsKHR*: proc (device: VkDevice, swapchainCount: uint32, pCreateInfos: ptr VkSwapchainCreateInfoKHR, pCreateInfos: ptr VkSwapchainCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSwapchains: ptr VkSwapchainKHR): VkResult {.stdcall.} + vkCreateSharedSwapchainsKHR*: proc (device: VkDevice, swapchainCount: uint32, pCreateInfos: ptr VkSwapchainCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSwapchains: ptr VkSwapchainKHR): VkResult {.stdcall.} vkDestroySurfaceKHR*: proc (instance: VkInstance, surface: VkSurfaceKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} vkGetPhysicalDeviceSurfaceSupportKHR*: proc (physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, surface: VkSurfaceKHR, pSupported: ptr VkBool32): VkResult {.stdcall.} vkGetPhysicalDeviceSurfaceCapabilitiesKHR*: proc (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceCapabilities: ptr VkSurfaceCapabilitiesKHR): VkResult {.stdcall.} vkGetPhysicalDeviceSurfaceFormatsKHR*: proc (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceFormatCount: ptr uint32, pSurfaceFormats: ptr VkSurfaceFormatKHR): VkResult {.stdcall.} vkGetPhysicalDeviceSurfacePresentModesKHR*: proc (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pPresentModeCount: ptr uint32, pPresentModes: ptr VkPresentModeKHR): VkResult {.stdcall.} - vkCreateSwapchainKHR*: proc (device: VkDevice, pCreateInfo: ptr VkSwapchainCreateInfoKHR, pCreateInfo: ptr VkSwapchainCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSwapchain: ptr VkSwapchainKHR): VkResult {.stdcall.} + vkCreateSwapchainKHR*: proc (device: VkDevice, pCreateInfo: ptr VkSwapchainCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSwapchain: ptr VkSwapchainKHR): VkResult {.stdcall.} vkDestroySwapchainKHR*: proc (device: VkDevice, swapchain: VkSwapchainKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} vkGetSwapchainImagesKHR*: proc (device: VkDevice, swapchain: VkSwapchainKHR, pSwapchainImageCount: ptr uint32, pSwapchainImages: ptr VkImage): VkResult {.stdcall.} vkAcquireNextImageKHR*: proc (device: VkDevice, swapchain: VkSwapchainKHR, timeout: uint64, semaphore: VkSemaphore, fence: VkFence, pImageIndex: ptr uint32): VkResult {.stdcall.} @@ -18985,7 +18996,7 @@ proc loadVK_KHR_surface*() = # Load VK_KHR_swapchain proc loadVK_KHR_swapchain*() = - vkCreateSwapchainKHR = cast[proc (device: VkDevice, pCreateInfo: ptr VkSwapchainCreateInfoKHR, pCreateInfo: ptr VkSwapchainCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSwapchain: ptr VkSwapchainKHR): VkResult {.stdcall.}](vkGetProc("vkCreateSwapchainKHR")) + vkCreateSwapchainKHR = cast[proc (device: VkDevice, pCreateInfo: ptr VkSwapchainCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSwapchain: ptr VkSwapchainKHR): VkResult {.stdcall.}](vkGetProc("vkCreateSwapchainKHR")) vkDestroySwapchainKHR = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySwapchainKHR")) vkGetSwapchainImagesKHR = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR, pSwapchainImageCount: ptr uint32, pSwapchainImages: ptr VkImage): VkResult {.stdcall.}](vkGetProc("vkGetSwapchainImagesKHR")) vkAcquireNextImageKHR = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR, timeout: uint64, semaphore: VkSemaphore, fence: VkFence, pImageIndex: ptr uint32): VkResult {.stdcall.}](vkGetProc("vkAcquireNextImageKHR")) @@ -19007,7 +19018,7 @@ proc loadVK_KHR_display*() = # Load VK_KHR_display_swapchain proc loadVK_KHR_display_swapchain*() = - vkCreateSharedSwapchainsKHR = cast[proc (device: VkDevice, swapchainCount: uint32, pCreateInfos: ptr VkSwapchainCreateInfoKHR, pCreateInfos: ptr VkSwapchainCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSwapchains: ptr VkSwapchainKHR): VkResult {.stdcall.}](vkGetProc("vkCreateSharedSwapchainsKHR")) + vkCreateSharedSwapchainsKHR = cast[proc (device: VkDevice, swapchainCount: uint32, pCreateInfos: ptr VkSwapchainCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSwapchains: ptr VkSwapchainKHR): VkResult {.stdcall.}](vkGetProc("vkCreateSharedSwapchainsKHR")) # Load VK_KHR_xlib_surface proc loadVK_KHR_xlib_surface*() = diff --git a/tools/generator.nim b/tools/generator.nim index 3dd80f6..ff585f1 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -10,6 +10,7 @@ type VkArg = object name: string argType: string + vulkansc: bool VkStruct = object name: string members: seq[VkArg] @@ -70,30 +71,32 @@ proc genTypes(node: XmlNode, output: var string) = inType = true var name = t.attr("name") if name.startsWith('_'): name = name.substr(1) - output.add(" {name}* {{.header: \"{t.attr(\"requires\")}\".}} = ptr object\n".fmt) + output.add(" {name}* {{.header: \"{t.attr(\"requires\")}\".}} = object\n".fmt) # Define category if t.attr("category") == "define": if t.child("name") == nil: continue + if t.attr("api") == "vulkansc" or t.attr("deprecated") != "": + continue inType = false let name = t.child("name").innerText if name == "VK_MAKE_API_VERSION": output.add("\ntemplate vkMakeVersion*(variant, major, minor, patch: untyped): untyped =\n") - output.add(" (((variant) shl 29) or ((major) shl 22) or ((minor) shl 12) or (patch))\n") + output.add(" (variant shl 29) or (major shl 22) or (minor shl 12) or patch\n") elif name == "VK_API_VERSION_VARIANT": output.add("\ntemplate vkVersionVariant*(version: untyped): untyped =\n") - output.add(" ((uint32)(version) shr 29)\n") + output.add(" uint32(version) shr 29\n") elif name == "VK_API_VERSION_MAJOR": output.add("\ntemplate vkVersionMajor*(version: untyped): untyped =\n") - output.add(" ((uint32)(version) shr 22)\n") + output.add(" uint32(version) shr 22\n") elif name == "VK_API_VERSION_MINOR": output.add("\ntemplate vkVersionMinor*(version: untyped): untyped =\n") - output.add(" (((uint32)(version) shr 12) and 0x000003FF)\n") + output.add(" ((uint32(version) shr 12) and 0x000003FF)\n") elif name == "VK_API_VERSION_PATCH": output.add("\ntemplate vkVersionPatch*(version: untyped): untyped =\n") - output.add(" ((uint32)(version) and 0x00000FFF)\n") + output.add(" (uint32(version) and 0x00000FFF)\n") elif name == "VK_API_VERSION_1_0": output.add("\nconst vkApiVersion1_0* = vkMakeVersion(0, 1, 0, 0)\n") elif name == "VK_API_VERSION_1_1": @@ -116,7 +119,6 @@ proc genTypes(node: XmlNode, output: var string) = if t.child("type") != nil: var bType = t.child("type").innerText bType = bType.translateType() - output.add(" {name}* = distinct {bType}\n".fmt) continue @@ -124,9 +126,10 @@ proc genTypes(node: XmlNode, output: var string) = if t.attr("category") == "bitmask": var name = t.attr("name") + if t.attr("api") == "vulkansc": + continue if t.child("name") != nil: name = t.child("name").innerText - var bType = t.attr("alias") var alias = true if t.child("type") != nil: @@ -135,7 +138,6 @@ proc genTypes(node: XmlNode, output: var string) = bType = bType.translateType() if not alias: bType = "distinct " & bType - output.add(" {name}* = {bType}\n".fmt) continue @@ -145,7 +147,6 @@ proc genTypes(node: XmlNode, output: var string) = var name = t.attr("name") if t.child("name") != nil: name = t.child("name").innerText - var bType = t.attr("alias") var alias = true if t.child("type") != nil: @@ -154,8 +155,6 @@ proc genTypes(node: XmlNode, output: var string) = bType = bType.translateType() if not alias: bType = "distinct " & bType - - output.add(" {name}* = {bType}\n".fmt) continue @@ -204,21 +203,19 @@ proc genTypes(node: XmlNode, output: var string) = if t.attr("category") == "struct": let name = t.attr("name") - if name == "VkBaseOutStructure" or name == "VkBaseInStructure": - continue - var vkStruct: VkStruct vkStruct.name = name - + if t.attr("alias") != "": + let val = t.attr("alias") + output.add("\n {name}* = {val}\n".fmt) + continue output.add("\n {name}* = object\n".fmt) - for member in t.findAll("member"): var memberName = member.child("name").innerText if keywords.contains(memberName): memberName = "`{memberName}`".fmt var memberType = member.child("type").innerText memberType = memberType.translateType() - var isArray = false var arraySize = "0" if member.innerText.contains('['): @@ -228,27 +225,25 @@ proc genTypes(node: XmlNode, output: var string) = if arraySize == "_DYNAMIC": memberType = "ptr " & memberType isArray = false - var depth = member.innerText.count('*') if memberType == "pointer": depth.dec for i in 0 ..< depth: memberType = "ptr " & memberType - memberType = memberType.multiReplace([ ("ptr void", "pointer"), ("ptr ptr char", "cstringArray"), ("ptr char", "cstring"), ]) - var vkArg: VkArg vkArg.name = memberName if not isArray: vkArg.argType = memberType else: vkArg.argType = "array[{arraySize}, {memberType}]".fmt + if member.attr("api") == "vulkansc": + vkArg.vulkansc = true vkStruct.members.add(vkArg) - if not isArray: output.add(" {memberName}*: {memberType}\n".fmt) else: @@ -262,15 +257,12 @@ proc genTypes(node: XmlNode, output: var string) = let name = t.attr("name") if name == "VkBaseOutStructure" or name == "VkBaseInStructure": continue - output.add("\n {name}* {{.union.}} = object\n".fmt) - for member in t.findAll("member"): var memberName = member.child("name").innerText if keywords.contains(memberName): memberName = "`{memberName}`".fmt var memberType = member.child("type").innerText - var isArray = false var arraySize = "0" if member.innerText.contains('['): @@ -280,15 +272,12 @@ proc genTypes(node: XmlNode, output: var string) = if arraySize == "_DYNAMIC": memberType = "ptr " & memberType isArray = false - var depth = member.innerText.count('*') if memberType == "pointer": depth.dec for i in 0 ..< depth: memberType = "ptr " & memberType - memberType = memberType.translateType() - if not isArray: output.add(" {memberName}*: {memberType}\n".fmt) else: @@ -301,7 +290,6 @@ proc genEnums(node: XmlNode, output: var string) = var inType = false for enums in node.findAll("enums"): let name = enums.attr("name") - if name == "API Constants": inType = false output.add("const\n") @@ -321,26 +309,23 @@ proc genEnums(node: XmlNode, output: var string) = ("(~0U-2)", "(not 0'u32) - 2"), ("(~0ULL)", "(not 0'u64)"), ]) - if enumName == "VK_LUID_SIZE_KHR": enumValue = "VK_LUID_SIZE" elif enumName == "VK_QUEUE_FAMILY_EXTERNAL_KHR": enumValue = "VK_QUEUE_FAMILY_EXTERNAL" elif enumName == "VK_MAX_DEVICE_GROUP_SIZE_KHR": enumValue = "VK_MAX_DEVICE_GROUP_SIZE" - output.add(" {enumName}* = {enumValue}\n".fmt) continue - if not inType: output.add("\ntype\n") inType = true - var elements: OrderedTableRef[int, string] = newOrderedTable[int, string]() for e in enums.items: if e.kind != xnElement or e.tag != "enum": continue - + if e.attr("api") == "vulkansc" or e.attr("deprecated") != "": + continue var enumName = e.attr("name") var enumValueStr = e.attr("value") if enumValueStr == "": @@ -351,13 +336,11 @@ proc genEnums(node: XmlNode, output: var string) = num.setBit(bitpos) enumValueStr = $num enumValueStr = enumValueStr.translateType() - var enumValue = 0 if enumValueStr.contains('x'): enumValue = fromHex[int](enumValueStr) else: enumValue = enumValueStr.parseInt() - if elements.hasKey(enumValue): continue if enumName == "VK_PIPELINE_CACHE_HEADER_VERSION_ONE": @@ -365,10 +348,8 @@ proc genEnums(node: XmlNode, output: var string) = elif enumName == "VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VERSION_ONE_EXT": enumName = "VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VER_ONE_EXT" elements.add(enumValue, enumName) - if elements.len == 0: continue - output.add(" {name}* {{.size: int32.sizeof.}} = enum\n".fmt) elements.sort(system.cmp) for k, v in elements.pairs: @@ -382,9 +363,8 @@ proc genProcs(node: XmlNode, output: var string) = output.add("var\n") for commands in node.findAll("commands"): for command in commands.findAll("command"): - if command.attr("api") == "vulkansc": continue var vkProc: VkProc - if command.child("proto") == nil: + if command.child("proto") == nil or command.attr("api") == "vulkansc": continue vkProc.name = command.child("proto").child("name").innerText vkProc.rVal = command.child("proto").innerText @@ -392,21 +372,18 @@ proc genProcs(node: XmlNode, output: var string) = while vkProc.rVal.endsWith(" "): vkProc.rVal = vkProc.rVal[0 ..< vkProc.rVal.len - 1] vkProc.rVal = vkProc.rVal.translateType() - # Skip commands that are preloaded if vkProc.name == "vkCreateInstance" or vkProc.name == "vkEnumerateInstanceExtensionProperties" or vkProc.name == "vkEnumerateInstanceLayerProperties" or vkProc.name == "vkEnumerateInstanceVersion": continue - for param in command.findAll("param"): var vkArg: VkArg - if param.child("name") == nil: + if param.child("name") == nil or param.attr("api") == "vulkansc": continue vkArg.name = param.child("name").innerText vkArg.argType = param.innerText - if vkArg.argType.contains('['): let openBracket = vkArg.argType.find('[') let arraySize = vkArg.argType[openBracket + 1 ..< vkArg.argType.find(']')] @@ -416,13 +393,10 @@ proc genProcs(node: XmlNode, output: var string) = else: vkArg.argType = vkArg.argType[0 ..< vkArg.argType.len - vkArg.name.len] vkArg.argType = vkArg.argType.translateType().strip - for part in vkArg.name.split(" "): if keywords.contains(part): vkArg.name = "`{vkArg.name}`".fmt - vkProc.args.add(vkArg) - vkProcs.add(vkProc) output.add(" {vkProc.name}*: proc (".fmt) for arg in vkProc.args: @@ -438,7 +412,6 @@ proc genFeatures(node: XmlNode, output: var string) = let number = feature.attr("number").replace(".", "_") output.add("\n# Vulkan {number}\n".fmt) output.add("proc vkLoad{number}*() =\n".fmt) - for command in feature.findAll("command"): let name = command.attr("name") for vkProc in vkProcs: @@ -461,14 +434,11 @@ proc genExtensions(node: XmlNode, output: var string) = for vkProc in vkProcs: if vkProc.name == command.attr("name"): commands.add(vkProc) - if commands.len == 0: continue - let name = extension.attr("name") output.add("\n# Load {name}\n".fmt) output.add("proc load{name}*() =\n".fmt) - for vkProc in commands: output.add(" {vkProc.name} = cast[proc (".fmt) for arg in vkProc.args: @@ -485,10 +455,10 @@ proc genConstructors(node: XmlNode, output: var string) = continue output.add("\nproc new{s.name}*(".fmt) for m in s.members: + if m.vulkansc: continue if not output.endsWith('('): output.add(", ") output.add("{m.name}: {m.argType}".fmt) - if m.name.contains("flags"): output.add(" = 0.{m.argType}".fmt) if m.name == "sType": @@ -497,10 +467,9 @@ proc genConstructors(node: XmlNode, output: var string) = output.add(" = VkStructureType{s.name[2.. Date: Mon, 29 Apr 2024 18:50:30 +0300 Subject: [PATCH 12/57] nowhere near done but found a better generator at saemideluxe/semicongine --- src/vulkan.nim | 6 ------ tools/generator.nim | 7 ++----- 2 files changed, 2 insertions(+), 11 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 3694920..bd67627 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -2068,7 +2068,6 @@ type VkVideoSessionKHR* = distinct VkNonDispatchableHandle VkVideoSessionParametersKHR* = distinct VkNonDispatchableHandle VkSemaphoreSciSyncPoolNV* = distinct VkNonDispatchableHandle - VkPrivateDataSlotCreateFlagBitsEXT* = VkPrivateDataSlotCreateFlagBits VkDescriptorUpdateTemplateTypeKHR* = VkDescriptorUpdateTemplateType VkPointClippingBehaviorKHR* = VkPointClippingBehavior VkQueueGlobalPriorityEXT* = VkQueueGlobalPriorityKHR @@ -2588,7 +2587,6 @@ type stage*: VkShaderStageFlagBits module*: VkShaderModule pName*: cstring - pName*: cstring pSpecializationInfo*: ptr VkSpecializationInfo VkComputePipelineCreateInfo* = object @@ -2736,7 +2734,6 @@ type flags*: VkPipelineCreateFlags stageCount*: uint32 pStages*: ptr VkPipelineShaderStageCreateInfo - pStages*: ptr VkPipelineShaderStageCreateInfo pVertexInputState*: ptr VkPipelineVertexInputStateCreateInfo pInputAssemblyState*: ptr VkPipelineInputAssemblyStateCreateInfo pTessellationState*: ptr VkPipelineTessellationStateCreateInfo @@ -2757,7 +2754,6 @@ type pNext*: pointer flags*: VkPipelineCacheCreateFlags initialDataSize*: uint - initialDataSize*: uint pInitialData*: pointer VkPipelineCacheHeaderVersionOne* = object @@ -3327,7 +3323,6 @@ type presentMode*: VkPresentModeKHR clipped*: VkBool32 oldSwapchain*: VkSwapchainKHR - oldSwapchain*: VkSwapchainKHR VkPresentInfoKHR* = object sType*: VkStructureType @@ -9118,7 +9113,6 @@ type flags*: VkRenderingFlags viewMask*: uint32 colorAttachmentCount*: uint32 - colorAttachmentCount*: uint32 pColorAttachmentFormats*: ptr VkFormat depthAttachmentFormat*: VkFormat stencilAttachmentFormat*: VkFormat diff --git a/tools/generator.nim b/tools/generator.nim index ff585f1..6b2e42c 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -10,7 +10,6 @@ type VkArg = object name: string argType: string - vulkansc: bool VkStruct = object name: string members: seq[VkArg] @@ -211,6 +210,8 @@ proc genTypes(node: XmlNode, output: var string) = continue output.add("\n {name}* = object\n".fmt) for member in t.findAll("member"): + if member.attr("api") == "vulkansc": + continue var memberName = member.child("name").innerText if keywords.contains(memberName): memberName = "`{memberName}`".fmt @@ -241,8 +242,6 @@ proc genTypes(node: XmlNode, output: var string) = vkArg.argType = memberType else: vkArg.argType = "array[{arraySize}, {memberType}]".fmt - if member.attr("api") == "vulkansc": - vkArg.vulkansc = true vkStruct.members.add(vkArg) if not isArray: output.add(" {memberName}*: {memberType}\n".fmt) @@ -455,7 +454,6 @@ proc genConstructors(node: XmlNode, output: var string) = continue output.add("\nproc new{s.name}*(".fmt) for m in s.members: - if m.vulkansc: continue if not output.endsWith('('): output.add(", ") output.add("{m.name}: {m.argType}".fmt) @@ -469,7 +467,6 @@ proc genConstructors(node: XmlNode, output: var string) = output.add(" = nil") output.add("): {s.name} =\n".fmt) for m in s.members: - if m.vulkansc: continue output.add(" result.{m.name} = {m.name}\n".fmt) proc main() = From 30be97bcd9b33c7aaed07cd236bed1ad5ff7e264 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Mon, 29 Apr 2024 19:26:53 +0300 Subject: [PATCH 13/57] what if --- src/vulkan.nim | 3409 ++++++++++++++++++++++--------------------- tools/generator.nim | 33 +- 2 files changed, 1733 insertions(+), 1709 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index bd67627..1d5a544 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -83,1663 +83,1663 @@ const VK_SHADER_INDEX_UNUSED_AMDX* = (not 0'u32) type - VkImageLayout* {.size: int32.sizeof.} = enum - VK_IMAGE_LAYOUT_UNDEFINED = 0 - VK_IMAGE_LAYOUT_GENERAL = 1 - VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL = 2 - VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL = 3 - VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL = 4 - VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL = 5 - VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL = 6 - VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL = 7 - VK_IMAGE_LAYOUT_PREINITIALIZED = 8 - VkAttachmentLoadOp* {.size: int32.sizeof.} = enum - VK_ATTACHMENT_LOAD_OP_LOAD = 0 - VK_ATTACHMENT_LOAD_OP_CLEAR = 1 - VK_ATTACHMENT_LOAD_OP_DONT_CARE = 2 - VkAttachmentStoreOp* {.size: int32.sizeof.} = enum - VK_ATTACHMENT_STORE_OP_STORE = 0 - VK_ATTACHMENT_STORE_OP_DONT_CARE = 1 - VkImageType* {.size: int32.sizeof.} = enum - VK_IMAGE_TYPE_1D = 0 - VK_IMAGE_TYPE_2D = 1 - VK_IMAGE_TYPE_3D = 2 - VkImageTiling* {.size: int32.sizeof.} = enum - VK_IMAGE_TILING_OPTIMAL = 0 - VK_IMAGE_TILING_LINEAR = 1 - VkImageViewType* {.size: int32.sizeof.} = enum - VK_IMAGE_VIEW_TYPE_1D = 0 - VK_IMAGE_VIEW_TYPE_2D = 1 - VK_IMAGE_VIEW_TYPE_3D = 2 - VK_IMAGE_VIEW_TYPE_CUBE = 3 - VK_IMAGE_VIEW_TYPE_1D_ARRAY = 4 - VK_IMAGE_VIEW_TYPE_2D_ARRAY = 5 - VK_IMAGE_VIEW_TYPE_CUBE_ARRAY = 6 - VkCommandBufferLevel* {.size: int32.sizeof.} = enum - VK_COMMAND_BUFFER_LEVEL_PRIMARY = 0 - VK_COMMAND_BUFFER_LEVEL_SECONDARY = 1 - VkComponentSwizzle* {.size: int32.sizeof.} = enum - VK_COMPONENT_SWIZZLE_IDENTITY = 0 - VK_COMPONENT_SWIZZLE_ZERO = 1 - VK_COMPONENT_SWIZZLE_ONE = 2 - VK_COMPONENT_SWIZZLE_R = 3 - VK_COMPONENT_SWIZZLE_G = 4 - VK_COMPONENT_SWIZZLE_B = 5 - VK_COMPONENT_SWIZZLE_A = 6 - VkDescriptorType* {.size: int32.sizeof.} = enum - VK_DESCRIPTOR_TYPE_SAMPLER = 0 - VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER = 1 - VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE = 2 - VK_DESCRIPTOR_TYPE_STORAGE_IMAGE = 3 - VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER = 4 - VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER = 5 - VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER = 6 - VK_DESCRIPTOR_TYPE_STORAGE_BUFFER = 7 - VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC = 8 - VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC = 9 - VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT = 10 - VkQueryType* {.size: int32.sizeof.} = enum - VK_QUERY_TYPE_OCCLUSION = 0 - VK_QUERY_TYPE_PIPELINE_STATISTICS = 1 - VK_QUERY_TYPE_TIMESTAMP = 2 - VkBorderColor* {.size: int32.sizeof.} = enum - VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK = 0 - VK_BORDER_COLOR_INT_TRANSPARENT_BLACK = 1 - VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK = 2 - VK_BORDER_COLOR_INT_OPAQUE_BLACK = 3 - VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE = 4 - VK_BORDER_COLOR_INT_OPAQUE_WHITE = 5 - VkPipelineBindPoint* {.size: int32.sizeof.} = enum - VK_PIPELINE_BIND_POINT_GRAPHICS = 0 - VK_PIPELINE_BIND_POINT_COMPUTE = 1 - VkPipelineCacheHeaderVersion* {.size: int32.sizeof.} = enum - VK_PIPELINE_CACHE_HEADER_VER_ONE = 1 - VkPrimitiveTopology* {.size: int32.sizeof.} = enum - VK_PRIMITIVE_TOPOLOGY_POINT_LIST = 0 - VK_PRIMITIVE_TOPOLOGY_LINE_LIST = 1 - VK_PRIMITIVE_TOPOLOGY_LINE_STRIP = 2 - VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST = 3 - VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP = 4 - VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN = 5 - VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY = 6 - VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY = 7 - VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY = 8 - VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY = 9 - VK_PRIMITIVE_TOPOLOGY_PATCH_LIST = 10 - VkSharingMode* {.size: int32.sizeof.} = enum - VK_SHARING_MODE_EXCLUSIVE = 0 - VK_SHARING_MODE_CONCURRENT = 1 - VkIndexType* {.size: int32.sizeof.} = enum - VK_INDEX_TYPE_UINT16 = 0 - VK_INDEX_TYPE_UINT32 = 1 - VkFilter* {.size: int32.sizeof.} = enum - VK_FILTER_NEAREST = 0 - VK_FILTER_LINEAR = 1 - VkSamplerMipmapMode* {.size: int32.sizeof.} = enum - VK_SAMPLER_MIPMAP_MODE_NEAREST = 0 - VK_SAMPLER_MIPMAP_MODE_LINEAR = 1 - VkSamplerAddressMode* {.size: int32.sizeof.} = enum - VK_SAMPLER_ADDRESS_MODE_REPEAT = 0 - VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT = 1 - VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE = 2 - VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER = 3 - VkCompareOp* {.size: int32.sizeof.} = enum - VK_COMPARE_OP_NEVER = 0 - VK_COMPARE_OP_LESS = 1 - VK_COMPARE_OP_EQUAL = 2 - VK_COMPARE_OP_LESS_OR_EQUAL = 3 - VK_COMPARE_OP_GREATER = 4 - VK_COMPARE_OP_NOT_EQUAL = 5 - VK_COMPARE_OP_GREATER_OR_EQUAL = 6 - VK_COMPARE_OP_ALWAYS = 7 - VkPolygonMode* {.size: int32.sizeof.} = enum - VK_POLYGON_MODE_FILL = 0 - VK_POLYGON_MODE_LINE = 1 - VK_POLYGON_MODE_POINT = 2 - VkFrontFace* {.size: int32.sizeof.} = enum - VK_FRONT_FACE_COUNTER_CLOCKWISE = 0 - VK_FRONT_FACE_CLOCKWISE = 1 - VkBlendFactor* {.size: int32.sizeof.} = enum - VK_BLEND_FACTOR_ZERO = 0 - VK_BLEND_FACTOR_ONE = 1 - VK_BLEND_FACTOR_SRC_COLOR = 2 - VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR = 3 - VK_BLEND_FACTOR_DST_COLOR = 4 - VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR = 5 - VK_BLEND_FACTOR_SRC_ALPHA = 6 - VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA = 7 - VK_BLEND_FACTOR_DST_ALPHA = 8 - VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA = 9 - VK_BLEND_FACTOR_CONSTANT_COLOR = 10 - VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR = 11 - VK_BLEND_FACTOR_CONSTANT_ALPHA = 12 - VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA = 13 - VK_BLEND_FACTOR_SRC_ALPHA_SATURATE = 14 - VK_BLEND_FACTOR_SRC1_COLOR = 15 - VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR = 16 - VK_BLEND_FACTOR_SRC1_ALPHA = 17 - VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA = 18 - VkBlendOp* {.size: int32.sizeof.} = enum - VK_BLEND_OP_ADD = 0 - VK_BLEND_OP_SUBTRACT = 1 - VK_BLEND_OP_REVERSE_SUBTRACT = 2 - VK_BLEND_OP_MIN = 3 - VK_BLEND_OP_MAX = 4 - VkStencilOp* {.size: int32.sizeof.} = enum - VK_STENCIL_OP_KEEP = 0 - VK_STENCIL_OP_ZERO = 1 - VK_STENCIL_OP_REPLACE = 2 - VK_STENCIL_OP_INCREMENT_AND_CLAMP = 3 - VK_STENCIL_OP_DECREMENT_AND_CLAMP = 4 - VK_STENCIL_OP_INVERT = 5 - VK_STENCIL_OP_INCREMENT_AND_WRAP = 6 - VK_STENCIL_OP_DECREMENT_AND_WRAP = 7 - VkLogicOp* {.size: int32.sizeof.} = enum - VK_LOGIC_OP_CLEAR = 0 - VK_LOGIC_OP_AND = 1 - VK_LOGIC_OP_AND_REVERSE = 2 - VK_LOGIC_OP_COPY = 3 - VK_LOGIC_OP_AND_INVERTED = 4 - VK_LOGIC_OP_NO_OP = 5 - VK_LOGIC_OP_XOR = 6 - VK_LOGIC_OP_OR = 7 - VK_LOGIC_OP_NOR = 8 - VK_LOGIC_OP_EQUIVALENT = 9 - VK_LOGIC_OP_INVERT = 10 - VK_LOGIC_OP_OR_REVERSE = 11 - VK_LOGIC_OP_COPY_INVERTED = 12 - VK_LOGIC_OP_OR_INVERTED = 13 - VK_LOGIC_OP_NAND = 14 - VK_LOGIC_OP_SET = 15 - VkInternalAllocationType* {.size: int32.sizeof.} = enum - VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE = 0 - VkSystemAllocationScope* {.size: int32.sizeof.} = enum - VK_SYSTEM_ALLOCATION_SCOPE_COMMAND = 0 - VK_SYSTEM_ALLOCATION_SCOPE_OBJECT = 1 - VK_SYSTEM_ALLOCATION_SCOPE_CACHE = 2 - VK_SYSTEM_ALLOCATION_SCOPE_DEVICE = 3 - VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE = 4 - VkPhysicalDeviceType* {.size: int32.sizeof.} = enum - VK_PHYSICAL_DEVICE_TYPE_OTHER = 0 - VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU = 1 - VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU = 2 - VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU = 3 - VK_PHYSICAL_DEVICE_TYPE_CPU = 4 - VkVertexInputRate* {.size: int32.sizeof.} = enum - VK_VERTEX_INPUT_RATE_VERTEX = 0 - VK_VERTEX_INPUT_RATE_INSTANCE = 1 - VkFormat* {.size: int32.sizeof.} = enum - VK_FORMAT_UNDEFINED = 0 - VK_FORMAT_R4G4_UNORM_PACK8 = 1 - VK_FORMAT_R4G4B4A4_UNORM_PACK16 = 2 - VK_FORMAT_B4G4R4A4_UNORM_PACK16 = 3 - VK_FORMAT_R5G6B5_UNORM_PACK16 = 4 - VK_FORMAT_B5G6R5_UNORM_PACK16 = 5 - VK_FORMAT_R5G5B5A1_UNORM_PACK16 = 6 - VK_FORMAT_B5G5R5A1_UNORM_PACK16 = 7 - VK_FORMAT_A1R5G5B5_UNORM_PACK16 = 8 - VK_FORMAT_R8_UNORM = 9 - VK_FORMAT_R8_SNORM = 10 - VK_FORMAT_R8_USCALED = 11 - VK_FORMAT_R8_SSCALED = 12 - VK_FORMAT_R8_UINT = 13 - VK_FORMAT_R8_SINT = 14 - VK_FORMAT_R8_SRGB = 15 - VK_FORMAT_R8G8_UNORM = 16 - VK_FORMAT_R8G8_SNORM = 17 - VK_FORMAT_R8G8_USCALED = 18 - VK_FORMAT_R8G8_SSCALED = 19 - VK_FORMAT_R8G8_UINT = 20 - VK_FORMAT_R8G8_SINT = 21 - VK_FORMAT_R8G8_SRGB = 22 - VK_FORMAT_R8G8B8_UNORM = 23 - VK_FORMAT_R8G8B8_SNORM = 24 - VK_FORMAT_R8G8B8_USCALED = 25 - VK_FORMAT_R8G8B8_SSCALED = 26 - VK_FORMAT_R8G8B8_UINT = 27 - VK_FORMAT_R8G8B8_SINT = 28 - VK_FORMAT_R8G8B8_SRGB = 29 - VK_FORMAT_B8G8R8_UNORM = 30 - VK_FORMAT_B8G8R8_SNORM = 31 - VK_FORMAT_B8G8R8_USCALED = 32 - VK_FORMAT_B8G8R8_SSCALED = 33 - VK_FORMAT_B8G8R8_UINT = 34 - VK_FORMAT_B8G8R8_SINT = 35 - VK_FORMAT_B8G8R8_SRGB = 36 - VK_FORMAT_R8G8B8A8_UNORM = 37 - VK_FORMAT_R8G8B8A8_SNORM = 38 - VK_FORMAT_R8G8B8A8_USCALED = 39 - VK_FORMAT_R8G8B8A8_SSCALED = 40 - VK_FORMAT_R8G8B8A8_UINT = 41 - VK_FORMAT_R8G8B8A8_SINT = 42 - VK_FORMAT_R8G8B8A8_SRGB = 43 - VK_FORMAT_B8G8R8A8_UNORM = 44 - VK_FORMAT_B8G8R8A8_SNORM = 45 - VK_FORMAT_B8G8R8A8_USCALED = 46 - VK_FORMAT_B8G8R8A8_SSCALED = 47 - VK_FORMAT_B8G8R8A8_UINT = 48 - VK_FORMAT_B8G8R8A8_SINT = 49 - VK_FORMAT_B8G8R8A8_SRGB = 50 - VK_FORMAT_A8B8G8R8_UNORM_PACK32 = 51 - VK_FORMAT_A8B8G8R8_SNORM_PACK32 = 52 - VK_FORMAT_A8B8G8R8_USCALED_PACK32 = 53 - VK_FORMAT_A8B8G8R8_SSCALED_PACK32 = 54 - VK_FORMAT_A8B8G8R8_UINT_PACK32 = 55 - VK_FORMAT_A8B8G8R8_SINT_PACK32 = 56 - VK_FORMAT_A8B8G8R8_SRGB_PACK32 = 57 - VK_FORMAT_A2R10G10B10_UNORM_PACK32 = 58 - VK_FORMAT_A2R10G10B10_SNORM_PACK32 = 59 - VK_FORMAT_A2R10G10B10_USCALED_PACK32 = 60 - VK_FORMAT_A2R10G10B10_SSCALED_PACK32 = 61 - VK_FORMAT_A2R10G10B10_UINT_PACK32 = 62 - VK_FORMAT_A2R10G10B10_SINT_PACK32 = 63 - VK_FORMAT_A2B10G10R10_UNORM_PACK32 = 64 - VK_FORMAT_A2B10G10R10_SNORM_PACK32 = 65 - VK_FORMAT_A2B10G10R10_USCALED_PACK32 = 66 - VK_FORMAT_A2B10G10R10_SSCALED_PACK32 = 67 - VK_FORMAT_A2B10G10R10_UINT_PACK32 = 68 - VK_FORMAT_A2B10G10R10_SINT_PACK32 = 69 - VK_FORMAT_R16_UNORM = 70 - VK_FORMAT_R16_SNORM = 71 - VK_FORMAT_R16_USCALED = 72 - VK_FORMAT_R16_SSCALED = 73 - VK_FORMAT_R16_UINT = 74 - VK_FORMAT_R16_SINT = 75 - VK_FORMAT_R16_SFLOAT = 76 - VK_FORMAT_R16G16_UNORM = 77 - VK_FORMAT_R16G16_SNORM = 78 - VK_FORMAT_R16G16_USCALED = 79 - VK_FORMAT_R16G16_SSCALED = 80 - VK_FORMAT_R16G16_UINT = 81 - VK_FORMAT_R16G16_SINT = 82 - VK_FORMAT_R16G16_SFLOAT = 83 - VK_FORMAT_R16G16B16_UNORM = 84 - VK_FORMAT_R16G16B16_SNORM = 85 - VK_FORMAT_R16G16B16_USCALED = 86 - VK_FORMAT_R16G16B16_SSCALED = 87 - VK_FORMAT_R16G16B16_UINT = 88 - VK_FORMAT_R16G16B16_SINT = 89 - VK_FORMAT_R16G16B16_SFLOAT = 90 - VK_FORMAT_R16G16B16A16_UNORM = 91 - VK_FORMAT_R16G16B16A16_SNORM = 92 - VK_FORMAT_R16G16B16A16_USCALED = 93 - VK_FORMAT_R16G16B16A16_SSCALED = 94 - VK_FORMAT_R16G16B16A16_UINT = 95 - VK_FORMAT_R16G16B16A16_SINT = 96 - VK_FORMAT_R16G16B16A16_SFLOAT = 97 - VK_FORMAT_R32_UINT = 98 - VK_FORMAT_R32_SINT = 99 - VK_FORMAT_R32_SFLOAT = 100 - VK_FORMAT_R32G32_UINT = 101 - VK_FORMAT_R32G32_SINT = 102 - VK_FORMAT_R32G32_SFLOAT = 103 - VK_FORMAT_R32G32B32_UINT = 104 - VK_FORMAT_R32G32B32_SINT = 105 - VK_FORMAT_R32G32B32_SFLOAT = 106 - VK_FORMAT_R32G32B32A32_UINT = 107 - VK_FORMAT_R32G32B32A32_SINT = 108 - VK_FORMAT_R32G32B32A32_SFLOAT = 109 - VK_FORMAT_R64_UINT = 110 - VK_FORMAT_R64_SINT = 111 - VK_FORMAT_R64_SFLOAT = 112 - VK_FORMAT_R64G64_UINT = 113 - VK_FORMAT_R64G64_SINT = 114 - VK_FORMAT_R64G64_SFLOAT = 115 - VK_FORMAT_R64G64B64_UINT = 116 - VK_FORMAT_R64G64B64_SINT = 117 - VK_FORMAT_R64G64B64_SFLOAT = 118 - VK_FORMAT_R64G64B64A64_UINT = 119 - VK_FORMAT_R64G64B64A64_SINT = 120 - VK_FORMAT_R64G64B64A64_SFLOAT = 121 - VK_FORMAT_B10G11R11_UFLOAT_PACK32 = 122 - VK_FORMAT_E5B9G9R9_UFLOAT_PACK32 = 123 - VK_FORMAT_D16_UNORM = 124 - VK_FORMAT_X8_D24_UNORM_PACK32 = 125 - VK_FORMAT_D32_SFLOAT = 126 - VK_FORMAT_S8_UINT = 127 - VK_FORMAT_D16_UNORM_S8_UINT = 128 - VK_FORMAT_D24_UNORM_S8_UINT = 129 - VK_FORMAT_D32_SFLOAT_S8_UINT = 130 - VK_FORMAT_BC1_RGB_UNORM_BLOCK = 131 - VK_FORMAT_BC1_RGB_SRGB_BLOCK = 132 - VK_FORMAT_BC1_RGBA_UNORM_BLOCK = 133 - VK_FORMAT_BC1_RGBA_SRGB_BLOCK = 134 - VK_FORMAT_BC2_UNORM_BLOCK = 135 - VK_FORMAT_BC2_SRGB_BLOCK = 136 - VK_FORMAT_BC3_UNORM_BLOCK = 137 - VK_FORMAT_BC3_SRGB_BLOCK = 138 - VK_FORMAT_BC4_UNORM_BLOCK = 139 - VK_FORMAT_BC4_SNORM_BLOCK = 140 - VK_FORMAT_BC5_UNORM_BLOCK = 141 - VK_FORMAT_BC5_SNORM_BLOCK = 142 - VK_FORMAT_BC6H_UFLOAT_BLOCK = 143 - VK_FORMAT_BC6H_SFLOAT_BLOCK = 144 - VK_FORMAT_BC7_UNORM_BLOCK = 145 - VK_FORMAT_BC7_SRGB_BLOCK = 146 - VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK = 147 - VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK = 148 - VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK = 149 - VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK = 150 - VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK = 151 - VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK = 152 - VK_FORMAT_EAC_R11_UNORM_BLOCK = 153 - VK_FORMAT_EAC_R11_SNORM_BLOCK = 154 - VK_FORMAT_EAC_R11G11_UNORM_BLOCK = 155 - VK_FORMAT_EAC_R11G11_SNORM_BLOCK = 156 - VK_FORMAT_ASTC_4x4_UNORM_BLOCK = 157 - VK_FORMAT_ASTC_4x4_SRGB_BLOCK = 158 - VK_FORMAT_ASTC_5x4_UNORM_BLOCK = 159 - VK_FORMAT_ASTC_5x4_SRGB_BLOCK = 160 - VK_FORMAT_ASTC_5x5_UNORM_BLOCK = 161 - VK_FORMAT_ASTC_5x5_SRGB_BLOCK = 162 - VK_FORMAT_ASTC_6x5_UNORM_BLOCK = 163 - VK_FORMAT_ASTC_6x5_SRGB_BLOCK = 164 - VK_FORMAT_ASTC_6x6_UNORM_BLOCK = 165 - VK_FORMAT_ASTC_6x6_SRGB_BLOCK = 166 - VK_FORMAT_ASTC_8x5_UNORM_BLOCK = 167 - VK_FORMAT_ASTC_8x5_SRGB_BLOCK = 168 - VK_FORMAT_ASTC_8x6_UNORM_BLOCK = 169 - VK_FORMAT_ASTC_8x6_SRGB_BLOCK = 170 - VK_FORMAT_ASTC_8x8_UNORM_BLOCK = 171 - VK_FORMAT_ASTC_8x8_SRGB_BLOCK = 172 - VK_FORMAT_ASTC_10x5_UNORM_BLOCK = 173 - VK_FORMAT_ASTC_10x5_SRGB_BLOCK = 174 - VK_FORMAT_ASTC_10x6_UNORM_BLOCK = 175 - VK_FORMAT_ASTC_10x6_SRGB_BLOCK = 176 - VK_FORMAT_ASTC_10x8_UNORM_BLOCK = 177 - VK_FORMAT_ASTC_10x8_SRGB_BLOCK = 178 - VK_FORMAT_ASTC_10x10_UNORM_BLOCK = 179 - VK_FORMAT_ASTC_10x10_SRGB_BLOCK = 180 - VK_FORMAT_ASTC_12x10_UNORM_BLOCK = 181 - VK_FORMAT_ASTC_12x10_SRGB_BLOCK = 182 - VK_FORMAT_ASTC_12x12_UNORM_BLOCK = 183 - VK_FORMAT_ASTC_12x12_SRGB_BLOCK = 184 - VkStructureType* {.size: int32.sizeof.} = enum - VK_STRUCTURE_TYPE_APPLICATION_INFO = 0 - VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO = 1 - VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO = 2 - VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO = 3 - VK_STRUCTURE_TYPE_SUBMIT_INFO = 4 - VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO = 5 - VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE = 6 - VK_STRUCTURE_TYPE_BIND_SPARSE_INFO = 7 - VK_STRUCTURE_TYPE_FENCE_CREATE_INFO = 8 - VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO = 9 - VK_STRUCTURE_TYPE_EVENT_CREATE_INFO = 10 - VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO = 11 - VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO = 12 - VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO = 13 - VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO = 14 - VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO = 15 - VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO = 16 - VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO = 17 - VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO = 18 - VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO = 19 - VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO = 20 - VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO = 21 - VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO = 22 - VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO = 23 - VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO = 24 - VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO = 25 - VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO = 26 - VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO = 27 - VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO = 28 - VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO = 29 - VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO = 30 - VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO = 31 - VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO = 32 - VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO = 33 - VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO = 34 - VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET = 35 - VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET = 36 - VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO = 37 - VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO = 38 - VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO = 39 - VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO = 40 - VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO = 41 - VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO = 42 - VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO = 43 - VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER = 44 - VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER = 45 - VK_STRUCTURE_TYPE_MEMORY_BARRIER = 46 - VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO = 47 - VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO = 48 - VkSubpassContents* {.size: int32.sizeof.} = enum - VK_SUBPASS_CONTENTS_INLINE = 0 - VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS = 1 - VkResult* {.size: int32.sizeof.} = enum - VK_ERROR_UNKNOWN = -13 - VK_ERROR_FRAGMENTED_POOL = -12 - VK_ERROR_FORMAT_NOT_SUPPORTED = -11 - VK_ERROR_TOO_MANY_OBJECTS = -10 - VK_ERROR_INCOMPATIBLE_DRIVER = -9 - VK_ERROR_FEATURE_NOT_PRESENT = -8 - VK_ERROR_EXTENSION_NOT_PRESENT = -7 - VK_ERROR_LAYER_NOT_PRESENT = -6 - VK_ERROR_MEMORY_MAP_FAILED = -5 - VK_ERROR_DEVICE_LOST = -4 - VK_ERROR_INITIALIZATION_FAILED = -3 - VK_ERROR_OUT_OF_DEVICE_MEMORY = -2 - VK_ERROR_OUT_OF_HOST_MEMORY = -1 - VK_SUCCESS = 0 - VK_NOT_READY = 1 - VK_TIMEOUT = 2 - VK_EVENT_SET = 3 - VK_EVENT_RESET = 4 - VK_INCOMPLETE = 5 - VkDynamicState* {.size: int32.sizeof.} = enum - VK_DYNAMIC_STATE_VIEWPORT = 0 - VK_DYNAMIC_STATE_SCISSOR = 1 - VK_DYNAMIC_STATE_LINE_WIDTH = 2 - VK_DYNAMIC_STATE_DEPTH_BIAS = 3 - VK_DYNAMIC_STATE_BLEND_CONSTANTS = 4 - VK_DYNAMIC_STATE_DEPTH_BOUNDS = 5 - VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK = 6 - VK_DYNAMIC_STATE_STENCIL_WRITE_MASK = 7 - VK_DYNAMIC_STATE_STENCIL_REFERENCE = 8 - VkDescriptorUpdateTemplateType* {.size: int32.sizeof.} = enum - VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET = 0 - VkObjectType* {.size: int32.sizeof.} = enum - VK_OBJECT_TYPE_UNKNOWN = 0 - VK_OBJECT_TYPE_INSTANCE = 1 - VK_OBJECT_TYPE_PHYSICAL_DEVICE = 2 - VK_OBJECT_TYPE_DEVICE = 3 - VK_OBJECT_TYPE_QUEUE = 4 - VK_OBJECT_TYPE_SEMAPHORE = 5 - VK_OBJECT_TYPE_COMMAND_BUFFER = 6 - VK_OBJECT_TYPE_FENCE = 7 - VK_OBJECT_TYPE_DEVICE_MEMORY = 8 - VK_OBJECT_TYPE_BUFFER = 9 - VK_OBJECT_TYPE_IMAGE = 10 - VK_OBJECT_TYPE_EVENT = 11 - VK_OBJECT_TYPE_QUERY_POOL = 12 - VK_OBJECT_TYPE_BUFFER_VIEW = 13 - VK_OBJECT_TYPE_IMAGE_VIEW = 14 - VK_OBJECT_TYPE_SHADER_MODULE = 15 - VK_OBJECT_TYPE_PIPELINE_CACHE = 16 - VK_OBJECT_TYPE_PIPELINE_LAYOUT = 17 - VK_OBJECT_TYPE_RENDER_PASS = 18 - VK_OBJECT_TYPE_PIPELINE = 19 - VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT = 20 - VK_OBJECT_TYPE_SAMPLER = 21 - VK_OBJECT_TYPE_DESCRIPTOR_POOL = 22 - VK_OBJECT_TYPE_DESCRIPTOR_SET = 23 - VK_OBJECT_TYPE_FRAMEBUFFER = 24 - VK_OBJECT_TYPE_COMMAND_POOL = 25 - VkRayTracingInvocationReorderModeNV* {.size: int32.sizeof.} = enum - VK_RAY_TRACING_INVOCATION_REORDER_MODE_NONE_NV = 0 - VK_RAY_TRACING_INVOCATION_REORDER_MODE_REORDER_NV = 1 - VkDirectDriverLoadingModeLUNARG* {.size: int32.sizeof.} = enum - VK_DIRECT_DRIVER_LOADING_MODE_EXCLUSIVE_LUNARG = 0 - VK_DIRECT_DRIVER_LOADING_MODE_INCLUSIVE_LUNARG = 1 - VkQueueFlagBits* {.size: int32.sizeof.} = enum - VK_QUEUE_GRAPHICS_BIT = 1 - VK_QUEUE_COMPUTE_BIT = 2 - VK_QUEUE_TRANSFER_BIT = 4 - VK_QUEUE_SPARSE_BINDING_BIT = 8 - VkCullModeFlagBits* {.size: int32.sizeof.} = enum - VK_CULL_MODE_NONE = 0 - VK_CULL_MODE_FRONT_BIT = 1 - VK_CULL_MODE_BACK_BIT = 2 - VK_CULL_MODE_FRONT_AND_BACK = 3 - VkMemoryPropertyFlagBits* {.size: int32.sizeof.} = enum - VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT = 1 - VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT = 2 - VK_MEMORY_PROPERTY_HOST_COHERENT_BIT = 4 - VK_MEMORY_PROPERTY_HOST_CACHED_BIT = 8 - VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT = 16 - VkMemoryHeapFlagBits* {.size: int32.sizeof.} = enum - VK_MEMORY_HEAP_DEVICE_LOCAL_BIT = 1 - VkAccessFlagBits* {.size: int32.sizeof.} = enum - VK_ACCESS_INDIRECT_COMMAND_READ_BIT = 1 - VK_ACCESS_INDEX_READ_BIT = 2 - VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT = 4 - VK_ACCESS_UNIFORM_READ_BIT = 8 - VK_ACCESS_INPUT_ATTACHMENT_READ_BIT = 16 - VK_ACCESS_SHADER_READ_BIT = 32 - VK_ACCESS_SHADER_WRITE_BIT = 64 - VK_ACCESS_COLOR_ATTACHMENT_READ_BIT = 128 - VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT = 256 - VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT = 512 - VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT = 1024 - VK_ACCESS_TRANSFER_READ_BIT = 2048 - VK_ACCESS_TRANSFER_WRITE_BIT = 4096 - VK_ACCESS_HOST_READ_BIT = 8192 - VK_ACCESS_HOST_WRITE_BIT = 16384 - VK_ACCESS_MEMORY_READ_BIT = 32768 - VK_ACCESS_MEMORY_WRITE_BIT = 65536 - VkBufferUsageFlagBits* {.size: int32.sizeof.} = enum - VK_BUFFER_USAGE_TRANSFER_SRC_BIT = 1 - VK_BUFFER_USAGE_TRANSFER_DST_BIT = 2 - VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT = 4 - VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT = 8 - VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT = 16 - VK_BUFFER_USAGE_STORAGE_BUFFER_BIT = 32 - VK_BUFFER_USAGE_INDEX_BUFFER_BIT = 64 - VK_BUFFER_USAGE_VERTEX_BUFFER_BIT = 128 - VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT = 256 - VkBufferUsageFlagBits2KHR* {.size: int32.sizeof.} = enum - VK_BUFFER_USAGE_2_TRANSFER_SRC_BIT_KHR = 1 - VK_BUFFER_USAGE_2_TRANSFER_DST_BIT_KHR = 2 - VK_BUFFER_USAGE_2_UNIFORM_TEXEL_BUFFER_BIT_KHR = 4 - VK_BUFFER_USAGE_2_STORAGE_TEXEL_BUFFER_BIT_KHR = 8 - VK_BUFFER_USAGE_2_UNIFORM_BUFFER_BIT_KHR = 16 - VK_BUFFER_USAGE_2_STORAGE_BUFFER_BIT_KHR = 32 - VK_BUFFER_USAGE_2_INDEX_BUFFER_BIT_KHR = 64 - VK_BUFFER_USAGE_2_VERTEX_BUFFER_BIT_KHR = 128 - VK_BUFFER_USAGE_2_INDIRECT_BUFFER_BIT_KHR = 256 - VkBufferCreateFlagBits* {.size: int32.sizeof.} = enum - VK_BUFFER_CREATE_SPARSE_BINDING_BIT = 1 - VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT = 2 - VK_BUFFER_CREATE_SPARSE_ALIASED_BIT = 4 - VkShaderStageFlagBits* {.size: int32.sizeof.} = enum - VK_SHADER_STAGE_VERTEX_BIT = 1 - VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT = 2 - VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT = 4 - VK_SHADER_STAGE_GEOMETRY_BIT = 8 - VK_SHADER_STAGE_FRAGMENT_BIT = 16 - VK_SHADER_STAGE_ALL_GRAPHICS = 31 - VK_SHADER_STAGE_COMPUTE_BIT = 32 - VK_SHADER_STAGE_ALL = 2147483647 - VkImageUsageFlagBits* {.size: int32.sizeof.} = enum - VK_IMAGE_USAGE_TRANSFER_SRC_BIT = 1 - VK_IMAGE_USAGE_TRANSFER_DST_BIT = 2 - VK_IMAGE_USAGE_SAMPLED_BIT = 4 - VK_IMAGE_USAGE_STORAGE_BIT = 8 - VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT = 16 - VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT = 32 - VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT = 64 - VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT = 128 - VkImageCreateFlagBits* {.size: int32.sizeof.} = enum - VK_IMAGE_CREATE_SPARSE_BINDING_BIT = 1 - VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT = 2 - VK_IMAGE_CREATE_SPARSE_ALIASED_BIT = 4 - VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT = 8 - VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT = 16 - VkPipelineCreateFlagBits* {.size: int32.sizeof.} = enum - VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT = 1 - VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT = 2 - VK_PIPELINE_CREATE_DERIVATIVE_BIT = 4 - VkPipelineCreateFlagBits2KHR* {.size: int32.sizeof.} = enum - VK_PIPELINE_CREATE_2_DISABLE_OPTIMIZATION_BIT_KHR = 1 - VK_PIPELINE_CREATE_2_ALLOW_DERIVATIVES_BIT_KHR = 2 - VK_PIPELINE_CREATE_2_DERIVATIVE_BIT_KHR = 4 - VkColorComponentFlagBits* {.size: int32.sizeof.} = enum - VK_COLOR_COMPONENT_R_BIT = 1 - VK_COLOR_COMPONENT_G_BIT = 2 - VK_COLOR_COMPONENT_B_BIT = 4 - VK_COLOR_COMPONENT_A_BIT = 8 - VkFenceCreateFlagBits* {.size: int32.sizeof.} = enum - VK_FENCE_CREATE_SIGNALED_BIT = 1 - VkFormatFeatureFlagBits* {.size: int32.sizeof.} = enum - VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT = 1 - VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT = 2 - VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT = 4 - VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT = 8 - VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT = 16 - VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT = 32 - VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT = 64 - VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT = 128 - VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT = 256 - VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT = 512 - VK_FORMAT_FEATURE_BLIT_SRC_BIT = 1024 - VK_FORMAT_FEATURE_BLIT_DST_BIT = 2048 - VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT = 4096 - VkQueryControlFlagBits* {.size: int32.sizeof.} = enum - VK_QUERY_CONTROL_PRECISE_BIT = 1 - VkQueryResultFlagBits* {.size: int32.sizeof.} = enum - VK_QUERY_RESULT_64_BIT = 1 - VK_QUERY_RESULT_WAIT_BIT = 2 - VK_QUERY_RESULT_WITH_AVAILABILITY_BIT = 4 - VK_QUERY_RESULT_PARTIAL_BIT = 8 - VkCommandBufferUsageFlagBits* {.size: int32.sizeof.} = enum - VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT = 1 - VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT = 2 - VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT = 4 - VkQueryPipelineStatisticFlagBits* {.size: int32.sizeof.} = enum - VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT = 1 - VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT = 2 - VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT = 4 - VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT = 8 - VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT = 16 - VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT = 32 - VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT = 64 - VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT = 128 - VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT = 256 - VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT = 512 - VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT = 1024 - VkImageAspectFlagBits* {.size: int32.sizeof.} = enum - VK_IMAGE_ASPECT_COLOR_BIT = 1 - VK_IMAGE_ASPECT_DEPTH_BIT = 2 - VK_IMAGE_ASPECT_STENCIL_BIT = 4 - VK_IMAGE_ASPECT_METADATA_BIT = 8 - VkSparseImageFormatFlagBits* {.size: int32.sizeof.} = enum - VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT = 1 - VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT = 2 - VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT = 4 - VkSparseMemoryBindFlagBits* {.size: int32.sizeof.} = enum - VK_SPARSE_MEMORY_BIND_METADATA_BIT = 1 - VkPipelineStageFlagBits* {.size: int32.sizeof.} = enum - VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT = 1 - VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT = 2 - VK_PIPELINE_STAGE_VERTEX_INPUT_BIT = 4 - VK_PIPELINE_STAGE_VERTEX_SHADER_BIT = 8 - VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT = 16 - VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT = 32 - VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT = 64 - VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT = 128 - VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT = 256 - VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT = 512 - VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT = 1024 - VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT = 2048 - VK_PIPELINE_STAGE_TRANSFER_BIT = 4096 - VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT = 8192 - VK_PIPELINE_STAGE_HOST_BIT = 16384 - VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT = 32768 - VK_PIPELINE_STAGE_ALL_COMMANDS_BIT = 65536 - VkCommandPoolCreateFlagBits* {.size: int32.sizeof.} = enum - VK_COMMAND_POOL_CREATE_TRANSIENT_BIT = 1 - VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT = 2 - VkCommandPoolResetFlagBits* {.size: int32.sizeof.} = enum - VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT = 1 - VkCommandBufferResetFlagBits* {.size: int32.sizeof.} = enum - VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT = 1 - VkSampleCountFlagBits* {.size: int32.sizeof.} = enum - VK_SAMPLE_COUNT_1_BIT = 1 - VK_SAMPLE_COUNT_2_BIT = 2 - VK_SAMPLE_COUNT_4_BIT = 4 - VK_SAMPLE_COUNT_8_BIT = 8 - VK_SAMPLE_COUNT_16_BIT = 16 - VK_SAMPLE_COUNT_32_BIT = 32 - VK_SAMPLE_COUNT_64_BIT = 64 - VkAttachmentDescriptionFlagBits* {.size: int32.sizeof.} = enum - VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT = 1 - VkStencilFaceFlagBits* {.size: int32.sizeof.} = enum - VK_STENCIL_FACE_FRONT_BIT = 1 - VK_STENCIL_FACE_BACK_BIT = 2 - VK_STENCIL_FACE_FRONT_AND_BACK = 3 - VkDescriptorPoolCreateFlagBits* {.size: int32.sizeof.} = enum - VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT = 1 - VkDependencyFlagBits* {.size: int32.sizeof.} = enum - VK_DEPENDENCY_BY_REGION_BIT = 1 - VkSemaphoreType* {.size: int32.sizeof.} = enum - VK_SEMAPHORE_TYPE_BINARY = 0 - VK_SEMAPHORE_TYPE_TIMELINE = 1 - VkSemaphoreWaitFlagBits* {.size: int32.sizeof.} = enum - VK_SEMAPHORE_WAIT_ANY_BIT = 1 - VkPresentModeKHR* {.size: int32.sizeof.} = enum - VK_PRESENT_MODE_IMMEDIATE_KHR = 0 - VK_PRESENT_MODE_MAILBOX_KHR = 1 - VK_PRESENT_MODE_FIFO_KHR = 2 - VK_PRESENT_MODE_FIFO_RELAXED_KHR = 3 - VkColorSpaceKHR* {.size: int32.sizeof.} = enum - VK_COLOR_SPACE_SRGB_NONLINEAR_KHR = 0 - VkDisplayPlaneAlphaFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR = 1 - VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR = 2 - VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR = 4 - VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR = 8 - VkCompositeAlphaFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR = 1 - VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR = 2 - VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR = 4 - VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR = 8 - VkSurfaceTransformFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR = 1 - VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR = 2 - VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR = 4 - VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR = 8 - VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR = 16 - VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR = 32 - VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR = 64 - VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR = 128 - VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR = 256 - VkSwapchainImageUsageFlagBitsANDROID* {.size: int32.sizeof.} = enum - VK_SWAPCHAIN_IMAGE_USAGE_SHARED_BIT_ANDROID = 1 - VkTimeDomainKHR* {.size: int32.sizeof.} = enum - VK_TIME_DOMAIN_DEVICE_KHR = 0 - VK_TIME_DOMAIN_CLOCK_MONOTONIC_KHR = 1 - VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_KHR = 2 - VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_KHR = 3 - VkDebugReportFlagBitsEXT* {.size: int32.sizeof.} = enum - VK_DEBUG_REPORT_INFORMATION_BIT_EXT = 1 - VK_DEBUG_REPORT_WARNING_BIT_EXT = 2 - VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT = 4 - VK_DEBUG_REPORT_ERROR_BIT_EXT = 8 - VK_DEBUG_REPORT_DEBUG_BIT_EXT = 16 - VkDebugReportObjectTypeEXT* {.size: int32.sizeof.} = enum - VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT = 0 - VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT = 1 - VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT = 2 - VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT = 3 - VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT = 4 - VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT = 5 - VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT = 6 - VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT = 7 - VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT = 8 - VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT = 9 - VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT = 10 - VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT = 11 - VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT = 12 - VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT = 13 - VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT = 14 - VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT = 15 - VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT = 16 - VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT = 17 - VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT = 18 - VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT = 19 - VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT = 20 - VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT = 21 - VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT = 22 - VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT = 23 - VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT = 24 - VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT = 25 - VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT = 26 - VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT = 27 - VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT = 28 - VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT = 29 - VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT = 30 - VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT = 33 - VkDeviceMemoryReportEventTypeEXT* {.size: int32.sizeof.} = enum - VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATE_EXT = 0 - VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_FREE_EXT = 1 - VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_IMPORT_EXT = 2 - VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_UNIMPORT_EXT = 3 - VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATION_FAILED_EXT = 4 - VkRasterizationOrderAMD* {.size: int32.sizeof.} = enum - VK_RASTERIZATION_ORDER_STRICT_AMD = 0 - VK_RASTERIZATION_ORDER_RELAXED_AMD = 1 - VkExternalMemoryHandleTypeFlagBitsNV* {.size: int32.sizeof.} = enum - VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV = 1 - VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV = 2 - VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV = 4 - VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV = 8 - VkExternalMemoryFeatureFlagBitsNV* {.size: int32.sizeof.} = enum - VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV = 1 - VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV = 2 - VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV = 4 - VkValidationCheckEXT* {.size: int32.sizeof.} = enum - VK_VALIDATION_CHECK_ALL_EXT = 0 - VK_VALIDATION_CHECK_SHADERS_EXT = 1 - VkValidationFeatureEnableEXT* {.size: int32.sizeof.} = enum - VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT = 0 - VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT = 1 - VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT = 2 - VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT = 3 - VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT = 4 - VkValidationFeatureDisableEXT* {.size: int32.sizeof.} = enum - VK_VALIDATION_FEATURE_DISABLE_ALL_EXT = 0 - VK_VALIDATION_FEATURE_DISABLE_SHADERS_EXT = 1 - VK_VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT = 2 - VK_VALIDATION_FEATURE_DISABLE_API_PARAMETERS_EXT = 3 - VK_VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT = 4 - VK_VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT = 5 - VK_VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT = 6 - VK_VALIDATION_FEATURE_DISABLE_SHADER_VALIDATION_CACHE_EXT = 7 - VkLayerSettingTypeEXT* {.size: int32.sizeof.} = enum - VK_LAYER_SETTING_TYPE_BOOL32_EXT = 0 - VK_LAYER_SETTING_TYPE_INT32_EXT = 1 - VK_LAYER_SETTING_TYPE_INT64_EXT = 2 - VK_LAYER_SETTING_TYPE_UINT32_EXT = 3 - VK_LAYER_SETTING_TYPE_UINT64_EXT = 4 - VK_LAYER_SETTING_TYPE_FLOAT32_EXT = 5 - VK_LAYER_SETTING_TYPE_FLOAT64_EXT = 6 - VK_LAYER_SETTING_TYPE_STRING_EXT = 7 - VkSubgroupFeatureFlagBits* {.size: int32.sizeof.} = enum - VK_SUBGROUP_FEATURE_BASIC_BIT = 1 - VK_SUBGROUP_FEATURE_VOTE_BIT = 2 - VK_SUBGROUP_FEATURE_ARITHMETIC_BIT = 4 - VK_SUBGROUP_FEATURE_BALLOT_BIT = 8 - VK_SUBGROUP_FEATURE_SHUFFLE_BIT = 16 - VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT = 32 - VK_SUBGROUP_FEATURE_CLUSTERED_BIT = 64 - VK_SUBGROUP_FEATURE_QUAD_BIT = 128 - VkIndirectCommandsLayoutUsageFlagBitsNV* {.size: int32.sizeof.} = enum - VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EXPLICIT_PREPROCESS_BIT_NV = 1 - VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NV = 2 - VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NV = 4 - VkIndirectStateFlagBitsNV* {.size: int32.sizeof.} = enum - VK_INDIRECT_STATE_FLAG_FRONTFACE_BIT_NV = 1 - VkIndirectCommandsTokenTypeNV* {.size: int32.sizeof.} = enum - VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV = 0 - VK_INDIRECT_COMMANDS_TOKEN_TYPE_STATE_FLAGS_NV = 1 - VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NV = 2 - VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NV = 3 - VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV = 4 - VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NV = 5 - VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NV = 6 - VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV = 7 - VkExternalMemoryHandleTypeFlagBits* {.size: int32.sizeof.} = enum - VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT = 1 - VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT = 2 - VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT = 4 - VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT = 8 - VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT = 16 - VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT = 32 - VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT = 64 - VkExternalMemoryFeatureFlagBits* {.size: int32.sizeof.} = enum - VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT = 1 - VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT = 2 - VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT = 4 - VkExternalSemaphoreHandleTypeFlagBits* {.size: int32.sizeof.} = enum - VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT = 1 - VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT = 2 - VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT = 4 - VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT = 8 - VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT = 16 - VkExternalSemaphoreFeatureFlagBits* {.size: int32.sizeof.} = enum - VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT = 1 - VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT = 2 - VkSemaphoreImportFlagBits* {.size: int32.sizeof.} = enum - VK_SEMAPHORE_IMPORT_TEMPORARY_BIT = 1 - VkExternalFenceHandleTypeFlagBits* {.size: int32.sizeof.} = enum - VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT = 1 - VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT = 2 - VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT = 4 - VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT = 8 - VkExternalFenceFeatureFlagBits* {.size: int32.sizeof.} = enum - VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT = 1 - VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT = 2 - VkFenceImportFlagBits* {.size: int32.sizeof.} = enum - VK_FENCE_IMPORT_TEMPORARY_BIT = 1 - VkSurfaceCounterFlagBitsEXT* {.size: int32.sizeof.} = enum - VK_SURFACE_COUNTER_VBLANK_BIT_EXT = 1 - VkDisplayPowerStateEXT* {.size: int32.sizeof.} = enum - VK_DISPLAY_POWER_STATE_OFF_EXT = 0 - VK_DISPLAY_POWER_STATE_SUSPEND_EXT = 1 - VK_DISPLAY_POWER_STATE_ON_EXT = 2 - VkDeviceEventTypeEXT* {.size: int32.sizeof.} = enum - VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT = 0 - VkDisplayEventTypeEXT* {.size: int32.sizeof.} = enum - VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT = 0 - VkPeerMemoryFeatureFlagBits* {.size: int32.sizeof.} = enum - VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT = 1 - VK_PEER_MEMORY_FEATURE_COPY_DST_BIT = 2 - VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT = 4 - VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT = 8 - VkMemoryAllocateFlagBits* {.size: int32.sizeof.} = enum - VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT = 1 - VkDeviceGroupPresentModeFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR = 1 - VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR = 2 - VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR = 4 - VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR = 8 - VkViewportCoordinateSwizzleNV* {.size: int32.sizeof.} = enum - VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV = 0 - VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_X_NV = 1 - VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Y_NV = 2 - VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Y_NV = 3 - VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Z_NV = 4 - VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Z_NV = 5 - VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_W_NV = 6 - VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV = 7 - VkDiscardRectangleModeEXT* {.size: int32.sizeof.} = enum - VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT = 0 - VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT = 1 - VkPointClippingBehavior* {.size: int32.sizeof.} = enum - VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES = 0 - VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY = 1 - VkSamplerReductionMode* {.size: int32.sizeof.} = enum - VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE = 0 - VK_SAMPLER_REDUCTION_MODE_MIN = 1 - VK_SAMPLER_REDUCTION_MODE_MAX = 2 - VkTessellationDomainOrigin* {.size: int32.sizeof.} = enum - VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT = 0 - VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT = 1 - VkSamplerYcbcrModelConversion* {.size: int32.sizeof.} = enum - VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY = 0 - VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY = 1 - VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709 = 2 - VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601 = 3 - VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020 = 4 - VkSamplerYcbcrRange* {.size: int32.sizeof.} = enum - VK_SAMPLER_YCBCR_RANGE_ITU_FULL = 0 - VK_SAMPLER_YCBCR_RANGE_ITU_NARROW = 1 - VkChromaLocation* {.size: int32.sizeof.} = enum - VK_CHROMA_LOCATION_COSITED_EVEN = 0 - VK_CHROMA_LOCATION_MIDPOINT = 1 - VkBlendOverlapEXT* {.size: int32.sizeof.} = enum - VK_BLEND_OVERLAP_UNCORRELATED_EXT = 0 - VK_BLEND_OVERLAP_DISJOINT_EXT = 1 - VK_BLEND_OVERLAP_CONJOINT_EXT = 2 - VkCoverageModulationModeNV* {.size: int32.sizeof.} = enum - VK_COVERAGE_MODULATION_MODE_NONE_NV = 0 - VK_COVERAGE_MODULATION_MODE_RGB_NV = 1 - VK_COVERAGE_MODULATION_MODE_ALPHA_NV = 2 - VK_COVERAGE_MODULATION_MODE_RGBA_NV = 3 - VkCoverageReductionModeNV* {.size: int32.sizeof.} = enum - VK_COVERAGE_REDUCTION_MODE_MERGE_NV = 0 - VK_COVERAGE_REDUCTION_MODE_TRUNCATE_NV = 1 - VkValidationCacheHeaderVersionEXT* {.size: int32.sizeof.} = enum - VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT = 1 - VkShaderInfoTypeAMD* {.size: int32.sizeof.} = enum - VK_SHADER_INFO_TYPE_STATISTICS_AMD = 0 - VK_SHADER_INFO_TYPE_BINARY_AMD = 1 - VK_SHADER_INFO_TYPE_DISASSEMBLY_AMD = 2 - VkQueueGlobalPriorityKHR* {.size: int32.sizeof.} = enum - VK_QUEUE_GLOBAL_PRIORITY_LOW_KHR = 128 - VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_KHR = 256 - VK_QUEUE_GLOBAL_PRIORITY_HIGH_KHR = 512 - VK_QUEUE_GLOBAL_PRIORITY_REALTIME_KHR = 1024 - VkDebugUtilsMessageSeverityFlagBitsEXT* {.size: int32.sizeof.} = enum - VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT = 1 - VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT = 16 - VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT = 256 - VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT = 4096 - VkDebugUtilsMessageTypeFlagBitsEXT* {.size: int32.sizeof.} = enum - VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT = 1 - VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT = 2 - VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT = 4 - VkConservativeRasterizationModeEXT* {.size: int32.sizeof.} = enum - VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT = 0 - VK_CONSERVATIVE_RASTERIZATION_MODE_OVERESTIMATE_EXT = 1 - VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT = 2 - VkDescriptorBindingFlagBits* {.size: int32.sizeof.} = enum - VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT = 1 - VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT = 2 - VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT = 4 - VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT = 8 - VkVendorId* {.size: int32.sizeof.} = enum - VK_VENDOR_ID_VIV = 65537 - VK_VENDOR_ID_VSI = 65538 - VK_VENDOR_ID_KAZAN = 65539 - VK_VENDOR_ID_CODEPLAY = 65540 - VK_VENDOR_ID_MESA = 65541 - VK_VENDOR_ID_POCL = 65542 - VK_VENDOR_ID_MOBILEYE = 65543 - VkDriverId* {.size: int32.sizeof.} = enum - VK_DRIVER_ID_AMD_PROPRIETARY = 1 - VK_DRIVER_ID_AMD_OPEN_SOURCE = 2 - VK_DRIVER_ID_MESA_RADV = 3 - VK_DRIVER_ID_NVIDIA_PROPRIETARY = 4 - VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS = 5 - VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA = 6 - VK_DRIVER_ID_IMAGINATION_PROPRIETARY = 7 - VK_DRIVER_ID_QUALCOMM_PROPRIETARY = 8 - VK_DRIVER_ID_ARM_PROPRIETARY = 9 - VK_DRIVER_ID_GOOGLE_SWIFTSHADER = 10 - VK_DRIVER_ID_GGP_PROPRIETARY = 11 - VK_DRIVER_ID_BROADCOM_PROPRIETARY = 12 - VK_DRIVER_ID_MESA_LLVMPIPE = 13 - VK_DRIVER_ID_MOLTENVK = 14 - VK_DRIVER_ID_COREAVI_PROPRIETARY = 15 - VK_DRIVER_ID_JUICE_PROPRIETARY = 16 - VK_DRIVER_ID_VERISILICON_PROPRIETARY = 17 - VK_DRIVER_ID_MESA_TURNIP = 18 - VK_DRIVER_ID_MESA_V3DV = 19 - VK_DRIVER_ID_MESA_PANVK = 20 - VK_DRIVER_ID_SAMSUNG_PROPRIETARY = 21 - VK_DRIVER_ID_MESA_VENUS = 22 - VK_DRIVER_ID_MESA_DOZEN = 23 - VK_DRIVER_ID_MESA_NVK = 24 - VK_DRIVER_ID_IMAGINATION_OPEN_SOURCE_MESA = 25 - VK_DRIVER_ID_MESA_AGXV = 26 - VkConditionalRenderingFlagBitsEXT* {.size: int32.sizeof.} = enum - VK_CONDITIONAL_RENDERING_INVERTED_BIT_EXT = 1 - VkResolveModeFlagBits* {.size: int32.sizeof.} = enum - VK_RESOLVE_MODE_NONE = 0 - VK_RESOLVE_MODE_SAMPLE_ZERO_BIT = 1 - VK_RESOLVE_MODE_AVERAGE_BIT = 2 - VK_RESOLVE_MODE_MIN_BIT = 4 - VK_RESOLVE_MODE_MAX_BIT = 8 - VkShadingRatePaletteEntryNV* {.size: int32.sizeof.} = enum - VK_SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV = 0 - VK_SHADING_RATE_PALETTE_ENTRY_16_INVOCATIONS_PER_PIXEL_NV = 1 - VK_SHADING_RATE_PALETTE_ENTRY_8_INVOCATIONS_PER_PIXEL_NV = 2 - VK_SHADING_RATE_PALETTE_ENTRY_4_INVOCATIONS_PER_PIXEL_NV = 3 - VK_SHADING_RATE_PALETTE_ENTRY_2_INVOCATIONS_PER_PIXEL_NV = 4 - VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_PIXEL_NV = 5 - VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X1_PIXELS_NV = 6 - VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_1X2_PIXELS_NV = 7 - VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X2_PIXELS_NV = 8 - VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X2_PIXELS_NV = 9 - VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X4_PIXELS_NV = 10 - VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X4_PIXELS_NV = 11 - VkCoarseSampleOrderTypeNV* {.size: int32.sizeof.} = enum - VK_COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV = 0 - VK_COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV = 1 - VK_COARSE_SAMPLE_ORDER_TYPE_PIXEL_MAJOR_NV = 2 - VK_COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV = 3 - VkGeometryInstanceFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR = 1 - VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR = 2 - VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR = 4 - VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR = 8 - VkGeometryFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_GEOMETRY_OPAQUE_BIT_KHR = 1 - VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR = 2 - VkBuildAccelerationStructureFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR = 1 - VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR = 2 - VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR = 4 - VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR = 8 - VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR = 16 - VkAccelerationStructureCreateFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_ACCELERATION_STRUCTURE_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR = 1 - VkCopyAccelerationStructureModeKHR* {.size: int32.sizeof.} = enum - VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR = 0 - VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR = 1 - VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR = 2 - VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR = 3 - VkBuildAccelerationStructureModeKHR* {.size: int32.sizeof.} = enum - VK_BUILD_ACCELERATION_STRUCTURE_MODE_BUILD_KHR = 0 - VK_BUILD_ACCELERATION_STRUCTURE_MODE_UPDATE_KHR = 1 - VkAccelerationStructureTypeKHR* {.size: int32.sizeof.} = enum - VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR = 0 - VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR = 1 - VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR = 2 - VkGeometryTypeKHR* {.size: int32.sizeof.} = enum - VK_GEOMETRY_TYPE_TRIANGLES_KHR = 0 - VK_GEOMETRY_TYPE_AABBS_KHR = 1 - VK_GEOMETRY_TYPE_INSTANCES_KHR = 2 - VkAccelerationStructureMemoryRequirementsTypeNV* {.size: int32.sizeof.} = enum - VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV = 0 - VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV = 1 - VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV = 2 - VkAccelerationStructureBuildTypeKHR* {.size: int32.sizeof.} = enum - VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR = 0 - VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR = 1 - VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR = 2 - VkRayTracingShaderGroupTypeKHR* {.size: int32.sizeof.} = enum - VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR = 0 - VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR = 1 - VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR = 2 - VkAccelerationStructureCompatibilityKHR* {.size: int32.sizeof.} = enum - VK_ACCELERATION_STRUCTURE_COMPATIBILITY_COMPATIBLE_KHR = 0 - VK_ACCELERATION_STRUCTURE_COMPATIBILITY_INCOMPATIBLE_KHR = 1 - VkShaderGroupShaderKHR* {.size: int32.sizeof.} = enum - VK_SHADER_GROUP_SHADER_GENERAL_KHR = 0 - VK_SHADER_GROUP_SHADER_CLOSEST_HIT_KHR = 1 - VK_SHADER_GROUP_SHADER_ANY_HIT_KHR = 2 - VK_SHADER_GROUP_SHADER_INTERSECTION_KHR = 3 - VkMemoryOverallocationBehaviorAMD* {.size: int32.sizeof.} = enum - VK_MEMORY_OVERALLOCATION_BEHAVIOR_DEFAULT_AMD = 0 - VK_MEMORY_OVERALLOCATION_BEHAVIOR_ALLOWED_AMD = 1 - VK_MEMORY_OVERALLOCATION_BEHAVIOR_DISALLOWED_AMD = 2 - VkDeviceDiagnosticsConfigFlagBitsNV* {.size: int32.sizeof.} = enum - VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV = 1 - VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV = 2 - VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV = 4 - VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_ERROR_REPORTING_BIT_NV = 8 - VkPipelineCreationFeedbackFlagBits* {.size: int32.sizeof.} = enum - VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT = 1 - VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT = 2 - VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT = 4 - VkFullScreenExclusiveEXT* {.size: int32.sizeof.} = enum - VK_FULL_SCREEN_EXCLUSIVE_DEFAULT_EXT = 0 - VK_FULL_SCREEN_EXCLUSIVE_ALLOWED_EXT = 1 - VK_FULL_SCREEN_EXCLUSIVE_DISALLOWED_EXT = 2 - VK_FULL_SCREEN_EXCLUSIVE_APPLICATION_CONTROLLED_EXT = 3 - VkPerformanceCounterScopeKHR* {.size: int32.sizeof.} = enum - VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR = 0 - VK_PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR = 1 - VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR = 2 - VkMemoryDecompressionMethodFlagBitsNV* {.size: int32.sizeof.} = enum - VK_MEMORY_DECOMPRESSION_METHOD_GDEFLATE_1_0_BIT_NV = 1 - VkPerformanceCounterUnitKHR* {.size: int32.sizeof.} = enum - VK_PERFORMANCE_COUNTER_UNIT_GENERIC_KHR = 0 - VK_PERFORMANCE_COUNTER_UNIT_PERCENTAGE_KHR = 1 - VK_PERFORMANCE_COUNTER_UNIT_NANOSECONDS_KHR = 2 - VK_PERFORMANCE_COUNTER_UNIT_BYTES_KHR = 3 - VK_PERFORMANCE_COUNTER_UNIT_BYTES_PER_SECOND_KHR = 4 - VK_PERFORMANCE_COUNTER_UNIT_KELVIN_KHR = 5 - VK_PERFORMANCE_COUNTER_UNIT_WATTS_KHR = 6 - VK_PERFORMANCE_COUNTER_UNIT_VOLTS_KHR = 7 - VK_PERFORMANCE_COUNTER_UNIT_AMPS_KHR = 8 - VK_PERFORMANCE_COUNTER_UNIT_HERTZ_KHR = 9 - VK_PERFORMANCE_COUNTER_UNIT_CYCLES_KHR = 10 - VkPerformanceCounterStorageKHR* {.size: int32.sizeof.} = enum - VK_PERFORMANCE_COUNTER_STORAGE_INT32_KHR = 0 - VK_PERFORMANCE_COUNTER_STORAGE_INT64_KHR = 1 - VK_PERFORMANCE_COUNTER_STORAGE_UINT32_KHR = 2 - VK_PERFORMANCE_COUNTER_STORAGE_UINT64_KHR = 3 - VK_PERFORMANCE_COUNTER_STORAGE_FLOAT32_KHR = 4 - VK_PERFORMANCE_COUNTER_STORAGE_FLOAT64_KHR = 5 - VkPerformanceCounterDescriptionFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_BIT_KHR = 1 - VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_BIT_KHR = 2 - VkPerformanceConfigurationTypeINTEL* {.size: int32.sizeof.} = enum - VK_PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL = 0 - VkQueryPoolSamplingModeINTEL* {.size: int32.sizeof.} = enum - VK_QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL = 0 - VkPerformanceOverrideTypeINTEL* {.size: int32.sizeof.} = enum - VK_PERFORMANCE_OVERRIDE_TYPE_NULL_HARDWARE_INTEL = 0 - VK_PERFORMANCE_OVERRIDE_TYPE_FLUSH_GPU_CACHES_INTEL = 1 - VkPerformanceParameterTypeINTEL* {.size: int32.sizeof.} = enum - VK_PERFORMANCE_PARAMETER_TYPE_HW_COUNTERS_SUPPORTED_INTEL = 0 - VK_PERFORMANCE_PARAMETER_TYPE_STREAM_MARKER_VALID_BITS_INTEL = 1 - VkPerformanceValueTypeINTEL* {.size: int32.sizeof.} = enum - VK_PERFORMANCE_VALUE_TYPE_UINT32_INTEL = 0 - VK_PERFORMANCE_VALUE_TYPE_UINT64_INTEL = 1 - VK_PERFORMANCE_VALUE_TYPE_FLOAT_INTEL = 2 - VK_PERFORMANCE_VALUE_TYPE_BOOL_INTEL = 3 - VK_PERFORMANCE_VALUE_TYPE_STRING_INTEL = 4 - VkShaderFloatControlsIndependence* {.size: int32.sizeof.} = enum - VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY = 0 - VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL = 1 - VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE = 2 - VkPipelineExecutableStatisticFormatKHR* {.size: int32.sizeof.} = enum - VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BOOL32_KHR = 0 - VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_INT64_KHR = 1 - VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_UINT64_KHR = 2 - VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_FLOAT64_KHR = 3 - VkLineRasterizationModeKHR* {.size: int32.sizeof.} = enum - VK_LINE_RASTERIZATION_MODE_DEFAULT_KHR = 0 - VK_LINE_RASTERIZATION_MODE_RECTANGULAR_KHR = 1 - VK_LINE_RASTERIZATION_MODE_BRESENHAM_KHR = 2 - VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_KHR = 3 - VkFaultLevel* {.size: int32.sizeof.} = enum - VK_FAULT_LEVEL_UNASSIGNED = 0 - VK_FAULT_LEVEL_CRITICAL = 1 - VK_FAULT_LEVEL_RECOVERABLE = 2 - VK_FAULT_LEVEL_WARNING = 3 - VkFaultType* {.size: int32.sizeof.} = enum - VK_FAULT_TYPE_INVALID = 0 - VK_FAULT_TYPE_UNASSIGNED = 1 - VK_FAULT_TYPE_IMPLEMENTATION = 2 - VK_FAULT_TYPE_SYSTEM = 3 - VK_FAULT_TYPE_PHYSICAL_DEVICE = 4 - VK_FAULT_TYPE_COMMAND_BUFFER_FULL = 5 - VK_FAULT_TYPE_INVALID_API_USAGE = 6 - VkFaultQueryBehavior* {.size: int32.sizeof.} = enum - VK_FAULT_QUERY_BEHAVIOR_GET_AND_CLEAR_ALL_FAULTS = 0 - VkToolPurposeFlagBits* {.size: int32.sizeof.} = enum - VK_TOOL_PURPOSE_VALIDATION_BIT = 1 - VK_TOOL_PURPOSE_PROFILING_BIT = 2 - VK_TOOL_PURPOSE_TRACING_BIT = 4 - VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT = 8 - VK_TOOL_PURPOSE_MODIFYING_FEATURES_BIT = 16 - VkPipelineMatchControl* {.size: int32.sizeof.} = enum - VK_PIPELINE_MATCH_CONTROL_APPLICATION_UUID_EXACT_MATCH = 0 - VkFragmentShadingRateCombinerOpKHR* {.size: int32.sizeof.} = enum - VK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHR = 0 - VK_FRAGMENT_SHADING_RATE_COMBINER_OP_REPLACE_KHR = 1 - VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MIN_KHR = 2 - VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MAX_KHR = 3 - VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MUL_KHR = 4 - VkFragmentShadingRateNV* {.size: int32.sizeof.} = enum - VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV = 0 - VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV = 1 - VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV = 4 - VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV = 5 - VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV = 6 - VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV = 9 - VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV = 10 - VK_FRAGMENT_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV = 11 - VK_FRAGMENT_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV = 12 - VK_FRAGMENT_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV = 13 - VK_FRAGMENT_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV = 14 - VK_FRAGMENT_SHADING_RATE_NO_INVOCATIONS_NV = 15 - VkFragmentShadingRateTypeNV* {.size: int32.sizeof.} = enum - VK_FRAGMENT_SHADING_RATE_TYPE_FRAGMENT_SIZE_NV = 0 - VK_FRAGMENT_SHADING_RATE_TYPE_ENUMS_NV = 1 - VkSubpassMergeStatusEXT* {.size: int32.sizeof.} = enum - VK_SUBPASS_MERGE_STATUS_MERGED_EXT = 0 - VK_SUBPASS_MERGE_STATUS_DISALLOWED_EXT = 1 - VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SIDE_EFFECTS_EXT = 2 - VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SAMPLES_MISMATCH_EXT = 3 - VK_SUBPASS_MERGE_STATUS_NOT_MERGED_VIEWS_MISMATCH_EXT = 4 - VK_SUBPASS_MERGE_STATUS_NOT_MERGED_ALIASING_EXT = 5 - VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPENDENCIES_EXT = 6 - VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INCOMPATIBLE_INPUT_ATTACHMENT_EXT = 7 - VK_SUBPASS_MERGE_STATUS_NOT_MERGED_TOO_MANY_ATTACHMENTS_EXT = 8 - VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INSUFFICIENT_STORAGE_EXT = 9 - VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPTH_STENCIL_COUNT_EXT = 10 - VK_SUBPASS_MERGE_STATUS_NOT_MERGED_RESOLVE_ATTACHMENT_REUSE_EXT = 11 - VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SINGLE_SUBPASS_EXT = 12 - VK_SUBPASS_MERGE_STATUS_NOT_MERGED_UNSPECIFIED_EXT = 13 - VkAccessFlagBits2* {.size: int32.sizeof.} = enum - VK_ACCESS_2_NONE = 0 - VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT = 1 - VK_ACCESS_2_INDEX_READ_BIT = 2 - VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT = 4 - VK_ACCESS_2_UNIFORM_READ_BIT = 8 - VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT = 16 - VK_ACCESS_2_SHADER_READ_BIT = 32 - VK_ACCESS_2_SHADER_WRITE_BIT = 64 - VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT = 128 - VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT = 256 - VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT = 512 - VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT = 1024 - VK_ACCESS_2_TRANSFER_READ_BIT = 2048 - VK_ACCESS_2_TRANSFER_WRITE_BIT = 4096 - VK_ACCESS_2_HOST_READ_BIT = 8192 - VK_ACCESS_2_HOST_WRITE_BIT = 16384 - VK_ACCESS_2_MEMORY_READ_BIT = 32768 - VK_ACCESS_2_MEMORY_WRITE_BIT = 65536 - VK_ACCESS_2_SHADER_SAMPLED_READ_BIT = 4294967296 - VK_ACCESS_2_SHADER_STORAGE_READ_BIT = 8589934592 - VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT = 17179869184 - VkPipelineStageFlagBits2* {.size: int32.sizeof.} = enum - VK_PIPELINE_STAGE_2_NONE = 0 - VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT = 1 - VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT = 2 - VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT = 4 - VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT = 8 - VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT = 16 - VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT = 32 - VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT = 64 - VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT = 128 - VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT = 256 - VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT = 512 - VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT = 1024 - VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT = 2048 - VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT = 4096 - VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT = 8192 - VK_PIPELINE_STAGE_2_HOST_BIT = 16384 - VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT = 32768 - VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT = 65536 - VK_PIPELINE_STAGE_2_COPY_BIT = 4294967296 - VK_PIPELINE_STAGE_2_RESOLVE_BIT = 8589934592 - VK_PIPELINE_STAGE_2_BLIT_BIT = 17179869184 - VK_PIPELINE_STAGE_2_CLEAR_BIT = 34359738368 - VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT = 68719476736 - VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT = 137438953472 - VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT = 274877906944 - VkSubmitFlagBits* {.size: int32.sizeof.} = enum - VK_SUBMIT_PROTECTED_BIT = 1 - VkSciSyncClientTypeNV* {.size: int32.sizeof.} = enum - VK_SCI_SYNC_CLIENT_TYPE_SIGNALER_NV = 0 - VK_SCI_SYNC_CLIENT_TYPE_WAITER_NV = 1 - VK_SCI_SYNC_CLIENT_TYPE_SIGNALER_WAITER_NV = 2 - VkSciSyncPrimitiveTypeNV* {.size: int32.sizeof.} = enum - VK_SCI_SYNC_PRIMITIVE_TYPE_FENCE_NV = 0 - VK_SCI_SYNC_PRIMITIVE_TYPE_SEMAPHORE_NV = 1 - VkProvokingVertexModeEXT* {.size: int32.sizeof.} = enum - VK_PROVOKING_VERTEX_MODE_FIRST_VERTEX_EXT = 0 - VK_PROVOKING_VERTEX_MODE_LAST_VERTEX_EXT = 1 - VkPipelineCacheValidationVersion* {.size: int32.sizeof.} = enum - VK_PIPELINE_CACHE_VALIDATION_VERSION_SAFETY_CRITICAL_ONE = 1 - VkAccelerationStructureMotionInstanceTypeNV* {.size: int32.sizeof.} = enum - VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_STATIC_NV = 0 - VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MATRIX_MOTION_NV = 1 - VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_SRT_MOTION_NV = 2 - VkGraphicsPipelineLibraryFlagBitsEXT* {.size: int32.sizeof.} = enum - VK_GRAPHICS_PIPELINE_LIBRARY_VERTEX_INPUT_INTERFACE_BIT_EXT = 1 - VK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXT = 2 - VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT = 4 - VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT = 8 - VkDeviceAddressBindingFlagBitsEXT* {.size: int32.sizeof.} = enum - VK_DEVICE_ADDRESS_BINDING_INTERNAL_OBJECT_BIT_EXT = 1 - VkDeviceAddressBindingTypeEXT* {.size: int32.sizeof.} = enum - VK_DEVICE_ADDRESS_BINDING_TYPE_BIND_EXT = 0 - VK_DEVICE_ADDRESS_BINDING_TYPE_UNBIND_EXT = 1 - VkFrameBoundaryFlagBitsEXT* {.size: int32.sizeof.} = enum - VK_FRAME_BOUNDARY_FRAME_END_BIT_EXT = 1 - VkPresentScalingFlagBitsEXT* {.size: int32.sizeof.} = enum - VK_PRESENT_SCALING_ONE_TO_ONE_BIT_EXT = 1 - VK_PRESENT_SCALING_ASPECT_RATIO_STRETCH_BIT_EXT = 2 - VK_PRESENT_SCALING_STRETCH_BIT_EXT = 4 - VkPresentGravityFlagBitsEXT* {.size: int32.sizeof.} = enum - VK_PRESENT_GRAVITY_MIN_BIT_EXT = 1 - VK_PRESENT_GRAVITY_MAX_BIT_EXT = 2 - VK_PRESENT_GRAVITY_CENTERED_BIT_EXT = 4 - VkPhysicalDeviceSchedulingControlsFlagBitsARM* {.size: int32.sizeof.} = enum - VK_PHYSICAL_DEVICE_SCHEDULING_CONTROLS_SHADER_CORE_COUNT_ARM = 1 - VkVideoCodecOperationFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_VIDEO_CODEC_OPERATION_NONE_KHR = 0 - VkVideoChromaSubsamplingFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_VIDEO_CHROMA_SUBSAMPLING_INVALID_KHR = 0 - VK_VIDEO_CHROMA_SUBSAMPLING_MONOCHROME_BIT_KHR = 1 - VK_VIDEO_CHROMA_SUBSAMPLING_420_BIT_KHR = 2 - VK_VIDEO_CHROMA_SUBSAMPLING_422_BIT_KHR = 4 - VK_VIDEO_CHROMA_SUBSAMPLING_444_BIT_KHR = 8 - VkVideoComponentBitDepthFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_VIDEO_COMPONENT_BIT_DEPTH_INVALID_KHR = 0 - VK_VIDEO_COMPONENT_BIT_DEPTH_8_BIT_KHR = 1 - VK_VIDEO_COMPONENT_BIT_DEPTH_10_BIT_KHR = 4 - VK_VIDEO_COMPONENT_BIT_DEPTH_12_BIT_KHR = 16 - VkVideoCapabilityFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_VIDEO_CAPABILITY_PROTECTED_CONTENT_BIT_KHR = 1 - VK_VIDEO_CAPABILITY_SEPARATE_REFERENCE_IMAGES_BIT_KHR = 2 - VkVideoSessionCreateFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_VIDEO_SESSION_CREATE_PROTECTED_CONTENT_BIT_KHR = 1 - VkVideoDecodeH264PictureLayoutFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_PROGRESSIVE_KHR = 0 - VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_INTERLACED_INTERLEAVED_LINES_BIT_KHR = 1 - VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_INTERLACED_SEPARATE_PLANES_BIT_KHR = 2 - VkVideoCodingControlFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_VIDEO_CODING_CONTROL_RESET_BIT_KHR = 1 - VkQueryResultStatusKHR* {.size: int32.sizeof.} = enum - VK_QUERY_RESULT_STATUS_ERROR_KHR = -1 - VK_QUERY_RESULT_STATUS_NOT_READY_KHR = 0 - VK_QUERY_RESULT_STATUS_COMPLETE_KHR = 1 - VkVideoDecodeUsageFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_VIDEO_DECODE_USAGE_DEFAULT_KHR = 0 - VK_VIDEO_DECODE_USAGE_TRANSCODING_BIT_KHR = 1 - VK_VIDEO_DECODE_USAGE_OFFLINE_BIT_KHR = 2 - VK_VIDEO_DECODE_USAGE_STREAMING_BIT_KHR = 4 - VkVideoDecodeCapabilityFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_COINCIDE_BIT_KHR = 1 - VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_DISTINCT_BIT_KHR = 2 - VkVideoEncodeUsageFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_VIDEO_ENCODE_USAGE_DEFAULT_KHR = 0 - VK_VIDEO_ENCODE_USAGE_TRANSCODING_BIT_KHR = 1 - VK_VIDEO_ENCODE_USAGE_STREAMING_BIT_KHR = 2 - VK_VIDEO_ENCODE_USAGE_RECORDING_BIT_KHR = 4 - VK_VIDEO_ENCODE_USAGE_CONFERENCING_BIT_KHR = 8 - VkVideoEncodeContentFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_VIDEO_ENCODE_CONTENT_DEFAULT_KHR = 0 - VK_VIDEO_ENCODE_CONTENT_CAMERA_BIT_KHR = 1 - VK_VIDEO_ENCODE_CONTENT_DESKTOP_BIT_KHR = 2 - VK_VIDEO_ENCODE_CONTENT_RENDERED_BIT_KHR = 4 - VkVideoEncodeTuningModeKHR* {.size: int32.sizeof.} = enum - VK_VIDEO_ENCODE_TUNING_MODE_DEFAULT_KHR = 0 - VK_VIDEO_ENCODE_TUNING_MODE_HIGH_QUALITY_KHR = 1 - VK_VIDEO_ENCODE_TUNING_MODE_LOW_LATENCY_KHR = 2 - VK_VIDEO_ENCODE_TUNING_MODE_ULTRA_LOW_LATENCY_KHR = 3 - VK_VIDEO_ENCODE_TUNING_MODE_LOSSLESS_KHR = 4 - VkVideoEncodeCapabilityFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_VIDEO_ENCODE_CAPABILITY_PRECEDING_EXTERNALLY_ENCODED_BYTES_BIT_KHR = 1 - VK_VIDEO_ENCODE_CAPABILITY_INSUFFICIENT_BITSTREAM_BUFFER_RANGE_DETECTION_BIT_KHR = 2 - VkVideoEncodeFeedbackFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_VIDEO_ENCODE_FEEDBACK_BITSTREAM_BUFFER_OFFSET_BIT_KHR = 1 - VK_VIDEO_ENCODE_FEEDBACK_BITSTREAM_BYTES_WRITTEN_BIT_KHR = 2 - VK_VIDEO_ENCODE_FEEDBACK_BITSTREAM_HAS_OVERRIDES_BIT_KHR = 4 - VkVideoEncodeRateControlModeFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_VIDEO_ENCODE_RATE_CONTROL_MODE_DEFAULT_KHR = 0 - VK_VIDEO_ENCODE_RATE_CONTROL_MODE_DISABLED_BIT_KHR = 1 - VK_VIDEO_ENCODE_RATE_CONTROL_MODE_CBR_BIT_KHR = 2 - VK_VIDEO_ENCODE_RATE_CONTROL_MODE_VBR_BIT_KHR = 4 - VkVideoEncodeH264CapabilityFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_VIDEO_ENCODE_H264_CAPABILITY_HRD_COMPLIANCE_BIT_KHR = 1 - VK_VIDEO_ENCODE_H264_CAPABILITY_PREDICTION_WEIGHT_TABLE_GENERATED_BIT_KHR = 2 - VK_VIDEO_ENCODE_H264_CAPABILITY_ROW_UNALIGNED_SLICE_BIT_KHR = 4 - VK_VIDEO_ENCODE_H264_CAPABILITY_DIFFERENT_SLICE_TYPE_BIT_KHR = 8 - VK_VIDEO_ENCODE_H264_CAPABILITY_B_FRAME_IN_L0_LIST_BIT_KHR = 16 - VK_VIDEO_ENCODE_H264_CAPABILITY_B_FRAME_IN_L1_LIST_BIT_KHR = 32 - VK_VIDEO_ENCODE_H264_CAPABILITY_PER_PICTURE_TYPE_MIN_MAX_QP_BIT_KHR = 64 - VK_VIDEO_ENCODE_H264_CAPABILITY_PER_SLICE_CONSTANT_QP_BIT_KHR = 128 - VK_VIDEO_ENCODE_H264_CAPABILITY_GENERATE_PREFIX_NALU_BIT_KHR = 256 - VkVideoEncodeH264StdFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_VIDEO_ENCODE_H264_STD_SEPARATE_COLOR_PLANE_FLAG_SET_BIT_KHR = 1 - VK_VIDEO_ENCODE_H264_STD_QPPRIME_Y_ZERO_TRANSFORM_BYPASS_FLAG_SET_BIT_KHR = 2 - VK_VIDEO_ENCODE_H264_STD_SCALING_MATRIX_PRESENT_FLAG_SET_BIT_KHR = 4 - VK_VIDEO_ENCODE_H264_STD_CHROMA_QP_INDEX_OFFSET_BIT_KHR = 8 - VK_VIDEO_ENCODE_H264_STD_SECOND_CHROMA_QP_INDEX_OFFSET_BIT_KHR = 16 - VK_VIDEO_ENCODE_H264_STD_PIC_INIT_QP_MINUS26_BIT_KHR = 32 - VK_VIDEO_ENCODE_H264_STD_WEIGHTED_PRED_FLAG_SET_BIT_KHR = 64 - VK_VIDEO_ENCODE_H264_STD_WEIGHTED_BIPRED_IDC_EXPLICIT_BIT_KHR = 128 - VK_VIDEO_ENCODE_H264_STD_WEIGHTED_BIPRED_IDC_IMPLICIT_BIT_KHR = 256 - VK_VIDEO_ENCODE_H264_STD_TRANSFORM_8X8_MODE_FLAG_SET_BIT_KHR = 512 - VK_VIDEO_ENCODE_H264_STD_DIRECT_SPATIAL_MV_PRED_FLAG_UNSET_BIT_KHR = 1024 - VK_VIDEO_ENCODE_H264_STD_ENTROPY_CODING_MODE_FLAG_UNSET_BIT_KHR = 2048 - VK_VIDEO_ENCODE_H264_STD_ENTROPY_CODING_MODE_FLAG_SET_BIT_KHR = 4096 - VK_VIDEO_ENCODE_H264_STD_DIRECT_8X8_INFERENCE_FLAG_UNSET_BIT_KHR = 8192 - VK_VIDEO_ENCODE_H264_STD_CONSTRAINED_INTRA_PRED_FLAG_SET_BIT_KHR = 16384 - VK_VIDEO_ENCODE_H264_STD_DEBLOCKING_FILTER_DISABLED_BIT_KHR = 32768 - VK_VIDEO_ENCODE_H264_STD_DEBLOCKING_FILTER_ENABLED_BIT_KHR = 65536 - VK_VIDEO_ENCODE_H264_STD_DEBLOCKING_FILTER_PARTIAL_BIT_KHR = 131072 - VK_VIDEO_ENCODE_H264_STD_SLICE_QP_DELTA_BIT_KHR = 524288 - VK_VIDEO_ENCODE_H264_STD_DIFFERENT_SLICE_QP_DELTA_BIT_KHR = 1048576 - VkVideoEncodeH264RateControlFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_VIDEO_ENCODE_H264_RATE_CONTROL_ATTEMPT_HRD_COMPLIANCE_BIT_KHR = 1 - VK_VIDEO_ENCODE_H264_RATE_CONTROL_REGULAR_GOP_BIT_KHR = 2 - VK_VIDEO_ENCODE_H264_RATE_CONTROL_REFERENCE_PATTERN_FLAT_BIT_KHR = 4 - VK_VIDEO_ENCODE_H264_RATE_CONTROL_REFERENCE_PATTERN_DYADIC_BIT_KHR = 8 - VK_VIDEO_ENCODE_H264_RATE_CONTROL_TEMPORAL_LAYER_PATTERN_DYADIC_BIT_KHR = 16 - VkHostImageCopyFlagBitsEXT* {.size: int32.sizeof.} = enum - VK_HOST_IMAGE_COPY_MEMCPY_EXT = 1 - VkImageConstraintsInfoFlagBitsFUCHSIA* {.size: int32.sizeof.} = enum - VK_IMAGE_CONSTRAINTS_INFO_CPU_READ_RARELY_FUCHSIA = 1 - VK_IMAGE_CONSTRAINTS_INFO_CPU_READ_OFTEN_FUCHSIA = 2 - VK_IMAGE_CONSTRAINTS_INFO_CPU_WRITE_RARELY_FUCHSIA = 4 - VK_IMAGE_CONSTRAINTS_INFO_CPU_WRITE_OFTEN_FUCHSIA = 8 - VK_IMAGE_CONSTRAINTS_INFO_PROTECTED_OPTIONAL_FUCHSIA = 16 - VkFormatFeatureFlagBits2* {.size: int32.sizeof.} = enum - VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_BIT = 1 - VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT = 2 - VK_FORMAT_FEATURE_2_STORAGE_IMAGE_ATOMIC_BIT = 4 - VK_FORMAT_FEATURE_2_UNIFORM_TEXEL_BUFFER_BIT = 8 - VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_BIT = 16 - VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_ATOMIC_BIT = 32 - VK_FORMAT_FEATURE_2_VERTEX_BUFFER_BIT = 64 - VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BIT = 128 - VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BLEND_BIT = 256 - VK_FORMAT_FEATURE_2_DEPTH_STENCIL_ATTACHMENT_BIT = 512 - VK_FORMAT_FEATURE_2_BLIT_SRC_BIT = 1024 - VK_FORMAT_FEATURE_2_BLIT_DST_BIT = 2048 - VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_LINEAR_BIT = 4096 - VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_CUBIC_BIT = 8192 - VK_FORMAT_FEATURE_2_TRANSFER_SRC_BIT = 16384 - VK_FORMAT_FEATURE_2_TRANSFER_DST_BIT = 32768 - VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_MINMAX_BIT = 65536 - VK_FORMAT_FEATURE_2_MIDPOINT_CHROMA_SAMPLES_BIT = 131072 - VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT = 262144 - VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT = 524288 - VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT = 1048576 - VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT = 2097152 - VK_FORMAT_FEATURE_2_DISJOINT_BIT = 4194304 - VK_FORMAT_FEATURE_2_COSITED_CHROMA_SAMPLES_BIT = 8388608 - VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT = 2147483648 - VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT = 4294967296 - VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_DEPTH_COMPARISON_BIT = 8589934592 - VkRenderingFlagBits* {.size: int32.sizeof.} = enum - VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT = 1 - VK_RENDERING_SUSPENDING_BIT = 2 - VK_RENDERING_RESUMING_BIT = 4 - VkVideoEncodeH265CapabilityFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_VIDEO_ENCODE_H265_CAPABILITY_HRD_COMPLIANCE_BIT_KHR = 1 - VK_VIDEO_ENCODE_H265_CAPABILITY_PREDICTION_WEIGHT_TABLE_GENERATED_BIT_KHR = 2 - VK_VIDEO_ENCODE_H265_CAPABILITY_ROW_UNALIGNED_SLICE_SEGMENT_BIT_KHR = 4 - VK_VIDEO_ENCODE_H265_CAPABILITY_DIFFERENT_SLICE_SEGMENT_TYPE_BIT_KHR = 8 - VK_VIDEO_ENCODE_H265_CAPABILITY_B_FRAME_IN_L0_LIST_BIT_KHR = 16 - VK_VIDEO_ENCODE_H265_CAPABILITY_B_FRAME_IN_L1_LIST_BIT_KHR = 32 - VK_VIDEO_ENCODE_H265_CAPABILITY_PER_PICTURE_TYPE_MIN_MAX_QP_BIT_KHR = 64 - VK_VIDEO_ENCODE_H265_CAPABILITY_PER_SLICE_SEGMENT_CONSTANT_QP_BIT_KHR = 128 - VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_TILES_PER_SLICE_SEGMENT_BIT_KHR = 256 - VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_SLICE_SEGMENTS_PER_TILE_BIT_KHR = 512 - VkVideoEncodeH265StdFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_VIDEO_ENCODE_H265_STD_SEPARATE_COLOR_PLANE_FLAG_SET_BIT_KHR = 1 - VK_VIDEO_ENCODE_H265_STD_SAMPLE_ADAPTIVE_OFFSET_ENABLED_FLAG_SET_BIT_KHR = 2 - VK_VIDEO_ENCODE_H265_STD_SCALING_LIST_DATA_PRESENT_FLAG_SET_BIT_KHR = 4 - VK_VIDEO_ENCODE_H265_STD_PCM_ENABLED_FLAG_SET_BIT_KHR = 8 - VK_VIDEO_ENCODE_H265_STD_SPS_TEMPORAL_MVP_ENABLED_FLAG_SET_BIT_KHR = 16 - VK_VIDEO_ENCODE_H265_STD_INIT_QP_MINUS26_BIT_KHR = 32 - VK_VIDEO_ENCODE_H265_STD_WEIGHTED_PRED_FLAG_SET_BIT_KHR = 64 - VK_VIDEO_ENCODE_H265_STD_WEIGHTED_BIPRED_FLAG_SET_BIT_KHR = 128 - VK_VIDEO_ENCODE_H265_STD_LOG2_PARALLEL_MERGE_LEVEL_MINUS2_BIT_KHR = 256 - VK_VIDEO_ENCODE_H265_STD_SIGN_DATA_HIDING_ENABLED_FLAG_SET_BIT_KHR = 512 - VK_VIDEO_ENCODE_H265_STD_TRANSFORM_SKIP_ENABLED_FLAG_SET_BIT_KHR = 1024 - VK_VIDEO_ENCODE_H265_STD_TRANSFORM_SKIP_ENABLED_FLAG_UNSET_BIT_KHR = 2048 - VK_VIDEO_ENCODE_H265_STD_PPS_SLICE_CHROMA_QP_OFFSETS_PRESENT_FLAG_SET_BIT_KHR = 4096 - VK_VIDEO_ENCODE_H265_STD_TRANSQUANT_BYPASS_ENABLED_FLAG_SET_BIT_KHR = 8192 - VK_VIDEO_ENCODE_H265_STD_CONSTRAINED_INTRA_PRED_FLAG_SET_BIT_KHR = 16384 - VK_VIDEO_ENCODE_H265_STD_ENTROPY_CODING_SYNC_ENABLED_FLAG_SET_BIT_KHR = 32768 - VK_VIDEO_ENCODE_H265_STD_DEBLOCKING_FILTER_OVERRIDE_ENABLED_FLAG_SET_BIT_KHR = 65536 - VK_VIDEO_ENCODE_H265_STD_DEPENDENT_SLICE_SEGMENTS_ENABLED_FLAG_SET_BIT_KHR = 131072 - VK_VIDEO_ENCODE_H265_STD_DEPENDENT_SLICE_SEGMENT_FLAG_SET_BIT_KHR = 262144 - VK_VIDEO_ENCODE_H265_STD_SLICE_QP_DELTA_BIT_KHR = 524288 - VK_VIDEO_ENCODE_H265_STD_DIFFERENT_SLICE_QP_DELTA_BIT_KHR = 1048576 - VkVideoEncodeH265RateControlFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_VIDEO_ENCODE_H265_RATE_CONTROL_ATTEMPT_HRD_COMPLIANCE_BIT_KHR = 1 - VK_VIDEO_ENCODE_H265_RATE_CONTROL_REGULAR_GOP_BIT_KHR = 2 - VK_VIDEO_ENCODE_H265_RATE_CONTROL_REFERENCE_PATTERN_FLAT_BIT_KHR = 4 - VK_VIDEO_ENCODE_H265_RATE_CONTROL_REFERENCE_PATTERN_DYADIC_BIT_KHR = 8 - VK_VIDEO_ENCODE_H265_RATE_CONTROL_TEMPORAL_SUB_LAYER_PATTERN_DYADIC_BIT_KHR = 16 - VkVideoEncodeH265CtbSizeFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_VIDEO_ENCODE_H265_CTB_SIZE_16_BIT_KHR = 1 - VK_VIDEO_ENCODE_H265_CTB_SIZE_32_BIT_KHR = 2 - VK_VIDEO_ENCODE_H265_CTB_SIZE_64_BIT_KHR = 4 - VkVideoEncodeH265TransformBlockSizeFlagBitsKHR* {.size: int32.sizeof.} = enum - VK_VIDEO_ENCODE_H265_TRANSFORM_BLOCK_SIZE_4_BIT_KHR = 1 - VK_VIDEO_ENCODE_H265_TRANSFORM_BLOCK_SIZE_8_BIT_KHR = 2 - VK_VIDEO_ENCODE_H265_TRANSFORM_BLOCK_SIZE_16_BIT_KHR = 4 - VK_VIDEO_ENCODE_H265_TRANSFORM_BLOCK_SIZE_32_BIT_KHR = 8 - VkExportMetalObjectTypeFlagBitsEXT* {.size: int32.sizeof.} = enum - VK_EXPORT_METAL_OBJECT_TYPE_METAL_DEVICE_BIT_EXT = 1 - VK_EXPORT_METAL_OBJECT_TYPE_METAL_COMMAND_QUEUE_BIT_EXT = 2 - VK_EXPORT_METAL_OBJECT_TYPE_METAL_BUFFER_BIT_EXT = 4 - VK_EXPORT_METAL_OBJECT_TYPE_METAL_TEXTURE_BIT_EXT = 8 - VK_EXPORT_METAL_OBJECT_TYPE_METAL_IOSURFACE_BIT_EXT = 16 - VK_EXPORT_METAL_OBJECT_TYPE_METAL_SHARED_EVENT_BIT_EXT = 32 - VkImageCompressionFlagBitsEXT* {.size: int32.sizeof.} = enum - VK_IMAGE_COMPRESSION_DEFAULT_EXT = 0 - VK_IMAGE_COMPRESSION_FIXED_RATE_DEFAULT_EXT = 1 - VK_IMAGE_COMPRESSION_FIXED_RATE_EXPLICIT_EXT = 2 - VK_IMAGE_COMPRESSION_DISABLED_EXT = 4 - VkImageCompressionFixedRateFlagBitsEXT* {.size: int32.sizeof.} = enum - VK_IMAGE_COMPRESSION_FIXED_RATE_NONE_EXT = 0 - VK_IMAGE_COMPRESSION_FIXED_RATE_1BPC_BIT_EXT = 1 - VK_IMAGE_COMPRESSION_FIXED_RATE_2BPC_BIT_EXT = 2 - VK_IMAGE_COMPRESSION_FIXED_RATE_3BPC_BIT_EXT = 4 - VK_IMAGE_COMPRESSION_FIXED_RATE_4BPC_BIT_EXT = 8 - VK_IMAGE_COMPRESSION_FIXED_RATE_5BPC_BIT_EXT = 16 - VK_IMAGE_COMPRESSION_FIXED_RATE_6BPC_BIT_EXT = 32 - VK_IMAGE_COMPRESSION_FIXED_RATE_7BPC_BIT_EXT = 64 - VK_IMAGE_COMPRESSION_FIXED_RATE_8BPC_BIT_EXT = 128 - VK_IMAGE_COMPRESSION_FIXED_RATE_9BPC_BIT_EXT = 256 - VK_IMAGE_COMPRESSION_FIXED_RATE_10BPC_BIT_EXT = 512 - VK_IMAGE_COMPRESSION_FIXED_RATE_11BPC_BIT_EXT = 1024 - VK_IMAGE_COMPRESSION_FIXED_RATE_12BPC_BIT_EXT = 2048 - VK_IMAGE_COMPRESSION_FIXED_RATE_13BPC_BIT_EXT = 4096 - VK_IMAGE_COMPRESSION_FIXED_RATE_14BPC_BIT_EXT = 8192 - VK_IMAGE_COMPRESSION_FIXED_RATE_15BPC_BIT_EXT = 16384 - VK_IMAGE_COMPRESSION_FIXED_RATE_16BPC_BIT_EXT = 32768 - VK_IMAGE_COMPRESSION_FIXED_RATE_17BPC_BIT_EXT = 65536 - VK_IMAGE_COMPRESSION_FIXED_RATE_18BPC_BIT_EXT = 131072 - VK_IMAGE_COMPRESSION_FIXED_RATE_19BPC_BIT_EXT = 262144 - VK_IMAGE_COMPRESSION_FIXED_RATE_20BPC_BIT_EXT = 524288 - VK_IMAGE_COMPRESSION_FIXED_RATE_21BPC_BIT_EXT = 1048576 - VK_IMAGE_COMPRESSION_FIXED_RATE_22BPC_BIT_EXT = 2097152 - VK_IMAGE_COMPRESSION_FIXED_RATE_23BPC_BIT_EXT = 4194304 - VK_IMAGE_COMPRESSION_FIXED_RATE_24BPC_BIT_EXT = 8388608 - VkPipelineRobustnessBufferBehaviorEXT* {.size: int32.sizeof.} = enum - VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DEVICE_DEFAULT_EXT = 0 - VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DISABLED_EXT = 1 - VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_EXT = 2 - VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2_EXT = 3 - VkPipelineRobustnessImageBehaviorEXT* {.size: int32.sizeof.} = enum - VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_DEVICE_DEFAULT_EXT = 0 - VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_DISABLED_EXT = 1 - VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS_EXT = 2 - VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS_2_EXT = 3 - VkOpticalFlowGridSizeFlagBitsNV* {.size: int32.sizeof.} = enum - VK_OPTICAL_FLOW_GRID_SIZE_UNKNOWN_NV = 0 - VK_OPTICAL_FLOW_GRID_SIZE_1X1_BIT_NV = 1 - VK_OPTICAL_FLOW_GRID_SIZE_2X2_BIT_NV = 2 - VK_OPTICAL_FLOW_GRID_SIZE_4X4_BIT_NV = 4 - VK_OPTICAL_FLOW_GRID_SIZE_8X8_BIT_NV = 8 - VkOpticalFlowUsageFlagBitsNV* {.size: int32.sizeof.} = enum - VK_OPTICAL_FLOW_USAGE_UNKNOWN_NV = 0 - VK_OPTICAL_FLOW_USAGE_INPUT_BIT_NV = 1 - VK_OPTICAL_FLOW_USAGE_OUTPUT_BIT_NV = 2 - VK_OPTICAL_FLOW_USAGE_HINT_BIT_NV = 4 - VK_OPTICAL_FLOW_USAGE_COST_BIT_NV = 8 - VK_OPTICAL_FLOW_USAGE_GLOBAL_FLOW_BIT_NV = 16 - VkOpticalFlowPerformanceLevelNV* {.size: int32.sizeof.} = enum - VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_UNKNOWN_NV = 0 - VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_SLOW_NV = 1 - VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_MEDIUM_NV = 2 - VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_FAST_NV = 3 - VkOpticalFlowSessionBindingPointNV* {.size: int32.sizeof.} = enum - VK_OPTICAL_FLOW_SESSION_BINDING_POINT_UNKNOWN_NV = 0 - VK_OPTICAL_FLOW_SESSION_BINDING_POINT_INPUT_NV = 1 - VK_OPTICAL_FLOW_SESSION_BINDING_POINT_REFERENCE_NV = 2 - VK_OPTICAL_FLOW_SESSION_BINDING_POINT_HINT_NV = 3 - VK_OPTICAL_FLOW_SESSION_BINDING_POINT_FLOW_VECTOR_NV = 4 - VK_OPTICAL_FLOW_SESSION_BINDING_POINT_BACKWARD_FLOW_VECTOR_NV = 5 - VK_OPTICAL_FLOW_SESSION_BINDING_POINT_COST_NV = 6 - VK_OPTICAL_FLOW_SESSION_BINDING_POINT_BACKWARD_COST_NV = 7 - VK_OPTICAL_FLOW_SESSION_BINDING_POINT_GLOBAL_FLOW_NV = 8 - VkOpticalFlowSessionCreateFlagBitsNV* {.size: int32.sizeof.} = enum - VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_HINT_BIT_NV = 1 - VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_COST_BIT_NV = 2 - VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_GLOBAL_FLOW_BIT_NV = 4 - VK_OPTICAL_FLOW_SESSION_CREATE_ALLOW_REGIONS_BIT_NV = 8 - VK_OPTICAL_FLOW_SESSION_CREATE_BOTH_DIRECTIONS_BIT_NV = 16 - VkOpticalFlowExecuteFlagBitsNV* {.size: int32.sizeof.} = enum - VK_OPTICAL_FLOW_EXECUTE_DISABLE_TEMPORAL_HINTS_BIT_NV = 1 - VkMicromapTypeEXT* {.size: int32.sizeof.} = enum - VK_MICROMAP_TYPE_OPACITY_MICROMAP_EXT = 0 - VkBuildMicromapFlagBitsEXT* {.size: int32.sizeof.} = enum - VK_BUILD_MICROMAP_PREFER_FAST_TRACE_BIT_EXT = 1 - VK_BUILD_MICROMAP_PREFER_FAST_BUILD_BIT_EXT = 2 - VK_BUILD_MICROMAP_ALLOW_COMPACTION_BIT_EXT = 4 - VkMicromapCreateFlagBitsEXT* {.size: int32.sizeof.} = enum - VK_MICROMAP_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT = 1 - VkCopyMicromapModeEXT* {.size: int32.sizeof.} = enum - VK_COPY_MICROMAP_MODE_CLONE_EXT = 0 - VK_COPY_MICROMAP_MODE_SERIALIZE_EXT = 1 - VK_COPY_MICROMAP_MODE_DESERIALIZE_EXT = 2 - VK_COPY_MICROMAP_MODE_COMPACT_EXT = 3 - VkBuildMicromapModeEXT* {.size: int32.sizeof.} = enum - VK_BUILD_MICROMAP_MODE_BUILD_EXT = 0 - VkOpacityMicromapFormatEXT* {.size: int32.sizeof.} = enum - VK_OPACITY_MICROMAP_FORMAT_2_STATE_EXT = 1 - VK_OPACITY_MICROMAP_FORMAT_4_STATE_EXT = 2 - VkOpacityMicromapSpecialIndexEXT* {.size: int32.sizeof.} = enum - VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_OPAQUE_EXT = -4 - VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_TRANSPARENT_EXT = -3 - VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_OPAQUE_EXT = -2 - VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_TRANSPARENT_EXT = -1 - VkDepthBiasRepresentationEXT* {.size: int32.sizeof.} = enum - VK_DEPTH_BIAS_REPRESENTATION_LEAST_REPRESENTABLE_VALUE_FORMAT_EXT = 0 - VK_DEPTH_BIAS_REPRESENTATION_LEAST_REPRESENTABLE_VALUE_FORCE_UNORM_EXT = 1 - VK_DEPTH_BIAS_REPRESENTATION_FLOAT_EXT = 2 - VkDeviceFaultAddressTypeEXT* {.size: int32.sizeof.} = enum - VK_DEVICE_FAULT_ADDRESS_TYPE_NONE_EXT = 0 - VK_DEVICE_FAULT_ADDRESS_TYPE_READ_INVALID_EXT = 1 - VK_DEVICE_FAULT_ADDRESS_TYPE_WRITE_INVALID_EXT = 2 - VK_DEVICE_FAULT_ADDRESS_TYPE_EXECUTE_INVALID_EXT = 3 - VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_UNKNOWN_EXT = 4 - VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_INVALID_EXT = 5 - VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_FAULT_EXT = 6 - VkDeviceFaultVendorBinaryHeaderVersionEXT* {.size: int32.sizeof.} = enum - VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VER_ONE_EXT = 1 - VkDisplacementMicromapFormatNV* {.size: int32.sizeof.} = enum - VK_DISPLACEMENT_MICROMAP_FORMAT_64_TRIANGLES_64_BYTES_NV = 1 - VK_DISPLACEMENT_MICROMAP_FORMAT_256_TRIANGLES_128_BYTES_NV = 2 - VK_DISPLACEMENT_MICROMAP_FORMAT_1024_TRIANGLES_128_BYTES_NV = 3 - VkShaderCreateFlagBitsEXT* {.size: int32.sizeof.} = enum - VK_SHADER_CREATE_LINK_STAGE_BIT_EXT = 1 - VkShaderCodeTypeEXT* {.size: int32.sizeof.} = enum - VK_SHADER_CODE_TYPE_BINARY_EXT = 0 - VK_SHADER_CODE_TYPE_SPIRV_EXT = 1 - VkScopeKHR* {.size: int32.sizeof.} = enum - VK_SCOPE_DEVICE_KHR = 1 - VK_SCOPE_WORKGROUP_KHR = 2 - VK_SCOPE_SUBGROUP_KHR = 3 - VK_SCOPE_QUEUE_FAMILY_KHR = 5 - VkComponentTypeKHR* {.size: int32.sizeof.} = enum - VK_COMPONENT_TYPE_FLOAT16_KHR = 0 - VK_COMPONENT_TYPE_FLOAT32_KHR = 1 - VK_COMPONENT_TYPE_FLOAT64_KHR = 2 - VK_COMPONENT_TYPE_SINT8_KHR = 3 - VK_COMPONENT_TYPE_SINT16_KHR = 4 - VK_COMPONENT_TYPE_SINT32_KHR = 5 - VK_COMPONENT_TYPE_SINT64_KHR = 6 - VK_COMPONENT_TYPE_UINT8_KHR = 7 - VK_COMPONENT_TYPE_UINT16_KHR = 8 - VK_COMPONENT_TYPE_UINT32_KHR = 9 - VK_COMPONENT_TYPE_UINT64_KHR = 10 - VkCubicFilterWeightsQCOM* {.size: int32.sizeof.} = enum - VK_CUBIC_FILTER_WEIGHTS_CATMULL_ROM_QCOM = 0 - VK_CUBIC_FILTER_WEIGHTS_ZERO_TANGENT_CARDINAL_QCOM = 1 - VK_CUBIC_FILTER_WEIGHTS_B_SPLINE_QCOM = 2 - VK_CUBIC_FILTER_WEIGHTS_MITCHELL_NETRAVALI_QCOM = 3 - VkBlockMatchWindowCompareModeQCOM* {.size: int32.sizeof.} = enum - VK_BLOCK_MATCH_WINDOW_COMPARE_MODE_MIN_QCOM = 0 - VK_BLOCK_MATCH_WINDOW_COMPARE_MODE_MAX_QCOM = 1 - VkLayeredDriverUnderlyingApiMSFT* {.size: int32.sizeof.} = enum - VK_LAYERED_DRIVER_UNDERLYING_API_NONE_MSFT = 0 - VK_LAYERED_DRIVER_UNDERLYING_API_D3D12_MSFT = 1 - VkLatencyMarkerNV* {.size: int32.sizeof.} = enum - VK_LATENCY_MARKER_SIMULATION_START_NV = 0 - VK_LATENCY_MARKER_SIMULATION_END_NV = 1 - VK_LATENCY_MARKER_RENDERSUBMIT_START_NV = 2 - VK_LATENCY_MARKER_RENDERSUBMIT_END_NV = 3 - VK_LATENCY_MARKER_PRESENT_START_NV = 4 - VK_LATENCY_MARKER_PRESENT_END_NV = 5 - VK_LATENCY_MARKER_INPUT_SAMPLE_NV = 6 - VK_LATENCY_MARKER_TRIGGER_FLASH_NV = 7 - VK_LATENCY_MARKER_OUT_OF_BAND_RENDERSUBMIT_START_NV = 8 - VK_LATENCY_MARKER_OUT_OF_BAND_RENDERSUBMIT_END_NV = 9 - VK_LATENCY_MARKER_OUT_OF_BAND_PRESENT_START_NV = 10 - VK_LATENCY_MARKER_OUT_OF_BAND_PRESENT_END_NV = 11 - VkOutOfBandQueueTypeNV* {.size: int32.sizeof.} = enum - VK_OUT_OF_BAND_QUEUE_TYPE_RENDER_NV = 0 - VK_OUT_OF_BAND_QUEUE_TYPE_PRESENT_NV = 1 + VkImageLayout* {.size: sizeof(int32).} = enum + Undefined = 0 + General = 1 + ColorAttachmentOptimal = 2 + DepthStencilAttachmentOptimal = 3 + DepthStencilReadOnlyOptimal = 4 + ShaderReadOnlyOptimal = 5 + TransferSrcOptimal = 6 + TransferDstOptimal = 7 + Preinitialized = 8 + VkAttachmentLoadOp* {.size: sizeof(int32).} = enum + Load = 0 + Clear = 1 + DontCare = 2 + VkAttachmentStoreOp* {.size: sizeof(int32).} = enum + Store = 0 + DontCare = 1 + VkImageType* {.size: sizeof(int32).} = enum + N1d = 0 + N2d = 1 + N3d = 2 + VkImageTiling* {.size: sizeof(int32).} = enum + Optimal = 0 + Linear = 1 + VkImageViewType* {.size: sizeof(int32).} = enum + N1d = 0 + N2d = 1 + N3d = 2 + Cube = 3 + N1dArray = 4 + N2dArray = 5 + CubeArray = 6 + VkCommandBufferLevel* {.size: sizeof(int32).} = enum + Primary = 0 + Secondary = 1 + VkComponentSwizzle* {.size: sizeof(int32).} = enum + Identity = 0 + Zero = 1 + One = 2 + R = 3 + G = 4 + B = 5 + A = 6 + VkDescriptorType* {.size: sizeof(int32).} = enum + Sampler = 0 + CombinedImageSampler = 1 + SampledImage = 2 + StorageImage = 3 + UniformTexelBuffer = 4 + StorageTexelBuffer = 5 + UniformBuffer = 6 + StorageBuffer = 7 + UniformBufferDynamic = 8 + StorageBufferDynamic = 9 + InputAttachment = 10 + VkQueryType* {.size: sizeof(int32).} = enum + Occlusion = 0 + PipelineStatistics = 1 + Timestamp = 2 + VkBorderColor* {.size: sizeof(int32).} = enum + FloatTransparentBlack = 0 + IntTransparentBlack = 1 + FloatOpaqueBlack = 2 + IntOpaqueBlack = 3 + FloatOpaqueWhite = 4 + IntOpaqueWhite = 5 + VkPipelineBindPoint* {.size: sizeof(int32).} = enum + Graphics = 0 + Compute = 1 + VkPipelineCacheHeaderVersion* {.size: sizeof(int32).} = enum + One = 1 + VkPrimitiveTopology* {.size: sizeof(int32).} = enum + PointList = 0 + LineList = 1 + LineStrip = 2 + TriangleList = 3 + TriangleStrip = 4 + TriangleFan = 5 + LineListWithAdjacency = 6 + LineStripWithAdjacency = 7 + TriangleListWithAdjacency = 8 + TriangleStripWithAdjacency = 9 + PatchList = 10 + VkSharingMode* {.size: sizeof(int32).} = enum + Exclusive = 0 + Concurrent = 1 + VkIndexType* {.size: sizeof(int32).} = enum + Uint16 = 0 + Uint32 = 1 + VkFilter* {.size: sizeof(int32).} = enum + Nearest = 0 + Linear = 1 + VkSamplerMipmapMode* {.size: sizeof(int32).} = enum + Nearest = 0 + Linear = 1 + VkSamplerAddressMode* {.size: sizeof(int32).} = enum + Repeat = 0 + MirroredRepeat = 1 + ClampToEdge = 2 + ClampToBorder = 3 + VkCompareOp* {.size: sizeof(int32).} = enum + Never = 0 + Less = 1 + Equal = 2 + LessOrEqual = 3 + Greater = 4 + NotEqual = 5 + GreaterOrEqual = 6 + Always = 7 + VkPolygonMode* {.size: sizeof(int32).} = enum + Fill = 0 + Line = 1 + Point = 2 + VkFrontFace* {.size: sizeof(int32).} = enum + CounterClockwise = 0 + Clockwise = 1 + VkBlendFactor* {.size: sizeof(int32).} = enum + Zero = 0 + One = 1 + SrcColor = 2 + OneMinusSrcColor = 3 + DstColor = 4 + OneMinusDstColor = 5 + SrcAlpha = 6 + OneMinusSrcAlpha = 7 + DstAlpha = 8 + OneMinusDstAlpha = 9 + ConstantColor = 10 + OneMinusConstantColor = 11 + ConstantAlpha = 12 + OneMinusConstantAlpha = 13 + SrcAlphaSaturate = 14 + Src1Color = 15 + OneMinusSrc1Color = 16 + Src1Alpha = 17 + OneMinusSrc1Alpha = 18 + VkBlendOp* {.size: sizeof(int32).} = enum + Add = 0 + Subtract = 1 + ReverseSubtract = 2 + Min = 3 + Max = 4 + VkStencilOp* {.size: sizeof(int32).} = enum + Keep = 0 + Zero = 1 + Replace = 2 + IncrementAndClamp = 3 + DecrementAndClamp = 4 + Invert = 5 + IncrementAndWrap = 6 + DecrementAndWrap = 7 + VkLogicOp* {.size: sizeof(int32).} = enum + Clear = 0 + And = 1 + AndReverse = 2 + Copy = 3 + AndInverted = 4 + NoOp = 5 + Xor = 6 + Or = 7 + Nor = 8 + Equivalent = 9 + Invert = 10 + OrReverse = 11 + CopyInverted = 12 + OrInverted = 13 + Nand = 14 + Set = 15 + VkInternalAllocationType* {.size: sizeof(int32).} = enum + Executable = 0 + VkSystemAllocationScope* {.size: sizeof(int32).} = enum + Command = 0 + Object = 1 + Cache = 2 + Device = 3 + Instance = 4 + VkPhysicalDeviceType* {.size: sizeof(int32).} = enum + Other = 0 + IntegratedGpu = 1 + DiscreteGpu = 2 + VirtualGpu = 3 + Cpu = 4 + VkVertexInputRate* {.size: sizeof(int32).} = enum + Vertex = 0 + Instance = 1 + VkFormat* {.size: sizeof(int32).} = enum + Undefined = 0 + R4g4UnormPack8 = 1 + R4g4b4a4UnormPack16 = 2 + B4g4r4a4UnormPack16 = 3 + R5g6b5UnormPack16 = 4 + B5g6r5UnormPack16 = 5 + R5g5b5a1UnormPack16 = 6 + B5g5r5a1UnormPack16 = 7 + A1r5g5b5UnormPack16 = 8 + R8Unorm = 9 + R8Snorm = 10 + R8Uscaled = 11 + R8Sscaled = 12 + R8Uint = 13 + R8Sint = 14 + R8Srgb = 15 + R8g8Unorm = 16 + R8g8Snorm = 17 + R8g8Uscaled = 18 + R8g8Sscaled = 19 + R8g8Uint = 20 + R8g8Sint = 21 + R8g8Srgb = 22 + R8g8b8Unorm = 23 + R8g8b8Snorm = 24 + R8g8b8Uscaled = 25 + R8g8b8Sscaled = 26 + R8g8b8Uint = 27 + R8g8b8Sint = 28 + R8g8b8Srgb = 29 + B8g8r8Unorm = 30 + B8g8r8Snorm = 31 + B8g8r8Uscaled = 32 + B8g8r8Sscaled = 33 + B8g8r8Uint = 34 + B8g8r8Sint = 35 + B8g8r8Srgb = 36 + R8g8b8a8Unorm = 37 + R8g8b8a8Snorm = 38 + R8g8b8a8Uscaled = 39 + R8g8b8a8Sscaled = 40 + R8g8b8a8Uint = 41 + R8g8b8a8Sint = 42 + R8g8b8a8Srgb = 43 + B8g8r8a8Unorm = 44 + B8g8r8a8Snorm = 45 + B8g8r8a8Uscaled = 46 + B8g8r8a8Sscaled = 47 + B8g8r8a8Uint = 48 + B8g8r8a8Sint = 49 + B8g8r8a8Srgb = 50 + A8b8g8r8UnormPack32 = 51 + A8b8g8r8SnormPack32 = 52 + A8b8g8r8UscaledPack32 = 53 + A8b8g8r8SscaledPack32 = 54 + A8b8g8r8UintPack32 = 55 + A8b8g8r8SintPack32 = 56 + A8b8g8r8SrgbPack32 = 57 + A2r10g10b10UnormPack32 = 58 + A2r10g10b10SnormPack32 = 59 + A2r10g10b10UscaledPack32 = 60 + A2r10g10b10SscaledPack32 = 61 + A2r10g10b10UintPack32 = 62 + A2r10g10b10SintPack32 = 63 + A2b10g10r10UnormPack32 = 64 + A2b10g10r10SnormPack32 = 65 + A2b10g10r10UscaledPack32 = 66 + A2b10g10r10SscaledPack32 = 67 + A2b10g10r10UintPack32 = 68 + A2b10g10r10SintPack32 = 69 + R16Unorm = 70 + R16Snorm = 71 + R16Uscaled = 72 + R16Sscaled = 73 + R16Uint = 74 + R16Sint = 75 + R16Sfloat = 76 + R16g16Unorm = 77 + R16g16Snorm = 78 + R16g16Uscaled = 79 + R16g16Sscaled = 80 + R16g16Uint = 81 + R16g16Sint = 82 + R16g16Sfloat = 83 + R16g16b16Unorm = 84 + R16g16b16Snorm = 85 + R16g16b16Uscaled = 86 + R16g16b16Sscaled = 87 + R16g16b16Uint = 88 + R16g16b16Sint = 89 + R16g16b16Sfloat = 90 + R16g16b16a16Unorm = 91 + R16g16b16a16Snorm = 92 + R16g16b16a16Uscaled = 93 + R16g16b16a16Sscaled = 94 + R16g16b16a16Uint = 95 + R16g16b16a16Sint = 96 + R16g16b16a16Sfloat = 97 + R32Uint = 98 + R32Sint = 99 + R32Sfloat = 100 + R32g32Uint = 101 + R32g32Sint = 102 + R32g32Sfloat = 103 + R32g32b32Uint = 104 + R32g32b32Sint = 105 + R32g32b32Sfloat = 106 + R32g32b32a32Uint = 107 + R32g32b32a32Sint = 108 + R32g32b32a32Sfloat = 109 + R64Uint = 110 + R64Sint = 111 + R64Sfloat = 112 + R64g64Uint = 113 + R64g64Sint = 114 + R64g64Sfloat = 115 + R64g64b64Uint = 116 + R64g64b64Sint = 117 + R64g64b64Sfloat = 118 + R64g64b64a64Uint = 119 + R64g64b64a64Sint = 120 + R64g64b64a64Sfloat = 121 + B10g11r11UfloatPack32 = 122 + E5b9g9r9UfloatPack32 = 123 + D16Unorm = 124 + X8D24UnormPack32 = 125 + D32Sfloat = 126 + S8Uint = 127 + D16UnormS8Uint = 128 + D24UnormS8Uint = 129 + D32SfloatS8Uint = 130 + Bc1RgbUnormBlock = 131 + Bc1RgbSrgbBlock = 132 + Bc1RgbaUnormBlock = 133 + Bc1RgbaSrgbBlock = 134 + Bc2UnormBlock = 135 + Bc2SrgbBlock = 136 + Bc3UnormBlock = 137 + Bc3SrgbBlock = 138 + Bc4UnormBlock = 139 + Bc4SnormBlock = 140 + Bc5UnormBlock = 141 + Bc5SnormBlock = 142 + Bc6hUfloatBlock = 143 + Bc6hSfloatBlock = 144 + Bc7UnormBlock = 145 + Bc7SrgbBlock = 146 + Etc2R8g8b8UnormBlock = 147 + Etc2R8g8b8SrgbBlock = 148 + Etc2R8g8b8a1UnormBlock = 149 + Etc2R8g8b8a1SrgbBlock = 150 + Etc2R8g8b8a8UnormBlock = 151 + Etc2R8g8b8a8SrgbBlock = 152 + EacR11UnormBlock = 153 + EacR11SnormBlock = 154 + EacR11g11UnormBlock = 155 + EacR11g11SnormBlock = 156 + Astc4x4UnormBlock = 157 + Astc4x4SrgbBlock = 158 + Astc5x4UnormBlock = 159 + Astc5x4SrgbBlock = 160 + Astc5x5UnormBlock = 161 + Astc5x5SrgbBlock = 162 + Astc6x5UnormBlock = 163 + Astc6x5SrgbBlock = 164 + Astc6x6UnormBlock = 165 + Astc6x6SrgbBlock = 166 + Astc8x5UnormBlock = 167 + Astc8x5SrgbBlock = 168 + Astc8x6UnormBlock = 169 + Astc8x6SrgbBlock = 170 + Astc8x8UnormBlock = 171 + Astc8x8SrgbBlock = 172 + Astc10x5UnormBlock = 173 + Astc10x5SrgbBlock = 174 + Astc10x6UnormBlock = 175 + Astc10x6SrgbBlock = 176 + Astc10x8UnormBlock = 177 + Astc10x8SrgbBlock = 178 + Astc10x10UnormBlock = 179 + Astc10x10SrgbBlock = 180 + Astc12x10UnormBlock = 181 + Astc12x10SrgbBlock = 182 + Astc12x12UnormBlock = 183 + Astc12x12SrgbBlock = 184 + VkStructureType* {.size: sizeof(int32).} = enum + ApplicationInfo = 0 + InstanceCreateInfo = 1 + DeviceQueueCreateInfo = 2 + DeviceCreateInfo = 3 + SubmitInfo = 4 + MemoryAllocateInfo = 5 + MappedMemoryRange = 6 + BindSparseInfo = 7 + FenceCreateInfo = 8 + SemaphoreCreateInfo = 9 + EventCreateInfo = 10 + QueryPoolCreateInfo = 11 + BufferCreateInfo = 12 + BufferViewCreateInfo = 13 + ImageCreateInfo = 14 + ImageViewCreateInfo = 15 + ShaderModuleCreateInfo = 16 + PipelineCacheCreateInfo = 17 + PipelineShaderStageCreateInfo = 18 + PipelineVertexInputStateCreateInfo = 19 + PipelineInputAssemblyStateCreateInfo = 20 + PipelineTessellationStateCreateInfo = 21 + PipelineViewportStateCreateInfo = 22 + PipelineRasterizationStateCreateInfo = 23 + PipelineMultisampleStateCreateInfo = 24 + PipelineDepthStencilStateCreateInfo = 25 + PipelineColorBlendStateCreateInfo = 26 + PipelineDynamicStateCreateInfo = 27 + GraphicsPipelineCreateInfo = 28 + ComputePipelineCreateInfo = 29 + PipelineLayoutCreateInfo = 30 + SamplerCreateInfo = 31 + DescriptorSetLayoutCreateInfo = 32 + DescriptorPoolCreateInfo = 33 + DescriptorSetAllocateInfo = 34 + WriteDescriptorSet = 35 + CopyDescriptorSet = 36 + FramebufferCreateInfo = 37 + RenderPassCreateInfo = 38 + CommandPoolCreateInfo = 39 + CommandBufferAllocateInfo = 40 + CommandBufferInheritanceInfo = 41 + CommandBufferBeginInfo = 42 + RenderPassBeginInfo = 43 + BufferMemoryBarrier = 44 + ImageMemoryBarrier = 45 + MemoryBarrier = 46 + LoaderInstanceCreateInfo = 47 + LoaderDeviceCreateInfo = 48 + VkSubpassContents* {.size: sizeof(int32).} = enum + Inline = 0 + SecondaryCommandBuffers = 1 + VkResult* {.size: sizeof(int32).} = enum + VkErrorUnknown = -13 + VkErrorFragmentedPool = -12 + VkErrorFormatNotSupported = -11 + VkErrorTooManyObjects = -10 + VkErrorIncompatibleDriver = -9 + VkErrorFeatureNotPresent = -8 + VkErrorExtensionNotPresent = -7 + VkErrorLayerNotPresent = -6 + VkErrorMemoryMapFailed = -5 + VkErrorDeviceLost = -4 + VkErrorInitializationFailed = -3 + VkErrorOutOfDeviceMemory = -2 + VkErrorOutOfHostMemory = -1 + VkSuccess = 0 + VkNotReady = 1 + VkTimeout = 2 + VkEventSet = 3 + VkEventReset = 4 + VkIncomplete = 5 + VkDynamicState* {.size: sizeof(int32).} = enum + Viewport = 0 + Scissor = 1 + LineWidth = 2 + DepthBias = 3 + BlendConstants = 4 + DepthBounds = 5 + StencilCompareMask = 6 + StencilWriteMask = 7 + StencilReference = 8 + VkDescriptorUpdateTemplateType* {.size: sizeof(int32).} = enum + DescriptorSet = 0 + VkObjectType* {.size: sizeof(int32).} = enum + Unknown = 0 + Instance = 1 + PhysicalDevice = 2 + Device = 3 + Queue = 4 + Semaphore = 5 + CommandBuffer = 6 + Fence = 7 + DeviceMemory = 8 + Buffer = 9 + Image = 10 + Event = 11 + QueryPool = 12 + BufferView = 13 + ImageView = 14 + ShaderModule = 15 + PipelineCache = 16 + PipelineLayout = 17 + RenderPass = 18 + Pipeline = 19 + DescriptorSetLayout = 20 + Sampler = 21 + DescriptorPool = 22 + DescriptorSet = 23 + Framebuffer = 24 + CommandPool = 25 + VkRayTracingInvocationReorderModeNV* {.size: sizeof(int32).} = enum + NoneNv = 0 + ReorderNv = 1 + VkDirectDriverLoadingModeLUNARG* {.size: sizeof(int32).} = enum + VkDirectDriverLoadingModeExclusiveLunarg = 0 + VkDirectDriverLoadingModeInclusiveLunarg = 1 + VkQueueFlagBits* {.size: sizeof(int32).} = enum + GraphicsBit = 1 + ComputeBit = 2 + TransferBit = 4 + SparseBindingBit = 8 + VkCullModeFlagBits* {.size: sizeof(int32).} = enum + None = 0 + FrontBit = 1 + BackBit = 2 + FrontAndBack = 3 + VkMemoryPropertyFlagBits* {.size: sizeof(int32).} = enum + DeviceLocalBit = 1 + HostVisibleBit = 2 + HostCoherentBit = 4 + HostCachedBit = 8 + LazilyAllocatedBit = 16 + VkMemoryHeapFlagBits* {.size: sizeof(int32).} = enum + DeviceLocalBit = 1 + VkAccessFlagBits* {.size: sizeof(int32).} = enum + IndirectCommandReadBit = 1 + IndexReadBit = 2 + VertexAttributeReadBit = 4 + UniformReadBit = 8 + InputAttachmentReadBit = 16 + ShaderReadBit = 32 + ShaderWriteBit = 64 + ColorAttachmentReadBit = 128 + ColorAttachmentWriteBit = 256 + DepthStencilAttachmentReadBit = 512 + DepthStencilAttachmentWriteBit = 1024 + TransferReadBit = 2048 + TransferWriteBit = 4096 + HostReadBit = 8192 + HostWriteBit = 16384 + MemoryReadBit = 32768 + MemoryWriteBit = 65536 + VkBufferUsageFlagBits* {.size: sizeof(int32).} = enum + TransferSrcBit = 1 + TransferDstBit = 2 + UniformTexelBufferBit = 4 + StorageTexelBufferBit = 8 + UniformBufferBit = 16 + StorageBufferBit = 32 + IndexBufferBit = 64 + VertexBufferBit = 128 + IndirectBufferBit = 256 + VkBufferUsageFlagBits2KHR* {.size: sizeof(int32).} = enum + N2TransferSrcBitKhr = 1 + N2TransferDstBitKhr = 2 + N2UniformTexelBufferBitKhr = 4 + N2StorageTexelBufferBitKhr = 8 + N2UniformBufferBitKhr = 16 + N2StorageBufferBitKhr = 32 + N2IndexBufferBitKhr = 64 + N2VertexBufferBitKhr = 128 + N2IndirectBufferBitKhr = 256 + VkBufferCreateFlagBits* {.size: sizeof(int32).} = enum + SparseBindingBit = 1 + SparseResidencyBit = 2 + SparseAliasedBit = 4 + VkShaderStageFlagBits* {.size: sizeof(int32).} = enum + VertexBit = 1 + TessellationControlBit = 2 + TessellationEvaluationBit = 4 + GeometryBit = 8 + FragmentBit = 16 + AllGraphics = 31 + ComputeBit = 32 + All = 2147483647 + VkImageUsageFlagBits* {.size: sizeof(int32).} = enum + TransferSrcBit = 1 + TransferDstBit = 2 + SampledBit = 4 + StorageBit = 8 + ColorAttachmentBit = 16 + DepthStencilAttachmentBit = 32 + TransientAttachmentBit = 64 + InputAttachmentBit = 128 + VkImageCreateFlagBits* {.size: sizeof(int32).} = enum + SparseBindingBit = 1 + SparseResidencyBit = 2 + SparseAliasedBit = 4 + MutableFormatBit = 8 + CubeCompatibleBit = 16 + VkPipelineCreateFlagBits* {.size: sizeof(int32).} = enum + DisableOptimizationBit = 1 + AllowDerivativesBit = 2 + DerivativeBit = 4 + VkPipelineCreateFlagBits2KHR* {.size: sizeof(int32).} = enum + N2DisableOptimizationBitKhr = 1 + N2AllowDerivativesBitKhr = 2 + N2DerivativeBitKhr = 4 + VkColorComponentFlagBits* {.size: sizeof(int32).} = enum + RBit = 1 + GBit = 2 + BBit = 4 + ABit = 8 + VkFenceCreateFlagBits* {.size: sizeof(int32).} = enum + SignaledBit = 1 + VkFormatFeatureFlagBits* {.size: sizeof(int32).} = enum + SampledImageBit = 1 + StorageImageBit = 2 + StorageImageAtomicBit = 4 + UniformTexelBufferBit = 8 + StorageTexelBufferBit = 16 + StorageTexelBufferAtomicBit = 32 + VertexBufferBit = 64 + ColorAttachmentBit = 128 + ColorAttachmentBlendBit = 256 + DepthStencilAttachmentBit = 512 + BlitSrcBit = 1024 + BlitDstBit = 2048 + SampledImageFilterLinearBit = 4096 + VkQueryControlFlagBits* {.size: sizeof(int32).} = enum + PreciseBit = 1 + VkQueryResultFlagBits* {.size: sizeof(int32).} = enum + N64Bit = 1 + WaitBit = 2 + WithAvailabilityBit = 4 + PartialBit = 8 + VkCommandBufferUsageFlagBits* {.size: sizeof(int32).} = enum + OneTimeSubmitBit = 1 + RenderPassContinueBit = 2 + SimultaneousUseBit = 4 + VkQueryPipelineStatisticFlagBits* {.size: sizeof(int32).} = enum + InputAssemblyVerticesBit = 1 + InputAssemblyPrimitivesBit = 2 + VertexShaderInvocationsBit = 4 + GeometryShaderInvocationsBit = 8 + GeometryShaderPrimitivesBit = 16 + ClippingInvocationsBit = 32 + ClippingPrimitivesBit = 64 + FragmentShaderInvocationsBit = 128 + TessellationControlShaderPatchesBit = 256 + TessellationEvaluationShaderInvocationsBit = 512 + ComputeShaderInvocationsBit = 1024 + VkImageAspectFlagBits* {.size: sizeof(int32).} = enum + ColorBit = 1 + DepthBit = 2 + StencilBit = 4 + MetadataBit = 8 + VkSparseImageFormatFlagBits* {.size: sizeof(int32).} = enum + SingleMiptailBit = 1 + AlignedMipSizeBit = 2 + NonstandardBlockSizeBit = 4 + VkSparseMemoryBindFlagBits* {.size: sizeof(int32).} = enum + MetadataBit = 1 + VkPipelineStageFlagBits* {.size: sizeof(int32).} = enum + TopOfPipeBit = 1 + DrawIndirectBit = 2 + VertexInputBit = 4 + VertexShaderBit = 8 + TessellationControlShaderBit = 16 + TessellationEvaluationShaderBit = 32 + GeometryShaderBit = 64 + FragmentShaderBit = 128 + EarlyFragmentTestsBit = 256 + LateFragmentTestsBit = 512 + ColorAttachmentOutputBit = 1024 + ComputeShaderBit = 2048 + TransferBit = 4096 + BottomOfPipeBit = 8192 + HostBit = 16384 + AllGraphicsBit = 32768 + AllCommandsBit = 65536 + VkCommandPoolCreateFlagBits* {.size: sizeof(int32).} = enum + TransientBit = 1 + ResetCommandBufferBit = 2 + VkCommandPoolResetFlagBits* {.size: sizeof(int32).} = enum + ReleaseResourcesBit = 1 + VkCommandBufferResetFlagBits* {.size: sizeof(int32).} = enum + ReleaseResourcesBit = 1 + VkSampleCountFlagBits* {.size: sizeof(int32).} = enum + N1Bit = 1 + N2Bit = 2 + N4Bit = 4 + N8Bit = 8 + N16Bit = 16 + N32Bit = 32 + N64Bit = 64 + VkAttachmentDescriptionFlagBits* {.size: sizeof(int32).} = enum + MayAliasBit = 1 + VkStencilFaceFlagBits* {.size: sizeof(int32).} = enum + FrontBit = 1 + BackBit = 2 + FrontAndBack = 3 + VkDescriptorPoolCreateFlagBits* {.size: sizeof(int32).} = enum + FreeDescriptorSetBit = 1 + VkDependencyFlagBits* {.size: sizeof(int32).} = enum + ByRegionBit = 1 + VkSemaphoreType* {.size: sizeof(int32).} = enum + Binary = 0 + Timeline = 1 + VkSemaphoreWaitFlagBits* {.size: sizeof(int32).} = enum + AnyBit = 1 + VkPresentModeKHR* {.size: sizeof(int32).} = enum + ImmediateKhr = 0 + MailboxKhr = 1 + FifoKhr = 2 + FifoRelaxedKhr = 3 + VkColorSpaceKHR* {.size: sizeof(int32).} = enum + SrgbNonlinearKhr = 0 + VkDisplayPlaneAlphaFlagBitsKHR* {.size: sizeof(int32).} = enum + OpaqueBitKhr = 1 + GlobalBitKhr = 2 + PerPixelBitKhr = 4 + PerPixelPremultipliedBitKhr = 8 + VkCompositeAlphaFlagBitsKHR* {.size: sizeof(int32).} = enum + OpaqueBitKhr = 1 + PreMultipliedBitKhr = 2 + PostMultipliedBitKhr = 4 + InheritBitKhr = 8 + VkSurfaceTransformFlagBitsKHR* {.size: sizeof(int32).} = enum + IdentityBitKhr = 1 + Rotate90BitKhr = 2 + Rotate180BitKhr = 4 + Rotate270BitKhr = 8 + HorizontalMirrorBitKhr = 16 + HorizontalMirrorRotate90BitKhr = 32 + HorizontalMirrorRotate180BitKhr = 64 + HorizontalMirrorRotate270BitKhr = 128 + InheritBitKhr = 256 + VkSwapchainImageUsageFlagBitsANDROID* {.size: sizeof(int32).} = enum + VkSwapchainImageUsageSharedBitAndroid = 1 + VkTimeDomainKHR* {.size: sizeof(int32).} = enum + DeviceKhr = 0 + ClockMonotonicKhr = 1 + ClockMonotonicRawKhr = 2 + QueryPerformanceCounterKhr = 3 + VkDebugReportFlagBitsEXT* {.size: sizeof(int32).} = enum + InformationBitExt = 1 + WarningBitExt = 2 + PerformanceWarningBitExt = 4 + ErrorBitExt = 8 + DebugBitExt = 16 + VkDebugReportObjectTypeEXT* {.size: sizeof(int32).} = enum + UnknownExt = 0 + InstanceExt = 1 + PhysicalDeviceExt = 2 + DeviceExt = 3 + QueueExt = 4 + SemaphoreExt = 5 + CommandBufferExt = 6 + FenceExt = 7 + DeviceMemoryExt = 8 + BufferExt = 9 + ImageExt = 10 + EventExt = 11 + QueryPoolExt = 12 + BufferViewExt = 13 + ImageViewExt = 14 + ShaderModuleExt = 15 + PipelineCacheExt = 16 + PipelineLayoutExt = 17 + RenderPassExt = 18 + PipelineExt = 19 + DescriptorSetLayoutExt = 20 + SamplerExt = 21 + DescriptorPoolExt = 22 + DescriptorSetExt = 23 + FramebufferExt = 24 + CommandPoolExt = 25 + SurfaceKhrExt = 26 + SwapchainKhrExt = 27 + DebugReportCallbackExtExt = 28 + DisplayKhrExt = 29 + DisplayModeKhrExt = 30 + ValidationCacheExtExt = 33 + VkDeviceMemoryReportEventTypeEXT* {.size: sizeof(int32).} = enum + AllocateExt = 0 + FreeExt = 1 + ImportExt = 2 + UnimportExt = 3 + AllocationFailedExt = 4 + VkRasterizationOrderAMD* {.size: sizeof(int32).} = enum + StrictAmd = 0 + RelaxedAmd = 1 + VkExternalMemoryHandleTypeFlagBitsNV* {.size: sizeof(int32).} = enum + OpaqueWin32BitNv = 1 + OpaqueWin32KmtBitNv = 2 + D3d11ImageBitNv = 4 + D3d11ImageKmtBitNv = 8 + VkExternalMemoryFeatureFlagBitsNV* {.size: sizeof(int32).} = enum + DedicatedOnlyBitNv = 1 + ExportableBitNv = 2 + ImportableBitNv = 4 + VkValidationCheckEXT* {.size: sizeof(int32).} = enum + AllExt = 0 + ShadersExt = 1 + VkValidationFeatureEnableEXT* {.size: sizeof(int32).} = enum + GpuAssistedExt = 0 + GpuAssistedReserveBindingSlotExt = 1 + BestPracticesExt = 2 + DebugPrintfExt = 3 + SynchronizationValidationExt = 4 + VkValidationFeatureDisableEXT* {.size: sizeof(int32).} = enum + AllExt = 0 + ShadersExt = 1 + ThreadSafetyExt = 2 + ApiParametersExt = 3 + ObjectLifetimesExt = 4 + CoreChecksExt = 5 + UniqueHandlesExt = 6 + ShaderValidationCacheExt = 7 + VkLayerSettingTypeEXT* {.size: sizeof(int32).} = enum + Bool32Ext = 0 + Int32Ext = 1 + Int64Ext = 2 + Uint32Ext = 3 + Uint64Ext = 4 + Float32Ext = 5 + Float64Ext = 6 + StringExt = 7 + VkSubgroupFeatureFlagBits* {.size: sizeof(int32).} = enum + BasicBit = 1 + VoteBit = 2 + ArithmeticBit = 4 + BallotBit = 8 + ShuffleBit = 16 + ShuffleRelativeBit = 32 + ClusteredBit = 64 + QuadBit = 128 + VkIndirectCommandsLayoutUsageFlagBitsNV* {.size: sizeof(int32).} = enum + ExplicitPreprocessBitNv = 1 + IndexedSequencesBitNv = 2 + UnorderedSequencesBitNv = 4 + VkIndirectStateFlagBitsNV* {.size: sizeof(int32).} = enum + FlagFrontfaceBitNv = 1 + VkIndirectCommandsTokenTypeNV* {.size: sizeof(int32).} = enum + ShaderGroupNv = 0 + StateFlagsNv = 1 + IndexBufferNv = 2 + VertexBufferNv = 3 + PushConstantNv = 4 + DrawIndexedNv = 5 + DrawNv = 6 + DrawTasksNv = 7 + VkExternalMemoryHandleTypeFlagBits* {.size: sizeof(int32).} = enum + OpaqueFdBit = 1 + OpaqueWin32Bit = 2 + OpaqueWin32KmtBit = 4 + D3d11TextureBit = 8 + D3d11TextureKmtBit = 16 + D3d12HeapBit = 32 + D3d12ResourceBit = 64 + VkExternalMemoryFeatureFlagBits* {.size: sizeof(int32).} = enum + DedicatedOnlyBit = 1 + ExportableBit = 2 + ImportableBit = 4 + VkExternalSemaphoreHandleTypeFlagBits* {.size: sizeof(int32).} = enum + OpaqueFdBit = 1 + OpaqueWin32Bit = 2 + OpaqueWin32KmtBit = 4 + D3d12FenceBit = 8 + SyncFdBit = 16 + VkExternalSemaphoreFeatureFlagBits* {.size: sizeof(int32).} = enum + ExportableBit = 1 + ImportableBit = 2 + VkSemaphoreImportFlagBits* {.size: sizeof(int32).} = enum + TemporaryBit = 1 + VkExternalFenceHandleTypeFlagBits* {.size: sizeof(int32).} = enum + OpaqueFdBit = 1 + OpaqueWin32Bit = 2 + OpaqueWin32KmtBit = 4 + SyncFdBit = 8 + VkExternalFenceFeatureFlagBits* {.size: sizeof(int32).} = enum + ExportableBit = 1 + ImportableBit = 2 + VkFenceImportFlagBits* {.size: sizeof(int32).} = enum + TemporaryBit = 1 + VkSurfaceCounterFlagBitsEXT* {.size: sizeof(int32).} = enum + VblankBitExt = 1 + VkDisplayPowerStateEXT* {.size: sizeof(int32).} = enum + OffExt = 0 + SuspendExt = 1 + OnExt = 2 + VkDeviceEventTypeEXT* {.size: sizeof(int32).} = enum + DisplayHotplugExt = 0 + VkDisplayEventTypeEXT* {.size: sizeof(int32).} = enum + FirstPixelOutExt = 0 + VkPeerMemoryFeatureFlagBits* {.size: sizeof(int32).} = enum + CopySrcBit = 1 + CopyDstBit = 2 + GenericSrcBit = 4 + GenericDstBit = 8 + VkMemoryAllocateFlagBits* {.size: sizeof(int32).} = enum + DeviceMaskBit = 1 + VkDeviceGroupPresentModeFlagBitsKHR* {.size: sizeof(int32).} = enum + LocalBitKhr = 1 + RemoteBitKhr = 2 + SumBitKhr = 4 + LocalMultiDeviceBitKhr = 8 + VkViewportCoordinateSwizzleNV* {.size: sizeof(int32).} = enum + PositiveXNv = 0 + NegativeXNv = 1 + PositiveYNv = 2 + NegativeYNv = 3 + PositiveZNv = 4 + NegativeZNv = 5 + PositiveWNv = 6 + NegativeWNv = 7 + VkDiscardRectangleModeEXT* {.size: sizeof(int32).} = enum + InclusiveExt = 0 + ExclusiveExt = 1 + VkPointClippingBehavior* {.size: sizeof(int32).} = enum + AllClipPlanes = 0 + UserClipPlanesOnly = 1 + VkSamplerReductionMode* {.size: sizeof(int32).} = enum + WeightedAverage = 0 + Min = 1 + Max = 2 + VkTessellationDomainOrigin* {.size: sizeof(int32).} = enum + UpperLeft = 0 + LowerLeft = 1 + VkSamplerYcbcrModelConversion* {.size: sizeof(int32).} = enum + RgbIdentity = 0 + YcbcrIdentity = 1 + Ycbcr709 = 2 + Ycbcr601 = 3 + Ycbcr2020 = 4 + VkSamplerYcbcrRange* {.size: sizeof(int32).} = enum + ItuFull = 0 + ItuNarrow = 1 + VkChromaLocation* {.size: sizeof(int32).} = enum + CositedEven = 0 + Midpoint = 1 + VkBlendOverlapEXT* {.size: sizeof(int32).} = enum + UncorrelatedExt = 0 + DisjointExt = 1 + ConjointExt = 2 + VkCoverageModulationModeNV* {.size: sizeof(int32).} = enum + NoneNv = 0 + RgbNv = 1 + AlphaNv = 2 + RgbaNv = 3 + VkCoverageReductionModeNV* {.size: sizeof(int32).} = enum + MergeNv = 0 + TruncateNv = 1 + VkValidationCacheHeaderVersionEXT* {.size: sizeof(int32).} = enum + OneExt = 1 + VkShaderInfoTypeAMD* {.size: sizeof(int32).} = enum + StatisticsAmd = 0 + BinaryAmd = 1 + DisassemblyAmd = 2 + VkQueueGlobalPriorityKHR* {.size: sizeof(int32).} = enum + LowKhr = 128 + MediumKhr = 256 + HighKhr = 512 + RealtimeKhr = 1024 + VkDebugUtilsMessageSeverityFlagBitsEXT* {.size: sizeof(int32).} = enum + VerboseBitExt = 1 + InfoBitExt = 16 + WarningBitExt = 256 + ErrorBitExt = 4096 + VkDebugUtilsMessageTypeFlagBitsEXT* {.size: sizeof(int32).} = enum + GeneralBitExt = 1 + ValidationBitExt = 2 + PerformanceBitExt = 4 + VkConservativeRasterizationModeEXT* {.size: sizeof(int32).} = enum + DisabledExt = 0 + OverestimateExt = 1 + UnderestimateExt = 2 + VkDescriptorBindingFlagBits* {.size: sizeof(int32).} = enum + UpdateAfterBindBit = 1 + UpdateUnusedWhilePendingBit = 2 + PartiallyBoundBit = 4 + VariableDescriptorCountBit = 8 + VkVendorId* {.size: sizeof(int32).} = enum + Viv = 65537 + Vsi = 65538 + Kazan = 65539 + Codeplay = 65540 + Mesa = 65541 + Pocl = 65542 + Mobileye = 65543 + VkDriverId* {.size: sizeof(int32).} = enum + AmdProprietary = 1 + AmdOpenSource = 2 + MesaRadv = 3 + NvidiaProprietary = 4 + IntelProprietaryWindows = 5 + IntelOpenSourceMesa = 6 + ImaginationProprietary = 7 + QualcommProprietary = 8 + ArmProprietary = 9 + GoogleSwiftshader = 10 + GgpProprietary = 11 + BroadcomProprietary = 12 + MesaLlvmpipe = 13 + Moltenvk = 14 + CoreaviProprietary = 15 + JuiceProprietary = 16 + VerisiliconProprietary = 17 + MesaTurnip = 18 + MesaV3dv = 19 + MesaPanvk = 20 + SamsungProprietary = 21 + MesaVenus = 22 + MesaDozen = 23 + MesaNvk = 24 + ImaginationOpenSourceMesa = 25 + MesaAgxv = 26 + VkConditionalRenderingFlagBitsEXT* {.size: sizeof(int32).} = enum + InvertedBitExt = 1 + VkResolveModeFlagBits* {.size: sizeof(int32).} = enum + None = 0 + SampleZeroBit = 1 + AverageBit = 2 + MinBit = 4 + MaxBit = 8 + VkShadingRatePaletteEntryNV* {.size: sizeof(int32).} = enum + NoInvocationsNv = 0 + N16InvocationsPerPixelNv = 1 + N8InvocationsPerPixelNv = 2 + N4InvocationsPerPixelNv = 3 + N2InvocationsPerPixelNv = 4 + N1InvocationPerPixelNv = 5 + N1InvocationPer2x1PixelsNv = 6 + N1InvocationPer1x2PixelsNv = 7 + N1InvocationPer2x2PixelsNv = 8 + N1InvocationPer4x2PixelsNv = 9 + N1InvocationPer2x4PixelsNv = 10 + N1InvocationPer4x4PixelsNv = 11 + VkCoarseSampleOrderTypeNV* {.size: sizeof(int32).} = enum + DefaultNv = 0 + CustomNv = 1 + PixelMajorNv = 2 + SampleMajorNv = 3 + VkGeometryInstanceFlagBitsKHR* {.size: sizeof(int32).} = enum + TriangleFacingCullDisableBitKhr = 1 + TriangleFlipFacingBitKhr = 2 + ForceOpaqueBitKhr = 4 + ForceNoOpaqueBitKhr = 8 + VkGeometryFlagBitsKHR* {.size: sizeof(int32).} = enum + OpaqueBitKhr = 1 + NoDuplicateAnyHitInvocationBitKhr = 2 + VkBuildAccelerationStructureFlagBitsKHR* {.size: sizeof(int32).} = enum + AllowUpdateBitKhr = 1 + AllowCompactionBitKhr = 2 + PreferFastTraceBitKhr = 4 + PreferFastBuildBitKhr = 8 + LowMemoryBitKhr = 16 + VkAccelerationStructureCreateFlagBitsKHR* {.size: sizeof(int32).} = enum + DeviceAddressCaptureReplayBitKhr = 1 + VkCopyAccelerationStructureModeKHR* {.size: sizeof(int32).} = enum + CloneKhr = 0 + CompactKhr = 1 + SerializeKhr = 2 + DeserializeKhr = 3 + VkBuildAccelerationStructureModeKHR* {.size: sizeof(int32).} = enum + BuildKhr = 0 + UpdateKhr = 1 + VkAccelerationStructureTypeKHR* {.size: sizeof(int32).} = enum + TopLevelKhr = 0 + BottomLevelKhr = 1 + GenericKhr = 2 + VkGeometryTypeKHR* {.size: sizeof(int32).} = enum + TrianglesKhr = 0 + AabbsKhr = 1 + InstancesKhr = 2 + VkAccelerationStructureMemoryRequirementsTypeNV* {.size: sizeof(int32).} = enum + ObjectNv = 0 + BuildScratchNv = 1 + UpdateScratchNv = 2 + VkAccelerationStructureBuildTypeKHR* {.size: sizeof(int32).} = enum + HostKhr = 0 + DeviceKhr = 1 + HostOrDeviceKhr = 2 + VkRayTracingShaderGroupTypeKHR* {.size: sizeof(int32).} = enum + GeneralKhr = 0 + TrianglesHitGroupKhr = 1 + ProceduralHitGroupKhr = 2 + VkAccelerationStructureCompatibilityKHR* {.size: sizeof(int32).} = enum + CompatibleKhr = 0 + IncompatibleKhr = 1 + VkShaderGroupShaderKHR* {.size: sizeof(int32).} = enum + GeneralKhr = 0 + ClosestHitKhr = 1 + AnyHitKhr = 2 + IntersectionKhr = 3 + VkMemoryOverallocationBehaviorAMD* {.size: sizeof(int32).} = enum + DefaultAmd = 0 + AllowedAmd = 1 + DisallowedAmd = 2 + VkDeviceDiagnosticsConfigFlagBitsNV* {.size: sizeof(int32).} = enum + EnableShaderDebugInfoBitNv = 1 + EnableResourceTrackingBitNv = 2 + EnableAutomaticCheckpointsBitNv = 4 + EnableShaderErrorReportingBitNv = 8 + VkPipelineCreationFeedbackFlagBits* {.size: sizeof(int32).} = enum + ValidBit = 1 + ApplicationPipelineCacheHitBit = 2 + BasePipelineAccelerationBit = 4 + VkFullScreenExclusiveEXT* {.size: sizeof(int32).} = enum + DefaultExt = 0 + AllowedExt = 1 + DisallowedExt = 2 + ApplicationControlledExt = 3 + VkPerformanceCounterScopeKHR* {.size: sizeof(int32).} = enum + CommandBufferKhr = 0 + RenderPassKhr = 1 + CommandKhr = 2 + VkMemoryDecompressionMethodFlagBitsNV* {.size: sizeof(int32).} = enum + Gdeflate10BitNv = 1 + VkPerformanceCounterUnitKHR* {.size: sizeof(int32).} = enum + GenericKhr = 0 + PercentageKhr = 1 + NanosecondsKhr = 2 + BytesKhr = 3 + BytesPerSecondKhr = 4 + KelvinKhr = 5 + WattsKhr = 6 + VoltsKhr = 7 + AmpsKhr = 8 + HertzKhr = 9 + CyclesKhr = 10 + VkPerformanceCounterStorageKHR* {.size: sizeof(int32).} = enum + Int32Khr = 0 + Int64Khr = 1 + Uint32Khr = 2 + Uint64Khr = 3 + Float32Khr = 4 + Float64Khr = 5 + VkPerformanceCounterDescriptionFlagBitsKHR* {.size: sizeof(int32).} = enum + PerformanceImpactingBitKhr = 1 + ConcurrentlyImpactedBitKhr = 2 + VkPerformanceConfigurationTypeINTEL* {.size: sizeof(int32).} = enum + CommandQueueMetricsDiscoveryActivatedIntel = 0 + VkQueryPoolSamplingModeINTEL* {.size: sizeof(int32).} = enum + ManualIntel = 0 + VkPerformanceOverrideTypeINTEL* {.size: sizeof(int32).} = enum + NullHardwareIntel = 0 + FlushGpuCachesIntel = 1 + VkPerformanceParameterTypeINTEL* {.size: sizeof(int32).} = enum + HwCountersSupportedIntel = 0 + StreamMarkerValidBitsIntel = 1 + VkPerformanceValueTypeINTEL* {.size: sizeof(int32).} = enum + Uint32Intel = 0 + Uint64Intel = 1 + FloatIntel = 2 + BoolIntel = 3 + StringIntel = 4 + VkShaderFloatControlsIndependence* {.size: sizeof(int32).} = enum + N32BitOnly = 0 + All = 1 + None = 2 + VkPipelineExecutableStatisticFormatKHR* {.size: sizeof(int32).} = enum + Bool32Khr = 0 + Int64Khr = 1 + Uint64Khr = 2 + Float64Khr = 3 + VkLineRasterizationModeKHR* {.size: sizeof(int32).} = enum + DefaultKhr = 0 + RectangularKhr = 1 + BresenhamKhr = 2 + RectangularSmoothKhr = 3 + VkFaultLevel* {.size: sizeof(int32).} = enum + Unassigned = 0 + Critical = 1 + Recoverable = 2 + Warning = 3 + VkFaultType* {.size: sizeof(int32).} = enum + Invalid = 0 + Unassigned = 1 + Implementation = 2 + System = 3 + PhysicalDevice = 4 + CommandBufferFull = 5 + InvalidApiUsage = 6 + VkFaultQueryBehavior* {.size: sizeof(int32).} = enum + GetAndClearAllFaults = 0 + VkToolPurposeFlagBits* {.size: sizeof(int32).} = enum + ValidationBit = 1 + ProfilingBit = 2 + TracingBit = 4 + AdditionalFeaturesBit = 8 + ModifyingFeaturesBit = 16 + VkPipelineMatchControl* {.size: sizeof(int32).} = enum + ApplicationUuidExactMatch = 0 + VkFragmentShadingRateCombinerOpKHR* {.size: sizeof(int32).} = enum + KeepKhr = 0 + ReplaceKhr = 1 + MinKhr = 2 + MaxKhr = 3 + MulKhr = 4 + VkFragmentShadingRateNV* {.size: sizeof(int32).} = enum + N1InvocationPerPixelNv = 0 + N1InvocationPer1x2PixelsNv = 1 + N1InvocationPer2x1PixelsNv = 4 + N1InvocationPer2x2PixelsNv = 5 + N1InvocationPer2x4PixelsNv = 6 + N1InvocationPer4x2PixelsNv = 9 + N1InvocationPer4x4PixelsNv = 10 + N2InvocationsPerPixelNv = 11 + N4InvocationsPerPixelNv = 12 + N8InvocationsPerPixelNv = 13 + N16InvocationsPerPixelNv = 14 + NoInvocationsNv = 15 + VkFragmentShadingRateTypeNV* {.size: sizeof(int32).} = enum + FragmentSizeNv = 0 + EnumsNv = 1 + VkSubpassMergeStatusEXT* {.size: sizeof(int32).} = enum + MergedExt = 0 + DisallowedExt = 1 + NotMergedSideEffectsExt = 2 + NotMergedSamplesMismatchExt = 3 + NotMergedViewsMismatchExt = 4 + NotMergedAliasingExt = 5 + NotMergedDependenciesExt = 6 + NotMergedIncompatibleInputAttachmentExt = 7 + NotMergedTooManyAttachmentsExt = 8 + NotMergedInsufficientStorageExt = 9 + NotMergedDepthStencilCountExt = 10 + NotMergedResolveAttachmentReuseExt = 11 + NotMergedSingleSubpassExt = 12 + NotMergedUnspecifiedExt = 13 + VkAccessFlagBits2* {.size: sizeof(int32).} = enum + N2None = 0 + N2IndirectCommandReadBit = 1 + N2IndexReadBit = 2 + N2VertexAttributeReadBit = 4 + N2UniformReadBit = 8 + N2InputAttachmentReadBit = 16 + N2ShaderReadBit = 32 + N2ShaderWriteBit = 64 + N2ColorAttachmentReadBit = 128 + N2ColorAttachmentWriteBit = 256 + N2DepthStencilAttachmentReadBit = 512 + N2DepthStencilAttachmentWriteBit = 1024 + N2TransferReadBit = 2048 + N2TransferWriteBit = 4096 + N2HostReadBit = 8192 + N2HostWriteBit = 16384 + N2MemoryReadBit = 32768 + N2MemoryWriteBit = 65536 + N2ShaderSampledReadBit = 4294967296 + N2ShaderStorageReadBit = 8589934592 + N2ShaderStorageWriteBit = 17179869184 + VkPipelineStageFlagBits2* {.size: sizeof(int32).} = enum + N2None = 0 + N2TopOfPipeBit = 1 + N2DrawIndirectBit = 2 + N2VertexInputBit = 4 + N2VertexShaderBit = 8 + N2TessellationControlShaderBit = 16 + N2TessellationEvaluationShaderBit = 32 + N2GeometryShaderBit = 64 + N2FragmentShaderBit = 128 + N2EarlyFragmentTestsBit = 256 + N2LateFragmentTestsBit = 512 + N2ColorAttachmentOutputBit = 1024 + N2ComputeShaderBit = 2048 + N2AllTransferBit = 4096 + N2BottomOfPipeBit = 8192 + N2HostBit = 16384 + N2AllGraphicsBit = 32768 + N2AllCommandsBit = 65536 + N2CopyBit = 4294967296 + N2ResolveBit = 8589934592 + N2BlitBit = 17179869184 + N2ClearBit = 34359738368 + N2IndexInputBit = 68719476736 + N2VertexAttributeInputBit = 137438953472 + N2PreRasterizationShadersBit = 274877906944 + VkSubmitFlagBits* {.size: sizeof(int32).} = enum + ProtectedBit = 1 + VkSciSyncClientTypeNV* {.size: sizeof(int32).} = enum + SignalerNv = 0 + WaiterNv = 1 + SignalerWaiterNv = 2 + VkSciSyncPrimitiveTypeNV* {.size: sizeof(int32).} = enum + FenceNv = 0 + SemaphoreNv = 1 + VkProvokingVertexModeEXT* {.size: sizeof(int32).} = enum + FirstVertexExt = 0 + LastVertexExt = 1 + VkPipelineCacheValidationVersion* {.size: sizeof(int32).} = enum + SafetyCriticalOne = 1 + VkAccelerationStructureMotionInstanceTypeNV* {.size: sizeof(int32).} = enum + StaticNv = 0 + MatrixMotionNv = 1 + SrtMotionNv = 2 + VkGraphicsPipelineLibraryFlagBitsEXT* {.size: sizeof(int32).} = enum + VertexInputInterfaceBitExt = 1 + PreRasterizationShadersBitExt = 2 + FragmentShaderBitExt = 4 + FragmentOutputInterfaceBitExt = 8 + VkDeviceAddressBindingFlagBitsEXT* {.size: sizeof(int32).} = enum + InternalObjectBitExt = 1 + VkDeviceAddressBindingTypeEXT* {.size: sizeof(int32).} = enum + BindExt = 0 + UnbindExt = 1 + VkFrameBoundaryFlagBitsEXT* {.size: sizeof(int32).} = enum + FrameEndBitExt = 1 + VkPresentScalingFlagBitsEXT* {.size: sizeof(int32).} = enum + OneToOneBitExt = 1 + AspectRatioStretchBitExt = 2 + StretchBitExt = 4 + VkPresentGravityFlagBitsEXT* {.size: sizeof(int32).} = enum + MinBitExt = 1 + MaxBitExt = 2 + CenteredBitExt = 4 + VkPhysicalDeviceSchedulingControlsFlagBitsARM* {.size: sizeof(int32).} = enum + VkPhysicalDeviceSchedulingControlsShaderCoreCountArm = 1 + VkVideoCodecOperationFlagBitsKHR* {.size: sizeof(int32).} = enum + NoneKhr = 0 + VkVideoChromaSubsamplingFlagBitsKHR* {.size: sizeof(int32).} = enum + InvalidKhr = 0 + MonochromeBitKhr = 1 + N420BitKhr = 2 + N422BitKhr = 4 + N444BitKhr = 8 + VkVideoComponentBitDepthFlagBitsKHR* {.size: sizeof(int32).} = enum + InvalidKhr = 0 + N8BitKhr = 1 + N10BitKhr = 4 + N12BitKhr = 16 + VkVideoCapabilityFlagBitsKHR* {.size: sizeof(int32).} = enum + ProtectedContentBitKhr = 1 + SeparateReferenceImagesBitKhr = 2 + VkVideoSessionCreateFlagBitsKHR* {.size: sizeof(int32).} = enum + ProtectedContentBitKhr = 1 + VkVideoDecodeH264PictureLayoutFlagBitsKHR* {.size: sizeof(int32).} = enum + ProgressiveKhr = 0 + InterlacedInterleavedLinesBitKhr = 1 + InterlacedSeparatePlanesBitKhr = 2 + VkVideoCodingControlFlagBitsKHR* {.size: sizeof(int32).} = enum + ResetBitKhr = 1 + VkQueryResultStatusKHR* {.size: sizeof(int32).} = enum + ErrorKhr = -1 + NotReadyKhr = 0 + CompleteKhr = 1 + VkVideoDecodeUsageFlagBitsKHR* {.size: sizeof(int32).} = enum + DefaultKhr = 0 + TranscodingBitKhr = 1 + OfflineBitKhr = 2 + StreamingBitKhr = 4 + VkVideoDecodeCapabilityFlagBitsKHR* {.size: sizeof(int32).} = enum + DpbAndOutputCoincideBitKhr = 1 + DpbAndOutputDistinctBitKhr = 2 + VkVideoEncodeUsageFlagBitsKHR* {.size: sizeof(int32).} = enum + DefaultKhr = 0 + TranscodingBitKhr = 1 + StreamingBitKhr = 2 + RecordingBitKhr = 4 + ConferencingBitKhr = 8 + VkVideoEncodeContentFlagBitsKHR* {.size: sizeof(int32).} = enum + DefaultKhr = 0 + CameraBitKhr = 1 + DesktopBitKhr = 2 + RenderedBitKhr = 4 + VkVideoEncodeTuningModeKHR* {.size: sizeof(int32).} = enum + DefaultKhr = 0 + HighQualityKhr = 1 + LowLatencyKhr = 2 + UltraLowLatencyKhr = 3 + LosslessKhr = 4 + VkVideoEncodeCapabilityFlagBitsKHR* {.size: sizeof(int32).} = enum + PrecedingExternallyEncodedBytesBitKhr = 1 + InsufficientBitstreamBufferRangeDetectionBitKhr = 2 + VkVideoEncodeFeedbackFlagBitsKHR* {.size: sizeof(int32).} = enum + BitstreamBufferOffsetBitKhr = 1 + BitstreamBytesWrittenBitKhr = 2 + BitstreamHasOverridesBitKhr = 4 + VkVideoEncodeRateControlModeFlagBitsKHR* {.size: sizeof(int32).} = enum + DefaultKhr = 0 + DisabledBitKhr = 1 + CbrBitKhr = 2 + VbrBitKhr = 4 + VkVideoEncodeH264CapabilityFlagBitsKHR* {.size: sizeof(int32).} = enum + HrdComplianceBitKhr = 1 + PredictionWeightTableGeneratedBitKhr = 2 + RowUnalignedSliceBitKhr = 4 + DifferentSliceTypeBitKhr = 8 + BFrameInL0ListBitKhr = 16 + BFrameInL1ListBitKhr = 32 + PerPictureTypeMinMaxQpBitKhr = 64 + PerSliceConstantQpBitKhr = 128 + GeneratePrefixNaluBitKhr = 256 + VkVideoEncodeH264StdFlagBitsKHR* {.size: sizeof(int32).} = enum + SeparateColorPlaneFlagSetBitKhr = 1 + QpprimeYZeroTransformBypassFlagSetBitKhr = 2 + ScalingMatrixPresentFlagSetBitKhr = 4 + ChromaQpIndexOffsetBitKhr = 8 + SecondChromaQpIndexOffsetBitKhr = 16 + PicInitQpMinus26BitKhr = 32 + WeightedPredFlagSetBitKhr = 64 + WeightedBipredIdcExplicitBitKhr = 128 + WeightedBipredIdcImplicitBitKhr = 256 + Transform8x8ModeFlagSetBitKhr = 512 + DirectSpatialMvPredFlagUnsetBitKhr = 1024 + EntropyCodingModeFlagUnsetBitKhr = 2048 + EntropyCodingModeFlagSetBitKhr = 4096 + Direct8x8InferenceFlagUnsetBitKhr = 8192 + ConstrainedIntraPredFlagSetBitKhr = 16384 + DeblockingFilterDisabledBitKhr = 32768 + DeblockingFilterEnabledBitKhr = 65536 + DeblockingFilterPartialBitKhr = 131072 + SliceQpDeltaBitKhr = 524288 + DifferentSliceQpDeltaBitKhr = 1048576 + VkVideoEncodeH264RateControlFlagBitsKHR* {.size: sizeof(int32).} = enum + AttemptHrdComplianceBitKhr = 1 + RegularGopBitKhr = 2 + ReferencePatternFlatBitKhr = 4 + ReferencePatternDyadicBitKhr = 8 + TemporalLayerPatternDyadicBitKhr = 16 + VkHostImageCopyFlagBitsEXT* {.size: sizeof(int32).} = enum + MemcpyExt = 1 + VkImageConstraintsInfoFlagBitsFUCHSIA* {.size: sizeof(int32).} = enum + VkImageConstraintsInfoCpuReadRarelyFuchsia = 1 + VkImageConstraintsInfoCpuReadOftenFuchsia = 2 + VkImageConstraintsInfoCpuWriteRarelyFuchsia = 4 + VkImageConstraintsInfoCpuWriteOftenFuchsia = 8 + VkImageConstraintsInfoProtectedOptionalFuchsia = 16 + VkFormatFeatureFlagBits2* {.size: sizeof(int32).} = enum + N2SampledImageBit = 1 + N2StorageImageBit = 2 + N2StorageImageAtomicBit = 4 + N2UniformTexelBufferBit = 8 + N2StorageTexelBufferBit = 16 + N2StorageTexelBufferAtomicBit = 32 + N2VertexBufferBit = 64 + N2ColorAttachmentBit = 128 + N2ColorAttachmentBlendBit = 256 + N2DepthStencilAttachmentBit = 512 + N2BlitSrcBit = 1024 + N2BlitDstBit = 2048 + N2SampledImageFilterLinearBit = 4096 + N2SampledImageFilterCubicBit = 8192 + N2TransferSrcBit = 16384 + N2TransferDstBit = 32768 + N2SampledImageFilterMinmaxBit = 65536 + N2MidpointChromaSamplesBit = 131072 + N2SampledImageYcbcrConversionLinearFilterBit = 262144 + N2SampledImageYcbcrConversionSeparateReconstructionFilterBit = 524288 + N2SampledImageYcbcrConversionChromaReconstructionExplicitBit = 1048576 + N2SampledImageYcbcrConversionChromaReconstructionExplicitForceableBit = 2097152 + N2DisjointBit = 4194304 + N2CositedChromaSamplesBit = 8388608 + N2StorageReadWithoutFormatBit = 2147483648 + N2StorageWriteWithoutFormatBit = 4294967296 + N2SampledImageDepthComparisonBit = 8589934592 + VkRenderingFlagBits* {.size: sizeof(int32).} = enum + ContentsSecondaryCommandBuffersBit = 1 + SuspendingBit = 2 + ResumingBit = 4 + VkVideoEncodeH265CapabilityFlagBitsKHR* {.size: sizeof(int32).} = enum + HrdComplianceBitKhr = 1 + PredictionWeightTableGeneratedBitKhr = 2 + RowUnalignedSliceSegmentBitKhr = 4 + DifferentSliceSegmentTypeBitKhr = 8 + BFrameInL0ListBitKhr = 16 + BFrameInL1ListBitKhr = 32 + PerPictureTypeMinMaxQpBitKhr = 64 + PerSliceSegmentConstantQpBitKhr = 128 + MultipleTilesPerSliceSegmentBitKhr = 256 + MultipleSliceSegmentsPerTileBitKhr = 512 + VkVideoEncodeH265StdFlagBitsKHR* {.size: sizeof(int32).} = enum + SeparateColorPlaneFlagSetBitKhr = 1 + SampleAdaptiveOffsetEnabledFlagSetBitKhr = 2 + ScalingListDataPresentFlagSetBitKhr = 4 + PcmEnabledFlagSetBitKhr = 8 + SpsTemporalMvpEnabledFlagSetBitKhr = 16 + InitQpMinus26BitKhr = 32 + WeightedPredFlagSetBitKhr = 64 + WeightedBipredFlagSetBitKhr = 128 + Log2ParallelMergeLevelMinus2BitKhr = 256 + SignDataHidingEnabledFlagSetBitKhr = 512 + TransformSkipEnabledFlagSetBitKhr = 1024 + TransformSkipEnabledFlagUnsetBitKhr = 2048 + PpsSliceChromaQpOffsetsPresentFlagSetBitKhr = 4096 + TransquantBypassEnabledFlagSetBitKhr = 8192 + ConstrainedIntraPredFlagSetBitKhr = 16384 + EntropyCodingSyncEnabledFlagSetBitKhr = 32768 + DeblockingFilterOverrideEnabledFlagSetBitKhr = 65536 + DependentSliceSegmentsEnabledFlagSetBitKhr = 131072 + DependentSliceSegmentFlagSetBitKhr = 262144 + SliceQpDeltaBitKhr = 524288 + DifferentSliceQpDeltaBitKhr = 1048576 + VkVideoEncodeH265RateControlFlagBitsKHR* {.size: sizeof(int32).} = enum + AttemptHrdComplianceBitKhr = 1 + RegularGopBitKhr = 2 + ReferencePatternFlatBitKhr = 4 + ReferencePatternDyadicBitKhr = 8 + TemporalSubLayerPatternDyadicBitKhr = 16 + VkVideoEncodeH265CtbSizeFlagBitsKHR* {.size: sizeof(int32).} = enum + N16BitKhr = 1 + N32BitKhr = 2 + N64BitKhr = 4 + VkVideoEncodeH265TransformBlockSizeFlagBitsKHR* {.size: sizeof(int32).} = enum + N4BitKhr = 1 + N8BitKhr = 2 + N16BitKhr = 4 + N32BitKhr = 8 + VkExportMetalObjectTypeFlagBitsEXT* {.size: sizeof(int32).} = enum + MetalDeviceBitExt = 1 + MetalCommandQueueBitExt = 2 + MetalBufferBitExt = 4 + MetalTextureBitExt = 8 + MetalIosurfaceBitExt = 16 + MetalSharedEventBitExt = 32 + VkImageCompressionFlagBitsEXT* {.size: sizeof(int32).} = enum + DefaultExt = 0 + FixedRateDefaultExt = 1 + FixedRateExplicitExt = 2 + DisabledExt = 4 + VkImageCompressionFixedRateFlagBitsEXT* {.size: sizeof(int32).} = enum + NoneExt = 0 + N1bpcBitExt = 1 + N2bpcBitExt = 2 + N3bpcBitExt = 4 + N4bpcBitExt = 8 + N5bpcBitExt = 16 + N6bpcBitExt = 32 + N7bpcBitExt = 64 + N8bpcBitExt = 128 + N9bpcBitExt = 256 + N10bpcBitExt = 512 + N11bpcBitExt = 1024 + N12bpcBitExt = 2048 + N13bpcBitExt = 4096 + N14bpcBitExt = 8192 + N15bpcBitExt = 16384 + N16bpcBitExt = 32768 + N17bpcBitExt = 65536 + N18bpcBitExt = 131072 + N19bpcBitExt = 262144 + N20bpcBitExt = 524288 + N21bpcBitExt = 1048576 + N22bpcBitExt = 2097152 + N23bpcBitExt = 4194304 + N24bpcBitExt = 8388608 + VkPipelineRobustnessBufferBehaviorEXT* {.size: sizeof(int32).} = enum + DeviceDefaultExt = 0 + DisabledExt = 1 + RobustBufferAccessExt = 2 + RobustBufferAccess2Ext = 3 + VkPipelineRobustnessImageBehaviorEXT* {.size: sizeof(int32).} = enum + DeviceDefaultExt = 0 + DisabledExt = 1 + RobustImageAccessExt = 2 + RobustImageAccess2Ext = 3 + VkOpticalFlowGridSizeFlagBitsNV* {.size: sizeof(int32).} = enum + UnknownNv = 0 + N1x1BitNv = 1 + N2x2BitNv = 2 + N4x4BitNv = 4 + N8x8BitNv = 8 + VkOpticalFlowUsageFlagBitsNV* {.size: sizeof(int32).} = enum + UnknownNv = 0 + InputBitNv = 1 + OutputBitNv = 2 + HintBitNv = 4 + CostBitNv = 8 + GlobalFlowBitNv = 16 + VkOpticalFlowPerformanceLevelNV* {.size: sizeof(int32).} = enum + UnknownNv = 0 + SlowNv = 1 + MediumNv = 2 + FastNv = 3 + VkOpticalFlowSessionBindingPointNV* {.size: sizeof(int32).} = enum + UnknownNv = 0 + InputNv = 1 + ReferenceNv = 2 + HintNv = 3 + FlowVectorNv = 4 + BackwardFlowVectorNv = 5 + CostNv = 6 + BackwardCostNv = 7 + GlobalFlowNv = 8 + VkOpticalFlowSessionCreateFlagBitsNV* {.size: sizeof(int32).} = enum + EnableHintBitNv = 1 + EnableCostBitNv = 2 + EnableGlobalFlowBitNv = 4 + AllowRegionsBitNv = 8 + BothDirectionsBitNv = 16 + VkOpticalFlowExecuteFlagBitsNV* {.size: sizeof(int32).} = enum + DisableTemporalHintsBitNv = 1 + VkMicromapTypeEXT* {.size: sizeof(int32).} = enum + OpacityMicromapExt = 0 + VkBuildMicromapFlagBitsEXT* {.size: sizeof(int32).} = enum + PreferFastTraceBitExt = 1 + PreferFastBuildBitExt = 2 + AllowCompactionBitExt = 4 + VkMicromapCreateFlagBitsEXT* {.size: sizeof(int32).} = enum + DeviceAddressCaptureReplayBitExt = 1 + VkCopyMicromapModeEXT* {.size: sizeof(int32).} = enum + CloneExt = 0 + SerializeExt = 1 + DeserializeExt = 2 + CompactExt = 3 + VkBuildMicromapModeEXT* {.size: sizeof(int32).} = enum + BuildExt = 0 + VkOpacityMicromapFormatEXT* {.size: sizeof(int32).} = enum + N2StateExt = 1 + N4StateExt = 2 + VkOpacityMicromapSpecialIndexEXT* {.size: sizeof(int32).} = enum + FullyUnknownOpaqueExt = -4 + FullyUnknownTransparentExt = -3 + FullyOpaqueExt = -2 + FullyTransparentExt = -1 + VkDepthBiasRepresentationEXT* {.size: sizeof(int32).} = enum + LeastRepresentableValueFormatExt = 0 + LeastRepresentableValueForceUnormExt = 1 + FloatExt = 2 + VkDeviceFaultAddressTypeEXT* {.size: sizeof(int32).} = enum + NoneExt = 0 + ReadInvalidExt = 1 + WriteInvalidExt = 2 + ExecuteInvalidExt = 3 + InstructionPointerUnknownExt = 4 + InstructionPointerInvalidExt = 5 + InstructionPointerFaultExt = 6 + VkDeviceFaultVendorBinaryHeaderVersionEXT* {.size: sizeof(int32).} = enum + OneExt = 1 + VkDisplacementMicromapFormatNV* {.size: sizeof(int32).} = enum + N64Triangles64BytesNv = 1 + N256Triangles128BytesNv = 2 + N1024Triangles128BytesNv = 3 + VkShaderCreateFlagBitsEXT* {.size: sizeof(int32).} = enum + LinkStageBitExt = 1 + VkShaderCodeTypeEXT* {.size: sizeof(int32).} = enum + BinaryExt = 0 + SpirvExt = 1 + VkScopeKHR* {.size: sizeof(int32).} = enum + DeviceKhr = 1 + WorkgroupKhr = 2 + SubgroupKhr = 3 + QueueFamilyKhr = 5 + VkComponentTypeKHR* {.size: sizeof(int32).} = enum + Float16Khr = 0 + Float32Khr = 1 + Float64Khr = 2 + Sint8Khr = 3 + Sint16Khr = 4 + Sint32Khr = 5 + Sint64Khr = 6 + Uint8Khr = 7 + Uint16Khr = 8 + Uint32Khr = 9 + Uint64Khr = 10 + VkCubicFilterWeightsQCOM* {.size: sizeof(int32).} = enum + VkCubicFilterWeightsCatmullRomQcom = 0 + VkCubicFilterWeightsZeroTangentCardinalQcom = 1 + VkCubicFilterWeightsBSplineQcom = 2 + VkCubicFilterWeightsMitchellNetravaliQcom = 3 + VkBlockMatchWindowCompareModeQCOM* {.size: sizeof(int32).} = enum + VkBlockMatchWindowCompareModeMinQcom = 0 + VkBlockMatchWindowCompareModeMaxQcom = 1 + VkLayeredDriverUnderlyingApiMSFT* {.size: sizeof(int32).} = enum + VkLayeredDriverUnderlyingApiNoneMsft = 0 + VkLayeredDriverUnderlyingApiD3d12Msft = 1 + VkLatencyMarkerNV* {.size: sizeof(int32).} = enum + SimulationStartNv = 0 + SimulationEndNv = 1 + RendersubmitStartNv = 2 + RendersubmitEndNv = 3 + PresentStartNv = 4 + PresentEndNv = 5 + InputSampleNv = 6 + TriggerFlashNv = 7 + OutOfBandRendersubmitStartNv = 8 + OutOfBandRendersubmitEndNv = 9 + OutOfBandPresentStartNv = 10 + OutOfBandPresentEndNv = 11 + VkOutOfBandQueueTypeNV* {.size: sizeof(int32).} = enum + RenderNv = 0 + PresentNv = 1 # Types @@ -2068,6 +2068,7 @@ type VkVideoSessionKHR* = distinct VkNonDispatchableHandle VkVideoSessionParametersKHR* = distinct VkNonDispatchableHandle VkSemaphoreSciSyncPoolNV* = distinct VkNonDispatchableHandle + VkPrivateDataSlotCreateFlagBitsEXT* = VkPrivateDataSlotCreateFlagBits VkDescriptorUpdateTemplateTypeKHR* = VkDescriptorUpdateTemplateType VkPointClippingBehaviorKHR* = VkPointClippingBehavior VkQueueGlobalPriorityEXT* = VkQueueGlobalPriorityKHR @@ -10463,7 +10464,7 @@ proc newVkLayerProperties*(layerName: array[VK_MAX_EXTENSION_NAME_SIZE, char], s result.implementationVersion = implementationVersion result.description = description -proc newVkApplicationInfo*(sType: VkStructureType = VkStructureTypeApplicationInfo, pNext: pointer = nil, pApplicationName: cstring, applicationVersion: uint32, pEngineName: cstring, engineVersion: uint32, apiVersion: uint32): VkApplicationInfo = +proc newVkApplicationInfo*(sType: VkStructureType, pNext: pointer = nil, pApplicationName: cstring, applicationVersion: uint32, pEngineName: cstring, engineVersion: uint32, apiVersion: uint32): VkApplicationInfo = result.sType = sType result.pNext = pNext result.pApplicationName = pApplicationName @@ -10480,7 +10481,7 @@ proc newVkAllocationCallbacks*(pUserData: pointer = nil, pfnAllocation: PFN_vkAl result.pfnInternalAllocation = pfnInternalAllocation result.pfnInternalFree = pfnInternalFree -proc newVkDeviceQueueCreateInfo*(sType: VkStructureType = VkStructureTypeDeviceQueueCreateInfo, pNext: pointer = nil, flags: VkDeviceQueueCreateFlags = 0.VkDeviceQueueCreateFlags, queueFamilyIndex: uint32, queueCount: uint32, pQueuePriorities: ptr float32): VkDeviceQueueCreateInfo = +proc newVkDeviceQueueCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkDeviceQueueCreateFlags = 0.VkDeviceQueueCreateFlags, queueFamilyIndex: uint32, queueCount: uint32, pQueuePriorities: ptr float32): VkDeviceQueueCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -10488,7 +10489,7 @@ proc newVkDeviceQueueCreateInfo*(sType: VkStructureType = VkStructureTypeDeviceQ result.queueCount = queueCount result.pQueuePriorities = pQueuePriorities -proc newVkDeviceCreateInfo*(sType: VkStructureType = VkStructureTypeDeviceCreateInfo, pNext: pointer = nil, flags: VkDeviceCreateFlags = 0.VkDeviceCreateFlags, queueCreateInfoCount: uint32, pQueueCreateInfos: ptr VkDeviceQueueCreateInfo, enabledLayerCount: uint32, ppEnabledLayerNames: cstringArray, enabledExtensionCount: uint32, ppEnabledExtensionNames: cstringArray, pEnabledFeatures: ptr VkPhysicalDeviceFeatures): VkDeviceCreateInfo = +proc newVkDeviceCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkDeviceCreateFlags = 0.VkDeviceCreateFlags, queueCreateInfoCount: uint32, pQueueCreateInfos: ptr VkDeviceQueueCreateInfo, enabledLayerCount: uint32, ppEnabledLayerNames: cstringArray, enabledExtensionCount: uint32, ppEnabledExtensionNames: cstringArray, pEnabledFeatures: ptr VkPhysicalDeviceFeatures): VkDeviceCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -10500,7 +10501,7 @@ proc newVkDeviceCreateInfo*(sType: VkStructureType = VkStructureTypeDeviceCreate result.ppEnabledExtensionNames = ppEnabledExtensionNames result.pEnabledFeatures = pEnabledFeatures -proc newVkInstanceCreateInfo*(sType: VkStructureType = VkStructureTypeInstanceCreateInfo, pNext: pointer = nil, flags: VkInstanceCreateFlags = 0.VkInstanceCreateFlags, pApplicationInfo: ptr VkApplicationInfo, enabledLayerCount: uint32, ppEnabledLayerNames: cstringArray, enabledExtensionCount: uint32, ppEnabledExtensionNames: cstringArray): VkInstanceCreateInfo = +proc newVkInstanceCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkInstanceCreateFlags = 0.VkInstanceCreateFlags, pApplicationInfo: ptr VkApplicationInfo, enabledLayerCount: uint32, ppEnabledLayerNames: cstringArray, enabledExtensionCount: uint32, ppEnabledExtensionNames: cstringArray): VkInstanceCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -10522,7 +10523,7 @@ proc newVkPhysicalDeviceMemoryProperties*(memoryTypeCount: uint32, memoryTypes: result.memoryHeapCount = memoryHeapCount result.memoryHeaps = memoryHeaps -proc newVkMemoryAllocateInfo*(sType: VkStructureType = VkStructureTypeMemoryAllocateInfo, pNext: pointer = nil, allocationSize: VkDeviceSize, memoryTypeIndex: uint32): VkMemoryAllocateInfo = +proc newVkMemoryAllocateInfo*(sType: VkStructureType, pNext: pointer = nil, allocationSize: VkDeviceSize, memoryTypeIndex: uint32): VkMemoryAllocateInfo = result.sType = sType result.pNext = pNext result.allocationSize = allocationSize @@ -10553,7 +10554,7 @@ proc newVkMemoryHeap*(size: VkDeviceSize, flags: VkMemoryHeapFlags = 0.VkMemoryH result.size = size result.flags = flags -proc newVkMappedMemoryRange*(sType: VkStructureType = VkStructureTypeMappedMemoryRange, pNext: pointer = nil, memory: VkDeviceMemory, offset: VkDeviceSize, size: VkDeviceSize): VkMappedMemoryRange = +proc newVkMappedMemoryRange*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory, offset: VkDeviceSize, size: VkDeviceSize): VkMappedMemoryRange = result.sType = sType result.pNext = pNext result.memory = memory @@ -10582,7 +10583,7 @@ proc newVkDescriptorImageInfo*(sampler: VkSampler, imageView: VkImageView, image result.imageView = imageView result.imageLayout = imageLayout -proc newVkWriteDescriptorSet*(sType: VkStructureType = VkStructureTypeWriteDescriptorSet, pNext: pointer = nil, dstSet: VkDescriptorSet, dstBinding: uint32, dstArrayElement: uint32, descriptorCount: uint32, descriptorType: VkDescriptorType, pImageInfo: ptr VkDescriptorImageInfo, pBufferInfo: ptr ptr VkDescriptorBufferInfo, pTexelBufferView: ptr VkBufferView): VkWriteDescriptorSet = +proc newVkWriteDescriptorSet*(sType: VkStructureType, pNext: pointer = nil, dstSet: VkDescriptorSet, dstBinding: uint32, dstArrayElement: uint32, descriptorCount: uint32, descriptorType: VkDescriptorType, pImageInfo: ptr VkDescriptorImageInfo, pBufferInfo: ptr ptr VkDescriptorBufferInfo, pTexelBufferView: ptr VkBufferView): VkWriteDescriptorSet = result.sType = sType result.pNext = pNext result.dstSet = dstSet @@ -10594,7 +10595,7 @@ proc newVkWriteDescriptorSet*(sType: VkStructureType = VkStructureTypeWriteDescr result.pBufferInfo = pBufferInfo result.pTexelBufferView = pTexelBufferView -proc newVkCopyDescriptorSet*(sType: VkStructureType = VkStructureTypeCopyDescriptorSet, pNext: pointer = nil, srcSet: VkDescriptorSet, srcBinding: uint32, srcArrayElement: uint32, dstSet: VkDescriptorSet, dstBinding: uint32, dstArrayElement: uint32, descriptorCount: uint32): VkCopyDescriptorSet = +proc newVkCopyDescriptorSet*(sType: VkStructureType, pNext: pointer = nil, srcSet: VkDescriptorSet, srcBinding: uint32, srcArrayElement: uint32, dstSet: VkDescriptorSet, dstBinding: uint32, dstArrayElement: uint32, descriptorCount: uint32): VkCopyDescriptorSet = result.sType = sType result.pNext = pNext result.srcSet = srcSet @@ -10610,7 +10611,7 @@ proc newVkBufferUsageFlags2CreateInfoKHR*(sType: VkStructureType, pNext: pointer result.pNext = pNext result.usage = usage -proc newVkBufferCreateInfo*(sType: VkStructureType = VkStructureTypeBufferCreateInfo, pNext: pointer = nil, flags: VkBufferCreateFlags = 0.VkBufferCreateFlags, size: VkDeviceSize, usage: VkBufferUsageFlags, sharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32): VkBufferCreateInfo = +proc newVkBufferCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkBufferCreateFlags = 0.VkBufferCreateFlags, size: VkDeviceSize, usage: VkBufferUsageFlags, sharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32): VkBufferCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -10620,7 +10621,7 @@ proc newVkBufferCreateInfo*(sType: VkStructureType = VkStructureTypeBufferCreate result.queueFamilyIndexCount = queueFamilyIndexCount result.pQueueFamilyIndices = pQueueFamilyIndices -proc newVkBufferViewCreateInfo*(sType: VkStructureType = VkStructureTypeBufferViewCreateInfo, pNext: pointer = nil, flags: VkBufferViewCreateFlags = 0.VkBufferViewCreateFlags, buffer: VkBuffer, format: VkFormat, offset: VkDeviceSize, range: VkDeviceSize): VkBufferViewCreateInfo = +proc newVkBufferViewCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkBufferViewCreateFlags = 0.VkBufferViewCreateFlags, buffer: VkBuffer, format: VkFormat, offset: VkDeviceSize, range: VkDeviceSize): VkBufferViewCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -10647,13 +10648,13 @@ proc newVkImageSubresourceRange*(aspectMask: VkImageAspectFlags, baseMipLevel: u result.baseArrayLayer = baseArrayLayer result.layerCount = layerCount -proc newVkMemoryBarrier*(sType: VkStructureType = VkStructureTypeMemoryBarrier, pNext: pointer = nil, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags): VkMemoryBarrier = +proc newVkMemoryBarrier*(sType: VkStructureType, pNext: pointer = nil, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags): VkMemoryBarrier = result.sType = sType result.pNext = pNext result.srcAccessMask = srcAccessMask result.dstAccessMask = dstAccessMask -proc newVkBufferMemoryBarrier*(sType: VkStructureType = VkStructureTypeBufferMemoryBarrier, pNext: pointer = nil, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags, srcQueueFamilyIndex: uint32, dstQueueFamilyIndex: uint32, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize): VkBufferMemoryBarrier = +proc newVkBufferMemoryBarrier*(sType: VkStructureType, pNext: pointer = nil, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags, srcQueueFamilyIndex: uint32, dstQueueFamilyIndex: uint32, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize): VkBufferMemoryBarrier = result.sType = sType result.pNext = pNext result.srcAccessMask = srcAccessMask @@ -10664,7 +10665,7 @@ proc newVkBufferMemoryBarrier*(sType: VkStructureType = VkStructureTypeBufferMem result.offset = offset result.size = size -proc newVkImageMemoryBarrier*(sType: VkStructureType = VkStructureTypeImageMemoryBarrier, pNext: pointer = nil, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags, oldLayout: VkImageLayout, newLayout: VkImageLayout, srcQueueFamilyIndex: uint32, dstQueueFamilyIndex: uint32, image: VkImage, subresourceRange: VkImageSubresourceRange): VkImageMemoryBarrier = +proc newVkImageMemoryBarrier*(sType: VkStructureType, pNext: pointer = nil, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags, oldLayout: VkImageLayout, newLayout: VkImageLayout, srcQueueFamilyIndex: uint32, dstQueueFamilyIndex: uint32, image: VkImage, subresourceRange: VkImageSubresourceRange): VkImageMemoryBarrier = result.sType = sType result.pNext = pNext result.srcAccessMask = srcAccessMask @@ -10676,7 +10677,7 @@ proc newVkImageMemoryBarrier*(sType: VkStructureType = VkStructureTypeImageMemor result.image = image result.subresourceRange = subresourceRange -proc newVkImageCreateInfo*(sType: VkStructureType = VkStructureTypeImageCreateInfo, pNext: pointer = nil, flags: VkImageCreateFlags = 0.VkImageCreateFlags, imageType: VkImageType, format: VkFormat, extent: VkExtent3D, mipLevels: uint32, arrayLayers: uint32, samples: VkSampleCountFlagBits, tiling: VkImageTiling, usage: VkImageUsageFlags, sharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32, initialLayout: VkImageLayout): VkImageCreateInfo = +proc newVkImageCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkImageCreateFlags = 0.VkImageCreateFlags, imageType: VkImageType, format: VkFormat, extent: VkExtent3D, mipLevels: uint32, arrayLayers: uint32, samples: VkSampleCountFlagBits, tiling: VkImageTiling, usage: VkImageUsageFlags, sharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32, initialLayout: VkImageLayout): VkImageCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -10700,7 +10701,7 @@ proc newVkSubresourceLayout*(offset: VkDeviceSize, size: VkDeviceSize, rowPitch: result.arrayPitch = arrayPitch result.depthPitch = depthPitch -proc newVkImageViewCreateInfo*(sType: VkStructureType = VkStructureTypeImageViewCreateInfo, pNext: pointer = nil, flags: VkImageViewCreateFlags = 0.VkImageViewCreateFlags, image: VkImage, viewType: VkImageViewType, format: VkFormat, components: VkComponentMapping, subresourceRange: VkImageSubresourceRange): VkImageViewCreateInfo = +proc newVkImageViewCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkImageViewCreateFlags = 0.VkImageViewCreateFlags, image: VkImage, viewType: VkImageViewType, format: VkFormat, components: VkComponentMapping, subresourceRange: VkImageSubresourceRange): VkImageViewCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -10745,7 +10746,7 @@ proc newVkSparseImageMemoryBindInfo*(image: VkImage, bindCount: uint32, pBinds: result.bindCount = bindCount result.pBinds = pBinds -proc newVkBindSparseInfo*(sType: VkStructureType = VkStructureTypeBindSparseInfo, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, bufferBindCount: uint32, pBufferBinds: ptr VkSparseBufferMemoryBindInfo, imageOpaqueBindCount: uint32, pImageOpaqueBinds: ptr VkSparseImageOpaqueMemoryBindInfo, imageBindCount: uint32, pImageBinds: ptr VkSparseImageMemoryBindInfo, signalSemaphoreCount: uint32, pSignalSemaphores: ptr VkSemaphore): VkBindSparseInfo = +proc newVkBindSparseInfo*(sType: VkStructureType, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, bufferBindCount: uint32, pBufferBinds: ptr VkSparseBufferMemoryBindInfo, imageOpaqueBindCount: uint32, pImageOpaqueBinds: ptr VkSparseImageOpaqueMemoryBindInfo, imageBindCount: uint32, pImageBinds: ptr VkSparseImageMemoryBindInfo, signalSemaphoreCount: uint32, pSignalSemaphores: ptr VkSemaphore): VkBindSparseInfo = result.sType = sType result.pNext = pNext result.waitSemaphoreCount = waitSemaphoreCount @@ -10800,7 +10801,7 @@ proc newVkImageResolve*(srcSubresource: VkImageSubresourceLayers, srcOffset: VkO result.dstOffset = dstOffset result.extent = extent -proc newVkShaderModuleCreateInfo*(sType: VkStructureType = VkStructureTypeShaderModuleCreateInfo, pNext: pointer = nil, flags: VkShaderModuleCreateFlags = 0.VkShaderModuleCreateFlags, codeSize: uint, pCode: ptr uint32): VkShaderModuleCreateInfo = +proc newVkShaderModuleCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkShaderModuleCreateFlags = 0.VkShaderModuleCreateFlags, codeSize: uint, pCode: ptr uint32): VkShaderModuleCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -10814,7 +10815,7 @@ proc newVkDescriptorSetLayoutBinding*(binding: uint32, descriptorType: VkDescrip result.stageFlags = stageFlags result.pImmutableSamplers = pImmutableSamplers -proc newVkDescriptorSetLayoutCreateInfo*(sType: VkStructureType = VkStructureTypeDescriptorSetLayoutCreateInfo, pNext: pointer = nil, flags: VkDescriptorSetLayoutCreateFlags = 0.VkDescriptorSetLayoutCreateFlags, bindingCount: uint32, pBindings: ptr VkDescriptorSetLayoutBinding): VkDescriptorSetLayoutCreateInfo = +proc newVkDescriptorSetLayoutCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkDescriptorSetLayoutCreateFlags = 0.VkDescriptorSetLayoutCreateFlags, bindingCount: uint32, pBindings: ptr VkDescriptorSetLayoutBinding): VkDescriptorSetLayoutCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -10825,7 +10826,7 @@ proc newVkDescriptorPoolSize*(`type`: VkDescriptorType, descriptorCount: uint32) result.`type` = `type` result.descriptorCount = descriptorCount -proc newVkDescriptorPoolCreateInfo*(sType: VkStructureType = VkStructureTypeDescriptorPoolCreateInfo, pNext: pointer = nil, flags: VkDescriptorPoolCreateFlags = 0.VkDescriptorPoolCreateFlags, maxSets: uint32, poolSizeCount: uint32, pPoolSizes: ptr VkDescriptorPoolSize): VkDescriptorPoolCreateInfo = +proc newVkDescriptorPoolCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkDescriptorPoolCreateFlags = 0.VkDescriptorPoolCreateFlags, maxSets: uint32, poolSizeCount: uint32, pPoolSizes: ptr VkDescriptorPoolSize): VkDescriptorPoolCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -10833,7 +10834,7 @@ proc newVkDescriptorPoolCreateInfo*(sType: VkStructureType = VkStructureTypeDesc result.poolSizeCount = poolSizeCount result.pPoolSizes = pPoolSizes -proc newVkDescriptorSetAllocateInfo*(sType: VkStructureType = VkStructureTypeDescriptorSetAllocateInfo, pNext: pointer = nil, descriptorPool: VkDescriptorPool, descriptorSetCount: uint32, pSetLayouts: ptr VkDescriptorSetLayout): VkDescriptorSetAllocateInfo = +proc newVkDescriptorSetAllocateInfo*(sType: VkStructureType, pNext: pointer = nil, descriptorPool: VkDescriptorPool, descriptorSetCount: uint32, pSetLayouts: ptr VkDescriptorSetLayout): VkDescriptorSetAllocateInfo = result.sType = sType result.pNext = pNext result.descriptorPool = descriptorPool @@ -10851,7 +10852,7 @@ proc newVkSpecializationInfo*(mapEntryCount: uint32, pMapEntries: ptr VkSpeciali result.dataSize = dataSize result.pData = pData -proc newVkPipelineShaderStageCreateInfo*(sType: VkStructureType = VkStructureTypePipelineShaderStageCreateInfo, pNext: pointer = nil, flags: VkPipelineShaderStageCreateFlags = 0.VkPipelineShaderStageCreateFlags, stage: VkShaderStageFlagBits, module: VkShaderModule, pName: cstring, pSpecializationInfo: ptr VkSpecializationInfo): VkPipelineShaderStageCreateInfo = +proc newVkPipelineShaderStageCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineShaderStageCreateFlags = 0.VkPipelineShaderStageCreateFlags, stage: VkShaderStageFlagBits, module: VkShaderModule, pName: cstring, pSpecializationInfo: ptr VkSpecializationInfo): VkPipelineShaderStageCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -10860,7 +10861,7 @@ proc newVkPipelineShaderStageCreateInfo*(sType: VkStructureType = VkStructureTyp result.pName = pName result.pSpecializationInfo = pSpecializationInfo -proc newVkComputePipelineCreateInfo*(sType: VkStructureType = VkStructureTypeComputePipelineCreateInfo, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stage: VkPipelineShaderStageCreateInfo, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkComputePipelineCreateInfo = +proc newVkComputePipelineCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stage: VkPipelineShaderStageCreateInfo, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkComputePipelineCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -10892,7 +10893,7 @@ proc newVkVertexInputAttributeDescription*(location: uint32, binding: uint32, fo result.format = format result.offset = offset -proc newVkPipelineVertexInputStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineVertexInputStateCreateInfo, pNext: pointer = nil, flags: VkPipelineVertexInputStateCreateFlags = 0.VkPipelineVertexInputStateCreateFlags, vertexBindingDescriptionCount: uint32, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription, vertexAttributeDescriptionCount: uint32, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription): VkPipelineVertexInputStateCreateInfo = +proc newVkPipelineVertexInputStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineVertexInputStateCreateFlags = 0.VkPipelineVertexInputStateCreateFlags, vertexBindingDescriptionCount: uint32, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription, vertexAttributeDescriptionCount: uint32, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription): VkPipelineVertexInputStateCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -10901,20 +10902,20 @@ proc newVkPipelineVertexInputStateCreateInfo*(sType: VkStructureType = VkStructu result.vertexAttributeDescriptionCount = vertexAttributeDescriptionCount result.pVertexAttributeDescriptions = pVertexAttributeDescriptions -proc newVkPipelineInputAssemblyStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineInputAssemblyStateCreateInfo, pNext: pointer = nil, flags: VkPipelineInputAssemblyStateCreateFlags = 0.VkPipelineInputAssemblyStateCreateFlags, topology: VkPrimitiveTopology, primitiveRestartEnable: VkBool32): VkPipelineInputAssemblyStateCreateInfo = +proc newVkPipelineInputAssemblyStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineInputAssemblyStateCreateFlags = 0.VkPipelineInputAssemblyStateCreateFlags, topology: VkPrimitiveTopology, primitiveRestartEnable: VkBool32): VkPipelineInputAssemblyStateCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags result.topology = topology result.primitiveRestartEnable = primitiveRestartEnable -proc newVkPipelineTessellationStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineTessellationStateCreateInfo, pNext: pointer = nil, flags: VkPipelineTessellationStateCreateFlags = 0.VkPipelineTessellationStateCreateFlags, patchControlPoints: uint32): VkPipelineTessellationStateCreateInfo = +proc newVkPipelineTessellationStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineTessellationStateCreateFlags = 0.VkPipelineTessellationStateCreateFlags, patchControlPoints: uint32): VkPipelineTessellationStateCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags result.patchControlPoints = patchControlPoints -proc newVkPipelineViewportStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineViewportStateCreateInfo, pNext: pointer = nil, flags: VkPipelineViewportStateCreateFlags = 0.VkPipelineViewportStateCreateFlags, viewportCount: uint32, pViewports: ptr VkViewport, scissorCount: uint32, pScissors: ptr VkRect2D): VkPipelineViewportStateCreateInfo = +proc newVkPipelineViewportStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineViewportStateCreateFlags = 0.VkPipelineViewportStateCreateFlags, viewportCount: uint32, pViewports: ptr VkViewport, scissorCount: uint32, pScissors: ptr VkRect2D): VkPipelineViewportStateCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -10923,7 +10924,7 @@ proc newVkPipelineViewportStateCreateInfo*(sType: VkStructureType = VkStructureT result.scissorCount = scissorCount result.pScissors = pScissors -proc newVkPipelineRasterizationStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineRasterizationStateCreateInfo, pNext: pointer = nil, flags: VkPipelineRasterizationStateCreateFlags = 0.VkPipelineRasterizationStateCreateFlags, depthClampEnable: VkBool32, rasterizerDiscardEnable: VkBool32, polygonMode: VkPolygonMode, cullMode: VkCullModeFlags, frontFace: VkFrontFace, depthBiasEnable: VkBool32, depthBiasConstantFactor: float32, depthBiasClamp: float32, depthBiasSlopeFactor: float32, lineWidth: float32): VkPipelineRasterizationStateCreateInfo = +proc newVkPipelineRasterizationStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineRasterizationStateCreateFlags = 0.VkPipelineRasterizationStateCreateFlags, depthClampEnable: VkBool32, rasterizerDiscardEnable: VkBool32, polygonMode: VkPolygonMode, cullMode: VkCullModeFlags, frontFace: VkFrontFace, depthBiasEnable: VkBool32, depthBiasConstantFactor: float32, depthBiasClamp: float32, depthBiasSlopeFactor: float32, lineWidth: float32): VkPipelineRasterizationStateCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -10938,7 +10939,7 @@ proc newVkPipelineRasterizationStateCreateInfo*(sType: VkStructureType = VkStruc result.depthBiasSlopeFactor = depthBiasSlopeFactor result.lineWidth = lineWidth -proc newVkPipelineMultisampleStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineMultisampleStateCreateInfo, pNext: pointer = nil, flags: VkPipelineMultisampleStateCreateFlags = 0.VkPipelineMultisampleStateCreateFlags, rasterizationSamples: VkSampleCountFlagBits, sampleShadingEnable: VkBool32, minSampleShading: float32, pSampleMask: ptr VkSampleMask, alphaToCoverageEnable: VkBool32, alphaToOneEnable: VkBool32): VkPipelineMultisampleStateCreateInfo = +proc newVkPipelineMultisampleStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineMultisampleStateCreateFlags = 0.VkPipelineMultisampleStateCreateFlags, rasterizationSamples: VkSampleCountFlagBits, sampleShadingEnable: VkBool32, minSampleShading: float32, pSampleMask: ptr VkSampleMask, alphaToCoverageEnable: VkBool32, alphaToOneEnable: VkBool32): VkPipelineMultisampleStateCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -10959,7 +10960,7 @@ proc newVkPipelineColorBlendAttachmentState*(blendEnable: VkBool32, srcColorBlen result.alphaBlendOp = alphaBlendOp result.colorWriteMask = colorWriteMask -proc newVkPipelineColorBlendStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineColorBlendStateCreateInfo, pNext: pointer = nil, flags: VkPipelineColorBlendStateCreateFlags = 0.VkPipelineColorBlendStateCreateFlags, logicOpEnable: VkBool32, logicOp: VkLogicOp, attachmentCount: uint32, pAttachments: ptr VkPipelineColorBlendAttachmentState, blendConstants: array[4, float32]): VkPipelineColorBlendStateCreateInfo = +proc newVkPipelineColorBlendStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineColorBlendStateCreateFlags = 0.VkPipelineColorBlendStateCreateFlags, logicOpEnable: VkBool32, logicOp: VkLogicOp, attachmentCount: uint32, pAttachments: ptr VkPipelineColorBlendAttachmentState, blendConstants: array[4, float32]): VkPipelineColorBlendStateCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -10969,7 +10970,7 @@ proc newVkPipelineColorBlendStateCreateInfo*(sType: VkStructureType = VkStructur result.pAttachments = pAttachments result.blendConstants = blendConstants -proc newVkPipelineDynamicStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineDynamicStateCreateInfo, pNext: pointer = nil, flags: VkPipelineDynamicStateCreateFlags = 0.VkPipelineDynamicStateCreateFlags, dynamicStateCount: uint32, pDynamicStates: ptr VkDynamicState): VkPipelineDynamicStateCreateInfo = +proc newVkPipelineDynamicStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineDynamicStateCreateFlags = 0.VkPipelineDynamicStateCreateFlags, dynamicStateCount: uint32, pDynamicStates: ptr VkDynamicState): VkPipelineDynamicStateCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -10985,7 +10986,7 @@ proc newVkStencilOpState*(failOp: VkStencilOp, passOp: VkStencilOp, depthFailOp: result.writeMask = writeMask result.reference = reference -proc newVkPipelineDepthStencilStateCreateInfo*(sType: VkStructureType = VkStructureTypePipelineDepthStencilStateCreateInfo, pNext: pointer = nil, flags: VkPipelineDepthStencilStateCreateFlags = 0.VkPipelineDepthStencilStateCreateFlags, depthTestEnable: VkBool32, depthWriteEnable: VkBool32, depthCompareOp: VkCompareOp, depthBoundsTestEnable: VkBool32, stencilTestEnable: VkBool32, front: VkStencilOpState, back: VkStencilOpState, minDepthBounds: float32, maxDepthBounds: float32): VkPipelineDepthStencilStateCreateInfo = +proc newVkPipelineDepthStencilStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineDepthStencilStateCreateFlags = 0.VkPipelineDepthStencilStateCreateFlags, depthTestEnable: VkBool32, depthWriteEnable: VkBool32, depthCompareOp: VkCompareOp, depthBoundsTestEnable: VkBool32, stencilTestEnable: VkBool32, front: VkStencilOpState, back: VkStencilOpState, minDepthBounds: float32, maxDepthBounds: float32): VkPipelineDepthStencilStateCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -10999,7 +11000,7 @@ proc newVkPipelineDepthStencilStateCreateInfo*(sType: VkStructureType = VkStruct result.minDepthBounds = minDepthBounds result.maxDepthBounds = maxDepthBounds -proc newVkGraphicsPipelineCreateInfo*(sType: VkStructureType = VkStructureTypeGraphicsPipelineCreateInfo, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, pVertexInputState: ptr VkPipelineVertexInputStateCreateInfo, pInputAssemblyState: ptr VkPipelineInputAssemblyStateCreateInfo, pTessellationState: ptr VkPipelineTessellationStateCreateInfo, pViewportState: ptr VkPipelineViewportStateCreateInfo, pRasterizationState: ptr VkPipelineRasterizationStateCreateInfo, pMultisampleState: ptr VkPipelineMultisampleStateCreateInfo, pDepthStencilState: ptr VkPipelineDepthStencilStateCreateInfo, pColorBlendState: ptr VkPipelineColorBlendStateCreateInfo, pDynamicState: ptr VkPipelineDynamicStateCreateInfo, layout: VkPipelineLayout, renderPass: VkRenderPass, subpass: uint32, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkGraphicsPipelineCreateInfo = +proc newVkGraphicsPipelineCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, pVertexInputState: ptr VkPipelineVertexInputStateCreateInfo, pInputAssemblyState: ptr VkPipelineInputAssemblyStateCreateInfo, pTessellationState: ptr VkPipelineTessellationStateCreateInfo, pViewportState: ptr VkPipelineViewportStateCreateInfo, pRasterizationState: ptr VkPipelineRasterizationStateCreateInfo, pMultisampleState: ptr VkPipelineMultisampleStateCreateInfo, pDepthStencilState: ptr VkPipelineDepthStencilStateCreateInfo, pColorBlendState: ptr VkPipelineColorBlendStateCreateInfo, pDynamicState: ptr VkPipelineDynamicStateCreateInfo, layout: VkPipelineLayout, renderPass: VkRenderPass, subpass: uint32, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkGraphicsPipelineCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -11020,7 +11021,7 @@ proc newVkGraphicsPipelineCreateInfo*(sType: VkStructureType = VkStructureTypeGr result.basePipelineHandle = basePipelineHandle result.basePipelineIndex = basePipelineIndex -proc newVkPipelineCacheCreateInfo*(sType: VkStructureType = VkStructureTypePipelineCacheCreateInfo, pNext: pointer = nil, flags: VkPipelineCacheCreateFlags = 0.VkPipelineCacheCreateFlags, initialDataSize: uint, pInitialData: pointer = nil): VkPipelineCacheCreateInfo = +proc newVkPipelineCacheCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCacheCreateFlags = 0.VkPipelineCacheCreateFlags, initialDataSize: uint, pInitialData: pointer = nil): VkPipelineCacheCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -11060,7 +11061,7 @@ proc newVkPushConstantRange*(stageFlags: VkShaderStageFlags, offset: uint32, siz result.offset = offset result.size = size -proc newVkPipelineLayoutCreateInfo*(sType: VkStructureType = VkStructureTypePipelineLayoutCreateInfo, pNext: pointer = nil, flags: VkPipelineLayoutCreateFlags = 0.VkPipelineLayoutCreateFlags, setLayoutCount: uint32, pSetLayouts: ptr VkDescriptorSetLayout, pushConstantRangeCount: uint32, pPushConstantRanges: ptr VkPushConstantRange): VkPipelineLayoutCreateInfo = +proc newVkPipelineLayoutCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineLayoutCreateFlags = 0.VkPipelineLayoutCreateFlags, setLayoutCount: uint32, pSetLayouts: ptr VkDescriptorSetLayout, pushConstantRangeCount: uint32, pPushConstantRanges: ptr VkPushConstantRange): VkPipelineLayoutCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -11069,7 +11070,7 @@ proc newVkPipelineLayoutCreateInfo*(sType: VkStructureType = VkStructureTypePipe result.pushConstantRangeCount = pushConstantRangeCount result.pPushConstantRanges = pPushConstantRanges -proc newVkSamplerCreateInfo*(sType: VkStructureType = VkStructureTypeSamplerCreateInfo, pNext: pointer = nil, flags: VkSamplerCreateFlags = 0.VkSamplerCreateFlags, magFilter: VkFilter, minFilter: VkFilter, mipmapMode: VkSamplerMipmapMode, addressModeU: VkSamplerAddressMode, addressModeV: VkSamplerAddressMode, addressModeW: VkSamplerAddressMode, mipLodBias: float32, anisotropyEnable: VkBool32, maxAnisotropy: float32, compareEnable: VkBool32, compareOp: VkCompareOp, minLod: float32, maxLod: float32, borderColor: VkBorderColor, unnormalizedCoordinates: VkBool32): VkSamplerCreateInfo = +proc newVkSamplerCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkSamplerCreateFlags = 0.VkSamplerCreateFlags, magFilter: VkFilter, minFilter: VkFilter, mipmapMode: VkSamplerMipmapMode, addressModeU: VkSamplerAddressMode, addressModeV: VkSamplerAddressMode, addressModeW: VkSamplerAddressMode, mipLodBias: float32, anisotropyEnable: VkBool32, maxAnisotropy: float32, compareEnable: VkBool32, compareOp: VkCompareOp, minLod: float32, maxLod: float32, borderColor: VkBorderColor, unnormalizedCoordinates: VkBool32): VkSamplerCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -11089,20 +11090,20 @@ proc newVkSamplerCreateInfo*(sType: VkStructureType = VkStructureTypeSamplerCrea result.borderColor = borderColor result.unnormalizedCoordinates = unnormalizedCoordinates -proc newVkCommandPoolCreateInfo*(sType: VkStructureType = VkStructureTypeCommandPoolCreateInfo, pNext: pointer = nil, flags: VkCommandPoolCreateFlags = 0.VkCommandPoolCreateFlags, queueFamilyIndex: uint32): VkCommandPoolCreateInfo = +proc newVkCommandPoolCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkCommandPoolCreateFlags = 0.VkCommandPoolCreateFlags, queueFamilyIndex: uint32): VkCommandPoolCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags result.queueFamilyIndex = queueFamilyIndex -proc newVkCommandBufferAllocateInfo*(sType: VkStructureType = VkStructureTypeCommandBufferAllocateInfo, pNext: pointer = nil, commandPool: VkCommandPool, level: VkCommandBufferLevel, commandBufferCount: uint32): VkCommandBufferAllocateInfo = +proc newVkCommandBufferAllocateInfo*(sType: VkStructureType, pNext: pointer = nil, commandPool: VkCommandPool, level: VkCommandBufferLevel, commandBufferCount: uint32): VkCommandBufferAllocateInfo = result.sType = sType result.pNext = pNext result.commandPool = commandPool result.level = level result.commandBufferCount = commandBufferCount -proc newVkCommandBufferInheritanceInfo*(sType: VkStructureType = VkStructureTypeCommandBufferInheritanceInfo, pNext: pointer = nil, renderPass: VkRenderPass, subpass: uint32, framebuffer: VkFramebuffer, occlusionQueryEnable: VkBool32, queryFlags: VkQueryControlFlags, pipelineStatistics: VkQueryPipelineStatisticFlags): VkCommandBufferInheritanceInfo = +proc newVkCommandBufferInheritanceInfo*(sType: VkStructureType, pNext: pointer = nil, renderPass: VkRenderPass, subpass: uint32, framebuffer: VkFramebuffer, occlusionQueryEnable: VkBool32, queryFlags: VkQueryControlFlags, pipelineStatistics: VkQueryPipelineStatisticFlags): VkCommandBufferInheritanceInfo = result.sType = sType result.pNext = pNext result.renderPass = renderPass @@ -11112,13 +11113,13 @@ proc newVkCommandBufferInheritanceInfo*(sType: VkStructureType = VkStructureType result.queryFlags = queryFlags result.pipelineStatistics = pipelineStatistics -proc newVkCommandBufferBeginInfo*(sType: VkStructureType = VkStructureTypeCommandBufferBeginInfo, pNext: pointer = nil, flags: VkCommandBufferUsageFlags = 0.VkCommandBufferUsageFlags, pInheritanceInfo: ptr VkCommandBufferInheritanceInfo): VkCommandBufferBeginInfo = +proc newVkCommandBufferBeginInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkCommandBufferUsageFlags = 0.VkCommandBufferUsageFlags, pInheritanceInfo: ptr VkCommandBufferInheritanceInfo): VkCommandBufferBeginInfo = result.sType = sType result.pNext = pNext result.flags = flags result.pInheritanceInfo = pInheritanceInfo -proc newVkRenderPassBeginInfo*(sType: VkStructureType = VkStructureTypeRenderPassBeginInfo, pNext: pointer = nil, renderPass: VkRenderPass, framebuffer: VkFramebuffer, renderArea: VkRect2D, clearValueCount: uint32, pClearValues: ptr VkClearValue): VkRenderPassBeginInfo = +proc newVkRenderPassBeginInfo*(sType: VkStructureType, pNext: pointer = nil, renderPass: VkRenderPass, framebuffer: VkFramebuffer, renderArea: VkRect2D, clearValueCount: uint32, pClearValues: ptr VkClearValue): VkRenderPassBeginInfo = result.sType = sType result.pNext = pNext result.renderPass = renderPass @@ -11172,7 +11173,7 @@ proc newVkSubpassDependency*(srcSubpass: uint32, dstSubpass: uint32, srcStageMas result.dstAccessMask = dstAccessMask result.dependencyFlags = dependencyFlags -proc newVkRenderPassCreateInfo*(sType: VkStructureType = VkStructureTypeRenderPassCreateInfo, pNext: pointer = nil, flags: VkRenderPassCreateFlags = 0.VkRenderPassCreateFlags, attachmentCount: uint32, pAttachments: ptr VkAttachmentDescription, subpassCount: uint32, pSubpasses: ptr VkSubpassDescription, dependencyCount: uint32, pDependencies: ptr VkSubpassDependency): VkRenderPassCreateInfo = +proc newVkRenderPassCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkRenderPassCreateFlags = 0.VkRenderPassCreateFlags, attachmentCount: uint32, pAttachments: ptr VkAttachmentDescription, subpassCount: uint32, pSubpasses: ptr VkSubpassDescription, dependencyCount: uint32, pDependencies: ptr VkSubpassDependency): VkRenderPassCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -11183,12 +11184,12 @@ proc newVkRenderPassCreateInfo*(sType: VkStructureType = VkStructureTypeRenderPa result.dependencyCount = dependencyCount result.pDependencies = pDependencies -proc newVkEventCreateInfo*(sType: VkStructureType = VkStructureTypeEventCreateInfo, pNext: pointer = nil, flags: VkEventCreateFlags = 0.VkEventCreateFlags): VkEventCreateInfo = +proc newVkEventCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkEventCreateFlags = 0.VkEventCreateFlags): VkEventCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags -proc newVkFenceCreateInfo*(sType: VkStructureType = VkStructureTypeFenceCreateInfo, pNext: pointer = nil, flags: VkFenceCreateFlags = 0.VkFenceCreateFlags): VkFenceCreateInfo = +proc newVkFenceCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkFenceCreateFlags = 0.VkFenceCreateFlags): VkFenceCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -11365,12 +11366,12 @@ proc newVkPhysicalDeviceLimits*(maxImageDimension1D: uint32, maxImageDimension2D result.optimalBufferCopyRowPitchAlignment = optimalBufferCopyRowPitchAlignment result.nonCoherentAtomSize = nonCoherentAtomSize -proc newVkSemaphoreCreateInfo*(sType: VkStructureType = VkStructureTypeSemaphoreCreateInfo, pNext: pointer = nil, flags: VkSemaphoreCreateFlags = 0.VkSemaphoreCreateFlags): VkSemaphoreCreateInfo = +proc newVkSemaphoreCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkSemaphoreCreateFlags = 0.VkSemaphoreCreateFlags): VkSemaphoreCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags -proc newVkQueryPoolCreateInfo*(sType: VkStructureType = VkStructureTypeQueryPoolCreateInfo, pNext: pointer = nil, flags: VkQueryPoolCreateFlags = 0.VkQueryPoolCreateFlags, queryType: VkQueryType, queryCount: uint32, pipelineStatistics: VkQueryPipelineStatisticFlags): VkQueryPoolCreateInfo = +proc newVkQueryPoolCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkQueryPoolCreateFlags = 0.VkQueryPoolCreateFlags, queryType: VkQueryType, queryCount: uint32, pipelineStatistics: VkQueryPipelineStatisticFlags): VkQueryPoolCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -11378,7 +11379,7 @@ proc newVkQueryPoolCreateInfo*(sType: VkStructureType = VkStructureTypeQueryPool result.queryCount = queryCount result.pipelineStatistics = pipelineStatistics -proc newVkFramebufferCreateInfo*(sType: VkStructureType = VkStructureTypeFramebufferCreateInfo, pNext: pointer = nil, flags: VkFramebufferCreateFlags = 0.VkFramebufferCreateFlags, renderPass: VkRenderPass, attachmentCount: uint32, pAttachments: ptr VkImageView, width: uint32, height: uint32, layers: uint32): VkFramebufferCreateInfo = +proc newVkFramebufferCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkFramebufferCreateFlags = 0.VkFramebufferCreateFlags, renderPass: VkRenderPass, attachmentCount: uint32, pAttachments: ptr VkImageView, width: uint32, height: uint32, layers: uint32): VkFramebufferCreateInfo = result.sType = sType result.pNext = pNext result.flags = flags @@ -11416,7 +11417,7 @@ proc newVkMultiDrawIndexedInfoEXT*(firstIndex: uint32, indexCount: uint32, verte result.indexCount = indexCount result.vertexOffset = vertexOffset -proc newVkSubmitInfo*(sType: VkStructureType = VkStructureTypeSubmitInfo, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, pWaitDstStageMask: ptr VkPipelineStageFlags, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer, signalSemaphoreCount: uint32, pSignalSemaphores: ptr VkSemaphore): VkSubmitInfo = +proc newVkSubmitInfo*(sType: VkStructureType, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, pWaitDstStageMask: ptr VkPipelineStageFlags, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer, signalSemaphoreCount: uint32, pSignalSemaphores: ptr VkSemaphore): VkSubmitInfo = result.sType = sType result.pNext = pNext result.waitSemaphoreCount = waitSemaphoreCount diff --git a/tools/generator.nim b/tools/generator.nim index 6b2e42c..5e7487b 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -18,6 +18,25 @@ var vkProcs: seq[VkProc] var vkStructs: seq[VkStruct] var vkStructureTypes: seq[string] +proc camelCaseAscii*(s: string): string = + ## Converts snake_case to CamelCase + var L = s.len + while L > 0 and s[L-1] == '_': dec L + result = newStringOfCap(L) + var i = 0 + result.add s[i] + inc i + var flip = false + while i < L: + if s[i] == '_': + flip = true + else: + if flip: + result.add toUpperAscii(s[i]) + flip = false + else: result.add toLowerAscii(s[i]) + inc i + proc translateType(s: string): string = result = s result = result.multiReplace([ @@ -326,6 +345,14 @@ proc genEnums(node: XmlNode, output: var string) = if e.attr("api") == "vulkansc" or e.attr("deprecated") != "": continue var enumName = e.attr("name") + enumName = camelCaseAscii(enumName) + var tmp = name + for suf in ["KHR", "EXT", "NV", "INTEL", "AMD", "FlagBits", "FlagBits2"]: + tmp.removeSuffix(suf) + enumName.removeSuffix(suf) + enumName.removePrefix(tmp) + if enumName[0] in Digits: + enumName = "N" & enumName var enumValueStr = e.attr("value") if enumValueStr == "": if e.attr("bitpos") == "": @@ -342,14 +369,10 @@ proc genEnums(node: XmlNode, output: var string) = enumValue = enumValueStr.parseInt() if elements.hasKey(enumValue): continue - if enumName == "VK_PIPELINE_CACHE_HEADER_VERSION_ONE": - enumName = "VK_PIPELINE_CACHE_HEADER_VER_ONE" - elif enumName == "VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VERSION_ONE_EXT": - enumName = "VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VER_ONE_EXT" elements.add(enumValue, enumName) if elements.len == 0: continue - output.add(" {name}* {{.size: int32.sizeof.}} = enum\n".fmt) + output.add(" {name}* {{.size: sizeof(int32).}} = enum\n".fmt) elements.sort(system.cmp) for k, v in elements.pairs: if name == "VkStructureType": From f9f47abe9d4e7af66102d9c21d367dc981e26847 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Mon, 29 Apr 2024 19:34:15 +0300 Subject: [PATCH 14/57] stop the warnings --- src/vulkan.nim | 13370 ++++++++++++++++++++++++------------------ tools/generator.nim | 4 +- 2 files changed, 7752 insertions(+), 5622 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 1d5a544..17f1188 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -10395,7753 +10395,9881 @@ type # Constructors proc newVkBaseOutStructure*(sType: VkStructureType, pNext: ptr VkBaseOutStructure): VkBaseOutStructure = - result.sType = sType - result.pNext = pNext + result = VkBaseOutStructure( + sType: sType, + pNext: pNext, + ) proc newVkBaseInStructure*(sType: VkStructureType, pNext: ptr VkBaseInStructure): VkBaseInStructure = - result.sType = sType - result.pNext = pNext + result = VkBaseInStructure( + sType: sType, + pNext: pNext, + ) proc newVkOffset2D*(x: int32, y: int32): VkOffset2D = - result.x = x - result.y = y + result = VkOffset2D( + x: x, + y: y, + ) proc newVkOffset3D*(x: int32, y: int32, z: int32): VkOffset3D = - result.x = x - result.y = y - result.z = z + result = VkOffset3D( + x: x, + y: y, + z: z, + ) proc newVkExtent2D*(width: uint32, height: uint32): VkExtent2D = - result.width = width - result.height = height + result = VkExtent2D( + width: width, + height: height, + ) proc newVkExtent3D*(width: uint32, height: uint32, depth: uint32): VkExtent3D = - result.width = width - result.height = height - result.depth = depth + result = VkExtent3D( + width: width, + height: height, + depth: depth, + ) proc newVkViewport*(x: float32, y: float32, width: float32, height: float32, minDepth: float32, maxDepth: float32): VkViewport = - result.x = x - result.y = y - result.width = width - result.height = height - result.minDepth = minDepth - result.maxDepth = maxDepth + result = VkViewport( + x: x, + y: y, + width: width, + height: height, + minDepth: minDepth, + maxDepth: maxDepth, + ) proc newVkRect2D*(offset: VkOffset2D, extent: VkExtent2D): VkRect2D = - result.offset = offset - result.extent = extent + result = VkRect2D( + offset: offset, + extent: extent, + ) proc newVkClearRect*(rect: VkRect2D, baseArrayLayer: uint32, layerCount: uint32): VkClearRect = - result.rect = rect - result.baseArrayLayer = baseArrayLayer - result.layerCount = layerCount + result = VkClearRect( + rect: rect, + baseArrayLayer: baseArrayLayer, + layerCount: layerCount, + ) proc newVkComponentMapping*(r: VkComponentSwizzle, g: VkComponentSwizzle, b: VkComponentSwizzle, a: VkComponentSwizzle): VkComponentMapping = - result.r = r - result.g = g - result.b = b - result.a = a + result = VkComponentMapping( + r: r, + g: g, + b: b, + a: a, + ) proc newVkPhysicalDeviceProperties*(apiVersion: uint32, driverVersion: uint32, vendorID: uint32, deviceID: uint32, deviceType: VkPhysicalDeviceType, deviceName: array[VK_MAX_PHYSICAL_DEVICE_NAME_SIZE, char], pipelineCacheUUID: array[VK_UUID_SIZE, uint8], limits: VkPhysicalDeviceLimits, sparseProperties: VkPhysicalDeviceSparseProperties): VkPhysicalDeviceProperties = - result.apiVersion = apiVersion - result.driverVersion = driverVersion - result.vendorID = vendorID - result.deviceID = deviceID - result.deviceType = deviceType - result.deviceName = deviceName - result.pipelineCacheUUID = pipelineCacheUUID - result.limits = limits - result.sparseProperties = sparseProperties + result = VkPhysicalDeviceProperties( + apiVersion: apiVersion, + driverVersion: driverVersion, + vendorID: vendorID, + deviceID: deviceID, + deviceType: deviceType, + deviceName: deviceName, + pipelineCacheUUID: pipelineCacheUUID, + limits: limits, + sparseProperties: sparseProperties, + ) proc newVkExtensionProperties*(extensionName: array[VK_MAX_EXTENSION_NAME_SIZE, char], specVersion: uint32): VkExtensionProperties = - result.extensionName = extensionName - result.specVersion = specVersion + result = VkExtensionProperties( + extensionName: extensionName, + specVersion: specVersion, + ) proc newVkLayerProperties*(layerName: array[VK_MAX_EXTENSION_NAME_SIZE, char], specVersion: uint32, implementationVersion: uint32, description: array[VK_MAX_DESCRIPTION_SIZE, char]): VkLayerProperties = - result.layerName = layerName - result.specVersion = specVersion - result.implementationVersion = implementationVersion - result.description = description + result = VkLayerProperties( + layerName: layerName, + specVersion: specVersion, + implementationVersion: implementationVersion, + description: description, + ) proc newVkApplicationInfo*(sType: VkStructureType, pNext: pointer = nil, pApplicationName: cstring, applicationVersion: uint32, pEngineName: cstring, engineVersion: uint32, apiVersion: uint32): VkApplicationInfo = - result.sType = sType - result.pNext = pNext - result.pApplicationName = pApplicationName - result.applicationVersion = applicationVersion - result.pEngineName = pEngineName - result.engineVersion = engineVersion - result.apiVersion = apiVersion + result = VkApplicationInfo( + sType: sType, + pNext: pNext, + pApplicationName: pApplicationName, + applicationVersion: applicationVersion, + pEngineName: pEngineName, + engineVersion: engineVersion, + apiVersion: apiVersion, + ) proc newVkAllocationCallbacks*(pUserData: pointer = nil, pfnAllocation: PFN_vkAllocationFunction, pfnReallocation: PFN_vkReallocationFunction, pfnFree: PFN_vkFreeFunction, pfnInternalAllocation: PFN_vkInternalAllocationNotification, pfnInternalFree: PFN_vkInternalFreeNotification): VkAllocationCallbacks = - result.pUserData = pUserData - result.pfnAllocation = pfnAllocation - result.pfnReallocation = pfnReallocation - result.pfnFree = pfnFree - result.pfnInternalAllocation = pfnInternalAllocation - result.pfnInternalFree = pfnInternalFree + result = VkAllocationCallbacks( + pUserData: pUserData, + pfnAllocation: pfnAllocation, + pfnReallocation: pfnReallocation, + pfnFree: pfnFree, + pfnInternalAllocation: pfnInternalAllocation, + pfnInternalFree: pfnInternalFree, + ) proc newVkDeviceQueueCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkDeviceQueueCreateFlags = 0.VkDeviceQueueCreateFlags, queueFamilyIndex: uint32, queueCount: uint32, pQueuePriorities: ptr float32): VkDeviceQueueCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.queueFamilyIndex = queueFamilyIndex - result.queueCount = queueCount - result.pQueuePriorities = pQueuePriorities + result = VkDeviceQueueCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + queueFamilyIndex: queueFamilyIndex, + queueCount: queueCount, + pQueuePriorities: pQueuePriorities, + ) proc newVkDeviceCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkDeviceCreateFlags = 0.VkDeviceCreateFlags, queueCreateInfoCount: uint32, pQueueCreateInfos: ptr VkDeviceQueueCreateInfo, enabledLayerCount: uint32, ppEnabledLayerNames: cstringArray, enabledExtensionCount: uint32, ppEnabledExtensionNames: cstringArray, pEnabledFeatures: ptr VkPhysicalDeviceFeatures): VkDeviceCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.queueCreateInfoCount = queueCreateInfoCount - result.pQueueCreateInfos = pQueueCreateInfos - result.enabledLayerCount = enabledLayerCount - result.ppEnabledLayerNames = ppEnabledLayerNames - result.enabledExtensionCount = enabledExtensionCount - result.ppEnabledExtensionNames = ppEnabledExtensionNames - result.pEnabledFeatures = pEnabledFeatures + result = VkDeviceCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + queueCreateInfoCount: queueCreateInfoCount, + pQueueCreateInfos: pQueueCreateInfos, + enabledLayerCount: enabledLayerCount, + ppEnabledLayerNames: ppEnabledLayerNames, + enabledExtensionCount: enabledExtensionCount, + ppEnabledExtensionNames: ppEnabledExtensionNames, + pEnabledFeatures: pEnabledFeatures, + ) proc newVkInstanceCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkInstanceCreateFlags = 0.VkInstanceCreateFlags, pApplicationInfo: ptr VkApplicationInfo, enabledLayerCount: uint32, ppEnabledLayerNames: cstringArray, enabledExtensionCount: uint32, ppEnabledExtensionNames: cstringArray): VkInstanceCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.pApplicationInfo = pApplicationInfo - result.enabledLayerCount = enabledLayerCount - result.ppEnabledLayerNames = ppEnabledLayerNames - result.enabledExtensionCount = enabledExtensionCount - result.ppEnabledExtensionNames = ppEnabledExtensionNames + result = VkInstanceCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + pApplicationInfo: pApplicationInfo, + enabledLayerCount: enabledLayerCount, + ppEnabledLayerNames: ppEnabledLayerNames, + enabledExtensionCount: enabledExtensionCount, + ppEnabledExtensionNames: ppEnabledExtensionNames, + ) proc newVkQueueFamilyProperties*(queueFlags: VkQueueFlags, queueCount: uint32, timestampValidBits: uint32, minImageTransferGranularity: VkExtent3D): VkQueueFamilyProperties = - result.queueFlags = queueFlags - result.queueCount = queueCount - result.timestampValidBits = timestampValidBits - result.minImageTransferGranularity = minImageTransferGranularity + result = VkQueueFamilyProperties( + queueFlags: queueFlags, + queueCount: queueCount, + timestampValidBits: timestampValidBits, + minImageTransferGranularity: minImageTransferGranularity, + ) proc newVkPhysicalDeviceMemoryProperties*(memoryTypeCount: uint32, memoryTypes: array[VK_MAX_MEMORY_TYPES, VkMemoryType], memoryHeapCount: uint32, memoryHeaps: array[VK_MAX_MEMORY_HEAPS, VkMemoryHeap]): VkPhysicalDeviceMemoryProperties = - result.memoryTypeCount = memoryTypeCount - result.memoryTypes = memoryTypes - result.memoryHeapCount = memoryHeapCount - result.memoryHeaps = memoryHeaps + result = VkPhysicalDeviceMemoryProperties( + memoryTypeCount: memoryTypeCount, + memoryTypes: memoryTypes, + memoryHeapCount: memoryHeapCount, + memoryHeaps: memoryHeaps, + ) proc newVkMemoryAllocateInfo*(sType: VkStructureType, pNext: pointer = nil, allocationSize: VkDeviceSize, memoryTypeIndex: uint32): VkMemoryAllocateInfo = - result.sType = sType - result.pNext = pNext - result.allocationSize = allocationSize - result.memoryTypeIndex = memoryTypeIndex + result = VkMemoryAllocateInfo( + sType: sType, + pNext: pNext, + allocationSize: allocationSize, + memoryTypeIndex: memoryTypeIndex, + ) proc newVkMemoryRequirements*(size: VkDeviceSize, alignment: VkDeviceSize, memoryTypeBits: uint32): VkMemoryRequirements = - result.size = size - result.alignment = alignment - result.memoryTypeBits = memoryTypeBits + result = VkMemoryRequirements( + size: size, + alignment: alignment, + memoryTypeBits: memoryTypeBits, + ) proc newVkSparseImageFormatProperties*(aspectMask: VkImageAspectFlags, imageGranularity: VkExtent3D, flags: VkSparseImageFormatFlags = 0.VkSparseImageFormatFlags): VkSparseImageFormatProperties = - result.aspectMask = aspectMask - result.imageGranularity = imageGranularity - result.flags = flags + result = VkSparseImageFormatProperties( + aspectMask: aspectMask, + imageGranularity: imageGranularity, + flags: flags, + ) proc newVkSparseImageMemoryRequirements*(formatProperties: VkSparseImageFormatProperties, imageMipTailFirstLod: uint32, imageMipTailSize: VkDeviceSize, imageMipTailOffset: VkDeviceSize, imageMipTailStride: VkDeviceSize): VkSparseImageMemoryRequirements = - result.formatProperties = formatProperties - result.imageMipTailFirstLod = imageMipTailFirstLod - result.imageMipTailSize = imageMipTailSize - result.imageMipTailOffset = imageMipTailOffset - result.imageMipTailStride = imageMipTailStride + result = VkSparseImageMemoryRequirements( + formatProperties: formatProperties, + imageMipTailFirstLod: imageMipTailFirstLod, + imageMipTailSize: imageMipTailSize, + imageMipTailOffset: imageMipTailOffset, + imageMipTailStride: imageMipTailStride, + ) proc newVkMemoryType*(propertyFlags: VkMemoryPropertyFlags, heapIndex: uint32): VkMemoryType = - result.propertyFlags = propertyFlags - result.heapIndex = heapIndex + result = VkMemoryType( + propertyFlags: propertyFlags, + heapIndex: heapIndex, + ) proc newVkMemoryHeap*(size: VkDeviceSize, flags: VkMemoryHeapFlags = 0.VkMemoryHeapFlags): VkMemoryHeap = - result.size = size - result.flags = flags + result = VkMemoryHeap( + size: size, + flags: flags, + ) proc newVkMappedMemoryRange*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory, offset: VkDeviceSize, size: VkDeviceSize): VkMappedMemoryRange = - result.sType = sType - result.pNext = pNext - result.memory = memory - result.offset = offset - result.size = size + result = VkMappedMemoryRange( + sType: sType, + pNext: pNext, + memory: memory, + offset: offset, + size: size, + ) proc newVkFormatProperties*(linearTilingFeatures: VkFormatFeatureFlags, optimalTilingFeatures: VkFormatFeatureFlags, bufferFeatures: VkFormatFeatureFlags): VkFormatProperties = - result.linearTilingFeatures = linearTilingFeatures - result.optimalTilingFeatures = optimalTilingFeatures - result.bufferFeatures = bufferFeatures + result = VkFormatProperties( + linearTilingFeatures: linearTilingFeatures, + optimalTilingFeatures: optimalTilingFeatures, + bufferFeatures: bufferFeatures, + ) proc newVkImageFormatProperties*(maxExtent: VkExtent3D, maxMipLevels: uint32, maxArrayLayers: uint32, sampleCounts: VkSampleCountFlags, maxResourceSize: VkDeviceSize): VkImageFormatProperties = - result.maxExtent = maxExtent - result.maxMipLevels = maxMipLevels - result.maxArrayLayers = maxArrayLayers - result.sampleCounts = sampleCounts - result.maxResourceSize = maxResourceSize + result = VkImageFormatProperties( + maxExtent: maxExtent, + maxMipLevels: maxMipLevels, + maxArrayLayers: maxArrayLayers, + sampleCounts: sampleCounts, + maxResourceSize: maxResourceSize, + ) proc newVkDescriptorBufferInfo*(buffer: VkBuffer, offset: VkDeviceSize, range: VkDeviceSize): VkDescriptorBufferInfo = - result.buffer = buffer - result.offset = offset - result.range = range + result = VkDescriptorBufferInfo( + buffer: buffer, + offset: offset, + range: range, + ) proc newVkDescriptorImageInfo*(sampler: VkSampler, imageView: VkImageView, imageLayout: VkImageLayout): VkDescriptorImageInfo = - result.sampler = sampler - result.imageView = imageView - result.imageLayout = imageLayout + result = VkDescriptorImageInfo( + sampler: sampler, + imageView: imageView, + imageLayout: imageLayout, + ) proc newVkWriteDescriptorSet*(sType: VkStructureType, pNext: pointer = nil, dstSet: VkDescriptorSet, dstBinding: uint32, dstArrayElement: uint32, descriptorCount: uint32, descriptorType: VkDescriptorType, pImageInfo: ptr VkDescriptorImageInfo, pBufferInfo: ptr ptr VkDescriptorBufferInfo, pTexelBufferView: ptr VkBufferView): VkWriteDescriptorSet = - result.sType = sType - result.pNext = pNext - result.dstSet = dstSet - result.dstBinding = dstBinding - result.dstArrayElement = dstArrayElement - result.descriptorCount = descriptorCount - result.descriptorType = descriptorType - result.pImageInfo = pImageInfo - result.pBufferInfo = pBufferInfo - result.pTexelBufferView = pTexelBufferView + result = VkWriteDescriptorSet( + sType: sType, + pNext: pNext, + dstSet: dstSet, + dstBinding: dstBinding, + dstArrayElement: dstArrayElement, + descriptorCount: descriptorCount, + descriptorType: descriptorType, + pImageInfo: pImageInfo, + pBufferInfo: pBufferInfo, + pTexelBufferView: pTexelBufferView, + ) proc newVkCopyDescriptorSet*(sType: VkStructureType, pNext: pointer = nil, srcSet: VkDescriptorSet, srcBinding: uint32, srcArrayElement: uint32, dstSet: VkDescriptorSet, dstBinding: uint32, dstArrayElement: uint32, descriptorCount: uint32): VkCopyDescriptorSet = - result.sType = sType - result.pNext = pNext - result.srcSet = srcSet - result.srcBinding = srcBinding - result.srcArrayElement = srcArrayElement - result.dstSet = dstSet - result.dstBinding = dstBinding - result.dstArrayElement = dstArrayElement - result.descriptorCount = descriptorCount + result = VkCopyDescriptorSet( + sType: sType, + pNext: pNext, + srcSet: srcSet, + srcBinding: srcBinding, + srcArrayElement: srcArrayElement, + dstSet: dstSet, + dstBinding: dstBinding, + dstArrayElement: dstArrayElement, + descriptorCount: descriptorCount, + ) proc newVkBufferUsageFlags2CreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, usage: VkBufferUsageFlags2KHR): VkBufferUsageFlags2CreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.usage = usage + result = VkBufferUsageFlags2CreateInfoKHR( + sType: sType, + pNext: pNext, + usage: usage, + ) proc newVkBufferCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkBufferCreateFlags = 0.VkBufferCreateFlags, size: VkDeviceSize, usage: VkBufferUsageFlags, sharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32): VkBufferCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.size = size - result.usage = usage - result.sharingMode = sharingMode - result.queueFamilyIndexCount = queueFamilyIndexCount - result.pQueueFamilyIndices = pQueueFamilyIndices + result = VkBufferCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + size: size, + usage: usage, + sharingMode: sharingMode, + queueFamilyIndexCount: queueFamilyIndexCount, + pQueueFamilyIndices: pQueueFamilyIndices, + ) proc newVkBufferViewCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkBufferViewCreateFlags = 0.VkBufferViewCreateFlags, buffer: VkBuffer, format: VkFormat, offset: VkDeviceSize, range: VkDeviceSize): VkBufferViewCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.buffer = buffer - result.format = format - result.offset = offset - result.range = range + result = VkBufferViewCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + buffer: buffer, + format: format, + offset: offset, + range: range, + ) proc newVkImageSubresource*(aspectMask: VkImageAspectFlags, mipLevel: uint32, arrayLayer: uint32): VkImageSubresource = - result.aspectMask = aspectMask - result.mipLevel = mipLevel - result.arrayLayer = arrayLayer + result = VkImageSubresource( + aspectMask: aspectMask, + mipLevel: mipLevel, + arrayLayer: arrayLayer, + ) proc newVkImageSubresourceLayers*(aspectMask: VkImageAspectFlags, mipLevel: uint32, baseArrayLayer: uint32, layerCount: uint32): VkImageSubresourceLayers = - result.aspectMask = aspectMask - result.mipLevel = mipLevel - result.baseArrayLayer = baseArrayLayer - result.layerCount = layerCount + result = VkImageSubresourceLayers( + aspectMask: aspectMask, + mipLevel: mipLevel, + baseArrayLayer: baseArrayLayer, + layerCount: layerCount, + ) proc newVkImageSubresourceRange*(aspectMask: VkImageAspectFlags, baseMipLevel: uint32, levelCount: uint32, baseArrayLayer: uint32, layerCount: uint32): VkImageSubresourceRange = - result.aspectMask = aspectMask - result.baseMipLevel = baseMipLevel - result.levelCount = levelCount - result.baseArrayLayer = baseArrayLayer - result.layerCount = layerCount + result = VkImageSubresourceRange( + aspectMask: aspectMask, + baseMipLevel: baseMipLevel, + levelCount: levelCount, + baseArrayLayer: baseArrayLayer, + layerCount: layerCount, + ) proc newVkMemoryBarrier*(sType: VkStructureType, pNext: pointer = nil, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags): VkMemoryBarrier = - result.sType = sType - result.pNext = pNext - result.srcAccessMask = srcAccessMask - result.dstAccessMask = dstAccessMask + result = VkMemoryBarrier( + sType: sType, + pNext: pNext, + srcAccessMask: srcAccessMask, + dstAccessMask: dstAccessMask, + ) proc newVkBufferMemoryBarrier*(sType: VkStructureType, pNext: pointer = nil, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags, srcQueueFamilyIndex: uint32, dstQueueFamilyIndex: uint32, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize): VkBufferMemoryBarrier = - result.sType = sType - result.pNext = pNext - result.srcAccessMask = srcAccessMask - result.dstAccessMask = dstAccessMask - result.srcQueueFamilyIndex = srcQueueFamilyIndex - result.dstQueueFamilyIndex = dstQueueFamilyIndex - result.buffer = buffer - result.offset = offset - result.size = size + result = VkBufferMemoryBarrier( + sType: sType, + pNext: pNext, + srcAccessMask: srcAccessMask, + dstAccessMask: dstAccessMask, + srcQueueFamilyIndex: srcQueueFamilyIndex, + dstQueueFamilyIndex: dstQueueFamilyIndex, + buffer: buffer, + offset: offset, + size: size, + ) proc newVkImageMemoryBarrier*(sType: VkStructureType, pNext: pointer = nil, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags, oldLayout: VkImageLayout, newLayout: VkImageLayout, srcQueueFamilyIndex: uint32, dstQueueFamilyIndex: uint32, image: VkImage, subresourceRange: VkImageSubresourceRange): VkImageMemoryBarrier = - result.sType = sType - result.pNext = pNext - result.srcAccessMask = srcAccessMask - result.dstAccessMask = dstAccessMask - result.oldLayout = oldLayout - result.newLayout = newLayout - result.srcQueueFamilyIndex = srcQueueFamilyIndex - result.dstQueueFamilyIndex = dstQueueFamilyIndex - result.image = image - result.subresourceRange = subresourceRange + result = VkImageMemoryBarrier( + sType: sType, + pNext: pNext, + srcAccessMask: srcAccessMask, + dstAccessMask: dstAccessMask, + oldLayout: oldLayout, + newLayout: newLayout, + srcQueueFamilyIndex: srcQueueFamilyIndex, + dstQueueFamilyIndex: dstQueueFamilyIndex, + image: image, + subresourceRange: subresourceRange, + ) proc newVkImageCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkImageCreateFlags = 0.VkImageCreateFlags, imageType: VkImageType, format: VkFormat, extent: VkExtent3D, mipLevels: uint32, arrayLayers: uint32, samples: VkSampleCountFlagBits, tiling: VkImageTiling, usage: VkImageUsageFlags, sharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32, initialLayout: VkImageLayout): VkImageCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.imageType = imageType - result.format = format - result.extent = extent - result.mipLevels = mipLevels - result.arrayLayers = arrayLayers - result.samples = samples - result.tiling = tiling - result.usage = usage - result.sharingMode = sharingMode - result.queueFamilyIndexCount = queueFamilyIndexCount - result.pQueueFamilyIndices = pQueueFamilyIndices - result.initialLayout = initialLayout + result = VkImageCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + imageType: imageType, + format: format, + extent: extent, + mipLevels: mipLevels, + arrayLayers: arrayLayers, + samples: samples, + tiling: tiling, + usage: usage, + sharingMode: sharingMode, + queueFamilyIndexCount: queueFamilyIndexCount, + pQueueFamilyIndices: pQueueFamilyIndices, + initialLayout: initialLayout, + ) proc newVkSubresourceLayout*(offset: VkDeviceSize, size: VkDeviceSize, rowPitch: VkDeviceSize, arrayPitch: VkDeviceSize, depthPitch: VkDeviceSize): VkSubresourceLayout = - result.offset = offset - result.size = size - result.rowPitch = rowPitch - result.arrayPitch = arrayPitch - result.depthPitch = depthPitch + result = VkSubresourceLayout( + offset: offset, + size: size, + rowPitch: rowPitch, + arrayPitch: arrayPitch, + depthPitch: depthPitch, + ) proc newVkImageViewCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkImageViewCreateFlags = 0.VkImageViewCreateFlags, image: VkImage, viewType: VkImageViewType, format: VkFormat, components: VkComponentMapping, subresourceRange: VkImageSubresourceRange): VkImageViewCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.image = image - result.viewType = viewType - result.format = format - result.components = components - result.subresourceRange = subresourceRange + result = VkImageViewCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + image: image, + viewType: viewType, + format: format, + components: components, + subresourceRange: subresourceRange, + ) proc newVkBufferCopy*(srcOffset: VkDeviceSize, dstOffset: VkDeviceSize, size: VkDeviceSize): VkBufferCopy = - result.srcOffset = srcOffset - result.dstOffset = dstOffset - result.size = size + result = VkBufferCopy( + srcOffset: srcOffset, + dstOffset: dstOffset, + size: size, + ) proc newVkSparseMemoryBind*(resourceOffset: VkDeviceSize, size: VkDeviceSize, memory: VkDeviceMemory, memoryOffset: VkDeviceSize, flags: VkSparseMemoryBindFlags = 0.VkSparseMemoryBindFlags): VkSparseMemoryBind = - result.resourceOffset = resourceOffset - result.size = size - result.memory = memory - result.memoryOffset = memoryOffset - result.flags = flags + result = VkSparseMemoryBind( + resourceOffset: resourceOffset, + size: size, + memory: memory, + memoryOffset: memoryOffset, + flags: flags, + ) proc newVkSparseImageMemoryBind*(subresource: VkImageSubresource, offset: VkOffset3D, extent: VkExtent3D, memory: VkDeviceMemory, memoryOffset: VkDeviceSize, flags: VkSparseMemoryBindFlags = 0.VkSparseMemoryBindFlags): VkSparseImageMemoryBind = - result.subresource = subresource - result.offset = offset - result.extent = extent - result.memory = memory - result.memoryOffset = memoryOffset - result.flags = flags + result = VkSparseImageMemoryBind( + subresource: subresource, + offset: offset, + extent: extent, + memory: memory, + memoryOffset: memoryOffset, + flags: flags, + ) proc newVkSparseBufferMemoryBindInfo*(buffer: VkBuffer, bindCount: uint32, pBinds: ptr VkSparseMemoryBind): VkSparseBufferMemoryBindInfo = - result.buffer = buffer - result.bindCount = bindCount - result.pBinds = pBinds + result = VkSparseBufferMemoryBindInfo( + buffer: buffer, + bindCount: bindCount, + pBinds: pBinds, + ) proc newVkSparseImageOpaqueMemoryBindInfo*(image: VkImage, bindCount: uint32, pBinds: ptr VkSparseMemoryBind): VkSparseImageOpaqueMemoryBindInfo = - result.image = image - result.bindCount = bindCount - result.pBinds = pBinds + result = VkSparseImageOpaqueMemoryBindInfo( + image: image, + bindCount: bindCount, + pBinds: pBinds, + ) proc newVkSparseImageMemoryBindInfo*(image: VkImage, bindCount: uint32, pBinds: ptr VkSparseImageMemoryBind): VkSparseImageMemoryBindInfo = - result.image = image - result.bindCount = bindCount - result.pBinds = pBinds + result = VkSparseImageMemoryBindInfo( + image: image, + bindCount: bindCount, + pBinds: pBinds, + ) proc newVkBindSparseInfo*(sType: VkStructureType, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, bufferBindCount: uint32, pBufferBinds: ptr VkSparseBufferMemoryBindInfo, imageOpaqueBindCount: uint32, pImageOpaqueBinds: ptr VkSparseImageOpaqueMemoryBindInfo, imageBindCount: uint32, pImageBinds: ptr VkSparseImageMemoryBindInfo, signalSemaphoreCount: uint32, pSignalSemaphores: ptr VkSemaphore): VkBindSparseInfo = - result.sType = sType - result.pNext = pNext - result.waitSemaphoreCount = waitSemaphoreCount - result.pWaitSemaphores = pWaitSemaphores - result.bufferBindCount = bufferBindCount - result.pBufferBinds = pBufferBinds - result.imageOpaqueBindCount = imageOpaqueBindCount - result.pImageOpaqueBinds = pImageOpaqueBinds - result.imageBindCount = imageBindCount - result.pImageBinds = pImageBinds - result.signalSemaphoreCount = signalSemaphoreCount - result.pSignalSemaphores = pSignalSemaphores + result = VkBindSparseInfo( + sType: sType, + pNext: pNext, + waitSemaphoreCount: waitSemaphoreCount, + pWaitSemaphores: pWaitSemaphores, + bufferBindCount: bufferBindCount, + pBufferBinds: pBufferBinds, + imageOpaqueBindCount: imageOpaqueBindCount, + pImageOpaqueBinds: pImageOpaqueBinds, + imageBindCount: imageBindCount, + pImageBinds: pImageBinds, + signalSemaphoreCount: signalSemaphoreCount, + pSignalSemaphores: pSignalSemaphores, + ) proc newVkImageCopy*(srcSubresource: VkImageSubresourceLayers, srcOffset: VkOffset3D, dstSubresource: VkImageSubresourceLayers, dstOffset: VkOffset3D, extent: VkExtent3D): VkImageCopy = - result.srcSubresource = srcSubresource - result.srcOffset = srcOffset - result.dstSubresource = dstSubresource - result.dstOffset = dstOffset - result.extent = extent + result = VkImageCopy( + srcSubresource: srcSubresource, + srcOffset: srcOffset, + dstSubresource: dstSubresource, + dstOffset: dstOffset, + extent: extent, + ) proc newVkImageBlit*(srcSubresource: VkImageSubresourceLayers, srcOffsets: array[2, VkOffset3D], dstSubresource: VkImageSubresourceLayers, dstOffsets: array[2, VkOffset3D]): VkImageBlit = - result.srcSubresource = srcSubresource - result.srcOffsets = srcOffsets - result.dstSubresource = dstSubresource - result.dstOffsets = dstOffsets + result = VkImageBlit( + srcSubresource: srcSubresource, + srcOffsets: srcOffsets, + dstSubresource: dstSubresource, + dstOffsets: dstOffsets, + ) proc newVkBufferImageCopy*(bufferOffset: VkDeviceSize, bufferRowLength: uint32, bufferImageHeight: uint32, imageSubresource: VkImageSubresourceLayers, imageOffset: VkOffset3D, imageExtent: VkExtent3D): VkBufferImageCopy = - result.bufferOffset = bufferOffset - result.bufferRowLength = bufferRowLength - result.bufferImageHeight = bufferImageHeight - result.imageSubresource = imageSubresource - result.imageOffset = imageOffset - result.imageExtent = imageExtent + result = VkBufferImageCopy( + bufferOffset: bufferOffset, + bufferRowLength: bufferRowLength, + bufferImageHeight: bufferImageHeight, + imageSubresource: imageSubresource, + imageOffset: imageOffset, + imageExtent: imageExtent, + ) proc newVkCopyMemoryIndirectCommandNV*(srcAddress: VkDeviceAddress, dstAddress: VkDeviceAddress, size: VkDeviceSize): VkCopyMemoryIndirectCommandNV = - result.srcAddress = srcAddress - result.dstAddress = dstAddress - result.size = size + result = VkCopyMemoryIndirectCommandNV( + srcAddress: srcAddress, + dstAddress: dstAddress, + size: size, + ) proc newVkCopyMemoryToImageIndirectCommandNV*(srcAddress: VkDeviceAddress, bufferRowLength: uint32, bufferImageHeight: uint32, imageSubresource: VkImageSubresourceLayers, imageOffset: VkOffset3D, imageExtent: VkExtent3D): VkCopyMemoryToImageIndirectCommandNV = - result.srcAddress = srcAddress - result.bufferRowLength = bufferRowLength - result.bufferImageHeight = bufferImageHeight - result.imageSubresource = imageSubresource - result.imageOffset = imageOffset - result.imageExtent = imageExtent + result = VkCopyMemoryToImageIndirectCommandNV( + srcAddress: srcAddress, + bufferRowLength: bufferRowLength, + bufferImageHeight: bufferImageHeight, + imageSubresource: imageSubresource, + imageOffset: imageOffset, + imageExtent: imageExtent, + ) proc newVkImageResolve*(srcSubresource: VkImageSubresourceLayers, srcOffset: VkOffset3D, dstSubresource: VkImageSubresourceLayers, dstOffset: VkOffset3D, extent: VkExtent3D): VkImageResolve = - result.srcSubresource = srcSubresource - result.srcOffset = srcOffset - result.dstSubresource = dstSubresource - result.dstOffset = dstOffset - result.extent = extent + result = VkImageResolve( + srcSubresource: srcSubresource, + srcOffset: srcOffset, + dstSubresource: dstSubresource, + dstOffset: dstOffset, + extent: extent, + ) proc newVkShaderModuleCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkShaderModuleCreateFlags = 0.VkShaderModuleCreateFlags, codeSize: uint, pCode: ptr uint32): VkShaderModuleCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.codeSize = codeSize - result.pCode = pCode + result = VkShaderModuleCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + codeSize: codeSize, + pCode: pCode, + ) proc newVkDescriptorSetLayoutBinding*(binding: uint32, descriptorType: VkDescriptorType, descriptorCount: uint32, stageFlags: VkShaderStageFlags, pImmutableSamplers: ptr VkSampler): VkDescriptorSetLayoutBinding = - result.binding = binding - result.descriptorType = descriptorType - result.descriptorCount = descriptorCount - result.stageFlags = stageFlags - result.pImmutableSamplers = pImmutableSamplers + result = VkDescriptorSetLayoutBinding( + binding: binding, + descriptorType: descriptorType, + descriptorCount: descriptorCount, + stageFlags: stageFlags, + pImmutableSamplers: pImmutableSamplers, + ) proc newVkDescriptorSetLayoutCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkDescriptorSetLayoutCreateFlags = 0.VkDescriptorSetLayoutCreateFlags, bindingCount: uint32, pBindings: ptr VkDescriptorSetLayoutBinding): VkDescriptorSetLayoutCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.bindingCount = bindingCount - result.pBindings = pBindings + result = VkDescriptorSetLayoutCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + bindingCount: bindingCount, + pBindings: pBindings, + ) proc newVkDescriptorPoolSize*(`type`: VkDescriptorType, descriptorCount: uint32): VkDescriptorPoolSize = - result.`type` = `type` - result.descriptorCount = descriptorCount + result = VkDescriptorPoolSize( + `type`: `type`, + descriptorCount: descriptorCount, + ) proc newVkDescriptorPoolCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkDescriptorPoolCreateFlags = 0.VkDescriptorPoolCreateFlags, maxSets: uint32, poolSizeCount: uint32, pPoolSizes: ptr VkDescriptorPoolSize): VkDescriptorPoolCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.maxSets = maxSets - result.poolSizeCount = poolSizeCount - result.pPoolSizes = pPoolSizes + result = VkDescriptorPoolCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + maxSets: maxSets, + poolSizeCount: poolSizeCount, + pPoolSizes: pPoolSizes, + ) proc newVkDescriptorSetAllocateInfo*(sType: VkStructureType, pNext: pointer = nil, descriptorPool: VkDescriptorPool, descriptorSetCount: uint32, pSetLayouts: ptr VkDescriptorSetLayout): VkDescriptorSetAllocateInfo = - result.sType = sType - result.pNext = pNext - result.descriptorPool = descriptorPool - result.descriptorSetCount = descriptorSetCount - result.pSetLayouts = pSetLayouts + result = VkDescriptorSetAllocateInfo( + sType: sType, + pNext: pNext, + descriptorPool: descriptorPool, + descriptorSetCount: descriptorSetCount, + pSetLayouts: pSetLayouts, + ) proc newVkSpecializationMapEntry*(constantID: uint32, offset: uint32, size: uint): VkSpecializationMapEntry = - result.constantID = constantID - result.offset = offset - result.size = size + result = VkSpecializationMapEntry( + constantID: constantID, + offset: offset, + size: size, + ) proc newVkSpecializationInfo*(mapEntryCount: uint32, pMapEntries: ptr VkSpecializationMapEntry, dataSize: uint, pData: pointer = nil): VkSpecializationInfo = - result.mapEntryCount = mapEntryCount - result.pMapEntries = pMapEntries - result.dataSize = dataSize - result.pData = pData + result = VkSpecializationInfo( + mapEntryCount: mapEntryCount, + pMapEntries: pMapEntries, + dataSize: dataSize, + pData: pData, + ) proc newVkPipelineShaderStageCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineShaderStageCreateFlags = 0.VkPipelineShaderStageCreateFlags, stage: VkShaderStageFlagBits, module: VkShaderModule, pName: cstring, pSpecializationInfo: ptr VkSpecializationInfo): VkPipelineShaderStageCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.stage = stage - result.module = module - result.pName = pName - result.pSpecializationInfo = pSpecializationInfo + result = VkPipelineShaderStageCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + stage: stage, + module: module, + pName: pName, + pSpecializationInfo: pSpecializationInfo, + ) proc newVkComputePipelineCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stage: VkPipelineShaderStageCreateInfo, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkComputePipelineCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.stage = stage - result.layout = layout - result.basePipelineHandle = basePipelineHandle - result.basePipelineIndex = basePipelineIndex + result = VkComputePipelineCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + stage: stage, + layout: layout, + basePipelineHandle: basePipelineHandle, + basePipelineIndex: basePipelineIndex, + ) proc newVkComputePipelineIndirectBufferInfoNV*(sType: VkStructureType, pNext: pointer = nil, deviceAddress: VkDeviceAddress, size: VkDeviceSize, pipelineDeviceAddressCaptureReplay: VkDeviceAddress): VkComputePipelineIndirectBufferInfoNV = - result.sType = sType - result.pNext = pNext - result.deviceAddress = deviceAddress - result.size = size - result.pipelineDeviceAddressCaptureReplay = pipelineDeviceAddressCaptureReplay + result = VkComputePipelineIndirectBufferInfoNV( + sType: sType, + pNext: pNext, + deviceAddress: deviceAddress, + size: size, + pipelineDeviceAddressCaptureReplay: pipelineDeviceAddressCaptureReplay, + ) proc newVkPipelineCreateFlags2CreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCreateFlags2KHR = 0.VkPipelineCreateFlags2KHR): VkPipelineCreateFlags2CreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags + result = VkPipelineCreateFlags2CreateInfoKHR( + sType: sType, + pNext: pNext, + flags: flags, + ) proc newVkVertexInputBindingDescription*(binding: uint32, stride: uint32, inputRate: VkVertexInputRate): VkVertexInputBindingDescription = - result.binding = binding - result.stride = stride - result.inputRate = inputRate + result = VkVertexInputBindingDescription( + binding: binding, + stride: stride, + inputRate: inputRate, + ) proc newVkVertexInputAttributeDescription*(location: uint32, binding: uint32, format: VkFormat, offset: uint32): VkVertexInputAttributeDescription = - result.location = location - result.binding = binding - result.format = format - result.offset = offset + result = VkVertexInputAttributeDescription( + location: location, + binding: binding, + format: format, + offset: offset, + ) proc newVkPipelineVertexInputStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineVertexInputStateCreateFlags = 0.VkPipelineVertexInputStateCreateFlags, vertexBindingDescriptionCount: uint32, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription, vertexAttributeDescriptionCount: uint32, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription): VkPipelineVertexInputStateCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.vertexBindingDescriptionCount = vertexBindingDescriptionCount - result.pVertexBindingDescriptions = pVertexBindingDescriptions - result.vertexAttributeDescriptionCount = vertexAttributeDescriptionCount - result.pVertexAttributeDescriptions = pVertexAttributeDescriptions + result = VkPipelineVertexInputStateCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + vertexBindingDescriptionCount: vertexBindingDescriptionCount, + pVertexBindingDescriptions: pVertexBindingDescriptions, + vertexAttributeDescriptionCount: vertexAttributeDescriptionCount, + pVertexAttributeDescriptions: pVertexAttributeDescriptions, + ) proc newVkPipelineInputAssemblyStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineInputAssemblyStateCreateFlags = 0.VkPipelineInputAssemblyStateCreateFlags, topology: VkPrimitiveTopology, primitiveRestartEnable: VkBool32): VkPipelineInputAssemblyStateCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.topology = topology - result.primitiveRestartEnable = primitiveRestartEnable + result = VkPipelineInputAssemblyStateCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + topology: topology, + primitiveRestartEnable: primitiveRestartEnable, + ) proc newVkPipelineTessellationStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineTessellationStateCreateFlags = 0.VkPipelineTessellationStateCreateFlags, patchControlPoints: uint32): VkPipelineTessellationStateCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.patchControlPoints = patchControlPoints + result = VkPipelineTessellationStateCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + patchControlPoints: patchControlPoints, + ) proc newVkPipelineViewportStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineViewportStateCreateFlags = 0.VkPipelineViewportStateCreateFlags, viewportCount: uint32, pViewports: ptr VkViewport, scissorCount: uint32, pScissors: ptr VkRect2D): VkPipelineViewportStateCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.viewportCount = viewportCount - result.pViewports = pViewports - result.scissorCount = scissorCount - result.pScissors = pScissors + result = VkPipelineViewportStateCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + viewportCount: viewportCount, + pViewports: pViewports, + scissorCount: scissorCount, + pScissors: pScissors, + ) proc newVkPipelineRasterizationStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineRasterizationStateCreateFlags = 0.VkPipelineRasterizationStateCreateFlags, depthClampEnable: VkBool32, rasterizerDiscardEnable: VkBool32, polygonMode: VkPolygonMode, cullMode: VkCullModeFlags, frontFace: VkFrontFace, depthBiasEnable: VkBool32, depthBiasConstantFactor: float32, depthBiasClamp: float32, depthBiasSlopeFactor: float32, lineWidth: float32): VkPipelineRasterizationStateCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.depthClampEnable = depthClampEnable - result.rasterizerDiscardEnable = rasterizerDiscardEnable - result.polygonMode = polygonMode - result.cullMode = cullMode - result.frontFace = frontFace - result.depthBiasEnable = depthBiasEnable - result.depthBiasConstantFactor = depthBiasConstantFactor - result.depthBiasClamp = depthBiasClamp - result.depthBiasSlopeFactor = depthBiasSlopeFactor - result.lineWidth = lineWidth + result = VkPipelineRasterizationStateCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + depthClampEnable: depthClampEnable, + rasterizerDiscardEnable: rasterizerDiscardEnable, + polygonMode: polygonMode, + cullMode: cullMode, + frontFace: frontFace, + depthBiasEnable: depthBiasEnable, + depthBiasConstantFactor: depthBiasConstantFactor, + depthBiasClamp: depthBiasClamp, + depthBiasSlopeFactor: depthBiasSlopeFactor, + lineWidth: lineWidth, + ) proc newVkPipelineMultisampleStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineMultisampleStateCreateFlags = 0.VkPipelineMultisampleStateCreateFlags, rasterizationSamples: VkSampleCountFlagBits, sampleShadingEnable: VkBool32, minSampleShading: float32, pSampleMask: ptr VkSampleMask, alphaToCoverageEnable: VkBool32, alphaToOneEnable: VkBool32): VkPipelineMultisampleStateCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.rasterizationSamples = rasterizationSamples - result.sampleShadingEnable = sampleShadingEnable - result.minSampleShading = minSampleShading - result.pSampleMask = pSampleMask - result.alphaToCoverageEnable = alphaToCoverageEnable - result.alphaToOneEnable = alphaToOneEnable + result = VkPipelineMultisampleStateCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + rasterizationSamples: rasterizationSamples, + sampleShadingEnable: sampleShadingEnable, + minSampleShading: minSampleShading, + pSampleMask: pSampleMask, + alphaToCoverageEnable: alphaToCoverageEnable, + alphaToOneEnable: alphaToOneEnable, + ) proc newVkPipelineColorBlendAttachmentState*(blendEnable: VkBool32, srcColorBlendFactor: VkBlendFactor, dstColorBlendFactor: VkBlendFactor, colorBlendOp: VkBlendOp, srcAlphaBlendFactor: VkBlendFactor, dstAlphaBlendFactor: VkBlendFactor, alphaBlendOp: VkBlendOp, colorWriteMask: VkColorComponentFlags): VkPipelineColorBlendAttachmentState = - result.blendEnable = blendEnable - result.srcColorBlendFactor = srcColorBlendFactor - result.dstColorBlendFactor = dstColorBlendFactor - result.colorBlendOp = colorBlendOp - result.srcAlphaBlendFactor = srcAlphaBlendFactor - result.dstAlphaBlendFactor = dstAlphaBlendFactor - result.alphaBlendOp = alphaBlendOp - result.colorWriteMask = colorWriteMask + result = VkPipelineColorBlendAttachmentState( + blendEnable: blendEnable, + srcColorBlendFactor: srcColorBlendFactor, + dstColorBlendFactor: dstColorBlendFactor, + colorBlendOp: colorBlendOp, + srcAlphaBlendFactor: srcAlphaBlendFactor, + dstAlphaBlendFactor: dstAlphaBlendFactor, + alphaBlendOp: alphaBlendOp, + colorWriteMask: colorWriteMask, + ) proc newVkPipelineColorBlendStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineColorBlendStateCreateFlags = 0.VkPipelineColorBlendStateCreateFlags, logicOpEnable: VkBool32, logicOp: VkLogicOp, attachmentCount: uint32, pAttachments: ptr VkPipelineColorBlendAttachmentState, blendConstants: array[4, float32]): VkPipelineColorBlendStateCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.logicOpEnable = logicOpEnable - result.logicOp = logicOp - result.attachmentCount = attachmentCount - result.pAttachments = pAttachments - result.blendConstants = blendConstants + result = VkPipelineColorBlendStateCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + logicOpEnable: logicOpEnable, + logicOp: logicOp, + attachmentCount: attachmentCount, + pAttachments: pAttachments, + blendConstants: blendConstants, + ) proc newVkPipelineDynamicStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineDynamicStateCreateFlags = 0.VkPipelineDynamicStateCreateFlags, dynamicStateCount: uint32, pDynamicStates: ptr VkDynamicState): VkPipelineDynamicStateCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.dynamicStateCount = dynamicStateCount - result.pDynamicStates = pDynamicStates + result = VkPipelineDynamicStateCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + dynamicStateCount: dynamicStateCount, + pDynamicStates: pDynamicStates, + ) proc newVkStencilOpState*(failOp: VkStencilOp, passOp: VkStencilOp, depthFailOp: VkStencilOp, compareOp: VkCompareOp, compareMask: uint32, writeMask: uint32, reference: uint32): VkStencilOpState = - result.failOp = failOp - result.passOp = passOp - result.depthFailOp = depthFailOp - result.compareOp = compareOp - result.compareMask = compareMask - result.writeMask = writeMask - result.reference = reference + result = VkStencilOpState( + failOp: failOp, + passOp: passOp, + depthFailOp: depthFailOp, + compareOp: compareOp, + compareMask: compareMask, + writeMask: writeMask, + reference: reference, + ) proc newVkPipelineDepthStencilStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineDepthStencilStateCreateFlags = 0.VkPipelineDepthStencilStateCreateFlags, depthTestEnable: VkBool32, depthWriteEnable: VkBool32, depthCompareOp: VkCompareOp, depthBoundsTestEnable: VkBool32, stencilTestEnable: VkBool32, front: VkStencilOpState, back: VkStencilOpState, minDepthBounds: float32, maxDepthBounds: float32): VkPipelineDepthStencilStateCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.depthTestEnable = depthTestEnable - result.depthWriteEnable = depthWriteEnable - result.depthCompareOp = depthCompareOp - result.depthBoundsTestEnable = depthBoundsTestEnable - result.stencilTestEnable = stencilTestEnable - result.front = front - result.back = back - result.minDepthBounds = minDepthBounds - result.maxDepthBounds = maxDepthBounds + result = VkPipelineDepthStencilStateCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + depthTestEnable: depthTestEnable, + depthWriteEnable: depthWriteEnable, + depthCompareOp: depthCompareOp, + depthBoundsTestEnable: depthBoundsTestEnable, + stencilTestEnable: stencilTestEnable, + front: front, + back: back, + minDepthBounds: minDepthBounds, + maxDepthBounds: maxDepthBounds, + ) proc newVkGraphicsPipelineCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, pVertexInputState: ptr VkPipelineVertexInputStateCreateInfo, pInputAssemblyState: ptr VkPipelineInputAssemblyStateCreateInfo, pTessellationState: ptr VkPipelineTessellationStateCreateInfo, pViewportState: ptr VkPipelineViewportStateCreateInfo, pRasterizationState: ptr VkPipelineRasterizationStateCreateInfo, pMultisampleState: ptr VkPipelineMultisampleStateCreateInfo, pDepthStencilState: ptr VkPipelineDepthStencilStateCreateInfo, pColorBlendState: ptr VkPipelineColorBlendStateCreateInfo, pDynamicState: ptr VkPipelineDynamicStateCreateInfo, layout: VkPipelineLayout, renderPass: VkRenderPass, subpass: uint32, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkGraphicsPipelineCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.stageCount = stageCount - result.pStages = pStages - result.pVertexInputState = pVertexInputState - result.pInputAssemblyState = pInputAssemblyState - result.pTessellationState = pTessellationState - result.pViewportState = pViewportState - result.pRasterizationState = pRasterizationState - result.pMultisampleState = pMultisampleState - result.pDepthStencilState = pDepthStencilState - result.pColorBlendState = pColorBlendState - result.pDynamicState = pDynamicState - result.layout = layout - result.renderPass = renderPass - result.subpass = subpass - result.basePipelineHandle = basePipelineHandle - result.basePipelineIndex = basePipelineIndex + result = VkGraphicsPipelineCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + stageCount: stageCount, + pStages: pStages, + pVertexInputState: pVertexInputState, + pInputAssemblyState: pInputAssemblyState, + pTessellationState: pTessellationState, + pViewportState: pViewportState, + pRasterizationState: pRasterizationState, + pMultisampleState: pMultisampleState, + pDepthStencilState: pDepthStencilState, + pColorBlendState: pColorBlendState, + pDynamicState: pDynamicState, + layout: layout, + renderPass: renderPass, + subpass: subpass, + basePipelineHandle: basePipelineHandle, + basePipelineIndex: basePipelineIndex, + ) proc newVkPipelineCacheCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCacheCreateFlags = 0.VkPipelineCacheCreateFlags, initialDataSize: uint, pInitialData: pointer = nil): VkPipelineCacheCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.initialDataSize = initialDataSize - result.pInitialData = pInitialData + result = VkPipelineCacheCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + initialDataSize: initialDataSize, + pInitialData: pInitialData, + ) proc newVkPipelineCacheHeaderVersionOne*(headerSize: uint32, headerVersion: VkPipelineCacheHeaderVersion, vendorID: uint32, deviceID: uint32, pipelineCacheUUID: array[VK_UUID_SIZE, uint8]): VkPipelineCacheHeaderVersionOne = - result.headerSize = headerSize - result.headerVersion = headerVersion - result.vendorID = vendorID - result.deviceID = deviceID - result.pipelineCacheUUID = pipelineCacheUUID + result = VkPipelineCacheHeaderVersionOne( + headerSize: headerSize, + headerVersion: headerVersion, + vendorID: vendorID, + deviceID: deviceID, + pipelineCacheUUID: pipelineCacheUUID, + ) proc newVkPipelineCacheStageValidationIndexEntry*(codeSize: uint64, codeOffset: uint64): VkPipelineCacheStageValidationIndexEntry = - result.codeSize = codeSize - result.codeOffset = codeOffset + result = VkPipelineCacheStageValidationIndexEntry( + codeSize: codeSize, + codeOffset: codeOffset, + ) proc newVkPipelineCacheSafetyCriticalIndexEntry*(pipelineIdentifier: array[VK_UUID_SIZE, uint8], pipelineMemorySize: uint64, jsonSize: uint64, jsonOffset: uint64, stageIndexCount: uint32, stageIndexStride: uint32, stageIndexOffset: uint64): VkPipelineCacheSafetyCriticalIndexEntry = - result.pipelineIdentifier = pipelineIdentifier - result.pipelineMemorySize = pipelineMemorySize - result.jsonSize = jsonSize - result.jsonOffset = jsonOffset - result.stageIndexCount = stageIndexCount - result.stageIndexStride = stageIndexStride - result.stageIndexOffset = stageIndexOffset + result = VkPipelineCacheSafetyCriticalIndexEntry( + pipelineIdentifier: pipelineIdentifier, + pipelineMemorySize: pipelineMemorySize, + jsonSize: jsonSize, + jsonOffset: jsonOffset, + stageIndexCount: stageIndexCount, + stageIndexStride: stageIndexStride, + stageIndexOffset: stageIndexOffset, + ) proc newVkPipelineCacheHeaderVersionSafetyCriticalOne*(headerVersionOne: VkPipelineCacheHeaderVersionOne, validationVersion: VkPipelineCacheValidationVersion, implementationData: uint32, pipelineIndexCount: uint32, pipelineIndexStride: uint32, pipelineIndexOffset: uint64): VkPipelineCacheHeaderVersionSafetyCriticalOne = - result.headerVersionOne = headerVersionOne - result.validationVersion = validationVersion - result.implementationData = implementationData - result.pipelineIndexCount = pipelineIndexCount - result.pipelineIndexStride = pipelineIndexStride - result.pipelineIndexOffset = pipelineIndexOffset + result = VkPipelineCacheHeaderVersionSafetyCriticalOne( + headerVersionOne: headerVersionOne, + validationVersion: validationVersion, + implementationData: implementationData, + pipelineIndexCount: pipelineIndexCount, + pipelineIndexStride: pipelineIndexStride, + pipelineIndexOffset: pipelineIndexOffset, + ) proc newVkPushConstantRange*(stageFlags: VkShaderStageFlags, offset: uint32, size: uint32): VkPushConstantRange = - result.stageFlags = stageFlags - result.offset = offset - result.size = size + result = VkPushConstantRange( + stageFlags: stageFlags, + offset: offset, + size: size, + ) proc newVkPipelineLayoutCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineLayoutCreateFlags = 0.VkPipelineLayoutCreateFlags, setLayoutCount: uint32, pSetLayouts: ptr VkDescriptorSetLayout, pushConstantRangeCount: uint32, pPushConstantRanges: ptr VkPushConstantRange): VkPipelineLayoutCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.setLayoutCount = setLayoutCount - result.pSetLayouts = pSetLayouts - result.pushConstantRangeCount = pushConstantRangeCount - result.pPushConstantRanges = pPushConstantRanges + result = VkPipelineLayoutCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + setLayoutCount: setLayoutCount, + pSetLayouts: pSetLayouts, + pushConstantRangeCount: pushConstantRangeCount, + pPushConstantRanges: pPushConstantRanges, + ) proc newVkSamplerCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkSamplerCreateFlags = 0.VkSamplerCreateFlags, magFilter: VkFilter, minFilter: VkFilter, mipmapMode: VkSamplerMipmapMode, addressModeU: VkSamplerAddressMode, addressModeV: VkSamplerAddressMode, addressModeW: VkSamplerAddressMode, mipLodBias: float32, anisotropyEnable: VkBool32, maxAnisotropy: float32, compareEnable: VkBool32, compareOp: VkCompareOp, minLod: float32, maxLod: float32, borderColor: VkBorderColor, unnormalizedCoordinates: VkBool32): VkSamplerCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.magFilter = magFilter - result.minFilter = minFilter - result.mipmapMode = mipmapMode - result.addressModeU = addressModeU - result.addressModeV = addressModeV - result.addressModeW = addressModeW - result.mipLodBias = mipLodBias - result.anisotropyEnable = anisotropyEnable - result.maxAnisotropy = maxAnisotropy - result.compareEnable = compareEnable - result.compareOp = compareOp - result.minLod = minLod - result.maxLod = maxLod - result.borderColor = borderColor - result.unnormalizedCoordinates = unnormalizedCoordinates + result = VkSamplerCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + magFilter: magFilter, + minFilter: minFilter, + mipmapMode: mipmapMode, + addressModeU: addressModeU, + addressModeV: addressModeV, + addressModeW: addressModeW, + mipLodBias: mipLodBias, + anisotropyEnable: anisotropyEnable, + maxAnisotropy: maxAnisotropy, + compareEnable: compareEnable, + compareOp: compareOp, + minLod: minLod, + maxLod: maxLod, + borderColor: borderColor, + unnormalizedCoordinates: unnormalizedCoordinates, + ) proc newVkCommandPoolCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkCommandPoolCreateFlags = 0.VkCommandPoolCreateFlags, queueFamilyIndex: uint32): VkCommandPoolCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.queueFamilyIndex = queueFamilyIndex + result = VkCommandPoolCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + queueFamilyIndex: queueFamilyIndex, + ) proc newVkCommandBufferAllocateInfo*(sType: VkStructureType, pNext: pointer = nil, commandPool: VkCommandPool, level: VkCommandBufferLevel, commandBufferCount: uint32): VkCommandBufferAllocateInfo = - result.sType = sType - result.pNext = pNext - result.commandPool = commandPool - result.level = level - result.commandBufferCount = commandBufferCount + result = VkCommandBufferAllocateInfo( + sType: sType, + pNext: pNext, + commandPool: commandPool, + level: level, + commandBufferCount: commandBufferCount, + ) proc newVkCommandBufferInheritanceInfo*(sType: VkStructureType, pNext: pointer = nil, renderPass: VkRenderPass, subpass: uint32, framebuffer: VkFramebuffer, occlusionQueryEnable: VkBool32, queryFlags: VkQueryControlFlags, pipelineStatistics: VkQueryPipelineStatisticFlags): VkCommandBufferInheritanceInfo = - result.sType = sType - result.pNext = pNext - result.renderPass = renderPass - result.subpass = subpass - result.framebuffer = framebuffer - result.occlusionQueryEnable = occlusionQueryEnable - result.queryFlags = queryFlags - result.pipelineStatistics = pipelineStatistics + result = VkCommandBufferInheritanceInfo( + sType: sType, + pNext: pNext, + renderPass: renderPass, + subpass: subpass, + framebuffer: framebuffer, + occlusionQueryEnable: occlusionQueryEnable, + queryFlags: queryFlags, + pipelineStatistics: pipelineStatistics, + ) proc newVkCommandBufferBeginInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkCommandBufferUsageFlags = 0.VkCommandBufferUsageFlags, pInheritanceInfo: ptr VkCommandBufferInheritanceInfo): VkCommandBufferBeginInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.pInheritanceInfo = pInheritanceInfo + result = VkCommandBufferBeginInfo( + sType: sType, + pNext: pNext, + flags: flags, + pInheritanceInfo: pInheritanceInfo, + ) proc newVkRenderPassBeginInfo*(sType: VkStructureType, pNext: pointer = nil, renderPass: VkRenderPass, framebuffer: VkFramebuffer, renderArea: VkRect2D, clearValueCount: uint32, pClearValues: ptr VkClearValue): VkRenderPassBeginInfo = - result.sType = sType - result.pNext = pNext - result.renderPass = renderPass - result.framebuffer = framebuffer - result.renderArea = renderArea - result.clearValueCount = clearValueCount - result.pClearValues = pClearValues + result = VkRenderPassBeginInfo( + sType: sType, + pNext: pNext, + renderPass: renderPass, + framebuffer: framebuffer, + renderArea: renderArea, + clearValueCount: clearValueCount, + pClearValues: pClearValues, + ) proc newVkClearDepthStencilValue*(depth: float32, stencil: uint32): VkClearDepthStencilValue = - result.depth = depth - result.stencil = stencil + result = VkClearDepthStencilValue( + depth: depth, + stencil: stencil, + ) proc newVkClearAttachment*(aspectMask: VkImageAspectFlags, colorAttachment: uint32, clearValue: VkClearValue): VkClearAttachment = - result.aspectMask = aspectMask - result.colorAttachment = colorAttachment - result.clearValue = clearValue + result = VkClearAttachment( + aspectMask: aspectMask, + colorAttachment: colorAttachment, + clearValue: clearValue, + ) proc newVkAttachmentDescription*(flags: VkAttachmentDescriptionFlags = 0.VkAttachmentDescriptionFlags, format: VkFormat, samples: VkSampleCountFlagBits, loadOp: VkAttachmentLoadOp, storeOp: VkAttachmentStoreOp, stencilLoadOp: VkAttachmentLoadOp, stencilStoreOp: VkAttachmentStoreOp, initialLayout: VkImageLayout, finalLayout: VkImageLayout): VkAttachmentDescription = - result.flags = flags - result.format = format - result.samples = samples - result.loadOp = loadOp - result.storeOp = storeOp - result.stencilLoadOp = stencilLoadOp - result.stencilStoreOp = stencilStoreOp - result.initialLayout = initialLayout - result.finalLayout = finalLayout + result = VkAttachmentDescription( + flags: flags, + format: format, + samples: samples, + loadOp: loadOp, + storeOp: storeOp, + stencilLoadOp: stencilLoadOp, + stencilStoreOp: stencilStoreOp, + initialLayout: initialLayout, + finalLayout: finalLayout, + ) proc newVkAttachmentReference*(attachment: uint32, layout: VkImageLayout): VkAttachmentReference = - result.attachment = attachment - result.layout = layout + result = VkAttachmentReference( + attachment: attachment, + layout: layout, + ) proc newVkSubpassDescription*(flags: VkSubpassDescriptionFlags = 0.VkSubpassDescriptionFlags, pipelineBindPoint: VkPipelineBindPoint, inputAttachmentCount: uint32, pInputAttachments: ptr VkAttachmentReference, colorAttachmentCount: uint32, pColorAttachments: ptr VkAttachmentReference, pResolveAttachments: ptr VkAttachmentReference, pDepthStencilAttachment: ptr VkAttachmentReference, preserveAttachmentCount: uint32, pPreserveAttachments: ptr uint32): VkSubpassDescription = - result.flags = flags - result.pipelineBindPoint = pipelineBindPoint - result.inputAttachmentCount = inputAttachmentCount - result.pInputAttachments = pInputAttachments - result.colorAttachmentCount = colorAttachmentCount - result.pColorAttachments = pColorAttachments - result.pResolveAttachments = pResolveAttachments - result.pDepthStencilAttachment = pDepthStencilAttachment - result.preserveAttachmentCount = preserveAttachmentCount - result.pPreserveAttachments = pPreserveAttachments + result = VkSubpassDescription( + flags: flags, + pipelineBindPoint: pipelineBindPoint, + inputAttachmentCount: inputAttachmentCount, + pInputAttachments: pInputAttachments, + colorAttachmentCount: colorAttachmentCount, + pColorAttachments: pColorAttachments, + pResolveAttachments: pResolveAttachments, + pDepthStencilAttachment: pDepthStencilAttachment, + preserveAttachmentCount: preserveAttachmentCount, + pPreserveAttachments: pPreserveAttachments, + ) proc newVkSubpassDependency*(srcSubpass: uint32, dstSubpass: uint32, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags, dependencyFlags: VkDependencyFlags): VkSubpassDependency = - result.srcSubpass = srcSubpass - result.dstSubpass = dstSubpass - result.srcStageMask = srcStageMask - result.dstStageMask = dstStageMask - result.srcAccessMask = srcAccessMask - result.dstAccessMask = dstAccessMask - result.dependencyFlags = dependencyFlags + result = VkSubpassDependency( + srcSubpass: srcSubpass, + dstSubpass: dstSubpass, + srcStageMask: srcStageMask, + dstStageMask: dstStageMask, + srcAccessMask: srcAccessMask, + dstAccessMask: dstAccessMask, + dependencyFlags: dependencyFlags, + ) proc newVkRenderPassCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkRenderPassCreateFlags = 0.VkRenderPassCreateFlags, attachmentCount: uint32, pAttachments: ptr VkAttachmentDescription, subpassCount: uint32, pSubpasses: ptr VkSubpassDescription, dependencyCount: uint32, pDependencies: ptr VkSubpassDependency): VkRenderPassCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.attachmentCount = attachmentCount - result.pAttachments = pAttachments - result.subpassCount = subpassCount - result.pSubpasses = pSubpasses - result.dependencyCount = dependencyCount - result.pDependencies = pDependencies + result = VkRenderPassCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + attachmentCount: attachmentCount, + pAttachments: pAttachments, + subpassCount: subpassCount, + pSubpasses: pSubpasses, + dependencyCount: dependencyCount, + pDependencies: pDependencies, + ) proc newVkEventCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkEventCreateFlags = 0.VkEventCreateFlags): VkEventCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags + result = VkEventCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + ) proc newVkFenceCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkFenceCreateFlags = 0.VkFenceCreateFlags): VkFenceCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags + result = VkFenceCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + ) proc newVkPhysicalDeviceFeatures*(robustBufferAccess: VkBool32, fullDrawIndexUint32: VkBool32, imageCubeArray: VkBool32, independentBlend: VkBool32, geometryShader: VkBool32, tessellationShader: VkBool32, sampleRateShading: VkBool32, dualSrcBlend: VkBool32, logicOp: VkBool32, multiDrawIndirect: VkBool32, drawIndirectFirstInstance: VkBool32, depthClamp: VkBool32, depthBiasClamp: VkBool32, fillModeNonSolid: VkBool32, depthBounds: VkBool32, wideLines: VkBool32, largePoints: VkBool32, alphaToOne: VkBool32, multiViewport: VkBool32, samplerAnisotropy: VkBool32, textureCompressionETC2: VkBool32, textureCompressionASTC_LDR: VkBool32, textureCompressionBC: VkBool32, occlusionQueryPrecise: VkBool32, pipelineStatisticsQuery: VkBool32, vertexPipelineStoresAndAtomics: VkBool32, fragmentStoresAndAtomics: VkBool32, shaderTessellationAndGeometryPointSize: VkBool32, shaderImageGatherExtended: VkBool32, shaderStorageImageExtendedFormats: VkBool32, shaderStorageImageMultisample: VkBool32, shaderStorageImageReadWithoutFormat: VkBool32, shaderStorageImageWriteWithoutFormat: VkBool32, shaderUniformBufferArrayDynamicIndexing: VkBool32, shaderSampledImageArrayDynamicIndexing: VkBool32, shaderStorageBufferArrayDynamicIndexing: VkBool32, shaderStorageImageArrayDynamicIndexing: VkBool32, shaderClipDistance: VkBool32, shaderCullDistance: VkBool32, shaderFloat64: VkBool32, shaderInt64: VkBool32, shaderInt16: VkBool32, shaderResourceResidency: VkBool32, shaderResourceMinLod: VkBool32, sparseBinding: VkBool32, sparseResidencyBuffer: VkBool32, sparseResidencyImage2D: VkBool32, sparseResidencyImage3D: VkBool32, sparseResidency2Samples: VkBool32, sparseResidency4Samples: VkBool32, sparseResidency8Samples: VkBool32, sparseResidency16Samples: VkBool32, sparseResidencyAliased: VkBool32, variableMultisampleRate: VkBool32, inheritedQueries: VkBool32): VkPhysicalDeviceFeatures = - result.robustBufferAccess = robustBufferAccess - result.fullDrawIndexUint32 = fullDrawIndexUint32 - result.imageCubeArray = imageCubeArray - result.independentBlend = independentBlend - result.geometryShader = geometryShader - result.tessellationShader = tessellationShader - result.sampleRateShading = sampleRateShading - result.dualSrcBlend = dualSrcBlend - result.logicOp = logicOp - result.multiDrawIndirect = multiDrawIndirect - result.drawIndirectFirstInstance = drawIndirectFirstInstance - result.depthClamp = depthClamp - result.depthBiasClamp = depthBiasClamp - result.fillModeNonSolid = fillModeNonSolid - result.depthBounds = depthBounds - result.wideLines = wideLines - result.largePoints = largePoints - result.alphaToOne = alphaToOne - result.multiViewport = multiViewport - result.samplerAnisotropy = samplerAnisotropy - result.textureCompressionETC2 = textureCompressionETC2 - result.textureCompressionASTC_LDR = textureCompressionASTC_LDR - result.textureCompressionBC = textureCompressionBC - result.occlusionQueryPrecise = occlusionQueryPrecise - result.pipelineStatisticsQuery = pipelineStatisticsQuery - result.vertexPipelineStoresAndAtomics = vertexPipelineStoresAndAtomics - result.fragmentStoresAndAtomics = fragmentStoresAndAtomics - result.shaderTessellationAndGeometryPointSize = shaderTessellationAndGeometryPointSize - result.shaderImageGatherExtended = shaderImageGatherExtended - result.shaderStorageImageExtendedFormats = shaderStorageImageExtendedFormats - result.shaderStorageImageMultisample = shaderStorageImageMultisample - result.shaderStorageImageReadWithoutFormat = shaderStorageImageReadWithoutFormat - result.shaderStorageImageWriteWithoutFormat = shaderStorageImageWriteWithoutFormat - result.shaderUniformBufferArrayDynamicIndexing = shaderUniformBufferArrayDynamicIndexing - result.shaderSampledImageArrayDynamicIndexing = shaderSampledImageArrayDynamicIndexing - result.shaderStorageBufferArrayDynamicIndexing = shaderStorageBufferArrayDynamicIndexing - result.shaderStorageImageArrayDynamicIndexing = shaderStorageImageArrayDynamicIndexing - result.shaderClipDistance = shaderClipDistance - result.shaderCullDistance = shaderCullDistance - result.shaderFloat64 = shaderFloat64 - result.shaderInt64 = shaderInt64 - result.shaderInt16 = shaderInt16 - result.shaderResourceResidency = shaderResourceResidency - result.shaderResourceMinLod = shaderResourceMinLod - result.sparseBinding = sparseBinding - result.sparseResidencyBuffer = sparseResidencyBuffer - result.sparseResidencyImage2D = sparseResidencyImage2D - result.sparseResidencyImage3D = sparseResidencyImage3D - result.sparseResidency2Samples = sparseResidency2Samples - result.sparseResidency4Samples = sparseResidency4Samples - result.sparseResidency8Samples = sparseResidency8Samples - result.sparseResidency16Samples = sparseResidency16Samples - result.sparseResidencyAliased = sparseResidencyAliased - result.variableMultisampleRate = variableMultisampleRate - result.inheritedQueries = inheritedQueries + result = VkPhysicalDeviceFeatures( + robustBufferAccess: robustBufferAccess, + fullDrawIndexUint32: fullDrawIndexUint32, + imageCubeArray: imageCubeArray, + independentBlend: independentBlend, + geometryShader: geometryShader, + tessellationShader: tessellationShader, + sampleRateShading: sampleRateShading, + dualSrcBlend: dualSrcBlend, + logicOp: logicOp, + multiDrawIndirect: multiDrawIndirect, + drawIndirectFirstInstance: drawIndirectFirstInstance, + depthClamp: depthClamp, + depthBiasClamp: depthBiasClamp, + fillModeNonSolid: fillModeNonSolid, + depthBounds: depthBounds, + wideLines: wideLines, + largePoints: largePoints, + alphaToOne: alphaToOne, + multiViewport: multiViewport, + samplerAnisotropy: samplerAnisotropy, + textureCompressionETC2: textureCompressionETC2, + textureCompressionASTC_LDR: textureCompressionASTC_LDR, + textureCompressionBC: textureCompressionBC, + occlusionQueryPrecise: occlusionQueryPrecise, + pipelineStatisticsQuery: pipelineStatisticsQuery, + vertexPipelineStoresAndAtomics: vertexPipelineStoresAndAtomics, + fragmentStoresAndAtomics: fragmentStoresAndAtomics, + shaderTessellationAndGeometryPointSize: shaderTessellationAndGeometryPointSize, + shaderImageGatherExtended: shaderImageGatherExtended, + shaderStorageImageExtendedFormats: shaderStorageImageExtendedFormats, + shaderStorageImageMultisample: shaderStorageImageMultisample, + shaderStorageImageReadWithoutFormat: shaderStorageImageReadWithoutFormat, + shaderStorageImageWriteWithoutFormat: shaderStorageImageWriteWithoutFormat, + shaderUniformBufferArrayDynamicIndexing: shaderUniformBufferArrayDynamicIndexing, + shaderSampledImageArrayDynamicIndexing: shaderSampledImageArrayDynamicIndexing, + shaderStorageBufferArrayDynamicIndexing: shaderStorageBufferArrayDynamicIndexing, + shaderStorageImageArrayDynamicIndexing: shaderStorageImageArrayDynamicIndexing, + shaderClipDistance: shaderClipDistance, + shaderCullDistance: shaderCullDistance, + shaderFloat64: shaderFloat64, + shaderInt64: shaderInt64, + shaderInt16: shaderInt16, + shaderResourceResidency: shaderResourceResidency, + shaderResourceMinLod: shaderResourceMinLod, + sparseBinding: sparseBinding, + sparseResidencyBuffer: sparseResidencyBuffer, + sparseResidencyImage2D: sparseResidencyImage2D, + sparseResidencyImage3D: sparseResidencyImage3D, + sparseResidency2Samples: sparseResidency2Samples, + sparseResidency4Samples: sparseResidency4Samples, + sparseResidency8Samples: sparseResidency8Samples, + sparseResidency16Samples: sparseResidency16Samples, + sparseResidencyAliased: sparseResidencyAliased, + variableMultisampleRate: variableMultisampleRate, + inheritedQueries: inheritedQueries, + ) proc newVkPhysicalDeviceSparseProperties*(residencyStandard2DBlockShape: VkBool32, residencyStandard2DMultisampleBlockShape: VkBool32, residencyStandard3DBlockShape: VkBool32, residencyAlignedMipSize: VkBool32, residencyNonResidentStrict: VkBool32): VkPhysicalDeviceSparseProperties = - result.residencyStandard2DBlockShape = residencyStandard2DBlockShape - result.residencyStandard2DMultisampleBlockShape = residencyStandard2DMultisampleBlockShape - result.residencyStandard3DBlockShape = residencyStandard3DBlockShape - result.residencyAlignedMipSize = residencyAlignedMipSize - result.residencyNonResidentStrict = residencyNonResidentStrict + result = VkPhysicalDeviceSparseProperties( + residencyStandard2DBlockShape: residencyStandard2DBlockShape, + residencyStandard2DMultisampleBlockShape: residencyStandard2DMultisampleBlockShape, + residencyStandard3DBlockShape: residencyStandard3DBlockShape, + residencyAlignedMipSize: residencyAlignedMipSize, + residencyNonResidentStrict: residencyNonResidentStrict, + ) proc newVkPhysicalDeviceLimits*(maxImageDimension1D: uint32, maxImageDimension2D: uint32, maxImageDimension3D: uint32, maxImageDimensionCube: uint32, maxImageArrayLayers: uint32, maxTexelBufferElements: uint32, maxUniformBufferRange: uint32, maxStorageBufferRange: uint32, maxPushConstantsSize: uint32, maxMemoryAllocationCount: uint32, maxSamplerAllocationCount: uint32, bufferImageGranularity: VkDeviceSize, sparseAddressSpaceSize: VkDeviceSize, maxBoundDescriptorSets: uint32, maxPerStageDescriptorSamplers: uint32, maxPerStageDescriptorUniformBuffers: uint32, maxPerStageDescriptorStorageBuffers: uint32, maxPerStageDescriptorSampledImages: uint32, maxPerStageDescriptorStorageImages: uint32, maxPerStageDescriptorInputAttachments: uint32, maxPerStageResources: uint32, maxDescriptorSetSamplers: uint32, maxDescriptorSetUniformBuffers: uint32, maxDescriptorSetUniformBuffersDynamic: uint32, maxDescriptorSetStorageBuffers: uint32, maxDescriptorSetStorageBuffersDynamic: uint32, maxDescriptorSetSampledImages: uint32, maxDescriptorSetStorageImages: uint32, maxDescriptorSetInputAttachments: uint32, maxVertexInputAttributes: uint32, maxVertexInputBindings: uint32, maxVertexInputAttributeOffset: uint32, maxVertexInputBindingStride: uint32, maxVertexOutputComponents: uint32, maxTessellationGenerationLevel: uint32, maxTessellationPatchSize: uint32, maxTessellationControlPerVertexInputComponents: uint32, maxTessellationControlPerVertexOutputComponents: uint32, maxTessellationControlPerPatchOutputComponents: uint32, maxTessellationControlTotalOutputComponents: uint32, maxTessellationEvaluationInputComponents: uint32, maxTessellationEvaluationOutputComponents: uint32, maxGeometryShaderInvocations: uint32, maxGeometryInputComponents: uint32, maxGeometryOutputComponents: uint32, maxGeometryOutputVertices: uint32, maxGeometryTotalOutputComponents: uint32, maxFragmentInputComponents: uint32, maxFragmentOutputAttachments: uint32, maxFragmentDualSrcAttachments: uint32, maxFragmentCombinedOutputResources: uint32, maxComputeSharedMemorySize: uint32, maxComputeWorkGroupCount: array[3, uint32], maxComputeWorkGroupInvocations: uint32, maxComputeWorkGroupSize: array[3, uint32], subPixelPrecisionBits: uint32, subTexelPrecisionBits: uint32, mipmapPrecisionBits: uint32, maxDrawIndexedIndexValue: uint32, maxDrawIndirectCount: uint32, maxSamplerLodBias: float32, maxSamplerAnisotropy: float32, maxViewports: uint32, maxViewportDimensions: array[2, uint32], viewportBoundsRange: array[2, float32], viewportSubPixelBits: uint32, minMemoryMapAlignment: uint, minTexelBufferOffsetAlignment: VkDeviceSize, minUniformBufferOffsetAlignment: VkDeviceSize, minStorageBufferOffsetAlignment: VkDeviceSize, minTexelOffset: int32, maxTexelOffset: uint32, minTexelGatherOffset: int32, maxTexelGatherOffset: uint32, minInterpolationOffset: float32, maxInterpolationOffset: float32, subPixelInterpolationOffsetBits: uint32, maxFramebufferWidth: uint32, maxFramebufferHeight: uint32, maxFramebufferLayers: uint32, framebufferColorSampleCounts: VkSampleCountFlags, framebufferDepthSampleCounts: VkSampleCountFlags, framebufferStencilSampleCounts: VkSampleCountFlags, framebufferNoAttachmentsSampleCounts: VkSampleCountFlags, maxColorAttachments: uint32, sampledImageColorSampleCounts: VkSampleCountFlags, sampledImageIntegerSampleCounts: VkSampleCountFlags, sampledImageDepthSampleCounts: VkSampleCountFlags, sampledImageStencilSampleCounts: VkSampleCountFlags, storageImageSampleCounts: VkSampleCountFlags, maxSampleMaskWords: uint32, timestampComputeAndGraphics: VkBool32, timestampPeriod: float32, maxClipDistances: uint32, maxCullDistances: uint32, maxCombinedClipAndCullDistances: uint32, discreteQueuePriorities: uint32, pointSizeRange: array[2, float32], lineWidthRange: array[2, float32], pointSizeGranularity: float32, lineWidthGranularity: float32, strictLines: VkBool32, standardSampleLocations: VkBool32, optimalBufferCopyOffsetAlignment: VkDeviceSize, optimalBufferCopyRowPitchAlignment: VkDeviceSize, nonCoherentAtomSize: VkDeviceSize): VkPhysicalDeviceLimits = - result.maxImageDimension1D = maxImageDimension1D - result.maxImageDimension2D = maxImageDimension2D - result.maxImageDimension3D = maxImageDimension3D - result.maxImageDimensionCube = maxImageDimensionCube - result.maxImageArrayLayers = maxImageArrayLayers - result.maxTexelBufferElements = maxTexelBufferElements - result.maxUniformBufferRange = maxUniformBufferRange - result.maxStorageBufferRange = maxStorageBufferRange - result.maxPushConstantsSize = maxPushConstantsSize - result.maxMemoryAllocationCount = maxMemoryAllocationCount - result.maxSamplerAllocationCount = maxSamplerAllocationCount - result.bufferImageGranularity = bufferImageGranularity - result.sparseAddressSpaceSize = sparseAddressSpaceSize - result.maxBoundDescriptorSets = maxBoundDescriptorSets - result.maxPerStageDescriptorSamplers = maxPerStageDescriptorSamplers - result.maxPerStageDescriptorUniformBuffers = maxPerStageDescriptorUniformBuffers - result.maxPerStageDescriptorStorageBuffers = maxPerStageDescriptorStorageBuffers - result.maxPerStageDescriptorSampledImages = maxPerStageDescriptorSampledImages - result.maxPerStageDescriptorStorageImages = maxPerStageDescriptorStorageImages - result.maxPerStageDescriptorInputAttachments = maxPerStageDescriptorInputAttachments - result.maxPerStageResources = maxPerStageResources - result.maxDescriptorSetSamplers = maxDescriptorSetSamplers - result.maxDescriptorSetUniformBuffers = maxDescriptorSetUniformBuffers - result.maxDescriptorSetUniformBuffersDynamic = maxDescriptorSetUniformBuffersDynamic - result.maxDescriptorSetStorageBuffers = maxDescriptorSetStorageBuffers - result.maxDescriptorSetStorageBuffersDynamic = maxDescriptorSetStorageBuffersDynamic - result.maxDescriptorSetSampledImages = maxDescriptorSetSampledImages - result.maxDescriptorSetStorageImages = maxDescriptorSetStorageImages - result.maxDescriptorSetInputAttachments = maxDescriptorSetInputAttachments - result.maxVertexInputAttributes = maxVertexInputAttributes - result.maxVertexInputBindings = maxVertexInputBindings - result.maxVertexInputAttributeOffset = maxVertexInputAttributeOffset - result.maxVertexInputBindingStride = maxVertexInputBindingStride - result.maxVertexOutputComponents = maxVertexOutputComponents - result.maxTessellationGenerationLevel = maxTessellationGenerationLevel - result.maxTessellationPatchSize = maxTessellationPatchSize - result.maxTessellationControlPerVertexInputComponents = maxTessellationControlPerVertexInputComponents - result.maxTessellationControlPerVertexOutputComponents = maxTessellationControlPerVertexOutputComponents - result.maxTessellationControlPerPatchOutputComponents = maxTessellationControlPerPatchOutputComponents - result.maxTessellationControlTotalOutputComponents = maxTessellationControlTotalOutputComponents - result.maxTessellationEvaluationInputComponents = maxTessellationEvaluationInputComponents - result.maxTessellationEvaluationOutputComponents = maxTessellationEvaluationOutputComponents - result.maxGeometryShaderInvocations = maxGeometryShaderInvocations - result.maxGeometryInputComponents = maxGeometryInputComponents - result.maxGeometryOutputComponents = maxGeometryOutputComponents - result.maxGeometryOutputVertices = maxGeometryOutputVertices - result.maxGeometryTotalOutputComponents = maxGeometryTotalOutputComponents - result.maxFragmentInputComponents = maxFragmentInputComponents - result.maxFragmentOutputAttachments = maxFragmentOutputAttachments - result.maxFragmentDualSrcAttachments = maxFragmentDualSrcAttachments - result.maxFragmentCombinedOutputResources = maxFragmentCombinedOutputResources - result.maxComputeSharedMemorySize = maxComputeSharedMemorySize - result.maxComputeWorkGroupCount = maxComputeWorkGroupCount - result.maxComputeWorkGroupInvocations = maxComputeWorkGroupInvocations - result.maxComputeWorkGroupSize = maxComputeWorkGroupSize - result.subPixelPrecisionBits = subPixelPrecisionBits - result.subTexelPrecisionBits = subTexelPrecisionBits - result.mipmapPrecisionBits = mipmapPrecisionBits - result.maxDrawIndexedIndexValue = maxDrawIndexedIndexValue - result.maxDrawIndirectCount = maxDrawIndirectCount - result.maxSamplerLodBias = maxSamplerLodBias - result.maxSamplerAnisotropy = maxSamplerAnisotropy - result.maxViewports = maxViewports - result.maxViewportDimensions = maxViewportDimensions - result.viewportBoundsRange = viewportBoundsRange - result.viewportSubPixelBits = viewportSubPixelBits - result.minMemoryMapAlignment = minMemoryMapAlignment - result.minTexelBufferOffsetAlignment = minTexelBufferOffsetAlignment - result.minUniformBufferOffsetAlignment = minUniformBufferOffsetAlignment - result.minStorageBufferOffsetAlignment = minStorageBufferOffsetAlignment - result.minTexelOffset = minTexelOffset - result.maxTexelOffset = maxTexelOffset - result.minTexelGatherOffset = minTexelGatherOffset - result.maxTexelGatherOffset = maxTexelGatherOffset - result.minInterpolationOffset = minInterpolationOffset - result.maxInterpolationOffset = maxInterpolationOffset - result.subPixelInterpolationOffsetBits = subPixelInterpolationOffsetBits - result.maxFramebufferWidth = maxFramebufferWidth - result.maxFramebufferHeight = maxFramebufferHeight - result.maxFramebufferLayers = maxFramebufferLayers - result.framebufferColorSampleCounts = framebufferColorSampleCounts - result.framebufferDepthSampleCounts = framebufferDepthSampleCounts - result.framebufferStencilSampleCounts = framebufferStencilSampleCounts - result.framebufferNoAttachmentsSampleCounts = framebufferNoAttachmentsSampleCounts - result.maxColorAttachments = maxColorAttachments - result.sampledImageColorSampleCounts = sampledImageColorSampleCounts - result.sampledImageIntegerSampleCounts = sampledImageIntegerSampleCounts - result.sampledImageDepthSampleCounts = sampledImageDepthSampleCounts - result.sampledImageStencilSampleCounts = sampledImageStencilSampleCounts - result.storageImageSampleCounts = storageImageSampleCounts - result.maxSampleMaskWords = maxSampleMaskWords - result.timestampComputeAndGraphics = timestampComputeAndGraphics - result.timestampPeriod = timestampPeriod - result.maxClipDistances = maxClipDistances - result.maxCullDistances = maxCullDistances - result.maxCombinedClipAndCullDistances = maxCombinedClipAndCullDistances - result.discreteQueuePriorities = discreteQueuePriorities - result.pointSizeRange = pointSizeRange - result.lineWidthRange = lineWidthRange - result.pointSizeGranularity = pointSizeGranularity - result.lineWidthGranularity = lineWidthGranularity - result.strictLines = strictLines - result.standardSampleLocations = standardSampleLocations - result.optimalBufferCopyOffsetAlignment = optimalBufferCopyOffsetAlignment - result.optimalBufferCopyRowPitchAlignment = optimalBufferCopyRowPitchAlignment - result.nonCoherentAtomSize = nonCoherentAtomSize + result = VkPhysicalDeviceLimits( + maxImageDimension1D: maxImageDimension1D, + maxImageDimension2D: maxImageDimension2D, + maxImageDimension3D: maxImageDimension3D, + maxImageDimensionCube: maxImageDimensionCube, + maxImageArrayLayers: maxImageArrayLayers, + maxTexelBufferElements: maxTexelBufferElements, + maxUniformBufferRange: maxUniformBufferRange, + maxStorageBufferRange: maxStorageBufferRange, + maxPushConstantsSize: maxPushConstantsSize, + maxMemoryAllocationCount: maxMemoryAllocationCount, + maxSamplerAllocationCount: maxSamplerAllocationCount, + bufferImageGranularity: bufferImageGranularity, + sparseAddressSpaceSize: sparseAddressSpaceSize, + maxBoundDescriptorSets: maxBoundDescriptorSets, + maxPerStageDescriptorSamplers: maxPerStageDescriptorSamplers, + maxPerStageDescriptorUniformBuffers: maxPerStageDescriptorUniformBuffers, + maxPerStageDescriptorStorageBuffers: maxPerStageDescriptorStorageBuffers, + maxPerStageDescriptorSampledImages: maxPerStageDescriptorSampledImages, + maxPerStageDescriptorStorageImages: maxPerStageDescriptorStorageImages, + maxPerStageDescriptorInputAttachments: maxPerStageDescriptorInputAttachments, + maxPerStageResources: maxPerStageResources, + maxDescriptorSetSamplers: maxDescriptorSetSamplers, + maxDescriptorSetUniformBuffers: maxDescriptorSetUniformBuffers, + maxDescriptorSetUniformBuffersDynamic: maxDescriptorSetUniformBuffersDynamic, + maxDescriptorSetStorageBuffers: maxDescriptorSetStorageBuffers, + maxDescriptorSetStorageBuffersDynamic: maxDescriptorSetStorageBuffersDynamic, + maxDescriptorSetSampledImages: maxDescriptorSetSampledImages, + maxDescriptorSetStorageImages: maxDescriptorSetStorageImages, + maxDescriptorSetInputAttachments: maxDescriptorSetInputAttachments, + maxVertexInputAttributes: maxVertexInputAttributes, + maxVertexInputBindings: maxVertexInputBindings, + maxVertexInputAttributeOffset: maxVertexInputAttributeOffset, + maxVertexInputBindingStride: maxVertexInputBindingStride, + maxVertexOutputComponents: maxVertexOutputComponents, + maxTessellationGenerationLevel: maxTessellationGenerationLevel, + maxTessellationPatchSize: maxTessellationPatchSize, + maxTessellationControlPerVertexInputComponents: maxTessellationControlPerVertexInputComponents, + maxTessellationControlPerVertexOutputComponents: maxTessellationControlPerVertexOutputComponents, + maxTessellationControlPerPatchOutputComponents: maxTessellationControlPerPatchOutputComponents, + maxTessellationControlTotalOutputComponents: maxTessellationControlTotalOutputComponents, + maxTessellationEvaluationInputComponents: maxTessellationEvaluationInputComponents, + maxTessellationEvaluationOutputComponents: maxTessellationEvaluationOutputComponents, + maxGeometryShaderInvocations: maxGeometryShaderInvocations, + maxGeometryInputComponents: maxGeometryInputComponents, + maxGeometryOutputComponents: maxGeometryOutputComponents, + maxGeometryOutputVertices: maxGeometryOutputVertices, + maxGeometryTotalOutputComponents: maxGeometryTotalOutputComponents, + maxFragmentInputComponents: maxFragmentInputComponents, + maxFragmentOutputAttachments: maxFragmentOutputAttachments, + maxFragmentDualSrcAttachments: maxFragmentDualSrcAttachments, + maxFragmentCombinedOutputResources: maxFragmentCombinedOutputResources, + maxComputeSharedMemorySize: maxComputeSharedMemorySize, + maxComputeWorkGroupCount: maxComputeWorkGroupCount, + maxComputeWorkGroupInvocations: maxComputeWorkGroupInvocations, + maxComputeWorkGroupSize: maxComputeWorkGroupSize, + subPixelPrecisionBits: subPixelPrecisionBits, + subTexelPrecisionBits: subTexelPrecisionBits, + mipmapPrecisionBits: mipmapPrecisionBits, + maxDrawIndexedIndexValue: maxDrawIndexedIndexValue, + maxDrawIndirectCount: maxDrawIndirectCount, + maxSamplerLodBias: maxSamplerLodBias, + maxSamplerAnisotropy: maxSamplerAnisotropy, + maxViewports: maxViewports, + maxViewportDimensions: maxViewportDimensions, + viewportBoundsRange: viewportBoundsRange, + viewportSubPixelBits: viewportSubPixelBits, + minMemoryMapAlignment: minMemoryMapAlignment, + minTexelBufferOffsetAlignment: minTexelBufferOffsetAlignment, + minUniformBufferOffsetAlignment: minUniformBufferOffsetAlignment, + minStorageBufferOffsetAlignment: minStorageBufferOffsetAlignment, + minTexelOffset: minTexelOffset, + maxTexelOffset: maxTexelOffset, + minTexelGatherOffset: minTexelGatherOffset, + maxTexelGatherOffset: maxTexelGatherOffset, + minInterpolationOffset: minInterpolationOffset, + maxInterpolationOffset: maxInterpolationOffset, + subPixelInterpolationOffsetBits: subPixelInterpolationOffsetBits, + maxFramebufferWidth: maxFramebufferWidth, + maxFramebufferHeight: maxFramebufferHeight, + maxFramebufferLayers: maxFramebufferLayers, + framebufferColorSampleCounts: framebufferColorSampleCounts, + framebufferDepthSampleCounts: framebufferDepthSampleCounts, + framebufferStencilSampleCounts: framebufferStencilSampleCounts, + framebufferNoAttachmentsSampleCounts: framebufferNoAttachmentsSampleCounts, + maxColorAttachments: maxColorAttachments, + sampledImageColorSampleCounts: sampledImageColorSampleCounts, + sampledImageIntegerSampleCounts: sampledImageIntegerSampleCounts, + sampledImageDepthSampleCounts: sampledImageDepthSampleCounts, + sampledImageStencilSampleCounts: sampledImageStencilSampleCounts, + storageImageSampleCounts: storageImageSampleCounts, + maxSampleMaskWords: maxSampleMaskWords, + timestampComputeAndGraphics: timestampComputeAndGraphics, + timestampPeriod: timestampPeriod, + maxClipDistances: maxClipDistances, + maxCullDistances: maxCullDistances, + maxCombinedClipAndCullDistances: maxCombinedClipAndCullDistances, + discreteQueuePriorities: discreteQueuePriorities, + pointSizeRange: pointSizeRange, + lineWidthRange: lineWidthRange, + pointSizeGranularity: pointSizeGranularity, + lineWidthGranularity: lineWidthGranularity, + strictLines: strictLines, + standardSampleLocations: standardSampleLocations, + optimalBufferCopyOffsetAlignment: optimalBufferCopyOffsetAlignment, + optimalBufferCopyRowPitchAlignment: optimalBufferCopyRowPitchAlignment, + nonCoherentAtomSize: nonCoherentAtomSize, + ) proc newVkSemaphoreCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkSemaphoreCreateFlags = 0.VkSemaphoreCreateFlags): VkSemaphoreCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags + result = VkSemaphoreCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + ) proc newVkQueryPoolCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkQueryPoolCreateFlags = 0.VkQueryPoolCreateFlags, queryType: VkQueryType, queryCount: uint32, pipelineStatistics: VkQueryPipelineStatisticFlags): VkQueryPoolCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.queryType = queryType - result.queryCount = queryCount - result.pipelineStatistics = pipelineStatistics + result = VkQueryPoolCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + queryType: queryType, + queryCount: queryCount, + pipelineStatistics: pipelineStatistics, + ) proc newVkFramebufferCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkFramebufferCreateFlags = 0.VkFramebufferCreateFlags, renderPass: VkRenderPass, attachmentCount: uint32, pAttachments: ptr VkImageView, width: uint32, height: uint32, layers: uint32): VkFramebufferCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.renderPass = renderPass - result.attachmentCount = attachmentCount - result.pAttachments = pAttachments - result.width = width - result.height = height - result.layers = layers + result = VkFramebufferCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + renderPass: renderPass, + attachmentCount: attachmentCount, + pAttachments: pAttachments, + width: width, + height: height, + layers: layers, + ) proc newVkDrawIndirectCommand*(vertexCount: uint32, instanceCount: uint32, firstVertex: uint32, firstInstance: uint32): VkDrawIndirectCommand = - result.vertexCount = vertexCount - result.instanceCount = instanceCount - result.firstVertex = firstVertex - result.firstInstance = firstInstance + result = VkDrawIndirectCommand( + vertexCount: vertexCount, + instanceCount: instanceCount, + firstVertex: firstVertex, + firstInstance: firstInstance, + ) proc newVkDrawIndexedIndirectCommand*(indexCount: uint32, instanceCount: uint32, firstIndex: uint32, vertexOffset: int32, firstInstance: uint32): VkDrawIndexedIndirectCommand = - result.indexCount = indexCount - result.instanceCount = instanceCount - result.firstIndex = firstIndex - result.vertexOffset = vertexOffset - result.firstInstance = firstInstance + result = VkDrawIndexedIndirectCommand( + indexCount: indexCount, + instanceCount: instanceCount, + firstIndex: firstIndex, + vertexOffset: vertexOffset, + firstInstance: firstInstance, + ) proc newVkDispatchIndirectCommand*(x: uint32, y: uint32, z: uint32): VkDispatchIndirectCommand = - result.x = x - result.y = y - result.z = z + result = VkDispatchIndirectCommand( + x: x, + y: y, + z: z, + ) proc newVkMultiDrawInfoEXT*(firstVertex: uint32, vertexCount: uint32): VkMultiDrawInfoEXT = - result.firstVertex = firstVertex - result.vertexCount = vertexCount + result = VkMultiDrawInfoEXT( + firstVertex: firstVertex, + vertexCount: vertexCount, + ) proc newVkMultiDrawIndexedInfoEXT*(firstIndex: uint32, indexCount: uint32, vertexOffset: int32): VkMultiDrawIndexedInfoEXT = - result.firstIndex = firstIndex - result.indexCount = indexCount - result.vertexOffset = vertexOffset + result = VkMultiDrawIndexedInfoEXT( + firstIndex: firstIndex, + indexCount: indexCount, + vertexOffset: vertexOffset, + ) proc newVkSubmitInfo*(sType: VkStructureType, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, pWaitDstStageMask: ptr VkPipelineStageFlags, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer, signalSemaphoreCount: uint32, pSignalSemaphores: ptr VkSemaphore): VkSubmitInfo = - result.sType = sType - result.pNext = pNext - result.waitSemaphoreCount = waitSemaphoreCount - result.pWaitSemaphores = pWaitSemaphores - result.pWaitDstStageMask = pWaitDstStageMask - result.commandBufferCount = commandBufferCount - result.pCommandBuffers = pCommandBuffers - result.signalSemaphoreCount = signalSemaphoreCount - result.pSignalSemaphores = pSignalSemaphores + result = VkSubmitInfo( + sType: sType, + pNext: pNext, + waitSemaphoreCount: waitSemaphoreCount, + pWaitSemaphores: pWaitSemaphores, + pWaitDstStageMask: pWaitDstStageMask, + commandBufferCount: commandBufferCount, + pCommandBuffers: pCommandBuffers, + signalSemaphoreCount: signalSemaphoreCount, + pSignalSemaphores: pSignalSemaphores, + ) proc newVkDisplayPropertiesKHR*(display: VkDisplayKHR, displayName: cstring, physicalDimensions: VkExtent2D, physicalResolution: VkExtent2D, supportedTransforms: VkSurfaceTransformFlagsKHR, planeReorderPossible: VkBool32, persistentContent: VkBool32): VkDisplayPropertiesKHR = - result.display = display - result.displayName = displayName - result.physicalDimensions = physicalDimensions - result.physicalResolution = physicalResolution - result.supportedTransforms = supportedTransforms - result.planeReorderPossible = planeReorderPossible - result.persistentContent = persistentContent + result = VkDisplayPropertiesKHR( + display: display, + displayName: displayName, + physicalDimensions: physicalDimensions, + physicalResolution: physicalResolution, + supportedTransforms: supportedTransforms, + planeReorderPossible: planeReorderPossible, + persistentContent: persistentContent, + ) proc newVkDisplayPlanePropertiesKHR*(currentDisplay: VkDisplayKHR, currentStackIndex: uint32): VkDisplayPlanePropertiesKHR = - result.currentDisplay = currentDisplay - result.currentStackIndex = currentStackIndex + result = VkDisplayPlanePropertiesKHR( + currentDisplay: currentDisplay, + currentStackIndex: currentStackIndex, + ) proc newVkDisplayModeParametersKHR*(visibleRegion: VkExtent2D, refreshRate: uint32): VkDisplayModeParametersKHR = - result.visibleRegion = visibleRegion - result.refreshRate = refreshRate + result = VkDisplayModeParametersKHR( + visibleRegion: visibleRegion, + refreshRate: refreshRate, + ) proc newVkDisplayModePropertiesKHR*(displayMode: VkDisplayModeKHR, parameters: VkDisplayModeParametersKHR): VkDisplayModePropertiesKHR = - result.displayMode = displayMode - result.parameters = parameters + result = VkDisplayModePropertiesKHR( + displayMode: displayMode, + parameters: parameters, + ) proc newVkDisplayModeCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkDisplayModeCreateFlagsKHR = 0.VkDisplayModeCreateFlagsKHR, parameters: VkDisplayModeParametersKHR): VkDisplayModeCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.parameters = parameters + result = VkDisplayModeCreateInfoKHR( + sType: sType, + pNext: pNext, + flags: flags, + parameters: parameters, + ) proc newVkDisplayPlaneCapabilitiesKHR*(supportedAlpha: VkDisplayPlaneAlphaFlagsKHR, minSrcPosition: VkOffset2D, maxSrcPosition: VkOffset2D, minSrcExtent: VkExtent2D, maxSrcExtent: VkExtent2D, minDstPosition: VkOffset2D, maxDstPosition: VkOffset2D, minDstExtent: VkExtent2D, maxDstExtent: VkExtent2D): VkDisplayPlaneCapabilitiesKHR = - result.supportedAlpha = supportedAlpha - result.minSrcPosition = minSrcPosition - result.maxSrcPosition = maxSrcPosition - result.minSrcExtent = minSrcExtent - result.maxSrcExtent = maxSrcExtent - result.minDstPosition = minDstPosition - result.maxDstPosition = maxDstPosition - result.minDstExtent = minDstExtent - result.maxDstExtent = maxDstExtent + result = VkDisplayPlaneCapabilitiesKHR( + supportedAlpha: supportedAlpha, + minSrcPosition: minSrcPosition, + maxSrcPosition: maxSrcPosition, + minSrcExtent: minSrcExtent, + maxSrcExtent: maxSrcExtent, + minDstPosition: minDstPosition, + maxDstPosition: maxDstPosition, + minDstExtent: minDstExtent, + maxDstExtent: maxDstExtent, + ) proc newVkDisplaySurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkDisplaySurfaceCreateFlagsKHR = 0.VkDisplaySurfaceCreateFlagsKHR, displayMode: VkDisplayModeKHR, planeIndex: uint32, planeStackIndex: uint32, transform: VkSurfaceTransformFlagBitsKHR, globalAlpha: float32, alphaMode: VkDisplayPlaneAlphaFlagBitsKHR, imageExtent: VkExtent2D): VkDisplaySurfaceCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.displayMode = displayMode - result.planeIndex = planeIndex - result.planeStackIndex = planeStackIndex - result.transform = transform - result.globalAlpha = globalAlpha - result.alphaMode = alphaMode - result.imageExtent = imageExtent + result = VkDisplaySurfaceCreateInfoKHR( + sType: sType, + pNext: pNext, + flags: flags, + displayMode: displayMode, + planeIndex: planeIndex, + planeStackIndex: planeStackIndex, + transform: transform, + globalAlpha: globalAlpha, + alphaMode: alphaMode, + imageExtent: imageExtent, + ) proc newVkDisplayPresentInfoKHR*(sType: VkStructureType, pNext: pointer = nil, srcRect: VkRect2D, dstRect: VkRect2D, persistent: VkBool32): VkDisplayPresentInfoKHR = - result.sType = sType - result.pNext = pNext - result.srcRect = srcRect - result.dstRect = dstRect - result.persistent = persistent + result = VkDisplayPresentInfoKHR( + sType: sType, + pNext: pNext, + srcRect: srcRect, + dstRect: dstRect, + persistent: persistent, + ) proc newVkSurfaceCapabilitiesKHR*(minImageCount: uint32, maxImageCount: uint32, currentExtent: VkExtent2D, minImageExtent: VkExtent2D, maxImageExtent: VkExtent2D, maxImageArrayLayers: uint32, supportedTransforms: VkSurfaceTransformFlagsKHR, currentTransform: VkSurfaceTransformFlagBitsKHR, supportedCompositeAlpha: VkCompositeAlphaFlagsKHR, supportedUsageFlags: VkImageUsageFlags): VkSurfaceCapabilitiesKHR = - result.minImageCount = minImageCount - result.maxImageCount = maxImageCount - result.currentExtent = currentExtent - result.minImageExtent = minImageExtent - result.maxImageExtent = maxImageExtent - result.maxImageArrayLayers = maxImageArrayLayers - result.supportedTransforms = supportedTransforms - result.currentTransform = currentTransform - result.supportedCompositeAlpha = supportedCompositeAlpha - result.supportedUsageFlags = supportedUsageFlags + result = VkSurfaceCapabilitiesKHR( + minImageCount: minImageCount, + maxImageCount: maxImageCount, + currentExtent: currentExtent, + minImageExtent: minImageExtent, + maxImageExtent: maxImageExtent, + maxImageArrayLayers: maxImageArrayLayers, + supportedTransforms: supportedTransforms, + currentTransform: currentTransform, + supportedCompositeAlpha: supportedCompositeAlpha, + supportedUsageFlags: supportedUsageFlags, + ) proc newVkAndroidSurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkAndroidSurfaceCreateFlagsKHR = 0.VkAndroidSurfaceCreateFlagsKHR, window: ptr ANativeWindow): VkAndroidSurfaceCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.window = window + result = VkAndroidSurfaceCreateInfoKHR( + sType: sType, + pNext: pNext, + flags: flags, + window: window, + ) proc newVkViSurfaceCreateInfoNN*(sType: VkStructureType, pNext: pointer = nil, flags: VkViSurfaceCreateFlagsNN = 0.VkViSurfaceCreateFlagsNN, window: pointer = nil): VkViSurfaceCreateInfoNN = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.window = window + result = VkViSurfaceCreateInfoNN( + sType: sType, + pNext: pNext, + flags: flags, + window: window, + ) proc newVkWaylandSurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkWaylandSurfaceCreateFlagsKHR = 0.VkWaylandSurfaceCreateFlagsKHR, display: ptr wl_display, surface: ptr wl_surface): VkWaylandSurfaceCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.display = display - result.surface = surface + result = VkWaylandSurfaceCreateInfoKHR( + sType: sType, + pNext: pNext, + flags: flags, + display: display, + surface: surface, + ) proc newVkWin32SurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkWin32SurfaceCreateFlagsKHR = 0.VkWin32SurfaceCreateFlagsKHR, hinstance: HINSTANCE, hwnd: HWND): VkWin32SurfaceCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.hinstance = hinstance - result.hwnd = hwnd + result = VkWin32SurfaceCreateInfoKHR( + sType: sType, + pNext: pNext, + flags: flags, + hinstance: hinstance, + hwnd: hwnd, + ) proc newVkXlibSurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkXlibSurfaceCreateFlagsKHR = 0.VkXlibSurfaceCreateFlagsKHR, dpy: ptr Display, window: Window): VkXlibSurfaceCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.dpy = dpy - result.window = window + result = VkXlibSurfaceCreateInfoKHR( + sType: sType, + pNext: pNext, + flags: flags, + dpy: dpy, + window: window, + ) proc newVkXcbSurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkXcbSurfaceCreateFlagsKHR = 0.VkXcbSurfaceCreateFlagsKHR, connection: ptr xcb_connection_t, window: xcb_window_t): VkXcbSurfaceCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.connection = connection - result.window = window + result = VkXcbSurfaceCreateInfoKHR( + sType: sType, + pNext: pNext, + flags: flags, + connection: connection, + window: window, + ) proc newVkDirectFBSurfaceCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkDirectFBSurfaceCreateFlagsEXT = 0.VkDirectFBSurfaceCreateFlagsEXT, dfb: ptr IDirectFB, surface: ptr IDirectFBSurface): VkDirectFBSurfaceCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.dfb = dfb - result.surface = surface + result = VkDirectFBSurfaceCreateInfoEXT( + sType: sType, + pNext: pNext, + flags: flags, + dfb: dfb, + surface: surface, + ) proc newVkImagePipeSurfaceCreateInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, flags: VkImagePipeSurfaceCreateFlagsFUCHSIA = 0.VkImagePipeSurfaceCreateFlagsFUCHSIA, imagePipeHandle: zx_handle_t): VkImagePipeSurfaceCreateInfoFUCHSIA = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.imagePipeHandle = imagePipeHandle + result = VkImagePipeSurfaceCreateInfoFUCHSIA( + sType: sType, + pNext: pNext, + flags: flags, + imagePipeHandle: imagePipeHandle, + ) proc newVkStreamDescriptorSurfaceCreateInfoGGP*(sType: VkStructureType, pNext: pointer = nil, flags: VkStreamDescriptorSurfaceCreateFlagsGGP = 0.VkStreamDescriptorSurfaceCreateFlagsGGP, streamDescriptor: GgpStreamDescriptor): VkStreamDescriptorSurfaceCreateInfoGGP = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.streamDescriptor = streamDescriptor + result = VkStreamDescriptorSurfaceCreateInfoGGP( + sType: sType, + pNext: pNext, + flags: flags, + streamDescriptor: streamDescriptor, + ) proc newVkScreenSurfaceCreateInfoQNX*(sType: VkStructureType, pNext: pointer = nil, flags: VkScreenSurfaceCreateFlagsQNX = 0.VkScreenSurfaceCreateFlagsQNX, context: ptr screen_context, window: ptr screen_window): VkScreenSurfaceCreateInfoQNX = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.context = context - result.window = window + result = VkScreenSurfaceCreateInfoQNX( + sType: sType, + pNext: pNext, + flags: flags, + context: context, + window: window, + ) proc newVkSurfaceFormatKHR*(format: VkFormat, colorSpace: VkColorSpaceKHR): VkSurfaceFormatKHR = - result.format = format - result.colorSpace = colorSpace + result = VkSurfaceFormatKHR( + format: format, + colorSpace: colorSpace, + ) proc newVkSwapchainCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkSwapchainCreateFlagsKHR = 0.VkSwapchainCreateFlagsKHR, surface: VkSurfaceKHR, minImageCount: uint32, imageFormat: VkFormat, imageColorSpace: VkColorSpaceKHR, imageExtent: VkExtent2D, imageArrayLayers: uint32, imageUsage: VkImageUsageFlags, imageSharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32, preTransform: VkSurfaceTransformFlagBitsKHR, compositeAlpha: VkCompositeAlphaFlagBitsKHR, presentMode: VkPresentModeKHR, clipped: VkBool32, oldSwapchain: VkSwapchainKHR): VkSwapchainCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.surface = surface - result.minImageCount = minImageCount - result.imageFormat = imageFormat - result.imageColorSpace = imageColorSpace - result.imageExtent = imageExtent - result.imageArrayLayers = imageArrayLayers - result.imageUsage = imageUsage - result.imageSharingMode = imageSharingMode - result.queueFamilyIndexCount = queueFamilyIndexCount - result.pQueueFamilyIndices = pQueueFamilyIndices - result.preTransform = preTransform - result.compositeAlpha = compositeAlpha - result.presentMode = presentMode - result.clipped = clipped - result.oldSwapchain = oldSwapchain + result = VkSwapchainCreateInfoKHR( + sType: sType, + pNext: pNext, + flags: flags, + surface: surface, + minImageCount: minImageCount, + imageFormat: imageFormat, + imageColorSpace: imageColorSpace, + imageExtent: imageExtent, + imageArrayLayers: imageArrayLayers, + imageUsage: imageUsage, + imageSharingMode: imageSharingMode, + queueFamilyIndexCount: queueFamilyIndexCount, + pQueueFamilyIndices: pQueueFamilyIndices, + preTransform: preTransform, + compositeAlpha: compositeAlpha, + presentMode: presentMode, + clipped: clipped, + oldSwapchain: oldSwapchain, + ) proc newVkPresentInfoKHR*(sType: VkStructureType, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, swapchainCount: uint32, pSwapchains: ptr VkSwapchainKHR, pImageIndices: ptr uint32, pResults: ptr VkResult): VkPresentInfoKHR = - result.sType = sType - result.pNext = pNext - result.waitSemaphoreCount = waitSemaphoreCount - result.pWaitSemaphores = pWaitSemaphores - result.swapchainCount = swapchainCount - result.pSwapchains = pSwapchains - result.pImageIndices = pImageIndices - result.pResults = pResults + result = VkPresentInfoKHR( + sType: sType, + pNext: pNext, + waitSemaphoreCount: waitSemaphoreCount, + pWaitSemaphores: pWaitSemaphores, + swapchainCount: swapchainCount, + pSwapchains: pSwapchains, + pImageIndices: pImageIndices, + pResults: pResults, + ) proc newVkDebugReportCallbackCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkDebugReportFlagsEXT = 0.VkDebugReportFlagsEXT, pfnCallback: PFN_vkDebugReportCallbackEXT, pUserData: pointer = nil): VkDebugReportCallbackCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.pfnCallback = pfnCallback - result.pUserData = pUserData + result = VkDebugReportCallbackCreateInfoEXT( + sType: sType, + pNext: pNext, + flags: flags, + pfnCallback: pfnCallback, + pUserData: pUserData, + ) proc newVkValidationFlagsEXT*(sType: VkStructureType, pNext: pointer = nil, disabledValidationCheckCount: uint32, pDisabledValidationChecks: ptr VkValidationCheckEXT): VkValidationFlagsEXT = - result.sType = sType - result.pNext = pNext - result.disabledValidationCheckCount = disabledValidationCheckCount - result.pDisabledValidationChecks = pDisabledValidationChecks + result = VkValidationFlagsEXT( + sType: sType, + pNext: pNext, + disabledValidationCheckCount: disabledValidationCheckCount, + pDisabledValidationChecks: pDisabledValidationChecks, + ) proc newVkValidationFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, enabledValidationFeatureCount: uint32, pEnabledValidationFeatures: ptr VkValidationFeatureEnableEXT, disabledValidationFeatureCount: uint32, pDisabledValidationFeatures: ptr VkValidationFeatureDisableEXT): VkValidationFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.enabledValidationFeatureCount = enabledValidationFeatureCount - result.pEnabledValidationFeatures = pEnabledValidationFeatures - result.disabledValidationFeatureCount = disabledValidationFeatureCount - result.pDisabledValidationFeatures = pDisabledValidationFeatures + result = VkValidationFeaturesEXT( + sType: sType, + pNext: pNext, + enabledValidationFeatureCount: enabledValidationFeatureCount, + pEnabledValidationFeatures: pEnabledValidationFeatures, + disabledValidationFeatureCount: disabledValidationFeatureCount, + pDisabledValidationFeatures: pDisabledValidationFeatures, + ) proc newVkLayerSettingsCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, settingCount: uint32, pSettings: ptr VkLayerSettingEXT): VkLayerSettingsCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.settingCount = settingCount - result.pSettings = pSettings + result = VkLayerSettingsCreateInfoEXT( + sType: sType, + pNext: pNext, + settingCount: settingCount, + pSettings: pSettings, + ) proc newVkLayerSettingEXT*(pLayerName: cstring, pSettingName: cstring, `type`: VkLayerSettingTypeEXT, valueCount: uint32, pValues: pointer = nil): VkLayerSettingEXT = - result.pLayerName = pLayerName - result.pSettingName = pSettingName - result.`type` = `type` - result.valueCount = valueCount - result.pValues = pValues + result = VkLayerSettingEXT( + pLayerName: pLayerName, + pSettingName: pSettingName, + `type`: `type`, + valueCount: valueCount, + pValues: pValues, + ) proc newVkApplicationParametersEXT*(sType: VkStructureType, pNext: pointer = nil, vendorID: uint32, deviceID: uint32, key: uint32, value: uint64): VkApplicationParametersEXT = - result.sType = sType - result.pNext = pNext - result.vendorID = vendorID - result.deviceID = deviceID - result.key = key - result.value = value + result = VkApplicationParametersEXT( + sType: sType, + pNext: pNext, + vendorID: vendorID, + deviceID: deviceID, + key: key, + value: value, + ) proc newVkPipelineRasterizationStateRasterizationOrderAMD*(sType: VkStructureType, pNext: pointer = nil, rasterizationOrder: VkRasterizationOrderAMD): VkPipelineRasterizationStateRasterizationOrderAMD = - result.sType = sType - result.pNext = pNext - result.rasterizationOrder = rasterizationOrder + result = VkPipelineRasterizationStateRasterizationOrderAMD( + sType: sType, + pNext: pNext, + rasterizationOrder: rasterizationOrder, + ) proc newVkDebugMarkerObjectNameInfoEXT*(sType: VkStructureType, pNext: pointer = nil, objectType: VkDebugReportObjectTypeEXT, `object`: uint64, pObjectName: cstring): VkDebugMarkerObjectNameInfoEXT = - result.sType = sType - result.pNext = pNext - result.objectType = objectType - result.`object` = `object` - result.pObjectName = pObjectName + result = VkDebugMarkerObjectNameInfoEXT( + sType: sType, + pNext: pNext, + objectType: objectType, + `object`: `object`, + pObjectName: pObjectName, + ) proc newVkDebugMarkerObjectTagInfoEXT*(sType: VkStructureType, pNext: pointer = nil, objectType: VkDebugReportObjectTypeEXT, `object`: uint64, tagName: uint64, tagSize: uint, pTag: pointer = nil): VkDebugMarkerObjectTagInfoEXT = - result.sType = sType - result.pNext = pNext - result.objectType = objectType - result.`object` = `object` - result.tagName = tagName - result.tagSize = tagSize - result.pTag = pTag + result = VkDebugMarkerObjectTagInfoEXT( + sType: sType, + pNext: pNext, + objectType: objectType, + `object`: `object`, + tagName: tagName, + tagSize: tagSize, + pTag: pTag, + ) proc newVkDebugMarkerMarkerInfoEXT*(sType: VkStructureType, pNext: pointer = nil, pMarkerName: cstring, color: array[4, float32]): VkDebugMarkerMarkerInfoEXT = - result.sType = sType - result.pNext = pNext - result.pMarkerName = pMarkerName - result.color = color + result = VkDebugMarkerMarkerInfoEXT( + sType: sType, + pNext: pNext, + pMarkerName: pMarkerName, + color: color, + ) proc newVkDedicatedAllocationImageCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, dedicatedAllocation: VkBool32): VkDedicatedAllocationImageCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.dedicatedAllocation = dedicatedAllocation + result = VkDedicatedAllocationImageCreateInfoNV( + sType: sType, + pNext: pNext, + dedicatedAllocation: dedicatedAllocation, + ) proc newVkDedicatedAllocationBufferCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, dedicatedAllocation: VkBool32): VkDedicatedAllocationBufferCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.dedicatedAllocation = dedicatedAllocation + result = VkDedicatedAllocationBufferCreateInfoNV( + sType: sType, + pNext: pNext, + dedicatedAllocation: dedicatedAllocation, + ) proc newVkDedicatedAllocationMemoryAllocateInfoNV*(sType: VkStructureType, pNext: pointer = nil, image: VkImage, buffer: VkBuffer): VkDedicatedAllocationMemoryAllocateInfoNV = - result.sType = sType - result.pNext = pNext - result.image = image - result.buffer = buffer + result = VkDedicatedAllocationMemoryAllocateInfoNV( + sType: sType, + pNext: pNext, + image: image, + buffer: buffer, + ) proc newVkExternalImageFormatPropertiesNV*(imageFormatProperties: VkImageFormatProperties, externalMemoryFeatures: VkExternalMemoryFeatureFlagsNV, exportFromImportedHandleTypes: VkExternalMemoryHandleTypeFlagsNV, compatibleHandleTypes: VkExternalMemoryHandleTypeFlagsNV): VkExternalImageFormatPropertiesNV = - result.imageFormatProperties = imageFormatProperties - result.externalMemoryFeatures = externalMemoryFeatures - result.exportFromImportedHandleTypes = exportFromImportedHandleTypes - result.compatibleHandleTypes = compatibleHandleTypes + result = VkExternalImageFormatPropertiesNV( + imageFormatProperties: imageFormatProperties, + externalMemoryFeatures: externalMemoryFeatures, + exportFromImportedHandleTypes: exportFromImportedHandleTypes, + compatibleHandleTypes: compatibleHandleTypes, + ) proc newVkExternalMemoryImageCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlagsNV): VkExternalMemoryImageCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.handleTypes = handleTypes + result = VkExternalMemoryImageCreateInfoNV( + sType: sType, + pNext: pNext, + handleTypes: handleTypes, + ) proc newVkExportMemoryAllocateInfoNV*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlagsNV): VkExportMemoryAllocateInfoNV = - result.sType = sType - result.pNext = pNext - result.handleTypes = handleTypes + result = VkExportMemoryAllocateInfoNV( + sType: sType, + pNext: pNext, + handleTypes: handleTypes, + ) proc newVkImportMemoryWin32HandleInfoNV*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagsNV, handle: HANDLE): VkImportMemoryWin32HandleInfoNV = - result.sType = sType - result.pNext = pNext - result.handleType = handleType - result.handle = handle + result = VkImportMemoryWin32HandleInfoNV( + sType: sType, + pNext: pNext, + handleType: handleType, + handle: handle, + ) proc newVkExportMemoryWin32HandleInfoNV*(sType: VkStructureType, pNext: pointer = nil, pAttributes: ptr SECURITY_ATTRIBUTES, dwAccess: DWORD): VkExportMemoryWin32HandleInfoNV = - result.sType = sType - result.pNext = pNext - result.pAttributes = pAttributes - result.dwAccess = dwAccess + result = VkExportMemoryWin32HandleInfoNV( + sType: sType, + pNext: pNext, + pAttributes: pAttributes, + dwAccess: dwAccess, + ) proc newVkExportMemorySciBufInfoNV*(sType: VkStructureType, pNext: pointer = nil, pAttributes: NvSciBufAttrList): VkExportMemorySciBufInfoNV = - result.sType = sType - result.pNext = pNext - result.pAttributes = pAttributes + result = VkExportMemorySciBufInfoNV( + sType: sType, + pNext: pNext, + pAttributes: pAttributes, + ) proc newVkImportMemorySciBufInfoNV*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, handle: NvSciBufObj): VkImportMemorySciBufInfoNV = - result.sType = sType - result.pNext = pNext - result.handleType = handleType - result.handle = handle + result = VkImportMemorySciBufInfoNV( + sType: sType, + pNext: pNext, + handleType: handleType, + handle: handle, + ) proc newVkMemoryGetSciBufInfoNV*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetSciBufInfoNV = - result.sType = sType - result.pNext = pNext - result.memory = memory - result.handleType = handleType + result = VkMemoryGetSciBufInfoNV( + sType: sType, + pNext: pNext, + memory: memory, + handleType: handleType, + ) proc newVkMemorySciBufPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, memoryTypeBits: uint32): VkMemorySciBufPropertiesNV = - result.sType = sType - result.pNext = pNext - result.memoryTypeBits = memoryTypeBits + result = VkMemorySciBufPropertiesNV( + sType: sType, + pNext: pNext, + memoryTypeBits: memoryTypeBits, + ) proc newVkPhysicalDeviceExternalMemorySciBufFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, sciBufImport: VkBool32, sciBufExport: VkBool32): VkPhysicalDeviceExternalMemorySciBufFeaturesNV = - result.sType = sType - result.pNext = pNext - result.sciBufImport = sciBufImport - result.sciBufExport = sciBufExport + result = VkPhysicalDeviceExternalMemorySciBufFeaturesNV( + sType: sType, + pNext: pNext, + sciBufImport: sciBufImport, + sciBufExport: sciBufExport, + ) proc newVkWin32KeyedMutexAcquireReleaseInfoNV*(sType: VkStructureType, pNext: pointer = nil, acquireCount: uint32, pAcquireSyncs: ptr VkDeviceMemory, pAcquireKeys: ptr uint64, pAcquireTimeoutMilliseconds: ptr uint32, releaseCount: uint32, pReleaseSyncs: ptr VkDeviceMemory, pReleaseKeys: ptr uint64): VkWin32KeyedMutexAcquireReleaseInfoNV = - result.sType = sType - result.pNext = pNext - result.acquireCount = acquireCount - result.pAcquireSyncs = pAcquireSyncs - result.pAcquireKeys = pAcquireKeys - result.pAcquireTimeoutMilliseconds = pAcquireTimeoutMilliseconds - result.releaseCount = releaseCount - result.pReleaseSyncs = pReleaseSyncs - result.pReleaseKeys = pReleaseKeys + result = VkWin32KeyedMutexAcquireReleaseInfoNV( + sType: sType, + pNext: pNext, + acquireCount: acquireCount, + pAcquireSyncs: pAcquireSyncs, + pAcquireKeys: pAcquireKeys, + pAcquireTimeoutMilliseconds: pAcquireTimeoutMilliseconds, + releaseCount: releaseCount, + pReleaseSyncs: pReleaseSyncs, + pReleaseKeys: pReleaseKeys, + ) proc newVkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, deviceGeneratedCommands: VkBool32): VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV = - result.sType = sType - result.pNext = pNext - result.deviceGeneratedCommands = deviceGeneratedCommands + result = VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV( + sType: sType, + pNext: pNext, + deviceGeneratedCommands: deviceGeneratedCommands, + ) proc newVkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, deviceGeneratedCompute: VkBool32, deviceGeneratedComputePipelines: VkBool32, deviceGeneratedComputeCaptureReplay: VkBool32): VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV = - result.sType = sType - result.pNext = pNext - result.deviceGeneratedCompute = deviceGeneratedCompute - result.deviceGeneratedComputePipelines = deviceGeneratedComputePipelines - result.deviceGeneratedComputeCaptureReplay = deviceGeneratedComputeCaptureReplay + result = VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV( + sType: sType, + pNext: pNext, + deviceGeneratedCompute: deviceGeneratedCompute, + deviceGeneratedComputePipelines: deviceGeneratedComputePipelines, + deviceGeneratedComputeCaptureReplay: deviceGeneratedComputeCaptureReplay, + ) proc newVkDevicePrivateDataCreateInfo*(sType: VkStructureType, pNext: pointer = nil, privateDataSlotRequestCount: uint32): VkDevicePrivateDataCreateInfo = - result.sType = sType - result.pNext = pNext - result.privateDataSlotRequestCount = privateDataSlotRequestCount + result = VkDevicePrivateDataCreateInfo( + sType: sType, + pNext: pNext, + privateDataSlotRequestCount: privateDataSlotRequestCount, + ) proc newVkPrivateDataSlotCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPrivateDataSlotCreateFlags = 0.VkPrivateDataSlotCreateFlags): VkPrivateDataSlotCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags + result = VkPrivateDataSlotCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + ) proc newVkPhysicalDevicePrivateDataFeatures*(sType: VkStructureType, pNext: pointer = nil, privateData: VkBool32): VkPhysicalDevicePrivateDataFeatures = - result.sType = sType - result.pNext = pNext - result.privateData = privateData + result = VkPhysicalDevicePrivateDataFeatures( + sType: sType, + pNext: pNext, + privateData: privateData, + ) proc newVkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, maxGraphicsShaderGroupCount: uint32, maxIndirectSequenceCount: uint32, maxIndirectCommandsTokenCount: uint32, maxIndirectCommandsStreamCount: uint32, maxIndirectCommandsTokenOffset: uint32, maxIndirectCommandsStreamStride: uint32, minSequencesCountBufferOffsetAlignment: uint32, minSequencesIndexBufferOffsetAlignment: uint32, minIndirectCommandsBufferOffsetAlignment: uint32): VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV = - result.sType = sType - result.pNext = pNext - result.maxGraphicsShaderGroupCount = maxGraphicsShaderGroupCount - result.maxIndirectSequenceCount = maxIndirectSequenceCount - result.maxIndirectCommandsTokenCount = maxIndirectCommandsTokenCount - result.maxIndirectCommandsStreamCount = maxIndirectCommandsStreamCount - result.maxIndirectCommandsTokenOffset = maxIndirectCommandsTokenOffset - result.maxIndirectCommandsStreamStride = maxIndirectCommandsStreamStride - result.minSequencesCountBufferOffsetAlignment = minSequencesCountBufferOffsetAlignment - result.minSequencesIndexBufferOffsetAlignment = minSequencesIndexBufferOffsetAlignment - result.minIndirectCommandsBufferOffsetAlignment = minIndirectCommandsBufferOffsetAlignment + result = VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV( + sType: sType, + pNext: pNext, + maxGraphicsShaderGroupCount: maxGraphicsShaderGroupCount, + maxIndirectSequenceCount: maxIndirectSequenceCount, + maxIndirectCommandsTokenCount: maxIndirectCommandsTokenCount, + maxIndirectCommandsStreamCount: maxIndirectCommandsStreamCount, + maxIndirectCommandsTokenOffset: maxIndirectCommandsTokenOffset, + maxIndirectCommandsStreamStride: maxIndirectCommandsStreamStride, + minSequencesCountBufferOffsetAlignment: minSequencesCountBufferOffsetAlignment, + minSequencesIndexBufferOffsetAlignment: minSequencesIndexBufferOffsetAlignment, + minIndirectCommandsBufferOffsetAlignment: minIndirectCommandsBufferOffsetAlignment, + ) proc newVkPhysicalDeviceMultiDrawPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxMultiDrawCount: uint32): VkPhysicalDeviceMultiDrawPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.maxMultiDrawCount = maxMultiDrawCount + result = VkPhysicalDeviceMultiDrawPropertiesEXT( + sType: sType, + pNext: pNext, + maxMultiDrawCount: maxMultiDrawCount, + ) proc newVkGraphicsShaderGroupCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, pVertexInputState: ptr VkPipelineVertexInputStateCreateInfo, pTessellationState: ptr VkPipelineTessellationStateCreateInfo): VkGraphicsShaderGroupCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.stageCount = stageCount - result.pStages = pStages - result.pVertexInputState = pVertexInputState - result.pTessellationState = pTessellationState + result = VkGraphicsShaderGroupCreateInfoNV( + sType: sType, + pNext: pNext, + stageCount: stageCount, + pStages: pStages, + pVertexInputState: pVertexInputState, + pTessellationState: pTessellationState, + ) proc newVkGraphicsPipelineShaderGroupsCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, groupCount: uint32, pGroups: ptr VkGraphicsShaderGroupCreateInfoNV, pipelineCount: uint32, pPipelines: ptr VkPipeline): VkGraphicsPipelineShaderGroupsCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.groupCount = groupCount - result.pGroups = pGroups - result.pipelineCount = pipelineCount - result.pPipelines = pPipelines + result = VkGraphicsPipelineShaderGroupsCreateInfoNV( + sType: sType, + pNext: pNext, + groupCount: groupCount, + pGroups: pGroups, + pipelineCount: pipelineCount, + pPipelines: pPipelines, + ) proc newVkBindShaderGroupIndirectCommandNV*(groupIndex: uint32): VkBindShaderGroupIndirectCommandNV = - result.groupIndex = groupIndex + result = VkBindShaderGroupIndirectCommandNV( + groupIndex: groupIndex, + ) proc newVkBindIndexBufferIndirectCommandNV*(bufferAddress: VkDeviceAddress, size: uint32, indexType: VkIndexType): VkBindIndexBufferIndirectCommandNV = - result.bufferAddress = bufferAddress - result.size = size - result.indexType = indexType + result = VkBindIndexBufferIndirectCommandNV( + bufferAddress: bufferAddress, + size: size, + indexType: indexType, + ) proc newVkBindVertexBufferIndirectCommandNV*(bufferAddress: VkDeviceAddress, size: uint32, stride: uint32): VkBindVertexBufferIndirectCommandNV = - result.bufferAddress = bufferAddress - result.size = size - result.stride = stride + result = VkBindVertexBufferIndirectCommandNV( + bufferAddress: bufferAddress, + size: size, + stride: stride, + ) proc newVkSetStateFlagsIndirectCommandNV*(data: uint32): VkSetStateFlagsIndirectCommandNV = - result.data = data + result = VkSetStateFlagsIndirectCommandNV( + data: data, + ) proc newVkIndirectCommandsStreamNV*(buffer: VkBuffer, offset: VkDeviceSize): VkIndirectCommandsStreamNV = - result.buffer = buffer - result.offset = offset + result = VkIndirectCommandsStreamNV( + buffer: buffer, + offset: offset, + ) proc newVkIndirectCommandsLayoutTokenNV*(sType: VkStructureType, pNext: pointer = nil, tokenType: VkIndirectCommandsTokenTypeNV, stream: uint32, offset: uint32, vertexBindingUnit: uint32, vertexDynamicStride: VkBool32, pushconstantPipelineLayout: VkPipelineLayout, pushconstantShaderStageFlags: VkShaderStageFlags, pushconstantOffset: uint32, pushconstantSize: uint32, indirectStateFlags: VkIndirectStateFlagsNV, indexTypeCount: uint32, pIndexTypes: ptr VkIndexType, pIndexTypeValues: ptr uint32): VkIndirectCommandsLayoutTokenNV = - result.sType = sType - result.pNext = pNext - result.tokenType = tokenType - result.stream = stream - result.offset = offset - result.vertexBindingUnit = vertexBindingUnit - result.vertexDynamicStride = vertexDynamicStride - result.pushconstantPipelineLayout = pushconstantPipelineLayout - result.pushconstantShaderStageFlags = pushconstantShaderStageFlags - result.pushconstantOffset = pushconstantOffset - result.pushconstantSize = pushconstantSize - result.indirectStateFlags = indirectStateFlags - result.indexTypeCount = indexTypeCount - result.pIndexTypes = pIndexTypes - result.pIndexTypeValues = pIndexTypeValues + result = VkIndirectCommandsLayoutTokenNV( + sType: sType, + pNext: pNext, + tokenType: tokenType, + stream: stream, + offset: offset, + vertexBindingUnit: vertexBindingUnit, + vertexDynamicStride: vertexDynamicStride, + pushconstantPipelineLayout: pushconstantPipelineLayout, + pushconstantShaderStageFlags: pushconstantShaderStageFlags, + pushconstantOffset: pushconstantOffset, + pushconstantSize: pushconstantSize, + indirectStateFlags: indirectStateFlags, + indexTypeCount: indexTypeCount, + pIndexTypes: pIndexTypes, + pIndexTypeValues: pIndexTypeValues, + ) proc newVkIndirectCommandsLayoutCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkIndirectCommandsLayoutUsageFlagsNV = 0.VkIndirectCommandsLayoutUsageFlagsNV, pipelineBindPoint: VkPipelineBindPoint, tokenCount: uint32, pTokens: ptr VkIndirectCommandsLayoutTokenNV, streamCount: uint32, pStreamStrides: ptr uint32): VkIndirectCommandsLayoutCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.pipelineBindPoint = pipelineBindPoint - result.tokenCount = tokenCount - result.pTokens = pTokens - result.streamCount = streamCount - result.pStreamStrides = pStreamStrides + result = VkIndirectCommandsLayoutCreateInfoNV( + sType: sType, + pNext: pNext, + flags: flags, + pipelineBindPoint: pipelineBindPoint, + tokenCount: tokenCount, + pTokens: pTokens, + streamCount: streamCount, + pStreamStrides: pStreamStrides, + ) proc newVkGeneratedCommandsInfoNV*(sType: VkStructureType, pNext: pointer = nil, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline, indirectCommandsLayout: VkIndirectCommandsLayoutNV, streamCount: uint32, pStreams: ptr VkIndirectCommandsStreamNV, sequencesCount: uint32, preprocessBuffer: VkBuffer, preprocessOffset: VkDeviceSize, preprocessSize: VkDeviceSize, sequencesCountBuffer: VkBuffer, sequencesCountOffset: VkDeviceSize, sequencesIndexBuffer: VkBuffer, sequencesIndexOffset: VkDeviceSize): VkGeneratedCommandsInfoNV = - result.sType = sType - result.pNext = pNext - result.pipelineBindPoint = pipelineBindPoint - result.pipeline = pipeline - result.indirectCommandsLayout = indirectCommandsLayout - result.streamCount = streamCount - result.pStreams = pStreams - result.sequencesCount = sequencesCount - result.preprocessBuffer = preprocessBuffer - result.preprocessOffset = preprocessOffset - result.preprocessSize = preprocessSize - result.sequencesCountBuffer = sequencesCountBuffer - result.sequencesCountOffset = sequencesCountOffset - result.sequencesIndexBuffer = sequencesIndexBuffer - result.sequencesIndexOffset = sequencesIndexOffset + result = VkGeneratedCommandsInfoNV( + sType: sType, + pNext: pNext, + pipelineBindPoint: pipelineBindPoint, + pipeline: pipeline, + indirectCommandsLayout: indirectCommandsLayout, + streamCount: streamCount, + pStreams: pStreams, + sequencesCount: sequencesCount, + preprocessBuffer: preprocessBuffer, + preprocessOffset: preprocessOffset, + preprocessSize: preprocessSize, + sequencesCountBuffer: sequencesCountBuffer, + sequencesCountOffset: sequencesCountOffset, + sequencesIndexBuffer: sequencesIndexBuffer, + sequencesIndexOffset: sequencesIndexOffset, + ) proc newVkGeneratedCommandsMemoryRequirementsInfoNV*(sType: VkStructureType, pNext: pointer = nil, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline, indirectCommandsLayout: VkIndirectCommandsLayoutNV, maxSequencesCount: uint32): VkGeneratedCommandsMemoryRequirementsInfoNV = - result.sType = sType - result.pNext = pNext - result.pipelineBindPoint = pipelineBindPoint - result.pipeline = pipeline - result.indirectCommandsLayout = indirectCommandsLayout - result.maxSequencesCount = maxSequencesCount + result = VkGeneratedCommandsMemoryRequirementsInfoNV( + sType: sType, + pNext: pNext, + pipelineBindPoint: pipelineBindPoint, + pipeline: pipeline, + indirectCommandsLayout: indirectCommandsLayout, + maxSequencesCount: maxSequencesCount, + ) proc newVkPipelineIndirectDeviceAddressInfoNV*(sType: VkStructureType, pNext: pointer = nil, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline): VkPipelineIndirectDeviceAddressInfoNV = - result.sType = sType - result.pNext = pNext - result.pipelineBindPoint = pipelineBindPoint - result.pipeline = pipeline + result = VkPipelineIndirectDeviceAddressInfoNV( + sType: sType, + pNext: pNext, + pipelineBindPoint: pipelineBindPoint, + pipeline: pipeline, + ) proc newVkBindPipelineIndirectCommandNV*(pipelineAddress: VkDeviceAddress): VkBindPipelineIndirectCommandNV = - result.pipelineAddress = pipelineAddress + result = VkBindPipelineIndirectCommandNV( + pipelineAddress: pipelineAddress, + ) proc newVkPhysicalDeviceFeatures2*(sType: VkStructureType, pNext: pointer = nil, features: VkPhysicalDeviceFeatures): VkPhysicalDeviceFeatures2 = - result.sType = sType - result.pNext = pNext - result.features = features + result = VkPhysicalDeviceFeatures2( + sType: sType, + pNext: pNext, + features: features, + ) proc newVkPhysicalDeviceProperties2*(sType: VkStructureType, pNext: pointer = nil, properties: VkPhysicalDeviceProperties): VkPhysicalDeviceProperties2 = - result.sType = sType - result.pNext = pNext - result.properties = properties + result = VkPhysicalDeviceProperties2( + sType: sType, + pNext: pNext, + properties: properties, + ) proc newVkFormatProperties2*(sType: VkStructureType, pNext: pointer = nil, formatProperties: VkFormatProperties): VkFormatProperties2 = - result.sType = sType - result.pNext = pNext - result.formatProperties = formatProperties + result = VkFormatProperties2( + sType: sType, + pNext: pNext, + formatProperties: formatProperties, + ) proc newVkImageFormatProperties2*(sType: VkStructureType, pNext: pointer = nil, imageFormatProperties: VkImageFormatProperties): VkImageFormatProperties2 = - result.sType = sType - result.pNext = pNext - result.imageFormatProperties = imageFormatProperties + result = VkImageFormatProperties2( + sType: sType, + pNext: pNext, + imageFormatProperties: imageFormatProperties, + ) proc newVkPhysicalDeviceImageFormatInfo2*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat, `type`: VkImageType, tiling: VkImageTiling, usage: VkImageUsageFlags, flags: VkImageCreateFlags = 0.VkImageCreateFlags): VkPhysicalDeviceImageFormatInfo2 = - result.sType = sType - result.pNext = pNext - result.format = format - result.`type` = `type` - result.tiling = tiling - result.usage = usage - result.flags = flags + result = VkPhysicalDeviceImageFormatInfo2( + sType: sType, + pNext: pNext, + format: format, + `type`: `type`, + tiling: tiling, + usage: usage, + flags: flags, + ) proc newVkQueueFamilyProperties2*(sType: VkStructureType, pNext: pointer = nil, queueFamilyProperties: VkQueueFamilyProperties): VkQueueFamilyProperties2 = - result.sType = sType - result.pNext = pNext - result.queueFamilyProperties = queueFamilyProperties + result = VkQueueFamilyProperties2( + sType: sType, + pNext: pNext, + queueFamilyProperties: queueFamilyProperties, + ) proc newVkPhysicalDeviceMemoryProperties2*(sType: VkStructureType, pNext: pointer = nil, memoryProperties: VkPhysicalDeviceMemoryProperties): VkPhysicalDeviceMemoryProperties2 = - result.sType = sType - result.pNext = pNext - result.memoryProperties = memoryProperties + result = VkPhysicalDeviceMemoryProperties2( + sType: sType, + pNext: pNext, + memoryProperties: memoryProperties, + ) proc newVkSparseImageFormatProperties2*(sType: VkStructureType, pNext: pointer = nil, properties: VkSparseImageFormatProperties): VkSparseImageFormatProperties2 = - result.sType = sType - result.pNext = pNext - result.properties = properties + result = VkSparseImageFormatProperties2( + sType: sType, + pNext: pNext, + properties: properties, + ) proc newVkPhysicalDeviceSparseImageFormatInfo2*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat, `type`: VkImageType, samples: VkSampleCountFlagBits, usage: VkImageUsageFlags, tiling: VkImageTiling): VkPhysicalDeviceSparseImageFormatInfo2 = - result.sType = sType - result.pNext = pNext - result.format = format - result.`type` = `type` - result.samples = samples - result.usage = usage - result.tiling = tiling + result = VkPhysicalDeviceSparseImageFormatInfo2( + sType: sType, + pNext: pNext, + format: format, + `type`: `type`, + samples: samples, + usage: usage, + tiling: tiling, + ) proc newVkPhysicalDevicePushDescriptorPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, maxPushDescriptors: uint32): VkPhysicalDevicePushDescriptorPropertiesKHR = - result.sType = sType - result.pNext = pNext - result.maxPushDescriptors = maxPushDescriptors + result = VkPhysicalDevicePushDescriptorPropertiesKHR( + sType: sType, + pNext: pNext, + maxPushDescriptors: maxPushDescriptors, + ) proc newVkConformanceVersion*(major: uint8, minor: uint8, subminor: uint8, patch: uint8): VkConformanceVersion = - result.major = major - result.minor = minor - result.subminor = subminor - result.patch = patch + result = VkConformanceVersion( + major: major, + minor: minor, + subminor: subminor, + patch: patch, + ) proc newVkPhysicalDeviceDriverProperties*(sType: VkStructureType, pNext: pointer = nil, driverID: VkDriverId, driverName: array[VK_MAX_DRIVER_NAME_SIZE, char], driverInfo: array[VK_MAX_DRIVER_INFO_SIZE, char], conformanceVersion: VkConformanceVersion): VkPhysicalDeviceDriverProperties = - result.sType = sType - result.pNext = pNext - result.driverID = driverID - result.driverName = driverName - result.driverInfo = driverInfo - result.conformanceVersion = conformanceVersion + result = VkPhysicalDeviceDriverProperties( + sType: sType, + pNext: pNext, + driverID: driverID, + driverName: driverName, + driverInfo: driverInfo, + conformanceVersion: conformanceVersion, + ) proc newVkPresentRegionsKHR*(sType: VkStructureType, pNext: pointer = nil, swapchainCount: uint32, pRegions: ptr VkPresentRegionKHR): VkPresentRegionsKHR = - result.sType = sType - result.pNext = pNext - result.swapchainCount = swapchainCount - result.pRegions = pRegions + result = VkPresentRegionsKHR( + sType: sType, + pNext: pNext, + swapchainCount: swapchainCount, + pRegions: pRegions, + ) proc newVkPresentRegionKHR*(rectangleCount: uint32, pRectangles: ptr VkRectLayerKHR): VkPresentRegionKHR = - result.rectangleCount = rectangleCount - result.pRectangles = pRectangles + result = VkPresentRegionKHR( + rectangleCount: rectangleCount, + pRectangles: pRectangles, + ) proc newVkRectLayerKHR*(offset: VkOffset2D, extent: VkExtent2D, layer: uint32): VkRectLayerKHR = - result.offset = offset - result.extent = extent - result.layer = layer + result = VkRectLayerKHR( + offset: offset, + extent: extent, + layer: layer, + ) proc newVkPhysicalDeviceVariablePointersFeatures*(sType: VkStructureType, pNext: pointer = nil, variablePointersStorageBuffer: VkBool32, variablePointers: VkBool32): VkPhysicalDeviceVariablePointersFeatures = - result.sType = sType - result.pNext = pNext - result.variablePointersStorageBuffer = variablePointersStorageBuffer - result.variablePointers = variablePointers + result = VkPhysicalDeviceVariablePointersFeatures( + sType: sType, + pNext: pNext, + variablePointersStorageBuffer: variablePointersStorageBuffer, + variablePointers: variablePointers, + ) proc newVkExternalMemoryProperties*(externalMemoryFeatures: VkExternalMemoryFeatureFlags, exportFromImportedHandleTypes: VkExternalMemoryHandleTypeFlags, compatibleHandleTypes: VkExternalMemoryHandleTypeFlags): VkExternalMemoryProperties = - result.externalMemoryFeatures = externalMemoryFeatures - result.exportFromImportedHandleTypes = exportFromImportedHandleTypes - result.compatibleHandleTypes = compatibleHandleTypes + result = VkExternalMemoryProperties( + externalMemoryFeatures: externalMemoryFeatures, + exportFromImportedHandleTypes: exportFromImportedHandleTypes, + compatibleHandleTypes: compatibleHandleTypes, + ) proc newVkPhysicalDeviceExternalImageFormatInfo*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits): VkPhysicalDeviceExternalImageFormatInfo = - result.sType = sType - result.pNext = pNext - result.handleType = handleType + result = VkPhysicalDeviceExternalImageFormatInfo( + sType: sType, + pNext: pNext, + handleType: handleType, + ) proc newVkExternalImageFormatProperties*(sType: VkStructureType, pNext: pointer = nil, externalMemoryProperties: VkExternalMemoryProperties): VkExternalImageFormatProperties = - result.sType = sType - result.pNext = pNext - result.externalMemoryProperties = externalMemoryProperties + result = VkExternalImageFormatProperties( + sType: sType, + pNext: pNext, + externalMemoryProperties: externalMemoryProperties, + ) proc newVkPhysicalDeviceExternalBufferInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkBufferCreateFlags = 0.VkBufferCreateFlags, usage: VkBufferUsageFlags, handleType: VkExternalMemoryHandleTypeFlagBits): VkPhysicalDeviceExternalBufferInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.usage = usage - result.handleType = handleType + result = VkPhysicalDeviceExternalBufferInfo( + sType: sType, + pNext: pNext, + flags: flags, + usage: usage, + handleType: handleType, + ) proc newVkExternalBufferProperties*(sType: VkStructureType, pNext: pointer = nil, externalMemoryProperties: VkExternalMemoryProperties): VkExternalBufferProperties = - result.sType = sType - result.pNext = pNext - result.externalMemoryProperties = externalMemoryProperties + result = VkExternalBufferProperties( + sType: sType, + pNext: pNext, + externalMemoryProperties: externalMemoryProperties, + ) proc newVkPhysicalDeviceIDProperties*(sType: VkStructureType, pNext: pointer = nil, deviceUUID: array[VK_UUID_SIZE, uint8], driverUUID: array[VK_UUID_SIZE, uint8], deviceLUID: array[VK_LUID_SIZE, uint8], deviceNodeMask: uint32, deviceLUIDValid: VkBool32): VkPhysicalDeviceIDProperties = - result.sType = sType - result.pNext = pNext - result.deviceUUID = deviceUUID - result.driverUUID = driverUUID - result.deviceLUID = deviceLUID - result.deviceNodeMask = deviceNodeMask - result.deviceLUIDValid = deviceLUIDValid + result = VkPhysicalDeviceIDProperties( + sType: sType, + pNext: pNext, + deviceUUID: deviceUUID, + driverUUID: driverUUID, + deviceLUID: deviceLUID, + deviceNodeMask: deviceNodeMask, + deviceLUIDValid: deviceLUIDValid, + ) proc newVkExternalMemoryImageCreateInfo*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlags): VkExternalMemoryImageCreateInfo = - result.sType = sType - result.pNext = pNext - result.handleTypes = handleTypes + result = VkExternalMemoryImageCreateInfo( + sType: sType, + pNext: pNext, + handleTypes: handleTypes, + ) proc newVkExternalMemoryBufferCreateInfo*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlags): VkExternalMemoryBufferCreateInfo = - result.sType = sType - result.pNext = pNext - result.handleTypes = handleTypes + result = VkExternalMemoryBufferCreateInfo( + sType: sType, + pNext: pNext, + handleTypes: handleTypes, + ) proc newVkExportMemoryAllocateInfo*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlags): VkExportMemoryAllocateInfo = - result.sType = sType - result.pNext = pNext - result.handleTypes = handleTypes + result = VkExportMemoryAllocateInfo( + sType: sType, + pNext: pNext, + handleTypes: handleTypes, + ) proc newVkImportMemoryWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, handle: HANDLE, name: LPCWSTR): VkImportMemoryWin32HandleInfoKHR = - result.sType = sType - result.pNext = pNext - result.handleType = handleType - result.handle = handle - result.name = name + result = VkImportMemoryWin32HandleInfoKHR( + sType: sType, + pNext: pNext, + handleType: handleType, + handle: handle, + name: name, + ) proc newVkExportMemoryWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pAttributes: ptr SECURITY_ATTRIBUTES, dwAccess: DWORD, name: LPCWSTR): VkExportMemoryWin32HandleInfoKHR = - result.sType = sType - result.pNext = pNext - result.pAttributes = pAttributes - result.dwAccess = dwAccess - result.name = name + result = VkExportMemoryWin32HandleInfoKHR( + sType: sType, + pNext: pNext, + pAttributes: pAttributes, + dwAccess: dwAccess, + name: name, + ) proc newVkImportMemoryZirconHandleInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, handle: zx_handle_t): VkImportMemoryZirconHandleInfoFUCHSIA = - result.sType = sType - result.pNext = pNext - result.handleType = handleType - result.handle = handle + result = VkImportMemoryZirconHandleInfoFUCHSIA( + sType: sType, + pNext: pNext, + handleType: handleType, + handle: handle, + ) proc newVkMemoryZirconHandlePropertiesFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryZirconHandlePropertiesFUCHSIA = - result.sType = sType - result.pNext = pNext - result.memoryTypeBits = memoryTypeBits + result = VkMemoryZirconHandlePropertiesFUCHSIA( + sType: sType, + pNext: pNext, + memoryTypeBits: memoryTypeBits, + ) proc newVkMemoryGetZirconHandleInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetZirconHandleInfoFUCHSIA = - result.sType = sType - result.pNext = pNext - result.memory = memory - result.handleType = handleType + result = VkMemoryGetZirconHandleInfoFUCHSIA( + sType: sType, + pNext: pNext, + memory: memory, + handleType: handleType, + ) proc newVkMemoryWin32HandlePropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryWin32HandlePropertiesKHR = - result.sType = sType - result.pNext = pNext - result.memoryTypeBits = memoryTypeBits + result = VkMemoryWin32HandlePropertiesKHR( + sType: sType, + pNext: pNext, + memoryTypeBits: memoryTypeBits, + ) proc newVkMemoryGetWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetWin32HandleInfoKHR = - result.sType = sType - result.pNext = pNext - result.memory = memory - result.handleType = handleType + result = VkMemoryGetWin32HandleInfoKHR( + sType: sType, + pNext: pNext, + memory: memory, + handleType: handleType, + ) proc newVkImportMemoryFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, fd: int): VkImportMemoryFdInfoKHR = - result.sType = sType - result.pNext = pNext - result.handleType = handleType - result.fd = fd + result = VkImportMemoryFdInfoKHR( + sType: sType, + pNext: pNext, + handleType: handleType, + fd: fd, + ) proc newVkMemoryFdPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryFdPropertiesKHR = - result.sType = sType - result.pNext = pNext - result.memoryTypeBits = memoryTypeBits + result = VkMemoryFdPropertiesKHR( + sType: sType, + pNext: pNext, + memoryTypeBits: memoryTypeBits, + ) proc newVkMemoryGetFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetFdInfoKHR = - result.sType = sType - result.pNext = pNext - result.memory = memory - result.handleType = handleType + result = VkMemoryGetFdInfoKHR( + sType: sType, + pNext: pNext, + memory: memory, + handleType: handleType, + ) proc newVkWin32KeyedMutexAcquireReleaseInfoKHR*(sType: VkStructureType, pNext: pointer = nil, acquireCount: uint32, pAcquireSyncs: ptr VkDeviceMemory, pAcquireKeys: ptr uint64, pAcquireTimeouts: ptr uint32, releaseCount: uint32, pReleaseSyncs: ptr VkDeviceMemory, pReleaseKeys: ptr uint64): VkWin32KeyedMutexAcquireReleaseInfoKHR = - result.sType = sType - result.pNext = pNext - result.acquireCount = acquireCount - result.pAcquireSyncs = pAcquireSyncs - result.pAcquireKeys = pAcquireKeys - result.pAcquireTimeouts = pAcquireTimeouts - result.releaseCount = releaseCount - result.pReleaseSyncs = pReleaseSyncs - result.pReleaseKeys = pReleaseKeys + result = VkWin32KeyedMutexAcquireReleaseInfoKHR( + sType: sType, + pNext: pNext, + acquireCount: acquireCount, + pAcquireSyncs: pAcquireSyncs, + pAcquireKeys: pAcquireKeys, + pAcquireTimeouts: pAcquireTimeouts, + releaseCount: releaseCount, + pReleaseSyncs: pReleaseSyncs, + pReleaseKeys: pReleaseKeys, + ) proc newVkPhysicalDeviceExternalSemaphoreInfo*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkPhysicalDeviceExternalSemaphoreInfo = - result.sType = sType - result.pNext = pNext - result.handleType = handleType + result = VkPhysicalDeviceExternalSemaphoreInfo( + sType: sType, + pNext: pNext, + handleType: handleType, + ) proc newVkExternalSemaphoreProperties*(sType: VkStructureType, pNext: pointer = nil, exportFromImportedHandleTypes: VkExternalSemaphoreHandleTypeFlags, compatibleHandleTypes: VkExternalSemaphoreHandleTypeFlags, externalSemaphoreFeatures: VkExternalSemaphoreFeatureFlags): VkExternalSemaphoreProperties = - result.sType = sType - result.pNext = pNext - result.exportFromImportedHandleTypes = exportFromImportedHandleTypes - result.compatibleHandleTypes = compatibleHandleTypes - result.externalSemaphoreFeatures = externalSemaphoreFeatures + result = VkExternalSemaphoreProperties( + sType: sType, + pNext: pNext, + exportFromImportedHandleTypes: exportFromImportedHandleTypes, + compatibleHandleTypes: compatibleHandleTypes, + externalSemaphoreFeatures: externalSemaphoreFeatures, + ) proc newVkExportSemaphoreCreateInfo*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalSemaphoreHandleTypeFlags): VkExportSemaphoreCreateInfo = - result.sType = sType - result.pNext = pNext - result.handleTypes = handleTypes + result = VkExportSemaphoreCreateInfo( + sType: sType, + pNext: pNext, + handleTypes: handleTypes, + ) proc newVkImportSemaphoreWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, flags: VkSemaphoreImportFlags = 0.VkSemaphoreImportFlags, handleType: VkExternalSemaphoreHandleTypeFlagBits, handle: HANDLE, name: LPCWSTR): VkImportSemaphoreWin32HandleInfoKHR = - result.sType = sType - result.pNext = pNext - result.semaphore = semaphore - result.flags = flags - result.handleType = handleType - result.handle = handle - result.name = name + result = VkImportSemaphoreWin32HandleInfoKHR( + sType: sType, + pNext: pNext, + semaphore: semaphore, + flags: flags, + handleType: handleType, + handle: handle, + name: name, + ) proc newVkExportSemaphoreWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pAttributes: ptr SECURITY_ATTRIBUTES, dwAccess: DWORD, name: LPCWSTR): VkExportSemaphoreWin32HandleInfoKHR = - result.sType = sType - result.pNext = pNext - result.pAttributes = pAttributes - result.dwAccess = dwAccess - result.name = name + result = VkExportSemaphoreWin32HandleInfoKHR( + sType: sType, + pNext: pNext, + pAttributes: pAttributes, + dwAccess: dwAccess, + name: name, + ) proc newVkD3D12FenceSubmitInfoKHR*(sType: VkStructureType, pNext: pointer = nil, waitSemaphoreValuesCount: uint32, pWaitSemaphoreValues: ptr uint64, signalSemaphoreValuesCount: uint32, pSignalSemaphoreValues: ptr uint64): VkD3D12FenceSubmitInfoKHR = - result.sType = sType - result.pNext = pNext - result.waitSemaphoreValuesCount = waitSemaphoreValuesCount - result.pWaitSemaphoreValues = pWaitSemaphoreValues - result.signalSemaphoreValuesCount = signalSemaphoreValuesCount - result.pSignalSemaphoreValues = pSignalSemaphoreValues + result = VkD3D12FenceSubmitInfoKHR( + sType: sType, + pNext: pNext, + waitSemaphoreValuesCount: waitSemaphoreValuesCount, + pWaitSemaphoreValues: pWaitSemaphoreValues, + signalSemaphoreValuesCount: signalSemaphoreValuesCount, + pSignalSemaphoreValues: pSignalSemaphoreValues, + ) proc newVkSemaphoreGetWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetWin32HandleInfoKHR = - result.sType = sType - result.pNext = pNext - result.semaphore = semaphore - result.handleType = handleType + result = VkSemaphoreGetWin32HandleInfoKHR( + sType: sType, + pNext: pNext, + semaphore: semaphore, + handleType: handleType, + ) proc newVkImportSemaphoreFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, flags: VkSemaphoreImportFlags = 0.VkSemaphoreImportFlags, handleType: VkExternalSemaphoreHandleTypeFlagBits, fd: int): VkImportSemaphoreFdInfoKHR = - result.sType = sType - result.pNext = pNext - result.semaphore = semaphore - result.flags = flags - result.handleType = handleType - result.fd = fd + result = VkImportSemaphoreFdInfoKHR( + sType: sType, + pNext: pNext, + semaphore: semaphore, + flags: flags, + handleType: handleType, + fd: fd, + ) proc newVkSemaphoreGetFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetFdInfoKHR = - result.sType = sType - result.pNext = pNext - result.semaphore = semaphore - result.handleType = handleType + result = VkSemaphoreGetFdInfoKHR( + sType: sType, + pNext: pNext, + semaphore: semaphore, + handleType: handleType, + ) proc newVkImportSemaphoreZirconHandleInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, flags: VkSemaphoreImportFlags = 0.VkSemaphoreImportFlags, handleType: VkExternalSemaphoreHandleTypeFlagBits, zirconHandle: zx_handle_t): VkImportSemaphoreZirconHandleInfoFUCHSIA = - result.sType = sType - result.pNext = pNext - result.semaphore = semaphore - result.flags = flags - result.handleType = handleType - result.zirconHandle = zirconHandle + result = VkImportSemaphoreZirconHandleInfoFUCHSIA( + sType: sType, + pNext: pNext, + semaphore: semaphore, + flags: flags, + handleType: handleType, + zirconHandle: zirconHandle, + ) proc newVkSemaphoreGetZirconHandleInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetZirconHandleInfoFUCHSIA = - result.sType = sType - result.pNext = pNext - result.semaphore = semaphore - result.handleType = handleType + result = VkSemaphoreGetZirconHandleInfoFUCHSIA( + sType: sType, + pNext: pNext, + semaphore: semaphore, + handleType: handleType, + ) proc newVkPhysicalDeviceExternalFenceInfo*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalFenceHandleTypeFlagBits): VkPhysicalDeviceExternalFenceInfo = - result.sType = sType - result.pNext = pNext - result.handleType = handleType + result = VkPhysicalDeviceExternalFenceInfo( + sType: sType, + pNext: pNext, + handleType: handleType, + ) proc newVkExternalFenceProperties*(sType: VkStructureType, pNext: pointer = nil, exportFromImportedHandleTypes: VkExternalFenceHandleTypeFlags, compatibleHandleTypes: VkExternalFenceHandleTypeFlags, externalFenceFeatures: VkExternalFenceFeatureFlags): VkExternalFenceProperties = - result.sType = sType - result.pNext = pNext - result.exportFromImportedHandleTypes = exportFromImportedHandleTypes - result.compatibleHandleTypes = compatibleHandleTypes - result.externalFenceFeatures = externalFenceFeatures + result = VkExternalFenceProperties( + sType: sType, + pNext: pNext, + exportFromImportedHandleTypes: exportFromImportedHandleTypes, + compatibleHandleTypes: compatibleHandleTypes, + externalFenceFeatures: externalFenceFeatures, + ) proc newVkExportFenceCreateInfo*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalFenceHandleTypeFlags): VkExportFenceCreateInfo = - result.sType = sType - result.pNext = pNext - result.handleTypes = handleTypes + result = VkExportFenceCreateInfo( + sType: sType, + pNext: pNext, + handleTypes: handleTypes, + ) proc newVkImportFenceWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, fence: VkFence, flags: VkFenceImportFlags = 0.VkFenceImportFlags, handleType: VkExternalFenceHandleTypeFlagBits, handle: HANDLE, name: LPCWSTR): VkImportFenceWin32HandleInfoKHR = - result.sType = sType - result.pNext = pNext - result.fence = fence - result.flags = flags - result.handleType = handleType - result.handle = handle - result.name = name + result = VkImportFenceWin32HandleInfoKHR( + sType: sType, + pNext: pNext, + fence: fence, + flags: flags, + handleType: handleType, + handle: handle, + name: name, + ) proc newVkExportFenceWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pAttributes: ptr SECURITY_ATTRIBUTES, dwAccess: DWORD, name: LPCWSTR): VkExportFenceWin32HandleInfoKHR = - result.sType = sType - result.pNext = pNext - result.pAttributes = pAttributes - result.dwAccess = dwAccess - result.name = name + result = VkExportFenceWin32HandleInfoKHR( + sType: sType, + pNext: pNext, + pAttributes: pAttributes, + dwAccess: dwAccess, + name: name, + ) proc newVkFenceGetWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, fence: VkFence, handleType: VkExternalFenceHandleTypeFlagBits): VkFenceGetWin32HandleInfoKHR = - result.sType = sType - result.pNext = pNext - result.fence = fence - result.handleType = handleType + result = VkFenceGetWin32HandleInfoKHR( + sType: sType, + pNext: pNext, + fence: fence, + handleType: handleType, + ) proc newVkImportFenceFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, fence: VkFence, flags: VkFenceImportFlags = 0.VkFenceImportFlags, handleType: VkExternalFenceHandleTypeFlagBits, fd: int): VkImportFenceFdInfoKHR = - result.sType = sType - result.pNext = pNext - result.fence = fence - result.flags = flags - result.handleType = handleType - result.fd = fd + result = VkImportFenceFdInfoKHR( + sType: sType, + pNext: pNext, + fence: fence, + flags: flags, + handleType: handleType, + fd: fd, + ) proc newVkFenceGetFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, fence: VkFence, handleType: VkExternalFenceHandleTypeFlagBits): VkFenceGetFdInfoKHR = - result.sType = sType - result.pNext = pNext - result.fence = fence - result.handleType = handleType + result = VkFenceGetFdInfoKHR( + sType: sType, + pNext: pNext, + fence: fence, + handleType: handleType, + ) proc newVkExportFenceSciSyncInfoNV*(sType: VkStructureType, pNext: pointer = nil, pAttributes: NvSciSyncAttrList): VkExportFenceSciSyncInfoNV = - result.sType = sType - result.pNext = pNext - result.pAttributes = pAttributes + result = VkExportFenceSciSyncInfoNV( + sType: sType, + pNext: pNext, + pAttributes: pAttributes, + ) proc newVkImportFenceSciSyncInfoNV*(sType: VkStructureType, pNext: pointer = nil, fence: VkFence, handleType: VkExternalFenceHandleTypeFlagBits, handle: pointer = nil): VkImportFenceSciSyncInfoNV = - result.sType = sType - result.pNext = pNext - result.fence = fence - result.handleType = handleType - result.handle = handle + result = VkImportFenceSciSyncInfoNV( + sType: sType, + pNext: pNext, + fence: fence, + handleType: handleType, + handle: handle, + ) proc newVkFenceGetSciSyncInfoNV*(sType: VkStructureType, pNext: pointer = nil, fence: VkFence, handleType: VkExternalFenceHandleTypeFlagBits): VkFenceGetSciSyncInfoNV = - result.sType = sType - result.pNext = pNext - result.fence = fence - result.handleType = handleType + result = VkFenceGetSciSyncInfoNV( + sType: sType, + pNext: pNext, + fence: fence, + handleType: handleType, + ) proc newVkExportSemaphoreSciSyncInfoNV*(sType: VkStructureType, pNext: pointer = nil, pAttributes: NvSciSyncAttrList): VkExportSemaphoreSciSyncInfoNV = - result.sType = sType - result.pNext = pNext - result.pAttributes = pAttributes + result = VkExportSemaphoreSciSyncInfoNV( + sType: sType, + pNext: pNext, + pAttributes: pAttributes, + ) proc newVkImportSemaphoreSciSyncInfoNV*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits, handle: pointer = nil): VkImportSemaphoreSciSyncInfoNV = - result.sType = sType - result.pNext = pNext - result.semaphore = semaphore - result.handleType = handleType - result.handle = handle + result = VkImportSemaphoreSciSyncInfoNV( + sType: sType, + pNext: pNext, + semaphore: semaphore, + handleType: handleType, + handle: handle, + ) proc newVkSemaphoreGetSciSyncInfoNV*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetSciSyncInfoNV = - result.sType = sType - result.pNext = pNext - result.semaphore = semaphore - result.handleType = handleType + result = VkSemaphoreGetSciSyncInfoNV( + sType: sType, + pNext: pNext, + semaphore: semaphore, + handleType: handleType, + ) proc newVkSciSyncAttributesInfoNV*(sType: VkStructureType, pNext: pointer = nil, clientType: VkSciSyncClientTypeNV, primitiveType: VkSciSyncPrimitiveTypeNV): VkSciSyncAttributesInfoNV = - result.sType = sType - result.pNext = pNext - result.clientType = clientType - result.primitiveType = primitiveType + result = VkSciSyncAttributesInfoNV( + sType: sType, + pNext: pNext, + clientType: clientType, + primitiveType: primitiveType, + ) proc newVkPhysicalDeviceExternalSciSyncFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, sciSyncFence: VkBool32, sciSyncSemaphore: VkBool32, sciSyncImport: VkBool32, sciSyncExport: VkBool32): VkPhysicalDeviceExternalSciSyncFeaturesNV = - result.sType = sType - result.pNext = pNext - result.sciSyncFence = sciSyncFence - result.sciSyncSemaphore = sciSyncSemaphore - result.sciSyncImport = sciSyncImport - result.sciSyncExport = sciSyncExport + result = VkPhysicalDeviceExternalSciSyncFeaturesNV( + sType: sType, + pNext: pNext, + sciSyncFence: sciSyncFence, + sciSyncSemaphore: sciSyncSemaphore, + sciSyncImport: sciSyncImport, + sciSyncExport: sciSyncExport, + ) proc newVkPhysicalDeviceExternalSciSync2FeaturesNV*(sType: VkStructureType, pNext: pointer = nil, sciSyncFence: VkBool32, sciSyncSemaphore2: VkBool32, sciSyncImport: VkBool32, sciSyncExport: VkBool32): VkPhysicalDeviceExternalSciSync2FeaturesNV = - result.sType = sType - result.pNext = pNext - result.sciSyncFence = sciSyncFence - result.sciSyncSemaphore2 = sciSyncSemaphore2 - result.sciSyncImport = sciSyncImport - result.sciSyncExport = sciSyncExport + result = VkPhysicalDeviceExternalSciSync2FeaturesNV( + sType: sType, + pNext: pNext, + sciSyncFence: sciSyncFence, + sciSyncSemaphore2: sciSyncSemaphore2, + sciSyncImport: sciSyncImport, + sciSyncExport: sciSyncExport, + ) proc newVkSemaphoreSciSyncPoolCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, handle: NvSciSyncObj): VkSemaphoreSciSyncPoolCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.handle = handle + result = VkSemaphoreSciSyncPoolCreateInfoNV( + sType: sType, + pNext: pNext, + handle: handle, + ) proc newVkSemaphoreSciSyncCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, semaphorePool: VkSemaphoreSciSyncPoolNV, pFence: ptr NvSciSyncFence): VkSemaphoreSciSyncCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.semaphorePool = semaphorePool - result.pFence = pFence + result = VkSemaphoreSciSyncCreateInfoNV( + sType: sType, + pNext: pNext, + semaphorePool: semaphorePool, + pFence: pFence, + ) proc newVkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, semaphoreSciSyncPoolRequestCount: uint32): VkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.semaphoreSciSyncPoolRequestCount = semaphoreSciSyncPoolRequestCount + result = VkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV( + sType: sType, + pNext: pNext, + semaphoreSciSyncPoolRequestCount: semaphoreSciSyncPoolRequestCount, + ) proc newVkPhysicalDeviceMultiviewFeatures*(sType: VkStructureType, pNext: pointer = nil, multiview: VkBool32, multiviewGeometryShader: VkBool32, multiviewTessellationShader: VkBool32): VkPhysicalDeviceMultiviewFeatures = - result.sType = sType - result.pNext = pNext - result.multiview = multiview - result.multiviewGeometryShader = multiviewGeometryShader - result.multiviewTessellationShader = multiviewTessellationShader + result = VkPhysicalDeviceMultiviewFeatures( + sType: sType, + pNext: pNext, + multiview: multiview, + multiviewGeometryShader: multiviewGeometryShader, + multiviewTessellationShader: multiviewTessellationShader, + ) proc newVkPhysicalDeviceMultiviewProperties*(sType: VkStructureType, pNext: pointer = nil, maxMultiviewViewCount: uint32, maxMultiviewInstanceIndex: uint32): VkPhysicalDeviceMultiviewProperties = - result.sType = sType - result.pNext = pNext - result.maxMultiviewViewCount = maxMultiviewViewCount - result.maxMultiviewInstanceIndex = maxMultiviewInstanceIndex + result = VkPhysicalDeviceMultiviewProperties( + sType: sType, + pNext: pNext, + maxMultiviewViewCount: maxMultiviewViewCount, + maxMultiviewInstanceIndex: maxMultiviewInstanceIndex, + ) proc newVkRenderPassMultiviewCreateInfo*(sType: VkStructureType, pNext: pointer = nil, subpassCount: uint32, pViewMasks: ptr uint32, dependencyCount: uint32, pViewOffsets: ptr int32, correlationMaskCount: uint32, pCorrelationMasks: ptr uint32): VkRenderPassMultiviewCreateInfo = - result.sType = sType - result.pNext = pNext - result.subpassCount = subpassCount - result.pViewMasks = pViewMasks - result.dependencyCount = dependencyCount - result.pViewOffsets = pViewOffsets - result.correlationMaskCount = correlationMaskCount - result.pCorrelationMasks = pCorrelationMasks + result = VkRenderPassMultiviewCreateInfo( + sType: sType, + pNext: pNext, + subpassCount: subpassCount, + pViewMasks: pViewMasks, + dependencyCount: dependencyCount, + pViewOffsets: pViewOffsets, + correlationMaskCount: correlationMaskCount, + pCorrelationMasks: pCorrelationMasks, + ) proc newVkSurfaceCapabilities2EXT*(sType: VkStructureType, pNext: pointer = nil, minImageCount: uint32, maxImageCount: uint32, currentExtent: VkExtent2D, minImageExtent: VkExtent2D, maxImageExtent: VkExtent2D, maxImageArrayLayers: uint32, supportedTransforms: VkSurfaceTransformFlagsKHR, currentTransform: VkSurfaceTransformFlagBitsKHR, supportedCompositeAlpha: VkCompositeAlphaFlagsKHR, supportedUsageFlags: VkImageUsageFlags, supportedSurfaceCounters: VkSurfaceCounterFlagsEXT): VkSurfaceCapabilities2EXT = - result.sType = sType - result.pNext = pNext - result.minImageCount = minImageCount - result.maxImageCount = maxImageCount - result.currentExtent = currentExtent - result.minImageExtent = minImageExtent - result.maxImageExtent = maxImageExtent - result.maxImageArrayLayers = maxImageArrayLayers - result.supportedTransforms = supportedTransforms - result.currentTransform = currentTransform - result.supportedCompositeAlpha = supportedCompositeAlpha - result.supportedUsageFlags = supportedUsageFlags - result.supportedSurfaceCounters = supportedSurfaceCounters + result = VkSurfaceCapabilities2EXT( + sType: sType, + pNext: pNext, + minImageCount: minImageCount, + maxImageCount: maxImageCount, + currentExtent: currentExtent, + minImageExtent: minImageExtent, + maxImageExtent: maxImageExtent, + maxImageArrayLayers: maxImageArrayLayers, + supportedTransforms: supportedTransforms, + currentTransform: currentTransform, + supportedCompositeAlpha: supportedCompositeAlpha, + supportedUsageFlags: supportedUsageFlags, + supportedSurfaceCounters: supportedSurfaceCounters, + ) proc newVkDisplayPowerInfoEXT*(sType: VkStructureType, pNext: pointer = nil, powerState: VkDisplayPowerStateEXT): VkDisplayPowerInfoEXT = - result.sType = sType - result.pNext = pNext - result.powerState = powerState + result = VkDisplayPowerInfoEXT( + sType: sType, + pNext: pNext, + powerState: powerState, + ) proc newVkDeviceEventInfoEXT*(sType: VkStructureType, pNext: pointer = nil, deviceEvent: VkDeviceEventTypeEXT): VkDeviceEventInfoEXT = - result.sType = sType - result.pNext = pNext - result.deviceEvent = deviceEvent + result = VkDeviceEventInfoEXT( + sType: sType, + pNext: pNext, + deviceEvent: deviceEvent, + ) proc newVkDisplayEventInfoEXT*(sType: VkStructureType, pNext: pointer = nil, displayEvent: VkDisplayEventTypeEXT): VkDisplayEventInfoEXT = - result.sType = sType - result.pNext = pNext - result.displayEvent = displayEvent + result = VkDisplayEventInfoEXT( + sType: sType, + pNext: pNext, + displayEvent: displayEvent, + ) proc newVkSwapchainCounterCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, surfaceCounters: VkSurfaceCounterFlagsEXT): VkSwapchainCounterCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.surfaceCounters = surfaceCounters + result = VkSwapchainCounterCreateInfoEXT( + sType: sType, + pNext: pNext, + surfaceCounters: surfaceCounters, + ) proc newVkPhysicalDeviceGroupProperties*(sType: VkStructureType, pNext: pointer = nil, physicalDeviceCount: uint32, physicalDevices: array[VK_MAX_DEVICE_GROUP_SIZE, VkPhysicalDevice], subsetAllocation: VkBool32): VkPhysicalDeviceGroupProperties = - result.sType = sType - result.pNext = pNext - result.physicalDeviceCount = physicalDeviceCount - result.physicalDevices = physicalDevices - result.subsetAllocation = subsetAllocation + result = VkPhysicalDeviceGroupProperties( + sType: sType, + pNext: pNext, + physicalDeviceCount: physicalDeviceCount, + physicalDevices: physicalDevices, + subsetAllocation: subsetAllocation, + ) proc newVkMemoryAllocateFlagsInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkMemoryAllocateFlags = 0.VkMemoryAllocateFlags, deviceMask: uint32): VkMemoryAllocateFlagsInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.deviceMask = deviceMask + result = VkMemoryAllocateFlagsInfo( + sType: sType, + pNext: pNext, + flags: flags, + deviceMask: deviceMask, + ) proc newVkBindBufferMemoryInfo*(sType: VkStructureType, pNext: pointer = nil, buffer: VkBuffer, memory: VkDeviceMemory, memoryOffset: VkDeviceSize): VkBindBufferMemoryInfo = - result.sType = sType - result.pNext = pNext - result.buffer = buffer - result.memory = memory - result.memoryOffset = memoryOffset + result = VkBindBufferMemoryInfo( + sType: sType, + pNext: pNext, + buffer: buffer, + memory: memory, + memoryOffset: memoryOffset, + ) proc newVkBindBufferMemoryDeviceGroupInfo*(sType: VkStructureType, pNext: pointer = nil, deviceIndexCount: uint32, pDeviceIndices: ptr uint32): VkBindBufferMemoryDeviceGroupInfo = - result.sType = sType - result.pNext = pNext - result.deviceIndexCount = deviceIndexCount - result.pDeviceIndices = pDeviceIndices + result = VkBindBufferMemoryDeviceGroupInfo( + sType: sType, + pNext: pNext, + deviceIndexCount: deviceIndexCount, + pDeviceIndices: pDeviceIndices, + ) proc newVkBindImageMemoryInfo*(sType: VkStructureType, pNext: pointer = nil, image: VkImage, memory: VkDeviceMemory, memoryOffset: VkDeviceSize): VkBindImageMemoryInfo = - result.sType = sType - result.pNext = pNext - result.image = image - result.memory = memory - result.memoryOffset = memoryOffset + result = VkBindImageMemoryInfo( + sType: sType, + pNext: pNext, + image: image, + memory: memory, + memoryOffset: memoryOffset, + ) proc newVkBindImageMemoryDeviceGroupInfo*(sType: VkStructureType, pNext: pointer = nil, deviceIndexCount: uint32, pDeviceIndices: ptr uint32, splitInstanceBindRegionCount: uint32, pSplitInstanceBindRegions: ptr VkRect2D): VkBindImageMemoryDeviceGroupInfo = - result.sType = sType - result.pNext = pNext - result.deviceIndexCount = deviceIndexCount - result.pDeviceIndices = pDeviceIndices - result.splitInstanceBindRegionCount = splitInstanceBindRegionCount - result.pSplitInstanceBindRegions = pSplitInstanceBindRegions + result = VkBindImageMemoryDeviceGroupInfo( + sType: sType, + pNext: pNext, + deviceIndexCount: deviceIndexCount, + pDeviceIndices: pDeviceIndices, + splitInstanceBindRegionCount: splitInstanceBindRegionCount, + pSplitInstanceBindRegions: pSplitInstanceBindRegions, + ) proc newVkDeviceGroupRenderPassBeginInfo*(sType: VkStructureType, pNext: pointer = nil, deviceMask: uint32, deviceRenderAreaCount: uint32, pDeviceRenderAreas: ptr VkRect2D): VkDeviceGroupRenderPassBeginInfo = - result.sType = sType - result.pNext = pNext - result.deviceMask = deviceMask - result.deviceRenderAreaCount = deviceRenderAreaCount - result.pDeviceRenderAreas = pDeviceRenderAreas + result = VkDeviceGroupRenderPassBeginInfo( + sType: sType, + pNext: pNext, + deviceMask: deviceMask, + deviceRenderAreaCount: deviceRenderAreaCount, + pDeviceRenderAreas: pDeviceRenderAreas, + ) proc newVkDeviceGroupCommandBufferBeginInfo*(sType: VkStructureType, pNext: pointer = nil, deviceMask: uint32): VkDeviceGroupCommandBufferBeginInfo = - result.sType = sType - result.pNext = pNext - result.deviceMask = deviceMask + result = VkDeviceGroupCommandBufferBeginInfo( + sType: sType, + pNext: pNext, + deviceMask: deviceMask, + ) proc newVkDeviceGroupSubmitInfo*(sType: VkStructureType, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphoreDeviceIndices: ptr uint32, commandBufferCount: uint32, pCommandBufferDeviceMasks: ptr uint32, signalSemaphoreCount: uint32, pSignalSemaphoreDeviceIndices: ptr uint32): VkDeviceGroupSubmitInfo = - result.sType = sType - result.pNext = pNext - result.waitSemaphoreCount = waitSemaphoreCount - result.pWaitSemaphoreDeviceIndices = pWaitSemaphoreDeviceIndices - result.commandBufferCount = commandBufferCount - result.pCommandBufferDeviceMasks = pCommandBufferDeviceMasks - result.signalSemaphoreCount = signalSemaphoreCount - result.pSignalSemaphoreDeviceIndices = pSignalSemaphoreDeviceIndices + result = VkDeviceGroupSubmitInfo( + sType: sType, + pNext: pNext, + waitSemaphoreCount: waitSemaphoreCount, + pWaitSemaphoreDeviceIndices: pWaitSemaphoreDeviceIndices, + commandBufferCount: commandBufferCount, + pCommandBufferDeviceMasks: pCommandBufferDeviceMasks, + signalSemaphoreCount: signalSemaphoreCount, + pSignalSemaphoreDeviceIndices: pSignalSemaphoreDeviceIndices, + ) proc newVkDeviceGroupBindSparseInfo*(sType: VkStructureType, pNext: pointer = nil, resourceDeviceIndex: uint32, memoryDeviceIndex: uint32): VkDeviceGroupBindSparseInfo = - result.sType = sType - result.pNext = pNext - result.resourceDeviceIndex = resourceDeviceIndex - result.memoryDeviceIndex = memoryDeviceIndex + result = VkDeviceGroupBindSparseInfo( + sType: sType, + pNext: pNext, + resourceDeviceIndex: resourceDeviceIndex, + memoryDeviceIndex: memoryDeviceIndex, + ) proc newVkDeviceGroupPresentCapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, presentMask: array[VK_MAX_DEVICE_GROUP_SIZE, uint32], modes: VkDeviceGroupPresentModeFlagsKHR): VkDeviceGroupPresentCapabilitiesKHR = - result.sType = sType - result.pNext = pNext - result.presentMask = presentMask - result.modes = modes + result = VkDeviceGroupPresentCapabilitiesKHR( + sType: sType, + pNext: pNext, + presentMask: presentMask, + modes: modes, + ) proc newVkImageSwapchainCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, swapchain: VkSwapchainKHR): VkImageSwapchainCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.swapchain = swapchain + result = VkImageSwapchainCreateInfoKHR( + sType: sType, + pNext: pNext, + swapchain: swapchain, + ) proc newVkBindImageMemorySwapchainInfoKHR*(sType: VkStructureType, pNext: pointer = nil, swapchain: VkSwapchainKHR, imageIndex: uint32): VkBindImageMemorySwapchainInfoKHR = - result.sType = sType - result.pNext = pNext - result.swapchain = swapchain - result.imageIndex = imageIndex + result = VkBindImageMemorySwapchainInfoKHR( + sType: sType, + pNext: pNext, + swapchain: swapchain, + imageIndex: imageIndex, + ) proc newVkAcquireNextImageInfoKHR*(sType: VkStructureType, pNext: pointer = nil, swapchain: VkSwapchainKHR, timeout: uint64, semaphore: VkSemaphore, fence: VkFence, deviceMask: uint32): VkAcquireNextImageInfoKHR = - result.sType = sType - result.pNext = pNext - result.swapchain = swapchain - result.timeout = timeout - result.semaphore = semaphore - result.fence = fence - result.deviceMask = deviceMask + result = VkAcquireNextImageInfoKHR( + sType: sType, + pNext: pNext, + swapchain: swapchain, + timeout: timeout, + semaphore: semaphore, + fence: fence, + deviceMask: deviceMask, + ) proc newVkDeviceGroupPresentInfoKHR*(sType: VkStructureType, pNext: pointer = nil, swapchainCount: uint32, pDeviceMasks: ptr uint32, mode: VkDeviceGroupPresentModeFlagBitsKHR): VkDeviceGroupPresentInfoKHR = - result.sType = sType - result.pNext = pNext - result.swapchainCount = swapchainCount - result.pDeviceMasks = pDeviceMasks - result.mode = mode + result = VkDeviceGroupPresentInfoKHR( + sType: sType, + pNext: pNext, + swapchainCount: swapchainCount, + pDeviceMasks: pDeviceMasks, + mode: mode, + ) proc newVkDeviceGroupDeviceCreateInfo*(sType: VkStructureType, pNext: pointer = nil, physicalDeviceCount: uint32, pPhysicalDevices: ptr VkPhysicalDevice): VkDeviceGroupDeviceCreateInfo = - result.sType = sType - result.pNext = pNext - result.physicalDeviceCount = physicalDeviceCount - result.pPhysicalDevices = pPhysicalDevices + result = VkDeviceGroupDeviceCreateInfo( + sType: sType, + pNext: pNext, + physicalDeviceCount: physicalDeviceCount, + pPhysicalDevices: pPhysicalDevices, + ) proc newVkDeviceGroupSwapchainCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, modes: VkDeviceGroupPresentModeFlagsKHR): VkDeviceGroupSwapchainCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.modes = modes + result = VkDeviceGroupSwapchainCreateInfoKHR( + sType: sType, + pNext: pNext, + modes: modes, + ) proc newVkDescriptorUpdateTemplateEntry*(dstBinding: uint32, dstArrayElement: uint32, descriptorCount: uint32, descriptorType: VkDescriptorType, offset: uint, stride: uint): VkDescriptorUpdateTemplateEntry = - result.dstBinding = dstBinding - result.dstArrayElement = dstArrayElement - result.descriptorCount = descriptorCount - result.descriptorType = descriptorType - result.offset = offset - result.stride = stride + result = VkDescriptorUpdateTemplateEntry( + dstBinding: dstBinding, + dstArrayElement: dstArrayElement, + descriptorCount: descriptorCount, + descriptorType: descriptorType, + offset: offset, + stride: stride, + ) proc newVkDescriptorUpdateTemplateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkDescriptorUpdateTemplateCreateFlags = 0.VkDescriptorUpdateTemplateCreateFlags, descriptorUpdateEntryCount: uint32, pDescriptorUpdateEntries: ptr VkDescriptorUpdateTemplateEntry, templateType: VkDescriptorUpdateTemplateType, descriptorSetLayout: VkDescriptorSetLayout, pipelineBindPoint: VkPipelineBindPoint, pipelineLayout: VkPipelineLayout, set: uint32): VkDescriptorUpdateTemplateCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.descriptorUpdateEntryCount = descriptorUpdateEntryCount - result.pDescriptorUpdateEntries = pDescriptorUpdateEntries - result.templateType = templateType - result.descriptorSetLayout = descriptorSetLayout - result.pipelineBindPoint = pipelineBindPoint - result.pipelineLayout = pipelineLayout - result.set = set + result = VkDescriptorUpdateTemplateCreateInfo( + sType: sType, + pNext: pNext, + flags: flags, + descriptorUpdateEntryCount: descriptorUpdateEntryCount, + pDescriptorUpdateEntries: pDescriptorUpdateEntries, + templateType: templateType, + descriptorSetLayout: descriptorSetLayout, + pipelineBindPoint: pipelineBindPoint, + pipelineLayout: pipelineLayout, + set: set, + ) proc newVkXYColorEXT*(x: float32, y: float32): VkXYColorEXT = - result.x = x - result.y = y + result = VkXYColorEXT( + x: x, + y: y, + ) proc newVkPhysicalDevicePresentIdFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, presentId: VkBool32): VkPhysicalDevicePresentIdFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.presentId = presentId + result = VkPhysicalDevicePresentIdFeaturesKHR( + sType: sType, + pNext: pNext, + presentId: presentId, + ) proc newVkPresentIdKHR*(sType: VkStructureType, pNext: pointer = nil, swapchainCount: uint32, pPresentIds: ptr uint64): VkPresentIdKHR = - result.sType = sType - result.pNext = pNext - result.swapchainCount = swapchainCount - result.pPresentIds = pPresentIds + result = VkPresentIdKHR( + sType: sType, + pNext: pNext, + swapchainCount: swapchainCount, + pPresentIds: pPresentIds, + ) proc newVkPhysicalDevicePresentWaitFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, presentWait: VkBool32): VkPhysicalDevicePresentWaitFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.presentWait = presentWait + result = VkPhysicalDevicePresentWaitFeaturesKHR( + sType: sType, + pNext: pNext, + presentWait: presentWait, + ) proc newVkHdrMetadataEXT*(sType: VkStructureType, pNext: pointer = nil, displayPrimaryRed: VkXYColorEXT, displayPrimaryGreen: VkXYColorEXT, displayPrimaryBlue: VkXYColorEXT, whitePoint: VkXYColorEXT, maxLuminance: float32, minLuminance: float32, maxContentLightLevel: float32, maxFrameAverageLightLevel: float32): VkHdrMetadataEXT = - result.sType = sType - result.pNext = pNext - result.displayPrimaryRed = displayPrimaryRed - result.displayPrimaryGreen = displayPrimaryGreen - result.displayPrimaryBlue = displayPrimaryBlue - result.whitePoint = whitePoint - result.maxLuminance = maxLuminance - result.minLuminance = minLuminance - result.maxContentLightLevel = maxContentLightLevel - result.maxFrameAverageLightLevel = maxFrameAverageLightLevel + result = VkHdrMetadataEXT( + sType: sType, + pNext: pNext, + displayPrimaryRed: displayPrimaryRed, + displayPrimaryGreen: displayPrimaryGreen, + displayPrimaryBlue: displayPrimaryBlue, + whitePoint: whitePoint, + maxLuminance: maxLuminance, + minLuminance: minLuminance, + maxContentLightLevel: maxContentLightLevel, + maxFrameAverageLightLevel: maxFrameAverageLightLevel, + ) proc newVkDisplayNativeHdrSurfaceCapabilitiesAMD*(sType: VkStructureType, pNext: pointer = nil, localDimmingSupport: VkBool32): VkDisplayNativeHdrSurfaceCapabilitiesAMD = - result.sType = sType - result.pNext = pNext - result.localDimmingSupport = localDimmingSupport + result = VkDisplayNativeHdrSurfaceCapabilitiesAMD( + sType: sType, + pNext: pNext, + localDimmingSupport: localDimmingSupport, + ) proc newVkSwapchainDisplayNativeHdrCreateInfoAMD*(sType: VkStructureType, pNext: pointer = nil, localDimmingEnable: VkBool32): VkSwapchainDisplayNativeHdrCreateInfoAMD = - result.sType = sType - result.pNext = pNext - result.localDimmingEnable = localDimmingEnable + result = VkSwapchainDisplayNativeHdrCreateInfoAMD( + sType: sType, + pNext: pNext, + localDimmingEnable: localDimmingEnable, + ) proc newVkRefreshCycleDurationGOOGLE*(refreshDuration: uint64): VkRefreshCycleDurationGOOGLE = - result.refreshDuration = refreshDuration + result = VkRefreshCycleDurationGOOGLE( + refreshDuration: refreshDuration, + ) proc newVkPastPresentationTimingGOOGLE*(presentID: uint32, desiredPresentTime: uint64, actualPresentTime: uint64, earliestPresentTime: uint64, presentMargin: uint64): VkPastPresentationTimingGOOGLE = - result.presentID = presentID - result.desiredPresentTime = desiredPresentTime - result.actualPresentTime = actualPresentTime - result.earliestPresentTime = earliestPresentTime - result.presentMargin = presentMargin + result = VkPastPresentationTimingGOOGLE( + presentID: presentID, + desiredPresentTime: desiredPresentTime, + actualPresentTime: actualPresentTime, + earliestPresentTime: earliestPresentTime, + presentMargin: presentMargin, + ) proc newVkPresentTimesInfoGOOGLE*(sType: VkStructureType, pNext: pointer = nil, swapchainCount: uint32, pTimes: ptr VkPresentTimeGOOGLE): VkPresentTimesInfoGOOGLE = - result.sType = sType - result.pNext = pNext - result.swapchainCount = swapchainCount - result.pTimes = pTimes + result = VkPresentTimesInfoGOOGLE( + sType: sType, + pNext: pNext, + swapchainCount: swapchainCount, + pTimes: pTimes, + ) proc newVkPresentTimeGOOGLE*(presentID: uint32, desiredPresentTime: uint64): VkPresentTimeGOOGLE = - result.presentID = presentID - result.desiredPresentTime = desiredPresentTime + result = VkPresentTimeGOOGLE( + presentID: presentID, + desiredPresentTime: desiredPresentTime, + ) proc newVkIOSSurfaceCreateInfoMVK*(sType: VkStructureType, pNext: pointer = nil, flags: VkIOSSurfaceCreateFlagsMVK = 0.VkIOSSurfaceCreateFlagsMVK, pView: pointer = nil): VkIOSSurfaceCreateInfoMVK = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.pView = pView + result = VkIOSSurfaceCreateInfoMVK( + sType: sType, + pNext: pNext, + flags: flags, + pView: pView, + ) proc newVkMacOSSurfaceCreateInfoMVK*(sType: VkStructureType, pNext: pointer = nil, flags: VkMacOSSurfaceCreateFlagsMVK = 0.VkMacOSSurfaceCreateFlagsMVK, pView: pointer = nil): VkMacOSSurfaceCreateInfoMVK = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.pView = pView + result = VkMacOSSurfaceCreateInfoMVK( + sType: sType, + pNext: pNext, + flags: flags, + pView: pView, + ) proc newVkMetalSurfaceCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkMetalSurfaceCreateFlagsEXT = 0.VkMetalSurfaceCreateFlagsEXT, pLayer: ptr CAMetalLayer): VkMetalSurfaceCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.pLayer = pLayer + result = VkMetalSurfaceCreateInfoEXT( + sType: sType, + pNext: pNext, + flags: flags, + pLayer: pLayer, + ) proc newVkViewportWScalingNV*(xcoeff: float32, ycoeff: float32): VkViewportWScalingNV = - result.xcoeff = xcoeff - result.ycoeff = ycoeff + result = VkViewportWScalingNV( + xcoeff: xcoeff, + ycoeff: ycoeff, + ) proc newVkPipelineViewportWScalingStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, viewportWScalingEnable: VkBool32, viewportCount: uint32, pViewportWScalings: ptr VkViewportWScalingNV): VkPipelineViewportWScalingStateCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.viewportWScalingEnable = viewportWScalingEnable - result.viewportCount = viewportCount - result.pViewportWScalings = pViewportWScalings + result = VkPipelineViewportWScalingStateCreateInfoNV( + sType: sType, + pNext: pNext, + viewportWScalingEnable: viewportWScalingEnable, + viewportCount: viewportCount, + pViewportWScalings: pViewportWScalings, + ) proc newVkViewportSwizzleNV*(x: VkViewportCoordinateSwizzleNV, y: VkViewportCoordinateSwizzleNV, z: VkViewportCoordinateSwizzleNV, w: VkViewportCoordinateSwizzleNV): VkViewportSwizzleNV = - result.x = x - result.y = y - result.z = z - result.w = w + result = VkViewportSwizzleNV( + x: x, + y: y, + z: z, + w: w, + ) proc newVkPipelineViewportSwizzleStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineViewportSwizzleStateCreateFlagsNV = 0.VkPipelineViewportSwizzleStateCreateFlagsNV, viewportCount: uint32, pViewportSwizzles: ptr VkViewportSwizzleNV): VkPipelineViewportSwizzleStateCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.viewportCount = viewportCount - result.pViewportSwizzles = pViewportSwizzles + result = VkPipelineViewportSwizzleStateCreateInfoNV( + sType: sType, + pNext: pNext, + flags: flags, + viewportCount: viewportCount, + pViewportSwizzles: pViewportSwizzles, + ) proc newVkPhysicalDeviceDiscardRectanglePropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxDiscardRectangles: uint32): VkPhysicalDeviceDiscardRectanglePropertiesEXT = - result.sType = sType - result.pNext = pNext - result.maxDiscardRectangles = maxDiscardRectangles + result = VkPhysicalDeviceDiscardRectanglePropertiesEXT( + sType: sType, + pNext: pNext, + maxDiscardRectangles: maxDiscardRectangles, + ) proc newVkPipelineDiscardRectangleStateCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineDiscardRectangleStateCreateFlagsEXT = 0.VkPipelineDiscardRectangleStateCreateFlagsEXT, discardRectangleMode: VkDiscardRectangleModeEXT, discardRectangleCount: uint32, pDiscardRectangles: ptr VkRect2D): VkPipelineDiscardRectangleStateCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.discardRectangleMode = discardRectangleMode - result.discardRectangleCount = discardRectangleCount - result.pDiscardRectangles = pDiscardRectangles + result = VkPipelineDiscardRectangleStateCreateInfoEXT( + sType: sType, + pNext: pNext, + flags: flags, + discardRectangleMode: discardRectangleMode, + discardRectangleCount: discardRectangleCount, + pDiscardRectangles: pDiscardRectangles, + ) proc newVkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX*(sType: VkStructureType, pNext: pointer = nil, perViewPositionAllComponents: VkBool32): VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX = - result.sType = sType - result.pNext = pNext - result.perViewPositionAllComponents = perViewPositionAllComponents + result = VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX( + sType: sType, + pNext: pNext, + perViewPositionAllComponents: perViewPositionAllComponents, + ) proc newVkInputAttachmentAspectReference*(subpass: uint32, inputAttachmentIndex: uint32, aspectMask: VkImageAspectFlags): VkInputAttachmentAspectReference = - result.subpass = subpass - result.inputAttachmentIndex = inputAttachmentIndex - result.aspectMask = aspectMask + result = VkInputAttachmentAspectReference( + subpass: subpass, + inputAttachmentIndex: inputAttachmentIndex, + aspectMask: aspectMask, + ) proc newVkRenderPassInputAttachmentAspectCreateInfo*(sType: VkStructureType, pNext: pointer = nil, aspectReferenceCount: uint32, pAspectReferences: ptr VkInputAttachmentAspectReference): VkRenderPassInputAttachmentAspectCreateInfo = - result.sType = sType - result.pNext = pNext - result.aspectReferenceCount = aspectReferenceCount - result.pAspectReferences = pAspectReferences + result = VkRenderPassInputAttachmentAspectCreateInfo( + sType: sType, + pNext: pNext, + aspectReferenceCount: aspectReferenceCount, + pAspectReferences: pAspectReferences, + ) proc newVkPhysicalDeviceSurfaceInfo2KHR*(sType: VkStructureType, pNext: pointer = nil, surface: VkSurfaceKHR): VkPhysicalDeviceSurfaceInfo2KHR = - result.sType = sType - result.pNext = pNext - result.surface = surface + result = VkPhysicalDeviceSurfaceInfo2KHR( + sType: sType, + pNext: pNext, + surface: surface, + ) proc newVkSurfaceCapabilities2KHR*(sType: VkStructureType, pNext: pointer = nil, surfaceCapabilities: VkSurfaceCapabilitiesKHR): VkSurfaceCapabilities2KHR = - result.sType = sType - result.pNext = pNext - result.surfaceCapabilities = surfaceCapabilities + result = VkSurfaceCapabilities2KHR( + sType: sType, + pNext: pNext, + surfaceCapabilities: surfaceCapabilities, + ) proc newVkSurfaceFormat2KHR*(sType: VkStructureType, pNext: pointer = nil, surfaceFormat: VkSurfaceFormatKHR): VkSurfaceFormat2KHR = - result.sType = sType - result.pNext = pNext - result.surfaceFormat = surfaceFormat + result = VkSurfaceFormat2KHR( + sType: sType, + pNext: pNext, + surfaceFormat: surfaceFormat, + ) proc newVkDisplayProperties2KHR*(sType: VkStructureType, pNext: pointer = nil, displayProperties: VkDisplayPropertiesKHR): VkDisplayProperties2KHR = - result.sType = sType - result.pNext = pNext - result.displayProperties = displayProperties + result = VkDisplayProperties2KHR( + sType: sType, + pNext: pNext, + displayProperties: displayProperties, + ) proc newVkDisplayPlaneProperties2KHR*(sType: VkStructureType, pNext: pointer = nil, displayPlaneProperties: VkDisplayPlanePropertiesKHR): VkDisplayPlaneProperties2KHR = - result.sType = sType - result.pNext = pNext - result.displayPlaneProperties = displayPlaneProperties + result = VkDisplayPlaneProperties2KHR( + sType: sType, + pNext: pNext, + displayPlaneProperties: displayPlaneProperties, + ) proc newVkDisplayModeProperties2KHR*(sType: VkStructureType, pNext: pointer = nil, displayModeProperties: VkDisplayModePropertiesKHR): VkDisplayModeProperties2KHR = - result.sType = sType - result.pNext = pNext - result.displayModeProperties = displayModeProperties + result = VkDisplayModeProperties2KHR( + sType: sType, + pNext: pNext, + displayModeProperties: displayModeProperties, + ) proc newVkDisplayPlaneInfo2KHR*(sType: VkStructureType, pNext: pointer = nil, mode: VkDisplayModeKHR, planeIndex: uint32): VkDisplayPlaneInfo2KHR = - result.sType = sType - result.pNext = pNext - result.mode = mode - result.planeIndex = planeIndex + result = VkDisplayPlaneInfo2KHR( + sType: sType, + pNext: pNext, + mode: mode, + planeIndex: planeIndex, + ) proc newVkDisplayPlaneCapabilities2KHR*(sType: VkStructureType, pNext: pointer = nil, capabilities: VkDisplayPlaneCapabilitiesKHR): VkDisplayPlaneCapabilities2KHR = - result.sType = sType - result.pNext = pNext - result.capabilities = capabilities + result = VkDisplayPlaneCapabilities2KHR( + sType: sType, + pNext: pNext, + capabilities: capabilities, + ) proc newVkSharedPresentSurfaceCapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, sharedPresentSupportedUsageFlags: VkImageUsageFlags): VkSharedPresentSurfaceCapabilitiesKHR = - result.sType = sType - result.pNext = pNext - result.sharedPresentSupportedUsageFlags = sharedPresentSupportedUsageFlags + result = VkSharedPresentSurfaceCapabilitiesKHR( + sType: sType, + pNext: pNext, + sharedPresentSupportedUsageFlags: sharedPresentSupportedUsageFlags, + ) proc newVkPhysicalDevice16BitStorageFeatures*(sType: VkStructureType, pNext: pointer = nil, storageBuffer16BitAccess: VkBool32, uniformAndStorageBuffer16BitAccess: VkBool32, storagePushConstant16: VkBool32, storageInputOutput16: VkBool32): VkPhysicalDevice16BitStorageFeatures = - result.sType = sType - result.pNext = pNext - result.storageBuffer16BitAccess = storageBuffer16BitAccess - result.uniformAndStorageBuffer16BitAccess = uniformAndStorageBuffer16BitAccess - result.storagePushConstant16 = storagePushConstant16 - result.storageInputOutput16 = storageInputOutput16 + result = VkPhysicalDevice16BitStorageFeatures( + sType: sType, + pNext: pNext, + storageBuffer16BitAccess: storageBuffer16BitAccess, + uniformAndStorageBuffer16BitAccess: uniformAndStorageBuffer16BitAccess, + storagePushConstant16: storagePushConstant16, + storageInputOutput16: storageInputOutput16, + ) proc newVkPhysicalDeviceSubgroupProperties*(sType: VkStructureType, pNext: pointer = nil, subgroupSize: uint32, supportedStages: VkShaderStageFlags, supportedOperations: VkSubgroupFeatureFlags, quadOperationsInAllStages: VkBool32): VkPhysicalDeviceSubgroupProperties = - result.sType = sType - result.pNext = pNext - result.subgroupSize = subgroupSize - result.supportedStages = supportedStages - result.supportedOperations = supportedOperations - result.quadOperationsInAllStages = quadOperationsInAllStages + result = VkPhysicalDeviceSubgroupProperties( + sType: sType, + pNext: pNext, + subgroupSize: subgroupSize, + supportedStages: supportedStages, + supportedOperations: supportedOperations, + quadOperationsInAllStages: quadOperationsInAllStages, + ) proc newVkPhysicalDeviceShaderSubgroupExtendedTypesFeatures*(sType: VkStructureType, pNext: pointer = nil, shaderSubgroupExtendedTypes: VkBool32): VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures = - result.sType = sType - result.pNext = pNext - result.shaderSubgroupExtendedTypes = shaderSubgroupExtendedTypes + result = VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures( + sType: sType, + pNext: pNext, + shaderSubgroupExtendedTypes: shaderSubgroupExtendedTypes, + ) proc newVkBufferMemoryRequirementsInfo2*(sType: VkStructureType, pNext: pointer = nil, buffer: VkBuffer): VkBufferMemoryRequirementsInfo2 = - result.sType = sType - result.pNext = pNext - result.buffer = buffer + result = VkBufferMemoryRequirementsInfo2( + sType: sType, + pNext: pNext, + buffer: buffer, + ) proc newVkDeviceBufferMemoryRequirements*(sType: VkStructureType, pNext: pointer = nil, pCreateInfo: ptr VkBufferCreateInfo): VkDeviceBufferMemoryRequirements = - result.sType = sType - result.pNext = pNext - result.pCreateInfo = pCreateInfo + result = VkDeviceBufferMemoryRequirements( + sType: sType, + pNext: pNext, + pCreateInfo: pCreateInfo, + ) proc newVkImageMemoryRequirementsInfo2*(sType: VkStructureType, pNext: pointer = nil, image: VkImage): VkImageMemoryRequirementsInfo2 = - result.sType = sType - result.pNext = pNext - result.image = image + result = VkImageMemoryRequirementsInfo2( + sType: sType, + pNext: pNext, + image: image, + ) proc newVkImageSparseMemoryRequirementsInfo2*(sType: VkStructureType, pNext: pointer = nil, image: VkImage): VkImageSparseMemoryRequirementsInfo2 = - result.sType = sType - result.pNext = pNext - result.image = image + result = VkImageSparseMemoryRequirementsInfo2( + sType: sType, + pNext: pNext, + image: image, + ) proc newVkDeviceImageMemoryRequirements*(sType: VkStructureType, pNext: pointer = nil, pCreateInfo: ptr VkImageCreateInfo, planeAspect: VkImageAspectFlagBits): VkDeviceImageMemoryRequirements = - result.sType = sType - result.pNext = pNext - result.pCreateInfo = pCreateInfo - result.planeAspect = planeAspect + result = VkDeviceImageMemoryRequirements( + sType: sType, + pNext: pNext, + pCreateInfo: pCreateInfo, + planeAspect: planeAspect, + ) proc newVkMemoryRequirements2*(sType: VkStructureType, pNext: pointer = nil, memoryRequirements: VkMemoryRequirements): VkMemoryRequirements2 = - result.sType = sType - result.pNext = pNext - result.memoryRequirements = memoryRequirements + result = VkMemoryRequirements2( + sType: sType, + pNext: pNext, + memoryRequirements: memoryRequirements, + ) proc newVkSparseImageMemoryRequirements2*(sType: VkStructureType, pNext: pointer = nil, memoryRequirements: VkSparseImageMemoryRequirements): VkSparseImageMemoryRequirements2 = - result.sType = sType - result.pNext = pNext - result.memoryRequirements = memoryRequirements + result = VkSparseImageMemoryRequirements2( + sType: sType, + pNext: pNext, + memoryRequirements: memoryRequirements, + ) proc newVkPhysicalDevicePointClippingProperties*(sType: VkStructureType, pNext: pointer = nil, pointClippingBehavior: VkPointClippingBehavior): VkPhysicalDevicePointClippingProperties = - result.sType = sType - result.pNext = pNext - result.pointClippingBehavior = pointClippingBehavior + result = VkPhysicalDevicePointClippingProperties( + sType: sType, + pNext: pNext, + pointClippingBehavior: pointClippingBehavior, + ) proc newVkMemoryDedicatedRequirements*(sType: VkStructureType, pNext: pointer = nil, prefersDedicatedAllocation: VkBool32, requiresDedicatedAllocation: VkBool32): VkMemoryDedicatedRequirements = - result.sType = sType - result.pNext = pNext - result.prefersDedicatedAllocation = prefersDedicatedAllocation - result.requiresDedicatedAllocation = requiresDedicatedAllocation + result = VkMemoryDedicatedRequirements( + sType: sType, + pNext: pNext, + prefersDedicatedAllocation: prefersDedicatedAllocation, + requiresDedicatedAllocation: requiresDedicatedAllocation, + ) proc newVkMemoryDedicatedAllocateInfo*(sType: VkStructureType, pNext: pointer = nil, image: VkImage, buffer: VkBuffer): VkMemoryDedicatedAllocateInfo = - result.sType = sType - result.pNext = pNext - result.image = image - result.buffer = buffer + result = VkMemoryDedicatedAllocateInfo( + sType: sType, + pNext: pNext, + image: image, + buffer: buffer, + ) proc newVkImageViewUsageCreateInfo*(sType: VkStructureType, pNext: pointer = nil, usage: VkImageUsageFlags): VkImageViewUsageCreateInfo = - result.sType = sType - result.pNext = pNext - result.usage = usage + result = VkImageViewUsageCreateInfo( + sType: sType, + pNext: pNext, + usage: usage, + ) proc newVkImageViewSlicedCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, sliceOffset: uint32, sliceCount: uint32): VkImageViewSlicedCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.sliceOffset = sliceOffset - result.sliceCount = sliceCount + result = VkImageViewSlicedCreateInfoEXT( + sType: sType, + pNext: pNext, + sliceOffset: sliceOffset, + sliceCount: sliceCount, + ) proc newVkPipelineTessellationDomainOriginStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, domainOrigin: VkTessellationDomainOrigin): VkPipelineTessellationDomainOriginStateCreateInfo = - result.sType = sType - result.pNext = pNext - result.domainOrigin = domainOrigin + result = VkPipelineTessellationDomainOriginStateCreateInfo( + sType: sType, + pNext: pNext, + domainOrigin: domainOrigin, + ) proc newVkSamplerYcbcrConversionInfo*(sType: VkStructureType, pNext: pointer = nil, conversion: VkSamplerYcbcrConversion): VkSamplerYcbcrConversionInfo = - result.sType = sType - result.pNext = pNext - result.conversion = conversion + result = VkSamplerYcbcrConversionInfo( + sType: sType, + pNext: pNext, + conversion: conversion, + ) proc newVkSamplerYcbcrConversionCreateInfo*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat, ycbcrModel: VkSamplerYcbcrModelConversion, ycbcrRange: VkSamplerYcbcrRange, components: VkComponentMapping, xChromaOffset: VkChromaLocation, yChromaOffset: VkChromaLocation, chromaFilter: VkFilter, forceExplicitReconstruction: VkBool32): VkSamplerYcbcrConversionCreateInfo = - result.sType = sType - result.pNext = pNext - result.format = format - result.ycbcrModel = ycbcrModel - result.ycbcrRange = ycbcrRange - result.components = components - result.xChromaOffset = xChromaOffset - result.yChromaOffset = yChromaOffset - result.chromaFilter = chromaFilter - result.forceExplicitReconstruction = forceExplicitReconstruction + result = VkSamplerYcbcrConversionCreateInfo( + sType: sType, + pNext: pNext, + format: format, + ycbcrModel: ycbcrModel, + ycbcrRange: ycbcrRange, + components: components, + xChromaOffset: xChromaOffset, + yChromaOffset: yChromaOffset, + chromaFilter: chromaFilter, + forceExplicitReconstruction: forceExplicitReconstruction, + ) proc newVkBindImagePlaneMemoryInfo*(sType: VkStructureType, pNext: pointer = nil, planeAspect: VkImageAspectFlagBits): VkBindImagePlaneMemoryInfo = - result.sType = sType - result.pNext = pNext - result.planeAspect = planeAspect + result = VkBindImagePlaneMemoryInfo( + sType: sType, + pNext: pNext, + planeAspect: planeAspect, + ) proc newVkImagePlaneMemoryRequirementsInfo*(sType: VkStructureType, pNext: pointer = nil, planeAspect: VkImageAspectFlagBits): VkImagePlaneMemoryRequirementsInfo = - result.sType = sType - result.pNext = pNext - result.planeAspect = planeAspect + result = VkImagePlaneMemoryRequirementsInfo( + sType: sType, + pNext: pNext, + planeAspect: planeAspect, + ) proc newVkPhysicalDeviceSamplerYcbcrConversionFeatures*(sType: VkStructureType, pNext: pointer = nil, samplerYcbcrConversion: VkBool32): VkPhysicalDeviceSamplerYcbcrConversionFeatures = - result.sType = sType - result.pNext = pNext - result.samplerYcbcrConversion = samplerYcbcrConversion + result = VkPhysicalDeviceSamplerYcbcrConversionFeatures( + sType: sType, + pNext: pNext, + samplerYcbcrConversion: samplerYcbcrConversion, + ) proc newVkSamplerYcbcrConversionImageFormatProperties*(sType: VkStructureType, pNext: pointer = nil, combinedImageSamplerDescriptorCount: uint32): VkSamplerYcbcrConversionImageFormatProperties = - result.sType = sType - result.pNext = pNext - result.combinedImageSamplerDescriptorCount = combinedImageSamplerDescriptorCount + result = VkSamplerYcbcrConversionImageFormatProperties( + sType: sType, + pNext: pNext, + combinedImageSamplerDescriptorCount: combinedImageSamplerDescriptorCount, + ) proc newVkTextureLODGatherFormatPropertiesAMD*(sType: VkStructureType, pNext: pointer = nil, supportsTextureGatherLODBiasAMD: VkBool32): VkTextureLODGatherFormatPropertiesAMD = - result.sType = sType - result.pNext = pNext - result.supportsTextureGatherLODBiasAMD = supportsTextureGatherLODBiasAMD + result = VkTextureLODGatherFormatPropertiesAMD( + sType: sType, + pNext: pNext, + supportsTextureGatherLODBiasAMD: supportsTextureGatherLODBiasAMD, + ) proc newVkConditionalRenderingBeginInfoEXT*(sType: VkStructureType, pNext: pointer = nil, buffer: VkBuffer, offset: VkDeviceSize, flags: VkConditionalRenderingFlagsEXT = 0.VkConditionalRenderingFlagsEXT): VkConditionalRenderingBeginInfoEXT = - result.sType = sType - result.pNext = pNext - result.buffer = buffer - result.offset = offset - result.flags = flags + result = VkConditionalRenderingBeginInfoEXT( + sType: sType, + pNext: pNext, + buffer: buffer, + offset: offset, + flags: flags, + ) proc newVkProtectedSubmitInfo*(sType: VkStructureType, pNext: pointer = nil, protectedSubmit: VkBool32): VkProtectedSubmitInfo = - result.sType = sType - result.pNext = pNext - result.protectedSubmit = protectedSubmit + result = VkProtectedSubmitInfo( + sType: sType, + pNext: pNext, + protectedSubmit: protectedSubmit, + ) proc newVkPhysicalDeviceProtectedMemoryFeatures*(sType: VkStructureType, pNext: pointer = nil, protectedMemory: VkBool32): VkPhysicalDeviceProtectedMemoryFeatures = - result.sType = sType - result.pNext = pNext - result.protectedMemory = protectedMemory + result = VkPhysicalDeviceProtectedMemoryFeatures( + sType: sType, + pNext: pNext, + protectedMemory: protectedMemory, + ) proc newVkPhysicalDeviceProtectedMemoryProperties*(sType: VkStructureType, pNext: pointer = nil, protectedNoFault: VkBool32): VkPhysicalDeviceProtectedMemoryProperties = - result.sType = sType - result.pNext = pNext - result.protectedNoFault = protectedNoFault + result = VkPhysicalDeviceProtectedMemoryProperties( + sType: sType, + pNext: pNext, + protectedNoFault: protectedNoFault, + ) proc newVkDeviceQueueInfo2*(sType: VkStructureType, pNext: pointer = nil, flags: VkDeviceQueueCreateFlags = 0.VkDeviceQueueCreateFlags, queueFamilyIndex: uint32, queueIndex: uint32): VkDeviceQueueInfo2 = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.queueFamilyIndex = queueFamilyIndex - result.queueIndex = queueIndex + result = VkDeviceQueueInfo2( + sType: sType, + pNext: pNext, + flags: flags, + queueFamilyIndex: queueFamilyIndex, + queueIndex: queueIndex, + ) proc newVkPipelineCoverageToColorStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCoverageToColorStateCreateFlagsNV = 0.VkPipelineCoverageToColorStateCreateFlagsNV, coverageToColorEnable: VkBool32, coverageToColorLocation: uint32): VkPipelineCoverageToColorStateCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.coverageToColorEnable = coverageToColorEnable - result.coverageToColorLocation = coverageToColorLocation + result = VkPipelineCoverageToColorStateCreateInfoNV( + sType: sType, + pNext: pNext, + flags: flags, + coverageToColorEnable: coverageToColorEnable, + coverageToColorLocation: coverageToColorLocation, + ) proc newVkPhysicalDeviceSamplerFilterMinmaxProperties*(sType: VkStructureType, pNext: pointer = nil, filterMinmaxSingleComponentFormats: VkBool32, filterMinmaxImageComponentMapping: VkBool32): VkPhysicalDeviceSamplerFilterMinmaxProperties = - result.sType = sType - result.pNext = pNext - result.filterMinmaxSingleComponentFormats = filterMinmaxSingleComponentFormats - result.filterMinmaxImageComponentMapping = filterMinmaxImageComponentMapping + result = VkPhysicalDeviceSamplerFilterMinmaxProperties( + sType: sType, + pNext: pNext, + filterMinmaxSingleComponentFormats: filterMinmaxSingleComponentFormats, + filterMinmaxImageComponentMapping: filterMinmaxImageComponentMapping, + ) proc newVkSampleLocationEXT*(x: float32, y: float32): VkSampleLocationEXT = - result.x = x - result.y = y + result = VkSampleLocationEXT( + x: x, + y: y, + ) proc newVkSampleLocationsInfoEXT*(sType: VkStructureType, pNext: pointer = nil, sampleLocationsPerPixel: VkSampleCountFlagBits, sampleLocationGridSize: VkExtent2D, sampleLocationsCount: uint32, pSampleLocations: ptr VkSampleLocationEXT): VkSampleLocationsInfoEXT = - result.sType = sType - result.pNext = pNext - result.sampleLocationsPerPixel = sampleLocationsPerPixel - result.sampleLocationGridSize = sampleLocationGridSize - result.sampleLocationsCount = sampleLocationsCount - result.pSampleLocations = pSampleLocations + result = VkSampleLocationsInfoEXT( + sType: sType, + pNext: pNext, + sampleLocationsPerPixel: sampleLocationsPerPixel, + sampleLocationGridSize: sampleLocationGridSize, + sampleLocationsCount: sampleLocationsCount, + pSampleLocations: pSampleLocations, + ) proc newVkAttachmentSampleLocationsEXT*(attachmentIndex: uint32, sampleLocationsInfo: VkSampleLocationsInfoEXT): VkAttachmentSampleLocationsEXT = - result.attachmentIndex = attachmentIndex - result.sampleLocationsInfo = sampleLocationsInfo + result = VkAttachmentSampleLocationsEXT( + attachmentIndex: attachmentIndex, + sampleLocationsInfo: sampleLocationsInfo, + ) proc newVkSubpassSampleLocationsEXT*(subpassIndex: uint32, sampleLocationsInfo: VkSampleLocationsInfoEXT): VkSubpassSampleLocationsEXT = - result.subpassIndex = subpassIndex - result.sampleLocationsInfo = sampleLocationsInfo + result = VkSubpassSampleLocationsEXT( + subpassIndex: subpassIndex, + sampleLocationsInfo: sampleLocationsInfo, + ) proc newVkRenderPassSampleLocationsBeginInfoEXT*(sType: VkStructureType, pNext: pointer = nil, attachmentInitialSampleLocationsCount: uint32, pAttachmentInitialSampleLocations: ptr VkAttachmentSampleLocationsEXT, postSubpassSampleLocationsCount: uint32, pPostSubpassSampleLocations: ptr VkSubpassSampleLocationsEXT): VkRenderPassSampleLocationsBeginInfoEXT = - result.sType = sType - result.pNext = pNext - result.attachmentInitialSampleLocationsCount = attachmentInitialSampleLocationsCount - result.pAttachmentInitialSampleLocations = pAttachmentInitialSampleLocations - result.postSubpassSampleLocationsCount = postSubpassSampleLocationsCount - result.pPostSubpassSampleLocations = pPostSubpassSampleLocations + result = VkRenderPassSampleLocationsBeginInfoEXT( + sType: sType, + pNext: pNext, + attachmentInitialSampleLocationsCount: attachmentInitialSampleLocationsCount, + pAttachmentInitialSampleLocations: pAttachmentInitialSampleLocations, + postSubpassSampleLocationsCount: postSubpassSampleLocationsCount, + pPostSubpassSampleLocations: pPostSubpassSampleLocations, + ) proc newVkPipelineSampleLocationsStateCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, sampleLocationsEnable: VkBool32, sampleLocationsInfo: VkSampleLocationsInfoEXT): VkPipelineSampleLocationsStateCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.sampleLocationsEnable = sampleLocationsEnable - result.sampleLocationsInfo = sampleLocationsInfo + result = VkPipelineSampleLocationsStateCreateInfoEXT( + sType: sType, + pNext: pNext, + sampleLocationsEnable: sampleLocationsEnable, + sampleLocationsInfo: sampleLocationsInfo, + ) proc newVkPhysicalDeviceSampleLocationsPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, sampleLocationSampleCounts: VkSampleCountFlags, maxSampleLocationGridSize: VkExtent2D, sampleLocationCoordinateRange: array[2, float32], sampleLocationSubPixelBits: uint32, variableSampleLocations: VkBool32): VkPhysicalDeviceSampleLocationsPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.sampleLocationSampleCounts = sampleLocationSampleCounts - result.maxSampleLocationGridSize = maxSampleLocationGridSize - result.sampleLocationCoordinateRange = sampleLocationCoordinateRange - result.sampleLocationSubPixelBits = sampleLocationSubPixelBits - result.variableSampleLocations = variableSampleLocations + result = VkPhysicalDeviceSampleLocationsPropertiesEXT( + sType: sType, + pNext: pNext, + sampleLocationSampleCounts: sampleLocationSampleCounts, + maxSampleLocationGridSize: maxSampleLocationGridSize, + sampleLocationCoordinateRange: sampleLocationCoordinateRange, + sampleLocationSubPixelBits: sampleLocationSubPixelBits, + variableSampleLocations: variableSampleLocations, + ) proc newVkMultisamplePropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxSampleLocationGridSize: VkExtent2D): VkMultisamplePropertiesEXT = - result.sType = sType - result.pNext = pNext - result.maxSampleLocationGridSize = maxSampleLocationGridSize + result = VkMultisamplePropertiesEXT( + sType: sType, + pNext: pNext, + maxSampleLocationGridSize: maxSampleLocationGridSize, + ) proc newVkSamplerReductionModeCreateInfo*(sType: VkStructureType, pNext: pointer = nil, reductionMode: VkSamplerReductionMode): VkSamplerReductionModeCreateInfo = - result.sType = sType - result.pNext = pNext - result.reductionMode = reductionMode + result = VkSamplerReductionModeCreateInfo( + sType: sType, + pNext: pNext, + reductionMode: reductionMode, + ) proc newVkPhysicalDeviceBlendOperationAdvancedFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, advancedBlendCoherentOperations: VkBool32): VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.advancedBlendCoherentOperations = advancedBlendCoherentOperations + result = VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT( + sType: sType, + pNext: pNext, + advancedBlendCoherentOperations: advancedBlendCoherentOperations, + ) proc newVkPhysicalDeviceMultiDrawFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, multiDraw: VkBool32): VkPhysicalDeviceMultiDrawFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.multiDraw = multiDraw + result = VkPhysicalDeviceMultiDrawFeaturesEXT( + sType: sType, + pNext: pNext, + multiDraw: multiDraw, + ) proc newVkPhysicalDeviceBlendOperationAdvancedPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, advancedBlendMaxColorAttachments: uint32, advancedBlendIndependentBlend: VkBool32, advancedBlendNonPremultipliedSrcColor: VkBool32, advancedBlendNonPremultipliedDstColor: VkBool32, advancedBlendCorrelatedOverlap: VkBool32, advancedBlendAllOperations: VkBool32): VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.advancedBlendMaxColorAttachments = advancedBlendMaxColorAttachments - result.advancedBlendIndependentBlend = advancedBlendIndependentBlend - result.advancedBlendNonPremultipliedSrcColor = advancedBlendNonPremultipliedSrcColor - result.advancedBlendNonPremultipliedDstColor = advancedBlendNonPremultipliedDstColor - result.advancedBlendCorrelatedOverlap = advancedBlendCorrelatedOverlap - result.advancedBlendAllOperations = advancedBlendAllOperations + result = VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT( + sType: sType, + pNext: pNext, + advancedBlendMaxColorAttachments: advancedBlendMaxColorAttachments, + advancedBlendIndependentBlend: advancedBlendIndependentBlend, + advancedBlendNonPremultipliedSrcColor: advancedBlendNonPremultipliedSrcColor, + advancedBlendNonPremultipliedDstColor: advancedBlendNonPremultipliedDstColor, + advancedBlendCorrelatedOverlap: advancedBlendCorrelatedOverlap, + advancedBlendAllOperations: advancedBlendAllOperations, + ) proc newVkPipelineColorBlendAdvancedStateCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, srcPremultiplied: VkBool32, dstPremultiplied: VkBool32, blendOverlap: VkBlendOverlapEXT): VkPipelineColorBlendAdvancedStateCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.srcPremultiplied = srcPremultiplied - result.dstPremultiplied = dstPremultiplied - result.blendOverlap = blendOverlap + result = VkPipelineColorBlendAdvancedStateCreateInfoEXT( + sType: sType, + pNext: pNext, + srcPremultiplied: srcPremultiplied, + dstPremultiplied: dstPremultiplied, + blendOverlap: blendOverlap, + ) proc newVkPhysicalDeviceInlineUniformBlockFeatures*(sType: VkStructureType, pNext: pointer = nil, inlineUniformBlock: VkBool32, descriptorBindingInlineUniformBlockUpdateAfterBind: VkBool32): VkPhysicalDeviceInlineUniformBlockFeatures = - result.sType = sType - result.pNext = pNext - result.inlineUniformBlock = inlineUniformBlock - result.descriptorBindingInlineUniformBlockUpdateAfterBind = descriptorBindingInlineUniformBlockUpdateAfterBind + result = VkPhysicalDeviceInlineUniformBlockFeatures( + sType: sType, + pNext: pNext, + inlineUniformBlock: inlineUniformBlock, + descriptorBindingInlineUniformBlockUpdateAfterBind: descriptorBindingInlineUniformBlockUpdateAfterBind, + ) proc newVkPhysicalDeviceInlineUniformBlockProperties*(sType: VkStructureType, pNext: pointer = nil, maxInlineUniformBlockSize: uint32, maxPerStageDescriptorInlineUniformBlocks: uint32, maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks: uint32, maxDescriptorSetInlineUniformBlocks: uint32, maxDescriptorSetUpdateAfterBindInlineUniformBlocks: uint32): VkPhysicalDeviceInlineUniformBlockProperties = - result.sType = sType - result.pNext = pNext - result.maxInlineUniformBlockSize = maxInlineUniformBlockSize - result.maxPerStageDescriptorInlineUniformBlocks = maxPerStageDescriptorInlineUniformBlocks - result.maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks = maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks - result.maxDescriptorSetInlineUniformBlocks = maxDescriptorSetInlineUniformBlocks - result.maxDescriptorSetUpdateAfterBindInlineUniformBlocks = maxDescriptorSetUpdateAfterBindInlineUniformBlocks + result = VkPhysicalDeviceInlineUniformBlockProperties( + sType: sType, + pNext: pNext, + maxInlineUniformBlockSize: maxInlineUniformBlockSize, + maxPerStageDescriptorInlineUniformBlocks: maxPerStageDescriptorInlineUniformBlocks, + maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks: maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks, + maxDescriptorSetInlineUniformBlocks: maxDescriptorSetInlineUniformBlocks, + maxDescriptorSetUpdateAfterBindInlineUniformBlocks: maxDescriptorSetUpdateAfterBindInlineUniformBlocks, + ) proc newVkWriteDescriptorSetInlineUniformBlock*(sType: VkStructureType, pNext: pointer = nil, dataSize: uint32, pData: pointer = nil): VkWriteDescriptorSetInlineUniformBlock = - result.sType = sType - result.pNext = pNext - result.dataSize = dataSize - result.pData = pData + result = VkWriteDescriptorSetInlineUniformBlock( + sType: sType, + pNext: pNext, + dataSize: dataSize, + pData: pData, + ) proc newVkDescriptorPoolInlineUniformBlockCreateInfo*(sType: VkStructureType, pNext: pointer = nil, maxInlineUniformBlockBindings: uint32): VkDescriptorPoolInlineUniformBlockCreateInfo = - result.sType = sType - result.pNext = pNext - result.maxInlineUniformBlockBindings = maxInlineUniformBlockBindings + result = VkDescriptorPoolInlineUniformBlockCreateInfo( + sType: sType, + pNext: pNext, + maxInlineUniformBlockBindings: maxInlineUniformBlockBindings, + ) proc newVkPipelineCoverageModulationStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCoverageModulationStateCreateFlagsNV = 0.VkPipelineCoverageModulationStateCreateFlagsNV, coverageModulationMode: VkCoverageModulationModeNV, coverageModulationTableEnable: VkBool32, coverageModulationTableCount: uint32, pCoverageModulationTable: ptr float32): VkPipelineCoverageModulationStateCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.coverageModulationMode = coverageModulationMode - result.coverageModulationTableEnable = coverageModulationTableEnable - result.coverageModulationTableCount = coverageModulationTableCount - result.pCoverageModulationTable = pCoverageModulationTable + result = VkPipelineCoverageModulationStateCreateInfoNV( + sType: sType, + pNext: pNext, + flags: flags, + coverageModulationMode: coverageModulationMode, + coverageModulationTableEnable: coverageModulationTableEnable, + coverageModulationTableCount: coverageModulationTableCount, + pCoverageModulationTable: pCoverageModulationTable, + ) proc newVkImageFormatListCreateInfo*(sType: VkStructureType, pNext: pointer = nil, viewFormatCount: uint32, pViewFormats: ptr VkFormat): VkImageFormatListCreateInfo = - result.sType = sType - result.pNext = pNext - result.viewFormatCount = viewFormatCount - result.pViewFormats = pViewFormats + result = VkImageFormatListCreateInfo( + sType: sType, + pNext: pNext, + viewFormatCount: viewFormatCount, + pViewFormats: pViewFormats, + ) proc newVkValidationCacheCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkValidationCacheCreateFlagsEXT = 0.VkValidationCacheCreateFlagsEXT, initialDataSize: uint, pInitialData: pointer = nil): VkValidationCacheCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.initialDataSize = initialDataSize - result.pInitialData = pInitialData + result = VkValidationCacheCreateInfoEXT( + sType: sType, + pNext: pNext, + flags: flags, + initialDataSize: initialDataSize, + pInitialData: pInitialData, + ) proc newVkShaderModuleValidationCacheCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, validationCache: VkValidationCacheEXT): VkShaderModuleValidationCacheCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.validationCache = validationCache + result = VkShaderModuleValidationCacheCreateInfoEXT( + sType: sType, + pNext: pNext, + validationCache: validationCache, + ) proc newVkPhysicalDeviceMaintenance3Properties*(sType: VkStructureType, pNext: pointer = nil, maxPerSetDescriptors: uint32, maxMemoryAllocationSize: VkDeviceSize): VkPhysicalDeviceMaintenance3Properties = - result.sType = sType - result.pNext = pNext - result.maxPerSetDescriptors = maxPerSetDescriptors - result.maxMemoryAllocationSize = maxMemoryAllocationSize + result = VkPhysicalDeviceMaintenance3Properties( + sType: sType, + pNext: pNext, + maxPerSetDescriptors: maxPerSetDescriptors, + maxMemoryAllocationSize: maxMemoryAllocationSize, + ) proc newVkPhysicalDeviceMaintenance4Features*(sType: VkStructureType, pNext: pointer = nil, maintenance4: VkBool32): VkPhysicalDeviceMaintenance4Features = - result.sType = sType - result.pNext = pNext - result.maintenance4 = maintenance4 + result = VkPhysicalDeviceMaintenance4Features( + sType: sType, + pNext: pNext, + maintenance4: maintenance4, + ) proc newVkPhysicalDeviceMaintenance4Properties*(sType: VkStructureType, pNext: pointer = nil, maxBufferSize: VkDeviceSize): VkPhysicalDeviceMaintenance4Properties = - result.sType = sType - result.pNext = pNext - result.maxBufferSize = maxBufferSize + result = VkPhysicalDeviceMaintenance4Properties( + sType: sType, + pNext: pNext, + maxBufferSize: maxBufferSize, + ) proc newVkPhysicalDeviceMaintenance5FeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, maintenance5: VkBool32): VkPhysicalDeviceMaintenance5FeaturesKHR = - result.sType = sType - result.pNext = pNext - result.maintenance5 = maintenance5 + result = VkPhysicalDeviceMaintenance5FeaturesKHR( + sType: sType, + pNext: pNext, + maintenance5: maintenance5, + ) proc newVkPhysicalDeviceMaintenance5PropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, earlyFragmentMultisampleCoverageAfterSampleCounting: VkBool32, earlyFragmentSampleMaskTestBeforeSampleCounting: VkBool32, depthStencilSwizzleOneSupport: VkBool32, polygonModePointSize: VkBool32, nonStrictSinglePixelWideLinesUseParallelogram: VkBool32, nonStrictWideLinesUseParallelogram: VkBool32): VkPhysicalDeviceMaintenance5PropertiesKHR = - result.sType = sType - result.pNext = pNext - result.earlyFragmentMultisampleCoverageAfterSampleCounting = earlyFragmentMultisampleCoverageAfterSampleCounting - result.earlyFragmentSampleMaskTestBeforeSampleCounting = earlyFragmentSampleMaskTestBeforeSampleCounting - result.depthStencilSwizzleOneSupport = depthStencilSwizzleOneSupport - result.polygonModePointSize = polygonModePointSize - result.nonStrictSinglePixelWideLinesUseParallelogram = nonStrictSinglePixelWideLinesUseParallelogram - result.nonStrictWideLinesUseParallelogram = nonStrictWideLinesUseParallelogram + result = VkPhysicalDeviceMaintenance5PropertiesKHR( + sType: sType, + pNext: pNext, + earlyFragmentMultisampleCoverageAfterSampleCounting: earlyFragmentMultisampleCoverageAfterSampleCounting, + earlyFragmentSampleMaskTestBeforeSampleCounting: earlyFragmentSampleMaskTestBeforeSampleCounting, + depthStencilSwizzleOneSupport: depthStencilSwizzleOneSupport, + polygonModePointSize: polygonModePointSize, + nonStrictSinglePixelWideLinesUseParallelogram: nonStrictSinglePixelWideLinesUseParallelogram, + nonStrictWideLinesUseParallelogram: nonStrictWideLinesUseParallelogram, + ) proc newVkPhysicalDeviceMaintenance6FeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, maintenance6: VkBool32): VkPhysicalDeviceMaintenance6FeaturesKHR = - result.sType = sType - result.pNext = pNext - result.maintenance6 = maintenance6 + result = VkPhysicalDeviceMaintenance6FeaturesKHR( + sType: sType, + pNext: pNext, + maintenance6: maintenance6, + ) proc newVkPhysicalDeviceMaintenance6PropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, blockTexelViewCompatibleMultipleLayers: VkBool32, maxCombinedImageSamplerDescriptorCount: uint32, fragmentShadingRateClampCombinerInputs: VkBool32): VkPhysicalDeviceMaintenance6PropertiesKHR = - result.sType = sType - result.pNext = pNext - result.blockTexelViewCompatibleMultipleLayers = blockTexelViewCompatibleMultipleLayers - result.maxCombinedImageSamplerDescriptorCount = maxCombinedImageSamplerDescriptorCount - result.fragmentShadingRateClampCombinerInputs = fragmentShadingRateClampCombinerInputs + result = VkPhysicalDeviceMaintenance6PropertiesKHR( + sType: sType, + pNext: pNext, + blockTexelViewCompatibleMultipleLayers: blockTexelViewCompatibleMultipleLayers, + maxCombinedImageSamplerDescriptorCount: maxCombinedImageSamplerDescriptorCount, + fragmentShadingRateClampCombinerInputs: fragmentShadingRateClampCombinerInputs, + ) proc newVkRenderingAreaInfoKHR*(sType: VkStructureType, pNext: pointer = nil, viewMask: uint32, colorAttachmentCount: uint32, pColorAttachmentFormats: ptr VkFormat, depthAttachmentFormat: VkFormat, stencilAttachmentFormat: VkFormat): VkRenderingAreaInfoKHR = - result.sType = sType - result.pNext = pNext - result.viewMask = viewMask - result.colorAttachmentCount = colorAttachmentCount - result.pColorAttachmentFormats = pColorAttachmentFormats - result.depthAttachmentFormat = depthAttachmentFormat - result.stencilAttachmentFormat = stencilAttachmentFormat + result = VkRenderingAreaInfoKHR( + sType: sType, + pNext: pNext, + viewMask: viewMask, + colorAttachmentCount: colorAttachmentCount, + pColorAttachmentFormats: pColorAttachmentFormats, + depthAttachmentFormat: depthAttachmentFormat, + stencilAttachmentFormat: stencilAttachmentFormat, + ) proc newVkDescriptorSetLayoutSupport*(sType: VkStructureType, pNext: pointer = nil, supported: VkBool32): VkDescriptorSetLayoutSupport = - result.sType = sType - result.pNext = pNext - result.supported = supported + result = VkDescriptorSetLayoutSupport( + sType: sType, + pNext: pNext, + supported: supported, + ) proc newVkPhysicalDeviceShaderDrawParametersFeatures*(sType: VkStructureType, pNext: pointer = nil, shaderDrawParameters: VkBool32): VkPhysicalDeviceShaderDrawParametersFeatures = - result.sType = sType - result.pNext = pNext - result.shaderDrawParameters = shaderDrawParameters + result = VkPhysicalDeviceShaderDrawParametersFeatures( + sType: sType, + pNext: pNext, + shaderDrawParameters: shaderDrawParameters, + ) proc newVkPhysicalDeviceShaderFloat16Int8Features*(sType: VkStructureType, pNext: pointer = nil, shaderFloat16: VkBool32, shaderInt8: VkBool32): VkPhysicalDeviceShaderFloat16Int8Features = - result.sType = sType - result.pNext = pNext - result.shaderFloat16 = shaderFloat16 - result.shaderInt8 = shaderInt8 + result = VkPhysicalDeviceShaderFloat16Int8Features( + sType: sType, + pNext: pNext, + shaderFloat16: shaderFloat16, + shaderInt8: shaderInt8, + ) proc newVkPhysicalDeviceFloatControlsProperties*(sType: VkStructureType, pNext: pointer = nil, denormBehaviorIndependence: VkShaderFloatControlsIndependence, roundingModeIndependence: VkShaderFloatControlsIndependence, shaderSignedZeroInfNanPreserveFloat16: VkBool32, shaderSignedZeroInfNanPreserveFloat32: VkBool32, shaderSignedZeroInfNanPreserveFloat64: VkBool32, shaderDenormPreserveFloat16: VkBool32, shaderDenormPreserveFloat32: VkBool32, shaderDenormPreserveFloat64: VkBool32, shaderDenormFlushToZeroFloat16: VkBool32, shaderDenormFlushToZeroFloat32: VkBool32, shaderDenormFlushToZeroFloat64: VkBool32, shaderRoundingModeRTEFloat16: VkBool32, shaderRoundingModeRTEFloat32: VkBool32, shaderRoundingModeRTEFloat64: VkBool32, shaderRoundingModeRTZFloat16: VkBool32, shaderRoundingModeRTZFloat32: VkBool32, shaderRoundingModeRTZFloat64: VkBool32): VkPhysicalDeviceFloatControlsProperties = - result.sType = sType - result.pNext = pNext - result.denormBehaviorIndependence = denormBehaviorIndependence - result.roundingModeIndependence = roundingModeIndependence - result.shaderSignedZeroInfNanPreserveFloat16 = shaderSignedZeroInfNanPreserveFloat16 - result.shaderSignedZeroInfNanPreserveFloat32 = shaderSignedZeroInfNanPreserveFloat32 - result.shaderSignedZeroInfNanPreserveFloat64 = shaderSignedZeroInfNanPreserveFloat64 - result.shaderDenormPreserveFloat16 = shaderDenormPreserveFloat16 - result.shaderDenormPreserveFloat32 = shaderDenormPreserveFloat32 - result.shaderDenormPreserveFloat64 = shaderDenormPreserveFloat64 - result.shaderDenormFlushToZeroFloat16 = shaderDenormFlushToZeroFloat16 - result.shaderDenormFlushToZeroFloat32 = shaderDenormFlushToZeroFloat32 - result.shaderDenormFlushToZeroFloat64 = shaderDenormFlushToZeroFloat64 - result.shaderRoundingModeRTEFloat16 = shaderRoundingModeRTEFloat16 - result.shaderRoundingModeRTEFloat32 = shaderRoundingModeRTEFloat32 - result.shaderRoundingModeRTEFloat64 = shaderRoundingModeRTEFloat64 - result.shaderRoundingModeRTZFloat16 = shaderRoundingModeRTZFloat16 - result.shaderRoundingModeRTZFloat32 = shaderRoundingModeRTZFloat32 - result.shaderRoundingModeRTZFloat64 = shaderRoundingModeRTZFloat64 + result = VkPhysicalDeviceFloatControlsProperties( + sType: sType, + pNext: pNext, + denormBehaviorIndependence: denormBehaviorIndependence, + roundingModeIndependence: roundingModeIndependence, + shaderSignedZeroInfNanPreserveFloat16: shaderSignedZeroInfNanPreserveFloat16, + shaderSignedZeroInfNanPreserveFloat32: shaderSignedZeroInfNanPreserveFloat32, + shaderSignedZeroInfNanPreserveFloat64: shaderSignedZeroInfNanPreserveFloat64, + shaderDenormPreserveFloat16: shaderDenormPreserveFloat16, + shaderDenormPreserveFloat32: shaderDenormPreserveFloat32, + shaderDenormPreserveFloat64: shaderDenormPreserveFloat64, + shaderDenormFlushToZeroFloat16: shaderDenormFlushToZeroFloat16, + shaderDenormFlushToZeroFloat32: shaderDenormFlushToZeroFloat32, + shaderDenormFlushToZeroFloat64: shaderDenormFlushToZeroFloat64, + shaderRoundingModeRTEFloat16: shaderRoundingModeRTEFloat16, + shaderRoundingModeRTEFloat32: shaderRoundingModeRTEFloat32, + shaderRoundingModeRTEFloat64: shaderRoundingModeRTEFloat64, + shaderRoundingModeRTZFloat16: shaderRoundingModeRTZFloat16, + shaderRoundingModeRTZFloat32: shaderRoundingModeRTZFloat32, + shaderRoundingModeRTZFloat64: shaderRoundingModeRTZFloat64, + ) proc newVkPhysicalDeviceHostQueryResetFeatures*(sType: VkStructureType, pNext: pointer = nil, hostQueryReset: VkBool32): VkPhysicalDeviceHostQueryResetFeatures = - result.sType = sType - result.pNext = pNext - result.hostQueryReset = hostQueryReset + result = VkPhysicalDeviceHostQueryResetFeatures( + sType: sType, + pNext: pNext, + hostQueryReset: hostQueryReset, + ) proc newVkNativeBufferUsage2ANDROID*(consumer: uint64, producer: uint64): VkNativeBufferUsage2ANDROID = - result.consumer = consumer - result.producer = producer + result = VkNativeBufferUsage2ANDROID( + consumer: consumer, + producer: producer, + ) proc newVkNativeBufferANDROID*(sType: VkStructureType, pNext: pointer = nil, handle: pointer = nil, stride: int, format: int, usage: int, usage2: VkNativeBufferUsage2ANDROID): VkNativeBufferANDROID = - result.sType = sType - result.pNext = pNext - result.handle = handle - result.stride = stride - result.format = format - result.usage = usage - result.usage2 = usage2 + result = VkNativeBufferANDROID( + sType: sType, + pNext: pNext, + handle: handle, + stride: stride, + format: format, + usage: usage, + usage2: usage2, + ) proc newVkSwapchainImageCreateInfoANDROID*(sType: VkStructureType, pNext: pointer = nil, usage: VkSwapchainImageUsageFlagsANDROID): VkSwapchainImageCreateInfoANDROID = - result.sType = sType - result.pNext = pNext - result.usage = usage + result = VkSwapchainImageCreateInfoANDROID( + sType: sType, + pNext: pNext, + usage: usage, + ) proc newVkPhysicalDevicePresentationPropertiesANDROID*(sType: VkStructureType, pNext: pointer = nil, sharedImage: VkBool32): VkPhysicalDevicePresentationPropertiesANDROID = - result.sType = sType - result.pNext = pNext - result.sharedImage = sharedImage + result = VkPhysicalDevicePresentationPropertiesANDROID( + sType: sType, + pNext: pNext, + sharedImage: sharedImage, + ) proc newVkShaderResourceUsageAMD*(numUsedVgprs: uint32, numUsedSgprs: uint32, ldsSizePerLocalWorkGroup: uint32, ldsUsageSizeInBytes: uint, scratchMemUsageInBytes: uint): VkShaderResourceUsageAMD = - result.numUsedVgprs = numUsedVgprs - result.numUsedSgprs = numUsedSgprs - result.ldsSizePerLocalWorkGroup = ldsSizePerLocalWorkGroup - result.ldsUsageSizeInBytes = ldsUsageSizeInBytes - result.scratchMemUsageInBytes = scratchMemUsageInBytes + result = VkShaderResourceUsageAMD( + numUsedVgprs: numUsedVgprs, + numUsedSgprs: numUsedSgprs, + ldsSizePerLocalWorkGroup: ldsSizePerLocalWorkGroup, + ldsUsageSizeInBytes: ldsUsageSizeInBytes, + scratchMemUsageInBytes: scratchMemUsageInBytes, + ) proc newVkShaderStatisticsInfoAMD*(shaderStageMask: VkShaderStageFlags, resourceUsage: VkShaderResourceUsageAMD, numPhysicalVgprs: uint32, numPhysicalSgprs: uint32, numAvailableVgprs: uint32, numAvailableSgprs: uint32, computeWorkGroupSize: array[3, uint32]): VkShaderStatisticsInfoAMD = - result.shaderStageMask = shaderStageMask - result.resourceUsage = resourceUsage - result.numPhysicalVgprs = numPhysicalVgprs - result.numPhysicalSgprs = numPhysicalSgprs - result.numAvailableVgprs = numAvailableVgprs - result.numAvailableSgprs = numAvailableSgprs - result.computeWorkGroupSize = computeWorkGroupSize + result = VkShaderStatisticsInfoAMD( + shaderStageMask: shaderStageMask, + resourceUsage: resourceUsage, + numPhysicalVgprs: numPhysicalVgprs, + numPhysicalSgprs: numPhysicalSgprs, + numAvailableVgprs: numAvailableVgprs, + numAvailableSgprs: numAvailableSgprs, + computeWorkGroupSize: computeWorkGroupSize, + ) proc newVkDeviceQueueGlobalPriorityCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, globalPriority: VkQueueGlobalPriorityKHR): VkDeviceQueueGlobalPriorityCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.globalPriority = globalPriority + result = VkDeviceQueueGlobalPriorityCreateInfoKHR( + sType: sType, + pNext: pNext, + globalPriority: globalPriority, + ) proc newVkPhysicalDeviceGlobalPriorityQueryFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, globalPriorityQuery: VkBool32): VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.globalPriorityQuery = globalPriorityQuery + result = VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR( + sType: sType, + pNext: pNext, + globalPriorityQuery: globalPriorityQuery, + ) proc newVkQueueFamilyGlobalPriorityPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, priorityCount: uint32, priorities: array[VK_MAX_GLOBAL_PRIORITY_SIZE_KHR, VkQueueGlobalPriorityKHR]): VkQueueFamilyGlobalPriorityPropertiesKHR = - result.sType = sType - result.pNext = pNext - result.priorityCount = priorityCount - result.priorities = priorities + result = VkQueueFamilyGlobalPriorityPropertiesKHR( + sType: sType, + pNext: pNext, + priorityCount: priorityCount, + priorities: priorities, + ) proc newVkDebugUtilsObjectNameInfoEXT*(sType: VkStructureType, pNext: pointer = nil, objectType: VkObjectType, objectHandle: uint64, pObjectName: cstring): VkDebugUtilsObjectNameInfoEXT = - result.sType = sType - result.pNext = pNext - result.objectType = objectType - result.objectHandle = objectHandle - result.pObjectName = pObjectName + result = VkDebugUtilsObjectNameInfoEXT( + sType: sType, + pNext: pNext, + objectType: objectType, + objectHandle: objectHandle, + pObjectName: pObjectName, + ) proc newVkDebugUtilsObjectTagInfoEXT*(sType: VkStructureType, pNext: pointer = nil, objectType: VkObjectType, objectHandle: uint64, tagName: uint64, tagSize: uint, pTag: pointer = nil): VkDebugUtilsObjectTagInfoEXT = - result.sType = sType - result.pNext = pNext - result.objectType = objectType - result.objectHandle = objectHandle - result.tagName = tagName - result.tagSize = tagSize - result.pTag = pTag + result = VkDebugUtilsObjectTagInfoEXT( + sType: sType, + pNext: pNext, + objectType: objectType, + objectHandle: objectHandle, + tagName: tagName, + tagSize: tagSize, + pTag: pTag, + ) proc newVkDebugUtilsLabelEXT*(sType: VkStructureType, pNext: pointer = nil, pLabelName: cstring, color: array[4, float32]): VkDebugUtilsLabelEXT = - result.sType = sType - result.pNext = pNext - result.pLabelName = pLabelName - result.color = color + result = VkDebugUtilsLabelEXT( + sType: sType, + pNext: pNext, + pLabelName: pLabelName, + color: color, + ) proc newVkDebugUtilsMessengerCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkDebugUtilsMessengerCreateFlagsEXT = 0.VkDebugUtilsMessengerCreateFlagsEXT, messageSeverity: VkDebugUtilsMessageSeverityFlagsEXT, messageType: VkDebugUtilsMessageTypeFlagsEXT, pfnUserCallback: PFN_vkDebugUtilsMessengerCallbackEXT, pUserData: pointer = nil): VkDebugUtilsMessengerCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.messageSeverity = messageSeverity - result.messageType = messageType - result.pfnUserCallback = pfnUserCallback - result.pUserData = pUserData + result = VkDebugUtilsMessengerCreateInfoEXT( + sType: sType, + pNext: pNext, + flags: flags, + messageSeverity: messageSeverity, + messageType: messageType, + pfnUserCallback: pfnUserCallback, + pUserData: pUserData, + ) proc newVkDebugUtilsMessengerCallbackDataEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkDebugUtilsMessengerCallbackDataFlagsEXT = 0.VkDebugUtilsMessengerCallbackDataFlagsEXT, pMessageIdName: cstring, messageIdNumber: int32, pMessage: cstring, queueLabelCount: uint32, pQueueLabels: ptr VkDebugUtilsLabelEXT, cmdBufLabelCount: uint32, pCmdBufLabels: ptr VkDebugUtilsLabelEXT, objectCount: uint32, pObjects: ptr VkDebugUtilsObjectNameInfoEXT): VkDebugUtilsMessengerCallbackDataEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.pMessageIdName = pMessageIdName - result.messageIdNumber = messageIdNumber - result.pMessage = pMessage - result.queueLabelCount = queueLabelCount - result.pQueueLabels = pQueueLabels - result.cmdBufLabelCount = cmdBufLabelCount - result.pCmdBufLabels = pCmdBufLabels - result.objectCount = objectCount - result.pObjects = pObjects + result = VkDebugUtilsMessengerCallbackDataEXT( + sType: sType, + pNext: pNext, + flags: flags, + pMessageIdName: pMessageIdName, + messageIdNumber: messageIdNumber, + pMessage: pMessage, + queueLabelCount: queueLabelCount, + pQueueLabels: pQueueLabels, + cmdBufLabelCount: cmdBufLabelCount, + pCmdBufLabels: pCmdBufLabels, + objectCount: objectCount, + pObjects: pObjects, + ) proc newVkPhysicalDeviceDeviceMemoryReportFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, deviceMemoryReport: VkBool32): VkPhysicalDeviceDeviceMemoryReportFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.deviceMemoryReport = deviceMemoryReport + result = VkPhysicalDeviceDeviceMemoryReportFeaturesEXT( + sType: sType, + pNext: pNext, + deviceMemoryReport: deviceMemoryReport, + ) proc newVkDeviceDeviceMemoryReportCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkDeviceMemoryReportFlagsEXT = 0.VkDeviceMemoryReportFlagsEXT, pfnUserCallback: PFN_vkDeviceMemoryReportCallbackEXT, pUserData: pointer = nil): VkDeviceDeviceMemoryReportCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.pfnUserCallback = pfnUserCallback - result.pUserData = pUserData + result = VkDeviceDeviceMemoryReportCreateInfoEXT( + sType: sType, + pNext: pNext, + flags: flags, + pfnUserCallback: pfnUserCallback, + pUserData: pUserData, + ) proc newVkDeviceMemoryReportCallbackDataEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkDeviceMemoryReportFlagsEXT = 0.VkDeviceMemoryReportFlagsEXT, `type`: VkDeviceMemoryReportEventTypeEXT, memoryObjectId: uint64, size: VkDeviceSize, objectType: VkObjectType, objectHandle: uint64, heapIndex: uint32): VkDeviceMemoryReportCallbackDataEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.`type` = `type` - result.memoryObjectId = memoryObjectId - result.size = size - result.objectType = objectType - result.objectHandle = objectHandle - result.heapIndex = heapIndex + result = VkDeviceMemoryReportCallbackDataEXT( + sType: sType, + pNext: pNext, + flags: flags, + `type`: `type`, + memoryObjectId: memoryObjectId, + size: size, + objectType: objectType, + objectHandle: objectHandle, + heapIndex: heapIndex, + ) proc newVkImportMemoryHostPointerInfoEXT*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, pHostPointer: pointer = nil): VkImportMemoryHostPointerInfoEXT = - result.sType = sType - result.pNext = pNext - result.handleType = handleType - result.pHostPointer = pHostPointer + result = VkImportMemoryHostPointerInfoEXT( + sType: sType, + pNext: pNext, + handleType: handleType, + pHostPointer: pHostPointer, + ) proc newVkMemoryHostPointerPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryHostPointerPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.memoryTypeBits = memoryTypeBits + result = VkMemoryHostPointerPropertiesEXT( + sType: sType, + pNext: pNext, + memoryTypeBits: memoryTypeBits, + ) proc newVkPhysicalDeviceExternalMemoryHostPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, minImportedHostPointerAlignment: VkDeviceSize): VkPhysicalDeviceExternalMemoryHostPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.minImportedHostPointerAlignment = minImportedHostPointerAlignment + result = VkPhysicalDeviceExternalMemoryHostPropertiesEXT( + sType: sType, + pNext: pNext, + minImportedHostPointerAlignment: minImportedHostPointerAlignment, + ) proc newVkPhysicalDeviceConservativeRasterizationPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, primitiveOverestimationSize: float32, maxExtraPrimitiveOverestimationSize: float32, extraPrimitiveOverestimationSizeGranularity: float32, primitiveUnderestimation: VkBool32, conservativePointAndLineRasterization: VkBool32, degenerateTrianglesRasterized: VkBool32, degenerateLinesRasterized: VkBool32, fullyCoveredFragmentShaderInputVariable: VkBool32, conservativeRasterizationPostDepthCoverage: VkBool32): VkPhysicalDeviceConservativeRasterizationPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.primitiveOverestimationSize = primitiveOverestimationSize - result.maxExtraPrimitiveOverestimationSize = maxExtraPrimitiveOverestimationSize - result.extraPrimitiveOverestimationSizeGranularity = extraPrimitiveOverestimationSizeGranularity - result.primitiveUnderestimation = primitiveUnderestimation - result.conservativePointAndLineRasterization = conservativePointAndLineRasterization - result.degenerateTrianglesRasterized = degenerateTrianglesRasterized - result.degenerateLinesRasterized = degenerateLinesRasterized - result.fullyCoveredFragmentShaderInputVariable = fullyCoveredFragmentShaderInputVariable - result.conservativeRasterizationPostDepthCoverage = conservativeRasterizationPostDepthCoverage + result = VkPhysicalDeviceConservativeRasterizationPropertiesEXT( + sType: sType, + pNext: pNext, + primitiveOverestimationSize: primitiveOverestimationSize, + maxExtraPrimitiveOverestimationSize: maxExtraPrimitiveOverestimationSize, + extraPrimitiveOverestimationSizeGranularity: extraPrimitiveOverestimationSizeGranularity, + primitiveUnderestimation: primitiveUnderestimation, + conservativePointAndLineRasterization: conservativePointAndLineRasterization, + degenerateTrianglesRasterized: degenerateTrianglesRasterized, + degenerateLinesRasterized: degenerateLinesRasterized, + fullyCoveredFragmentShaderInputVariable: fullyCoveredFragmentShaderInputVariable, + conservativeRasterizationPostDepthCoverage: conservativeRasterizationPostDepthCoverage, + ) proc newVkCalibratedTimestampInfoKHR*(sType: VkStructureType, pNext: pointer = nil, timeDomain: VkTimeDomainKHR): VkCalibratedTimestampInfoKHR = - result.sType = sType - result.pNext = pNext - result.timeDomain = timeDomain + result = VkCalibratedTimestampInfoKHR( + sType: sType, + pNext: pNext, + timeDomain: timeDomain, + ) proc newVkPhysicalDeviceShaderCorePropertiesAMD*(sType: VkStructureType, pNext: pointer = nil, shaderEngineCount: uint32, shaderArraysPerEngineCount: uint32, computeUnitsPerShaderArray: uint32, simdPerComputeUnit: uint32, wavefrontsPerSimd: uint32, wavefrontSize: uint32, sgprsPerSimd: uint32, minSgprAllocation: uint32, maxSgprAllocation: uint32, sgprAllocationGranularity: uint32, vgprsPerSimd: uint32, minVgprAllocation: uint32, maxVgprAllocation: uint32, vgprAllocationGranularity: uint32): VkPhysicalDeviceShaderCorePropertiesAMD = - result.sType = sType - result.pNext = pNext - result.shaderEngineCount = shaderEngineCount - result.shaderArraysPerEngineCount = shaderArraysPerEngineCount - result.computeUnitsPerShaderArray = computeUnitsPerShaderArray - result.simdPerComputeUnit = simdPerComputeUnit - result.wavefrontsPerSimd = wavefrontsPerSimd - result.wavefrontSize = wavefrontSize - result.sgprsPerSimd = sgprsPerSimd - result.minSgprAllocation = minSgprAllocation - result.maxSgprAllocation = maxSgprAllocation - result.sgprAllocationGranularity = sgprAllocationGranularity - result.vgprsPerSimd = vgprsPerSimd - result.minVgprAllocation = minVgprAllocation - result.maxVgprAllocation = maxVgprAllocation - result.vgprAllocationGranularity = vgprAllocationGranularity + result = VkPhysicalDeviceShaderCorePropertiesAMD( + sType: sType, + pNext: pNext, + shaderEngineCount: shaderEngineCount, + shaderArraysPerEngineCount: shaderArraysPerEngineCount, + computeUnitsPerShaderArray: computeUnitsPerShaderArray, + simdPerComputeUnit: simdPerComputeUnit, + wavefrontsPerSimd: wavefrontsPerSimd, + wavefrontSize: wavefrontSize, + sgprsPerSimd: sgprsPerSimd, + minSgprAllocation: minSgprAllocation, + maxSgprAllocation: maxSgprAllocation, + sgprAllocationGranularity: sgprAllocationGranularity, + vgprsPerSimd: vgprsPerSimd, + minVgprAllocation: minVgprAllocation, + maxVgprAllocation: maxVgprAllocation, + vgprAllocationGranularity: vgprAllocationGranularity, + ) proc newVkPhysicalDeviceShaderCoreProperties2AMD*(sType: VkStructureType, pNext: pointer = nil, shaderCoreFeatures: VkShaderCorePropertiesFlagsAMD, activeComputeUnitCount: uint32): VkPhysicalDeviceShaderCoreProperties2AMD = - result.sType = sType - result.pNext = pNext - result.shaderCoreFeatures = shaderCoreFeatures - result.activeComputeUnitCount = activeComputeUnitCount + result = VkPhysicalDeviceShaderCoreProperties2AMD( + sType: sType, + pNext: pNext, + shaderCoreFeatures: shaderCoreFeatures, + activeComputeUnitCount: activeComputeUnitCount, + ) proc newVkPipelineRasterizationConservativeStateCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineRasterizationConservativeStateCreateFlagsEXT = 0.VkPipelineRasterizationConservativeStateCreateFlagsEXT, conservativeRasterizationMode: VkConservativeRasterizationModeEXT, extraPrimitiveOverestimationSize: float32): VkPipelineRasterizationConservativeStateCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.conservativeRasterizationMode = conservativeRasterizationMode - result.extraPrimitiveOverestimationSize = extraPrimitiveOverestimationSize + result = VkPipelineRasterizationConservativeStateCreateInfoEXT( + sType: sType, + pNext: pNext, + flags: flags, + conservativeRasterizationMode: conservativeRasterizationMode, + extraPrimitiveOverestimationSize: extraPrimitiveOverestimationSize, + ) proc newVkPhysicalDeviceDescriptorIndexingFeatures*(sType: VkStructureType, pNext: pointer = nil, shaderInputAttachmentArrayDynamicIndexing: VkBool32, shaderUniformTexelBufferArrayDynamicIndexing: VkBool32, shaderStorageTexelBufferArrayDynamicIndexing: VkBool32, shaderUniformBufferArrayNonUniformIndexing: VkBool32, shaderSampledImageArrayNonUniformIndexing: VkBool32, shaderStorageBufferArrayNonUniformIndexing: VkBool32, shaderStorageImageArrayNonUniformIndexing: VkBool32, shaderInputAttachmentArrayNonUniformIndexing: VkBool32, shaderUniformTexelBufferArrayNonUniformIndexing: VkBool32, shaderStorageTexelBufferArrayNonUniformIndexing: VkBool32, descriptorBindingUniformBufferUpdateAfterBind: VkBool32, descriptorBindingSampledImageUpdateAfterBind: VkBool32, descriptorBindingStorageImageUpdateAfterBind: VkBool32, descriptorBindingStorageBufferUpdateAfterBind: VkBool32, descriptorBindingUniformTexelBufferUpdateAfterBind: VkBool32, descriptorBindingStorageTexelBufferUpdateAfterBind: VkBool32, descriptorBindingUpdateUnusedWhilePending: VkBool32, descriptorBindingPartiallyBound: VkBool32, descriptorBindingVariableDescriptorCount: VkBool32, runtimeDescriptorArray: VkBool32): VkPhysicalDeviceDescriptorIndexingFeatures = - result.sType = sType - result.pNext = pNext - result.shaderInputAttachmentArrayDynamicIndexing = shaderInputAttachmentArrayDynamicIndexing - result.shaderUniformTexelBufferArrayDynamicIndexing = shaderUniformTexelBufferArrayDynamicIndexing - result.shaderStorageTexelBufferArrayDynamicIndexing = shaderStorageTexelBufferArrayDynamicIndexing - result.shaderUniformBufferArrayNonUniformIndexing = shaderUniformBufferArrayNonUniformIndexing - result.shaderSampledImageArrayNonUniformIndexing = shaderSampledImageArrayNonUniformIndexing - result.shaderStorageBufferArrayNonUniformIndexing = shaderStorageBufferArrayNonUniformIndexing - result.shaderStorageImageArrayNonUniformIndexing = shaderStorageImageArrayNonUniformIndexing - result.shaderInputAttachmentArrayNonUniformIndexing = shaderInputAttachmentArrayNonUniformIndexing - result.shaderUniformTexelBufferArrayNonUniformIndexing = shaderUniformTexelBufferArrayNonUniformIndexing - result.shaderStorageTexelBufferArrayNonUniformIndexing = shaderStorageTexelBufferArrayNonUniformIndexing - result.descriptorBindingUniformBufferUpdateAfterBind = descriptorBindingUniformBufferUpdateAfterBind - result.descriptorBindingSampledImageUpdateAfterBind = descriptorBindingSampledImageUpdateAfterBind - result.descriptorBindingStorageImageUpdateAfterBind = descriptorBindingStorageImageUpdateAfterBind - result.descriptorBindingStorageBufferUpdateAfterBind = descriptorBindingStorageBufferUpdateAfterBind - result.descriptorBindingUniformTexelBufferUpdateAfterBind = descriptorBindingUniformTexelBufferUpdateAfterBind - result.descriptorBindingStorageTexelBufferUpdateAfterBind = descriptorBindingStorageTexelBufferUpdateAfterBind - result.descriptorBindingUpdateUnusedWhilePending = descriptorBindingUpdateUnusedWhilePending - result.descriptorBindingPartiallyBound = descriptorBindingPartiallyBound - result.descriptorBindingVariableDescriptorCount = descriptorBindingVariableDescriptorCount - result.runtimeDescriptorArray = runtimeDescriptorArray + result = VkPhysicalDeviceDescriptorIndexingFeatures( + sType: sType, + pNext: pNext, + shaderInputAttachmentArrayDynamicIndexing: shaderInputAttachmentArrayDynamicIndexing, + shaderUniformTexelBufferArrayDynamicIndexing: shaderUniformTexelBufferArrayDynamicIndexing, + shaderStorageTexelBufferArrayDynamicIndexing: shaderStorageTexelBufferArrayDynamicIndexing, + shaderUniformBufferArrayNonUniformIndexing: shaderUniformBufferArrayNonUniformIndexing, + shaderSampledImageArrayNonUniformIndexing: shaderSampledImageArrayNonUniformIndexing, + shaderStorageBufferArrayNonUniformIndexing: shaderStorageBufferArrayNonUniformIndexing, + shaderStorageImageArrayNonUniformIndexing: shaderStorageImageArrayNonUniformIndexing, + shaderInputAttachmentArrayNonUniformIndexing: shaderInputAttachmentArrayNonUniformIndexing, + shaderUniformTexelBufferArrayNonUniformIndexing: shaderUniformTexelBufferArrayNonUniformIndexing, + shaderStorageTexelBufferArrayNonUniformIndexing: shaderStorageTexelBufferArrayNonUniformIndexing, + descriptorBindingUniformBufferUpdateAfterBind: descriptorBindingUniformBufferUpdateAfterBind, + descriptorBindingSampledImageUpdateAfterBind: descriptorBindingSampledImageUpdateAfterBind, + descriptorBindingStorageImageUpdateAfterBind: descriptorBindingStorageImageUpdateAfterBind, + descriptorBindingStorageBufferUpdateAfterBind: descriptorBindingStorageBufferUpdateAfterBind, + descriptorBindingUniformTexelBufferUpdateAfterBind: descriptorBindingUniformTexelBufferUpdateAfterBind, + descriptorBindingStorageTexelBufferUpdateAfterBind: descriptorBindingStorageTexelBufferUpdateAfterBind, + descriptorBindingUpdateUnusedWhilePending: descriptorBindingUpdateUnusedWhilePending, + descriptorBindingPartiallyBound: descriptorBindingPartiallyBound, + descriptorBindingVariableDescriptorCount: descriptorBindingVariableDescriptorCount, + runtimeDescriptorArray: runtimeDescriptorArray, + ) proc newVkPhysicalDeviceDescriptorIndexingProperties*(sType: VkStructureType, pNext: pointer = nil, maxUpdateAfterBindDescriptorsInAllPools: uint32, shaderUniformBufferArrayNonUniformIndexingNative: VkBool32, shaderSampledImageArrayNonUniformIndexingNative: VkBool32, shaderStorageBufferArrayNonUniformIndexingNative: VkBool32, shaderStorageImageArrayNonUniformIndexingNative: VkBool32, shaderInputAttachmentArrayNonUniformIndexingNative: VkBool32, robustBufferAccessUpdateAfterBind: VkBool32, quadDivergentImplicitLod: VkBool32, maxPerStageDescriptorUpdateAfterBindSamplers: uint32, maxPerStageDescriptorUpdateAfterBindUniformBuffers: uint32, maxPerStageDescriptorUpdateAfterBindStorageBuffers: uint32, maxPerStageDescriptorUpdateAfterBindSampledImages: uint32, maxPerStageDescriptorUpdateAfterBindStorageImages: uint32, maxPerStageDescriptorUpdateAfterBindInputAttachments: uint32, maxPerStageUpdateAfterBindResources: uint32, maxDescriptorSetUpdateAfterBindSamplers: uint32, maxDescriptorSetUpdateAfterBindUniformBuffers: uint32, maxDescriptorSetUpdateAfterBindUniformBuffersDynamic: uint32, maxDescriptorSetUpdateAfterBindStorageBuffers: uint32, maxDescriptorSetUpdateAfterBindStorageBuffersDynamic: uint32, maxDescriptorSetUpdateAfterBindSampledImages: uint32, maxDescriptorSetUpdateAfterBindStorageImages: uint32, maxDescriptorSetUpdateAfterBindInputAttachments: uint32): VkPhysicalDeviceDescriptorIndexingProperties = - result.sType = sType - result.pNext = pNext - result.maxUpdateAfterBindDescriptorsInAllPools = maxUpdateAfterBindDescriptorsInAllPools - result.shaderUniformBufferArrayNonUniformIndexingNative = shaderUniformBufferArrayNonUniformIndexingNative - result.shaderSampledImageArrayNonUniformIndexingNative = shaderSampledImageArrayNonUniformIndexingNative - result.shaderStorageBufferArrayNonUniformIndexingNative = shaderStorageBufferArrayNonUniformIndexingNative - result.shaderStorageImageArrayNonUniformIndexingNative = shaderStorageImageArrayNonUniformIndexingNative - result.shaderInputAttachmentArrayNonUniformIndexingNative = shaderInputAttachmentArrayNonUniformIndexingNative - result.robustBufferAccessUpdateAfterBind = robustBufferAccessUpdateAfterBind - result.quadDivergentImplicitLod = quadDivergentImplicitLod - result.maxPerStageDescriptorUpdateAfterBindSamplers = maxPerStageDescriptorUpdateAfterBindSamplers - result.maxPerStageDescriptorUpdateAfterBindUniformBuffers = maxPerStageDescriptorUpdateAfterBindUniformBuffers - result.maxPerStageDescriptorUpdateAfterBindStorageBuffers = maxPerStageDescriptorUpdateAfterBindStorageBuffers - result.maxPerStageDescriptorUpdateAfterBindSampledImages = maxPerStageDescriptorUpdateAfterBindSampledImages - result.maxPerStageDescriptorUpdateAfterBindStorageImages = maxPerStageDescriptorUpdateAfterBindStorageImages - result.maxPerStageDescriptorUpdateAfterBindInputAttachments = maxPerStageDescriptorUpdateAfterBindInputAttachments - result.maxPerStageUpdateAfterBindResources = maxPerStageUpdateAfterBindResources - result.maxDescriptorSetUpdateAfterBindSamplers = maxDescriptorSetUpdateAfterBindSamplers - result.maxDescriptorSetUpdateAfterBindUniformBuffers = maxDescriptorSetUpdateAfterBindUniformBuffers - result.maxDescriptorSetUpdateAfterBindUniformBuffersDynamic = maxDescriptorSetUpdateAfterBindUniformBuffersDynamic - result.maxDescriptorSetUpdateAfterBindStorageBuffers = maxDescriptorSetUpdateAfterBindStorageBuffers - result.maxDescriptorSetUpdateAfterBindStorageBuffersDynamic = maxDescriptorSetUpdateAfterBindStorageBuffersDynamic - result.maxDescriptorSetUpdateAfterBindSampledImages = maxDescriptorSetUpdateAfterBindSampledImages - result.maxDescriptorSetUpdateAfterBindStorageImages = maxDescriptorSetUpdateAfterBindStorageImages - result.maxDescriptorSetUpdateAfterBindInputAttachments = maxDescriptorSetUpdateAfterBindInputAttachments + result = VkPhysicalDeviceDescriptorIndexingProperties( + sType: sType, + pNext: pNext, + maxUpdateAfterBindDescriptorsInAllPools: maxUpdateAfterBindDescriptorsInAllPools, + shaderUniformBufferArrayNonUniformIndexingNative: shaderUniformBufferArrayNonUniformIndexingNative, + shaderSampledImageArrayNonUniformIndexingNative: shaderSampledImageArrayNonUniformIndexingNative, + shaderStorageBufferArrayNonUniformIndexingNative: shaderStorageBufferArrayNonUniformIndexingNative, + shaderStorageImageArrayNonUniformIndexingNative: shaderStorageImageArrayNonUniformIndexingNative, + shaderInputAttachmentArrayNonUniformIndexingNative: shaderInputAttachmentArrayNonUniformIndexingNative, + robustBufferAccessUpdateAfterBind: robustBufferAccessUpdateAfterBind, + quadDivergentImplicitLod: quadDivergentImplicitLod, + maxPerStageDescriptorUpdateAfterBindSamplers: maxPerStageDescriptorUpdateAfterBindSamplers, + maxPerStageDescriptorUpdateAfterBindUniformBuffers: maxPerStageDescriptorUpdateAfterBindUniformBuffers, + maxPerStageDescriptorUpdateAfterBindStorageBuffers: maxPerStageDescriptorUpdateAfterBindStorageBuffers, + maxPerStageDescriptorUpdateAfterBindSampledImages: maxPerStageDescriptorUpdateAfterBindSampledImages, + maxPerStageDescriptorUpdateAfterBindStorageImages: maxPerStageDescriptorUpdateAfterBindStorageImages, + maxPerStageDescriptorUpdateAfterBindInputAttachments: maxPerStageDescriptorUpdateAfterBindInputAttachments, + maxPerStageUpdateAfterBindResources: maxPerStageUpdateAfterBindResources, + maxDescriptorSetUpdateAfterBindSamplers: maxDescriptorSetUpdateAfterBindSamplers, + maxDescriptorSetUpdateAfterBindUniformBuffers: maxDescriptorSetUpdateAfterBindUniformBuffers, + maxDescriptorSetUpdateAfterBindUniformBuffersDynamic: maxDescriptorSetUpdateAfterBindUniformBuffersDynamic, + maxDescriptorSetUpdateAfterBindStorageBuffers: maxDescriptorSetUpdateAfterBindStorageBuffers, + maxDescriptorSetUpdateAfterBindStorageBuffersDynamic: maxDescriptorSetUpdateAfterBindStorageBuffersDynamic, + maxDescriptorSetUpdateAfterBindSampledImages: maxDescriptorSetUpdateAfterBindSampledImages, + maxDescriptorSetUpdateAfterBindStorageImages: maxDescriptorSetUpdateAfterBindStorageImages, + maxDescriptorSetUpdateAfterBindInputAttachments: maxDescriptorSetUpdateAfterBindInputAttachments, + ) proc newVkDescriptorSetLayoutBindingFlagsCreateInfo*(sType: VkStructureType, pNext: pointer = nil, bindingCount: uint32, pBindingFlags: ptr VkDescriptorBindingFlags): VkDescriptorSetLayoutBindingFlagsCreateInfo = - result.sType = sType - result.pNext = pNext - result.bindingCount = bindingCount - result.pBindingFlags = pBindingFlags + result = VkDescriptorSetLayoutBindingFlagsCreateInfo( + sType: sType, + pNext: pNext, + bindingCount: bindingCount, + pBindingFlags: pBindingFlags, + ) proc newVkDescriptorSetVariableDescriptorCountAllocateInfo*(sType: VkStructureType, pNext: pointer = nil, descriptorSetCount: uint32, pDescriptorCounts: ptr uint32): VkDescriptorSetVariableDescriptorCountAllocateInfo = - result.sType = sType - result.pNext = pNext - result.descriptorSetCount = descriptorSetCount - result.pDescriptorCounts = pDescriptorCounts + result = VkDescriptorSetVariableDescriptorCountAllocateInfo( + sType: sType, + pNext: pNext, + descriptorSetCount: descriptorSetCount, + pDescriptorCounts: pDescriptorCounts, + ) proc newVkDescriptorSetVariableDescriptorCountLayoutSupport*(sType: VkStructureType, pNext: pointer = nil, maxVariableDescriptorCount: uint32): VkDescriptorSetVariableDescriptorCountLayoutSupport = - result.sType = sType - result.pNext = pNext - result.maxVariableDescriptorCount = maxVariableDescriptorCount + result = VkDescriptorSetVariableDescriptorCountLayoutSupport( + sType: sType, + pNext: pNext, + maxVariableDescriptorCount: maxVariableDescriptorCount, + ) proc newVkAttachmentDescription2*(sType: VkStructureType, pNext: pointer = nil, flags: VkAttachmentDescriptionFlags = 0.VkAttachmentDescriptionFlags, format: VkFormat, samples: VkSampleCountFlagBits, loadOp: VkAttachmentLoadOp, storeOp: VkAttachmentStoreOp, stencilLoadOp: VkAttachmentLoadOp, stencilStoreOp: VkAttachmentStoreOp, initialLayout: VkImageLayout, finalLayout: VkImageLayout): VkAttachmentDescription2 = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.format = format - result.samples = samples - result.loadOp = loadOp - result.storeOp = storeOp - result.stencilLoadOp = stencilLoadOp - result.stencilStoreOp = stencilStoreOp - result.initialLayout = initialLayout - result.finalLayout = finalLayout + result = VkAttachmentDescription2( + sType: sType, + pNext: pNext, + flags: flags, + format: format, + samples: samples, + loadOp: loadOp, + storeOp: storeOp, + stencilLoadOp: stencilLoadOp, + stencilStoreOp: stencilStoreOp, + initialLayout: initialLayout, + finalLayout: finalLayout, + ) proc newVkAttachmentReference2*(sType: VkStructureType, pNext: pointer = nil, attachment: uint32, layout: VkImageLayout, aspectMask: VkImageAspectFlags): VkAttachmentReference2 = - result.sType = sType - result.pNext = pNext - result.attachment = attachment - result.layout = layout - result.aspectMask = aspectMask + result = VkAttachmentReference2( + sType: sType, + pNext: pNext, + attachment: attachment, + layout: layout, + aspectMask: aspectMask, + ) proc newVkSubpassDescription2*(sType: VkStructureType, pNext: pointer = nil, flags: VkSubpassDescriptionFlags = 0.VkSubpassDescriptionFlags, pipelineBindPoint: VkPipelineBindPoint, viewMask: uint32, inputAttachmentCount: uint32, pInputAttachments: ptr VkAttachmentReference2, colorAttachmentCount: uint32, pColorAttachments: ptr VkAttachmentReference2, pResolveAttachments: ptr VkAttachmentReference2, pDepthStencilAttachment: ptr VkAttachmentReference2, preserveAttachmentCount: uint32, pPreserveAttachments: ptr uint32): VkSubpassDescription2 = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.pipelineBindPoint = pipelineBindPoint - result.viewMask = viewMask - result.inputAttachmentCount = inputAttachmentCount - result.pInputAttachments = pInputAttachments - result.colorAttachmentCount = colorAttachmentCount - result.pColorAttachments = pColorAttachments - result.pResolveAttachments = pResolveAttachments - result.pDepthStencilAttachment = pDepthStencilAttachment - result.preserveAttachmentCount = preserveAttachmentCount - result.pPreserveAttachments = pPreserveAttachments + result = VkSubpassDescription2( + sType: sType, + pNext: pNext, + flags: flags, + pipelineBindPoint: pipelineBindPoint, + viewMask: viewMask, + inputAttachmentCount: inputAttachmentCount, + pInputAttachments: pInputAttachments, + colorAttachmentCount: colorAttachmentCount, + pColorAttachments: pColorAttachments, + pResolveAttachments: pResolveAttachments, + pDepthStencilAttachment: pDepthStencilAttachment, + preserveAttachmentCount: preserveAttachmentCount, + pPreserveAttachments: pPreserveAttachments, + ) proc newVkSubpassDependency2*(sType: VkStructureType, pNext: pointer = nil, srcSubpass: uint32, dstSubpass: uint32, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags, dependencyFlags: VkDependencyFlags, viewOffset: int32): VkSubpassDependency2 = - result.sType = sType - result.pNext = pNext - result.srcSubpass = srcSubpass - result.dstSubpass = dstSubpass - result.srcStageMask = srcStageMask - result.dstStageMask = dstStageMask - result.srcAccessMask = srcAccessMask - result.dstAccessMask = dstAccessMask - result.dependencyFlags = dependencyFlags - result.viewOffset = viewOffset + result = VkSubpassDependency2( + sType: sType, + pNext: pNext, + srcSubpass: srcSubpass, + dstSubpass: dstSubpass, + srcStageMask: srcStageMask, + dstStageMask: dstStageMask, + srcAccessMask: srcAccessMask, + dstAccessMask: dstAccessMask, + dependencyFlags: dependencyFlags, + viewOffset: viewOffset, + ) proc newVkRenderPassCreateInfo2*(sType: VkStructureType, pNext: pointer = nil, flags: VkRenderPassCreateFlags = 0.VkRenderPassCreateFlags, attachmentCount: uint32, pAttachments: ptr VkAttachmentDescription2, subpassCount: uint32, pSubpasses: ptr VkSubpassDescription2, dependencyCount: uint32, pDependencies: ptr VkSubpassDependency2, correlatedViewMaskCount: uint32, pCorrelatedViewMasks: ptr uint32): VkRenderPassCreateInfo2 = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.attachmentCount = attachmentCount - result.pAttachments = pAttachments - result.subpassCount = subpassCount - result.pSubpasses = pSubpasses - result.dependencyCount = dependencyCount - result.pDependencies = pDependencies - result.correlatedViewMaskCount = correlatedViewMaskCount - result.pCorrelatedViewMasks = pCorrelatedViewMasks + result = VkRenderPassCreateInfo2( + sType: sType, + pNext: pNext, + flags: flags, + attachmentCount: attachmentCount, + pAttachments: pAttachments, + subpassCount: subpassCount, + pSubpasses: pSubpasses, + dependencyCount: dependencyCount, + pDependencies: pDependencies, + correlatedViewMaskCount: correlatedViewMaskCount, + pCorrelatedViewMasks: pCorrelatedViewMasks, + ) proc newVkSubpassBeginInfo*(sType: VkStructureType, pNext: pointer = nil, contents: VkSubpassContents): VkSubpassBeginInfo = - result.sType = sType - result.pNext = pNext - result.contents = contents + result = VkSubpassBeginInfo( + sType: sType, + pNext: pNext, + contents: contents, + ) proc newVkSubpassEndInfo*(sType: VkStructureType, pNext: pointer = nil): VkSubpassEndInfo = - result.sType = sType - result.pNext = pNext + result = VkSubpassEndInfo( + sType: sType, + pNext: pNext, + ) proc newVkPhysicalDeviceTimelineSemaphoreFeatures*(sType: VkStructureType, pNext: pointer = nil, timelineSemaphore: VkBool32): VkPhysicalDeviceTimelineSemaphoreFeatures = - result.sType = sType - result.pNext = pNext - result.timelineSemaphore = timelineSemaphore + result = VkPhysicalDeviceTimelineSemaphoreFeatures( + sType: sType, + pNext: pNext, + timelineSemaphore: timelineSemaphore, + ) proc newVkPhysicalDeviceTimelineSemaphoreProperties*(sType: VkStructureType, pNext: pointer = nil, maxTimelineSemaphoreValueDifference: uint64): VkPhysicalDeviceTimelineSemaphoreProperties = - result.sType = sType - result.pNext = pNext - result.maxTimelineSemaphoreValueDifference = maxTimelineSemaphoreValueDifference + result = VkPhysicalDeviceTimelineSemaphoreProperties( + sType: sType, + pNext: pNext, + maxTimelineSemaphoreValueDifference: maxTimelineSemaphoreValueDifference, + ) proc newVkSemaphoreTypeCreateInfo*(sType: VkStructureType, pNext: pointer = nil, semaphoreType: VkSemaphoreType, initialValue: uint64): VkSemaphoreTypeCreateInfo = - result.sType = sType - result.pNext = pNext - result.semaphoreType = semaphoreType - result.initialValue = initialValue + result = VkSemaphoreTypeCreateInfo( + sType: sType, + pNext: pNext, + semaphoreType: semaphoreType, + initialValue: initialValue, + ) proc newVkTimelineSemaphoreSubmitInfo*(sType: VkStructureType, pNext: pointer = nil, waitSemaphoreValueCount: uint32, pWaitSemaphoreValues: ptr uint64, signalSemaphoreValueCount: uint32, pSignalSemaphoreValues: ptr uint64): VkTimelineSemaphoreSubmitInfo = - result.sType = sType - result.pNext = pNext - result.waitSemaphoreValueCount = waitSemaphoreValueCount - result.pWaitSemaphoreValues = pWaitSemaphoreValues - result.signalSemaphoreValueCount = signalSemaphoreValueCount - result.pSignalSemaphoreValues = pSignalSemaphoreValues + result = VkTimelineSemaphoreSubmitInfo( + sType: sType, + pNext: pNext, + waitSemaphoreValueCount: waitSemaphoreValueCount, + pWaitSemaphoreValues: pWaitSemaphoreValues, + signalSemaphoreValueCount: signalSemaphoreValueCount, + pSignalSemaphoreValues: pSignalSemaphoreValues, + ) proc newVkSemaphoreWaitInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkSemaphoreWaitFlags = 0.VkSemaphoreWaitFlags, semaphoreCount: uint32, pSemaphores: ptr VkSemaphore, pValues: ptr uint64): VkSemaphoreWaitInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.semaphoreCount = semaphoreCount - result.pSemaphores = pSemaphores - result.pValues = pValues + result = VkSemaphoreWaitInfo( + sType: sType, + pNext: pNext, + flags: flags, + semaphoreCount: semaphoreCount, + pSemaphores: pSemaphores, + pValues: pValues, + ) proc newVkSemaphoreSignalInfo*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, value: uint64): VkSemaphoreSignalInfo = - result.sType = sType - result.pNext = pNext - result.semaphore = semaphore - result.value = value + result = VkSemaphoreSignalInfo( + sType: sType, + pNext: pNext, + semaphore: semaphore, + value: value, + ) proc newVkVertexInputBindingDivisorDescriptionKHR*(binding: uint32, divisor: uint32): VkVertexInputBindingDivisorDescriptionKHR = - result.binding = binding - result.divisor = divisor + result = VkVertexInputBindingDivisorDescriptionKHR( + binding: binding, + divisor: divisor, + ) proc newVkPipelineVertexInputDivisorStateCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, vertexBindingDivisorCount: uint32, pVertexBindingDivisors: ptr VkVertexInputBindingDivisorDescriptionKHR): VkPipelineVertexInputDivisorStateCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.vertexBindingDivisorCount = vertexBindingDivisorCount - result.pVertexBindingDivisors = pVertexBindingDivisors + result = VkPipelineVertexInputDivisorStateCreateInfoKHR( + sType: sType, + pNext: pNext, + vertexBindingDivisorCount: vertexBindingDivisorCount, + pVertexBindingDivisors: pVertexBindingDivisors, + ) proc newVkPhysicalDeviceVertexAttributeDivisorPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxVertexAttribDivisor: uint32): VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.maxVertexAttribDivisor = maxVertexAttribDivisor + result = VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT( + sType: sType, + pNext: pNext, + maxVertexAttribDivisor: maxVertexAttribDivisor, + ) proc newVkPhysicalDeviceVertexAttributeDivisorPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, maxVertexAttribDivisor: uint32, supportsNonZeroFirstInstance: VkBool32): VkPhysicalDeviceVertexAttributeDivisorPropertiesKHR = - result.sType = sType - result.pNext = pNext - result.maxVertexAttribDivisor = maxVertexAttribDivisor - result.supportsNonZeroFirstInstance = supportsNonZeroFirstInstance + result = VkPhysicalDeviceVertexAttributeDivisorPropertiesKHR( + sType: sType, + pNext: pNext, + maxVertexAttribDivisor: maxVertexAttribDivisor, + supportsNonZeroFirstInstance: supportsNonZeroFirstInstance, + ) proc newVkPhysicalDevicePCIBusInfoPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, pciDomain: uint32, pciBus: uint32, pciDevice: uint32, pciFunction: uint32): VkPhysicalDevicePCIBusInfoPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.pciDomain = pciDomain - result.pciBus = pciBus - result.pciDevice = pciDevice - result.pciFunction = pciFunction + result = VkPhysicalDevicePCIBusInfoPropertiesEXT( + sType: sType, + pNext: pNext, + pciDomain: pciDomain, + pciBus: pciBus, + pciDevice: pciDevice, + pciFunction: pciFunction, + ) proc newVkImportAndroidHardwareBufferInfoANDROID*(sType: VkStructureType, pNext: pointer = nil, buffer: ptr AHardwareBuffer): VkImportAndroidHardwareBufferInfoANDROID = - result.sType = sType - result.pNext = pNext - result.buffer = buffer + result = VkImportAndroidHardwareBufferInfoANDROID( + sType: sType, + pNext: pNext, + buffer: buffer, + ) proc newVkAndroidHardwareBufferUsageANDROID*(sType: VkStructureType, pNext: pointer = nil, androidHardwareBufferUsage: uint64): VkAndroidHardwareBufferUsageANDROID = - result.sType = sType - result.pNext = pNext - result.androidHardwareBufferUsage = androidHardwareBufferUsage + result = VkAndroidHardwareBufferUsageANDROID( + sType: sType, + pNext: pNext, + androidHardwareBufferUsage: androidHardwareBufferUsage, + ) proc newVkAndroidHardwareBufferPropertiesANDROID*(sType: VkStructureType, pNext: pointer = nil, allocationSize: VkDeviceSize, memoryTypeBits: uint32): VkAndroidHardwareBufferPropertiesANDROID = - result.sType = sType - result.pNext = pNext - result.allocationSize = allocationSize - result.memoryTypeBits = memoryTypeBits + result = VkAndroidHardwareBufferPropertiesANDROID( + sType: sType, + pNext: pNext, + allocationSize: allocationSize, + memoryTypeBits: memoryTypeBits, + ) proc newVkMemoryGetAndroidHardwareBufferInfoANDROID*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory): VkMemoryGetAndroidHardwareBufferInfoANDROID = - result.sType = sType - result.pNext = pNext - result.memory = memory + result = VkMemoryGetAndroidHardwareBufferInfoANDROID( + sType: sType, + pNext: pNext, + memory: memory, + ) proc newVkAndroidHardwareBufferFormatPropertiesANDROID*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat, externalFormat: uint64, formatFeatures: VkFormatFeatureFlags, samplerYcbcrConversionComponents: VkComponentMapping, suggestedYcbcrModel: VkSamplerYcbcrModelConversion, suggestedYcbcrRange: VkSamplerYcbcrRange, suggestedXChromaOffset: VkChromaLocation, suggestedYChromaOffset: VkChromaLocation): VkAndroidHardwareBufferFormatPropertiesANDROID = - result.sType = sType - result.pNext = pNext - result.format = format - result.externalFormat = externalFormat - result.formatFeatures = formatFeatures - result.samplerYcbcrConversionComponents = samplerYcbcrConversionComponents - result.suggestedYcbcrModel = suggestedYcbcrModel - result.suggestedYcbcrRange = suggestedYcbcrRange - result.suggestedXChromaOffset = suggestedXChromaOffset - result.suggestedYChromaOffset = suggestedYChromaOffset + result = VkAndroidHardwareBufferFormatPropertiesANDROID( + sType: sType, + pNext: pNext, + format: format, + externalFormat: externalFormat, + formatFeatures: formatFeatures, + samplerYcbcrConversionComponents: samplerYcbcrConversionComponents, + suggestedYcbcrModel: suggestedYcbcrModel, + suggestedYcbcrRange: suggestedYcbcrRange, + suggestedXChromaOffset: suggestedXChromaOffset, + suggestedYChromaOffset: suggestedYChromaOffset, + ) proc newVkCommandBufferInheritanceConditionalRenderingInfoEXT*(sType: VkStructureType, pNext: pointer = nil, conditionalRenderingEnable: VkBool32): VkCommandBufferInheritanceConditionalRenderingInfoEXT = - result.sType = sType - result.pNext = pNext - result.conditionalRenderingEnable = conditionalRenderingEnable + result = VkCommandBufferInheritanceConditionalRenderingInfoEXT( + sType: sType, + pNext: pNext, + conditionalRenderingEnable: conditionalRenderingEnable, + ) proc newVkExternalFormatANDROID*(sType: VkStructureType, pNext: pointer = nil, externalFormat: uint64): VkExternalFormatANDROID = - result.sType = sType - result.pNext = pNext - result.externalFormat = externalFormat + result = VkExternalFormatANDROID( + sType: sType, + pNext: pNext, + externalFormat: externalFormat, + ) proc newVkPhysicalDevice8BitStorageFeatures*(sType: VkStructureType, pNext: pointer = nil, storageBuffer8BitAccess: VkBool32, uniformAndStorageBuffer8BitAccess: VkBool32, storagePushConstant8: VkBool32): VkPhysicalDevice8BitStorageFeatures = - result.sType = sType - result.pNext = pNext - result.storageBuffer8BitAccess = storageBuffer8BitAccess - result.uniformAndStorageBuffer8BitAccess = uniformAndStorageBuffer8BitAccess - result.storagePushConstant8 = storagePushConstant8 + result = VkPhysicalDevice8BitStorageFeatures( + sType: sType, + pNext: pNext, + storageBuffer8BitAccess: storageBuffer8BitAccess, + uniformAndStorageBuffer8BitAccess: uniformAndStorageBuffer8BitAccess, + storagePushConstant8: storagePushConstant8, + ) proc newVkPhysicalDeviceConditionalRenderingFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, conditionalRendering: VkBool32, inheritedConditionalRendering: VkBool32): VkPhysicalDeviceConditionalRenderingFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.conditionalRendering = conditionalRendering - result.inheritedConditionalRendering = inheritedConditionalRendering + result = VkPhysicalDeviceConditionalRenderingFeaturesEXT( + sType: sType, + pNext: pNext, + conditionalRendering: conditionalRendering, + inheritedConditionalRendering: inheritedConditionalRendering, + ) proc newVkPhysicalDeviceVulkanMemoryModelFeatures*(sType: VkStructureType, pNext: pointer = nil, vulkanMemoryModel: VkBool32, vulkanMemoryModelDeviceScope: VkBool32, vulkanMemoryModelAvailabilityVisibilityChains: VkBool32): VkPhysicalDeviceVulkanMemoryModelFeatures = - result.sType = sType - result.pNext = pNext - result.vulkanMemoryModel = vulkanMemoryModel - result.vulkanMemoryModelDeviceScope = vulkanMemoryModelDeviceScope - result.vulkanMemoryModelAvailabilityVisibilityChains = vulkanMemoryModelAvailabilityVisibilityChains + result = VkPhysicalDeviceVulkanMemoryModelFeatures( + sType: sType, + pNext: pNext, + vulkanMemoryModel: vulkanMemoryModel, + vulkanMemoryModelDeviceScope: vulkanMemoryModelDeviceScope, + vulkanMemoryModelAvailabilityVisibilityChains: vulkanMemoryModelAvailabilityVisibilityChains, + ) proc newVkPhysicalDeviceShaderAtomicInt64Features*(sType: VkStructureType, pNext: pointer = nil, shaderBufferInt64Atomics: VkBool32, shaderSharedInt64Atomics: VkBool32): VkPhysicalDeviceShaderAtomicInt64Features = - result.sType = sType - result.pNext = pNext - result.shaderBufferInt64Atomics = shaderBufferInt64Atomics - result.shaderSharedInt64Atomics = shaderSharedInt64Atomics + result = VkPhysicalDeviceShaderAtomicInt64Features( + sType: sType, + pNext: pNext, + shaderBufferInt64Atomics: shaderBufferInt64Atomics, + shaderSharedInt64Atomics: shaderSharedInt64Atomics, + ) proc newVkPhysicalDeviceShaderAtomicFloatFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderBufferFloat32Atomics: VkBool32, shaderBufferFloat32AtomicAdd: VkBool32, shaderBufferFloat64Atomics: VkBool32, shaderBufferFloat64AtomicAdd: VkBool32, shaderSharedFloat32Atomics: VkBool32, shaderSharedFloat32AtomicAdd: VkBool32, shaderSharedFloat64Atomics: VkBool32, shaderSharedFloat64AtomicAdd: VkBool32, shaderImageFloat32Atomics: VkBool32, shaderImageFloat32AtomicAdd: VkBool32, sparseImageFloat32Atomics: VkBool32, sparseImageFloat32AtomicAdd: VkBool32): VkPhysicalDeviceShaderAtomicFloatFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.shaderBufferFloat32Atomics = shaderBufferFloat32Atomics - result.shaderBufferFloat32AtomicAdd = shaderBufferFloat32AtomicAdd - result.shaderBufferFloat64Atomics = shaderBufferFloat64Atomics - result.shaderBufferFloat64AtomicAdd = shaderBufferFloat64AtomicAdd - result.shaderSharedFloat32Atomics = shaderSharedFloat32Atomics - result.shaderSharedFloat32AtomicAdd = shaderSharedFloat32AtomicAdd - result.shaderSharedFloat64Atomics = shaderSharedFloat64Atomics - result.shaderSharedFloat64AtomicAdd = shaderSharedFloat64AtomicAdd - result.shaderImageFloat32Atomics = shaderImageFloat32Atomics - result.shaderImageFloat32AtomicAdd = shaderImageFloat32AtomicAdd - result.sparseImageFloat32Atomics = sparseImageFloat32Atomics - result.sparseImageFloat32AtomicAdd = sparseImageFloat32AtomicAdd + result = VkPhysicalDeviceShaderAtomicFloatFeaturesEXT( + sType: sType, + pNext: pNext, + shaderBufferFloat32Atomics: shaderBufferFloat32Atomics, + shaderBufferFloat32AtomicAdd: shaderBufferFloat32AtomicAdd, + shaderBufferFloat64Atomics: shaderBufferFloat64Atomics, + shaderBufferFloat64AtomicAdd: shaderBufferFloat64AtomicAdd, + shaderSharedFloat32Atomics: shaderSharedFloat32Atomics, + shaderSharedFloat32AtomicAdd: shaderSharedFloat32AtomicAdd, + shaderSharedFloat64Atomics: shaderSharedFloat64Atomics, + shaderSharedFloat64AtomicAdd: shaderSharedFloat64AtomicAdd, + shaderImageFloat32Atomics: shaderImageFloat32Atomics, + shaderImageFloat32AtomicAdd: shaderImageFloat32AtomicAdd, + sparseImageFloat32Atomics: sparseImageFloat32Atomics, + sparseImageFloat32AtomicAdd: sparseImageFloat32AtomicAdd, + ) proc newVkPhysicalDeviceShaderAtomicFloat2FeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderBufferFloat16Atomics: VkBool32, shaderBufferFloat16AtomicAdd: VkBool32, shaderBufferFloat16AtomicMinMax: VkBool32, shaderBufferFloat32AtomicMinMax: VkBool32, shaderBufferFloat64AtomicMinMax: VkBool32, shaderSharedFloat16Atomics: VkBool32, shaderSharedFloat16AtomicAdd: VkBool32, shaderSharedFloat16AtomicMinMax: VkBool32, shaderSharedFloat32AtomicMinMax: VkBool32, shaderSharedFloat64AtomicMinMax: VkBool32, shaderImageFloat32AtomicMinMax: VkBool32, sparseImageFloat32AtomicMinMax: VkBool32): VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT = - result.sType = sType - result.pNext = pNext - result.shaderBufferFloat16Atomics = shaderBufferFloat16Atomics - result.shaderBufferFloat16AtomicAdd = shaderBufferFloat16AtomicAdd - result.shaderBufferFloat16AtomicMinMax = shaderBufferFloat16AtomicMinMax - result.shaderBufferFloat32AtomicMinMax = shaderBufferFloat32AtomicMinMax - result.shaderBufferFloat64AtomicMinMax = shaderBufferFloat64AtomicMinMax - result.shaderSharedFloat16Atomics = shaderSharedFloat16Atomics - result.shaderSharedFloat16AtomicAdd = shaderSharedFloat16AtomicAdd - result.shaderSharedFloat16AtomicMinMax = shaderSharedFloat16AtomicMinMax - result.shaderSharedFloat32AtomicMinMax = shaderSharedFloat32AtomicMinMax - result.shaderSharedFloat64AtomicMinMax = shaderSharedFloat64AtomicMinMax - result.shaderImageFloat32AtomicMinMax = shaderImageFloat32AtomicMinMax - result.sparseImageFloat32AtomicMinMax = sparseImageFloat32AtomicMinMax + result = VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT( + sType: sType, + pNext: pNext, + shaderBufferFloat16Atomics: shaderBufferFloat16Atomics, + shaderBufferFloat16AtomicAdd: shaderBufferFloat16AtomicAdd, + shaderBufferFloat16AtomicMinMax: shaderBufferFloat16AtomicMinMax, + shaderBufferFloat32AtomicMinMax: shaderBufferFloat32AtomicMinMax, + shaderBufferFloat64AtomicMinMax: shaderBufferFloat64AtomicMinMax, + shaderSharedFloat16Atomics: shaderSharedFloat16Atomics, + shaderSharedFloat16AtomicAdd: shaderSharedFloat16AtomicAdd, + shaderSharedFloat16AtomicMinMax: shaderSharedFloat16AtomicMinMax, + shaderSharedFloat32AtomicMinMax: shaderSharedFloat32AtomicMinMax, + shaderSharedFloat64AtomicMinMax: shaderSharedFloat64AtomicMinMax, + shaderImageFloat32AtomicMinMax: shaderImageFloat32AtomicMinMax, + sparseImageFloat32AtomicMinMax: sparseImageFloat32AtomicMinMax, + ) proc newVkPhysicalDeviceVertexAttributeDivisorFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, vertexAttributeInstanceRateDivisor: VkBool32, vertexAttributeInstanceRateZeroDivisor: VkBool32): VkPhysicalDeviceVertexAttributeDivisorFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.vertexAttributeInstanceRateDivisor = vertexAttributeInstanceRateDivisor - result.vertexAttributeInstanceRateZeroDivisor = vertexAttributeInstanceRateZeroDivisor + result = VkPhysicalDeviceVertexAttributeDivisorFeaturesKHR( + sType: sType, + pNext: pNext, + vertexAttributeInstanceRateDivisor: vertexAttributeInstanceRateDivisor, + vertexAttributeInstanceRateZeroDivisor: vertexAttributeInstanceRateZeroDivisor, + ) proc newVkQueueFamilyCheckpointPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, checkpointExecutionStageMask: VkPipelineStageFlags): VkQueueFamilyCheckpointPropertiesNV = - result.sType = sType - result.pNext = pNext - result.checkpointExecutionStageMask = checkpointExecutionStageMask + result = VkQueueFamilyCheckpointPropertiesNV( + sType: sType, + pNext: pNext, + checkpointExecutionStageMask: checkpointExecutionStageMask, + ) proc newVkCheckpointDataNV*(sType: VkStructureType, pNext: pointer = nil, stage: VkPipelineStageFlagBits, pCheckpointMarker: pointer = nil): VkCheckpointDataNV = - result.sType = sType - result.pNext = pNext - result.stage = stage - result.pCheckpointMarker = pCheckpointMarker + result = VkCheckpointDataNV( + sType: sType, + pNext: pNext, + stage: stage, + pCheckpointMarker: pCheckpointMarker, + ) proc newVkPhysicalDeviceDepthStencilResolveProperties*(sType: VkStructureType, pNext: pointer = nil, supportedDepthResolveModes: VkResolveModeFlags, supportedStencilResolveModes: VkResolveModeFlags, independentResolveNone: VkBool32, independentResolve: VkBool32): VkPhysicalDeviceDepthStencilResolveProperties = - result.sType = sType - result.pNext = pNext - result.supportedDepthResolveModes = supportedDepthResolveModes - result.supportedStencilResolveModes = supportedStencilResolveModes - result.independentResolveNone = independentResolveNone - result.independentResolve = independentResolve + result = VkPhysicalDeviceDepthStencilResolveProperties( + sType: sType, + pNext: pNext, + supportedDepthResolveModes: supportedDepthResolveModes, + supportedStencilResolveModes: supportedStencilResolveModes, + independentResolveNone: independentResolveNone, + independentResolve: independentResolve, + ) proc newVkSubpassDescriptionDepthStencilResolve*(sType: VkStructureType, pNext: pointer = nil, depthResolveMode: VkResolveModeFlagBits, stencilResolveMode: VkResolveModeFlagBits, pDepthStencilResolveAttachment: ptr VkAttachmentReference2): VkSubpassDescriptionDepthStencilResolve = - result.sType = sType - result.pNext = pNext - result.depthResolveMode = depthResolveMode - result.stencilResolveMode = stencilResolveMode - result.pDepthStencilResolveAttachment = pDepthStencilResolveAttachment + result = VkSubpassDescriptionDepthStencilResolve( + sType: sType, + pNext: pNext, + depthResolveMode: depthResolveMode, + stencilResolveMode: stencilResolveMode, + pDepthStencilResolveAttachment: pDepthStencilResolveAttachment, + ) proc newVkImageViewASTCDecodeModeEXT*(sType: VkStructureType, pNext: pointer = nil, decodeMode: VkFormat): VkImageViewASTCDecodeModeEXT = - result.sType = sType - result.pNext = pNext - result.decodeMode = decodeMode + result = VkImageViewASTCDecodeModeEXT( + sType: sType, + pNext: pNext, + decodeMode: decodeMode, + ) proc newVkPhysicalDeviceASTCDecodeFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, decodeModeSharedExponent: VkBool32): VkPhysicalDeviceASTCDecodeFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.decodeModeSharedExponent = decodeModeSharedExponent + result = VkPhysicalDeviceASTCDecodeFeaturesEXT( + sType: sType, + pNext: pNext, + decodeModeSharedExponent: decodeModeSharedExponent, + ) proc newVkPhysicalDeviceTransformFeedbackFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, transformFeedback: VkBool32, geometryStreams: VkBool32): VkPhysicalDeviceTransformFeedbackFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.transformFeedback = transformFeedback - result.geometryStreams = geometryStreams + result = VkPhysicalDeviceTransformFeedbackFeaturesEXT( + sType: sType, + pNext: pNext, + transformFeedback: transformFeedback, + geometryStreams: geometryStreams, + ) proc newVkPhysicalDeviceTransformFeedbackPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxTransformFeedbackStreams: uint32, maxTransformFeedbackBuffers: uint32, maxTransformFeedbackBufferSize: VkDeviceSize, maxTransformFeedbackStreamDataSize: uint32, maxTransformFeedbackBufferDataSize: uint32, maxTransformFeedbackBufferDataStride: uint32, transformFeedbackQueries: VkBool32, transformFeedbackStreamsLinesTriangles: VkBool32, transformFeedbackRasterizationStreamSelect: VkBool32, transformFeedbackDraw: VkBool32): VkPhysicalDeviceTransformFeedbackPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.maxTransformFeedbackStreams = maxTransformFeedbackStreams - result.maxTransformFeedbackBuffers = maxTransformFeedbackBuffers - result.maxTransformFeedbackBufferSize = maxTransformFeedbackBufferSize - result.maxTransformFeedbackStreamDataSize = maxTransformFeedbackStreamDataSize - result.maxTransformFeedbackBufferDataSize = maxTransformFeedbackBufferDataSize - result.maxTransformFeedbackBufferDataStride = maxTransformFeedbackBufferDataStride - result.transformFeedbackQueries = transformFeedbackQueries - result.transformFeedbackStreamsLinesTriangles = transformFeedbackStreamsLinesTriangles - result.transformFeedbackRasterizationStreamSelect = transformFeedbackRasterizationStreamSelect - result.transformFeedbackDraw = transformFeedbackDraw + result = VkPhysicalDeviceTransformFeedbackPropertiesEXT( + sType: sType, + pNext: pNext, + maxTransformFeedbackStreams: maxTransformFeedbackStreams, + maxTransformFeedbackBuffers: maxTransformFeedbackBuffers, + maxTransformFeedbackBufferSize: maxTransformFeedbackBufferSize, + maxTransformFeedbackStreamDataSize: maxTransformFeedbackStreamDataSize, + maxTransformFeedbackBufferDataSize: maxTransformFeedbackBufferDataSize, + maxTransformFeedbackBufferDataStride: maxTransformFeedbackBufferDataStride, + transformFeedbackQueries: transformFeedbackQueries, + transformFeedbackStreamsLinesTriangles: transformFeedbackStreamsLinesTriangles, + transformFeedbackRasterizationStreamSelect: transformFeedbackRasterizationStreamSelect, + transformFeedbackDraw: transformFeedbackDraw, + ) proc newVkPipelineRasterizationStateStreamCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineRasterizationStateStreamCreateFlagsEXT = 0.VkPipelineRasterizationStateStreamCreateFlagsEXT, rasterizationStream: uint32): VkPipelineRasterizationStateStreamCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.rasterizationStream = rasterizationStream + result = VkPipelineRasterizationStateStreamCreateInfoEXT( + sType: sType, + pNext: pNext, + flags: flags, + rasterizationStream: rasterizationStream, + ) proc newVkPhysicalDeviceRepresentativeFragmentTestFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, representativeFragmentTest: VkBool32): VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV = - result.sType = sType - result.pNext = pNext - result.representativeFragmentTest = representativeFragmentTest + result = VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV( + sType: sType, + pNext: pNext, + representativeFragmentTest: representativeFragmentTest, + ) proc newVkPipelineRepresentativeFragmentTestStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, representativeFragmentTestEnable: VkBool32): VkPipelineRepresentativeFragmentTestStateCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.representativeFragmentTestEnable = representativeFragmentTestEnable + result = VkPipelineRepresentativeFragmentTestStateCreateInfoNV( + sType: sType, + pNext: pNext, + representativeFragmentTestEnable: representativeFragmentTestEnable, + ) proc newVkPhysicalDeviceExclusiveScissorFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, exclusiveScissor: VkBool32): VkPhysicalDeviceExclusiveScissorFeaturesNV = - result.sType = sType - result.pNext = pNext - result.exclusiveScissor = exclusiveScissor + result = VkPhysicalDeviceExclusiveScissorFeaturesNV( + sType: sType, + pNext: pNext, + exclusiveScissor: exclusiveScissor, + ) proc newVkPipelineViewportExclusiveScissorStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, exclusiveScissorCount: uint32, pExclusiveScissors: ptr VkRect2D): VkPipelineViewportExclusiveScissorStateCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.exclusiveScissorCount = exclusiveScissorCount - result.pExclusiveScissors = pExclusiveScissors + result = VkPipelineViewportExclusiveScissorStateCreateInfoNV( + sType: sType, + pNext: pNext, + exclusiveScissorCount: exclusiveScissorCount, + pExclusiveScissors: pExclusiveScissors, + ) proc newVkPhysicalDeviceCornerSampledImageFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, cornerSampledImage: VkBool32): VkPhysicalDeviceCornerSampledImageFeaturesNV = - result.sType = sType - result.pNext = pNext - result.cornerSampledImage = cornerSampledImage + result = VkPhysicalDeviceCornerSampledImageFeaturesNV( + sType: sType, + pNext: pNext, + cornerSampledImage: cornerSampledImage, + ) proc newVkPhysicalDeviceComputeShaderDerivativesFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, computeDerivativeGroupQuads: VkBool32, computeDerivativeGroupLinear: VkBool32): VkPhysicalDeviceComputeShaderDerivativesFeaturesNV = - result.sType = sType - result.pNext = pNext - result.computeDerivativeGroupQuads = computeDerivativeGroupQuads - result.computeDerivativeGroupLinear = computeDerivativeGroupLinear + result = VkPhysicalDeviceComputeShaderDerivativesFeaturesNV( + sType: sType, + pNext: pNext, + computeDerivativeGroupQuads: computeDerivativeGroupQuads, + computeDerivativeGroupLinear: computeDerivativeGroupLinear, + ) proc newVkPhysicalDeviceShaderImageFootprintFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, imageFootprint: VkBool32): VkPhysicalDeviceShaderImageFootprintFeaturesNV = - result.sType = sType - result.pNext = pNext - result.imageFootprint = imageFootprint + result = VkPhysicalDeviceShaderImageFootprintFeaturesNV( + sType: sType, + pNext: pNext, + imageFootprint: imageFootprint, + ) proc newVkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, dedicatedAllocationImageAliasing: VkBool32): VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV = - result.sType = sType - result.pNext = pNext - result.dedicatedAllocationImageAliasing = dedicatedAllocationImageAliasing + result = VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV( + sType: sType, + pNext: pNext, + dedicatedAllocationImageAliasing: dedicatedAllocationImageAliasing, + ) proc newVkPhysicalDeviceCopyMemoryIndirectFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, indirectCopy: VkBool32): VkPhysicalDeviceCopyMemoryIndirectFeaturesNV = - result.sType = sType - result.pNext = pNext - result.indirectCopy = indirectCopy + result = VkPhysicalDeviceCopyMemoryIndirectFeaturesNV( + sType: sType, + pNext: pNext, + indirectCopy: indirectCopy, + ) proc newVkPhysicalDeviceCopyMemoryIndirectPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, supportedQueues: VkQueueFlags): VkPhysicalDeviceCopyMemoryIndirectPropertiesNV = - result.sType = sType - result.pNext = pNext - result.supportedQueues = supportedQueues + result = VkPhysicalDeviceCopyMemoryIndirectPropertiesNV( + sType: sType, + pNext: pNext, + supportedQueues: supportedQueues, + ) proc newVkPhysicalDeviceMemoryDecompressionFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, memoryDecompression: VkBool32): VkPhysicalDeviceMemoryDecompressionFeaturesNV = - result.sType = sType - result.pNext = pNext - result.memoryDecompression = memoryDecompression + result = VkPhysicalDeviceMemoryDecompressionFeaturesNV( + sType: sType, + pNext: pNext, + memoryDecompression: memoryDecompression, + ) proc newVkPhysicalDeviceMemoryDecompressionPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, decompressionMethods: VkMemoryDecompressionMethodFlagsNV, maxDecompressionIndirectCount: uint64): VkPhysicalDeviceMemoryDecompressionPropertiesNV = - result.sType = sType - result.pNext = pNext - result.decompressionMethods = decompressionMethods - result.maxDecompressionIndirectCount = maxDecompressionIndirectCount + result = VkPhysicalDeviceMemoryDecompressionPropertiesNV( + sType: sType, + pNext: pNext, + decompressionMethods: decompressionMethods, + maxDecompressionIndirectCount: maxDecompressionIndirectCount, + ) proc newVkShadingRatePaletteNV*(shadingRatePaletteEntryCount: uint32, pShadingRatePaletteEntries: ptr VkShadingRatePaletteEntryNV): VkShadingRatePaletteNV = - result.shadingRatePaletteEntryCount = shadingRatePaletteEntryCount - result.pShadingRatePaletteEntries = pShadingRatePaletteEntries + result = VkShadingRatePaletteNV( + shadingRatePaletteEntryCount: shadingRatePaletteEntryCount, + pShadingRatePaletteEntries: pShadingRatePaletteEntries, + ) proc newVkPipelineViewportShadingRateImageStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, shadingRateImageEnable: VkBool32, viewportCount: uint32, pShadingRatePalettes: ptr VkShadingRatePaletteNV): VkPipelineViewportShadingRateImageStateCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.shadingRateImageEnable = shadingRateImageEnable - result.viewportCount = viewportCount - result.pShadingRatePalettes = pShadingRatePalettes + result = VkPipelineViewportShadingRateImageStateCreateInfoNV( + sType: sType, + pNext: pNext, + shadingRateImageEnable: shadingRateImageEnable, + viewportCount: viewportCount, + pShadingRatePalettes: pShadingRatePalettes, + ) proc newVkPhysicalDeviceShadingRateImageFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, shadingRateImage: VkBool32, shadingRateCoarseSampleOrder: VkBool32): VkPhysicalDeviceShadingRateImageFeaturesNV = - result.sType = sType - result.pNext = pNext - result.shadingRateImage = shadingRateImage - result.shadingRateCoarseSampleOrder = shadingRateCoarseSampleOrder + result = VkPhysicalDeviceShadingRateImageFeaturesNV( + sType: sType, + pNext: pNext, + shadingRateImage: shadingRateImage, + shadingRateCoarseSampleOrder: shadingRateCoarseSampleOrder, + ) proc newVkPhysicalDeviceShadingRateImagePropertiesNV*(sType: VkStructureType, pNext: pointer = nil, shadingRateTexelSize: VkExtent2D, shadingRatePaletteSize: uint32, shadingRateMaxCoarseSamples: uint32): VkPhysicalDeviceShadingRateImagePropertiesNV = - result.sType = sType - result.pNext = pNext - result.shadingRateTexelSize = shadingRateTexelSize - result.shadingRatePaletteSize = shadingRatePaletteSize - result.shadingRateMaxCoarseSamples = shadingRateMaxCoarseSamples + result = VkPhysicalDeviceShadingRateImagePropertiesNV( + sType: sType, + pNext: pNext, + shadingRateTexelSize: shadingRateTexelSize, + shadingRatePaletteSize: shadingRatePaletteSize, + shadingRateMaxCoarseSamples: shadingRateMaxCoarseSamples, + ) proc newVkPhysicalDeviceInvocationMaskFeaturesHUAWEI*(sType: VkStructureType, pNext: pointer = nil, invocationMask: VkBool32): VkPhysicalDeviceInvocationMaskFeaturesHUAWEI = - result.sType = sType - result.pNext = pNext - result.invocationMask = invocationMask + result = VkPhysicalDeviceInvocationMaskFeaturesHUAWEI( + sType: sType, + pNext: pNext, + invocationMask: invocationMask, + ) proc newVkCoarseSampleLocationNV*(pixelX: uint32, pixelY: uint32, sample: uint32): VkCoarseSampleLocationNV = - result.pixelX = pixelX - result.pixelY = pixelY - result.sample = sample + result = VkCoarseSampleLocationNV( + pixelX: pixelX, + pixelY: pixelY, + sample: sample, + ) proc newVkCoarseSampleOrderCustomNV*(shadingRate: VkShadingRatePaletteEntryNV, sampleCount: uint32, sampleLocationCount: uint32, pSampleLocations: ptr VkCoarseSampleLocationNV): VkCoarseSampleOrderCustomNV = - result.shadingRate = shadingRate - result.sampleCount = sampleCount - result.sampleLocationCount = sampleLocationCount - result.pSampleLocations = pSampleLocations + result = VkCoarseSampleOrderCustomNV( + shadingRate: shadingRate, + sampleCount: sampleCount, + sampleLocationCount: sampleLocationCount, + pSampleLocations: pSampleLocations, + ) proc newVkPipelineViewportCoarseSampleOrderStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, sampleOrderType: VkCoarseSampleOrderTypeNV, customSampleOrderCount: uint32, pCustomSampleOrders: ptr VkCoarseSampleOrderCustomNV): VkPipelineViewportCoarseSampleOrderStateCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.sampleOrderType = sampleOrderType - result.customSampleOrderCount = customSampleOrderCount - result.pCustomSampleOrders = pCustomSampleOrders + result = VkPipelineViewportCoarseSampleOrderStateCreateInfoNV( + sType: sType, + pNext: pNext, + sampleOrderType: sampleOrderType, + customSampleOrderCount: customSampleOrderCount, + pCustomSampleOrders: pCustomSampleOrders, + ) proc newVkPhysicalDeviceMeshShaderFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, taskShader: VkBool32, meshShader: VkBool32): VkPhysicalDeviceMeshShaderFeaturesNV = - result.sType = sType - result.pNext = pNext - result.taskShader = taskShader - result.meshShader = meshShader + result = VkPhysicalDeviceMeshShaderFeaturesNV( + sType: sType, + pNext: pNext, + taskShader: taskShader, + meshShader: meshShader, + ) proc newVkPhysicalDeviceMeshShaderPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, maxDrawMeshTasksCount: uint32, maxTaskWorkGroupInvocations: uint32, maxTaskWorkGroupSize: array[3, uint32], maxTaskTotalMemorySize: uint32, maxTaskOutputCount: uint32, maxMeshWorkGroupInvocations: uint32, maxMeshWorkGroupSize: array[3, uint32], maxMeshTotalMemorySize: uint32, maxMeshOutputVertices: uint32, maxMeshOutputPrimitives: uint32, maxMeshMultiviewViewCount: uint32, meshOutputPerVertexGranularity: uint32, meshOutputPerPrimitiveGranularity: uint32): VkPhysicalDeviceMeshShaderPropertiesNV = - result.sType = sType - result.pNext = pNext - result.maxDrawMeshTasksCount = maxDrawMeshTasksCount - result.maxTaskWorkGroupInvocations = maxTaskWorkGroupInvocations - result.maxTaskWorkGroupSize = maxTaskWorkGroupSize - result.maxTaskTotalMemorySize = maxTaskTotalMemorySize - result.maxTaskOutputCount = maxTaskOutputCount - result.maxMeshWorkGroupInvocations = maxMeshWorkGroupInvocations - result.maxMeshWorkGroupSize = maxMeshWorkGroupSize - result.maxMeshTotalMemorySize = maxMeshTotalMemorySize - result.maxMeshOutputVertices = maxMeshOutputVertices - result.maxMeshOutputPrimitives = maxMeshOutputPrimitives - result.maxMeshMultiviewViewCount = maxMeshMultiviewViewCount - result.meshOutputPerVertexGranularity = meshOutputPerVertexGranularity - result.meshOutputPerPrimitiveGranularity = meshOutputPerPrimitiveGranularity + result = VkPhysicalDeviceMeshShaderPropertiesNV( + sType: sType, + pNext: pNext, + maxDrawMeshTasksCount: maxDrawMeshTasksCount, + maxTaskWorkGroupInvocations: maxTaskWorkGroupInvocations, + maxTaskWorkGroupSize: maxTaskWorkGroupSize, + maxTaskTotalMemorySize: maxTaskTotalMemorySize, + maxTaskOutputCount: maxTaskOutputCount, + maxMeshWorkGroupInvocations: maxMeshWorkGroupInvocations, + maxMeshWorkGroupSize: maxMeshWorkGroupSize, + maxMeshTotalMemorySize: maxMeshTotalMemorySize, + maxMeshOutputVertices: maxMeshOutputVertices, + maxMeshOutputPrimitives: maxMeshOutputPrimitives, + maxMeshMultiviewViewCount: maxMeshMultiviewViewCount, + meshOutputPerVertexGranularity: meshOutputPerVertexGranularity, + meshOutputPerPrimitiveGranularity: meshOutputPerPrimitiveGranularity, + ) proc newVkDrawMeshTasksIndirectCommandNV*(taskCount: uint32, firstTask: uint32): VkDrawMeshTasksIndirectCommandNV = - result.taskCount = taskCount - result.firstTask = firstTask + result = VkDrawMeshTasksIndirectCommandNV( + taskCount: taskCount, + firstTask: firstTask, + ) proc newVkPhysicalDeviceMeshShaderFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, taskShader: VkBool32, meshShader: VkBool32, multiviewMeshShader: VkBool32, primitiveFragmentShadingRateMeshShader: VkBool32, meshShaderQueries: VkBool32): VkPhysicalDeviceMeshShaderFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.taskShader = taskShader - result.meshShader = meshShader - result.multiviewMeshShader = multiviewMeshShader - result.primitiveFragmentShadingRateMeshShader = primitiveFragmentShadingRateMeshShader - result.meshShaderQueries = meshShaderQueries + result = VkPhysicalDeviceMeshShaderFeaturesEXT( + sType: sType, + pNext: pNext, + taskShader: taskShader, + meshShader: meshShader, + multiviewMeshShader: multiviewMeshShader, + primitiveFragmentShadingRateMeshShader: primitiveFragmentShadingRateMeshShader, + meshShaderQueries: meshShaderQueries, + ) proc newVkPhysicalDeviceMeshShaderPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxTaskWorkGroupTotalCount: uint32, maxTaskWorkGroupCount: array[3, uint32], maxTaskWorkGroupInvocations: uint32, maxTaskWorkGroupSize: array[3, uint32], maxTaskPayloadSize: uint32, maxTaskSharedMemorySize: uint32, maxTaskPayloadAndSharedMemorySize: uint32, maxMeshWorkGroupTotalCount: uint32, maxMeshWorkGroupCount: array[3, uint32], maxMeshWorkGroupInvocations: uint32, maxMeshWorkGroupSize: array[3, uint32], maxMeshSharedMemorySize: uint32, maxMeshPayloadAndSharedMemorySize: uint32, maxMeshOutputMemorySize: uint32, maxMeshPayloadAndOutputMemorySize: uint32, maxMeshOutputComponents: uint32, maxMeshOutputVertices: uint32, maxMeshOutputPrimitives: uint32, maxMeshOutputLayers: uint32, maxMeshMultiviewViewCount: uint32, meshOutputPerVertexGranularity: uint32, meshOutputPerPrimitiveGranularity: uint32, maxPreferredTaskWorkGroupInvocations: uint32, maxPreferredMeshWorkGroupInvocations: uint32, prefersLocalInvocationVertexOutput: VkBool32, prefersLocalInvocationPrimitiveOutput: VkBool32, prefersCompactVertexOutput: VkBool32, prefersCompactPrimitiveOutput: VkBool32): VkPhysicalDeviceMeshShaderPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.maxTaskWorkGroupTotalCount = maxTaskWorkGroupTotalCount - result.maxTaskWorkGroupCount = maxTaskWorkGroupCount - result.maxTaskWorkGroupInvocations = maxTaskWorkGroupInvocations - result.maxTaskWorkGroupSize = maxTaskWorkGroupSize - result.maxTaskPayloadSize = maxTaskPayloadSize - result.maxTaskSharedMemorySize = maxTaskSharedMemorySize - result.maxTaskPayloadAndSharedMemorySize = maxTaskPayloadAndSharedMemorySize - result.maxMeshWorkGroupTotalCount = maxMeshWorkGroupTotalCount - result.maxMeshWorkGroupCount = maxMeshWorkGroupCount - result.maxMeshWorkGroupInvocations = maxMeshWorkGroupInvocations - result.maxMeshWorkGroupSize = maxMeshWorkGroupSize - result.maxMeshSharedMemorySize = maxMeshSharedMemorySize - result.maxMeshPayloadAndSharedMemorySize = maxMeshPayloadAndSharedMemorySize - result.maxMeshOutputMemorySize = maxMeshOutputMemorySize - result.maxMeshPayloadAndOutputMemorySize = maxMeshPayloadAndOutputMemorySize - result.maxMeshOutputComponents = maxMeshOutputComponents - result.maxMeshOutputVertices = maxMeshOutputVertices - result.maxMeshOutputPrimitives = maxMeshOutputPrimitives - result.maxMeshOutputLayers = maxMeshOutputLayers - result.maxMeshMultiviewViewCount = maxMeshMultiviewViewCount - result.meshOutputPerVertexGranularity = meshOutputPerVertexGranularity - result.meshOutputPerPrimitiveGranularity = meshOutputPerPrimitiveGranularity - result.maxPreferredTaskWorkGroupInvocations = maxPreferredTaskWorkGroupInvocations - result.maxPreferredMeshWorkGroupInvocations = maxPreferredMeshWorkGroupInvocations - result.prefersLocalInvocationVertexOutput = prefersLocalInvocationVertexOutput - result.prefersLocalInvocationPrimitiveOutput = prefersLocalInvocationPrimitiveOutput - result.prefersCompactVertexOutput = prefersCompactVertexOutput - result.prefersCompactPrimitiveOutput = prefersCompactPrimitiveOutput + result = VkPhysicalDeviceMeshShaderPropertiesEXT( + sType: sType, + pNext: pNext, + maxTaskWorkGroupTotalCount: maxTaskWorkGroupTotalCount, + maxTaskWorkGroupCount: maxTaskWorkGroupCount, + maxTaskWorkGroupInvocations: maxTaskWorkGroupInvocations, + maxTaskWorkGroupSize: maxTaskWorkGroupSize, + maxTaskPayloadSize: maxTaskPayloadSize, + maxTaskSharedMemorySize: maxTaskSharedMemorySize, + maxTaskPayloadAndSharedMemorySize: maxTaskPayloadAndSharedMemorySize, + maxMeshWorkGroupTotalCount: maxMeshWorkGroupTotalCount, + maxMeshWorkGroupCount: maxMeshWorkGroupCount, + maxMeshWorkGroupInvocations: maxMeshWorkGroupInvocations, + maxMeshWorkGroupSize: maxMeshWorkGroupSize, + maxMeshSharedMemorySize: maxMeshSharedMemorySize, + maxMeshPayloadAndSharedMemorySize: maxMeshPayloadAndSharedMemorySize, + maxMeshOutputMemorySize: maxMeshOutputMemorySize, + maxMeshPayloadAndOutputMemorySize: maxMeshPayloadAndOutputMemorySize, + maxMeshOutputComponents: maxMeshOutputComponents, + maxMeshOutputVertices: maxMeshOutputVertices, + maxMeshOutputPrimitives: maxMeshOutputPrimitives, + maxMeshOutputLayers: maxMeshOutputLayers, + maxMeshMultiviewViewCount: maxMeshMultiviewViewCount, + meshOutputPerVertexGranularity: meshOutputPerVertexGranularity, + meshOutputPerPrimitiveGranularity: meshOutputPerPrimitiveGranularity, + maxPreferredTaskWorkGroupInvocations: maxPreferredTaskWorkGroupInvocations, + maxPreferredMeshWorkGroupInvocations: maxPreferredMeshWorkGroupInvocations, + prefersLocalInvocationVertexOutput: prefersLocalInvocationVertexOutput, + prefersLocalInvocationPrimitiveOutput: prefersLocalInvocationPrimitiveOutput, + prefersCompactVertexOutput: prefersCompactVertexOutput, + prefersCompactPrimitiveOutput: prefersCompactPrimitiveOutput, + ) proc newVkDrawMeshTasksIndirectCommandEXT*(groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): VkDrawMeshTasksIndirectCommandEXT = - result.groupCountX = groupCountX - result.groupCountY = groupCountY - result.groupCountZ = groupCountZ + result = VkDrawMeshTasksIndirectCommandEXT( + groupCountX: groupCountX, + groupCountY: groupCountY, + groupCountZ: groupCountZ, + ) proc newVkRayTracingShaderGroupCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, `type`: VkRayTracingShaderGroupTypeKHR, generalShader: uint32, closestHitShader: uint32, anyHitShader: uint32, intersectionShader: uint32): VkRayTracingShaderGroupCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.`type` = `type` - result.generalShader = generalShader - result.closestHitShader = closestHitShader - result.anyHitShader = anyHitShader - result.intersectionShader = intersectionShader + result = VkRayTracingShaderGroupCreateInfoNV( + sType: sType, + pNext: pNext, + `type`: `type`, + generalShader: generalShader, + closestHitShader: closestHitShader, + anyHitShader: anyHitShader, + intersectionShader: intersectionShader, + ) proc newVkRayTracingShaderGroupCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, `type`: VkRayTracingShaderGroupTypeKHR, generalShader: uint32, closestHitShader: uint32, anyHitShader: uint32, intersectionShader: uint32, pShaderGroupCaptureReplayHandle: pointer = nil): VkRayTracingShaderGroupCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.`type` = `type` - result.generalShader = generalShader - result.closestHitShader = closestHitShader - result.anyHitShader = anyHitShader - result.intersectionShader = intersectionShader - result.pShaderGroupCaptureReplayHandle = pShaderGroupCaptureReplayHandle + result = VkRayTracingShaderGroupCreateInfoKHR( + sType: sType, + pNext: pNext, + `type`: `type`, + generalShader: generalShader, + closestHitShader: closestHitShader, + anyHitShader: anyHitShader, + intersectionShader: intersectionShader, + pShaderGroupCaptureReplayHandle: pShaderGroupCaptureReplayHandle, + ) proc newVkRayTracingPipelineCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, groupCount: uint32, pGroups: ptr VkRayTracingShaderGroupCreateInfoNV, maxRecursionDepth: uint32, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkRayTracingPipelineCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.stageCount = stageCount - result.pStages = pStages - result.groupCount = groupCount - result.pGroups = pGroups - result.maxRecursionDepth = maxRecursionDepth - result.layout = layout - result.basePipelineHandle = basePipelineHandle - result.basePipelineIndex = basePipelineIndex + result = VkRayTracingPipelineCreateInfoNV( + sType: sType, + pNext: pNext, + flags: flags, + stageCount: stageCount, + pStages: pStages, + groupCount: groupCount, + pGroups: pGroups, + maxRecursionDepth: maxRecursionDepth, + layout: layout, + basePipelineHandle: basePipelineHandle, + basePipelineIndex: basePipelineIndex, + ) proc newVkRayTracingPipelineCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, groupCount: uint32, pGroups: ptr VkRayTracingShaderGroupCreateInfoKHR, maxPipelineRayRecursionDepth: uint32, pLibraryInfo: ptr VkPipelineLibraryCreateInfoKHR, pLibraryInterface: ptr VkRayTracingPipelineInterfaceCreateInfoKHR, pDynamicState: ptr VkPipelineDynamicStateCreateInfo, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkRayTracingPipelineCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.stageCount = stageCount - result.pStages = pStages - result.groupCount = groupCount - result.pGroups = pGroups - result.maxPipelineRayRecursionDepth = maxPipelineRayRecursionDepth - result.pLibraryInfo = pLibraryInfo - result.pLibraryInterface = pLibraryInterface - result.pDynamicState = pDynamicState - result.layout = layout - result.basePipelineHandle = basePipelineHandle - result.basePipelineIndex = basePipelineIndex + result = VkRayTracingPipelineCreateInfoKHR( + sType: sType, + pNext: pNext, + flags: flags, + stageCount: stageCount, + pStages: pStages, + groupCount: groupCount, + pGroups: pGroups, + maxPipelineRayRecursionDepth: maxPipelineRayRecursionDepth, + pLibraryInfo: pLibraryInfo, + pLibraryInterface: pLibraryInterface, + pDynamicState: pDynamicState, + layout: layout, + basePipelineHandle: basePipelineHandle, + basePipelineIndex: basePipelineIndex, + ) proc newVkGeometryTrianglesNV*(sType: VkStructureType, pNext: pointer = nil, vertexData: VkBuffer, vertexOffset: VkDeviceSize, vertexCount: uint32, vertexStride: VkDeviceSize, vertexFormat: VkFormat, indexData: VkBuffer, indexOffset: VkDeviceSize, indexCount: uint32, indexType: VkIndexType, transformData: VkBuffer, transformOffset: VkDeviceSize): VkGeometryTrianglesNV = - result.sType = sType - result.pNext = pNext - result.vertexData = vertexData - result.vertexOffset = vertexOffset - result.vertexCount = vertexCount - result.vertexStride = vertexStride - result.vertexFormat = vertexFormat - result.indexData = indexData - result.indexOffset = indexOffset - result.indexCount = indexCount - result.indexType = indexType - result.transformData = transformData - result.transformOffset = transformOffset + result = VkGeometryTrianglesNV( + sType: sType, + pNext: pNext, + vertexData: vertexData, + vertexOffset: vertexOffset, + vertexCount: vertexCount, + vertexStride: vertexStride, + vertexFormat: vertexFormat, + indexData: indexData, + indexOffset: indexOffset, + indexCount: indexCount, + indexType: indexType, + transformData: transformData, + transformOffset: transformOffset, + ) proc newVkGeometryAABBNV*(sType: VkStructureType, pNext: pointer = nil, aabbData: VkBuffer, numAABBs: uint32, stride: uint32, offset: VkDeviceSize): VkGeometryAABBNV = - result.sType = sType - result.pNext = pNext - result.aabbData = aabbData - result.numAABBs = numAABBs - result.stride = stride - result.offset = offset + result = VkGeometryAABBNV( + sType: sType, + pNext: pNext, + aabbData: aabbData, + numAABBs: numAABBs, + stride: stride, + offset: offset, + ) proc newVkGeometryDataNV*(triangles: VkGeometryTrianglesNV, aabbs: VkGeometryAABBNV): VkGeometryDataNV = - result.triangles = triangles - result.aabbs = aabbs + result = VkGeometryDataNV( + triangles: triangles, + aabbs: aabbs, + ) proc newVkGeometryNV*(sType: VkStructureType, pNext: pointer = nil, geometryType: VkGeometryTypeKHR, geometry: VkGeometryDataNV, flags: VkGeometryFlagsKHR = 0.VkGeometryFlagsKHR): VkGeometryNV = - result.sType = sType - result.pNext = pNext - result.geometryType = geometryType - result.geometry = geometry - result.flags = flags + result = VkGeometryNV( + sType: sType, + pNext: pNext, + geometryType: geometryType, + geometry: geometry, + flags: flags, + ) proc newVkAccelerationStructureInfoNV*(sType: VkStructureType, pNext: pointer = nil, `type`: VkAccelerationStructureTypeNV, flags: VkBuildAccelerationStructureFlagsNV = 0.VkBuildAccelerationStructureFlagsNV, instanceCount: uint32, geometryCount: uint32, pGeometries: ptr VkGeometryNV): VkAccelerationStructureInfoNV = - result.sType = sType - result.pNext = pNext - result.`type` = `type` - result.flags = flags - result.instanceCount = instanceCount - result.geometryCount = geometryCount - result.pGeometries = pGeometries + result = VkAccelerationStructureInfoNV( + sType: sType, + pNext: pNext, + `type`: `type`, + flags: flags, + instanceCount: instanceCount, + geometryCount: geometryCount, + pGeometries: pGeometries, + ) proc newVkAccelerationStructureCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, compactedSize: VkDeviceSize, info: VkAccelerationStructureInfoNV): VkAccelerationStructureCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.compactedSize = compactedSize - result.info = info + result = VkAccelerationStructureCreateInfoNV( + sType: sType, + pNext: pNext, + compactedSize: compactedSize, + info: info, + ) proc newVkBindAccelerationStructureMemoryInfoNV*(sType: VkStructureType, pNext: pointer = nil, accelerationStructure: VkAccelerationStructureNV, memory: VkDeviceMemory, memoryOffset: VkDeviceSize, deviceIndexCount: uint32, pDeviceIndices: ptr uint32): VkBindAccelerationStructureMemoryInfoNV = - result.sType = sType - result.pNext = pNext - result.accelerationStructure = accelerationStructure - result.memory = memory - result.memoryOffset = memoryOffset - result.deviceIndexCount = deviceIndexCount - result.pDeviceIndices = pDeviceIndices + result = VkBindAccelerationStructureMemoryInfoNV( + sType: sType, + pNext: pNext, + accelerationStructure: accelerationStructure, + memory: memory, + memoryOffset: memoryOffset, + deviceIndexCount: deviceIndexCount, + pDeviceIndices: pDeviceIndices, + ) proc newVkWriteDescriptorSetAccelerationStructureKHR*(sType: VkStructureType, pNext: pointer = nil, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR): VkWriteDescriptorSetAccelerationStructureKHR = - result.sType = sType - result.pNext = pNext - result.accelerationStructureCount = accelerationStructureCount - result.pAccelerationStructures = pAccelerationStructures + result = VkWriteDescriptorSetAccelerationStructureKHR( + sType: sType, + pNext: pNext, + accelerationStructureCount: accelerationStructureCount, + pAccelerationStructures: pAccelerationStructures, + ) proc newVkWriteDescriptorSetAccelerationStructureNV*(sType: VkStructureType, pNext: pointer = nil, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureNV): VkWriteDescriptorSetAccelerationStructureNV = - result.sType = sType - result.pNext = pNext - result.accelerationStructureCount = accelerationStructureCount - result.pAccelerationStructures = pAccelerationStructures + result = VkWriteDescriptorSetAccelerationStructureNV( + sType: sType, + pNext: pNext, + accelerationStructureCount: accelerationStructureCount, + pAccelerationStructures: pAccelerationStructures, + ) proc newVkAccelerationStructureMemoryRequirementsInfoNV*(sType: VkStructureType, pNext: pointer = nil, `type`: VkAccelerationStructureMemoryRequirementsTypeNV, accelerationStructure: VkAccelerationStructureNV): VkAccelerationStructureMemoryRequirementsInfoNV = - result.sType = sType - result.pNext = pNext - result.`type` = `type` - result.accelerationStructure = accelerationStructure + result = VkAccelerationStructureMemoryRequirementsInfoNV( + sType: sType, + pNext: pNext, + `type`: `type`, + accelerationStructure: accelerationStructure, + ) proc newVkPhysicalDeviceAccelerationStructureFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, accelerationStructure: VkBool32, accelerationStructureCaptureReplay: VkBool32, accelerationStructureIndirectBuild: VkBool32, accelerationStructureHostCommands: VkBool32, descriptorBindingAccelerationStructureUpdateAfterBind: VkBool32): VkPhysicalDeviceAccelerationStructureFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.accelerationStructure = accelerationStructure - result.accelerationStructureCaptureReplay = accelerationStructureCaptureReplay - result.accelerationStructureIndirectBuild = accelerationStructureIndirectBuild - result.accelerationStructureHostCommands = accelerationStructureHostCommands - result.descriptorBindingAccelerationStructureUpdateAfterBind = descriptorBindingAccelerationStructureUpdateAfterBind + result = VkPhysicalDeviceAccelerationStructureFeaturesKHR( + sType: sType, + pNext: pNext, + accelerationStructure: accelerationStructure, + accelerationStructureCaptureReplay: accelerationStructureCaptureReplay, + accelerationStructureIndirectBuild: accelerationStructureIndirectBuild, + accelerationStructureHostCommands: accelerationStructureHostCommands, + descriptorBindingAccelerationStructureUpdateAfterBind: descriptorBindingAccelerationStructureUpdateAfterBind, + ) proc newVkPhysicalDeviceRayTracingPipelineFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, rayTracingPipeline: VkBool32, rayTracingPipelineShaderGroupHandleCaptureReplay: VkBool32, rayTracingPipelineShaderGroupHandleCaptureReplayMixed: VkBool32, rayTracingPipelineTraceRaysIndirect: VkBool32, rayTraversalPrimitiveCulling: VkBool32): VkPhysicalDeviceRayTracingPipelineFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.rayTracingPipeline = rayTracingPipeline - result.rayTracingPipelineShaderGroupHandleCaptureReplay = rayTracingPipelineShaderGroupHandleCaptureReplay - result.rayTracingPipelineShaderGroupHandleCaptureReplayMixed = rayTracingPipelineShaderGroupHandleCaptureReplayMixed - result.rayTracingPipelineTraceRaysIndirect = rayTracingPipelineTraceRaysIndirect - result.rayTraversalPrimitiveCulling = rayTraversalPrimitiveCulling + result = VkPhysicalDeviceRayTracingPipelineFeaturesKHR( + sType: sType, + pNext: pNext, + rayTracingPipeline: rayTracingPipeline, + rayTracingPipelineShaderGroupHandleCaptureReplay: rayTracingPipelineShaderGroupHandleCaptureReplay, + rayTracingPipelineShaderGroupHandleCaptureReplayMixed: rayTracingPipelineShaderGroupHandleCaptureReplayMixed, + rayTracingPipelineTraceRaysIndirect: rayTracingPipelineTraceRaysIndirect, + rayTraversalPrimitiveCulling: rayTraversalPrimitiveCulling, + ) proc newVkPhysicalDeviceRayQueryFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, rayQuery: VkBool32): VkPhysicalDeviceRayQueryFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.rayQuery = rayQuery + result = VkPhysicalDeviceRayQueryFeaturesKHR( + sType: sType, + pNext: pNext, + rayQuery: rayQuery, + ) proc newVkPhysicalDeviceAccelerationStructurePropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, maxGeometryCount: uint64, maxInstanceCount: uint64, maxPrimitiveCount: uint64, maxPerStageDescriptorAccelerationStructures: uint32, maxPerStageDescriptorUpdateAfterBindAccelerationStructures: uint32, maxDescriptorSetAccelerationStructures: uint32, maxDescriptorSetUpdateAfterBindAccelerationStructures: uint32, minAccelerationStructureScratchOffsetAlignment: uint32): VkPhysicalDeviceAccelerationStructurePropertiesKHR = - result.sType = sType - result.pNext = pNext - result.maxGeometryCount = maxGeometryCount - result.maxInstanceCount = maxInstanceCount - result.maxPrimitiveCount = maxPrimitiveCount - result.maxPerStageDescriptorAccelerationStructures = maxPerStageDescriptorAccelerationStructures - result.maxPerStageDescriptorUpdateAfterBindAccelerationStructures = maxPerStageDescriptorUpdateAfterBindAccelerationStructures - result.maxDescriptorSetAccelerationStructures = maxDescriptorSetAccelerationStructures - result.maxDescriptorSetUpdateAfterBindAccelerationStructures = maxDescriptorSetUpdateAfterBindAccelerationStructures - result.minAccelerationStructureScratchOffsetAlignment = minAccelerationStructureScratchOffsetAlignment + result = VkPhysicalDeviceAccelerationStructurePropertiesKHR( + sType: sType, + pNext: pNext, + maxGeometryCount: maxGeometryCount, + maxInstanceCount: maxInstanceCount, + maxPrimitiveCount: maxPrimitiveCount, + maxPerStageDescriptorAccelerationStructures: maxPerStageDescriptorAccelerationStructures, + maxPerStageDescriptorUpdateAfterBindAccelerationStructures: maxPerStageDescriptorUpdateAfterBindAccelerationStructures, + maxDescriptorSetAccelerationStructures: maxDescriptorSetAccelerationStructures, + maxDescriptorSetUpdateAfterBindAccelerationStructures: maxDescriptorSetUpdateAfterBindAccelerationStructures, + minAccelerationStructureScratchOffsetAlignment: minAccelerationStructureScratchOffsetAlignment, + ) proc newVkPhysicalDeviceRayTracingPipelinePropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, shaderGroupHandleSize: uint32, maxRayRecursionDepth: uint32, maxShaderGroupStride: uint32, shaderGroupBaseAlignment: uint32, shaderGroupHandleCaptureReplaySize: uint32, maxRayDispatchInvocationCount: uint32, shaderGroupHandleAlignment: uint32, maxRayHitAttributeSize: uint32): VkPhysicalDeviceRayTracingPipelinePropertiesKHR = - result.sType = sType - result.pNext = pNext - result.shaderGroupHandleSize = shaderGroupHandleSize - result.maxRayRecursionDepth = maxRayRecursionDepth - result.maxShaderGroupStride = maxShaderGroupStride - result.shaderGroupBaseAlignment = shaderGroupBaseAlignment - result.shaderGroupHandleCaptureReplaySize = shaderGroupHandleCaptureReplaySize - result.maxRayDispatchInvocationCount = maxRayDispatchInvocationCount - result.shaderGroupHandleAlignment = shaderGroupHandleAlignment - result.maxRayHitAttributeSize = maxRayHitAttributeSize + result = VkPhysicalDeviceRayTracingPipelinePropertiesKHR( + sType: sType, + pNext: pNext, + shaderGroupHandleSize: shaderGroupHandleSize, + maxRayRecursionDepth: maxRayRecursionDepth, + maxShaderGroupStride: maxShaderGroupStride, + shaderGroupBaseAlignment: shaderGroupBaseAlignment, + shaderGroupHandleCaptureReplaySize: shaderGroupHandleCaptureReplaySize, + maxRayDispatchInvocationCount: maxRayDispatchInvocationCount, + shaderGroupHandleAlignment: shaderGroupHandleAlignment, + maxRayHitAttributeSize: maxRayHitAttributeSize, + ) proc newVkPhysicalDeviceRayTracingPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, shaderGroupHandleSize: uint32, maxRecursionDepth: uint32, maxShaderGroupStride: uint32, shaderGroupBaseAlignment: uint32, maxGeometryCount: uint64, maxInstanceCount: uint64, maxTriangleCount: uint64, maxDescriptorSetAccelerationStructures: uint32): VkPhysicalDeviceRayTracingPropertiesNV = - result.sType = sType - result.pNext = pNext - result.shaderGroupHandleSize = shaderGroupHandleSize - result.maxRecursionDepth = maxRecursionDepth - result.maxShaderGroupStride = maxShaderGroupStride - result.shaderGroupBaseAlignment = shaderGroupBaseAlignment - result.maxGeometryCount = maxGeometryCount - result.maxInstanceCount = maxInstanceCount - result.maxTriangleCount = maxTriangleCount - result.maxDescriptorSetAccelerationStructures = maxDescriptorSetAccelerationStructures + result = VkPhysicalDeviceRayTracingPropertiesNV( + sType: sType, + pNext: pNext, + shaderGroupHandleSize: shaderGroupHandleSize, + maxRecursionDepth: maxRecursionDepth, + maxShaderGroupStride: maxShaderGroupStride, + shaderGroupBaseAlignment: shaderGroupBaseAlignment, + maxGeometryCount: maxGeometryCount, + maxInstanceCount: maxInstanceCount, + maxTriangleCount: maxTriangleCount, + maxDescriptorSetAccelerationStructures: maxDescriptorSetAccelerationStructures, + ) proc newVkStridedDeviceAddressRegionKHR*(deviceAddress: VkDeviceAddress, stride: VkDeviceSize, size: VkDeviceSize): VkStridedDeviceAddressRegionKHR = - result.deviceAddress = deviceAddress - result.stride = stride - result.size = size + result = VkStridedDeviceAddressRegionKHR( + deviceAddress: deviceAddress, + stride: stride, + size: size, + ) proc newVkTraceRaysIndirectCommandKHR*(width: uint32, height: uint32, depth: uint32): VkTraceRaysIndirectCommandKHR = - result.width = width - result.height = height - result.depth = depth + result = VkTraceRaysIndirectCommandKHR( + width: width, + height: height, + depth: depth, + ) proc newVkTraceRaysIndirectCommand2KHR*(raygenShaderRecordAddress: VkDeviceAddress, raygenShaderRecordSize: VkDeviceSize, missShaderBindingTableAddress: VkDeviceAddress, missShaderBindingTableSize: VkDeviceSize, missShaderBindingTableStride: VkDeviceSize, hitShaderBindingTableAddress: VkDeviceAddress, hitShaderBindingTableSize: VkDeviceSize, hitShaderBindingTableStride: VkDeviceSize, callableShaderBindingTableAddress: VkDeviceAddress, callableShaderBindingTableSize: VkDeviceSize, callableShaderBindingTableStride: VkDeviceSize, width: uint32, height: uint32, depth: uint32): VkTraceRaysIndirectCommand2KHR = - result.raygenShaderRecordAddress = raygenShaderRecordAddress - result.raygenShaderRecordSize = raygenShaderRecordSize - result.missShaderBindingTableAddress = missShaderBindingTableAddress - result.missShaderBindingTableSize = missShaderBindingTableSize - result.missShaderBindingTableStride = missShaderBindingTableStride - result.hitShaderBindingTableAddress = hitShaderBindingTableAddress - result.hitShaderBindingTableSize = hitShaderBindingTableSize - result.hitShaderBindingTableStride = hitShaderBindingTableStride - result.callableShaderBindingTableAddress = callableShaderBindingTableAddress - result.callableShaderBindingTableSize = callableShaderBindingTableSize - result.callableShaderBindingTableStride = callableShaderBindingTableStride - result.width = width - result.height = height - result.depth = depth + result = VkTraceRaysIndirectCommand2KHR( + raygenShaderRecordAddress: raygenShaderRecordAddress, + raygenShaderRecordSize: raygenShaderRecordSize, + missShaderBindingTableAddress: missShaderBindingTableAddress, + missShaderBindingTableSize: missShaderBindingTableSize, + missShaderBindingTableStride: missShaderBindingTableStride, + hitShaderBindingTableAddress: hitShaderBindingTableAddress, + hitShaderBindingTableSize: hitShaderBindingTableSize, + hitShaderBindingTableStride: hitShaderBindingTableStride, + callableShaderBindingTableAddress: callableShaderBindingTableAddress, + callableShaderBindingTableSize: callableShaderBindingTableSize, + callableShaderBindingTableStride: callableShaderBindingTableStride, + width: width, + height: height, + depth: depth, + ) proc newVkPhysicalDeviceRayTracingMaintenance1FeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, rayTracingMaintenance1: VkBool32, rayTracingPipelineTraceRaysIndirect2: VkBool32): VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR = - result.sType = sType - result.pNext = pNext - result.rayTracingMaintenance1 = rayTracingMaintenance1 - result.rayTracingPipelineTraceRaysIndirect2 = rayTracingPipelineTraceRaysIndirect2 + result = VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR( + sType: sType, + pNext: pNext, + rayTracingMaintenance1: rayTracingMaintenance1, + rayTracingPipelineTraceRaysIndirect2: rayTracingPipelineTraceRaysIndirect2, + ) proc newVkDrmFormatModifierPropertiesListEXT*(sType: VkStructureType, pNext: pointer = nil, drmFormatModifierCount: uint32, pDrmFormatModifierProperties: ptr VkDrmFormatModifierPropertiesEXT): VkDrmFormatModifierPropertiesListEXT = - result.sType = sType - result.pNext = pNext - result.drmFormatModifierCount = drmFormatModifierCount - result.pDrmFormatModifierProperties = pDrmFormatModifierProperties + result = VkDrmFormatModifierPropertiesListEXT( + sType: sType, + pNext: pNext, + drmFormatModifierCount: drmFormatModifierCount, + pDrmFormatModifierProperties: pDrmFormatModifierProperties, + ) proc newVkDrmFormatModifierPropertiesEXT*(drmFormatModifier: uint64, drmFormatModifierPlaneCount: uint32, drmFormatModifierTilingFeatures: VkFormatFeatureFlags): VkDrmFormatModifierPropertiesEXT = - result.drmFormatModifier = drmFormatModifier - result.drmFormatModifierPlaneCount = drmFormatModifierPlaneCount - result.drmFormatModifierTilingFeatures = drmFormatModifierTilingFeatures + result = VkDrmFormatModifierPropertiesEXT( + drmFormatModifier: drmFormatModifier, + drmFormatModifierPlaneCount: drmFormatModifierPlaneCount, + drmFormatModifierTilingFeatures: drmFormatModifierTilingFeatures, + ) proc newVkPhysicalDeviceImageDrmFormatModifierInfoEXT*(sType: VkStructureType, pNext: pointer = nil, drmFormatModifier: uint64, sharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32): VkPhysicalDeviceImageDrmFormatModifierInfoEXT = - result.sType = sType - result.pNext = pNext - result.drmFormatModifier = drmFormatModifier - result.sharingMode = sharingMode - result.queueFamilyIndexCount = queueFamilyIndexCount - result.pQueueFamilyIndices = pQueueFamilyIndices + result = VkPhysicalDeviceImageDrmFormatModifierInfoEXT( + sType: sType, + pNext: pNext, + drmFormatModifier: drmFormatModifier, + sharingMode: sharingMode, + queueFamilyIndexCount: queueFamilyIndexCount, + pQueueFamilyIndices: pQueueFamilyIndices, + ) proc newVkImageDrmFormatModifierListCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, drmFormatModifierCount: uint32, pDrmFormatModifiers: ptr uint64): VkImageDrmFormatModifierListCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.drmFormatModifierCount = drmFormatModifierCount - result.pDrmFormatModifiers = pDrmFormatModifiers + result = VkImageDrmFormatModifierListCreateInfoEXT( + sType: sType, + pNext: pNext, + drmFormatModifierCount: drmFormatModifierCount, + pDrmFormatModifiers: pDrmFormatModifiers, + ) proc newVkImageDrmFormatModifierExplicitCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, drmFormatModifier: uint64, drmFormatModifierPlaneCount: uint32, pPlaneLayouts: ptr VkSubresourceLayout): VkImageDrmFormatModifierExplicitCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.drmFormatModifier = drmFormatModifier - result.drmFormatModifierPlaneCount = drmFormatModifierPlaneCount - result.pPlaneLayouts = pPlaneLayouts + result = VkImageDrmFormatModifierExplicitCreateInfoEXT( + sType: sType, + pNext: pNext, + drmFormatModifier: drmFormatModifier, + drmFormatModifierPlaneCount: drmFormatModifierPlaneCount, + pPlaneLayouts: pPlaneLayouts, + ) proc newVkImageDrmFormatModifierPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, drmFormatModifier: uint64): VkImageDrmFormatModifierPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.drmFormatModifier = drmFormatModifier + result = VkImageDrmFormatModifierPropertiesEXT( + sType: sType, + pNext: pNext, + drmFormatModifier: drmFormatModifier, + ) proc newVkImageStencilUsageCreateInfo*(sType: VkStructureType, pNext: pointer = nil, stencilUsage: VkImageUsageFlags): VkImageStencilUsageCreateInfo = - result.sType = sType - result.pNext = pNext - result.stencilUsage = stencilUsage + result = VkImageStencilUsageCreateInfo( + sType: sType, + pNext: pNext, + stencilUsage: stencilUsage, + ) proc newVkDeviceMemoryOverallocationCreateInfoAMD*(sType: VkStructureType, pNext: pointer = nil, overallocationBehavior: VkMemoryOverallocationBehaviorAMD): VkDeviceMemoryOverallocationCreateInfoAMD = - result.sType = sType - result.pNext = pNext - result.overallocationBehavior = overallocationBehavior + result = VkDeviceMemoryOverallocationCreateInfoAMD( + sType: sType, + pNext: pNext, + overallocationBehavior: overallocationBehavior, + ) proc newVkPhysicalDeviceFragmentDensityMapFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, fragmentDensityMap: VkBool32, fragmentDensityMapDynamic: VkBool32, fragmentDensityMapNonSubsampledImages: VkBool32): VkPhysicalDeviceFragmentDensityMapFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.fragmentDensityMap = fragmentDensityMap - result.fragmentDensityMapDynamic = fragmentDensityMapDynamic - result.fragmentDensityMapNonSubsampledImages = fragmentDensityMapNonSubsampledImages + result = VkPhysicalDeviceFragmentDensityMapFeaturesEXT( + sType: sType, + pNext: pNext, + fragmentDensityMap: fragmentDensityMap, + fragmentDensityMapDynamic: fragmentDensityMapDynamic, + fragmentDensityMapNonSubsampledImages: fragmentDensityMapNonSubsampledImages, + ) proc newVkPhysicalDeviceFragmentDensityMap2FeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, fragmentDensityMapDeferred: VkBool32): VkPhysicalDeviceFragmentDensityMap2FeaturesEXT = - result.sType = sType - result.pNext = pNext - result.fragmentDensityMapDeferred = fragmentDensityMapDeferred + result = VkPhysicalDeviceFragmentDensityMap2FeaturesEXT( + sType: sType, + pNext: pNext, + fragmentDensityMapDeferred: fragmentDensityMapDeferred, + ) proc newVkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, fragmentDensityMapOffset: VkBool32): VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM = - result.sType = sType - result.pNext = pNext - result.fragmentDensityMapOffset = fragmentDensityMapOffset + result = VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM( + sType: sType, + pNext: pNext, + fragmentDensityMapOffset: fragmentDensityMapOffset, + ) proc newVkPhysicalDeviceFragmentDensityMapPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, minFragmentDensityTexelSize: VkExtent2D, maxFragmentDensityTexelSize: VkExtent2D, fragmentDensityInvocations: VkBool32): VkPhysicalDeviceFragmentDensityMapPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.minFragmentDensityTexelSize = minFragmentDensityTexelSize - result.maxFragmentDensityTexelSize = maxFragmentDensityTexelSize - result.fragmentDensityInvocations = fragmentDensityInvocations + result = VkPhysicalDeviceFragmentDensityMapPropertiesEXT( + sType: sType, + pNext: pNext, + minFragmentDensityTexelSize: minFragmentDensityTexelSize, + maxFragmentDensityTexelSize: maxFragmentDensityTexelSize, + fragmentDensityInvocations: fragmentDensityInvocations, + ) proc newVkPhysicalDeviceFragmentDensityMap2PropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, subsampledLoads: VkBool32, subsampledCoarseReconstructionEarlyAccess: VkBool32, maxSubsampledArrayLayers: uint32, maxDescriptorSetSubsampledSamplers: uint32): VkPhysicalDeviceFragmentDensityMap2PropertiesEXT = - result.sType = sType - result.pNext = pNext - result.subsampledLoads = subsampledLoads - result.subsampledCoarseReconstructionEarlyAccess = subsampledCoarseReconstructionEarlyAccess - result.maxSubsampledArrayLayers = maxSubsampledArrayLayers - result.maxDescriptorSetSubsampledSamplers = maxDescriptorSetSubsampledSamplers + result = VkPhysicalDeviceFragmentDensityMap2PropertiesEXT( + sType: sType, + pNext: pNext, + subsampledLoads: subsampledLoads, + subsampledCoarseReconstructionEarlyAccess: subsampledCoarseReconstructionEarlyAccess, + maxSubsampledArrayLayers: maxSubsampledArrayLayers, + maxDescriptorSetSubsampledSamplers: maxDescriptorSetSubsampledSamplers, + ) proc newVkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM*(sType: VkStructureType, pNext: pointer = nil, fragmentDensityOffsetGranularity: VkExtent2D): VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM = - result.sType = sType - result.pNext = pNext - result.fragmentDensityOffsetGranularity = fragmentDensityOffsetGranularity + result = VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM( + sType: sType, + pNext: pNext, + fragmentDensityOffsetGranularity: fragmentDensityOffsetGranularity, + ) proc newVkRenderPassFragmentDensityMapCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, fragmentDensityMapAttachment: VkAttachmentReference): VkRenderPassFragmentDensityMapCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.fragmentDensityMapAttachment = fragmentDensityMapAttachment + result = VkRenderPassFragmentDensityMapCreateInfoEXT( + sType: sType, + pNext: pNext, + fragmentDensityMapAttachment: fragmentDensityMapAttachment, + ) proc newVkSubpassFragmentDensityMapOffsetEndInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, fragmentDensityOffsetCount: uint32, pFragmentDensityOffsets: ptr VkOffset2D): VkSubpassFragmentDensityMapOffsetEndInfoQCOM = - result.sType = sType - result.pNext = pNext - result.fragmentDensityOffsetCount = fragmentDensityOffsetCount - result.pFragmentDensityOffsets = pFragmentDensityOffsets + result = VkSubpassFragmentDensityMapOffsetEndInfoQCOM( + sType: sType, + pNext: pNext, + fragmentDensityOffsetCount: fragmentDensityOffsetCount, + pFragmentDensityOffsets: pFragmentDensityOffsets, + ) proc newVkPhysicalDeviceScalarBlockLayoutFeatures*(sType: VkStructureType, pNext: pointer = nil, scalarBlockLayout: VkBool32): VkPhysicalDeviceScalarBlockLayoutFeatures = - result.sType = sType - result.pNext = pNext - result.scalarBlockLayout = scalarBlockLayout + result = VkPhysicalDeviceScalarBlockLayoutFeatures( + sType: sType, + pNext: pNext, + scalarBlockLayout: scalarBlockLayout, + ) proc newVkSurfaceProtectedCapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, supportsProtected: VkBool32): VkSurfaceProtectedCapabilitiesKHR = - result.sType = sType - result.pNext = pNext - result.supportsProtected = supportsProtected + result = VkSurfaceProtectedCapabilitiesKHR( + sType: sType, + pNext: pNext, + supportsProtected: supportsProtected, + ) proc newVkPhysicalDeviceUniformBufferStandardLayoutFeatures*(sType: VkStructureType, pNext: pointer = nil, uniformBufferStandardLayout: VkBool32): VkPhysicalDeviceUniformBufferStandardLayoutFeatures = - result.sType = sType - result.pNext = pNext - result.uniformBufferStandardLayout = uniformBufferStandardLayout + result = VkPhysicalDeviceUniformBufferStandardLayoutFeatures( + sType: sType, + pNext: pNext, + uniformBufferStandardLayout: uniformBufferStandardLayout, + ) proc newVkPhysicalDeviceDepthClipEnableFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, depthClipEnable: VkBool32): VkPhysicalDeviceDepthClipEnableFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.depthClipEnable = depthClipEnable + result = VkPhysicalDeviceDepthClipEnableFeaturesEXT( + sType: sType, + pNext: pNext, + depthClipEnable: depthClipEnable, + ) proc newVkPipelineRasterizationDepthClipStateCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineRasterizationDepthClipStateCreateFlagsEXT = 0.VkPipelineRasterizationDepthClipStateCreateFlagsEXT, depthClipEnable: VkBool32): VkPipelineRasterizationDepthClipStateCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.depthClipEnable = depthClipEnable + result = VkPipelineRasterizationDepthClipStateCreateInfoEXT( + sType: sType, + pNext: pNext, + flags: flags, + depthClipEnable: depthClipEnable, + ) proc newVkPhysicalDeviceMemoryBudgetPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, heapBudget: array[VK_MAX_MEMORY_HEAPS, VkDeviceSize], heapUsage: array[VK_MAX_MEMORY_HEAPS, VkDeviceSize]): VkPhysicalDeviceMemoryBudgetPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.heapBudget = heapBudget - result.heapUsage = heapUsage + result = VkPhysicalDeviceMemoryBudgetPropertiesEXT( + sType: sType, + pNext: pNext, + heapBudget: heapBudget, + heapUsage: heapUsage, + ) proc newVkPhysicalDeviceMemoryPriorityFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, memoryPriority: VkBool32): VkPhysicalDeviceMemoryPriorityFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.memoryPriority = memoryPriority + result = VkPhysicalDeviceMemoryPriorityFeaturesEXT( + sType: sType, + pNext: pNext, + memoryPriority: memoryPriority, + ) proc newVkMemoryPriorityAllocateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, priority: float32): VkMemoryPriorityAllocateInfoEXT = - result.sType = sType - result.pNext = pNext - result.priority = priority + result = VkMemoryPriorityAllocateInfoEXT( + sType: sType, + pNext: pNext, + priority: priority, + ) proc newVkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, pageableDeviceLocalMemory: VkBool32): VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.pageableDeviceLocalMemory = pageableDeviceLocalMemory + result = VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT( + sType: sType, + pNext: pNext, + pageableDeviceLocalMemory: pageableDeviceLocalMemory, + ) proc newVkPhysicalDeviceBufferDeviceAddressFeatures*(sType: VkStructureType, pNext: pointer = nil, bufferDeviceAddress: VkBool32, bufferDeviceAddressCaptureReplay: VkBool32, bufferDeviceAddressMultiDevice: VkBool32): VkPhysicalDeviceBufferDeviceAddressFeatures = - result.sType = sType - result.pNext = pNext - result.bufferDeviceAddress = bufferDeviceAddress - result.bufferDeviceAddressCaptureReplay = bufferDeviceAddressCaptureReplay - result.bufferDeviceAddressMultiDevice = bufferDeviceAddressMultiDevice + result = VkPhysicalDeviceBufferDeviceAddressFeatures( + sType: sType, + pNext: pNext, + bufferDeviceAddress: bufferDeviceAddress, + bufferDeviceAddressCaptureReplay: bufferDeviceAddressCaptureReplay, + bufferDeviceAddressMultiDevice: bufferDeviceAddressMultiDevice, + ) proc newVkPhysicalDeviceBufferDeviceAddressFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, bufferDeviceAddress: VkBool32, bufferDeviceAddressCaptureReplay: VkBool32, bufferDeviceAddressMultiDevice: VkBool32): VkPhysicalDeviceBufferDeviceAddressFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.bufferDeviceAddress = bufferDeviceAddress - result.bufferDeviceAddressCaptureReplay = bufferDeviceAddressCaptureReplay - result.bufferDeviceAddressMultiDevice = bufferDeviceAddressMultiDevice + result = VkPhysicalDeviceBufferDeviceAddressFeaturesEXT( + sType: sType, + pNext: pNext, + bufferDeviceAddress: bufferDeviceAddress, + bufferDeviceAddressCaptureReplay: bufferDeviceAddressCaptureReplay, + bufferDeviceAddressMultiDevice: bufferDeviceAddressMultiDevice, + ) proc newVkBufferDeviceAddressInfo*(sType: VkStructureType, pNext: pointer = nil, buffer: VkBuffer): VkBufferDeviceAddressInfo = - result.sType = sType - result.pNext = pNext - result.buffer = buffer + result = VkBufferDeviceAddressInfo( + sType: sType, + pNext: pNext, + buffer: buffer, + ) proc newVkBufferOpaqueCaptureAddressCreateInfo*(sType: VkStructureType, pNext: pointer = nil, opaqueCaptureAddress: uint64): VkBufferOpaqueCaptureAddressCreateInfo = - result.sType = sType - result.pNext = pNext - result.opaqueCaptureAddress = opaqueCaptureAddress + result = VkBufferOpaqueCaptureAddressCreateInfo( + sType: sType, + pNext: pNext, + opaqueCaptureAddress: opaqueCaptureAddress, + ) proc newVkBufferDeviceAddressCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, deviceAddress: VkDeviceAddress): VkBufferDeviceAddressCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.deviceAddress = deviceAddress + result = VkBufferDeviceAddressCreateInfoEXT( + sType: sType, + pNext: pNext, + deviceAddress: deviceAddress, + ) proc newVkPhysicalDeviceImageViewImageFormatInfoEXT*(sType: VkStructureType, pNext: pointer = nil, imageViewType: VkImageViewType): VkPhysicalDeviceImageViewImageFormatInfoEXT = - result.sType = sType - result.pNext = pNext - result.imageViewType = imageViewType + result = VkPhysicalDeviceImageViewImageFormatInfoEXT( + sType: sType, + pNext: pNext, + imageViewType: imageViewType, + ) proc newVkFilterCubicImageViewImageFormatPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, filterCubic: VkBool32, filterCubicMinmax: VkBool32): VkFilterCubicImageViewImageFormatPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.filterCubic = filterCubic - result.filterCubicMinmax = filterCubicMinmax + result = VkFilterCubicImageViewImageFormatPropertiesEXT( + sType: sType, + pNext: pNext, + filterCubic: filterCubic, + filterCubicMinmax: filterCubicMinmax, + ) proc newVkPhysicalDeviceImagelessFramebufferFeatures*(sType: VkStructureType, pNext: pointer = nil, imagelessFramebuffer: VkBool32): VkPhysicalDeviceImagelessFramebufferFeatures = - result.sType = sType - result.pNext = pNext - result.imagelessFramebuffer = imagelessFramebuffer + result = VkPhysicalDeviceImagelessFramebufferFeatures( + sType: sType, + pNext: pNext, + imagelessFramebuffer: imagelessFramebuffer, + ) proc newVkFramebufferAttachmentsCreateInfo*(sType: VkStructureType, pNext: pointer = nil, attachmentImageInfoCount: uint32, pAttachmentImageInfos: ptr VkFramebufferAttachmentImageInfo): VkFramebufferAttachmentsCreateInfo = - result.sType = sType - result.pNext = pNext - result.attachmentImageInfoCount = attachmentImageInfoCount - result.pAttachmentImageInfos = pAttachmentImageInfos + result = VkFramebufferAttachmentsCreateInfo( + sType: sType, + pNext: pNext, + attachmentImageInfoCount: attachmentImageInfoCount, + pAttachmentImageInfos: pAttachmentImageInfos, + ) proc newVkFramebufferAttachmentImageInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkImageCreateFlags = 0.VkImageCreateFlags, usage: VkImageUsageFlags, width: uint32, height: uint32, layerCount: uint32, viewFormatCount: uint32, pViewFormats: ptr VkFormat): VkFramebufferAttachmentImageInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.usage = usage - result.width = width - result.height = height - result.layerCount = layerCount - result.viewFormatCount = viewFormatCount - result.pViewFormats = pViewFormats + result = VkFramebufferAttachmentImageInfo( + sType: sType, + pNext: pNext, + flags: flags, + usage: usage, + width: width, + height: height, + layerCount: layerCount, + viewFormatCount: viewFormatCount, + pViewFormats: pViewFormats, + ) proc newVkRenderPassAttachmentBeginInfo*(sType: VkStructureType, pNext: pointer = nil, attachmentCount: uint32, pAttachments: ptr VkImageView): VkRenderPassAttachmentBeginInfo = - result.sType = sType - result.pNext = pNext - result.attachmentCount = attachmentCount - result.pAttachments = pAttachments + result = VkRenderPassAttachmentBeginInfo( + sType: sType, + pNext: pNext, + attachmentCount: attachmentCount, + pAttachments: pAttachments, + ) proc newVkPhysicalDeviceTextureCompressionASTCHDRFeatures*(sType: VkStructureType, pNext: pointer = nil, textureCompressionASTC_HDR: VkBool32): VkPhysicalDeviceTextureCompressionASTCHDRFeatures = - result.sType = sType - result.pNext = pNext - result.textureCompressionASTC_HDR = textureCompressionASTC_HDR + result = VkPhysicalDeviceTextureCompressionASTCHDRFeatures( + sType: sType, + pNext: pNext, + textureCompressionASTC_HDR: textureCompressionASTC_HDR, + ) proc newVkPhysicalDeviceCooperativeMatrixFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, cooperativeMatrix: VkBool32, cooperativeMatrixRobustBufferAccess: VkBool32): VkPhysicalDeviceCooperativeMatrixFeaturesNV = - result.sType = sType - result.pNext = pNext - result.cooperativeMatrix = cooperativeMatrix - result.cooperativeMatrixRobustBufferAccess = cooperativeMatrixRobustBufferAccess + result = VkPhysicalDeviceCooperativeMatrixFeaturesNV( + sType: sType, + pNext: pNext, + cooperativeMatrix: cooperativeMatrix, + cooperativeMatrixRobustBufferAccess: cooperativeMatrixRobustBufferAccess, + ) proc newVkPhysicalDeviceCooperativeMatrixPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, cooperativeMatrixSupportedStages: VkShaderStageFlags): VkPhysicalDeviceCooperativeMatrixPropertiesNV = - result.sType = sType - result.pNext = pNext - result.cooperativeMatrixSupportedStages = cooperativeMatrixSupportedStages + result = VkPhysicalDeviceCooperativeMatrixPropertiesNV( + sType: sType, + pNext: pNext, + cooperativeMatrixSupportedStages: cooperativeMatrixSupportedStages, + ) proc newVkCooperativeMatrixPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, MSize: uint32, NSize: uint32, KSize: uint32, AType: VkComponentTypeNV, BType: VkComponentTypeNV, CType: VkComponentTypeNV, DType: VkComponentTypeNV, scope: VkScopeNV): VkCooperativeMatrixPropertiesNV = - result.sType = sType - result.pNext = pNext - result.MSize = MSize - result.NSize = NSize - result.KSize = KSize - result.AType = AType - result.BType = BType - result.CType = CType - result.DType = DType - result.scope = scope + result = VkCooperativeMatrixPropertiesNV( + sType: sType, + pNext: pNext, + MSize: MSize, + NSize: NSize, + KSize: KSize, + AType: AType, + BType: BType, + CType: CType, + DType: DType, + scope: scope, + ) proc newVkPhysicalDeviceYcbcrImageArraysFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, ycbcrImageArrays: VkBool32): VkPhysicalDeviceYcbcrImageArraysFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.ycbcrImageArrays = ycbcrImageArrays + result = VkPhysicalDeviceYcbcrImageArraysFeaturesEXT( + sType: sType, + pNext: pNext, + ycbcrImageArrays: ycbcrImageArrays, + ) proc newVkImageViewHandleInfoNVX*(sType: VkStructureType, pNext: pointer = nil, imageView: VkImageView, descriptorType: VkDescriptorType, sampler: VkSampler): VkImageViewHandleInfoNVX = - result.sType = sType - result.pNext = pNext - result.imageView = imageView - result.descriptorType = descriptorType - result.sampler = sampler + result = VkImageViewHandleInfoNVX( + sType: sType, + pNext: pNext, + imageView: imageView, + descriptorType: descriptorType, + sampler: sampler, + ) proc newVkImageViewAddressPropertiesNVX*(sType: VkStructureType, pNext: pointer = nil, deviceAddress: VkDeviceAddress, size: VkDeviceSize): VkImageViewAddressPropertiesNVX = - result.sType = sType - result.pNext = pNext - result.deviceAddress = deviceAddress - result.size = size + result = VkImageViewAddressPropertiesNVX( + sType: sType, + pNext: pNext, + deviceAddress: deviceAddress, + size: size, + ) proc newVkPresentFrameTokenGGP*(sType: VkStructureType, pNext: pointer = nil, frameToken: GgpFrameToken): VkPresentFrameTokenGGP = - result.sType = sType - result.pNext = pNext - result.frameToken = frameToken + result = VkPresentFrameTokenGGP( + sType: sType, + pNext: pNext, + frameToken: frameToken, + ) proc newVkPipelineCreationFeedback*(flags: VkPipelineCreationFeedbackFlags = 0.VkPipelineCreationFeedbackFlags, duration: uint64): VkPipelineCreationFeedback = - result.flags = flags - result.duration = duration + result = VkPipelineCreationFeedback( + flags: flags, + duration: duration, + ) proc newVkPipelineCreationFeedbackCreateInfo*(sType: VkStructureType, pNext: pointer = nil, pPipelineCreationFeedback: ptr VkPipelineCreationFeedback, pipelineStageCreationFeedbackCount: uint32, pPipelineStageCreationFeedbacks: ptr ptr VkPipelineCreationFeedback): VkPipelineCreationFeedbackCreateInfo = - result.sType = sType - result.pNext = pNext - result.pPipelineCreationFeedback = pPipelineCreationFeedback - result.pipelineStageCreationFeedbackCount = pipelineStageCreationFeedbackCount - result.pPipelineStageCreationFeedbacks = pPipelineStageCreationFeedbacks + result = VkPipelineCreationFeedbackCreateInfo( + sType: sType, + pNext: pNext, + pPipelineCreationFeedback: pPipelineCreationFeedback, + pipelineStageCreationFeedbackCount: pipelineStageCreationFeedbackCount, + pPipelineStageCreationFeedbacks: pPipelineStageCreationFeedbacks, + ) proc newVkSurfaceFullScreenExclusiveInfoEXT*(sType: VkStructureType, pNext: pointer = nil, fullScreenExclusive: VkFullScreenExclusiveEXT): VkSurfaceFullScreenExclusiveInfoEXT = - result.sType = sType - result.pNext = pNext - result.fullScreenExclusive = fullScreenExclusive + result = VkSurfaceFullScreenExclusiveInfoEXT( + sType: sType, + pNext: pNext, + fullScreenExclusive: fullScreenExclusive, + ) proc newVkSurfaceFullScreenExclusiveWin32InfoEXT*(sType: VkStructureType, pNext: pointer = nil, hmonitor: HMONITOR): VkSurfaceFullScreenExclusiveWin32InfoEXT = - result.sType = sType - result.pNext = pNext - result.hmonitor = hmonitor + result = VkSurfaceFullScreenExclusiveWin32InfoEXT( + sType: sType, + pNext: pNext, + hmonitor: hmonitor, + ) proc newVkSurfaceCapabilitiesFullScreenExclusiveEXT*(sType: VkStructureType, pNext: pointer = nil, fullScreenExclusiveSupported: VkBool32): VkSurfaceCapabilitiesFullScreenExclusiveEXT = - result.sType = sType - result.pNext = pNext - result.fullScreenExclusiveSupported = fullScreenExclusiveSupported + result = VkSurfaceCapabilitiesFullScreenExclusiveEXT( + sType: sType, + pNext: pNext, + fullScreenExclusiveSupported: fullScreenExclusiveSupported, + ) proc newVkPhysicalDevicePresentBarrierFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, presentBarrier: VkBool32): VkPhysicalDevicePresentBarrierFeaturesNV = - result.sType = sType - result.pNext = pNext - result.presentBarrier = presentBarrier + result = VkPhysicalDevicePresentBarrierFeaturesNV( + sType: sType, + pNext: pNext, + presentBarrier: presentBarrier, + ) proc newVkSurfaceCapabilitiesPresentBarrierNV*(sType: VkStructureType, pNext: pointer = nil, presentBarrierSupported: VkBool32): VkSurfaceCapabilitiesPresentBarrierNV = - result.sType = sType - result.pNext = pNext - result.presentBarrierSupported = presentBarrierSupported + result = VkSurfaceCapabilitiesPresentBarrierNV( + sType: sType, + pNext: pNext, + presentBarrierSupported: presentBarrierSupported, + ) proc newVkSwapchainPresentBarrierCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, presentBarrierEnable: VkBool32): VkSwapchainPresentBarrierCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.presentBarrierEnable = presentBarrierEnable + result = VkSwapchainPresentBarrierCreateInfoNV( + sType: sType, + pNext: pNext, + presentBarrierEnable: presentBarrierEnable, + ) proc newVkPhysicalDevicePerformanceQueryFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, performanceCounterQueryPools: VkBool32, performanceCounterMultipleQueryPools: VkBool32): VkPhysicalDevicePerformanceQueryFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.performanceCounterQueryPools = performanceCounterQueryPools - result.performanceCounterMultipleQueryPools = performanceCounterMultipleQueryPools + result = VkPhysicalDevicePerformanceQueryFeaturesKHR( + sType: sType, + pNext: pNext, + performanceCounterQueryPools: performanceCounterQueryPools, + performanceCounterMultipleQueryPools: performanceCounterMultipleQueryPools, + ) proc newVkPhysicalDevicePerformanceQueryPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, allowCommandBufferQueryCopies: VkBool32): VkPhysicalDevicePerformanceQueryPropertiesKHR = - result.sType = sType - result.pNext = pNext - result.allowCommandBufferQueryCopies = allowCommandBufferQueryCopies + result = VkPhysicalDevicePerformanceQueryPropertiesKHR( + sType: sType, + pNext: pNext, + allowCommandBufferQueryCopies: allowCommandBufferQueryCopies, + ) proc newVkPerformanceCounterKHR*(sType: VkStructureType, pNext: pointer = nil, unit: VkPerformanceCounterUnitKHR, scope: VkPerformanceCounterScopeKHR, storage: VkPerformanceCounterStorageKHR, uuid: array[VK_UUID_SIZE, uint8]): VkPerformanceCounterKHR = - result.sType = sType - result.pNext = pNext - result.unit = unit - result.scope = scope - result.storage = storage - result.uuid = uuid + result = VkPerformanceCounterKHR( + sType: sType, + pNext: pNext, + unit: unit, + scope: scope, + storage: storage, + uuid: uuid, + ) proc newVkPerformanceCounterDescriptionKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkPerformanceCounterDescriptionFlagsKHR = 0.VkPerformanceCounterDescriptionFlagsKHR, name: array[VK_MAX_DESCRIPTION_SIZE, char], category: array[VK_MAX_DESCRIPTION_SIZE, char], description: array[VK_MAX_DESCRIPTION_SIZE, char]): VkPerformanceCounterDescriptionKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.name = name - result.category = category - result.description = description + result = VkPerformanceCounterDescriptionKHR( + sType: sType, + pNext: pNext, + flags: flags, + name: name, + category: category, + description: description, + ) proc newVkQueryPoolPerformanceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, queueFamilyIndex: uint32, counterIndexCount: uint32, pCounterIndices: ptr uint32): VkQueryPoolPerformanceCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.queueFamilyIndex = queueFamilyIndex - result.counterIndexCount = counterIndexCount - result.pCounterIndices = pCounterIndices + result = VkQueryPoolPerformanceCreateInfoKHR( + sType: sType, + pNext: pNext, + queueFamilyIndex: queueFamilyIndex, + counterIndexCount: counterIndexCount, + pCounterIndices: pCounterIndices, + ) proc newVkAcquireProfilingLockInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkAcquireProfilingLockFlagsKHR = 0.VkAcquireProfilingLockFlagsKHR, timeout: uint64): VkAcquireProfilingLockInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.timeout = timeout + result = VkAcquireProfilingLockInfoKHR( + sType: sType, + pNext: pNext, + flags: flags, + timeout: timeout, + ) proc newVkPerformanceQuerySubmitInfoKHR*(sType: VkStructureType, pNext: pointer = nil, counterPassIndex: uint32): VkPerformanceQuerySubmitInfoKHR = - result.sType = sType - result.pNext = pNext - result.counterPassIndex = counterPassIndex + result = VkPerformanceQuerySubmitInfoKHR( + sType: sType, + pNext: pNext, + counterPassIndex: counterPassIndex, + ) proc newVkPerformanceQueryReservationInfoKHR*(sType: VkStructureType, pNext: pointer = nil, maxPerformanceQueriesPerPool: uint32): VkPerformanceQueryReservationInfoKHR = - result.sType = sType - result.pNext = pNext - result.maxPerformanceQueriesPerPool = maxPerformanceQueriesPerPool + result = VkPerformanceQueryReservationInfoKHR( + sType: sType, + pNext: pNext, + maxPerformanceQueriesPerPool: maxPerformanceQueriesPerPool, + ) proc newVkHeadlessSurfaceCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkHeadlessSurfaceCreateFlagsEXT = 0.VkHeadlessSurfaceCreateFlagsEXT): VkHeadlessSurfaceCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags + result = VkHeadlessSurfaceCreateInfoEXT( + sType: sType, + pNext: pNext, + flags: flags, + ) proc newVkPhysicalDeviceCoverageReductionModeFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, coverageReductionMode: VkBool32): VkPhysicalDeviceCoverageReductionModeFeaturesNV = - result.sType = sType - result.pNext = pNext - result.coverageReductionMode = coverageReductionMode + result = VkPhysicalDeviceCoverageReductionModeFeaturesNV( + sType: sType, + pNext: pNext, + coverageReductionMode: coverageReductionMode, + ) proc newVkPipelineCoverageReductionStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCoverageReductionStateCreateFlagsNV = 0.VkPipelineCoverageReductionStateCreateFlagsNV, coverageReductionMode: VkCoverageReductionModeNV): VkPipelineCoverageReductionStateCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.coverageReductionMode = coverageReductionMode + result = VkPipelineCoverageReductionStateCreateInfoNV( + sType: sType, + pNext: pNext, + flags: flags, + coverageReductionMode: coverageReductionMode, + ) proc newVkFramebufferMixedSamplesCombinationNV*(sType: VkStructureType, pNext: pointer = nil, coverageReductionMode: VkCoverageReductionModeNV, rasterizationSamples: VkSampleCountFlagBits, depthStencilSamples: VkSampleCountFlags, colorSamples: VkSampleCountFlags): VkFramebufferMixedSamplesCombinationNV = - result.sType = sType - result.pNext = pNext - result.coverageReductionMode = coverageReductionMode - result.rasterizationSamples = rasterizationSamples - result.depthStencilSamples = depthStencilSamples - result.colorSamples = colorSamples + result = VkFramebufferMixedSamplesCombinationNV( + sType: sType, + pNext: pNext, + coverageReductionMode: coverageReductionMode, + rasterizationSamples: rasterizationSamples, + depthStencilSamples: depthStencilSamples, + colorSamples: colorSamples, + ) proc newVkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL*(sType: VkStructureType, pNext: pointer = nil, shaderIntegerFunctions2: VkBool32): VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL = - result.sType = sType - result.pNext = pNext - result.shaderIntegerFunctions2 = shaderIntegerFunctions2 + result = VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL( + sType: sType, + pNext: pNext, + shaderIntegerFunctions2: shaderIntegerFunctions2, + ) proc newVkPerformanceValueINTEL*(`type`: VkPerformanceValueTypeINTEL, data: VkPerformanceValueDataINTEL): VkPerformanceValueINTEL = - result.`type` = `type` - result.data = data + result = VkPerformanceValueINTEL( + `type`: `type`, + data: data, + ) proc newVkInitializePerformanceApiInfoINTEL*(sType: VkStructureType, pNext: pointer = nil, pUserData: pointer = nil): VkInitializePerformanceApiInfoINTEL = - result.sType = sType - result.pNext = pNext - result.pUserData = pUserData + result = VkInitializePerformanceApiInfoINTEL( + sType: sType, + pNext: pNext, + pUserData: pUserData, + ) proc newVkQueryPoolPerformanceQueryCreateInfoINTEL*(sType: VkStructureType, pNext: pointer = nil, performanceCountersSampling: VkQueryPoolSamplingModeINTEL): VkQueryPoolPerformanceQueryCreateInfoINTEL = - result.sType = sType - result.pNext = pNext - result.performanceCountersSampling = performanceCountersSampling + result = VkQueryPoolPerformanceQueryCreateInfoINTEL( + sType: sType, + pNext: pNext, + performanceCountersSampling: performanceCountersSampling, + ) proc newVkPerformanceMarkerInfoINTEL*(sType: VkStructureType, pNext: pointer = nil, marker: uint64): VkPerformanceMarkerInfoINTEL = - result.sType = sType - result.pNext = pNext - result.marker = marker + result = VkPerformanceMarkerInfoINTEL( + sType: sType, + pNext: pNext, + marker: marker, + ) proc newVkPerformanceStreamMarkerInfoINTEL*(sType: VkStructureType, pNext: pointer = nil, marker: uint32): VkPerformanceStreamMarkerInfoINTEL = - result.sType = sType - result.pNext = pNext - result.marker = marker + result = VkPerformanceStreamMarkerInfoINTEL( + sType: sType, + pNext: pNext, + marker: marker, + ) proc newVkPerformanceOverrideInfoINTEL*(sType: VkStructureType, pNext: pointer = nil, `type`: VkPerformanceOverrideTypeINTEL, enable: VkBool32, parameter: uint64): VkPerformanceOverrideInfoINTEL = - result.sType = sType - result.pNext = pNext - result.`type` = `type` - result.enable = enable - result.parameter = parameter + result = VkPerformanceOverrideInfoINTEL( + sType: sType, + pNext: pNext, + `type`: `type`, + enable: enable, + parameter: parameter, + ) proc newVkPerformanceConfigurationAcquireInfoINTEL*(sType: VkStructureType, pNext: pointer = nil, `type`: VkPerformanceConfigurationTypeINTEL): VkPerformanceConfigurationAcquireInfoINTEL = - result.sType = sType - result.pNext = pNext - result.`type` = `type` + result = VkPerformanceConfigurationAcquireInfoINTEL( + sType: sType, + pNext: pNext, + `type`: `type`, + ) proc newVkPhysicalDeviceShaderClockFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, shaderSubgroupClock: VkBool32, shaderDeviceClock: VkBool32): VkPhysicalDeviceShaderClockFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.shaderSubgroupClock = shaderSubgroupClock - result.shaderDeviceClock = shaderDeviceClock + result = VkPhysicalDeviceShaderClockFeaturesKHR( + sType: sType, + pNext: pNext, + shaderSubgroupClock: shaderSubgroupClock, + shaderDeviceClock: shaderDeviceClock, + ) proc newVkPhysicalDeviceIndexTypeUint8FeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, indexTypeUint8: VkBool32): VkPhysicalDeviceIndexTypeUint8FeaturesKHR = - result.sType = sType - result.pNext = pNext - result.indexTypeUint8 = indexTypeUint8 + result = VkPhysicalDeviceIndexTypeUint8FeaturesKHR( + sType: sType, + pNext: pNext, + indexTypeUint8: indexTypeUint8, + ) proc newVkPhysicalDeviceShaderSMBuiltinsPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, shaderSMCount: uint32, shaderWarpsPerSM: uint32): VkPhysicalDeviceShaderSMBuiltinsPropertiesNV = - result.sType = sType - result.pNext = pNext - result.shaderSMCount = shaderSMCount - result.shaderWarpsPerSM = shaderWarpsPerSM + result = VkPhysicalDeviceShaderSMBuiltinsPropertiesNV( + sType: sType, + pNext: pNext, + shaderSMCount: shaderSMCount, + shaderWarpsPerSM: shaderWarpsPerSM, + ) proc newVkPhysicalDeviceShaderSMBuiltinsFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, shaderSMBuiltins: VkBool32): VkPhysicalDeviceShaderSMBuiltinsFeaturesNV = - result.sType = sType - result.pNext = pNext - result.shaderSMBuiltins = shaderSMBuiltins + result = VkPhysicalDeviceShaderSMBuiltinsFeaturesNV( + sType: sType, + pNext: pNext, + shaderSMBuiltins: shaderSMBuiltins, + ) proc newVkPhysicalDeviceFragmentShaderInterlockFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, fragmentShaderSampleInterlock: VkBool32, fragmentShaderPixelInterlock: VkBool32, fragmentShaderShadingRateInterlock: VkBool32): VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.fragmentShaderSampleInterlock = fragmentShaderSampleInterlock - result.fragmentShaderPixelInterlock = fragmentShaderPixelInterlock - result.fragmentShaderShadingRateInterlock = fragmentShaderShadingRateInterlock + result = VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT( + sType: sType, + pNext: pNext, + fragmentShaderSampleInterlock: fragmentShaderSampleInterlock, + fragmentShaderPixelInterlock: fragmentShaderPixelInterlock, + fragmentShaderShadingRateInterlock: fragmentShaderShadingRateInterlock, + ) proc newVkPhysicalDeviceSeparateDepthStencilLayoutsFeatures*(sType: VkStructureType, pNext: pointer = nil, separateDepthStencilLayouts: VkBool32): VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures = - result.sType = sType - result.pNext = pNext - result.separateDepthStencilLayouts = separateDepthStencilLayouts + result = VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures( + sType: sType, + pNext: pNext, + separateDepthStencilLayouts: separateDepthStencilLayouts, + ) proc newVkAttachmentReferenceStencilLayout*(sType: VkStructureType, pNext: pointer = nil, stencilLayout: VkImageLayout): VkAttachmentReferenceStencilLayout = - result.sType = sType - result.pNext = pNext - result.stencilLayout = stencilLayout + result = VkAttachmentReferenceStencilLayout( + sType: sType, + pNext: pNext, + stencilLayout: stencilLayout, + ) proc newVkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, primitiveTopologyListRestart: VkBool32, primitiveTopologyPatchListRestart: VkBool32): VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.primitiveTopologyListRestart = primitiveTopologyListRestart - result.primitiveTopologyPatchListRestart = primitiveTopologyPatchListRestart + result = VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT( + sType: sType, + pNext: pNext, + primitiveTopologyListRestart: primitiveTopologyListRestart, + primitiveTopologyPatchListRestart: primitiveTopologyPatchListRestart, + ) proc newVkAttachmentDescriptionStencilLayout*(sType: VkStructureType, pNext: pointer = nil, stencilInitialLayout: VkImageLayout, stencilFinalLayout: VkImageLayout): VkAttachmentDescriptionStencilLayout = - result.sType = sType - result.pNext = pNext - result.stencilInitialLayout = stencilInitialLayout - result.stencilFinalLayout = stencilFinalLayout + result = VkAttachmentDescriptionStencilLayout( + sType: sType, + pNext: pNext, + stencilInitialLayout: stencilInitialLayout, + stencilFinalLayout: stencilFinalLayout, + ) proc newVkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, pipelineExecutableInfo: VkBool32): VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.pipelineExecutableInfo = pipelineExecutableInfo + result = VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR( + sType: sType, + pNext: pNext, + pipelineExecutableInfo: pipelineExecutableInfo, + ) proc newVkPipelineInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pipeline: VkPipeline): VkPipelineInfoKHR = - result.sType = sType - result.pNext = pNext - result.pipeline = pipeline + result = VkPipelineInfoKHR( + sType: sType, + pNext: pNext, + pipeline: pipeline, + ) proc newVkPipelineExecutablePropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, stages: VkShaderStageFlags, name: array[VK_MAX_DESCRIPTION_SIZE, char], description: array[VK_MAX_DESCRIPTION_SIZE, char], subgroupSize: uint32): VkPipelineExecutablePropertiesKHR = - result.sType = sType - result.pNext = pNext - result.stages = stages - result.name = name - result.description = description - result.subgroupSize = subgroupSize + result = VkPipelineExecutablePropertiesKHR( + sType: sType, + pNext: pNext, + stages: stages, + name: name, + description: description, + subgroupSize: subgroupSize, + ) proc newVkPipelineExecutableInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pipeline: VkPipeline, executableIndex: uint32): VkPipelineExecutableInfoKHR = - result.sType = sType - result.pNext = pNext - result.pipeline = pipeline - result.executableIndex = executableIndex + result = VkPipelineExecutableInfoKHR( + sType: sType, + pNext: pNext, + pipeline: pipeline, + executableIndex: executableIndex, + ) proc newVkPipelineExecutableStatisticKHR*(sType: VkStructureType, pNext: pointer = nil, name: array[VK_MAX_DESCRIPTION_SIZE, char], description: array[VK_MAX_DESCRIPTION_SIZE, char], format: VkPipelineExecutableStatisticFormatKHR, value: VkPipelineExecutableStatisticValueKHR): VkPipelineExecutableStatisticKHR = - result.sType = sType - result.pNext = pNext - result.name = name - result.description = description - result.format = format - result.value = value + result = VkPipelineExecutableStatisticKHR( + sType: sType, + pNext: pNext, + name: name, + description: description, + format: format, + value: value, + ) proc newVkPipelineExecutableInternalRepresentationKHR*(sType: VkStructureType, pNext: pointer = nil, name: array[VK_MAX_DESCRIPTION_SIZE, char], description: array[VK_MAX_DESCRIPTION_SIZE, char], isText: VkBool32, dataSize: uint, pData: pointer = nil): VkPipelineExecutableInternalRepresentationKHR = - result.sType = sType - result.pNext = pNext - result.name = name - result.description = description - result.isText = isText - result.dataSize = dataSize - result.pData = pData + result = VkPipelineExecutableInternalRepresentationKHR( + sType: sType, + pNext: pNext, + name: name, + description: description, + isText: isText, + dataSize: dataSize, + pData: pData, + ) proc newVkPhysicalDeviceShaderDemoteToHelperInvocationFeatures*(sType: VkStructureType, pNext: pointer = nil, shaderDemoteToHelperInvocation: VkBool32): VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures = - result.sType = sType - result.pNext = pNext - result.shaderDemoteToHelperInvocation = shaderDemoteToHelperInvocation + result = VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures( + sType: sType, + pNext: pNext, + shaderDemoteToHelperInvocation: shaderDemoteToHelperInvocation, + ) proc newVkPhysicalDeviceTexelBufferAlignmentFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, texelBufferAlignment: VkBool32): VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.texelBufferAlignment = texelBufferAlignment + result = VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT( + sType: sType, + pNext: pNext, + texelBufferAlignment: texelBufferAlignment, + ) proc newVkPhysicalDeviceTexelBufferAlignmentProperties*(sType: VkStructureType, pNext: pointer = nil, storageTexelBufferOffsetAlignmentBytes: VkDeviceSize, storageTexelBufferOffsetSingleTexelAlignment: VkBool32, uniformTexelBufferOffsetAlignmentBytes: VkDeviceSize, uniformTexelBufferOffsetSingleTexelAlignment: VkBool32): VkPhysicalDeviceTexelBufferAlignmentProperties = - result.sType = sType - result.pNext = pNext - result.storageTexelBufferOffsetAlignmentBytes = storageTexelBufferOffsetAlignmentBytes - result.storageTexelBufferOffsetSingleTexelAlignment = storageTexelBufferOffsetSingleTexelAlignment - result.uniformTexelBufferOffsetAlignmentBytes = uniformTexelBufferOffsetAlignmentBytes - result.uniformTexelBufferOffsetSingleTexelAlignment = uniformTexelBufferOffsetSingleTexelAlignment + result = VkPhysicalDeviceTexelBufferAlignmentProperties( + sType: sType, + pNext: pNext, + storageTexelBufferOffsetAlignmentBytes: storageTexelBufferOffsetAlignmentBytes, + storageTexelBufferOffsetSingleTexelAlignment: storageTexelBufferOffsetSingleTexelAlignment, + uniformTexelBufferOffsetAlignmentBytes: uniformTexelBufferOffsetAlignmentBytes, + uniformTexelBufferOffsetSingleTexelAlignment: uniformTexelBufferOffsetSingleTexelAlignment, + ) proc newVkPhysicalDeviceSubgroupSizeControlFeatures*(sType: VkStructureType, pNext: pointer = nil, subgroupSizeControl: VkBool32, computeFullSubgroups: VkBool32): VkPhysicalDeviceSubgroupSizeControlFeatures = - result.sType = sType - result.pNext = pNext - result.subgroupSizeControl = subgroupSizeControl - result.computeFullSubgroups = computeFullSubgroups + result = VkPhysicalDeviceSubgroupSizeControlFeatures( + sType: sType, + pNext: pNext, + subgroupSizeControl: subgroupSizeControl, + computeFullSubgroups: computeFullSubgroups, + ) proc newVkPhysicalDeviceSubgroupSizeControlProperties*(sType: VkStructureType, pNext: pointer = nil, minSubgroupSize: uint32, maxSubgroupSize: uint32, maxComputeWorkgroupSubgroups: uint32, requiredSubgroupSizeStages: VkShaderStageFlags): VkPhysicalDeviceSubgroupSizeControlProperties = - result.sType = sType - result.pNext = pNext - result.minSubgroupSize = minSubgroupSize - result.maxSubgroupSize = maxSubgroupSize - result.maxComputeWorkgroupSubgroups = maxComputeWorkgroupSubgroups - result.requiredSubgroupSizeStages = requiredSubgroupSizeStages + result = VkPhysicalDeviceSubgroupSizeControlProperties( + sType: sType, + pNext: pNext, + minSubgroupSize: minSubgroupSize, + maxSubgroupSize: maxSubgroupSize, + maxComputeWorkgroupSubgroups: maxComputeWorkgroupSubgroups, + requiredSubgroupSizeStages: requiredSubgroupSizeStages, + ) proc newVkPipelineShaderStageRequiredSubgroupSizeCreateInfo*(sType: VkStructureType, pNext: pointer = nil, requiredSubgroupSize: uint32): VkPipelineShaderStageRequiredSubgroupSizeCreateInfo = - result.sType = sType - result.pNext = pNext - result.requiredSubgroupSize = requiredSubgroupSize + result = VkPipelineShaderStageRequiredSubgroupSizeCreateInfo( + sType: sType, + pNext: pNext, + requiredSubgroupSize: requiredSubgroupSize, + ) proc newVkSubpassShadingPipelineCreateInfoHUAWEI*(sType: VkStructureType, pNext: pointer = nil, renderPass: VkRenderPass, subpass: uint32): VkSubpassShadingPipelineCreateInfoHUAWEI = - result.sType = sType - result.pNext = pNext - result.renderPass = renderPass - result.subpass = subpass + result = VkSubpassShadingPipelineCreateInfoHUAWEI( + sType: sType, + pNext: pNext, + renderPass: renderPass, + subpass: subpass, + ) proc newVkPhysicalDeviceSubpassShadingPropertiesHUAWEI*(sType: VkStructureType, pNext: pointer = nil, maxSubpassShadingWorkgroupSizeAspectRatio: uint32): VkPhysicalDeviceSubpassShadingPropertiesHUAWEI = - result.sType = sType - result.pNext = pNext - result.maxSubpassShadingWorkgroupSizeAspectRatio = maxSubpassShadingWorkgroupSizeAspectRatio + result = VkPhysicalDeviceSubpassShadingPropertiesHUAWEI( + sType: sType, + pNext: pNext, + maxSubpassShadingWorkgroupSizeAspectRatio: maxSubpassShadingWorkgroupSizeAspectRatio, + ) proc newVkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI*(sType: VkStructureType, pNext: pointer = nil, maxWorkGroupCount: array[3, uint32], maxWorkGroupSize: array[3, uint32], maxOutputClusterCount: uint32, indirectBufferOffsetAlignment: VkDeviceSize): VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI = - result.sType = sType - result.pNext = pNext - result.maxWorkGroupCount = maxWorkGroupCount - result.maxWorkGroupSize = maxWorkGroupSize - result.maxOutputClusterCount = maxOutputClusterCount - result.indirectBufferOffsetAlignment = indirectBufferOffsetAlignment + result = VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI( + sType: sType, + pNext: pNext, + maxWorkGroupCount: maxWorkGroupCount, + maxWorkGroupSize: maxWorkGroupSize, + maxOutputClusterCount: maxOutputClusterCount, + indirectBufferOffsetAlignment: indirectBufferOffsetAlignment, + ) proc newVkMemoryOpaqueCaptureAddressAllocateInfo*(sType: VkStructureType, pNext: pointer = nil, opaqueCaptureAddress: uint64): VkMemoryOpaqueCaptureAddressAllocateInfo = - result.sType = sType - result.pNext = pNext - result.opaqueCaptureAddress = opaqueCaptureAddress + result = VkMemoryOpaqueCaptureAddressAllocateInfo( + sType: sType, + pNext: pNext, + opaqueCaptureAddress: opaqueCaptureAddress, + ) proc newVkDeviceMemoryOpaqueCaptureAddressInfo*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory): VkDeviceMemoryOpaqueCaptureAddressInfo = - result.sType = sType - result.pNext = pNext - result.memory = memory + result = VkDeviceMemoryOpaqueCaptureAddressInfo( + sType: sType, + pNext: pNext, + memory: memory, + ) proc newVkPhysicalDeviceLineRasterizationFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, rectangularLines: VkBool32, bresenhamLines: VkBool32, smoothLines: VkBool32, stippledRectangularLines: VkBool32, stippledBresenhamLines: VkBool32, stippledSmoothLines: VkBool32): VkPhysicalDeviceLineRasterizationFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.rectangularLines = rectangularLines - result.bresenhamLines = bresenhamLines - result.smoothLines = smoothLines - result.stippledRectangularLines = stippledRectangularLines - result.stippledBresenhamLines = stippledBresenhamLines - result.stippledSmoothLines = stippledSmoothLines + result = VkPhysicalDeviceLineRasterizationFeaturesKHR( + sType: sType, + pNext: pNext, + rectangularLines: rectangularLines, + bresenhamLines: bresenhamLines, + smoothLines: smoothLines, + stippledRectangularLines: stippledRectangularLines, + stippledBresenhamLines: stippledBresenhamLines, + stippledSmoothLines: stippledSmoothLines, + ) proc newVkPhysicalDeviceLineRasterizationPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, lineSubPixelPrecisionBits: uint32): VkPhysicalDeviceLineRasterizationPropertiesKHR = - result.sType = sType - result.pNext = pNext - result.lineSubPixelPrecisionBits = lineSubPixelPrecisionBits + result = VkPhysicalDeviceLineRasterizationPropertiesKHR( + sType: sType, + pNext: pNext, + lineSubPixelPrecisionBits: lineSubPixelPrecisionBits, + ) proc newVkPipelineRasterizationLineStateCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, lineRasterizationMode: VkLineRasterizationModeKHR, stippledLineEnable: VkBool32, lineStippleFactor: uint32, lineStipplePattern: uint16): VkPipelineRasterizationLineStateCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.lineRasterizationMode = lineRasterizationMode - result.stippledLineEnable = stippledLineEnable - result.lineStippleFactor = lineStippleFactor - result.lineStipplePattern = lineStipplePattern + result = VkPipelineRasterizationLineStateCreateInfoKHR( + sType: sType, + pNext: pNext, + lineRasterizationMode: lineRasterizationMode, + stippledLineEnable: stippledLineEnable, + lineStippleFactor: lineStippleFactor, + lineStipplePattern: lineStipplePattern, + ) proc newVkPhysicalDevicePipelineCreationCacheControlFeatures*(sType: VkStructureType, pNext: pointer = nil, pipelineCreationCacheControl: VkBool32): VkPhysicalDevicePipelineCreationCacheControlFeatures = - result.sType = sType - result.pNext = pNext - result.pipelineCreationCacheControl = pipelineCreationCacheControl + result = VkPhysicalDevicePipelineCreationCacheControlFeatures( + sType: sType, + pNext: pNext, + pipelineCreationCacheControl: pipelineCreationCacheControl, + ) proc newVkPhysicalDeviceVulkan11Features*(sType: VkStructureType, pNext: pointer = nil, storageBuffer16BitAccess: VkBool32, uniformAndStorageBuffer16BitAccess: VkBool32, storagePushConstant16: VkBool32, storageInputOutput16: VkBool32, multiview: VkBool32, multiviewGeometryShader: VkBool32, multiviewTessellationShader: VkBool32, variablePointersStorageBuffer: VkBool32, variablePointers: VkBool32, protectedMemory: VkBool32, samplerYcbcrConversion: VkBool32, shaderDrawParameters: VkBool32): VkPhysicalDeviceVulkan11Features = - result.sType = sType - result.pNext = pNext - result.storageBuffer16BitAccess = storageBuffer16BitAccess - result.uniformAndStorageBuffer16BitAccess = uniformAndStorageBuffer16BitAccess - result.storagePushConstant16 = storagePushConstant16 - result.storageInputOutput16 = storageInputOutput16 - result.multiview = multiview - result.multiviewGeometryShader = multiviewGeometryShader - result.multiviewTessellationShader = multiviewTessellationShader - result.variablePointersStorageBuffer = variablePointersStorageBuffer - result.variablePointers = variablePointers - result.protectedMemory = protectedMemory - result.samplerYcbcrConversion = samplerYcbcrConversion - result.shaderDrawParameters = shaderDrawParameters + result = VkPhysicalDeviceVulkan11Features( + sType: sType, + pNext: pNext, + storageBuffer16BitAccess: storageBuffer16BitAccess, + uniformAndStorageBuffer16BitAccess: uniformAndStorageBuffer16BitAccess, + storagePushConstant16: storagePushConstant16, + storageInputOutput16: storageInputOutput16, + multiview: multiview, + multiviewGeometryShader: multiviewGeometryShader, + multiviewTessellationShader: multiviewTessellationShader, + variablePointersStorageBuffer: variablePointersStorageBuffer, + variablePointers: variablePointers, + protectedMemory: protectedMemory, + samplerYcbcrConversion: samplerYcbcrConversion, + shaderDrawParameters: shaderDrawParameters, + ) proc newVkPhysicalDeviceVulkan11Properties*(sType: VkStructureType, pNext: pointer = nil, deviceUUID: array[VK_UUID_SIZE, uint8], driverUUID: array[VK_UUID_SIZE, uint8], deviceLUID: array[VK_LUID_SIZE, uint8], deviceNodeMask: uint32, deviceLUIDValid: VkBool32, subgroupSize: uint32, subgroupSupportedStages: VkShaderStageFlags, subgroupSupportedOperations: VkSubgroupFeatureFlags, subgroupQuadOperationsInAllStages: VkBool32, pointClippingBehavior: VkPointClippingBehavior, maxMultiviewViewCount: uint32, maxMultiviewInstanceIndex: uint32, protectedNoFault: VkBool32, maxPerSetDescriptors: uint32, maxMemoryAllocationSize: VkDeviceSize): VkPhysicalDeviceVulkan11Properties = - result.sType = sType - result.pNext = pNext - result.deviceUUID = deviceUUID - result.driverUUID = driverUUID - result.deviceLUID = deviceLUID - result.deviceNodeMask = deviceNodeMask - result.deviceLUIDValid = deviceLUIDValid - result.subgroupSize = subgroupSize - result.subgroupSupportedStages = subgroupSupportedStages - result.subgroupSupportedOperations = subgroupSupportedOperations - result.subgroupQuadOperationsInAllStages = subgroupQuadOperationsInAllStages - result.pointClippingBehavior = pointClippingBehavior - result.maxMultiviewViewCount = maxMultiviewViewCount - result.maxMultiviewInstanceIndex = maxMultiviewInstanceIndex - result.protectedNoFault = protectedNoFault - result.maxPerSetDescriptors = maxPerSetDescriptors - result.maxMemoryAllocationSize = maxMemoryAllocationSize + result = VkPhysicalDeviceVulkan11Properties( + sType: sType, + pNext: pNext, + deviceUUID: deviceUUID, + driverUUID: driverUUID, + deviceLUID: deviceLUID, + deviceNodeMask: deviceNodeMask, + deviceLUIDValid: deviceLUIDValid, + subgroupSize: subgroupSize, + subgroupSupportedStages: subgroupSupportedStages, + subgroupSupportedOperations: subgroupSupportedOperations, + subgroupQuadOperationsInAllStages: subgroupQuadOperationsInAllStages, + pointClippingBehavior: pointClippingBehavior, + maxMultiviewViewCount: maxMultiviewViewCount, + maxMultiviewInstanceIndex: maxMultiviewInstanceIndex, + protectedNoFault: protectedNoFault, + maxPerSetDescriptors: maxPerSetDescriptors, + maxMemoryAllocationSize: maxMemoryAllocationSize, + ) proc newVkPhysicalDeviceVulkan12Features*(sType: VkStructureType, pNext: pointer = nil, samplerMirrorClampToEdge: VkBool32, drawIndirectCount: VkBool32, storageBuffer8BitAccess: VkBool32, uniformAndStorageBuffer8BitAccess: VkBool32, storagePushConstant8: VkBool32, shaderBufferInt64Atomics: VkBool32, shaderSharedInt64Atomics: VkBool32, shaderFloat16: VkBool32, shaderInt8: VkBool32, descriptorIndexing: VkBool32, shaderInputAttachmentArrayDynamicIndexing: VkBool32, shaderUniformTexelBufferArrayDynamicIndexing: VkBool32, shaderStorageTexelBufferArrayDynamicIndexing: VkBool32, shaderUniformBufferArrayNonUniformIndexing: VkBool32, shaderSampledImageArrayNonUniformIndexing: VkBool32, shaderStorageBufferArrayNonUniformIndexing: VkBool32, shaderStorageImageArrayNonUniformIndexing: VkBool32, shaderInputAttachmentArrayNonUniformIndexing: VkBool32, shaderUniformTexelBufferArrayNonUniformIndexing: VkBool32, shaderStorageTexelBufferArrayNonUniformIndexing: VkBool32, descriptorBindingUniformBufferUpdateAfterBind: VkBool32, descriptorBindingSampledImageUpdateAfterBind: VkBool32, descriptorBindingStorageImageUpdateAfterBind: VkBool32, descriptorBindingStorageBufferUpdateAfterBind: VkBool32, descriptorBindingUniformTexelBufferUpdateAfterBind: VkBool32, descriptorBindingStorageTexelBufferUpdateAfterBind: VkBool32, descriptorBindingUpdateUnusedWhilePending: VkBool32, descriptorBindingPartiallyBound: VkBool32, descriptorBindingVariableDescriptorCount: VkBool32, runtimeDescriptorArray: VkBool32, samplerFilterMinmax: VkBool32, scalarBlockLayout: VkBool32, imagelessFramebuffer: VkBool32, uniformBufferStandardLayout: VkBool32, shaderSubgroupExtendedTypes: VkBool32, separateDepthStencilLayouts: VkBool32, hostQueryReset: VkBool32, timelineSemaphore: VkBool32, bufferDeviceAddress: VkBool32, bufferDeviceAddressCaptureReplay: VkBool32, bufferDeviceAddressMultiDevice: VkBool32, vulkanMemoryModel: VkBool32, vulkanMemoryModelDeviceScope: VkBool32, vulkanMemoryModelAvailabilityVisibilityChains: VkBool32, shaderOutputViewportIndex: VkBool32, shaderOutputLayer: VkBool32, subgroupBroadcastDynamicId: VkBool32): VkPhysicalDeviceVulkan12Features = - result.sType = sType - result.pNext = pNext - result.samplerMirrorClampToEdge = samplerMirrorClampToEdge - result.drawIndirectCount = drawIndirectCount - result.storageBuffer8BitAccess = storageBuffer8BitAccess - result.uniformAndStorageBuffer8BitAccess = uniformAndStorageBuffer8BitAccess - result.storagePushConstant8 = storagePushConstant8 - result.shaderBufferInt64Atomics = shaderBufferInt64Atomics - result.shaderSharedInt64Atomics = shaderSharedInt64Atomics - result.shaderFloat16 = shaderFloat16 - result.shaderInt8 = shaderInt8 - result.descriptorIndexing = descriptorIndexing - result.shaderInputAttachmentArrayDynamicIndexing = shaderInputAttachmentArrayDynamicIndexing - result.shaderUniformTexelBufferArrayDynamicIndexing = shaderUniformTexelBufferArrayDynamicIndexing - result.shaderStorageTexelBufferArrayDynamicIndexing = shaderStorageTexelBufferArrayDynamicIndexing - result.shaderUniformBufferArrayNonUniformIndexing = shaderUniformBufferArrayNonUniformIndexing - result.shaderSampledImageArrayNonUniformIndexing = shaderSampledImageArrayNonUniformIndexing - result.shaderStorageBufferArrayNonUniformIndexing = shaderStorageBufferArrayNonUniformIndexing - result.shaderStorageImageArrayNonUniformIndexing = shaderStorageImageArrayNonUniformIndexing - result.shaderInputAttachmentArrayNonUniformIndexing = shaderInputAttachmentArrayNonUniformIndexing - result.shaderUniformTexelBufferArrayNonUniformIndexing = shaderUniformTexelBufferArrayNonUniformIndexing - result.shaderStorageTexelBufferArrayNonUniformIndexing = shaderStorageTexelBufferArrayNonUniformIndexing - result.descriptorBindingUniformBufferUpdateAfterBind = descriptorBindingUniformBufferUpdateAfterBind - result.descriptorBindingSampledImageUpdateAfterBind = descriptorBindingSampledImageUpdateAfterBind - result.descriptorBindingStorageImageUpdateAfterBind = descriptorBindingStorageImageUpdateAfterBind - result.descriptorBindingStorageBufferUpdateAfterBind = descriptorBindingStorageBufferUpdateAfterBind - result.descriptorBindingUniformTexelBufferUpdateAfterBind = descriptorBindingUniformTexelBufferUpdateAfterBind - result.descriptorBindingStorageTexelBufferUpdateAfterBind = descriptorBindingStorageTexelBufferUpdateAfterBind - result.descriptorBindingUpdateUnusedWhilePending = descriptorBindingUpdateUnusedWhilePending - result.descriptorBindingPartiallyBound = descriptorBindingPartiallyBound - result.descriptorBindingVariableDescriptorCount = descriptorBindingVariableDescriptorCount - result.runtimeDescriptorArray = runtimeDescriptorArray - result.samplerFilterMinmax = samplerFilterMinmax - result.scalarBlockLayout = scalarBlockLayout - result.imagelessFramebuffer = imagelessFramebuffer - result.uniformBufferStandardLayout = uniformBufferStandardLayout - result.shaderSubgroupExtendedTypes = shaderSubgroupExtendedTypes - result.separateDepthStencilLayouts = separateDepthStencilLayouts - result.hostQueryReset = hostQueryReset - result.timelineSemaphore = timelineSemaphore - result.bufferDeviceAddress = bufferDeviceAddress - result.bufferDeviceAddressCaptureReplay = bufferDeviceAddressCaptureReplay - result.bufferDeviceAddressMultiDevice = bufferDeviceAddressMultiDevice - result.vulkanMemoryModel = vulkanMemoryModel - result.vulkanMemoryModelDeviceScope = vulkanMemoryModelDeviceScope - result.vulkanMemoryModelAvailabilityVisibilityChains = vulkanMemoryModelAvailabilityVisibilityChains - result.shaderOutputViewportIndex = shaderOutputViewportIndex - result.shaderOutputLayer = shaderOutputLayer - result.subgroupBroadcastDynamicId = subgroupBroadcastDynamicId + result = VkPhysicalDeviceVulkan12Features( + sType: sType, + pNext: pNext, + samplerMirrorClampToEdge: samplerMirrorClampToEdge, + drawIndirectCount: drawIndirectCount, + storageBuffer8BitAccess: storageBuffer8BitAccess, + uniformAndStorageBuffer8BitAccess: uniformAndStorageBuffer8BitAccess, + storagePushConstant8: storagePushConstant8, + shaderBufferInt64Atomics: shaderBufferInt64Atomics, + shaderSharedInt64Atomics: shaderSharedInt64Atomics, + shaderFloat16: shaderFloat16, + shaderInt8: shaderInt8, + descriptorIndexing: descriptorIndexing, + shaderInputAttachmentArrayDynamicIndexing: shaderInputAttachmentArrayDynamicIndexing, + shaderUniformTexelBufferArrayDynamicIndexing: shaderUniformTexelBufferArrayDynamicIndexing, + shaderStorageTexelBufferArrayDynamicIndexing: shaderStorageTexelBufferArrayDynamicIndexing, + shaderUniformBufferArrayNonUniformIndexing: shaderUniformBufferArrayNonUniformIndexing, + shaderSampledImageArrayNonUniformIndexing: shaderSampledImageArrayNonUniformIndexing, + shaderStorageBufferArrayNonUniformIndexing: shaderStorageBufferArrayNonUniformIndexing, + shaderStorageImageArrayNonUniformIndexing: shaderStorageImageArrayNonUniformIndexing, + shaderInputAttachmentArrayNonUniformIndexing: shaderInputAttachmentArrayNonUniformIndexing, + shaderUniformTexelBufferArrayNonUniformIndexing: shaderUniformTexelBufferArrayNonUniformIndexing, + shaderStorageTexelBufferArrayNonUniformIndexing: shaderStorageTexelBufferArrayNonUniformIndexing, + descriptorBindingUniformBufferUpdateAfterBind: descriptorBindingUniformBufferUpdateAfterBind, + descriptorBindingSampledImageUpdateAfterBind: descriptorBindingSampledImageUpdateAfterBind, + descriptorBindingStorageImageUpdateAfterBind: descriptorBindingStorageImageUpdateAfterBind, + descriptorBindingStorageBufferUpdateAfterBind: descriptorBindingStorageBufferUpdateAfterBind, + descriptorBindingUniformTexelBufferUpdateAfterBind: descriptorBindingUniformTexelBufferUpdateAfterBind, + descriptorBindingStorageTexelBufferUpdateAfterBind: descriptorBindingStorageTexelBufferUpdateAfterBind, + descriptorBindingUpdateUnusedWhilePending: descriptorBindingUpdateUnusedWhilePending, + descriptorBindingPartiallyBound: descriptorBindingPartiallyBound, + descriptorBindingVariableDescriptorCount: descriptorBindingVariableDescriptorCount, + runtimeDescriptorArray: runtimeDescriptorArray, + samplerFilterMinmax: samplerFilterMinmax, + scalarBlockLayout: scalarBlockLayout, + imagelessFramebuffer: imagelessFramebuffer, + uniformBufferStandardLayout: uniformBufferStandardLayout, + shaderSubgroupExtendedTypes: shaderSubgroupExtendedTypes, + separateDepthStencilLayouts: separateDepthStencilLayouts, + hostQueryReset: hostQueryReset, + timelineSemaphore: timelineSemaphore, + bufferDeviceAddress: bufferDeviceAddress, + bufferDeviceAddressCaptureReplay: bufferDeviceAddressCaptureReplay, + bufferDeviceAddressMultiDevice: bufferDeviceAddressMultiDevice, + vulkanMemoryModel: vulkanMemoryModel, + vulkanMemoryModelDeviceScope: vulkanMemoryModelDeviceScope, + vulkanMemoryModelAvailabilityVisibilityChains: vulkanMemoryModelAvailabilityVisibilityChains, + shaderOutputViewportIndex: shaderOutputViewportIndex, + shaderOutputLayer: shaderOutputLayer, + subgroupBroadcastDynamicId: subgroupBroadcastDynamicId, + ) proc newVkPhysicalDeviceVulkan12Properties*(sType: VkStructureType, pNext: pointer = nil, driverID: VkDriverId, driverName: array[VK_MAX_DRIVER_NAME_SIZE, char], driverInfo: array[VK_MAX_DRIVER_INFO_SIZE, char], conformanceVersion: VkConformanceVersion, denormBehaviorIndependence: VkShaderFloatControlsIndependence, roundingModeIndependence: VkShaderFloatControlsIndependence, shaderSignedZeroInfNanPreserveFloat16: VkBool32, shaderSignedZeroInfNanPreserveFloat32: VkBool32, shaderSignedZeroInfNanPreserveFloat64: VkBool32, shaderDenormPreserveFloat16: VkBool32, shaderDenormPreserveFloat32: VkBool32, shaderDenormPreserveFloat64: VkBool32, shaderDenormFlushToZeroFloat16: VkBool32, shaderDenormFlushToZeroFloat32: VkBool32, shaderDenormFlushToZeroFloat64: VkBool32, shaderRoundingModeRTEFloat16: VkBool32, shaderRoundingModeRTEFloat32: VkBool32, shaderRoundingModeRTEFloat64: VkBool32, shaderRoundingModeRTZFloat16: VkBool32, shaderRoundingModeRTZFloat32: VkBool32, shaderRoundingModeRTZFloat64: VkBool32, maxUpdateAfterBindDescriptorsInAllPools: uint32, shaderUniformBufferArrayNonUniformIndexingNative: VkBool32, shaderSampledImageArrayNonUniformIndexingNative: VkBool32, shaderStorageBufferArrayNonUniformIndexingNative: VkBool32, shaderStorageImageArrayNonUniformIndexingNative: VkBool32, shaderInputAttachmentArrayNonUniformIndexingNative: VkBool32, robustBufferAccessUpdateAfterBind: VkBool32, quadDivergentImplicitLod: VkBool32, maxPerStageDescriptorUpdateAfterBindSamplers: uint32, maxPerStageDescriptorUpdateAfterBindUniformBuffers: uint32, maxPerStageDescriptorUpdateAfterBindStorageBuffers: uint32, maxPerStageDescriptorUpdateAfterBindSampledImages: uint32, maxPerStageDescriptorUpdateAfterBindStorageImages: uint32, maxPerStageDescriptorUpdateAfterBindInputAttachments: uint32, maxPerStageUpdateAfterBindResources: uint32, maxDescriptorSetUpdateAfterBindSamplers: uint32, maxDescriptorSetUpdateAfterBindUniformBuffers: uint32, maxDescriptorSetUpdateAfterBindUniformBuffersDynamic: uint32, maxDescriptorSetUpdateAfterBindStorageBuffers: uint32, maxDescriptorSetUpdateAfterBindStorageBuffersDynamic: uint32, maxDescriptorSetUpdateAfterBindSampledImages: uint32, maxDescriptorSetUpdateAfterBindStorageImages: uint32, maxDescriptorSetUpdateAfterBindInputAttachments: uint32, supportedDepthResolveModes: VkResolveModeFlags, supportedStencilResolveModes: VkResolveModeFlags, independentResolveNone: VkBool32, independentResolve: VkBool32, filterMinmaxSingleComponentFormats: VkBool32, filterMinmaxImageComponentMapping: VkBool32, maxTimelineSemaphoreValueDifference: uint64, framebufferIntegerColorSampleCounts: VkSampleCountFlags): VkPhysicalDeviceVulkan12Properties = - result.sType = sType - result.pNext = pNext - result.driverID = driverID - result.driverName = driverName - result.driverInfo = driverInfo - result.conformanceVersion = conformanceVersion - result.denormBehaviorIndependence = denormBehaviorIndependence - result.roundingModeIndependence = roundingModeIndependence - result.shaderSignedZeroInfNanPreserveFloat16 = shaderSignedZeroInfNanPreserveFloat16 - result.shaderSignedZeroInfNanPreserveFloat32 = shaderSignedZeroInfNanPreserveFloat32 - result.shaderSignedZeroInfNanPreserveFloat64 = shaderSignedZeroInfNanPreserveFloat64 - result.shaderDenormPreserveFloat16 = shaderDenormPreserveFloat16 - result.shaderDenormPreserveFloat32 = shaderDenormPreserveFloat32 - result.shaderDenormPreserveFloat64 = shaderDenormPreserveFloat64 - result.shaderDenormFlushToZeroFloat16 = shaderDenormFlushToZeroFloat16 - result.shaderDenormFlushToZeroFloat32 = shaderDenormFlushToZeroFloat32 - result.shaderDenormFlushToZeroFloat64 = shaderDenormFlushToZeroFloat64 - result.shaderRoundingModeRTEFloat16 = shaderRoundingModeRTEFloat16 - result.shaderRoundingModeRTEFloat32 = shaderRoundingModeRTEFloat32 - result.shaderRoundingModeRTEFloat64 = shaderRoundingModeRTEFloat64 - result.shaderRoundingModeRTZFloat16 = shaderRoundingModeRTZFloat16 - result.shaderRoundingModeRTZFloat32 = shaderRoundingModeRTZFloat32 - result.shaderRoundingModeRTZFloat64 = shaderRoundingModeRTZFloat64 - result.maxUpdateAfterBindDescriptorsInAllPools = maxUpdateAfterBindDescriptorsInAllPools - result.shaderUniformBufferArrayNonUniformIndexingNative = shaderUniformBufferArrayNonUniformIndexingNative - result.shaderSampledImageArrayNonUniformIndexingNative = shaderSampledImageArrayNonUniformIndexingNative - result.shaderStorageBufferArrayNonUniformIndexingNative = shaderStorageBufferArrayNonUniformIndexingNative - result.shaderStorageImageArrayNonUniformIndexingNative = shaderStorageImageArrayNonUniformIndexingNative - result.shaderInputAttachmentArrayNonUniformIndexingNative = shaderInputAttachmentArrayNonUniformIndexingNative - result.robustBufferAccessUpdateAfterBind = robustBufferAccessUpdateAfterBind - result.quadDivergentImplicitLod = quadDivergentImplicitLod - result.maxPerStageDescriptorUpdateAfterBindSamplers = maxPerStageDescriptorUpdateAfterBindSamplers - result.maxPerStageDescriptorUpdateAfterBindUniformBuffers = maxPerStageDescriptorUpdateAfterBindUniformBuffers - result.maxPerStageDescriptorUpdateAfterBindStorageBuffers = maxPerStageDescriptorUpdateAfterBindStorageBuffers - result.maxPerStageDescriptorUpdateAfterBindSampledImages = maxPerStageDescriptorUpdateAfterBindSampledImages - result.maxPerStageDescriptorUpdateAfterBindStorageImages = maxPerStageDescriptorUpdateAfterBindStorageImages - result.maxPerStageDescriptorUpdateAfterBindInputAttachments = maxPerStageDescriptorUpdateAfterBindInputAttachments - result.maxPerStageUpdateAfterBindResources = maxPerStageUpdateAfterBindResources - result.maxDescriptorSetUpdateAfterBindSamplers = maxDescriptorSetUpdateAfterBindSamplers - result.maxDescriptorSetUpdateAfterBindUniformBuffers = maxDescriptorSetUpdateAfterBindUniformBuffers - result.maxDescriptorSetUpdateAfterBindUniformBuffersDynamic = maxDescriptorSetUpdateAfterBindUniformBuffersDynamic - result.maxDescriptorSetUpdateAfterBindStorageBuffers = maxDescriptorSetUpdateAfterBindStorageBuffers - result.maxDescriptorSetUpdateAfterBindStorageBuffersDynamic = maxDescriptorSetUpdateAfterBindStorageBuffersDynamic - result.maxDescriptorSetUpdateAfterBindSampledImages = maxDescriptorSetUpdateAfterBindSampledImages - result.maxDescriptorSetUpdateAfterBindStorageImages = maxDescriptorSetUpdateAfterBindStorageImages - result.maxDescriptorSetUpdateAfterBindInputAttachments = maxDescriptorSetUpdateAfterBindInputAttachments - result.supportedDepthResolveModes = supportedDepthResolveModes - result.supportedStencilResolveModes = supportedStencilResolveModes - result.independentResolveNone = independentResolveNone - result.independentResolve = independentResolve - result.filterMinmaxSingleComponentFormats = filterMinmaxSingleComponentFormats - result.filterMinmaxImageComponentMapping = filterMinmaxImageComponentMapping - result.maxTimelineSemaphoreValueDifference = maxTimelineSemaphoreValueDifference - result.framebufferIntegerColorSampleCounts = framebufferIntegerColorSampleCounts + result = VkPhysicalDeviceVulkan12Properties( + sType: sType, + pNext: pNext, + driverID: driverID, + driverName: driverName, + driverInfo: driverInfo, + conformanceVersion: conformanceVersion, + denormBehaviorIndependence: denormBehaviorIndependence, + roundingModeIndependence: roundingModeIndependence, + shaderSignedZeroInfNanPreserveFloat16: shaderSignedZeroInfNanPreserveFloat16, + shaderSignedZeroInfNanPreserveFloat32: shaderSignedZeroInfNanPreserveFloat32, + shaderSignedZeroInfNanPreserveFloat64: shaderSignedZeroInfNanPreserveFloat64, + shaderDenormPreserveFloat16: shaderDenormPreserveFloat16, + shaderDenormPreserveFloat32: shaderDenormPreserveFloat32, + shaderDenormPreserveFloat64: shaderDenormPreserveFloat64, + shaderDenormFlushToZeroFloat16: shaderDenormFlushToZeroFloat16, + shaderDenormFlushToZeroFloat32: shaderDenormFlushToZeroFloat32, + shaderDenormFlushToZeroFloat64: shaderDenormFlushToZeroFloat64, + shaderRoundingModeRTEFloat16: shaderRoundingModeRTEFloat16, + shaderRoundingModeRTEFloat32: shaderRoundingModeRTEFloat32, + shaderRoundingModeRTEFloat64: shaderRoundingModeRTEFloat64, + shaderRoundingModeRTZFloat16: shaderRoundingModeRTZFloat16, + shaderRoundingModeRTZFloat32: shaderRoundingModeRTZFloat32, + shaderRoundingModeRTZFloat64: shaderRoundingModeRTZFloat64, + maxUpdateAfterBindDescriptorsInAllPools: maxUpdateAfterBindDescriptorsInAllPools, + shaderUniformBufferArrayNonUniformIndexingNative: shaderUniformBufferArrayNonUniformIndexingNative, + shaderSampledImageArrayNonUniformIndexingNative: shaderSampledImageArrayNonUniformIndexingNative, + shaderStorageBufferArrayNonUniformIndexingNative: shaderStorageBufferArrayNonUniformIndexingNative, + shaderStorageImageArrayNonUniformIndexingNative: shaderStorageImageArrayNonUniformIndexingNative, + shaderInputAttachmentArrayNonUniformIndexingNative: shaderInputAttachmentArrayNonUniformIndexingNative, + robustBufferAccessUpdateAfterBind: robustBufferAccessUpdateAfterBind, + quadDivergentImplicitLod: quadDivergentImplicitLod, + maxPerStageDescriptorUpdateAfterBindSamplers: maxPerStageDescriptorUpdateAfterBindSamplers, + maxPerStageDescriptorUpdateAfterBindUniformBuffers: maxPerStageDescriptorUpdateAfterBindUniformBuffers, + maxPerStageDescriptorUpdateAfterBindStorageBuffers: maxPerStageDescriptorUpdateAfterBindStorageBuffers, + maxPerStageDescriptorUpdateAfterBindSampledImages: maxPerStageDescriptorUpdateAfterBindSampledImages, + maxPerStageDescriptorUpdateAfterBindStorageImages: maxPerStageDescriptorUpdateAfterBindStorageImages, + maxPerStageDescriptorUpdateAfterBindInputAttachments: maxPerStageDescriptorUpdateAfterBindInputAttachments, + maxPerStageUpdateAfterBindResources: maxPerStageUpdateAfterBindResources, + maxDescriptorSetUpdateAfterBindSamplers: maxDescriptorSetUpdateAfterBindSamplers, + maxDescriptorSetUpdateAfterBindUniformBuffers: maxDescriptorSetUpdateAfterBindUniformBuffers, + maxDescriptorSetUpdateAfterBindUniformBuffersDynamic: maxDescriptorSetUpdateAfterBindUniformBuffersDynamic, + maxDescriptorSetUpdateAfterBindStorageBuffers: maxDescriptorSetUpdateAfterBindStorageBuffers, + maxDescriptorSetUpdateAfterBindStorageBuffersDynamic: maxDescriptorSetUpdateAfterBindStorageBuffersDynamic, + maxDescriptorSetUpdateAfterBindSampledImages: maxDescriptorSetUpdateAfterBindSampledImages, + maxDescriptorSetUpdateAfterBindStorageImages: maxDescriptorSetUpdateAfterBindStorageImages, + maxDescriptorSetUpdateAfterBindInputAttachments: maxDescriptorSetUpdateAfterBindInputAttachments, + supportedDepthResolveModes: supportedDepthResolveModes, + supportedStencilResolveModes: supportedStencilResolveModes, + independentResolveNone: independentResolveNone, + independentResolve: independentResolve, + filterMinmaxSingleComponentFormats: filterMinmaxSingleComponentFormats, + filterMinmaxImageComponentMapping: filterMinmaxImageComponentMapping, + maxTimelineSemaphoreValueDifference: maxTimelineSemaphoreValueDifference, + framebufferIntegerColorSampleCounts: framebufferIntegerColorSampleCounts, + ) proc newVkPhysicalDeviceVulkan13Features*(sType: VkStructureType, pNext: pointer = nil, robustImageAccess: VkBool32, inlineUniformBlock: VkBool32, descriptorBindingInlineUniformBlockUpdateAfterBind: VkBool32, pipelineCreationCacheControl: VkBool32, privateData: VkBool32, shaderDemoteToHelperInvocation: VkBool32, shaderTerminateInvocation: VkBool32, subgroupSizeControl: VkBool32, computeFullSubgroups: VkBool32, synchronization2: VkBool32, textureCompressionASTC_HDR: VkBool32, shaderZeroInitializeWorkgroupMemory: VkBool32, dynamicRendering: VkBool32, shaderIntegerDotProduct: VkBool32, maintenance4: VkBool32): VkPhysicalDeviceVulkan13Features = - result.sType = sType - result.pNext = pNext - result.robustImageAccess = robustImageAccess - result.inlineUniformBlock = inlineUniformBlock - result.descriptorBindingInlineUniformBlockUpdateAfterBind = descriptorBindingInlineUniformBlockUpdateAfterBind - result.pipelineCreationCacheControl = pipelineCreationCacheControl - result.privateData = privateData - result.shaderDemoteToHelperInvocation = shaderDemoteToHelperInvocation - result.shaderTerminateInvocation = shaderTerminateInvocation - result.subgroupSizeControl = subgroupSizeControl - result.computeFullSubgroups = computeFullSubgroups - result.synchronization2 = synchronization2 - result.textureCompressionASTC_HDR = textureCompressionASTC_HDR - result.shaderZeroInitializeWorkgroupMemory = shaderZeroInitializeWorkgroupMemory - result.dynamicRendering = dynamicRendering - result.shaderIntegerDotProduct = shaderIntegerDotProduct - result.maintenance4 = maintenance4 + result = VkPhysicalDeviceVulkan13Features( + sType: sType, + pNext: pNext, + robustImageAccess: robustImageAccess, + inlineUniformBlock: inlineUniformBlock, + descriptorBindingInlineUniformBlockUpdateAfterBind: descriptorBindingInlineUniformBlockUpdateAfterBind, + pipelineCreationCacheControl: pipelineCreationCacheControl, + privateData: privateData, + shaderDemoteToHelperInvocation: shaderDemoteToHelperInvocation, + shaderTerminateInvocation: shaderTerminateInvocation, + subgroupSizeControl: subgroupSizeControl, + computeFullSubgroups: computeFullSubgroups, + synchronization2: synchronization2, + textureCompressionASTC_HDR: textureCompressionASTC_HDR, + shaderZeroInitializeWorkgroupMemory: shaderZeroInitializeWorkgroupMemory, + dynamicRendering: dynamicRendering, + shaderIntegerDotProduct: shaderIntegerDotProduct, + maintenance4: maintenance4, + ) proc newVkPhysicalDeviceVulkan13Properties*(sType: VkStructureType, pNext: pointer = nil, minSubgroupSize: uint32, maxSubgroupSize: uint32, maxComputeWorkgroupSubgroups: uint32, requiredSubgroupSizeStages: VkShaderStageFlags, maxInlineUniformBlockSize: uint32, maxPerStageDescriptorInlineUniformBlocks: uint32, maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks: uint32, maxDescriptorSetInlineUniformBlocks: uint32, maxDescriptorSetUpdateAfterBindInlineUniformBlocks: uint32, maxInlineUniformTotalSize: uint32, integerDotProduct8BitUnsignedAccelerated: VkBool32, integerDotProduct8BitSignedAccelerated: VkBool32, integerDotProduct8BitMixedSignednessAccelerated: VkBool32, integerDotProduct4x8BitPackedUnsignedAccelerated: VkBool32, integerDotProduct4x8BitPackedSignedAccelerated: VkBool32, integerDotProduct4x8BitPackedMixedSignednessAccelerated: VkBool32, integerDotProduct16BitUnsignedAccelerated: VkBool32, integerDotProduct16BitSignedAccelerated: VkBool32, integerDotProduct16BitMixedSignednessAccelerated: VkBool32, integerDotProduct32BitUnsignedAccelerated: VkBool32, integerDotProduct32BitSignedAccelerated: VkBool32, integerDotProduct32BitMixedSignednessAccelerated: VkBool32, integerDotProduct64BitUnsignedAccelerated: VkBool32, integerDotProduct64BitSignedAccelerated: VkBool32, integerDotProduct64BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating8BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating8BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating16BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating16BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating32BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating32BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating64BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating64BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated: VkBool32, storageTexelBufferOffsetAlignmentBytes: VkDeviceSize, storageTexelBufferOffsetSingleTexelAlignment: VkBool32, uniformTexelBufferOffsetAlignmentBytes: VkDeviceSize, uniformTexelBufferOffsetSingleTexelAlignment: VkBool32, maxBufferSize: VkDeviceSize): VkPhysicalDeviceVulkan13Properties = - result.sType = sType - result.pNext = pNext - result.minSubgroupSize = minSubgroupSize - result.maxSubgroupSize = maxSubgroupSize - result.maxComputeWorkgroupSubgroups = maxComputeWorkgroupSubgroups - result.requiredSubgroupSizeStages = requiredSubgroupSizeStages - result.maxInlineUniformBlockSize = maxInlineUniformBlockSize - result.maxPerStageDescriptorInlineUniformBlocks = maxPerStageDescriptorInlineUniformBlocks - result.maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks = maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks - result.maxDescriptorSetInlineUniformBlocks = maxDescriptorSetInlineUniformBlocks - result.maxDescriptorSetUpdateAfterBindInlineUniformBlocks = maxDescriptorSetUpdateAfterBindInlineUniformBlocks - result.maxInlineUniformTotalSize = maxInlineUniformTotalSize - result.integerDotProduct8BitUnsignedAccelerated = integerDotProduct8BitUnsignedAccelerated - result.integerDotProduct8BitSignedAccelerated = integerDotProduct8BitSignedAccelerated - result.integerDotProduct8BitMixedSignednessAccelerated = integerDotProduct8BitMixedSignednessAccelerated - result.integerDotProduct4x8BitPackedUnsignedAccelerated = integerDotProduct4x8BitPackedUnsignedAccelerated - result.integerDotProduct4x8BitPackedSignedAccelerated = integerDotProduct4x8BitPackedSignedAccelerated - result.integerDotProduct4x8BitPackedMixedSignednessAccelerated = integerDotProduct4x8BitPackedMixedSignednessAccelerated - result.integerDotProduct16BitUnsignedAccelerated = integerDotProduct16BitUnsignedAccelerated - result.integerDotProduct16BitSignedAccelerated = integerDotProduct16BitSignedAccelerated - result.integerDotProduct16BitMixedSignednessAccelerated = integerDotProduct16BitMixedSignednessAccelerated - result.integerDotProduct32BitUnsignedAccelerated = integerDotProduct32BitUnsignedAccelerated - result.integerDotProduct32BitSignedAccelerated = integerDotProduct32BitSignedAccelerated - result.integerDotProduct32BitMixedSignednessAccelerated = integerDotProduct32BitMixedSignednessAccelerated - result.integerDotProduct64BitUnsignedAccelerated = integerDotProduct64BitUnsignedAccelerated - result.integerDotProduct64BitSignedAccelerated = integerDotProduct64BitSignedAccelerated - result.integerDotProduct64BitMixedSignednessAccelerated = integerDotProduct64BitMixedSignednessAccelerated - result.integerDotProductAccumulatingSaturating8BitUnsignedAccelerated = integerDotProductAccumulatingSaturating8BitUnsignedAccelerated - result.integerDotProductAccumulatingSaturating8BitSignedAccelerated = integerDotProductAccumulatingSaturating8BitSignedAccelerated - result.integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated = integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated - result.integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated = integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated - result.integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated = integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated - result.integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated = integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated - result.integerDotProductAccumulatingSaturating16BitUnsignedAccelerated = integerDotProductAccumulatingSaturating16BitUnsignedAccelerated - result.integerDotProductAccumulatingSaturating16BitSignedAccelerated = integerDotProductAccumulatingSaturating16BitSignedAccelerated - result.integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated = integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated - result.integerDotProductAccumulatingSaturating32BitUnsignedAccelerated = integerDotProductAccumulatingSaturating32BitUnsignedAccelerated - result.integerDotProductAccumulatingSaturating32BitSignedAccelerated = integerDotProductAccumulatingSaturating32BitSignedAccelerated - result.integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated = integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated - result.integerDotProductAccumulatingSaturating64BitUnsignedAccelerated = integerDotProductAccumulatingSaturating64BitUnsignedAccelerated - result.integerDotProductAccumulatingSaturating64BitSignedAccelerated = integerDotProductAccumulatingSaturating64BitSignedAccelerated - result.integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated = integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated - result.storageTexelBufferOffsetAlignmentBytes = storageTexelBufferOffsetAlignmentBytes - result.storageTexelBufferOffsetSingleTexelAlignment = storageTexelBufferOffsetSingleTexelAlignment - result.uniformTexelBufferOffsetAlignmentBytes = uniformTexelBufferOffsetAlignmentBytes - result.uniformTexelBufferOffsetSingleTexelAlignment = uniformTexelBufferOffsetSingleTexelAlignment - result.maxBufferSize = maxBufferSize + result = VkPhysicalDeviceVulkan13Properties( + sType: sType, + pNext: pNext, + minSubgroupSize: minSubgroupSize, + maxSubgroupSize: maxSubgroupSize, + maxComputeWorkgroupSubgroups: maxComputeWorkgroupSubgroups, + requiredSubgroupSizeStages: requiredSubgroupSizeStages, + maxInlineUniformBlockSize: maxInlineUniformBlockSize, + maxPerStageDescriptorInlineUniformBlocks: maxPerStageDescriptorInlineUniformBlocks, + maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks: maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks, + maxDescriptorSetInlineUniformBlocks: maxDescriptorSetInlineUniformBlocks, + maxDescriptorSetUpdateAfterBindInlineUniformBlocks: maxDescriptorSetUpdateAfterBindInlineUniformBlocks, + maxInlineUniformTotalSize: maxInlineUniformTotalSize, + integerDotProduct8BitUnsignedAccelerated: integerDotProduct8BitUnsignedAccelerated, + integerDotProduct8BitSignedAccelerated: integerDotProduct8BitSignedAccelerated, + integerDotProduct8BitMixedSignednessAccelerated: integerDotProduct8BitMixedSignednessAccelerated, + integerDotProduct4x8BitPackedUnsignedAccelerated: integerDotProduct4x8BitPackedUnsignedAccelerated, + integerDotProduct4x8BitPackedSignedAccelerated: integerDotProduct4x8BitPackedSignedAccelerated, + integerDotProduct4x8BitPackedMixedSignednessAccelerated: integerDotProduct4x8BitPackedMixedSignednessAccelerated, + integerDotProduct16BitUnsignedAccelerated: integerDotProduct16BitUnsignedAccelerated, + integerDotProduct16BitSignedAccelerated: integerDotProduct16BitSignedAccelerated, + integerDotProduct16BitMixedSignednessAccelerated: integerDotProduct16BitMixedSignednessAccelerated, + integerDotProduct32BitUnsignedAccelerated: integerDotProduct32BitUnsignedAccelerated, + integerDotProduct32BitSignedAccelerated: integerDotProduct32BitSignedAccelerated, + integerDotProduct32BitMixedSignednessAccelerated: integerDotProduct32BitMixedSignednessAccelerated, + integerDotProduct64BitUnsignedAccelerated: integerDotProduct64BitUnsignedAccelerated, + integerDotProduct64BitSignedAccelerated: integerDotProduct64BitSignedAccelerated, + integerDotProduct64BitMixedSignednessAccelerated: integerDotProduct64BitMixedSignednessAccelerated, + integerDotProductAccumulatingSaturating8BitUnsignedAccelerated: integerDotProductAccumulatingSaturating8BitUnsignedAccelerated, + integerDotProductAccumulatingSaturating8BitSignedAccelerated: integerDotProductAccumulatingSaturating8BitSignedAccelerated, + integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated: integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated, + integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated: integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated, + integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated: integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated, + integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated: integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated, + integerDotProductAccumulatingSaturating16BitUnsignedAccelerated: integerDotProductAccumulatingSaturating16BitUnsignedAccelerated, + integerDotProductAccumulatingSaturating16BitSignedAccelerated: integerDotProductAccumulatingSaturating16BitSignedAccelerated, + integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated: integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated, + integerDotProductAccumulatingSaturating32BitUnsignedAccelerated: integerDotProductAccumulatingSaturating32BitUnsignedAccelerated, + integerDotProductAccumulatingSaturating32BitSignedAccelerated: integerDotProductAccumulatingSaturating32BitSignedAccelerated, + integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated: integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated, + integerDotProductAccumulatingSaturating64BitUnsignedAccelerated: integerDotProductAccumulatingSaturating64BitUnsignedAccelerated, + integerDotProductAccumulatingSaturating64BitSignedAccelerated: integerDotProductAccumulatingSaturating64BitSignedAccelerated, + integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated: integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated, + storageTexelBufferOffsetAlignmentBytes: storageTexelBufferOffsetAlignmentBytes, + storageTexelBufferOffsetSingleTexelAlignment: storageTexelBufferOffsetSingleTexelAlignment, + uniformTexelBufferOffsetAlignmentBytes: uniformTexelBufferOffsetAlignmentBytes, + uniformTexelBufferOffsetSingleTexelAlignment: uniformTexelBufferOffsetSingleTexelAlignment, + maxBufferSize: maxBufferSize, + ) proc newVkPipelineCompilerControlCreateInfoAMD*(sType: VkStructureType, pNext: pointer = nil, compilerControlFlags: VkPipelineCompilerControlFlagsAMD): VkPipelineCompilerControlCreateInfoAMD = - result.sType = sType - result.pNext = pNext - result.compilerControlFlags = compilerControlFlags + result = VkPipelineCompilerControlCreateInfoAMD( + sType: sType, + pNext: pNext, + compilerControlFlags: compilerControlFlags, + ) proc newVkPhysicalDeviceCoherentMemoryFeaturesAMD*(sType: VkStructureType, pNext: pointer = nil, deviceCoherentMemory: VkBool32): VkPhysicalDeviceCoherentMemoryFeaturesAMD = - result.sType = sType - result.pNext = pNext - result.deviceCoherentMemory = deviceCoherentMemory + result = VkPhysicalDeviceCoherentMemoryFeaturesAMD( + sType: sType, + pNext: pNext, + deviceCoherentMemory: deviceCoherentMemory, + ) proc newVkFaultData*(sType: VkStructureType, pNext: pointer = nil, faultLevel: VkFaultLevel, faultType: VkFaultType): VkFaultData = - result.sType = sType - result.pNext = pNext - result.faultLevel = faultLevel - result.faultType = faultType + result = VkFaultData( + sType: sType, + pNext: pNext, + faultLevel: faultLevel, + faultType: faultType, + ) proc newVkFaultCallbackInfo*(sType: VkStructureType, pNext: pointer = nil, faultCount: uint32, pFaults: ptr VkFaultData, pfnFaultCallback: PFN_vkFaultCallbackFunction): VkFaultCallbackInfo = - result.sType = sType - result.pNext = pNext - result.faultCount = faultCount - result.pFaults = pFaults - result.pfnFaultCallback = pfnFaultCallback + result = VkFaultCallbackInfo( + sType: sType, + pNext: pNext, + faultCount: faultCount, + pFaults: pFaults, + pfnFaultCallback: pfnFaultCallback, + ) proc newVkPhysicalDeviceToolProperties*(sType: VkStructureType, pNext: pointer = nil, name: array[VK_MAX_EXTENSION_NAME_SIZE, char], version: array[VK_MAX_EXTENSION_NAME_SIZE, char], purposes: VkToolPurposeFlags, description: array[VK_MAX_DESCRIPTION_SIZE, char], layer: array[VK_MAX_EXTENSION_NAME_SIZE, char]): VkPhysicalDeviceToolProperties = - result.sType = sType - result.pNext = pNext - result.name = name - result.version = version - result.purposes = purposes - result.description = description - result.layer = layer + result = VkPhysicalDeviceToolProperties( + sType: sType, + pNext: pNext, + name: name, + version: version, + purposes: purposes, + description: description, + layer: layer, + ) proc newVkSamplerCustomBorderColorCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, customBorderColor: VkClearColorValue, format: VkFormat): VkSamplerCustomBorderColorCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.customBorderColor = customBorderColor - result.format = format + result = VkSamplerCustomBorderColorCreateInfoEXT( + sType: sType, + pNext: pNext, + customBorderColor: customBorderColor, + format: format, + ) proc newVkPhysicalDeviceCustomBorderColorPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxCustomBorderColorSamplers: uint32): VkPhysicalDeviceCustomBorderColorPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.maxCustomBorderColorSamplers = maxCustomBorderColorSamplers + result = VkPhysicalDeviceCustomBorderColorPropertiesEXT( + sType: sType, + pNext: pNext, + maxCustomBorderColorSamplers: maxCustomBorderColorSamplers, + ) proc newVkPhysicalDeviceCustomBorderColorFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, customBorderColors: VkBool32, customBorderColorWithoutFormat: VkBool32): VkPhysicalDeviceCustomBorderColorFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.customBorderColors = customBorderColors - result.customBorderColorWithoutFormat = customBorderColorWithoutFormat + result = VkPhysicalDeviceCustomBorderColorFeaturesEXT( + sType: sType, + pNext: pNext, + customBorderColors: customBorderColors, + customBorderColorWithoutFormat: customBorderColorWithoutFormat, + ) proc newVkSamplerBorderColorComponentMappingCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, components: VkComponentMapping, srgb: VkBool32): VkSamplerBorderColorComponentMappingCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.components = components - result.srgb = srgb + result = VkSamplerBorderColorComponentMappingCreateInfoEXT( + sType: sType, + pNext: pNext, + components: components, + srgb: srgb, + ) proc newVkPhysicalDeviceBorderColorSwizzleFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, borderColorSwizzle: VkBool32, borderColorSwizzleFromImage: VkBool32): VkPhysicalDeviceBorderColorSwizzleFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.borderColorSwizzle = borderColorSwizzle - result.borderColorSwizzleFromImage = borderColorSwizzleFromImage + result = VkPhysicalDeviceBorderColorSwizzleFeaturesEXT( + sType: sType, + pNext: pNext, + borderColorSwizzle: borderColorSwizzle, + borderColorSwizzleFromImage: borderColorSwizzleFromImage, + ) proc newVkAccelerationStructureGeometryTrianglesDataKHR*(sType: VkStructureType, pNext: pointer = nil, vertexFormat: VkFormat, vertexData: VkDeviceOrHostAddressConstKHR, vertexStride: VkDeviceSize, maxVertex: uint32, indexType: VkIndexType, indexData: VkDeviceOrHostAddressConstKHR, transformData: VkDeviceOrHostAddressConstKHR): VkAccelerationStructureGeometryTrianglesDataKHR = - result.sType = sType - result.pNext = pNext - result.vertexFormat = vertexFormat - result.vertexData = vertexData - result.vertexStride = vertexStride - result.maxVertex = maxVertex - result.indexType = indexType - result.indexData = indexData - result.transformData = transformData + result = VkAccelerationStructureGeometryTrianglesDataKHR( + sType: sType, + pNext: pNext, + vertexFormat: vertexFormat, + vertexData: vertexData, + vertexStride: vertexStride, + maxVertex: maxVertex, + indexType: indexType, + indexData: indexData, + transformData: transformData, + ) proc newVkAccelerationStructureGeometryAabbsDataKHR*(sType: VkStructureType, pNext: pointer = nil, data: VkDeviceOrHostAddressConstKHR, stride: VkDeviceSize): VkAccelerationStructureGeometryAabbsDataKHR = - result.sType = sType - result.pNext = pNext - result.data = data - result.stride = stride + result = VkAccelerationStructureGeometryAabbsDataKHR( + sType: sType, + pNext: pNext, + data: data, + stride: stride, + ) proc newVkAccelerationStructureGeometryInstancesDataKHR*(sType: VkStructureType, pNext: pointer = nil, arrayOfPointers: VkBool32, data: VkDeviceOrHostAddressConstKHR): VkAccelerationStructureGeometryInstancesDataKHR = - result.sType = sType - result.pNext = pNext - result.arrayOfPointers = arrayOfPointers - result.data = data + result = VkAccelerationStructureGeometryInstancesDataKHR( + sType: sType, + pNext: pNext, + arrayOfPointers: arrayOfPointers, + data: data, + ) proc newVkAccelerationStructureGeometryKHR*(sType: VkStructureType, pNext: pointer = nil, geometryType: VkGeometryTypeKHR, geometry: VkAccelerationStructureGeometryDataKHR, flags: VkGeometryFlagsKHR = 0.VkGeometryFlagsKHR): VkAccelerationStructureGeometryKHR = - result.sType = sType - result.pNext = pNext - result.geometryType = geometryType - result.geometry = geometry - result.flags = flags + result = VkAccelerationStructureGeometryKHR( + sType: sType, + pNext: pNext, + geometryType: geometryType, + geometry: geometry, + flags: flags, + ) proc newVkAccelerationStructureBuildGeometryInfoKHR*(sType: VkStructureType, pNext: pointer = nil, `type`: VkAccelerationStructureTypeKHR, flags: VkBuildAccelerationStructureFlagsKHR = 0.VkBuildAccelerationStructureFlagsKHR, mode: VkBuildAccelerationStructureModeKHR, srcAccelerationStructure: VkAccelerationStructureKHR, dstAccelerationStructure: VkAccelerationStructureKHR, geometryCount: uint32, pGeometries: ptr VkAccelerationStructureGeometryKHR, ppGeometries: ptr ptr VkAccelerationStructureGeometryKHR, scratchData: VkDeviceOrHostAddressKHR): VkAccelerationStructureBuildGeometryInfoKHR = - result.sType = sType - result.pNext = pNext - result.`type` = `type` - result.flags = flags - result.mode = mode - result.srcAccelerationStructure = srcAccelerationStructure - result.dstAccelerationStructure = dstAccelerationStructure - result.geometryCount = geometryCount - result.pGeometries = pGeometries - result.ppGeometries = ppGeometries - result.scratchData = scratchData + result = VkAccelerationStructureBuildGeometryInfoKHR( + sType: sType, + pNext: pNext, + `type`: `type`, + flags: flags, + mode: mode, + srcAccelerationStructure: srcAccelerationStructure, + dstAccelerationStructure: dstAccelerationStructure, + geometryCount: geometryCount, + pGeometries: pGeometries, + ppGeometries: ppGeometries, + scratchData: scratchData, + ) proc newVkAccelerationStructureBuildRangeInfoKHR*(primitiveCount: uint32, primitiveOffset: uint32, firstVertex: uint32, transformOffset: uint32): VkAccelerationStructureBuildRangeInfoKHR = - result.primitiveCount = primitiveCount - result.primitiveOffset = primitiveOffset - result.firstVertex = firstVertex - result.transformOffset = transformOffset + result = VkAccelerationStructureBuildRangeInfoKHR( + primitiveCount: primitiveCount, + primitiveOffset: primitiveOffset, + firstVertex: firstVertex, + transformOffset: transformOffset, + ) proc newVkAccelerationStructureCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, createFlags: VkAccelerationStructureCreateFlagsKHR, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize, `type`: VkAccelerationStructureTypeKHR, deviceAddress: VkDeviceAddress): VkAccelerationStructureCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.createFlags = createFlags - result.buffer = buffer - result.offset = offset - result.size = size - result.`type` = `type` - result.deviceAddress = deviceAddress + result = VkAccelerationStructureCreateInfoKHR( + sType: sType, + pNext: pNext, + createFlags: createFlags, + buffer: buffer, + offset: offset, + size: size, + `type`: `type`, + deviceAddress: deviceAddress, + ) proc newVkAabbPositionsKHR*(minX: float32, minY: float32, minZ: float32, maxX: float32, maxY: float32, maxZ: float32): VkAabbPositionsKHR = - result.minX = minX - result.minY = minY - result.minZ = minZ - result.maxX = maxX - result.maxY = maxY - result.maxZ = maxZ + result = VkAabbPositionsKHR( + minX: minX, + minY: minY, + minZ: minZ, + maxX: maxX, + maxY: maxY, + maxZ: maxZ, + ) proc newVkTransformMatrixKHR*(matrix: array[3, float32]): VkTransformMatrixKHR = - result.matrix = matrix + result = VkTransformMatrixKHR( + matrix: matrix, + ) proc newVkAccelerationStructureInstanceKHR*(transform: VkTransformMatrixKHR, instanceCustomIndex: uint32, mask: uint32, instanceShaderBindingTableRecordOffset: uint32, flags: VkGeometryInstanceFlagsKHR = 0.VkGeometryInstanceFlagsKHR, accelerationStructureReference: uint64): VkAccelerationStructureInstanceKHR = - result.transform = transform - result.instanceCustomIndex = instanceCustomIndex - result.mask = mask - result.instanceShaderBindingTableRecordOffset = instanceShaderBindingTableRecordOffset - result.flags = flags - result.accelerationStructureReference = accelerationStructureReference + result = VkAccelerationStructureInstanceKHR( + transform: transform, + instanceCustomIndex: instanceCustomIndex, + mask: mask, + instanceShaderBindingTableRecordOffset: instanceShaderBindingTableRecordOffset, + flags: flags, + accelerationStructureReference: accelerationStructureReference, + ) proc newVkAccelerationStructureDeviceAddressInfoKHR*(sType: VkStructureType, pNext: pointer = nil, accelerationStructure: VkAccelerationStructureKHR): VkAccelerationStructureDeviceAddressInfoKHR = - result.sType = sType - result.pNext = pNext - result.accelerationStructure = accelerationStructure + result = VkAccelerationStructureDeviceAddressInfoKHR( + sType: sType, + pNext: pNext, + accelerationStructure: accelerationStructure, + ) proc newVkAccelerationStructureVersionInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pVersionData: ptr uint8): VkAccelerationStructureVersionInfoKHR = - result.sType = sType - result.pNext = pNext - result.pVersionData = pVersionData + result = VkAccelerationStructureVersionInfoKHR( + sType: sType, + pNext: pNext, + pVersionData: pVersionData, + ) proc newVkCopyAccelerationStructureInfoKHR*(sType: VkStructureType, pNext: pointer = nil, src: VkAccelerationStructureKHR, dst: VkAccelerationStructureKHR, mode: VkCopyAccelerationStructureModeKHR): VkCopyAccelerationStructureInfoKHR = - result.sType = sType - result.pNext = pNext - result.src = src - result.dst = dst - result.mode = mode + result = VkCopyAccelerationStructureInfoKHR( + sType: sType, + pNext: pNext, + src: src, + dst: dst, + mode: mode, + ) proc newVkCopyAccelerationStructureToMemoryInfoKHR*(sType: VkStructureType, pNext: pointer = nil, src: VkAccelerationStructureKHR, dst: VkDeviceOrHostAddressKHR, mode: VkCopyAccelerationStructureModeKHR): VkCopyAccelerationStructureToMemoryInfoKHR = - result.sType = sType - result.pNext = pNext - result.src = src - result.dst = dst - result.mode = mode + result = VkCopyAccelerationStructureToMemoryInfoKHR( + sType: sType, + pNext: pNext, + src: src, + dst: dst, + mode: mode, + ) proc newVkCopyMemoryToAccelerationStructureInfoKHR*(sType: VkStructureType, pNext: pointer = nil, src: VkDeviceOrHostAddressConstKHR, dst: VkAccelerationStructureKHR, mode: VkCopyAccelerationStructureModeKHR): VkCopyMemoryToAccelerationStructureInfoKHR = - result.sType = sType - result.pNext = pNext - result.src = src - result.dst = dst - result.mode = mode + result = VkCopyMemoryToAccelerationStructureInfoKHR( + sType: sType, + pNext: pNext, + src: src, + dst: dst, + mode: mode, + ) proc newVkRayTracingPipelineInterfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, maxPipelineRayPayloadSize: uint32, maxPipelineRayHitAttributeSize: uint32): VkRayTracingPipelineInterfaceCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.maxPipelineRayPayloadSize = maxPipelineRayPayloadSize - result.maxPipelineRayHitAttributeSize = maxPipelineRayHitAttributeSize + result = VkRayTracingPipelineInterfaceCreateInfoKHR( + sType: sType, + pNext: pNext, + maxPipelineRayPayloadSize: maxPipelineRayPayloadSize, + maxPipelineRayHitAttributeSize: maxPipelineRayHitAttributeSize, + ) proc newVkPipelineLibraryCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, libraryCount: uint32, pLibraries: ptr VkPipeline): VkPipelineLibraryCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.libraryCount = libraryCount - result.pLibraries = pLibraries + result = VkPipelineLibraryCreateInfoKHR( + sType: sType, + pNext: pNext, + libraryCount: libraryCount, + pLibraries: pLibraries, + ) proc newVkRefreshObjectKHR*(objectType: VkObjectType, objectHandle: uint64, flags: VkRefreshObjectFlagsKHR = 0.VkRefreshObjectFlagsKHR): VkRefreshObjectKHR = - result.objectType = objectType - result.objectHandle = objectHandle - result.flags = flags + result = VkRefreshObjectKHR( + objectType: objectType, + objectHandle: objectHandle, + flags: flags, + ) proc newVkRefreshObjectListKHR*(sType: VkStructureType, pNext: pointer = nil, objectCount: uint32, pObjects: ptr VkRefreshObjectKHR): VkRefreshObjectListKHR = - result.sType = sType - result.pNext = pNext - result.objectCount = objectCount - result.pObjects = pObjects + result = VkRefreshObjectListKHR( + sType: sType, + pNext: pNext, + objectCount: objectCount, + pObjects: pObjects, + ) proc newVkPhysicalDeviceExtendedDynamicStateFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, extendedDynamicState: VkBool32): VkPhysicalDeviceExtendedDynamicStateFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.extendedDynamicState = extendedDynamicState + result = VkPhysicalDeviceExtendedDynamicStateFeaturesEXT( + sType: sType, + pNext: pNext, + extendedDynamicState: extendedDynamicState, + ) proc newVkPhysicalDeviceExtendedDynamicState2FeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, extendedDynamicState2: VkBool32, extendedDynamicState2LogicOp: VkBool32, extendedDynamicState2PatchControlPoints: VkBool32): VkPhysicalDeviceExtendedDynamicState2FeaturesEXT = - result.sType = sType - result.pNext = pNext - result.extendedDynamicState2 = extendedDynamicState2 - result.extendedDynamicState2LogicOp = extendedDynamicState2LogicOp - result.extendedDynamicState2PatchControlPoints = extendedDynamicState2PatchControlPoints + result = VkPhysicalDeviceExtendedDynamicState2FeaturesEXT( + sType: sType, + pNext: pNext, + extendedDynamicState2: extendedDynamicState2, + extendedDynamicState2LogicOp: extendedDynamicState2LogicOp, + extendedDynamicState2PatchControlPoints: extendedDynamicState2PatchControlPoints, + ) proc newVkPhysicalDeviceExtendedDynamicState3FeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, extendedDynamicState3TessellationDomainOrigin: VkBool32, extendedDynamicState3DepthClampEnable: VkBool32, extendedDynamicState3PolygonMode: VkBool32, extendedDynamicState3RasterizationSamples: VkBool32, extendedDynamicState3SampleMask: VkBool32, extendedDynamicState3AlphaToCoverageEnable: VkBool32, extendedDynamicState3AlphaToOneEnable: VkBool32, extendedDynamicState3LogicOpEnable: VkBool32, extendedDynamicState3ColorBlendEnable: VkBool32, extendedDynamicState3ColorBlendEquation: VkBool32, extendedDynamicState3ColorWriteMask: VkBool32, extendedDynamicState3RasterizationStream: VkBool32, extendedDynamicState3ConservativeRasterizationMode: VkBool32, extendedDynamicState3ExtraPrimitiveOverestimationSize: VkBool32, extendedDynamicState3DepthClipEnable: VkBool32, extendedDynamicState3SampleLocationsEnable: VkBool32, extendedDynamicState3ColorBlendAdvanced: VkBool32, extendedDynamicState3ProvokingVertexMode: VkBool32, extendedDynamicState3LineRasterizationMode: VkBool32, extendedDynamicState3LineStippleEnable: VkBool32, extendedDynamicState3DepthClipNegativeOneToOne: VkBool32, extendedDynamicState3ViewportWScalingEnable: VkBool32, extendedDynamicState3ViewportSwizzle: VkBool32, extendedDynamicState3CoverageToColorEnable: VkBool32, extendedDynamicState3CoverageToColorLocation: VkBool32, extendedDynamicState3CoverageModulationMode: VkBool32, extendedDynamicState3CoverageModulationTableEnable: VkBool32, extendedDynamicState3CoverageModulationTable: VkBool32, extendedDynamicState3CoverageReductionMode: VkBool32, extendedDynamicState3RepresentativeFragmentTestEnable: VkBool32, extendedDynamicState3ShadingRateImageEnable: VkBool32): VkPhysicalDeviceExtendedDynamicState3FeaturesEXT = - result.sType = sType - result.pNext = pNext - result.extendedDynamicState3TessellationDomainOrigin = extendedDynamicState3TessellationDomainOrigin - result.extendedDynamicState3DepthClampEnable = extendedDynamicState3DepthClampEnable - result.extendedDynamicState3PolygonMode = extendedDynamicState3PolygonMode - result.extendedDynamicState3RasterizationSamples = extendedDynamicState3RasterizationSamples - result.extendedDynamicState3SampleMask = extendedDynamicState3SampleMask - result.extendedDynamicState3AlphaToCoverageEnable = extendedDynamicState3AlphaToCoverageEnable - result.extendedDynamicState3AlphaToOneEnable = extendedDynamicState3AlphaToOneEnable - result.extendedDynamicState3LogicOpEnable = extendedDynamicState3LogicOpEnable - result.extendedDynamicState3ColorBlendEnable = extendedDynamicState3ColorBlendEnable - result.extendedDynamicState3ColorBlendEquation = extendedDynamicState3ColorBlendEquation - result.extendedDynamicState3ColorWriteMask = extendedDynamicState3ColorWriteMask - result.extendedDynamicState3RasterizationStream = extendedDynamicState3RasterizationStream - result.extendedDynamicState3ConservativeRasterizationMode = extendedDynamicState3ConservativeRasterizationMode - result.extendedDynamicState3ExtraPrimitiveOverestimationSize = extendedDynamicState3ExtraPrimitiveOverestimationSize - result.extendedDynamicState3DepthClipEnable = extendedDynamicState3DepthClipEnable - result.extendedDynamicState3SampleLocationsEnable = extendedDynamicState3SampleLocationsEnable - result.extendedDynamicState3ColorBlendAdvanced = extendedDynamicState3ColorBlendAdvanced - result.extendedDynamicState3ProvokingVertexMode = extendedDynamicState3ProvokingVertexMode - result.extendedDynamicState3LineRasterizationMode = extendedDynamicState3LineRasterizationMode - result.extendedDynamicState3LineStippleEnable = extendedDynamicState3LineStippleEnable - result.extendedDynamicState3DepthClipNegativeOneToOne = extendedDynamicState3DepthClipNegativeOneToOne - result.extendedDynamicState3ViewportWScalingEnable = extendedDynamicState3ViewportWScalingEnable - result.extendedDynamicState3ViewportSwizzle = extendedDynamicState3ViewportSwizzle - result.extendedDynamicState3CoverageToColorEnable = extendedDynamicState3CoverageToColorEnable - result.extendedDynamicState3CoverageToColorLocation = extendedDynamicState3CoverageToColorLocation - result.extendedDynamicState3CoverageModulationMode = extendedDynamicState3CoverageModulationMode - result.extendedDynamicState3CoverageModulationTableEnable = extendedDynamicState3CoverageModulationTableEnable - result.extendedDynamicState3CoverageModulationTable = extendedDynamicState3CoverageModulationTable - result.extendedDynamicState3CoverageReductionMode = extendedDynamicState3CoverageReductionMode - result.extendedDynamicState3RepresentativeFragmentTestEnable = extendedDynamicState3RepresentativeFragmentTestEnable - result.extendedDynamicState3ShadingRateImageEnable = extendedDynamicState3ShadingRateImageEnable + result = VkPhysicalDeviceExtendedDynamicState3FeaturesEXT( + sType: sType, + pNext: pNext, + extendedDynamicState3TessellationDomainOrigin: extendedDynamicState3TessellationDomainOrigin, + extendedDynamicState3DepthClampEnable: extendedDynamicState3DepthClampEnable, + extendedDynamicState3PolygonMode: extendedDynamicState3PolygonMode, + extendedDynamicState3RasterizationSamples: extendedDynamicState3RasterizationSamples, + extendedDynamicState3SampleMask: extendedDynamicState3SampleMask, + extendedDynamicState3AlphaToCoverageEnable: extendedDynamicState3AlphaToCoverageEnable, + extendedDynamicState3AlphaToOneEnable: extendedDynamicState3AlphaToOneEnable, + extendedDynamicState3LogicOpEnable: extendedDynamicState3LogicOpEnable, + extendedDynamicState3ColorBlendEnable: extendedDynamicState3ColorBlendEnable, + extendedDynamicState3ColorBlendEquation: extendedDynamicState3ColorBlendEquation, + extendedDynamicState3ColorWriteMask: extendedDynamicState3ColorWriteMask, + extendedDynamicState3RasterizationStream: extendedDynamicState3RasterizationStream, + extendedDynamicState3ConservativeRasterizationMode: extendedDynamicState3ConservativeRasterizationMode, + extendedDynamicState3ExtraPrimitiveOverestimationSize: extendedDynamicState3ExtraPrimitiveOverestimationSize, + extendedDynamicState3DepthClipEnable: extendedDynamicState3DepthClipEnable, + extendedDynamicState3SampleLocationsEnable: extendedDynamicState3SampleLocationsEnable, + extendedDynamicState3ColorBlendAdvanced: extendedDynamicState3ColorBlendAdvanced, + extendedDynamicState3ProvokingVertexMode: extendedDynamicState3ProvokingVertexMode, + extendedDynamicState3LineRasterizationMode: extendedDynamicState3LineRasterizationMode, + extendedDynamicState3LineStippleEnable: extendedDynamicState3LineStippleEnable, + extendedDynamicState3DepthClipNegativeOneToOne: extendedDynamicState3DepthClipNegativeOneToOne, + extendedDynamicState3ViewportWScalingEnable: extendedDynamicState3ViewportWScalingEnable, + extendedDynamicState3ViewportSwizzle: extendedDynamicState3ViewportSwizzle, + extendedDynamicState3CoverageToColorEnable: extendedDynamicState3CoverageToColorEnable, + extendedDynamicState3CoverageToColorLocation: extendedDynamicState3CoverageToColorLocation, + extendedDynamicState3CoverageModulationMode: extendedDynamicState3CoverageModulationMode, + extendedDynamicState3CoverageModulationTableEnable: extendedDynamicState3CoverageModulationTableEnable, + extendedDynamicState3CoverageModulationTable: extendedDynamicState3CoverageModulationTable, + extendedDynamicState3CoverageReductionMode: extendedDynamicState3CoverageReductionMode, + extendedDynamicState3RepresentativeFragmentTestEnable: extendedDynamicState3RepresentativeFragmentTestEnable, + extendedDynamicState3ShadingRateImageEnable: extendedDynamicState3ShadingRateImageEnable, + ) proc newVkPhysicalDeviceExtendedDynamicState3PropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, dynamicPrimitiveTopologyUnrestricted: VkBool32): VkPhysicalDeviceExtendedDynamicState3PropertiesEXT = - result.sType = sType - result.pNext = pNext - result.dynamicPrimitiveTopologyUnrestricted = dynamicPrimitiveTopologyUnrestricted + result = VkPhysicalDeviceExtendedDynamicState3PropertiesEXT( + sType: sType, + pNext: pNext, + dynamicPrimitiveTopologyUnrestricted: dynamicPrimitiveTopologyUnrestricted, + ) proc newVkColorBlendEquationEXT*(srcColorBlendFactor: VkBlendFactor, dstColorBlendFactor: VkBlendFactor, colorBlendOp: VkBlendOp, srcAlphaBlendFactor: VkBlendFactor, dstAlphaBlendFactor: VkBlendFactor, alphaBlendOp: VkBlendOp): VkColorBlendEquationEXT = - result.srcColorBlendFactor = srcColorBlendFactor - result.dstColorBlendFactor = dstColorBlendFactor - result.colorBlendOp = colorBlendOp - result.srcAlphaBlendFactor = srcAlphaBlendFactor - result.dstAlphaBlendFactor = dstAlphaBlendFactor - result.alphaBlendOp = alphaBlendOp + result = VkColorBlendEquationEXT( + srcColorBlendFactor: srcColorBlendFactor, + dstColorBlendFactor: dstColorBlendFactor, + colorBlendOp: colorBlendOp, + srcAlphaBlendFactor: srcAlphaBlendFactor, + dstAlphaBlendFactor: dstAlphaBlendFactor, + alphaBlendOp: alphaBlendOp, + ) proc newVkColorBlendAdvancedEXT*(advancedBlendOp: VkBlendOp, srcPremultiplied: VkBool32, dstPremultiplied: VkBool32, blendOverlap: VkBlendOverlapEXT, clampResults: VkBool32): VkColorBlendAdvancedEXT = - result.advancedBlendOp = advancedBlendOp - result.srcPremultiplied = srcPremultiplied - result.dstPremultiplied = dstPremultiplied - result.blendOverlap = blendOverlap - result.clampResults = clampResults + result = VkColorBlendAdvancedEXT( + advancedBlendOp: advancedBlendOp, + srcPremultiplied: srcPremultiplied, + dstPremultiplied: dstPremultiplied, + blendOverlap: blendOverlap, + clampResults: clampResults, + ) proc newVkRenderPassTransformBeginInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, transform: VkSurfaceTransformFlagBitsKHR): VkRenderPassTransformBeginInfoQCOM = - result.sType = sType - result.pNext = pNext - result.transform = transform + result = VkRenderPassTransformBeginInfoQCOM( + sType: sType, + pNext: pNext, + transform: transform, + ) proc newVkCopyCommandTransformInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, transform: VkSurfaceTransformFlagBitsKHR): VkCopyCommandTransformInfoQCOM = - result.sType = sType - result.pNext = pNext - result.transform = transform + result = VkCopyCommandTransformInfoQCOM( + sType: sType, + pNext: pNext, + transform: transform, + ) proc newVkCommandBufferInheritanceRenderPassTransformInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, transform: VkSurfaceTransformFlagBitsKHR, renderArea: VkRect2D): VkCommandBufferInheritanceRenderPassTransformInfoQCOM = - result.sType = sType - result.pNext = pNext - result.transform = transform - result.renderArea = renderArea + result = VkCommandBufferInheritanceRenderPassTransformInfoQCOM( + sType: sType, + pNext: pNext, + transform: transform, + renderArea: renderArea, + ) proc newVkPhysicalDeviceDiagnosticsConfigFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, diagnosticsConfig: VkBool32): VkPhysicalDeviceDiagnosticsConfigFeaturesNV = - result.sType = sType - result.pNext = pNext - result.diagnosticsConfig = diagnosticsConfig + result = VkPhysicalDeviceDiagnosticsConfigFeaturesNV( + sType: sType, + pNext: pNext, + diagnosticsConfig: diagnosticsConfig, + ) proc newVkDeviceDiagnosticsConfigCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkDeviceDiagnosticsConfigFlagsNV = 0.VkDeviceDiagnosticsConfigFlagsNV): VkDeviceDiagnosticsConfigCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.flags = flags + result = VkDeviceDiagnosticsConfigCreateInfoNV( + sType: sType, + pNext: pNext, + flags: flags, + ) proc newVkPipelineOfflineCreateInfo*(sType: VkStructureType, pNext: pointer = nil, pipelineIdentifier: array[VK_UUID_SIZE, uint8], matchControl: VkPipelineMatchControl, poolEntrySize: VkDeviceSize): VkPipelineOfflineCreateInfo = - result.sType = sType - result.pNext = pNext - result.pipelineIdentifier = pipelineIdentifier - result.matchControl = matchControl - result.poolEntrySize = poolEntrySize + result = VkPipelineOfflineCreateInfo( + sType: sType, + pNext: pNext, + pipelineIdentifier: pipelineIdentifier, + matchControl: matchControl, + poolEntrySize: poolEntrySize, + ) proc newVkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures*(sType: VkStructureType, pNext: pointer = nil, shaderZeroInitializeWorkgroupMemory: VkBool32): VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures = - result.sType = sType - result.pNext = pNext - result.shaderZeroInitializeWorkgroupMemory = shaderZeroInitializeWorkgroupMemory + result = VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures( + sType: sType, + pNext: pNext, + shaderZeroInitializeWorkgroupMemory: shaderZeroInitializeWorkgroupMemory, + ) proc newVkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, shaderSubgroupUniformControlFlow: VkBool32): VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.shaderSubgroupUniformControlFlow = shaderSubgroupUniformControlFlow + result = VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR( + sType: sType, + pNext: pNext, + shaderSubgroupUniformControlFlow: shaderSubgroupUniformControlFlow, + ) proc newVkPhysicalDeviceRobustness2FeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, robustBufferAccess2: VkBool32, robustImageAccess2: VkBool32, nullDescriptor: VkBool32): VkPhysicalDeviceRobustness2FeaturesEXT = - result.sType = sType - result.pNext = pNext - result.robustBufferAccess2 = robustBufferAccess2 - result.robustImageAccess2 = robustImageAccess2 - result.nullDescriptor = nullDescriptor + result = VkPhysicalDeviceRobustness2FeaturesEXT( + sType: sType, + pNext: pNext, + robustBufferAccess2: robustBufferAccess2, + robustImageAccess2: robustImageAccess2, + nullDescriptor: nullDescriptor, + ) proc newVkPhysicalDeviceRobustness2PropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, robustStorageBufferAccessSizeAlignment: VkDeviceSize, robustUniformBufferAccessSizeAlignment: VkDeviceSize): VkPhysicalDeviceRobustness2PropertiesEXT = - result.sType = sType - result.pNext = pNext - result.robustStorageBufferAccessSizeAlignment = robustStorageBufferAccessSizeAlignment - result.robustUniformBufferAccessSizeAlignment = robustUniformBufferAccessSizeAlignment + result = VkPhysicalDeviceRobustness2PropertiesEXT( + sType: sType, + pNext: pNext, + robustStorageBufferAccessSizeAlignment: robustStorageBufferAccessSizeAlignment, + robustUniformBufferAccessSizeAlignment: robustUniformBufferAccessSizeAlignment, + ) proc newVkPhysicalDeviceImageRobustnessFeatures*(sType: VkStructureType, pNext: pointer = nil, robustImageAccess: VkBool32): VkPhysicalDeviceImageRobustnessFeatures = - result.sType = sType - result.pNext = pNext - result.robustImageAccess = robustImageAccess + result = VkPhysicalDeviceImageRobustnessFeatures( + sType: sType, + pNext: pNext, + robustImageAccess: robustImageAccess, + ) proc newVkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, workgroupMemoryExplicitLayout: VkBool32, workgroupMemoryExplicitLayoutScalarBlockLayout: VkBool32, workgroupMemoryExplicitLayout8BitAccess: VkBool32, workgroupMemoryExplicitLayout16BitAccess: VkBool32): VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.workgroupMemoryExplicitLayout = workgroupMemoryExplicitLayout - result.workgroupMemoryExplicitLayoutScalarBlockLayout = workgroupMemoryExplicitLayoutScalarBlockLayout - result.workgroupMemoryExplicitLayout8BitAccess = workgroupMemoryExplicitLayout8BitAccess - result.workgroupMemoryExplicitLayout16BitAccess = workgroupMemoryExplicitLayout16BitAccess + result = VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR( + sType: sType, + pNext: pNext, + workgroupMemoryExplicitLayout: workgroupMemoryExplicitLayout, + workgroupMemoryExplicitLayoutScalarBlockLayout: workgroupMemoryExplicitLayoutScalarBlockLayout, + workgroupMemoryExplicitLayout8BitAccess: workgroupMemoryExplicitLayout8BitAccess, + workgroupMemoryExplicitLayout16BitAccess: workgroupMemoryExplicitLayout16BitAccess, + ) proc newVkPhysicalDevicePortabilitySubsetFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, constantAlphaColorBlendFactors: VkBool32, events: VkBool32, imageViewFormatReinterpretation: VkBool32, imageViewFormatSwizzle: VkBool32, imageView2DOn3DImage: VkBool32, multisampleArrayImage: VkBool32, mutableComparisonSamplers: VkBool32, pointPolygons: VkBool32, samplerMipLodBias: VkBool32, separateStencilMaskRef: VkBool32, shaderSampleRateInterpolationFunctions: VkBool32, tessellationIsolines: VkBool32, tessellationPointMode: VkBool32, triangleFans: VkBool32, vertexAttributeAccessBeyondStride: VkBool32): VkPhysicalDevicePortabilitySubsetFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.constantAlphaColorBlendFactors = constantAlphaColorBlendFactors - result.events = events - result.imageViewFormatReinterpretation = imageViewFormatReinterpretation - result.imageViewFormatSwizzle = imageViewFormatSwizzle - result.imageView2DOn3DImage = imageView2DOn3DImage - result.multisampleArrayImage = multisampleArrayImage - result.mutableComparisonSamplers = mutableComparisonSamplers - result.pointPolygons = pointPolygons - result.samplerMipLodBias = samplerMipLodBias - result.separateStencilMaskRef = separateStencilMaskRef - result.shaderSampleRateInterpolationFunctions = shaderSampleRateInterpolationFunctions - result.tessellationIsolines = tessellationIsolines - result.tessellationPointMode = tessellationPointMode - result.triangleFans = triangleFans - result.vertexAttributeAccessBeyondStride = vertexAttributeAccessBeyondStride + result = VkPhysicalDevicePortabilitySubsetFeaturesKHR( + sType: sType, + pNext: pNext, + constantAlphaColorBlendFactors: constantAlphaColorBlendFactors, + events: events, + imageViewFormatReinterpretation: imageViewFormatReinterpretation, + imageViewFormatSwizzle: imageViewFormatSwizzle, + imageView2DOn3DImage: imageView2DOn3DImage, + multisampleArrayImage: multisampleArrayImage, + mutableComparisonSamplers: mutableComparisonSamplers, + pointPolygons: pointPolygons, + samplerMipLodBias: samplerMipLodBias, + separateStencilMaskRef: separateStencilMaskRef, + shaderSampleRateInterpolationFunctions: shaderSampleRateInterpolationFunctions, + tessellationIsolines: tessellationIsolines, + tessellationPointMode: tessellationPointMode, + triangleFans: triangleFans, + vertexAttributeAccessBeyondStride: vertexAttributeAccessBeyondStride, + ) proc newVkPhysicalDevicePortabilitySubsetPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, minVertexInputBindingStrideAlignment: uint32): VkPhysicalDevicePortabilitySubsetPropertiesKHR = - result.sType = sType - result.pNext = pNext - result.minVertexInputBindingStrideAlignment = minVertexInputBindingStrideAlignment + result = VkPhysicalDevicePortabilitySubsetPropertiesKHR( + sType: sType, + pNext: pNext, + minVertexInputBindingStrideAlignment: minVertexInputBindingStrideAlignment, + ) proc newVkPhysicalDevice4444FormatsFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, formatA4R4G4B4: VkBool32, formatA4B4G4R4: VkBool32): VkPhysicalDevice4444FormatsFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.formatA4R4G4B4 = formatA4R4G4B4 - result.formatA4B4G4R4 = formatA4B4G4R4 + result = VkPhysicalDevice4444FormatsFeaturesEXT( + sType: sType, + pNext: pNext, + formatA4R4G4B4: formatA4R4G4B4, + formatA4B4G4R4: formatA4B4G4R4, + ) proc newVkPhysicalDeviceSubpassShadingFeaturesHUAWEI*(sType: VkStructureType, pNext: pointer = nil, subpassShading: VkBool32): VkPhysicalDeviceSubpassShadingFeaturesHUAWEI = - result.sType = sType - result.pNext = pNext - result.subpassShading = subpassShading + result = VkPhysicalDeviceSubpassShadingFeaturesHUAWEI( + sType: sType, + pNext: pNext, + subpassShading: subpassShading, + ) proc newVkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI*(sType: VkStructureType, pNext: pointer = nil, clustercullingShader: VkBool32, multiviewClusterCullingShader: VkBool32): VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI = - result.sType = sType - result.pNext = pNext - result.clustercullingShader = clustercullingShader - result.multiviewClusterCullingShader = multiviewClusterCullingShader + result = VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI( + sType: sType, + pNext: pNext, + clustercullingShader: clustercullingShader, + multiviewClusterCullingShader: multiviewClusterCullingShader, + ) proc newVkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI*(sType: VkStructureType, pNext: pointer = nil, clusterShadingRate: VkBool32): VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI = - result.sType = sType - result.pNext = pNext - result.clusterShadingRate = clusterShadingRate + result = VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI( + sType: sType, + pNext: pNext, + clusterShadingRate: clusterShadingRate, + ) proc newVkBufferCopy2*(sType: VkStructureType, pNext: pointer = nil, srcOffset: VkDeviceSize, dstOffset: VkDeviceSize, size: VkDeviceSize): VkBufferCopy2 = - result.sType = sType - result.pNext = pNext - result.srcOffset = srcOffset - result.dstOffset = dstOffset - result.size = size + result = VkBufferCopy2( + sType: sType, + pNext: pNext, + srcOffset: srcOffset, + dstOffset: dstOffset, + size: size, + ) proc newVkImageCopy2*(sType: VkStructureType, pNext: pointer = nil, srcSubresource: VkImageSubresourceLayers, srcOffset: VkOffset3D, dstSubresource: VkImageSubresourceLayers, dstOffset: VkOffset3D, extent: VkExtent3D): VkImageCopy2 = - result.sType = sType - result.pNext = pNext - result.srcSubresource = srcSubresource - result.srcOffset = srcOffset - result.dstSubresource = dstSubresource - result.dstOffset = dstOffset - result.extent = extent + result = VkImageCopy2( + sType: sType, + pNext: pNext, + srcSubresource: srcSubresource, + srcOffset: srcOffset, + dstSubresource: dstSubresource, + dstOffset: dstOffset, + extent: extent, + ) proc newVkImageBlit2*(sType: VkStructureType, pNext: pointer = nil, srcSubresource: VkImageSubresourceLayers, srcOffsets: array[2, VkOffset3D], dstSubresource: VkImageSubresourceLayers, dstOffsets: array[2, VkOffset3D]): VkImageBlit2 = - result.sType = sType - result.pNext = pNext - result.srcSubresource = srcSubresource - result.srcOffsets = srcOffsets - result.dstSubresource = dstSubresource - result.dstOffsets = dstOffsets + result = VkImageBlit2( + sType: sType, + pNext: pNext, + srcSubresource: srcSubresource, + srcOffsets: srcOffsets, + dstSubresource: dstSubresource, + dstOffsets: dstOffsets, + ) proc newVkBufferImageCopy2*(sType: VkStructureType, pNext: pointer = nil, bufferOffset: VkDeviceSize, bufferRowLength: uint32, bufferImageHeight: uint32, imageSubresource: VkImageSubresourceLayers, imageOffset: VkOffset3D, imageExtent: VkExtent3D): VkBufferImageCopy2 = - result.sType = sType - result.pNext = pNext - result.bufferOffset = bufferOffset - result.bufferRowLength = bufferRowLength - result.bufferImageHeight = bufferImageHeight - result.imageSubresource = imageSubresource - result.imageOffset = imageOffset - result.imageExtent = imageExtent + result = VkBufferImageCopy2( + sType: sType, + pNext: pNext, + bufferOffset: bufferOffset, + bufferRowLength: bufferRowLength, + bufferImageHeight: bufferImageHeight, + imageSubresource: imageSubresource, + imageOffset: imageOffset, + imageExtent: imageExtent, + ) proc newVkImageResolve2*(sType: VkStructureType, pNext: pointer = nil, srcSubresource: VkImageSubresourceLayers, srcOffset: VkOffset3D, dstSubresource: VkImageSubresourceLayers, dstOffset: VkOffset3D, extent: VkExtent3D): VkImageResolve2 = - result.sType = sType - result.pNext = pNext - result.srcSubresource = srcSubresource - result.srcOffset = srcOffset - result.dstSubresource = dstSubresource - result.dstOffset = dstOffset - result.extent = extent + result = VkImageResolve2( + sType: sType, + pNext: pNext, + srcSubresource: srcSubresource, + srcOffset: srcOffset, + dstSubresource: dstSubresource, + dstOffset: dstOffset, + extent: extent, + ) proc newVkCopyBufferInfo2*(sType: VkStructureType, pNext: pointer = nil, srcBuffer: VkBuffer, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferCopy2): VkCopyBufferInfo2 = - result.sType = sType - result.pNext = pNext - result.srcBuffer = srcBuffer - result.dstBuffer = dstBuffer - result.regionCount = regionCount - result.pRegions = pRegions + result = VkCopyBufferInfo2( + sType: sType, + pNext: pNext, + srcBuffer: srcBuffer, + dstBuffer: dstBuffer, + regionCount: regionCount, + pRegions: pRegions, + ) proc newVkCopyImageInfo2*(sType: VkStructureType, pNext: pointer = nil, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageCopy2): VkCopyImageInfo2 = - result.sType = sType - result.pNext = pNext - result.srcImage = srcImage - result.srcImageLayout = srcImageLayout - result.dstImage = dstImage - result.dstImageLayout = dstImageLayout - result.regionCount = regionCount - result.pRegions = pRegions + result = VkCopyImageInfo2( + sType: sType, + pNext: pNext, + srcImage: srcImage, + srcImageLayout: srcImageLayout, + dstImage: dstImage, + dstImageLayout: dstImageLayout, + regionCount: regionCount, + pRegions: pRegions, + ) proc newVkBlitImageInfo2*(sType: VkStructureType, pNext: pointer = nil, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageBlit2, filter: VkFilter): VkBlitImageInfo2 = - result.sType = sType - result.pNext = pNext - result.srcImage = srcImage - result.srcImageLayout = srcImageLayout - result.dstImage = dstImage - result.dstImageLayout = dstImageLayout - result.regionCount = regionCount - result.pRegions = pRegions - result.filter = filter + result = VkBlitImageInfo2( + sType: sType, + pNext: pNext, + srcImage: srcImage, + srcImageLayout: srcImageLayout, + dstImage: dstImage, + dstImageLayout: dstImageLayout, + regionCount: regionCount, + pRegions: pRegions, + filter: filter, + ) proc newVkCopyBufferToImageInfo2*(sType: VkStructureType, pNext: pointer = nil, srcBuffer: VkBuffer, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkBufferImageCopy2): VkCopyBufferToImageInfo2 = - result.sType = sType - result.pNext = pNext - result.srcBuffer = srcBuffer - result.dstImage = dstImage - result.dstImageLayout = dstImageLayout - result.regionCount = regionCount - result.pRegions = pRegions + result = VkCopyBufferToImageInfo2( + sType: sType, + pNext: pNext, + srcBuffer: srcBuffer, + dstImage: dstImage, + dstImageLayout: dstImageLayout, + regionCount: regionCount, + pRegions: pRegions, + ) proc newVkCopyImageToBufferInfo2*(sType: VkStructureType, pNext: pointer = nil, srcImage: VkImage, srcImageLayout: VkImageLayout, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferImageCopy2): VkCopyImageToBufferInfo2 = - result.sType = sType - result.pNext = pNext - result.srcImage = srcImage - result.srcImageLayout = srcImageLayout - result.dstBuffer = dstBuffer - result.regionCount = regionCount - result.pRegions = pRegions + result = VkCopyImageToBufferInfo2( + sType: sType, + pNext: pNext, + srcImage: srcImage, + srcImageLayout: srcImageLayout, + dstBuffer: dstBuffer, + regionCount: regionCount, + pRegions: pRegions, + ) proc newVkResolveImageInfo2*(sType: VkStructureType, pNext: pointer = nil, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageResolve2): VkResolveImageInfo2 = - result.sType = sType - result.pNext = pNext - result.srcImage = srcImage - result.srcImageLayout = srcImageLayout - result.dstImage = dstImage - result.dstImageLayout = dstImageLayout - result.regionCount = regionCount - result.pRegions = pRegions + result = VkResolveImageInfo2( + sType: sType, + pNext: pNext, + srcImage: srcImage, + srcImageLayout: srcImageLayout, + dstImage: dstImage, + dstImageLayout: dstImageLayout, + regionCount: regionCount, + pRegions: pRegions, + ) proc newVkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderImageInt64Atomics: VkBool32, sparseImageInt64Atomics: VkBool32): VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT = - result.sType = sType - result.pNext = pNext - result.shaderImageInt64Atomics = shaderImageInt64Atomics - result.sparseImageInt64Atomics = sparseImageInt64Atomics + result = VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT( + sType: sType, + pNext: pNext, + shaderImageInt64Atomics: shaderImageInt64Atomics, + sparseImageInt64Atomics: sparseImageInt64Atomics, + ) proc newVkFragmentShadingRateAttachmentInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pFragmentShadingRateAttachment: ptr VkAttachmentReference2, shadingRateAttachmentTexelSize: VkExtent2D): VkFragmentShadingRateAttachmentInfoKHR = - result.sType = sType - result.pNext = pNext - result.pFragmentShadingRateAttachment = pFragmentShadingRateAttachment - result.shadingRateAttachmentTexelSize = shadingRateAttachmentTexelSize + result = VkFragmentShadingRateAttachmentInfoKHR( + sType: sType, + pNext: pNext, + pFragmentShadingRateAttachment: pFragmentShadingRateAttachment, + shadingRateAttachmentTexelSize: shadingRateAttachmentTexelSize, + ) proc newVkPipelineFragmentShadingRateStateCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, fragmentSize: VkExtent2D, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): VkPipelineFragmentShadingRateStateCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.fragmentSize = fragmentSize - result.combinerOps = combinerOps + result = VkPipelineFragmentShadingRateStateCreateInfoKHR( + sType: sType, + pNext: pNext, + fragmentSize: fragmentSize, + combinerOps: combinerOps, + ) proc newVkPhysicalDeviceFragmentShadingRateFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, pipelineFragmentShadingRate: VkBool32, primitiveFragmentShadingRate: VkBool32, attachmentFragmentShadingRate: VkBool32): VkPhysicalDeviceFragmentShadingRateFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.pipelineFragmentShadingRate = pipelineFragmentShadingRate - result.primitiveFragmentShadingRate = primitiveFragmentShadingRate - result.attachmentFragmentShadingRate = attachmentFragmentShadingRate + result = VkPhysicalDeviceFragmentShadingRateFeaturesKHR( + sType: sType, + pNext: pNext, + pipelineFragmentShadingRate: pipelineFragmentShadingRate, + primitiveFragmentShadingRate: primitiveFragmentShadingRate, + attachmentFragmentShadingRate: attachmentFragmentShadingRate, + ) proc newVkPhysicalDeviceFragmentShadingRatePropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, minFragmentShadingRateAttachmentTexelSize: VkExtent2D, maxFragmentShadingRateAttachmentTexelSize: VkExtent2D, maxFragmentShadingRateAttachmentTexelSizeAspectRatio: uint32, primitiveFragmentShadingRateWithMultipleViewports: VkBool32, layeredShadingRateAttachments: VkBool32, fragmentShadingRateNonTrivialCombinerOps: VkBool32, maxFragmentSize: VkExtent2D, maxFragmentSizeAspectRatio: uint32, maxFragmentShadingRateCoverageSamples: uint32, maxFragmentShadingRateRasterizationSamples: VkSampleCountFlagBits, fragmentShadingRateWithShaderDepthStencilWrites: VkBool32, fragmentShadingRateWithSampleMask: VkBool32, fragmentShadingRateWithShaderSampleMask: VkBool32, fragmentShadingRateWithConservativeRasterization: VkBool32, fragmentShadingRateWithFragmentShaderInterlock: VkBool32, fragmentShadingRateWithCustomSampleLocations: VkBool32, fragmentShadingRateStrictMultiplyCombiner: VkBool32): VkPhysicalDeviceFragmentShadingRatePropertiesKHR = - result.sType = sType - result.pNext = pNext - result.minFragmentShadingRateAttachmentTexelSize = minFragmentShadingRateAttachmentTexelSize - result.maxFragmentShadingRateAttachmentTexelSize = maxFragmentShadingRateAttachmentTexelSize - result.maxFragmentShadingRateAttachmentTexelSizeAspectRatio = maxFragmentShadingRateAttachmentTexelSizeAspectRatio - result.primitiveFragmentShadingRateWithMultipleViewports = primitiveFragmentShadingRateWithMultipleViewports - result.layeredShadingRateAttachments = layeredShadingRateAttachments - result.fragmentShadingRateNonTrivialCombinerOps = fragmentShadingRateNonTrivialCombinerOps - result.maxFragmentSize = maxFragmentSize - result.maxFragmentSizeAspectRatio = maxFragmentSizeAspectRatio - result.maxFragmentShadingRateCoverageSamples = maxFragmentShadingRateCoverageSamples - result.maxFragmentShadingRateRasterizationSamples = maxFragmentShadingRateRasterizationSamples - result.fragmentShadingRateWithShaderDepthStencilWrites = fragmentShadingRateWithShaderDepthStencilWrites - result.fragmentShadingRateWithSampleMask = fragmentShadingRateWithSampleMask - result.fragmentShadingRateWithShaderSampleMask = fragmentShadingRateWithShaderSampleMask - result.fragmentShadingRateWithConservativeRasterization = fragmentShadingRateWithConservativeRasterization - result.fragmentShadingRateWithFragmentShaderInterlock = fragmentShadingRateWithFragmentShaderInterlock - result.fragmentShadingRateWithCustomSampleLocations = fragmentShadingRateWithCustomSampleLocations - result.fragmentShadingRateStrictMultiplyCombiner = fragmentShadingRateStrictMultiplyCombiner + result = VkPhysicalDeviceFragmentShadingRatePropertiesKHR( + sType: sType, + pNext: pNext, + minFragmentShadingRateAttachmentTexelSize: minFragmentShadingRateAttachmentTexelSize, + maxFragmentShadingRateAttachmentTexelSize: maxFragmentShadingRateAttachmentTexelSize, + maxFragmentShadingRateAttachmentTexelSizeAspectRatio: maxFragmentShadingRateAttachmentTexelSizeAspectRatio, + primitiveFragmentShadingRateWithMultipleViewports: primitiveFragmentShadingRateWithMultipleViewports, + layeredShadingRateAttachments: layeredShadingRateAttachments, + fragmentShadingRateNonTrivialCombinerOps: fragmentShadingRateNonTrivialCombinerOps, + maxFragmentSize: maxFragmentSize, + maxFragmentSizeAspectRatio: maxFragmentSizeAspectRatio, + maxFragmentShadingRateCoverageSamples: maxFragmentShadingRateCoverageSamples, + maxFragmentShadingRateRasterizationSamples: maxFragmentShadingRateRasterizationSamples, + fragmentShadingRateWithShaderDepthStencilWrites: fragmentShadingRateWithShaderDepthStencilWrites, + fragmentShadingRateWithSampleMask: fragmentShadingRateWithSampleMask, + fragmentShadingRateWithShaderSampleMask: fragmentShadingRateWithShaderSampleMask, + fragmentShadingRateWithConservativeRasterization: fragmentShadingRateWithConservativeRasterization, + fragmentShadingRateWithFragmentShaderInterlock: fragmentShadingRateWithFragmentShaderInterlock, + fragmentShadingRateWithCustomSampleLocations: fragmentShadingRateWithCustomSampleLocations, + fragmentShadingRateStrictMultiplyCombiner: fragmentShadingRateStrictMultiplyCombiner, + ) proc newVkPhysicalDeviceFragmentShadingRateKHR*(sType: VkStructureType, pNext: pointer = nil, sampleCounts: VkSampleCountFlags, fragmentSize: VkExtent2D): VkPhysicalDeviceFragmentShadingRateKHR = - result.sType = sType - result.pNext = pNext - result.sampleCounts = sampleCounts - result.fragmentSize = fragmentSize + result = VkPhysicalDeviceFragmentShadingRateKHR( + sType: sType, + pNext: pNext, + sampleCounts: sampleCounts, + fragmentSize: fragmentSize, + ) proc newVkPhysicalDeviceShaderTerminateInvocationFeatures*(sType: VkStructureType, pNext: pointer = nil, shaderTerminateInvocation: VkBool32): VkPhysicalDeviceShaderTerminateInvocationFeatures = - result.sType = sType - result.pNext = pNext - result.shaderTerminateInvocation = shaderTerminateInvocation + result = VkPhysicalDeviceShaderTerminateInvocationFeatures( + sType: sType, + pNext: pNext, + shaderTerminateInvocation: shaderTerminateInvocation, + ) proc newVkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, fragmentShadingRateEnums: VkBool32, supersampleFragmentShadingRates: VkBool32, noInvocationFragmentShadingRates: VkBool32): VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV = - result.sType = sType - result.pNext = pNext - result.fragmentShadingRateEnums = fragmentShadingRateEnums - result.supersampleFragmentShadingRates = supersampleFragmentShadingRates - result.noInvocationFragmentShadingRates = noInvocationFragmentShadingRates + result = VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV( + sType: sType, + pNext: pNext, + fragmentShadingRateEnums: fragmentShadingRateEnums, + supersampleFragmentShadingRates: supersampleFragmentShadingRates, + noInvocationFragmentShadingRates: noInvocationFragmentShadingRates, + ) proc newVkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, maxFragmentShadingRateInvocationCount: VkSampleCountFlagBits): VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV = - result.sType = sType - result.pNext = pNext - result.maxFragmentShadingRateInvocationCount = maxFragmentShadingRateInvocationCount + result = VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV( + sType: sType, + pNext: pNext, + maxFragmentShadingRateInvocationCount: maxFragmentShadingRateInvocationCount, + ) proc newVkPipelineFragmentShadingRateEnumStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, shadingRateType: VkFragmentShadingRateTypeNV, shadingRate: VkFragmentShadingRateNV, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): VkPipelineFragmentShadingRateEnumStateCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.shadingRateType = shadingRateType - result.shadingRate = shadingRate - result.combinerOps = combinerOps + result = VkPipelineFragmentShadingRateEnumStateCreateInfoNV( + sType: sType, + pNext: pNext, + shadingRateType: shadingRateType, + shadingRate: shadingRate, + combinerOps: combinerOps, + ) proc newVkAccelerationStructureBuildSizesInfoKHR*(sType: VkStructureType, pNext: pointer = nil, accelerationStructureSize: VkDeviceSize, updateScratchSize: VkDeviceSize, buildScratchSize: VkDeviceSize): VkAccelerationStructureBuildSizesInfoKHR = - result.sType = sType - result.pNext = pNext - result.accelerationStructureSize = accelerationStructureSize - result.updateScratchSize = updateScratchSize - result.buildScratchSize = buildScratchSize + result = VkAccelerationStructureBuildSizesInfoKHR( + sType: sType, + pNext: pNext, + accelerationStructureSize: accelerationStructureSize, + updateScratchSize: updateScratchSize, + buildScratchSize: buildScratchSize, + ) proc newVkPhysicalDeviceImage2DViewOf3DFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, image2DViewOf3D: VkBool32, sampler2DViewOf3D: VkBool32): VkPhysicalDeviceImage2DViewOf3DFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.image2DViewOf3D = image2DViewOf3D - result.sampler2DViewOf3D = sampler2DViewOf3D + result = VkPhysicalDeviceImage2DViewOf3DFeaturesEXT( + sType: sType, + pNext: pNext, + image2DViewOf3D: image2DViewOf3D, + sampler2DViewOf3D: sampler2DViewOf3D, + ) proc newVkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, imageSlicedViewOf3D: VkBool32): VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.imageSlicedViewOf3D = imageSlicedViewOf3D + result = VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT( + sType: sType, + pNext: pNext, + imageSlicedViewOf3D: imageSlicedViewOf3D, + ) proc newVkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, attachmentFeedbackLoopDynamicState: VkBool32): VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.attachmentFeedbackLoopDynamicState = attachmentFeedbackLoopDynamicState + result = VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT( + sType: sType, + pNext: pNext, + attachmentFeedbackLoopDynamicState: attachmentFeedbackLoopDynamicState, + ) proc newVkPhysicalDeviceMutableDescriptorTypeFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, mutableDescriptorType: VkBool32): VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.mutableDescriptorType = mutableDescriptorType + result = VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT( + sType: sType, + pNext: pNext, + mutableDescriptorType: mutableDescriptorType, + ) proc newVkMutableDescriptorTypeListEXT*(descriptorTypeCount: uint32, pDescriptorTypes: ptr VkDescriptorType): VkMutableDescriptorTypeListEXT = - result.descriptorTypeCount = descriptorTypeCount - result.pDescriptorTypes = pDescriptorTypes + result = VkMutableDescriptorTypeListEXT( + descriptorTypeCount: descriptorTypeCount, + pDescriptorTypes: pDescriptorTypes, + ) proc newVkMutableDescriptorTypeCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, mutableDescriptorTypeListCount: uint32, pMutableDescriptorTypeLists: ptr VkMutableDescriptorTypeListEXT): VkMutableDescriptorTypeCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.mutableDescriptorTypeListCount = mutableDescriptorTypeListCount - result.pMutableDescriptorTypeLists = pMutableDescriptorTypeLists + result = VkMutableDescriptorTypeCreateInfoEXT( + sType: sType, + pNext: pNext, + mutableDescriptorTypeListCount: mutableDescriptorTypeListCount, + pMutableDescriptorTypeLists: pMutableDescriptorTypeLists, + ) proc newVkPhysicalDeviceDepthClipControlFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, depthClipControl: VkBool32): VkPhysicalDeviceDepthClipControlFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.depthClipControl = depthClipControl + result = VkPhysicalDeviceDepthClipControlFeaturesEXT( + sType: sType, + pNext: pNext, + depthClipControl: depthClipControl, + ) proc newVkPipelineViewportDepthClipControlCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, negativeOneToOne: VkBool32): VkPipelineViewportDepthClipControlCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.negativeOneToOne = negativeOneToOne + result = VkPipelineViewportDepthClipControlCreateInfoEXT( + sType: sType, + pNext: pNext, + negativeOneToOne: negativeOneToOne, + ) proc newVkPhysicalDeviceVertexInputDynamicStateFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, vertexInputDynamicState: VkBool32): VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.vertexInputDynamicState = vertexInputDynamicState + result = VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT( + sType: sType, + pNext: pNext, + vertexInputDynamicState: vertexInputDynamicState, + ) proc newVkPhysicalDeviceExternalMemoryRDMAFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, externalMemoryRDMA: VkBool32): VkPhysicalDeviceExternalMemoryRDMAFeaturesNV = - result.sType = sType - result.pNext = pNext - result.externalMemoryRDMA = externalMemoryRDMA + result = VkPhysicalDeviceExternalMemoryRDMAFeaturesNV( + sType: sType, + pNext: pNext, + externalMemoryRDMA: externalMemoryRDMA, + ) proc newVkVertexInputBindingDescription2EXT*(sType: VkStructureType, pNext: pointer = nil, binding: uint32, stride: uint32, inputRate: VkVertexInputRate, divisor: uint32): VkVertexInputBindingDescription2EXT = - result.sType = sType - result.pNext = pNext - result.binding = binding - result.stride = stride - result.inputRate = inputRate - result.divisor = divisor + result = VkVertexInputBindingDescription2EXT( + sType: sType, + pNext: pNext, + binding: binding, + stride: stride, + inputRate: inputRate, + divisor: divisor, + ) proc newVkVertexInputAttributeDescription2EXT*(sType: VkStructureType, pNext: pointer = nil, location: uint32, binding: uint32, format: VkFormat, offset: uint32): VkVertexInputAttributeDescription2EXT = - result.sType = sType - result.pNext = pNext - result.location = location - result.binding = binding - result.format = format - result.offset = offset + result = VkVertexInputAttributeDescription2EXT( + sType: sType, + pNext: pNext, + location: location, + binding: binding, + format: format, + offset: offset, + ) proc newVkPhysicalDeviceColorWriteEnableFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, colorWriteEnable: VkBool32): VkPhysicalDeviceColorWriteEnableFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.colorWriteEnable = colorWriteEnable + result = VkPhysicalDeviceColorWriteEnableFeaturesEXT( + sType: sType, + pNext: pNext, + colorWriteEnable: colorWriteEnable, + ) proc newVkPipelineColorWriteCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, attachmentCount: uint32, pColorWriteEnables: ptr VkBool32): VkPipelineColorWriteCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.attachmentCount = attachmentCount - result.pColorWriteEnables = pColorWriteEnables + result = VkPipelineColorWriteCreateInfoEXT( + sType: sType, + pNext: pNext, + attachmentCount: attachmentCount, + pColorWriteEnables: pColorWriteEnables, + ) proc newVkMemoryBarrier2*(sType: VkStructureType, pNext: pointer = nil, srcStageMask: VkPipelineStageFlags2, srcAccessMask: VkAccessFlags2, dstStageMask: VkPipelineStageFlags2, dstAccessMask: VkAccessFlags2): VkMemoryBarrier2 = - result.sType = sType - result.pNext = pNext - result.srcStageMask = srcStageMask - result.srcAccessMask = srcAccessMask - result.dstStageMask = dstStageMask - result.dstAccessMask = dstAccessMask + result = VkMemoryBarrier2( + sType: sType, + pNext: pNext, + srcStageMask: srcStageMask, + srcAccessMask: srcAccessMask, + dstStageMask: dstStageMask, + dstAccessMask: dstAccessMask, + ) proc newVkImageMemoryBarrier2*(sType: VkStructureType, pNext: pointer = nil, srcStageMask: VkPipelineStageFlags2, srcAccessMask: VkAccessFlags2, dstStageMask: VkPipelineStageFlags2, dstAccessMask: VkAccessFlags2, oldLayout: VkImageLayout, newLayout: VkImageLayout, srcQueueFamilyIndex: uint32, dstQueueFamilyIndex: uint32, image: VkImage, subresourceRange: VkImageSubresourceRange): VkImageMemoryBarrier2 = - result.sType = sType - result.pNext = pNext - result.srcStageMask = srcStageMask - result.srcAccessMask = srcAccessMask - result.dstStageMask = dstStageMask - result.dstAccessMask = dstAccessMask - result.oldLayout = oldLayout - result.newLayout = newLayout - result.srcQueueFamilyIndex = srcQueueFamilyIndex - result.dstQueueFamilyIndex = dstQueueFamilyIndex - result.image = image - result.subresourceRange = subresourceRange + result = VkImageMemoryBarrier2( + sType: sType, + pNext: pNext, + srcStageMask: srcStageMask, + srcAccessMask: srcAccessMask, + dstStageMask: dstStageMask, + dstAccessMask: dstAccessMask, + oldLayout: oldLayout, + newLayout: newLayout, + srcQueueFamilyIndex: srcQueueFamilyIndex, + dstQueueFamilyIndex: dstQueueFamilyIndex, + image: image, + subresourceRange: subresourceRange, + ) proc newVkBufferMemoryBarrier2*(sType: VkStructureType, pNext: pointer = nil, srcStageMask: VkPipelineStageFlags2, srcAccessMask: VkAccessFlags2, dstStageMask: VkPipelineStageFlags2, dstAccessMask: VkAccessFlags2, srcQueueFamilyIndex: uint32, dstQueueFamilyIndex: uint32, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize): VkBufferMemoryBarrier2 = - result.sType = sType - result.pNext = pNext - result.srcStageMask = srcStageMask - result.srcAccessMask = srcAccessMask - result.dstStageMask = dstStageMask - result.dstAccessMask = dstAccessMask - result.srcQueueFamilyIndex = srcQueueFamilyIndex - result.dstQueueFamilyIndex = dstQueueFamilyIndex - result.buffer = buffer - result.offset = offset - result.size = size + result = VkBufferMemoryBarrier2( + sType: sType, + pNext: pNext, + srcStageMask: srcStageMask, + srcAccessMask: srcAccessMask, + dstStageMask: dstStageMask, + dstAccessMask: dstAccessMask, + srcQueueFamilyIndex: srcQueueFamilyIndex, + dstQueueFamilyIndex: dstQueueFamilyIndex, + buffer: buffer, + offset: offset, + size: size, + ) proc newVkDependencyInfo*(sType: VkStructureType, pNext: pointer = nil, dependencyFlags: VkDependencyFlags, memoryBarrierCount: uint32, pMemoryBarriers: ptr VkMemoryBarrier2, bufferMemoryBarrierCount: uint32, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier2, imageMemoryBarrierCount: uint32, pImageMemoryBarriers: ptr VkImageMemoryBarrier2): VkDependencyInfo = - result.sType = sType - result.pNext = pNext - result.dependencyFlags = dependencyFlags - result.memoryBarrierCount = memoryBarrierCount - result.pMemoryBarriers = pMemoryBarriers - result.bufferMemoryBarrierCount = bufferMemoryBarrierCount - result.pBufferMemoryBarriers = pBufferMemoryBarriers - result.imageMemoryBarrierCount = imageMemoryBarrierCount - result.pImageMemoryBarriers = pImageMemoryBarriers + result = VkDependencyInfo( + sType: sType, + pNext: pNext, + dependencyFlags: dependencyFlags, + memoryBarrierCount: memoryBarrierCount, + pMemoryBarriers: pMemoryBarriers, + bufferMemoryBarrierCount: bufferMemoryBarrierCount, + pBufferMemoryBarriers: pBufferMemoryBarriers, + imageMemoryBarrierCount: imageMemoryBarrierCount, + pImageMemoryBarriers: pImageMemoryBarriers, + ) proc newVkSemaphoreSubmitInfo*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, value: uint64, stageMask: VkPipelineStageFlags2, deviceIndex: uint32): VkSemaphoreSubmitInfo = - result.sType = sType - result.pNext = pNext - result.semaphore = semaphore - result.value = value - result.stageMask = stageMask - result.deviceIndex = deviceIndex + result = VkSemaphoreSubmitInfo( + sType: sType, + pNext: pNext, + semaphore: semaphore, + value: value, + stageMask: stageMask, + deviceIndex: deviceIndex, + ) proc newVkCommandBufferSubmitInfo*(sType: VkStructureType, pNext: pointer = nil, commandBuffer: VkCommandBuffer, deviceMask: uint32): VkCommandBufferSubmitInfo = - result.sType = sType - result.pNext = pNext - result.commandBuffer = commandBuffer - result.deviceMask = deviceMask + result = VkCommandBufferSubmitInfo( + sType: sType, + pNext: pNext, + commandBuffer: commandBuffer, + deviceMask: deviceMask, + ) proc newVkSubmitInfo2*(sType: VkStructureType, pNext: pointer = nil, flags: VkSubmitFlags = 0.VkSubmitFlags, waitSemaphoreInfoCount: uint32, pWaitSemaphoreInfos: ptr VkSemaphoreSubmitInfo, commandBufferInfoCount: uint32, pCommandBufferInfos: ptr VkCommandBufferSubmitInfo, signalSemaphoreInfoCount: uint32, pSignalSemaphoreInfos: ptr VkSemaphoreSubmitInfo): VkSubmitInfo2 = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.waitSemaphoreInfoCount = waitSemaphoreInfoCount - result.pWaitSemaphoreInfos = pWaitSemaphoreInfos - result.commandBufferInfoCount = commandBufferInfoCount - result.pCommandBufferInfos = pCommandBufferInfos - result.signalSemaphoreInfoCount = signalSemaphoreInfoCount - result.pSignalSemaphoreInfos = pSignalSemaphoreInfos + result = VkSubmitInfo2( + sType: sType, + pNext: pNext, + flags: flags, + waitSemaphoreInfoCount: waitSemaphoreInfoCount, + pWaitSemaphoreInfos: pWaitSemaphoreInfos, + commandBufferInfoCount: commandBufferInfoCount, + pCommandBufferInfos: pCommandBufferInfos, + signalSemaphoreInfoCount: signalSemaphoreInfoCount, + pSignalSemaphoreInfos: pSignalSemaphoreInfos, + ) proc newVkQueueFamilyCheckpointProperties2NV*(sType: VkStructureType, pNext: pointer = nil, checkpointExecutionStageMask: VkPipelineStageFlags2): VkQueueFamilyCheckpointProperties2NV = - result.sType = sType - result.pNext = pNext - result.checkpointExecutionStageMask = checkpointExecutionStageMask + result = VkQueueFamilyCheckpointProperties2NV( + sType: sType, + pNext: pNext, + checkpointExecutionStageMask: checkpointExecutionStageMask, + ) proc newVkCheckpointData2NV*(sType: VkStructureType, pNext: pointer = nil, stage: VkPipelineStageFlags2, pCheckpointMarker: pointer = nil): VkCheckpointData2NV = - result.sType = sType - result.pNext = pNext - result.stage = stage - result.pCheckpointMarker = pCheckpointMarker + result = VkCheckpointData2NV( + sType: sType, + pNext: pNext, + stage: stage, + pCheckpointMarker: pCheckpointMarker, + ) proc newVkPhysicalDeviceSynchronization2Features*(sType: VkStructureType, pNext: pointer = nil, synchronization2: VkBool32): VkPhysicalDeviceSynchronization2Features = - result.sType = sType - result.pNext = pNext - result.synchronization2 = synchronization2 + result = VkPhysicalDeviceSynchronization2Features( + sType: sType, + pNext: pNext, + synchronization2: synchronization2, + ) proc newVkPhysicalDeviceHostImageCopyFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, hostImageCopy: VkBool32): VkPhysicalDeviceHostImageCopyFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.hostImageCopy = hostImageCopy + result = VkPhysicalDeviceHostImageCopyFeaturesEXT( + sType: sType, + pNext: pNext, + hostImageCopy: hostImageCopy, + ) proc newVkPhysicalDeviceHostImageCopyPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, copySrcLayoutCount: uint32, pCopySrcLayouts: ptr VkImageLayout, copyDstLayoutCount: uint32, pCopyDstLayouts: ptr VkImageLayout, optimalTilingLayoutUUID: array[VK_UUID_SIZE, uint8], identicalMemoryTypeRequirements: VkBool32): VkPhysicalDeviceHostImageCopyPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.copySrcLayoutCount = copySrcLayoutCount - result.pCopySrcLayouts = pCopySrcLayouts - result.copyDstLayoutCount = copyDstLayoutCount - result.pCopyDstLayouts = pCopyDstLayouts - result.optimalTilingLayoutUUID = optimalTilingLayoutUUID - result.identicalMemoryTypeRequirements = identicalMemoryTypeRequirements + result = VkPhysicalDeviceHostImageCopyPropertiesEXT( + sType: sType, + pNext: pNext, + copySrcLayoutCount: copySrcLayoutCount, + pCopySrcLayouts: pCopySrcLayouts, + copyDstLayoutCount: copyDstLayoutCount, + pCopyDstLayouts: pCopyDstLayouts, + optimalTilingLayoutUUID: optimalTilingLayoutUUID, + identicalMemoryTypeRequirements: identicalMemoryTypeRequirements, + ) proc newVkMemoryToImageCopyEXT*(sType: VkStructureType, pNext: pointer = nil, pHostPointer: pointer = nil, memoryRowLength: uint32, memoryImageHeight: uint32, imageSubresource: VkImageSubresourceLayers, imageOffset: VkOffset3D, imageExtent: VkExtent3D): VkMemoryToImageCopyEXT = - result.sType = sType - result.pNext = pNext - result.pHostPointer = pHostPointer - result.memoryRowLength = memoryRowLength - result.memoryImageHeight = memoryImageHeight - result.imageSubresource = imageSubresource - result.imageOffset = imageOffset - result.imageExtent = imageExtent + result = VkMemoryToImageCopyEXT( + sType: sType, + pNext: pNext, + pHostPointer: pHostPointer, + memoryRowLength: memoryRowLength, + memoryImageHeight: memoryImageHeight, + imageSubresource: imageSubresource, + imageOffset: imageOffset, + imageExtent: imageExtent, + ) proc newVkImageToMemoryCopyEXT*(sType: VkStructureType, pNext: pointer = nil, pHostPointer: pointer = nil, memoryRowLength: uint32, memoryImageHeight: uint32, imageSubresource: VkImageSubresourceLayers, imageOffset: VkOffset3D, imageExtent: VkExtent3D): VkImageToMemoryCopyEXT = - result.sType = sType - result.pNext = pNext - result.pHostPointer = pHostPointer - result.memoryRowLength = memoryRowLength - result.memoryImageHeight = memoryImageHeight - result.imageSubresource = imageSubresource - result.imageOffset = imageOffset - result.imageExtent = imageExtent + result = VkImageToMemoryCopyEXT( + sType: sType, + pNext: pNext, + pHostPointer: pHostPointer, + memoryRowLength: memoryRowLength, + memoryImageHeight: memoryImageHeight, + imageSubresource: imageSubresource, + imageOffset: imageOffset, + imageExtent: imageExtent, + ) proc newVkCopyMemoryToImageInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkHostImageCopyFlagsEXT = 0.VkHostImageCopyFlagsEXT, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkMemoryToImageCopyEXT): VkCopyMemoryToImageInfoEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.dstImage = dstImage - result.dstImageLayout = dstImageLayout - result.regionCount = regionCount - result.pRegions = pRegions + result = VkCopyMemoryToImageInfoEXT( + sType: sType, + pNext: pNext, + flags: flags, + dstImage: dstImage, + dstImageLayout: dstImageLayout, + regionCount: regionCount, + pRegions: pRegions, + ) proc newVkCopyImageToMemoryInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkHostImageCopyFlagsEXT = 0.VkHostImageCopyFlagsEXT, srcImage: VkImage, srcImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageToMemoryCopyEXT): VkCopyImageToMemoryInfoEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.srcImage = srcImage - result.srcImageLayout = srcImageLayout - result.regionCount = regionCount - result.pRegions = pRegions + result = VkCopyImageToMemoryInfoEXT( + sType: sType, + pNext: pNext, + flags: flags, + srcImage: srcImage, + srcImageLayout: srcImageLayout, + regionCount: regionCount, + pRegions: pRegions, + ) proc newVkCopyImageToImageInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkHostImageCopyFlagsEXT = 0.VkHostImageCopyFlagsEXT, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageCopy2): VkCopyImageToImageInfoEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.srcImage = srcImage - result.srcImageLayout = srcImageLayout - result.dstImage = dstImage - result.dstImageLayout = dstImageLayout - result.regionCount = regionCount - result.pRegions = pRegions + result = VkCopyImageToImageInfoEXT( + sType: sType, + pNext: pNext, + flags: flags, + srcImage: srcImage, + srcImageLayout: srcImageLayout, + dstImage: dstImage, + dstImageLayout: dstImageLayout, + regionCount: regionCount, + pRegions: pRegions, + ) proc newVkHostImageLayoutTransitionInfoEXT*(sType: VkStructureType, pNext: pointer = nil, image: VkImage, oldLayout: VkImageLayout, newLayout: VkImageLayout, subresourceRange: VkImageSubresourceRange): VkHostImageLayoutTransitionInfoEXT = - result.sType = sType - result.pNext = pNext - result.image = image - result.oldLayout = oldLayout - result.newLayout = newLayout - result.subresourceRange = subresourceRange + result = VkHostImageLayoutTransitionInfoEXT( + sType: sType, + pNext: pNext, + image: image, + oldLayout: oldLayout, + newLayout: newLayout, + subresourceRange: subresourceRange, + ) proc newVkSubresourceHostMemcpySizeEXT*(sType: VkStructureType, pNext: pointer = nil, size: VkDeviceSize): VkSubresourceHostMemcpySizeEXT = - result.sType = sType - result.pNext = pNext - result.size = size + result = VkSubresourceHostMemcpySizeEXT( + sType: sType, + pNext: pNext, + size: size, + ) proc newVkHostImageCopyDevicePerformanceQueryEXT*(sType: VkStructureType, pNext: pointer = nil, optimalDeviceAccess: VkBool32, identicalMemoryLayout: VkBool32): VkHostImageCopyDevicePerformanceQueryEXT = - result.sType = sType - result.pNext = pNext - result.optimalDeviceAccess = optimalDeviceAccess - result.identicalMemoryLayout = identicalMemoryLayout + result = VkHostImageCopyDevicePerformanceQueryEXT( + sType: sType, + pNext: pNext, + optimalDeviceAccess: optimalDeviceAccess, + identicalMemoryLayout: identicalMemoryLayout, + ) proc newVkPhysicalDeviceVulkanSC10Properties*(sType: VkStructureType, pNext: pointer = nil, deviceNoDynamicHostAllocations: VkBool32, deviceDestroyFreesMemory: VkBool32, commandPoolMultipleCommandBuffersRecording: VkBool32, commandPoolResetCommandBuffer: VkBool32, commandBufferSimultaneousUse: VkBool32, secondaryCommandBufferNullOrImagelessFramebuffer: VkBool32, recycleDescriptorSetMemory: VkBool32, recyclePipelineMemory: VkBool32, maxRenderPassSubpasses: uint32, maxRenderPassDependencies: uint32, maxSubpassInputAttachments: uint32, maxSubpassPreserveAttachments: uint32, maxFramebufferAttachments: uint32, maxDescriptorSetLayoutBindings: uint32, maxQueryFaultCount: uint32, maxCallbackFaultCount: uint32, maxCommandPoolCommandBuffers: uint32, maxCommandBufferSize: VkDeviceSize): VkPhysicalDeviceVulkanSC10Properties = - result.sType = sType - result.pNext = pNext - result.deviceNoDynamicHostAllocations = deviceNoDynamicHostAllocations - result.deviceDestroyFreesMemory = deviceDestroyFreesMemory - result.commandPoolMultipleCommandBuffersRecording = commandPoolMultipleCommandBuffersRecording - result.commandPoolResetCommandBuffer = commandPoolResetCommandBuffer - result.commandBufferSimultaneousUse = commandBufferSimultaneousUse - result.secondaryCommandBufferNullOrImagelessFramebuffer = secondaryCommandBufferNullOrImagelessFramebuffer - result.recycleDescriptorSetMemory = recycleDescriptorSetMemory - result.recyclePipelineMemory = recyclePipelineMemory - result.maxRenderPassSubpasses = maxRenderPassSubpasses - result.maxRenderPassDependencies = maxRenderPassDependencies - result.maxSubpassInputAttachments = maxSubpassInputAttachments - result.maxSubpassPreserveAttachments = maxSubpassPreserveAttachments - result.maxFramebufferAttachments = maxFramebufferAttachments - result.maxDescriptorSetLayoutBindings = maxDescriptorSetLayoutBindings - result.maxQueryFaultCount = maxQueryFaultCount - result.maxCallbackFaultCount = maxCallbackFaultCount - result.maxCommandPoolCommandBuffers = maxCommandPoolCommandBuffers - result.maxCommandBufferSize = maxCommandBufferSize + result = VkPhysicalDeviceVulkanSC10Properties( + sType: sType, + pNext: pNext, + deviceNoDynamicHostAllocations: deviceNoDynamicHostAllocations, + deviceDestroyFreesMemory: deviceDestroyFreesMemory, + commandPoolMultipleCommandBuffersRecording: commandPoolMultipleCommandBuffersRecording, + commandPoolResetCommandBuffer: commandPoolResetCommandBuffer, + commandBufferSimultaneousUse: commandBufferSimultaneousUse, + secondaryCommandBufferNullOrImagelessFramebuffer: secondaryCommandBufferNullOrImagelessFramebuffer, + recycleDescriptorSetMemory: recycleDescriptorSetMemory, + recyclePipelineMemory: recyclePipelineMemory, + maxRenderPassSubpasses: maxRenderPassSubpasses, + maxRenderPassDependencies: maxRenderPassDependencies, + maxSubpassInputAttachments: maxSubpassInputAttachments, + maxSubpassPreserveAttachments: maxSubpassPreserveAttachments, + maxFramebufferAttachments: maxFramebufferAttachments, + maxDescriptorSetLayoutBindings: maxDescriptorSetLayoutBindings, + maxQueryFaultCount: maxQueryFaultCount, + maxCallbackFaultCount: maxCallbackFaultCount, + maxCommandPoolCommandBuffers: maxCommandPoolCommandBuffers, + maxCommandBufferSize: maxCommandBufferSize, + ) proc newVkPipelinePoolSize*(sType: VkStructureType, pNext: pointer = nil, poolEntrySize: VkDeviceSize, poolEntryCount: uint32): VkPipelinePoolSize = - result.sType = sType - result.pNext = pNext - result.poolEntrySize = poolEntrySize - result.poolEntryCount = poolEntryCount + result = VkPipelinePoolSize( + sType: sType, + pNext: pNext, + poolEntrySize: poolEntrySize, + poolEntryCount: poolEntryCount, + ) proc newVkDeviceObjectReservationCreateInfo*(sType: VkStructureType, pNext: pointer = nil, pipelineCacheCreateInfoCount: uint32, pPipelineCacheCreateInfos: ptr VkPipelineCacheCreateInfo, pipelinePoolSizeCount: uint32, pPipelinePoolSizes: ptr VkPipelinePoolSize, semaphoreRequestCount: uint32, commandBufferRequestCount: uint32, fenceRequestCount: uint32, deviceMemoryRequestCount: uint32, bufferRequestCount: uint32, imageRequestCount: uint32, eventRequestCount: uint32, queryPoolRequestCount: uint32, bufferViewRequestCount: uint32, imageViewRequestCount: uint32, layeredImageViewRequestCount: uint32, pipelineCacheRequestCount: uint32, pipelineLayoutRequestCount: uint32, renderPassRequestCount: uint32, graphicsPipelineRequestCount: uint32, computePipelineRequestCount: uint32, descriptorSetLayoutRequestCount: uint32, samplerRequestCount: uint32, descriptorPoolRequestCount: uint32, descriptorSetRequestCount: uint32, framebufferRequestCount: uint32, commandPoolRequestCount: uint32, samplerYcbcrConversionRequestCount: uint32, surfaceRequestCount: uint32, swapchainRequestCount: uint32, displayModeRequestCount: uint32, subpassDescriptionRequestCount: uint32, attachmentDescriptionRequestCount: uint32, descriptorSetLayoutBindingRequestCount: uint32, descriptorSetLayoutBindingLimit: uint32, maxImageViewMipLevels: uint32, maxImageViewArrayLayers: uint32, maxLayeredImageViewMipLevels: uint32, maxOcclusionQueriesPerPool: uint32, maxPipelineStatisticsQueriesPerPool: uint32, maxTimestampQueriesPerPool: uint32, maxImmutableSamplersPerDescriptorSetLayout: uint32): VkDeviceObjectReservationCreateInfo = - result.sType = sType - result.pNext = pNext - result.pipelineCacheCreateInfoCount = pipelineCacheCreateInfoCount - result.pPipelineCacheCreateInfos = pPipelineCacheCreateInfos - result.pipelinePoolSizeCount = pipelinePoolSizeCount - result.pPipelinePoolSizes = pPipelinePoolSizes - result.semaphoreRequestCount = semaphoreRequestCount - result.commandBufferRequestCount = commandBufferRequestCount - result.fenceRequestCount = fenceRequestCount - result.deviceMemoryRequestCount = deviceMemoryRequestCount - result.bufferRequestCount = bufferRequestCount - result.imageRequestCount = imageRequestCount - result.eventRequestCount = eventRequestCount - result.queryPoolRequestCount = queryPoolRequestCount - result.bufferViewRequestCount = bufferViewRequestCount - result.imageViewRequestCount = imageViewRequestCount - result.layeredImageViewRequestCount = layeredImageViewRequestCount - result.pipelineCacheRequestCount = pipelineCacheRequestCount - result.pipelineLayoutRequestCount = pipelineLayoutRequestCount - result.renderPassRequestCount = renderPassRequestCount - result.graphicsPipelineRequestCount = graphicsPipelineRequestCount - result.computePipelineRequestCount = computePipelineRequestCount - result.descriptorSetLayoutRequestCount = descriptorSetLayoutRequestCount - result.samplerRequestCount = samplerRequestCount - result.descriptorPoolRequestCount = descriptorPoolRequestCount - result.descriptorSetRequestCount = descriptorSetRequestCount - result.framebufferRequestCount = framebufferRequestCount - result.commandPoolRequestCount = commandPoolRequestCount - result.samplerYcbcrConversionRequestCount = samplerYcbcrConversionRequestCount - result.surfaceRequestCount = surfaceRequestCount - result.swapchainRequestCount = swapchainRequestCount - result.displayModeRequestCount = displayModeRequestCount - result.subpassDescriptionRequestCount = subpassDescriptionRequestCount - result.attachmentDescriptionRequestCount = attachmentDescriptionRequestCount - result.descriptorSetLayoutBindingRequestCount = descriptorSetLayoutBindingRequestCount - result.descriptorSetLayoutBindingLimit = descriptorSetLayoutBindingLimit - result.maxImageViewMipLevels = maxImageViewMipLevels - result.maxImageViewArrayLayers = maxImageViewArrayLayers - result.maxLayeredImageViewMipLevels = maxLayeredImageViewMipLevels - result.maxOcclusionQueriesPerPool = maxOcclusionQueriesPerPool - result.maxPipelineStatisticsQueriesPerPool = maxPipelineStatisticsQueriesPerPool - result.maxTimestampQueriesPerPool = maxTimestampQueriesPerPool - result.maxImmutableSamplersPerDescriptorSetLayout = maxImmutableSamplersPerDescriptorSetLayout + result = VkDeviceObjectReservationCreateInfo( + sType: sType, + pNext: pNext, + pipelineCacheCreateInfoCount: pipelineCacheCreateInfoCount, + pPipelineCacheCreateInfos: pPipelineCacheCreateInfos, + pipelinePoolSizeCount: pipelinePoolSizeCount, + pPipelinePoolSizes: pPipelinePoolSizes, + semaphoreRequestCount: semaphoreRequestCount, + commandBufferRequestCount: commandBufferRequestCount, + fenceRequestCount: fenceRequestCount, + deviceMemoryRequestCount: deviceMemoryRequestCount, + bufferRequestCount: bufferRequestCount, + imageRequestCount: imageRequestCount, + eventRequestCount: eventRequestCount, + queryPoolRequestCount: queryPoolRequestCount, + bufferViewRequestCount: bufferViewRequestCount, + imageViewRequestCount: imageViewRequestCount, + layeredImageViewRequestCount: layeredImageViewRequestCount, + pipelineCacheRequestCount: pipelineCacheRequestCount, + pipelineLayoutRequestCount: pipelineLayoutRequestCount, + renderPassRequestCount: renderPassRequestCount, + graphicsPipelineRequestCount: graphicsPipelineRequestCount, + computePipelineRequestCount: computePipelineRequestCount, + descriptorSetLayoutRequestCount: descriptorSetLayoutRequestCount, + samplerRequestCount: samplerRequestCount, + descriptorPoolRequestCount: descriptorPoolRequestCount, + descriptorSetRequestCount: descriptorSetRequestCount, + framebufferRequestCount: framebufferRequestCount, + commandPoolRequestCount: commandPoolRequestCount, + samplerYcbcrConversionRequestCount: samplerYcbcrConversionRequestCount, + surfaceRequestCount: surfaceRequestCount, + swapchainRequestCount: swapchainRequestCount, + displayModeRequestCount: displayModeRequestCount, + subpassDescriptionRequestCount: subpassDescriptionRequestCount, + attachmentDescriptionRequestCount: attachmentDescriptionRequestCount, + descriptorSetLayoutBindingRequestCount: descriptorSetLayoutBindingRequestCount, + descriptorSetLayoutBindingLimit: descriptorSetLayoutBindingLimit, + maxImageViewMipLevels: maxImageViewMipLevels, + maxImageViewArrayLayers: maxImageViewArrayLayers, + maxLayeredImageViewMipLevels: maxLayeredImageViewMipLevels, + maxOcclusionQueriesPerPool: maxOcclusionQueriesPerPool, + maxPipelineStatisticsQueriesPerPool: maxPipelineStatisticsQueriesPerPool, + maxTimestampQueriesPerPool: maxTimestampQueriesPerPool, + maxImmutableSamplersPerDescriptorSetLayout: maxImmutableSamplersPerDescriptorSetLayout, + ) proc newVkCommandPoolMemoryReservationCreateInfo*(sType: VkStructureType, pNext: pointer = nil, commandPoolReservedSize: VkDeviceSize, commandPoolMaxCommandBuffers: uint32): VkCommandPoolMemoryReservationCreateInfo = - result.sType = sType - result.pNext = pNext - result.commandPoolReservedSize = commandPoolReservedSize - result.commandPoolMaxCommandBuffers = commandPoolMaxCommandBuffers + result = VkCommandPoolMemoryReservationCreateInfo( + sType: sType, + pNext: pNext, + commandPoolReservedSize: commandPoolReservedSize, + commandPoolMaxCommandBuffers: commandPoolMaxCommandBuffers, + ) proc newVkCommandPoolMemoryConsumption*(sType: VkStructureType, pNext: pointer = nil, commandPoolAllocated: VkDeviceSize, commandPoolReservedSize: VkDeviceSize, commandBufferAllocated: VkDeviceSize): VkCommandPoolMemoryConsumption = - result.sType = sType - result.pNext = pNext - result.commandPoolAllocated = commandPoolAllocated - result.commandPoolReservedSize = commandPoolReservedSize - result.commandBufferAllocated = commandBufferAllocated + result = VkCommandPoolMemoryConsumption( + sType: sType, + pNext: pNext, + commandPoolAllocated: commandPoolAllocated, + commandPoolReservedSize: commandPoolReservedSize, + commandBufferAllocated: commandBufferAllocated, + ) proc newVkPhysicalDeviceVulkanSC10Features*(sType: VkStructureType, pNext: pointer = nil, shaderAtomicInstructions: VkBool32): VkPhysicalDeviceVulkanSC10Features = - result.sType = sType - result.pNext = pNext - result.shaderAtomicInstructions = shaderAtomicInstructions + result = VkPhysicalDeviceVulkanSC10Features( + sType: sType, + pNext: pNext, + shaderAtomicInstructions: shaderAtomicInstructions, + ) proc newVkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, primitivesGeneratedQuery: VkBool32, primitivesGeneratedQueryWithRasterizerDiscard: VkBool32, primitivesGeneratedQueryWithNonZeroStreams: VkBool32): VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.primitivesGeneratedQuery = primitivesGeneratedQuery - result.primitivesGeneratedQueryWithRasterizerDiscard = primitivesGeneratedQueryWithRasterizerDiscard - result.primitivesGeneratedQueryWithNonZeroStreams = primitivesGeneratedQueryWithNonZeroStreams + result = VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT( + sType: sType, + pNext: pNext, + primitivesGeneratedQuery: primitivesGeneratedQuery, + primitivesGeneratedQueryWithRasterizerDiscard: primitivesGeneratedQueryWithRasterizerDiscard, + primitivesGeneratedQueryWithNonZeroStreams: primitivesGeneratedQueryWithNonZeroStreams, + ) proc newVkPhysicalDeviceLegacyDitheringFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, legacyDithering: VkBool32): VkPhysicalDeviceLegacyDitheringFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.legacyDithering = legacyDithering + result = VkPhysicalDeviceLegacyDitheringFeaturesEXT( + sType: sType, + pNext: pNext, + legacyDithering: legacyDithering, + ) proc newVkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, multisampledRenderToSingleSampled: VkBool32): VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.multisampledRenderToSingleSampled = multisampledRenderToSingleSampled + result = VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT( + sType: sType, + pNext: pNext, + multisampledRenderToSingleSampled: multisampledRenderToSingleSampled, + ) proc newVkSubpassResolvePerformanceQueryEXT*(sType: VkStructureType, pNext: pointer = nil, optimal: VkBool32): VkSubpassResolvePerformanceQueryEXT = - result.sType = sType - result.pNext = pNext - result.optimal = optimal + result = VkSubpassResolvePerformanceQueryEXT( + sType: sType, + pNext: pNext, + optimal: optimal, + ) proc newVkMultisampledRenderToSingleSampledInfoEXT*(sType: VkStructureType, pNext: pointer = nil, multisampledRenderToSingleSampledEnable: VkBool32, rasterizationSamples: VkSampleCountFlagBits): VkMultisampledRenderToSingleSampledInfoEXT = - result.sType = sType - result.pNext = pNext - result.multisampledRenderToSingleSampledEnable = multisampledRenderToSingleSampledEnable - result.rasterizationSamples = rasterizationSamples + result = VkMultisampledRenderToSingleSampledInfoEXT( + sType: sType, + pNext: pNext, + multisampledRenderToSingleSampledEnable: multisampledRenderToSingleSampledEnable, + rasterizationSamples: rasterizationSamples, + ) proc newVkPhysicalDevicePipelineProtectedAccessFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, pipelineProtectedAccess: VkBool32): VkPhysicalDevicePipelineProtectedAccessFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.pipelineProtectedAccess = pipelineProtectedAccess + result = VkPhysicalDevicePipelineProtectedAccessFeaturesEXT( + sType: sType, + pNext: pNext, + pipelineProtectedAccess: pipelineProtectedAccess, + ) proc newVkQueueFamilyVideoPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, videoCodecOperations: VkVideoCodecOperationFlagsKHR): VkQueueFamilyVideoPropertiesKHR = - result.sType = sType - result.pNext = pNext - result.videoCodecOperations = videoCodecOperations + result = VkQueueFamilyVideoPropertiesKHR( + sType: sType, + pNext: pNext, + videoCodecOperations: videoCodecOperations, + ) proc newVkQueueFamilyQueryResultStatusPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, queryResultStatusSupport: VkBool32): VkQueueFamilyQueryResultStatusPropertiesKHR = - result.sType = sType - result.pNext = pNext - result.queryResultStatusSupport = queryResultStatusSupport + result = VkQueueFamilyQueryResultStatusPropertiesKHR( + sType: sType, + pNext: pNext, + queryResultStatusSupport: queryResultStatusSupport, + ) proc newVkVideoProfileListInfoKHR*(sType: VkStructureType, pNext: pointer = nil, profileCount: uint32, pProfiles: ptr VkVideoProfileInfoKHR): VkVideoProfileListInfoKHR = - result.sType = sType - result.pNext = pNext - result.profileCount = profileCount - result.pProfiles = pProfiles + result = VkVideoProfileListInfoKHR( + sType: sType, + pNext: pNext, + profileCount: profileCount, + pProfiles: pProfiles, + ) proc newVkPhysicalDeviceVideoFormatInfoKHR*(sType: VkStructureType, pNext: pointer = nil, imageUsage: VkImageUsageFlags): VkPhysicalDeviceVideoFormatInfoKHR = - result.sType = sType - result.pNext = pNext - result.imageUsage = imageUsage + result = VkPhysicalDeviceVideoFormatInfoKHR( + sType: sType, + pNext: pNext, + imageUsage: imageUsage, + ) proc newVkVideoFormatPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat, componentMapping: VkComponentMapping, imageCreateFlags: VkImageCreateFlags, imageType: VkImageType, imageTiling: VkImageTiling, imageUsageFlags: VkImageUsageFlags): VkVideoFormatPropertiesKHR = - result.sType = sType - result.pNext = pNext - result.format = format - result.componentMapping = componentMapping - result.imageCreateFlags = imageCreateFlags - result.imageType = imageType - result.imageTiling = imageTiling - result.imageUsageFlags = imageUsageFlags + result = VkVideoFormatPropertiesKHR( + sType: sType, + pNext: pNext, + format: format, + componentMapping: componentMapping, + imageCreateFlags: imageCreateFlags, + imageType: imageType, + imageTiling: imageTiling, + imageUsageFlags: imageUsageFlags, + ) proc newVkVideoProfileInfoKHR*(sType: VkStructureType, pNext: pointer = nil, videoCodecOperation: VkVideoCodecOperationFlagBitsKHR, chromaSubsampling: VkVideoChromaSubsamplingFlagsKHR, lumaBitDepth: VkVideoComponentBitDepthFlagsKHR, chromaBitDepth: VkVideoComponentBitDepthFlagsKHR): VkVideoProfileInfoKHR = - result.sType = sType - result.pNext = pNext - result.videoCodecOperation = videoCodecOperation - result.chromaSubsampling = chromaSubsampling - result.lumaBitDepth = lumaBitDepth - result.chromaBitDepth = chromaBitDepth + result = VkVideoProfileInfoKHR( + sType: sType, + pNext: pNext, + videoCodecOperation: videoCodecOperation, + chromaSubsampling: chromaSubsampling, + lumaBitDepth: lumaBitDepth, + chromaBitDepth: chromaBitDepth, + ) proc newVkVideoCapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoCapabilityFlagsKHR = 0.VkVideoCapabilityFlagsKHR, minBitstreamBufferOffsetAlignment: VkDeviceSize, minBitstreamBufferSizeAlignment: VkDeviceSize, pictureAccessGranularity: VkExtent2D, minCodedExtent: VkExtent2D, maxCodedExtent: VkExtent2D, maxDpbSlots: uint32, maxActiveReferencePictures: uint32, stdHeaderVersion: VkExtensionProperties): VkVideoCapabilitiesKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.minBitstreamBufferOffsetAlignment = minBitstreamBufferOffsetAlignment - result.minBitstreamBufferSizeAlignment = minBitstreamBufferSizeAlignment - result.pictureAccessGranularity = pictureAccessGranularity - result.minCodedExtent = minCodedExtent - result.maxCodedExtent = maxCodedExtent - result.maxDpbSlots = maxDpbSlots - result.maxActiveReferencePictures = maxActiveReferencePictures - result.stdHeaderVersion = stdHeaderVersion + result = VkVideoCapabilitiesKHR( + sType: sType, + pNext: pNext, + flags: flags, + minBitstreamBufferOffsetAlignment: minBitstreamBufferOffsetAlignment, + minBitstreamBufferSizeAlignment: minBitstreamBufferSizeAlignment, + pictureAccessGranularity: pictureAccessGranularity, + minCodedExtent: minCodedExtent, + maxCodedExtent: maxCodedExtent, + maxDpbSlots: maxDpbSlots, + maxActiveReferencePictures: maxActiveReferencePictures, + stdHeaderVersion: stdHeaderVersion, + ) proc newVkVideoSessionMemoryRequirementsKHR*(sType: VkStructureType, pNext: pointer = nil, memoryBindIndex: uint32, memoryRequirements: VkMemoryRequirements): VkVideoSessionMemoryRequirementsKHR = - result.sType = sType - result.pNext = pNext - result.memoryBindIndex = memoryBindIndex - result.memoryRequirements = memoryRequirements + result = VkVideoSessionMemoryRequirementsKHR( + sType: sType, + pNext: pNext, + memoryBindIndex: memoryBindIndex, + memoryRequirements: memoryRequirements, + ) proc newVkBindVideoSessionMemoryInfoKHR*(sType: VkStructureType, pNext: pointer = nil, memoryBindIndex: uint32, memory: VkDeviceMemory, memoryOffset: VkDeviceSize, memorySize: VkDeviceSize): VkBindVideoSessionMemoryInfoKHR = - result.sType = sType - result.pNext = pNext - result.memoryBindIndex = memoryBindIndex - result.memory = memory - result.memoryOffset = memoryOffset - result.memorySize = memorySize + result = VkBindVideoSessionMemoryInfoKHR( + sType: sType, + pNext: pNext, + memoryBindIndex: memoryBindIndex, + memory: memory, + memoryOffset: memoryOffset, + memorySize: memorySize, + ) proc newVkVideoPictureResourceInfoKHR*(sType: VkStructureType, pNext: pointer = nil, codedOffset: VkOffset2D, codedExtent: VkExtent2D, baseArrayLayer: uint32, imageViewBinding: VkImageView): VkVideoPictureResourceInfoKHR = - result.sType = sType - result.pNext = pNext - result.codedOffset = codedOffset - result.codedExtent = codedExtent - result.baseArrayLayer = baseArrayLayer - result.imageViewBinding = imageViewBinding + result = VkVideoPictureResourceInfoKHR( + sType: sType, + pNext: pNext, + codedOffset: codedOffset, + codedExtent: codedExtent, + baseArrayLayer: baseArrayLayer, + imageViewBinding: imageViewBinding, + ) proc newVkVideoReferenceSlotInfoKHR*(sType: VkStructureType, pNext: pointer = nil, slotIndex: int32, pPictureResource: ptr VkVideoPictureResourceInfoKHR): VkVideoReferenceSlotInfoKHR = - result.sType = sType - result.pNext = pNext - result.slotIndex = slotIndex - result.pPictureResource = pPictureResource + result = VkVideoReferenceSlotInfoKHR( + sType: sType, + pNext: pNext, + slotIndex: slotIndex, + pPictureResource: pPictureResource, + ) proc newVkVideoDecodeCapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoDecodeCapabilityFlagsKHR = 0.VkVideoDecodeCapabilityFlagsKHR): VkVideoDecodeCapabilitiesKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags + result = VkVideoDecodeCapabilitiesKHR( + sType: sType, + pNext: pNext, + flags: flags, + ) proc newVkVideoDecodeUsageInfoKHR*(sType: VkStructureType, pNext: pointer = nil, videoUsageHints: VkVideoDecodeUsageFlagsKHR): VkVideoDecodeUsageInfoKHR = - result.sType = sType - result.pNext = pNext - result.videoUsageHints = videoUsageHints + result = VkVideoDecodeUsageInfoKHR( + sType: sType, + pNext: pNext, + videoUsageHints: videoUsageHints, + ) proc newVkVideoDecodeInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoDecodeFlagsKHR = 0.VkVideoDecodeFlagsKHR, srcBuffer: VkBuffer, srcBufferOffset: VkDeviceSize, srcBufferRange: VkDeviceSize, dstPictureResource: VkVideoPictureResourceInfoKHR, pSetupReferenceSlot: ptr VkVideoReferenceSlotInfoKHR, referenceSlotCount: uint32, pReferenceSlots: ptr VkVideoReferenceSlotInfoKHR): VkVideoDecodeInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.srcBuffer = srcBuffer - result.srcBufferOffset = srcBufferOffset - result.srcBufferRange = srcBufferRange - result.dstPictureResource = dstPictureResource - result.pSetupReferenceSlot = pSetupReferenceSlot - result.referenceSlotCount = referenceSlotCount - result.pReferenceSlots = pReferenceSlots + result = VkVideoDecodeInfoKHR( + sType: sType, + pNext: pNext, + flags: flags, + srcBuffer: srcBuffer, + srcBufferOffset: srcBufferOffset, + srcBufferRange: srcBufferRange, + dstPictureResource: dstPictureResource, + pSetupReferenceSlot: pSetupReferenceSlot, + referenceSlotCount: referenceSlotCount, + pReferenceSlots: pReferenceSlots, + ) proc newVkPhysicalDeviceVideoMaintenance1FeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, videoMaintenance1: VkBool32): VkPhysicalDeviceVideoMaintenance1FeaturesKHR = - result.sType = sType - result.pNext = pNext - result.videoMaintenance1 = videoMaintenance1 + result = VkPhysicalDeviceVideoMaintenance1FeaturesKHR( + sType: sType, + pNext: pNext, + videoMaintenance1: videoMaintenance1, + ) proc newVkVideoInlineQueryInfoKHR*(sType: VkStructureType, pNext: pointer = nil, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32): VkVideoInlineQueryInfoKHR = - result.sType = sType - result.pNext = pNext - result.queryPool = queryPool - result.firstQuery = firstQuery - result.queryCount = queryCount + result = VkVideoInlineQueryInfoKHR( + sType: sType, + pNext: pNext, + queryPool: queryPool, + firstQuery: firstQuery, + queryCount: queryCount, + ) proc newVkVideoDecodeH264ProfileInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdProfileIdc: StdVideoH264ProfileIdc, pictureLayout: VkVideoDecodeH264PictureLayoutFlagBitsKHR): VkVideoDecodeH264ProfileInfoKHR = - result.sType = sType - result.pNext = pNext - result.stdProfileIdc = stdProfileIdc - result.pictureLayout = pictureLayout + result = VkVideoDecodeH264ProfileInfoKHR( + sType: sType, + pNext: pNext, + stdProfileIdc: stdProfileIdc, + pictureLayout: pictureLayout, + ) proc newVkVideoDecodeH264CapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, maxLevelIdc: StdVideoH264LevelIdc, fieldOffsetGranularity: VkOffset2D): VkVideoDecodeH264CapabilitiesKHR = - result.sType = sType - result.pNext = pNext - result.maxLevelIdc = maxLevelIdc - result.fieldOffsetGranularity = fieldOffsetGranularity + result = VkVideoDecodeH264CapabilitiesKHR( + sType: sType, + pNext: pNext, + maxLevelIdc: maxLevelIdc, + fieldOffsetGranularity: fieldOffsetGranularity, + ) proc newVkVideoDecodeH264SessionParametersAddInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdSPSCount: uint32, pStdSPSs: ptr StdVideoH264SequenceParameterSet, stdPPSCount: uint32, pStdPPSs: ptr StdVideoH264PictureParameterSet): VkVideoDecodeH264SessionParametersAddInfoKHR = - result.sType = sType - result.pNext = pNext - result.stdSPSCount = stdSPSCount - result.pStdSPSs = pStdSPSs - result.stdPPSCount = stdPPSCount - result.pStdPPSs = pStdPPSs + result = VkVideoDecodeH264SessionParametersAddInfoKHR( + sType: sType, + pNext: pNext, + stdSPSCount: stdSPSCount, + pStdSPSs: pStdSPSs, + stdPPSCount: stdPPSCount, + pStdPPSs: pStdPPSs, + ) proc newVkVideoDecodeH264SessionParametersCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, maxStdSPSCount: uint32, maxStdPPSCount: uint32, pParametersAddInfo: ptr VkVideoDecodeH264SessionParametersAddInfoKHR): VkVideoDecodeH264SessionParametersCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.maxStdSPSCount = maxStdSPSCount - result.maxStdPPSCount = maxStdPPSCount - result.pParametersAddInfo = pParametersAddInfo + result = VkVideoDecodeH264SessionParametersCreateInfoKHR( + sType: sType, + pNext: pNext, + maxStdSPSCount: maxStdSPSCount, + maxStdPPSCount: maxStdPPSCount, + pParametersAddInfo: pParametersAddInfo, + ) proc newVkVideoDecodeH264PictureInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdPictureInfo: ptr StdVideoDecodeH264PictureInfo, sliceCount: uint32, pSliceOffsets: ptr uint32): VkVideoDecodeH264PictureInfoKHR = - result.sType = sType - result.pNext = pNext - result.pStdPictureInfo = pStdPictureInfo - result.sliceCount = sliceCount - result.pSliceOffsets = pSliceOffsets + result = VkVideoDecodeH264PictureInfoKHR( + sType: sType, + pNext: pNext, + pStdPictureInfo: pStdPictureInfo, + sliceCount: sliceCount, + pSliceOffsets: pSliceOffsets, + ) proc newVkVideoDecodeH264DpbSlotInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoDecodeH264ReferenceInfo): VkVideoDecodeH264DpbSlotInfoKHR = - result.sType = sType - result.pNext = pNext - result.pStdReferenceInfo = pStdReferenceInfo + result = VkVideoDecodeH264DpbSlotInfoKHR( + sType: sType, + pNext: pNext, + pStdReferenceInfo: pStdReferenceInfo, + ) proc newVkVideoDecodeH265ProfileInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdProfileIdc: StdVideoH265ProfileIdc): VkVideoDecodeH265ProfileInfoKHR = - result.sType = sType - result.pNext = pNext - result.stdProfileIdc = stdProfileIdc + result = VkVideoDecodeH265ProfileInfoKHR( + sType: sType, + pNext: pNext, + stdProfileIdc: stdProfileIdc, + ) proc newVkVideoDecodeH265CapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, maxLevelIdc: StdVideoH265LevelIdc): VkVideoDecodeH265CapabilitiesKHR = - result.sType = sType - result.pNext = pNext - result.maxLevelIdc = maxLevelIdc + result = VkVideoDecodeH265CapabilitiesKHR( + sType: sType, + pNext: pNext, + maxLevelIdc: maxLevelIdc, + ) proc newVkVideoDecodeH265SessionParametersAddInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdVPSCount: uint32, pStdVPSs: ptr StdVideoH265VideoParameterSet, stdSPSCount: uint32, pStdSPSs: ptr StdVideoH265SequenceParameterSet, stdPPSCount: uint32, pStdPPSs: ptr StdVideoH265PictureParameterSet): VkVideoDecodeH265SessionParametersAddInfoKHR = - result.sType = sType - result.pNext = pNext - result.stdVPSCount = stdVPSCount - result.pStdVPSs = pStdVPSs - result.stdSPSCount = stdSPSCount - result.pStdSPSs = pStdSPSs - result.stdPPSCount = stdPPSCount - result.pStdPPSs = pStdPPSs + result = VkVideoDecodeH265SessionParametersAddInfoKHR( + sType: sType, + pNext: pNext, + stdVPSCount: stdVPSCount, + pStdVPSs: pStdVPSs, + stdSPSCount: stdSPSCount, + pStdSPSs: pStdSPSs, + stdPPSCount: stdPPSCount, + pStdPPSs: pStdPPSs, + ) proc newVkVideoDecodeH265SessionParametersCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, maxStdVPSCount: uint32, maxStdSPSCount: uint32, maxStdPPSCount: uint32, pParametersAddInfo: ptr VkVideoDecodeH265SessionParametersAddInfoKHR): VkVideoDecodeH265SessionParametersCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.maxStdVPSCount = maxStdVPSCount - result.maxStdSPSCount = maxStdSPSCount - result.maxStdPPSCount = maxStdPPSCount - result.pParametersAddInfo = pParametersAddInfo + result = VkVideoDecodeH265SessionParametersCreateInfoKHR( + sType: sType, + pNext: pNext, + maxStdVPSCount: maxStdVPSCount, + maxStdSPSCount: maxStdSPSCount, + maxStdPPSCount: maxStdPPSCount, + pParametersAddInfo: pParametersAddInfo, + ) proc newVkVideoDecodeH265PictureInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdPictureInfo: ptr StdVideoDecodeH265PictureInfo, sliceSegmentCount: uint32, pSliceSegmentOffsets: ptr uint32): VkVideoDecodeH265PictureInfoKHR = - result.sType = sType - result.pNext = pNext - result.pStdPictureInfo = pStdPictureInfo - result.sliceSegmentCount = sliceSegmentCount - result.pSliceSegmentOffsets = pSliceSegmentOffsets + result = VkVideoDecodeH265PictureInfoKHR( + sType: sType, + pNext: pNext, + pStdPictureInfo: pStdPictureInfo, + sliceSegmentCount: sliceSegmentCount, + pSliceSegmentOffsets: pSliceSegmentOffsets, + ) proc newVkVideoDecodeH265DpbSlotInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoDecodeH265ReferenceInfo): VkVideoDecodeH265DpbSlotInfoKHR = - result.sType = sType - result.pNext = pNext - result.pStdReferenceInfo = pStdReferenceInfo + result = VkVideoDecodeH265DpbSlotInfoKHR( + sType: sType, + pNext: pNext, + pStdReferenceInfo: pStdReferenceInfo, + ) proc newVkVideoDecodeAV1ProfileInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdProfile: StdVideoAV1Profile, filmGrainSupport: VkBool32): VkVideoDecodeAV1ProfileInfoKHR = - result.sType = sType - result.pNext = pNext - result.stdProfile = stdProfile - result.filmGrainSupport = filmGrainSupport + result = VkVideoDecodeAV1ProfileInfoKHR( + sType: sType, + pNext: pNext, + stdProfile: stdProfile, + filmGrainSupport: filmGrainSupport, + ) proc newVkVideoDecodeAV1CapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, maxLevel: StdVideoAV1Level): VkVideoDecodeAV1CapabilitiesKHR = - result.sType = sType - result.pNext = pNext - result.maxLevel = maxLevel + result = VkVideoDecodeAV1CapabilitiesKHR( + sType: sType, + pNext: pNext, + maxLevel: maxLevel, + ) proc newVkVideoDecodeAV1SessionParametersCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdSequenceHeader: ptr StdVideoAV1SequenceHeader): VkVideoDecodeAV1SessionParametersCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.pStdSequenceHeader = pStdSequenceHeader + result = VkVideoDecodeAV1SessionParametersCreateInfoKHR( + sType: sType, + pNext: pNext, + pStdSequenceHeader: pStdSequenceHeader, + ) proc newVkVideoDecodeAV1PictureInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdPictureInfo: ptr StdVideoDecodeAV1PictureInfo, referenceNameSlotIndices: array[VK_MAX_VIDEO_AV1_REFERENCES_PER_FRAME_KHR, int32], frameHeaderOffset: uint32, tileCount: uint32, pTileOffsets: ptr uint32, pTileSizes: ptr uint32): VkVideoDecodeAV1PictureInfoKHR = - result.sType = sType - result.pNext = pNext - result.pStdPictureInfo = pStdPictureInfo - result.referenceNameSlotIndices = referenceNameSlotIndices - result.frameHeaderOffset = frameHeaderOffset - result.tileCount = tileCount - result.pTileOffsets = pTileOffsets - result.pTileSizes = pTileSizes + result = VkVideoDecodeAV1PictureInfoKHR( + sType: sType, + pNext: pNext, + pStdPictureInfo: pStdPictureInfo, + referenceNameSlotIndices: referenceNameSlotIndices, + frameHeaderOffset: frameHeaderOffset, + tileCount: tileCount, + pTileOffsets: pTileOffsets, + pTileSizes: pTileSizes, + ) proc newVkVideoDecodeAV1DpbSlotInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoDecodeAV1ReferenceInfo): VkVideoDecodeAV1DpbSlotInfoKHR = - result.sType = sType - result.pNext = pNext - result.pStdReferenceInfo = pStdReferenceInfo + result = VkVideoDecodeAV1DpbSlotInfoKHR( + sType: sType, + pNext: pNext, + pStdReferenceInfo: pStdReferenceInfo, + ) proc newVkVideoSessionCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, queueFamilyIndex: uint32, flags: VkVideoSessionCreateFlagsKHR = 0.VkVideoSessionCreateFlagsKHR, pVideoProfile: ptr VkVideoProfileInfoKHR, pictureFormat: VkFormat, maxCodedExtent: VkExtent2D, referencePictureFormat: VkFormat, maxDpbSlots: uint32, maxActiveReferencePictures: uint32, pStdHeaderVersion: ptr VkExtensionProperties): VkVideoSessionCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.queueFamilyIndex = queueFamilyIndex - result.flags = flags - result.pVideoProfile = pVideoProfile - result.pictureFormat = pictureFormat - result.maxCodedExtent = maxCodedExtent - result.referencePictureFormat = referencePictureFormat - result.maxDpbSlots = maxDpbSlots - result.maxActiveReferencePictures = maxActiveReferencePictures - result.pStdHeaderVersion = pStdHeaderVersion + result = VkVideoSessionCreateInfoKHR( + sType: sType, + pNext: pNext, + queueFamilyIndex: queueFamilyIndex, + flags: flags, + pVideoProfile: pVideoProfile, + pictureFormat: pictureFormat, + maxCodedExtent: maxCodedExtent, + referencePictureFormat: referencePictureFormat, + maxDpbSlots: maxDpbSlots, + maxActiveReferencePictures: maxActiveReferencePictures, + pStdHeaderVersion: pStdHeaderVersion, + ) proc newVkVideoSessionParametersCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoSessionParametersCreateFlagsKHR = 0.VkVideoSessionParametersCreateFlagsKHR, videoSessionParametersTemplate: VkVideoSessionParametersKHR, videoSession: VkVideoSessionKHR): VkVideoSessionParametersCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.videoSessionParametersTemplate = videoSessionParametersTemplate - result.videoSession = videoSession + result = VkVideoSessionParametersCreateInfoKHR( + sType: sType, + pNext: pNext, + flags: flags, + videoSessionParametersTemplate: videoSessionParametersTemplate, + videoSession: videoSession, + ) proc newVkVideoSessionParametersUpdateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, updateSequenceCount: uint32): VkVideoSessionParametersUpdateInfoKHR = - result.sType = sType - result.pNext = pNext - result.updateSequenceCount = updateSequenceCount + result = VkVideoSessionParametersUpdateInfoKHR( + sType: sType, + pNext: pNext, + updateSequenceCount: updateSequenceCount, + ) proc newVkVideoEncodeSessionParametersGetInfoKHR*(sType: VkStructureType, pNext: pointer = nil, videoSessionParameters: VkVideoSessionParametersKHR): VkVideoEncodeSessionParametersGetInfoKHR = - result.sType = sType - result.pNext = pNext - result.videoSessionParameters = videoSessionParameters + result = VkVideoEncodeSessionParametersGetInfoKHR( + sType: sType, + pNext: pNext, + videoSessionParameters: videoSessionParameters, + ) proc newVkVideoEncodeSessionParametersFeedbackInfoKHR*(sType: VkStructureType, pNext: pointer = nil, hasOverrides: VkBool32): VkVideoEncodeSessionParametersFeedbackInfoKHR = - result.sType = sType - result.pNext = pNext - result.hasOverrides = hasOverrides + result = VkVideoEncodeSessionParametersFeedbackInfoKHR( + sType: sType, + pNext: pNext, + hasOverrides: hasOverrides, + ) proc newVkVideoBeginCodingInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoBeginCodingFlagsKHR = 0.VkVideoBeginCodingFlagsKHR, videoSession: VkVideoSessionKHR, videoSessionParameters: VkVideoSessionParametersKHR, referenceSlotCount: uint32, pReferenceSlots: ptr VkVideoReferenceSlotInfoKHR): VkVideoBeginCodingInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.videoSession = videoSession - result.videoSessionParameters = videoSessionParameters - result.referenceSlotCount = referenceSlotCount - result.pReferenceSlots = pReferenceSlots + result = VkVideoBeginCodingInfoKHR( + sType: sType, + pNext: pNext, + flags: flags, + videoSession: videoSession, + videoSessionParameters: videoSessionParameters, + referenceSlotCount: referenceSlotCount, + pReferenceSlots: pReferenceSlots, + ) proc newVkVideoEndCodingInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoEndCodingFlagsKHR = 0.VkVideoEndCodingFlagsKHR): VkVideoEndCodingInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags + result = VkVideoEndCodingInfoKHR( + sType: sType, + pNext: pNext, + flags: flags, + ) proc newVkVideoCodingControlInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoCodingControlFlagsKHR = 0.VkVideoCodingControlFlagsKHR): VkVideoCodingControlInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags + result = VkVideoCodingControlInfoKHR( + sType: sType, + pNext: pNext, + flags: flags, + ) proc newVkVideoEncodeUsageInfoKHR*(sType: VkStructureType, pNext: pointer = nil, videoUsageHints: VkVideoEncodeUsageFlagsKHR, videoContentHints: VkVideoEncodeContentFlagsKHR, tuningMode: VkVideoEncodeTuningModeKHR): VkVideoEncodeUsageInfoKHR = - result.sType = sType - result.pNext = pNext - result.videoUsageHints = videoUsageHints - result.videoContentHints = videoContentHints - result.tuningMode = tuningMode + result = VkVideoEncodeUsageInfoKHR( + sType: sType, + pNext: pNext, + videoUsageHints: videoUsageHints, + videoContentHints: videoContentHints, + tuningMode: tuningMode, + ) proc newVkVideoEncodeInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoEncodeFlagsKHR = 0.VkVideoEncodeFlagsKHR, dstBuffer: VkBuffer, dstBufferOffset: VkDeviceSize, dstBufferRange: VkDeviceSize, srcPictureResource: VkVideoPictureResourceInfoKHR, pSetupReferenceSlot: ptr VkVideoReferenceSlotInfoKHR, referenceSlotCount: uint32, pReferenceSlots: ptr VkVideoReferenceSlotInfoKHR, precedingExternallyEncodedBytes: uint32): VkVideoEncodeInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.dstBuffer = dstBuffer - result.dstBufferOffset = dstBufferOffset - result.dstBufferRange = dstBufferRange - result.srcPictureResource = srcPictureResource - result.pSetupReferenceSlot = pSetupReferenceSlot - result.referenceSlotCount = referenceSlotCount - result.pReferenceSlots = pReferenceSlots - result.precedingExternallyEncodedBytes = precedingExternallyEncodedBytes + result = VkVideoEncodeInfoKHR( + sType: sType, + pNext: pNext, + flags: flags, + dstBuffer: dstBuffer, + dstBufferOffset: dstBufferOffset, + dstBufferRange: dstBufferRange, + srcPictureResource: srcPictureResource, + pSetupReferenceSlot: pSetupReferenceSlot, + referenceSlotCount: referenceSlotCount, + pReferenceSlots: pReferenceSlots, + precedingExternallyEncodedBytes: precedingExternallyEncodedBytes, + ) proc newVkQueryPoolVideoEncodeFeedbackCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, encodeFeedbackFlags: VkVideoEncodeFeedbackFlagsKHR): VkQueryPoolVideoEncodeFeedbackCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.encodeFeedbackFlags = encodeFeedbackFlags + result = VkQueryPoolVideoEncodeFeedbackCreateInfoKHR( + sType: sType, + pNext: pNext, + encodeFeedbackFlags: encodeFeedbackFlags, + ) proc newVkVideoEncodeQualityLevelInfoKHR*(sType: VkStructureType, pNext: pointer = nil, qualityLevel: uint32): VkVideoEncodeQualityLevelInfoKHR = - result.sType = sType - result.pNext = pNext - result.qualityLevel = qualityLevel + result = VkVideoEncodeQualityLevelInfoKHR( + sType: sType, + pNext: pNext, + qualityLevel: qualityLevel, + ) proc newVkPhysicalDeviceVideoEncodeQualityLevelInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pVideoProfile: ptr VkVideoProfileInfoKHR, qualityLevel: uint32): VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR = - result.sType = sType - result.pNext = pNext - result.pVideoProfile = pVideoProfile - result.qualityLevel = qualityLevel + result = VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR( + sType: sType, + pNext: pNext, + pVideoProfile: pVideoProfile, + qualityLevel: qualityLevel, + ) proc newVkVideoEncodeQualityLevelPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, preferredRateControlMode: VkVideoEncodeRateControlModeFlagBitsKHR, preferredRateControlLayerCount: uint32): VkVideoEncodeQualityLevelPropertiesKHR = - result.sType = sType - result.pNext = pNext - result.preferredRateControlMode = preferredRateControlMode - result.preferredRateControlLayerCount = preferredRateControlLayerCount + result = VkVideoEncodeQualityLevelPropertiesKHR( + sType: sType, + pNext: pNext, + preferredRateControlMode: preferredRateControlMode, + preferredRateControlLayerCount: preferredRateControlLayerCount, + ) proc newVkVideoEncodeRateControlInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoEncodeRateControlFlagsKHR = 0.VkVideoEncodeRateControlFlagsKHR, rateControlMode: VkVideoEncodeRateControlModeFlagBitsKHR, layerCount: uint32, pLayers: ptr VkVideoEncodeRateControlLayerInfoKHR, virtualBufferSizeInMs: uint32, initialVirtualBufferSizeInMs: uint32): VkVideoEncodeRateControlInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.rateControlMode = rateControlMode - result.layerCount = layerCount - result.pLayers = pLayers - result.virtualBufferSizeInMs = virtualBufferSizeInMs - result.initialVirtualBufferSizeInMs = initialVirtualBufferSizeInMs + result = VkVideoEncodeRateControlInfoKHR( + sType: sType, + pNext: pNext, + flags: flags, + rateControlMode: rateControlMode, + layerCount: layerCount, + pLayers: pLayers, + virtualBufferSizeInMs: virtualBufferSizeInMs, + initialVirtualBufferSizeInMs: initialVirtualBufferSizeInMs, + ) proc newVkVideoEncodeRateControlLayerInfoKHR*(sType: VkStructureType, pNext: pointer = nil, averageBitrate: uint64, maxBitrate: uint64, frameRateNumerator: uint32, frameRateDenominator: uint32): VkVideoEncodeRateControlLayerInfoKHR = - result.sType = sType - result.pNext = pNext - result.averageBitrate = averageBitrate - result.maxBitrate = maxBitrate - result.frameRateNumerator = frameRateNumerator - result.frameRateDenominator = frameRateDenominator + result = VkVideoEncodeRateControlLayerInfoKHR( + sType: sType, + pNext: pNext, + averageBitrate: averageBitrate, + maxBitrate: maxBitrate, + frameRateNumerator: frameRateNumerator, + frameRateDenominator: frameRateDenominator, + ) proc newVkVideoEncodeCapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoEncodeCapabilityFlagsKHR = 0.VkVideoEncodeCapabilityFlagsKHR, rateControlModes: VkVideoEncodeRateControlModeFlagsKHR, maxRateControlLayers: uint32, maxBitrate: uint64, maxQualityLevels: uint32, encodeInputPictureGranularity: VkExtent2D, supportedEncodeFeedbackFlags: VkVideoEncodeFeedbackFlagsKHR): VkVideoEncodeCapabilitiesKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.rateControlModes = rateControlModes - result.maxRateControlLayers = maxRateControlLayers - result.maxBitrate = maxBitrate - result.maxQualityLevels = maxQualityLevels - result.encodeInputPictureGranularity = encodeInputPictureGranularity - result.supportedEncodeFeedbackFlags = supportedEncodeFeedbackFlags + result = VkVideoEncodeCapabilitiesKHR( + sType: sType, + pNext: pNext, + flags: flags, + rateControlModes: rateControlModes, + maxRateControlLayers: maxRateControlLayers, + maxBitrate: maxBitrate, + maxQualityLevels: maxQualityLevels, + encodeInputPictureGranularity: encodeInputPictureGranularity, + supportedEncodeFeedbackFlags: supportedEncodeFeedbackFlags, + ) proc newVkVideoEncodeH264CapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoEncodeH264CapabilityFlagsKHR = 0.VkVideoEncodeH264CapabilityFlagsKHR, maxLevelIdc: StdVideoH264LevelIdc, maxSliceCount: uint32, maxPPictureL0ReferenceCount: uint32, maxBPictureL0ReferenceCount: uint32, maxL1ReferenceCount: uint32, maxTemporalLayerCount: uint32, expectDyadicTemporalLayerPattern: VkBool32, minQp: int32, maxQp: int32, prefersGopRemainingFrames: VkBool32, requiresGopRemainingFrames: VkBool32, stdSyntaxFlags: VkVideoEncodeH264StdFlagsKHR): VkVideoEncodeH264CapabilitiesKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.maxLevelIdc = maxLevelIdc - result.maxSliceCount = maxSliceCount - result.maxPPictureL0ReferenceCount = maxPPictureL0ReferenceCount - result.maxBPictureL0ReferenceCount = maxBPictureL0ReferenceCount - result.maxL1ReferenceCount = maxL1ReferenceCount - result.maxTemporalLayerCount = maxTemporalLayerCount - result.expectDyadicTemporalLayerPattern = expectDyadicTemporalLayerPattern - result.minQp = minQp - result.maxQp = maxQp - result.prefersGopRemainingFrames = prefersGopRemainingFrames - result.requiresGopRemainingFrames = requiresGopRemainingFrames - result.stdSyntaxFlags = stdSyntaxFlags + result = VkVideoEncodeH264CapabilitiesKHR( + sType: sType, + pNext: pNext, + flags: flags, + maxLevelIdc: maxLevelIdc, + maxSliceCount: maxSliceCount, + maxPPictureL0ReferenceCount: maxPPictureL0ReferenceCount, + maxBPictureL0ReferenceCount: maxBPictureL0ReferenceCount, + maxL1ReferenceCount: maxL1ReferenceCount, + maxTemporalLayerCount: maxTemporalLayerCount, + expectDyadicTemporalLayerPattern: expectDyadicTemporalLayerPattern, + minQp: minQp, + maxQp: maxQp, + prefersGopRemainingFrames: prefersGopRemainingFrames, + requiresGopRemainingFrames: requiresGopRemainingFrames, + stdSyntaxFlags: stdSyntaxFlags, + ) proc newVkVideoEncodeH264QualityLevelPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, preferredRateControlFlags: VkVideoEncodeH264RateControlFlagsKHR, preferredGopFrameCount: uint32, preferredIdrPeriod: uint32, preferredConsecutiveBFrameCount: uint32, preferredTemporalLayerCount: uint32, preferredConstantQp: VkVideoEncodeH264QpKHR, preferredMaxL0ReferenceCount: uint32, preferredMaxL1ReferenceCount: uint32, preferredStdEntropyCodingModeFlag: VkBool32): VkVideoEncodeH264QualityLevelPropertiesKHR = - result.sType = sType - result.pNext = pNext - result.preferredRateControlFlags = preferredRateControlFlags - result.preferredGopFrameCount = preferredGopFrameCount - result.preferredIdrPeriod = preferredIdrPeriod - result.preferredConsecutiveBFrameCount = preferredConsecutiveBFrameCount - result.preferredTemporalLayerCount = preferredTemporalLayerCount - result.preferredConstantQp = preferredConstantQp - result.preferredMaxL0ReferenceCount = preferredMaxL0ReferenceCount - result.preferredMaxL1ReferenceCount = preferredMaxL1ReferenceCount - result.preferredStdEntropyCodingModeFlag = preferredStdEntropyCodingModeFlag + result = VkVideoEncodeH264QualityLevelPropertiesKHR( + sType: sType, + pNext: pNext, + preferredRateControlFlags: preferredRateControlFlags, + preferredGopFrameCount: preferredGopFrameCount, + preferredIdrPeriod: preferredIdrPeriod, + preferredConsecutiveBFrameCount: preferredConsecutiveBFrameCount, + preferredTemporalLayerCount: preferredTemporalLayerCount, + preferredConstantQp: preferredConstantQp, + preferredMaxL0ReferenceCount: preferredMaxL0ReferenceCount, + preferredMaxL1ReferenceCount: preferredMaxL1ReferenceCount, + preferredStdEntropyCodingModeFlag: preferredStdEntropyCodingModeFlag, + ) proc newVkVideoEncodeH264SessionCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, useMaxLevelIdc: VkBool32, maxLevelIdc: StdVideoH264LevelIdc): VkVideoEncodeH264SessionCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.useMaxLevelIdc = useMaxLevelIdc - result.maxLevelIdc = maxLevelIdc + result = VkVideoEncodeH264SessionCreateInfoKHR( + sType: sType, + pNext: pNext, + useMaxLevelIdc: useMaxLevelIdc, + maxLevelIdc: maxLevelIdc, + ) proc newVkVideoEncodeH264SessionParametersAddInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdSPSCount: uint32, pStdSPSs: ptr StdVideoH264SequenceParameterSet, stdPPSCount: uint32, pStdPPSs: ptr StdVideoH264PictureParameterSet): VkVideoEncodeH264SessionParametersAddInfoKHR = - result.sType = sType - result.pNext = pNext - result.stdSPSCount = stdSPSCount - result.pStdSPSs = pStdSPSs - result.stdPPSCount = stdPPSCount - result.pStdPPSs = pStdPPSs + result = VkVideoEncodeH264SessionParametersAddInfoKHR( + sType: sType, + pNext: pNext, + stdSPSCount: stdSPSCount, + pStdSPSs: pStdSPSs, + stdPPSCount: stdPPSCount, + pStdPPSs: pStdPPSs, + ) proc newVkVideoEncodeH264SessionParametersCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, maxStdSPSCount: uint32, maxStdPPSCount: uint32, pParametersAddInfo: ptr VkVideoEncodeH264SessionParametersAddInfoKHR): VkVideoEncodeH264SessionParametersCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.maxStdSPSCount = maxStdSPSCount - result.maxStdPPSCount = maxStdPPSCount - result.pParametersAddInfo = pParametersAddInfo + result = VkVideoEncodeH264SessionParametersCreateInfoKHR( + sType: sType, + pNext: pNext, + maxStdSPSCount: maxStdSPSCount, + maxStdPPSCount: maxStdPPSCount, + pParametersAddInfo: pParametersAddInfo, + ) proc newVkVideoEncodeH264SessionParametersGetInfoKHR*(sType: VkStructureType, pNext: pointer = nil, writeStdSPS: VkBool32, writeStdPPS: VkBool32, stdSPSId: uint32, stdPPSId: uint32): VkVideoEncodeH264SessionParametersGetInfoKHR = - result.sType = sType - result.pNext = pNext - result.writeStdSPS = writeStdSPS - result.writeStdPPS = writeStdPPS - result.stdSPSId = stdSPSId - result.stdPPSId = stdPPSId + result = VkVideoEncodeH264SessionParametersGetInfoKHR( + sType: sType, + pNext: pNext, + writeStdSPS: writeStdSPS, + writeStdPPS: writeStdPPS, + stdSPSId: stdSPSId, + stdPPSId: stdPPSId, + ) proc newVkVideoEncodeH264SessionParametersFeedbackInfoKHR*(sType: VkStructureType, pNext: pointer = nil, hasStdSPSOverrides: VkBool32, hasStdPPSOverrides: VkBool32): VkVideoEncodeH264SessionParametersFeedbackInfoKHR = - result.sType = sType - result.pNext = pNext - result.hasStdSPSOverrides = hasStdSPSOverrides - result.hasStdPPSOverrides = hasStdPPSOverrides + result = VkVideoEncodeH264SessionParametersFeedbackInfoKHR( + sType: sType, + pNext: pNext, + hasStdSPSOverrides: hasStdSPSOverrides, + hasStdPPSOverrides: hasStdPPSOverrides, + ) proc newVkVideoEncodeH264DpbSlotInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoEncodeH264ReferenceInfo): VkVideoEncodeH264DpbSlotInfoKHR = - result.sType = sType - result.pNext = pNext - result.pStdReferenceInfo = pStdReferenceInfo + result = VkVideoEncodeH264DpbSlotInfoKHR( + sType: sType, + pNext: pNext, + pStdReferenceInfo: pStdReferenceInfo, + ) proc newVkVideoEncodeH264PictureInfoKHR*(sType: VkStructureType, pNext: pointer = nil, naluSliceEntryCount: uint32, pNaluSliceEntries: ptr VkVideoEncodeH264NaluSliceInfoKHR, pStdPictureInfo: ptr StdVideoEncodeH264PictureInfo, generatePrefixNalu: VkBool32): VkVideoEncodeH264PictureInfoKHR = - result.sType = sType - result.pNext = pNext - result.naluSliceEntryCount = naluSliceEntryCount - result.pNaluSliceEntries = pNaluSliceEntries - result.pStdPictureInfo = pStdPictureInfo - result.generatePrefixNalu = generatePrefixNalu + result = VkVideoEncodeH264PictureInfoKHR( + sType: sType, + pNext: pNext, + naluSliceEntryCount: naluSliceEntryCount, + pNaluSliceEntries: pNaluSliceEntries, + pStdPictureInfo: pStdPictureInfo, + generatePrefixNalu: generatePrefixNalu, + ) proc newVkVideoEncodeH264ProfileInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdProfileIdc: StdVideoH264ProfileIdc): VkVideoEncodeH264ProfileInfoKHR = - result.sType = sType - result.pNext = pNext - result.stdProfileIdc = stdProfileIdc + result = VkVideoEncodeH264ProfileInfoKHR( + sType: sType, + pNext: pNext, + stdProfileIdc: stdProfileIdc, + ) proc newVkVideoEncodeH264NaluSliceInfoKHR*(sType: VkStructureType, pNext: pointer = nil, constantQp: int32, pStdSliceHeader: ptr StdVideoEncodeH264SliceHeader): VkVideoEncodeH264NaluSliceInfoKHR = - result.sType = sType - result.pNext = pNext - result.constantQp = constantQp - result.pStdSliceHeader = pStdSliceHeader + result = VkVideoEncodeH264NaluSliceInfoKHR( + sType: sType, + pNext: pNext, + constantQp: constantQp, + pStdSliceHeader: pStdSliceHeader, + ) proc newVkVideoEncodeH264RateControlInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoEncodeH264RateControlFlagsKHR = 0.VkVideoEncodeH264RateControlFlagsKHR, gopFrameCount: uint32, idrPeriod: uint32, consecutiveBFrameCount: uint32, temporalLayerCount: uint32): VkVideoEncodeH264RateControlInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.gopFrameCount = gopFrameCount - result.idrPeriod = idrPeriod - result.consecutiveBFrameCount = consecutiveBFrameCount - result.temporalLayerCount = temporalLayerCount + result = VkVideoEncodeH264RateControlInfoKHR( + sType: sType, + pNext: pNext, + flags: flags, + gopFrameCount: gopFrameCount, + idrPeriod: idrPeriod, + consecutiveBFrameCount: consecutiveBFrameCount, + temporalLayerCount: temporalLayerCount, + ) proc newVkVideoEncodeH264QpKHR*(qpI: int32, qpP: int32, qpB: int32): VkVideoEncodeH264QpKHR = - result.qpI = qpI - result.qpP = qpP - result.qpB = qpB + result = VkVideoEncodeH264QpKHR( + qpI: qpI, + qpP: qpP, + qpB: qpB, + ) proc newVkVideoEncodeH264FrameSizeKHR*(frameISize: uint32, framePSize: uint32, frameBSize: uint32): VkVideoEncodeH264FrameSizeKHR = - result.frameISize = frameISize - result.framePSize = framePSize - result.frameBSize = frameBSize + result = VkVideoEncodeH264FrameSizeKHR( + frameISize: frameISize, + framePSize: framePSize, + frameBSize: frameBSize, + ) proc newVkVideoEncodeH264GopRemainingFrameInfoKHR*(sType: VkStructureType, pNext: pointer = nil, useGopRemainingFrames: VkBool32, gopRemainingI: uint32, gopRemainingP: uint32, gopRemainingB: uint32): VkVideoEncodeH264GopRemainingFrameInfoKHR = - result.sType = sType - result.pNext = pNext - result.useGopRemainingFrames = useGopRemainingFrames - result.gopRemainingI = gopRemainingI - result.gopRemainingP = gopRemainingP - result.gopRemainingB = gopRemainingB + result = VkVideoEncodeH264GopRemainingFrameInfoKHR( + sType: sType, + pNext: pNext, + useGopRemainingFrames: useGopRemainingFrames, + gopRemainingI: gopRemainingI, + gopRemainingP: gopRemainingP, + gopRemainingB: gopRemainingB, + ) proc newVkVideoEncodeH264RateControlLayerInfoKHR*(sType: VkStructureType, pNext: pointer = nil, useMinQp: VkBool32, minQp: VkVideoEncodeH264QpKHR, useMaxQp: VkBool32, maxQp: VkVideoEncodeH264QpKHR, useMaxFrameSize: VkBool32, maxFrameSize: VkVideoEncodeH264FrameSizeKHR): VkVideoEncodeH264RateControlLayerInfoKHR = - result.sType = sType - result.pNext = pNext - result.useMinQp = useMinQp - result.minQp = minQp - result.useMaxQp = useMaxQp - result.maxQp = maxQp - result.useMaxFrameSize = useMaxFrameSize - result.maxFrameSize = maxFrameSize + result = VkVideoEncodeH264RateControlLayerInfoKHR( + sType: sType, + pNext: pNext, + useMinQp: useMinQp, + minQp: minQp, + useMaxQp: useMaxQp, + maxQp: maxQp, + useMaxFrameSize: useMaxFrameSize, + maxFrameSize: maxFrameSize, + ) proc newVkVideoEncodeH265CapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoEncodeH265CapabilityFlagsKHR = 0.VkVideoEncodeH265CapabilityFlagsKHR, maxLevelIdc: StdVideoH265LevelIdc, maxSliceSegmentCount: uint32, maxTiles: VkExtent2D, ctbSizes: VkVideoEncodeH265CtbSizeFlagsKHR, transformBlockSizes: VkVideoEncodeH265TransformBlockSizeFlagsKHR, maxPPictureL0ReferenceCount: uint32, maxBPictureL0ReferenceCount: uint32, maxL1ReferenceCount: uint32, maxSubLayerCount: uint32, expectDyadicTemporalSubLayerPattern: VkBool32, minQp: int32, maxQp: int32, prefersGopRemainingFrames: VkBool32, requiresGopRemainingFrames: VkBool32, stdSyntaxFlags: VkVideoEncodeH265StdFlagsKHR): VkVideoEncodeH265CapabilitiesKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.maxLevelIdc = maxLevelIdc - result.maxSliceSegmentCount = maxSliceSegmentCount - result.maxTiles = maxTiles - result.ctbSizes = ctbSizes - result.transformBlockSizes = transformBlockSizes - result.maxPPictureL0ReferenceCount = maxPPictureL0ReferenceCount - result.maxBPictureL0ReferenceCount = maxBPictureL0ReferenceCount - result.maxL1ReferenceCount = maxL1ReferenceCount - result.maxSubLayerCount = maxSubLayerCount - result.expectDyadicTemporalSubLayerPattern = expectDyadicTemporalSubLayerPattern - result.minQp = minQp - result.maxQp = maxQp - result.prefersGopRemainingFrames = prefersGopRemainingFrames - result.requiresGopRemainingFrames = requiresGopRemainingFrames - result.stdSyntaxFlags = stdSyntaxFlags + result = VkVideoEncodeH265CapabilitiesKHR( + sType: sType, + pNext: pNext, + flags: flags, + maxLevelIdc: maxLevelIdc, + maxSliceSegmentCount: maxSliceSegmentCount, + maxTiles: maxTiles, + ctbSizes: ctbSizes, + transformBlockSizes: transformBlockSizes, + maxPPictureL0ReferenceCount: maxPPictureL0ReferenceCount, + maxBPictureL0ReferenceCount: maxBPictureL0ReferenceCount, + maxL1ReferenceCount: maxL1ReferenceCount, + maxSubLayerCount: maxSubLayerCount, + expectDyadicTemporalSubLayerPattern: expectDyadicTemporalSubLayerPattern, + minQp: minQp, + maxQp: maxQp, + prefersGopRemainingFrames: prefersGopRemainingFrames, + requiresGopRemainingFrames: requiresGopRemainingFrames, + stdSyntaxFlags: stdSyntaxFlags, + ) proc newVkVideoEncodeH265QualityLevelPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, preferredRateControlFlags: VkVideoEncodeH265RateControlFlagsKHR, preferredGopFrameCount: uint32, preferredIdrPeriod: uint32, preferredConsecutiveBFrameCount: uint32, preferredSubLayerCount: uint32, preferredConstantQp: VkVideoEncodeH265QpKHR, preferredMaxL0ReferenceCount: uint32, preferredMaxL1ReferenceCount: uint32): VkVideoEncodeH265QualityLevelPropertiesKHR = - result.sType = sType - result.pNext = pNext - result.preferredRateControlFlags = preferredRateControlFlags - result.preferredGopFrameCount = preferredGopFrameCount - result.preferredIdrPeriod = preferredIdrPeriod - result.preferredConsecutiveBFrameCount = preferredConsecutiveBFrameCount - result.preferredSubLayerCount = preferredSubLayerCount - result.preferredConstantQp = preferredConstantQp - result.preferredMaxL0ReferenceCount = preferredMaxL0ReferenceCount - result.preferredMaxL1ReferenceCount = preferredMaxL1ReferenceCount + result = VkVideoEncodeH265QualityLevelPropertiesKHR( + sType: sType, + pNext: pNext, + preferredRateControlFlags: preferredRateControlFlags, + preferredGopFrameCount: preferredGopFrameCount, + preferredIdrPeriod: preferredIdrPeriod, + preferredConsecutiveBFrameCount: preferredConsecutiveBFrameCount, + preferredSubLayerCount: preferredSubLayerCount, + preferredConstantQp: preferredConstantQp, + preferredMaxL0ReferenceCount: preferredMaxL0ReferenceCount, + preferredMaxL1ReferenceCount: preferredMaxL1ReferenceCount, + ) proc newVkVideoEncodeH265SessionCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, useMaxLevelIdc: VkBool32, maxLevelIdc: StdVideoH265LevelIdc): VkVideoEncodeH265SessionCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.useMaxLevelIdc = useMaxLevelIdc - result.maxLevelIdc = maxLevelIdc + result = VkVideoEncodeH265SessionCreateInfoKHR( + sType: sType, + pNext: pNext, + useMaxLevelIdc: useMaxLevelIdc, + maxLevelIdc: maxLevelIdc, + ) proc newVkVideoEncodeH265SessionParametersAddInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdVPSCount: uint32, pStdVPSs: ptr StdVideoH265VideoParameterSet, stdSPSCount: uint32, pStdSPSs: ptr StdVideoH265SequenceParameterSet, stdPPSCount: uint32, pStdPPSs: ptr StdVideoH265PictureParameterSet): VkVideoEncodeH265SessionParametersAddInfoKHR = - result.sType = sType - result.pNext = pNext - result.stdVPSCount = stdVPSCount - result.pStdVPSs = pStdVPSs - result.stdSPSCount = stdSPSCount - result.pStdSPSs = pStdSPSs - result.stdPPSCount = stdPPSCount - result.pStdPPSs = pStdPPSs + result = VkVideoEncodeH265SessionParametersAddInfoKHR( + sType: sType, + pNext: pNext, + stdVPSCount: stdVPSCount, + pStdVPSs: pStdVPSs, + stdSPSCount: stdSPSCount, + pStdSPSs: pStdSPSs, + stdPPSCount: stdPPSCount, + pStdPPSs: pStdPPSs, + ) proc newVkVideoEncodeH265SessionParametersCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, maxStdVPSCount: uint32, maxStdSPSCount: uint32, maxStdPPSCount: uint32, pParametersAddInfo: ptr VkVideoEncodeH265SessionParametersAddInfoKHR): VkVideoEncodeH265SessionParametersCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.maxStdVPSCount = maxStdVPSCount - result.maxStdSPSCount = maxStdSPSCount - result.maxStdPPSCount = maxStdPPSCount - result.pParametersAddInfo = pParametersAddInfo + result = VkVideoEncodeH265SessionParametersCreateInfoKHR( + sType: sType, + pNext: pNext, + maxStdVPSCount: maxStdVPSCount, + maxStdSPSCount: maxStdSPSCount, + maxStdPPSCount: maxStdPPSCount, + pParametersAddInfo: pParametersAddInfo, + ) proc newVkVideoEncodeH265SessionParametersGetInfoKHR*(sType: VkStructureType, pNext: pointer = nil, writeStdVPS: VkBool32, writeStdSPS: VkBool32, writeStdPPS: VkBool32, stdVPSId: uint32, stdSPSId: uint32, stdPPSId: uint32): VkVideoEncodeH265SessionParametersGetInfoKHR = - result.sType = sType - result.pNext = pNext - result.writeStdVPS = writeStdVPS - result.writeStdSPS = writeStdSPS - result.writeStdPPS = writeStdPPS - result.stdVPSId = stdVPSId - result.stdSPSId = stdSPSId - result.stdPPSId = stdPPSId + result = VkVideoEncodeH265SessionParametersGetInfoKHR( + sType: sType, + pNext: pNext, + writeStdVPS: writeStdVPS, + writeStdSPS: writeStdSPS, + writeStdPPS: writeStdPPS, + stdVPSId: stdVPSId, + stdSPSId: stdSPSId, + stdPPSId: stdPPSId, + ) proc newVkVideoEncodeH265SessionParametersFeedbackInfoKHR*(sType: VkStructureType, pNext: pointer = nil, hasStdVPSOverrides: VkBool32, hasStdSPSOverrides: VkBool32, hasStdPPSOverrides: VkBool32): VkVideoEncodeH265SessionParametersFeedbackInfoKHR = - result.sType = sType - result.pNext = pNext - result.hasStdVPSOverrides = hasStdVPSOverrides - result.hasStdSPSOverrides = hasStdSPSOverrides - result.hasStdPPSOverrides = hasStdPPSOverrides + result = VkVideoEncodeH265SessionParametersFeedbackInfoKHR( + sType: sType, + pNext: pNext, + hasStdVPSOverrides: hasStdVPSOverrides, + hasStdSPSOverrides: hasStdSPSOverrides, + hasStdPPSOverrides: hasStdPPSOverrides, + ) proc newVkVideoEncodeH265PictureInfoKHR*(sType: VkStructureType, pNext: pointer = nil, naluSliceSegmentEntryCount: uint32, pNaluSliceSegmentEntries: ptr VkVideoEncodeH265NaluSliceSegmentInfoKHR, pStdPictureInfo: ptr StdVideoEncodeH265PictureInfo): VkVideoEncodeH265PictureInfoKHR = - result.sType = sType - result.pNext = pNext - result.naluSliceSegmentEntryCount = naluSliceSegmentEntryCount - result.pNaluSliceSegmentEntries = pNaluSliceSegmentEntries - result.pStdPictureInfo = pStdPictureInfo + result = VkVideoEncodeH265PictureInfoKHR( + sType: sType, + pNext: pNext, + naluSliceSegmentEntryCount: naluSliceSegmentEntryCount, + pNaluSliceSegmentEntries: pNaluSliceSegmentEntries, + pStdPictureInfo: pStdPictureInfo, + ) proc newVkVideoEncodeH265NaluSliceSegmentInfoKHR*(sType: VkStructureType, pNext: pointer = nil, constantQp: int32, pStdSliceSegmentHeader: ptr StdVideoEncodeH265SliceSegmentHeader): VkVideoEncodeH265NaluSliceSegmentInfoKHR = - result.sType = sType - result.pNext = pNext - result.constantQp = constantQp - result.pStdSliceSegmentHeader = pStdSliceSegmentHeader + result = VkVideoEncodeH265NaluSliceSegmentInfoKHR( + sType: sType, + pNext: pNext, + constantQp: constantQp, + pStdSliceSegmentHeader: pStdSliceSegmentHeader, + ) proc newVkVideoEncodeH265RateControlInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoEncodeH265RateControlFlagsKHR = 0.VkVideoEncodeH265RateControlFlagsKHR, gopFrameCount: uint32, idrPeriod: uint32, consecutiveBFrameCount: uint32, subLayerCount: uint32): VkVideoEncodeH265RateControlInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.gopFrameCount = gopFrameCount - result.idrPeriod = idrPeriod - result.consecutiveBFrameCount = consecutiveBFrameCount - result.subLayerCount = subLayerCount + result = VkVideoEncodeH265RateControlInfoKHR( + sType: sType, + pNext: pNext, + flags: flags, + gopFrameCount: gopFrameCount, + idrPeriod: idrPeriod, + consecutiveBFrameCount: consecutiveBFrameCount, + subLayerCount: subLayerCount, + ) proc newVkVideoEncodeH265QpKHR*(qpI: int32, qpP: int32, qpB: int32): VkVideoEncodeH265QpKHR = - result.qpI = qpI - result.qpP = qpP - result.qpB = qpB + result = VkVideoEncodeH265QpKHR( + qpI: qpI, + qpP: qpP, + qpB: qpB, + ) proc newVkVideoEncodeH265FrameSizeKHR*(frameISize: uint32, framePSize: uint32, frameBSize: uint32): VkVideoEncodeH265FrameSizeKHR = - result.frameISize = frameISize - result.framePSize = framePSize - result.frameBSize = frameBSize + result = VkVideoEncodeH265FrameSizeKHR( + frameISize: frameISize, + framePSize: framePSize, + frameBSize: frameBSize, + ) proc newVkVideoEncodeH265GopRemainingFrameInfoKHR*(sType: VkStructureType, pNext: pointer = nil, useGopRemainingFrames: VkBool32, gopRemainingI: uint32, gopRemainingP: uint32, gopRemainingB: uint32): VkVideoEncodeH265GopRemainingFrameInfoKHR = - result.sType = sType - result.pNext = pNext - result.useGopRemainingFrames = useGopRemainingFrames - result.gopRemainingI = gopRemainingI - result.gopRemainingP = gopRemainingP - result.gopRemainingB = gopRemainingB + result = VkVideoEncodeH265GopRemainingFrameInfoKHR( + sType: sType, + pNext: pNext, + useGopRemainingFrames: useGopRemainingFrames, + gopRemainingI: gopRemainingI, + gopRemainingP: gopRemainingP, + gopRemainingB: gopRemainingB, + ) proc newVkVideoEncodeH265RateControlLayerInfoKHR*(sType: VkStructureType, pNext: pointer = nil, useMinQp: VkBool32, minQp: VkVideoEncodeH265QpKHR, useMaxQp: VkBool32, maxQp: VkVideoEncodeH265QpKHR, useMaxFrameSize: VkBool32, maxFrameSize: VkVideoEncodeH265FrameSizeKHR): VkVideoEncodeH265RateControlLayerInfoKHR = - result.sType = sType - result.pNext = pNext - result.useMinQp = useMinQp - result.minQp = minQp - result.useMaxQp = useMaxQp - result.maxQp = maxQp - result.useMaxFrameSize = useMaxFrameSize - result.maxFrameSize = maxFrameSize + result = VkVideoEncodeH265RateControlLayerInfoKHR( + sType: sType, + pNext: pNext, + useMinQp: useMinQp, + minQp: minQp, + useMaxQp: useMaxQp, + maxQp: maxQp, + useMaxFrameSize: useMaxFrameSize, + maxFrameSize: maxFrameSize, + ) proc newVkVideoEncodeH265ProfileInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdProfileIdc: StdVideoH265ProfileIdc): VkVideoEncodeH265ProfileInfoKHR = - result.sType = sType - result.pNext = pNext - result.stdProfileIdc = stdProfileIdc + result = VkVideoEncodeH265ProfileInfoKHR( + sType: sType, + pNext: pNext, + stdProfileIdc: stdProfileIdc, + ) proc newVkVideoEncodeH265DpbSlotInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoEncodeH265ReferenceInfo): VkVideoEncodeH265DpbSlotInfoKHR = - result.sType = sType - result.pNext = pNext - result.pStdReferenceInfo = pStdReferenceInfo + result = VkVideoEncodeH265DpbSlotInfoKHR( + sType: sType, + pNext: pNext, + pStdReferenceInfo: pStdReferenceInfo, + ) proc newVkPhysicalDeviceInheritedViewportScissorFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, inheritedViewportScissor2D: VkBool32): VkPhysicalDeviceInheritedViewportScissorFeaturesNV = - result.sType = sType - result.pNext = pNext - result.inheritedViewportScissor2D = inheritedViewportScissor2D + result = VkPhysicalDeviceInheritedViewportScissorFeaturesNV( + sType: sType, + pNext: pNext, + inheritedViewportScissor2D: inheritedViewportScissor2D, + ) proc newVkCommandBufferInheritanceViewportScissorInfoNV*(sType: VkStructureType, pNext: pointer = nil, viewportScissor2D: VkBool32, viewportDepthCount: uint32, pViewportDepths: ptr VkViewport): VkCommandBufferInheritanceViewportScissorInfoNV = - result.sType = sType - result.pNext = pNext - result.viewportScissor2D = viewportScissor2D - result.viewportDepthCount = viewportDepthCount - result.pViewportDepths = pViewportDepths + result = VkCommandBufferInheritanceViewportScissorInfoNV( + sType: sType, + pNext: pNext, + viewportScissor2D: viewportScissor2D, + viewportDepthCount: viewportDepthCount, + pViewportDepths: pViewportDepths, + ) proc newVkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, ycbcr2plane444Formats: VkBool32): VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.ycbcr2plane444Formats = ycbcr2plane444Formats + result = VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT( + sType: sType, + pNext: pNext, + ycbcr2plane444Formats: ycbcr2plane444Formats, + ) proc newVkPhysicalDeviceProvokingVertexFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, provokingVertexLast: VkBool32, transformFeedbackPreservesProvokingVertex: VkBool32): VkPhysicalDeviceProvokingVertexFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.provokingVertexLast = provokingVertexLast - result.transformFeedbackPreservesProvokingVertex = transformFeedbackPreservesProvokingVertex + result = VkPhysicalDeviceProvokingVertexFeaturesEXT( + sType: sType, + pNext: pNext, + provokingVertexLast: provokingVertexLast, + transformFeedbackPreservesProvokingVertex: transformFeedbackPreservesProvokingVertex, + ) proc newVkPhysicalDeviceProvokingVertexPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, provokingVertexModePerPipeline: VkBool32, transformFeedbackPreservesTriangleFanProvokingVertex: VkBool32): VkPhysicalDeviceProvokingVertexPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.provokingVertexModePerPipeline = provokingVertexModePerPipeline - result.transformFeedbackPreservesTriangleFanProvokingVertex = transformFeedbackPreservesTriangleFanProvokingVertex + result = VkPhysicalDeviceProvokingVertexPropertiesEXT( + sType: sType, + pNext: pNext, + provokingVertexModePerPipeline: provokingVertexModePerPipeline, + transformFeedbackPreservesTriangleFanProvokingVertex: transformFeedbackPreservesTriangleFanProvokingVertex, + ) proc newVkPipelineRasterizationProvokingVertexStateCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, provokingVertexMode: VkProvokingVertexModeEXT): VkPipelineRasterizationProvokingVertexStateCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.provokingVertexMode = provokingVertexMode + result = VkPipelineRasterizationProvokingVertexStateCreateInfoEXT( + sType: sType, + pNext: pNext, + provokingVertexMode: provokingVertexMode, + ) proc newVkCuModuleCreateInfoNVX*(sType: VkStructureType, pNext: pointer = nil, dataSize: uint, pData: pointer = nil): VkCuModuleCreateInfoNVX = - result.sType = sType - result.pNext = pNext - result.dataSize = dataSize - result.pData = pData + result = VkCuModuleCreateInfoNVX( + sType: sType, + pNext: pNext, + dataSize: dataSize, + pData: pData, + ) proc newVkCuFunctionCreateInfoNVX*(sType: VkStructureType, pNext: pointer = nil, module: VkCuModuleNVX, pName: cstring): VkCuFunctionCreateInfoNVX = - result.sType = sType - result.pNext = pNext - result.module = module - result.pName = pName + result = VkCuFunctionCreateInfoNVX( + sType: sType, + pNext: pNext, + module: module, + pName: pName, + ) proc newVkCuLaunchInfoNVX*(sType: VkStructureType, pNext: pointer = nil, function: VkCuFunctionNVX, gridDimX: uint32, gridDimY: uint32, gridDimZ: uint32, blockDimX: uint32, blockDimY: uint32, blockDimZ: uint32, sharedMemBytes: uint32, paramCount: uint, pParams: ptr pointer, extraCount: uint, pExtras: ptr pointer): VkCuLaunchInfoNVX = - result.sType = sType - result.pNext = pNext - result.function = function - result.gridDimX = gridDimX - result.gridDimY = gridDimY - result.gridDimZ = gridDimZ - result.blockDimX = blockDimX - result.blockDimY = blockDimY - result.blockDimZ = blockDimZ - result.sharedMemBytes = sharedMemBytes - result.paramCount = paramCount - result.pParams = pParams - result.extraCount = extraCount - result.pExtras = pExtras + result = VkCuLaunchInfoNVX( + sType: sType, + pNext: pNext, + function: function, + gridDimX: gridDimX, + gridDimY: gridDimY, + gridDimZ: gridDimZ, + blockDimX: blockDimX, + blockDimY: blockDimY, + blockDimZ: blockDimZ, + sharedMemBytes: sharedMemBytes, + paramCount: paramCount, + pParams: pParams, + extraCount: extraCount, + pExtras: pExtras, + ) proc newVkPhysicalDeviceDescriptorBufferFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, descriptorBuffer: VkBool32, descriptorBufferCaptureReplay: VkBool32, descriptorBufferImageLayoutIgnored: VkBool32, descriptorBufferPushDescriptors: VkBool32): VkPhysicalDeviceDescriptorBufferFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.descriptorBuffer = descriptorBuffer - result.descriptorBufferCaptureReplay = descriptorBufferCaptureReplay - result.descriptorBufferImageLayoutIgnored = descriptorBufferImageLayoutIgnored - result.descriptorBufferPushDescriptors = descriptorBufferPushDescriptors + result = VkPhysicalDeviceDescriptorBufferFeaturesEXT( + sType: sType, + pNext: pNext, + descriptorBuffer: descriptorBuffer, + descriptorBufferCaptureReplay: descriptorBufferCaptureReplay, + descriptorBufferImageLayoutIgnored: descriptorBufferImageLayoutIgnored, + descriptorBufferPushDescriptors: descriptorBufferPushDescriptors, + ) proc newVkPhysicalDeviceDescriptorBufferPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, combinedImageSamplerDescriptorSingleArray: VkBool32, bufferlessPushDescriptors: VkBool32, allowSamplerImageViewPostSubmitCreation: VkBool32, descriptorBufferOffsetAlignment: VkDeviceSize, maxDescriptorBufferBindings: uint32, maxResourceDescriptorBufferBindings: uint32, maxSamplerDescriptorBufferBindings: uint32, maxEmbeddedImmutableSamplerBindings: uint32, maxEmbeddedImmutableSamplers: uint32, bufferCaptureReplayDescriptorDataSize: uint, imageCaptureReplayDescriptorDataSize: uint, imageViewCaptureReplayDescriptorDataSize: uint, samplerCaptureReplayDescriptorDataSize: uint, accelerationStructureCaptureReplayDescriptorDataSize: uint, samplerDescriptorSize: uint, combinedImageSamplerDescriptorSize: uint, sampledImageDescriptorSize: uint, storageImageDescriptorSize: uint, uniformTexelBufferDescriptorSize: uint, robustUniformTexelBufferDescriptorSize: uint, storageTexelBufferDescriptorSize: uint, robustStorageTexelBufferDescriptorSize: uint, uniformBufferDescriptorSize: uint, robustUniformBufferDescriptorSize: uint, storageBufferDescriptorSize: uint, robustStorageBufferDescriptorSize: uint, inputAttachmentDescriptorSize: uint, accelerationStructureDescriptorSize: uint, maxSamplerDescriptorBufferRange: VkDeviceSize, maxResourceDescriptorBufferRange: VkDeviceSize, samplerDescriptorBufferAddressSpaceSize: VkDeviceSize, resourceDescriptorBufferAddressSpaceSize: VkDeviceSize, descriptorBufferAddressSpaceSize: VkDeviceSize): VkPhysicalDeviceDescriptorBufferPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.combinedImageSamplerDescriptorSingleArray = combinedImageSamplerDescriptorSingleArray - result.bufferlessPushDescriptors = bufferlessPushDescriptors - result.allowSamplerImageViewPostSubmitCreation = allowSamplerImageViewPostSubmitCreation - result.descriptorBufferOffsetAlignment = descriptorBufferOffsetAlignment - result.maxDescriptorBufferBindings = maxDescriptorBufferBindings - result.maxResourceDescriptorBufferBindings = maxResourceDescriptorBufferBindings - result.maxSamplerDescriptorBufferBindings = maxSamplerDescriptorBufferBindings - result.maxEmbeddedImmutableSamplerBindings = maxEmbeddedImmutableSamplerBindings - result.maxEmbeddedImmutableSamplers = maxEmbeddedImmutableSamplers - result.bufferCaptureReplayDescriptorDataSize = bufferCaptureReplayDescriptorDataSize - result.imageCaptureReplayDescriptorDataSize = imageCaptureReplayDescriptorDataSize - result.imageViewCaptureReplayDescriptorDataSize = imageViewCaptureReplayDescriptorDataSize - result.samplerCaptureReplayDescriptorDataSize = samplerCaptureReplayDescriptorDataSize - result.accelerationStructureCaptureReplayDescriptorDataSize = accelerationStructureCaptureReplayDescriptorDataSize - result.samplerDescriptorSize = samplerDescriptorSize - result.combinedImageSamplerDescriptorSize = combinedImageSamplerDescriptorSize - result.sampledImageDescriptorSize = sampledImageDescriptorSize - result.storageImageDescriptorSize = storageImageDescriptorSize - result.uniformTexelBufferDescriptorSize = uniformTexelBufferDescriptorSize - result.robustUniformTexelBufferDescriptorSize = robustUniformTexelBufferDescriptorSize - result.storageTexelBufferDescriptorSize = storageTexelBufferDescriptorSize - result.robustStorageTexelBufferDescriptorSize = robustStorageTexelBufferDescriptorSize - result.uniformBufferDescriptorSize = uniformBufferDescriptorSize - result.robustUniformBufferDescriptorSize = robustUniformBufferDescriptorSize - result.storageBufferDescriptorSize = storageBufferDescriptorSize - result.robustStorageBufferDescriptorSize = robustStorageBufferDescriptorSize - result.inputAttachmentDescriptorSize = inputAttachmentDescriptorSize - result.accelerationStructureDescriptorSize = accelerationStructureDescriptorSize - result.maxSamplerDescriptorBufferRange = maxSamplerDescriptorBufferRange - result.maxResourceDescriptorBufferRange = maxResourceDescriptorBufferRange - result.samplerDescriptorBufferAddressSpaceSize = samplerDescriptorBufferAddressSpaceSize - result.resourceDescriptorBufferAddressSpaceSize = resourceDescriptorBufferAddressSpaceSize - result.descriptorBufferAddressSpaceSize = descriptorBufferAddressSpaceSize + result = VkPhysicalDeviceDescriptorBufferPropertiesEXT( + sType: sType, + pNext: pNext, + combinedImageSamplerDescriptorSingleArray: combinedImageSamplerDescriptorSingleArray, + bufferlessPushDescriptors: bufferlessPushDescriptors, + allowSamplerImageViewPostSubmitCreation: allowSamplerImageViewPostSubmitCreation, + descriptorBufferOffsetAlignment: descriptorBufferOffsetAlignment, + maxDescriptorBufferBindings: maxDescriptorBufferBindings, + maxResourceDescriptorBufferBindings: maxResourceDescriptorBufferBindings, + maxSamplerDescriptorBufferBindings: maxSamplerDescriptorBufferBindings, + maxEmbeddedImmutableSamplerBindings: maxEmbeddedImmutableSamplerBindings, + maxEmbeddedImmutableSamplers: maxEmbeddedImmutableSamplers, + bufferCaptureReplayDescriptorDataSize: bufferCaptureReplayDescriptorDataSize, + imageCaptureReplayDescriptorDataSize: imageCaptureReplayDescriptorDataSize, + imageViewCaptureReplayDescriptorDataSize: imageViewCaptureReplayDescriptorDataSize, + samplerCaptureReplayDescriptorDataSize: samplerCaptureReplayDescriptorDataSize, + accelerationStructureCaptureReplayDescriptorDataSize: accelerationStructureCaptureReplayDescriptorDataSize, + samplerDescriptorSize: samplerDescriptorSize, + combinedImageSamplerDescriptorSize: combinedImageSamplerDescriptorSize, + sampledImageDescriptorSize: sampledImageDescriptorSize, + storageImageDescriptorSize: storageImageDescriptorSize, + uniformTexelBufferDescriptorSize: uniformTexelBufferDescriptorSize, + robustUniformTexelBufferDescriptorSize: robustUniformTexelBufferDescriptorSize, + storageTexelBufferDescriptorSize: storageTexelBufferDescriptorSize, + robustStorageTexelBufferDescriptorSize: robustStorageTexelBufferDescriptorSize, + uniformBufferDescriptorSize: uniformBufferDescriptorSize, + robustUniformBufferDescriptorSize: robustUniformBufferDescriptorSize, + storageBufferDescriptorSize: storageBufferDescriptorSize, + robustStorageBufferDescriptorSize: robustStorageBufferDescriptorSize, + inputAttachmentDescriptorSize: inputAttachmentDescriptorSize, + accelerationStructureDescriptorSize: accelerationStructureDescriptorSize, + maxSamplerDescriptorBufferRange: maxSamplerDescriptorBufferRange, + maxResourceDescriptorBufferRange: maxResourceDescriptorBufferRange, + samplerDescriptorBufferAddressSpaceSize: samplerDescriptorBufferAddressSpaceSize, + resourceDescriptorBufferAddressSpaceSize: resourceDescriptorBufferAddressSpaceSize, + descriptorBufferAddressSpaceSize: descriptorBufferAddressSpaceSize, + ) proc newVkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, combinedImageSamplerDensityMapDescriptorSize: uint): VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.combinedImageSamplerDensityMapDescriptorSize = combinedImageSamplerDensityMapDescriptorSize + result = VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT( + sType: sType, + pNext: pNext, + combinedImageSamplerDensityMapDescriptorSize: combinedImageSamplerDensityMapDescriptorSize, + ) proc newVkDescriptorAddressInfoEXT*(sType: VkStructureType, pNext: pointer = nil, address: VkDeviceAddress, range: VkDeviceSize, format: VkFormat): VkDescriptorAddressInfoEXT = - result.sType = sType - result.pNext = pNext - result.address = address - result.range = range - result.format = format + result = VkDescriptorAddressInfoEXT( + sType: sType, + pNext: pNext, + address: address, + range: range, + format: format, + ) proc newVkDescriptorBufferBindingInfoEXT*(sType: VkStructureType, pNext: pointer = nil, address: VkDeviceAddress, usage: VkBufferUsageFlags): VkDescriptorBufferBindingInfoEXT = - result.sType = sType - result.pNext = pNext - result.address = address - result.usage = usage + result = VkDescriptorBufferBindingInfoEXT( + sType: sType, + pNext: pNext, + address: address, + usage: usage, + ) proc newVkDescriptorBufferBindingPushDescriptorBufferHandleEXT*(sType: VkStructureType, pNext: pointer = nil, buffer: VkBuffer): VkDescriptorBufferBindingPushDescriptorBufferHandleEXT = - result.sType = sType - result.pNext = pNext - result.buffer = buffer + result = VkDescriptorBufferBindingPushDescriptorBufferHandleEXT( + sType: sType, + pNext: pNext, + buffer: buffer, + ) proc newVkDescriptorGetInfoEXT*(sType: VkStructureType, pNext: pointer = nil, `type`: VkDescriptorType, data: VkDescriptorDataEXT): VkDescriptorGetInfoEXT = - result.sType = sType - result.pNext = pNext - result.`type` = `type` - result.data = data + result = VkDescriptorGetInfoEXT( + sType: sType, + pNext: pNext, + `type`: `type`, + data: data, + ) proc newVkBufferCaptureDescriptorDataInfoEXT*(sType: VkStructureType, pNext: pointer = nil, buffer: VkBuffer): VkBufferCaptureDescriptorDataInfoEXT = - result.sType = sType - result.pNext = pNext - result.buffer = buffer + result = VkBufferCaptureDescriptorDataInfoEXT( + sType: sType, + pNext: pNext, + buffer: buffer, + ) proc newVkImageCaptureDescriptorDataInfoEXT*(sType: VkStructureType, pNext: pointer = nil, image: VkImage): VkImageCaptureDescriptorDataInfoEXT = - result.sType = sType - result.pNext = pNext - result.image = image + result = VkImageCaptureDescriptorDataInfoEXT( + sType: sType, + pNext: pNext, + image: image, + ) proc newVkImageViewCaptureDescriptorDataInfoEXT*(sType: VkStructureType, pNext: pointer = nil, imageView: VkImageView): VkImageViewCaptureDescriptorDataInfoEXT = - result.sType = sType - result.pNext = pNext - result.imageView = imageView + result = VkImageViewCaptureDescriptorDataInfoEXT( + sType: sType, + pNext: pNext, + imageView: imageView, + ) proc newVkSamplerCaptureDescriptorDataInfoEXT*(sType: VkStructureType, pNext: pointer = nil, sampler: VkSampler): VkSamplerCaptureDescriptorDataInfoEXT = - result.sType = sType - result.pNext = pNext - result.sampler = sampler + result = VkSamplerCaptureDescriptorDataInfoEXT( + sType: sType, + pNext: pNext, + sampler: sampler, + ) proc newVkAccelerationStructureCaptureDescriptorDataInfoEXT*(sType: VkStructureType, pNext: pointer = nil, accelerationStructure: VkAccelerationStructureKHR, accelerationStructureNV: VkAccelerationStructureNV): VkAccelerationStructureCaptureDescriptorDataInfoEXT = - result.sType = sType - result.pNext = pNext - result.accelerationStructure = accelerationStructure - result.accelerationStructureNV = accelerationStructureNV + result = VkAccelerationStructureCaptureDescriptorDataInfoEXT( + sType: sType, + pNext: pNext, + accelerationStructure: accelerationStructure, + accelerationStructureNV: accelerationStructureNV, + ) proc newVkOpaqueCaptureDescriptorDataCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, opaqueCaptureDescriptorData: pointer = nil): VkOpaqueCaptureDescriptorDataCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.opaqueCaptureDescriptorData = opaqueCaptureDescriptorData + result = VkOpaqueCaptureDescriptorDataCreateInfoEXT( + sType: sType, + pNext: pNext, + opaqueCaptureDescriptorData: opaqueCaptureDescriptorData, + ) proc newVkPhysicalDeviceShaderIntegerDotProductFeatures*(sType: VkStructureType, pNext: pointer = nil, shaderIntegerDotProduct: VkBool32): VkPhysicalDeviceShaderIntegerDotProductFeatures = - result.sType = sType - result.pNext = pNext - result.shaderIntegerDotProduct = shaderIntegerDotProduct + result = VkPhysicalDeviceShaderIntegerDotProductFeatures( + sType: sType, + pNext: pNext, + shaderIntegerDotProduct: shaderIntegerDotProduct, + ) proc newVkPhysicalDeviceShaderIntegerDotProductProperties*(sType: VkStructureType, pNext: pointer = nil, integerDotProduct8BitUnsignedAccelerated: VkBool32, integerDotProduct8BitSignedAccelerated: VkBool32, integerDotProduct8BitMixedSignednessAccelerated: VkBool32, integerDotProduct4x8BitPackedUnsignedAccelerated: VkBool32, integerDotProduct4x8BitPackedSignedAccelerated: VkBool32, integerDotProduct4x8BitPackedMixedSignednessAccelerated: VkBool32, integerDotProduct16BitUnsignedAccelerated: VkBool32, integerDotProduct16BitSignedAccelerated: VkBool32, integerDotProduct16BitMixedSignednessAccelerated: VkBool32, integerDotProduct32BitUnsignedAccelerated: VkBool32, integerDotProduct32BitSignedAccelerated: VkBool32, integerDotProduct32BitMixedSignednessAccelerated: VkBool32, integerDotProduct64BitUnsignedAccelerated: VkBool32, integerDotProduct64BitSignedAccelerated: VkBool32, integerDotProduct64BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating8BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating8BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating16BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating16BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating32BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating32BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating64BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating64BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated: VkBool32): VkPhysicalDeviceShaderIntegerDotProductProperties = - result.sType = sType - result.pNext = pNext - result.integerDotProduct8BitUnsignedAccelerated = integerDotProduct8BitUnsignedAccelerated - result.integerDotProduct8BitSignedAccelerated = integerDotProduct8BitSignedAccelerated - result.integerDotProduct8BitMixedSignednessAccelerated = integerDotProduct8BitMixedSignednessAccelerated - result.integerDotProduct4x8BitPackedUnsignedAccelerated = integerDotProduct4x8BitPackedUnsignedAccelerated - result.integerDotProduct4x8BitPackedSignedAccelerated = integerDotProduct4x8BitPackedSignedAccelerated - result.integerDotProduct4x8BitPackedMixedSignednessAccelerated = integerDotProduct4x8BitPackedMixedSignednessAccelerated - result.integerDotProduct16BitUnsignedAccelerated = integerDotProduct16BitUnsignedAccelerated - result.integerDotProduct16BitSignedAccelerated = integerDotProduct16BitSignedAccelerated - result.integerDotProduct16BitMixedSignednessAccelerated = integerDotProduct16BitMixedSignednessAccelerated - result.integerDotProduct32BitUnsignedAccelerated = integerDotProduct32BitUnsignedAccelerated - result.integerDotProduct32BitSignedAccelerated = integerDotProduct32BitSignedAccelerated - result.integerDotProduct32BitMixedSignednessAccelerated = integerDotProduct32BitMixedSignednessAccelerated - result.integerDotProduct64BitUnsignedAccelerated = integerDotProduct64BitUnsignedAccelerated - result.integerDotProduct64BitSignedAccelerated = integerDotProduct64BitSignedAccelerated - result.integerDotProduct64BitMixedSignednessAccelerated = integerDotProduct64BitMixedSignednessAccelerated - result.integerDotProductAccumulatingSaturating8BitUnsignedAccelerated = integerDotProductAccumulatingSaturating8BitUnsignedAccelerated - result.integerDotProductAccumulatingSaturating8BitSignedAccelerated = integerDotProductAccumulatingSaturating8BitSignedAccelerated - result.integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated = integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated - result.integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated = integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated - result.integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated = integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated - result.integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated = integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated - result.integerDotProductAccumulatingSaturating16BitUnsignedAccelerated = integerDotProductAccumulatingSaturating16BitUnsignedAccelerated - result.integerDotProductAccumulatingSaturating16BitSignedAccelerated = integerDotProductAccumulatingSaturating16BitSignedAccelerated - result.integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated = integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated - result.integerDotProductAccumulatingSaturating32BitUnsignedAccelerated = integerDotProductAccumulatingSaturating32BitUnsignedAccelerated - result.integerDotProductAccumulatingSaturating32BitSignedAccelerated = integerDotProductAccumulatingSaturating32BitSignedAccelerated - result.integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated = integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated - result.integerDotProductAccumulatingSaturating64BitUnsignedAccelerated = integerDotProductAccumulatingSaturating64BitUnsignedAccelerated - result.integerDotProductAccumulatingSaturating64BitSignedAccelerated = integerDotProductAccumulatingSaturating64BitSignedAccelerated - result.integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated = integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated + result = VkPhysicalDeviceShaderIntegerDotProductProperties( + sType: sType, + pNext: pNext, + integerDotProduct8BitUnsignedAccelerated: integerDotProduct8BitUnsignedAccelerated, + integerDotProduct8BitSignedAccelerated: integerDotProduct8BitSignedAccelerated, + integerDotProduct8BitMixedSignednessAccelerated: integerDotProduct8BitMixedSignednessAccelerated, + integerDotProduct4x8BitPackedUnsignedAccelerated: integerDotProduct4x8BitPackedUnsignedAccelerated, + integerDotProduct4x8BitPackedSignedAccelerated: integerDotProduct4x8BitPackedSignedAccelerated, + integerDotProduct4x8BitPackedMixedSignednessAccelerated: integerDotProduct4x8BitPackedMixedSignednessAccelerated, + integerDotProduct16BitUnsignedAccelerated: integerDotProduct16BitUnsignedAccelerated, + integerDotProduct16BitSignedAccelerated: integerDotProduct16BitSignedAccelerated, + integerDotProduct16BitMixedSignednessAccelerated: integerDotProduct16BitMixedSignednessAccelerated, + integerDotProduct32BitUnsignedAccelerated: integerDotProduct32BitUnsignedAccelerated, + integerDotProduct32BitSignedAccelerated: integerDotProduct32BitSignedAccelerated, + integerDotProduct32BitMixedSignednessAccelerated: integerDotProduct32BitMixedSignednessAccelerated, + integerDotProduct64BitUnsignedAccelerated: integerDotProduct64BitUnsignedAccelerated, + integerDotProduct64BitSignedAccelerated: integerDotProduct64BitSignedAccelerated, + integerDotProduct64BitMixedSignednessAccelerated: integerDotProduct64BitMixedSignednessAccelerated, + integerDotProductAccumulatingSaturating8BitUnsignedAccelerated: integerDotProductAccumulatingSaturating8BitUnsignedAccelerated, + integerDotProductAccumulatingSaturating8BitSignedAccelerated: integerDotProductAccumulatingSaturating8BitSignedAccelerated, + integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated: integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated, + integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated: integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated, + integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated: integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated, + integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated: integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated, + integerDotProductAccumulatingSaturating16BitUnsignedAccelerated: integerDotProductAccumulatingSaturating16BitUnsignedAccelerated, + integerDotProductAccumulatingSaturating16BitSignedAccelerated: integerDotProductAccumulatingSaturating16BitSignedAccelerated, + integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated: integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated, + integerDotProductAccumulatingSaturating32BitUnsignedAccelerated: integerDotProductAccumulatingSaturating32BitUnsignedAccelerated, + integerDotProductAccumulatingSaturating32BitSignedAccelerated: integerDotProductAccumulatingSaturating32BitSignedAccelerated, + integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated: integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated, + integerDotProductAccumulatingSaturating64BitUnsignedAccelerated: integerDotProductAccumulatingSaturating64BitUnsignedAccelerated, + integerDotProductAccumulatingSaturating64BitSignedAccelerated: integerDotProductAccumulatingSaturating64BitSignedAccelerated, + integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated: integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated, + ) proc newVkPhysicalDeviceDrmPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, hasPrimary: VkBool32, hasRender: VkBool32, primaryMajor: int64, primaryMinor: int64, renderMajor: int64, renderMinor: int64): VkPhysicalDeviceDrmPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.hasPrimary = hasPrimary - result.hasRender = hasRender - result.primaryMajor = primaryMajor - result.primaryMinor = primaryMinor - result.renderMajor = renderMajor - result.renderMinor = renderMinor + result = VkPhysicalDeviceDrmPropertiesEXT( + sType: sType, + pNext: pNext, + hasPrimary: hasPrimary, + hasRender: hasRender, + primaryMajor: primaryMajor, + primaryMinor: primaryMinor, + renderMajor: renderMajor, + renderMinor: renderMinor, + ) proc newVkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, fragmentShaderBarycentric: VkBool32): VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.fragmentShaderBarycentric = fragmentShaderBarycentric + result = VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR( + sType: sType, + pNext: pNext, + fragmentShaderBarycentric: fragmentShaderBarycentric, + ) proc newVkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, triStripVertexOrderIndependentOfProvokingVertex: VkBool32): VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR = - result.sType = sType - result.pNext = pNext - result.triStripVertexOrderIndependentOfProvokingVertex = triStripVertexOrderIndependentOfProvokingVertex + result = VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR( + sType: sType, + pNext: pNext, + triStripVertexOrderIndependentOfProvokingVertex: triStripVertexOrderIndependentOfProvokingVertex, + ) proc newVkPhysicalDeviceRayTracingMotionBlurFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, rayTracingMotionBlur: VkBool32, rayTracingMotionBlurPipelineTraceRaysIndirect: VkBool32): VkPhysicalDeviceRayTracingMotionBlurFeaturesNV = - result.sType = sType - result.pNext = pNext - result.rayTracingMotionBlur = rayTracingMotionBlur - result.rayTracingMotionBlurPipelineTraceRaysIndirect = rayTracingMotionBlurPipelineTraceRaysIndirect + result = VkPhysicalDeviceRayTracingMotionBlurFeaturesNV( + sType: sType, + pNext: pNext, + rayTracingMotionBlur: rayTracingMotionBlur, + rayTracingMotionBlurPipelineTraceRaysIndirect: rayTracingMotionBlurPipelineTraceRaysIndirect, + ) proc newVkAccelerationStructureGeometryMotionTrianglesDataNV*(sType: VkStructureType, pNext: pointer = nil, vertexData: VkDeviceOrHostAddressConstKHR): VkAccelerationStructureGeometryMotionTrianglesDataNV = - result.sType = sType - result.pNext = pNext - result.vertexData = vertexData + result = VkAccelerationStructureGeometryMotionTrianglesDataNV( + sType: sType, + pNext: pNext, + vertexData: vertexData, + ) proc newVkAccelerationStructureMotionInfoNV*(sType: VkStructureType, pNext: pointer = nil, maxInstances: uint32, flags: VkAccelerationStructureMotionInfoFlagsNV = 0.VkAccelerationStructureMotionInfoFlagsNV): VkAccelerationStructureMotionInfoNV = - result.sType = sType - result.pNext = pNext - result.maxInstances = maxInstances - result.flags = flags + result = VkAccelerationStructureMotionInfoNV( + sType: sType, + pNext: pNext, + maxInstances: maxInstances, + flags: flags, + ) proc newVkSRTDataNV*(sx: float32, a: float32, b: float32, pvx: float32, sy: float32, c: float32, pvy: float32, sz: float32, pvz: float32, qx: float32, qy: float32, qz: float32, qw: float32, tx: float32, ty: float32, tz: float32): VkSRTDataNV = - result.sx = sx - result.a = a - result.b = b - result.pvx = pvx - result.sy = sy - result.c = c - result.pvy = pvy - result.sz = sz - result.pvz = pvz - result.qx = qx - result.qy = qy - result.qz = qz - result.qw = qw - result.tx = tx - result.ty = ty - result.tz = tz + result = VkSRTDataNV( + sx: sx, + a: a, + b: b, + pvx: pvx, + sy: sy, + c: c, + pvy: pvy, + sz: sz, + pvz: pvz, + qx: qx, + qy: qy, + qz: qz, + qw: qw, + tx: tx, + ty: ty, + tz: tz, + ) proc newVkAccelerationStructureSRTMotionInstanceNV*(transformT0: VkSRTDataNV, transformT1: VkSRTDataNV, instanceCustomIndex: uint32, mask: uint32, instanceShaderBindingTableRecordOffset: uint32, flags: VkGeometryInstanceFlagsKHR = 0.VkGeometryInstanceFlagsKHR, accelerationStructureReference: uint64): VkAccelerationStructureSRTMotionInstanceNV = - result.transformT0 = transformT0 - result.transformT1 = transformT1 - result.instanceCustomIndex = instanceCustomIndex - result.mask = mask - result.instanceShaderBindingTableRecordOffset = instanceShaderBindingTableRecordOffset - result.flags = flags - result.accelerationStructureReference = accelerationStructureReference + result = VkAccelerationStructureSRTMotionInstanceNV( + transformT0: transformT0, + transformT1: transformT1, + instanceCustomIndex: instanceCustomIndex, + mask: mask, + instanceShaderBindingTableRecordOffset: instanceShaderBindingTableRecordOffset, + flags: flags, + accelerationStructureReference: accelerationStructureReference, + ) proc newVkAccelerationStructureMatrixMotionInstanceNV*(transformT0: VkTransformMatrixKHR, transformT1: VkTransformMatrixKHR, instanceCustomIndex: uint32, mask: uint32, instanceShaderBindingTableRecordOffset: uint32, flags: VkGeometryInstanceFlagsKHR = 0.VkGeometryInstanceFlagsKHR, accelerationStructureReference: uint64): VkAccelerationStructureMatrixMotionInstanceNV = - result.transformT0 = transformT0 - result.transformT1 = transformT1 - result.instanceCustomIndex = instanceCustomIndex - result.mask = mask - result.instanceShaderBindingTableRecordOffset = instanceShaderBindingTableRecordOffset - result.flags = flags - result.accelerationStructureReference = accelerationStructureReference + result = VkAccelerationStructureMatrixMotionInstanceNV( + transformT0: transformT0, + transformT1: transformT1, + instanceCustomIndex: instanceCustomIndex, + mask: mask, + instanceShaderBindingTableRecordOffset: instanceShaderBindingTableRecordOffset, + flags: flags, + accelerationStructureReference: accelerationStructureReference, + ) proc newVkAccelerationStructureMotionInstanceNV*(`type`: VkAccelerationStructureMotionInstanceTypeNV, flags: VkAccelerationStructureMotionInstanceFlagsNV = 0.VkAccelerationStructureMotionInstanceFlagsNV, data: VkAccelerationStructureMotionInstanceDataNV): VkAccelerationStructureMotionInstanceNV = - result.`type` = `type` - result.flags = flags - result.data = data + result = VkAccelerationStructureMotionInstanceNV( + `type`: `type`, + flags: flags, + data: data, + ) proc newVkMemoryGetRemoteAddressInfoNV*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetRemoteAddressInfoNV = - result.sType = sType - result.pNext = pNext - result.memory = memory - result.handleType = handleType + result = VkMemoryGetRemoteAddressInfoNV( + sType: sType, + pNext: pNext, + memory: memory, + handleType: handleType, + ) proc newVkImportMemoryBufferCollectionFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, collection: VkBufferCollectionFUCHSIA, index: uint32): VkImportMemoryBufferCollectionFUCHSIA = - result.sType = sType - result.pNext = pNext - result.collection = collection - result.index = index + result = VkImportMemoryBufferCollectionFUCHSIA( + sType: sType, + pNext: pNext, + collection: collection, + index: index, + ) proc newVkBufferCollectionImageCreateInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, collection: VkBufferCollectionFUCHSIA, index: uint32): VkBufferCollectionImageCreateInfoFUCHSIA = - result.sType = sType - result.pNext = pNext - result.collection = collection - result.index = index + result = VkBufferCollectionImageCreateInfoFUCHSIA( + sType: sType, + pNext: pNext, + collection: collection, + index: index, + ) proc newVkBufferCollectionBufferCreateInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, collection: VkBufferCollectionFUCHSIA, index: uint32): VkBufferCollectionBufferCreateInfoFUCHSIA = - result.sType = sType - result.pNext = pNext - result.collection = collection - result.index = index + result = VkBufferCollectionBufferCreateInfoFUCHSIA( + sType: sType, + pNext: pNext, + collection: collection, + index: index, + ) proc newVkBufferCollectionCreateInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, collectionToken: zx_handle_t): VkBufferCollectionCreateInfoFUCHSIA = - result.sType = sType - result.pNext = pNext - result.collectionToken = collectionToken + result = VkBufferCollectionCreateInfoFUCHSIA( + sType: sType, + pNext: pNext, + collectionToken: collectionToken, + ) proc newVkBufferCollectionPropertiesFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, memoryTypeBits: uint32, bufferCount: uint32, createInfoIndex: uint32, sysmemPixelFormat: uint64, formatFeatures: VkFormatFeatureFlags, sysmemColorSpaceIndex: VkSysmemColorSpaceFUCHSIA, samplerYcbcrConversionComponents: VkComponentMapping, suggestedYcbcrModel: VkSamplerYcbcrModelConversion, suggestedYcbcrRange: VkSamplerYcbcrRange, suggestedXChromaOffset: VkChromaLocation, suggestedYChromaOffset: VkChromaLocation): VkBufferCollectionPropertiesFUCHSIA = - result.sType = sType - result.pNext = pNext - result.memoryTypeBits = memoryTypeBits - result.bufferCount = bufferCount - result.createInfoIndex = createInfoIndex - result.sysmemPixelFormat = sysmemPixelFormat - result.formatFeatures = formatFeatures - result.sysmemColorSpaceIndex = sysmemColorSpaceIndex - result.samplerYcbcrConversionComponents = samplerYcbcrConversionComponents - result.suggestedYcbcrModel = suggestedYcbcrModel - result.suggestedYcbcrRange = suggestedYcbcrRange - result.suggestedXChromaOffset = suggestedXChromaOffset - result.suggestedYChromaOffset = suggestedYChromaOffset + result = VkBufferCollectionPropertiesFUCHSIA( + sType: sType, + pNext: pNext, + memoryTypeBits: memoryTypeBits, + bufferCount: bufferCount, + createInfoIndex: createInfoIndex, + sysmemPixelFormat: sysmemPixelFormat, + formatFeatures: formatFeatures, + sysmemColorSpaceIndex: sysmemColorSpaceIndex, + samplerYcbcrConversionComponents: samplerYcbcrConversionComponents, + suggestedYcbcrModel: suggestedYcbcrModel, + suggestedYcbcrRange: suggestedYcbcrRange, + suggestedXChromaOffset: suggestedXChromaOffset, + suggestedYChromaOffset: suggestedYChromaOffset, + ) proc newVkBufferConstraintsInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, createInfo: VkBufferCreateInfo, requiredFormatFeatures: VkFormatFeatureFlags, bufferCollectionConstraints: VkBufferCollectionConstraintsInfoFUCHSIA): VkBufferConstraintsInfoFUCHSIA = - result.sType = sType - result.pNext = pNext - result.createInfo = createInfo - result.requiredFormatFeatures = requiredFormatFeatures - result.bufferCollectionConstraints = bufferCollectionConstraints + result = VkBufferConstraintsInfoFUCHSIA( + sType: sType, + pNext: pNext, + createInfo: createInfo, + requiredFormatFeatures: requiredFormatFeatures, + bufferCollectionConstraints: bufferCollectionConstraints, + ) proc newVkSysmemColorSpaceFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, colorSpace: uint32): VkSysmemColorSpaceFUCHSIA = - result.sType = sType - result.pNext = pNext - result.colorSpace = colorSpace + result = VkSysmemColorSpaceFUCHSIA( + sType: sType, + pNext: pNext, + colorSpace: colorSpace, + ) proc newVkImageFormatConstraintsInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, imageCreateInfo: VkImageCreateInfo, requiredFormatFeatures: VkFormatFeatureFlags, flags: VkImageFormatConstraintsFlagsFUCHSIA = 0.VkImageFormatConstraintsFlagsFUCHSIA, sysmemPixelFormat: uint64, colorSpaceCount: uint32, pColorSpaces: ptr VkSysmemColorSpaceFUCHSIA): VkImageFormatConstraintsInfoFUCHSIA = - result.sType = sType - result.pNext = pNext - result.imageCreateInfo = imageCreateInfo - result.requiredFormatFeatures = requiredFormatFeatures - result.flags = flags - result.sysmemPixelFormat = sysmemPixelFormat - result.colorSpaceCount = colorSpaceCount - result.pColorSpaces = pColorSpaces + result = VkImageFormatConstraintsInfoFUCHSIA( + sType: sType, + pNext: pNext, + imageCreateInfo: imageCreateInfo, + requiredFormatFeatures: requiredFormatFeatures, + flags: flags, + sysmemPixelFormat: sysmemPixelFormat, + colorSpaceCount: colorSpaceCount, + pColorSpaces: pColorSpaces, + ) proc newVkImageConstraintsInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, formatConstraintsCount: uint32, pFormatConstraints: ptr VkImageFormatConstraintsInfoFUCHSIA, bufferCollectionConstraints: VkBufferCollectionConstraintsInfoFUCHSIA, flags: VkImageConstraintsInfoFlagsFUCHSIA = 0.VkImageConstraintsInfoFlagsFUCHSIA): VkImageConstraintsInfoFUCHSIA = - result.sType = sType - result.pNext = pNext - result.formatConstraintsCount = formatConstraintsCount - result.pFormatConstraints = pFormatConstraints - result.bufferCollectionConstraints = bufferCollectionConstraints - result.flags = flags + result = VkImageConstraintsInfoFUCHSIA( + sType: sType, + pNext: pNext, + formatConstraintsCount: formatConstraintsCount, + pFormatConstraints: pFormatConstraints, + bufferCollectionConstraints: bufferCollectionConstraints, + flags: flags, + ) proc newVkBufferCollectionConstraintsInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, minBufferCount: uint32, maxBufferCount: uint32, minBufferCountForCamping: uint32, minBufferCountForDedicatedSlack: uint32, minBufferCountForSharedSlack: uint32): VkBufferCollectionConstraintsInfoFUCHSIA = - result.sType = sType - result.pNext = pNext - result.minBufferCount = minBufferCount - result.maxBufferCount = maxBufferCount - result.minBufferCountForCamping = minBufferCountForCamping - result.minBufferCountForDedicatedSlack = minBufferCountForDedicatedSlack - result.minBufferCountForSharedSlack = minBufferCountForSharedSlack + result = VkBufferCollectionConstraintsInfoFUCHSIA( + sType: sType, + pNext: pNext, + minBufferCount: minBufferCount, + maxBufferCount: maxBufferCount, + minBufferCountForCamping: minBufferCountForCamping, + minBufferCountForDedicatedSlack: minBufferCountForDedicatedSlack, + minBufferCountForSharedSlack: minBufferCountForSharedSlack, + ) proc newVkCudaModuleCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, dataSize: uint, pData: pointer = nil): VkCudaModuleCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.dataSize = dataSize - result.pData = pData + result = VkCudaModuleCreateInfoNV( + sType: sType, + pNext: pNext, + dataSize: dataSize, + pData: pData, + ) proc newVkCudaFunctionCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, module: VkCudaModuleNV, pName: cstring): VkCudaFunctionCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.module = module - result.pName = pName + result = VkCudaFunctionCreateInfoNV( + sType: sType, + pNext: pNext, + module: module, + pName: pName, + ) proc newVkCudaLaunchInfoNV*(sType: VkStructureType, pNext: pointer = nil, function: VkCudaFunctionNV, gridDimX: uint32, gridDimY: uint32, gridDimZ: uint32, blockDimX: uint32, blockDimY: uint32, blockDimZ: uint32, sharedMemBytes: uint32, paramCount: uint, pParams: ptr pointer, extraCount: uint, pExtras: ptr pointer): VkCudaLaunchInfoNV = - result.sType = sType - result.pNext = pNext - result.function = function - result.gridDimX = gridDimX - result.gridDimY = gridDimY - result.gridDimZ = gridDimZ - result.blockDimX = blockDimX - result.blockDimY = blockDimY - result.blockDimZ = blockDimZ - result.sharedMemBytes = sharedMemBytes - result.paramCount = paramCount - result.pParams = pParams - result.extraCount = extraCount - result.pExtras = pExtras + result = VkCudaLaunchInfoNV( + sType: sType, + pNext: pNext, + function: function, + gridDimX: gridDimX, + gridDimY: gridDimY, + gridDimZ: gridDimZ, + blockDimX: blockDimX, + blockDimY: blockDimY, + blockDimZ: blockDimZ, + sharedMemBytes: sharedMemBytes, + paramCount: paramCount, + pParams: pParams, + extraCount: extraCount, + pExtras: pExtras, + ) proc newVkPhysicalDeviceRGBA10X6FormatsFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, formatRgba10x6WithoutYCbCrSampler: VkBool32): VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.formatRgba10x6WithoutYCbCrSampler = formatRgba10x6WithoutYCbCrSampler + result = VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT( + sType: sType, + pNext: pNext, + formatRgba10x6WithoutYCbCrSampler: formatRgba10x6WithoutYCbCrSampler, + ) proc newVkFormatProperties3*(sType: VkStructureType, pNext: pointer = nil, linearTilingFeatures: VkFormatFeatureFlags2, optimalTilingFeatures: VkFormatFeatureFlags2, bufferFeatures: VkFormatFeatureFlags2): VkFormatProperties3 = - result.sType = sType - result.pNext = pNext - result.linearTilingFeatures = linearTilingFeatures - result.optimalTilingFeatures = optimalTilingFeatures - result.bufferFeatures = bufferFeatures + result = VkFormatProperties3( + sType: sType, + pNext: pNext, + linearTilingFeatures: linearTilingFeatures, + optimalTilingFeatures: optimalTilingFeatures, + bufferFeatures: bufferFeatures, + ) proc newVkDrmFormatModifierPropertiesList2EXT*(sType: VkStructureType, pNext: pointer = nil, drmFormatModifierCount: uint32, pDrmFormatModifierProperties: ptr VkDrmFormatModifierProperties2EXT): VkDrmFormatModifierPropertiesList2EXT = - result.sType = sType - result.pNext = pNext - result.drmFormatModifierCount = drmFormatModifierCount - result.pDrmFormatModifierProperties = pDrmFormatModifierProperties + result = VkDrmFormatModifierPropertiesList2EXT( + sType: sType, + pNext: pNext, + drmFormatModifierCount: drmFormatModifierCount, + pDrmFormatModifierProperties: pDrmFormatModifierProperties, + ) proc newVkDrmFormatModifierProperties2EXT*(drmFormatModifier: uint64, drmFormatModifierPlaneCount: uint32, drmFormatModifierTilingFeatures: VkFormatFeatureFlags2): VkDrmFormatModifierProperties2EXT = - result.drmFormatModifier = drmFormatModifier - result.drmFormatModifierPlaneCount = drmFormatModifierPlaneCount - result.drmFormatModifierTilingFeatures = drmFormatModifierTilingFeatures + result = VkDrmFormatModifierProperties2EXT( + drmFormatModifier: drmFormatModifier, + drmFormatModifierPlaneCount: drmFormatModifierPlaneCount, + drmFormatModifierTilingFeatures: drmFormatModifierTilingFeatures, + ) proc newVkAndroidHardwareBufferFormatProperties2ANDROID*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat, externalFormat: uint64, formatFeatures: VkFormatFeatureFlags2, samplerYcbcrConversionComponents: VkComponentMapping, suggestedYcbcrModel: VkSamplerYcbcrModelConversion, suggestedYcbcrRange: VkSamplerYcbcrRange, suggestedXChromaOffset: VkChromaLocation, suggestedYChromaOffset: VkChromaLocation): VkAndroidHardwareBufferFormatProperties2ANDROID = - result.sType = sType - result.pNext = pNext - result.format = format - result.externalFormat = externalFormat - result.formatFeatures = formatFeatures - result.samplerYcbcrConversionComponents = samplerYcbcrConversionComponents - result.suggestedYcbcrModel = suggestedYcbcrModel - result.suggestedYcbcrRange = suggestedYcbcrRange - result.suggestedXChromaOffset = suggestedXChromaOffset - result.suggestedYChromaOffset = suggestedYChromaOffset + result = VkAndroidHardwareBufferFormatProperties2ANDROID( + sType: sType, + pNext: pNext, + format: format, + externalFormat: externalFormat, + formatFeatures: formatFeatures, + samplerYcbcrConversionComponents: samplerYcbcrConversionComponents, + suggestedYcbcrModel: suggestedYcbcrModel, + suggestedYcbcrRange: suggestedYcbcrRange, + suggestedXChromaOffset: suggestedXChromaOffset, + suggestedYChromaOffset: suggestedYChromaOffset, + ) proc newVkPipelineRenderingCreateInfo*(sType: VkStructureType, pNext: pointer = nil, viewMask: uint32, colorAttachmentCount: uint32, pColorAttachmentFormats: ptr VkFormat, depthAttachmentFormat: VkFormat, stencilAttachmentFormat: VkFormat): VkPipelineRenderingCreateInfo = - result.sType = sType - result.pNext = pNext - result.viewMask = viewMask - result.colorAttachmentCount = colorAttachmentCount - result.pColorAttachmentFormats = pColorAttachmentFormats - result.depthAttachmentFormat = depthAttachmentFormat - result.stencilAttachmentFormat = stencilAttachmentFormat + result = VkPipelineRenderingCreateInfo( + sType: sType, + pNext: pNext, + viewMask: viewMask, + colorAttachmentCount: colorAttachmentCount, + pColorAttachmentFormats: pColorAttachmentFormats, + depthAttachmentFormat: depthAttachmentFormat, + stencilAttachmentFormat: stencilAttachmentFormat, + ) proc newVkRenderingInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkRenderingFlags = 0.VkRenderingFlags, renderArea: VkRect2D, layerCount: uint32, viewMask: uint32, colorAttachmentCount: uint32, pColorAttachments: ptr VkRenderingAttachmentInfo, pDepthAttachment: ptr VkRenderingAttachmentInfo, pStencilAttachment: ptr VkRenderingAttachmentInfo): VkRenderingInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.renderArea = renderArea - result.layerCount = layerCount - result.viewMask = viewMask - result.colorAttachmentCount = colorAttachmentCount - result.pColorAttachments = pColorAttachments - result.pDepthAttachment = pDepthAttachment - result.pStencilAttachment = pStencilAttachment + result = VkRenderingInfo( + sType: sType, + pNext: pNext, + flags: flags, + renderArea: renderArea, + layerCount: layerCount, + viewMask: viewMask, + colorAttachmentCount: colorAttachmentCount, + pColorAttachments: pColorAttachments, + pDepthAttachment: pDepthAttachment, + pStencilAttachment: pStencilAttachment, + ) proc newVkRenderingAttachmentInfo*(sType: VkStructureType, pNext: pointer = nil, imageView: VkImageView, imageLayout: VkImageLayout, resolveMode: VkResolveModeFlagBits, resolveImageView: VkImageView, resolveImageLayout: VkImageLayout, loadOp: VkAttachmentLoadOp, storeOp: VkAttachmentStoreOp, clearValue: VkClearValue): VkRenderingAttachmentInfo = - result.sType = sType - result.pNext = pNext - result.imageView = imageView - result.imageLayout = imageLayout - result.resolveMode = resolveMode - result.resolveImageView = resolveImageView - result.resolveImageLayout = resolveImageLayout - result.loadOp = loadOp - result.storeOp = storeOp - result.clearValue = clearValue + result = VkRenderingAttachmentInfo( + sType: sType, + pNext: pNext, + imageView: imageView, + imageLayout: imageLayout, + resolveMode: resolveMode, + resolveImageView: resolveImageView, + resolveImageLayout: resolveImageLayout, + loadOp: loadOp, + storeOp: storeOp, + clearValue: clearValue, + ) proc newVkRenderingFragmentShadingRateAttachmentInfoKHR*(sType: VkStructureType, pNext: pointer = nil, imageView: VkImageView, imageLayout: VkImageLayout, shadingRateAttachmentTexelSize: VkExtent2D): VkRenderingFragmentShadingRateAttachmentInfoKHR = - result.sType = sType - result.pNext = pNext - result.imageView = imageView - result.imageLayout = imageLayout - result.shadingRateAttachmentTexelSize = shadingRateAttachmentTexelSize + result = VkRenderingFragmentShadingRateAttachmentInfoKHR( + sType: sType, + pNext: pNext, + imageView: imageView, + imageLayout: imageLayout, + shadingRateAttachmentTexelSize: shadingRateAttachmentTexelSize, + ) proc newVkRenderingFragmentDensityMapAttachmentInfoEXT*(sType: VkStructureType, pNext: pointer = nil, imageView: VkImageView, imageLayout: VkImageLayout): VkRenderingFragmentDensityMapAttachmentInfoEXT = - result.sType = sType - result.pNext = pNext - result.imageView = imageView - result.imageLayout = imageLayout + result = VkRenderingFragmentDensityMapAttachmentInfoEXT( + sType: sType, + pNext: pNext, + imageView: imageView, + imageLayout: imageLayout, + ) proc newVkPhysicalDeviceDynamicRenderingFeatures*(sType: VkStructureType, pNext: pointer = nil, dynamicRendering: VkBool32): VkPhysicalDeviceDynamicRenderingFeatures = - result.sType = sType - result.pNext = pNext - result.dynamicRendering = dynamicRendering + result = VkPhysicalDeviceDynamicRenderingFeatures( + sType: sType, + pNext: pNext, + dynamicRendering: dynamicRendering, + ) proc newVkCommandBufferInheritanceRenderingInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkRenderingFlags = 0.VkRenderingFlags, viewMask: uint32, colorAttachmentCount: uint32, pColorAttachmentFormats: ptr VkFormat, depthAttachmentFormat: VkFormat, stencilAttachmentFormat: VkFormat, rasterizationSamples: VkSampleCountFlagBits): VkCommandBufferInheritanceRenderingInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.viewMask = viewMask - result.colorAttachmentCount = colorAttachmentCount - result.pColorAttachmentFormats = pColorAttachmentFormats - result.depthAttachmentFormat = depthAttachmentFormat - result.stencilAttachmentFormat = stencilAttachmentFormat - result.rasterizationSamples = rasterizationSamples + result = VkCommandBufferInheritanceRenderingInfo( + sType: sType, + pNext: pNext, + flags: flags, + viewMask: viewMask, + colorAttachmentCount: colorAttachmentCount, + pColorAttachmentFormats: pColorAttachmentFormats, + depthAttachmentFormat: depthAttachmentFormat, + stencilAttachmentFormat: stencilAttachmentFormat, + rasterizationSamples: rasterizationSamples, + ) proc newVkAttachmentSampleCountInfoAMD*(sType: VkStructureType, pNext: pointer = nil, colorAttachmentCount: uint32, pColorAttachmentSamples: ptr VkSampleCountFlagBits, depthStencilAttachmentSamples: VkSampleCountFlagBits): VkAttachmentSampleCountInfoAMD = - result.sType = sType - result.pNext = pNext - result.colorAttachmentCount = colorAttachmentCount - result.pColorAttachmentSamples = pColorAttachmentSamples - result.depthStencilAttachmentSamples = depthStencilAttachmentSamples + result = VkAttachmentSampleCountInfoAMD( + sType: sType, + pNext: pNext, + colorAttachmentCount: colorAttachmentCount, + pColorAttachmentSamples: pColorAttachmentSamples, + depthStencilAttachmentSamples: depthStencilAttachmentSamples, + ) proc newVkMultiviewPerViewAttributesInfoNVX*(sType: VkStructureType, pNext: pointer = nil, perViewAttributes: VkBool32, perViewAttributesPositionXOnly: VkBool32): VkMultiviewPerViewAttributesInfoNVX = - result.sType = sType - result.pNext = pNext - result.perViewAttributes = perViewAttributes - result.perViewAttributesPositionXOnly = perViewAttributesPositionXOnly + result = VkMultiviewPerViewAttributesInfoNVX( + sType: sType, + pNext: pNext, + perViewAttributes: perViewAttributes, + perViewAttributesPositionXOnly: perViewAttributesPositionXOnly, + ) proc newVkPhysicalDeviceImageViewMinLodFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, minLod: VkBool32): VkPhysicalDeviceImageViewMinLodFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.minLod = minLod + result = VkPhysicalDeviceImageViewMinLodFeaturesEXT( + sType: sType, + pNext: pNext, + minLod: minLod, + ) proc newVkImageViewMinLodCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, minLod: float32): VkImageViewMinLodCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.minLod = minLod + result = VkImageViewMinLodCreateInfoEXT( + sType: sType, + pNext: pNext, + minLod: minLod, + ) proc newVkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, rasterizationOrderColorAttachmentAccess: VkBool32, rasterizationOrderDepthAttachmentAccess: VkBool32, rasterizationOrderStencilAttachmentAccess: VkBool32): VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.rasterizationOrderColorAttachmentAccess = rasterizationOrderColorAttachmentAccess - result.rasterizationOrderDepthAttachmentAccess = rasterizationOrderDepthAttachmentAccess - result.rasterizationOrderStencilAttachmentAccess = rasterizationOrderStencilAttachmentAccess + result = VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT( + sType: sType, + pNext: pNext, + rasterizationOrderColorAttachmentAccess: rasterizationOrderColorAttachmentAccess, + rasterizationOrderDepthAttachmentAccess: rasterizationOrderDepthAttachmentAccess, + rasterizationOrderStencilAttachmentAccess: rasterizationOrderStencilAttachmentAccess, + ) proc newVkPhysicalDeviceLinearColorAttachmentFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, linearColorAttachment: VkBool32): VkPhysicalDeviceLinearColorAttachmentFeaturesNV = - result.sType = sType - result.pNext = pNext - result.linearColorAttachment = linearColorAttachment + result = VkPhysicalDeviceLinearColorAttachmentFeaturesNV( + sType: sType, + pNext: pNext, + linearColorAttachment: linearColorAttachment, + ) proc newVkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, graphicsPipelineLibrary: VkBool32): VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.graphicsPipelineLibrary = graphicsPipelineLibrary + result = VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT( + sType: sType, + pNext: pNext, + graphicsPipelineLibrary: graphicsPipelineLibrary, + ) proc newVkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, graphicsPipelineLibraryFastLinking: VkBool32, graphicsPipelineLibraryIndependentInterpolationDecoration: VkBool32): VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.graphicsPipelineLibraryFastLinking = graphicsPipelineLibraryFastLinking - result.graphicsPipelineLibraryIndependentInterpolationDecoration = graphicsPipelineLibraryIndependentInterpolationDecoration + result = VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT( + sType: sType, + pNext: pNext, + graphicsPipelineLibraryFastLinking: graphicsPipelineLibraryFastLinking, + graphicsPipelineLibraryIndependentInterpolationDecoration: graphicsPipelineLibraryIndependentInterpolationDecoration, + ) proc newVkGraphicsPipelineLibraryCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkGraphicsPipelineLibraryFlagsEXT = 0.VkGraphicsPipelineLibraryFlagsEXT): VkGraphicsPipelineLibraryCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags + result = VkGraphicsPipelineLibraryCreateInfoEXT( + sType: sType, + pNext: pNext, + flags: flags, + ) proc newVkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE*(sType: VkStructureType, pNext: pointer = nil, descriptorSetHostMapping: VkBool32): VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE = - result.sType = sType - result.pNext = pNext - result.descriptorSetHostMapping = descriptorSetHostMapping + result = VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE( + sType: sType, + pNext: pNext, + descriptorSetHostMapping: descriptorSetHostMapping, + ) proc newVkDescriptorSetBindingReferenceVALVE*(sType: VkStructureType, pNext: pointer = nil, descriptorSetLayout: VkDescriptorSetLayout, binding: uint32): VkDescriptorSetBindingReferenceVALVE = - result.sType = sType - result.pNext = pNext - result.descriptorSetLayout = descriptorSetLayout - result.binding = binding + result = VkDescriptorSetBindingReferenceVALVE( + sType: sType, + pNext: pNext, + descriptorSetLayout: descriptorSetLayout, + binding: binding, + ) proc newVkDescriptorSetLayoutHostMappingInfoVALVE*(sType: VkStructureType, pNext: pointer = nil, descriptorOffset: uint, descriptorSize: uint32): VkDescriptorSetLayoutHostMappingInfoVALVE = - result.sType = sType - result.pNext = pNext - result.descriptorOffset = descriptorOffset - result.descriptorSize = descriptorSize + result = VkDescriptorSetLayoutHostMappingInfoVALVE( + sType: sType, + pNext: pNext, + descriptorOffset: descriptorOffset, + descriptorSize: descriptorSize, + ) proc newVkPhysicalDeviceNestedCommandBufferFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, nestedCommandBuffer: VkBool32, nestedCommandBufferRendering: VkBool32, nestedCommandBufferSimultaneousUse: VkBool32): VkPhysicalDeviceNestedCommandBufferFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.nestedCommandBuffer = nestedCommandBuffer - result.nestedCommandBufferRendering = nestedCommandBufferRendering - result.nestedCommandBufferSimultaneousUse = nestedCommandBufferSimultaneousUse + result = VkPhysicalDeviceNestedCommandBufferFeaturesEXT( + sType: sType, + pNext: pNext, + nestedCommandBuffer: nestedCommandBuffer, + nestedCommandBufferRendering: nestedCommandBufferRendering, + nestedCommandBufferSimultaneousUse: nestedCommandBufferSimultaneousUse, + ) proc newVkPhysicalDeviceNestedCommandBufferPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxCommandBufferNestingLevel: uint32): VkPhysicalDeviceNestedCommandBufferPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.maxCommandBufferNestingLevel = maxCommandBufferNestingLevel + result = VkPhysicalDeviceNestedCommandBufferPropertiesEXT( + sType: sType, + pNext: pNext, + maxCommandBufferNestingLevel: maxCommandBufferNestingLevel, + ) proc newVkPhysicalDeviceShaderModuleIdentifierFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderModuleIdentifier: VkBool32): VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.shaderModuleIdentifier = shaderModuleIdentifier + result = VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT( + sType: sType, + pNext: pNext, + shaderModuleIdentifier: shaderModuleIdentifier, + ) proc newVkPhysicalDeviceShaderModuleIdentifierPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderModuleIdentifierAlgorithmUUID: array[VK_UUID_SIZE, uint8]): VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.shaderModuleIdentifierAlgorithmUUID = shaderModuleIdentifierAlgorithmUUID + result = VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT( + sType: sType, + pNext: pNext, + shaderModuleIdentifierAlgorithmUUID: shaderModuleIdentifierAlgorithmUUID, + ) proc newVkPipelineShaderStageModuleIdentifierCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, identifierSize: uint32, pIdentifier: ptr uint8): VkPipelineShaderStageModuleIdentifierCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.identifierSize = identifierSize - result.pIdentifier = pIdentifier + result = VkPipelineShaderStageModuleIdentifierCreateInfoEXT( + sType: sType, + pNext: pNext, + identifierSize: identifierSize, + pIdentifier: pIdentifier, + ) proc newVkShaderModuleIdentifierEXT*(sType: VkStructureType, pNext: pointer = nil, identifierSize: uint32, identifier: array[VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT, uint8]): VkShaderModuleIdentifierEXT = - result.sType = sType - result.pNext = pNext - result.identifierSize = identifierSize - result.identifier = identifier + result = VkShaderModuleIdentifierEXT( + sType: sType, + pNext: pNext, + identifierSize: identifierSize, + identifier: identifier, + ) proc newVkImageCompressionControlEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkImageCompressionFlagsEXT = 0.VkImageCompressionFlagsEXT, compressionControlPlaneCount: uint32, pFixedRateFlags: ptr VkImageCompressionFixedRateFlagsEXT): VkImageCompressionControlEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.compressionControlPlaneCount = compressionControlPlaneCount - result.pFixedRateFlags = pFixedRateFlags + result = VkImageCompressionControlEXT( + sType: sType, + pNext: pNext, + flags: flags, + compressionControlPlaneCount: compressionControlPlaneCount, + pFixedRateFlags: pFixedRateFlags, + ) proc newVkPhysicalDeviceImageCompressionControlFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, imageCompressionControl: VkBool32): VkPhysicalDeviceImageCompressionControlFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.imageCompressionControl = imageCompressionControl + result = VkPhysicalDeviceImageCompressionControlFeaturesEXT( + sType: sType, + pNext: pNext, + imageCompressionControl: imageCompressionControl, + ) proc newVkImageCompressionPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, imageCompressionFlags: VkImageCompressionFlagsEXT, imageCompressionFixedRateFlags: VkImageCompressionFixedRateFlagsEXT): VkImageCompressionPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.imageCompressionFlags = imageCompressionFlags - result.imageCompressionFixedRateFlags = imageCompressionFixedRateFlags + result = VkImageCompressionPropertiesEXT( + sType: sType, + pNext: pNext, + imageCompressionFlags: imageCompressionFlags, + imageCompressionFixedRateFlags: imageCompressionFixedRateFlags, + ) proc newVkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, imageCompressionControlSwapchain: VkBool32): VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.imageCompressionControlSwapchain = imageCompressionControlSwapchain + result = VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT( + sType: sType, + pNext: pNext, + imageCompressionControlSwapchain: imageCompressionControlSwapchain, + ) proc newVkImageSubresource2KHR*(sType: VkStructureType, pNext: pointer = nil, imageSubresource: VkImageSubresource): VkImageSubresource2KHR = - result.sType = sType - result.pNext = pNext - result.imageSubresource = imageSubresource + result = VkImageSubresource2KHR( + sType: sType, + pNext: pNext, + imageSubresource: imageSubresource, + ) proc newVkSubresourceLayout2KHR*(sType: VkStructureType, pNext: pointer = nil, subresourceLayout: VkSubresourceLayout): VkSubresourceLayout2KHR = - result.sType = sType - result.pNext = pNext - result.subresourceLayout = subresourceLayout + result = VkSubresourceLayout2KHR( + sType: sType, + pNext: pNext, + subresourceLayout: subresourceLayout, + ) proc newVkRenderPassCreationControlEXT*(sType: VkStructureType, pNext: pointer = nil, disallowMerging: VkBool32): VkRenderPassCreationControlEXT = - result.sType = sType - result.pNext = pNext - result.disallowMerging = disallowMerging + result = VkRenderPassCreationControlEXT( + sType: sType, + pNext: pNext, + disallowMerging: disallowMerging, + ) proc newVkRenderPassCreationFeedbackInfoEXT*(postMergeSubpassCount: uint32): VkRenderPassCreationFeedbackInfoEXT = - result.postMergeSubpassCount = postMergeSubpassCount + result = VkRenderPassCreationFeedbackInfoEXT( + postMergeSubpassCount: postMergeSubpassCount, + ) proc newVkRenderPassCreationFeedbackCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, pRenderPassFeedback: ptr VkRenderPassCreationFeedbackInfoEXT): VkRenderPassCreationFeedbackCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.pRenderPassFeedback = pRenderPassFeedback + result = VkRenderPassCreationFeedbackCreateInfoEXT( + sType: sType, + pNext: pNext, + pRenderPassFeedback: pRenderPassFeedback, + ) proc newVkRenderPassSubpassFeedbackInfoEXT*(subpassMergeStatus: VkSubpassMergeStatusEXT, description: array[VK_MAX_DESCRIPTION_SIZE, char], postMergeIndex: uint32): VkRenderPassSubpassFeedbackInfoEXT = - result.subpassMergeStatus = subpassMergeStatus - result.description = description - result.postMergeIndex = postMergeIndex + result = VkRenderPassSubpassFeedbackInfoEXT( + subpassMergeStatus: subpassMergeStatus, + description: description, + postMergeIndex: postMergeIndex, + ) proc newVkRenderPassSubpassFeedbackCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, pSubpassFeedback: ptr VkRenderPassSubpassFeedbackInfoEXT): VkRenderPassSubpassFeedbackCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.pSubpassFeedback = pSubpassFeedback + result = VkRenderPassSubpassFeedbackCreateInfoEXT( + sType: sType, + pNext: pNext, + pSubpassFeedback: pSubpassFeedback, + ) proc newVkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, subpassMergeFeedback: VkBool32): VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.subpassMergeFeedback = subpassMergeFeedback + result = VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT( + sType: sType, + pNext: pNext, + subpassMergeFeedback: subpassMergeFeedback, + ) proc newVkMicromapBuildInfoEXT*(sType: VkStructureType, pNext: pointer = nil, `type`: VkMicromapTypeEXT, flags: VkBuildMicromapFlagsEXT = 0.VkBuildMicromapFlagsEXT, mode: VkBuildMicromapModeEXT, dstMicromap: VkMicromapEXT, usageCountsCount: uint32, pUsageCounts: ptr VkMicromapUsageEXT, ppUsageCounts: ptr ptr VkMicromapUsageEXT, data: VkDeviceOrHostAddressConstKHR, scratchData: VkDeviceOrHostAddressKHR, triangleArray: VkDeviceOrHostAddressConstKHR, triangleArrayStride: VkDeviceSize): VkMicromapBuildInfoEXT = - result.sType = sType - result.pNext = pNext - result.`type` = `type` - result.flags = flags - result.mode = mode - result.dstMicromap = dstMicromap - result.usageCountsCount = usageCountsCount - result.pUsageCounts = pUsageCounts - result.ppUsageCounts = ppUsageCounts - result.data = data - result.scratchData = scratchData - result.triangleArray = triangleArray - result.triangleArrayStride = triangleArrayStride + result = VkMicromapBuildInfoEXT( + sType: sType, + pNext: pNext, + `type`: `type`, + flags: flags, + mode: mode, + dstMicromap: dstMicromap, + usageCountsCount: usageCountsCount, + pUsageCounts: pUsageCounts, + ppUsageCounts: ppUsageCounts, + data: data, + scratchData: scratchData, + triangleArray: triangleArray, + triangleArrayStride: triangleArrayStride, + ) proc newVkMicromapCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, createFlags: VkMicromapCreateFlagsEXT, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize, `type`: VkMicromapTypeEXT, deviceAddress: VkDeviceAddress): VkMicromapCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.createFlags = createFlags - result.buffer = buffer - result.offset = offset - result.size = size - result.`type` = `type` - result.deviceAddress = deviceAddress + result = VkMicromapCreateInfoEXT( + sType: sType, + pNext: pNext, + createFlags: createFlags, + buffer: buffer, + offset: offset, + size: size, + `type`: `type`, + deviceAddress: deviceAddress, + ) proc newVkMicromapVersionInfoEXT*(sType: VkStructureType, pNext: pointer = nil, pVersionData: ptr uint8): VkMicromapVersionInfoEXT = - result.sType = sType - result.pNext = pNext - result.pVersionData = pVersionData + result = VkMicromapVersionInfoEXT( + sType: sType, + pNext: pNext, + pVersionData: pVersionData, + ) proc newVkCopyMicromapInfoEXT*(sType: VkStructureType, pNext: pointer = nil, src: VkMicromapEXT, dst: VkMicromapEXT, mode: VkCopyMicromapModeEXT): VkCopyMicromapInfoEXT = - result.sType = sType - result.pNext = pNext - result.src = src - result.dst = dst - result.mode = mode + result = VkCopyMicromapInfoEXT( + sType: sType, + pNext: pNext, + src: src, + dst: dst, + mode: mode, + ) proc newVkCopyMicromapToMemoryInfoEXT*(sType: VkStructureType, pNext: pointer = nil, src: VkMicromapEXT, dst: VkDeviceOrHostAddressKHR, mode: VkCopyMicromapModeEXT): VkCopyMicromapToMemoryInfoEXT = - result.sType = sType - result.pNext = pNext - result.src = src - result.dst = dst - result.mode = mode + result = VkCopyMicromapToMemoryInfoEXT( + sType: sType, + pNext: pNext, + src: src, + dst: dst, + mode: mode, + ) proc newVkCopyMemoryToMicromapInfoEXT*(sType: VkStructureType, pNext: pointer = nil, src: VkDeviceOrHostAddressConstKHR, dst: VkMicromapEXT, mode: VkCopyMicromapModeEXT): VkCopyMemoryToMicromapInfoEXT = - result.sType = sType - result.pNext = pNext - result.src = src - result.dst = dst - result.mode = mode + result = VkCopyMemoryToMicromapInfoEXT( + sType: sType, + pNext: pNext, + src: src, + dst: dst, + mode: mode, + ) proc newVkMicromapBuildSizesInfoEXT*(sType: VkStructureType, pNext: pointer = nil, micromapSize: VkDeviceSize, buildScratchSize: VkDeviceSize, discardable: VkBool32): VkMicromapBuildSizesInfoEXT = - result.sType = sType - result.pNext = pNext - result.micromapSize = micromapSize - result.buildScratchSize = buildScratchSize - result.discardable = discardable + result = VkMicromapBuildSizesInfoEXT( + sType: sType, + pNext: pNext, + micromapSize: micromapSize, + buildScratchSize: buildScratchSize, + discardable: discardable, + ) proc newVkMicromapUsageEXT*(count: uint32, subdivisionLevel: uint32, format: uint32): VkMicromapUsageEXT = - result.count = count - result.subdivisionLevel = subdivisionLevel - result.format = format + result = VkMicromapUsageEXT( + count: count, + subdivisionLevel: subdivisionLevel, + format: format, + ) proc newVkMicromapTriangleEXT*(dataOffset: uint32, subdivisionLevel: uint16, format: uint16): VkMicromapTriangleEXT = - result.dataOffset = dataOffset - result.subdivisionLevel = subdivisionLevel - result.format = format + result = VkMicromapTriangleEXT( + dataOffset: dataOffset, + subdivisionLevel: subdivisionLevel, + format: format, + ) proc newVkPhysicalDeviceOpacityMicromapFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, micromap: VkBool32, micromapCaptureReplay: VkBool32, micromapHostCommands: VkBool32): VkPhysicalDeviceOpacityMicromapFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.micromap = micromap - result.micromapCaptureReplay = micromapCaptureReplay - result.micromapHostCommands = micromapHostCommands + result = VkPhysicalDeviceOpacityMicromapFeaturesEXT( + sType: sType, + pNext: pNext, + micromap: micromap, + micromapCaptureReplay: micromapCaptureReplay, + micromapHostCommands: micromapHostCommands, + ) proc newVkPhysicalDeviceOpacityMicromapPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxOpacity2StateSubdivisionLevel: uint32, maxOpacity4StateSubdivisionLevel: uint32): VkPhysicalDeviceOpacityMicromapPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.maxOpacity2StateSubdivisionLevel = maxOpacity2StateSubdivisionLevel - result.maxOpacity4StateSubdivisionLevel = maxOpacity4StateSubdivisionLevel + result = VkPhysicalDeviceOpacityMicromapPropertiesEXT( + sType: sType, + pNext: pNext, + maxOpacity2StateSubdivisionLevel: maxOpacity2StateSubdivisionLevel, + maxOpacity4StateSubdivisionLevel: maxOpacity4StateSubdivisionLevel, + ) proc newVkAccelerationStructureTrianglesOpacityMicromapEXT*(sType: VkStructureType, pNext: pointer = nil, indexType: VkIndexType, indexBuffer: VkDeviceOrHostAddressConstKHR, indexStride: VkDeviceSize, baseTriangle: uint32, usageCountsCount: uint32, pUsageCounts: ptr VkMicromapUsageEXT, ppUsageCounts: ptr ptr VkMicromapUsageEXT, micromap: VkMicromapEXT): VkAccelerationStructureTrianglesOpacityMicromapEXT = - result.sType = sType - result.pNext = pNext - result.indexType = indexType - result.indexBuffer = indexBuffer - result.indexStride = indexStride - result.baseTriangle = baseTriangle - result.usageCountsCount = usageCountsCount - result.pUsageCounts = pUsageCounts - result.ppUsageCounts = ppUsageCounts - result.micromap = micromap + result = VkAccelerationStructureTrianglesOpacityMicromapEXT( + sType: sType, + pNext: pNext, + indexType: indexType, + indexBuffer: indexBuffer, + indexStride: indexStride, + baseTriangle: baseTriangle, + usageCountsCount: usageCountsCount, + pUsageCounts: pUsageCounts, + ppUsageCounts: ppUsageCounts, + micromap: micromap, + ) proc newVkPhysicalDeviceDisplacementMicromapFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, displacementMicromap: VkBool32): VkPhysicalDeviceDisplacementMicromapFeaturesNV = - result.sType = sType - result.pNext = pNext - result.displacementMicromap = displacementMicromap + result = VkPhysicalDeviceDisplacementMicromapFeaturesNV( + sType: sType, + pNext: pNext, + displacementMicromap: displacementMicromap, + ) proc newVkPhysicalDeviceDisplacementMicromapPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, maxDisplacementMicromapSubdivisionLevel: uint32): VkPhysicalDeviceDisplacementMicromapPropertiesNV = - result.sType = sType - result.pNext = pNext - result.maxDisplacementMicromapSubdivisionLevel = maxDisplacementMicromapSubdivisionLevel + result = VkPhysicalDeviceDisplacementMicromapPropertiesNV( + sType: sType, + pNext: pNext, + maxDisplacementMicromapSubdivisionLevel: maxDisplacementMicromapSubdivisionLevel, + ) proc newVkAccelerationStructureTrianglesDisplacementMicromapNV*(sType: VkStructureType, pNext: pointer = nil, displacementBiasAndScaleFormat: VkFormat, displacementVectorFormat: VkFormat, displacementBiasAndScaleBuffer: VkDeviceOrHostAddressConstKHR, displacementBiasAndScaleStride: VkDeviceSize, displacementVectorBuffer: VkDeviceOrHostAddressConstKHR, displacementVectorStride: VkDeviceSize, displacedMicromapPrimitiveFlags: VkDeviceOrHostAddressConstKHR, displacedMicromapPrimitiveFlagsStride: VkDeviceSize, indexType: VkIndexType, indexBuffer: VkDeviceOrHostAddressConstKHR, indexStride: VkDeviceSize, baseTriangle: uint32, usageCountsCount: uint32, pUsageCounts: ptr VkMicromapUsageEXT, ppUsageCounts: ptr ptr VkMicromapUsageEXT, micromap: VkMicromapEXT): VkAccelerationStructureTrianglesDisplacementMicromapNV = - result.sType = sType - result.pNext = pNext - result.displacementBiasAndScaleFormat = displacementBiasAndScaleFormat - result.displacementVectorFormat = displacementVectorFormat - result.displacementBiasAndScaleBuffer = displacementBiasAndScaleBuffer - result.displacementBiasAndScaleStride = displacementBiasAndScaleStride - result.displacementVectorBuffer = displacementVectorBuffer - result.displacementVectorStride = displacementVectorStride - result.displacedMicromapPrimitiveFlags = displacedMicromapPrimitiveFlags - result.displacedMicromapPrimitiveFlagsStride = displacedMicromapPrimitiveFlagsStride - result.indexType = indexType - result.indexBuffer = indexBuffer - result.indexStride = indexStride - result.baseTriangle = baseTriangle - result.usageCountsCount = usageCountsCount - result.pUsageCounts = pUsageCounts - result.ppUsageCounts = ppUsageCounts - result.micromap = micromap + result = VkAccelerationStructureTrianglesDisplacementMicromapNV( + sType: sType, + pNext: pNext, + displacementBiasAndScaleFormat: displacementBiasAndScaleFormat, + displacementVectorFormat: displacementVectorFormat, + displacementBiasAndScaleBuffer: displacementBiasAndScaleBuffer, + displacementBiasAndScaleStride: displacementBiasAndScaleStride, + displacementVectorBuffer: displacementVectorBuffer, + displacementVectorStride: displacementVectorStride, + displacedMicromapPrimitiveFlags: displacedMicromapPrimitiveFlags, + displacedMicromapPrimitiveFlagsStride: displacedMicromapPrimitiveFlagsStride, + indexType: indexType, + indexBuffer: indexBuffer, + indexStride: indexStride, + baseTriangle: baseTriangle, + usageCountsCount: usageCountsCount, + pUsageCounts: pUsageCounts, + ppUsageCounts: ppUsageCounts, + micromap: micromap, + ) proc newVkPipelinePropertiesIdentifierEXT*(sType: VkStructureType, pNext: pointer = nil, pipelineIdentifier: array[VK_UUID_SIZE, uint8]): VkPipelinePropertiesIdentifierEXT = - result.sType = sType - result.pNext = pNext - result.pipelineIdentifier = pipelineIdentifier + result = VkPipelinePropertiesIdentifierEXT( + sType: sType, + pNext: pNext, + pipelineIdentifier: pipelineIdentifier, + ) proc newVkPhysicalDevicePipelinePropertiesFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, pipelinePropertiesIdentifier: VkBool32): VkPhysicalDevicePipelinePropertiesFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.pipelinePropertiesIdentifier = pipelinePropertiesIdentifier + result = VkPhysicalDevicePipelinePropertiesFeaturesEXT( + sType: sType, + pNext: pNext, + pipelinePropertiesIdentifier: pipelinePropertiesIdentifier, + ) proc newVkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD*(sType: VkStructureType, pNext: pointer = nil, shaderEarlyAndLateFragmentTests: VkBool32): VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD = - result.sType = sType - result.pNext = pNext - result.shaderEarlyAndLateFragmentTests = shaderEarlyAndLateFragmentTests + result = VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD( + sType: sType, + pNext: pNext, + shaderEarlyAndLateFragmentTests: shaderEarlyAndLateFragmentTests, + ) proc newVkExternalMemoryAcquireUnmodifiedEXT*(sType: VkStructureType, pNext: pointer = nil, acquireUnmodifiedMemory: VkBool32): VkExternalMemoryAcquireUnmodifiedEXT = - result.sType = sType - result.pNext = pNext - result.acquireUnmodifiedMemory = acquireUnmodifiedMemory + result = VkExternalMemoryAcquireUnmodifiedEXT( + sType: sType, + pNext: pNext, + acquireUnmodifiedMemory: acquireUnmodifiedMemory, + ) proc newVkExportMetalObjectCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, exportObjectType: VkExportMetalObjectTypeFlagBitsEXT): VkExportMetalObjectCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.exportObjectType = exportObjectType + result = VkExportMetalObjectCreateInfoEXT( + sType: sType, + pNext: pNext, + exportObjectType: exportObjectType, + ) proc newVkExportMetalObjectsInfoEXT*(sType: VkStructureType, pNext: pointer = nil): VkExportMetalObjectsInfoEXT = - result.sType = sType - result.pNext = pNext + result = VkExportMetalObjectsInfoEXT( + sType: sType, + pNext: pNext, + ) proc newVkExportMetalDeviceInfoEXT*(sType: VkStructureType, pNext: pointer = nil, mtlDevice: MTLDevice_id): VkExportMetalDeviceInfoEXT = - result.sType = sType - result.pNext = pNext - result.mtlDevice = mtlDevice + result = VkExportMetalDeviceInfoEXT( + sType: sType, + pNext: pNext, + mtlDevice: mtlDevice, + ) proc newVkExportMetalCommandQueueInfoEXT*(sType: VkStructureType, pNext: pointer = nil, queue: VkQueue, mtlCommandQueue: MTLCommandQueue_id): VkExportMetalCommandQueueInfoEXT = - result.sType = sType - result.pNext = pNext - result.queue = queue - result.mtlCommandQueue = mtlCommandQueue + result = VkExportMetalCommandQueueInfoEXT( + sType: sType, + pNext: pNext, + queue: queue, + mtlCommandQueue: mtlCommandQueue, + ) proc newVkExportMetalBufferInfoEXT*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory, mtlBuffer: MTLBuffer_id): VkExportMetalBufferInfoEXT = - result.sType = sType - result.pNext = pNext - result.memory = memory - result.mtlBuffer = mtlBuffer + result = VkExportMetalBufferInfoEXT( + sType: sType, + pNext: pNext, + memory: memory, + mtlBuffer: mtlBuffer, + ) proc newVkImportMetalBufferInfoEXT*(sType: VkStructureType, pNext: pointer = nil, mtlBuffer: MTLBuffer_id): VkImportMetalBufferInfoEXT = - result.sType = sType - result.pNext = pNext - result.mtlBuffer = mtlBuffer + result = VkImportMetalBufferInfoEXT( + sType: sType, + pNext: pNext, + mtlBuffer: mtlBuffer, + ) proc newVkExportMetalTextureInfoEXT*(sType: VkStructureType, pNext: pointer = nil, image: VkImage, imageView: VkImageView, bufferView: VkBufferView, plane: VkImageAspectFlagBits, mtlTexture: MTLTexture_id): VkExportMetalTextureInfoEXT = - result.sType = sType - result.pNext = pNext - result.image = image - result.imageView = imageView - result.bufferView = bufferView - result.plane = plane - result.mtlTexture = mtlTexture + result = VkExportMetalTextureInfoEXT( + sType: sType, + pNext: pNext, + image: image, + imageView: imageView, + bufferView: bufferView, + plane: plane, + mtlTexture: mtlTexture, + ) proc newVkImportMetalTextureInfoEXT*(sType: VkStructureType, pNext: pointer = nil, plane: VkImageAspectFlagBits, mtlTexture: MTLTexture_id): VkImportMetalTextureInfoEXT = - result.sType = sType - result.pNext = pNext - result.plane = plane - result.mtlTexture = mtlTexture + result = VkImportMetalTextureInfoEXT( + sType: sType, + pNext: pNext, + plane: plane, + mtlTexture: mtlTexture, + ) proc newVkExportMetalIOSurfaceInfoEXT*(sType: VkStructureType, pNext: pointer = nil, image: VkImage, ioSurface: IOSurfaceRef): VkExportMetalIOSurfaceInfoEXT = - result.sType = sType - result.pNext = pNext - result.image = image - result.ioSurface = ioSurface + result = VkExportMetalIOSurfaceInfoEXT( + sType: sType, + pNext: pNext, + image: image, + ioSurface: ioSurface, + ) proc newVkImportMetalIOSurfaceInfoEXT*(sType: VkStructureType, pNext: pointer = nil, ioSurface: IOSurfaceRef): VkImportMetalIOSurfaceInfoEXT = - result.sType = sType - result.pNext = pNext - result.ioSurface = ioSurface + result = VkImportMetalIOSurfaceInfoEXT( + sType: sType, + pNext: pNext, + ioSurface: ioSurface, + ) proc newVkExportMetalSharedEventInfoEXT*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, event: VkEvent, mtlSharedEvent: MTLSharedEvent_id): VkExportMetalSharedEventInfoEXT = - result.sType = sType - result.pNext = pNext - result.semaphore = semaphore - result.event = event - result.mtlSharedEvent = mtlSharedEvent + result = VkExportMetalSharedEventInfoEXT( + sType: sType, + pNext: pNext, + semaphore: semaphore, + event: event, + mtlSharedEvent: mtlSharedEvent, + ) proc newVkImportMetalSharedEventInfoEXT*(sType: VkStructureType, pNext: pointer = nil, mtlSharedEvent: MTLSharedEvent_id): VkImportMetalSharedEventInfoEXT = - result.sType = sType - result.pNext = pNext - result.mtlSharedEvent = mtlSharedEvent + result = VkImportMetalSharedEventInfoEXT( + sType: sType, + pNext: pNext, + mtlSharedEvent: mtlSharedEvent, + ) proc newVkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, nonSeamlessCubeMap: VkBool32): VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.nonSeamlessCubeMap = nonSeamlessCubeMap + result = VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT( + sType: sType, + pNext: pNext, + nonSeamlessCubeMap: nonSeamlessCubeMap, + ) proc newVkPhysicalDevicePipelineRobustnessFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, pipelineRobustness: VkBool32): VkPhysicalDevicePipelineRobustnessFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.pipelineRobustness = pipelineRobustness + result = VkPhysicalDevicePipelineRobustnessFeaturesEXT( + sType: sType, + pNext: pNext, + pipelineRobustness: pipelineRobustness, + ) proc newVkPipelineRobustnessCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, storageBuffers: VkPipelineRobustnessBufferBehaviorEXT, uniformBuffers: VkPipelineRobustnessBufferBehaviorEXT, vertexInputs: VkPipelineRobustnessBufferBehaviorEXT, images: VkPipelineRobustnessImageBehaviorEXT): VkPipelineRobustnessCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.storageBuffers = storageBuffers - result.uniformBuffers = uniformBuffers - result.vertexInputs = vertexInputs - result.images = images + result = VkPipelineRobustnessCreateInfoEXT( + sType: sType, + pNext: pNext, + storageBuffers: storageBuffers, + uniformBuffers: uniformBuffers, + vertexInputs: vertexInputs, + images: images, + ) proc newVkPhysicalDevicePipelineRobustnessPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, defaultRobustnessStorageBuffers: VkPipelineRobustnessBufferBehaviorEXT, defaultRobustnessUniformBuffers: VkPipelineRobustnessBufferBehaviorEXT, defaultRobustnessVertexInputs: VkPipelineRobustnessBufferBehaviorEXT, defaultRobustnessImages: VkPipelineRobustnessImageBehaviorEXT): VkPhysicalDevicePipelineRobustnessPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.defaultRobustnessStorageBuffers = defaultRobustnessStorageBuffers - result.defaultRobustnessUniformBuffers = defaultRobustnessUniformBuffers - result.defaultRobustnessVertexInputs = defaultRobustnessVertexInputs - result.defaultRobustnessImages = defaultRobustnessImages + result = VkPhysicalDevicePipelineRobustnessPropertiesEXT( + sType: sType, + pNext: pNext, + defaultRobustnessStorageBuffers: defaultRobustnessStorageBuffers, + defaultRobustnessUniformBuffers: defaultRobustnessUniformBuffers, + defaultRobustnessVertexInputs: defaultRobustnessVertexInputs, + defaultRobustnessImages: defaultRobustnessImages, + ) proc newVkImageViewSampleWeightCreateInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, filterCenter: VkOffset2D, filterSize: VkExtent2D, numPhases: uint32): VkImageViewSampleWeightCreateInfoQCOM = - result.sType = sType - result.pNext = pNext - result.filterCenter = filterCenter - result.filterSize = filterSize - result.numPhases = numPhases + result = VkImageViewSampleWeightCreateInfoQCOM( + sType: sType, + pNext: pNext, + filterCenter: filterCenter, + filterSize: filterSize, + numPhases: numPhases, + ) proc newVkPhysicalDeviceImageProcessingFeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, textureSampleWeighted: VkBool32, textureBoxFilter: VkBool32, textureBlockMatch: VkBool32): VkPhysicalDeviceImageProcessingFeaturesQCOM = - result.sType = sType - result.pNext = pNext - result.textureSampleWeighted = textureSampleWeighted - result.textureBoxFilter = textureBoxFilter - result.textureBlockMatch = textureBlockMatch + result = VkPhysicalDeviceImageProcessingFeaturesQCOM( + sType: sType, + pNext: pNext, + textureSampleWeighted: textureSampleWeighted, + textureBoxFilter: textureBoxFilter, + textureBlockMatch: textureBlockMatch, + ) proc newVkPhysicalDeviceImageProcessingPropertiesQCOM*(sType: VkStructureType, pNext: pointer = nil, maxWeightFilterPhases: uint32, maxWeightFilterDimension: VkExtent2D, maxBlockMatchRegion: VkExtent2D, maxBoxFilterBlockSize: VkExtent2D): VkPhysicalDeviceImageProcessingPropertiesQCOM = - result.sType = sType - result.pNext = pNext - result.maxWeightFilterPhases = maxWeightFilterPhases - result.maxWeightFilterDimension = maxWeightFilterDimension - result.maxBlockMatchRegion = maxBlockMatchRegion - result.maxBoxFilterBlockSize = maxBoxFilterBlockSize + result = VkPhysicalDeviceImageProcessingPropertiesQCOM( + sType: sType, + pNext: pNext, + maxWeightFilterPhases: maxWeightFilterPhases, + maxWeightFilterDimension: maxWeightFilterDimension, + maxBlockMatchRegion: maxBlockMatchRegion, + maxBoxFilterBlockSize: maxBoxFilterBlockSize, + ) proc newVkPhysicalDeviceTilePropertiesFeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, tileProperties: VkBool32): VkPhysicalDeviceTilePropertiesFeaturesQCOM = - result.sType = sType - result.pNext = pNext - result.tileProperties = tileProperties + result = VkPhysicalDeviceTilePropertiesFeaturesQCOM( + sType: sType, + pNext: pNext, + tileProperties: tileProperties, + ) proc newVkTilePropertiesQCOM*(sType: VkStructureType, pNext: pointer = nil, tileSize: VkExtent3D, apronSize: VkExtent2D, origin: VkOffset2D): VkTilePropertiesQCOM = - result.sType = sType - result.pNext = pNext - result.tileSize = tileSize - result.apronSize = apronSize - result.origin = origin + result = VkTilePropertiesQCOM( + sType: sType, + pNext: pNext, + tileSize: tileSize, + apronSize: apronSize, + origin: origin, + ) proc newVkPhysicalDeviceAmigoProfilingFeaturesSEC*(sType: VkStructureType, pNext: pointer = nil, amigoProfiling: VkBool32): VkPhysicalDeviceAmigoProfilingFeaturesSEC = - result.sType = sType - result.pNext = pNext - result.amigoProfiling = amigoProfiling + result = VkPhysicalDeviceAmigoProfilingFeaturesSEC( + sType: sType, + pNext: pNext, + amigoProfiling: amigoProfiling, + ) proc newVkAmigoProfilingSubmitInfoSEC*(sType: VkStructureType, pNext: pointer = nil, firstDrawTimestamp: uint64, swapBufferTimestamp: uint64): VkAmigoProfilingSubmitInfoSEC = - result.sType = sType - result.pNext = pNext - result.firstDrawTimestamp = firstDrawTimestamp - result.swapBufferTimestamp = swapBufferTimestamp + result = VkAmigoProfilingSubmitInfoSEC( + sType: sType, + pNext: pNext, + firstDrawTimestamp: firstDrawTimestamp, + swapBufferTimestamp: swapBufferTimestamp, + ) proc newVkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, attachmentFeedbackLoopLayout: VkBool32): VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.attachmentFeedbackLoopLayout = attachmentFeedbackLoopLayout + result = VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT( + sType: sType, + pNext: pNext, + attachmentFeedbackLoopLayout: attachmentFeedbackLoopLayout, + ) proc newVkPhysicalDeviceDepthClampZeroOneFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, depthClampZeroOne: VkBool32): VkPhysicalDeviceDepthClampZeroOneFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.depthClampZeroOne = depthClampZeroOne + result = VkPhysicalDeviceDepthClampZeroOneFeaturesEXT( + sType: sType, + pNext: pNext, + depthClampZeroOne: depthClampZeroOne, + ) proc newVkPhysicalDeviceAddressBindingReportFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, reportAddressBinding: VkBool32): VkPhysicalDeviceAddressBindingReportFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.reportAddressBinding = reportAddressBinding + result = VkPhysicalDeviceAddressBindingReportFeaturesEXT( + sType: sType, + pNext: pNext, + reportAddressBinding: reportAddressBinding, + ) proc newVkDeviceAddressBindingCallbackDataEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkDeviceAddressBindingFlagsEXT = 0.VkDeviceAddressBindingFlagsEXT, baseAddress: VkDeviceAddress, size: VkDeviceSize, bindingType: VkDeviceAddressBindingTypeEXT): VkDeviceAddressBindingCallbackDataEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.baseAddress = baseAddress - result.size = size - result.bindingType = bindingType + result = VkDeviceAddressBindingCallbackDataEXT( + sType: sType, + pNext: pNext, + flags: flags, + baseAddress: baseAddress, + size: size, + bindingType: bindingType, + ) proc newVkPhysicalDeviceOpticalFlowFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, opticalFlow: VkBool32): VkPhysicalDeviceOpticalFlowFeaturesNV = - result.sType = sType - result.pNext = pNext - result.opticalFlow = opticalFlow + result = VkPhysicalDeviceOpticalFlowFeaturesNV( + sType: sType, + pNext: pNext, + opticalFlow: opticalFlow, + ) proc newVkPhysicalDeviceOpticalFlowPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, supportedOutputGridSizes: VkOpticalFlowGridSizeFlagsNV, supportedHintGridSizes: VkOpticalFlowGridSizeFlagsNV, hintSupported: VkBool32, costSupported: VkBool32, bidirectionalFlowSupported: VkBool32, globalFlowSupported: VkBool32, minWidth: uint32, minHeight: uint32, maxWidth: uint32, maxHeight: uint32, maxNumRegionsOfInterest: uint32): VkPhysicalDeviceOpticalFlowPropertiesNV = - result.sType = sType - result.pNext = pNext - result.supportedOutputGridSizes = supportedOutputGridSizes - result.supportedHintGridSizes = supportedHintGridSizes - result.hintSupported = hintSupported - result.costSupported = costSupported - result.bidirectionalFlowSupported = bidirectionalFlowSupported - result.globalFlowSupported = globalFlowSupported - result.minWidth = minWidth - result.minHeight = minHeight - result.maxWidth = maxWidth - result.maxHeight = maxHeight - result.maxNumRegionsOfInterest = maxNumRegionsOfInterest + result = VkPhysicalDeviceOpticalFlowPropertiesNV( + sType: sType, + pNext: pNext, + supportedOutputGridSizes: supportedOutputGridSizes, + supportedHintGridSizes: supportedHintGridSizes, + hintSupported: hintSupported, + costSupported: costSupported, + bidirectionalFlowSupported: bidirectionalFlowSupported, + globalFlowSupported: globalFlowSupported, + minWidth: minWidth, + minHeight: minHeight, + maxWidth: maxWidth, + maxHeight: maxHeight, + maxNumRegionsOfInterest: maxNumRegionsOfInterest, + ) proc newVkOpticalFlowImageFormatInfoNV*(sType: VkStructureType, pNext: pointer = nil, usage: VkOpticalFlowUsageFlagsNV): VkOpticalFlowImageFormatInfoNV = - result.sType = sType - result.pNext = pNext - result.usage = usage + result = VkOpticalFlowImageFormatInfoNV( + sType: sType, + pNext: pNext, + usage: usage, + ) proc newVkOpticalFlowImageFormatPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat): VkOpticalFlowImageFormatPropertiesNV = - result.sType = sType - result.pNext = pNext - result.format = format + result = VkOpticalFlowImageFormatPropertiesNV( + sType: sType, + pNext: pNext, + format: format, + ) proc newVkOpticalFlowSessionCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, width: uint32, height: uint32, imageFormat: VkFormat, flowVectorFormat: VkFormat, costFormat: VkFormat, outputGridSize: VkOpticalFlowGridSizeFlagsNV, hintGridSize: VkOpticalFlowGridSizeFlagsNV, performanceLevel: VkOpticalFlowPerformanceLevelNV, flags: VkOpticalFlowSessionCreateFlagsNV = 0.VkOpticalFlowSessionCreateFlagsNV): VkOpticalFlowSessionCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.width = width - result.height = height - result.imageFormat = imageFormat - result.flowVectorFormat = flowVectorFormat - result.costFormat = costFormat - result.outputGridSize = outputGridSize - result.hintGridSize = hintGridSize - result.performanceLevel = performanceLevel - result.flags = flags + result = VkOpticalFlowSessionCreateInfoNV( + sType: sType, + pNext: pNext, + width: width, + height: height, + imageFormat: imageFormat, + flowVectorFormat: flowVectorFormat, + costFormat: costFormat, + outputGridSize: outputGridSize, + hintGridSize: hintGridSize, + performanceLevel: performanceLevel, + flags: flags, + ) proc newVkOpticalFlowSessionCreatePrivateDataInfoNV*(sType: VkStructureType, pNext: pointer = nil, id: uint32, size: uint32, pPrivateData: pointer = nil): VkOpticalFlowSessionCreatePrivateDataInfoNV = - result.sType = sType - result.pNext = pNext - result.id = id - result.size = size - result.pPrivateData = pPrivateData + result = VkOpticalFlowSessionCreatePrivateDataInfoNV( + sType: sType, + pNext: pNext, + id: id, + size: size, + pPrivateData: pPrivateData, + ) proc newVkOpticalFlowExecuteInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkOpticalFlowExecuteFlagsNV = 0.VkOpticalFlowExecuteFlagsNV, regionCount: uint32, pRegions: ptr VkRect2D): VkOpticalFlowExecuteInfoNV = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.regionCount = regionCount - result.pRegions = pRegions + result = VkOpticalFlowExecuteInfoNV( + sType: sType, + pNext: pNext, + flags: flags, + regionCount: regionCount, + pRegions: pRegions, + ) proc newVkPhysicalDeviceFaultFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, deviceFault: VkBool32, deviceFaultVendorBinary: VkBool32): VkPhysicalDeviceFaultFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.deviceFault = deviceFault - result.deviceFaultVendorBinary = deviceFaultVendorBinary + result = VkPhysicalDeviceFaultFeaturesEXT( + sType: sType, + pNext: pNext, + deviceFault: deviceFault, + deviceFaultVendorBinary: deviceFaultVendorBinary, + ) proc newVkDeviceFaultAddressInfoEXT*(addressType: VkDeviceFaultAddressTypeEXT, reportedAddress: VkDeviceAddress, addressPrecision: VkDeviceSize): VkDeviceFaultAddressInfoEXT = - result.addressType = addressType - result.reportedAddress = reportedAddress - result.addressPrecision = addressPrecision + result = VkDeviceFaultAddressInfoEXT( + addressType: addressType, + reportedAddress: reportedAddress, + addressPrecision: addressPrecision, + ) proc newVkDeviceFaultVendorInfoEXT*(description: array[VK_MAX_DESCRIPTION_SIZE, char], vendorFaultCode: uint64, vendorFaultData: uint64): VkDeviceFaultVendorInfoEXT = - result.description = description - result.vendorFaultCode = vendorFaultCode - result.vendorFaultData = vendorFaultData + result = VkDeviceFaultVendorInfoEXT( + description: description, + vendorFaultCode: vendorFaultCode, + vendorFaultData: vendorFaultData, + ) proc newVkDeviceFaultCountsEXT*(sType: VkStructureType, pNext: pointer = nil, addressInfoCount: uint32, vendorInfoCount: uint32, vendorBinarySize: VkDeviceSize): VkDeviceFaultCountsEXT = - result.sType = sType - result.pNext = pNext - result.addressInfoCount = addressInfoCount - result.vendorInfoCount = vendorInfoCount - result.vendorBinarySize = vendorBinarySize + result = VkDeviceFaultCountsEXT( + sType: sType, + pNext: pNext, + addressInfoCount: addressInfoCount, + vendorInfoCount: vendorInfoCount, + vendorBinarySize: vendorBinarySize, + ) proc newVkDeviceFaultInfoEXT*(sType: VkStructureType, pNext: pointer = nil, description: array[VK_MAX_DESCRIPTION_SIZE, char], pAddressInfos: ptr VkDeviceFaultAddressInfoEXT, pVendorInfos: ptr VkDeviceFaultVendorInfoEXT, pVendorBinaryData: pointer = nil): VkDeviceFaultInfoEXT = - result.sType = sType - result.pNext = pNext - result.description = description - result.pAddressInfos = pAddressInfos - result.pVendorInfos = pVendorInfos - result.pVendorBinaryData = pVendorBinaryData + result = VkDeviceFaultInfoEXT( + sType: sType, + pNext: pNext, + description: description, + pAddressInfos: pAddressInfos, + pVendorInfos: pVendorInfos, + pVendorBinaryData: pVendorBinaryData, + ) proc newVkDeviceFaultVendorBinaryHeaderVersionOneEXT*(headerSize: uint32, headerVersion: VkDeviceFaultVendorBinaryHeaderVersionEXT, vendorID: uint32, deviceID: uint32, driverVersion: uint32, pipelineCacheUUID: array[VK_UUID_SIZE, uint8], applicationNameOffset: uint32, applicationVersion: uint32, engineNameOffset: uint32, engineVersion: uint32, apiVersion: uint32): VkDeviceFaultVendorBinaryHeaderVersionOneEXT = - result.headerSize = headerSize - result.headerVersion = headerVersion - result.vendorID = vendorID - result.deviceID = deviceID - result.driverVersion = driverVersion - result.pipelineCacheUUID = pipelineCacheUUID - result.applicationNameOffset = applicationNameOffset - result.applicationVersion = applicationVersion - result.engineNameOffset = engineNameOffset - result.engineVersion = engineVersion - result.apiVersion = apiVersion + result = VkDeviceFaultVendorBinaryHeaderVersionOneEXT( + headerSize: headerSize, + headerVersion: headerVersion, + vendorID: vendorID, + deviceID: deviceID, + driverVersion: driverVersion, + pipelineCacheUUID: pipelineCacheUUID, + applicationNameOffset: applicationNameOffset, + applicationVersion: applicationVersion, + engineNameOffset: engineNameOffset, + engineVersion: engineVersion, + apiVersion: apiVersion, + ) proc newVkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, pipelineLibraryGroupHandles: VkBool32): VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.pipelineLibraryGroupHandles = pipelineLibraryGroupHandles + result = VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT( + sType: sType, + pNext: pNext, + pipelineLibraryGroupHandles: pipelineLibraryGroupHandles, + ) proc newVkDepthBiasInfoEXT*(sType: VkStructureType, pNext: pointer = nil, depthBiasConstantFactor: float32, depthBiasClamp: float32, depthBiasSlopeFactor: float32): VkDepthBiasInfoEXT = - result.sType = sType - result.pNext = pNext - result.depthBiasConstantFactor = depthBiasConstantFactor - result.depthBiasClamp = depthBiasClamp - result.depthBiasSlopeFactor = depthBiasSlopeFactor + result = VkDepthBiasInfoEXT( + sType: sType, + pNext: pNext, + depthBiasConstantFactor: depthBiasConstantFactor, + depthBiasClamp: depthBiasClamp, + depthBiasSlopeFactor: depthBiasSlopeFactor, + ) proc newVkDepthBiasRepresentationInfoEXT*(sType: VkStructureType, pNext: pointer = nil, depthBiasRepresentation: VkDepthBiasRepresentationEXT, depthBiasExact: VkBool32): VkDepthBiasRepresentationInfoEXT = - result.sType = sType - result.pNext = pNext - result.depthBiasRepresentation = depthBiasRepresentation - result.depthBiasExact = depthBiasExact + result = VkDepthBiasRepresentationInfoEXT( + sType: sType, + pNext: pNext, + depthBiasRepresentation: depthBiasRepresentation, + depthBiasExact: depthBiasExact, + ) proc newVkDecompressMemoryRegionNV*(srcAddress: VkDeviceAddress, dstAddress: VkDeviceAddress, compressedSize: VkDeviceSize, decompressedSize: VkDeviceSize, decompressionMethod: VkMemoryDecompressionMethodFlagsNV): VkDecompressMemoryRegionNV = - result.srcAddress = srcAddress - result.dstAddress = dstAddress - result.compressedSize = compressedSize - result.decompressedSize = decompressedSize - result.decompressionMethod = decompressionMethod + result = VkDecompressMemoryRegionNV( + srcAddress: srcAddress, + dstAddress: dstAddress, + compressedSize: compressedSize, + decompressedSize: decompressedSize, + decompressionMethod: decompressionMethod, + ) proc newVkPhysicalDeviceShaderCoreBuiltinsPropertiesARM*(sType: VkStructureType, pNext: pointer = nil, shaderCoreMask: uint64, shaderCoreCount: uint32, shaderWarpsPerCore: uint32): VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM = - result.sType = sType - result.pNext = pNext - result.shaderCoreMask = shaderCoreMask - result.shaderCoreCount = shaderCoreCount - result.shaderWarpsPerCore = shaderWarpsPerCore + result = VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM( + sType: sType, + pNext: pNext, + shaderCoreMask: shaderCoreMask, + shaderCoreCount: shaderCoreCount, + shaderWarpsPerCore: shaderWarpsPerCore, + ) proc newVkPhysicalDeviceShaderCoreBuiltinsFeaturesARM*(sType: VkStructureType, pNext: pointer = nil, shaderCoreBuiltins: VkBool32): VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM = - result.sType = sType - result.pNext = pNext - result.shaderCoreBuiltins = shaderCoreBuiltins + result = VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM( + sType: sType, + pNext: pNext, + shaderCoreBuiltins: shaderCoreBuiltins, + ) proc newVkFrameBoundaryEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkFrameBoundaryFlagsEXT = 0.VkFrameBoundaryFlagsEXT, frameID: uint64, imageCount: uint32, pImages: ptr VkImage, bufferCount: uint32, pBuffers: ptr VkBuffer, tagName: uint64, tagSize: uint, pTag: pointer = nil): VkFrameBoundaryEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.frameID = frameID - result.imageCount = imageCount - result.pImages = pImages - result.bufferCount = bufferCount - result.pBuffers = pBuffers - result.tagName = tagName - result.tagSize = tagSize - result.pTag = pTag + result = VkFrameBoundaryEXT( + sType: sType, + pNext: pNext, + flags: flags, + frameID: frameID, + imageCount: imageCount, + pImages: pImages, + bufferCount: bufferCount, + pBuffers: pBuffers, + tagName: tagName, + tagSize: tagSize, + pTag: pTag, + ) proc newVkPhysicalDeviceFrameBoundaryFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, frameBoundary: VkBool32): VkPhysicalDeviceFrameBoundaryFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.frameBoundary = frameBoundary + result = VkPhysicalDeviceFrameBoundaryFeaturesEXT( + sType: sType, + pNext: pNext, + frameBoundary: frameBoundary, + ) proc newVkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, dynamicRenderingUnusedAttachments: VkBool32): VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.dynamicRenderingUnusedAttachments = dynamicRenderingUnusedAttachments + result = VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT( + sType: sType, + pNext: pNext, + dynamicRenderingUnusedAttachments: dynamicRenderingUnusedAttachments, + ) proc newVkSurfacePresentModeEXT*(sType: VkStructureType, pNext: pointer = nil, presentMode: VkPresentModeKHR): VkSurfacePresentModeEXT = - result.sType = sType - result.pNext = pNext - result.presentMode = presentMode + result = VkSurfacePresentModeEXT( + sType: sType, + pNext: pNext, + presentMode: presentMode, + ) proc newVkSurfacePresentScalingCapabilitiesEXT*(sType: VkStructureType, pNext: pointer = nil, supportedPresentScaling: VkPresentScalingFlagsEXT, supportedPresentGravityX: VkPresentGravityFlagsEXT, supportedPresentGravityY: VkPresentGravityFlagsEXT, minScaledImageExtent: VkExtent2D, maxScaledImageExtent: VkExtent2D): VkSurfacePresentScalingCapabilitiesEXT = - result.sType = sType - result.pNext = pNext - result.supportedPresentScaling = supportedPresentScaling - result.supportedPresentGravityX = supportedPresentGravityX - result.supportedPresentGravityY = supportedPresentGravityY - result.minScaledImageExtent = minScaledImageExtent - result.maxScaledImageExtent = maxScaledImageExtent + result = VkSurfacePresentScalingCapabilitiesEXT( + sType: sType, + pNext: pNext, + supportedPresentScaling: supportedPresentScaling, + supportedPresentGravityX: supportedPresentGravityX, + supportedPresentGravityY: supportedPresentGravityY, + minScaledImageExtent: minScaledImageExtent, + maxScaledImageExtent: maxScaledImageExtent, + ) proc newVkSurfacePresentModeCompatibilityEXT*(sType: VkStructureType, pNext: pointer = nil, presentModeCount: uint32, pPresentModes: ptr VkPresentModeKHR): VkSurfacePresentModeCompatibilityEXT = - result.sType = sType - result.pNext = pNext - result.presentModeCount = presentModeCount - result.pPresentModes = pPresentModes + result = VkSurfacePresentModeCompatibilityEXT( + sType: sType, + pNext: pNext, + presentModeCount: presentModeCount, + pPresentModes: pPresentModes, + ) proc newVkPhysicalDeviceSwapchainMaintenance1FeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, swapchainMaintenance1: VkBool32): VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT = - result.sType = sType - result.pNext = pNext - result.swapchainMaintenance1 = swapchainMaintenance1 + result = VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT( + sType: sType, + pNext: pNext, + swapchainMaintenance1: swapchainMaintenance1, + ) proc newVkSwapchainPresentFenceInfoEXT*(sType: VkStructureType, pNext: pointer = nil, swapchainCount: uint32, pFences: ptr VkFence): VkSwapchainPresentFenceInfoEXT = - result.sType = sType - result.pNext = pNext - result.swapchainCount = swapchainCount - result.pFences = pFences + result = VkSwapchainPresentFenceInfoEXT( + sType: sType, + pNext: pNext, + swapchainCount: swapchainCount, + pFences: pFences, + ) proc newVkSwapchainPresentModesCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, presentModeCount: uint32, pPresentModes: ptr VkPresentModeKHR): VkSwapchainPresentModesCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.presentModeCount = presentModeCount - result.pPresentModes = pPresentModes + result = VkSwapchainPresentModesCreateInfoEXT( + sType: sType, + pNext: pNext, + presentModeCount: presentModeCount, + pPresentModes: pPresentModes, + ) proc newVkSwapchainPresentModeInfoEXT*(sType: VkStructureType, pNext: pointer = nil, swapchainCount: uint32, pPresentModes: ptr VkPresentModeKHR): VkSwapchainPresentModeInfoEXT = - result.sType = sType - result.pNext = pNext - result.swapchainCount = swapchainCount - result.pPresentModes = pPresentModes + result = VkSwapchainPresentModeInfoEXT( + sType: sType, + pNext: pNext, + swapchainCount: swapchainCount, + pPresentModes: pPresentModes, + ) proc newVkSwapchainPresentScalingCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, scalingBehavior: VkPresentScalingFlagsEXT, presentGravityX: VkPresentGravityFlagsEXT, presentGravityY: VkPresentGravityFlagsEXT): VkSwapchainPresentScalingCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.scalingBehavior = scalingBehavior - result.presentGravityX = presentGravityX - result.presentGravityY = presentGravityY + result = VkSwapchainPresentScalingCreateInfoEXT( + sType: sType, + pNext: pNext, + scalingBehavior: scalingBehavior, + presentGravityX: presentGravityX, + presentGravityY: presentGravityY, + ) proc newVkReleaseSwapchainImagesInfoEXT*(sType: VkStructureType, pNext: pointer = nil, swapchain: VkSwapchainKHR, imageIndexCount: uint32, pImageIndices: ptr uint32): VkReleaseSwapchainImagesInfoEXT = - result.sType = sType - result.pNext = pNext - result.swapchain = swapchain - result.imageIndexCount = imageIndexCount - result.pImageIndices = pImageIndices + result = VkReleaseSwapchainImagesInfoEXT( + sType: sType, + pNext: pNext, + swapchain: swapchain, + imageIndexCount: imageIndexCount, + pImageIndices: pImageIndices, + ) proc newVkPhysicalDeviceDepthBiasControlFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, depthBiasControl: VkBool32, leastRepresentableValueForceUnormRepresentation: VkBool32, floatRepresentation: VkBool32, depthBiasExact: VkBool32): VkPhysicalDeviceDepthBiasControlFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.depthBiasControl = depthBiasControl - result.leastRepresentableValueForceUnormRepresentation = leastRepresentableValueForceUnormRepresentation - result.floatRepresentation = floatRepresentation - result.depthBiasExact = depthBiasExact + result = VkPhysicalDeviceDepthBiasControlFeaturesEXT( + sType: sType, + pNext: pNext, + depthBiasControl: depthBiasControl, + leastRepresentableValueForceUnormRepresentation: leastRepresentableValueForceUnormRepresentation, + floatRepresentation: floatRepresentation, + depthBiasExact: depthBiasExact, + ) proc newVkPhysicalDeviceRayTracingInvocationReorderFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, rayTracingInvocationReorder: VkBool32): VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV = - result.sType = sType - result.pNext = pNext - result.rayTracingInvocationReorder = rayTracingInvocationReorder + result = VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV( + sType: sType, + pNext: pNext, + rayTracingInvocationReorder: rayTracingInvocationReorder, + ) proc newVkPhysicalDeviceRayTracingInvocationReorderPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, rayTracingInvocationReorderReorderingHint: VkRayTracingInvocationReorderModeNV): VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV = - result.sType = sType - result.pNext = pNext - result.rayTracingInvocationReorderReorderingHint = rayTracingInvocationReorderReorderingHint + result = VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV( + sType: sType, + pNext: pNext, + rayTracingInvocationReorderReorderingHint: rayTracingInvocationReorderReorderingHint, + ) proc newVkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, extendedSparseAddressSpace: VkBool32): VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV = - result.sType = sType - result.pNext = pNext - result.extendedSparseAddressSpace = extendedSparseAddressSpace + result = VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV( + sType: sType, + pNext: pNext, + extendedSparseAddressSpace: extendedSparseAddressSpace, + ) proc newVkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV*(sType: VkStructureType, pNext: pointer = nil, extendedSparseAddressSpaceSize: VkDeviceSize, extendedSparseImageUsageFlags: VkImageUsageFlags, extendedSparseBufferUsageFlags: VkBufferUsageFlags): VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV = - result.sType = sType - result.pNext = pNext - result.extendedSparseAddressSpaceSize = extendedSparseAddressSpaceSize - result.extendedSparseImageUsageFlags = extendedSparseImageUsageFlags - result.extendedSparseBufferUsageFlags = extendedSparseBufferUsageFlags + result = VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV( + sType: sType, + pNext: pNext, + extendedSparseAddressSpaceSize: extendedSparseAddressSpaceSize, + extendedSparseImageUsageFlags: extendedSparseImageUsageFlags, + extendedSparseBufferUsageFlags: extendedSparseBufferUsageFlags, + ) proc newVkDirectDriverLoadingInfoLUNARG*(sType: VkStructureType, pNext: pointer = nil, flags: VkDirectDriverLoadingFlagsLUNARG = 0.VkDirectDriverLoadingFlagsLUNARG, pfnGetInstanceProcAddr: PFN_vkGetInstanceProcAddrLUNARG): VkDirectDriverLoadingInfoLUNARG = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.pfnGetInstanceProcAddr = pfnGetInstanceProcAddr + result = VkDirectDriverLoadingInfoLUNARG( + sType: sType, + pNext: pNext, + flags: flags, + pfnGetInstanceProcAddr: pfnGetInstanceProcAddr, + ) proc newVkDirectDriverLoadingListLUNARG*(sType: VkStructureType, pNext: pointer = nil, mode: VkDirectDriverLoadingModeLUNARG, driverCount: uint32, pDrivers: ptr VkDirectDriverLoadingInfoLUNARG): VkDirectDriverLoadingListLUNARG = - result.sType = sType - result.pNext = pNext - result.mode = mode - result.driverCount = driverCount - result.pDrivers = pDrivers + result = VkDirectDriverLoadingListLUNARG( + sType: sType, + pNext: pNext, + mode: mode, + driverCount: driverCount, + pDrivers: pDrivers, + ) proc newVkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, multiviewPerViewViewports: VkBool32): VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM = - result.sType = sType - result.pNext = pNext - result.multiviewPerViewViewports = multiviewPerViewViewports + result = VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM( + sType: sType, + pNext: pNext, + multiviewPerViewViewports: multiviewPerViewViewports, + ) proc newVkPhysicalDeviceRayTracingPositionFetchFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, rayTracingPositionFetch: VkBool32): VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.rayTracingPositionFetch = rayTracingPositionFetch + result = VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR( + sType: sType, + pNext: pNext, + rayTracingPositionFetch: rayTracingPositionFetch, + ) proc newVkDeviceImageSubresourceInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pCreateInfo: ptr VkImageCreateInfo, pSubresource: ptr VkImageSubresource2KHR): VkDeviceImageSubresourceInfoKHR = - result.sType = sType - result.pNext = pNext - result.pCreateInfo = pCreateInfo - result.pSubresource = pSubresource + result = VkDeviceImageSubresourceInfoKHR( + sType: sType, + pNext: pNext, + pCreateInfo: pCreateInfo, + pSubresource: pSubresource, + ) proc newVkPhysicalDeviceShaderCorePropertiesARM*(sType: VkStructureType, pNext: pointer = nil, pixelRate: uint32, texelRate: uint32, fmaRate: uint32): VkPhysicalDeviceShaderCorePropertiesARM = - result.sType = sType - result.pNext = pNext - result.pixelRate = pixelRate - result.texelRate = texelRate - result.fmaRate = fmaRate + result = VkPhysicalDeviceShaderCorePropertiesARM( + sType: sType, + pNext: pNext, + pixelRate: pixelRate, + texelRate: texelRate, + fmaRate: fmaRate, + ) proc newVkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, multiviewPerViewRenderAreas: VkBool32): VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM = - result.sType = sType - result.pNext = pNext - result.multiviewPerViewRenderAreas = multiviewPerViewRenderAreas + result = VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM( + sType: sType, + pNext: pNext, + multiviewPerViewRenderAreas: multiviewPerViewRenderAreas, + ) proc newVkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, perViewRenderAreaCount: uint32, pPerViewRenderAreas: ptr VkRect2D): VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM = - result.sType = sType - result.pNext = pNext - result.perViewRenderAreaCount = perViewRenderAreaCount - result.pPerViewRenderAreas = pPerViewRenderAreas + result = VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM( + sType: sType, + pNext: pNext, + perViewRenderAreaCount: perViewRenderAreaCount, + pPerViewRenderAreas: pPerViewRenderAreas, + ) proc newVkQueryLowLatencySupportNV*(sType: VkStructureType, pNext: pointer = nil, pQueriedLowLatencyData: pointer = nil): VkQueryLowLatencySupportNV = - result.sType = sType - result.pNext = pNext - result.pQueriedLowLatencyData = pQueriedLowLatencyData + result = VkQueryLowLatencySupportNV( + sType: sType, + pNext: pNext, + pQueriedLowLatencyData: pQueriedLowLatencyData, + ) proc newVkMemoryMapInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkMemoryMapFlags = 0.VkMemoryMapFlags, memory: VkDeviceMemory, offset: VkDeviceSize, size: VkDeviceSize): VkMemoryMapInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.memory = memory - result.offset = offset - result.size = size + result = VkMemoryMapInfoKHR( + sType: sType, + pNext: pNext, + flags: flags, + memory: memory, + offset: offset, + size: size, + ) proc newVkMemoryUnmapInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkMemoryUnmapFlagsKHR = 0.VkMemoryUnmapFlagsKHR, memory: VkDeviceMemory): VkMemoryUnmapInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.memory = memory + result = VkMemoryUnmapInfoKHR( + sType: sType, + pNext: pNext, + flags: flags, + memory: memory, + ) proc newVkPhysicalDeviceShaderObjectFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderObject: VkBool32): VkPhysicalDeviceShaderObjectFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.shaderObject = shaderObject + result = VkPhysicalDeviceShaderObjectFeaturesEXT( + sType: sType, + pNext: pNext, + shaderObject: shaderObject, + ) proc newVkPhysicalDeviceShaderObjectPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderBinaryUUID: array[VK_UUID_SIZE, uint8], shaderBinaryVersion: uint32): VkPhysicalDeviceShaderObjectPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.shaderBinaryUUID = shaderBinaryUUID - result.shaderBinaryVersion = shaderBinaryVersion + result = VkPhysicalDeviceShaderObjectPropertiesEXT( + sType: sType, + pNext: pNext, + shaderBinaryUUID: shaderBinaryUUID, + shaderBinaryVersion: shaderBinaryVersion, + ) proc newVkShaderCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkShaderCreateFlagsEXT = 0.VkShaderCreateFlagsEXT, stage: VkShaderStageFlagBits, nextStage: VkShaderStageFlags, codeType: VkShaderCodeTypeEXT, codeSize: uint, pCode: pointer = nil, pName: cstring, setLayoutCount: uint32, pSetLayouts: ptr VkDescriptorSetLayout, pushConstantRangeCount: uint32, pPushConstantRanges: ptr VkPushConstantRange, pSpecializationInfo: ptr VkSpecializationInfo): VkShaderCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.stage = stage - result.nextStage = nextStage - result.codeType = codeType - result.codeSize = codeSize - result.pCode = pCode - result.pName = pName - result.setLayoutCount = setLayoutCount - result.pSetLayouts = pSetLayouts - result.pushConstantRangeCount = pushConstantRangeCount - result.pPushConstantRanges = pPushConstantRanges - result.pSpecializationInfo = pSpecializationInfo + result = VkShaderCreateInfoEXT( + sType: sType, + pNext: pNext, + flags: flags, + stage: stage, + nextStage: nextStage, + codeType: codeType, + codeSize: codeSize, + pCode: pCode, + pName: pName, + setLayoutCount: setLayoutCount, + pSetLayouts: pSetLayouts, + pushConstantRangeCount: pushConstantRangeCount, + pPushConstantRanges: pPushConstantRanges, + pSpecializationInfo: pSpecializationInfo, + ) proc newVkPhysicalDeviceShaderTileImageFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderTileImageColorReadAccess: VkBool32, shaderTileImageDepthReadAccess: VkBool32, shaderTileImageStencilReadAccess: VkBool32): VkPhysicalDeviceShaderTileImageFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.shaderTileImageColorReadAccess = shaderTileImageColorReadAccess - result.shaderTileImageDepthReadAccess = shaderTileImageDepthReadAccess - result.shaderTileImageStencilReadAccess = shaderTileImageStencilReadAccess + result = VkPhysicalDeviceShaderTileImageFeaturesEXT( + sType: sType, + pNext: pNext, + shaderTileImageColorReadAccess: shaderTileImageColorReadAccess, + shaderTileImageDepthReadAccess: shaderTileImageDepthReadAccess, + shaderTileImageStencilReadAccess: shaderTileImageStencilReadAccess, + ) proc newVkPhysicalDeviceShaderTileImagePropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderTileImageCoherentReadAccelerated: VkBool32, shaderTileImageReadSampleFromPixelRateInvocation: VkBool32, shaderTileImageReadFromHelperInvocation: VkBool32): VkPhysicalDeviceShaderTileImagePropertiesEXT = - result.sType = sType - result.pNext = pNext - result.shaderTileImageCoherentReadAccelerated = shaderTileImageCoherentReadAccelerated - result.shaderTileImageReadSampleFromPixelRateInvocation = shaderTileImageReadSampleFromPixelRateInvocation - result.shaderTileImageReadFromHelperInvocation = shaderTileImageReadFromHelperInvocation + result = VkPhysicalDeviceShaderTileImagePropertiesEXT( + sType: sType, + pNext: pNext, + shaderTileImageCoherentReadAccelerated: shaderTileImageCoherentReadAccelerated, + shaderTileImageReadSampleFromPixelRateInvocation: shaderTileImageReadSampleFromPixelRateInvocation, + shaderTileImageReadFromHelperInvocation: shaderTileImageReadFromHelperInvocation, + ) proc newVkImportScreenBufferInfoQNX*(sType: VkStructureType, pNext: pointer = nil, buffer: ptr screen_buffer): VkImportScreenBufferInfoQNX = - result.sType = sType - result.pNext = pNext - result.buffer = buffer + result = VkImportScreenBufferInfoQNX( + sType: sType, + pNext: pNext, + buffer: buffer, + ) proc newVkScreenBufferPropertiesQNX*(sType: VkStructureType, pNext: pointer = nil, allocationSize: VkDeviceSize, memoryTypeBits: uint32): VkScreenBufferPropertiesQNX = - result.sType = sType - result.pNext = pNext - result.allocationSize = allocationSize - result.memoryTypeBits = memoryTypeBits + result = VkScreenBufferPropertiesQNX( + sType: sType, + pNext: pNext, + allocationSize: allocationSize, + memoryTypeBits: memoryTypeBits, + ) proc newVkScreenBufferFormatPropertiesQNX*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat, externalFormat: uint64, screenUsage: uint64, formatFeatures: VkFormatFeatureFlags, samplerYcbcrConversionComponents: VkComponentMapping, suggestedYcbcrModel: VkSamplerYcbcrModelConversion, suggestedYcbcrRange: VkSamplerYcbcrRange, suggestedXChromaOffset: VkChromaLocation, suggestedYChromaOffset: VkChromaLocation): VkScreenBufferFormatPropertiesQNX = - result.sType = sType - result.pNext = pNext - result.format = format - result.externalFormat = externalFormat - result.screenUsage = screenUsage - result.formatFeatures = formatFeatures - result.samplerYcbcrConversionComponents = samplerYcbcrConversionComponents - result.suggestedYcbcrModel = suggestedYcbcrModel - result.suggestedYcbcrRange = suggestedYcbcrRange - result.suggestedXChromaOffset = suggestedXChromaOffset - result.suggestedYChromaOffset = suggestedYChromaOffset + result = VkScreenBufferFormatPropertiesQNX( + sType: sType, + pNext: pNext, + format: format, + externalFormat: externalFormat, + screenUsage: screenUsage, + formatFeatures: formatFeatures, + samplerYcbcrConversionComponents: samplerYcbcrConversionComponents, + suggestedYcbcrModel: suggestedYcbcrModel, + suggestedYcbcrRange: suggestedYcbcrRange, + suggestedXChromaOffset: suggestedXChromaOffset, + suggestedYChromaOffset: suggestedYChromaOffset, + ) proc newVkExternalFormatQNX*(sType: VkStructureType, pNext: pointer = nil, externalFormat: uint64): VkExternalFormatQNX = - result.sType = sType - result.pNext = pNext - result.externalFormat = externalFormat + result = VkExternalFormatQNX( + sType: sType, + pNext: pNext, + externalFormat: externalFormat, + ) proc newVkPhysicalDeviceExternalMemoryScreenBufferFeaturesQNX*(sType: VkStructureType, pNext: pointer = nil, screenBufferImport: VkBool32): VkPhysicalDeviceExternalMemoryScreenBufferFeaturesQNX = - result.sType = sType - result.pNext = pNext - result.screenBufferImport = screenBufferImport + result = VkPhysicalDeviceExternalMemoryScreenBufferFeaturesQNX( + sType: sType, + pNext: pNext, + screenBufferImport: screenBufferImport, + ) proc newVkPhysicalDeviceCooperativeMatrixFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, cooperativeMatrix: VkBool32, cooperativeMatrixRobustBufferAccess: VkBool32): VkPhysicalDeviceCooperativeMatrixFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.cooperativeMatrix = cooperativeMatrix - result.cooperativeMatrixRobustBufferAccess = cooperativeMatrixRobustBufferAccess + result = VkPhysicalDeviceCooperativeMatrixFeaturesKHR( + sType: sType, + pNext: pNext, + cooperativeMatrix: cooperativeMatrix, + cooperativeMatrixRobustBufferAccess: cooperativeMatrixRobustBufferAccess, + ) proc newVkCooperativeMatrixPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, MSize: uint32, NSize: uint32, KSize: uint32, AType: VkComponentTypeKHR, BType: VkComponentTypeKHR, CType: VkComponentTypeKHR, ResultType: VkComponentTypeKHR, saturatingAccumulation: VkBool32, scope: VkScopeKHR): VkCooperativeMatrixPropertiesKHR = - result.sType = sType - result.pNext = pNext - result.MSize = MSize - result.NSize = NSize - result.KSize = KSize - result.AType = AType - result.BType = BType - result.CType = CType - result.ResultType = ResultType - result.saturatingAccumulation = saturatingAccumulation - result.scope = scope + result = VkCooperativeMatrixPropertiesKHR( + sType: sType, + pNext: pNext, + MSize: MSize, + NSize: NSize, + KSize: KSize, + AType: AType, + BType: BType, + CType: CType, + ResultType: ResultType, + saturatingAccumulation: saturatingAccumulation, + scope: scope, + ) proc newVkPhysicalDeviceCooperativeMatrixPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, cooperativeMatrixSupportedStages: VkShaderStageFlags): VkPhysicalDeviceCooperativeMatrixPropertiesKHR = - result.sType = sType - result.pNext = pNext - result.cooperativeMatrixSupportedStages = cooperativeMatrixSupportedStages + result = VkPhysicalDeviceCooperativeMatrixPropertiesKHR( + sType: sType, + pNext: pNext, + cooperativeMatrixSupportedStages: cooperativeMatrixSupportedStages, + ) proc newVkPhysicalDeviceShaderEnqueuePropertiesAMDX*(sType: VkStructureType, pNext: pointer = nil, maxExecutionGraphDepth: uint32, maxExecutionGraphShaderOutputNodes: uint32, maxExecutionGraphShaderPayloadSize: uint32, maxExecutionGraphShaderPayloadCount: uint32, executionGraphDispatchAddressAlignment: uint32): VkPhysicalDeviceShaderEnqueuePropertiesAMDX = - result.sType = sType - result.pNext = pNext - result.maxExecutionGraphDepth = maxExecutionGraphDepth - result.maxExecutionGraphShaderOutputNodes = maxExecutionGraphShaderOutputNodes - result.maxExecutionGraphShaderPayloadSize = maxExecutionGraphShaderPayloadSize - result.maxExecutionGraphShaderPayloadCount = maxExecutionGraphShaderPayloadCount - result.executionGraphDispatchAddressAlignment = executionGraphDispatchAddressAlignment + result = VkPhysicalDeviceShaderEnqueuePropertiesAMDX( + sType: sType, + pNext: pNext, + maxExecutionGraphDepth: maxExecutionGraphDepth, + maxExecutionGraphShaderOutputNodes: maxExecutionGraphShaderOutputNodes, + maxExecutionGraphShaderPayloadSize: maxExecutionGraphShaderPayloadSize, + maxExecutionGraphShaderPayloadCount: maxExecutionGraphShaderPayloadCount, + executionGraphDispatchAddressAlignment: executionGraphDispatchAddressAlignment, + ) proc newVkPhysicalDeviceShaderEnqueueFeaturesAMDX*(sType: VkStructureType, pNext: pointer = nil, shaderEnqueue: VkBool32): VkPhysicalDeviceShaderEnqueueFeaturesAMDX = - result.sType = sType - result.pNext = pNext - result.shaderEnqueue = shaderEnqueue + result = VkPhysicalDeviceShaderEnqueueFeaturesAMDX( + sType: sType, + pNext: pNext, + shaderEnqueue: shaderEnqueue, + ) proc newVkExecutionGraphPipelineCreateInfoAMDX*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, pLibraryInfo: ptr VkPipelineLibraryCreateInfoKHR, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkExecutionGraphPipelineCreateInfoAMDX = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.stageCount = stageCount - result.pStages = pStages - result.pLibraryInfo = pLibraryInfo - result.layout = layout - result.basePipelineHandle = basePipelineHandle - result.basePipelineIndex = basePipelineIndex + result = VkExecutionGraphPipelineCreateInfoAMDX( + sType: sType, + pNext: pNext, + flags: flags, + stageCount: stageCount, + pStages: pStages, + pLibraryInfo: pLibraryInfo, + layout: layout, + basePipelineHandle: basePipelineHandle, + basePipelineIndex: basePipelineIndex, + ) proc newVkPipelineShaderStageNodeCreateInfoAMDX*(sType: VkStructureType, pNext: pointer = nil, pName: cstring, index: uint32): VkPipelineShaderStageNodeCreateInfoAMDX = - result.sType = sType - result.pNext = pNext - result.pName = pName - result.index = index + result = VkPipelineShaderStageNodeCreateInfoAMDX( + sType: sType, + pNext: pNext, + pName: pName, + index: index, + ) proc newVkExecutionGraphPipelineScratchSizeAMDX*(sType: VkStructureType, pNext: pointer = nil, size: VkDeviceSize): VkExecutionGraphPipelineScratchSizeAMDX = - result.sType = sType - result.pNext = pNext - result.size = size + result = VkExecutionGraphPipelineScratchSizeAMDX( + sType: sType, + pNext: pNext, + size: size, + ) proc newVkDispatchGraphInfoAMDX*(nodeIndex: uint32, payloadCount: uint32, payloads: VkDeviceOrHostAddressConstAMDX, payloadStride: uint64): VkDispatchGraphInfoAMDX = - result.nodeIndex = nodeIndex - result.payloadCount = payloadCount - result.payloads = payloads - result.payloadStride = payloadStride + result = VkDispatchGraphInfoAMDX( + nodeIndex: nodeIndex, + payloadCount: payloadCount, + payloads: payloads, + payloadStride: payloadStride, + ) proc newVkDispatchGraphCountInfoAMDX*(count: uint32, infos: VkDeviceOrHostAddressConstAMDX, stride: uint64): VkDispatchGraphCountInfoAMDX = - result.count = count - result.infos = infos - result.stride = stride + result = VkDispatchGraphCountInfoAMDX( + count: count, + infos: infos, + stride: stride, + ) proc newVkBindMemoryStatusKHR*(sType: VkStructureType, pNext: pointer = nil, pResult: ptr VkResult): VkBindMemoryStatusKHR = - result.sType = sType - result.pNext = pNext - result.pResult = pResult + result = VkBindMemoryStatusKHR( + sType: sType, + pNext: pNext, + pResult: pResult, + ) proc newVkBindDescriptorSetsInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stageFlags: VkShaderStageFlags, layout: VkPipelineLayout, firstSet: uint32, descriptorSetCount: uint32, pDescriptorSets: ptr VkDescriptorSet, dynamicOffsetCount: uint32, pDynamicOffsets: ptr uint32): VkBindDescriptorSetsInfoKHR = - result.sType = sType - result.pNext = pNext - result.stageFlags = stageFlags - result.layout = layout - result.firstSet = firstSet - result.descriptorSetCount = descriptorSetCount - result.pDescriptorSets = pDescriptorSets - result.dynamicOffsetCount = dynamicOffsetCount - result.pDynamicOffsets = pDynamicOffsets + result = VkBindDescriptorSetsInfoKHR( + sType: sType, + pNext: pNext, + stageFlags: stageFlags, + layout: layout, + firstSet: firstSet, + descriptorSetCount: descriptorSetCount, + pDescriptorSets: pDescriptorSets, + dynamicOffsetCount: dynamicOffsetCount, + pDynamicOffsets: pDynamicOffsets, + ) proc newVkPushConstantsInfoKHR*(sType: VkStructureType, pNext: pointer = nil, layout: VkPipelineLayout, stageFlags: VkShaderStageFlags, offset: uint32, size: uint32, pValues: pointer = nil): VkPushConstantsInfoKHR = - result.sType = sType - result.pNext = pNext - result.layout = layout - result.stageFlags = stageFlags - result.offset = offset - result.size = size - result.pValues = pValues + result = VkPushConstantsInfoKHR( + sType: sType, + pNext: pNext, + layout: layout, + stageFlags: stageFlags, + offset: offset, + size: size, + pValues: pValues, + ) proc newVkPushDescriptorSetInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stageFlags: VkShaderStageFlags, layout: VkPipelineLayout, set: uint32, descriptorWriteCount: uint32, pDescriptorWrites: ptr VkWriteDescriptorSet): VkPushDescriptorSetInfoKHR = - result.sType = sType - result.pNext = pNext - result.stageFlags = stageFlags - result.layout = layout - result.set = set - result.descriptorWriteCount = descriptorWriteCount - result.pDescriptorWrites = pDescriptorWrites + result = VkPushDescriptorSetInfoKHR( + sType: sType, + pNext: pNext, + stageFlags: stageFlags, + layout: layout, + set: set, + descriptorWriteCount: descriptorWriteCount, + pDescriptorWrites: pDescriptorWrites, + ) proc newVkPushDescriptorSetWithTemplateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: uint32, pData: pointer = nil): VkPushDescriptorSetWithTemplateInfoKHR = - result.sType = sType - result.pNext = pNext - result.descriptorUpdateTemplate = descriptorUpdateTemplate - result.layout = layout - result.set = set - result.pData = pData + result = VkPushDescriptorSetWithTemplateInfoKHR( + sType: sType, + pNext: pNext, + descriptorUpdateTemplate: descriptorUpdateTemplate, + layout: layout, + set: set, + pData: pData, + ) proc newVkSetDescriptorBufferOffsetsInfoEXT*(sType: VkStructureType, pNext: pointer = nil, stageFlags: VkShaderStageFlags, layout: VkPipelineLayout, firstSet: uint32, setCount: uint32, pBufferIndices: ptr uint32, pOffsets: ptr VkDeviceSize): VkSetDescriptorBufferOffsetsInfoEXT = - result.sType = sType - result.pNext = pNext - result.stageFlags = stageFlags - result.layout = layout - result.firstSet = firstSet - result.setCount = setCount - result.pBufferIndices = pBufferIndices - result.pOffsets = pOffsets + result = VkSetDescriptorBufferOffsetsInfoEXT( + sType: sType, + pNext: pNext, + stageFlags: stageFlags, + layout: layout, + firstSet: firstSet, + setCount: setCount, + pBufferIndices: pBufferIndices, + pOffsets: pOffsets, + ) proc newVkBindDescriptorBufferEmbeddedSamplersInfoEXT*(sType: VkStructureType, pNext: pointer = nil, stageFlags: VkShaderStageFlags, layout: VkPipelineLayout, set: uint32): VkBindDescriptorBufferEmbeddedSamplersInfoEXT = - result.sType = sType - result.pNext = pNext - result.stageFlags = stageFlags - result.layout = layout - result.set = set + result = VkBindDescriptorBufferEmbeddedSamplersInfoEXT( + sType: sType, + pNext: pNext, + stageFlags: stageFlags, + layout: layout, + set: set, + ) proc newVkPhysicalDeviceCubicClampFeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, cubicRangeClamp: VkBool32): VkPhysicalDeviceCubicClampFeaturesQCOM = - result.sType = sType - result.pNext = pNext - result.cubicRangeClamp = cubicRangeClamp + result = VkPhysicalDeviceCubicClampFeaturesQCOM( + sType: sType, + pNext: pNext, + cubicRangeClamp: cubicRangeClamp, + ) proc newVkPhysicalDeviceYcbcrDegammaFeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, ycbcrDegamma: VkBool32): VkPhysicalDeviceYcbcrDegammaFeaturesQCOM = - result.sType = sType - result.pNext = pNext - result.ycbcrDegamma = ycbcrDegamma + result = VkPhysicalDeviceYcbcrDegammaFeaturesQCOM( + sType: sType, + pNext: pNext, + ycbcrDegamma: ycbcrDegamma, + ) proc newVkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, enableYDegamma: VkBool32, enableCbCrDegamma: VkBool32): VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM = - result.sType = sType - result.pNext = pNext - result.enableYDegamma = enableYDegamma - result.enableCbCrDegamma = enableCbCrDegamma + result = VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM( + sType: sType, + pNext: pNext, + enableYDegamma: enableYDegamma, + enableCbCrDegamma: enableCbCrDegamma, + ) proc newVkPhysicalDeviceCubicWeightsFeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, selectableCubicWeights: VkBool32): VkPhysicalDeviceCubicWeightsFeaturesQCOM = - result.sType = sType - result.pNext = pNext - result.selectableCubicWeights = selectableCubicWeights + result = VkPhysicalDeviceCubicWeightsFeaturesQCOM( + sType: sType, + pNext: pNext, + selectableCubicWeights: selectableCubicWeights, + ) proc newVkSamplerCubicWeightsCreateInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, cubicWeights: VkCubicFilterWeightsQCOM): VkSamplerCubicWeightsCreateInfoQCOM = - result.sType = sType - result.pNext = pNext - result.cubicWeights = cubicWeights + result = VkSamplerCubicWeightsCreateInfoQCOM( + sType: sType, + pNext: pNext, + cubicWeights: cubicWeights, + ) proc newVkBlitImageCubicWeightsInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, cubicWeights: VkCubicFilterWeightsQCOM): VkBlitImageCubicWeightsInfoQCOM = - result.sType = sType - result.pNext = pNext - result.cubicWeights = cubicWeights + result = VkBlitImageCubicWeightsInfoQCOM( + sType: sType, + pNext: pNext, + cubicWeights: cubicWeights, + ) proc newVkPhysicalDeviceImageProcessing2FeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, textureBlockMatch2: VkBool32): VkPhysicalDeviceImageProcessing2FeaturesQCOM = - result.sType = sType - result.pNext = pNext - result.textureBlockMatch2 = textureBlockMatch2 + result = VkPhysicalDeviceImageProcessing2FeaturesQCOM( + sType: sType, + pNext: pNext, + textureBlockMatch2: textureBlockMatch2, + ) proc newVkPhysicalDeviceImageProcessing2PropertiesQCOM*(sType: VkStructureType, pNext: pointer = nil, maxBlockMatchWindow: VkExtent2D): VkPhysicalDeviceImageProcessing2PropertiesQCOM = - result.sType = sType - result.pNext = pNext - result.maxBlockMatchWindow = maxBlockMatchWindow + result = VkPhysicalDeviceImageProcessing2PropertiesQCOM( + sType: sType, + pNext: pNext, + maxBlockMatchWindow: maxBlockMatchWindow, + ) proc newVkSamplerBlockMatchWindowCreateInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, windowExtent: VkExtent2D, windowCompareMode: VkBlockMatchWindowCompareModeQCOM): VkSamplerBlockMatchWindowCreateInfoQCOM = - result.sType = sType - result.pNext = pNext - result.windowExtent = windowExtent - result.windowCompareMode = windowCompareMode + result = VkSamplerBlockMatchWindowCreateInfoQCOM( + sType: sType, + pNext: pNext, + windowExtent: windowExtent, + windowCompareMode: windowCompareMode, + ) proc newVkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, descriptorPoolOverallocation: VkBool32): VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV = - result.sType = sType - result.pNext = pNext - result.descriptorPoolOverallocation = descriptorPoolOverallocation + result = VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV( + sType: sType, + pNext: pNext, + descriptorPoolOverallocation: descriptorPoolOverallocation, + ) proc newVkPhysicalDeviceLayeredDriverPropertiesMSFT*(sType: VkStructureType, pNext: pointer = nil, underlyingAPI: VkLayeredDriverUnderlyingApiMSFT): VkPhysicalDeviceLayeredDriverPropertiesMSFT = - result.sType = sType - result.pNext = pNext - result.underlyingAPI = underlyingAPI + result = VkPhysicalDeviceLayeredDriverPropertiesMSFT( + sType: sType, + pNext: pNext, + underlyingAPI: underlyingAPI, + ) proc newVkPhysicalDevicePerStageDescriptorSetFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, perStageDescriptorSet: VkBool32, dynamicPipelineLayout: VkBool32): VkPhysicalDevicePerStageDescriptorSetFeaturesNV = - result.sType = sType - result.pNext = pNext - result.perStageDescriptorSet = perStageDescriptorSet - result.dynamicPipelineLayout = dynamicPipelineLayout + result = VkPhysicalDevicePerStageDescriptorSetFeaturesNV( + sType: sType, + pNext: pNext, + perStageDescriptorSet: perStageDescriptorSet, + dynamicPipelineLayout: dynamicPipelineLayout, + ) proc newVkPhysicalDeviceExternalFormatResolveFeaturesANDROID*(sType: VkStructureType, pNext: pointer = nil, externalFormatResolve: VkBool32): VkPhysicalDeviceExternalFormatResolveFeaturesANDROID = - result.sType = sType - result.pNext = pNext - result.externalFormatResolve = externalFormatResolve + result = VkPhysicalDeviceExternalFormatResolveFeaturesANDROID( + sType: sType, + pNext: pNext, + externalFormatResolve: externalFormatResolve, + ) proc newVkPhysicalDeviceExternalFormatResolvePropertiesANDROID*(sType: VkStructureType, pNext: pointer = nil, nullColorAttachmentWithExternalFormatResolve: VkBool32, externalFormatResolveChromaOffsetX: VkChromaLocation, externalFormatResolveChromaOffsetY: VkChromaLocation): VkPhysicalDeviceExternalFormatResolvePropertiesANDROID = - result.sType = sType - result.pNext = pNext - result.nullColorAttachmentWithExternalFormatResolve = nullColorAttachmentWithExternalFormatResolve - result.externalFormatResolveChromaOffsetX = externalFormatResolveChromaOffsetX - result.externalFormatResolveChromaOffsetY = externalFormatResolveChromaOffsetY + result = VkPhysicalDeviceExternalFormatResolvePropertiesANDROID( + sType: sType, + pNext: pNext, + nullColorAttachmentWithExternalFormatResolve: nullColorAttachmentWithExternalFormatResolve, + externalFormatResolveChromaOffsetX: externalFormatResolveChromaOffsetX, + externalFormatResolveChromaOffsetY: externalFormatResolveChromaOffsetY, + ) proc newVkAndroidHardwareBufferFormatResolvePropertiesANDROID*(sType: VkStructureType, pNext: pointer = nil, colorAttachmentFormat: VkFormat): VkAndroidHardwareBufferFormatResolvePropertiesANDROID = - result.sType = sType - result.pNext = pNext - result.colorAttachmentFormat = colorAttachmentFormat + result = VkAndroidHardwareBufferFormatResolvePropertiesANDROID( + sType: sType, + pNext: pNext, + colorAttachmentFormat: colorAttachmentFormat, + ) proc newVkLatencySleepModeInfoNV*(sType: VkStructureType, pNext: pointer = nil, lowLatencyMode: VkBool32, lowLatencyBoost: VkBool32, minimumIntervalUs: uint32): VkLatencySleepModeInfoNV = - result.sType = sType - result.pNext = pNext - result.lowLatencyMode = lowLatencyMode - result.lowLatencyBoost = lowLatencyBoost - result.minimumIntervalUs = minimumIntervalUs + result = VkLatencySleepModeInfoNV( + sType: sType, + pNext: pNext, + lowLatencyMode: lowLatencyMode, + lowLatencyBoost: lowLatencyBoost, + minimumIntervalUs: minimumIntervalUs, + ) proc newVkLatencySleepInfoNV*(sType: VkStructureType, pNext: pointer = nil, signalSemaphore: VkSemaphore, value: uint64): VkLatencySleepInfoNV = - result.sType = sType - result.pNext = pNext - result.signalSemaphore = signalSemaphore - result.value = value + result = VkLatencySleepInfoNV( + sType: sType, + pNext: pNext, + signalSemaphore: signalSemaphore, + value: value, + ) proc newVkSetLatencyMarkerInfoNV*(sType: VkStructureType, pNext: pointer = nil, presentID: uint64, marker: VkLatencyMarkerNV): VkSetLatencyMarkerInfoNV = - result.sType = sType - result.pNext = pNext - result.presentID = presentID - result.marker = marker + result = VkSetLatencyMarkerInfoNV( + sType: sType, + pNext: pNext, + presentID: presentID, + marker: marker, + ) proc newVkGetLatencyMarkerInfoNV*(sType: VkStructureType, pNext: pointer = nil, timingCount: uint32, pTimings: ptr VkLatencyTimingsFrameReportNV): VkGetLatencyMarkerInfoNV = - result.sType = sType - result.pNext = pNext - result.timingCount = timingCount - result.pTimings = pTimings + result = VkGetLatencyMarkerInfoNV( + sType: sType, + pNext: pNext, + timingCount: timingCount, + pTimings: pTimings, + ) proc newVkLatencyTimingsFrameReportNV*(sType: VkStructureType, pNext: pointer = nil, presentID: uint64, inputSampleTimeUs: uint64, simStartTimeUs: uint64, simEndTimeUs: uint64, renderSubmitStartTimeUs: uint64, renderSubmitEndTimeUs: uint64, presentStartTimeUs: uint64, presentEndTimeUs: uint64, driverStartTimeUs: uint64, driverEndTimeUs: uint64, osRenderQueueStartTimeUs: uint64, osRenderQueueEndTimeUs: uint64, gpuRenderStartTimeUs: uint64, gpuRenderEndTimeUs: uint64): VkLatencyTimingsFrameReportNV = - result.sType = sType - result.pNext = pNext - result.presentID = presentID - result.inputSampleTimeUs = inputSampleTimeUs - result.simStartTimeUs = simStartTimeUs - result.simEndTimeUs = simEndTimeUs - result.renderSubmitStartTimeUs = renderSubmitStartTimeUs - result.renderSubmitEndTimeUs = renderSubmitEndTimeUs - result.presentStartTimeUs = presentStartTimeUs - result.presentEndTimeUs = presentEndTimeUs - result.driverStartTimeUs = driverStartTimeUs - result.driverEndTimeUs = driverEndTimeUs - result.osRenderQueueStartTimeUs = osRenderQueueStartTimeUs - result.osRenderQueueEndTimeUs = osRenderQueueEndTimeUs - result.gpuRenderStartTimeUs = gpuRenderStartTimeUs - result.gpuRenderEndTimeUs = gpuRenderEndTimeUs + result = VkLatencyTimingsFrameReportNV( + sType: sType, + pNext: pNext, + presentID: presentID, + inputSampleTimeUs: inputSampleTimeUs, + simStartTimeUs: simStartTimeUs, + simEndTimeUs: simEndTimeUs, + renderSubmitStartTimeUs: renderSubmitStartTimeUs, + renderSubmitEndTimeUs: renderSubmitEndTimeUs, + presentStartTimeUs: presentStartTimeUs, + presentEndTimeUs: presentEndTimeUs, + driverStartTimeUs: driverStartTimeUs, + driverEndTimeUs: driverEndTimeUs, + osRenderQueueStartTimeUs: osRenderQueueStartTimeUs, + osRenderQueueEndTimeUs: osRenderQueueEndTimeUs, + gpuRenderStartTimeUs: gpuRenderStartTimeUs, + gpuRenderEndTimeUs: gpuRenderEndTimeUs, + ) proc newVkOutOfBandQueueTypeInfoNV*(sType: VkStructureType, pNext: pointer = nil, queueType: VkOutOfBandQueueTypeNV): VkOutOfBandQueueTypeInfoNV = - result.sType = sType - result.pNext = pNext - result.queueType = queueType + result = VkOutOfBandQueueTypeInfoNV( + sType: sType, + pNext: pNext, + queueType: queueType, + ) proc newVkLatencySubmissionPresentIdNV*(sType: VkStructureType, pNext: pointer = nil, presentID: uint64): VkLatencySubmissionPresentIdNV = - result.sType = sType - result.pNext = pNext - result.presentID = presentID + result = VkLatencySubmissionPresentIdNV( + sType: sType, + pNext: pNext, + presentID: presentID, + ) proc newVkSwapchainLatencyCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, latencyModeEnable: VkBool32): VkSwapchainLatencyCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.latencyModeEnable = latencyModeEnable + result = VkSwapchainLatencyCreateInfoNV( + sType: sType, + pNext: pNext, + latencyModeEnable: latencyModeEnable, + ) proc newVkLatencySurfaceCapabilitiesNV*(sType: VkStructureType, pNext: pointer = nil, presentModeCount: uint32, pPresentModes: ptr VkPresentModeKHR): VkLatencySurfaceCapabilitiesNV = - result.sType = sType - result.pNext = pNext - result.presentModeCount = presentModeCount - result.pPresentModes = pPresentModes + result = VkLatencySurfaceCapabilitiesNV( + sType: sType, + pNext: pNext, + presentModeCount: presentModeCount, + pPresentModes: pPresentModes, + ) proc newVkPhysicalDeviceCudaKernelLaunchFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, cudaKernelLaunchFeatures: VkBool32): VkPhysicalDeviceCudaKernelLaunchFeaturesNV = - result.sType = sType - result.pNext = pNext - result.cudaKernelLaunchFeatures = cudaKernelLaunchFeatures + result = VkPhysicalDeviceCudaKernelLaunchFeaturesNV( + sType: sType, + pNext: pNext, + cudaKernelLaunchFeatures: cudaKernelLaunchFeatures, + ) proc newVkPhysicalDeviceCudaKernelLaunchPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, computeCapabilityMinor: uint32, computeCapabilityMajor: uint32): VkPhysicalDeviceCudaKernelLaunchPropertiesNV = - result.sType = sType - result.pNext = pNext - result.computeCapabilityMinor = computeCapabilityMinor - result.computeCapabilityMajor = computeCapabilityMajor + result = VkPhysicalDeviceCudaKernelLaunchPropertiesNV( + sType: sType, + pNext: pNext, + computeCapabilityMinor: computeCapabilityMinor, + computeCapabilityMajor: computeCapabilityMajor, + ) proc newVkDeviceQueueShaderCoreControlCreateInfoARM*(sType: VkStructureType, pNext: pointer = nil, shaderCoreCount: uint32): VkDeviceQueueShaderCoreControlCreateInfoARM = - result.sType = sType - result.pNext = pNext - result.shaderCoreCount = shaderCoreCount + result = VkDeviceQueueShaderCoreControlCreateInfoARM( + sType: sType, + pNext: pNext, + shaderCoreCount: shaderCoreCount, + ) proc newVkPhysicalDeviceSchedulingControlsFeaturesARM*(sType: VkStructureType, pNext: pointer = nil, schedulingControls: VkBool32): VkPhysicalDeviceSchedulingControlsFeaturesARM = - result.sType = sType - result.pNext = pNext - result.schedulingControls = schedulingControls + result = VkPhysicalDeviceSchedulingControlsFeaturesARM( + sType: sType, + pNext: pNext, + schedulingControls: schedulingControls, + ) proc newVkPhysicalDeviceSchedulingControlsPropertiesARM*(sType: VkStructureType, pNext: pointer = nil, schedulingControlsFlags: VkPhysicalDeviceSchedulingControlsFlagsARM): VkPhysicalDeviceSchedulingControlsPropertiesARM = - result.sType = sType - result.pNext = pNext - result.schedulingControlsFlags = schedulingControlsFlags + result = VkPhysicalDeviceSchedulingControlsPropertiesARM( + sType: sType, + pNext: pNext, + schedulingControlsFlags: schedulingControlsFlags, + ) proc newVkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG*(sType: VkStructureType, pNext: pointer = nil, relaxedLineRasterization: VkBool32): VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG = - result.sType = sType - result.pNext = pNext - result.relaxedLineRasterization = relaxedLineRasterization + result = VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG( + sType: sType, + pNext: pNext, + relaxedLineRasterization: relaxedLineRasterization, + ) proc newVkPhysicalDeviceRenderPassStripedFeaturesARM*(sType: VkStructureType, pNext: pointer = nil, renderPassStriped: VkBool32): VkPhysicalDeviceRenderPassStripedFeaturesARM = - result.sType = sType - result.pNext = pNext - result.renderPassStriped = renderPassStriped + result = VkPhysicalDeviceRenderPassStripedFeaturesARM( + sType: sType, + pNext: pNext, + renderPassStriped: renderPassStriped, + ) proc newVkPhysicalDeviceRenderPassStripedPropertiesARM*(sType: VkStructureType, pNext: pointer = nil, renderPassStripeGranularity: VkExtent2D, maxRenderPassStripes: uint32): VkPhysicalDeviceRenderPassStripedPropertiesARM = - result.sType = sType - result.pNext = pNext - result.renderPassStripeGranularity = renderPassStripeGranularity - result.maxRenderPassStripes = maxRenderPassStripes + result = VkPhysicalDeviceRenderPassStripedPropertiesARM( + sType: sType, + pNext: pNext, + renderPassStripeGranularity: renderPassStripeGranularity, + maxRenderPassStripes: maxRenderPassStripes, + ) proc newVkRenderPassStripeInfoARM*(sType: VkStructureType, pNext: pointer = nil, stripeArea: VkRect2D): VkRenderPassStripeInfoARM = - result.sType = sType - result.pNext = pNext - result.stripeArea = stripeArea + result = VkRenderPassStripeInfoARM( + sType: sType, + pNext: pNext, + stripeArea: stripeArea, + ) proc newVkRenderPassStripeBeginInfoARM*(sType: VkStructureType, pNext: pointer = nil, stripeInfoCount: uint32, pStripeInfos: ptr VkRenderPassStripeInfoARM): VkRenderPassStripeBeginInfoARM = - result.sType = sType - result.pNext = pNext - result.stripeInfoCount = stripeInfoCount - result.pStripeInfos = pStripeInfos + result = VkRenderPassStripeBeginInfoARM( + sType: sType, + pNext: pNext, + stripeInfoCount: stripeInfoCount, + pStripeInfos: pStripeInfos, + ) proc newVkRenderPassStripeSubmitInfoARM*(sType: VkStructureType, pNext: pointer = nil, stripeSemaphoreInfoCount: uint32, pStripeSemaphoreInfos: ptr VkSemaphoreSubmitInfo): VkRenderPassStripeSubmitInfoARM = - result.sType = sType - result.pNext = pNext - result.stripeSemaphoreInfoCount = stripeSemaphoreInfoCount - result.pStripeSemaphoreInfos = pStripeSemaphoreInfos + result = VkRenderPassStripeSubmitInfoARM( + sType: sType, + pNext: pNext, + stripeSemaphoreInfoCount: stripeSemaphoreInfoCount, + pStripeSemaphoreInfos: pStripeSemaphoreInfos, + ) proc newVkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, shaderMaximalReconvergence: VkBool32): VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.shaderMaximalReconvergence = shaderMaximalReconvergence + result = VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR( + sType: sType, + pNext: pNext, + shaderMaximalReconvergence: shaderMaximalReconvergence, + ) proc newVkPhysicalDeviceShaderSubgroupRotateFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, shaderSubgroupRotate: VkBool32, shaderSubgroupRotateClustered: VkBool32): VkPhysicalDeviceShaderSubgroupRotateFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.shaderSubgroupRotate = shaderSubgroupRotate - result.shaderSubgroupRotateClustered = shaderSubgroupRotateClustered + result = VkPhysicalDeviceShaderSubgroupRotateFeaturesKHR( + sType: sType, + pNext: pNext, + shaderSubgroupRotate: shaderSubgroupRotate, + shaderSubgroupRotateClustered: shaderSubgroupRotateClustered, + ) proc newVkPhysicalDeviceShaderExpectAssumeFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, shaderExpectAssume: VkBool32): VkPhysicalDeviceShaderExpectAssumeFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.shaderExpectAssume = shaderExpectAssume + result = VkPhysicalDeviceShaderExpectAssumeFeaturesKHR( + sType: sType, + pNext: pNext, + shaderExpectAssume: shaderExpectAssume, + ) proc newVkPhysicalDeviceShaderFloatControls2FeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, shaderFloatControls2: VkBool32): VkPhysicalDeviceShaderFloatControls2FeaturesKHR = - result.sType = sType - result.pNext = pNext - result.shaderFloatControls2 = shaderFloatControls2 + result = VkPhysicalDeviceShaderFloatControls2FeaturesKHR( + sType: sType, + pNext: pNext, + shaderFloatControls2: shaderFloatControls2, + ) proc newVkPhysicalDeviceDynamicRenderingLocalReadFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, dynamicRenderingLocalRead: VkBool32): VkPhysicalDeviceDynamicRenderingLocalReadFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.dynamicRenderingLocalRead = dynamicRenderingLocalRead + result = VkPhysicalDeviceDynamicRenderingLocalReadFeaturesKHR( + sType: sType, + pNext: pNext, + dynamicRenderingLocalRead: dynamicRenderingLocalRead, + ) proc newVkRenderingAttachmentLocationInfoKHR*(sType: VkStructureType, pNext: pointer = nil, colorAttachmentCount: uint32, pColorAttachmentLocations: ptr uint32): VkRenderingAttachmentLocationInfoKHR = - result.sType = sType - result.pNext = pNext - result.colorAttachmentCount = colorAttachmentCount - result.pColorAttachmentLocations = pColorAttachmentLocations + result = VkRenderingAttachmentLocationInfoKHR( + sType: sType, + pNext: pNext, + colorAttachmentCount: colorAttachmentCount, + pColorAttachmentLocations: pColorAttachmentLocations, + ) proc newVkRenderingInputAttachmentIndexInfoKHR*(sType: VkStructureType, pNext: pointer = nil, colorAttachmentCount: uint32, pColorAttachmentInputIndices: ptr uint32, pDepthInputAttachmentIndex: ptr uint32, pStencilInputAttachmentIndex: ptr uint32): VkRenderingInputAttachmentIndexInfoKHR = - result.sType = sType - result.pNext = pNext - result.colorAttachmentCount = colorAttachmentCount - result.pColorAttachmentInputIndices = pColorAttachmentInputIndices - result.pDepthInputAttachmentIndex = pDepthInputAttachmentIndex - result.pStencilInputAttachmentIndex = pStencilInputAttachmentIndex + result = VkRenderingInputAttachmentIndexInfoKHR( + sType: sType, + pNext: pNext, + colorAttachmentCount: colorAttachmentCount, + pColorAttachmentInputIndices: pColorAttachmentInputIndices, + pDepthInputAttachmentIndex: pDepthInputAttachmentIndex, + pStencilInputAttachmentIndex: pStencilInputAttachmentIndex, + ) proc newVkPhysicalDeviceShaderQuadControlFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, shaderQuadControl: VkBool32): VkPhysicalDeviceShaderQuadControlFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.shaderQuadControl = shaderQuadControl + result = VkPhysicalDeviceShaderQuadControlFeaturesKHR( + sType: sType, + pNext: pNext, + shaderQuadControl: shaderQuadControl, + ) proc newVkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, shaderFloat16VectorAtomics: VkBool32): VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV = - result.sType = sType - result.pNext = pNext - result.shaderFloat16VectorAtomics = shaderFloat16VectorAtomics + result = VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV( + sType: sType, + pNext: pNext, + shaderFloat16VectorAtomics: shaderFloat16VectorAtomics, + ) proc newVkPhysicalDeviceMapMemoryPlacedFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, memoryMapPlaced: VkBool32, memoryMapRangePlaced: VkBool32, memoryUnmapReserve: VkBool32): VkPhysicalDeviceMapMemoryPlacedFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.memoryMapPlaced = memoryMapPlaced - result.memoryMapRangePlaced = memoryMapRangePlaced - result.memoryUnmapReserve = memoryUnmapReserve + result = VkPhysicalDeviceMapMemoryPlacedFeaturesEXT( + sType: sType, + pNext: pNext, + memoryMapPlaced: memoryMapPlaced, + memoryMapRangePlaced: memoryMapRangePlaced, + memoryUnmapReserve: memoryUnmapReserve, + ) proc newVkPhysicalDeviceMapMemoryPlacedPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, minPlacedMemoryMapAlignment: VkDeviceSize): VkPhysicalDeviceMapMemoryPlacedPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.minPlacedMemoryMapAlignment = minPlacedMemoryMapAlignment + result = VkPhysicalDeviceMapMemoryPlacedPropertiesEXT( + sType: sType, + pNext: pNext, + minPlacedMemoryMapAlignment: minPlacedMemoryMapAlignment, + ) proc newVkMemoryMapPlacedInfoEXT*(sType: VkStructureType, pNext: pointer = nil, pPlacedAddress: pointer = nil): VkMemoryMapPlacedInfoEXT = - result.sType = sType - result.pNext = pNext - result.pPlacedAddress = pPlacedAddress + result = VkMemoryMapPlacedInfoEXT( + sType: sType, + pNext: pNext, + pPlacedAddress: pPlacedAddress, + ) proc newVkPhysicalDeviceRawAccessChainsFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, shaderRawAccessChains: VkBool32): VkPhysicalDeviceRawAccessChainsFeaturesNV = - result.sType = sType - result.pNext = pNext - result.shaderRawAccessChains = shaderRawAccessChains + result = VkPhysicalDeviceRawAccessChainsFeaturesNV( + sType: sType, + pNext: pNext, + shaderRawAccessChains: shaderRawAccessChains, + ) # Procs var diff --git a/tools/generator.nim b/tools/generator.nim index 5e7487b..e2598b7 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -489,8 +489,10 @@ proc genConstructors(node: XmlNode, output: var string) = if m.argType == "pointer": output.add(" = nil") output.add("): {s.name} =\n".fmt) + output.add(" result = {s.name}(\n".fmt) for m in s.members: - output.add(" result.{m.name} = {m.name}\n".fmt) + output.add(" {m.name}: {m.name},\n".fmt) + output.add(" )\n") proc main() = if not os.fileExists("vk.xml"): From dfda5ff6f6a2d2a0b6e1def3ab2fdb673f67b786 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Mon, 29 Apr 2024 19:48:42 +0300 Subject: [PATCH 15/57] less bloat --- src/vulkan.nim | 2338 +++++++++++++++++++++---------------------- tools/generator.nim | 8 +- 2 files changed, 1176 insertions(+), 1170 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 17f1188..7004755 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -84,507 +84,507 @@ const type VkImageLayout* {.size: sizeof(int32).} = enum - Undefined = 0 - General = 1 - ColorAttachmentOptimal = 2 - DepthStencilAttachmentOptimal = 3 - DepthStencilReadOnlyOptimal = 4 - ShaderReadOnlyOptimal = 5 - TransferSrcOptimal = 6 - TransferDstOptimal = 7 - Preinitialized = 8 + Undefined + General + ColorAttachmentOptimal + DepthStencilAttachmentOptimal + DepthStencilReadOnlyOptimal + ShaderReadOnlyOptimal + TransferSrcOptimal + TransferDstOptimal + Preinitialized VkAttachmentLoadOp* {.size: sizeof(int32).} = enum - Load = 0 - Clear = 1 - DontCare = 2 + Load + Clear + DontCare VkAttachmentStoreOp* {.size: sizeof(int32).} = enum - Store = 0 - DontCare = 1 + Store + DontCare VkImageType* {.size: sizeof(int32).} = enum - N1d = 0 - N2d = 1 - N3d = 2 + N1d + N2d + N3d VkImageTiling* {.size: sizeof(int32).} = enum - Optimal = 0 - Linear = 1 + Optimal + Linear VkImageViewType* {.size: sizeof(int32).} = enum - N1d = 0 - N2d = 1 - N3d = 2 - Cube = 3 - N1dArray = 4 - N2dArray = 5 - CubeArray = 6 + N1d + N2d + N3d + Cube + N1dArray + N2dArray + CubeArray VkCommandBufferLevel* {.size: sizeof(int32).} = enum - Primary = 0 - Secondary = 1 + Primary + Secondary VkComponentSwizzle* {.size: sizeof(int32).} = enum - Identity = 0 - Zero = 1 - One = 2 - R = 3 - G = 4 - B = 5 - A = 6 + Identity + Zero + One + R + G + B + A VkDescriptorType* {.size: sizeof(int32).} = enum - Sampler = 0 - CombinedImageSampler = 1 - SampledImage = 2 - StorageImage = 3 - UniformTexelBuffer = 4 - StorageTexelBuffer = 5 - UniformBuffer = 6 - StorageBuffer = 7 - UniformBufferDynamic = 8 - StorageBufferDynamic = 9 - InputAttachment = 10 + Sampler + CombinedImageSampler + SampledImage + StorageImage + UniformTexelBuffer + StorageTexelBuffer + UniformBuffer + StorageBuffer + UniformBufferDynamic + StorageBufferDynamic + InputAttachment VkQueryType* {.size: sizeof(int32).} = enum - Occlusion = 0 - PipelineStatistics = 1 - Timestamp = 2 + Occlusion + PipelineStatistics + Timestamp VkBorderColor* {.size: sizeof(int32).} = enum - FloatTransparentBlack = 0 - IntTransparentBlack = 1 - FloatOpaqueBlack = 2 - IntOpaqueBlack = 3 - FloatOpaqueWhite = 4 - IntOpaqueWhite = 5 + FloatTransparentBlack + IntTransparentBlack + FloatOpaqueBlack + IntOpaqueBlack + FloatOpaqueWhite + IntOpaqueWhite VkPipelineBindPoint* {.size: sizeof(int32).} = enum - Graphics = 0 - Compute = 1 + Graphics + Compute VkPipelineCacheHeaderVersion* {.size: sizeof(int32).} = enum One = 1 VkPrimitiveTopology* {.size: sizeof(int32).} = enum - PointList = 0 - LineList = 1 - LineStrip = 2 - TriangleList = 3 - TriangleStrip = 4 - TriangleFan = 5 - LineListWithAdjacency = 6 - LineStripWithAdjacency = 7 - TriangleListWithAdjacency = 8 - TriangleStripWithAdjacency = 9 - PatchList = 10 + PointList + LineList + LineStrip + TriangleList + TriangleStrip + TriangleFan + LineListWithAdjacency + LineStripWithAdjacency + TriangleListWithAdjacency + TriangleStripWithAdjacency + PatchList VkSharingMode* {.size: sizeof(int32).} = enum - Exclusive = 0 - Concurrent = 1 + Exclusive + Concurrent VkIndexType* {.size: sizeof(int32).} = enum - Uint16 = 0 - Uint32 = 1 + Uint16 + Uint32 VkFilter* {.size: sizeof(int32).} = enum - Nearest = 0 - Linear = 1 + Nearest + Linear VkSamplerMipmapMode* {.size: sizeof(int32).} = enum - Nearest = 0 - Linear = 1 + Nearest + Linear VkSamplerAddressMode* {.size: sizeof(int32).} = enum - Repeat = 0 - MirroredRepeat = 1 - ClampToEdge = 2 - ClampToBorder = 3 + Repeat + MirroredRepeat + ClampToEdge + ClampToBorder VkCompareOp* {.size: sizeof(int32).} = enum - Never = 0 - Less = 1 - Equal = 2 - LessOrEqual = 3 - Greater = 4 - NotEqual = 5 - GreaterOrEqual = 6 - Always = 7 + Never + Less + Equal + LessOrEqual + Greater + NotEqual + GreaterOrEqual + Always VkPolygonMode* {.size: sizeof(int32).} = enum - Fill = 0 - Line = 1 - Point = 2 + Fill + Line + Point VkFrontFace* {.size: sizeof(int32).} = enum - CounterClockwise = 0 - Clockwise = 1 + CounterClockwise + Clockwise VkBlendFactor* {.size: sizeof(int32).} = enum - Zero = 0 - One = 1 - SrcColor = 2 - OneMinusSrcColor = 3 - DstColor = 4 - OneMinusDstColor = 5 - SrcAlpha = 6 - OneMinusSrcAlpha = 7 - DstAlpha = 8 - OneMinusDstAlpha = 9 - ConstantColor = 10 - OneMinusConstantColor = 11 - ConstantAlpha = 12 - OneMinusConstantAlpha = 13 - SrcAlphaSaturate = 14 - Src1Color = 15 - OneMinusSrc1Color = 16 - Src1Alpha = 17 - OneMinusSrc1Alpha = 18 + Zero + One + SrcColor + OneMinusSrcColor + DstColor + OneMinusDstColor + SrcAlpha + OneMinusSrcAlpha + DstAlpha + OneMinusDstAlpha + ConstantColor + OneMinusConstantColor + ConstantAlpha + OneMinusConstantAlpha + SrcAlphaSaturate + Src1Color + OneMinusSrc1Color + Src1Alpha + OneMinusSrc1Alpha VkBlendOp* {.size: sizeof(int32).} = enum - Add = 0 - Subtract = 1 - ReverseSubtract = 2 - Min = 3 - Max = 4 + Add + Subtract + ReverseSubtract + Min + Max VkStencilOp* {.size: sizeof(int32).} = enum - Keep = 0 - Zero = 1 - Replace = 2 - IncrementAndClamp = 3 - DecrementAndClamp = 4 - Invert = 5 - IncrementAndWrap = 6 - DecrementAndWrap = 7 + Keep + Zero + Replace + IncrementAndClamp + DecrementAndClamp + Invert + IncrementAndWrap + DecrementAndWrap VkLogicOp* {.size: sizeof(int32).} = enum - Clear = 0 - And = 1 - AndReverse = 2 - Copy = 3 - AndInverted = 4 - NoOp = 5 - Xor = 6 - Or = 7 - Nor = 8 - Equivalent = 9 - Invert = 10 - OrReverse = 11 - CopyInverted = 12 - OrInverted = 13 - Nand = 14 - Set = 15 + Clear + And + AndReverse + Copy + AndInverted + NoOp + Xor + Or + Nor + Equivalent + Invert + OrReverse + CopyInverted + OrInverted + Nand + Set VkInternalAllocationType* {.size: sizeof(int32).} = enum - Executable = 0 + Executable VkSystemAllocationScope* {.size: sizeof(int32).} = enum - Command = 0 - Object = 1 - Cache = 2 - Device = 3 - Instance = 4 + Command + Object + Cache + Device + Instance VkPhysicalDeviceType* {.size: sizeof(int32).} = enum - Other = 0 - IntegratedGpu = 1 - DiscreteGpu = 2 - VirtualGpu = 3 - Cpu = 4 + Other + IntegratedGpu + DiscreteGpu + VirtualGpu + Cpu VkVertexInputRate* {.size: sizeof(int32).} = enum - Vertex = 0 - Instance = 1 + Vertex + Instance VkFormat* {.size: sizeof(int32).} = enum - Undefined = 0 - R4g4UnormPack8 = 1 - R4g4b4a4UnormPack16 = 2 - B4g4r4a4UnormPack16 = 3 - R5g6b5UnormPack16 = 4 - B5g6r5UnormPack16 = 5 - R5g5b5a1UnormPack16 = 6 - B5g5r5a1UnormPack16 = 7 - A1r5g5b5UnormPack16 = 8 - R8Unorm = 9 - R8Snorm = 10 - R8Uscaled = 11 - R8Sscaled = 12 - R8Uint = 13 - R8Sint = 14 - R8Srgb = 15 - R8g8Unorm = 16 - R8g8Snorm = 17 - R8g8Uscaled = 18 - R8g8Sscaled = 19 - R8g8Uint = 20 - R8g8Sint = 21 - R8g8Srgb = 22 - R8g8b8Unorm = 23 - R8g8b8Snorm = 24 - R8g8b8Uscaled = 25 - R8g8b8Sscaled = 26 - R8g8b8Uint = 27 - R8g8b8Sint = 28 - R8g8b8Srgb = 29 - B8g8r8Unorm = 30 - B8g8r8Snorm = 31 - B8g8r8Uscaled = 32 - B8g8r8Sscaled = 33 - B8g8r8Uint = 34 - B8g8r8Sint = 35 - B8g8r8Srgb = 36 - R8g8b8a8Unorm = 37 - R8g8b8a8Snorm = 38 - R8g8b8a8Uscaled = 39 - R8g8b8a8Sscaled = 40 - R8g8b8a8Uint = 41 - R8g8b8a8Sint = 42 - R8g8b8a8Srgb = 43 - B8g8r8a8Unorm = 44 - B8g8r8a8Snorm = 45 - B8g8r8a8Uscaled = 46 - B8g8r8a8Sscaled = 47 - B8g8r8a8Uint = 48 - B8g8r8a8Sint = 49 - B8g8r8a8Srgb = 50 - A8b8g8r8UnormPack32 = 51 - A8b8g8r8SnormPack32 = 52 - A8b8g8r8UscaledPack32 = 53 - A8b8g8r8SscaledPack32 = 54 - A8b8g8r8UintPack32 = 55 - A8b8g8r8SintPack32 = 56 - A8b8g8r8SrgbPack32 = 57 - A2r10g10b10UnormPack32 = 58 - A2r10g10b10SnormPack32 = 59 - A2r10g10b10UscaledPack32 = 60 - A2r10g10b10SscaledPack32 = 61 - A2r10g10b10UintPack32 = 62 - A2r10g10b10SintPack32 = 63 - A2b10g10r10UnormPack32 = 64 - A2b10g10r10SnormPack32 = 65 - A2b10g10r10UscaledPack32 = 66 - A2b10g10r10SscaledPack32 = 67 - A2b10g10r10UintPack32 = 68 - A2b10g10r10SintPack32 = 69 - R16Unorm = 70 - R16Snorm = 71 - R16Uscaled = 72 - R16Sscaled = 73 - R16Uint = 74 - R16Sint = 75 - R16Sfloat = 76 - R16g16Unorm = 77 - R16g16Snorm = 78 - R16g16Uscaled = 79 - R16g16Sscaled = 80 - R16g16Uint = 81 - R16g16Sint = 82 - R16g16Sfloat = 83 - R16g16b16Unorm = 84 - R16g16b16Snorm = 85 - R16g16b16Uscaled = 86 - R16g16b16Sscaled = 87 - R16g16b16Uint = 88 - R16g16b16Sint = 89 - R16g16b16Sfloat = 90 - R16g16b16a16Unorm = 91 - R16g16b16a16Snorm = 92 - R16g16b16a16Uscaled = 93 - R16g16b16a16Sscaled = 94 - R16g16b16a16Uint = 95 - R16g16b16a16Sint = 96 - R16g16b16a16Sfloat = 97 - R32Uint = 98 - R32Sint = 99 - R32Sfloat = 100 - R32g32Uint = 101 - R32g32Sint = 102 - R32g32Sfloat = 103 - R32g32b32Uint = 104 - R32g32b32Sint = 105 - R32g32b32Sfloat = 106 - R32g32b32a32Uint = 107 - R32g32b32a32Sint = 108 - R32g32b32a32Sfloat = 109 - R64Uint = 110 - R64Sint = 111 - R64Sfloat = 112 - R64g64Uint = 113 - R64g64Sint = 114 - R64g64Sfloat = 115 - R64g64b64Uint = 116 - R64g64b64Sint = 117 - R64g64b64Sfloat = 118 - R64g64b64a64Uint = 119 - R64g64b64a64Sint = 120 - R64g64b64a64Sfloat = 121 - B10g11r11UfloatPack32 = 122 - E5b9g9r9UfloatPack32 = 123 - D16Unorm = 124 - X8D24UnormPack32 = 125 - D32Sfloat = 126 - S8Uint = 127 - D16UnormS8Uint = 128 - D24UnormS8Uint = 129 - D32SfloatS8Uint = 130 - Bc1RgbUnormBlock = 131 - Bc1RgbSrgbBlock = 132 - Bc1RgbaUnormBlock = 133 - Bc1RgbaSrgbBlock = 134 - Bc2UnormBlock = 135 - Bc2SrgbBlock = 136 - Bc3UnormBlock = 137 - Bc3SrgbBlock = 138 - Bc4UnormBlock = 139 - Bc4SnormBlock = 140 - Bc5UnormBlock = 141 - Bc5SnormBlock = 142 - Bc6hUfloatBlock = 143 - Bc6hSfloatBlock = 144 - Bc7UnormBlock = 145 - Bc7SrgbBlock = 146 - Etc2R8g8b8UnormBlock = 147 - Etc2R8g8b8SrgbBlock = 148 - Etc2R8g8b8a1UnormBlock = 149 - Etc2R8g8b8a1SrgbBlock = 150 - Etc2R8g8b8a8UnormBlock = 151 - Etc2R8g8b8a8SrgbBlock = 152 - EacR11UnormBlock = 153 - EacR11SnormBlock = 154 - EacR11g11UnormBlock = 155 - EacR11g11SnormBlock = 156 - Astc4x4UnormBlock = 157 - Astc4x4SrgbBlock = 158 - Astc5x4UnormBlock = 159 - Astc5x4SrgbBlock = 160 - Astc5x5UnormBlock = 161 - Astc5x5SrgbBlock = 162 - Astc6x5UnormBlock = 163 - Astc6x5SrgbBlock = 164 - Astc6x6UnormBlock = 165 - Astc6x6SrgbBlock = 166 - Astc8x5UnormBlock = 167 - Astc8x5SrgbBlock = 168 - Astc8x6UnormBlock = 169 - Astc8x6SrgbBlock = 170 - Astc8x8UnormBlock = 171 - Astc8x8SrgbBlock = 172 - Astc10x5UnormBlock = 173 - Astc10x5SrgbBlock = 174 - Astc10x6UnormBlock = 175 - Astc10x6SrgbBlock = 176 - Astc10x8UnormBlock = 177 - Astc10x8SrgbBlock = 178 - Astc10x10UnormBlock = 179 - Astc10x10SrgbBlock = 180 - Astc12x10UnormBlock = 181 - Astc12x10SrgbBlock = 182 - Astc12x12UnormBlock = 183 - Astc12x12SrgbBlock = 184 + Undefined + R4g4UnormPack8 + R4g4b4a4UnormPack16 + B4g4r4a4UnormPack16 + R5g6b5UnormPack16 + B5g6r5UnormPack16 + R5g5b5a1UnormPack16 + B5g5r5a1UnormPack16 + A1r5g5b5UnormPack16 + R8Unorm + R8Snorm + R8Uscaled + R8Sscaled + R8Uint + R8Sint + R8Srgb + R8g8Unorm + R8g8Snorm + R8g8Uscaled + R8g8Sscaled + R8g8Uint + R8g8Sint + R8g8Srgb + R8g8b8Unorm + R8g8b8Snorm + R8g8b8Uscaled + R8g8b8Sscaled + R8g8b8Uint + R8g8b8Sint + R8g8b8Srgb + B8g8r8Unorm + B8g8r8Snorm + B8g8r8Uscaled + B8g8r8Sscaled + B8g8r8Uint + B8g8r8Sint + B8g8r8Srgb + R8g8b8a8Unorm + R8g8b8a8Snorm + R8g8b8a8Uscaled + R8g8b8a8Sscaled + R8g8b8a8Uint + R8g8b8a8Sint + R8g8b8a8Srgb + B8g8r8a8Unorm + B8g8r8a8Snorm + B8g8r8a8Uscaled + B8g8r8a8Sscaled + B8g8r8a8Uint + B8g8r8a8Sint + B8g8r8a8Srgb + A8b8g8r8UnormPack32 + A8b8g8r8SnormPack32 + A8b8g8r8UscaledPack32 + A8b8g8r8SscaledPack32 + A8b8g8r8UintPack32 + A8b8g8r8SintPack32 + A8b8g8r8SrgbPack32 + A2r10g10b10UnormPack32 + A2r10g10b10SnormPack32 + A2r10g10b10UscaledPack32 + A2r10g10b10SscaledPack32 + A2r10g10b10UintPack32 + A2r10g10b10SintPack32 + A2b10g10r10UnormPack32 + A2b10g10r10SnormPack32 + A2b10g10r10UscaledPack32 + A2b10g10r10SscaledPack32 + A2b10g10r10UintPack32 + A2b10g10r10SintPack32 + R16Unorm + R16Snorm + R16Uscaled + R16Sscaled + R16Uint + R16Sint + R16Sfloat + R16g16Unorm + R16g16Snorm + R16g16Uscaled + R16g16Sscaled + R16g16Uint + R16g16Sint + R16g16Sfloat + R16g16b16Unorm + R16g16b16Snorm + R16g16b16Uscaled + R16g16b16Sscaled + R16g16b16Uint + R16g16b16Sint + R16g16b16Sfloat + R16g16b16a16Unorm + R16g16b16a16Snorm + R16g16b16a16Uscaled + R16g16b16a16Sscaled + R16g16b16a16Uint + R16g16b16a16Sint + R16g16b16a16Sfloat + R32Uint + R32Sint + R32Sfloat + R32g32Uint + R32g32Sint + R32g32Sfloat + R32g32b32Uint + R32g32b32Sint + R32g32b32Sfloat + R32g32b32a32Uint + R32g32b32a32Sint + R32g32b32a32Sfloat + R64Uint + R64Sint + R64Sfloat + R64g64Uint + R64g64Sint + R64g64Sfloat + R64g64b64Uint + R64g64b64Sint + R64g64b64Sfloat + R64g64b64a64Uint + R64g64b64a64Sint + R64g64b64a64Sfloat + B10g11r11UfloatPack32 + E5b9g9r9UfloatPack32 + D16Unorm + X8D24UnormPack32 + D32Sfloat + S8Uint + D16UnormS8Uint + D24UnormS8Uint + D32SfloatS8Uint + Bc1RgbUnormBlock + Bc1RgbSrgbBlock + Bc1RgbaUnormBlock + Bc1RgbaSrgbBlock + Bc2UnormBlock + Bc2SrgbBlock + Bc3UnormBlock + Bc3SrgbBlock + Bc4UnormBlock + Bc4SnormBlock + Bc5UnormBlock + Bc5SnormBlock + Bc6hUfloatBlock + Bc6hSfloatBlock + Bc7UnormBlock + Bc7SrgbBlock + Etc2R8g8b8UnormBlock + Etc2R8g8b8SrgbBlock + Etc2R8g8b8a1UnormBlock + Etc2R8g8b8a1SrgbBlock + Etc2R8g8b8a8UnormBlock + Etc2R8g8b8a8SrgbBlock + EacR11UnormBlock + EacR11SnormBlock + EacR11g11UnormBlock + EacR11g11SnormBlock + Astc4x4UnormBlock + Astc4x4SrgbBlock + Astc5x4UnormBlock + Astc5x4SrgbBlock + Astc5x5UnormBlock + Astc5x5SrgbBlock + Astc6x5UnormBlock + Astc6x5SrgbBlock + Astc6x6UnormBlock + Astc6x6SrgbBlock + Astc8x5UnormBlock + Astc8x5SrgbBlock + Astc8x6UnormBlock + Astc8x6SrgbBlock + Astc8x8UnormBlock + Astc8x8SrgbBlock + Astc10x5UnormBlock + Astc10x5SrgbBlock + Astc10x6UnormBlock + Astc10x6SrgbBlock + Astc10x8UnormBlock + Astc10x8SrgbBlock + Astc10x10UnormBlock + Astc10x10SrgbBlock + Astc12x10UnormBlock + Astc12x10SrgbBlock + Astc12x12UnormBlock + Astc12x12SrgbBlock VkStructureType* {.size: sizeof(int32).} = enum - ApplicationInfo = 0 - InstanceCreateInfo = 1 - DeviceQueueCreateInfo = 2 - DeviceCreateInfo = 3 - SubmitInfo = 4 - MemoryAllocateInfo = 5 - MappedMemoryRange = 6 - BindSparseInfo = 7 - FenceCreateInfo = 8 - SemaphoreCreateInfo = 9 - EventCreateInfo = 10 - QueryPoolCreateInfo = 11 - BufferCreateInfo = 12 - BufferViewCreateInfo = 13 - ImageCreateInfo = 14 - ImageViewCreateInfo = 15 - ShaderModuleCreateInfo = 16 - PipelineCacheCreateInfo = 17 - PipelineShaderStageCreateInfo = 18 - PipelineVertexInputStateCreateInfo = 19 - PipelineInputAssemblyStateCreateInfo = 20 - PipelineTessellationStateCreateInfo = 21 - PipelineViewportStateCreateInfo = 22 - PipelineRasterizationStateCreateInfo = 23 - PipelineMultisampleStateCreateInfo = 24 - PipelineDepthStencilStateCreateInfo = 25 - PipelineColorBlendStateCreateInfo = 26 - PipelineDynamicStateCreateInfo = 27 - GraphicsPipelineCreateInfo = 28 - ComputePipelineCreateInfo = 29 - PipelineLayoutCreateInfo = 30 - SamplerCreateInfo = 31 - DescriptorSetLayoutCreateInfo = 32 - DescriptorPoolCreateInfo = 33 - DescriptorSetAllocateInfo = 34 - WriteDescriptorSet = 35 - CopyDescriptorSet = 36 - FramebufferCreateInfo = 37 - RenderPassCreateInfo = 38 - CommandPoolCreateInfo = 39 - CommandBufferAllocateInfo = 40 - CommandBufferInheritanceInfo = 41 - CommandBufferBeginInfo = 42 - RenderPassBeginInfo = 43 - BufferMemoryBarrier = 44 - ImageMemoryBarrier = 45 - MemoryBarrier = 46 - LoaderInstanceCreateInfo = 47 - LoaderDeviceCreateInfo = 48 + ApplicationInfo + InstanceCreateInfo + DeviceQueueCreateInfo + DeviceCreateInfo + SubmitInfo + MemoryAllocateInfo + MappedMemoryRange + BindSparseInfo + FenceCreateInfo + SemaphoreCreateInfo + EventCreateInfo + QueryPoolCreateInfo + BufferCreateInfo + BufferViewCreateInfo + ImageCreateInfo + ImageViewCreateInfo + ShaderModuleCreateInfo + PipelineCacheCreateInfo + PipelineShaderStageCreateInfo + PipelineVertexInputStateCreateInfo + PipelineInputAssemblyStateCreateInfo + PipelineTessellationStateCreateInfo + PipelineViewportStateCreateInfo + PipelineRasterizationStateCreateInfo + PipelineMultisampleStateCreateInfo + PipelineDepthStencilStateCreateInfo + PipelineColorBlendStateCreateInfo + PipelineDynamicStateCreateInfo + GraphicsPipelineCreateInfo + ComputePipelineCreateInfo + PipelineLayoutCreateInfo + SamplerCreateInfo + DescriptorSetLayoutCreateInfo + DescriptorPoolCreateInfo + DescriptorSetAllocateInfo + WriteDescriptorSet + CopyDescriptorSet + FramebufferCreateInfo + RenderPassCreateInfo + CommandPoolCreateInfo + CommandBufferAllocateInfo + CommandBufferInheritanceInfo + CommandBufferBeginInfo + RenderPassBeginInfo + BufferMemoryBarrier + ImageMemoryBarrier + MemoryBarrier + LoaderInstanceCreateInfo + LoaderDeviceCreateInfo VkSubpassContents* {.size: sizeof(int32).} = enum - Inline = 0 - SecondaryCommandBuffers = 1 + Inline + SecondaryCommandBuffers VkResult* {.size: sizeof(int32).} = enum VkErrorUnknown = -13 - VkErrorFragmentedPool = -12 - VkErrorFormatNotSupported = -11 - VkErrorTooManyObjects = -10 - VkErrorIncompatibleDriver = -9 - VkErrorFeatureNotPresent = -8 - VkErrorExtensionNotPresent = -7 - VkErrorLayerNotPresent = -6 - VkErrorMemoryMapFailed = -5 - VkErrorDeviceLost = -4 - VkErrorInitializationFailed = -3 - VkErrorOutOfDeviceMemory = -2 - VkErrorOutOfHostMemory = -1 - VkSuccess = 0 - VkNotReady = 1 - VkTimeout = 2 - VkEventSet = 3 - VkEventReset = 4 - VkIncomplete = 5 + VkErrorFragmentedPool + VkErrorFormatNotSupported + VkErrorTooManyObjects + VkErrorIncompatibleDriver + VkErrorFeatureNotPresent + VkErrorExtensionNotPresent + VkErrorLayerNotPresent + VkErrorMemoryMapFailed + VkErrorDeviceLost + VkErrorInitializationFailed + VkErrorOutOfDeviceMemory + VkErrorOutOfHostMemory + VkSuccess + VkNotReady + VkTimeout + VkEventSet + VkEventReset + VkIncomplete VkDynamicState* {.size: sizeof(int32).} = enum - Viewport = 0 - Scissor = 1 - LineWidth = 2 - DepthBias = 3 - BlendConstants = 4 - DepthBounds = 5 - StencilCompareMask = 6 - StencilWriteMask = 7 - StencilReference = 8 + Viewport + Scissor + LineWidth + DepthBias + BlendConstants + DepthBounds + StencilCompareMask + StencilWriteMask + StencilReference VkDescriptorUpdateTemplateType* {.size: sizeof(int32).} = enum - DescriptorSet = 0 + DescriptorSet VkObjectType* {.size: sizeof(int32).} = enum - Unknown = 0 - Instance = 1 - PhysicalDevice = 2 - Device = 3 - Queue = 4 - Semaphore = 5 - CommandBuffer = 6 - Fence = 7 - DeviceMemory = 8 - Buffer = 9 - Image = 10 - Event = 11 - QueryPool = 12 - BufferView = 13 - ImageView = 14 - ShaderModule = 15 - PipelineCache = 16 - PipelineLayout = 17 - RenderPass = 18 - Pipeline = 19 - DescriptorSetLayout = 20 - Sampler = 21 - DescriptorPool = 22 - DescriptorSet = 23 - Framebuffer = 24 - CommandPool = 25 + Unknown + Instance + PhysicalDevice + Device + Queue + Semaphore + CommandBuffer + Fence + DeviceMemory + Buffer + Image + Event + QueryPool + BufferView + ImageView + ShaderModule + PipelineCache + PipelineLayout + RenderPass + Pipeline + DescriptorSetLayout + Sampler + DescriptorPool + DescriptorSet + Framebuffer + CommandPool VkRayTracingInvocationReorderModeNV* {.size: sizeof(int32).} = enum - NoneNv = 0 - ReorderNv = 1 + None + Reorder VkDirectDriverLoadingModeLUNARG* {.size: sizeof(int32).} = enum - VkDirectDriverLoadingModeExclusiveLunarg = 0 - VkDirectDriverLoadingModeInclusiveLunarg = 1 + VkDirectDriverLoadingModeExclusiveLunarg + VkDirectDriverLoadingModeInclusiveLunarg VkQueueFlagBits* {.size: sizeof(int32).} = enum GraphicsBit = 1 - ComputeBit = 2 + ComputeBit TransferBit = 4 SparseBindingBit = 8 VkCullModeFlagBits* {.size: sizeof(int32).} = enum - None = 0 - FrontBit = 1 - BackBit = 2 - FrontAndBack = 3 + None + FrontBit + BackBit + FrontAndBack VkMemoryPropertyFlagBits* {.size: sizeof(int32).} = enum DeviceLocalBit = 1 - HostVisibleBit = 2 + HostVisibleBit HostCoherentBit = 4 HostCachedBit = 8 LazilyAllocatedBit = 16 @@ -592,7 +592,7 @@ type DeviceLocalBit = 1 VkAccessFlagBits* {.size: sizeof(int32).} = enum IndirectCommandReadBit = 1 - IndexReadBit = 2 + IndexReadBit VertexAttributeReadBit = 4 UniformReadBit = 8 InputAttachmentReadBit = 16 @@ -610,7 +610,7 @@ type MemoryWriteBit = 65536 VkBufferUsageFlagBits* {.size: sizeof(int32).} = enum TransferSrcBit = 1 - TransferDstBit = 2 + TransferDstBit UniformTexelBufferBit = 4 StorageTexelBufferBit = 8 UniformBufferBit = 16 @@ -619,31 +619,31 @@ type VertexBufferBit = 128 IndirectBufferBit = 256 VkBufferUsageFlagBits2KHR* {.size: sizeof(int32).} = enum - N2TransferSrcBitKhr = 1 - N2TransferDstBitKhr = 2 - N2UniformTexelBufferBitKhr = 4 - N2StorageTexelBufferBitKhr = 8 - N2UniformBufferBitKhr = 16 - N2StorageBufferBitKhr = 32 - N2IndexBufferBitKhr = 64 - N2VertexBufferBitKhr = 128 - N2IndirectBufferBitKhr = 256 + N2TransferSrcBit = 1 + N2TransferDstBit + N2UniformTexelBufferBit = 4 + N2StorageTexelBufferBit = 8 + N2UniformBufferBit = 16 + N2StorageBufferBit = 32 + N2IndexBufferBit = 64 + N2VertexBufferBit = 128 + N2IndirectBufferBit = 256 VkBufferCreateFlagBits* {.size: sizeof(int32).} = enum SparseBindingBit = 1 - SparseResidencyBit = 2 + SparseResidencyBit SparseAliasedBit = 4 VkShaderStageFlagBits* {.size: sizeof(int32).} = enum VertexBit = 1 - TessellationControlBit = 2 + TessellationControlBit TessellationEvaluationBit = 4 GeometryBit = 8 FragmentBit = 16 AllGraphics = 31 - ComputeBit = 32 + ComputeBit All = 2147483647 VkImageUsageFlagBits* {.size: sizeof(int32).} = enum TransferSrcBit = 1 - TransferDstBit = 2 + TransferDstBit SampledBit = 4 StorageBit = 8 ColorAttachmentBit = 16 @@ -652,28 +652,28 @@ type InputAttachmentBit = 128 VkImageCreateFlagBits* {.size: sizeof(int32).} = enum SparseBindingBit = 1 - SparseResidencyBit = 2 + SparseResidencyBit SparseAliasedBit = 4 MutableFormatBit = 8 CubeCompatibleBit = 16 VkPipelineCreateFlagBits* {.size: sizeof(int32).} = enum DisableOptimizationBit = 1 - AllowDerivativesBit = 2 + AllowDerivativesBit DerivativeBit = 4 VkPipelineCreateFlagBits2KHR* {.size: sizeof(int32).} = enum - N2DisableOptimizationBitKhr = 1 - N2AllowDerivativesBitKhr = 2 - N2DerivativeBitKhr = 4 + N2DisableOptimizationBit = 1 + N2AllowDerivativesBit + N2DerivativeBit = 4 VkColorComponentFlagBits* {.size: sizeof(int32).} = enum RBit = 1 - GBit = 2 + GBit BBit = 4 ABit = 8 VkFenceCreateFlagBits* {.size: sizeof(int32).} = enum SignaledBit = 1 VkFormatFeatureFlagBits* {.size: sizeof(int32).} = enum SampledImageBit = 1 - StorageImageBit = 2 + StorageImageBit StorageImageAtomicBit = 4 UniformTexelBufferBit = 8 StorageTexelBufferBit = 16 @@ -689,16 +689,16 @@ type PreciseBit = 1 VkQueryResultFlagBits* {.size: sizeof(int32).} = enum N64Bit = 1 - WaitBit = 2 + WaitBit WithAvailabilityBit = 4 PartialBit = 8 VkCommandBufferUsageFlagBits* {.size: sizeof(int32).} = enum OneTimeSubmitBit = 1 - RenderPassContinueBit = 2 + RenderPassContinueBit SimultaneousUseBit = 4 VkQueryPipelineStatisticFlagBits* {.size: sizeof(int32).} = enum InputAssemblyVerticesBit = 1 - InputAssemblyPrimitivesBit = 2 + InputAssemblyPrimitivesBit VertexShaderInvocationsBit = 4 GeometryShaderInvocationsBit = 8 GeometryShaderPrimitivesBit = 16 @@ -710,18 +710,18 @@ type ComputeShaderInvocationsBit = 1024 VkImageAspectFlagBits* {.size: sizeof(int32).} = enum ColorBit = 1 - DepthBit = 2 + DepthBit StencilBit = 4 MetadataBit = 8 VkSparseImageFormatFlagBits* {.size: sizeof(int32).} = enum SingleMiptailBit = 1 - AlignedMipSizeBit = 2 + AlignedMipSizeBit NonstandardBlockSizeBit = 4 VkSparseMemoryBindFlagBits* {.size: sizeof(int32).} = enum MetadataBit = 1 VkPipelineStageFlagBits* {.size: sizeof(int32).} = enum TopOfPipeBit = 1 - DrawIndirectBit = 2 + DrawIndirectBit VertexInputBit = 4 VertexShaderBit = 8 TessellationControlShaderBit = 16 @@ -739,14 +739,14 @@ type AllCommandsBit = 65536 VkCommandPoolCreateFlagBits* {.size: sizeof(int32).} = enum TransientBit = 1 - ResetCommandBufferBit = 2 + ResetCommandBufferBit VkCommandPoolResetFlagBits* {.size: sizeof(int32).} = enum ReleaseResourcesBit = 1 VkCommandBufferResetFlagBits* {.size: sizeof(int32).} = enum ReleaseResourcesBit = 1 VkSampleCountFlagBits* {.size: sizeof(int32).} = enum N1Bit = 1 - N2Bit = 2 + N2Bit N4Bit = 4 N8Bit = 8 N16Bit = 16 @@ -756,138 +756,138 @@ type MayAliasBit = 1 VkStencilFaceFlagBits* {.size: sizeof(int32).} = enum FrontBit = 1 - BackBit = 2 - FrontAndBack = 3 + BackBit + FrontAndBack VkDescriptorPoolCreateFlagBits* {.size: sizeof(int32).} = enum FreeDescriptorSetBit = 1 VkDependencyFlagBits* {.size: sizeof(int32).} = enum ByRegionBit = 1 VkSemaphoreType* {.size: sizeof(int32).} = enum - Binary = 0 - Timeline = 1 + Binary + Timeline VkSemaphoreWaitFlagBits* {.size: sizeof(int32).} = enum AnyBit = 1 VkPresentModeKHR* {.size: sizeof(int32).} = enum - ImmediateKhr = 0 - MailboxKhr = 1 - FifoKhr = 2 - FifoRelaxedKhr = 3 + Immediate + Mailbox + Fifo + FifoRelaxed VkColorSpaceKHR* {.size: sizeof(int32).} = enum - SrgbNonlinearKhr = 0 + SrgbNonlinear VkDisplayPlaneAlphaFlagBitsKHR* {.size: sizeof(int32).} = enum - OpaqueBitKhr = 1 - GlobalBitKhr = 2 - PerPixelBitKhr = 4 - PerPixelPremultipliedBitKhr = 8 + OpaqueBit = 1 + GlobalBit + PerPixelBit = 4 + PerPixelPremultipliedBit = 8 VkCompositeAlphaFlagBitsKHR* {.size: sizeof(int32).} = enum - OpaqueBitKhr = 1 - PreMultipliedBitKhr = 2 - PostMultipliedBitKhr = 4 - InheritBitKhr = 8 + OpaqueBit = 1 + PreMultipliedBit + PostMultipliedBit = 4 + InheritBit = 8 VkSurfaceTransformFlagBitsKHR* {.size: sizeof(int32).} = enum - IdentityBitKhr = 1 - Rotate90BitKhr = 2 - Rotate180BitKhr = 4 - Rotate270BitKhr = 8 - HorizontalMirrorBitKhr = 16 - HorizontalMirrorRotate90BitKhr = 32 - HorizontalMirrorRotate180BitKhr = 64 - HorizontalMirrorRotate270BitKhr = 128 - InheritBitKhr = 256 + IdentityBit = 1 + Rotate90Bit + Rotate180Bit = 4 + Rotate270Bit = 8 + HorizontalMirrorBit = 16 + HorizontalMirrorRotate90Bit = 32 + HorizontalMirrorRotate180Bit = 64 + HorizontalMirrorRotate270Bit = 128 + InheritBit = 256 VkSwapchainImageUsageFlagBitsANDROID* {.size: sizeof(int32).} = enum VkSwapchainImageUsageSharedBitAndroid = 1 VkTimeDomainKHR* {.size: sizeof(int32).} = enum - DeviceKhr = 0 - ClockMonotonicKhr = 1 - ClockMonotonicRawKhr = 2 - QueryPerformanceCounterKhr = 3 + Device + ClockMonotonic + ClockMonotonicRaw + QueryPerformanceCounter VkDebugReportFlagBitsEXT* {.size: sizeof(int32).} = enum - InformationBitExt = 1 - WarningBitExt = 2 - PerformanceWarningBitExt = 4 - ErrorBitExt = 8 - DebugBitExt = 16 + InformationBit = 1 + WarningBit + PerformanceWarningBit = 4 + ErrorBit = 8 + DebugBit = 16 VkDebugReportObjectTypeEXT* {.size: sizeof(int32).} = enum - UnknownExt = 0 - InstanceExt = 1 - PhysicalDeviceExt = 2 - DeviceExt = 3 - QueueExt = 4 - SemaphoreExt = 5 - CommandBufferExt = 6 - FenceExt = 7 - DeviceMemoryExt = 8 - BufferExt = 9 - ImageExt = 10 - EventExt = 11 - QueryPoolExt = 12 - BufferViewExt = 13 - ImageViewExt = 14 - ShaderModuleExt = 15 - PipelineCacheExt = 16 - PipelineLayoutExt = 17 - RenderPassExt = 18 - PipelineExt = 19 - DescriptorSetLayoutExt = 20 - SamplerExt = 21 - DescriptorPoolExt = 22 - DescriptorSetExt = 23 - FramebufferExt = 24 - CommandPoolExt = 25 - SurfaceKhrExt = 26 - SwapchainKhrExt = 27 - DebugReportCallbackExtExt = 28 - DisplayKhrExt = 29 - DisplayModeKhrExt = 30 - ValidationCacheExtExt = 33 + Unknown + Instance + PhysicalDevice + Device + Queue + Semaphore + CommandBuffer + Fence + DeviceMemory + Buffer + Image + Event + QueryPool + BufferView + ImageView + ShaderModule + PipelineCache + PipelineLayout + RenderPass + Pipeline + DescriptorSetLayout + Sampler + DescriptorPool + DescriptorSet + Framebuffer + CommandPool + SurfaceKhr + SwapchainKhr + DebugReportCallbackExt + DisplayKhr + DisplayModeKhr + ValidationCacheExt = 33 VkDeviceMemoryReportEventTypeEXT* {.size: sizeof(int32).} = enum - AllocateExt = 0 - FreeExt = 1 - ImportExt = 2 - UnimportExt = 3 - AllocationFailedExt = 4 + Allocate + Free + Import + Unimport + AllocationFailed VkRasterizationOrderAMD* {.size: sizeof(int32).} = enum - StrictAmd = 0 - RelaxedAmd = 1 + Strict + Relaxed VkExternalMemoryHandleTypeFlagBitsNV* {.size: sizeof(int32).} = enum - OpaqueWin32BitNv = 1 - OpaqueWin32KmtBitNv = 2 - D3d11ImageBitNv = 4 - D3d11ImageKmtBitNv = 8 + OpaqueWin32Bit = 1 + OpaqueWin32KmtBit + D3d11ImageBit = 4 + D3d11ImageKmtBit = 8 VkExternalMemoryFeatureFlagBitsNV* {.size: sizeof(int32).} = enum - DedicatedOnlyBitNv = 1 - ExportableBitNv = 2 - ImportableBitNv = 4 + DedicatedOnlyBit = 1 + ExportableBit + ImportableBit = 4 VkValidationCheckEXT* {.size: sizeof(int32).} = enum - AllExt = 0 - ShadersExt = 1 + All + Shaders VkValidationFeatureEnableEXT* {.size: sizeof(int32).} = enum - GpuAssistedExt = 0 - GpuAssistedReserveBindingSlotExt = 1 - BestPracticesExt = 2 - DebugPrintfExt = 3 - SynchronizationValidationExt = 4 + GpuAssisted + GpuAssistedReserveBindingSlot + BestPractices + DebugPrintf + SynchronizationValidation VkValidationFeatureDisableEXT* {.size: sizeof(int32).} = enum - AllExt = 0 - ShadersExt = 1 - ThreadSafetyExt = 2 - ApiParametersExt = 3 - ObjectLifetimesExt = 4 - CoreChecksExt = 5 - UniqueHandlesExt = 6 - ShaderValidationCacheExt = 7 + All + Shaders + ThreadSafety + ApiParameters + ObjectLifetimes + CoreChecks + UniqueHandles + ShaderValidationCache VkLayerSettingTypeEXT* {.size: sizeof(int32).} = enum - Bool32Ext = 0 - Int32Ext = 1 - Int64Ext = 2 - Uint32Ext = 3 - Uint64Ext = 4 - Float32Ext = 5 - Float64Ext = 6 - StringExt = 7 + Bool32 + Int32 + Int64 + Uint32 + Uint64 + Float32 + Float64 + String VkSubgroupFeatureFlagBits* {.size: sizeof(int32).} = enum BasicBit = 1 - VoteBit = 2 + VoteBit ArithmeticBit = 4 BallotBit = 8 ShuffleBit = 16 @@ -895,23 +895,23 @@ type ClusteredBit = 64 QuadBit = 128 VkIndirectCommandsLayoutUsageFlagBitsNV* {.size: sizeof(int32).} = enum - ExplicitPreprocessBitNv = 1 - IndexedSequencesBitNv = 2 - UnorderedSequencesBitNv = 4 + ExplicitPreprocessBit = 1 + IndexedSequencesBit + UnorderedSequencesBit = 4 VkIndirectStateFlagBitsNV* {.size: sizeof(int32).} = enum - FlagFrontfaceBitNv = 1 + FlagFrontfaceBit = 1 VkIndirectCommandsTokenTypeNV* {.size: sizeof(int32).} = enum - ShaderGroupNv = 0 - StateFlagsNv = 1 - IndexBufferNv = 2 - VertexBufferNv = 3 - PushConstantNv = 4 - DrawIndexedNv = 5 - DrawNv = 6 - DrawTasksNv = 7 + ShaderGroup + StateFlags + IndexBuffer + VertexBuffer + PushConstant + DrawIndexed + Draw + DrawTasks VkExternalMemoryHandleTypeFlagBits* {.size: sizeof(int32).} = enum OpaqueFdBit = 1 - OpaqueWin32Bit = 2 + OpaqueWin32Bit OpaqueWin32KmtBit = 4 D3d11TextureBit = 8 D3d11TextureKmtBit = 16 @@ -919,379 +919,379 @@ type D3d12ResourceBit = 64 VkExternalMemoryFeatureFlagBits* {.size: sizeof(int32).} = enum DedicatedOnlyBit = 1 - ExportableBit = 2 + ExportableBit ImportableBit = 4 VkExternalSemaphoreHandleTypeFlagBits* {.size: sizeof(int32).} = enum OpaqueFdBit = 1 - OpaqueWin32Bit = 2 + OpaqueWin32Bit OpaqueWin32KmtBit = 4 D3d12FenceBit = 8 SyncFdBit = 16 VkExternalSemaphoreFeatureFlagBits* {.size: sizeof(int32).} = enum ExportableBit = 1 - ImportableBit = 2 + ImportableBit VkSemaphoreImportFlagBits* {.size: sizeof(int32).} = enum TemporaryBit = 1 VkExternalFenceHandleTypeFlagBits* {.size: sizeof(int32).} = enum OpaqueFdBit = 1 - OpaqueWin32Bit = 2 + OpaqueWin32Bit OpaqueWin32KmtBit = 4 SyncFdBit = 8 VkExternalFenceFeatureFlagBits* {.size: sizeof(int32).} = enum ExportableBit = 1 - ImportableBit = 2 + ImportableBit VkFenceImportFlagBits* {.size: sizeof(int32).} = enum TemporaryBit = 1 VkSurfaceCounterFlagBitsEXT* {.size: sizeof(int32).} = enum - VblankBitExt = 1 + VblankBit = 1 VkDisplayPowerStateEXT* {.size: sizeof(int32).} = enum - OffExt = 0 - SuspendExt = 1 - OnExt = 2 + Off + Suspend + On VkDeviceEventTypeEXT* {.size: sizeof(int32).} = enum - DisplayHotplugExt = 0 + DisplayHotplug VkDisplayEventTypeEXT* {.size: sizeof(int32).} = enum - FirstPixelOutExt = 0 + FirstPixelOut VkPeerMemoryFeatureFlagBits* {.size: sizeof(int32).} = enum CopySrcBit = 1 - CopyDstBit = 2 + CopyDstBit GenericSrcBit = 4 GenericDstBit = 8 VkMemoryAllocateFlagBits* {.size: sizeof(int32).} = enum DeviceMaskBit = 1 VkDeviceGroupPresentModeFlagBitsKHR* {.size: sizeof(int32).} = enum - LocalBitKhr = 1 - RemoteBitKhr = 2 - SumBitKhr = 4 - LocalMultiDeviceBitKhr = 8 + LocalBit = 1 + RemoteBit + SumBit = 4 + LocalMultiDeviceBit = 8 VkViewportCoordinateSwizzleNV* {.size: sizeof(int32).} = enum - PositiveXNv = 0 - NegativeXNv = 1 - PositiveYNv = 2 - NegativeYNv = 3 - PositiveZNv = 4 - NegativeZNv = 5 - PositiveWNv = 6 - NegativeWNv = 7 + PositiveX + NegativeX + PositiveY + NegativeY + PositiveZ + NegativeZ + PositiveW + NegativeW VkDiscardRectangleModeEXT* {.size: sizeof(int32).} = enum - InclusiveExt = 0 - ExclusiveExt = 1 + Inclusive + Exclusive VkPointClippingBehavior* {.size: sizeof(int32).} = enum - AllClipPlanes = 0 - UserClipPlanesOnly = 1 + AllClipPlanes + UserClipPlanesOnly VkSamplerReductionMode* {.size: sizeof(int32).} = enum - WeightedAverage = 0 - Min = 1 - Max = 2 + WeightedAverage + Min + Max VkTessellationDomainOrigin* {.size: sizeof(int32).} = enum - UpperLeft = 0 - LowerLeft = 1 + UpperLeft + LowerLeft VkSamplerYcbcrModelConversion* {.size: sizeof(int32).} = enum - RgbIdentity = 0 - YcbcrIdentity = 1 - Ycbcr709 = 2 - Ycbcr601 = 3 - Ycbcr2020 = 4 + RgbIdentity + YcbcrIdentity + Ycbcr709 + Ycbcr601 + Ycbcr2020 VkSamplerYcbcrRange* {.size: sizeof(int32).} = enum - ItuFull = 0 - ItuNarrow = 1 + ItuFull + ItuNarrow VkChromaLocation* {.size: sizeof(int32).} = enum - CositedEven = 0 - Midpoint = 1 + CositedEven + Midpoint VkBlendOverlapEXT* {.size: sizeof(int32).} = enum - UncorrelatedExt = 0 - DisjointExt = 1 - ConjointExt = 2 + Uncorrelated + Disjoint + Conjoint VkCoverageModulationModeNV* {.size: sizeof(int32).} = enum - NoneNv = 0 - RgbNv = 1 - AlphaNv = 2 - RgbaNv = 3 + None + Rgb + Alpha + Rgba VkCoverageReductionModeNV* {.size: sizeof(int32).} = enum - MergeNv = 0 - TruncateNv = 1 + Merge + Truncate VkValidationCacheHeaderVersionEXT* {.size: sizeof(int32).} = enum - OneExt = 1 + One = 1 VkShaderInfoTypeAMD* {.size: sizeof(int32).} = enum - StatisticsAmd = 0 - BinaryAmd = 1 - DisassemblyAmd = 2 + Statistics + Binary + Disassembly VkQueueGlobalPriorityKHR* {.size: sizeof(int32).} = enum - LowKhr = 128 - MediumKhr = 256 - HighKhr = 512 - RealtimeKhr = 1024 + Low = 128 + Medium = 256 + High = 512 + Realtime = 1024 VkDebugUtilsMessageSeverityFlagBitsEXT* {.size: sizeof(int32).} = enum - VerboseBitExt = 1 - InfoBitExt = 16 - WarningBitExt = 256 - ErrorBitExt = 4096 + VerboseBit = 1 + InfoBit = 16 + WarningBit = 256 + ErrorBit = 4096 VkDebugUtilsMessageTypeFlagBitsEXT* {.size: sizeof(int32).} = enum - GeneralBitExt = 1 - ValidationBitExt = 2 - PerformanceBitExt = 4 + GeneralBit = 1 + ValidationBit + PerformanceBit = 4 VkConservativeRasterizationModeEXT* {.size: sizeof(int32).} = enum - DisabledExt = 0 - OverestimateExt = 1 - UnderestimateExt = 2 + Disabled + Overestimate + Underestimate VkDescriptorBindingFlagBits* {.size: sizeof(int32).} = enum UpdateAfterBindBit = 1 - UpdateUnusedWhilePendingBit = 2 + UpdateUnusedWhilePendingBit PartiallyBoundBit = 4 VariableDescriptorCountBit = 8 VkVendorId* {.size: sizeof(int32).} = enum Viv = 65537 - Vsi = 65538 - Kazan = 65539 - Codeplay = 65540 - Mesa = 65541 - Pocl = 65542 - Mobileye = 65543 + Vsi + Kazan + Codeplay + Mesa + Pocl + Mobileye VkDriverId* {.size: sizeof(int32).} = enum AmdProprietary = 1 - AmdOpenSource = 2 - MesaRadv = 3 - NvidiaProprietary = 4 - IntelProprietaryWindows = 5 - IntelOpenSourceMesa = 6 - ImaginationProprietary = 7 - QualcommProprietary = 8 - ArmProprietary = 9 - GoogleSwiftshader = 10 - GgpProprietary = 11 - BroadcomProprietary = 12 - MesaLlvmpipe = 13 - Moltenvk = 14 - CoreaviProprietary = 15 - JuiceProprietary = 16 - VerisiliconProprietary = 17 - MesaTurnip = 18 - MesaV3dv = 19 - MesaPanvk = 20 - SamsungProprietary = 21 - MesaVenus = 22 - MesaDozen = 23 - MesaNvk = 24 - ImaginationOpenSourceMesa = 25 - MesaAgxv = 26 + AmdOpenSource + MesaRadv + NvidiaProprietary + IntelProprietaryWindows + IntelOpenSourceMesa + ImaginationProprietary + QualcommProprietary + ArmProprietary + GoogleSwiftshader + GgpProprietary + BroadcomProprietary + MesaLlvmpipe + Moltenvk + CoreaviProprietary + JuiceProprietary + VerisiliconProprietary + MesaTurnip + MesaV3dv + MesaPanvk + SamsungProprietary + MesaVenus + MesaDozen + MesaNvk + ImaginationOpenSourceMesa + MesaAgxv VkConditionalRenderingFlagBitsEXT* {.size: sizeof(int32).} = enum - InvertedBitExt = 1 + InvertedBit = 1 VkResolveModeFlagBits* {.size: sizeof(int32).} = enum - None = 0 - SampleZeroBit = 1 - AverageBit = 2 + None + SampleZeroBit + AverageBit MinBit = 4 MaxBit = 8 VkShadingRatePaletteEntryNV* {.size: sizeof(int32).} = enum - NoInvocationsNv = 0 - N16InvocationsPerPixelNv = 1 - N8InvocationsPerPixelNv = 2 - N4InvocationsPerPixelNv = 3 - N2InvocationsPerPixelNv = 4 - N1InvocationPerPixelNv = 5 - N1InvocationPer2x1PixelsNv = 6 - N1InvocationPer1x2PixelsNv = 7 - N1InvocationPer2x2PixelsNv = 8 - N1InvocationPer4x2PixelsNv = 9 - N1InvocationPer2x4PixelsNv = 10 - N1InvocationPer4x4PixelsNv = 11 + NoInvocations + N16InvocationsPerPixel + N8InvocationsPerPixel + N4InvocationsPerPixel + N2InvocationsPerPixel + N1InvocationPerPixel + N1InvocationPer2x1Pixels + N1InvocationPer1x2Pixels + N1InvocationPer2x2Pixels + N1InvocationPer4x2Pixels + N1InvocationPer2x4Pixels + N1InvocationPer4x4Pixels VkCoarseSampleOrderTypeNV* {.size: sizeof(int32).} = enum - DefaultNv = 0 - CustomNv = 1 - PixelMajorNv = 2 - SampleMajorNv = 3 + Default + Custom + PixelMajor + SampleMajor VkGeometryInstanceFlagBitsKHR* {.size: sizeof(int32).} = enum - TriangleFacingCullDisableBitKhr = 1 - TriangleFlipFacingBitKhr = 2 - ForceOpaqueBitKhr = 4 - ForceNoOpaqueBitKhr = 8 + TriangleFacingCullDisableBit = 1 + TriangleFlipFacingBit + ForceOpaqueBit = 4 + ForceNoOpaqueBit = 8 VkGeometryFlagBitsKHR* {.size: sizeof(int32).} = enum - OpaqueBitKhr = 1 - NoDuplicateAnyHitInvocationBitKhr = 2 + OpaqueBit = 1 + NoDuplicateAnyHitInvocationBit VkBuildAccelerationStructureFlagBitsKHR* {.size: sizeof(int32).} = enum - AllowUpdateBitKhr = 1 - AllowCompactionBitKhr = 2 - PreferFastTraceBitKhr = 4 - PreferFastBuildBitKhr = 8 - LowMemoryBitKhr = 16 + AllowUpdateBit = 1 + AllowCompactionBit + PreferFastTraceBit = 4 + PreferFastBuildBit = 8 + LowMemoryBit = 16 VkAccelerationStructureCreateFlagBitsKHR* {.size: sizeof(int32).} = enum - DeviceAddressCaptureReplayBitKhr = 1 + DeviceAddressCaptureReplayBit = 1 VkCopyAccelerationStructureModeKHR* {.size: sizeof(int32).} = enum - CloneKhr = 0 - CompactKhr = 1 - SerializeKhr = 2 - DeserializeKhr = 3 + Clone + Compact + Serialize + Deserialize VkBuildAccelerationStructureModeKHR* {.size: sizeof(int32).} = enum - BuildKhr = 0 - UpdateKhr = 1 + Build + Update VkAccelerationStructureTypeKHR* {.size: sizeof(int32).} = enum - TopLevelKhr = 0 - BottomLevelKhr = 1 - GenericKhr = 2 + TopLevel + BottomLevel + Generic VkGeometryTypeKHR* {.size: sizeof(int32).} = enum - TrianglesKhr = 0 - AabbsKhr = 1 - InstancesKhr = 2 + Triangles + Aabbs + Instances VkAccelerationStructureMemoryRequirementsTypeNV* {.size: sizeof(int32).} = enum - ObjectNv = 0 - BuildScratchNv = 1 - UpdateScratchNv = 2 + Object + BuildScratch + UpdateScratch VkAccelerationStructureBuildTypeKHR* {.size: sizeof(int32).} = enum - HostKhr = 0 - DeviceKhr = 1 - HostOrDeviceKhr = 2 + Host + Device + HostOrDevice VkRayTracingShaderGroupTypeKHR* {.size: sizeof(int32).} = enum - GeneralKhr = 0 - TrianglesHitGroupKhr = 1 - ProceduralHitGroupKhr = 2 + General + TrianglesHitGroup + ProceduralHitGroup VkAccelerationStructureCompatibilityKHR* {.size: sizeof(int32).} = enum - CompatibleKhr = 0 - IncompatibleKhr = 1 + Compatible + Incompatible VkShaderGroupShaderKHR* {.size: sizeof(int32).} = enum - GeneralKhr = 0 - ClosestHitKhr = 1 - AnyHitKhr = 2 - IntersectionKhr = 3 + General + ClosestHit + AnyHit + Intersection VkMemoryOverallocationBehaviorAMD* {.size: sizeof(int32).} = enum - DefaultAmd = 0 - AllowedAmd = 1 - DisallowedAmd = 2 + Default + Allowed + Disallowed VkDeviceDiagnosticsConfigFlagBitsNV* {.size: sizeof(int32).} = enum - EnableShaderDebugInfoBitNv = 1 - EnableResourceTrackingBitNv = 2 - EnableAutomaticCheckpointsBitNv = 4 - EnableShaderErrorReportingBitNv = 8 + EnableShaderDebugInfoBit = 1 + EnableResourceTrackingBit + EnableAutomaticCheckpointsBit = 4 + EnableShaderErrorReportingBit = 8 VkPipelineCreationFeedbackFlagBits* {.size: sizeof(int32).} = enum ValidBit = 1 - ApplicationPipelineCacheHitBit = 2 + ApplicationPipelineCacheHitBit BasePipelineAccelerationBit = 4 VkFullScreenExclusiveEXT* {.size: sizeof(int32).} = enum - DefaultExt = 0 - AllowedExt = 1 - DisallowedExt = 2 - ApplicationControlledExt = 3 + Default + Allowed + Disallowed + ApplicationControlled VkPerformanceCounterScopeKHR* {.size: sizeof(int32).} = enum - CommandBufferKhr = 0 - RenderPassKhr = 1 - CommandKhr = 2 + CommandBuffer + RenderPass + Command VkMemoryDecompressionMethodFlagBitsNV* {.size: sizeof(int32).} = enum - Gdeflate10BitNv = 1 + Gdeflate10Bit = 1 VkPerformanceCounterUnitKHR* {.size: sizeof(int32).} = enum - GenericKhr = 0 - PercentageKhr = 1 - NanosecondsKhr = 2 - BytesKhr = 3 - BytesPerSecondKhr = 4 - KelvinKhr = 5 - WattsKhr = 6 - VoltsKhr = 7 - AmpsKhr = 8 - HertzKhr = 9 - CyclesKhr = 10 + Generic + Percentage + Nanoseconds + Bytes + BytesPerSecond + Kelvin + Watts + Volts + Amps + Hertz + Cycles VkPerformanceCounterStorageKHR* {.size: sizeof(int32).} = enum - Int32Khr = 0 - Int64Khr = 1 - Uint32Khr = 2 - Uint64Khr = 3 - Float32Khr = 4 - Float64Khr = 5 + Int32 + Int64 + Uint32 + Uint64 + Float32 + Float64 VkPerformanceCounterDescriptionFlagBitsKHR* {.size: sizeof(int32).} = enum - PerformanceImpactingBitKhr = 1 - ConcurrentlyImpactedBitKhr = 2 + PerformanceImpactingBit = 1 + ConcurrentlyImpactedBit VkPerformanceConfigurationTypeINTEL* {.size: sizeof(int32).} = enum - CommandQueueMetricsDiscoveryActivatedIntel = 0 + CommandQueueMetricsDiscoveryActivated VkQueryPoolSamplingModeINTEL* {.size: sizeof(int32).} = enum - ManualIntel = 0 + Manual VkPerformanceOverrideTypeINTEL* {.size: sizeof(int32).} = enum - NullHardwareIntel = 0 - FlushGpuCachesIntel = 1 + NullHardware + FlushGpuCaches VkPerformanceParameterTypeINTEL* {.size: sizeof(int32).} = enum - HwCountersSupportedIntel = 0 - StreamMarkerValidBitsIntel = 1 + HwCountersSupported + StreamMarkerValidBits VkPerformanceValueTypeINTEL* {.size: sizeof(int32).} = enum - Uint32Intel = 0 - Uint64Intel = 1 - FloatIntel = 2 - BoolIntel = 3 - StringIntel = 4 + Uint32 + Uint64 + Float + Bool + String VkShaderFloatControlsIndependence* {.size: sizeof(int32).} = enum - N32BitOnly = 0 - All = 1 - None = 2 + N32BitOnly + All + None VkPipelineExecutableStatisticFormatKHR* {.size: sizeof(int32).} = enum - Bool32Khr = 0 - Int64Khr = 1 - Uint64Khr = 2 - Float64Khr = 3 + Bool32 + Int64 + Uint64 + Float64 VkLineRasterizationModeKHR* {.size: sizeof(int32).} = enum - DefaultKhr = 0 - RectangularKhr = 1 - BresenhamKhr = 2 - RectangularSmoothKhr = 3 + Default + Rectangular + Bresenham + RectangularSmooth VkFaultLevel* {.size: sizeof(int32).} = enum - Unassigned = 0 - Critical = 1 - Recoverable = 2 - Warning = 3 + Unassigned + Critical + Recoverable + Warning VkFaultType* {.size: sizeof(int32).} = enum - Invalid = 0 - Unassigned = 1 - Implementation = 2 - System = 3 - PhysicalDevice = 4 - CommandBufferFull = 5 - InvalidApiUsage = 6 + Invalid + Unassigned + Implementation + System + PhysicalDevice + CommandBufferFull + InvalidApiUsage VkFaultQueryBehavior* {.size: sizeof(int32).} = enum - GetAndClearAllFaults = 0 + GetAndClearAllFaults VkToolPurposeFlagBits* {.size: sizeof(int32).} = enum ValidationBit = 1 - ProfilingBit = 2 + ProfilingBit TracingBit = 4 AdditionalFeaturesBit = 8 ModifyingFeaturesBit = 16 VkPipelineMatchControl* {.size: sizeof(int32).} = enum - ApplicationUuidExactMatch = 0 + ApplicationUuidExactMatch VkFragmentShadingRateCombinerOpKHR* {.size: sizeof(int32).} = enum - KeepKhr = 0 - ReplaceKhr = 1 - MinKhr = 2 - MaxKhr = 3 - MulKhr = 4 + Keep + Replace + Min + Max + Mul VkFragmentShadingRateNV* {.size: sizeof(int32).} = enum - N1InvocationPerPixelNv = 0 - N1InvocationPer1x2PixelsNv = 1 - N1InvocationPer2x1PixelsNv = 4 - N1InvocationPer2x2PixelsNv = 5 - N1InvocationPer2x4PixelsNv = 6 - N1InvocationPer4x2PixelsNv = 9 - N1InvocationPer4x4PixelsNv = 10 - N2InvocationsPerPixelNv = 11 - N4InvocationsPerPixelNv = 12 - N8InvocationsPerPixelNv = 13 - N16InvocationsPerPixelNv = 14 - NoInvocationsNv = 15 + N1InvocationPerPixel + N1InvocationPer1x2Pixels + N1InvocationPer2x1Pixels = 4 + N1InvocationPer2x2Pixels + N1InvocationPer2x4Pixels + N1InvocationPer4x2Pixels = 9 + N1InvocationPer4x4Pixels + N2InvocationsPerPixel + N4InvocationsPerPixel + N8InvocationsPerPixel + N16InvocationsPerPixel + NoInvocations VkFragmentShadingRateTypeNV* {.size: sizeof(int32).} = enum - FragmentSizeNv = 0 - EnumsNv = 1 + FragmentSize + Enums VkSubpassMergeStatusEXT* {.size: sizeof(int32).} = enum - MergedExt = 0 - DisallowedExt = 1 - NotMergedSideEffectsExt = 2 - NotMergedSamplesMismatchExt = 3 - NotMergedViewsMismatchExt = 4 - NotMergedAliasingExt = 5 - NotMergedDependenciesExt = 6 - NotMergedIncompatibleInputAttachmentExt = 7 - NotMergedTooManyAttachmentsExt = 8 - NotMergedInsufficientStorageExt = 9 - NotMergedDepthStencilCountExt = 10 - NotMergedResolveAttachmentReuseExt = 11 - NotMergedSingleSubpassExt = 12 - NotMergedUnspecifiedExt = 13 + Merged + Disallowed + NotMergedSideEffects + NotMergedSamplesMismatch + NotMergedViewsMismatch + NotMergedAliasing + NotMergedDependencies + NotMergedIncompatibleInputAttachment + NotMergedTooManyAttachments + NotMergedInsufficientStorage + NotMergedDepthStencilCount + NotMergedResolveAttachmentReuse + NotMergedSingleSubpass + NotMergedUnspecified VkAccessFlagBits2* {.size: sizeof(int32).} = enum - N2None = 0 - N2IndirectCommandReadBit = 1 - N2IndexReadBit = 2 + N2None + N2IndirectCommandReadBit + N2IndexReadBit N2VertexAttributeReadBit = 4 N2UniformReadBit = 8 N2InputAttachmentReadBit = 16 @@ -1311,9 +1311,9 @@ type N2ShaderStorageReadBit = 8589934592 N2ShaderStorageWriteBit = 17179869184 VkPipelineStageFlagBits2* {.size: sizeof(int32).} = enum - N2None = 0 - N2TopOfPipeBit = 1 - N2DrawIndirectBit = 2 + N2None + N2TopOfPipeBit + N2DrawIndirectBit N2VertexInputBit = 4 N2VertexShaderBit = 8 N2TessellationControlShaderBit = 16 @@ -1339,156 +1339,156 @@ type VkSubmitFlagBits* {.size: sizeof(int32).} = enum ProtectedBit = 1 VkSciSyncClientTypeNV* {.size: sizeof(int32).} = enum - SignalerNv = 0 - WaiterNv = 1 - SignalerWaiterNv = 2 + Signaler + Waiter + SignalerWaiter VkSciSyncPrimitiveTypeNV* {.size: sizeof(int32).} = enum - FenceNv = 0 - SemaphoreNv = 1 + Fence + Semaphore VkProvokingVertexModeEXT* {.size: sizeof(int32).} = enum - FirstVertexExt = 0 - LastVertexExt = 1 + FirstVertex + LastVertex VkPipelineCacheValidationVersion* {.size: sizeof(int32).} = enum SafetyCriticalOne = 1 VkAccelerationStructureMotionInstanceTypeNV* {.size: sizeof(int32).} = enum - StaticNv = 0 - MatrixMotionNv = 1 - SrtMotionNv = 2 + Static + MatrixMotion + SrtMotion VkGraphicsPipelineLibraryFlagBitsEXT* {.size: sizeof(int32).} = enum - VertexInputInterfaceBitExt = 1 - PreRasterizationShadersBitExt = 2 - FragmentShaderBitExt = 4 - FragmentOutputInterfaceBitExt = 8 + VertexInputInterfaceBit = 1 + PreRasterizationShadersBit + FragmentShaderBit = 4 + FragmentOutputInterfaceBit = 8 VkDeviceAddressBindingFlagBitsEXT* {.size: sizeof(int32).} = enum - InternalObjectBitExt = 1 + InternalObjectBit = 1 VkDeviceAddressBindingTypeEXT* {.size: sizeof(int32).} = enum - BindExt = 0 - UnbindExt = 1 + Bind + Unbind VkFrameBoundaryFlagBitsEXT* {.size: sizeof(int32).} = enum - FrameEndBitExt = 1 + FrameEndBit = 1 VkPresentScalingFlagBitsEXT* {.size: sizeof(int32).} = enum - OneToOneBitExt = 1 - AspectRatioStretchBitExt = 2 - StretchBitExt = 4 + OneToOneBit = 1 + AspectRatioStretchBit + StretchBit = 4 VkPresentGravityFlagBitsEXT* {.size: sizeof(int32).} = enum - MinBitExt = 1 - MaxBitExt = 2 - CenteredBitExt = 4 + MinBit = 1 + MaxBit + CenteredBit = 4 VkPhysicalDeviceSchedulingControlsFlagBitsARM* {.size: sizeof(int32).} = enum VkPhysicalDeviceSchedulingControlsShaderCoreCountArm = 1 VkVideoCodecOperationFlagBitsKHR* {.size: sizeof(int32).} = enum - NoneKhr = 0 + None VkVideoChromaSubsamplingFlagBitsKHR* {.size: sizeof(int32).} = enum - InvalidKhr = 0 - MonochromeBitKhr = 1 - N420BitKhr = 2 - N422BitKhr = 4 - N444BitKhr = 8 + Invalid + MonochromeBit + N420Bit + N422Bit = 4 + N444Bit = 8 VkVideoComponentBitDepthFlagBitsKHR* {.size: sizeof(int32).} = enum - InvalidKhr = 0 - N8BitKhr = 1 - N10BitKhr = 4 - N12BitKhr = 16 + Invalid + N8Bit + N10Bit = 4 + N12Bit = 16 VkVideoCapabilityFlagBitsKHR* {.size: sizeof(int32).} = enum - ProtectedContentBitKhr = 1 - SeparateReferenceImagesBitKhr = 2 + ProtectedContentBit = 1 + SeparateReferenceImagesBit VkVideoSessionCreateFlagBitsKHR* {.size: sizeof(int32).} = enum - ProtectedContentBitKhr = 1 + ProtectedContentBit = 1 VkVideoDecodeH264PictureLayoutFlagBitsKHR* {.size: sizeof(int32).} = enum - ProgressiveKhr = 0 - InterlacedInterleavedLinesBitKhr = 1 - InterlacedSeparatePlanesBitKhr = 2 + Progressive + InterlacedInterleavedLinesBit + InterlacedSeparatePlanesBit VkVideoCodingControlFlagBitsKHR* {.size: sizeof(int32).} = enum - ResetBitKhr = 1 + ResetBit = 1 VkQueryResultStatusKHR* {.size: sizeof(int32).} = enum - ErrorKhr = -1 - NotReadyKhr = 0 - CompleteKhr = 1 + Error = -1 + NotReady + Complete VkVideoDecodeUsageFlagBitsKHR* {.size: sizeof(int32).} = enum - DefaultKhr = 0 - TranscodingBitKhr = 1 - OfflineBitKhr = 2 - StreamingBitKhr = 4 + Default + TranscodingBit + OfflineBit + StreamingBit = 4 VkVideoDecodeCapabilityFlagBitsKHR* {.size: sizeof(int32).} = enum - DpbAndOutputCoincideBitKhr = 1 - DpbAndOutputDistinctBitKhr = 2 + DpbAndOutputCoincideBit = 1 + DpbAndOutputDistinctBit VkVideoEncodeUsageFlagBitsKHR* {.size: sizeof(int32).} = enum - DefaultKhr = 0 - TranscodingBitKhr = 1 - StreamingBitKhr = 2 - RecordingBitKhr = 4 - ConferencingBitKhr = 8 + Default + TranscodingBit + StreamingBit + RecordingBit = 4 + ConferencingBit = 8 VkVideoEncodeContentFlagBitsKHR* {.size: sizeof(int32).} = enum - DefaultKhr = 0 - CameraBitKhr = 1 - DesktopBitKhr = 2 - RenderedBitKhr = 4 + Default + CameraBit + DesktopBit + RenderedBit = 4 VkVideoEncodeTuningModeKHR* {.size: sizeof(int32).} = enum - DefaultKhr = 0 - HighQualityKhr = 1 - LowLatencyKhr = 2 - UltraLowLatencyKhr = 3 - LosslessKhr = 4 + Default + HighQuality + LowLatency + UltraLowLatency + Lossless VkVideoEncodeCapabilityFlagBitsKHR* {.size: sizeof(int32).} = enum - PrecedingExternallyEncodedBytesBitKhr = 1 - InsufficientBitstreamBufferRangeDetectionBitKhr = 2 + PrecedingExternallyEncodedBytesBit = 1 + InsufficientBitstreamBufferRangeDetectionBit VkVideoEncodeFeedbackFlagBitsKHR* {.size: sizeof(int32).} = enum - BitstreamBufferOffsetBitKhr = 1 - BitstreamBytesWrittenBitKhr = 2 - BitstreamHasOverridesBitKhr = 4 + BitstreamBufferOffsetBit = 1 + BitstreamBytesWrittenBit + BitstreamHasOverridesBit = 4 VkVideoEncodeRateControlModeFlagBitsKHR* {.size: sizeof(int32).} = enum - DefaultKhr = 0 - DisabledBitKhr = 1 - CbrBitKhr = 2 - VbrBitKhr = 4 + Default + DisabledBit + CbrBit + VbrBit = 4 VkVideoEncodeH264CapabilityFlagBitsKHR* {.size: sizeof(int32).} = enum - HrdComplianceBitKhr = 1 - PredictionWeightTableGeneratedBitKhr = 2 - RowUnalignedSliceBitKhr = 4 - DifferentSliceTypeBitKhr = 8 - BFrameInL0ListBitKhr = 16 - BFrameInL1ListBitKhr = 32 - PerPictureTypeMinMaxQpBitKhr = 64 - PerSliceConstantQpBitKhr = 128 - GeneratePrefixNaluBitKhr = 256 + HrdComplianceBit = 1 + PredictionWeightTableGeneratedBit + RowUnalignedSliceBit = 4 + DifferentSliceTypeBit = 8 + BFrameInL0ListBit = 16 + BFrameInL1ListBit = 32 + PerPictureTypeMinMaxQpBit = 64 + PerSliceConstantQpBit = 128 + GeneratePrefixNaluBit = 256 VkVideoEncodeH264StdFlagBitsKHR* {.size: sizeof(int32).} = enum - SeparateColorPlaneFlagSetBitKhr = 1 - QpprimeYZeroTransformBypassFlagSetBitKhr = 2 - ScalingMatrixPresentFlagSetBitKhr = 4 - ChromaQpIndexOffsetBitKhr = 8 - SecondChromaQpIndexOffsetBitKhr = 16 - PicInitQpMinus26BitKhr = 32 - WeightedPredFlagSetBitKhr = 64 - WeightedBipredIdcExplicitBitKhr = 128 - WeightedBipredIdcImplicitBitKhr = 256 - Transform8x8ModeFlagSetBitKhr = 512 - DirectSpatialMvPredFlagUnsetBitKhr = 1024 - EntropyCodingModeFlagUnsetBitKhr = 2048 - EntropyCodingModeFlagSetBitKhr = 4096 - Direct8x8InferenceFlagUnsetBitKhr = 8192 - ConstrainedIntraPredFlagSetBitKhr = 16384 - DeblockingFilterDisabledBitKhr = 32768 - DeblockingFilterEnabledBitKhr = 65536 - DeblockingFilterPartialBitKhr = 131072 - SliceQpDeltaBitKhr = 524288 - DifferentSliceQpDeltaBitKhr = 1048576 + SeparateColorPlaneFlagSetBit = 1 + QpprimeYZeroTransformBypassFlagSetBit + ScalingMatrixPresentFlagSetBit = 4 + ChromaQpIndexOffsetBit = 8 + SecondChromaQpIndexOffsetBit = 16 + PicInitQpMinus26Bit = 32 + WeightedPredFlagSetBit = 64 + WeightedBipredIdcExplicitBit = 128 + WeightedBipredIdcImplicitBit = 256 + Transform8x8ModeFlagSetBit = 512 + DirectSpatialMvPredFlagUnsetBit = 1024 + EntropyCodingModeFlagUnsetBit = 2048 + EntropyCodingModeFlagSetBit = 4096 + Direct8x8InferenceFlagUnsetBit = 8192 + ConstrainedIntraPredFlagSetBit = 16384 + DeblockingFilterDisabledBit = 32768 + DeblockingFilterEnabledBit = 65536 + DeblockingFilterPartialBit = 131072 + SliceQpDeltaBit = 524288 + DifferentSliceQpDeltaBit = 1048576 VkVideoEncodeH264RateControlFlagBitsKHR* {.size: sizeof(int32).} = enum - AttemptHrdComplianceBitKhr = 1 - RegularGopBitKhr = 2 - ReferencePatternFlatBitKhr = 4 - ReferencePatternDyadicBitKhr = 8 - TemporalLayerPatternDyadicBitKhr = 16 + AttemptHrdComplianceBit = 1 + RegularGopBit + ReferencePatternFlatBit = 4 + ReferencePatternDyadicBit = 8 + TemporalLayerPatternDyadicBit = 16 VkHostImageCopyFlagBitsEXT* {.size: sizeof(int32).} = enum - MemcpyExt = 1 + Memcpy = 1 VkImageConstraintsInfoFlagBitsFUCHSIA* {.size: sizeof(int32).} = enum VkImageConstraintsInfoCpuReadRarelyFuchsia = 1 - VkImageConstraintsInfoCpuReadOftenFuchsia = 2 + VkImageConstraintsInfoCpuReadOftenFuchsia VkImageConstraintsInfoCpuWriteRarelyFuchsia = 4 VkImageConstraintsInfoCpuWriteOftenFuchsia = 8 VkImageConstraintsInfoProtectedOptionalFuchsia = 16 VkFormatFeatureFlagBits2* {.size: sizeof(int32).} = enum N2SampledImageBit = 1 - N2StorageImageBit = 2 + N2StorageImageBit N2StorageImageAtomicBit = 4 N2UniformTexelBufferBit = 8 N2StorageTexelBufferBit = 16 @@ -1516,230 +1516,230 @@ type N2SampledImageDepthComparisonBit = 8589934592 VkRenderingFlagBits* {.size: sizeof(int32).} = enum ContentsSecondaryCommandBuffersBit = 1 - SuspendingBit = 2 + SuspendingBit ResumingBit = 4 VkVideoEncodeH265CapabilityFlagBitsKHR* {.size: sizeof(int32).} = enum - HrdComplianceBitKhr = 1 - PredictionWeightTableGeneratedBitKhr = 2 - RowUnalignedSliceSegmentBitKhr = 4 - DifferentSliceSegmentTypeBitKhr = 8 - BFrameInL0ListBitKhr = 16 - BFrameInL1ListBitKhr = 32 - PerPictureTypeMinMaxQpBitKhr = 64 - PerSliceSegmentConstantQpBitKhr = 128 - MultipleTilesPerSliceSegmentBitKhr = 256 - MultipleSliceSegmentsPerTileBitKhr = 512 + HrdComplianceBit = 1 + PredictionWeightTableGeneratedBit + RowUnalignedSliceSegmentBit = 4 + DifferentSliceSegmentTypeBit = 8 + BFrameInL0ListBit = 16 + BFrameInL1ListBit = 32 + PerPictureTypeMinMaxQpBit = 64 + PerSliceSegmentConstantQpBit = 128 + MultipleTilesPerSliceSegmentBit = 256 + MultipleSliceSegmentsPerTileBit = 512 VkVideoEncodeH265StdFlagBitsKHR* {.size: sizeof(int32).} = enum - SeparateColorPlaneFlagSetBitKhr = 1 - SampleAdaptiveOffsetEnabledFlagSetBitKhr = 2 - ScalingListDataPresentFlagSetBitKhr = 4 - PcmEnabledFlagSetBitKhr = 8 - SpsTemporalMvpEnabledFlagSetBitKhr = 16 - InitQpMinus26BitKhr = 32 - WeightedPredFlagSetBitKhr = 64 - WeightedBipredFlagSetBitKhr = 128 - Log2ParallelMergeLevelMinus2BitKhr = 256 - SignDataHidingEnabledFlagSetBitKhr = 512 - TransformSkipEnabledFlagSetBitKhr = 1024 - TransformSkipEnabledFlagUnsetBitKhr = 2048 - PpsSliceChromaQpOffsetsPresentFlagSetBitKhr = 4096 - TransquantBypassEnabledFlagSetBitKhr = 8192 - ConstrainedIntraPredFlagSetBitKhr = 16384 - EntropyCodingSyncEnabledFlagSetBitKhr = 32768 - DeblockingFilterOverrideEnabledFlagSetBitKhr = 65536 - DependentSliceSegmentsEnabledFlagSetBitKhr = 131072 - DependentSliceSegmentFlagSetBitKhr = 262144 - SliceQpDeltaBitKhr = 524288 - DifferentSliceQpDeltaBitKhr = 1048576 + SeparateColorPlaneFlagSetBit = 1 + SampleAdaptiveOffsetEnabledFlagSetBit + ScalingListDataPresentFlagSetBit = 4 + PcmEnabledFlagSetBit = 8 + SpsTemporalMvpEnabledFlagSetBit = 16 + InitQpMinus26Bit = 32 + WeightedPredFlagSetBit = 64 + WeightedBipredFlagSetBit = 128 + Log2ParallelMergeLevelMinus2Bit = 256 + SignDataHidingEnabledFlagSetBit = 512 + TransformSkipEnabledFlagSetBit = 1024 + TransformSkipEnabledFlagUnsetBit = 2048 + PpsSliceChromaQpOffsetsPresentFlagSetBit = 4096 + TransquantBypassEnabledFlagSetBit = 8192 + ConstrainedIntraPredFlagSetBit = 16384 + EntropyCodingSyncEnabledFlagSetBit = 32768 + DeblockingFilterOverrideEnabledFlagSetBit = 65536 + DependentSliceSegmentsEnabledFlagSetBit = 131072 + DependentSliceSegmentFlagSetBit = 262144 + SliceQpDeltaBit = 524288 + DifferentSliceQpDeltaBit = 1048576 VkVideoEncodeH265RateControlFlagBitsKHR* {.size: sizeof(int32).} = enum - AttemptHrdComplianceBitKhr = 1 - RegularGopBitKhr = 2 - ReferencePatternFlatBitKhr = 4 - ReferencePatternDyadicBitKhr = 8 - TemporalSubLayerPatternDyadicBitKhr = 16 + AttemptHrdComplianceBit = 1 + RegularGopBit + ReferencePatternFlatBit = 4 + ReferencePatternDyadicBit = 8 + TemporalSubLayerPatternDyadicBit = 16 VkVideoEncodeH265CtbSizeFlagBitsKHR* {.size: sizeof(int32).} = enum - N16BitKhr = 1 - N32BitKhr = 2 - N64BitKhr = 4 + N16Bit = 1 + N32Bit + N64Bit = 4 VkVideoEncodeH265TransformBlockSizeFlagBitsKHR* {.size: sizeof(int32).} = enum - N4BitKhr = 1 - N8BitKhr = 2 - N16BitKhr = 4 - N32BitKhr = 8 + N4Bit = 1 + N8Bit + N16Bit = 4 + N32Bit = 8 VkExportMetalObjectTypeFlagBitsEXT* {.size: sizeof(int32).} = enum - MetalDeviceBitExt = 1 - MetalCommandQueueBitExt = 2 - MetalBufferBitExt = 4 - MetalTextureBitExt = 8 - MetalIosurfaceBitExt = 16 - MetalSharedEventBitExt = 32 + MetalDeviceBit = 1 + MetalCommandQueueBit + MetalBufferBit = 4 + MetalTextureBit = 8 + MetalIosurfaceBit = 16 + MetalSharedEventBit = 32 VkImageCompressionFlagBitsEXT* {.size: sizeof(int32).} = enum - DefaultExt = 0 - FixedRateDefaultExt = 1 - FixedRateExplicitExt = 2 - DisabledExt = 4 + Default + FixedRateDefault + FixedRateExplicit + Disabled = 4 VkImageCompressionFixedRateFlagBitsEXT* {.size: sizeof(int32).} = enum - NoneExt = 0 - N1bpcBitExt = 1 - N2bpcBitExt = 2 - N3bpcBitExt = 4 - N4bpcBitExt = 8 - N5bpcBitExt = 16 - N6bpcBitExt = 32 - N7bpcBitExt = 64 - N8bpcBitExt = 128 - N9bpcBitExt = 256 - N10bpcBitExt = 512 - N11bpcBitExt = 1024 - N12bpcBitExt = 2048 - N13bpcBitExt = 4096 - N14bpcBitExt = 8192 - N15bpcBitExt = 16384 - N16bpcBitExt = 32768 - N17bpcBitExt = 65536 - N18bpcBitExt = 131072 - N19bpcBitExt = 262144 - N20bpcBitExt = 524288 - N21bpcBitExt = 1048576 - N22bpcBitExt = 2097152 - N23bpcBitExt = 4194304 - N24bpcBitExt = 8388608 + None + N1bpcBit + N2bpcBit + N3bpcBit = 4 + N4bpcBit = 8 + N5bpcBit = 16 + N6bpcBit = 32 + N7bpcBit = 64 + N8bpcBit = 128 + N9bpcBit = 256 + N10bpcBit = 512 + N11bpcBit = 1024 + N12bpcBit = 2048 + N13bpcBit = 4096 + N14bpcBit = 8192 + N15bpcBit = 16384 + N16bpcBit = 32768 + N17bpcBit = 65536 + N18bpcBit = 131072 + N19bpcBit = 262144 + N20bpcBit = 524288 + N21bpcBit = 1048576 + N22bpcBit = 2097152 + N23bpcBit = 4194304 + N24bpcBit = 8388608 VkPipelineRobustnessBufferBehaviorEXT* {.size: sizeof(int32).} = enum - DeviceDefaultExt = 0 - DisabledExt = 1 - RobustBufferAccessExt = 2 - RobustBufferAccess2Ext = 3 + DeviceDefault + Disabled + RobustBufferAccess + RobustBufferAccess2 VkPipelineRobustnessImageBehaviorEXT* {.size: sizeof(int32).} = enum - DeviceDefaultExt = 0 - DisabledExt = 1 - RobustImageAccessExt = 2 - RobustImageAccess2Ext = 3 + DeviceDefault + Disabled + RobustImageAccess + RobustImageAccess2 VkOpticalFlowGridSizeFlagBitsNV* {.size: sizeof(int32).} = enum - UnknownNv = 0 - N1x1BitNv = 1 - N2x2BitNv = 2 - N4x4BitNv = 4 - N8x8BitNv = 8 + Unknown + N1x1Bit + N2x2Bit + N4x4Bit = 4 + N8x8Bit = 8 VkOpticalFlowUsageFlagBitsNV* {.size: sizeof(int32).} = enum - UnknownNv = 0 - InputBitNv = 1 - OutputBitNv = 2 - HintBitNv = 4 - CostBitNv = 8 - GlobalFlowBitNv = 16 + Unknown + InputBit + OutputBit + HintBit = 4 + CostBit = 8 + GlobalFlowBit = 16 VkOpticalFlowPerformanceLevelNV* {.size: sizeof(int32).} = enum - UnknownNv = 0 - SlowNv = 1 - MediumNv = 2 - FastNv = 3 + Unknown + Slow + Medium + Fast VkOpticalFlowSessionBindingPointNV* {.size: sizeof(int32).} = enum - UnknownNv = 0 - InputNv = 1 - ReferenceNv = 2 - HintNv = 3 - FlowVectorNv = 4 - BackwardFlowVectorNv = 5 - CostNv = 6 - BackwardCostNv = 7 - GlobalFlowNv = 8 + Unknown + Input + Reference + Hint + FlowVector + BackwardFlowVector + Cost + BackwardCost + GlobalFlow VkOpticalFlowSessionCreateFlagBitsNV* {.size: sizeof(int32).} = enum - EnableHintBitNv = 1 - EnableCostBitNv = 2 - EnableGlobalFlowBitNv = 4 - AllowRegionsBitNv = 8 - BothDirectionsBitNv = 16 + EnableHintBit = 1 + EnableCostBit + EnableGlobalFlowBit = 4 + AllowRegionsBit = 8 + BothDirectionsBit = 16 VkOpticalFlowExecuteFlagBitsNV* {.size: sizeof(int32).} = enum - DisableTemporalHintsBitNv = 1 + DisableTemporalHintsBit = 1 VkMicromapTypeEXT* {.size: sizeof(int32).} = enum - OpacityMicromapExt = 0 + OpacityMicromap VkBuildMicromapFlagBitsEXT* {.size: sizeof(int32).} = enum - PreferFastTraceBitExt = 1 - PreferFastBuildBitExt = 2 - AllowCompactionBitExt = 4 + PreferFastTraceBit = 1 + PreferFastBuildBit + AllowCompactionBit = 4 VkMicromapCreateFlagBitsEXT* {.size: sizeof(int32).} = enum - DeviceAddressCaptureReplayBitExt = 1 + DeviceAddressCaptureReplayBit = 1 VkCopyMicromapModeEXT* {.size: sizeof(int32).} = enum - CloneExt = 0 - SerializeExt = 1 - DeserializeExt = 2 - CompactExt = 3 + Clone + Serialize + Deserialize + Compact VkBuildMicromapModeEXT* {.size: sizeof(int32).} = enum - BuildExt = 0 + Build VkOpacityMicromapFormatEXT* {.size: sizeof(int32).} = enum - N2StateExt = 1 - N4StateExt = 2 + N2State = 1 + N4State VkOpacityMicromapSpecialIndexEXT* {.size: sizeof(int32).} = enum - FullyUnknownOpaqueExt = -4 - FullyUnknownTransparentExt = -3 - FullyOpaqueExt = -2 - FullyTransparentExt = -1 + FullyUnknownOpaque = -4 + FullyUnknownTransparent + FullyOpaque + FullyTransparent VkDepthBiasRepresentationEXT* {.size: sizeof(int32).} = enum - LeastRepresentableValueFormatExt = 0 - LeastRepresentableValueForceUnormExt = 1 - FloatExt = 2 + LeastRepresentableValueFormat + LeastRepresentableValueForceUnorm + Float VkDeviceFaultAddressTypeEXT* {.size: sizeof(int32).} = enum - NoneExt = 0 - ReadInvalidExt = 1 - WriteInvalidExt = 2 - ExecuteInvalidExt = 3 - InstructionPointerUnknownExt = 4 - InstructionPointerInvalidExt = 5 - InstructionPointerFaultExt = 6 + None + ReadInvalid + WriteInvalid + ExecuteInvalid + InstructionPointerUnknown + InstructionPointerInvalid + InstructionPointerFault VkDeviceFaultVendorBinaryHeaderVersionEXT* {.size: sizeof(int32).} = enum - OneExt = 1 + One = 1 VkDisplacementMicromapFormatNV* {.size: sizeof(int32).} = enum - N64Triangles64BytesNv = 1 - N256Triangles128BytesNv = 2 - N1024Triangles128BytesNv = 3 + N64Triangles64Bytes = 1 + N256Triangles128Bytes + N1024Triangles128Bytes VkShaderCreateFlagBitsEXT* {.size: sizeof(int32).} = enum - LinkStageBitExt = 1 + LinkStageBit = 1 VkShaderCodeTypeEXT* {.size: sizeof(int32).} = enum - BinaryExt = 0 - SpirvExt = 1 + Binary + Spirv VkScopeKHR* {.size: sizeof(int32).} = enum - DeviceKhr = 1 - WorkgroupKhr = 2 - SubgroupKhr = 3 - QueueFamilyKhr = 5 + Device = 1 + Workgroup + Subgroup + QueueFamily = 5 VkComponentTypeKHR* {.size: sizeof(int32).} = enum - Float16Khr = 0 - Float32Khr = 1 - Float64Khr = 2 - Sint8Khr = 3 - Sint16Khr = 4 - Sint32Khr = 5 - Sint64Khr = 6 - Uint8Khr = 7 - Uint16Khr = 8 - Uint32Khr = 9 - Uint64Khr = 10 + Float16 + Float32 + Float64 + Sint8 + Sint16 + Sint32 + Sint64 + Uint8 + Uint16 + Uint32 + Uint64 VkCubicFilterWeightsQCOM* {.size: sizeof(int32).} = enum - VkCubicFilterWeightsCatmullRomQcom = 0 - VkCubicFilterWeightsZeroTangentCardinalQcom = 1 - VkCubicFilterWeightsBSplineQcom = 2 - VkCubicFilterWeightsMitchellNetravaliQcom = 3 + VkCubicFilterWeightsCatmullRomQcom + VkCubicFilterWeightsZeroTangentCardinalQcom + VkCubicFilterWeightsBSplineQcom + VkCubicFilterWeightsMitchellNetravaliQcom VkBlockMatchWindowCompareModeQCOM* {.size: sizeof(int32).} = enum - VkBlockMatchWindowCompareModeMinQcom = 0 - VkBlockMatchWindowCompareModeMaxQcom = 1 + VkBlockMatchWindowCompareModeMinQcom + VkBlockMatchWindowCompareModeMaxQcom VkLayeredDriverUnderlyingApiMSFT* {.size: sizeof(int32).} = enum - VkLayeredDriverUnderlyingApiNoneMsft = 0 - VkLayeredDriverUnderlyingApiD3d12Msft = 1 + VkLayeredDriverUnderlyingApiNoneMsft + VkLayeredDriverUnderlyingApiD3d12Msft VkLatencyMarkerNV* {.size: sizeof(int32).} = enum - SimulationStartNv = 0 - SimulationEndNv = 1 - RendersubmitStartNv = 2 - RendersubmitEndNv = 3 - PresentStartNv = 4 - PresentEndNv = 5 - InputSampleNv = 6 - TriggerFlashNv = 7 - OutOfBandRendersubmitStartNv = 8 - OutOfBandRendersubmitEndNv = 9 - OutOfBandPresentStartNv = 10 - OutOfBandPresentEndNv = 11 + SimulationStart + SimulationEnd + RendersubmitStart + RendersubmitEnd + PresentStart + PresentEnd + InputSample + TriggerFlash + OutOfBandRendersubmitStart + OutOfBandRendersubmitEnd + OutOfBandPresentStart + OutOfBandPresentEnd VkOutOfBandQueueTypeNV* {.size: sizeof(int32).} = enum - RenderNv = 0 - PresentNv = 1 + Render + Present # Types diff --git a/tools/generator.nim b/tools/generator.nim index e2598b7..1fbccdb 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -349,6 +349,7 @@ proc genEnums(node: XmlNode, output: var string) = var tmp = name for suf in ["KHR", "EXT", "NV", "INTEL", "AMD", "FlagBits", "FlagBits2"]: tmp.removeSuffix(suf) + for suf in ["Khr", "Ext", "Nv", "Intel", "Amd"]: enumName.removeSuffix(suf) enumName.removePrefix(tmp) if enumName[0] in Digits: @@ -374,10 +375,15 @@ proc genEnums(node: XmlNode, output: var string) = continue output.add(" {name}* {{.size: sizeof(int32).}} = enum\n".fmt) elements.sort(system.cmp) + var prev = -1 for k, v in elements.pairs: if name == "VkStructureType": vkStructureTypes.add(v.replace("_", "")) - output.add(" {v} = {k}\n".fmt) + if prev + 1 != k: + output.add(" {v} = {k}\n".fmt) + else: + output.add(" {v}\n".fmt) + prev = k proc genProcs(node: XmlNode, output: var string) = echo "Generating Procedures..." From 4cb0624eed6a9f5be1b2cc2dee4903920dae5f5e Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Mon, 29 Apr 2024 20:07:12 +0300 Subject: [PATCH 16/57] fix regression --- src/vulkan.nim | 358 +++++++++++++++++++++++++++++++++++++------- tools/generator.nim | 37 ++--- 2 files changed, 322 insertions(+), 73 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 7004755..0f03c0c 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -93,20 +93,25 @@ type TransferSrcOptimal TransferDstOptimal Preinitialized + VkAttachmentLoadOp* {.size: sizeof(int32).} = enum Load Clear DontCare + VkAttachmentStoreOp* {.size: sizeof(int32).} = enum Store DontCare + VkImageType* {.size: sizeof(int32).} = enum N1d N2d N3d + VkImageTiling* {.size: sizeof(int32).} = enum Optimal Linear + VkImageViewType* {.size: sizeof(int32).} = enum N1d N2d @@ -115,9 +120,11 @@ type N1dArray N2dArray CubeArray + VkCommandBufferLevel* {.size: sizeof(int32).} = enum Primary Secondary + VkComponentSwizzle* {.size: sizeof(int32).} = enum Identity Zero @@ -126,6 +133,7 @@ type G B A + VkDescriptorType* {.size: sizeof(int32).} = enum Sampler CombinedImageSampler @@ -138,10 +146,12 @@ type UniformBufferDynamic StorageBufferDynamic InputAttachment + VkQueryType* {.size: sizeof(int32).} = enum Occlusion PipelineStatistics Timestamp + VkBorderColor* {.size: sizeof(int32).} = enum FloatTransparentBlack IntTransparentBlack @@ -149,11 +159,14 @@ type IntOpaqueBlack FloatOpaqueWhite IntOpaqueWhite + VkPipelineBindPoint* {.size: sizeof(int32).} = enum Graphics Compute + VkPipelineCacheHeaderVersion* {.size: sizeof(int32).} = enum One = 1 + VkPrimitiveTopology* {.size: sizeof(int32).} = enum PointList LineList @@ -166,23 +179,29 @@ type TriangleListWithAdjacency TriangleStripWithAdjacency PatchList + VkSharingMode* {.size: sizeof(int32).} = enum Exclusive Concurrent + VkIndexType* {.size: sizeof(int32).} = enum Uint16 Uint32 + VkFilter* {.size: sizeof(int32).} = enum Nearest Linear + VkSamplerMipmapMode* {.size: sizeof(int32).} = enum Nearest Linear + VkSamplerAddressMode* {.size: sizeof(int32).} = enum Repeat MirroredRepeat ClampToEdge ClampToBorder + VkCompareOp* {.size: sizeof(int32).} = enum Never Less @@ -192,13 +211,16 @@ type NotEqual GreaterOrEqual Always + VkPolygonMode* {.size: sizeof(int32).} = enum Fill Line Point + VkFrontFace* {.size: sizeof(int32).} = enum CounterClockwise Clockwise + VkBlendFactor* {.size: sizeof(int32).} = enum Zero One @@ -219,12 +241,14 @@ type OneMinusSrc1Color Src1Alpha OneMinusSrc1Alpha + VkBlendOp* {.size: sizeof(int32).} = enum Add Subtract ReverseSubtract Min Max + VkStencilOp* {.size: sizeof(int32).} = enum Keep Zero @@ -234,6 +258,7 @@ type Invert IncrementAndWrap DecrementAndWrap + VkLogicOp* {.size: sizeof(int32).} = enum Clear And @@ -251,23 +276,28 @@ type OrInverted Nand Set + VkInternalAllocationType* {.size: sizeof(int32).} = enum Executable + VkSystemAllocationScope* {.size: sizeof(int32).} = enum Command Object Cache Device Instance + VkPhysicalDeviceType* {.size: sizeof(int32).} = enum Other IntegratedGpu DiscreteGpu VirtualGpu Cpu + VkVertexInputRate* {.size: sizeof(int32).} = enum Vertex Instance + VkFormat* {.size: sizeof(int32).} = enum Undefined R4g4UnormPack8 @@ -454,6 +484,7 @@ type Astc12x10SrgbBlock Astc12x12UnormBlock Astc12x12SrgbBlock + VkStructureType* {.size: sizeof(int32).} = enum ApplicationInfo InstanceCreateInfo @@ -504,9 +535,11 @@ type MemoryBarrier LoaderInstanceCreateInfo LoaderDeviceCreateInfo + VkSubpassContents* {.size: sizeof(int32).} = enum Inline SecondaryCommandBuffers + VkResult* {.size: sizeof(int32).} = enum VkErrorUnknown = -13 VkErrorFragmentedPool @@ -527,6 +560,7 @@ type VkEventSet VkEventReset VkIncomplete + VkDynamicState* {.size: sizeof(int32).} = enum Viewport Scissor @@ -537,8 +571,10 @@ type StencilCompareMask StencilWriteMask StencilReference + VkDescriptorUpdateTemplateType* {.size: sizeof(int32).} = enum DescriptorSet + VkObjectType* {.size: sizeof(int32).} = enum Unknown Instance @@ -566,30 +602,37 @@ type DescriptorSet Framebuffer CommandPool + VkRayTracingInvocationReorderModeNV* {.size: sizeof(int32).} = enum None Reorder + VkDirectDriverLoadingModeLUNARG* {.size: sizeof(int32).} = enum VkDirectDriverLoadingModeExclusiveLunarg VkDirectDriverLoadingModeInclusiveLunarg + VkQueueFlagBits* {.size: sizeof(int32).} = enum GraphicsBit = 1 ComputeBit TransferBit = 4 SparseBindingBit = 8 + VkCullModeFlagBits* {.size: sizeof(int32).} = enum None FrontBit BackBit FrontAndBack + VkMemoryPropertyFlagBits* {.size: sizeof(int32).} = enum DeviceLocalBit = 1 HostVisibleBit HostCoherentBit = 4 HostCachedBit = 8 LazilyAllocatedBit = 16 + VkMemoryHeapFlagBits* {.size: sizeof(int32).} = enum DeviceLocalBit = 1 + VkAccessFlagBits* {.size: sizeof(int32).} = enum IndirectCommandReadBit = 1 IndexReadBit @@ -608,6 +651,7 @@ type HostWriteBit = 16384 MemoryReadBit = 32768 MemoryWriteBit = 65536 + VkBufferUsageFlagBits* {.size: sizeof(int32).} = enum TransferSrcBit = 1 TransferDstBit @@ -618,6 +662,7 @@ type IndexBufferBit = 64 VertexBufferBit = 128 IndirectBufferBit = 256 + VkBufferUsageFlagBits2KHR* {.size: sizeof(int32).} = enum N2TransferSrcBit = 1 N2TransferDstBit @@ -628,10 +673,12 @@ type N2IndexBufferBit = 64 N2VertexBufferBit = 128 N2IndirectBufferBit = 256 + VkBufferCreateFlagBits* {.size: sizeof(int32).} = enum SparseBindingBit = 1 SparseResidencyBit SparseAliasedBit = 4 + VkShaderStageFlagBits* {.size: sizeof(int32).} = enum VertexBit = 1 TessellationControlBit @@ -641,6 +688,7 @@ type AllGraphics = 31 ComputeBit All = 2147483647 + VkImageUsageFlagBits* {.size: sizeof(int32).} = enum TransferSrcBit = 1 TransferDstBit @@ -650,27 +698,33 @@ type DepthStencilAttachmentBit = 32 TransientAttachmentBit = 64 InputAttachmentBit = 128 + VkImageCreateFlagBits* {.size: sizeof(int32).} = enum SparseBindingBit = 1 SparseResidencyBit SparseAliasedBit = 4 MutableFormatBit = 8 CubeCompatibleBit = 16 + VkPipelineCreateFlagBits* {.size: sizeof(int32).} = enum DisableOptimizationBit = 1 AllowDerivativesBit DerivativeBit = 4 + VkPipelineCreateFlagBits2KHR* {.size: sizeof(int32).} = enum N2DisableOptimizationBit = 1 N2AllowDerivativesBit N2DerivativeBit = 4 + VkColorComponentFlagBits* {.size: sizeof(int32).} = enum RBit = 1 GBit BBit = 4 ABit = 8 + VkFenceCreateFlagBits* {.size: sizeof(int32).} = enum SignaledBit = 1 + VkFormatFeatureFlagBits* {.size: sizeof(int32).} = enum SampledImageBit = 1 StorageImageBit @@ -685,17 +739,21 @@ type BlitSrcBit = 1024 BlitDstBit = 2048 SampledImageFilterLinearBit = 4096 + VkQueryControlFlagBits* {.size: sizeof(int32).} = enum PreciseBit = 1 + VkQueryResultFlagBits* {.size: sizeof(int32).} = enum N64Bit = 1 WaitBit WithAvailabilityBit = 4 PartialBit = 8 + VkCommandBufferUsageFlagBits* {.size: sizeof(int32).} = enum OneTimeSubmitBit = 1 RenderPassContinueBit SimultaneousUseBit = 4 + VkQueryPipelineStatisticFlagBits* {.size: sizeof(int32).} = enum InputAssemblyVerticesBit = 1 InputAssemblyPrimitivesBit @@ -708,17 +766,21 @@ type TessellationControlShaderPatchesBit = 256 TessellationEvaluationShaderInvocationsBit = 512 ComputeShaderInvocationsBit = 1024 + VkImageAspectFlagBits* {.size: sizeof(int32).} = enum ColorBit = 1 DepthBit StencilBit = 4 MetadataBit = 8 + VkSparseImageFormatFlagBits* {.size: sizeof(int32).} = enum SingleMiptailBit = 1 AlignedMipSizeBit NonstandardBlockSizeBit = 4 + VkSparseMemoryBindFlagBits* {.size: sizeof(int32).} = enum MetadataBit = 1 + VkPipelineStageFlagBits* {.size: sizeof(int32).} = enum TopOfPipeBit = 1 DrawIndirectBit @@ -737,13 +799,17 @@ type HostBit = 16384 AllGraphicsBit = 32768 AllCommandsBit = 65536 + VkCommandPoolCreateFlagBits* {.size: sizeof(int32).} = enum TransientBit = 1 ResetCommandBufferBit + VkCommandPoolResetFlagBits* {.size: sizeof(int32).} = enum ReleaseResourcesBit = 1 + VkCommandBufferResetFlagBits* {.size: sizeof(int32).} = enum ReleaseResourcesBit = 1 + VkSampleCountFlagBits* {.size: sizeof(int32).} = enum N1Bit = 1 N2Bit @@ -752,38 +818,49 @@ type N16Bit = 16 N32Bit = 32 N64Bit = 64 + VkAttachmentDescriptionFlagBits* {.size: sizeof(int32).} = enum MayAliasBit = 1 + VkStencilFaceFlagBits* {.size: sizeof(int32).} = enum FrontBit = 1 BackBit FrontAndBack + VkDescriptorPoolCreateFlagBits* {.size: sizeof(int32).} = enum FreeDescriptorSetBit = 1 + VkDependencyFlagBits* {.size: sizeof(int32).} = enum ByRegionBit = 1 + VkSemaphoreType* {.size: sizeof(int32).} = enum Binary Timeline + VkSemaphoreWaitFlagBits* {.size: sizeof(int32).} = enum AnyBit = 1 + VkPresentModeKHR* {.size: sizeof(int32).} = enum Immediate Mailbox Fifo FifoRelaxed + VkColorSpaceKHR* {.size: sizeof(int32).} = enum SrgbNonlinear + VkDisplayPlaneAlphaFlagBitsKHR* {.size: sizeof(int32).} = enum OpaqueBit = 1 GlobalBit PerPixelBit = 4 PerPixelPremultipliedBit = 8 + VkCompositeAlphaFlagBitsKHR* {.size: sizeof(int32).} = enum OpaqueBit = 1 PreMultipliedBit PostMultipliedBit = 4 InheritBit = 8 + VkSurfaceTransformFlagBitsKHR* {.size: sizeof(int32).} = enum IdentityBit = 1 Rotate90Bit @@ -794,19 +871,23 @@ type HorizontalMirrorRotate180Bit = 64 HorizontalMirrorRotate270Bit = 128 InheritBit = 256 + VkSwapchainImageUsageFlagBitsANDROID* {.size: sizeof(int32).} = enum - VkSwapchainImageUsageSharedBitAndroid = 1 + SharedBit = 1 + VkTimeDomainKHR* {.size: sizeof(int32).} = enum Device ClockMonotonic ClockMonotonicRaw QueryPerformanceCounter + VkDebugReportFlagBitsEXT* {.size: sizeof(int32).} = enum InformationBit = 1 WarningBit PerformanceWarningBit = 4 ErrorBit = 8 DebugBit = 16 + VkDebugReportObjectTypeEXT* {.size: sizeof(int32).} = enum Unknown Instance @@ -840,33 +921,40 @@ type DisplayKhr DisplayModeKhr ValidationCacheExt = 33 + VkDeviceMemoryReportEventTypeEXT* {.size: sizeof(int32).} = enum Allocate Free Import Unimport AllocationFailed + VkRasterizationOrderAMD* {.size: sizeof(int32).} = enum Strict Relaxed + VkExternalMemoryHandleTypeFlagBitsNV* {.size: sizeof(int32).} = enum OpaqueWin32Bit = 1 OpaqueWin32KmtBit D3d11ImageBit = 4 D3d11ImageKmtBit = 8 + VkExternalMemoryFeatureFlagBitsNV* {.size: sizeof(int32).} = enum DedicatedOnlyBit = 1 ExportableBit ImportableBit = 4 + VkValidationCheckEXT* {.size: sizeof(int32).} = enum All Shaders + VkValidationFeatureEnableEXT* {.size: sizeof(int32).} = enum GpuAssisted GpuAssistedReserveBindingSlot BestPractices DebugPrintf SynchronizationValidation + VkValidationFeatureDisableEXT* {.size: sizeof(int32).} = enum All Shaders @@ -876,6 +964,7 @@ type CoreChecks UniqueHandles ShaderValidationCache + VkLayerSettingTypeEXT* {.size: sizeof(int32).} = enum Bool32 Int32 @@ -885,6 +974,7 @@ type Float32 Float64 String + VkSubgroupFeatureFlagBits* {.size: sizeof(int32).} = enum BasicBit = 1 VoteBit @@ -894,12 +984,15 @@ type ShuffleRelativeBit = 32 ClusteredBit = 64 QuadBit = 128 + VkIndirectCommandsLayoutUsageFlagBitsNV* {.size: sizeof(int32).} = enum ExplicitPreprocessBit = 1 IndexedSequencesBit UnorderedSequencesBit = 4 + VkIndirectStateFlagBitsNV* {.size: sizeof(int32).} = enum FlagFrontfaceBit = 1 + VkIndirectCommandsTokenTypeNV* {.size: sizeof(int32).} = enum ShaderGroup StateFlags @@ -909,6 +1002,7 @@ type DrawIndexed Draw DrawTasks + VkExternalMemoryHandleTypeFlagBits* {.size: sizeof(int32).} = enum OpaqueFdBit = 1 OpaqueWin32Bit @@ -917,53 +1011,68 @@ type D3d11TextureKmtBit = 16 D3d12HeapBit = 32 D3d12ResourceBit = 64 + VkExternalMemoryFeatureFlagBits* {.size: sizeof(int32).} = enum DedicatedOnlyBit = 1 ExportableBit ImportableBit = 4 + VkExternalSemaphoreHandleTypeFlagBits* {.size: sizeof(int32).} = enum OpaqueFdBit = 1 OpaqueWin32Bit OpaqueWin32KmtBit = 4 D3d12FenceBit = 8 SyncFdBit = 16 + VkExternalSemaphoreFeatureFlagBits* {.size: sizeof(int32).} = enum ExportableBit = 1 ImportableBit + VkSemaphoreImportFlagBits* {.size: sizeof(int32).} = enum TemporaryBit = 1 + VkExternalFenceHandleTypeFlagBits* {.size: sizeof(int32).} = enum OpaqueFdBit = 1 OpaqueWin32Bit OpaqueWin32KmtBit = 4 SyncFdBit = 8 + VkExternalFenceFeatureFlagBits* {.size: sizeof(int32).} = enum ExportableBit = 1 ImportableBit + VkFenceImportFlagBits* {.size: sizeof(int32).} = enum TemporaryBit = 1 + VkSurfaceCounterFlagBitsEXT* {.size: sizeof(int32).} = enum VblankBit = 1 + VkDisplayPowerStateEXT* {.size: sizeof(int32).} = enum Off Suspend On + VkDeviceEventTypeEXT* {.size: sizeof(int32).} = enum DisplayHotplug + VkDisplayEventTypeEXT* {.size: sizeof(int32).} = enum FirstPixelOut + VkPeerMemoryFeatureFlagBits* {.size: sizeof(int32).} = enum CopySrcBit = 1 CopyDstBit GenericSrcBit = 4 GenericDstBit = 8 + VkMemoryAllocateFlagBits* {.size: sizeof(int32).} = enum DeviceMaskBit = 1 + VkDeviceGroupPresentModeFlagBitsKHR* {.size: sizeof(int32).} = enum LocalBit = 1 RemoteBit SumBit = 4 LocalMultiDeviceBit = 8 + VkViewportCoordinateSwizzleNV* {.size: sizeof(int32).} = enum PositiveX NegativeX @@ -973,72 +1082,90 @@ type NegativeZ PositiveW NegativeW + VkDiscardRectangleModeEXT* {.size: sizeof(int32).} = enum Inclusive Exclusive + VkPointClippingBehavior* {.size: sizeof(int32).} = enum AllClipPlanes UserClipPlanesOnly + VkSamplerReductionMode* {.size: sizeof(int32).} = enum WeightedAverage Min Max + VkTessellationDomainOrigin* {.size: sizeof(int32).} = enum UpperLeft LowerLeft + VkSamplerYcbcrModelConversion* {.size: sizeof(int32).} = enum RgbIdentity YcbcrIdentity Ycbcr709 Ycbcr601 Ycbcr2020 + VkSamplerYcbcrRange* {.size: sizeof(int32).} = enum ItuFull ItuNarrow + VkChromaLocation* {.size: sizeof(int32).} = enum CositedEven Midpoint + VkBlendOverlapEXT* {.size: sizeof(int32).} = enum Uncorrelated Disjoint Conjoint + VkCoverageModulationModeNV* {.size: sizeof(int32).} = enum None Rgb Alpha Rgba + VkCoverageReductionModeNV* {.size: sizeof(int32).} = enum Merge Truncate + VkValidationCacheHeaderVersionEXT* {.size: sizeof(int32).} = enum One = 1 + VkShaderInfoTypeAMD* {.size: sizeof(int32).} = enum Statistics Binary Disassembly + VkQueueGlobalPriorityKHR* {.size: sizeof(int32).} = enum Low = 128 Medium = 256 High = 512 Realtime = 1024 + VkDebugUtilsMessageSeverityFlagBitsEXT* {.size: sizeof(int32).} = enum VerboseBit = 1 InfoBit = 16 WarningBit = 256 ErrorBit = 4096 + VkDebugUtilsMessageTypeFlagBitsEXT* {.size: sizeof(int32).} = enum GeneralBit = 1 ValidationBit PerformanceBit = 4 + VkConservativeRasterizationModeEXT* {.size: sizeof(int32).} = enum Disabled Overestimate Underestimate + VkDescriptorBindingFlagBits* {.size: sizeof(int32).} = enum UpdateAfterBindBit = 1 UpdateUnusedWhilePendingBit PartiallyBoundBit = 4 VariableDescriptorCountBit = 8 + VkVendorId* {.size: sizeof(int32).} = enum Viv = 65537 Vsi @@ -1047,6 +1174,7 @@ type Mesa Pocl Mobileye + VkDriverId* {.size: sizeof(int32).} = enum AmdProprietary = 1 AmdOpenSource @@ -1074,14 +1202,17 @@ type MesaNvk ImaginationOpenSourceMesa MesaAgxv + VkConditionalRenderingFlagBitsEXT* {.size: sizeof(int32).} = enum InvertedBit = 1 + VkResolveModeFlagBits* {.size: sizeof(int32).} = enum None SampleZeroBit AverageBit MinBit = 4 MaxBit = 8 + VkShadingRatePaletteEntryNV* {.size: sizeof(int32).} = enum NoInvocations N16InvocationsPerPixel @@ -1095,87 +1226,108 @@ type N1InvocationPer4x2Pixels N1InvocationPer2x4Pixels N1InvocationPer4x4Pixels + VkCoarseSampleOrderTypeNV* {.size: sizeof(int32).} = enum Default Custom PixelMajor SampleMajor + VkGeometryInstanceFlagBitsKHR* {.size: sizeof(int32).} = enum TriangleFacingCullDisableBit = 1 TriangleFlipFacingBit ForceOpaqueBit = 4 ForceNoOpaqueBit = 8 + VkGeometryFlagBitsKHR* {.size: sizeof(int32).} = enum OpaqueBit = 1 NoDuplicateAnyHitInvocationBit + VkBuildAccelerationStructureFlagBitsKHR* {.size: sizeof(int32).} = enum AllowUpdateBit = 1 AllowCompactionBit PreferFastTraceBit = 4 PreferFastBuildBit = 8 LowMemoryBit = 16 + VkAccelerationStructureCreateFlagBitsKHR* {.size: sizeof(int32).} = enum DeviceAddressCaptureReplayBit = 1 + VkCopyAccelerationStructureModeKHR* {.size: sizeof(int32).} = enum Clone Compact Serialize Deserialize + VkBuildAccelerationStructureModeKHR* {.size: sizeof(int32).} = enum Build Update + VkAccelerationStructureTypeKHR* {.size: sizeof(int32).} = enum TopLevel BottomLevel Generic + VkGeometryTypeKHR* {.size: sizeof(int32).} = enum Triangles Aabbs Instances + VkAccelerationStructureMemoryRequirementsTypeNV* {.size: sizeof(int32).} = enum Object BuildScratch UpdateScratch + VkAccelerationStructureBuildTypeKHR* {.size: sizeof(int32).} = enum Host Device HostOrDevice + VkRayTracingShaderGroupTypeKHR* {.size: sizeof(int32).} = enum General TrianglesHitGroup ProceduralHitGroup + VkAccelerationStructureCompatibilityKHR* {.size: sizeof(int32).} = enum Compatible Incompatible + VkShaderGroupShaderKHR* {.size: sizeof(int32).} = enum General ClosestHit AnyHit Intersection + VkMemoryOverallocationBehaviorAMD* {.size: sizeof(int32).} = enum Default Allowed Disallowed + VkDeviceDiagnosticsConfigFlagBitsNV* {.size: sizeof(int32).} = enum EnableShaderDebugInfoBit = 1 EnableResourceTrackingBit EnableAutomaticCheckpointsBit = 4 EnableShaderErrorReportingBit = 8 + VkPipelineCreationFeedbackFlagBits* {.size: sizeof(int32).} = enum ValidBit = 1 ApplicationPipelineCacheHitBit BasePipelineAccelerationBit = 4 + VkFullScreenExclusiveEXT* {.size: sizeof(int32).} = enum Default Allowed Disallowed ApplicationControlled + VkPerformanceCounterScopeKHR* {.size: sizeof(int32).} = enum CommandBuffer RenderPass Command + VkMemoryDecompressionMethodFlagBitsNV* {.size: sizeof(int32).} = enum Gdeflate10Bit = 1 + VkPerformanceCounterUnitKHR* {.size: sizeof(int32).} = enum Generic Percentage @@ -1188,6 +1340,7 @@ type Amps Hertz Cycles + VkPerformanceCounterStorageKHR* {.size: sizeof(int32).} = enum Int32 Int64 @@ -1195,44 +1348,55 @@ type Uint64 Float32 Float64 + VkPerformanceCounterDescriptionFlagBitsKHR* {.size: sizeof(int32).} = enum PerformanceImpactingBit = 1 ConcurrentlyImpactedBit + VkPerformanceConfigurationTypeINTEL* {.size: sizeof(int32).} = enum CommandQueueMetricsDiscoveryActivated + VkQueryPoolSamplingModeINTEL* {.size: sizeof(int32).} = enum Manual + VkPerformanceOverrideTypeINTEL* {.size: sizeof(int32).} = enum NullHardware FlushGpuCaches + VkPerformanceParameterTypeINTEL* {.size: sizeof(int32).} = enum HwCountersSupported StreamMarkerValidBits + VkPerformanceValueTypeINTEL* {.size: sizeof(int32).} = enum Uint32 Uint64 Float Bool String + VkShaderFloatControlsIndependence* {.size: sizeof(int32).} = enum N32BitOnly All None + VkPipelineExecutableStatisticFormatKHR* {.size: sizeof(int32).} = enum Bool32 Int64 Uint64 Float64 + VkLineRasterizationModeKHR* {.size: sizeof(int32).} = enum Default Rectangular Bresenham RectangularSmooth + VkFaultLevel* {.size: sizeof(int32).} = enum Unassigned Critical Recoverable Warning + VkFaultType* {.size: sizeof(int32).} = enum Invalid Unassigned @@ -1241,22 +1405,27 @@ type PhysicalDevice CommandBufferFull InvalidApiUsage + VkFaultQueryBehavior* {.size: sizeof(int32).} = enum GetAndClearAllFaults + VkToolPurposeFlagBits* {.size: sizeof(int32).} = enum ValidationBit = 1 ProfilingBit TracingBit = 4 AdditionalFeaturesBit = 8 ModifyingFeaturesBit = 16 + VkPipelineMatchControl* {.size: sizeof(int32).} = enum ApplicationUuidExactMatch + VkFragmentShadingRateCombinerOpKHR* {.size: sizeof(int32).} = enum Keep Replace Min Max Mul + VkFragmentShadingRateNV* {.size: sizeof(int32).} = enum N1InvocationPerPixel N1InvocationPer1x2Pixels @@ -1270,9 +1439,11 @@ type N8InvocationsPerPixel N16InvocationsPerPixel NoInvocations + VkFragmentShadingRateTypeNV* {.size: sizeof(int32).} = enum FragmentSize Enums + VkSubpassMergeStatusEXT* {.size: sizeof(int32).} = enum Merged Disallowed @@ -1288,6 +1459,7 @@ type NotMergedResolveAttachmentReuse NotMergedSingleSubpass NotMergedUnspecified + VkAccessFlagBits2* {.size: sizeof(int32).} = enum N2None N2IndirectCommandReadBit @@ -1310,6 +1482,7 @@ type N2ShaderSampledReadBit = 4294967296 N2ShaderStorageReadBit = 8589934592 N2ShaderStorageWriteBit = 17179869184 + VkPipelineStageFlagBits2* {.size: sizeof(int32).} = enum N2None N2TopOfPipeBit @@ -1336,111 +1509,141 @@ type N2IndexInputBit = 68719476736 N2VertexAttributeInputBit = 137438953472 N2PreRasterizationShadersBit = 274877906944 + VkSubmitFlagBits* {.size: sizeof(int32).} = enum ProtectedBit = 1 + VkSciSyncClientTypeNV* {.size: sizeof(int32).} = enum Signaler Waiter SignalerWaiter + VkSciSyncPrimitiveTypeNV* {.size: sizeof(int32).} = enum Fence Semaphore + VkProvokingVertexModeEXT* {.size: sizeof(int32).} = enum FirstVertex LastVertex + VkPipelineCacheValidationVersion* {.size: sizeof(int32).} = enum SafetyCriticalOne = 1 + VkAccelerationStructureMotionInstanceTypeNV* {.size: sizeof(int32).} = enum Static MatrixMotion SrtMotion + VkGraphicsPipelineLibraryFlagBitsEXT* {.size: sizeof(int32).} = enum VertexInputInterfaceBit = 1 PreRasterizationShadersBit FragmentShaderBit = 4 FragmentOutputInterfaceBit = 8 + VkDeviceAddressBindingFlagBitsEXT* {.size: sizeof(int32).} = enum InternalObjectBit = 1 + VkDeviceAddressBindingTypeEXT* {.size: sizeof(int32).} = enum Bind Unbind + VkFrameBoundaryFlagBitsEXT* {.size: sizeof(int32).} = enum FrameEndBit = 1 + VkPresentScalingFlagBitsEXT* {.size: sizeof(int32).} = enum OneToOneBit = 1 AspectRatioStretchBit StretchBit = 4 + VkPresentGravityFlagBitsEXT* {.size: sizeof(int32).} = enum MinBit = 1 MaxBit CenteredBit = 4 + VkPhysicalDeviceSchedulingControlsFlagBitsARM* {.size: sizeof(int32).} = enum VkPhysicalDeviceSchedulingControlsShaderCoreCountArm = 1 + VkVideoCodecOperationFlagBitsKHR* {.size: sizeof(int32).} = enum None + VkVideoChromaSubsamplingFlagBitsKHR* {.size: sizeof(int32).} = enum Invalid MonochromeBit N420Bit N422Bit = 4 N444Bit = 8 + VkVideoComponentBitDepthFlagBitsKHR* {.size: sizeof(int32).} = enum Invalid N8Bit N10Bit = 4 N12Bit = 16 + VkVideoCapabilityFlagBitsKHR* {.size: sizeof(int32).} = enum ProtectedContentBit = 1 SeparateReferenceImagesBit + VkVideoSessionCreateFlagBitsKHR* {.size: sizeof(int32).} = enum ProtectedContentBit = 1 + VkVideoDecodeH264PictureLayoutFlagBitsKHR* {.size: sizeof(int32).} = enum Progressive InterlacedInterleavedLinesBit InterlacedSeparatePlanesBit + VkVideoCodingControlFlagBitsKHR* {.size: sizeof(int32).} = enum ResetBit = 1 + VkQueryResultStatusKHR* {.size: sizeof(int32).} = enum Error = -1 NotReady Complete + VkVideoDecodeUsageFlagBitsKHR* {.size: sizeof(int32).} = enum Default TranscodingBit OfflineBit StreamingBit = 4 + VkVideoDecodeCapabilityFlagBitsKHR* {.size: sizeof(int32).} = enum DpbAndOutputCoincideBit = 1 DpbAndOutputDistinctBit + VkVideoEncodeUsageFlagBitsKHR* {.size: sizeof(int32).} = enum Default TranscodingBit StreamingBit RecordingBit = 4 ConferencingBit = 8 + VkVideoEncodeContentFlagBitsKHR* {.size: sizeof(int32).} = enum Default CameraBit DesktopBit RenderedBit = 4 + VkVideoEncodeTuningModeKHR* {.size: sizeof(int32).} = enum Default HighQuality LowLatency UltraLowLatency Lossless + VkVideoEncodeCapabilityFlagBitsKHR* {.size: sizeof(int32).} = enum PrecedingExternallyEncodedBytesBit = 1 InsufficientBitstreamBufferRangeDetectionBit + VkVideoEncodeFeedbackFlagBitsKHR* {.size: sizeof(int32).} = enum BitstreamBufferOffsetBit = 1 BitstreamBytesWrittenBit BitstreamHasOverridesBit = 4 + VkVideoEncodeRateControlModeFlagBitsKHR* {.size: sizeof(int32).} = enum Default DisabledBit CbrBit VbrBit = 4 + VkVideoEncodeH264CapabilityFlagBitsKHR* {.size: sizeof(int32).} = enum HrdComplianceBit = 1 PredictionWeightTableGeneratedBit @@ -1451,6 +1654,7 @@ type PerPictureTypeMinMaxQpBit = 64 PerSliceConstantQpBit = 128 GeneratePrefixNaluBit = 256 + VkVideoEncodeH264StdFlagBitsKHR* {.size: sizeof(int32).} = enum SeparateColorPlaneFlagSetBit = 1 QpprimeYZeroTransformBypassFlagSetBit @@ -1472,20 +1676,24 @@ type DeblockingFilterPartialBit = 131072 SliceQpDeltaBit = 524288 DifferentSliceQpDeltaBit = 1048576 + VkVideoEncodeH264RateControlFlagBitsKHR* {.size: sizeof(int32).} = enum AttemptHrdComplianceBit = 1 RegularGopBit ReferencePatternFlatBit = 4 ReferencePatternDyadicBit = 8 TemporalLayerPatternDyadicBit = 16 + VkHostImageCopyFlagBitsEXT* {.size: sizeof(int32).} = enum Memcpy = 1 + VkImageConstraintsInfoFlagBitsFUCHSIA* {.size: sizeof(int32).} = enum VkImageConstraintsInfoCpuReadRarelyFuchsia = 1 VkImageConstraintsInfoCpuReadOftenFuchsia VkImageConstraintsInfoCpuWriteRarelyFuchsia = 4 VkImageConstraintsInfoCpuWriteOftenFuchsia = 8 VkImageConstraintsInfoProtectedOptionalFuchsia = 16 + VkFormatFeatureFlagBits2* {.size: sizeof(int32).} = enum N2SampledImageBit = 1 N2StorageImageBit @@ -1514,10 +1722,12 @@ type N2StorageReadWithoutFormatBit = 2147483648 N2StorageWriteWithoutFormatBit = 4294967296 N2SampledImageDepthComparisonBit = 8589934592 + VkRenderingFlagBits* {.size: sizeof(int32).} = enum ContentsSecondaryCommandBuffersBit = 1 SuspendingBit ResumingBit = 4 + VkVideoEncodeH265CapabilityFlagBitsKHR* {.size: sizeof(int32).} = enum HrdComplianceBit = 1 PredictionWeightTableGeneratedBit @@ -1529,6 +1739,7 @@ type PerSliceSegmentConstantQpBit = 128 MultipleTilesPerSliceSegmentBit = 256 MultipleSliceSegmentsPerTileBit = 512 + VkVideoEncodeH265StdFlagBitsKHR* {.size: sizeof(int32).} = enum SeparateColorPlaneFlagSetBit = 1 SampleAdaptiveOffsetEnabledFlagSetBit @@ -1551,21 +1762,25 @@ type DependentSliceSegmentFlagSetBit = 262144 SliceQpDeltaBit = 524288 DifferentSliceQpDeltaBit = 1048576 + VkVideoEncodeH265RateControlFlagBitsKHR* {.size: sizeof(int32).} = enum AttemptHrdComplianceBit = 1 RegularGopBit ReferencePatternFlatBit = 4 ReferencePatternDyadicBit = 8 TemporalSubLayerPatternDyadicBit = 16 + VkVideoEncodeH265CtbSizeFlagBitsKHR* {.size: sizeof(int32).} = enum N16Bit = 1 N32Bit N64Bit = 4 + VkVideoEncodeH265TransformBlockSizeFlagBitsKHR* {.size: sizeof(int32).} = enum N4Bit = 1 N8Bit N16Bit = 4 N32Bit = 8 + VkExportMetalObjectTypeFlagBitsEXT* {.size: sizeof(int32).} = enum MetalDeviceBit = 1 MetalCommandQueueBit @@ -1573,11 +1788,13 @@ type MetalTextureBit = 8 MetalIosurfaceBit = 16 MetalSharedEventBit = 32 + VkImageCompressionFlagBitsEXT* {.size: sizeof(int32).} = enum Default FixedRateDefault FixedRateExplicit Disabled = 4 + VkImageCompressionFixedRateFlagBitsEXT* {.size: sizeof(int32).} = enum None N1bpcBit @@ -1604,22 +1821,26 @@ type N22bpcBit = 2097152 N23bpcBit = 4194304 N24bpcBit = 8388608 + VkPipelineRobustnessBufferBehaviorEXT* {.size: sizeof(int32).} = enum DeviceDefault Disabled RobustBufferAccess RobustBufferAccess2 + VkPipelineRobustnessImageBehaviorEXT* {.size: sizeof(int32).} = enum DeviceDefault Disabled RobustImageAccess RobustImageAccess2 + VkOpticalFlowGridSizeFlagBitsNV* {.size: sizeof(int32).} = enum Unknown N1x1Bit N2x2Bit N4x4Bit = 4 N8x8Bit = 8 + VkOpticalFlowUsageFlagBitsNV* {.size: sizeof(int32).} = enum Unknown InputBit @@ -1627,11 +1848,13 @@ type HintBit = 4 CostBit = 8 GlobalFlowBit = 16 + VkOpticalFlowPerformanceLevelNV* {.size: sizeof(int32).} = enum Unknown Slow Medium Fast + VkOpticalFlowSessionBindingPointNV* {.size: sizeof(int32).} = enum Unknown Input @@ -1642,41 +1865,52 @@ type Cost BackwardCost GlobalFlow + VkOpticalFlowSessionCreateFlagBitsNV* {.size: sizeof(int32).} = enum EnableHintBit = 1 EnableCostBit EnableGlobalFlowBit = 4 AllowRegionsBit = 8 BothDirectionsBit = 16 + VkOpticalFlowExecuteFlagBitsNV* {.size: sizeof(int32).} = enum DisableTemporalHintsBit = 1 + VkMicromapTypeEXT* {.size: sizeof(int32).} = enum OpacityMicromap + VkBuildMicromapFlagBitsEXT* {.size: sizeof(int32).} = enum PreferFastTraceBit = 1 PreferFastBuildBit AllowCompactionBit = 4 + VkMicromapCreateFlagBitsEXT* {.size: sizeof(int32).} = enum DeviceAddressCaptureReplayBit = 1 + VkCopyMicromapModeEXT* {.size: sizeof(int32).} = enum Clone Serialize Deserialize Compact + VkBuildMicromapModeEXT* {.size: sizeof(int32).} = enum Build + VkOpacityMicromapFormatEXT* {.size: sizeof(int32).} = enum N2State = 1 N4State + VkOpacityMicromapSpecialIndexEXT* {.size: sizeof(int32).} = enum FullyUnknownOpaque = -4 FullyUnknownTransparent FullyOpaque FullyTransparent + VkDepthBiasRepresentationEXT* {.size: sizeof(int32).} = enum LeastRepresentableValueFormat LeastRepresentableValueForceUnorm Float + VkDeviceFaultAddressTypeEXT* {.size: sizeof(int32).} = enum None ReadInvalid @@ -1685,22 +1919,28 @@ type InstructionPointerUnknown InstructionPointerInvalid InstructionPointerFault + VkDeviceFaultVendorBinaryHeaderVersionEXT* {.size: sizeof(int32).} = enum One = 1 + VkDisplacementMicromapFormatNV* {.size: sizeof(int32).} = enum N64Triangles64Bytes = 1 N256Triangles128Bytes N1024Triangles128Bytes + VkShaderCreateFlagBitsEXT* {.size: sizeof(int32).} = enum LinkStageBit = 1 + VkShaderCodeTypeEXT* {.size: sizeof(int32).} = enum Binary Spirv + VkScopeKHR* {.size: sizeof(int32).} = enum Device = 1 Workgroup Subgroup QueueFamily = 5 + VkComponentTypeKHR* {.size: sizeof(int32).} = enum Float16 Float32 @@ -1713,17 +1953,21 @@ type Uint16 Uint32 Uint64 + VkCubicFilterWeightsQCOM* {.size: sizeof(int32).} = enum - VkCubicFilterWeightsCatmullRomQcom - VkCubicFilterWeightsZeroTangentCardinalQcom - VkCubicFilterWeightsBSplineQcom - VkCubicFilterWeightsMitchellNetravaliQcom + CatmullRom + ZeroTangentCardinal + BSpline + MitchellNetravali + VkBlockMatchWindowCompareModeQCOM* {.size: sizeof(int32).} = enum - VkBlockMatchWindowCompareModeMinQcom - VkBlockMatchWindowCompareModeMaxQcom + Min + Max + VkLayeredDriverUnderlyingApiMSFT* {.size: sizeof(int32).} = enum - VkLayeredDriverUnderlyingApiNoneMsft - VkLayeredDriverUnderlyingApiD3d12Msft + None + D3d12 + VkLatencyMarkerNV* {.size: sizeof(int32).} = enum SimulationStart SimulationEnd @@ -1737,10 +1981,12 @@ type OutOfBandRendersubmitEnd OutOfBandPresentStart OutOfBandPresentEnd + VkOutOfBandQueueTypeNV* {.size: sizeof(int32).} = enum Render Present + # Types type @@ -10490,7 +10736,7 @@ proc newVkLayerProperties*(layerName: array[VK_MAX_EXTENSION_NAME_SIZE, char], s description: description, ) -proc newVkApplicationInfo*(sType: VkStructureType, pNext: pointer = nil, pApplicationName: cstring, applicationVersion: uint32, pEngineName: cstring, engineVersion: uint32, apiVersion: uint32): VkApplicationInfo = +proc newVkApplicationInfo*(sType: VkStructureType = VkStructureType.ApplicationInfo, pNext: pointer = nil, pApplicationName: cstring, applicationVersion: uint32, pEngineName: cstring, engineVersion: uint32, apiVersion: uint32): VkApplicationInfo = result = VkApplicationInfo( sType: sType, pNext: pNext, @@ -10511,7 +10757,7 @@ proc newVkAllocationCallbacks*(pUserData: pointer = nil, pfnAllocation: PFN_vkAl pfnInternalFree: pfnInternalFree, ) -proc newVkDeviceQueueCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkDeviceQueueCreateFlags = 0.VkDeviceQueueCreateFlags, queueFamilyIndex: uint32, queueCount: uint32, pQueuePriorities: ptr float32): VkDeviceQueueCreateInfo = +proc newVkDeviceQueueCreateInfo*(sType: VkStructureType = VkStructureType.DeviceQueueCreateInfo, pNext: pointer = nil, flags: VkDeviceQueueCreateFlags = 0.VkDeviceQueueCreateFlags, queueFamilyIndex: uint32, queueCount: uint32, pQueuePriorities: ptr float32): VkDeviceQueueCreateInfo = result = VkDeviceQueueCreateInfo( sType: sType, pNext: pNext, @@ -10521,7 +10767,7 @@ proc newVkDeviceQueueCreateInfo*(sType: VkStructureType, pNext: pointer = nil, f pQueuePriorities: pQueuePriorities, ) -proc newVkDeviceCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkDeviceCreateFlags = 0.VkDeviceCreateFlags, queueCreateInfoCount: uint32, pQueueCreateInfos: ptr VkDeviceQueueCreateInfo, enabledLayerCount: uint32, ppEnabledLayerNames: cstringArray, enabledExtensionCount: uint32, ppEnabledExtensionNames: cstringArray, pEnabledFeatures: ptr VkPhysicalDeviceFeatures): VkDeviceCreateInfo = +proc newVkDeviceCreateInfo*(sType: VkStructureType = VkStructureType.DeviceCreateInfo, pNext: pointer = nil, flags: VkDeviceCreateFlags = 0.VkDeviceCreateFlags, queueCreateInfoCount: uint32, pQueueCreateInfos: ptr VkDeviceQueueCreateInfo, enabledLayerCount: uint32, ppEnabledLayerNames: cstringArray, enabledExtensionCount: uint32, ppEnabledExtensionNames: cstringArray, pEnabledFeatures: ptr VkPhysicalDeviceFeatures): VkDeviceCreateInfo = result = VkDeviceCreateInfo( sType: sType, pNext: pNext, @@ -10535,7 +10781,7 @@ proc newVkDeviceCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: pEnabledFeatures: pEnabledFeatures, ) -proc newVkInstanceCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkInstanceCreateFlags = 0.VkInstanceCreateFlags, pApplicationInfo: ptr VkApplicationInfo, enabledLayerCount: uint32, ppEnabledLayerNames: cstringArray, enabledExtensionCount: uint32, ppEnabledExtensionNames: cstringArray): VkInstanceCreateInfo = +proc newVkInstanceCreateInfo*(sType: VkStructureType = VkStructureType.InstanceCreateInfo, pNext: pointer = nil, flags: VkInstanceCreateFlags = 0.VkInstanceCreateFlags, pApplicationInfo: ptr VkApplicationInfo, enabledLayerCount: uint32, ppEnabledLayerNames: cstringArray, enabledExtensionCount: uint32, ppEnabledExtensionNames: cstringArray): VkInstanceCreateInfo = result = VkInstanceCreateInfo( sType: sType, pNext: pNext, @@ -10563,7 +10809,7 @@ proc newVkPhysicalDeviceMemoryProperties*(memoryTypeCount: uint32, memoryTypes: memoryHeaps: memoryHeaps, ) -proc newVkMemoryAllocateInfo*(sType: VkStructureType, pNext: pointer = nil, allocationSize: VkDeviceSize, memoryTypeIndex: uint32): VkMemoryAllocateInfo = +proc newVkMemoryAllocateInfo*(sType: VkStructureType = VkStructureType.MemoryAllocateInfo, pNext: pointer = nil, allocationSize: VkDeviceSize, memoryTypeIndex: uint32): VkMemoryAllocateInfo = result = VkMemoryAllocateInfo( sType: sType, pNext: pNext, @@ -10606,7 +10852,7 @@ proc newVkMemoryHeap*(size: VkDeviceSize, flags: VkMemoryHeapFlags = 0.VkMemoryH flags: flags, ) -proc newVkMappedMemoryRange*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory, offset: VkDeviceSize, size: VkDeviceSize): VkMappedMemoryRange = +proc newVkMappedMemoryRange*(sType: VkStructureType = VkStructureType.MappedMemoryRange, pNext: pointer = nil, memory: VkDeviceMemory, offset: VkDeviceSize, size: VkDeviceSize): VkMappedMemoryRange = result = VkMappedMemoryRange( sType: sType, pNext: pNext, @@ -10645,7 +10891,7 @@ proc newVkDescriptorImageInfo*(sampler: VkSampler, imageView: VkImageView, image imageLayout: imageLayout, ) -proc newVkWriteDescriptorSet*(sType: VkStructureType, pNext: pointer = nil, dstSet: VkDescriptorSet, dstBinding: uint32, dstArrayElement: uint32, descriptorCount: uint32, descriptorType: VkDescriptorType, pImageInfo: ptr VkDescriptorImageInfo, pBufferInfo: ptr ptr VkDescriptorBufferInfo, pTexelBufferView: ptr VkBufferView): VkWriteDescriptorSet = +proc newVkWriteDescriptorSet*(sType: VkStructureType = VkStructureType.WriteDescriptorSet, pNext: pointer = nil, dstSet: VkDescriptorSet, dstBinding: uint32, dstArrayElement: uint32, descriptorCount: uint32, descriptorType: VkDescriptorType, pImageInfo: ptr VkDescriptorImageInfo, pBufferInfo: ptr ptr VkDescriptorBufferInfo, pTexelBufferView: ptr VkBufferView): VkWriteDescriptorSet = result = VkWriteDescriptorSet( sType: sType, pNext: pNext, @@ -10659,7 +10905,7 @@ proc newVkWriteDescriptorSet*(sType: VkStructureType, pNext: pointer = nil, dstS pTexelBufferView: pTexelBufferView, ) -proc newVkCopyDescriptorSet*(sType: VkStructureType, pNext: pointer = nil, srcSet: VkDescriptorSet, srcBinding: uint32, srcArrayElement: uint32, dstSet: VkDescriptorSet, dstBinding: uint32, dstArrayElement: uint32, descriptorCount: uint32): VkCopyDescriptorSet = +proc newVkCopyDescriptorSet*(sType: VkStructureType = VkStructureType.CopyDescriptorSet, pNext: pointer = nil, srcSet: VkDescriptorSet, srcBinding: uint32, srcArrayElement: uint32, dstSet: VkDescriptorSet, dstBinding: uint32, dstArrayElement: uint32, descriptorCount: uint32): VkCopyDescriptorSet = result = VkCopyDescriptorSet( sType: sType, pNext: pNext, @@ -10679,7 +10925,7 @@ proc newVkBufferUsageFlags2CreateInfoKHR*(sType: VkStructureType, pNext: pointer usage: usage, ) -proc newVkBufferCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkBufferCreateFlags = 0.VkBufferCreateFlags, size: VkDeviceSize, usage: VkBufferUsageFlags, sharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32): VkBufferCreateInfo = +proc newVkBufferCreateInfo*(sType: VkStructureType = VkStructureType.BufferCreateInfo, pNext: pointer = nil, flags: VkBufferCreateFlags = 0.VkBufferCreateFlags, size: VkDeviceSize, usage: VkBufferUsageFlags, sharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32): VkBufferCreateInfo = result = VkBufferCreateInfo( sType: sType, pNext: pNext, @@ -10691,7 +10937,7 @@ proc newVkBufferCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: pQueueFamilyIndices: pQueueFamilyIndices, ) -proc newVkBufferViewCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkBufferViewCreateFlags = 0.VkBufferViewCreateFlags, buffer: VkBuffer, format: VkFormat, offset: VkDeviceSize, range: VkDeviceSize): VkBufferViewCreateInfo = +proc newVkBufferViewCreateInfo*(sType: VkStructureType = VkStructureType.BufferViewCreateInfo, pNext: pointer = nil, flags: VkBufferViewCreateFlags = 0.VkBufferViewCreateFlags, buffer: VkBuffer, format: VkFormat, offset: VkDeviceSize, range: VkDeviceSize): VkBufferViewCreateInfo = result = VkBufferViewCreateInfo( sType: sType, pNext: pNext, @@ -10726,7 +10972,7 @@ proc newVkImageSubresourceRange*(aspectMask: VkImageAspectFlags, baseMipLevel: u layerCount: layerCount, ) -proc newVkMemoryBarrier*(sType: VkStructureType, pNext: pointer = nil, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags): VkMemoryBarrier = +proc newVkMemoryBarrier*(sType: VkStructureType = VkStructureType.MemoryBarrier, pNext: pointer = nil, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags): VkMemoryBarrier = result = VkMemoryBarrier( sType: sType, pNext: pNext, @@ -10734,7 +10980,7 @@ proc newVkMemoryBarrier*(sType: VkStructureType, pNext: pointer = nil, srcAccess dstAccessMask: dstAccessMask, ) -proc newVkBufferMemoryBarrier*(sType: VkStructureType, pNext: pointer = nil, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags, srcQueueFamilyIndex: uint32, dstQueueFamilyIndex: uint32, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize): VkBufferMemoryBarrier = +proc newVkBufferMemoryBarrier*(sType: VkStructureType = VkStructureType.BufferMemoryBarrier, pNext: pointer = nil, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags, srcQueueFamilyIndex: uint32, dstQueueFamilyIndex: uint32, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize): VkBufferMemoryBarrier = result = VkBufferMemoryBarrier( sType: sType, pNext: pNext, @@ -10747,7 +10993,7 @@ proc newVkBufferMemoryBarrier*(sType: VkStructureType, pNext: pointer = nil, src size: size, ) -proc newVkImageMemoryBarrier*(sType: VkStructureType, pNext: pointer = nil, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags, oldLayout: VkImageLayout, newLayout: VkImageLayout, srcQueueFamilyIndex: uint32, dstQueueFamilyIndex: uint32, image: VkImage, subresourceRange: VkImageSubresourceRange): VkImageMemoryBarrier = +proc newVkImageMemoryBarrier*(sType: VkStructureType = VkStructureType.ImageMemoryBarrier, pNext: pointer = nil, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags, oldLayout: VkImageLayout, newLayout: VkImageLayout, srcQueueFamilyIndex: uint32, dstQueueFamilyIndex: uint32, image: VkImage, subresourceRange: VkImageSubresourceRange): VkImageMemoryBarrier = result = VkImageMemoryBarrier( sType: sType, pNext: pNext, @@ -10761,7 +11007,7 @@ proc newVkImageMemoryBarrier*(sType: VkStructureType, pNext: pointer = nil, srcA subresourceRange: subresourceRange, ) -proc newVkImageCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkImageCreateFlags = 0.VkImageCreateFlags, imageType: VkImageType, format: VkFormat, extent: VkExtent3D, mipLevels: uint32, arrayLayers: uint32, samples: VkSampleCountFlagBits, tiling: VkImageTiling, usage: VkImageUsageFlags, sharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32, initialLayout: VkImageLayout): VkImageCreateInfo = +proc newVkImageCreateInfo*(sType: VkStructureType = VkStructureType.ImageCreateInfo, pNext: pointer = nil, flags: VkImageCreateFlags = 0.VkImageCreateFlags, imageType: VkImageType, format: VkFormat, extent: VkExtent3D, mipLevels: uint32, arrayLayers: uint32, samples: VkSampleCountFlagBits, tiling: VkImageTiling, usage: VkImageUsageFlags, sharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32, initialLayout: VkImageLayout): VkImageCreateInfo = result = VkImageCreateInfo( sType: sType, pNext: pNext, @@ -10789,7 +11035,7 @@ proc newVkSubresourceLayout*(offset: VkDeviceSize, size: VkDeviceSize, rowPitch: depthPitch: depthPitch, ) -proc newVkImageViewCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkImageViewCreateFlags = 0.VkImageViewCreateFlags, image: VkImage, viewType: VkImageViewType, format: VkFormat, components: VkComponentMapping, subresourceRange: VkImageSubresourceRange): VkImageViewCreateInfo = +proc newVkImageViewCreateInfo*(sType: VkStructureType = VkStructureType.ImageViewCreateInfo, pNext: pointer = nil, flags: VkImageViewCreateFlags = 0.VkImageViewCreateFlags, image: VkImage, viewType: VkImageViewType, format: VkFormat, components: VkComponentMapping, subresourceRange: VkImageSubresourceRange): VkImageViewCreateInfo = result = VkImageViewCreateInfo( sType: sType, pNext: pNext, @@ -10848,7 +11094,7 @@ proc newVkSparseImageMemoryBindInfo*(image: VkImage, bindCount: uint32, pBinds: pBinds: pBinds, ) -proc newVkBindSparseInfo*(sType: VkStructureType, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, bufferBindCount: uint32, pBufferBinds: ptr VkSparseBufferMemoryBindInfo, imageOpaqueBindCount: uint32, pImageOpaqueBinds: ptr VkSparseImageOpaqueMemoryBindInfo, imageBindCount: uint32, pImageBinds: ptr VkSparseImageMemoryBindInfo, signalSemaphoreCount: uint32, pSignalSemaphores: ptr VkSemaphore): VkBindSparseInfo = +proc newVkBindSparseInfo*(sType: VkStructureType = VkStructureType.BindSparseInfo, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, bufferBindCount: uint32, pBufferBinds: ptr VkSparseBufferMemoryBindInfo, imageOpaqueBindCount: uint32, pImageOpaqueBinds: ptr VkSparseImageOpaqueMemoryBindInfo, imageBindCount: uint32, pImageBinds: ptr VkSparseImageMemoryBindInfo, signalSemaphoreCount: uint32, pSignalSemaphores: ptr VkSemaphore): VkBindSparseInfo = result = VkBindSparseInfo( sType: sType, pNext: pNext, @@ -10917,7 +11163,7 @@ proc newVkImageResolve*(srcSubresource: VkImageSubresourceLayers, srcOffset: VkO extent: extent, ) -proc newVkShaderModuleCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkShaderModuleCreateFlags = 0.VkShaderModuleCreateFlags, codeSize: uint, pCode: ptr uint32): VkShaderModuleCreateInfo = +proc newVkShaderModuleCreateInfo*(sType: VkStructureType = VkStructureType.ShaderModuleCreateInfo, pNext: pointer = nil, flags: VkShaderModuleCreateFlags = 0.VkShaderModuleCreateFlags, codeSize: uint, pCode: ptr uint32): VkShaderModuleCreateInfo = result = VkShaderModuleCreateInfo( sType: sType, pNext: pNext, @@ -10935,7 +11181,7 @@ proc newVkDescriptorSetLayoutBinding*(binding: uint32, descriptorType: VkDescrip pImmutableSamplers: pImmutableSamplers, ) -proc newVkDescriptorSetLayoutCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkDescriptorSetLayoutCreateFlags = 0.VkDescriptorSetLayoutCreateFlags, bindingCount: uint32, pBindings: ptr VkDescriptorSetLayoutBinding): VkDescriptorSetLayoutCreateInfo = +proc newVkDescriptorSetLayoutCreateInfo*(sType: VkStructureType = VkStructureType.DescriptorSetLayoutCreateInfo, pNext: pointer = nil, flags: VkDescriptorSetLayoutCreateFlags = 0.VkDescriptorSetLayoutCreateFlags, bindingCount: uint32, pBindings: ptr VkDescriptorSetLayoutBinding): VkDescriptorSetLayoutCreateInfo = result = VkDescriptorSetLayoutCreateInfo( sType: sType, pNext: pNext, @@ -10950,7 +11196,7 @@ proc newVkDescriptorPoolSize*(`type`: VkDescriptorType, descriptorCount: uint32) descriptorCount: descriptorCount, ) -proc newVkDescriptorPoolCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkDescriptorPoolCreateFlags = 0.VkDescriptorPoolCreateFlags, maxSets: uint32, poolSizeCount: uint32, pPoolSizes: ptr VkDescriptorPoolSize): VkDescriptorPoolCreateInfo = +proc newVkDescriptorPoolCreateInfo*(sType: VkStructureType = VkStructureType.DescriptorPoolCreateInfo, pNext: pointer = nil, flags: VkDescriptorPoolCreateFlags = 0.VkDescriptorPoolCreateFlags, maxSets: uint32, poolSizeCount: uint32, pPoolSizes: ptr VkDescriptorPoolSize): VkDescriptorPoolCreateInfo = result = VkDescriptorPoolCreateInfo( sType: sType, pNext: pNext, @@ -10960,7 +11206,7 @@ proc newVkDescriptorPoolCreateInfo*(sType: VkStructureType, pNext: pointer = nil pPoolSizes: pPoolSizes, ) -proc newVkDescriptorSetAllocateInfo*(sType: VkStructureType, pNext: pointer = nil, descriptorPool: VkDescriptorPool, descriptorSetCount: uint32, pSetLayouts: ptr VkDescriptorSetLayout): VkDescriptorSetAllocateInfo = +proc newVkDescriptorSetAllocateInfo*(sType: VkStructureType = VkStructureType.DescriptorSetAllocateInfo, pNext: pointer = nil, descriptorPool: VkDescriptorPool, descriptorSetCount: uint32, pSetLayouts: ptr VkDescriptorSetLayout): VkDescriptorSetAllocateInfo = result = VkDescriptorSetAllocateInfo( sType: sType, pNext: pNext, @@ -10984,7 +11230,7 @@ proc newVkSpecializationInfo*(mapEntryCount: uint32, pMapEntries: ptr VkSpeciali pData: pData, ) -proc newVkPipelineShaderStageCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineShaderStageCreateFlags = 0.VkPipelineShaderStageCreateFlags, stage: VkShaderStageFlagBits, module: VkShaderModule, pName: cstring, pSpecializationInfo: ptr VkSpecializationInfo): VkPipelineShaderStageCreateInfo = +proc newVkPipelineShaderStageCreateInfo*(sType: VkStructureType = VkStructureType.PipelineShaderStageCreateInfo, pNext: pointer = nil, flags: VkPipelineShaderStageCreateFlags = 0.VkPipelineShaderStageCreateFlags, stage: VkShaderStageFlagBits, module: VkShaderModule, pName: cstring, pSpecializationInfo: ptr VkSpecializationInfo): VkPipelineShaderStageCreateInfo = result = VkPipelineShaderStageCreateInfo( sType: sType, pNext: pNext, @@ -10995,7 +11241,7 @@ proc newVkPipelineShaderStageCreateInfo*(sType: VkStructureType, pNext: pointer pSpecializationInfo: pSpecializationInfo, ) -proc newVkComputePipelineCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stage: VkPipelineShaderStageCreateInfo, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkComputePipelineCreateInfo = +proc newVkComputePipelineCreateInfo*(sType: VkStructureType = VkStructureType.ComputePipelineCreateInfo, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stage: VkPipelineShaderStageCreateInfo, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkComputePipelineCreateInfo = result = VkComputePipelineCreateInfo( sType: sType, pNext: pNext, @@ -11037,7 +11283,7 @@ proc newVkVertexInputAttributeDescription*(location: uint32, binding: uint32, fo offset: offset, ) -proc newVkPipelineVertexInputStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineVertexInputStateCreateFlags = 0.VkPipelineVertexInputStateCreateFlags, vertexBindingDescriptionCount: uint32, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription, vertexAttributeDescriptionCount: uint32, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription): VkPipelineVertexInputStateCreateInfo = +proc newVkPipelineVertexInputStateCreateInfo*(sType: VkStructureType = VkStructureType.PipelineVertexInputStateCreateInfo, pNext: pointer = nil, flags: VkPipelineVertexInputStateCreateFlags = 0.VkPipelineVertexInputStateCreateFlags, vertexBindingDescriptionCount: uint32, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription, vertexAttributeDescriptionCount: uint32, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription): VkPipelineVertexInputStateCreateInfo = result = VkPipelineVertexInputStateCreateInfo( sType: sType, pNext: pNext, @@ -11048,7 +11294,7 @@ proc newVkPipelineVertexInputStateCreateInfo*(sType: VkStructureType, pNext: poi pVertexAttributeDescriptions: pVertexAttributeDescriptions, ) -proc newVkPipelineInputAssemblyStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineInputAssemblyStateCreateFlags = 0.VkPipelineInputAssemblyStateCreateFlags, topology: VkPrimitiveTopology, primitiveRestartEnable: VkBool32): VkPipelineInputAssemblyStateCreateInfo = +proc newVkPipelineInputAssemblyStateCreateInfo*(sType: VkStructureType = VkStructureType.PipelineInputAssemblyStateCreateInfo, pNext: pointer = nil, flags: VkPipelineInputAssemblyStateCreateFlags = 0.VkPipelineInputAssemblyStateCreateFlags, topology: VkPrimitiveTopology, primitiveRestartEnable: VkBool32): VkPipelineInputAssemblyStateCreateInfo = result = VkPipelineInputAssemblyStateCreateInfo( sType: sType, pNext: pNext, @@ -11057,7 +11303,7 @@ proc newVkPipelineInputAssemblyStateCreateInfo*(sType: VkStructureType, pNext: p primitiveRestartEnable: primitiveRestartEnable, ) -proc newVkPipelineTessellationStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineTessellationStateCreateFlags = 0.VkPipelineTessellationStateCreateFlags, patchControlPoints: uint32): VkPipelineTessellationStateCreateInfo = +proc newVkPipelineTessellationStateCreateInfo*(sType: VkStructureType = VkStructureType.PipelineTessellationStateCreateInfo, pNext: pointer = nil, flags: VkPipelineTessellationStateCreateFlags = 0.VkPipelineTessellationStateCreateFlags, patchControlPoints: uint32): VkPipelineTessellationStateCreateInfo = result = VkPipelineTessellationStateCreateInfo( sType: sType, pNext: pNext, @@ -11065,7 +11311,7 @@ proc newVkPipelineTessellationStateCreateInfo*(sType: VkStructureType, pNext: po patchControlPoints: patchControlPoints, ) -proc newVkPipelineViewportStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineViewportStateCreateFlags = 0.VkPipelineViewportStateCreateFlags, viewportCount: uint32, pViewports: ptr VkViewport, scissorCount: uint32, pScissors: ptr VkRect2D): VkPipelineViewportStateCreateInfo = +proc newVkPipelineViewportStateCreateInfo*(sType: VkStructureType = VkStructureType.PipelineViewportStateCreateInfo, pNext: pointer = nil, flags: VkPipelineViewportStateCreateFlags = 0.VkPipelineViewportStateCreateFlags, viewportCount: uint32, pViewports: ptr VkViewport, scissorCount: uint32, pScissors: ptr VkRect2D): VkPipelineViewportStateCreateInfo = result = VkPipelineViewportStateCreateInfo( sType: sType, pNext: pNext, @@ -11076,7 +11322,7 @@ proc newVkPipelineViewportStateCreateInfo*(sType: VkStructureType, pNext: pointe pScissors: pScissors, ) -proc newVkPipelineRasterizationStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineRasterizationStateCreateFlags = 0.VkPipelineRasterizationStateCreateFlags, depthClampEnable: VkBool32, rasterizerDiscardEnable: VkBool32, polygonMode: VkPolygonMode, cullMode: VkCullModeFlags, frontFace: VkFrontFace, depthBiasEnable: VkBool32, depthBiasConstantFactor: float32, depthBiasClamp: float32, depthBiasSlopeFactor: float32, lineWidth: float32): VkPipelineRasterizationStateCreateInfo = +proc newVkPipelineRasterizationStateCreateInfo*(sType: VkStructureType = VkStructureType.PipelineRasterizationStateCreateInfo, pNext: pointer = nil, flags: VkPipelineRasterizationStateCreateFlags = 0.VkPipelineRasterizationStateCreateFlags, depthClampEnable: VkBool32, rasterizerDiscardEnable: VkBool32, polygonMode: VkPolygonMode, cullMode: VkCullModeFlags, frontFace: VkFrontFace, depthBiasEnable: VkBool32, depthBiasConstantFactor: float32, depthBiasClamp: float32, depthBiasSlopeFactor: float32, lineWidth: float32): VkPipelineRasterizationStateCreateInfo = result = VkPipelineRasterizationStateCreateInfo( sType: sType, pNext: pNext, @@ -11093,7 +11339,7 @@ proc newVkPipelineRasterizationStateCreateInfo*(sType: VkStructureType, pNext: p lineWidth: lineWidth, ) -proc newVkPipelineMultisampleStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineMultisampleStateCreateFlags = 0.VkPipelineMultisampleStateCreateFlags, rasterizationSamples: VkSampleCountFlagBits, sampleShadingEnable: VkBool32, minSampleShading: float32, pSampleMask: ptr VkSampleMask, alphaToCoverageEnable: VkBool32, alphaToOneEnable: VkBool32): VkPipelineMultisampleStateCreateInfo = +proc newVkPipelineMultisampleStateCreateInfo*(sType: VkStructureType = VkStructureType.PipelineMultisampleStateCreateInfo, pNext: pointer = nil, flags: VkPipelineMultisampleStateCreateFlags = 0.VkPipelineMultisampleStateCreateFlags, rasterizationSamples: VkSampleCountFlagBits, sampleShadingEnable: VkBool32, minSampleShading: float32, pSampleMask: ptr VkSampleMask, alphaToCoverageEnable: VkBool32, alphaToOneEnable: VkBool32): VkPipelineMultisampleStateCreateInfo = result = VkPipelineMultisampleStateCreateInfo( sType: sType, pNext: pNext, @@ -11118,7 +11364,7 @@ proc newVkPipelineColorBlendAttachmentState*(blendEnable: VkBool32, srcColorBlen colorWriteMask: colorWriteMask, ) -proc newVkPipelineColorBlendStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineColorBlendStateCreateFlags = 0.VkPipelineColorBlendStateCreateFlags, logicOpEnable: VkBool32, logicOp: VkLogicOp, attachmentCount: uint32, pAttachments: ptr VkPipelineColorBlendAttachmentState, blendConstants: array[4, float32]): VkPipelineColorBlendStateCreateInfo = +proc newVkPipelineColorBlendStateCreateInfo*(sType: VkStructureType = VkStructureType.PipelineColorBlendStateCreateInfo, pNext: pointer = nil, flags: VkPipelineColorBlendStateCreateFlags = 0.VkPipelineColorBlendStateCreateFlags, logicOpEnable: VkBool32, logicOp: VkLogicOp, attachmentCount: uint32, pAttachments: ptr VkPipelineColorBlendAttachmentState, blendConstants: array[4, float32]): VkPipelineColorBlendStateCreateInfo = result = VkPipelineColorBlendStateCreateInfo( sType: sType, pNext: pNext, @@ -11130,7 +11376,7 @@ proc newVkPipelineColorBlendStateCreateInfo*(sType: VkStructureType, pNext: poin blendConstants: blendConstants, ) -proc newVkPipelineDynamicStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineDynamicStateCreateFlags = 0.VkPipelineDynamicStateCreateFlags, dynamicStateCount: uint32, pDynamicStates: ptr VkDynamicState): VkPipelineDynamicStateCreateInfo = +proc newVkPipelineDynamicStateCreateInfo*(sType: VkStructureType = VkStructureType.PipelineDynamicStateCreateInfo, pNext: pointer = nil, flags: VkPipelineDynamicStateCreateFlags = 0.VkPipelineDynamicStateCreateFlags, dynamicStateCount: uint32, pDynamicStates: ptr VkDynamicState): VkPipelineDynamicStateCreateInfo = result = VkPipelineDynamicStateCreateInfo( sType: sType, pNext: pNext, @@ -11150,7 +11396,7 @@ proc newVkStencilOpState*(failOp: VkStencilOp, passOp: VkStencilOp, depthFailOp: reference: reference, ) -proc newVkPipelineDepthStencilStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineDepthStencilStateCreateFlags = 0.VkPipelineDepthStencilStateCreateFlags, depthTestEnable: VkBool32, depthWriteEnable: VkBool32, depthCompareOp: VkCompareOp, depthBoundsTestEnable: VkBool32, stencilTestEnable: VkBool32, front: VkStencilOpState, back: VkStencilOpState, minDepthBounds: float32, maxDepthBounds: float32): VkPipelineDepthStencilStateCreateInfo = +proc newVkPipelineDepthStencilStateCreateInfo*(sType: VkStructureType = VkStructureType.PipelineDepthStencilStateCreateInfo, pNext: pointer = nil, flags: VkPipelineDepthStencilStateCreateFlags = 0.VkPipelineDepthStencilStateCreateFlags, depthTestEnable: VkBool32, depthWriteEnable: VkBool32, depthCompareOp: VkCompareOp, depthBoundsTestEnable: VkBool32, stencilTestEnable: VkBool32, front: VkStencilOpState, back: VkStencilOpState, minDepthBounds: float32, maxDepthBounds: float32): VkPipelineDepthStencilStateCreateInfo = result = VkPipelineDepthStencilStateCreateInfo( sType: sType, pNext: pNext, @@ -11166,7 +11412,7 @@ proc newVkPipelineDepthStencilStateCreateInfo*(sType: VkStructureType, pNext: po maxDepthBounds: maxDepthBounds, ) -proc newVkGraphicsPipelineCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, pVertexInputState: ptr VkPipelineVertexInputStateCreateInfo, pInputAssemblyState: ptr VkPipelineInputAssemblyStateCreateInfo, pTessellationState: ptr VkPipelineTessellationStateCreateInfo, pViewportState: ptr VkPipelineViewportStateCreateInfo, pRasterizationState: ptr VkPipelineRasterizationStateCreateInfo, pMultisampleState: ptr VkPipelineMultisampleStateCreateInfo, pDepthStencilState: ptr VkPipelineDepthStencilStateCreateInfo, pColorBlendState: ptr VkPipelineColorBlendStateCreateInfo, pDynamicState: ptr VkPipelineDynamicStateCreateInfo, layout: VkPipelineLayout, renderPass: VkRenderPass, subpass: uint32, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkGraphicsPipelineCreateInfo = +proc newVkGraphicsPipelineCreateInfo*(sType: VkStructureType = VkStructureType.GraphicsPipelineCreateInfo, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, pVertexInputState: ptr VkPipelineVertexInputStateCreateInfo, pInputAssemblyState: ptr VkPipelineInputAssemblyStateCreateInfo, pTessellationState: ptr VkPipelineTessellationStateCreateInfo, pViewportState: ptr VkPipelineViewportStateCreateInfo, pRasterizationState: ptr VkPipelineRasterizationStateCreateInfo, pMultisampleState: ptr VkPipelineMultisampleStateCreateInfo, pDepthStencilState: ptr VkPipelineDepthStencilStateCreateInfo, pColorBlendState: ptr VkPipelineColorBlendStateCreateInfo, pDynamicState: ptr VkPipelineDynamicStateCreateInfo, layout: VkPipelineLayout, renderPass: VkRenderPass, subpass: uint32, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkGraphicsPipelineCreateInfo = result = VkGraphicsPipelineCreateInfo( sType: sType, pNext: pNext, @@ -11189,7 +11435,7 @@ proc newVkGraphicsPipelineCreateInfo*(sType: VkStructureType, pNext: pointer = n basePipelineIndex: basePipelineIndex, ) -proc newVkPipelineCacheCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCacheCreateFlags = 0.VkPipelineCacheCreateFlags, initialDataSize: uint, pInitialData: pointer = nil): VkPipelineCacheCreateInfo = +proc newVkPipelineCacheCreateInfo*(sType: VkStructureType = VkStructureType.PipelineCacheCreateInfo, pNext: pointer = nil, flags: VkPipelineCacheCreateFlags = 0.VkPipelineCacheCreateFlags, initialDataSize: uint, pInitialData: pointer = nil): VkPipelineCacheCreateInfo = result = VkPipelineCacheCreateInfo( sType: sType, pNext: pNext, @@ -11241,7 +11487,7 @@ proc newVkPushConstantRange*(stageFlags: VkShaderStageFlags, offset: uint32, siz size: size, ) -proc newVkPipelineLayoutCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineLayoutCreateFlags = 0.VkPipelineLayoutCreateFlags, setLayoutCount: uint32, pSetLayouts: ptr VkDescriptorSetLayout, pushConstantRangeCount: uint32, pPushConstantRanges: ptr VkPushConstantRange): VkPipelineLayoutCreateInfo = +proc newVkPipelineLayoutCreateInfo*(sType: VkStructureType = VkStructureType.PipelineLayoutCreateInfo, pNext: pointer = nil, flags: VkPipelineLayoutCreateFlags = 0.VkPipelineLayoutCreateFlags, setLayoutCount: uint32, pSetLayouts: ptr VkDescriptorSetLayout, pushConstantRangeCount: uint32, pPushConstantRanges: ptr VkPushConstantRange): VkPipelineLayoutCreateInfo = result = VkPipelineLayoutCreateInfo( sType: sType, pNext: pNext, @@ -11252,7 +11498,7 @@ proc newVkPipelineLayoutCreateInfo*(sType: VkStructureType, pNext: pointer = nil pPushConstantRanges: pPushConstantRanges, ) -proc newVkSamplerCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkSamplerCreateFlags = 0.VkSamplerCreateFlags, magFilter: VkFilter, minFilter: VkFilter, mipmapMode: VkSamplerMipmapMode, addressModeU: VkSamplerAddressMode, addressModeV: VkSamplerAddressMode, addressModeW: VkSamplerAddressMode, mipLodBias: float32, anisotropyEnable: VkBool32, maxAnisotropy: float32, compareEnable: VkBool32, compareOp: VkCompareOp, minLod: float32, maxLod: float32, borderColor: VkBorderColor, unnormalizedCoordinates: VkBool32): VkSamplerCreateInfo = +proc newVkSamplerCreateInfo*(sType: VkStructureType = VkStructureType.SamplerCreateInfo, pNext: pointer = nil, flags: VkSamplerCreateFlags = 0.VkSamplerCreateFlags, magFilter: VkFilter, minFilter: VkFilter, mipmapMode: VkSamplerMipmapMode, addressModeU: VkSamplerAddressMode, addressModeV: VkSamplerAddressMode, addressModeW: VkSamplerAddressMode, mipLodBias: float32, anisotropyEnable: VkBool32, maxAnisotropy: float32, compareEnable: VkBool32, compareOp: VkCompareOp, minLod: float32, maxLod: float32, borderColor: VkBorderColor, unnormalizedCoordinates: VkBool32): VkSamplerCreateInfo = result = VkSamplerCreateInfo( sType: sType, pNext: pNext, @@ -11274,7 +11520,7 @@ proc newVkSamplerCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags unnormalizedCoordinates: unnormalizedCoordinates, ) -proc newVkCommandPoolCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkCommandPoolCreateFlags = 0.VkCommandPoolCreateFlags, queueFamilyIndex: uint32): VkCommandPoolCreateInfo = +proc newVkCommandPoolCreateInfo*(sType: VkStructureType = VkStructureType.CommandPoolCreateInfo, pNext: pointer = nil, flags: VkCommandPoolCreateFlags = 0.VkCommandPoolCreateFlags, queueFamilyIndex: uint32): VkCommandPoolCreateInfo = result = VkCommandPoolCreateInfo( sType: sType, pNext: pNext, @@ -11282,7 +11528,7 @@ proc newVkCommandPoolCreateInfo*(sType: VkStructureType, pNext: pointer = nil, f queueFamilyIndex: queueFamilyIndex, ) -proc newVkCommandBufferAllocateInfo*(sType: VkStructureType, pNext: pointer = nil, commandPool: VkCommandPool, level: VkCommandBufferLevel, commandBufferCount: uint32): VkCommandBufferAllocateInfo = +proc newVkCommandBufferAllocateInfo*(sType: VkStructureType = VkStructureType.CommandBufferAllocateInfo, pNext: pointer = nil, commandPool: VkCommandPool, level: VkCommandBufferLevel, commandBufferCount: uint32): VkCommandBufferAllocateInfo = result = VkCommandBufferAllocateInfo( sType: sType, pNext: pNext, @@ -11291,7 +11537,7 @@ proc newVkCommandBufferAllocateInfo*(sType: VkStructureType, pNext: pointer = ni commandBufferCount: commandBufferCount, ) -proc newVkCommandBufferInheritanceInfo*(sType: VkStructureType, pNext: pointer = nil, renderPass: VkRenderPass, subpass: uint32, framebuffer: VkFramebuffer, occlusionQueryEnable: VkBool32, queryFlags: VkQueryControlFlags, pipelineStatistics: VkQueryPipelineStatisticFlags): VkCommandBufferInheritanceInfo = +proc newVkCommandBufferInheritanceInfo*(sType: VkStructureType = VkStructureType.CommandBufferInheritanceInfo, pNext: pointer = nil, renderPass: VkRenderPass, subpass: uint32, framebuffer: VkFramebuffer, occlusionQueryEnable: VkBool32, queryFlags: VkQueryControlFlags, pipelineStatistics: VkQueryPipelineStatisticFlags): VkCommandBufferInheritanceInfo = result = VkCommandBufferInheritanceInfo( sType: sType, pNext: pNext, @@ -11303,7 +11549,7 @@ proc newVkCommandBufferInheritanceInfo*(sType: VkStructureType, pNext: pointer = pipelineStatistics: pipelineStatistics, ) -proc newVkCommandBufferBeginInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkCommandBufferUsageFlags = 0.VkCommandBufferUsageFlags, pInheritanceInfo: ptr VkCommandBufferInheritanceInfo): VkCommandBufferBeginInfo = +proc newVkCommandBufferBeginInfo*(sType: VkStructureType = VkStructureType.CommandBufferBeginInfo, pNext: pointer = nil, flags: VkCommandBufferUsageFlags = 0.VkCommandBufferUsageFlags, pInheritanceInfo: ptr VkCommandBufferInheritanceInfo): VkCommandBufferBeginInfo = result = VkCommandBufferBeginInfo( sType: sType, pNext: pNext, @@ -11311,7 +11557,7 @@ proc newVkCommandBufferBeginInfo*(sType: VkStructureType, pNext: pointer = nil, pInheritanceInfo: pInheritanceInfo, ) -proc newVkRenderPassBeginInfo*(sType: VkStructureType, pNext: pointer = nil, renderPass: VkRenderPass, framebuffer: VkFramebuffer, renderArea: VkRect2D, clearValueCount: uint32, pClearValues: ptr VkClearValue): VkRenderPassBeginInfo = +proc newVkRenderPassBeginInfo*(sType: VkStructureType = VkStructureType.RenderPassBeginInfo, pNext: pointer = nil, renderPass: VkRenderPass, framebuffer: VkFramebuffer, renderArea: VkRect2D, clearValueCount: uint32, pClearValues: ptr VkClearValue): VkRenderPassBeginInfo = result = VkRenderPassBeginInfo( sType: sType, pNext: pNext, @@ -11379,7 +11625,7 @@ proc newVkSubpassDependency*(srcSubpass: uint32, dstSubpass: uint32, srcStageMas dependencyFlags: dependencyFlags, ) -proc newVkRenderPassCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkRenderPassCreateFlags = 0.VkRenderPassCreateFlags, attachmentCount: uint32, pAttachments: ptr VkAttachmentDescription, subpassCount: uint32, pSubpasses: ptr VkSubpassDescription, dependencyCount: uint32, pDependencies: ptr VkSubpassDependency): VkRenderPassCreateInfo = +proc newVkRenderPassCreateInfo*(sType: VkStructureType = VkStructureType.RenderPassCreateInfo, pNext: pointer = nil, flags: VkRenderPassCreateFlags = 0.VkRenderPassCreateFlags, attachmentCount: uint32, pAttachments: ptr VkAttachmentDescription, subpassCount: uint32, pSubpasses: ptr VkSubpassDescription, dependencyCount: uint32, pDependencies: ptr VkSubpassDependency): VkRenderPassCreateInfo = result = VkRenderPassCreateInfo( sType: sType, pNext: pNext, @@ -11392,14 +11638,14 @@ proc newVkRenderPassCreateInfo*(sType: VkStructureType, pNext: pointer = nil, fl pDependencies: pDependencies, ) -proc newVkEventCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkEventCreateFlags = 0.VkEventCreateFlags): VkEventCreateInfo = +proc newVkEventCreateInfo*(sType: VkStructureType = VkStructureType.EventCreateInfo, pNext: pointer = nil, flags: VkEventCreateFlags = 0.VkEventCreateFlags): VkEventCreateInfo = result = VkEventCreateInfo( sType: sType, pNext: pNext, flags: flags, ) -proc newVkFenceCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkFenceCreateFlags = 0.VkFenceCreateFlags): VkFenceCreateInfo = +proc newVkFenceCreateInfo*(sType: VkStructureType = VkStructureType.FenceCreateInfo, pNext: pointer = nil, flags: VkFenceCreateFlags = 0.VkFenceCreateFlags): VkFenceCreateInfo = result = VkFenceCreateInfo( sType: sType, pNext: pNext, @@ -11584,14 +11830,14 @@ proc newVkPhysicalDeviceLimits*(maxImageDimension1D: uint32, maxImageDimension2D nonCoherentAtomSize: nonCoherentAtomSize, ) -proc newVkSemaphoreCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkSemaphoreCreateFlags = 0.VkSemaphoreCreateFlags): VkSemaphoreCreateInfo = +proc newVkSemaphoreCreateInfo*(sType: VkStructureType = VkStructureType.SemaphoreCreateInfo, pNext: pointer = nil, flags: VkSemaphoreCreateFlags = 0.VkSemaphoreCreateFlags): VkSemaphoreCreateInfo = result = VkSemaphoreCreateInfo( sType: sType, pNext: pNext, flags: flags, ) -proc newVkQueryPoolCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkQueryPoolCreateFlags = 0.VkQueryPoolCreateFlags, queryType: VkQueryType, queryCount: uint32, pipelineStatistics: VkQueryPipelineStatisticFlags): VkQueryPoolCreateInfo = +proc newVkQueryPoolCreateInfo*(sType: VkStructureType = VkStructureType.QueryPoolCreateInfo, pNext: pointer = nil, flags: VkQueryPoolCreateFlags = 0.VkQueryPoolCreateFlags, queryType: VkQueryType, queryCount: uint32, pipelineStatistics: VkQueryPipelineStatisticFlags): VkQueryPoolCreateInfo = result = VkQueryPoolCreateInfo( sType: sType, pNext: pNext, @@ -11601,7 +11847,7 @@ proc newVkQueryPoolCreateInfo*(sType: VkStructureType, pNext: pointer = nil, fla pipelineStatistics: pipelineStatistics, ) -proc newVkFramebufferCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkFramebufferCreateFlags = 0.VkFramebufferCreateFlags, renderPass: VkRenderPass, attachmentCount: uint32, pAttachments: ptr VkImageView, width: uint32, height: uint32, layers: uint32): VkFramebufferCreateInfo = +proc newVkFramebufferCreateInfo*(sType: VkStructureType = VkStructureType.FramebufferCreateInfo, pNext: pointer = nil, flags: VkFramebufferCreateFlags = 0.VkFramebufferCreateFlags, renderPass: VkRenderPass, attachmentCount: uint32, pAttachments: ptr VkImageView, width: uint32, height: uint32, layers: uint32): VkFramebufferCreateInfo = result = VkFramebufferCreateInfo( sType: sType, pNext: pNext, @@ -11651,7 +11897,7 @@ proc newVkMultiDrawIndexedInfoEXT*(firstIndex: uint32, indexCount: uint32, verte vertexOffset: vertexOffset, ) -proc newVkSubmitInfo*(sType: VkStructureType, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, pWaitDstStageMask: ptr VkPipelineStageFlags, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer, signalSemaphoreCount: uint32, pSignalSemaphores: ptr VkSemaphore): VkSubmitInfo = +proc newVkSubmitInfo*(sType: VkStructureType = VkStructureType.SubmitInfo, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, pWaitDstStageMask: ptr VkPipelineStageFlags, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer, signalSemaphoreCount: uint32, pSignalSemaphores: ptr VkSemaphore): VkSubmitInfo = result = VkSubmitInfo( sType: sType, pNext: pNext, diff --git a/tools/generator.nim b/tools/generator.nim index 1fbccdb..ac287bc 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -345,15 +345,6 @@ proc genEnums(node: XmlNode, output: var string) = if e.attr("api") == "vulkansc" or e.attr("deprecated") != "": continue var enumName = e.attr("name") - enumName = camelCaseAscii(enumName) - var tmp = name - for suf in ["KHR", "EXT", "NV", "INTEL", "AMD", "FlagBits", "FlagBits2"]: - tmp.removeSuffix(suf) - for suf in ["Khr", "Ext", "Nv", "Intel", "Amd"]: - enumName.removeSuffix(suf) - enumName.removePrefix(tmp) - if enumName[0] in Digits: - enumName = "N" & enumName var enumValueStr = e.attr("value") if enumValueStr == "": if e.attr("bitpos") == "": @@ -376,14 +367,25 @@ proc genEnums(node: XmlNode, output: var string) = output.add(" {name}* {{.size: sizeof(int32).}} = enum\n".fmt) elements.sort(system.cmp) var prev = -1 - for k, v in elements.pairs: + for enumValue, tmp in elements.pairs: + var enumName = tmp + enumName = camelCaseAscii(enumName) + var tmp = name + for suf in ["KHR", "EXT", "NV", "INTEL", "AMD", "MSFT", "QCOM", "ANDROID", "FlagBits", "FlagBits2"]: + tmp.removeSuffix(suf) + for suf in ["Khr", "Ext", "Nv", "Intel", "Amd", "Msft", "Qcom", "Android"]: + enumName.removeSuffix(suf) + enumName.removePrefix(tmp) + if enumName[0] in Digits: + enumName = "N" & enumName if name == "VkStructureType": - vkStructureTypes.add(v.replace("_", "")) - if prev + 1 != k: - output.add(" {v} = {k}\n".fmt) + vkStructureTypes.add(enumName) + if prev + 1 != enumValue: + output.add(" {enumName} = {enumValue}\n".fmt) else: - output.add(" {v}\n".fmt) - prev = k + output.add(" {enumName}\n".fmt) + prev = enumValue + output.add("\n") proc genProcs(node: XmlNode, output: var string) = echo "Generating Procedures..." @@ -490,8 +492,9 @@ proc genConstructors(node: XmlNode, output: var string) = output.add(" = 0.{m.argType}".fmt) if m.name == "sType": for structType in vkStructureTypes: - if structType.cmpIgnoreStyle("VkStructureType{s.name[2.. Date: Mon, 29 Apr 2024 20:44:53 +0300 Subject: [PATCH 17/57] almost there --- src/vulkan.nim | 677 ++++++++++++++++++++++---------------------- tools/generator.nim | 7 +- tools/utils.nim | 12 +- 3 files changed, 356 insertions(+), 340 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 0f03c0c..6b130a9 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -41,9 +41,15 @@ proc setVKGetProc*(getProc: proc (procName: cstring): pointer {.cdecl.}) = type VkHandle* = uint VkNonDispatchableHandle* = uint - ANativeWindow = ptr object - CAMetalLayer = ptr object - AHardwareBuffer = ptr object + ANativeWindow* = object + AHardwareBuffer* = object + CAMetalLayer* = object + MTLDevice_id* = object + MTLCommandQueue_id* = object + MTLBuffer_id* = object + MTLTexture_id* = object + MTLSharedEvent_id* = object + IOSurfaceRef* = object # Enums const @@ -2314,7 +2320,6 @@ type VkVideoSessionKHR* = distinct VkNonDispatchableHandle VkVideoSessionParametersKHR* = distinct VkNonDispatchableHandle VkSemaphoreSciSyncPoolNV* = distinct VkNonDispatchableHandle - VkPrivateDataSlotCreateFlagBitsEXT* = VkPrivateDataSlotCreateFlagBits VkDescriptorUpdateTemplateTypeKHR* = VkDescriptorUpdateTemplateType VkPointClippingBehaviorKHR* = VkPointClippingBehavior VkQueueGlobalPriorityEXT* = VkQueueGlobalPriorityKHR @@ -9143,7 +9148,7 @@ type `type`*: VkAccelerationStructureMotionInstanceTypeNV flags*: VkAccelerationStructureMotionInstanceFlagsNV data*: VkAccelerationStructureMotionInstanceDataNV - VkRemoteAddressNV* = distinct void + VkRemoteAddressNV* = distinct pointer VkMemoryGetRemoteAddressInfoNV* = object sType*: VkStructureType @@ -20519,154 +20524,154 @@ proc newVkPhysicalDeviceRawAccessChainsFeaturesNV*(sType: VkStructureType, pNext # Procs var - vkDestroyInstance*: proc (instance: VkInstance, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyInstance*: proc (instance: VkInstance, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkEnumeratePhysicalDevices*: proc (instance: VkInstance, pPhysicalDeviceCount: ptr uint32, pPhysicalDevices: ptr VkPhysicalDevice): VkResult {.stdcall.} vkGetDeviceProcAddr*: proc (device: VkDevice, pName: cstring): PFN_vkVoidFunction {.stdcall.} vkGetInstanceProcAddr*: proc (instance: VkInstance, pName: cstring): PFN_vkVoidFunction {.stdcall.} - vkGetPhysicalDeviceProperties*: proc (physicalDevice: VkPhysicalDevice, pProperties: ptr VkPhysicalDeviceProperties): void {.stdcall.} - vkGetPhysicalDeviceQueueFamilyProperties*: proc (physicalDevice: VkPhysicalDevice, pQueueFamilyPropertyCount: ptr uint32, pQueueFamilyProperties: ptr VkQueueFamilyProperties): void {.stdcall.} - vkGetPhysicalDeviceMemoryProperties*: proc (physicalDevice: VkPhysicalDevice, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties): void {.stdcall.} - vkGetPhysicalDeviceFeatures*: proc (physicalDevice: VkPhysicalDevice, pFeatures: ptr VkPhysicalDeviceFeatures): void {.stdcall.} - vkGetPhysicalDeviceFormatProperties*: proc (physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: ptr VkFormatProperties): void {.stdcall.} + vkGetPhysicalDeviceProperties*: proc (physicalDevice: VkPhysicalDevice, pProperties: ptr VkPhysicalDeviceProperties) {.stdcall.} + vkGetPhysicalDeviceQueueFamilyProperties*: proc (physicalDevice: VkPhysicalDevice, pQueueFamilyPropertyCount: ptr uint32, pQueueFamilyProperties: ptr VkQueueFamilyProperties) {.stdcall.} + vkGetPhysicalDeviceMemoryProperties*: proc (physicalDevice: VkPhysicalDevice, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties) {.stdcall.} + vkGetPhysicalDeviceFeatures*: proc (physicalDevice: VkPhysicalDevice, pFeatures: ptr VkPhysicalDeviceFeatures) {.stdcall.} + vkGetPhysicalDeviceFormatProperties*: proc (physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: ptr VkFormatProperties) {.stdcall.} vkGetPhysicalDeviceImageFormatProperties*: proc (physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, tiling: VkImageTiling, usage: VkImageUsageFlags, flags: VkImageCreateFlags, pImageFormatProperties: ptr VkImageFormatProperties): VkResult {.stdcall.} vkCreateDevice*: proc (physicalDevice: VkPhysicalDevice, pCreateInfo: ptr VkDeviceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDevice: ptr VkDevice): VkResult {.stdcall.} - vkDestroyDevice*: proc (device: VkDevice, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyDevice*: proc (device: VkDevice, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkEnumerateDeviceLayerProperties*: proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkLayerProperties): VkResult {.stdcall.} vkEnumerateDeviceExtensionProperties*: proc (physicalDevice: VkPhysicalDevice, pLayerName: cstring, pPropertyCount: ptr uint32, pProperties: ptr VkExtensionProperties): VkResult {.stdcall.} - vkGetDeviceQueue*: proc (device: VkDevice, queueFamilyIndex: uint32, queueIndex: uint32, pQueue: ptr VkQueue): void {.stdcall.} + vkGetDeviceQueue*: proc (device: VkDevice, queueFamilyIndex: uint32, queueIndex: uint32, pQueue: ptr VkQueue) {.stdcall.} vkQueueSubmit*: proc (queue: VkQueue, submitCount: uint32, pSubmits: ptr VkSubmitInfo, fence: VkFence): VkResult {.stdcall.} vkQueueWaitIdle*: proc (queue: VkQueue): VkResult {.stdcall.} vkDeviceWaitIdle*: proc (device: VkDevice): VkResult {.stdcall.} vkAllocateMemory*: proc (device: VkDevice, pAllocateInfo: ptr VkMemoryAllocateInfo, pAllocator: ptr VkAllocationCallbacks, pMemory: ptr VkDeviceMemory): VkResult {.stdcall.} - vkFreeMemory*: proc (device: VkDevice, memory: VkDeviceMemory, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkFreeMemory*: proc (device: VkDevice, memory: VkDeviceMemory, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkMapMemory*: proc (device: VkDevice, memory: VkDeviceMemory, offset: VkDeviceSize, size: VkDeviceSize, flags: VkMemoryMapFlags, ppData: ptr pointer): VkResult {.stdcall.} - vkUnmapMemory*: proc (device: VkDevice, memory: VkDeviceMemory): void {.stdcall.} + vkUnmapMemory*: proc (device: VkDevice, memory: VkDeviceMemory) {.stdcall.} vkFlushMappedMemoryRanges*: proc (device: VkDevice, memoryRangeCount: uint32, pMemoryRanges: ptr VkMappedMemoryRange): VkResult {.stdcall.} vkInvalidateMappedMemoryRanges*: proc (device: VkDevice, memoryRangeCount: uint32, pMemoryRanges: ptr VkMappedMemoryRange): VkResult {.stdcall.} - vkGetDeviceMemoryCommitment*: proc (device: VkDevice, memory: VkDeviceMemory, pCommittedMemoryInBytes: ptr VkDeviceSize): void {.stdcall.} - vkGetBufferMemoryRequirements*: proc (device: VkDevice, buffer: VkBuffer, pMemoryRequirements: ptr VkMemoryRequirements): void {.stdcall.} + vkGetDeviceMemoryCommitment*: proc (device: VkDevice, memory: VkDeviceMemory, pCommittedMemoryInBytes: ptr VkDeviceSize) {.stdcall.} + vkGetBufferMemoryRequirements*: proc (device: VkDevice, buffer: VkBuffer, pMemoryRequirements: ptr VkMemoryRequirements) {.stdcall.} vkBindBufferMemory*: proc (device: VkDevice, buffer: VkBuffer, memory: VkDeviceMemory, memoryOffset: VkDeviceSize): VkResult {.stdcall.} - vkGetImageMemoryRequirements*: proc (device: VkDevice, image: VkImage, pMemoryRequirements: ptr VkMemoryRequirements): void {.stdcall.} + vkGetImageMemoryRequirements*: proc (device: VkDevice, image: VkImage, pMemoryRequirements: ptr VkMemoryRequirements) {.stdcall.} vkBindImageMemory*: proc (device: VkDevice, image: VkImage, memory: VkDeviceMemory, memoryOffset: VkDeviceSize): VkResult {.stdcall.} - vkGetImageSparseMemoryRequirements*: proc (device: VkDevice, image: VkImage, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements): void {.stdcall.} - vkGetPhysicalDeviceSparseImageFormatProperties*: proc (physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, samples: VkSampleCountFlagBits, usage: VkImageUsageFlags, tiling: VkImageTiling, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties): void {.stdcall.} + vkGetImageSparseMemoryRequirements*: proc (device: VkDevice, image: VkImage, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements) {.stdcall.} + vkGetPhysicalDeviceSparseImageFormatProperties*: proc (physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, samples: VkSampleCountFlagBits, usage: VkImageUsageFlags, tiling: VkImageTiling, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties) {.stdcall.} vkQueueBindSparse*: proc (queue: VkQueue, bindInfoCount: uint32, pBindInfo: ptr VkBindSparseInfo, fence: VkFence): VkResult {.stdcall.} vkCreateFence*: proc (device: VkDevice, pCreateInfo: ptr VkFenceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pFence: ptr VkFence): VkResult {.stdcall.} - vkDestroyFence*: proc (device: VkDevice, fence: VkFence, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyFence*: proc (device: VkDevice, fence: VkFence, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkResetFences*: proc (device: VkDevice, fenceCount: uint32, pFences: ptr VkFence): VkResult {.stdcall.} vkGetFenceStatus*: proc (device: VkDevice, fence: VkFence): VkResult {.stdcall.} vkWaitForFences*: proc (device: VkDevice, fenceCount: uint32, pFences: ptr VkFence, waitAll: VkBool32, timeout: uint64): VkResult {.stdcall.} vkCreateSemaphore*: proc (device: VkDevice, pCreateInfo: ptr VkSemaphoreCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSemaphore: ptr VkSemaphore): VkResult {.stdcall.} - vkDestroySemaphore*: proc (device: VkDevice, semaphore: VkSemaphore, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroySemaphore*: proc (device: VkDevice, semaphore: VkSemaphore, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkCreateEvent*: proc (device: VkDevice, pCreateInfo: ptr VkEventCreateInfo, pAllocator: ptr VkAllocationCallbacks, pEvent: ptr VkEvent): VkResult {.stdcall.} - vkDestroyEvent*: proc (device: VkDevice, event: VkEvent, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyEvent*: proc (device: VkDevice, event: VkEvent, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkGetEventStatus*: proc (device: VkDevice, event: VkEvent): VkResult {.stdcall.} vkSetEvent*: proc (device: VkDevice, event: VkEvent): VkResult {.stdcall.} vkResetEvent*: proc (device: VkDevice, event: VkEvent): VkResult {.stdcall.} vkCreateQueryPool*: proc (device: VkDevice, pCreateInfo: ptr VkQueryPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pQueryPool: ptr VkQueryPool): VkResult {.stdcall.} - vkDestroyQueryPool*: proc (device: VkDevice, queryPool: VkQueryPool, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyQueryPool*: proc (device: VkDevice, queryPool: VkQueryPool, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkGetQueryPoolResults*: proc (device: VkDevice, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32, dataSize: uint, pData: pointer, stride: VkDeviceSize, flags: VkQueryResultFlags): VkResult {.stdcall.} - vkResetQueryPool*: proc (device: VkDevice, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32): void {.stdcall.} + vkResetQueryPool*: proc (device: VkDevice, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32) {.stdcall.} vkCreateBuffer*: proc (device: VkDevice, pCreateInfo: ptr VkBufferCreateInfo, pAllocator: ptr VkAllocationCallbacks, pBuffer: ptr VkBuffer): VkResult {.stdcall.} - vkDestroyBuffer*: proc (device: VkDevice, buffer: VkBuffer, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyBuffer*: proc (device: VkDevice, buffer: VkBuffer, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkCreateBufferView*: proc (device: VkDevice, pCreateInfo: ptr VkBufferViewCreateInfo, pAllocator: ptr VkAllocationCallbacks, pView: ptr VkBufferView): VkResult {.stdcall.} - vkDestroyBufferView*: proc (device: VkDevice, bufferView: VkBufferView, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyBufferView*: proc (device: VkDevice, bufferView: VkBufferView, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkCreateImage*: proc (device: VkDevice, pCreateInfo: ptr VkImageCreateInfo, pAllocator: ptr VkAllocationCallbacks, pImage: ptr VkImage): VkResult {.stdcall.} - vkDestroyImage*: proc (device: VkDevice, image: VkImage, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkGetImageSubresourceLayout*: proc (device: VkDevice, image: VkImage, pSubresource: ptr VkImageSubresource, pLayout: ptr VkSubresourceLayout): void {.stdcall.} + vkDestroyImage*: proc (device: VkDevice, image: VkImage, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} + vkGetImageSubresourceLayout*: proc (device: VkDevice, image: VkImage, pSubresource: ptr VkImageSubresource, pLayout: ptr VkSubresourceLayout) {.stdcall.} vkCreateImageView*: proc (device: VkDevice, pCreateInfo: ptr VkImageViewCreateInfo, pAllocator: ptr VkAllocationCallbacks, pView: ptr VkImageView): VkResult {.stdcall.} - vkDestroyImageView*: proc (device: VkDevice, imageView: VkImageView, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyImageView*: proc (device: VkDevice, imageView: VkImageView, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkCreateShaderModule*: proc (device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo, pAllocator: ptr VkAllocationCallbacks, pShaderModule: ptr VkShaderModule): VkResult {.stdcall.} - vkDestroyShaderModule*: proc (device: VkDevice, shaderModule: VkShaderModule, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyShaderModule*: proc (device: VkDevice, shaderModule: VkShaderModule, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkCreatePipelineCache*: proc (device: VkDevice, pCreateInfo: ptr VkPipelineCacheCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineCache: ptr VkPipelineCache): VkResult {.stdcall.} - vkDestroyPipelineCache*: proc (device: VkDevice, pipelineCache: VkPipelineCache, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyPipelineCache*: proc (device: VkDevice, pipelineCache: VkPipelineCache, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkGetPipelineCacheData*: proc (device: VkDevice, pipelineCache: VkPipelineCache, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.} vkMergePipelineCaches*: proc (device: VkDevice, dstCache: VkPipelineCache, srcCacheCount: uint32, pSrcCaches: ptr VkPipelineCache): VkResult {.stdcall.} vkCreateGraphicsPipelines*: proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkGraphicsPipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} vkCreateComputePipelines*: proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkComputePipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI*: proc (device: VkDevice, renderpass: VkRenderPass, pMaxWorkgroupSize: ptr VkExtent2D): VkResult {.stdcall.} - vkDestroyPipeline*: proc (device: VkDevice, pipeline: VkPipeline, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyPipeline*: proc (device: VkDevice, pipeline: VkPipeline, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkCreatePipelineLayout*: proc (device: VkDevice, pCreateInfo: ptr VkPipelineLayoutCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineLayout: ptr VkPipelineLayout): VkResult {.stdcall.} - vkDestroyPipelineLayout*: proc (device: VkDevice, pipelineLayout: VkPipelineLayout, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyPipelineLayout*: proc (device: VkDevice, pipelineLayout: VkPipelineLayout, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkCreateSampler*: proc (device: VkDevice, pCreateInfo: ptr VkSamplerCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSampler: ptr VkSampler): VkResult {.stdcall.} - vkDestroySampler*: proc (device: VkDevice, sampler: VkSampler, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroySampler*: proc (device: VkDevice, sampler: VkSampler, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkCreateDescriptorSetLayout*: proc (device: VkDevice, pCreateInfo: ptr VkDescriptorSetLayoutCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSetLayout: ptr VkDescriptorSetLayout): VkResult {.stdcall.} - vkDestroyDescriptorSetLayout*: proc (device: VkDevice, descriptorSetLayout: VkDescriptorSetLayout, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyDescriptorSetLayout*: proc (device: VkDevice, descriptorSetLayout: VkDescriptorSetLayout, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkCreateDescriptorPool*: proc (device: VkDevice, pCreateInfo: ptr VkDescriptorPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDescriptorPool: ptr VkDescriptorPool): VkResult {.stdcall.} - vkDestroyDescriptorPool*: proc (device: VkDevice, descriptorPool: VkDescriptorPool, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyDescriptorPool*: proc (device: VkDevice, descriptorPool: VkDescriptorPool, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkResetDescriptorPool*: proc (device: VkDevice, descriptorPool: VkDescriptorPool, flags: VkDescriptorPoolResetFlags): VkResult {.stdcall.} vkAllocateDescriptorSets*: proc (device: VkDevice, pAllocateInfo: ptr VkDescriptorSetAllocateInfo, pDescriptorSets: ptr VkDescriptorSet): VkResult {.stdcall.} vkFreeDescriptorSets*: proc (device: VkDevice, descriptorPool: VkDescriptorPool, descriptorSetCount: uint32, pDescriptorSets: ptr VkDescriptorSet): VkResult {.stdcall.} - vkUpdateDescriptorSets*: proc (device: VkDevice, descriptorWriteCount: uint32, pDescriptorWrites: ptr VkWriteDescriptorSet, descriptorCopyCount: uint32, pDescriptorCopies: ptr VkCopyDescriptorSet): void {.stdcall.} + vkUpdateDescriptorSets*: proc (device: VkDevice, descriptorWriteCount: uint32, pDescriptorWrites: ptr VkWriteDescriptorSet, descriptorCopyCount: uint32, pDescriptorCopies: ptr VkCopyDescriptorSet) {.stdcall.} vkCreateFramebuffer*: proc (device: VkDevice, pCreateInfo: ptr VkFramebufferCreateInfo, pAllocator: ptr VkAllocationCallbacks, pFramebuffer: ptr VkFramebuffer): VkResult {.stdcall.} - vkDestroyFramebuffer*: proc (device: VkDevice, framebuffer: VkFramebuffer, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyFramebuffer*: proc (device: VkDevice, framebuffer: VkFramebuffer, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkCreateRenderPass*: proc (device: VkDevice, pCreateInfo: ptr VkRenderPassCreateInfo, pAllocator: ptr VkAllocationCallbacks, pRenderPass: ptr VkRenderPass): VkResult {.stdcall.} - vkDestroyRenderPass*: proc (device: VkDevice, renderPass: VkRenderPass, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkGetRenderAreaGranularity*: proc (device: VkDevice, renderPass: VkRenderPass, pGranularity: ptr VkExtent2D): void {.stdcall.} - vkGetRenderingAreaGranularityKHR*: proc (device: VkDevice, pRenderingAreaInfo: ptr VkRenderingAreaInfoKHR, pGranularity: ptr VkExtent2D): void {.stdcall.} + vkDestroyRenderPass*: proc (device: VkDevice, renderPass: VkRenderPass, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} + vkGetRenderAreaGranularity*: proc (device: VkDevice, renderPass: VkRenderPass, pGranularity: ptr VkExtent2D) {.stdcall.} + vkGetRenderingAreaGranularityKHR*: proc (device: VkDevice, pRenderingAreaInfo: ptr VkRenderingAreaInfoKHR, pGranularity: ptr VkExtent2D) {.stdcall.} vkCreateCommandPool*: proc (device: VkDevice, pCreateInfo: ptr VkCommandPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pCommandPool: ptr VkCommandPool): VkResult {.stdcall.} - vkDestroyCommandPool*: proc (device: VkDevice, commandPool: VkCommandPool, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyCommandPool*: proc (device: VkDevice, commandPool: VkCommandPool, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkResetCommandPool*: proc (device: VkDevice, commandPool: VkCommandPool, flags: VkCommandPoolResetFlags): VkResult {.stdcall.} vkAllocateCommandBuffers*: proc (device: VkDevice, pAllocateInfo: ptr VkCommandBufferAllocateInfo, pCommandBuffers: ptr VkCommandBuffer): VkResult {.stdcall.} - vkFreeCommandBuffers*: proc (device: VkDevice, commandPool: VkCommandPool, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer): void {.stdcall.} + vkFreeCommandBuffers*: proc (device: VkDevice, commandPool: VkCommandPool, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer) {.stdcall.} vkBeginCommandBuffer*: proc (commandBuffer: VkCommandBuffer, pBeginInfo: ptr VkCommandBufferBeginInfo): VkResult {.stdcall.} vkEndCommandBuffer*: proc (commandBuffer: VkCommandBuffer): VkResult {.stdcall.} vkResetCommandBuffer*: proc (commandBuffer: VkCommandBuffer, flags: VkCommandBufferResetFlags): VkResult {.stdcall.} - vkCmdBindPipeline*: proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline): void {.stdcall.} - vkCmdSetAttachmentFeedbackLoopEnableEXT*: proc (commandBuffer: VkCommandBuffer, aspectMask: VkImageAspectFlags): void {.stdcall.} - vkCmdSetViewport*: proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewports: ptr VkViewport): void {.stdcall.} - vkCmdSetScissor*: proc (commandBuffer: VkCommandBuffer, firstScissor: uint32, scissorCount: uint32, pScissors: ptr VkRect2D): void {.stdcall.} - vkCmdSetLineWidth*: proc (commandBuffer: VkCommandBuffer, lineWidth: float32): void {.stdcall.} - vkCmdSetDepthBias*: proc (commandBuffer: VkCommandBuffer, depthBiasConstantFactor: float32, depthBiasClamp: float32, depthBiasSlopeFactor: float32): void {.stdcall.} - vkCmdSetBlendConstants*: proc (commandBuffer: VkCommandBuffer, blendConstants: array[4, float32]): void {.stdcall.} - vkCmdSetDepthBounds*: proc (commandBuffer: VkCommandBuffer, minDepthBounds: float32, maxDepthBounds: float32): void {.stdcall.} - vkCmdSetStencilCompareMask*: proc (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, compareMask: uint32): void {.stdcall.} - vkCmdSetStencilWriteMask*: proc (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, writeMask: uint32): void {.stdcall.} - vkCmdSetStencilReference*: proc (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, reference: uint32): void {.stdcall.} - vkCmdBindDescriptorSets*: proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, firstSet: uint32, descriptorSetCount: uint32, pDescriptorSets: ptr VkDescriptorSet, dynamicOffsetCount: uint32, pDynamicOffsets: ptr uint32): void {.stdcall.} - vkCmdBindIndexBuffer*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, indexType: VkIndexType): void {.stdcall.} - vkCmdBindVertexBuffers*: proc (commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize): void {.stdcall.} - vkCmdDraw*: proc (commandBuffer: VkCommandBuffer, vertexCount: uint32, instanceCount: uint32, firstVertex: uint32, firstInstance: uint32): void {.stdcall.} - vkCmdDrawIndexed*: proc (commandBuffer: VkCommandBuffer, indexCount: uint32, instanceCount: uint32, firstIndex: uint32, vertexOffset: int32, firstInstance: uint32): void {.stdcall.} - vkCmdDrawMultiEXT*: proc (commandBuffer: VkCommandBuffer, drawCount: uint32, pVertexInfo: ptr VkMultiDrawInfoEXT, instanceCount: uint32, firstInstance: uint32, stride: uint32): void {.stdcall.} - vkCmdDrawMultiIndexedEXT*: proc (commandBuffer: VkCommandBuffer, drawCount: uint32, pIndexInfo: ptr VkMultiDrawIndexedInfoEXT, instanceCount: uint32, firstInstance: uint32, stride: uint32, pVertexOffset: ptr int32): void {.stdcall.} - vkCmdDrawIndirect*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.} - vkCmdDrawIndexedIndirect*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.} - vkCmdDispatch*: proc (commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.} - vkCmdDispatchIndirect*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize): void {.stdcall.} - vkCmdSubpassShadingHUAWEI*: proc (commandBuffer: VkCommandBuffer): void {.stdcall.} - vkCmdDrawClusterHUAWEI*: proc (commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.} - vkCmdDrawClusterIndirectHUAWEI*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize): void {.stdcall.} - vkCmdUpdatePipelineIndirectBufferNV*: proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline): void {.stdcall.} - vkCmdCopyBuffer*: proc (commandBuffer: VkCommandBuffer, srcBuffer: VkBuffer, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferCopy): void {.stdcall.} - vkCmdCopyImage*: proc (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageCopy): void {.stdcall.} - vkCmdBlitImage*: proc (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageBlit, filter: VkFilter): void {.stdcall.} - vkCmdCopyBufferToImage*: proc (commandBuffer: VkCommandBuffer, srcBuffer: VkBuffer, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkBufferImageCopy): void {.stdcall.} - vkCmdCopyImageToBuffer*: proc (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferImageCopy): void {.stdcall.} - vkCmdCopyMemoryIndirectNV*: proc (commandBuffer: VkCommandBuffer, copyBufferAddress: VkDeviceAddress, copyCount: uint32, stride: uint32): void {.stdcall.} - vkCmdCopyMemoryToImageIndirectNV*: proc (commandBuffer: VkCommandBuffer, copyBufferAddress: VkDeviceAddress, copyCount: uint32, stride: uint32, dstImage: VkImage, dstImageLayout: VkImageLayout, pImageSubresources: ptr VkImageSubresourceLayers): void {.stdcall.} - vkCmdUpdateBuffer*: proc (commandBuffer: VkCommandBuffer, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, dataSize: VkDeviceSize, pData: pointer): void {.stdcall.} - vkCmdFillBuffer*: proc (commandBuffer: VkCommandBuffer, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, size: VkDeviceSize, data: uint32): void {.stdcall.} - vkCmdClearColorImage*: proc (commandBuffer: VkCommandBuffer, image: VkImage, imageLayout: VkImageLayout, pColor: ptr VkClearColorValue, rangeCount: uint32, pRanges: ptr VkImageSubresourceRange): void {.stdcall.} - vkCmdClearDepthStencilImage*: proc (commandBuffer: VkCommandBuffer, image: VkImage, imageLayout: VkImageLayout, pDepthStencil: ptr VkClearDepthStencilValue, rangeCount: uint32, pRanges: ptr VkImageSubresourceRange): void {.stdcall.} - vkCmdClearAttachments*: proc (commandBuffer: VkCommandBuffer, attachmentCount: uint32, pAttachments: ptr VkClearAttachment, rectCount: uint32, pRects: ptr VkClearRect): void {.stdcall.} - vkCmdResolveImage*: proc (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageResolve): void {.stdcall.} - vkCmdSetEvent*: proc (commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags): void {.stdcall.} - vkCmdResetEvent*: proc (commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags): void {.stdcall.} - vkCmdWaitEvents*: proc (commandBuffer: VkCommandBuffer, eventCount: uint32, pEvents: ptr VkEvent, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, memoryBarrierCount: uint32, pMemoryBarriers: ptr VkMemoryBarrier, bufferMemoryBarrierCount: uint32, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier, imageMemoryBarrierCount: uint32, pImageMemoryBarriers: ptr VkImageMemoryBarrier): void {.stdcall.} - vkCmdPipelineBarrier*: proc (commandBuffer: VkCommandBuffer, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, dependencyFlags: VkDependencyFlags, memoryBarrierCount: uint32, pMemoryBarriers: ptr VkMemoryBarrier, bufferMemoryBarrierCount: uint32, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier, imageMemoryBarrierCount: uint32, pImageMemoryBarriers: ptr VkImageMemoryBarrier): void {.stdcall.} - vkCmdBeginQuery*: proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, flags: VkQueryControlFlags): void {.stdcall.} - vkCmdEndQuery*: proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32): void {.stdcall.} - vkCmdBeginConditionalRenderingEXT*: proc (commandBuffer: VkCommandBuffer, pConditionalRenderingBegin: ptr VkConditionalRenderingBeginInfoEXT): void {.stdcall.} - vkCmdEndConditionalRenderingEXT*: proc (commandBuffer: VkCommandBuffer): void {.stdcall.} - vkCmdResetQueryPool*: proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32): void {.stdcall.} - vkCmdWriteTimestamp*: proc (commandBuffer: VkCommandBuffer, pipelineStage: VkPipelineStageFlagBits, queryPool: VkQueryPool, query: uint32): void {.stdcall.} - vkCmdCopyQueryPoolResults*: proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, stride: VkDeviceSize, flags: VkQueryResultFlags): void {.stdcall.} - vkCmdPushConstants*: proc (commandBuffer: VkCommandBuffer, layout: VkPipelineLayout, stageFlags: VkShaderStageFlags, offset: uint32, size: uint32, pValues: pointer): void {.stdcall.} - vkCmdBeginRenderPass*: proc (commandBuffer: VkCommandBuffer, pRenderPassBegin: ptr VkRenderPassBeginInfo, contents: VkSubpassContents): void {.stdcall.} - vkCmdNextSubpass*: proc (commandBuffer: VkCommandBuffer, contents: VkSubpassContents): void {.stdcall.} - vkCmdEndRenderPass*: proc (commandBuffer: VkCommandBuffer): void {.stdcall.} - vkCmdExecuteCommands*: proc (commandBuffer: VkCommandBuffer, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer): void {.stdcall.} + vkCmdBindPipeline*: proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline) {.stdcall.} + vkCmdSetAttachmentFeedbackLoopEnableEXT*: proc (commandBuffer: VkCommandBuffer, aspectMask: VkImageAspectFlags) {.stdcall.} + vkCmdSetViewport*: proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewports: ptr VkViewport) {.stdcall.} + vkCmdSetScissor*: proc (commandBuffer: VkCommandBuffer, firstScissor: uint32, scissorCount: uint32, pScissors: ptr VkRect2D) {.stdcall.} + vkCmdSetLineWidth*: proc (commandBuffer: VkCommandBuffer, lineWidth: float32) {.stdcall.} + vkCmdSetDepthBias*: proc (commandBuffer: VkCommandBuffer, depthBiasConstantFactor: float32, depthBiasClamp: float32, depthBiasSlopeFactor: float32) {.stdcall.} + vkCmdSetBlendConstants*: proc (commandBuffer: VkCommandBuffer, blendConstants: array[4, float32]) {.stdcall.} + vkCmdSetDepthBounds*: proc (commandBuffer: VkCommandBuffer, minDepthBounds: float32, maxDepthBounds: float32) {.stdcall.} + vkCmdSetStencilCompareMask*: proc (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, compareMask: uint32) {.stdcall.} + vkCmdSetStencilWriteMask*: proc (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, writeMask: uint32) {.stdcall.} + vkCmdSetStencilReference*: proc (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, reference: uint32) {.stdcall.} + vkCmdBindDescriptorSets*: proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, firstSet: uint32, descriptorSetCount: uint32, pDescriptorSets: ptr VkDescriptorSet, dynamicOffsetCount: uint32, pDynamicOffsets: ptr uint32) {.stdcall.} + vkCmdBindIndexBuffer*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, indexType: VkIndexType) {.stdcall.} + vkCmdBindVertexBuffers*: proc (commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize) {.stdcall.} + vkCmdDraw*: proc (commandBuffer: VkCommandBuffer, vertexCount: uint32, instanceCount: uint32, firstVertex: uint32, firstInstance: uint32) {.stdcall.} + vkCmdDrawIndexed*: proc (commandBuffer: VkCommandBuffer, indexCount: uint32, instanceCount: uint32, firstIndex: uint32, vertexOffset: int32, firstInstance: uint32) {.stdcall.} + vkCmdDrawMultiEXT*: proc (commandBuffer: VkCommandBuffer, drawCount: uint32, pVertexInfo: ptr VkMultiDrawInfoEXT, instanceCount: uint32, firstInstance: uint32, stride: uint32) {.stdcall.} + vkCmdDrawMultiIndexedEXT*: proc (commandBuffer: VkCommandBuffer, drawCount: uint32, pIndexInfo: ptr VkMultiDrawIndexedInfoEXT, instanceCount: uint32, firstInstance: uint32, stride: uint32, pVertexOffset: ptr int32) {.stdcall.} + vkCmdDrawIndirect*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32) {.stdcall.} + vkCmdDrawIndexedIndirect*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32) {.stdcall.} + vkCmdDispatch*: proc (commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32) {.stdcall.} + vkCmdDispatchIndirect*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize) {.stdcall.} + vkCmdSubpassShadingHUAWEI*: proc (commandBuffer: VkCommandBuffer) {.stdcall.} + vkCmdDrawClusterHUAWEI*: proc (commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32) {.stdcall.} + vkCmdDrawClusterIndirectHUAWEI*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize) {.stdcall.} + vkCmdUpdatePipelineIndirectBufferNV*: proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline) {.stdcall.} + vkCmdCopyBuffer*: proc (commandBuffer: VkCommandBuffer, srcBuffer: VkBuffer, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferCopy) {.stdcall.} + vkCmdCopyImage*: proc (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageCopy) {.stdcall.} + vkCmdBlitImage*: proc (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageBlit, filter: VkFilter) {.stdcall.} + vkCmdCopyBufferToImage*: proc (commandBuffer: VkCommandBuffer, srcBuffer: VkBuffer, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkBufferImageCopy) {.stdcall.} + vkCmdCopyImageToBuffer*: proc (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferImageCopy) {.stdcall.} + vkCmdCopyMemoryIndirectNV*: proc (commandBuffer: VkCommandBuffer, copyBufferAddress: VkDeviceAddress, copyCount: uint32, stride: uint32) {.stdcall.} + vkCmdCopyMemoryToImageIndirectNV*: proc (commandBuffer: VkCommandBuffer, copyBufferAddress: VkDeviceAddress, copyCount: uint32, stride: uint32, dstImage: VkImage, dstImageLayout: VkImageLayout, pImageSubresources: ptr VkImageSubresourceLayers) {.stdcall.} + vkCmdUpdateBuffer*: proc (commandBuffer: VkCommandBuffer, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, dataSize: VkDeviceSize, pData: pointer) {.stdcall.} + vkCmdFillBuffer*: proc (commandBuffer: VkCommandBuffer, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, size: VkDeviceSize, data: uint32) {.stdcall.} + vkCmdClearColorImage*: proc (commandBuffer: VkCommandBuffer, image: VkImage, imageLayout: VkImageLayout, pColor: ptr VkClearColorValue, rangeCount: uint32, pRanges: ptr VkImageSubresourceRange) {.stdcall.} + vkCmdClearDepthStencilImage*: proc (commandBuffer: VkCommandBuffer, image: VkImage, imageLayout: VkImageLayout, pDepthStencil: ptr VkClearDepthStencilValue, rangeCount: uint32, pRanges: ptr VkImageSubresourceRange) {.stdcall.} + vkCmdClearAttachments*: proc (commandBuffer: VkCommandBuffer, attachmentCount: uint32, pAttachments: ptr VkClearAttachment, rectCount: uint32, pRects: ptr VkClearRect) {.stdcall.} + vkCmdResolveImage*: proc (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageResolve) {.stdcall.} + vkCmdSetEvent*: proc (commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags) {.stdcall.} + vkCmdResetEvent*: proc (commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags) {.stdcall.} + vkCmdWaitEvents*: proc (commandBuffer: VkCommandBuffer, eventCount: uint32, pEvents: ptr VkEvent, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, memoryBarrierCount: uint32, pMemoryBarriers: ptr VkMemoryBarrier, bufferMemoryBarrierCount: uint32, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier, imageMemoryBarrierCount: uint32, pImageMemoryBarriers: ptr VkImageMemoryBarrier) {.stdcall.} + vkCmdPipelineBarrier*: proc (commandBuffer: VkCommandBuffer, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, dependencyFlags: VkDependencyFlags, memoryBarrierCount: uint32, pMemoryBarriers: ptr VkMemoryBarrier, bufferMemoryBarrierCount: uint32, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier, imageMemoryBarrierCount: uint32, pImageMemoryBarriers: ptr VkImageMemoryBarrier) {.stdcall.} + vkCmdBeginQuery*: proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, flags: VkQueryControlFlags) {.stdcall.} + vkCmdEndQuery*: proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32) {.stdcall.} + vkCmdBeginConditionalRenderingEXT*: proc (commandBuffer: VkCommandBuffer, pConditionalRenderingBegin: ptr VkConditionalRenderingBeginInfoEXT) {.stdcall.} + vkCmdEndConditionalRenderingEXT*: proc (commandBuffer: VkCommandBuffer) {.stdcall.} + vkCmdResetQueryPool*: proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32) {.stdcall.} + vkCmdWriteTimestamp*: proc (commandBuffer: VkCommandBuffer, pipelineStage: VkPipelineStageFlagBits, queryPool: VkQueryPool, query: uint32) {.stdcall.} + vkCmdCopyQueryPoolResults*: proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, stride: VkDeviceSize, flags: VkQueryResultFlags) {.stdcall.} + vkCmdPushConstants*: proc (commandBuffer: VkCommandBuffer, layout: VkPipelineLayout, stageFlags: VkShaderStageFlags, offset: uint32, size: uint32, pValues: pointer) {.stdcall.} + vkCmdBeginRenderPass*: proc (commandBuffer: VkCommandBuffer, pRenderPassBegin: ptr VkRenderPassBeginInfo, contents: VkSubpassContents) {.stdcall.} + vkCmdNextSubpass*: proc (commandBuffer: VkCommandBuffer, contents: VkSubpassContents) {.stdcall.} + vkCmdEndRenderPass*: proc (commandBuffer: VkCommandBuffer) {.stdcall.} + vkCmdExecuteCommands*: proc (commandBuffer: VkCommandBuffer, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer) {.stdcall.} vkCreateAndroidSurfaceKHR*: proc (instance: VkInstance, pCreateInfo: ptr VkAndroidSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} vkGetPhysicalDeviceDisplayPropertiesKHR*: proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayPropertiesKHR): VkResult {.stdcall.} vkGetPhysicalDeviceDisplayPlanePropertiesKHR*: proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayPlanePropertiesKHR): VkResult {.stdcall.} @@ -20676,13 +20681,13 @@ var vkGetDisplayPlaneCapabilitiesKHR*: proc (physicalDevice: VkPhysicalDevice, mode: VkDisplayModeKHR, planeIndex: uint32, pCapabilities: ptr VkDisplayPlaneCapabilitiesKHR): VkResult {.stdcall.} vkCreateDisplayPlaneSurfaceKHR*: proc (instance: VkInstance, pCreateInfo: ptr VkDisplaySurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} vkCreateSharedSwapchainsKHR*: proc (device: VkDevice, swapchainCount: uint32, pCreateInfos: ptr VkSwapchainCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSwapchains: ptr VkSwapchainKHR): VkResult {.stdcall.} - vkDestroySurfaceKHR*: proc (instance: VkInstance, surface: VkSurfaceKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroySurfaceKHR*: proc (instance: VkInstance, surface: VkSurfaceKHR, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkGetPhysicalDeviceSurfaceSupportKHR*: proc (physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, surface: VkSurfaceKHR, pSupported: ptr VkBool32): VkResult {.stdcall.} vkGetPhysicalDeviceSurfaceCapabilitiesKHR*: proc (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceCapabilities: ptr VkSurfaceCapabilitiesKHR): VkResult {.stdcall.} vkGetPhysicalDeviceSurfaceFormatsKHR*: proc (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceFormatCount: ptr uint32, pSurfaceFormats: ptr VkSurfaceFormatKHR): VkResult {.stdcall.} vkGetPhysicalDeviceSurfacePresentModesKHR*: proc (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pPresentModeCount: ptr uint32, pPresentModes: ptr VkPresentModeKHR): VkResult {.stdcall.} vkCreateSwapchainKHR*: proc (device: VkDevice, pCreateInfo: ptr VkSwapchainCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSwapchain: ptr VkSwapchainKHR): VkResult {.stdcall.} - vkDestroySwapchainKHR*: proc (device: VkDevice, swapchain: VkSwapchainKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroySwapchainKHR*: proc (device: VkDevice, swapchain: VkSwapchainKHR, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkGetSwapchainImagesKHR*: proc (device: VkDevice, swapchain: VkSwapchainKHR, pSwapchainImageCount: ptr uint32, pSwapchainImages: ptr VkImage): VkResult {.stdcall.} vkAcquireNextImageKHR*: proc (device: VkDevice, swapchain: VkSwapchainKHR, timeout: uint64, semaphore: VkSemaphore, fence: VkFence, pImageIndex: ptr uint32): VkResult {.stdcall.} vkQueuePresentKHR*: proc (queue: VkQueue, pPresentInfo: ptr VkPresentInfoKHR): VkResult {.stdcall.} @@ -20702,31 +20707,31 @@ var vkCreateScreenSurfaceQNX*: proc (instance: VkInstance, pCreateInfo: ptr VkScreenSurfaceCreateInfoQNX, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} vkGetPhysicalDeviceScreenPresentationSupportQNX*: proc (physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, window: ptr screen_window): VkBool32 {.stdcall.} vkCreateDebugReportCallbackEXT*: proc (instance: VkInstance, pCreateInfo: ptr VkDebugReportCallbackCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pCallback: ptr VkDebugReportCallbackEXT): VkResult {.stdcall.} - vkDestroyDebugReportCallbackEXT*: proc (instance: VkInstance, callback: VkDebugReportCallbackEXT, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkDebugReportMessageEXT*: proc (instance: VkInstance, flags: VkDebugReportFlagsEXT, objectType: VkDebugReportObjectTypeEXT, `object`: uint64, location: uint, messageCode: int32, pLayerPrefix: cstring, pMessage: cstring): void {.stdcall.} + vkDestroyDebugReportCallbackEXT*: proc (instance: VkInstance, callback: VkDebugReportCallbackEXT, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} + vkDebugReportMessageEXT*: proc (instance: VkInstance, flags: VkDebugReportFlagsEXT, objectType: VkDebugReportObjectTypeEXT, `object`: uint64, location: uint, messageCode: int32, pLayerPrefix: cstring, pMessage: cstring) {.stdcall.} vkDebugMarkerSetObjectNameEXT*: proc (device: VkDevice, pNameInfo: ptr VkDebugMarkerObjectNameInfoEXT): VkResult {.stdcall.} vkDebugMarkerSetObjectTagEXT*: proc (device: VkDevice, pTagInfo: ptr VkDebugMarkerObjectTagInfoEXT): VkResult {.stdcall.} - vkCmdDebugMarkerBeginEXT*: proc (commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT): void {.stdcall.} - vkCmdDebugMarkerEndEXT*: proc (commandBuffer: VkCommandBuffer): void {.stdcall.} - vkCmdDebugMarkerInsertEXT*: proc (commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT): void {.stdcall.} + vkCmdDebugMarkerBeginEXT*: proc (commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT) {.stdcall.} + vkCmdDebugMarkerEndEXT*: proc (commandBuffer: VkCommandBuffer) {.stdcall.} + vkCmdDebugMarkerInsertEXT*: proc (commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT) {.stdcall.} vkGetPhysicalDeviceExternalImageFormatPropertiesNV*: proc (physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, tiling: VkImageTiling, usage: VkImageUsageFlags, flags: VkImageCreateFlags, externalHandleType: VkExternalMemoryHandleTypeFlagsNV, pExternalImageFormatProperties: ptr VkExternalImageFormatPropertiesNV): VkResult {.stdcall.} vkGetMemoryWin32HandleNV*: proc (device: VkDevice, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagsNV, pHandle: ptr HANDLE): VkResult {.stdcall.} - vkCmdExecuteGeneratedCommandsNV*: proc (commandBuffer: VkCommandBuffer, isPreprocessed: VkBool32, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV): void {.stdcall.} - vkCmdPreprocessGeneratedCommandsNV*: proc (commandBuffer: VkCommandBuffer, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV): void {.stdcall.} - vkCmdBindPipelineShaderGroupNV*: proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline, groupIndex: uint32): void {.stdcall.} - vkGetGeneratedCommandsMemoryRequirementsNV*: proc (device: VkDevice, pInfo: ptr VkGeneratedCommandsMemoryRequirementsInfoNV, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.} + vkCmdExecuteGeneratedCommandsNV*: proc (commandBuffer: VkCommandBuffer, isPreprocessed: VkBool32, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV) {.stdcall.} + vkCmdPreprocessGeneratedCommandsNV*: proc (commandBuffer: VkCommandBuffer, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV) {.stdcall.} + vkCmdBindPipelineShaderGroupNV*: proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline, groupIndex: uint32) {.stdcall.} + vkGetGeneratedCommandsMemoryRequirementsNV*: proc (device: VkDevice, pInfo: ptr VkGeneratedCommandsMemoryRequirementsInfoNV, pMemoryRequirements: ptr VkMemoryRequirements2) {.stdcall.} vkCreateIndirectCommandsLayoutNV*: proc (device: VkDevice, pCreateInfo: ptr VkIndirectCommandsLayoutCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pIndirectCommandsLayout: ptr VkIndirectCommandsLayoutNV): VkResult {.stdcall.} - vkDestroyIndirectCommandsLayoutNV*: proc (device: VkDevice, indirectCommandsLayout: VkIndirectCommandsLayoutNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkGetPhysicalDeviceFeatures2*: proc (physicalDevice: VkPhysicalDevice, pFeatures: ptr VkPhysicalDeviceFeatures2): void {.stdcall.} - vkGetPhysicalDeviceProperties2*: proc (physicalDevice: VkPhysicalDevice, pProperties: ptr VkPhysicalDeviceProperties2): void {.stdcall.} - vkGetPhysicalDeviceFormatProperties2*: proc (physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: ptr VkFormatProperties2): void {.stdcall.} + vkDestroyIndirectCommandsLayoutNV*: proc (device: VkDevice, indirectCommandsLayout: VkIndirectCommandsLayoutNV, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} + vkGetPhysicalDeviceFeatures2*: proc (physicalDevice: VkPhysicalDevice, pFeatures: ptr VkPhysicalDeviceFeatures2) {.stdcall.} + vkGetPhysicalDeviceProperties2*: proc (physicalDevice: VkPhysicalDevice, pProperties: ptr VkPhysicalDeviceProperties2) {.stdcall.} + vkGetPhysicalDeviceFormatProperties2*: proc (physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: ptr VkFormatProperties2) {.stdcall.} vkGetPhysicalDeviceImageFormatProperties2*: proc (physicalDevice: VkPhysicalDevice, pImageFormatInfo: ptr VkPhysicalDeviceImageFormatInfo2, pImageFormatProperties: ptr VkImageFormatProperties2): VkResult {.stdcall.} - vkGetPhysicalDeviceQueueFamilyProperties2*: proc (physicalDevice: VkPhysicalDevice, pQueueFamilyPropertyCount: ptr uint32, pQueueFamilyProperties: ptr VkQueueFamilyProperties2): void {.stdcall.} - vkGetPhysicalDeviceMemoryProperties2*: proc (physicalDevice: VkPhysicalDevice, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties2): void {.stdcall.} - vkGetPhysicalDeviceSparseImageFormatProperties2*: proc (physicalDevice: VkPhysicalDevice, pFormatInfo: ptr VkPhysicalDeviceSparseImageFormatInfo2, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties2): void {.stdcall.} - vkCmdPushDescriptorSetKHR*: proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, set: uint32, descriptorWriteCount: uint32, pDescriptorWrites: ptr VkWriteDescriptorSet): void {.stdcall.} - vkTrimCommandPool*: proc (device: VkDevice, commandPool: VkCommandPool, flags: VkCommandPoolTrimFlags): void {.stdcall.} - vkGetPhysicalDeviceExternalBufferProperties*: proc (physicalDevice: VkPhysicalDevice, pExternalBufferInfo: ptr VkPhysicalDeviceExternalBufferInfo, pExternalBufferProperties: ptr VkExternalBufferProperties): void {.stdcall.} + vkGetPhysicalDeviceQueueFamilyProperties2*: proc (physicalDevice: VkPhysicalDevice, pQueueFamilyPropertyCount: ptr uint32, pQueueFamilyProperties: ptr VkQueueFamilyProperties2) {.stdcall.} + vkGetPhysicalDeviceMemoryProperties2*: proc (physicalDevice: VkPhysicalDevice, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties2) {.stdcall.} + vkGetPhysicalDeviceSparseImageFormatProperties2*: proc (physicalDevice: VkPhysicalDevice, pFormatInfo: ptr VkPhysicalDeviceSparseImageFormatInfo2, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties2) {.stdcall.} + vkCmdPushDescriptorSetKHR*: proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, set: uint32, descriptorWriteCount: uint32, pDescriptorWrites: ptr VkWriteDescriptorSet) {.stdcall.} + vkTrimCommandPool*: proc (device: VkDevice, commandPool: VkCommandPool, flags: VkCommandPoolTrimFlags) {.stdcall.} + vkGetPhysicalDeviceExternalBufferProperties*: proc (physicalDevice: VkPhysicalDevice, pExternalBufferInfo: ptr VkPhysicalDeviceExternalBufferInfo, pExternalBufferProperties: ptr VkExternalBufferProperties) {.stdcall.} vkGetMemoryWin32HandleKHR*: proc (device: VkDevice, pGetWin32HandleInfo: ptr VkMemoryGetWin32HandleInfoKHR, pHandle: ptr HANDLE): VkResult {.stdcall.} vkGetMemoryWin32HandlePropertiesKHR*: proc (device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, handle: HANDLE, pMemoryWin32HandleProperties: ptr VkMemoryWin32HandlePropertiesKHR): VkResult {.stdcall.} vkGetMemoryFdKHR*: proc (device: VkDevice, pGetFdInfo: ptr VkMemoryGetFdInfoKHR, pFd: ptr int): VkResult {.stdcall.} @@ -20737,14 +20742,14 @@ var vkGetMemorySciBufNV*: proc (device: VkDevice, pGetSciBufInfo: ptr VkMemoryGetSciBufInfoNV, pHandle: ptr NvSciBufObj): VkResult {.stdcall.} vkGetPhysicalDeviceExternalMemorySciBufPropertiesNV*: proc (physicalDevice: VkPhysicalDevice, handleType: VkExternalMemoryHandleTypeFlagBits, handle: NvSciBufObj, pMemorySciBufProperties: ptr VkMemorySciBufPropertiesNV): VkResult {.stdcall.} vkGetPhysicalDeviceSciBufAttributesNV*: proc (physicalDevice: VkPhysicalDevice, pAttributes: NvSciBufAttrList): VkResult {.stdcall.} - vkGetPhysicalDeviceExternalSemaphoreProperties*: proc (physicalDevice: VkPhysicalDevice, pExternalSemaphoreInfo: ptr VkPhysicalDeviceExternalSemaphoreInfo, pExternalSemaphoreProperties: ptr VkExternalSemaphoreProperties): void {.stdcall.} + vkGetPhysicalDeviceExternalSemaphoreProperties*: proc (physicalDevice: VkPhysicalDevice, pExternalSemaphoreInfo: ptr VkPhysicalDeviceExternalSemaphoreInfo, pExternalSemaphoreProperties: ptr VkExternalSemaphoreProperties) {.stdcall.} vkGetSemaphoreWin32HandleKHR*: proc (device: VkDevice, pGetWin32HandleInfo: ptr VkSemaphoreGetWin32HandleInfoKHR, pHandle: ptr HANDLE): VkResult {.stdcall.} vkImportSemaphoreWin32HandleKHR*: proc (device: VkDevice, pImportSemaphoreWin32HandleInfo: ptr VkImportSemaphoreWin32HandleInfoKHR): VkResult {.stdcall.} vkGetSemaphoreFdKHR*: proc (device: VkDevice, pGetFdInfo: ptr VkSemaphoreGetFdInfoKHR, pFd: ptr int): VkResult {.stdcall.} vkImportSemaphoreFdKHR*: proc (device: VkDevice, pImportSemaphoreFdInfo: ptr VkImportSemaphoreFdInfoKHR): VkResult {.stdcall.} vkGetSemaphoreZirconHandleFUCHSIA*: proc (device: VkDevice, pGetZirconHandleInfo: ptr VkSemaphoreGetZirconHandleInfoFUCHSIA, pZirconHandle: ptr zx_handle_t): VkResult {.stdcall.} vkImportSemaphoreZirconHandleFUCHSIA*: proc (device: VkDevice, pImportSemaphoreZirconHandleInfo: ptr VkImportSemaphoreZirconHandleInfoFUCHSIA): VkResult {.stdcall.} - vkGetPhysicalDeviceExternalFenceProperties*: proc (physicalDevice: VkPhysicalDevice, pExternalFenceInfo: ptr VkPhysicalDeviceExternalFenceInfo, pExternalFenceProperties: ptr VkExternalFenceProperties): void {.stdcall.} + vkGetPhysicalDeviceExternalFenceProperties*: proc (physicalDevice: VkPhysicalDevice, pExternalFenceInfo: ptr VkPhysicalDeviceExternalFenceInfo, pExternalFenceProperties: ptr VkExternalFenceProperties) {.stdcall.} vkGetFenceWin32HandleKHR*: proc (device: VkDevice, pGetWin32HandleInfo: ptr VkFenceGetWin32HandleInfoKHR, pHandle: ptr HANDLE): VkResult {.stdcall.} vkImportFenceWin32HandleKHR*: proc (device: VkDevice, pImportFenceWin32HandleInfo: ptr VkImportFenceWin32HandleInfoKHR): VkResult {.stdcall.} vkGetFenceFdKHR*: proc (device: VkDevice, pGetFdInfo: ptr VkFenceGetFdInfoKHR, pFd: ptr int): VkResult {.stdcall.} @@ -20757,7 +20762,7 @@ var vkImportSemaphoreSciSyncObjNV*: proc (device: VkDevice, pImportSemaphoreSciSyncInfo: ptr VkImportSemaphoreSciSyncInfoNV): VkResult {.stdcall.} vkGetPhysicalDeviceSciSyncAttributesNV*: proc (physicalDevice: VkPhysicalDevice, pSciSyncAttributesInfo: ptr VkSciSyncAttributesInfoNV, pAttributes: NvSciSyncAttrList): VkResult {.stdcall.} vkCreateSemaphoreSciSyncPoolNV*: proc (device: VkDevice, pCreateInfo: ptr VkSemaphoreSciSyncPoolCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pSemaphorePool: ptr VkSemaphoreSciSyncPoolNV): VkResult {.stdcall.} - vkDestroySemaphoreSciSyncPoolNV*: proc (device: VkDevice, semaphorePool: VkSemaphoreSciSyncPoolNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroySemaphoreSciSyncPoolNV*: proc (device: VkDevice, semaphorePool: VkSemaphoreSciSyncPoolNV, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkReleaseDisplayEXT*: proc (physicalDevice: VkPhysicalDevice, display: VkDisplayKHR): VkResult {.stdcall.} vkAcquireXlibDisplayEXT*: proc (physicalDevice: VkPhysicalDevice, dpy: ptr Display, display: VkDisplayKHR): VkResult {.stdcall.} vkGetRandROutputDisplayEXT*: proc (physicalDevice: VkPhysicalDevice, dpy: ptr Display, rrOutput: RROutput, pDisplay: ptr VkDisplayKHR): VkResult {.stdcall.} @@ -20769,134 +20774,134 @@ var vkGetSwapchainCounterEXT*: proc (device: VkDevice, swapchain: VkSwapchainKHR, counter: VkSurfaceCounterFlagBitsEXT, pCounterValue: ptr uint64): VkResult {.stdcall.} vkGetPhysicalDeviceSurfaceCapabilities2EXT*: proc (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceCapabilities: ptr VkSurfaceCapabilities2EXT): VkResult {.stdcall.} vkEnumeratePhysicalDeviceGroups*: proc (instance: VkInstance, pPhysicalDeviceGroupCount: ptr uint32, pPhysicalDeviceGroupProperties: ptr VkPhysicalDeviceGroupProperties): VkResult {.stdcall.} - vkGetDeviceGroupPeerMemoryFeatures*: proc (device: VkDevice, heapIndex: uint32, localDeviceIndex: uint32, remoteDeviceIndex: uint32, pPeerMemoryFeatures: ptr VkPeerMemoryFeatureFlags): void {.stdcall.} + vkGetDeviceGroupPeerMemoryFeatures*: proc (device: VkDevice, heapIndex: uint32, localDeviceIndex: uint32, remoteDeviceIndex: uint32, pPeerMemoryFeatures: ptr VkPeerMemoryFeatureFlags) {.stdcall.} vkBindBufferMemory2*: proc (device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindBufferMemoryInfo): VkResult {.stdcall.} vkBindImageMemory2*: proc (device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindImageMemoryInfo): VkResult {.stdcall.} - vkCmdSetDeviceMask*: proc (commandBuffer: VkCommandBuffer, deviceMask: uint32): void {.stdcall.} + vkCmdSetDeviceMask*: proc (commandBuffer: VkCommandBuffer, deviceMask: uint32) {.stdcall.} vkGetDeviceGroupPresentCapabilitiesKHR*: proc (device: VkDevice, pDeviceGroupPresentCapabilities: ptr VkDeviceGroupPresentCapabilitiesKHR): VkResult {.stdcall.} vkGetDeviceGroupSurfacePresentModesKHR*: proc (device: VkDevice, surface: VkSurfaceKHR, pModes: ptr VkDeviceGroupPresentModeFlagsKHR): VkResult {.stdcall.} vkAcquireNextImage2KHR*: proc (device: VkDevice, pAcquireInfo: ptr VkAcquireNextImageInfoKHR, pImageIndex: ptr uint32): VkResult {.stdcall.} - vkCmdDispatchBase*: proc (commandBuffer: VkCommandBuffer, baseGroupX: uint32, baseGroupY: uint32, baseGroupZ: uint32, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.} + vkCmdDispatchBase*: proc (commandBuffer: VkCommandBuffer, baseGroupX: uint32, baseGroupY: uint32, baseGroupZ: uint32, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32) {.stdcall.} vkGetPhysicalDevicePresentRectanglesKHR*: proc (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pRectCount: ptr uint32, pRects: ptr VkRect2D): VkResult {.stdcall.} vkCreateDescriptorUpdateTemplate*: proc (device: VkDevice, pCreateInfo: ptr VkDescriptorUpdateTemplateCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDescriptorUpdateTemplate: ptr VkDescriptorUpdateTemplate): VkResult {.stdcall.} - vkDestroyDescriptorUpdateTemplate*: proc (device: VkDevice, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkUpdateDescriptorSetWithTemplate*: proc (device: VkDevice, descriptorSet: VkDescriptorSet, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pData: pointer): void {.stdcall.} - vkCmdPushDescriptorSetWithTemplateKHR*: proc (commandBuffer: VkCommandBuffer, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: uint32, pData: pointer): void {.stdcall.} - vkSetHdrMetadataEXT*: proc (device: VkDevice, swapchainCount: uint32, pSwapchains: ptr VkSwapchainKHR, pMetadata: ptr VkHdrMetadataEXT): void {.stdcall.} + vkDestroyDescriptorUpdateTemplate*: proc (device: VkDevice, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} + vkUpdateDescriptorSetWithTemplate*: proc (device: VkDevice, descriptorSet: VkDescriptorSet, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pData: pointer) {.stdcall.} + vkCmdPushDescriptorSetWithTemplateKHR*: proc (commandBuffer: VkCommandBuffer, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: uint32, pData: pointer) {.stdcall.} + vkSetHdrMetadataEXT*: proc (device: VkDevice, swapchainCount: uint32, pSwapchains: ptr VkSwapchainKHR, pMetadata: ptr VkHdrMetadataEXT) {.stdcall.} vkGetSwapchainStatusKHR*: proc (device: VkDevice, swapchain: VkSwapchainKHR): VkResult {.stdcall.} vkGetRefreshCycleDurationGOOGLE*: proc (device: VkDevice, swapchain: VkSwapchainKHR, pDisplayTimingProperties: ptr VkRefreshCycleDurationGOOGLE): VkResult {.stdcall.} vkGetPastPresentationTimingGOOGLE*: proc (device: VkDevice, swapchain: VkSwapchainKHR, pPresentationTimingCount: ptr uint32, pPresentationTimings: ptr VkPastPresentationTimingGOOGLE): VkResult {.stdcall.} vkCreateIOSSurfaceMVK*: proc (instance: VkInstance, pCreateInfo: ptr VkIOSSurfaceCreateInfoMVK, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} vkCreateMacOSSurfaceMVK*: proc (instance: VkInstance, pCreateInfo: ptr VkMacOSSurfaceCreateInfoMVK, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} vkCreateMetalSurfaceEXT*: proc (instance: VkInstance, pCreateInfo: ptr VkMetalSurfaceCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} - vkCmdSetViewportWScalingNV*: proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportWScalings: ptr VkViewportWScalingNV): void {.stdcall.} - vkCmdSetDiscardRectangleEXT*: proc (commandBuffer: VkCommandBuffer, firstDiscardRectangle: uint32, discardRectangleCount: uint32, pDiscardRectangles: ptr VkRect2D): void {.stdcall.} - vkCmdSetDiscardRectangleEnableEXT*: proc (commandBuffer: VkCommandBuffer, discardRectangleEnable: VkBool32): void {.stdcall.} - vkCmdSetDiscardRectangleModeEXT*: proc (commandBuffer: VkCommandBuffer, discardRectangleMode: VkDiscardRectangleModeEXT): void {.stdcall.} - vkCmdSetSampleLocationsEXT*: proc (commandBuffer: VkCommandBuffer, pSampleLocationsInfo: ptr VkSampleLocationsInfoEXT): void {.stdcall.} - vkGetPhysicalDeviceMultisamplePropertiesEXT*: proc (physicalDevice: VkPhysicalDevice, samples: VkSampleCountFlagBits, pMultisampleProperties: ptr VkMultisamplePropertiesEXT): void {.stdcall.} + vkCmdSetViewportWScalingNV*: proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportWScalings: ptr VkViewportWScalingNV) {.stdcall.} + vkCmdSetDiscardRectangleEXT*: proc (commandBuffer: VkCommandBuffer, firstDiscardRectangle: uint32, discardRectangleCount: uint32, pDiscardRectangles: ptr VkRect2D) {.stdcall.} + vkCmdSetDiscardRectangleEnableEXT*: proc (commandBuffer: VkCommandBuffer, discardRectangleEnable: VkBool32) {.stdcall.} + vkCmdSetDiscardRectangleModeEXT*: proc (commandBuffer: VkCommandBuffer, discardRectangleMode: VkDiscardRectangleModeEXT) {.stdcall.} + vkCmdSetSampleLocationsEXT*: proc (commandBuffer: VkCommandBuffer, pSampleLocationsInfo: ptr VkSampleLocationsInfoEXT) {.stdcall.} + vkGetPhysicalDeviceMultisamplePropertiesEXT*: proc (physicalDevice: VkPhysicalDevice, samples: VkSampleCountFlagBits, pMultisampleProperties: ptr VkMultisamplePropertiesEXT) {.stdcall.} vkGetPhysicalDeviceSurfaceCapabilities2KHR*: proc (physicalDevice: VkPhysicalDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pSurfaceCapabilities: ptr VkSurfaceCapabilities2KHR): VkResult {.stdcall.} vkGetPhysicalDeviceSurfaceFormats2KHR*: proc (physicalDevice: VkPhysicalDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pSurfaceFormatCount: ptr uint32, pSurfaceFormats: ptr VkSurfaceFormat2KHR): VkResult {.stdcall.} vkGetPhysicalDeviceDisplayProperties2KHR*: proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayProperties2KHR): VkResult {.stdcall.} vkGetPhysicalDeviceDisplayPlaneProperties2KHR*: proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayPlaneProperties2KHR): VkResult {.stdcall.} vkGetDisplayModeProperties2KHR*: proc (physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayModeProperties2KHR): VkResult {.stdcall.} vkGetDisplayPlaneCapabilities2KHR*: proc (physicalDevice: VkPhysicalDevice, pDisplayPlaneInfo: ptr VkDisplayPlaneInfo2KHR, pCapabilities: ptr VkDisplayPlaneCapabilities2KHR): VkResult {.stdcall.} - vkGetBufferMemoryRequirements2*: proc (device: VkDevice, pInfo: ptr VkBufferMemoryRequirementsInfo2, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.} - vkGetImageMemoryRequirements2*: proc (device: VkDevice, pInfo: ptr VkImageMemoryRequirementsInfo2, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.} - vkGetImageSparseMemoryRequirements2*: proc (device: VkDevice, pInfo: ptr VkImageSparseMemoryRequirementsInfo2, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2): void {.stdcall.} - vkGetDeviceBufferMemoryRequirements*: proc (device: VkDevice, pInfo: ptr VkDeviceBufferMemoryRequirements, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.} - vkGetDeviceImageMemoryRequirements*: proc (device: VkDevice, pInfo: ptr VkDeviceImageMemoryRequirements, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.} - vkGetDeviceImageSparseMemoryRequirements*: proc (device: VkDevice, pInfo: ptr VkDeviceImageMemoryRequirements, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2): void {.stdcall.} + vkGetBufferMemoryRequirements2*: proc (device: VkDevice, pInfo: ptr VkBufferMemoryRequirementsInfo2, pMemoryRequirements: ptr VkMemoryRequirements2) {.stdcall.} + vkGetImageMemoryRequirements2*: proc (device: VkDevice, pInfo: ptr VkImageMemoryRequirementsInfo2, pMemoryRequirements: ptr VkMemoryRequirements2) {.stdcall.} + vkGetImageSparseMemoryRequirements2*: proc (device: VkDevice, pInfo: ptr VkImageSparseMemoryRequirementsInfo2, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2) {.stdcall.} + vkGetDeviceBufferMemoryRequirements*: proc (device: VkDevice, pInfo: ptr VkDeviceBufferMemoryRequirements, pMemoryRequirements: ptr VkMemoryRequirements2) {.stdcall.} + vkGetDeviceImageMemoryRequirements*: proc (device: VkDevice, pInfo: ptr VkDeviceImageMemoryRequirements, pMemoryRequirements: ptr VkMemoryRequirements2) {.stdcall.} + vkGetDeviceImageSparseMemoryRequirements*: proc (device: VkDevice, pInfo: ptr VkDeviceImageMemoryRequirements, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2) {.stdcall.} vkCreateSamplerYcbcrConversion*: proc (device: VkDevice, pCreateInfo: ptr VkSamplerYcbcrConversionCreateInfo, pAllocator: ptr VkAllocationCallbacks, pYcbcrConversion: ptr VkSamplerYcbcrConversion): VkResult {.stdcall.} - vkDestroySamplerYcbcrConversion*: proc (device: VkDevice, ycbcrConversion: VkSamplerYcbcrConversion, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkGetDeviceQueue2*: proc (device: VkDevice, pQueueInfo: ptr VkDeviceQueueInfo2, pQueue: ptr VkQueue): void {.stdcall.} + vkDestroySamplerYcbcrConversion*: proc (device: VkDevice, ycbcrConversion: VkSamplerYcbcrConversion, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} + vkGetDeviceQueue2*: proc (device: VkDevice, pQueueInfo: ptr VkDeviceQueueInfo2, pQueue: ptr VkQueue) {.stdcall.} vkCreateValidationCacheEXT*: proc (device: VkDevice, pCreateInfo: ptr VkValidationCacheCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pValidationCache: ptr VkValidationCacheEXT): VkResult {.stdcall.} - vkDestroyValidationCacheEXT*: proc (device: VkDevice, validationCache: VkValidationCacheEXT, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyValidationCacheEXT*: proc (device: VkDevice, validationCache: VkValidationCacheEXT, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkGetValidationCacheDataEXT*: proc (device: VkDevice, validationCache: VkValidationCacheEXT, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.} vkMergeValidationCachesEXT*: proc (device: VkDevice, dstCache: VkValidationCacheEXT, srcCacheCount: uint32, pSrcCaches: ptr VkValidationCacheEXT): VkResult {.stdcall.} - vkGetDescriptorSetLayoutSupport*: proc (device: VkDevice, pCreateInfo: ptr VkDescriptorSetLayoutCreateInfo, pSupport: ptr VkDescriptorSetLayoutSupport): void {.stdcall.} + vkGetDescriptorSetLayoutSupport*: proc (device: VkDevice, pCreateInfo: ptr VkDescriptorSetLayoutCreateInfo, pSupport: ptr VkDescriptorSetLayoutSupport) {.stdcall.} vkGetSwapchainGrallocUsageANDROID*: proc (device: VkDevice, format: VkFormat, imageUsage: VkImageUsageFlags, grallocUsage: ptr int): VkResult {.stdcall.} vkGetSwapchainGrallocUsage2ANDROID*: proc (device: VkDevice, format: VkFormat, imageUsage: VkImageUsageFlags, swapchainImageUsage: VkSwapchainImageUsageFlagsANDROID, grallocConsumerUsage: ptr uint64, grallocProducerUsage: ptr uint64): VkResult {.stdcall.} vkAcquireImageANDROID*: proc (device: VkDevice, image: VkImage, nativeFenceFd: int, semaphore: VkSemaphore, fence: VkFence): VkResult {.stdcall.} vkQueueSignalReleaseImageANDROID*: proc (queue: VkQueue, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, image: VkImage, pNativeFenceFd: ptr int): VkResult {.stdcall.} vkGetShaderInfoAMD*: proc (device: VkDevice, pipeline: VkPipeline, shaderStage: VkShaderStageFlagBits, infoType: VkShaderInfoTypeAMD, pInfoSize: ptr uint, pInfo: pointer): VkResult {.stdcall.} - vkSetLocalDimmingAMD*: proc (device: VkDevice, swapChain: VkSwapchainKHR, localDimmingEnable: VkBool32): void {.stdcall.} + vkSetLocalDimmingAMD*: proc (device: VkDevice, swapChain: VkSwapchainKHR, localDimmingEnable: VkBool32) {.stdcall.} vkGetPhysicalDeviceCalibrateableTimeDomainsKHR*: proc (physicalDevice: VkPhysicalDevice, pTimeDomainCount: ptr uint32, pTimeDomains: ptr VkTimeDomainKHR): VkResult {.stdcall.} vkGetCalibratedTimestampsKHR*: proc (device: VkDevice, timestampCount: uint32, pTimestampInfos: ptr VkCalibratedTimestampInfoKHR, pTimestamps: ptr uint64, pMaxDeviation: ptr uint64): VkResult {.stdcall.} vkSetDebugUtilsObjectNameEXT*: proc (device: VkDevice, pNameInfo: ptr VkDebugUtilsObjectNameInfoEXT): VkResult {.stdcall.} vkSetDebugUtilsObjectTagEXT*: proc (device: VkDevice, pTagInfo: ptr VkDebugUtilsObjectTagInfoEXT): VkResult {.stdcall.} - vkQueueBeginDebugUtilsLabelEXT*: proc (queue: VkQueue, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.} - vkQueueEndDebugUtilsLabelEXT*: proc (queue: VkQueue): void {.stdcall.} - vkQueueInsertDebugUtilsLabelEXT*: proc (queue: VkQueue, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.} - vkCmdBeginDebugUtilsLabelEXT*: proc (commandBuffer: VkCommandBuffer, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.} - vkCmdEndDebugUtilsLabelEXT*: proc (commandBuffer: VkCommandBuffer): void {.stdcall.} - vkCmdInsertDebugUtilsLabelEXT*: proc (commandBuffer: VkCommandBuffer, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.} + vkQueueBeginDebugUtilsLabelEXT*: proc (queue: VkQueue, pLabelInfo: ptr VkDebugUtilsLabelEXT) {.stdcall.} + vkQueueEndDebugUtilsLabelEXT*: proc (queue: VkQueue) {.stdcall.} + vkQueueInsertDebugUtilsLabelEXT*: proc (queue: VkQueue, pLabelInfo: ptr VkDebugUtilsLabelEXT) {.stdcall.} + vkCmdBeginDebugUtilsLabelEXT*: proc (commandBuffer: VkCommandBuffer, pLabelInfo: ptr VkDebugUtilsLabelEXT) {.stdcall.} + vkCmdEndDebugUtilsLabelEXT*: proc (commandBuffer: VkCommandBuffer) {.stdcall.} + vkCmdInsertDebugUtilsLabelEXT*: proc (commandBuffer: VkCommandBuffer, pLabelInfo: ptr VkDebugUtilsLabelEXT) {.stdcall.} vkCreateDebugUtilsMessengerEXT*: proc (instance: VkInstance, pCreateInfo: ptr VkDebugUtilsMessengerCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pMessenger: ptr VkDebugUtilsMessengerEXT): VkResult {.stdcall.} - vkDestroyDebugUtilsMessengerEXT*: proc (instance: VkInstance, messenger: VkDebugUtilsMessengerEXT, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkSubmitDebugUtilsMessageEXT*: proc (instance: VkInstance, messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEXT, messageTypes: VkDebugUtilsMessageTypeFlagsEXT, pCallbackData: ptr VkDebugUtilsMessengerCallbackDataEXT): void {.stdcall.} + vkDestroyDebugUtilsMessengerEXT*: proc (instance: VkInstance, messenger: VkDebugUtilsMessengerEXT, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} + vkSubmitDebugUtilsMessageEXT*: proc (instance: VkInstance, messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEXT, messageTypes: VkDebugUtilsMessageTypeFlagsEXT, pCallbackData: ptr VkDebugUtilsMessengerCallbackDataEXT) {.stdcall.} vkGetMemoryHostPointerPropertiesEXT*: proc (device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, pHostPointer: pointer, pMemoryHostPointerProperties: ptr VkMemoryHostPointerPropertiesEXT): VkResult {.stdcall.} - vkCmdWriteBufferMarkerAMD*: proc (commandBuffer: VkCommandBuffer, pipelineStage: VkPipelineStageFlagBits, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, marker: uint32): void {.stdcall.} + vkCmdWriteBufferMarkerAMD*: proc (commandBuffer: VkCommandBuffer, pipelineStage: VkPipelineStageFlagBits, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, marker: uint32) {.stdcall.} vkCreateRenderPass2*: proc (device: VkDevice, pCreateInfo: ptr VkRenderPassCreateInfo2, pAllocator: ptr VkAllocationCallbacks, pRenderPass: ptr VkRenderPass): VkResult {.stdcall.} - vkCmdBeginRenderPass2*: proc (commandBuffer: VkCommandBuffer, pRenderPassBegin: ptr VkRenderPassBeginInfo, pSubpassBeginInfo: ptr VkSubpassBeginInfo): void {.stdcall.} - vkCmdNextSubpass2*: proc (commandBuffer: VkCommandBuffer, pSubpassBeginInfo: ptr VkSubpassBeginInfo, pSubpassEndInfo: ptr VkSubpassEndInfo): void {.stdcall.} - vkCmdEndRenderPass2*: proc (commandBuffer: VkCommandBuffer, pSubpassEndInfo: ptr VkSubpassEndInfo): void {.stdcall.} + vkCmdBeginRenderPass2*: proc (commandBuffer: VkCommandBuffer, pRenderPassBegin: ptr VkRenderPassBeginInfo, pSubpassBeginInfo: ptr VkSubpassBeginInfo) {.stdcall.} + vkCmdNextSubpass2*: proc (commandBuffer: VkCommandBuffer, pSubpassBeginInfo: ptr VkSubpassBeginInfo, pSubpassEndInfo: ptr VkSubpassEndInfo) {.stdcall.} + vkCmdEndRenderPass2*: proc (commandBuffer: VkCommandBuffer, pSubpassEndInfo: ptr VkSubpassEndInfo) {.stdcall.} vkGetSemaphoreCounterValue*: proc (device: VkDevice, semaphore: VkSemaphore, pValue: ptr uint64): VkResult {.stdcall.} vkWaitSemaphores*: proc (device: VkDevice, pWaitInfo: ptr VkSemaphoreWaitInfo, timeout: uint64): VkResult {.stdcall.} vkSignalSemaphore*: proc (device: VkDevice, pSignalInfo: ptr VkSemaphoreSignalInfo): VkResult {.stdcall.} vkGetAndroidHardwareBufferPropertiesANDROID*: proc (device: VkDevice, buffer: ptr AHardwareBuffer, pProperties: ptr VkAndroidHardwareBufferPropertiesANDROID): VkResult {.stdcall.} vkGetMemoryAndroidHardwareBufferANDROID*: proc (device: VkDevice, pInfo: ptr VkMemoryGetAndroidHardwareBufferInfoANDROID, pBuffer: ptr ptr AHardwareBuffer): VkResult {.stdcall.} - vkCmdDrawIndirectCount*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.} - vkCmdDrawIndexedIndirectCount*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.} - vkCmdSetCheckpointNV*: proc (commandBuffer: VkCommandBuffer, pCheckpointMarker: pointer): void {.stdcall.} - vkGetQueueCheckpointDataNV*: proc (queue: VkQueue, pCheckpointDataCount: ptr uint32, pCheckpointData: ptr VkCheckpointDataNV): void {.stdcall.} - vkCmdBindTransformFeedbackBuffersEXT*: proc (commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize, pSizes: ptr VkDeviceSize): void {.stdcall.} - vkCmdBeginTransformFeedbackEXT*: proc (commandBuffer: VkCommandBuffer, firstCounterBuffer: uint32, counterBufferCount: uint32, pCounterBuffers: ptr VkBuffer, pCounterBufferOffsets: ptr VkDeviceSize): void {.stdcall.} - vkCmdEndTransformFeedbackEXT*: proc (commandBuffer: VkCommandBuffer, firstCounterBuffer: uint32, counterBufferCount: uint32, pCounterBuffers: ptr VkBuffer, pCounterBufferOffsets: ptr VkDeviceSize): void {.stdcall.} - vkCmdBeginQueryIndexedEXT*: proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, flags: VkQueryControlFlags, index: uint32): void {.stdcall.} - vkCmdEndQueryIndexedEXT*: proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, index: uint32): void {.stdcall.} - vkCmdDrawIndirectByteCountEXT*: proc (commandBuffer: VkCommandBuffer, instanceCount: uint32, firstInstance: uint32, counterBuffer: VkBuffer, counterBufferOffset: VkDeviceSize, counterOffset: uint32, vertexStride: uint32): void {.stdcall.} - vkCmdSetExclusiveScissorNV*: proc (commandBuffer: VkCommandBuffer, firstExclusiveScissor: uint32, exclusiveScissorCount: uint32, pExclusiveScissors: ptr VkRect2D): void {.stdcall.} - vkCmdSetExclusiveScissorEnableNV*: proc (commandBuffer: VkCommandBuffer, firstExclusiveScissor: uint32, exclusiveScissorCount: uint32, pExclusiveScissorEnables: ptr VkBool32): void {.stdcall.} - vkCmdBindShadingRateImageNV*: proc (commandBuffer: VkCommandBuffer, imageView: VkImageView, imageLayout: VkImageLayout): void {.stdcall.} - vkCmdSetViewportShadingRatePaletteNV*: proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pShadingRatePalettes: ptr VkShadingRatePaletteNV): void {.stdcall.} - vkCmdSetCoarseSampleOrderNV*: proc (commandBuffer: VkCommandBuffer, sampleOrderType: VkCoarseSampleOrderTypeNV, customSampleOrderCount: uint32, pCustomSampleOrders: ptr VkCoarseSampleOrderCustomNV): void {.stdcall.} - vkCmdDrawMeshTasksNV*: proc (commandBuffer: VkCommandBuffer, taskCount: uint32, firstTask: uint32): void {.stdcall.} - vkCmdDrawMeshTasksIndirectNV*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.} - vkCmdDrawMeshTasksIndirectCountNV*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.} - vkCmdDrawMeshTasksEXT*: proc (commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.} - vkCmdDrawMeshTasksIndirectEXT*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.} - vkCmdDrawMeshTasksIndirectCountEXT*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.} + vkCmdDrawIndirectCount*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32) {.stdcall.} + vkCmdDrawIndexedIndirectCount*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32) {.stdcall.} + vkCmdSetCheckpointNV*: proc (commandBuffer: VkCommandBuffer, pCheckpointMarker: pointer) {.stdcall.} + vkGetQueueCheckpointDataNV*: proc (queue: VkQueue, pCheckpointDataCount: ptr uint32, pCheckpointData: ptr VkCheckpointDataNV) {.stdcall.} + vkCmdBindTransformFeedbackBuffersEXT*: proc (commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize, pSizes: ptr VkDeviceSize) {.stdcall.} + vkCmdBeginTransformFeedbackEXT*: proc (commandBuffer: VkCommandBuffer, firstCounterBuffer: uint32, counterBufferCount: uint32, pCounterBuffers: ptr VkBuffer, pCounterBufferOffsets: ptr VkDeviceSize) {.stdcall.} + vkCmdEndTransformFeedbackEXT*: proc (commandBuffer: VkCommandBuffer, firstCounterBuffer: uint32, counterBufferCount: uint32, pCounterBuffers: ptr VkBuffer, pCounterBufferOffsets: ptr VkDeviceSize) {.stdcall.} + vkCmdBeginQueryIndexedEXT*: proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, flags: VkQueryControlFlags, index: uint32) {.stdcall.} + vkCmdEndQueryIndexedEXT*: proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, index: uint32) {.stdcall.} + vkCmdDrawIndirectByteCountEXT*: proc (commandBuffer: VkCommandBuffer, instanceCount: uint32, firstInstance: uint32, counterBuffer: VkBuffer, counterBufferOffset: VkDeviceSize, counterOffset: uint32, vertexStride: uint32) {.stdcall.} + vkCmdSetExclusiveScissorNV*: proc (commandBuffer: VkCommandBuffer, firstExclusiveScissor: uint32, exclusiveScissorCount: uint32, pExclusiveScissors: ptr VkRect2D) {.stdcall.} + vkCmdSetExclusiveScissorEnableNV*: proc (commandBuffer: VkCommandBuffer, firstExclusiveScissor: uint32, exclusiveScissorCount: uint32, pExclusiveScissorEnables: ptr VkBool32) {.stdcall.} + vkCmdBindShadingRateImageNV*: proc (commandBuffer: VkCommandBuffer, imageView: VkImageView, imageLayout: VkImageLayout) {.stdcall.} + vkCmdSetViewportShadingRatePaletteNV*: proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pShadingRatePalettes: ptr VkShadingRatePaletteNV) {.stdcall.} + vkCmdSetCoarseSampleOrderNV*: proc (commandBuffer: VkCommandBuffer, sampleOrderType: VkCoarseSampleOrderTypeNV, customSampleOrderCount: uint32, pCustomSampleOrders: ptr VkCoarseSampleOrderCustomNV) {.stdcall.} + vkCmdDrawMeshTasksNV*: proc (commandBuffer: VkCommandBuffer, taskCount: uint32, firstTask: uint32) {.stdcall.} + vkCmdDrawMeshTasksIndirectNV*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32) {.stdcall.} + vkCmdDrawMeshTasksIndirectCountNV*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32) {.stdcall.} + vkCmdDrawMeshTasksEXT*: proc (commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32) {.stdcall.} + vkCmdDrawMeshTasksIndirectEXT*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32) {.stdcall.} + vkCmdDrawMeshTasksIndirectCountEXT*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32) {.stdcall.} vkCompileDeferredNV*: proc (device: VkDevice, pipeline: VkPipeline, shader: uint32): VkResult {.stdcall.} vkCreateAccelerationStructureNV*: proc (device: VkDevice, pCreateInfo: ptr VkAccelerationStructureCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pAccelerationStructure: ptr VkAccelerationStructureNV): VkResult {.stdcall.} - vkCmdBindInvocationMaskHUAWEI*: proc (commandBuffer: VkCommandBuffer, imageView: VkImageView, imageLayout: VkImageLayout): void {.stdcall.} - vkDestroyAccelerationStructureKHR*: proc (device: VkDevice, accelerationStructure: VkAccelerationStructureKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkDestroyAccelerationStructureNV*: proc (device: VkDevice, accelerationStructure: VkAccelerationStructureNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkGetAccelerationStructureMemoryRequirementsNV*: proc (device: VkDevice, pInfo: ptr VkAccelerationStructureMemoryRequirementsInfoNV, pMemoryRequirements: ptr VkMemoryRequirements2KHR): void {.stdcall.} + vkCmdBindInvocationMaskHUAWEI*: proc (commandBuffer: VkCommandBuffer, imageView: VkImageView, imageLayout: VkImageLayout) {.stdcall.} + vkDestroyAccelerationStructureKHR*: proc (device: VkDevice, accelerationStructure: VkAccelerationStructureKHR, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} + vkDestroyAccelerationStructureNV*: proc (device: VkDevice, accelerationStructure: VkAccelerationStructureNV, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} + vkGetAccelerationStructureMemoryRequirementsNV*: proc (device: VkDevice, pInfo: ptr VkAccelerationStructureMemoryRequirementsInfoNV, pMemoryRequirements: ptr VkMemoryRequirements2KHR) {.stdcall.} vkBindAccelerationStructureMemoryNV*: proc (device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindAccelerationStructureMemoryInfoNV): VkResult {.stdcall.} - vkCmdCopyAccelerationStructureNV*: proc (commandBuffer: VkCommandBuffer, dst: VkAccelerationStructureNV, src: VkAccelerationStructureNV, mode: VkCopyAccelerationStructureModeKHR): void {.stdcall.} - vkCmdCopyAccelerationStructureKHR*: proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyAccelerationStructureInfoKHR): void {.stdcall.} + vkCmdCopyAccelerationStructureNV*: proc (commandBuffer: VkCommandBuffer, dst: VkAccelerationStructureNV, src: VkAccelerationStructureNV, mode: VkCopyAccelerationStructureModeKHR) {.stdcall.} + vkCmdCopyAccelerationStructureKHR*: proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyAccelerationStructureInfoKHR) {.stdcall.} vkCopyAccelerationStructureKHR*: proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyAccelerationStructureInfoKHR): VkResult {.stdcall.} - vkCmdCopyAccelerationStructureToMemoryKHR*: proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR): void {.stdcall.} + vkCmdCopyAccelerationStructureToMemoryKHR*: proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR) {.stdcall.} vkCopyAccelerationStructureToMemoryKHR*: proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR): VkResult {.stdcall.} - vkCmdCopyMemoryToAccelerationStructureKHR*: proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR): void {.stdcall.} + vkCmdCopyMemoryToAccelerationStructureKHR*: proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR) {.stdcall.} vkCopyMemoryToAccelerationStructureKHR*: proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR): VkResult {.stdcall.} - vkCmdWriteAccelerationStructuresPropertiesKHR*: proc (commandBuffer: VkCommandBuffer, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR, queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.stdcall.} - vkCmdWriteAccelerationStructuresPropertiesNV*: proc (commandBuffer: VkCommandBuffer, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureNV, queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.stdcall.} - vkCmdBuildAccelerationStructureNV*: proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkAccelerationStructureInfoNV, instanceData: VkBuffer, instanceOffset: VkDeviceSize, update: VkBool32, dst: VkAccelerationStructureNV, src: VkAccelerationStructureNV, scratch: VkBuffer, scratchOffset: VkDeviceSize): void {.stdcall.} + vkCmdWriteAccelerationStructuresPropertiesKHR*: proc (commandBuffer: VkCommandBuffer, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR, queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32) {.stdcall.} + vkCmdWriteAccelerationStructuresPropertiesNV*: proc (commandBuffer: VkCommandBuffer, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureNV, queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32) {.stdcall.} + vkCmdBuildAccelerationStructureNV*: proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkAccelerationStructureInfoNV, instanceData: VkBuffer, instanceOffset: VkDeviceSize, update: VkBool32, dst: VkAccelerationStructureNV, src: VkAccelerationStructureNV, scratch: VkBuffer, scratchOffset: VkDeviceSize) {.stdcall.} vkWriteAccelerationStructuresPropertiesKHR*: proc (device: VkDevice, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR, queryType: VkQueryType, dataSize: uint, pData: pointer, stride: uint): VkResult {.stdcall.} - vkCmdTraceRaysKHR*: proc (commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, width: uint32, height: uint32, depth: uint32): void {.stdcall.} - vkCmdTraceRaysNV*: proc (commandBuffer: VkCommandBuffer, raygenShaderBindingTableBuffer: VkBuffer, raygenShaderBindingOffset: VkDeviceSize, missShaderBindingTableBuffer: VkBuffer, missShaderBindingOffset: VkDeviceSize, missShaderBindingStride: VkDeviceSize, hitShaderBindingTableBuffer: VkBuffer, hitShaderBindingOffset: VkDeviceSize, hitShaderBindingStride: VkDeviceSize, callableShaderBindingTableBuffer: VkBuffer, callableShaderBindingOffset: VkDeviceSize, callableShaderBindingStride: VkDeviceSize, width: uint32, height: uint32, depth: uint32): void {.stdcall.} + vkCmdTraceRaysKHR*: proc (commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, width: uint32, height: uint32, depth: uint32) {.stdcall.} + vkCmdTraceRaysNV*: proc (commandBuffer: VkCommandBuffer, raygenShaderBindingTableBuffer: VkBuffer, raygenShaderBindingOffset: VkDeviceSize, missShaderBindingTableBuffer: VkBuffer, missShaderBindingOffset: VkDeviceSize, missShaderBindingStride: VkDeviceSize, hitShaderBindingTableBuffer: VkBuffer, hitShaderBindingOffset: VkDeviceSize, hitShaderBindingStride: VkDeviceSize, callableShaderBindingTableBuffer: VkBuffer, callableShaderBindingOffset: VkDeviceSize, callableShaderBindingStride: VkDeviceSize, width: uint32, height: uint32, depth: uint32) {.stdcall.} vkGetRayTracingShaderGroupHandlesKHR*: proc (device: VkDevice, pipeline: VkPipeline, firstGroup: uint32, groupCount: uint32, dataSize: uint, pData: pointer): VkResult {.stdcall.} vkGetRayTracingCaptureReplayShaderGroupHandlesKHR*: proc (device: VkDevice, pipeline: VkPipeline, firstGroup: uint32, groupCount: uint32, dataSize: uint, pData: pointer): VkResult {.stdcall.} vkGetAccelerationStructureHandleNV*: proc (device: VkDevice, accelerationStructure: VkAccelerationStructureNV, dataSize: uint, pData: pointer): VkResult {.stdcall.} vkCreateRayTracingPipelinesNV*: proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} vkCreateRayTracingPipelinesKHR*: proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} vkGetPhysicalDeviceCooperativeMatrixPropertiesNV*: proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkCooperativeMatrixPropertiesNV): VkResult {.stdcall.} - vkCmdTraceRaysIndirectKHR*: proc (commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, indirectDeviceAddress: VkDeviceAddress): void {.stdcall.} - vkCmdTraceRaysIndirect2KHR*: proc (commandBuffer: VkCommandBuffer, indirectDeviceAddress: VkDeviceAddress): void {.stdcall.} - vkGetDeviceAccelerationStructureCompatibilityKHR*: proc (device: VkDevice, pVersionInfo: ptr VkAccelerationStructureVersionInfoKHR, pCompatibility: ptr VkAccelerationStructureCompatibilityKHR): void {.stdcall.} + vkCmdTraceRaysIndirectKHR*: proc (commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, indirectDeviceAddress: VkDeviceAddress) {.stdcall.} + vkCmdTraceRaysIndirect2KHR*: proc (commandBuffer: VkCommandBuffer, indirectDeviceAddress: VkDeviceAddress) {.stdcall.} + vkGetDeviceAccelerationStructureCompatibilityKHR*: proc (device: VkDevice, pVersionInfo: ptr VkAccelerationStructureVersionInfoKHR, pCompatibility: ptr VkAccelerationStructureCompatibilityKHR) {.stdcall.} vkGetRayTracingShaderGroupStackSizeKHR*: proc (device: VkDevice, pipeline: VkPipeline, group: uint32, groupShader: VkShaderGroupShaderKHR): VkDeviceSize {.stdcall.} - vkCmdSetRayTracingPipelineStackSizeKHR*: proc (commandBuffer: VkCommandBuffer, pipelineStackSize: uint32): void {.stdcall.} + vkCmdSetRayTracingPipelineStackSizeKHR*: proc (commandBuffer: VkCommandBuffer, pipelineStackSize: uint32) {.stdcall.} vkGetImageViewHandleNVX*: proc (device: VkDevice, pInfo: ptr VkImageViewHandleInfoNVX): uint32 {.stdcall.} vkGetImageViewAddressNVX*: proc (device: VkDevice, imageView: VkImageView, pProperties: ptr VkImageViewAddressPropertiesNVX): VkResult {.stdcall.} vkGetPhysicalDeviceSurfacePresentModes2EXT*: proc (physicalDevice: VkPhysicalDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pPresentModeCount: ptr uint32, pPresentModes: ptr VkPresentModeKHR): VkResult {.stdcall.} @@ -20904,16 +20909,16 @@ var vkAcquireFullScreenExclusiveModeEXT*: proc (device: VkDevice, swapchain: VkSwapchainKHR): VkResult {.stdcall.} vkReleaseFullScreenExclusiveModeEXT*: proc (device: VkDevice, swapchain: VkSwapchainKHR): VkResult {.stdcall.} vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR*: proc (physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, pCounterCount: ptr uint32, pCounters: ptr VkPerformanceCounterKHR, pCounterDescriptions: ptr VkPerformanceCounterDescriptionKHR): VkResult {.stdcall.} - vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR*: proc (physicalDevice: VkPhysicalDevice, pPerformanceQueryCreateInfo: ptr VkQueryPoolPerformanceCreateInfoKHR, pNumPasses: ptr uint32): void {.stdcall.} + vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR*: proc (physicalDevice: VkPhysicalDevice, pPerformanceQueryCreateInfo: ptr VkQueryPoolPerformanceCreateInfoKHR, pNumPasses: ptr uint32) {.stdcall.} vkAcquireProfilingLockKHR*: proc (device: VkDevice, pInfo: ptr VkAcquireProfilingLockInfoKHR): VkResult {.stdcall.} - vkReleaseProfilingLockKHR*: proc (device: VkDevice): void {.stdcall.} + vkReleaseProfilingLockKHR*: proc (device: VkDevice) {.stdcall.} vkGetImageDrmFormatModifierPropertiesEXT*: proc (device: VkDevice, image: VkImage, pProperties: ptr VkImageDrmFormatModifierPropertiesEXT): VkResult {.stdcall.} vkGetBufferOpaqueCaptureAddress*: proc (device: VkDevice, pInfo: ptr VkBufferDeviceAddressInfo): uint64 {.stdcall.} vkGetBufferDeviceAddress*: proc (device: VkDevice, pInfo: ptr VkBufferDeviceAddressInfo): VkDeviceAddress {.stdcall.} vkCreateHeadlessSurfaceEXT*: proc (instance: VkInstance, pCreateInfo: ptr VkHeadlessSurfaceCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.stdcall.} vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV*: proc (physicalDevice: VkPhysicalDevice, pCombinationCount: ptr uint32, pCombinations: ptr VkFramebufferMixedSamplesCombinationNV): VkResult {.stdcall.} vkInitializePerformanceApiINTEL*: proc (device: VkDevice, pInitializeInfo: ptr VkInitializePerformanceApiInfoINTEL): VkResult {.stdcall.} - vkUninitializePerformanceApiINTEL*: proc (device: VkDevice): void {.stdcall.} + vkUninitializePerformanceApiINTEL*: proc (device: VkDevice) {.stdcall.} vkCmdSetPerformanceMarkerINTEL*: proc (commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkPerformanceMarkerInfoINTEL): VkResult {.stdcall.} vkCmdSetPerformanceStreamMarkerINTEL*: proc (commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkPerformanceStreamMarkerInfoINTEL): VkResult {.stdcall.} vkCmdSetPerformanceOverrideINTEL*: proc (commandBuffer: VkCommandBuffer, pOverrideInfo: ptr VkPerformanceOverrideInfoINTEL): VkResult {.stdcall.} @@ -20925,212 +20930,212 @@ var vkGetPipelineExecutablePropertiesKHR*: proc (device: VkDevice, pPipelineInfo: ptr VkPipelineInfoKHR, pExecutableCount: ptr uint32, pProperties: ptr VkPipelineExecutablePropertiesKHR): VkResult {.stdcall.} vkGetPipelineExecutableStatisticsKHR*: proc (device: VkDevice, pExecutableInfo: ptr VkPipelineExecutableInfoKHR, pStatisticCount: ptr uint32, pStatistics: ptr VkPipelineExecutableStatisticKHR): VkResult {.stdcall.} vkGetPipelineExecutableInternalRepresentationsKHR*: proc (device: VkDevice, pExecutableInfo: ptr VkPipelineExecutableInfoKHR, pInternalRepresentationCount: ptr uint32, pInternalRepresentations: ptr VkPipelineExecutableInternalRepresentationKHR): VkResult {.stdcall.} - vkCmdSetLineStippleKHR*: proc (commandBuffer: VkCommandBuffer, lineStippleFactor: uint32, lineStipplePattern: uint16): void {.stdcall.} + vkCmdSetLineStippleKHR*: proc (commandBuffer: VkCommandBuffer, lineStippleFactor: uint32, lineStipplePattern: uint16) {.stdcall.} vkGetFaultData*: proc (device: VkDevice, faultQueryBehavior: VkFaultQueryBehavior, pUnrecordedFaults: ptr VkBool32, pFaultCount: ptr uint32, pFaults: ptr VkFaultData): VkResult {.stdcall.} vkGetPhysicalDeviceToolProperties*: proc (physicalDevice: VkPhysicalDevice, pToolCount: ptr uint32, pToolProperties: ptr VkPhysicalDeviceToolProperties): VkResult {.stdcall.} vkCreateAccelerationStructureKHR*: proc (device: VkDevice, pCreateInfo: ptr VkAccelerationStructureCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pAccelerationStructure: ptr VkAccelerationStructureKHR): VkResult {.stdcall.} - vkCmdBuildAccelerationStructuresKHR*: proc (commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR): void {.stdcall.} - vkCmdBuildAccelerationStructuresIndirectKHR*: proc (commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, pIndirectDeviceAddresses: ptr VkDeviceAddress, pIndirectStrides: ptr uint32, ppMaxPrimitiveCounts: ptr ptr uint32): void {.stdcall.} + vkCmdBuildAccelerationStructuresKHR*: proc (commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR) {.stdcall.} + vkCmdBuildAccelerationStructuresIndirectKHR*: proc (commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, pIndirectDeviceAddresses: ptr VkDeviceAddress, pIndirectStrides: ptr uint32, ppMaxPrimitiveCounts: ptr ptr uint32) {.stdcall.} vkBuildAccelerationStructuresKHR*: proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR): VkResult {.stdcall.} vkGetAccelerationStructureDeviceAddressKHR*: proc (device: VkDevice, pInfo: ptr VkAccelerationStructureDeviceAddressInfoKHR): VkDeviceAddress {.stdcall.} vkCreateDeferredOperationKHR*: proc (device: VkDevice, pAllocator: ptr VkAllocationCallbacks, pDeferredOperation: ptr VkDeferredOperationKHR): VkResult {.stdcall.} - vkDestroyDeferredOperationKHR*: proc (device: VkDevice, operation: VkDeferredOperationKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyDeferredOperationKHR*: proc (device: VkDevice, operation: VkDeferredOperationKHR, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkGetDeferredOperationMaxConcurrencyKHR*: proc (device: VkDevice, operation: VkDeferredOperationKHR): uint32 {.stdcall.} vkGetDeferredOperationResultKHR*: proc (device: VkDevice, operation: VkDeferredOperationKHR): VkResult {.stdcall.} vkDeferredOperationJoinKHR*: proc (device: VkDevice, operation: VkDeferredOperationKHR): VkResult {.stdcall.} - vkGetPipelineIndirectMemoryRequirementsNV*: proc (device: VkDevice, pCreateInfo: ptr VkComputePipelineCreateInfo, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.} + vkGetPipelineIndirectMemoryRequirementsNV*: proc (device: VkDevice, pCreateInfo: ptr VkComputePipelineCreateInfo, pMemoryRequirements: ptr VkMemoryRequirements2) {.stdcall.} vkGetPipelineIndirectDeviceAddressNV*: proc (device: VkDevice, pInfo: ptr VkPipelineIndirectDeviceAddressInfoNV): VkDeviceAddress {.stdcall.} - vkCmdSetCullMode*: proc (commandBuffer: VkCommandBuffer, cullMode: VkCullModeFlags): void {.stdcall.} - vkCmdSetFrontFace*: proc (commandBuffer: VkCommandBuffer, frontFace: VkFrontFace): void {.stdcall.} - vkCmdSetPrimitiveTopology*: proc (commandBuffer: VkCommandBuffer, primitiveTopology: VkPrimitiveTopology): void {.stdcall.} - vkCmdSetViewportWithCount*: proc (commandBuffer: VkCommandBuffer, viewportCount: uint32, pViewports: ptr VkViewport): void {.stdcall.} - vkCmdSetScissorWithCount*: proc (commandBuffer: VkCommandBuffer, scissorCount: uint32, pScissors: ptr VkRect2D): void {.stdcall.} - vkCmdBindIndexBuffer2KHR*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize, indexType: VkIndexType): void {.stdcall.} - vkCmdBindVertexBuffers2*: proc (commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize, pSizes: ptr VkDeviceSize, pStrides: ptr VkDeviceSize): void {.stdcall.} - vkCmdSetDepthTestEnable*: proc (commandBuffer: VkCommandBuffer, depthTestEnable: VkBool32): void {.stdcall.} - vkCmdSetDepthWriteEnable*: proc (commandBuffer: VkCommandBuffer, depthWriteEnable: VkBool32): void {.stdcall.} - vkCmdSetDepthCompareOp*: proc (commandBuffer: VkCommandBuffer, depthCompareOp: VkCompareOp): void {.stdcall.} - vkCmdSetDepthBoundsTestEnable*: proc (commandBuffer: VkCommandBuffer, depthBoundsTestEnable: VkBool32): void {.stdcall.} - vkCmdSetStencilTestEnable*: proc (commandBuffer: VkCommandBuffer, stencilTestEnable: VkBool32): void {.stdcall.} - vkCmdSetStencilOp*: proc (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, failOp: VkStencilOp, passOp: VkStencilOp, depthFailOp: VkStencilOp, compareOp: VkCompareOp): void {.stdcall.} - vkCmdSetPatchControlPointsEXT*: proc (commandBuffer: VkCommandBuffer, patchControlPoints: uint32): void {.stdcall.} - vkCmdSetRasterizerDiscardEnable*: proc (commandBuffer: VkCommandBuffer, rasterizerDiscardEnable: VkBool32): void {.stdcall.} - vkCmdSetDepthBiasEnable*: proc (commandBuffer: VkCommandBuffer, depthBiasEnable: VkBool32): void {.stdcall.} - vkCmdSetLogicOpEXT*: proc (commandBuffer: VkCommandBuffer, logicOp: VkLogicOp): void {.stdcall.} - vkCmdSetPrimitiveRestartEnable*: proc (commandBuffer: VkCommandBuffer, primitiveRestartEnable: VkBool32): void {.stdcall.} - vkCmdSetTessellationDomainOriginEXT*: proc (commandBuffer: VkCommandBuffer, domainOrigin: VkTessellationDomainOrigin): void {.stdcall.} - vkCmdSetDepthClampEnableEXT*: proc (commandBuffer: VkCommandBuffer, depthClampEnable: VkBool32): void {.stdcall.} - vkCmdSetPolygonModeEXT*: proc (commandBuffer: VkCommandBuffer, polygonMode: VkPolygonMode): void {.stdcall.} - vkCmdSetRasterizationSamplesEXT*: proc (commandBuffer: VkCommandBuffer, rasterizationSamples: VkSampleCountFlagBits): void {.stdcall.} - vkCmdSetSampleMaskEXT*: proc (commandBuffer: VkCommandBuffer, samples: VkSampleCountFlagBits, pSampleMask: ptr VkSampleMask): void {.stdcall.} - vkCmdSetAlphaToCoverageEnableEXT*: proc (commandBuffer: VkCommandBuffer, alphaToCoverageEnable: VkBool32): void {.stdcall.} - vkCmdSetAlphaToOneEnableEXT*: proc (commandBuffer: VkCommandBuffer, alphaToOneEnable: VkBool32): void {.stdcall.} - vkCmdSetLogicOpEnableEXT*: proc (commandBuffer: VkCommandBuffer, logicOpEnable: VkBool32): void {.stdcall.} - vkCmdSetColorBlendEnableEXT*: proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEnables: ptr VkBool32): void {.stdcall.} - vkCmdSetColorBlendEquationEXT*: proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEquations: ptr VkColorBlendEquationEXT): void {.stdcall.} - vkCmdSetColorWriteMaskEXT*: proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorWriteMasks: ptr VkColorComponentFlags): void {.stdcall.} - vkCmdSetRasterizationStreamEXT*: proc (commandBuffer: VkCommandBuffer, rasterizationStream: uint32): void {.stdcall.} - vkCmdSetConservativeRasterizationModeEXT*: proc (commandBuffer: VkCommandBuffer, conservativeRasterizationMode: VkConservativeRasterizationModeEXT): void {.stdcall.} - vkCmdSetExtraPrimitiveOverestimationSizeEXT*: proc (commandBuffer: VkCommandBuffer, extraPrimitiveOverestimationSize: float32): void {.stdcall.} - vkCmdSetDepthClipEnableEXT*: proc (commandBuffer: VkCommandBuffer, depthClipEnable: VkBool32): void {.stdcall.} - vkCmdSetSampleLocationsEnableEXT*: proc (commandBuffer: VkCommandBuffer, sampleLocationsEnable: VkBool32): void {.stdcall.} - vkCmdSetColorBlendAdvancedEXT*: proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendAdvanced: ptr VkColorBlendAdvancedEXT): void {.stdcall.} - vkCmdSetProvokingVertexModeEXT*: proc (commandBuffer: VkCommandBuffer, provokingVertexMode: VkProvokingVertexModeEXT): void {.stdcall.} - vkCmdSetLineRasterizationModeEXT*: proc (commandBuffer: VkCommandBuffer, lineRasterizationMode: VkLineRasterizationModeEXT): void {.stdcall.} - vkCmdSetLineStippleEnableEXT*: proc (commandBuffer: VkCommandBuffer, stippledLineEnable: VkBool32): void {.stdcall.} - vkCmdSetDepthClipNegativeOneToOneEXT*: proc (commandBuffer: VkCommandBuffer, negativeOneToOne: VkBool32): void {.stdcall.} - vkCmdSetViewportWScalingEnableNV*: proc (commandBuffer: VkCommandBuffer, viewportWScalingEnable: VkBool32): void {.stdcall.} - vkCmdSetViewportSwizzleNV*: proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportSwizzles: ptr VkViewportSwizzleNV): void {.stdcall.} - vkCmdSetCoverageToColorEnableNV*: proc (commandBuffer: VkCommandBuffer, coverageToColorEnable: VkBool32): void {.stdcall.} - vkCmdSetCoverageToColorLocationNV*: proc (commandBuffer: VkCommandBuffer, coverageToColorLocation: uint32): void {.stdcall.} - vkCmdSetCoverageModulationModeNV*: proc (commandBuffer: VkCommandBuffer, coverageModulationMode: VkCoverageModulationModeNV): void {.stdcall.} - vkCmdSetCoverageModulationTableEnableNV*: proc (commandBuffer: VkCommandBuffer, coverageModulationTableEnable: VkBool32): void {.stdcall.} - vkCmdSetCoverageModulationTableNV*: proc (commandBuffer: VkCommandBuffer, coverageModulationTableCount: uint32, pCoverageModulationTable: ptr float32): void {.stdcall.} - vkCmdSetShadingRateImageEnableNV*: proc (commandBuffer: VkCommandBuffer, shadingRateImageEnable: VkBool32): void {.stdcall.} - vkCmdSetCoverageReductionModeNV*: proc (commandBuffer: VkCommandBuffer, coverageReductionMode: VkCoverageReductionModeNV): void {.stdcall.} - vkCmdSetRepresentativeFragmentTestEnableNV*: proc (commandBuffer: VkCommandBuffer, representativeFragmentTestEnable: VkBool32): void {.stdcall.} + vkCmdSetCullMode*: proc (commandBuffer: VkCommandBuffer, cullMode: VkCullModeFlags) {.stdcall.} + vkCmdSetFrontFace*: proc (commandBuffer: VkCommandBuffer, frontFace: VkFrontFace) {.stdcall.} + vkCmdSetPrimitiveTopology*: proc (commandBuffer: VkCommandBuffer, primitiveTopology: VkPrimitiveTopology) {.stdcall.} + vkCmdSetViewportWithCount*: proc (commandBuffer: VkCommandBuffer, viewportCount: uint32, pViewports: ptr VkViewport) {.stdcall.} + vkCmdSetScissorWithCount*: proc (commandBuffer: VkCommandBuffer, scissorCount: uint32, pScissors: ptr VkRect2D) {.stdcall.} + vkCmdBindIndexBuffer2KHR*: proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize, indexType: VkIndexType) {.stdcall.} + vkCmdBindVertexBuffers2*: proc (commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize, pSizes: ptr VkDeviceSize, pStrides: ptr VkDeviceSize) {.stdcall.} + vkCmdSetDepthTestEnable*: proc (commandBuffer: VkCommandBuffer, depthTestEnable: VkBool32) {.stdcall.} + vkCmdSetDepthWriteEnable*: proc (commandBuffer: VkCommandBuffer, depthWriteEnable: VkBool32) {.stdcall.} + vkCmdSetDepthCompareOp*: proc (commandBuffer: VkCommandBuffer, depthCompareOp: VkCompareOp) {.stdcall.} + vkCmdSetDepthBoundsTestEnable*: proc (commandBuffer: VkCommandBuffer, depthBoundsTestEnable: VkBool32) {.stdcall.} + vkCmdSetStencilTestEnable*: proc (commandBuffer: VkCommandBuffer, stencilTestEnable: VkBool32) {.stdcall.} + vkCmdSetStencilOp*: proc (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, failOp: VkStencilOp, passOp: VkStencilOp, depthFailOp: VkStencilOp, compareOp: VkCompareOp) {.stdcall.} + vkCmdSetPatchControlPointsEXT*: proc (commandBuffer: VkCommandBuffer, patchControlPoints: uint32) {.stdcall.} + vkCmdSetRasterizerDiscardEnable*: proc (commandBuffer: VkCommandBuffer, rasterizerDiscardEnable: VkBool32) {.stdcall.} + vkCmdSetDepthBiasEnable*: proc (commandBuffer: VkCommandBuffer, depthBiasEnable: VkBool32) {.stdcall.} + vkCmdSetLogicOpEXT*: proc (commandBuffer: VkCommandBuffer, logicOp: VkLogicOp) {.stdcall.} + vkCmdSetPrimitiveRestartEnable*: proc (commandBuffer: VkCommandBuffer, primitiveRestartEnable: VkBool32) {.stdcall.} + vkCmdSetTessellationDomainOriginEXT*: proc (commandBuffer: VkCommandBuffer, domainOrigin: VkTessellationDomainOrigin) {.stdcall.} + vkCmdSetDepthClampEnableEXT*: proc (commandBuffer: VkCommandBuffer, depthClampEnable: VkBool32) {.stdcall.} + vkCmdSetPolygonModeEXT*: proc (commandBuffer: VkCommandBuffer, polygonMode: VkPolygonMode) {.stdcall.} + vkCmdSetRasterizationSamplesEXT*: proc (commandBuffer: VkCommandBuffer, rasterizationSamples: VkSampleCountFlagBits) {.stdcall.} + vkCmdSetSampleMaskEXT*: proc (commandBuffer: VkCommandBuffer, samples: VkSampleCountFlagBits, pSampleMask: ptr VkSampleMask) {.stdcall.} + vkCmdSetAlphaToCoverageEnableEXT*: proc (commandBuffer: VkCommandBuffer, alphaToCoverageEnable: VkBool32) {.stdcall.} + vkCmdSetAlphaToOneEnableEXT*: proc (commandBuffer: VkCommandBuffer, alphaToOneEnable: VkBool32) {.stdcall.} + vkCmdSetLogicOpEnableEXT*: proc (commandBuffer: VkCommandBuffer, logicOpEnable: VkBool32) {.stdcall.} + vkCmdSetColorBlendEnableEXT*: proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEnables: ptr VkBool32) {.stdcall.} + vkCmdSetColorBlendEquationEXT*: proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEquations: ptr VkColorBlendEquationEXT) {.stdcall.} + vkCmdSetColorWriteMaskEXT*: proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorWriteMasks: ptr VkColorComponentFlags) {.stdcall.} + vkCmdSetRasterizationStreamEXT*: proc (commandBuffer: VkCommandBuffer, rasterizationStream: uint32) {.stdcall.} + vkCmdSetConservativeRasterizationModeEXT*: proc (commandBuffer: VkCommandBuffer, conservativeRasterizationMode: VkConservativeRasterizationModeEXT) {.stdcall.} + vkCmdSetExtraPrimitiveOverestimationSizeEXT*: proc (commandBuffer: VkCommandBuffer, extraPrimitiveOverestimationSize: float32) {.stdcall.} + vkCmdSetDepthClipEnableEXT*: proc (commandBuffer: VkCommandBuffer, depthClipEnable: VkBool32) {.stdcall.} + vkCmdSetSampleLocationsEnableEXT*: proc (commandBuffer: VkCommandBuffer, sampleLocationsEnable: VkBool32) {.stdcall.} + vkCmdSetColorBlendAdvancedEXT*: proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendAdvanced: ptr VkColorBlendAdvancedEXT) {.stdcall.} + vkCmdSetProvokingVertexModeEXT*: proc (commandBuffer: VkCommandBuffer, provokingVertexMode: VkProvokingVertexModeEXT) {.stdcall.} + vkCmdSetLineRasterizationModeEXT*: proc (commandBuffer: VkCommandBuffer, lineRasterizationMode: VkLineRasterizationModeEXT) {.stdcall.} + vkCmdSetLineStippleEnableEXT*: proc (commandBuffer: VkCommandBuffer, stippledLineEnable: VkBool32) {.stdcall.} + vkCmdSetDepthClipNegativeOneToOneEXT*: proc (commandBuffer: VkCommandBuffer, negativeOneToOne: VkBool32) {.stdcall.} + vkCmdSetViewportWScalingEnableNV*: proc (commandBuffer: VkCommandBuffer, viewportWScalingEnable: VkBool32) {.stdcall.} + vkCmdSetViewportSwizzleNV*: proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportSwizzles: ptr VkViewportSwizzleNV) {.stdcall.} + vkCmdSetCoverageToColorEnableNV*: proc (commandBuffer: VkCommandBuffer, coverageToColorEnable: VkBool32) {.stdcall.} + vkCmdSetCoverageToColorLocationNV*: proc (commandBuffer: VkCommandBuffer, coverageToColorLocation: uint32) {.stdcall.} + vkCmdSetCoverageModulationModeNV*: proc (commandBuffer: VkCommandBuffer, coverageModulationMode: VkCoverageModulationModeNV) {.stdcall.} + vkCmdSetCoverageModulationTableEnableNV*: proc (commandBuffer: VkCommandBuffer, coverageModulationTableEnable: VkBool32) {.stdcall.} + vkCmdSetCoverageModulationTableNV*: proc (commandBuffer: VkCommandBuffer, coverageModulationTableCount: uint32, pCoverageModulationTable: ptr float32) {.stdcall.} + vkCmdSetShadingRateImageEnableNV*: proc (commandBuffer: VkCommandBuffer, shadingRateImageEnable: VkBool32) {.stdcall.} + vkCmdSetCoverageReductionModeNV*: proc (commandBuffer: VkCommandBuffer, coverageReductionMode: VkCoverageReductionModeNV) {.stdcall.} + vkCmdSetRepresentativeFragmentTestEnableNV*: proc (commandBuffer: VkCommandBuffer, representativeFragmentTestEnable: VkBool32) {.stdcall.} vkCreatePrivateDataSlot*: proc (device: VkDevice, pCreateInfo: ptr VkPrivateDataSlotCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPrivateDataSlot: ptr VkPrivateDataSlot): VkResult {.stdcall.} - vkDestroyPrivateDataSlot*: proc (device: VkDevice, privateDataSlot: VkPrivateDataSlot, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyPrivateDataSlot*: proc (device: VkDevice, privateDataSlot: VkPrivateDataSlot, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkSetPrivateData*: proc (device: VkDevice, objectType: VkObjectType, objectHandle: uint64, privateDataSlot: VkPrivateDataSlot, data: uint64): VkResult {.stdcall.} - vkGetPrivateData*: proc (device: VkDevice, objectType: VkObjectType, objectHandle: uint64, privateDataSlot: VkPrivateDataSlot, pData: ptr uint64): void {.stdcall.} - vkCmdCopyBuffer2*: proc (commandBuffer: VkCommandBuffer, pCopyBufferInfo: ptr VkCopyBufferInfo2): void {.stdcall.} - vkCmdCopyImage2*: proc (commandBuffer: VkCommandBuffer, pCopyImageInfo: ptr VkCopyImageInfo2): void {.stdcall.} - vkCmdBlitImage2*: proc (commandBuffer: VkCommandBuffer, pBlitImageInfo: ptr VkBlitImageInfo2): void {.stdcall.} - vkCmdCopyBufferToImage2*: proc (commandBuffer: VkCommandBuffer, pCopyBufferToImageInfo: ptr VkCopyBufferToImageInfo2): void {.stdcall.} - vkCmdCopyImageToBuffer2*: proc (commandBuffer: VkCommandBuffer, pCopyImageToBufferInfo: ptr VkCopyImageToBufferInfo2): void {.stdcall.} - vkCmdResolveImage2*: proc (commandBuffer: VkCommandBuffer, pResolveImageInfo: ptr VkResolveImageInfo2): void {.stdcall.} - vkCmdRefreshObjectsKHR*: proc (commandBuffer: VkCommandBuffer, pRefreshObjects: ptr VkRefreshObjectListKHR): void {.stdcall.} + vkGetPrivateData*: proc (device: VkDevice, objectType: VkObjectType, objectHandle: uint64, privateDataSlot: VkPrivateDataSlot, pData: ptr uint64) {.stdcall.} + vkCmdCopyBuffer2*: proc (commandBuffer: VkCommandBuffer, pCopyBufferInfo: ptr VkCopyBufferInfo2) {.stdcall.} + vkCmdCopyImage2*: proc (commandBuffer: VkCommandBuffer, pCopyImageInfo: ptr VkCopyImageInfo2) {.stdcall.} + vkCmdBlitImage2*: proc (commandBuffer: VkCommandBuffer, pBlitImageInfo: ptr VkBlitImageInfo2) {.stdcall.} + vkCmdCopyBufferToImage2*: proc (commandBuffer: VkCommandBuffer, pCopyBufferToImageInfo: ptr VkCopyBufferToImageInfo2) {.stdcall.} + vkCmdCopyImageToBuffer2*: proc (commandBuffer: VkCommandBuffer, pCopyImageToBufferInfo: ptr VkCopyImageToBufferInfo2) {.stdcall.} + vkCmdResolveImage2*: proc (commandBuffer: VkCommandBuffer, pResolveImageInfo: ptr VkResolveImageInfo2) {.stdcall.} + vkCmdRefreshObjectsKHR*: proc (commandBuffer: VkCommandBuffer, pRefreshObjects: ptr VkRefreshObjectListKHR) {.stdcall.} vkGetPhysicalDeviceRefreshableObjectTypesKHR*: proc (physicalDevice: VkPhysicalDevice, pRefreshableObjectTypeCount: ptr uint32, pRefreshableObjectTypes: ptr VkObjectType): VkResult {.stdcall.} - vkCmdSetFragmentShadingRateKHR*: proc (commandBuffer: VkCommandBuffer, pFragmentSize: ptr VkExtent2D, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): void {.stdcall.} + vkCmdSetFragmentShadingRateKHR*: proc (commandBuffer: VkCommandBuffer, pFragmentSize: ptr VkExtent2D, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]) {.stdcall.} vkGetPhysicalDeviceFragmentShadingRatesKHR*: proc (physicalDevice: VkPhysicalDevice, pFragmentShadingRateCount: ptr uint32, pFragmentShadingRates: ptr VkPhysicalDeviceFragmentShadingRateKHR): VkResult {.stdcall.} - vkCmdSetFragmentShadingRateEnumNV*: proc (commandBuffer: VkCommandBuffer, shadingRate: VkFragmentShadingRateNV, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): void {.stdcall.} - vkGetAccelerationStructureBuildSizesKHR*: proc (device: VkDevice, buildType: VkAccelerationStructureBuildTypeKHR, pBuildInfo: ptr VkAccelerationStructureBuildGeometryInfoKHR, pMaxPrimitiveCounts: ptr uint32, pSizeInfo: ptr VkAccelerationStructureBuildSizesInfoKHR): void {.stdcall.} - vkCmdSetVertexInputEXT*: proc (commandBuffer: VkCommandBuffer, vertexBindingDescriptionCount: uint32, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription2EXT, vertexAttributeDescriptionCount: uint32, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription2EXT): void {.stdcall.} - vkCmdSetColorWriteEnableEXT*: proc (commandBuffer: VkCommandBuffer, attachmentCount: uint32, pColorWriteEnables: ptr VkBool32): void {.stdcall.} - vkCmdSetEvent2*: proc (commandBuffer: VkCommandBuffer, event: VkEvent, pDependencyInfo: ptr VkDependencyInfo): void {.stdcall.} - vkCmdResetEvent2*: proc (commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags2): void {.stdcall.} - vkCmdWaitEvents2*: proc (commandBuffer: VkCommandBuffer, eventCount: uint32, pEvents: ptr VkEvent, pDependencyInfos: ptr VkDependencyInfo): void {.stdcall.} - vkCmdPipelineBarrier2*: proc (commandBuffer: VkCommandBuffer, pDependencyInfo: ptr VkDependencyInfo): void {.stdcall.} + vkCmdSetFragmentShadingRateEnumNV*: proc (commandBuffer: VkCommandBuffer, shadingRate: VkFragmentShadingRateNV, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]) {.stdcall.} + vkGetAccelerationStructureBuildSizesKHR*: proc (device: VkDevice, buildType: VkAccelerationStructureBuildTypeKHR, pBuildInfo: ptr VkAccelerationStructureBuildGeometryInfoKHR, pMaxPrimitiveCounts: ptr uint32, pSizeInfo: ptr VkAccelerationStructureBuildSizesInfoKHR) {.stdcall.} + vkCmdSetVertexInputEXT*: proc (commandBuffer: VkCommandBuffer, vertexBindingDescriptionCount: uint32, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription2EXT, vertexAttributeDescriptionCount: uint32, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription2EXT) {.stdcall.} + vkCmdSetColorWriteEnableEXT*: proc (commandBuffer: VkCommandBuffer, attachmentCount: uint32, pColorWriteEnables: ptr VkBool32) {.stdcall.} + vkCmdSetEvent2*: proc (commandBuffer: VkCommandBuffer, event: VkEvent, pDependencyInfo: ptr VkDependencyInfo) {.stdcall.} + vkCmdResetEvent2*: proc (commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags2) {.stdcall.} + vkCmdWaitEvents2*: proc (commandBuffer: VkCommandBuffer, eventCount: uint32, pEvents: ptr VkEvent, pDependencyInfos: ptr VkDependencyInfo) {.stdcall.} + vkCmdPipelineBarrier2*: proc (commandBuffer: VkCommandBuffer, pDependencyInfo: ptr VkDependencyInfo) {.stdcall.} vkQueueSubmit2*: proc (queue: VkQueue, submitCount: uint32, pSubmits: ptr VkSubmitInfo2, fence: VkFence): VkResult {.stdcall.} - vkCmdWriteTimestamp2*: proc (commandBuffer: VkCommandBuffer, stage: VkPipelineStageFlags2, queryPool: VkQueryPool, query: uint32): void {.stdcall.} - vkCmdWriteBufferMarker2AMD*: proc (commandBuffer: VkCommandBuffer, stage: VkPipelineStageFlags2, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, marker: uint32): void {.stdcall.} - vkGetQueueCheckpointData2NV*: proc (queue: VkQueue, pCheckpointDataCount: ptr uint32, pCheckpointData: ptr VkCheckpointData2NV): void {.stdcall.} + vkCmdWriteTimestamp2*: proc (commandBuffer: VkCommandBuffer, stage: VkPipelineStageFlags2, queryPool: VkQueryPool, query: uint32) {.stdcall.} + vkCmdWriteBufferMarker2AMD*: proc (commandBuffer: VkCommandBuffer, stage: VkPipelineStageFlags2, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, marker: uint32) {.stdcall.} + vkGetQueueCheckpointData2NV*: proc (queue: VkQueue, pCheckpointDataCount: ptr uint32, pCheckpointData: ptr VkCheckpointData2NV) {.stdcall.} vkCopyMemoryToImageEXT*: proc (device: VkDevice, pCopyMemoryToImageInfo: ptr VkCopyMemoryToImageInfoEXT): VkResult {.stdcall.} vkCopyImageToMemoryEXT*: proc (device: VkDevice, pCopyImageToMemoryInfo: ptr VkCopyImageToMemoryInfoEXT): VkResult {.stdcall.} vkCopyImageToImageEXT*: proc (device: VkDevice, pCopyImageToImageInfo: ptr VkCopyImageToImageInfoEXT): VkResult {.stdcall.} vkTransitionImageLayoutEXT*: proc (device: VkDevice, transitionCount: uint32, pTransitions: ptr VkHostImageLayoutTransitionInfoEXT): VkResult {.stdcall.} - vkGetCommandPoolMemoryConsumption*: proc (device: VkDevice, commandPool: VkCommandPool, commandBuffer: VkCommandBuffer, pConsumption: ptr VkCommandPoolMemoryConsumption): void {.stdcall.} + vkGetCommandPoolMemoryConsumption*: proc (device: VkDevice, commandPool: VkCommandPool, commandBuffer: VkCommandBuffer, pConsumption: ptr VkCommandPoolMemoryConsumption) {.stdcall.} vkGetPhysicalDeviceVideoCapabilitiesKHR*: proc (physicalDevice: VkPhysicalDevice, pVideoProfile: ptr VkVideoProfileInfoKHR, pCapabilities: ptr VkVideoCapabilitiesKHR): VkResult {.stdcall.} vkGetPhysicalDeviceVideoFormatPropertiesKHR*: proc (physicalDevice: VkPhysicalDevice, pVideoFormatInfo: ptr VkPhysicalDeviceVideoFormatInfoKHR, pVideoFormatPropertyCount: ptr uint32, pVideoFormatProperties: ptr VkVideoFormatPropertiesKHR): VkResult {.stdcall.} vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR*: proc (physicalDevice: VkPhysicalDevice, pQualityLevelInfo: ptr VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR, pQualityLevelProperties: ptr VkVideoEncodeQualityLevelPropertiesKHR): VkResult {.stdcall.} vkCreateVideoSessionKHR*: proc (device: VkDevice, pCreateInfo: ptr VkVideoSessionCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pVideoSession: ptr VkVideoSessionKHR): VkResult {.stdcall.} - vkDestroyVideoSessionKHR*: proc (device: VkDevice, videoSession: VkVideoSessionKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyVideoSessionKHR*: proc (device: VkDevice, videoSession: VkVideoSessionKHR, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkCreateVideoSessionParametersKHR*: proc (device: VkDevice, pCreateInfo: ptr VkVideoSessionParametersCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pVideoSessionParameters: ptr VkVideoSessionParametersKHR): VkResult {.stdcall.} vkUpdateVideoSessionParametersKHR*: proc (device: VkDevice, videoSessionParameters: VkVideoSessionParametersKHR, pUpdateInfo: ptr VkVideoSessionParametersUpdateInfoKHR): VkResult {.stdcall.} vkGetEncodedVideoSessionParametersKHR*: proc (device: VkDevice, pVideoSessionParametersInfo: ptr VkVideoEncodeSessionParametersGetInfoKHR, pFeedbackInfo: ptr VkVideoEncodeSessionParametersFeedbackInfoKHR, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.} - vkDestroyVideoSessionParametersKHR*: proc (device: VkDevice, videoSessionParameters: VkVideoSessionParametersKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyVideoSessionParametersKHR*: proc (device: VkDevice, videoSessionParameters: VkVideoSessionParametersKHR, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkGetVideoSessionMemoryRequirementsKHR*: proc (device: VkDevice, videoSession: VkVideoSessionKHR, pMemoryRequirementsCount: ptr uint32, pMemoryRequirements: ptr VkVideoSessionMemoryRequirementsKHR): VkResult {.stdcall.} vkBindVideoSessionMemoryKHR*: proc (device: VkDevice, videoSession: VkVideoSessionKHR, bindSessionMemoryInfoCount: uint32, pBindSessionMemoryInfos: ptr VkBindVideoSessionMemoryInfoKHR): VkResult {.stdcall.} - vkCmdDecodeVideoKHR*: proc (commandBuffer: VkCommandBuffer, pDecodeInfo: ptr VkVideoDecodeInfoKHR): void {.stdcall.} - vkCmdBeginVideoCodingKHR*: proc (commandBuffer: VkCommandBuffer, pBeginInfo: ptr VkVideoBeginCodingInfoKHR): void {.stdcall.} - vkCmdControlVideoCodingKHR*: proc (commandBuffer: VkCommandBuffer, pCodingControlInfo: ptr VkVideoCodingControlInfoKHR): void {.stdcall.} - vkCmdEndVideoCodingKHR*: proc (commandBuffer: VkCommandBuffer, pEndCodingInfo: ptr VkVideoEndCodingInfoKHR): void {.stdcall.} - vkCmdEncodeVideoKHR*: proc (commandBuffer: VkCommandBuffer, pEncodeInfo: ptr VkVideoEncodeInfoKHR): void {.stdcall.} - vkCmdDecompressMemoryNV*: proc (commandBuffer: VkCommandBuffer, decompressRegionCount: uint32, pDecompressMemoryRegions: ptr VkDecompressMemoryRegionNV): void {.stdcall.} - vkCmdDecompressMemoryIndirectCountNV*: proc (commandBuffer: VkCommandBuffer, indirectCommandsAddress: VkDeviceAddress, indirectCommandsCountAddress: VkDeviceAddress, stride: uint32): void {.stdcall.} + vkCmdDecodeVideoKHR*: proc (commandBuffer: VkCommandBuffer, pDecodeInfo: ptr VkVideoDecodeInfoKHR) {.stdcall.} + vkCmdBeginVideoCodingKHR*: proc (commandBuffer: VkCommandBuffer, pBeginInfo: ptr VkVideoBeginCodingInfoKHR) {.stdcall.} + vkCmdControlVideoCodingKHR*: proc (commandBuffer: VkCommandBuffer, pCodingControlInfo: ptr VkVideoCodingControlInfoKHR) {.stdcall.} + vkCmdEndVideoCodingKHR*: proc (commandBuffer: VkCommandBuffer, pEndCodingInfo: ptr VkVideoEndCodingInfoKHR) {.stdcall.} + vkCmdEncodeVideoKHR*: proc (commandBuffer: VkCommandBuffer, pEncodeInfo: ptr VkVideoEncodeInfoKHR) {.stdcall.} + vkCmdDecompressMemoryNV*: proc (commandBuffer: VkCommandBuffer, decompressRegionCount: uint32, pDecompressMemoryRegions: ptr VkDecompressMemoryRegionNV) {.stdcall.} + vkCmdDecompressMemoryIndirectCountNV*: proc (commandBuffer: VkCommandBuffer, indirectCommandsAddress: VkDeviceAddress, indirectCommandsCountAddress: VkDeviceAddress, stride: uint32) {.stdcall.} vkCreateCuModuleNVX*: proc (device: VkDevice, pCreateInfo: ptr VkCuModuleCreateInfoNVX, pAllocator: ptr VkAllocationCallbacks, pModule: ptr VkCuModuleNVX): VkResult {.stdcall.} vkCreateCuFunctionNVX*: proc (device: VkDevice, pCreateInfo: ptr VkCuFunctionCreateInfoNVX, pAllocator: ptr VkAllocationCallbacks, pFunction: ptr VkCuFunctionNVX): VkResult {.stdcall.} - vkDestroyCuModuleNVX*: proc (device: VkDevice, module: VkCuModuleNVX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkDestroyCuFunctionNVX*: proc (device: VkDevice, function: VkCuFunctionNVX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkCmdCuLaunchKernelNVX*: proc (commandBuffer: VkCommandBuffer, pLaunchInfo: ptr VkCuLaunchInfoNVX): void {.stdcall.} - vkGetDescriptorSetLayoutSizeEXT*: proc (device: VkDevice, layout: VkDescriptorSetLayout, pLayoutSizeInBytes: ptr VkDeviceSize): void {.stdcall.} - vkGetDescriptorSetLayoutBindingOffsetEXT*: proc (device: VkDevice, layout: VkDescriptorSetLayout, binding: uint32, pOffset: ptr VkDeviceSize): void {.stdcall.} - vkGetDescriptorEXT*: proc (device: VkDevice, pDescriptorInfo: ptr VkDescriptorGetInfoEXT, dataSize: uint, pDescriptor: pointer): void {.stdcall.} - vkCmdBindDescriptorBuffersEXT*: proc (commandBuffer: VkCommandBuffer, bufferCount: uint32, pBindingInfos: ptr VkDescriptorBufferBindingInfoEXT): void {.stdcall.} - vkCmdSetDescriptorBufferOffsetsEXT*: proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, firstSet: uint32, setCount: uint32, pBufferIndices: ptr uint32, pOffsets: ptr VkDeviceSize): void {.stdcall.} - vkCmdBindDescriptorBufferEmbeddedSamplersEXT*: proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, set: uint32): void {.stdcall.} + vkDestroyCuModuleNVX*: proc (device: VkDevice, module: VkCuModuleNVX, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} + vkDestroyCuFunctionNVX*: proc (device: VkDevice, function: VkCuFunctionNVX, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} + vkCmdCuLaunchKernelNVX*: proc (commandBuffer: VkCommandBuffer, pLaunchInfo: ptr VkCuLaunchInfoNVX) {.stdcall.} + vkGetDescriptorSetLayoutSizeEXT*: proc (device: VkDevice, layout: VkDescriptorSetLayout, pLayoutSizeInBytes: ptr VkDeviceSize) {.stdcall.} + vkGetDescriptorSetLayoutBindingOffsetEXT*: proc (device: VkDevice, layout: VkDescriptorSetLayout, binding: uint32, pOffset: ptr VkDeviceSize) {.stdcall.} + vkGetDescriptorEXT*: proc (device: VkDevice, pDescriptorInfo: ptr VkDescriptorGetInfoEXT, dataSize: uint, pDescriptor: pointer) {.stdcall.} + vkCmdBindDescriptorBuffersEXT*: proc (commandBuffer: VkCommandBuffer, bufferCount: uint32, pBindingInfos: ptr VkDescriptorBufferBindingInfoEXT) {.stdcall.} + vkCmdSetDescriptorBufferOffsetsEXT*: proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, firstSet: uint32, setCount: uint32, pBufferIndices: ptr uint32, pOffsets: ptr VkDeviceSize) {.stdcall.} + vkCmdBindDescriptorBufferEmbeddedSamplersEXT*: proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, set: uint32) {.stdcall.} vkGetBufferOpaqueCaptureDescriptorDataEXT*: proc (device: VkDevice, pInfo: ptr VkBufferCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.} vkGetImageOpaqueCaptureDescriptorDataEXT*: proc (device: VkDevice, pInfo: ptr VkImageCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.} vkGetImageViewOpaqueCaptureDescriptorDataEXT*: proc (device: VkDevice, pInfo: ptr VkImageViewCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.} vkGetSamplerOpaqueCaptureDescriptorDataEXT*: proc (device: VkDevice, pInfo: ptr VkSamplerCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.} vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT*: proc (device: VkDevice, pInfo: ptr VkAccelerationStructureCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.} - vkSetDeviceMemoryPriorityEXT*: proc (device: VkDevice, memory: VkDeviceMemory, priority: float32): void {.stdcall.} + vkSetDeviceMemoryPriorityEXT*: proc (device: VkDevice, memory: VkDeviceMemory, priority: float32) {.stdcall.} vkAcquireDrmDisplayEXT*: proc (physicalDevice: VkPhysicalDevice, drmFd: int32, display: VkDisplayKHR): VkResult {.stdcall.} vkGetDrmDisplayEXT*: proc (physicalDevice: VkPhysicalDevice, drmFd: int32, connectorId: uint32, display: ptr VkDisplayKHR): VkResult {.stdcall.} vkWaitForPresentKHR*: proc (device: VkDevice, swapchain: VkSwapchainKHR, presentId: uint64, timeout: uint64): VkResult {.stdcall.} vkCreateBufferCollectionFUCHSIA*: proc (device: VkDevice, pCreateInfo: ptr VkBufferCollectionCreateInfoFUCHSIA, pAllocator: ptr VkAllocationCallbacks, pCollection: ptr VkBufferCollectionFUCHSIA): VkResult {.stdcall.} vkSetBufferCollectionBufferConstraintsFUCHSIA*: proc (device: VkDevice, collection: VkBufferCollectionFUCHSIA, pBufferConstraintsInfo: ptr VkBufferConstraintsInfoFUCHSIA): VkResult {.stdcall.} vkSetBufferCollectionImageConstraintsFUCHSIA*: proc (device: VkDevice, collection: VkBufferCollectionFUCHSIA, pImageConstraintsInfo: ptr VkImageConstraintsInfoFUCHSIA): VkResult {.stdcall.} - vkDestroyBufferCollectionFUCHSIA*: proc (device: VkDevice, collection: VkBufferCollectionFUCHSIA, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyBufferCollectionFUCHSIA*: proc (device: VkDevice, collection: VkBufferCollectionFUCHSIA, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkGetBufferCollectionPropertiesFUCHSIA*: proc (device: VkDevice, collection: VkBufferCollectionFUCHSIA, pProperties: ptr VkBufferCollectionPropertiesFUCHSIA): VkResult {.stdcall.} vkCreateCudaModuleNV*: proc (device: VkDevice, pCreateInfo: ptr VkCudaModuleCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pModule: ptr VkCudaModuleNV): VkResult {.stdcall.} vkGetCudaModuleCacheNV*: proc (device: VkDevice, module: VkCudaModuleNV, pCacheSize: ptr uint, pCacheData: pointer): VkResult {.stdcall.} vkCreateCudaFunctionNV*: proc (device: VkDevice, pCreateInfo: ptr VkCudaFunctionCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pFunction: ptr VkCudaFunctionNV): VkResult {.stdcall.} - vkDestroyCudaModuleNV*: proc (device: VkDevice, module: VkCudaModuleNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkDestroyCudaFunctionNV*: proc (device: VkDevice, function: VkCudaFunctionNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkCmdCudaLaunchKernelNV*: proc (commandBuffer: VkCommandBuffer, pLaunchInfo: ptr VkCudaLaunchInfoNV): void {.stdcall.} - vkCmdBeginRendering*: proc (commandBuffer: VkCommandBuffer, pRenderingInfo: ptr VkRenderingInfo): void {.stdcall.} - vkCmdEndRendering*: proc (commandBuffer: VkCommandBuffer): void {.stdcall.} - vkGetDescriptorSetLayoutHostMappingInfoVALVE*: proc (device: VkDevice, pBindingReference: ptr VkDescriptorSetBindingReferenceVALVE, pHostMapping: ptr VkDescriptorSetLayoutHostMappingInfoVALVE): void {.stdcall.} - vkGetDescriptorSetHostMappingVALVE*: proc (device: VkDevice, descriptorSet: VkDescriptorSet, ppData: ptr pointer): void {.stdcall.} + vkDestroyCudaModuleNV*: proc (device: VkDevice, module: VkCudaModuleNV, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} + vkDestroyCudaFunctionNV*: proc (device: VkDevice, function: VkCudaFunctionNV, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} + vkCmdCudaLaunchKernelNV*: proc (commandBuffer: VkCommandBuffer, pLaunchInfo: ptr VkCudaLaunchInfoNV) {.stdcall.} + vkCmdBeginRendering*: proc (commandBuffer: VkCommandBuffer, pRenderingInfo: ptr VkRenderingInfo) {.stdcall.} + vkCmdEndRendering*: proc (commandBuffer: VkCommandBuffer) {.stdcall.} + vkGetDescriptorSetLayoutHostMappingInfoVALVE*: proc (device: VkDevice, pBindingReference: ptr VkDescriptorSetBindingReferenceVALVE, pHostMapping: ptr VkDescriptorSetLayoutHostMappingInfoVALVE) {.stdcall.} + vkGetDescriptorSetHostMappingVALVE*: proc (device: VkDevice, descriptorSet: VkDescriptorSet, ppData: ptr pointer) {.stdcall.} vkCreateMicromapEXT*: proc (device: VkDevice, pCreateInfo: ptr VkMicromapCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pMicromap: ptr VkMicromapEXT): VkResult {.stdcall.} - vkCmdBuildMicromapsEXT*: proc (commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkMicromapBuildInfoEXT): void {.stdcall.} + vkCmdBuildMicromapsEXT*: proc (commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkMicromapBuildInfoEXT) {.stdcall.} vkBuildMicromapsEXT*: proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, infoCount: uint32, pInfos: ptr VkMicromapBuildInfoEXT): VkResult {.stdcall.} - vkDestroyMicromapEXT*: proc (device: VkDevice, micromap: VkMicromapEXT, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} - vkCmdCopyMicromapEXT*: proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMicromapInfoEXT): void {.stdcall.} + vkDestroyMicromapEXT*: proc (device: VkDevice, micromap: VkMicromapEXT, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} + vkCmdCopyMicromapEXT*: proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMicromapInfoEXT) {.stdcall.} vkCopyMicromapEXT*: proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMicromapInfoEXT): VkResult {.stdcall.} - vkCmdCopyMicromapToMemoryEXT*: proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMicromapToMemoryInfoEXT): void {.stdcall.} + vkCmdCopyMicromapToMemoryEXT*: proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMicromapToMemoryInfoEXT) {.stdcall.} vkCopyMicromapToMemoryEXT*: proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMicromapToMemoryInfoEXT): VkResult {.stdcall.} - vkCmdCopyMemoryToMicromapEXT*: proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMemoryToMicromapInfoEXT): void {.stdcall.} + vkCmdCopyMemoryToMicromapEXT*: proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMemoryToMicromapInfoEXT) {.stdcall.} vkCopyMemoryToMicromapEXT*: proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMemoryToMicromapInfoEXT): VkResult {.stdcall.} - vkCmdWriteMicromapsPropertiesEXT*: proc (commandBuffer: VkCommandBuffer, micromapCount: uint32, pMicromaps: ptr VkMicromapEXT, queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.stdcall.} + vkCmdWriteMicromapsPropertiesEXT*: proc (commandBuffer: VkCommandBuffer, micromapCount: uint32, pMicromaps: ptr VkMicromapEXT, queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32) {.stdcall.} vkWriteMicromapsPropertiesEXT*: proc (device: VkDevice, micromapCount: uint32, pMicromaps: ptr VkMicromapEXT, queryType: VkQueryType, dataSize: uint, pData: pointer, stride: uint): VkResult {.stdcall.} - vkGetDeviceMicromapCompatibilityEXT*: proc (device: VkDevice, pVersionInfo: ptr VkMicromapVersionInfoEXT, pCompatibility: ptr VkAccelerationStructureCompatibilityKHR): void {.stdcall.} - vkGetMicromapBuildSizesEXT*: proc (device: VkDevice, buildType: VkAccelerationStructureBuildTypeKHR, pBuildInfo: ptr VkMicromapBuildInfoEXT, pSizeInfo: ptr VkMicromapBuildSizesInfoEXT): void {.stdcall.} - vkGetShaderModuleIdentifierEXT*: proc (device: VkDevice, shaderModule: VkShaderModule, pIdentifier: ptr VkShaderModuleIdentifierEXT): void {.stdcall.} - vkGetShaderModuleCreateInfoIdentifierEXT*: proc (device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo, pIdentifier: ptr VkShaderModuleIdentifierEXT): void {.stdcall.} - vkGetImageSubresourceLayout2KHR*: proc (device: VkDevice, image: VkImage, pSubresource: ptr VkImageSubresource2KHR, pLayout: ptr VkSubresourceLayout2KHR): void {.stdcall.} + vkGetDeviceMicromapCompatibilityEXT*: proc (device: VkDevice, pVersionInfo: ptr VkMicromapVersionInfoEXT, pCompatibility: ptr VkAccelerationStructureCompatibilityKHR) {.stdcall.} + vkGetMicromapBuildSizesEXT*: proc (device: VkDevice, buildType: VkAccelerationStructureBuildTypeKHR, pBuildInfo: ptr VkMicromapBuildInfoEXT, pSizeInfo: ptr VkMicromapBuildSizesInfoEXT) {.stdcall.} + vkGetShaderModuleIdentifierEXT*: proc (device: VkDevice, shaderModule: VkShaderModule, pIdentifier: ptr VkShaderModuleIdentifierEXT) {.stdcall.} + vkGetShaderModuleCreateInfoIdentifierEXT*: proc (device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo, pIdentifier: ptr VkShaderModuleIdentifierEXT) {.stdcall.} + vkGetImageSubresourceLayout2KHR*: proc (device: VkDevice, image: VkImage, pSubresource: ptr VkImageSubresource2KHR, pLayout: ptr VkSubresourceLayout2KHR) {.stdcall.} vkGetPipelinePropertiesEXT*: proc (device: VkDevice, pPipelineInfo: ptr VkPipelineInfoEXT, pPipelineProperties: ptr VkBaseOutStructure): VkResult {.stdcall.} - vkExportMetalObjectsEXT*: proc (device: VkDevice, pMetalObjectsInfo: ptr VkExportMetalObjectsInfoEXT): void {.stdcall.} + vkExportMetalObjectsEXT*: proc (device: VkDevice, pMetalObjectsInfo: ptr VkExportMetalObjectsInfoEXT) {.stdcall.} vkGetFramebufferTilePropertiesQCOM*: proc (device: VkDevice, framebuffer: VkFramebuffer, pPropertiesCount: ptr uint32, pProperties: ptr VkTilePropertiesQCOM): VkResult {.stdcall.} vkGetDynamicRenderingTilePropertiesQCOM*: proc (device: VkDevice, pRenderingInfo: ptr VkRenderingInfo, pProperties: ptr VkTilePropertiesQCOM): VkResult {.stdcall.} vkGetPhysicalDeviceOpticalFlowImageFormatsNV*: proc (physicalDevice: VkPhysicalDevice, pOpticalFlowImageFormatInfo: ptr VkOpticalFlowImageFormatInfoNV, pFormatCount: ptr uint32, pImageFormatProperties: ptr VkOpticalFlowImageFormatPropertiesNV): VkResult {.stdcall.} vkCreateOpticalFlowSessionNV*: proc (device: VkDevice, pCreateInfo: ptr VkOpticalFlowSessionCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pSession: ptr VkOpticalFlowSessionNV): VkResult {.stdcall.} - vkDestroyOpticalFlowSessionNV*: proc (device: VkDevice, session: VkOpticalFlowSessionNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyOpticalFlowSessionNV*: proc (device: VkDevice, session: VkOpticalFlowSessionNV, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkBindOpticalFlowSessionImageNV*: proc (device: VkDevice, session: VkOpticalFlowSessionNV, bindingPoint: VkOpticalFlowSessionBindingPointNV, view: VkImageView, layout: VkImageLayout): VkResult {.stdcall.} - vkCmdOpticalFlowExecuteNV*: proc (commandBuffer: VkCommandBuffer, session: VkOpticalFlowSessionNV, pExecuteInfo: ptr VkOpticalFlowExecuteInfoNV): void {.stdcall.} + vkCmdOpticalFlowExecuteNV*: proc (commandBuffer: VkCommandBuffer, session: VkOpticalFlowSessionNV, pExecuteInfo: ptr VkOpticalFlowExecuteInfoNV) {.stdcall.} vkGetDeviceFaultInfoEXT*: proc (device: VkDevice, pFaultCounts: ptr VkDeviceFaultCountsEXT, pFaultInfo: ptr VkDeviceFaultInfoEXT): VkResult {.stdcall.} - vkCmdSetDepthBias2EXT*: proc (commandBuffer: VkCommandBuffer, pDepthBiasInfo: ptr VkDepthBiasInfoEXT): void {.stdcall.} + vkCmdSetDepthBias2EXT*: proc (commandBuffer: VkCommandBuffer, pDepthBiasInfo: ptr VkDepthBiasInfoEXT) {.stdcall.} vkReleaseSwapchainImagesEXT*: proc (device: VkDevice, pReleaseInfo: ptr VkReleaseSwapchainImagesInfoEXT): VkResult {.stdcall.} - vkGetDeviceImageSubresourceLayoutKHR*: proc (device: VkDevice, pInfo: ptr VkDeviceImageSubresourceInfoKHR, pLayout: ptr VkSubresourceLayout2KHR): void {.stdcall.} + vkGetDeviceImageSubresourceLayoutKHR*: proc (device: VkDevice, pInfo: ptr VkDeviceImageSubresourceInfoKHR, pLayout: ptr VkSubresourceLayout2KHR) {.stdcall.} vkMapMemory2KHR*: proc (device: VkDevice, pMemoryMapInfo: ptr VkMemoryMapInfoKHR, ppData: ptr pointer): VkResult {.stdcall.} vkUnmapMemory2KHR*: proc (device: VkDevice, pMemoryUnmapInfo: ptr VkMemoryUnmapInfoKHR): VkResult {.stdcall.} vkCreateShadersEXT*: proc (device: VkDevice, createInfoCount: uint32, pCreateInfos: ptr VkShaderCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pShaders: ptr VkShaderEXT): VkResult {.stdcall.} - vkDestroyShaderEXT*: proc (device: VkDevice, shader: VkShaderEXT, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.} + vkDestroyShaderEXT*: proc (device: VkDevice, shader: VkShaderEXT, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkGetShaderBinaryDataEXT*: proc (device: VkDevice, shader: VkShaderEXT, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.} - vkCmdBindShadersEXT*: proc (commandBuffer: VkCommandBuffer, stageCount: uint32, pStages: ptr VkShaderStageFlagBits, pShaders: ptr VkShaderEXT): void {.stdcall.} + vkCmdBindShadersEXT*: proc (commandBuffer: VkCommandBuffer, stageCount: uint32, pStages: ptr VkShaderStageFlagBits, pShaders: ptr VkShaderEXT) {.stdcall.} vkGetScreenBufferPropertiesQNX*: proc (device: VkDevice, buffer: ptr screen_buffer, pProperties: ptr VkScreenBufferPropertiesQNX): VkResult {.stdcall.} vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR*: proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkCooperativeMatrixPropertiesKHR): VkResult {.stdcall.} vkGetExecutionGraphPipelineScratchSizeAMDX*: proc (device: VkDevice, executionGraph: VkPipeline, pSizeInfo: ptr VkExecutionGraphPipelineScratchSizeAMDX): VkResult {.stdcall.} vkGetExecutionGraphPipelineNodeIndexAMDX*: proc (device: VkDevice, executionGraph: VkPipeline, pNodeInfo: ptr VkPipelineShaderStageNodeCreateInfoAMDX, pNodeIndex: ptr uint32): VkResult {.stdcall.} vkCreateExecutionGraphPipelinesAMDX*: proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkExecutionGraphPipelineCreateInfoAMDX, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} - vkCmdInitializeGraphScratchMemoryAMDX*: proc (commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress): void {.stdcall.} - vkCmdDispatchGraphAMDX*: proc (commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, pCountInfo: ptr VkDispatchGraphCountInfoAMDX): void {.stdcall.} - vkCmdDispatchGraphIndirectAMDX*: proc (commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, pCountInfo: ptr VkDispatchGraphCountInfoAMDX): void {.stdcall.} - vkCmdDispatchGraphIndirectCountAMDX*: proc (commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, countInfo: VkDeviceAddress): void {.stdcall.} - vkCmdBindDescriptorSets2KHR*: proc (commandBuffer: VkCommandBuffer, pBindDescriptorSetsInfo: ptr VkBindDescriptorSetsInfoKHR): void {.stdcall.} - vkCmdPushConstants2KHR*: proc (commandBuffer: VkCommandBuffer, pPushConstantsInfo: ptr VkPushConstantsInfoKHR): void {.stdcall.} - vkCmdPushDescriptorSet2KHR*: proc (commandBuffer: VkCommandBuffer, pPushDescriptorSetInfo: ptr VkPushDescriptorSetInfoKHR): void {.stdcall.} - vkCmdPushDescriptorSetWithTemplate2KHR*: proc (commandBuffer: VkCommandBuffer, pPushDescriptorSetWithTemplateInfo: ptr VkPushDescriptorSetWithTemplateInfoKHR): void {.stdcall.} - vkCmdSetDescriptorBufferOffsets2EXT*: proc (commandBuffer: VkCommandBuffer, pSetDescriptorBufferOffsetsInfo: ptr VkSetDescriptorBufferOffsetsInfoEXT): void {.stdcall.} - vkCmdBindDescriptorBufferEmbeddedSamplers2EXT*: proc (commandBuffer: VkCommandBuffer, pBindDescriptorBufferEmbeddedSamplersInfo: ptr VkBindDescriptorBufferEmbeddedSamplersInfoEXT): void {.stdcall.} + vkCmdInitializeGraphScratchMemoryAMDX*: proc (commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress) {.stdcall.} + vkCmdDispatchGraphAMDX*: proc (commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, pCountInfo: ptr VkDispatchGraphCountInfoAMDX) {.stdcall.} + vkCmdDispatchGraphIndirectAMDX*: proc (commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, pCountInfo: ptr VkDispatchGraphCountInfoAMDX) {.stdcall.} + vkCmdDispatchGraphIndirectCountAMDX*: proc (commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, countInfo: VkDeviceAddress) {.stdcall.} + vkCmdBindDescriptorSets2KHR*: proc (commandBuffer: VkCommandBuffer, pBindDescriptorSetsInfo: ptr VkBindDescriptorSetsInfoKHR) {.stdcall.} + vkCmdPushConstants2KHR*: proc (commandBuffer: VkCommandBuffer, pPushConstantsInfo: ptr VkPushConstantsInfoKHR) {.stdcall.} + vkCmdPushDescriptorSet2KHR*: proc (commandBuffer: VkCommandBuffer, pPushDescriptorSetInfo: ptr VkPushDescriptorSetInfoKHR) {.stdcall.} + vkCmdPushDescriptorSetWithTemplate2KHR*: proc (commandBuffer: VkCommandBuffer, pPushDescriptorSetWithTemplateInfo: ptr VkPushDescriptorSetWithTemplateInfoKHR) {.stdcall.} + vkCmdSetDescriptorBufferOffsets2EXT*: proc (commandBuffer: VkCommandBuffer, pSetDescriptorBufferOffsetsInfo: ptr VkSetDescriptorBufferOffsetsInfoEXT) {.stdcall.} + vkCmdBindDescriptorBufferEmbeddedSamplers2EXT*: proc (commandBuffer: VkCommandBuffer, pBindDescriptorBufferEmbeddedSamplersInfo: ptr VkBindDescriptorBufferEmbeddedSamplersInfoEXT) {.stdcall.} vkSetLatencySleepModeNV*: proc (device: VkDevice, swapchain: VkSwapchainKHR, pSleepModeInfo: ptr VkLatencySleepModeInfoNV): VkResult {.stdcall.} vkLatencySleepNV*: proc (device: VkDevice, swapchain: VkSwapchainKHR, pSleepInfo: ptr VkLatencySleepInfoNV): VkResult {.stdcall.} - vkSetLatencyMarkerNV*: proc (device: VkDevice, swapchain: VkSwapchainKHR, pLatencyMarkerInfo: ptr VkSetLatencyMarkerInfoNV): void {.stdcall.} - vkGetLatencyTimingsNV*: proc (device: VkDevice, swapchain: VkSwapchainKHR, pLatencyMarkerInfo: ptr VkGetLatencyMarkerInfoNV): void {.stdcall.} - vkQueueNotifyOutOfBandNV*: proc (queue: VkQueue, pQueueTypeInfo: ptr VkOutOfBandQueueTypeInfoNV): void {.stdcall.} - vkCmdSetRenderingAttachmentLocationsKHR*: proc (commandBuffer: VkCommandBuffer, pLocationInfo: ptr VkRenderingAttachmentLocationInfoKHR): void {.stdcall.} - vkCmdSetRenderingInputAttachmentIndicesKHR*: proc (commandBuffer: VkCommandBuffer, pLocationInfo: ptr VkRenderingInputAttachmentIndexInfoKHR): void {.stdcall.} + vkSetLatencyMarkerNV*: proc (device: VkDevice, swapchain: VkSwapchainKHR, pLatencyMarkerInfo: ptr VkSetLatencyMarkerInfoNV) {.stdcall.} + vkGetLatencyTimingsNV*: proc (device: VkDevice, swapchain: VkSwapchainKHR, pLatencyMarkerInfo: ptr VkGetLatencyMarkerInfoNV) {.stdcall.} + vkQueueNotifyOutOfBandNV*: proc (queue: VkQueue, pQueueTypeInfo: ptr VkOutOfBandQueueTypeInfoNV) {.stdcall.} + vkCmdSetRenderingAttachmentLocationsKHR*: proc (commandBuffer: VkCommandBuffer, pLocationInfo: ptr VkRenderingAttachmentLocationInfoKHR) {.stdcall.} + vkCmdSetRenderingInputAttachmentIndicesKHR*: proc (commandBuffer: VkCommandBuffer, pLocationInfo: ptr VkRenderingInputAttachmentIndexInfoKHR) {.stdcall.} # Vulkan 1_0 proc vkLoad1_0*() = diff --git a/tools/generator.nim b/tools/generator.nim index ac287bc..a909e8a 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -137,6 +137,7 @@ proc genTypes(node: XmlNode, output: var string) = if t.child("type") != nil: var bType = t.child("type").innerText bType = bType.translateType() + if name == "VkRemoteAddressNV": bType = "pointer" output.add(" {name}* = distinct {bType}\n".fmt) continue @@ -184,6 +185,7 @@ proc genTypes(node: XmlNode, output: var string) = # We are only outputting aliased enums here # The real enums are implemented below if alias != "": + if alias == "VkPrivateDataSlotCreateFlagBits": continue output.add(" {name}* = {alias}\n".fmt) continue @@ -433,7 +435,10 @@ proc genProcs(node: XmlNode, output: var string) = if not output.endsWith('('): output.add(", ") output.add("{arg.name}: {arg.argType}".fmt) - output.add("): {vkProc.rval} {{.stdcall.}}\n".fmt) + if vkProc.rval == "void": + output.add(") {.stdcall.}\n") + else: + output.add("): {vkProc.rval} {{.stdcall.}}\n".fmt) proc genFeatures(node: XmlNode, output: var string) = echo "Generating and Adding Features..." diff --git a/tools/utils.nim b/tools/utils.nim index ed93ba4..b232a04 100644 --- a/tools/utils.nim +++ b/tools/utils.nim @@ -44,9 +44,15 @@ proc setVKGetProc*(getProc: proc (procName: cstring): pointer {.cdecl.}) = type VkHandle* = uint VkNonDispatchableHandle* = uint - ANativeWindow = ptr object - CAMetalLayer = ptr object - AHardwareBuffer = ptr object + ANativeWindow* = object + AHardwareBuffer* = object + CAMetalLayer* = object + MTLDevice_id* = object + MTLCommandQueue_id* = object + MTLBuffer_id* = object + MTLTexture_id* = object + MTLSharedEvent_id* = object + IOSurfaceRef* = object """ const vkInit* = """ From c31b486f10ff03c7884a1f5fa65454a5da2d5c5a Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Mon, 29 Apr 2024 20:51:38 +0300 Subject: [PATCH 18/57] make it compile --- src/vulkan.nim | 196 ++++++++++++++++++++++---------------------- tools/generator.nim | 2 +- 2 files changed, 99 insertions(+), 99 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 6b130a9..d81ef0f 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -1996,35 +1996,35 @@ type # Types type - Display* {.header: "X11/Xlib.h".} = object - VisualID* {.header: "X11/Xlib.h".} = object - Window* {.header: "X11/Xlib.h".} = object - RROutput* {.header: "X11/extensions/Xrandr.h".} = object - wl_display* {.header: "wayland-client.h".} = object - wl_surface* {.header: "wayland-client.h".} = object - HINSTANCE* {.header: "windows.h".} = object - HWND* {.header: "windows.h".} = object - HMONITOR* {.header: "windows.h".} = object - HANDLE* {.header: "windows.h".} = object - SECURITY_ATTRIBUTES* {.header: "windows.h".} = object - DWORD* {.header: "windows.h".} = object - LPCWSTR* {.header: "windows.h".} = object - xcb_connection_t* {.header: "xcb/xcb.h".} = object - xcb_visualid_t* {.header: "xcb/xcb.h".} = object - xcb_window_t* {.header: "xcb/xcb.h".} = object - IDirectFB* {.header: "directfb.h".} = object - IDirectFBSurface* {.header: "directfb.h".} = object - zx_handle_t* {.header: "zircon/types.h".} = object - GgpStreamDescriptor* {.header: "ggp_c/vulkan_types.h".} = object - GgpFrameToken* {.header: "ggp_c/vulkan_types.h".} = object - screen_context* {.header: "screen/screen.h".} = object - screen_window* {.header: "screen/screen.h".} = object - screen_buffer* {.header: "screen/screen.h".} = object - NvSciSyncAttrList* {.header: "nvscisync.h".} = object - NvSciSyncObj* {.header: "nvscisync.h".} = object - NvSciSyncFence* {.header: "nvscisync.h".} = object - NvSciBufAttrList* {.header: "nvscibuf.h".} = object - NvSciBufObj* {.header: "nvscibuf.h".} = object + Display* {.nodecl.} = object + VisualID* {.nodecl.} = object + Window* {.nodecl.} = object + RROutput* {.nodecl.} = object + wl_display* {.nodecl.} = object + wl_surface* {.nodecl.} = object + HINSTANCE* {.nodecl.} = object + HWND* {.nodecl.} = object + HMONITOR* {.nodecl.} = object + HANDLE* {.nodecl.} = object + SECURITY_ATTRIBUTES* {.nodecl.} = object + DWORD* {.nodecl.} = object + LPCWSTR* {.nodecl.} = object + xcb_connection_t* {.nodecl.} = object + xcb_visualid_t* {.nodecl.} = object + xcb_window_t* {.nodecl.} = object + IDirectFB* {.nodecl.} = object + IDirectFBSurface* {.nodecl.} = object + zx_handle_t* {.nodecl.} = object + GgpStreamDescriptor* {.nodecl.} = object + GgpFrameToken* {.nodecl.} = object + screen_context* {.nodecl.} = object + screen_window* {.nodecl.} = object + screen_buffer* {.nodecl.} = object + NvSciSyncAttrList* {.nodecl.} = object + NvSciSyncObj* {.nodecl.} = object + NvSciSyncFence* {.nodecl.} = object + NvSciBufAttrList* {.nodecl.} = object + NvSciBufObj* {.nodecl.} = object template vkMakeVersion*(variant, major, minor, patch: untyped): untyped = (variant shl 29) or (major shl 22) or (minor shl 12) or patch @@ -8280,28 +8280,28 @@ type queryPool*: VkQueryPool firstQuery*: uint32 queryCount*: uint32 - StdVideoH264ProfileIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object - StdVideoH264LevelIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object - StdVideoH264ChromaFormatIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object - StdVideoH264PocType* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object - StdVideoH264SpsFlags* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object - StdVideoH264ScalingLists* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object - StdVideoH264SequenceParameterSetVui* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object - StdVideoH264AspectRatioIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object - StdVideoH264HrdParameters* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object - StdVideoH264SpsVuiFlags* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object - StdVideoH264WeightedBipredIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object - StdVideoH264PpsFlags* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object - StdVideoH264SliceType* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object - StdVideoH264CabacInitIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object - StdVideoH264DisableDeblockingFilterIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object - StdVideoH264PictureType* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object - StdVideoH264ModificationOfPicNumsIdc* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object - StdVideoH264MemMgmtControlOp* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object - StdVideoDecodeH264PictureInfo* {.header: "vk_video/vulkan_video_codec_h264std_decode.h".} = object - StdVideoDecodeH264ReferenceInfo* {.header: "vk_video/vulkan_video_codec_h264std_decode.h".} = object - StdVideoDecodeH264PictureInfoFlags* {.header: "vk_video/vulkan_video_codec_h264std_decode.h".} = object - StdVideoDecodeH264ReferenceInfoFlags* {.header: "vk_video/vulkan_video_codec_h264std_decode.h".} = object + StdVideoH264ProfileIdc* {.nodecl.} = object + StdVideoH264LevelIdc* {.nodecl.} = object + StdVideoH264ChromaFormatIdc* {.nodecl.} = object + StdVideoH264PocType* {.nodecl.} = object + StdVideoH264SpsFlags* {.nodecl.} = object + StdVideoH264ScalingLists* {.nodecl.} = object + StdVideoH264SequenceParameterSetVui* {.nodecl.} = object + StdVideoH264AspectRatioIdc* {.nodecl.} = object + StdVideoH264HrdParameters* {.nodecl.} = object + StdVideoH264SpsVuiFlags* {.nodecl.} = object + StdVideoH264WeightedBipredIdc* {.nodecl.} = object + StdVideoH264PpsFlags* {.nodecl.} = object + StdVideoH264SliceType* {.nodecl.} = object + StdVideoH264CabacInitIdc* {.nodecl.} = object + StdVideoH264DisableDeblockingFilterIdc* {.nodecl.} = object + StdVideoH264PictureType* {.nodecl.} = object + StdVideoH264ModificationOfPicNumsIdc* {.nodecl.} = object + StdVideoH264MemMgmtControlOp* {.nodecl.} = object + StdVideoDecodeH264PictureInfo* {.nodecl.} = object + StdVideoDecodeH264ReferenceInfo* {.nodecl.} = object + StdVideoDecodeH264PictureInfoFlags* {.nodecl.} = object + StdVideoDecodeH264ReferenceInfoFlags* {.nodecl.} = object VkVideoDecodeH264ProfileInfoKHR* = object sType*: VkStructureType @@ -8314,8 +8314,8 @@ type pNext*: pointer maxLevelIdc*: StdVideoH264LevelIdc fieldOffsetGranularity*: VkOffset2D - StdVideoH264SequenceParameterSet* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object - StdVideoH264PictureParameterSet* {.header: "vk_video/vulkan_video_codec_h264std.h".} = object + StdVideoH264SequenceParameterSet* {.nodecl.} = object + StdVideoH264PictureParameterSet* {.nodecl.} = object VkVideoDecodeH264SessionParametersAddInfoKHR* = object sType*: VkStructureType @@ -8343,28 +8343,28 @@ type sType*: VkStructureType pNext*: pointer pStdReferenceInfo*: ptr StdVideoDecodeH264ReferenceInfo - StdVideoH265ProfileIdc* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object - StdVideoH265VideoParameterSet* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object - StdVideoH265SequenceParameterSet* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object - StdVideoH265PictureParameterSet* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object - StdVideoH265DecPicBufMgr* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object - StdVideoH265HrdParameters* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object - StdVideoH265VpsFlags* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object - StdVideoH265LevelIdc* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object - StdVideoH265SpsFlags* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object - StdVideoH265ScalingLists* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object - StdVideoH265SequenceParameterSetVui* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object - StdVideoH265PredictorPaletteEntries* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object - StdVideoH265PpsFlags* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object - StdVideoH265SubLayerHrdParameters* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object - StdVideoH265HrdFlags* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object - StdVideoH265SpsVuiFlags* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object - StdVideoH265SliceType* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object - StdVideoH265PictureType* {.header: "vk_video/vulkan_video_codec_h265std.h".} = object - StdVideoDecodeH265PictureInfo* {.header: "vk_video/vulkan_video_codec_h265std_decode.h".} = object - StdVideoDecodeH265ReferenceInfo* {.header: "vk_video/vulkan_video_codec_h265std_decode.h".} = object - StdVideoDecodeH265PictureInfoFlags* {.header: "vk_video/vulkan_video_codec_h265std_decode.h".} = object - StdVideoDecodeH265ReferenceInfoFlags* {.header: "vk_video/vulkan_video_codec_h265std_decode.h".} = object + StdVideoH265ProfileIdc* {.nodecl.} = object + StdVideoH265VideoParameterSet* {.nodecl.} = object + StdVideoH265SequenceParameterSet* {.nodecl.} = object + StdVideoH265PictureParameterSet* {.nodecl.} = object + StdVideoH265DecPicBufMgr* {.nodecl.} = object + StdVideoH265HrdParameters* {.nodecl.} = object + StdVideoH265VpsFlags* {.nodecl.} = object + StdVideoH265LevelIdc* {.nodecl.} = object + StdVideoH265SpsFlags* {.nodecl.} = object + StdVideoH265ScalingLists* {.nodecl.} = object + StdVideoH265SequenceParameterSetVui* {.nodecl.} = object + StdVideoH265PredictorPaletteEntries* {.nodecl.} = object + StdVideoH265PpsFlags* {.nodecl.} = object + StdVideoH265SubLayerHrdParameters* {.nodecl.} = object + StdVideoH265HrdFlags* {.nodecl.} = object + StdVideoH265SpsVuiFlags* {.nodecl.} = object + StdVideoH265SliceType* {.nodecl.} = object + StdVideoH265PictureType* {.nodecl.} = object + StdVideoDecodeH265PictureInfo* {.nodecl.} = object + StdVideoDecodeH265ReferenceInfo* {.nodecl.} = object + StdVideoDecodeH265PictureInfoFlags* {.nodecl.} = object + StdVideoDecodeH265ReferenceInfoFlags* {.nodecl.} = object VkVideoDecodeH265ProfileInfoKHR* = object sType*: VkStructureType @@ -8405,11 +8405,11 @@ type sType*: VkStructureType pNext*: pointer pStdReferenceInfo*: ptr StdVideoDecodeH265ReferenceInfo - StdVideoAV1Profile* {.header: "vk_video/vulkan_video_codec_av1std.h".} = object - StdVideoAV1Level* {.header: "vk_video/vulkan_video_codec_av1std.h".} = object - StdVideoAV1SequenceHeader* {.header: "vk_video/vulkan_video_codec_av1std.h".} = object - StdVideoDecodeAV1PictureInfo* {.header: "vk_video/vulkan_video_codec_av1std_decode.h".} = object - StdVideoDecodeAV1ReferenceInfo* {.header: "vk_video/vulkan_video_codec_av1std_decode.h".} = object + StdVideoAV1Profile* {.nodecl.} = object + StdVideoAV1Level* {.nodecl.} = object + StdVideoAV1SequenceHeader* {.nodecl.} = object + StdVideoDecodeAV1PictureInfo* {.nodecl.} = object + StdVideoDecodeAV1ReferenceInfo* {.nodecl.} = object VkVideoDecodeAV1ProfileInfoKHR* = object sType*: VkStructureType @@ -8596,16 +8596,16 @@ type preferredMaxL0ReferenceCount*: uint32 preferredMaxL1ReferenceCount*: uint32 preferredStdEntropyCodingModeFlag*: VkBool32 - StdVideoEncodeH264SliceHeader* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = object - StdVideoEncodeH264PictureInfo* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = object - StdVideoEncodeH264ReferenceInfo* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = object - StdVideoEncodeH264SliceHeaderFlags* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = object - StdVideoEncodeH264ReferenceListsInfo* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = object - StdVideoEncodeH264PictureInfoFlags* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = object - StdVideoEncodeH264ReferenceInfoFlags* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = object - StdVideoEncodeH264RefMgmtFlags* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = object - StdVideoEncodeH264RefListModEntry* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = object - StdVideoEncodeH264RefPicMarkingEntry* {.header: "vk_video/vulkan_video_codec_h264std_encode.h".} = object + StdVideoEncodeH264SliceHeader* {.nodecl.} = object + StdVideoEncodeH264PictureInfo* {.nodecl.} = object + StdVideoEncodeH264ReferenceInfo* {.nodecl.} = object + StdVideoEncodeH264SliceHeaderFlags* {.nodecl.} = object + StdVideoEncodeH264ReferenceListsInfo* {.nodecl.} = object + StdVideoEncodeH264PictureInfoFlags* {.nodecl.} = object + StdVideoEncodeH264ReferenceInfoFlags* {.nodecl.} = object + StdVideoEncodeH264RefMgmtFlags* {.nodecl.} = object + StdVideoEncodeH264RefListModEntry* {.nodecl.} = object + StdVideoEncodeH264RefPicMarkingEntry* {.nodecl.} = object VkVideoEncodeH264SessionCreateInfoKHR* = object sType*: VkStructureType @@ -8734,14 +8734,14 @@ type preferredConstantQp*: VkVideoEncodeH265QpKHR preferredMaxL0ReferenceCount*: uint32 preferredMaxL1ReferenceCount*: uint32 - StdVideoEncodeH265PictureInfoFlags* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = object - StdVideoEncodeH265PictureInfo* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = object - StdVideoEncodeH265SliceSegmentHeader* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = object - StdVideoEncodeH265ReferenceInfo* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = object - StdVideoEncodeH265ReferenceListsInfo* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = object - StdVideoEncodeH265SliceSegmentHeaderFlags* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = object - StdVideoEncodeH265ReferenceInfoFlags* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = object - StdVideoEncodeH265ReferenceModificationFlags* {.header: "vk_video/vulkan_video_codec_h265std_encode.h".} = object + StdVideoEncodeH265PictureInfoFlags* {.nodecl.} = object + StdVideoEncodeH265PictureInfo* {.nodecl.} = object + StdVideoEncodeH265SliceSegmentHeader* {.nodecl.} = object + StdVideoEncodeH265ReferenceInfo* {.nodecl.} = object + StdVideoEncodeH265ReferenceListsInfo* {.nodecl.} = object + StdVideoEncodeH265SliceSegmentHeaderFlags* {.nodecl.} = object + StdVideoEncodeH265ReferenceInfoFlags* {.nodecl.} = object + StdVideoEncodeH265ReferenceModificationFlags* {.nodecl.} = object VkVideoEncodeH265SessionCreateInfoKHR* = object sType*: VkStructureType diff --git a/tools/generator.nim b/tools/generator.nim index a909e8a..5c49ad7 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -89,7 +89,7 @@ proc genTypes(node: XmlNode, output: var string) = inType = true var name = t.attr("name") if name.startsWith('_'): name = name.substr(1) - output.add(" {name}* {{.header: \"{t.attr(\"requires\")}\".}} = object\n".fmt) + output.add(" {name}* {{.nodecl.}} = object\n".fmt) # Define category From dbb612a9254dfa3b7143b5827346e8d29f677f42 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Mon, 29 Apr 2024 20:55:43 +0300 Subject: [PATCH 19/57] remove .fmt --- tools/generator.nim | 86 ++++++++++++++++++++++----------------------- 1 file changed, 43 insertions(+), 43 deletions(-) diff --git a/tools/generator.nim b/tools/generator.nim index 5c49ad7..6bae678 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -89,7 +89,7 @@ proc genTypes(node: XmlNode, output: var string) = inType = true var name = t.attr("name") if name.startsWith('_'): name = name.substr(1) - output.add(" {name}* {{.nodecl.}} = object\n".fmt) + output.add(&" {name}* {{.nodecl.}} = object\n") # Define category @@ -124,7 +124,7 @@ proc genTypes(node: XmlNode, output: var string) = elif name == "VK_API_VERSION_1_3": output.add("const vkApiVersion1_3* = vkMakeVersion(0, 1, 3, 0)\n") else: - echo "category:define not found {name}".fmt + echo &"category:define not found {name}" continue # Basetype category @@ -138,7 +138,7 @@ proc genTypes(node: XmlNode, output: var string) = var bType = t.child("type").innerText bType = bType.translateType() if name == "VkRemoteAddressNV": bType = "pointer" - output.add(" {name}* = distinct {bType}\n".fmt) + output.add(&" {name}* = distinct {bType}\n") continue # Bitmask category @@ -157,7 +157,7 @@ proc genTypes(node: XmlNode, output: var string) = bType = bType.translateType() if not alias: bType = "distinct " & bType - output.add(" {name}* = {bType}\n".fmt) + output.add(&" {name}* = {bType}\n") continue # Handle category @@ -174,7 +174,7 @@ proc genTypes(node: XmlNode, output: var string) = bType = bType.translateType() if not alias: bType = "distinct " & bType - output.add(" {name}* = {bType}\n".fmt) + output.add(&" {name}* = {bType}\n") continue # Enum category @@ -186,7 +186,7 @@ proc genTypes(node: XmlNode, output: var string) = # The real enums are implemented below if alias != "": if alias == "VkPrivateDataSlotCreateFlagBits": continue - output.add(" {name}* = {alias}\n".fmt) + output.add(&" {name}* = {alias}\n") continue # Funcpointer category @@ -216,7 +216,7 @@ proc genTypes(node: XmlNode, output: var string) = elif name == "PFN_vkDebugUtilsMessengerCallbackEXT": output.add(" PFN_vkDebugUtilsMessengerCallbackEXT* = proc (messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEXT, messageTypes: VkDebugUtilsMessageTypeFlagsEXT, pCallbackData: VkDebugUtilsMessengerCallbackDataEXT, userData: pointer): VkBool32 {.cdecl.}\n") else: - echo "category:funcpointer not found {name}".fmt + echo &"category:funcpointer not found {name}" continue # Struct category @@ -227,15 +227,15 @@ proc genTypes(node: XmlNode, output: var string) = vkStruct.name = name if t.attr("alias") != "": let val = t.attr("alias") - output.add("\n {name}* = {val}\n".fmt) + output.add(&"\n {name}* = {val}\n") continue - output.add("\n {name}* = object\n".fmt) + output.add(&"\n {name}* = object\n") for member in t.findAll("member"): if member.attr("api") == "vulkansc": continue var memberName = member.child("name").innerText if keywords.contains(memberName): - memberName = "`{memberName}`".fmt + memberName = &"`{memberName}`" var memberType = member.child("type").innerText memberType = memberType.translateType() var isArray = false @@ -262,12 +262,12 @@ proc genTypes(node: XmlNode, output: var string) = if not isArray: vkArg.argType = memberType else: - vkArg.argType = "array[{arraySize}, {memberType}]".fmt + vkArg.argType = &"array[{arraySize}, {memberType}]" vkStruct.members.add(vkArg) if not isArray: - output.add(" {memberName}*: {memberType}\n".fmt) + output.add(&" {memberName}*: {memberType}\n") else: - output.add(" {memberName}*: array[{arraySize}, {memberType}]\n".fmt) + output.add(&" {memberName}*: array[{arraySize}, {memberType}]\n") vkStructs.add(vkStruct) continue @@ -277,11 +277,11 @@ proc genTypes(node: XmlNode, output: var string) = let name = t.attr("name") if name == "VkBaseOutStructure" or name == "VkBaseInStructure": continue - output.add("\n {name}* {{.union.}} = object\n".fmt) + output.add(&"\n {name}* {{.union.}} = object\n") for member in t.findAll("member"): var memberName = member.child("name").innerText if keywords.contains(memberName): - memberName = "`{memberName}`".fmt + memberName = &"`{memberName}`" var memberType = member.child("type").innerText var isArray = false var arraySize = "0" @@ -299,9 +299,9 @@ proc genTypes(node: XmlNode, output: var string) = memberType = "ptr " & memberType memberType = memberType.translateType() if not isArray: - output.add(" {memberName}*: {memberType}\n".fmt) + output.add(&" {memberName}*: {memberType}\n") else: - output.add(" {memberName}*: array[{arraySize}, {memberType}]\n".fmt) + output.add(&" {memberName}*: array[{arraySize}, {memberType}]\n") continue proc genEnums(node: XmlNode, output: var string) = @@ -335,7 +335,7 @@ proc genEnums(node: XmlNode, output: var string) = enumValue = "VK_QUEUE_FAMILY_EXTERNAL" elif enumName == "VK_MAX_DEVICE_GROUP_SIZE_KHR": enumValue = "VK_MAX_DEVICE_GROUP_SIZE" - output.add(" {enumName}* = {enumValue}\n".fmt) + output.add(&" {enumName}* = {enumValue}\n") continue if not inType: output.add("\ntype\n") @@ -366,7 +366,7 @@ proc genEnums(node: XmlNode, output: var string) = elements.add(enumValue, enumName) if elements.len == 0: continue - output.add(" {name}* {{.size: sizeof(int32).}} = enum\n".fmt) + output.add(&" {name}* {{.size: sizeof(int32).}} = enum\n") elements.sort(system.cmp) var prev = -1 for enumValue, tmp in elements.pairs: @@ -383,9 +383,9 @@ proc genEnums(node: XmlNode, output: var string) = if name == "VkStructureType": vkStructureTypes.add(enumName) if prev + 1 != enumValue: - output.add(" {enumName} = {enumValue}\n".fmt) + output.add(&" {enumName} = {enumValue}\n") else: - output.add(" {enumName}\n".fmt) + output.add(&" {enumName}\n") prev = enumValue output.add("\n") @@ -421,42 +421,42 @@ proc genProcs(node: XmlNode, output: var string) = let arraySize = vkArg.argType[openBracket + 1 ..< vkArg.argType.find(']')] var typeName = vkArg.argType[0.. Date: Mon, 29 Apr 2024 23:53:31 +0300 Subject: [PATCH 20/57] small improvement --- src/vulkan.nim | 4 ++-- tools/generator.nim | 10 +++++----- tools/utils.nim | 37 ++++++++++++++++++++++++++++--------- 3 files changed, 35 insertions(+), 16 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index d81ef0f..e86f38e 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -2036,10 +2036,10 @@ template vkVersionMajor*(version: untyped): untyped = uint32(version) shr 22 template vkVersionMinor*(version: untyped): untyped = - ((uint32(version) shr 12) and 0x000003FF) + (uint32(version) shr 12) and 0x000003FF template vkVersionPatch*(version: untyped): untyped = - (uint32(version) and 0x00000FFF) + uint32(version) and 0x00000FFF const vkApiVersion1_0* = vkMakeVersion(0, 1, 0, 0) const vkApiVersion1_1* = vkMakeVersion(0, 1, 1, 0) diff --git a/tools/generator.nim b/tools/generator.nim index 6bae678..0717b9b 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -111,10 +111,10 @@ proc genTypes(node: XmlNode, output: var string) = output.add(" uint32(version) shr 22\n") elif name == "VK_API_VERSION_MINOR": output.add("\ntemplate vkVersionMinor*(version: untyped): untyped =\n") - output.add(" ((uint32(version) shr 12) and 0x000003FF)\n") + output.add(" (uint32(version) shr 12) and 0x000003FF\n") elif name == "VK_API_VERSION_PATCH": output.add("\ntemplate vkVersionPatch*(version: untyped): untyped =\n") - output.add(" (uint32(version) and 0x00000FFF)\n") + output.add(" uint32(version) and 0x00000FFF\n") elif name == "VK_API_VERSION_1_0": output.add("\nconst vkApiVersion1_0* = vkMakeVersion(0, 1, 0, 0)\n") elif name == "VK_API_VERSION_1_1": @@ -234,7 +234,7 @@ proc genTypes(node: XmlNode, output: var string) = if member.attr("api") == "vulkansc": continue var memberName = member.child("name").innerText - if keywords.contains(memberName): + if isKeyword(memberName): memberName = &"`{memberName}`" var memberType = member.child("type").innerText memberType = memberType.translateType() @@ -280,7 +280,7 @@ proc genTypes(node: XmlNode, output: var string) = output.add(&"\n {name}* {{.union.}} = object\n") for member in t.findAll("member"): var memberName = member.child("name").innerText - if keywords.contains(memberName): + if isKeyword(memberName): memberName = &"`{memberName}`" var memberType = member.child("type").innerText var isArray = false @@ -426,7 +426,7 @@ proc genProcs(node: XmlNode, output: var string) = vkArg.argType = vkArg.argType[0 ..< vkArg.argType.len - vkArg.name.len] vkArg.argType = vkArg.argType.translateType().strip for part in vkArg.name.split(" "): - if keywords.contains(part): + if isKeyword(part): vkArg.name = &"`{vkArg.name}`" vkProc.args.add(vkArg) vkProcs.add(vkProc) diff --git a/tools/utils.nim b/tools/utils.nim index b232a04..8b569fa 100644 --- a/tools/utils.nim +++ b/tools/utils.nim @@ -1,6 +1,8 @@ # Written by Leonardo Mariscal , 2019 +import std/algorithm -const srcHeader* = """ +const + srcHeader* = """ # Written by Leonardo Mariscal , 2019 ## Vulkan Bindings @@ -55,7 +57,7 @@ type IOSurfaceRef* = object """ -const vkInit* = """ + vkInit* = """ var vkCreateInstance*: proc (pCreateInfo: ptr VkInstanceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pInstance: ptr VkInstance): VkResult {.stdcall.} vkEnumerateInstanceExtensionProperties*: proc (pLayerName: cstring, pPropertyCount: ptr uint32, pProperties: ptr VkExtensionProperties): VkResult {.stdcall.} @@ -82,10 +84,27 @@ proc vkInit*(instance: VkInstance, load1_0: bool = true, load1_1: bool = true): return true """ -let keywords* = ["addr", "and", "as", "asm", "bind", "block", "break", "case", "cast", "concept", - "const", "continue", "converter", "defer", "discard", "distinct", "div", "do", - "elif", "else", "end", "enum", "except", "export", "finally", "for", "from", "func", - "if", "import", "in", "include", "interface", "is", "isnot", "iterator", "let", - "macro", "method", "mixin", "mod", "nil", "not", "notin", "object", "of", "or", - "out", "proc", "ptr", "raise", "ref", "return", "shl", "shr", "static", "template", - "try", "tuple", "type", "using", "var", "when", "while", "xor", "yield"] + keywords = ["addr", "and", "as", "asm", + "bind", "block", "break", + "case", "cast", "concept", "const", "continue", "converter", + "defer", "discard", "distinct", "div", "do", + "elif", "else", "end", "enum", "except", "export", + "finally", "for", "from", "func", + "if", "import", "in", "include", "interface", "is", "isnot", "iterator", + "let", + "macro", "method", "mixin", "mod", + "nil", "not", "notin", + "object", "of", "or", "out", + "proc", "ptr", + "raise", "ref", "return", + "shl", "shr", "static", + "template", "try", "tuple", "type", + "using", + "var", + "when", "while", + "xor", + "yield"] + +proc isKeyword*(s: string): bool {.inline.} = + ## Checks if an indentifier is a Nim keyword + binarySearch(keywords, s) >= 0 From f517505bef7ba87f6f1334dc11337338fe3a988c Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Tue, 30 Apr 2024 00:13:58 +0300 Subject: [PATCH 21/57] improve --- src/vulkan.nim | 2 ++ tools/generator.nim | 25 ++++++++++++++----------- 2 files changed, 16 insertions(+), 11 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index e86f38e..440591f 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -2045,6 +2045,8 @@ const vkApiVersion1_0* = vkMakeVersion(0, 1, 0, 0) const vkApiVersion1_1* = vkMakeVersion(0, 1, 1, 0) const vkApiVersion1_2* = vkMakeVersion(0, 1, 2, 0) const vkApiVersion1_3* = vkMakeVersion(0, 1, 3, 0) +const vkHeaderVersion* = 279 +const vkHeaderVersionComplete* = vkMakeVersion(0, 1, 3, vkHeaderVersion) type VkSampleMask* = distinct uint32 diff --git a/tools/generator.nim b/tools/generator.nim index 0717b9b..f639143 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -123,6 +123,10 @@ proc genTypes(node: XmlNode, output: var string) = output.add("const vkApiVersion1_2* = vkMakeVersion(0, 1, 2, 0)\n") elif name == "VK_API_VERSION_1_3": output.add("const vkApiVersion1_3* = vkMakeVersion(0, 1, 3, 0)\n") + elif name == "VK_HEADER_VERSION": + output.add("const vkHeaderVersion* = 279\n") + elif name == "VK_HEADER_VERSION_COMPLETE": + output.add("const vkHeaderVersionComplete* = vkMakeVersion(0, 1, 3, vkHeaderVersion)\n") else: echo &"category:define not found {name}" continue @@ -347,6 +351,15 @@ proc genEnums(node: XmlNode, output: var string) = if e.attr("api") == "vulkansc" or e.attr("deprecated") != "": continue var enumName = e.attr("name") + enumName = camelCaseAscii(enumName) + var tmp = name + for suf in ["KHR", "EXT", "NV", "INTEL", "AMD", "MSFT", "QCOM", "ANDROID", "FlagBits", "FlagBits2"]: + tmp.removeSuffix(suf) + for suf in ["Khr", "Ext", "Nv", "Intel", "Amd", "Msft", "Qcom", "Android"]: + enumName.removeSuffix(suf) + enumName.removePrefix(tmp) + if enumName[0] in Digits: + enumName = "N" & enumName var enumValueStr = e.attr("value") if enumValueStr == "": if e.attr("bitpos") == "": @@ -369,17 +382,7 @@ proc genEnums(node: XmlNode, output: var string) = output.add(&" {name}* {{.size: sizeof(int32).}} = enum\n") elements.sort(system.cmp) var prev = -1 - for enumValue, tmp in elements.pairs: - var enumName = tmp - enumName = camelCaseAscii(enumName) - var tmp = name - for suf in ["KHR", "EXT", "NV", "INTEL", "AMD", "MSFT", "QCOM", "ANDROID", "FlagBits", "FlagBits2"]: - tmp.removeSuffix(suf) - for suf in ["Khr", "Ext", "Nv", "Intel", "Amd", "Msft", "Qcom", "Android"]: - enumName.removeSuffix(suf) - enumName.removePrefix(tmp) - if enumName[0] in Digits: - enumName = "N" & enumName + for enumValue, enumName in elements.pairs: if name == "VkStructureType": vkStructureTypes.add(enumName) if prev + 1 != enumValue: From c5042c5af38b919eb39deaf8e66fb58f9ecd14ff Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Tue, 30 Apr 2024 15:23:11 +0300 Subject: [PATCH 22/57] missed one suffix --- src/vulkan.nim | 4 ++-- tools/generator.nim | 10 +++++----- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 440591f..eae94c7 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -614,8 +614,8 @@ type Reorder VkDirectDriverLoadingModeLUNARG* {.size: sizeof(int32).} = enum - VkDirectDriverLoadingModeExclusiveLunarg - VkDirectDriverLoadingModeInclusiveLunarg + Exclusive + Inclusive VkQueueFlagBits* {.size: sizeof(int32).} = enum GraphicsBit = 1 diff --git a/tools/generator.nim b/tools/generator.nim index f639143..834983d 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -353,9 +353,9 @@ proc genEnums(node: XmlNode, output: var string) = var enumName = e.attr("name") enumName = camelCaseAscii(enumName) var tmp = name - for suf in ["KHR", "EXT", "NV", "INTEL", "AMD", "MSFT", "QCOM", "ANDROID", "FlagBits", "FlagBits2"]: + for suf in ["KHR", "EXT", "NV", "INTEL", "AMD", "MSFT", "QCOM", "ANDROID", "LUNARG", "FlagBits", "FlagBits2"]: tmp.removeSuffix(suf) - for suf in ["Khr", "Ext", "Nv", "Intel", "Amd", "Msft", "Qcom", "Android"]: + for suf in ["Khr", "Ext", "Nv", "Intel", "Amd", "Msft", "Qcom", "Android", "Lunarg"]: enumName.removeSuffix(suf) enumName.removePrefix(tmp) if enumName[0] in Digits: @@ -500,9 +500,9 @@ proc genConstructors(node: XmlNode, output: var string) = output.add(&" = 0.{m.argType}") if m.name == "sType": for structType in vkStructureTypes: - let tmp = s.name[2.. Date: Tue, 30 Apr 2024 15:41:05 +0300 Subject: [PATCH 23/57] no more void --- src/vulkan.nim | 732 ++++++++++++++++++++++---------------------- tools/generator.nim | 17 +- 2 files changed, 379 insertions(+), 370 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index eae94c7..dd41808 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -21141,180 +21141,180 @@ var # Vulkan 1_0 proc vkLoad1_0*() = - vkDestroyInstance = cast[proc (instance: VkInstance, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyInstance")) + vkDestroyInstance = cast[proc (instance: VkInstance, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyInstance")) vkEnumeratePhysicalDevices = cast[proc (instance: VkInstance, pPhysicalDeviceCount: ptr uint32, pPhysicalDevices: ptr VkPhysicalDevice): VkResult {.stdcall.}](vkGetProc("vkEnumeratePhysicalDevices")) - vkGetPhysicalDeviceFeatures = cast[proc (physicalDevice: VkPhysicalDevice, pFeatures: ptr VkPhysicalDeviceFeatures): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFeatures")) - vkGetPhysicalDeviceFormatProperties = cast[proc (physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: ptr VkFormatProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFormatProperties")) + vkGetPhysicalDeviceFeatures = cast[proc (physicalDevice: VkPhysicalDevice, pFeatures: ptr VkPhysicalDeviceFeatures) {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFeatures")) + vkGetPhysicalDeviceFormatProperties = cast[proc (physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: ptr VkFormatProperties) {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFormatProperties")) vkGetPhysicalDeviceImageFormatProperties = cast[proc (physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, tiling: VkImageTiling, usage: VkImageUsageFlags, flags: VkImageCreateFlags, pImageFormatProperties: ptr VkImageFormatProperties): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceImageFormatProperties")) - vkGetPhysicalDeviceProperties = cast[proc (physicalDevice: VkPhysicalDevice, pProperties: ptr VkPhysicalDeviceProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceProperties")) - vkGetPhysicalDeviceQueueFamilyProperties = cast[proc (physicalDevice: VkPhysicalDevice, pQueueFamilyPropertyCount: ptr uint32, pQueueFamilyProperties: ptr VkQueueFamilyProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceQueueFamilyProperties")) - vkGetPhysicalDeviceMemoryProperties = cast[proc (physicalDevice: VkPhysicalDevice, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceMemoryProperties")) + vkGetPhysicalDeviceProperties = cast[proc (physicalDevice: VkPhysicalDevice, pProperties: ptr VkPhysicalDeviceProperties) {.stdcall.}](vkGetProc("vkGetPhysicalDeviceProperties")) + vkGetPhysicalDeviceQueueFamilyProperties = cast[proc (physicalDevice: VkPhysicalDevice, pQueueFamilyPropertyCount: ptr uint32, pQueueFamilyProperties: ptr VkQueueFamilyProperties) {.stdcall.}](vkGetProc("vkGetPhysicalDeviceQueueFamilyProperties")) + vkGetPhysicalDeviceMemoryProperties = cast[proc (physicalDevice: VkPhysicalDevice, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties) {.stdcall.}](vkGetProc("vkGetPhysicalDeviceMemoryProperties")) vkGetInstanceProcAddr = cast[proc (instance: VkInstance, pName: cstring): PFN_vkVoidFunction {.stdcall.}](vkGetProc("vkGetInstanceProcAddr")) vkGetDeviceProcAddr = cast[proc (device: VkDevice, pName: cstring): PFN_vkVoidFunction {.stdcall.}](vkGetProc("vkGetDeviceProcAddr")) vkCreateDevice = cast[proc (physicalDevice: VkPhysicalDevice, pCreateInfo: ptr VkDeviceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDevice: ptr VkDevice): VkResult {.stdcall.}](vkGetProc("vkCreateDevice")) - vkDestroyDevice = cast[proc (device: VkDevice, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDevice")) + vkDestroyDevice = cast[proc (device: VkDevice, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyDevice")) vkEnumerateDeviceExtensionProperties = cast[proc (physicalDevice: VkPhysicalDevice, pLayerName: cstring, pPropertyCount: ptr uint32, pProperties: ptr VkExtensionProperties): VkResult {.stdcall.}](vkGetProc("vkEnumerateDeviceExtensionProperties")) vkEnumerateDeviceLayerProperties = cast[proc (physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkLayerProperties): VkResult {.stdcall.}](vkGetProc("vkEnumerateDeviceLayerProperties")) - vkGetDeviceQueue = cast[proc (device: VkDevice, queueFamilyIndex: uint32, queueIndex: uint32, pQueue: ptr VkQueue): void {.stdcall.}](vkGetProc("vkGetDeviceQueue")) + vkGetDeviceQueue = cast[proc (device: VkDevice, queueFamilyIndex: uint32, queueIndex: uint32, pQueue: ptr VkQueue) {.stdcall.}](vkGetProc("vkGetDeviceQueue")) vkQueueSubmit = cast[proc (queue: VkQueue, submitCount: uint32, pSubmits: ptr VkSubmitInfo, fence: VkFence): VkResult {.stdcall.}](vkGetProc("vkQueueSubmit")) vkQueueWaitIdle = cast[proc (queue: VkQueue): VkResult {.stdcall.}](vkGetProc("vkQueueWaitIdle")) vkDeviceWaitIdle = cast[proc (device: VkDevice): VkResult {.stdcall.}](vkGetProc("vkDeviceWaitIdle")) vkAllocateMemory = cast[proc (device: VkDevice, pAllocateInfo: ptr VkMemoryAllocateInfo, pAllocator: ptr VkAllocationCallbacks, pMemory: ptr VkDeviceMemory): VkResult {.stdcall.}](vkGetProc("vkAllocateMemory")) - vkFreeMemory = cast[proc (device: VkDevice, memory: VkDeviceMemory, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkFreeMemory")) + vkFreeMemory = cast[proc (device: VkDevice, memory: VkDeviceMemory, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkFreeMemory")) vkMapMemory = cast[proc (device: VkDevice, memory: VkDeviceMemory, offset: VkDeviceSize, size: VkDeviceSize, flags: VkMemoryMapFlags, ppData: ptr pointer): VkResult {.stdcall.}](vkGetProc("vkMapMemory")) - vkUnmapMemory = cast[proc (device: VkDevice, memory: VkDeviceMemory): void {.stdcall.}](vkGetProc("vkUnmapMemory")) + vkUnmapMemory = cast[proc (device: VkDevice, memory: VkDeviceMemory) {.stdcall.}](vkGetProc("vkUnmapMemory")) vkFlushMappedMemoryRanges = cast[proc (device: VkDevice, memoryRangeCount: uint32, pMemoryRanges: ptr VkMappedMemoryRange): VkResult {.stdcall.}](vkGetProc("vkFlushMappedMemoryRanges")) vkInvalidateMappedMemoryRanges = cast[proc (device: VkDevice, memoryRangeCount: uint32, pMemoryRanges: ptr VkMappedMemoryRange): VkResult {.stdcall.}](vkGetProc("vkInvalidateMappedMemoryRanges")) - vkGetDeviceMemoryCommitment = cast[proc (device: VkDevice, memory: VkDeviceMemory, pCommittedMemoryInBytes: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkGetDeviceMemoryCommitment")) + vkGetDeviceMemoryCommitment = cast[proc (device: VkDevice, memory: VkDeviceMemory, pCommittedMemoryInBytes: ptr VkDeviceSize) {.stdcall.}](vkGetProc("vkGetDeviceMemoryCommitment")) vkBindBufferMemory = cast[proc (device: VkDevice, buffer: VkBuffer, memory: VkDeviceMemory, memoryOffset: VkDeviceSize): VkResult {.stdcall.}](vkGetProc("vkBindBufferMemory")) vkBindImageMemory = cast[proc (device: VkDevice, image: VkImage, memory: VkDeviceMemory, memoryOffset: VkDeviceSize): VkResult {.stdcall.}](vkGetProc("vkBindImageMemory")) - vkGetBufferMemoryRequirements = cast[proc (device: VkDevice, buffer: VkBuffer, pMemoryRequirements: ptr VkMemoryRequirements): void {.stdcall.}](vkGetProc("vkGetBufferMemoryRequirements")) - vkGetImageMemoryRequirements = cast[proc (device: VkDevice, image: VkImage, pMemoryRequirements: ptr VkMemoryRequirements): void {.stdcall.}](vkGetProc("vkGetImageMemoryRequirements")) - vkGetImageSparseMemoryRequirements = cast[proc (device: VkDevice, image: VkImage, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements): void {.stdcall.}](vkGetProc("vkGetImageSparseMemoryRequirements")) - vkGetPhysicalDeviceSparseImageFormatProperties = cast[proc (physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, samples: VkSampleCountFlagBits, usage: VkImageUsageFlags, tiling: VkImageTiling, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSparseImageFormatProperties")) + vkGetBufferMemoryRequirements = cast[proc (device: VkDevice, buffer: VkBuffer, pMemoryRequirements: ptr VkMemoryRequirements) {.stdcall.}](vkGetProc("vkGetBufferMemoryRequirements")) + vkGetImageMemoryRequirements = cast[proc (device: VkDevice, image: VkImage, pMemoryRequirements: ptr VkMemoryRequirements) {.stdcall.}](vkGetProc("vkGetImageMemoryRequirements")) + vkGetImageSparseMemoryRequirements = cast[proc (device: VkDevice, image: VkImage, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements) {.stdcall.}](vkGetProc("vkGetImageSparseMemoryRequirements")) + vkGetPhysicalDeviceSparseImageFormatProperties = cast[proc (physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, samples: VkSampleCountFlagBits, usage: VkImageUsageFlags, tiling: VkImageTiling, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties) {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSparseImageFormatProperties")) vkQueueBindSparse = cast[proc (queue: VkQueue, bindInfoCount: uint32, pBindInfo: ptr VkBindSparseInfo, fence: VkFence): VkResult {.stdcall.}](vkGetProc("vkQueueBindSparse")) vkCreateFence = cast[proc (device: VkDevice, pCreateInfo: ptr VkFenceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pFence: ptr VkFence): VkResult {.stdcall.}](vkGetProc("vkCreateFence")) - vkDestroyFence = cast[proc (device: VkDevice, fence: VkFence, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyFence")) + vkDestroyFence = cast[proc (device: VkDevice, fence: VkFence, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyFence")) vkResetFences = cast[proc (device: VkDevice, fenceCount: uint32, pFences: ptr VkFence): VkResult {.stdcall.}](vkGetProc("vkResetFences")) vkGetFenceStatus = cast[proc (device: VkDevice, fence: VkFence): VkResult {.stdcall.}](vkGetProc("vkGetFenceStatus")) vkWaitForFences = cast[proc (device: VkDevice, fenceCount: uint32, pFences: ptr VkFence, waitAll: VkBool32, timeout: uint64): VkResult {.stdcall.}](vkGetProc("vkWaitForFences")) vkCreateSemaphore = cast[proc (device: VkDevice, pCreateInfo: ptr VkSemaphoreCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSemaphore: ptr VkSemaphore): VkResult {.stdcall.}](vkGetProc("vkCreateSemaphore")) - vkDestroySemaphore = cast[proc (device: VkDevice, semaphore: VkSemaphore, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySemaphore")) + vkDestroySemaphore = cast[proc (device: VkDevice, semaphore: VkSemaphore, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroySemaphore")) vkCreateEvent = cast[proc (device: VkDevice, pCreateInfo: ptr VkEventCreateInfo, pAllocator: ptr VkAllocationCallbacks, pEvent: ptr VkEvent): VkResult {.stdcall.}](vkGetProc("vkCreateEvent")) - vkDestroyEvent = cast[proc (device: VkDevice, event: VkEvent, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyEvent")) + vkDestroyEvent = cast[proc (device: VkDevice, event: VkEvent, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyEvent")) vkGetEventStatus = cast[proc (device: VkDevice, event: VkEvent): VkResult {.stdcall.}](vkGetProc("vkGetEventStatus")) vkSetEvent = cast[proc (device: VkDevice, event: VkEvent): VkResult {.stdcall.}](vkGetProc("vkSetEvent")) vkResetEvent = cast[proc (device: VkDevice, event: VkEvent): VkResult {.stdcall.}](vkGetProc("vkResetEvent")) vkCreateQueryPool = cast[proc (device: VkDevice, pCreateInfo: ptr VkQueryPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pQueryPool: ptr VkQueryPool): VkResult {.stdcall.}](vkGetProc("vkCreateQueryPool")) - vkDestroyQueryPool = cast[proc (device: VkDevice, queryPool: VkQueryPool, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyQueryPool")) + vkDestroyQueryPool = cast[proc (device: VkDevice, queryPool: VkQueryPool, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyQueryPool")) vkGetQueryPoolResults = cast[proc (device: VkDevice, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32, dataSize: uint, pData: pointer, stride: VkDeviceSize, flags: VkQueryResultFlags): VkResult {.stdcall.}](vkGetProc("vkGetQueryPoolResults")) vkCreateBuffer = cast[proc (device: VkDevice, pCreateInfo: ptr VkBufferCreateInfo, pAllocator: ptr VkAllocationCallbacks, pBuffer: ptr VkBuffer): VkResult {.stdcall.}](vkGetProc("vkCreateBuffer")) - vkDestroyBuffer = cast[proc (device: VkDevice, buffer: VkBuffer, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyBuffer")) + vkDestroyBuffer = cast[proc (device: VkDevice, buffer: VkBuffer, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyBuffer")) vkCreateBufferView = cast[proc (device: VkDevice, pCreateInfo: ptr VkBufferViewCreateInfo, pAllocator: ptr VkAllocationCallbacks, pView: ptr VkBufferView): VkResult {.stdcall.}](vkGetProc("vkCreateBufferView")) - vkDestroyBufferView = cast[proc (device: VkDevice, bufferView: VkBufferView, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyBufferView")) + vkDestroyBufferView = cast[proc (device: VkDevice, bufferView: VkBufferView, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyBufferView")) vkCreateImage = cast[proc (device: VkDevice, pCreateInfo: ptr VkImageCreateInfo, pAllocator: ptr VkAllocationCallbacks, pImage: ptr VkImage): VkResult {.stdcall.}](vkGetProc("vkCreateImage")) - vkDestroyImage = cast[proc (device: VkDevice, image: VkImage, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyImage")) - vkGetImageSubresourceLayout = cast[proc (device: VkDevice, image: VkImage, pSubresource: ptr VkImageSubresource, pLayout: ptr VkSubresourceLayout): void {.stdcall.}](vkGetProc("vkGetImageSubresourceLayout")) + vkDestroyImage = cast[proc (device: VkDevice, image: VkImage, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyImage")) + vkGetImageSubresourceLayout = cast[proc (device: VkDevice, image: VkImage, pSubresource: ptr VkImageSubresource, pLayout: ptr VkSubresourceLayout) {.stdcall.}](vkGetProc("vkGetImageSubresourceLayout")) vkCreateImageView = cast[proc (device: VkDevice, pCreateInfo: ptr VkImageViewCreateInfo, pAllocator: ptr VkAllocationCallbacks, pView: ptr VkImageView): VkResult {.stdcall.}](vkGetProc("vkCreateImageView")) - vkDestroyImageView = cast[proc (device: VkDevice, imageView: VkImageView, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyImageView")) + vkDestroyImageView = cast[proc (device: VkDevice, imageView: VkImageView, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyImageView")) vkCreateShaderModule = cast[proc (device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo, pAllocator: ptr VkAllocationCallbacks, pShaderModule: ptr VkShaderModule): VkResult {.stdcall.}](vkGetProc("vkCreateShaderModule")) - vkDestroyShaderModule = cast[proc (device: VkDevice, shaderModule: VkShaderModule, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyShaderModule")) + vkDestroyShaderModule = cast[proc (device: VkDevice, shaderModule: VkShaderModule, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyShaderModule")) vkCreatePipelineCache = cast[proc (device: VkDevice, pCreateInfo: ptr VkPipelineCacheCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineCache: ptr VkPipelineCache): VkResult {.stdcall.}](vkGetProc("vkCreatePipelineCache")) - vkDestroyPipelineCache = cast[proc (device: VkDevice, pipelineCache: VkPipelineCache, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyPipelineCache")) + vkDestroyPipelineCache = cast[proc (device: VkDevice, pipelineCache: VkPipelineCache, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyPipelineCache")) vkGetPipelineCacheData = cast[proc (device: VkDevice, pipelineCache: VkPipelineCache, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetPipelineCacheData")) vkMergePipelineCaches = cast[proc (device: VkDevice, dstCache: VkPipelineCache, srcCacheCount: uint32, pSrcCaches: ptr VkPipelineCache): VkResult {.stdcall.}](vkGetProc("vkMergePipelineCaches")) vkCreateGraphicsPipelines = cast[proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkGraphicsPipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateGraphicsPipelines")) vkCreateComputePipelines = cast[proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkComputePipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateComputePipelines")) - vkDestroyPipeline = cast[proc (device: VkDevice, pipeline: VkPipeline, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyPipeline")) + vkDestroyPipeline = cast[proc (device: VkDevice, pipeline: VkPipeline, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyPipeline")) vkCreatePipelineLayout = cast[proc (device: VkDevice, pCreateInfo: ptr VkPipelineLayoutCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineLayout: ptr VkPipelineLayout): VkResult {.stdcall.}](vkGetProc("vkCreatePipelineLayout")) - vkDestroyPipelineLayout = cast[proc (device: VkDevice, pipelineLayout: VkPipelineLayout, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyPipelineLayout")) + vkDestroyPipelineLayout = cast[proc (device: VkDevice, pipelineLayout: VkPipelineLayout, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyPipelineLayout")) vkCreateSampler = cast[proc (device: VkDevice, pCreateInfo: ptr VkSamplerCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSampler: ptr VkSampler): VkResult {.stdcall.}](vkGetProc("vkCreateSampler")) - vkDestroySampler = cast[proc (device: VkDevice, sampler: VkSampler, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySampler")) + vkDestroySampler = cast[proc (device: VkDevice, sampler: VkSampler, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroySampler")) vkCreateDescriptorSetLayout = cast[proc (device: VkDevice, pCreateInfo: ptr VkDescriptorSetLayoutCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSetLayout: ptr VkDescriptorSetLayout): VkResult {.stdcall.}](vkGetProc("vkCreateDescriptorSetLayout")) - vkDestroyDescriptorSetLayout = cast[proc (device: VkDevice, descriptorSetLayout: VkDescriptorSetLayout, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDescriptorSetLayout")) + vkDestroyDescriptorSetLayout = cast[proc (device: VkDevice, descriptorSetLayout: VkDescriptorSetLayout, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyDescriptorSetLayout")) vkCreateDescriptorPool = cast[proc (device: VkDevice, pCreateInfo: ptr VkDescriptorPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDescriptorPool: ptr VkDescriptorPool): VkResult {.stdcall.}](vkGetProc("vkCreateDescriptorPool")) - vkDestroyDescriptorPool = cast[proc (device: VkDevice, descriptorPool: VkDescriptorPool, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDescriptorPool")) + vkDestroyDescriptorPool = cast[proc (device: VkDevice, descriptorPool: VkDescriptorPool, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyDescriptorPool")) vkResetDescriptorPool = cast[proc (device: VkDevice, descriptorPool: VkDescriptorPool, flags: VkDescriptorPoolResetFlags): VkResult {.stdcall.}](vkGetProc("vkResetDescriptorPool")) vkAllocateDescriptorSets = cast[proc (device: VkDevice, pAllocateInfo: ptr VkDescriptorSetAllocateInfo, pDescriptorSets: ptr VkDescriptorSet): VkResult {.stdcall.}](vkGetProc("vkAllocateDescriptorSets")) vkFreeDescriptorSets = cast[proc (device: VkDevice, descriptorPool: VkDescriptorPool, descriptorSetCount: uint32, pDescriptorSets: ptr VkDescriptorSet): VkResult {.stdcall.}](vkGetProc("vkFreeDescriptorSets")) - vkUpdateDescriptorSets = cast[proc (device: VkDevice, descriptorWriteCount: uint32, pDescriptorWrites: ptr VkWriteDescriptorSet, descriptorCopyCount: uint32, pDescriptorCopies: ptr VkCopyDescriptorSet): void {.stdcall.}](vkGetProc("vkUpdateDescriptorSets")) + vkUpdateDescriptorSets = cast[proc (device: VkDevice, descriptorWriteCount: uint32, pDescriptorWrites: ptr VkWriteDescriptorSet, descriptorCopyCount: uint32, pDescriptorCopies: ptr VkCopyDescriptorSet) {.stdcall.}](vkGetProc("vkUpdateDescriptorSets")) vkCreateFramebuffer = cast[proc (device: VkDevice, pCreateInfo: ptr VkFramebufferCreateInfo, pAllocator: ptr VkAllocationCallbacks, pFramebuffer: ptr VkFramebuffer): VkResult {.stdcall.}](vkGetProc("vkCreateFramebuffer")) - vkDestroyFramebuffer = cast[proc (device: VkDevice, framebuffer: VkFramebuffer, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyFramebuffer")) + vkDestroyFramebuffer = cast[proc (device: VkDevice, framebuffer: VkFramebuffer, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyFramebuffer")) vkCreateRenderPass = cast[proc (device: VkDevice, pCreateInfo: ptr VkRenderPassCreateInfo, pAllocator: ptr VkAllocationCallbacks, pRenderPass: ptr VkRenderPass): VkResult {.stdcall.}](vkGetProc("vkCreateRenderPass")) - vkDestroyRenderPass = cast[proc (device: VkDevice, renderPass: VkRenderPass, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyRenderPass")) - vkGetRenderAreaGranularity = cast[proc (device: VkDevice, renderPass: VkRenderPass, pGranularity: ptr VkExtent2D): void {.stdcall.}](vkGetProc("vkGetRenderAreaGranularity")) + vkDestroyRenderPass = cast[proc (device: VkDevice, renderPass: VkRenderPass, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyRenderPass")) + vkGetRenderAreaGranularity = cast[proc (device: VkDevice, renderPass: VkRenderPass, pGranularity: ptr VkExtent2D) {.stdcall.}](vkGetProc("vkGetRenderAreaGranularity")) vkCreateCommandPool = cast[proc (device: VkDevice, pCreateInfo: ptr VkCommandPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pCommandPool: ptr VkCommandPool): VkResult {.stdcall.}](vkGetProc("vkCreateCommandPool")) - vkDestroyCommandPool = cast[proc (device: VkDevice, commandPool: VkCommandPool, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyCommandPool")) + vkDestroyCommandPool = cast[proc (device: VkDevice, commandPool: VkCommandPool, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyCommandPool")) vkResetCommandPool = cast[proc (device: VkDevice, commandPool: VkCommandPool, flags: VkCommandPoolResetFlags): VkResult {.stdcall.}](vkGetProc("vkResetCommandPool")) vkAllocateCommandBuffers = cast[proc (device: VkDevice, pAllocateInfo: ptr VkCommandBufferAllocateInfo, pCommandBuffers: ptr VkCommandBuffer): VkResult {.stdcall.}](vkGetProc("vkAllocateCommandBuffers")) - vkFreeCommandBuffers = cast[proc (device: VkDevice, commandPool: VkCommandPool, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer): void {.stdcall.}](vkGetProc("vkFreeCommandBuffers")) + vkFreeCommandBuffers = cast[proc (device: VkDevice, commandPool: VkCommandPool, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer) {.stdcall.}](vkGetProc("vkFreeCommandBuffers")) vkBeginCommandBuffer = cast[proc (commandBuffer: VkCommandBuffer, pBeginInfo: ptr VkCommandBufferBeginInfo): VkResult {.stdcall.}](vkGetProc("vkBeginCommandBuffer")) vkEndCommandBuffer = cast[proc (commandBuffer: VkCommandBuffer): VkResult {.stdcall.}](vkGetProc("vkEndCommandBuffer")) vkResetCommandBuffer = cast[proc (commandBuffer: VkCommandBuffer, flags: VkCommandBufferResetFlags): VkResult {.stdcall.}](vkGetProc("vkResetCommandBuffer")) - vkCmdBindPipeline = cast[proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline): void {.stdcall.}](vkGetProc("vkCmdBindPipeline")) - vkCmdSetViewport = cast[proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewports: ptr VkViewport): void {.stdcall.}](vkGetProc("vkCmdSetViewport")) - vkCmdSetScissor = cast[proc (commandBuffer: VkCommandBuffer, firstScissor: uint32, scissorCount: uint32, pScissors: ptr VkRect2D): void {.stdcall.}](vkGetProc("vkCmdSetScissor")) - vkCmdSetLineWidth = cast[proc (commandBuffer: VkCommandBuffer, lineWidth: float32): void {.stdcall.}](vkGetProc("vkCmdSetLineWidth")) - vkCmdSetDepthBias = cast[proc (commandBuffer: VkCommandBuffer, depthBiasConstantFactor: float32, depthBiasClamp: float32, depthBiasSlopeFactor: float32): void {.stdcall.}](vkGetProc("vkCmdSetDepthBias")) - vkCmdSetBlendConstants = cast[proc (commandBuffer: VkCommandBuffer, blendConstants: array[4, float32]): void {.stdcall.}](vkGetProc("vkCmdSetBlendConstants")) - vkCmdSetDepthBounds = cast[proc (commandBuffer: VkCommandBuffer, minDepthBounds: float32, maxDepthBounds: float32): void {.stdcall.}](vkGetProc("vkCmdSetDepthBounds")) - vkCmdSetStencilCompareMask = cast[proc (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, compareMask: uint32): void {.stdcall.}](vkGetProc("vkCmdSetStencilCompareMask")) - vkCmdSetStencilWriteMask = cast[proc (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, writeMask: uint32): void {.stdcall.}](vkGetProc("vkCmdSetStencilWriteMask")) - vkCmdSetStencilReference = cast[proc (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, reference: uint32): void {.stdcall.}](vkGetProc("vkCmdSetStencilReference")) - vkCmdBindDescriptorSets = cast[proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, firstSet: uint32, descriptorSetCount: uint32, pDescriptorSets: ptr VkDescriptorSet, dynamicOffsetCount: uint32, pDynamicOffsets: ptr uint32): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorSets")) - vkCmdBindIndexBuffer = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, indexType: VkIndexType): void {.stdcall.}](vkGetProc("vkCmdBindIndexBuffer")) - vkCmdBindVertexBuffers = cast[proc (commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdBindVertexBuffers")) - vkCmdDraw = cast[proc (commandBuffer: VkCommandBuffer, vertexCount: uint32, instanceCount: uint32, firstVertex: uint32, firstInstance: uint32): void {.stdcall.}](vkGetProc("vkCmdDraw")) - vkCmdDrawIndexed = cast[proc (commandBuffer: VkCommandBuffer, indexCount: uint32, instanceCount: uint32, firstIndex: uint32, vertexOffset: int32, firstInstance: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawIndexed")) - vkCmdDrawIndirect = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawIndirect")) - vkCmdDrawIndexedIndirect = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawIndexedIndirect")) - vkCmdDispatch = cast[proc (commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.}](vkGetProc("vkCmdDispatch")) - vkCmdDispatchIndirect = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdDispatchIndirect")) - vkCmdCopyBuffer = cast[proc (commandBuffer: VkCommandBuffer, srcBuffer: VkBuffer, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferCopy): void {.stdcall.}](vkGetProc("vkCmdCopyBuffer")) - vkCmdCopyImage = cast[proc (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageCopy): void {.stdcall.}](vkGetProc("vkCmdCopyImage")) - vkCmdBlitImage = cast[proc (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageBlit, filter: VkFilter): void {.stdcall.}](vkGetProc("vkCmdBlitImage")) - vkCmdCopyBufferToImage = cast[proc (commandBuffer: VkCommandBuffer, srcBuffer: VkBuffer, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkBufferImageCopy): void {.stdcall.}](vkGetProc("vkCmdCopyBufferToImage")) - vkCmdCopyImageToBuffer = cast[proc (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferImageCopy): void {.stdcall.}](vkGetProc("vkCmdCopyImageToBuffer")) - vkCmdUpdateBuffer = cast[proc (commandBuffer: VkCommandBuffer, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, dataSize: VkDeviceSize, pData: pointer): void {.stdcall.}](vkGetProc("vkCmdUpdateBuffer")) - vkCmdFillBuffer = cast[proc (commandBuffer: VkCommandBuffer, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, size: VkDeviceSize, data: uint32): void {.stdcall.}](vkGetProc("vkCmdFillBuffer")) - vkCmdClearColorImage = cast[proc (commandBuffer: VkCommandBuffer, image: VkImage, imageLayout: VkImageLayout, pColor: ptr VkClearColorValue, rangeCount: uint32, pRanges: ptr VkImageSubresourceRange): void {.stdcall.}](vkGetProc("vkCmdClearColorImage")) - vkCmdClearDepthStencilImage = cast[proc (commandBuffer: VkCommandBuffer, image: VkImage, imageLayout: VkImageLayout, pDepthStencil: ptr VkClearDepthStencilValue, rangeCount: uint32, pRanges: ptr VkImageSubresourceRange): void {.stdcall.}](vkGetProc("vkCmdClearDepthStencilImage")) - vkCmdClearAttachments = cast[proc (commandBuffer: VkCommandBuffer, attachmentCount: uint32, pAttachments: ptr VkClearAttachment, rectCount: uint32, pRects: ptr VkClearRect): void {.stdcall.}](vkGetProc("vkCmdClearAttachments")) - vkCmdResolveImage = cast[proc (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageResolve): void {.stdcall.}](vkGetProc("vkCmdResolveImage")) - vkCmdSetEvent = cast[proc (commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags): void {.stdcall.}](vkGetProc("vkCmdSetEvent")) - vkCmdResetEvent = cast[proc (commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags): void {.stdcall.}](vkGetProc("vkCmdResetEvent")) - vkCmdWaitEvents = cast[proc (commandBuffer: VkCommandBuffer, eventCount: uint32, pEvents: ptr VkEvent, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, memoryBarrierCount: uint32, pMemoryBarriers: ptr VkMemoryBarrier, bufferMemoryBarrierCount: uint32, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier, imageMemoryBarrierCount: uint32, pImageMemoryBarriers: ptr VkImageMemoryBarrier): void {.stdcall.}](vkGetProc("vkCmdWaitEvents")) - vkCmdPipelineBarrier = cast[proc (commandBuffer: VkCommandBuffer, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, dependencyFlags: VkDependencyFlags, memoryBarrierCount: uint32, pMemoryBarriers: ptr VkMemoryBarrier, bufferMemoryBarrierCount: uint32, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier, imageMemoryBarrierCount: uint32, pImageMemoryBarriers: ptr VkImageMemoryBarrier): void {.stdcall.}](vkGetProc("vkCmdPipelineBarrier")) - vkCmdBeginQuery = cast[proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, flags: VkQueryControlFlags): void {.stdcall.}](vkGetProc("vkCmdBeginQuery")) - vkCmdEndQuery = cast[proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32): void {.stdcall.}](vkGetProc("vkCmdEndQuery")) - vkCmdResetQueryPool = cast[proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32): void {.stdcall.}](vkGetProc("vkCmdResetQueryPool")) - vkCmdWriteTimestamp = cast[proc (commandBuffer: VkCommandBuffer, pipelineStage: VkPipelineStageFlagBits, queryPool: VkQueryPool, query: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteTimestamp")) - vkCmdCopyQueryPoolResults = cast[proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, stride: VkDeviceSize, flags: VkQueryResultFlags): void {.stdcall.}](vkGetProc("vkCmdCopyQueryPoolResults")) - vkCmdPushConstants = cast[proc (commandBuffer: VkCommandBuffer, layout: VkPipelineLayout, stageFlags: VkShaderStageFlags, offset: uint32, size: uint32, pValues: pointer): void {.stdcall.}](vkGetProc("vkCmdPushConstants")) - vkCmdBeginRenderPass = cast[proc (commandBuffer: VkCommandBuffer, pRenderPassBegin: ptr VkRenderPassBeginInfo, contents: VkSubpassContents): void {.stdcall.}](vkGetProc("vkCmdBeginRenderPass")) - vkCmdNextSubpass = cast[proc (commandBuffer: VkCommandBuffer, contents: VkSubpassContents): void {.stdcall.}](vkGetProc("vkCmdNextSubpass")) - vkCmdEndRenderPass = cast[proc (commandBuffer: VkCommandBuffer): void {.stdcall.}](vkGetProc("vkCmdEndRenderPass")) - vkCmdExecuteCommands = cast[proc (commandBuffer: VkCommandBuffer, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer): void {.stdcall.}](vkGetProc("vkCmdExecuteCommands")) + vkCmdBindPipeline = cast[proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline) {.stdcall.}](vkGetProc("vkCmdBindPipeline")) + vkCmdSetViewport = cast[proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewports: ptr VkViewport) {.stdcall.}](vkGetProc("vkCmdSetViewport")) + vkCmdSetScissor = cast[proc (commandBuffer: VkCommandBuffer, firstScissor: uint32, scissorCount: uint32, pScissors: ptr VkRect2D) {.stdcall.}](vkGetProc("vkCmdSetScissor")) + vkCmdSetLineWidth = cast[proc (commandBuffer: VkCommandBuffer, lineWidth: float32) {.stdcall.}](vkGetProc("vkCmdSetLineWidth")) + vkCmdSetDepthBias = cast[proc (commandBuffer: VkCommandBuffer, depthBiasConstantFactor: float32, depthBiasClamp: float32, depthBiasSlopeFactor: float32) {.stdcall.}](vkGetProc("vkCmdSetDepthBias")) + vkCmdSetBlendConstants = cast[proc (commandBuffer: VkCommandBuffer, blendConstants: array[4, float32]) {.stdcall.}](vkGetProc("vkCmdSetBlendConstants")) + vkCmdSetDepthBounds = cast[proc (commandBuffer: VkCommandBuffer, minDepthBounds: float32, maxDepthBounds: float32) {.stdcall.}](vkGetProc("vkCmdSetDepthBounds")) + vkCmdSetStencilCompareMask = cast[proc (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, compareMask: uint32) {.stdcall.}](vkGetProc("vkCmdSetStencilCompareMask")) + vkCmdSetStencilWriteMask = cast[proc (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, writeMask: uint32) {.stdcall.}](vkGetProc("vkCmdSetStencilWriteMask")) + vkCmdSetStencilReference = cast[proc (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, reference: uint32) {.stdcall.}](vkGetProc("vkCmdSetStencilReference")) + vkCmdBindDescriptorSets = cast[proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, firstSet: uint32, descriptorSetCount: uint32, pDescriptorSets: ptr VkDescriptorSet, dynamicOffsetCount: uint32, pDynamicOffsets: ptr uint32) {.stdcall.}](vkGetProc("vkCmdBindDescriptorSets")) + vkCmdBindIndexBuffer = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, indexType: VkIndexType) {.stdcall.}](vkGetProc("vkCmdBindIndexBuffer")) + vkCmdBindVertexBuffers = cast[proc (commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize) {.stdcall.}](vkGetProc("vkCmdBindVertexBuffers")) + vkCmdDraw = cast[proc (commandBuffer: VkCommandBuffer, vertexCount: uint32, instanceCount: uint32, firstVertex: uint32, firstInstance: uint32) {.stdcall.}](vkGetProc("vkCmdDraw")) + vkCmdDrawIndexed = cast[proc (commandBuffer: VkCommandBuffer, indexCount: uint32, instanceCount: uint32, firstIndex: uint32, vertexOffset: int32, firstInstance: uint32) {.stdcall.}](vkGetProc("vkCmdDrawIndexed")) + vkCmdDrawIndirect = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32) {.stdcall.}](vkGetProc("vkCmdDrawIndirect")) + vkCmdDrawIndexedIndirect = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32) {.stdcall.}](vkGetProc("vkCmdDrawIndexedIndirect")) + vkCmdDispatch = cast[proc (commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32) {.stdcall.}](vkGetProc("vkCmdDispatch")) + vkCmdDispatchIndirect = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize) {.stdcall.}](vkGetProc("vkCmdDispatchIndirect")) + vkCmdCopyBuffer = cast[proc (commandBuffer: VkCommandBuffer, srcBuffer: VkBuffer, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferCopy) {.stdcall.}](vkGetProc("vkCmdCopyBuffer")) + vkCmdCopyImage = cast[proc (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageCopy) {.stdcall.}](vkGetProc("vkCmdCopyImage")) + vkCmdBlitImage = cast[proc (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageBlit, filter: VkFilter) {.stdcall.}](vkGetProc("vkCmdBlitImage")) + vkCmdCopyBufferToImage = cast[proc (commandBuffer: VkCommandBuffer, srcBuffer: VkBuffer, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkBufferImageCopy) {.stdcall.}](vkGetProc("vkCmdCopyBufferToImage")) + vkCmdCopyImageToBuffer = cast[proc (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferImageCopy) {.stdcall.}](vkGetProc("vkCmdCopyImageToBuffer")) + vkCmdUpdateBuffer = cast[proc (commandBuffer: VkCommandBuffer, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, dataSize: VkDeviceSize, pData: pointer) {.stdcall.}](vkGetProc("vkCmdUpdateBuffer")) + vkCmdFillBuffer = cast[proc (commandBuffer: VkCommandBuffer, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, size: VkDeviceSize, data: uint32) {.stdcall.}](vkGetProc("vkCmdFillBuffer")) + vkCmdClearColorImage = cast[proc (commandBuffer: VkCommandBuffer, image: VkImage, imageLayout: VkImageLayout, pColor: ptr VkClearColorValue, rangeCount: uint32, pRanges: ptr VkImageSubresourceRange) {.stdcall.}](vkGetProc("vkCmdClearColorImage")) + vkCmdClearDepthStencilImage = cast[proc (commandBuffer: VkCommandBuffer, image: VkImage, imageLayout: VkImageLayout, pDepthStencil: ptr VkClearDepthStencilValue, rangeCount: uint32, pRanges: ptr VkImageSubresourceRange) {.stdcall.}](vkGetProc("vkCmdClearDepthStencilImage")) + vkCmdClearAttachments = cast[proc (commandBuffer: VkCommandBuffer, attachmentCount: uint32, pAttachments: ptr VkClearAttachment, rectCount: uint32, pRects: ptr VkClearRect) {.stdcall.}](vkGetProc("vkCmdClearAttachments")) + vkCmdResolveImage = cast[proc (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageResolve) {.stdcall.}](vkGetProc("vkCmdResolveImage")) + vkCmdSetEvent = cast[proc (commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags) {.stdcall.}](vkGetProc("vkCmdSetEvent")) + vkCmdResetEvent = cast[proc (commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags) {.stdcall.}](vkGetProc("vkCmdResetEvent")) + vkCmdWaitEvents = cast[proc (commandBuffer: VkCommandBuffer, eventCount: uint32, pEvents: ptr VkEvent, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, memoryBarrierCount: uint32, pMemoryBarriers: ptr VkMemoryBarrier, bufferMemoryBarrierCount: uint32, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier, imageMemoryBarrierCount: uint32, pImageMemoryBarriers: ptr VkImageMemoryBarrier) {.stdcall.}](vkGetProc("vkCmdWaitEvents")) + vkCmdPipelineBarrier = cast[proc (commandBuffer: VkCommandBuffer, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, dependencyFlags: VkDependencyFlags, memoryBarrierCount: uint32, pMemoryBarriers: ptr VkMemoryBarrier, bufferMemoryBarrierCount: uint32, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier, imageMemoryBarrierCount: uint32, pImageMemoryBarriers: ptr VkImageMemoryBarrier) {.stdcall.}](vkGetProc("vkCmdPipelineBarrier")) + vkCmdBeginQuery = cast[proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, flags: VkQueryControlFlags) {.stdcall.}](vkGetProc("vkCmdBeginQuery")) + vkCmdEndQuery = cast[proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32) {.stdcall.}](vkGetProc("vkCmdEndQuery")) + vkCmdResetQueryPool = cast[proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32) {.stdcall.}](vkGetProc("vkCmdResetQueryPool")) + vkCmdWriteTimestamp = cast[proc (commandBuffer: VkCommandBuffer, pipelineStage: VkPipelineStageFlagBits, queryPool: VkQueryPool, query: uint32) {.stdcall.}](vkGetProc("vkCmdWriteTimestamp")) + vkCmdCopyQueryPoolResults = cast[proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, stride: VkDeviceSize, flags: VkQueryResultFlags) {.stdcall.}](vkGetProc("vkCmdCopyQueryPoolResults")) + vkCmdPushConstants = cast[proc (commandBuffer: VkCommandBuffer, layout: VkPipelineLayout, stageFlags: VkShaderStageFlags, offset: uint32, size: uint32, pValues: pointer) {.stdcall.}](vkGetProc("vkCmdPushConstants")) + vkCmdBeginRenderPass = cast[proc (commandBuffer: VkCommandBuffer, pRenderPassBegin: ptr VkRenderPassBeginInfo, contents: VkSubpassContents) {.stdcall.}](vkGetProc("vkCmdBeginRenderPass")) + vkCmdNextSubpass = cast[proc (commandBuffer: VkCommandBuffer, contents: VkSubpassContents) {.stdcall.}](vkGetProc("vkCmdNextSubpass")) + vkCmdEndRenderPass = cast[proc (commandBuffer: VkCommandBuffer) {.stdcall.}](vkGetProc("vkCmdEndRenderPass")) + vkCmdExecuteCommands = cast[proc (commandBuffer: VkCommandBuffer, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer) {.stdcall.}](vkGetProc("vkCmdExecuteCommands")) # Vulkan 1_1 proc vkLoad1_1*() = vkBindBufferMemory2 = cast[proc (device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindBufferMemoryInfo): VkResult {.stdcall.}](vkGetProc("vkBindBufferMemory2")) vkBindImageMemory2 = cast[proc (device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindImageMemoryInfo): VkResult {.stdcall.}](vkGetProc("vkBindImageMemory2")) - vkGetDeviceGroupPeerMemoryFeatures = cast[proc (device: VkDevice, heapIndex: uint32, localDeviceIndex: uint32, remoteDeviceIndex: uint32, pPeerMemoryFeatures: ptr VkPeerMemoryFeatureFlags): void {.stdcall.}](vkGetProc("vkGetDeviceGroupPeerMemoryFeatures")) - vkCmdSetDeviceMask = cast[proc (commandBuffer: VkCommandBuffer, deviceMask: uint32): void {.stdcall.}](vkGetProc("vkCmdSetDeviceMask")) - vkCmdDispatchBase = cast[proc (commandBuffer: VkCommandBuffer, baseGroupX: uint32, baseGroupY: uint32, baseGroupZ: uint32, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.}](vkGetProc("vkCmdDispatchBase")) + vkGetDeviceGroupPeerMemoryFeatures = cast[proc (device: VkDevice, heapIndex: uint32, localDeviceIndex: uint32, remoteDeviceIndex: uint32, pPeerMemoryFeatures: ptr VkPeerMemoryFeatureFlags) {.stdcall.}](vkGetProc("vkGetDeviceGroupPeerMemoryFeatures")) + vkCmdSetDeviceMask = cast[proc (commandBuffer: VkCommandBuffer, deviceMask: uint32) {.stdcall.}](vkGetProc("vkCmdSetDeviceMask")) + vkCmdDispatchBase = cast[proc (commandBuffer: VkCommandBuffer, baseGroupX: uint32, baseGroupY: uint32, baseGroupZ: uint32, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32) {.stdcall.}](vkGetProc("vkCmdDispatchBase")) vkEnumeratePhysicalDeviceGroups = cast[proc (instance: VkInstance, pPhysicalDeviceGroupCount: ptr uint32, pPhysicalDeviceGroupProperties: ptr VkPhysicalDeviceGroupProperties): VkResult {.stdcall.}](vkGetProc("vkEnumeratePhysicalDeviceGroups")) - vkGetImageMemoryRequirements2 = cast[proc (device: VkDevice, pInfo: ptr VkImageMemoryRequirementsInfo2, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetImageMemoryRequirements2")) - vkGetBufferMemoryRequirements2 = cast[proc (device: VkDevice, pInfo: ptr VkBufferMemoryRequirementsInfo2, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetBufferMemoryRequirements2")) - vkGetImageSparseMemoryRequirements2 = cast[proc (device: VkDevice, pInfo: ptr VkImageSparseMemoryRequirementsInfo2, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetImageSparseMemoryRequirements2")) - vkGetPhysicalDeviceFeatures2 = cast[proc (physicalDevice: VkPhysicalDevice, pFeatures: ptr VkPhysicalDeviceFeatures2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFeatures2")) - vkGetPhysicalDeviceProperties2 = cast[proc (physicalDevice: VkPhysicalDevice, pProperties: ptr VkPhysicalDeviceProperties2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceProperties2")) - vkGetPhysicalDeviceFormatProperties2 = cast[proc (physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: ptr VkFormatProperties2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFormatProperties2")) + vkGetImageMemoryRequirements2 = cast[proc (device: VkDevice, pInfo: ptr VkImageMemoryRequirementsInfo2, pMemoryRequirements: ptr VkMemoryRequirements2) {.stdcall.}](vkGetProc("vkGetImageMemoryRequirements2")) + vkGetBufferMemoryRequirements2 = cast[proc (device: VkDevice, pInfo: ptr VkBufferMemoryRequirementsInfo2, pMemoryRequirements: ptr VkMemoryRequirements2) {.stdcall.}](vkGetProc("vkGetBufferMemoryRequirements2")) + vkGetImageSparseMemoryRequirements2 = cast[proc (device: VkDevice, pInfo: ptr VkImageSparseMemoryRequirementsInfo2, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2) {.stdcall.}](vkGetProc("vkGetImageSparseMemoryRequirements2")) + vkGetPhysicalDeviceFeatures2 = cast[proc (physicalDevice: VkPhysicalDevice, pFeatures: ptr VkPhysicalDeviceFeatures2) {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFeatures2")) + vkGetPhysicalDeviceProperties2 = cast[proc (physicalDevice: VkPhysicalDevice, pProperties: ptr VkPhysicalDeviceProperties2) {.stdcall.}](vkGetProc("vkGetPhysicalDeviceProperties2")) + vkGetPhysicalDeviceFormatProperties2 = cast[proc (physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: ptr VkFormatProperties2) {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFormatProperties2")) vkGetPhysicalDeviceImageFormatProperties2 = cast[proc (physicalDevice: VkPhysicalDevice, pImageFormatInfo: ptr VkPhysicalDeviceImageFormatInfo2, pImageFormatProperties: ptr VkImageFormatProperties2): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceImageFormatProperties2")) - vkGetPhysicalDeviceQueueFamilyProperties2 = cast[proc (physicalDevice: VkPhysicalDevice, pQueueFamilyPropertyCount: ptr uint32, pQueueFamilyProperties: ptr VkQueueFamilyProperties2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceQueueFamilyProperties2")) - vkGetPhysicalDeviceMemoryProperties2 = cast[proc (physicalDevice: VkPhysicalDevice, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceMemoryProperties2")) - vkGetPhysicalDeviceSparseImageFormatProperties2 = cast[proc (physicalDevice: VkPhysicalDevice, pFormatInfo: ptr VkPhysicalDeviceSparseImageFormatInfo2, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties2): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSparseImageFormatProperties2")) - vkTrimCommandPool = cast[proc (device: VkDevice, commandPool: VkCommandPool, flags: VkCommandPoolTrimFlags): void {.stdcall.}](vkGetProc("vkTrimCommandPool")) - vkGetDeviceQueue2 = cast[proc (device: VkDevice, pQueueInfo: ptr VkDeviceQueueInfo2, pQueue: ptr VkQueue): void {.stdcall.}](vkGetProc("vkGetDeviceQueue2")) + vkGetPhysicalDeviceQueueFamilyProperties2 = cast[proc (physicalDevice: VkPhysicalDevice, pQueueFamilyPropertyCount: ptr uint32, pQueueFamilyProperties: ptr VkQueueFamilyProperties2) {.stdcall.}](vkGetProc("vkGetPhysicalDeviceQueueFamilyProperties2")) + vkGetPhysicalDeviceMemoryProperties2 = cast[proc (physicalDevice: VkPhysicalDevice, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties2) {.stdcall.}](vkGetProc("vkGetPhysicalDeviceMemoryProperties2")) + vkGetPhysicalDeviceSparseImageFormatProperties2 = cast[proc (physicalDevice: VkPhysicalDevice, pFormatInfo: ptr VkPhysicalDeviceSparseImageFormatInfo2, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties2) {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSparseImageFormatProperties2")) + vkTrimCommandPool = cast[proc (device: VkDevice, commandPool: VkCommandPool, flags: VkCommandPoolTrimFlags) {.stdcall.}](vkGetProc("vkTrimCommandPool")) + vkGetDeviceQueue2 = cast[proc (device: VkDevice, pQueueInfo: ptr VkDeviceQueueInfo2, pQueue: ptr VkQueue) {.stdcall.}](vkGetProc("vkGetDeviceQueue2")) vkCreateSamplerYcbcrConversion = cast[proc (device: VkDevice, pCreateInfo: ptr VkSamplerYcbcrConversionCreateInfo, pAllocator: ptr VkAllocationCallbacks, pYcbcrConversion: ptr VkSamplerYcbcrConversion): VkResult {.stdcall.}](vkGetProc("vkCreateSamplerYcbcrConversion")) - vkDestroySamplerYcbcrConversion = cast[proc (device: VkDevice, ycbcrConversion: VkSamplerYcbcrConversion, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySamplerYcbcrConversion")) + vkDestroySamplerYcbcrConversion = cast[proc (device: VkDevice, ycbcrConversion: VkSamplerYcbcrConversion, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroySamplerYcbcrConversion")) vkCreateDescriptorUpdateTemplate = cast[proc (device: VkDevice, pCreateInfo: ptr VkDescriptorUpdateTemplateCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDescriptorUpdateTemplate: ptr VkDescriptorUpdateTemplate): VkResult {.stdcall.}](vkGetProc("vkCreateDescriptorUpdateTemplate")) - vkDestroyDescriptorUpdateTemplate = cast[proc (device: VkDevice, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDescriptorUpdateTemplate")) - vkUpdateDescriptorSetWithTemplate = cast[proc (device: VkDevice, descriptorSet: VkDescriptorSet, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pData: pointer): void {.stdcall.}](vkGetProc("vkUpdateDescriptorSetWithTemplate")) - vkGetPhysicalDeviceExternalBufferProperties = cast[proc (physicalDevice: VkPhysicalDevice, pExternalBufferInfo: ptr VkPhysicalDeviceExternalBufferInfo, pExternalBufferProperties: ptr VkExternalBufferProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalBufferProperties")) - vkGetPhysicalDeviceExternalFenceProperties = cast[proc (physicalDevice: VkPhysicalDevice, pExternalFenceInfo: ptr VkPhysicalDeviceExternalFenceInfo, pExternalFenceProperties: ptr VkExternalFenceProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalFenceProperties")) - vkGetPhysicalDeviceExternalSemaphoreProperties = cast[proc (physicalDevice: VkPhysicalDevice, pExternalSemaphoreInfo: ptr VkPhysicalDeviceExternalSemaphoreInfo, pExternalSemaphoreProperties: ptr VkExternalSemaphoreProperties): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalSemaphoreProperties")) - vkGetDescriptorSetLayoutSupport = cast[proc (device: VkDevice, pCreateInfo: ptr VkDescriptorSetLayoutCreateInfo, pSupport: ptr VkDescriptorSetLayoutSupport): void {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutSupport")) + vkDestroyDescriptorUpdateTemplate = cast[proc (device: VkDevice, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyDescriptorUpdateTemplate")) + vkUpdateDescriptorSetWithTemplate = cast[proc (device: VkDevice, descriptorSet: VkDescriptorSet, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pData: pointer) {.stdcall.}](vkGetProc("vkUpdateDescriptorSetWithTemplate")) + vkGetPhysicalDeviceExternalBufferProperties = cast[proc (physicalDevice: VkPhysicalDevice, pExternalBufferInfo: ptr VkPhysicalDeviceExternalBufferInfo, pExternalBufferProperties: ptr VkExternalBufferProperties) {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalBufferProperties")) + vkGetPhysicalDeviceExternalFenceProperties = cast[proc (physicalDevice: VkPhysicalDevice, pExternalFenceInfo: ptr VkPhysicalDeviceExternalFenceInfo, pExternalFenceProperties: ptr VkExternalFenceProperties) {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalFenceProperties")) + vkGetPhysicalDeviceExternalSemaphoreProperties = cast[proc (physicalDevice: VkPhysicalDevice, pExternalSemaphoreInfo: ptr VkPhysicalDeviceExternalSemaphoreInfo, pExternalSemaphoreProperties: ptr VkExternalSemaphoreProperties) {.stdcall.}](vkGetProc("vkGetPhysicalDeviceExternalSemaphoreProperties")) + vkGetDescriptorSetLayoutSupport = cast[proc (device: VkDevice, pCreateInfo: ptr VkDescriptorSetLayoutCreateInfo, pSupport: ptr VkDescriptorSetLayoutSupport) {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutSupport")) # Vulkan 1_2 proc vkLoad1_2*() = - vkCmdDrawIndirectCount = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawIndirectCount")) - vkCmdDrawIndexedIndirectCount = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawIndexedIndirectCount")) + vkCmdDrawIndirectCount = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32) {.stdcall.}](vkGetProc("vkCmdDrawIndirectCount")) + vkCmdDrawIndexedIndirectCount = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32) {.stdcall.}](vkGetProc("vkCmdDrawIndexedIndirectCount")) vkCreateRenderPass2 = cast[proc (device: VkDevice, pCreateInfo: ptr VkRenderPassCreateInfo2, pAllocator: ptr VkAllocationCallbacks, pRenderPass: ptr VkRenderPass): VkResult {.stdcall.}](vkGetProc("vkCreateRenderPass2")) - vkCmdBeginRenderPass2 = cast[proc (commandBuffer: VkCommandBuffer, pRenderPassBegin: ptr VkRenderPassBeginInfo, pSubpassBeginInfo: ptr VkSubpassBeginInfo): void {.stdcall.}](vkGetProc("vkCmdBeginRenderPass2")) - vkCmdNextSubpass2 = cast[proc (commandBuffer: VkCommandBuffer, pSubpassBeginInfo: ptr VkSubpassBeginInfo, pSubpassEndInfo: ptr VkSubpassEndInfo): void {.stdcall.}](vkGetProc("vkCmdNextSubpass2")) - vkCmdEndRenderPass2 = cast[proc (commandBuffer: VkCommandBuffer, pSubpassEndInfo: ptr VkSubpassEndInfo): void {.stdcall.}](vkGetProc("vkCmdEndRenderPass2")) - vkResetQueryPool = cast[proc (device: VkDevice, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32): void {.stdcall.}](vkGetProc("vkResetQueryPool")) + vkCmdBeginRenderPass2 = cast[proc (commandBuffer: VkCommandBuffer, pRenderPassBegin: ptr VkRenderPassBeginInfo, pSubpassBeginInfo: ptr VkSubpassBeginInfo) {.stdcall.}](vkGetProc("vkCmdBeginRenderPass2")) + vkCmdNextSubpass2 = cast[proc (commandBuffer: VkCommandBuffer, pSubpassBeginInfo: ptr VkSubpassBeginInfo, pSubpassEndInfo: ptr VkSubpassEndInfo) {.stdcall.}](vkGetProc("vkCmdNextSubpass2")) + vkCmdEndRenderPass2 = cast[proc (commandBuffer: VkCommandBuffer, pSubpassEndInfo: ptr VkSubpassEndInfo) {.stdcall.}](vkGetProc("vkCmdEndRenderPass2")) + vkResetQueryPool = cast[proc (device: VkDevice, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32) {.stdcall.}](vkGetProc("vkResetQueryPool")) vkGetSemaphoreCounterValue = cast[proc (device: VkDevice, semaphore: VkSemaphore, pValue: ptr uint64): VkResult {.stdcall.}](vkGetProc("vkGetSemaphoreCounterValue")) vkWaitSemaphores = cast[proc (device: VkDevice, pWaitInfo: ptr VkSemaphoreWaitInfo, timeout: uint64): VkResult {.stdcall.}](vkGetProc("vkWaitSemaphores")) vkSignalSemaphore = cast[proc (device: VkDevice, pSignalInfo: ptr VkSemaphoreSignalInfo): VkResult {.stdcall.}](vkGetProc("vkSignalSemaphore")) @@ -21326,45 +21326,45 @@ proc vkLoad1_2*() = proc vkLoad1_3*() = vkGetPhysicalDeviceToolProperties = cast[proc (physicalDevice: VkPhysicalDevice, pToolCount: ptr uint32, pToolProperties: ptr VkPhysicalDeviceToolProperties): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceToolProperties")) vkCreatePrivateDataSlot = cast[proc (device: VkDevice, pCreateInfo: ptr VkPrivateDataSlotCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPrivateDataSlot: ptr VkPrivateDataSlot): VkResult {.stdcall.}](vkGetProc("vkCreatePrivateDataSlot")) - vkDestroyPrivateDataSlot = cast[proc (device: VkDevice, privateDataSlot: VkPrivateDataSlot, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyPrivateDataSlot")) + vkDestroyPrivateDataSlot = cast[proc (device: VkDevice, privateDataSlot: VkPrivateDataSlot, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyPrivateDataSlot")) vkSetPrivateData = cast[proc (device: VkDevice, objectType: VkObjectType, objectHandle: uint64, privateDataSlot: VkPrivateDataSlot, data: uint64): VkResult {.stdcall.}](vkGetProc("vkSetPrivateData")) - vkGetPrivateData = cast[proc (device: VkDevice, objectType: VkObjectType, objectHandle: uint64, privateDataSlot: VkPrivateDataSlot, pData: ptr uint64): void {.stdcall.}](vkGetProc("vkGetPrivateData")) - vkCmdSetEvent2 = cast[proc (commandBuffer: VkCommandBuffer, event: VkEvent, pDependencyInfo: ptr VkDependencyInfo): void {.stdcall.}](vkGetProc("vkCmdSetEvent2")) - vkCmdResetEvent2 = cast[proc (commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags2): void {.stdcall.}](vkGetProc("vkCmdResetEvent2")) - vkCmdWaitEvents2 = cast[proc (commandBuffer: VkCommandBuffer, eventCount: uint32, pEvents: ptr VkEvent, pDependencyInfos: ptr VkDependencyInfo): void {.stdcall.}](vkGetProc("vkCmdWaitEvents2")) - vkCmdPipelineBarrier2 = cast[proc (commandBuffer: VkCommandBuffer, pDependencyInfo: ptr VkDependencyInfo): void {.stdcall.}](vkGetProc("vkCmdPipelineBarrier2")) - vkCmdWriteTimestamp2 = cast[proc (commandBuffer: VkCommandBuffer, stage: VkPipelineStageFlags2, queryPool: VkQueryPool, query: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteTimestamp2")) + vkGetPrivateData = cast[proc (device: VkDevice, objectType: VkObjectType, objectHandle: uint64, privateDataSlot: VkPrivateDataSlot, pData: ptr uint64) {.stdcall.}](vkGetProc("vkGetPrivateData")) + vkCmdSetEvent2 = cast[proc (commandBuffer: VkCommandBuffer, event: VkEvent, pDependencyInfo: ptr VkDependencyInfo) {.stdcall.}](vkGetProc("vkCmdSetEvent2")) + vkCmdResetEvent2 = cast[proc (commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags2) {.stdcall.}](vkGetProc("vkCmdResetEvent2")) + vkCmdWaitEvents2 = cast[proc (commandBuffer: VkCommandBuffer, eventCount: uint32, pEvents: ptr VkEvent, pDependencyInfos: ptr VkDependencyInfo) {.stdcall.}](vkGetProc("vkCmdWaitEvents2")) + vkCmdPipelineBarrier2 = cast[proc (commandBuffer: VkCommandBuffer, pDependencyInfo: ptr VkDependencyInfo) {.stdcall.}](vkGetProc("vkCmdPipelineBarrier2")) + vkCmdWriteTimestamp2 = cast[proc (commandBuffer: VkCommandBuffer, stage: VkPipelineStageFlags2, queryPool: VkQueryPool, query: uint32) {.stdcall.}](vkGetProc("vkCmdWriteTimestamp2")) vkQueueSubmit2 = cast[proc (queue: VkQueue, submitCount: uint32, pSubmits: ptr VkSubmitInfo2, fence: VkFence): VkResult {.stdcall.}](vkGetProc("vkQueueSubmit2")) - vkCmdCopyBuffer2 = cast[proc (commandBuffer: VkCommandBuffer, pCopyBufferInfo: ptr VkCopyBufferInfo2): void {.stdcall.}](vkGetProc("vkCmdCopyBuffer2")) - vkCmdCopyImage2 = cast[proc (commandBuffer: VkCommandBuffer, pCopyImageInfo: ptr VkCopyImageInfo2): void {.stdcall.}](vkGetProc("vkCmdCopyImage2")) - vkCmdCopyBufferToImage2 = cast[proc (commandBuffer: VkCommandBuffer, pCopyBufferToImageInfo: ptr VkCopyBufferToImageInfo2): void {.stdcall.}](vkGetProc("vkCmdCopyBufferToImage2")) - vkCmdCopyImageToBuffer2 = cast[proc (commandBuffer: VkCommandBuffer, pCopyImageToBufferInfo: ptr VkCopyImageToBufferInfo2): void {.stdcall.}](vkGetProc("vkCmdCopyImageToBuffer2")) - vkCmdBlitImage2 = cast[proc (commandBuffer: VkCommandBuffer, pBlitImageInfo: ptr VkBlitImageInfo2): void {.stdcall.}](vkGetProc("vkCmdBlitImage2")) - vkCmdResolveImage2 = cast[proc (commandBuffer: VkCommandBuffer, pResolveImageInfo: ptr VkResolveImageInfo2): void {.stdcall.}](vkGetProc("vkCmdResolveImage2")) - vkCmdBeginRendering = cast[proc (commandBuffer: VkCommandBuffer, pRenderingInfo: ptr VkRenderingInfo): void {.stdcall.}](vkGetProc("vkCmdBeginRendering")) - vkCmdEndRendering = cast[proc (commandBuffer: VkCommandBuffer): void {.stdcall.}](vkGetProc("vkCmdEndRendering")) - vkCmdSetCullMode = cast[proc (commandBuffer: VkCommandBuffer, cullMode: VkCullModeFlags): void {.stdcall.}](vkGetProc("vkCmdSetCullMode")) - vkCmdSetFrontFace = cast[proc (commandBuffer: VkCommandBuffer, frontFace: VkFrontFace): void {.stdcall.}](vkGetProc("vkCmdSetFrontFace")) - vkCmdSetPrimitiveTopology = cast[proc (commandBuffer: VkCommandBuffer, primitiveTopology: VkPrimitiveTopology): void {.stdcall.}](vkGetProc("vkCmdSetPrimitiveTopology")) - vkCmdSetViewportWithCount = cast[proc (commandBuffer: VkCommandBuffer, viewportCount: uint32, pViewports: ptr VkViewport): void {.stdcall.}](vkGetProc("vkCmdSetViewportWithCount")) - vkCmdSetScissorWithCount = cast[proc (commandBuffer: VkCommandBuffer, scissorCount: uint32, pScissors: ptr VkRect2D): void {.stdcall.}](vkGetProc("vkCmdSetScissorWithCount")) - vkCmdBindVertexBuffers2 = cast[proc (commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize, pSizes: ptr VkDeviceSize, pStrides: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdBindVertexBuffers2")) - vkCmdSetDepthTestEnable = cast[proc (commandBuffer: VkCommandBuffer, depthTestEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthTestEnable")) - vkCmdSetDepthWriteEnable = cast[proc (commandBuffer: VkCommandBuffer, depthWriteEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthWriteEnable")) - vkCmdSetDepthCompareOp = cast[proc (commandBuffer: VkCommandBuffer, depthCompareOp: VkCompareOp): void {.stdcall.}](vkGetProc("vkCmdSetDepthCompareOp")) - vkCmdSetDepthBoundsTestEnable = cast[proc (commandBuffer: VkCommandBuffer, depthBoundsTestEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthBoundsTestEnable")) - vkCmdSetStencilTestEnable = cast[proc (commandBuffer: VkCommandBuffer, stencilTestEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetStencilTestEnable")) - vkCmdSetStencilOp = cast[proc (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, failOp: VkStencilOp, passOp: VkStencilOp, depthFailOp: VkStencilOp, compareOp: VkCompareOp): void {.stdcall.}](vkGetProc("vkCmdSetStencilOp")) - vkCmdSetRasterizerDiscardEnable = cast[proc (commandBuffer: VkCommandBuffer, rasterizerDiscardEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetRasterizerDiscardEnable")) - vkCmdSetDepthBiasEnable = cast[proc (commandBuffer: VkCommandBuffer, depthBiasEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthBiasEnable")) - vkCmdSetPrimitiveRestartEnable = cast[proc (commandBuffer: VkCommandBuffer, primitiveRestartEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetPrimitiveRestartEnable")) - vkGetDeviceBufferMemoryRequirements = cast[proc (device: VkDevice, pInfo: ptr VkDeviceBufferMemoryRequirements, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetDeviceBufferMemoryRequirements")) - vkGetDeviceImageMemoryRequirements = cast[proc (device: VkDevice, pInfo: ptr VkDeviceImageMemoryRequirements, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetDeviceImageMemoryRequirements")) - vkGetDeviceImageSparseMemoryRequirements = cast[proc (device: VkDevice, pInfo: ptr VkDeviceImageMemoryRequirements, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetDeviceImageSparseMemoryRequirements")) + vkCmdCopyBuffer2 = cast[proc (commandBuffer: VkCommandBuffer, pCopyBufferInfo: ptr VkCopyBufferInfo2) {.stdcall.}](vkGetProc("vkCmdCopyBuffer2")) + vkCmdCopyImage2 = cast[proc (commandBuffer: VkCommandBuffer, pCopyImageInfo: ptr VkCopyImageInfo2) {.stdcall.}](vkGetProc("vkCmdCopyImage2")) + vkCmdCopyBufferToImage2 = cast[proc (commandBuffer: VkCommandBuffer, pCopyBufferToImageInfo: ptr VkCopyBufferToImageInfo2) {.stdcall.}](vkGetProc("vkCmdCopyBufferToImage2")) + vkCmdCopyImageToBuffer2 = cast[proc (commandBuffer: VkCommandBuffer, pCopyImageToBufferInfo: ptr VkCopyImageToBufferInfo2) {.stdcall.}](vkGetProc("vkCmdCopyImageToBuffer2")) + vkCmdBlitImage2 = cast[proc (commandBuffer: VkCommandBuffer, pBlitImageInfo: ptr VkBlitImageInfo2) {.stdcall.}](vkGetProc("vkCmdBlitImage2")) + vkCmdResolveImage2 = cast[proc (commandBuffer: VkCommandBuffer, pResolveImageInfo: ptr VkResolveImageInfo2) {.stdcall.}](vkGetProc("vkCmdResolveImage2")) + vkCmdBeginRendering = cast[proc (commandBuffer: VkCommandBuffer, pRenderingInfo: ptr VkRenderingInfo) {.stdcall.}](vkGetProc("vkCmdBeginRendering")) + vkCmdEndRendering = cast[proc (commandBuffer: VkCommandBuffer) {.stdcall.}](vkGetProc("vkCmdEndRendering")) + vkCmdSetCullMode = cast[proc (commandBuffer: VkCommandBuffer, cullMode: VkCullModeFlags) {.stdcall.}](vkGetProc("vkCmdSetCullMode")) + vkCmdSetFrontFace = cast[proc (commandBuffer: VkCommandBuffer, frontFace: VkFrontFace) {.stdcall.}](vkGetProc("vkCmdSetFrontFace")) + vkCmdSetPrimitiveTopology = cast[proc (commandBuffer: VkCommandBuffer, primitiveTopology: VkPrimitiveTopology) {.stdcall.}](vkGetProc("vkCmdSetPrimitiveTopology")) + vkCmdSetViewportWithCount = cast[proc (commandBuffer: VkCommandBuffer, viewportCount: uint32, pViewports: ptr VkViewport) {.stdcall.}](vkGetProc("vkCmdSetViewportWithCount")) + vkCmdSetScissorWithCount = cast[proc (commandBuffer: VkCommandBuffer, scissorCount: uint32, pScissors: ptr VkRect2D) {.stdcall.}](vkGetProc("vkCmdSetScissorWithCount")) + vkCmdBindVertexBuffers2 = cast[proc (commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize, pSizes: ptr VkDeviceSize, pStrides: ptr VkDeviceSize) {.stdcall.}](vkGetProc("vkCmdBindVertexBuffers2")) + vkCmdSetDepthTestEnable = cast[proc (commandBuffer: VkCommandBuffer, depthTestEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetDepthTestEnable")) + vkCmdSetDepthWriteEnable = cast[proc (commandBuffer: VkCommandBuffer, depthWriteEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetDepthWriteEnable")) + vkCmdSetDepthCompareOp = cast[proc (commandBuffer: VkCommandBuffer, depthCompareOp: VkCompareOp) {.stdcall.}](vkGetProc("vkCmdSetDepthCompareOp")) + vkCmdSetDepthBoundsTestEnable = cast[proc (commandBuffer: VkCommandBuffer, depthBoundsTestEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetDepthBoundsTestEnable")) + vkCmdSetStencilTestEnable = cast[proc (commandBuffer: VkCommandBuffer, stencilTestEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetStencilTestEnable")) + vkCmdSetStencilOp = cast[proc (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, failOp: VkStencilOp, passOp: VkStencilOp, depthFailOp: VkStencilOp, compareOp: VkCompareOp) {.stdcall.}](vkGetProc("vkCmdSetStencilOp")) + vkCmdSetRasterizerDiscardEnable = cast[proc (commandBuffer: VkCommandBuffer, rasterizerDiscardEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetRasterizerDiscardEnable")) + vkCmdSetDepthBiasEnable = cast[proc (commandBuffer: VkCommandBuffer, depthBiasEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetDepthBiasEnable")) + vkCmdSetPrimitiveRestartEnable = cast[proc (commandBuffer: VkCommandBuffer, primitiveRestartEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetPrimitiveRestartEnable")) + vkGetDeviceBufferMemoryRequirements = cast[proc (device: VkDevice, pInfo: ptr VkDeviceBufferMemoryRequirements, pMemoryRequirements: ptr VkMemoryRequirements2) {.stdcall.}](vkGetProc("vkGetDeviceBufferMemoryRequirements")) + vkGetDeviceImageMemoryRequirements = cast[proc (device: VkDevice, pInfo: ptr VkDeviceImageMemoryRequirements, pMemoryRequirements: ptr VkMemoryRequirements2) {.stdcall.}](vkGetProc("vkGetDeviceImageMemoryRequirements")) + vkGetDeviceImageSparseMemoryRequirements = cast[proc (device: VkDevice, pInfo: ptr VkDeviceImageMemoryRequirements, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2) {.stdcall.}](vkGetProc("vkGetDeviceImageSparseMemoryRequirements")) # Load VK_KHR_surface proc loadVK_KHR_surface*() = - vkDestroySurfaceKHR = cast[proc (instance: VkInstance, surface: VkSurfaceKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySurfaceKHR")) + vkDestroySurfaceKHR = cast[proc (instance: VkInstance, surface: VkSurfaceKHR, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroySurfaceKHR")) vkGetPhysicalDeviceSurfaceSupportKHR = cast[proc (physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, surface: VkSurfaceKHR, pSupported: ptr VkBool32): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceSupportKHR")) vkGetPhysicalDeviceSurfaceCapabilitiesKHR = cast[proc (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceCapabilities: ptr VkSurfaceCapabilitiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceCapabilitiesKHR")) vkGetPhysicalDeviceSurfaceFormatsKHR = cast[proc (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceFormatCount: ptr uint32, pSurfaceFormats: ptr VkSurfaceFormatKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceSurfaceFormatsKHR")) @@ -21373,7 +21373,7 @@ proc loadVK_KHR_surface*() = # Load VK_KHR_swapchain proc loadVK_KHR_swapchain*() = vkCreateSwapchainKHR = cast[proc (device: VkDevice, pCreateInfo: ptr VkSwapchainCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSwapchain: ptr VkSwapchainKHR): VkResult {.stdcall.}](vkGetProc("vkCreateSwapchainKHR")) - vkDestroySwapchainKHR = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySwapchainKHR")) + vkDestroySwapchainKHR = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroySwapchainKHR")) vkGetSwapchainImagesKHR = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR, pSwapchainImageCount: ptr uint32, pSwapchainImages: ptr VkImage): VkResult {.stdcall.}](vkGetProc("vkGetSwapchainImagesKHR")) vkAcquireNextImageKHR = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR, timeout: uint64, semaphore: VkSemaphore, fence: VkFence, pImageIndex: ptr uint32): VkResult {.stdcall.}](vkGetProc("vkAcquireNextImageKHR")) vkQueuePresentKHR = cast[proc (queue: VkQueue, pPresentInfo: ptr VkPresentInfoKHR): VkResult {.stdcall.}](vkGetProc("vkQueuePresentKHR")) @@ -21430,52 +21430,52 @@ proc loadVK_ANDROID_native_buffer*() = # Load VK_EXT_debug_report proc loadVK_EXT_debug_report*() = vkCreateDebugReportCallbackEXT = cast[proc (instance: VkInstance, pCreateInfo: ptr VkDebugReportCallbackCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pCallback: ptr VkDebugReportCallbackEXT): VkResult {.stdcall.}](vkGetProc("vkCreateDebugReportCallbackEXT")) - vkDestroyDebugReportCallbackEXT = cast[proc (instance: VkInstance, callback: VkDebugReportCallbackEXT, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDebugReportCallbackEXT")) - vkDebugReportMessageEXT = cast[proc (instance: VkInstance, flags: VkDebugReportFlagsEXT, objectType: VkDebugReportObjectTypeEXT, `object`: uint64, location: uint, messageCode: int32, pLayerPrefix: cstring, pMessage: cstring): void {.stdcall.}](vkGetProc("vkDebugReportMessageEXT")) + vkDestroyDebugReportCallbackEXT = cast[proc (instance: VkInstance, callback: VkDebugReportCallbackEXT, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyDebugReportCallbackEXT")) + vkDebugReportMessageEXT = cast[proc (instance: VkInstance, flags: VkDebugReportFlagsEXT, objectType: VkDebugReportObjectTypeEXT, `object`: uint64, location: uint, messageCode: int32, pLayerPrefix: cstring, pMessage: cstring) {.stdcall.}](vkGetProc("vkDebugReportMessageEXT")) # Load VK_EXT_debug_marker proc loadVK_EXT_debug_marker*() = vkDebugMarkerSetObjectTagEXT = cast[proc (device: VkDevice, pTagInfo: ptr VkDebugMarkerObjectTagInfoEXT): VkResult {.stdcall.}](vkGetProc("vkDebugMarkerSetObjectTagEXT")) vkDebugMarkerSetObjectNameEXT = cast[proc (device: VkDevice, pNameInfo: ptr VkDebugMarkerObjectNameInfoEXT): VkResult {.stdcall.}](vkGetProc("vkDebugMarkerSetObjectNameEXT")) - vkCmdDebugMarkerBeginEXT = cast[proc (commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT): void {.stdcall.}](vkGetProc("vkCmdDebugMarkerBeginEXT")) - vkCmdDebugMarkerEndEXT = cast[proc (commandBuffer: VkCommandBuffer): void {.stdcall.}](vkGetProc("vkCmdDebugMarkerEndEXT")) - vkCmdDebugMarkerInsertEXT = cast[proc (commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT): void {.stdcall.}](vkGetProc("vkCmdDebugMarkerInsertEXT")) + vkCmdDebugMarkerBeginEXT = cast[proc (commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT) {.stdcall.}](vkGetProc("vkCmdDebugMarkerBeginEXT")) + vkCmdDebugMarkerEndEXT = cast[proc (commandBuffer: VkCommandBuffer) {.stdcall.}](vkGetProc("vkCmdDebugMarkerEndEXT")) + vkCmdDebugMarkerInsertEXT = cast[proc (commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT) {.stdcall.}](vkGetProc("vkCmdDebugMarkerInsertEXT")) # Load VK_KHR_video_queue proc loadVK_KHR_video_queue*() = vkGetPhysicalDeviceVideoCapabilitiesKHR = cast[proc (physicalDevice: VkPhysicalDevice, pVideoProfile: ptr VkVideoProfileInfoKHR, pCapabilities: ptr VkVideoCapabilitiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceVideoCapabilitiesKHR")) vkGetPhysicalDeviceVideoFormatPropertiesKHR = cast[proc (physicalDevice: VkPhysicalDevice, pVideoFormatInfo: ptr VkPhysicalDeviceVideoFormatInfoKHR, pVideoFormatPropertyCount: ptr uint32, pVideoFormatProperties: ptr VkVideoFormatPropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceVideoFormatPropertiesKHR")) vkCreateVideoSessionKHR = cast[proc (device: VkDevice, pCreateInfo: ptr VkVideoSessionCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pVideoSession: ptr VkVideoSessionKHR): VkResult {.stdcall.}](vkGetProc("vkCreateVideoSessionKHR")) - vkDestroyVideoSessionKHR = cast[proc (device: VkDevice, videoSession: VkVideoSessionKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyVideoSessionKHR")) + vkDestroyVideoSessionKHR = cast[proc (device: VkDevice, videoSession: VkVideoSessionKHR, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyVideoSessionKHR")) vkGetVideoSessionMemoryRequirementsKHR = cast[proc (device: VkDevice, videoSession: VkVideoSessionKHR, pMemoryRequirementsCount: ptr uint32, pMemoryRequirements: ptr VkVideoSessionMemoryRequirementsKHR): VkResult {.stdcall.}](vkGetProc("vkGetVideoSessionMemoryRequirementsKHR")) vkBindVideoSessionMemoryKHR = cast[proc (device: VkDevice, videoSession: VkVideoSessionKHR, bindSessionMemoryInfoCount: uint32, pBindSessionMemoryInfos: ptr VkBindVideoSessionMemoryInfoKHR): VkResult {.stdcall.}](vkGetProc("vkBindVideoSessionMemoryKHR")) vkCreateVideoSessionParametersKHR = cast[proc (device: VkDevice, pCreateInfo: ptr VkVideoSessionParametersCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pVideoSessionParameters: ptr VkVideoSessionParametersKHR): VkResult {.stdcall.}](vkGetProc("vkCreateVideoSessionParametersKHR")) vkUpdateVideoSessionParametersKHR = cast[proc (device: VkDevice, videoSessionParameters: VkVideoSessionParametersKHR, pUpdateInfo: ptr VkVideoSessionParametersUpdateInfoKHR): VkResult {.stdcall.}](vkGetProc("vkUpdateVideoSessionParametersKHR")) - vkDestroyVideoSessionParametersKHR = cast[proc (device: VkDevice, videoSessionParameters: VkVideoSessionParametersKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyVideoSessionParametersKHR")) - vkCmdBeginVideoCodingKHR = cast[proc (commandBuffer: VkCommandBuffer, pBeginInfo: ptr VkVideoBeginCodingInfoKHR): void {.stdcall.}](vkGetProc("vkCmdBeginVideoCodingKHR")) - vkCmdEndVideoCodingKHR = cast[proc (commandBuffer: VkCommandBuffer, pEndCodingInfo: ptr VkVideoEndCodingInfoKHR): void {.stdcall.}](vkGetProc("vkCmdEndVideoCodingKHR")) - vkCmdControlVideoCodingKHR = cast[proc (commandBuffer: VkCommandBuffer, pCodingControlInfo: ptr VkVideoCodingControlInfoKHR): void {.stdcall.}](vkGetProc("vkCmdControlVideoCodingKHR")) + vkDestroyVideoSessionParametersKHR = cast[proc (device: VkDevice, videoSessionParameters: VkVideoSessionParametersKHR, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyVideoSessionParametersKHR")) + vkCmdBeginVideoCodingKHR = cast[proc (commandBuffer: VkCommandBuffer, pBeginInfo: ptr VkVideoBeginCodingInfoKHR) {.stdcall.}](vkGetProc("vkCmdBeginVideoCodingKHR")) + vkCmdEndVideoCodingKHR = cast[proc (commandBuffer: VkCommandBuffer, pEndCodingInfo: ptr VkVideoEndCodingInfoKHR) {.stdcall.}](vkGetProc("vkCmdEndVideoCodingKHR")) + vkCmdControlVideoCodingKHR = cast[proc (commandBuffer: VkCommandBuffer, pCodingControlInfo: ptr VkVideoCodingControlInfoKHR) {.stdcall.}](vkGetProc("vkCmdControlVideoCodingKHR")) # Load VK_KHR_video_decode_queue proc loadVK_KHR_video_decode_queue*() = - vkCmdDecodeVideoKHR = cast[proc (commandBuffer: VkCommandBuffer, pDecodeInfo: ptr VkVideoDecodeInfoKHR): void {.stdcall.}](vkGetProc("vkCmdDecodeVideoKHR")) + vkCmdDecodeVideoKHR = cast[proc (commandBuffer: VkCommandBuffer, pDecodeInfo: ptr VkVideoDecodeInfoKHR) {.stdcall.}](vkGetProc("vkCmdDecodeVideoKHR")) # Load VK_EXT_transform_feedback proc loadVK_EXT_transform_feedback*() = - vkCmdBindTransformFeedbackBuffersEXT = cast[proc (commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize, pSizes: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdBindTransformFeedbackBuffersEXT")) - vkCmdBeginTransformFeedbackEXT = cast[proc (commandBuffer: VkCommandBuffer, firstCounterBuffer: uint32, counterBufferCount: uint32, pCounterBuffers: ptr VkBuffer, pCounterBufferOffsets: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdBeginTransformFeedbackEXT")) - vkCmdEndTransformFeedbackEXT = cast[proc (commandBuffer: VkCommandBuffer, firstCounterBuffer: uint32, counterBufferCount: uint32, pCounterBuffers: ptr VkBuffer, pCounterBufferOffsets: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdEndTransformFeedbackEXT")) - vkCmdBeginQueryIndexedEXT = cast[proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, flags: VkQueryControlFlags, index: uint32): void {.stdcall.}](vkGetProc("vkCmdBeginQueryIndexedEXT")) - vkCmdEndQueryIndexedEXT = cast[proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, index: uint32): void {.stdcall.}](vkGetProc("vkCmdEndQueryIndexedEXT")) - vkCmdDrawIndirectByteCountEXT = cast[proc (commandBuffer: VkCommandBuffer, instanceCount: uint32, firstInstance: uint32, counterBuffer: VkBuffer, counterBufferOffset: VkDeviceSize, counterOffset: uint32, vertexStride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawIndirectByteCountEXT")) + vkCmdBindTransformFeedbackBuffersEXT = cast[proc (commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize, pSizes: ptr VkDeviceSize) {.stdcall.}](vkGetProc("vkCmdBindTransformFeedbackBuffersEXT")) + vkCmdBeginTransformFeedbackEXT = cast[proc (commandBuffer: VkCommandBuffer, firstCounterBuffer: uint32, counterBufferCount: uint32, pCounterBuffers: ptr VkBuffer, pCounterBufferOffsets: ptr VkDeviceSize) {.stdcall.}](vkGetProc("vkCmdBeginTransformFeedbackEXT")) + vkCmdEndTransformFeedbackEXT = cast[proc (commandBuffer: VkCommandBuffer, firstCounterBuffer: uint32, counterBufferCount: uint32, pCounterBuffers: ptr VkBuffer, pCounterBufferOffsets: ptr VkDeviceSize) {.stdcall.}](vkGetProc("vkCmdEndTransformFeedbackEXT")) + vkCmdBeginQueryIndexedEXT = cast[proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, flags: VkQueryControlFlags, index: uint32) {.stdcall.}](vkGetProc("vkCmdBeginQueryIndexedEXT")) + vkCmdEndQueryIndexedEXT = cast[proc (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, index: uint32) {.stdcall.}](vkGetProc("vkCmdEndQueryIndexedEXT")) + vkCmdDrawIndirectByteCountEXT = cast[proc (commandBuffer: VkCommandBuffer, instanceCount: uint32, firstInstance: uint32, counterBuffer: VkBuffer, counterBufferOffset: VkDeviceSize, counterOffset: uint32, vertexStride: uint32) {.stdcall.}](vkGetProc("vkCmdDrawIndirectByteCountEXT")) # Load VK_NVX_binary_import proc loadVK_NVX_binary_import*() = vkCreateCuModuleNVX = cast[proc (device: VkDevice, pCreateInfo: ptr VkCuModuleCreateInfoNVX, pAllocator: ptr VkAllocationCallbacks, pModule: ptr VkCuModuleNVX): VkResult {.stdcall.}](vkGetProc("vkCreateCuModuleNVX")) vkCreateCuFunctionNVX = cast[proc (device: VkDevice, pCreateInfo: ptr VkCuFunctionCreateInfoNVX, pAllocator: ptr VkAllocationCallbacks, pFunction: ptr VkCuFunctionNVX): VkResult {.stdcall.}](vkGetProc("vkCreateCuFunctionNVX")) - vkDestroyCuModuleNVX = cast[proc (device: VkDevice, module: VkCuModuleNVX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyCuModuleNVX")) - vkDestroyCuFunctionNVX = cast[proc (device: VkDevice, function: VkCuFunctionNVX, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyCuFunctionNVX")) - vkCmdCuLaunchKernelNVX = cast[proc (commandBuffer: VkCommandBuffer, pLaunchInfo: ptr VkCuLaunchInfoNVX): void {.stdcall.}](vkGetProc("vkCmdCuLaunchKernelNVX")) + vkDestroyCuModuleNVX = cast[proc (device: VkDevice, module: VkCuModuleNVX, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyCuModuleNVX")) + vkDestroyCuFunctionNVX = cast[proc (device: VkDevice, function: VkCuFunctionNVX, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyCuFunctionNVX")) + vkCmdCuLaunchKernelNVX = cast[proc (commandBuffer: VkCommandBuffer, pLaunchInfo: ptr VkCuLaunchInfoNVX) {.stdcall.}](vkGetProc("vkCmdCuLaunchKernelNVX")) # Load VK_NVX_image_view_handle proc loadVK_NVX_image_view_handle*() = @@ -21531,22 +21531,22 @@ proc loadVK_KHR_external_semaphore_fd*() = # Load VK_KHR_push_descriptor proc loadVK_KHR_push_descriptor*() = - vkCmdPushDescriptorSetKHR = cast[proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, set: uint32, descriptorWriteCount: uint32, pDescriptorWrites: ptr VkWriteDescriptorSet): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetKHR")) - vkCmdPushDescriptorSetWithTemplateKHR = cast[proc (commandBuffer: VkCommandBuffer, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: uint32, pData: pointer): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplateKHR")) - vkCmdPushDescriptorSetWithTemplateKHR = cast[proc (commandBuffer: VkCommandBuffer, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: uint32, pData: pointer): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplateKHR")) + vkCmdPushDescriptorSetKHR = cast[proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, set: uint32, descriptorWriteCount: uint32, pDescriptorWrites: ptr VkWriteDescriptorSet) {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetKHR")) + vkCmdPushDescriptorSetWithTemplateKHR = cast[proc (commandBuffer: VkCommandBuffer, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: uint32, pData: pointer) {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplateKHR")) + vkCmdPushDescriptorSetWithTemplateKHR = cast[proc (commandBuffer: VkCommandBuffer, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: uint32, pData: pointer) {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplateKHR")) # Load VK_EXT_conditional_rendering proc loadVK_EXT_conditional_rendering*() = - vkCmdBeginConditionalRenderingEXT = cast[proc (commandBuffer: VkCommandBuffer, pConditionalRenderingBegin: ptr VkConditionalRenderingBeginInfoEXT): void {.stdcall.}](vkGetProc("vkCmdBeginConditionalRenderingEXT")) - vkCmdEndConditionalRenderingEXT = cast[proc (commandBuffer: VkCommandBuffer): void {.stdcall.}](vkGetProc("vkCmdEndConditionalRenderingEXT")) + vkCmdBeginConditionalRenderingEXT = cast[proc (commandBuffer: VkCommandBuffer, pConditionalRenderingBegin: ptr VkConditionalRenderingBeginInfoEXT) {.stdcall.}](vkGetProc("vkCmdBeginConditionalRenderingEXT")) + vkCmdEndConditionalRenderingEXT = cast[proc (commandBuffer: VkCommandBuffer) {.stdcall.}](vkGetProc("vkCmdEndConditionalRenderingEXT")) # Load VK_KHR_descriptor_update_template proc loadVK_KHR_descriptor_update_template*() = - vkCmdPushDescriptorSetWithTemplateKHR = cast[proc (commandBuffer: VkCommandBuffer, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: uint32, pData: pointer): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplateKHR")) + vkCmdPushDescriptorSetWithTemplateKHR = cast[proc (commandBuffer: VkCommandBuffer, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: uint32, pData: pointer) {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplateKHR")) # Load VK_NV_clip_space_w_scaling proc loadVK_NV_clip_space_w_scaling*() = - vkCmdSetViewportWScalingNV = cast[proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportWScalings: ptr VkViewportWScalingNV): void {.stdcall.}](vkGetProc("vkCmdSetViewportWScalingNV")) + vkCmdSetViewportWScalingNV = cast[proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportWScalings: ptr VkViewportWScalingNV) {.stdcall.}](vkGetProc("vkCmdSetViewportWScalingNV")) # Load VK_EXT_direct_mode_display proc loadVK_EXT_direct_mode_display*() = @@ -21575,13 +21575,13 @@ proc loadVK_GOOGLE_display_timing*() = # Load VK_EXT_discard_rectangles proc loadVK_EXT_discard_rectangles*() = - vkCmdSetDiscardRectangleEXT = cast[proc (commandBuffer: VkCommandBuffer, firstDiscardRectangle: uint32, discardRectangleCount: uint32, pDiscardRectangles: ptr VkRect2D): void {.stdcall.}](vkGetProc("vkCmdSetDiscardRectangleEXT")) - vkCmdSetDiscardRectangleEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, discardRectangleEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDiscardRectangleEnableEXT")) - vkCmdSetDiscardRectangleModeEXT = cast[proc (commandBuffer: VkCommandBuffer, discardRectangleMode: VkDiscardRectangleModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetDiscardRectangleModeEXT")) + vkCmdSetDiscardRectangleEXT = cast[proc (commandBuffer: VkCommandBuffer, firstDiscardRectangle: uint32, discardRectangleCount: uint32, pDiscardRectangles: ptr VkRect2D) {.stdcall.}](vkGetProc("vkCmdSetDiscardRectangleEXT")) + vkCmdSetDiscardRectangleEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, discardRectangleEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetDiscardRectangleEnableEXT")) + vkCmdSetDiscardRectangleModeEXT = cast[proc (commandBuffer: VkCommandBuffer, discardRectangleMode: VkDiscardRectangleModeEXT) {.stdcall.}](vkGetProc("vkCmdSetDiscardRectangleModeEXT")) # Load VK_EXT_hdr_metadata proc loadVK_EXT_hdr_metadata*() = - vkSetHdrMetadataEXT = cast[proc (device: VkDevice, swapchainCount: uint32, pSwapchains: ptr VkSwapchainKHR, pMetadata: ptr VkHdrMetadataEXT): void {.stdcall.}](vkGetProc("vkSetHdrMetadataEXT")) + vkSetHdrMetadataEXT = cast[proc (device: VkDevice, swapchainCount: uint32, pSwapchains: ptr VkSwapchainKHR, pMetadata: ptr VkHdrMetadataEXT) {.stdcall.}](vkGetProc("vkSetHdrMetadataEXT")) # Load VK_KHR_shared_presentable_image proc loadVK_KHR_shared_presentable_image*() = @@ -21600,9 +21600,9 @@ proc loadVK_KHR_external_fence_fd*() = # Load VK_KHR_performance_query proc loadVK_KHR_performance_query*() = vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = cast[proc (physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, pCounterCount: ptr uint32, pCounters: ptr VkPerformanceCounterKHR, pCounterDescriptions: ptr VkPerformanceCounterDescriptionKHR): VkResult {.stdcall.}](vkGetProc("vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR")) - vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = cast[proc (physicalDevice: VkPhysicalDevice, pPerformanceQueryCreateInfo: ptr VkQueryPoolPerformanceCreateInfoKHR, pNumPasses: ptr uint32): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR")) + vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = cast[proc (physicalDevice: VkPhysicalDevice, pPerformanceQueryCreateInfo: ptr VkQueryPoolPerformanceCreateInfoKHR, pNumPasses: ptr uint32) {.stdcall.}](vkGetProc("vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR")) vkAcquireProfilingLockKHR = cast[proc (device: VkDevice, pInfo: ptr VkAcquireProfilingLockInfoKHR): VkResult {.stdcall.}](vkGetProc("vkAcquireProfilingLockKHR")) - vkReleaseProfilingLockKHR = cast[proc (device: VkDevice): void {.stdcall.}](vkGetProc("vkReleaseProfilingLockKHR")) + vkReleaseProfilingLockKHR = cast[proc (device: VkDevice) {.stdcall.}](vkGetProc("vkReleaseProfilingLockKHR")) # Load VK_KHR_get_surface_capabilities2 proc loadVK_KHR_get_surface_capabilities2*() = @@ -21628,15 +21628,15 @@ proc loadVK_MVK_macos_surface*() = proc loadVK_EXT_debug_utils*() = vkSetDebugUtilsObjectNameEXT = cast[proc (device: VkDevice, pNameInfo: ptr VkDebugUtilsObjectNameInfoEXT): VkResult {.stdcall.}](vkGetProc("vkSetDebugUtilsObjectNameEXT")) vkSetDebugUtilsObjectTagEXT = cast[proc (device: VkDevice, pTagInfo: ptr VkDebugUtilsObjectTagInfoEXT): VkResult {.stdcall.}](vkGetProc("vkSetDebugUtilsObjectTagEXT")) - vkQueueBeginDebugUtilsLabelEXT = cast[proc (queue: VkQueue, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.}](vkGetProc("vkQueueBeginDebugUtilsLabelEXT")) - vkQueueEndDebugUtilsLabelEXT = cast[proc (queue: VkQueue): void {.stdcall.}](vkGetProc("vkQueueEndDebugUtilsLabelEXT")) - vkQueueInsertDebugUtilsLabelEXT = cast[proc (queue: VkQueue, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.}](vkGetProc("vkQueueInsertDebugUtilsLabelEXT")) - vkCmdBeginDebugUtilsLabelEXT = cast[proc (commandBuffer: VkCommandBuffer, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.}](vkGetProc("vkCmdBeginDebugUtilsLabelEXT")) - vkCmdEndDebugUtilsLabelEXT = cast[proc (commandBuffer: VkCommandBuffer): void {.stdcall.}](vkGetProc("vkCmdEndDebugUtilsLabelEXT")) - vkCmdInsertDebugUtilsLabelEXT = cast[proc (commandBuffer: VkCommandBuffer, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.stdcall.}](vkGetProc("vkCmdInsertDebugUtilsLabelEXT")) + vkQueueBeginDebugUtilsLabelEXT = cast[proc (queue: VkQueue, pLabelInfo: ptr VkDebugUtilsLabelEXT) {.stdcall.}](vkGetProc("vkQueueBeginDebugUtilsLabelEXT")) + vkQueueEndDebugUtilsLabelEXT = cast[proc (queue: VkQueue) {.stdcall.}](vkGetProc("vkQueueEndDebugUtilsLabelEXT")) + vkQueueInsertDebugUtilsLabelEXT = cast[proc (queue: VkQueue, pLabelInfo: ptr VkDebugUtilsLabelEXT) {.stdcall.}](vkGetProc("vkQueueInsertDebugUtilsLabelEXT")) + vkCmdBeginDebugUtilsLabelEXT = cast[proc (commandBuffer: VkCommandBuffer, pLabelInfo: ptr VkDebugUtilsLabelEXT) {.stdcall.}](vkGetProc("vkCmdBeginDebugUtilsLabelEXT")) + vkCmdEndDebugUtilsLabelEXT = cast[proc (commandBuffer: VkCommandBuffer) {.stdcall.}](vkGetProc("vkCmdEndDebugUtilsLabelEXT")) + vkCmdInsertDebugUtilsLabelEXT = cast[proc (commandBuffer: VkCommandBuffer, pLabelInfo: ptr VkDebugUtilsLabelEXT) {.stdcall.}](vkGetProc("vkCmdInsertDebugUtilsLabelEXT")) vkCreateDebugUtilsMessengerEXT = cast[proc (instance: VkInstance, pCreateInfo: ptr VkDebugUtilsMessengerCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pMessenger: ptr VkDebugUtilsMessengerEXT): VkResult {.stdcall.}](vkGetProc("vkCreateDebugUtilsMessengerEXT")) - vkDestroyDebugUtilsMessengerEXT = cast[proc (instance: VkInstance, messenger: VkDebugUtilsMessengerEXT, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDebugUtilsMessengerEXT")) - vkSubmitDebugUtilsMessageEXT = cast[proc (instance: VkInstance, messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEXT, messageTypes: VkDebugUtilsMessageTypeFlagsEXT, pCallbackData: ptr VkDebugUtilsMessengerCallbackDataEXT): void {.stdcall.}](vkGetProc("vkSubmitDebugUtilsMessageEXT")) + vkDestroyDebugUtilsMessengerEXT = cast[proc (instance: VkInstance, messenger: VkDebugUtilsMessengerEXT, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyDebugUtilsMessengerEXT")) + vkSubmitDebugUtilsMessageEXT = cast[proc (instance: VkInstance, messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEXT, messageTypes: VkDebugUtilsMessageTypeFlagsEXT, pCallbackData: ptr VkDebugUtilsMessengerCallbackDataEXT) {.stdcall.}](vkGetProc("vkSubmitDebugUtilsMessageEXT")) # Load VK_ANDROID_external_memory_android_hardware_buffer proc loadVK_ANDROID_external_memory_android_hardware_buffer*() = @@ -21648,44 +21648,44 @@ proc loadVK_AMDX_shader_enqueue*() = vkCreateExecutionGraphPipelinesAMDX = cast[proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkExecutionGraphPipelineCreateInfoAMDX, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateExecutionGraphPipelinesAMDX")) vkGetExecutionGraphPipelineScratchSizeAMDX = cast[proc (device: VkDevice, executionGraph: VkPipeline, pSizeInfo: ptr VkExecutionGraphPipelineScratchSizeAMDX): VkResult {.stdcall.}](vkGetProc("vkGetExecutionGraphPipelineScratchSizeAMDX")) vkGetExecutionGraphPipelineNodeIndexAMDX = cast[proc (device: VkDevice, executionGraph: VkPipeline, pNodeInfo: ptr VkPipelineShaderStageNodeCreateInfoAMDX, pNodeIndex: ptr uint32): VkResult {.stdcall.}](vkGetProc("vkGetExecutionGraphPipelineNodeIndexAMDX")) - vkCmdInitializeGraphScratchMemoryAMDX = cast[proc (commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress): void {.stdcall.}](vkGetProc("vkCmdInitializeGraphScratchMemoryAMDX")) - vkCmdDispatchGraphAMDX = cast[proc (commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, pCountInfo: ptr VkDispatchGraphCountInfoAMDX): void {.stdcall.}](vkGetProc("vkCmdDispatchGraphAMDX")) - vkCmdDispatchGraphIndirectAMDX = cast[proc (commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, pCountInfo: ptr VkDispatchGraphCountInfoAMDX): void {.stdcall.}](vkGetProc("vkCmdDispatchGraphIndirectAMDX")) - vkCmdDispatchGraphIndirectCountAMDX = cast[proc (commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, countInfo: VkDeviceAddress): void {.stdcall.}](vkGetProc("vkCmdDispatchGraphIndirectCountAMDX")) + vkCmdInitializeGraphScratchMemoryAMDX = cast[proc (commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress) {.stdcall.}](vkGetProc("vkCmdInitializeGraphScratchMemoryAMDX")) + vkCmdDispatchGraphAMDX = cast[proc (commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, pCountInfo: ptr VkDispatchGraphCountInfoAMDX) {.stdcall.}](vkGetProc("vkCmdDispatchGraphAMDX")) + vkCmdDispatchGraphIndirectAMDX = cast[proc (commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, pCountInfo: ptr VkDispatchGraphCountInfoAMDX) {.stdcall.}](vkGetProc("vkCmdDispatchGraphIndirectAMDX")) + vkCmdDispatchGraphIndirectCountAMDX = cast[proc (commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, countInfo: VkDeviceAddress) {.stdcall.}](vkGetProc("vkCmdDispatchGraphIndirectCountAMDX")) # Load VK_EXT_sample_locations proc loadVK_EXT_sample_locations*() = - vkCmdSetSampleLocationsEXT = cast[proc (commandBuffer: VkCommandBuffer, pSampleLocationsInfo: ptr VkSampleLocationsInfoEXT): void {.stdcall.}](vkGetProc("vkCmdSetSampleLocationsEXT")) - vkGetPhysicalDeviceMultisamplePropertiesEXT = cast[proc (physicalDevice: VkPhysicalDevice, samples: VkSampleCountFlagBits, pMultisampleProperties: ptr VkMultisamplePropertiesEXT): void {.stdcall.}](vkGetProc("vkGetPhysicalDeviceMultisamplePropertiesEXT")) + vkCmdSetSampleLocationsEXT = cast[proc (commandBuffer: VkCommandBuffer, pSampleLocationsInfo: ptr VkSampleLocationsInfoEXT) {.stdcall.}](vkGetProc("vkCmdSetSampleLocationsEXT")) + vkGetPhysicalDeviceMultisamplePropertiesEXT = cast[proc (physicalDevice: VkPhysicalDevice, samples: VkSampleCountFlagBits, pMultisampleProperties: ptr VkMultisamplePropertiesEXT) {.stdcall.}](vkGetProc("vkGetPhysicalDeviceMultisamplePropertiesEXT")) # Load VK_KHR_acceleration_structure proc loadVK_KHR_acceleration_structure*() = vkCreateAccelerationStructureKHR = cast[proc (device: VkDevice, pCreateInfo: ptr VkAccelerationStructureCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pAccelerationStructure: ptr VkAccelerationStructureKHR): VkResult {.stdcall.}](vkGetProc("vkCreateAccelerationStructureKHR")) - vkDestroyAccelerationStructureKHR = cast[proc (device: VkDevice, accelerationStructure: VkAccelerationStructureKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyAccelerationStructureKHR")) - vkCmdBuildAccelerationStructuresKHR = cast[proc (commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR): void {.stdcall.}](vkGetProc("vkCmdBuildAccelerationStructuresKHR")) - vkCmdBuildAccelerationStructuresIndirectKHR = cast[proc (commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, pIndirectDeviceAddresses: ptr VkDeviceAddress, pIndirectStrides: ptr uint32, ppMaxPrimitiveCounts: ptr ptr uint32): void {.stdcall.}](vkGetProc("vkCmdBuildAccelerationStructuresIndirectKHR")) + vkDestroyAccelerationStructureKHR = cast[proc (device: VkDevice, accelerationStructure: VkAccelerationStructureKHR, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyAccelerationStructureKHR")) + vkCmdBuildAccelerationStructuresKHR = cast[proc (commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR) {.stdcall.}](vkGetProc("vkCmdBuildAccelerationStructuresKHR")) + vkCmdBuildAccelerationStructuresIndirectKHR = cast[proc (commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, pIndirectDeviceAddresses: ptr VkDeviceAddress, pIndirectStrides: ptr uint32, ppMaxPrimitiveCounts: ptr ptr uint32) {.stdcall.}](vkGetProc("vkCmdBuildAccelerationStructuresIndirectKHR")) vkBuildAccelerationStructuresKHR = cast[proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR): VkResult {.stdcall.}](vkGetProc("vkBuildAccelerationStructuresKHR")) vkCopyAccelerationStructureKHR = cast[proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyAccelerationStructureInfoKHR): VkResult {.stdcall.}](vkGetProc("vkCopyAccelerationStructureKHR")) vkCopyAccelerationStructureToMemoryKHR = cast[proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR): VkResult {.stdcall.}](vkGetProc("vkCopyAccelerationStructureToMemoryKHR")) vkCopyMemoryToAccelerationStructureKHR = cast[proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR): VkResult {.stdcall.}](vkGetProc("vkCopyMemoryToAccelerationStructureKHR")) vkWriteAccelerationStructuresPropertiesKHR = cast[proc (device: VkDevice, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR, queryType: VkQueryType, dataSize: uint, pData: pointer, stride: uint): VkResult {.stdcall.}](vkGetProc("vkWriteAccelerationStructuresPropertiesKHR")) - vkCmdCopyAccelerationStructureKHR = cast[proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyAccelerationStructureInfoKHR): void {.stdcall.}](vkGetProc("vkCmdCopyAccelerationStructureKHR")) - vkCmdCopyAccelerationStructureToMemoryKHR = cast[proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR): void {.stdcall.}](vkGetProc("vkCmdCopyAccelerationStructureToMemoryKHR")) - vkCmdCopyMemoryToAccelerationStructureKHR = cast[proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR): void {.stdcall.}](vkGetProc("vkCmdCopyMemoryToAccelerationStructureKHR")) + vkCmdCopyAccelerationStructureKHR = cast[proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyAccelerationStructureInfoKHR) {.stdcall.}](vkGetProc("vkCmdCopyAccelerationStructureKHR")) + vkCmdCopyAccelerationStructureToMemoryKHR = cast[proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR) {.stdcall.}](vkGetProc("vkCmdCopyAccelerationStructureToMemoryKHR")) + vkCmdCopyMemoryToAccelerationStructureKHR = cast[proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR) {.stdcall.}](vkGetProc("vkCmdCopyMemoryToAccelerationStructureKHR")) vkGetAccelerationStructureDeviceAddressKHR = cast[proc (device: VkDevice, pInfo: ptr VkAccelerationStructureDeviceAddressInfoKHR): VkDeviceAddress {.stdcall.}](vkGetProc("vkGetAccelerationStructureDeviceAddressKHR")) - vkCmdWriteAccelerationStructuresPropertiesKHR = cast[proc (commandBuffer: VkCommandBuffer, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR, queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteAccelerationStructuresPropertiesKHR")) - vkGetDeviceAccelerationStructureCompatibilityKHR = cast[proc (device: VkDevice, pVersionInfo: ptr VkAccelerationStructureVersionInfoKHR, pCompatibility: ptr VkAccelerationStructureCompatibilityKHR): void {.stdcall.}](vkGetProc("vkGetDeviceAccelerationStructureCompatibilityKHR")) - vkGetAccelerationStructureBuildSizesKHR = cast[proc (device: VkDevice, buildType: VkAccelerationStructureBuildTypeKHR, pBuildInfo: ptr VkAccelerationStructureBuildGeometryInfoKHR, pMaxPrimitiveCounts: ptr uint32, pSizeInfo: ptr VkAccelerationStructureBuildSizesInfoKHR): void {.stdcall.}](vkGetProc("vkGetAccelerationStructureBuildSizesKHR")) + vkCmdWriteAccelerationStructuresPropertiesKHR = cast[proc (commandBuffer: VkCommandBuffer, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR, queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32) {.stdcall.}](vkGetProc("vkCmdWriteAccelerationStructuresPropertiesKHR")) + vkGetDeviceAccelerationStructureCompatibilityKHR = cast[proc (device: VkDevice, pVersionInfo: ptr VkAccelerationStructureVersionInfoKHR, pCompatibility: ptr VkAccelerationStructureCompatibilityKHR) {.stdcall.}](vkGetProc("vkGetDeviceAccelerationStructureCompatibilityKHR")) + vkGetAccelerationStructureBuildSizesKHR = cast[proc (device: VkDevice, buildType: VkAccelerationStructureBuildTypeKHR, pBuildInfo: ptr VkAccelerationStructureBuildGeometryInfoKHR, pMaxPrimitiveCounts: ptr uint32, pSizeInfo: ptr VkAccelerationStructureBuildSizesInfoKHR) {.stdcall.}](vkGetProc("vkGetAccelerationStructureBuildSizesKHR")) # Load VK_KHR_ray_tracing_pipeline proc loadVK_KHR_ray_tracing_pipeline*() = - vkCmdTraceRaysKHR = cast[proc (commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, width: uint32, height: uint32, depth: uint32): void {.stdcall.}](vkGetProc("vkCmdTraceRaysKHR")) + vkCmdTraceRaysKHR = cast[proc (commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, width: uint32, height: uint32, depth: uint32) {.stdcall.}](vkGetProc("vkCmdTraceRaysKHR")) vkCreateRayTracingPipelinesKHR = cast[proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesKHR")) vkGetRayTracingShaderGroupHandlesKHR = cast[proc (device: VkDevice, pipeline: VkPipeline, firstGroup: uint32, groupCount: uint32, dataSize: uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetRayTracingShaderGroupHandlesKHR")) vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = cast[proc (device: VkDevice, pipeline: VkPipeline, firstGroup: uint32, groupCount: uint32, dataSize: uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetRayTracingCaptureReplayShaderGroupHandlesKHR")) - vkCmdTraceRaysIndirectKHR = cast[proc (commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, indirectDeviceAddress: VkDeviceAddress): void {.stdcall.}](vkGetProc("vkCmdTraceRaysIndirectKHR")) + vkCmdTraceRaysIndirectKHR = cast[proc (commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, indirectDeviceAddress: VkDeviceAddress) {.stdcall.}](vkGetProc("vkCmdTraceRaysIndirectKHR")) vkGetRayTracingShaderGroupStackSizeKHR = cast[proc (device: VkDevice, pipeline: VkPipeline, group: uint32, groupShader: VkShaderGroupShaderKHR): VkDeviceSize {.stdcall.}](vkGetProc("vkGetRayTracingShaderGroupStackSizeKHR")) - vkCmdSetRayTracingPipelineStackSizeKHR = cast[proc (commandBuffer: VkCommandBuffer, pipelineStackSize: uint32): void {.stdcall.}](vkGetProc("vkCmdSetRayTracingPipelineStackSizeKHR")) + vkCmdSetRayTracingPipelineStackSizeKHR = cast[proc (commandBuffer: VkCommandBuffer, pipelineStackSize: uint32) {.stdcall.}](vkGetProc("vkCmdSetRayTracingPipelineStackSizeKHR")) # Load VK_EXT_image_drm_format_modifier proc loadVK_EXT_image_drm_format_modifier*() = @@ -21694,28 +21694,28 @@ proc loadVK_EXT_image_drm_format_modifier*() = # Load VK_EXT_validation_cache proc loadVK_EXT_validation_cache*() = vkCreateValidationCacheEXT = cast[proc (device: VkDevice, pCreateInfo: ptr VkValidationCacheCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pValidationCache: ptr VkValidationCacheEXT): VkResult {.stdcall.}](vkGetProc("vkCreateValidationCacheEXT")) - vkDestroyValidationCacheEXT = cast[proc (device: VkDevice, validationCache: VkValidationCacheEXT, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyValidationCacheEXT")) + vkDestroyValidationCacheEXT = cast[proc (device: VkDevice, validationCache: VkValidationCacheEXT, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyValidationCacheEXT")) vkMergeValidationCachesEXT = cast[proc (device: VkDevice, dstCache: VkValidationCacheEXT, srcCacheCount: uint32, pSrcCaches: ptr VkValidationCacheEXT): VkResult {.stdcall.}](vkGetProc("vkMergeValidationCachesEXT")) vkGetValidationCacheDataEXT = cast[proc (device: VkDevice, validationCache: VkValidationCacheEXT, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetValidationCacheDataEXT")) # Load VK_NV_shading_rate_image proc loadVK_NV_shading_rate_image*() = - vkCmdBindShadingRateImageNV = cast[proc (commandBuffer: VkCommandBuffer, imageView: VkImageView, imageLayout: VkImageLayout): void {.stdcall.}](vkGetProc("vkCmdBindShadingRateImageNV")) - vkCmdSetViewportShadingRatePaletteNV = cast[proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pShadingRatePalettes: ptr VkShadingRatePaletteNV): void {.stdcall.}](vkGetProc("vkCmdSetViewportShadingRatePaletteNV")) - vkCmdSetCoarseSampleOrderNV = cast[proc (commandBuffer: VkCommandBuffer, sampleOrderType: VkCoarseSampleOrderTypeNV, customSampleOrderCount: uint32, pCustomSampleOrders: ptr VkCoarseSampleOrderCustomNV): void {.stdcall.}](vkGetProc("vkCmdSetCoarseSampleOrderNV")) + vkCmdBindShadingRateImageNV = cast[proc (commandBuffer: VkCommandBuffer, imageView: VkImageView, imageLayout: VkImageLayout) {.stdcall.}](vkGetProc("vkCmdBindShadingRateImageNV")) + vkCmdSetViewportShadingRatePaletteNV = cast[proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pShadingRatePalettes: ptr VkShadingRatePaletteNV) {.stdcall.}](vkGetProc("vkCmdSetViewportShadingRatePaletteNV")) + vkCmdSetCoarseSampleOrderNV = cast[proc (commandBuffer: VkCommandBuffer, sampleOrderType: VkCoarseSampleOrderTypeNV, customSampleOrderCount: uint32, pCustomSampleOrders: ptr VkCoarseSampleOrderCustomNV) {.stdcall.}](vkGetProc("vkCmdSetCoarseSampleOrderNV")) # Load VK_NV_ray_tracing proc loadVK_NV_ray_tracing*() = vkCreateAccelerationStructureNV = cast[proc (device: VkDevice, pCreateInfo: ptr VkAccelerationStructureCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pAccelerationStructure: ptr VkAccelerationStructureNV): VkResult {.stdcall.}](vkGetProc("vkCreateAccelerationStructureNV")) - vkDestroyAccelerationStructureNV = cast[proc (device: VkDevice, accelerationStructure: VkAccelerationStructureNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyAccelerationStructureNV")) - vkGetAccelerationStructureMemoryRequirementsNV = cast[proc (device: VkDevice, pInfo: ptr VkAccelerationStructureMemoryRequirementsInfoNV, pMemoryRequirements: ptr VkMemoryRequirements2KHR): void {.stdcall.}](vkGetProc("vkGetAccelerationStructureMemoryRequirementsNV")) + vkDestroyAccelerationStructureNV = cast[proc (device: VkDevice, accelerationStructure: VkAccelerationStructureNV, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyAccelerationStructureNV")) + vkGetAccelerationStructureMemoryRequirementsNV = cast[proc (device: VkDevice, pInfo: ptr VkAccelerationStructureMemoryRequirementsInfoNV, pMemoryRequirements: ptr VkMemoryRequirements2KHR) {.stdcall.}](vkGetProc("vkGetAccelerationStructureMemoryRequirementsNV")) vkBindAccelerationStructureMemoryNV = cast[proc (device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindAccelerationStructureMemoryInfoNV): VkResult {.stdcall.}](vkGetProc("vkBindAccelerationStructureMemoryNV")) - vkCmdBuildAccelerationStructureNV = cast[proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkAccelerationStructureInfoNV, instanceData: VkBuffer, instanceOffset: VkDeviceSize, update: VkBool32, dst: VkAccelerationStructureNV, src: VkAccelerationStructureNV, scratch: VkBuffer, scratchOffset: VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdBuildAccelerationStructureNV")) - vkCmdCopyAccelerationStructureNV = cast[proc (commandBuffer: VkCommandBuffer, dst: VkAccelerationStructureNV, src: VkAccelerationStructureNV, mode: VkCopyAccelerationStructureModeKHR): void {.stdcall.}](vkGetProc("vkCmdCopyAccelerationStructureNV")) - vkCmdTraceRaysNV = cast[proc (commandBuffer: VkCommandBuffer, raygenShaderBindingTableBuffer: VkBuffer, raygenShaderBindingOffset: VkDeviceSize, missShaderBindingTableBuffer: VkBuffer, missShaderBindingOffset: VkDeviceSize, missShaderBindingStride: VkDeviceSize, hitShaderBindingTableBuffer: VkBuffer, hitShaderBindingOffset: VkDeviceSize, hitShaderBindingStride: VkDeviceSize, callableShaderBindingTableBuffer: VkBuffer, callableShaderBindingOffset: VkDeviceSize, callableShaderBindingStride: VkDeviceSize, width: uint32, height: uint32, depth: uint32): void {.stdcall.}](vkGetProc("vkCmdTraceRaysNV")) + vkCmdBuildAccelerationStructureNV = cast[proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkAccelerationStructureInfoNV, instanceData: VkBuffer, instanceOffset: VkDeviceSize, update: VkBool32, dst: VkAccelerationStructureNV, src: VkAccelerationStructureNV, scratch: VkBuffer, scratchOffset: VkDeviceSize) {.stdcall.}](vkGetProc("vkCmdBuildAccelerationStructureNV")) + vkCmdCopyAccelerationStructureNV = cast[proc (commandBuffer: VkCommandBuffer, dst: VkAccelerationStructureNV, src: VkAccelerationStructureNV, mode: VkCopyAccelerationStructureModeKHR) {.stdcall.}](vkGetProc("vkCmdCopyAccelerationStructureNV")) + vkCmdTraceRaysNV = cast[proc (commandBuffer: VkCommandBuffer, raygenShaderBindingTableBuffer: VkBuffer, raygenShaderBindingOffset: VkDeviceSize, missShaderBindingTableBuffer: VkBuffer, missShaderBindingOffset: VkDeviceSize, missShaderBindingStride: VkDeviceSize, hitShaderBindingTableBuffer: VkBuffer, hitShaderBindingOffset: VkDeviceSize, hitShaderBindingStride: VkDeviceSize, callableShaderBindingTableBuffer: VkBuffer, callableShaderBindingOffset: VkDeviceSize, callableShaderBindingStride: VkDeviceSize, width: uint32, height: uint32, depth: uint32) {.stdcall.}](vkGetProc("vkCmdTraceRaysNV")) vkCreateRayTracingPipelinesNV = cast[proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.}](vkGetProc("vkCreateRayTracingPipelinesNV")) vkGetAccelerationStructureHandleNV = cast[proc (device: VkDevice, accelerationStructure: VkAccelerationStructureNV, dataSize: uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetAccelerationStructureHandleNV")) - vkCmdWriteAccelerationStructuresPropertiesNV = cast[proc (commandBuffer: VkCommandBuffer, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureNV, queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteAccelerationStructuresPropertiesNV")) + vkCmdWriteAccelerationStructuresPropertiesNV = cast[proc (commandBuffer: VkCommandBuffer, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureNV, queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32) {.stdcall.}](vkGetProc("vkCmdWriteAccelerationStructuresPropertiesNV")) vkCompileDeferredNV = cast[proc (device: VkDevice, pipeline: VkPipeline, shader: uint32): VkResult {.stdcall.}](vkGetProc("vkCompileDeferredNV")) # Load VK_EXT_external_memory_host @@ -21724,28 +21724,28 @@ proc loadVK_EXT_external_memory_host*() = # Load VK_AMD_buffer_marker proc loadVK_AMD_buffer_marker*() = - vkCmdWriteBufferMarkerAMD = cast[proc (commandBuffer: VkCommandBuffer, pipelineStage: VkPipelineStageFlagBits, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, marker: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteBufferMarkerAMD")) + vkCmdWriteBufferMarkerAMD = cast[proc (commandBuffer: VkCommandBuffer, pipelineStage: VkPipelineStageFlagBits, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, marker: uint32) {.stdcall.}](vkGetProc("vkCmdWriteBufferMarkerAMD")) # Load VK_NV_mesh_shader proc loadVK_NV_mesh_shader*() = - vkCmdDrawMeshTasksNV = cast[proc (commandBuffer: VkCommandBuffer, taskCount: uint32, firstTask: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksNV")) - vkCmdDrawMeshTasksIndirectNV = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksIndirectNV")) - vkCmdDrawMeshTasksIndirectCountNV = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksIndirectCountNV")) + vkCmdDrawMeshTasksNV = cast[proc (commandBuffer: VkCommandBuffer, taskCount: uint32, firstTask: uint32) {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksNV")) + vkCmdDrawMeshTasksIndirectNV = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32) {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksIndirectNV")) + vkCmdDrawMeshTasksIndirectCountNV = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32) {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksIndirectCountNV")) # Load VK_NV_scissor_exclusive proc loadVK_NV_scissor_exclusive*() = - vkCmdSetExclusiveScissorEnableNV = cast[proc (commandBuffer: VkCommandBuffer, firstExclusiveScissor: uint32, exclusiveScissorCount: uint32, pExclusiveScissorEnables: ptr VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetExclusiveScissorEnableNV")) - vkCmdSetExclusiveScissorNV = cast[proc (commandBuffer: VkCommandBuffer, firstExclusiveScissor: uint32, exclusiveScissorCount: uint32, pExclusiveScissors: ptr VkRect2D): void {.stdcall.}](vkGetProc("vkCmdSetExclusiveScissorNV")) + vkCmdSetExclusiveScissorEnableNV = cast[proc (commandBuffer: VkCommandBuffer, firstExclusiveScissor: uint32, exclusiveScissorCount: uint32, pExclusiveScissorEnables: ptr VkBool32) {.stdcall.}](vkGetProc("vkCmdSetExclusiveScissorEnableNV")) + vkCmdSetExclusiveScissorNV = cast[proc (commandBuffer: VkCommandBuffer, firstExclusiveScissor: uint32, exclusiveScissorCount: uint32, pExclusiveScissors: ptr VkRect2D) {.stdcall.}](vkGetProc("vkCmdSetExclusiveScissorNV")) # Load VK_NV_device_diagnostic_checkpoints proc loadVK_NV_device_diagnostic_checkpoints*() = - vkCmdSetCheckpointNV = cast[proc (commandBuffer: VkCommandBuffer, pCheckpointMarker: pointer): void {.stdcall.}](vkGetProc("vkCmdSetCheckpointNV")) - vkGetQueueCheckpointDataNV = cast[proc (queue: VkQueue, pCheckpointDataCount: ptr uint32, pCheckpointData: ptr VkCheckpointDataNV): void {.stdcall.}](vkGetProc("vkGetQueueCheckpointDataNV")) + vkCmdSetCheckpointNV = cast[proc (commandBuffer: VkCommandBuffer, pCheckpointMarker: pointer) {.stdcall.}](vkGetProc("vkCmdSetCheckpointNV")) + vkGetQueueCheckpointDataNV = cast[proc (queue: VkQueue, pCheckpointDataCount: ptr uint32, pCheckpointData: ptr VkCheckpointDataNV) {.stdcall.}](vkGetProc("vkGetQueueCheckpointDataNV")) # Load VK_INTEL_performance_query proc loadVK_INTEL_performance_query*() = vkInitializePerformanceApiINTEL = cast[proc (device: VkDevice, pInitializeInfo: ptr VkInitializePerformanceApiInfoINTEL): VkResult {.stdcall.}](vkGetProc("vkInitializePerformanceApiINTEL")) - vkUninitializePerformanceApiINTEL = cast[proc (device: VkDevice): void {.stdcall.}](vkGetProc("vkUninitializePerformanceApiINTEL")) + vkUninitializePerformanceApiINTEL = cast[proc (device: VkDevice) {.stdcall.}](vkGetProc("vkUninitializePerformanceApiINTEL")) vkCmdSetPerformanceMarkerINTEL = cast[proc (commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkPerformanceMarkerInfoINTEL): VkResult {.stdcall.}](vkGetProc("vkCmdSetPerformanceMarkerINTEL")) vkCmdSetPerformanceStreamMarkerINTEL = cast[proc (commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkPerformanceStreamMarkerInfoINTEL): VkResult {.stdcall.}](vkGetProc("vkCmdSetPerformanceStreamMarkerINTEL")) vkCmdSetPerformanceOverrideINTEL = cast[proc (commandBuffer: VkCommandBuffer, pOverrideInfo: ptr VkPerformanceOverrideInfoINTEL): VkResult {.stdcall.}](vkGetProc("vkCmdSetPerformanceOverrideINTEL")) @@ -21756,7 +21756,7 @@ proc loadVK_INTEL_performance_query*() = # Load VK_AMD_display_native_hdr proc loadVK_AMD_display_native_hdr*() = - vkSetLocalDimmingAMD = cast[proc (device: VkDevice, swapChain: VkSwapchainKHR, localDimmingEnable: VkBool32): void {.stdcall.}](vkGetProc("vkSetLocalDimmingAMD")) + vkSetLocalDimmingAMD = cast[proc (device: VkDevice, swapChain: VkSwapchainKHR, localDimmingEnable: VkBool32) {.stdcall.}](vkGetProc("vkSetLocalDimmingAMD")) # Load VK_FUCHSIA_imagepipe_surface proc loadVK_FUCHSIA_imagepipe_surface*() = @@ -21769,12 +21769,12 @@ proc loadVK_EXT_metal_surface*() = # Load VK_KHR_fragment_shading_rate proc loadVK_KHR_fragment_shading_rate*() = vkGetPhysicalDeviceFragmentShadingRatesKHR = cast[proc (physicalDevice: VkPhysicalDevice, pFragmentShadingRateCount: ptr uint32, pFragmentShadingRates: ptr VkPhysicalDeviceFragmentShadingRateKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceFragmentShadingRatesKHR")) - vkCmdSetFragmentShadingRateKHR = cast[proc (commandBuffer: VkCommandBuffer, pFragmentSize: ptr VkExtent2D, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): void {.stdcall.}](vkGetProc("vkCmdSetFragmentShadingRateKHR")) + vkCmdSetFragmentShadingRateKHR = cast[proc (commandBuffer: VkCommandBuffer, pFragmentSize: ptr VkExtent2D, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]) {.stdcall.}](vkGetProc("vkCmdSetFragmentShadingRateKHR")) # Load VK_KHR_dynamic_rendering_local_read proc loadVK_KHR_dynamic_rendering_local_read*() = - vkCmdSetRenderingAttachmentLocationsKHR = cast[proc (commandBuffer: VkCommandBuffer, pLocationInfo: ptr VkRenderingAttachmentLocationInfoKHR): void {.stdcall.}](vkGetProc("vkCmdSetRenderingAttachmentLocationsKHR")) - vkCmdSetRenderingInputAttachmentIndicesKHR = cast[proc (commandBuffer: VkCommandBuffer, pLocationInfo: ptr VkRenderingInputAttachmentIndexInfoKHR): void {.stdcall.}](vkGetProc("vkCmdSetRenderingInputAttachmentIndicesKHR")) + vkCmdSetRenderingAttachmentLocationsKHR = cast[proc (commandBuffer: VkCommandBuffer, pLocationInfo: ptr VkRenderingAttachmentLocationInfoKHR) {.stdcall.}](vkGetProc("vkCmdSetRenderingAttachmentLocationsKHR")) + vkCmdSetRenderingInputAttachmentIndicesKHR = cast[proc (commandBuffer: VkCommandBuffer, pLocationInfo: ptr VkRenderingInputAttachmentIndexInfoKHR) {.stdcall.}](vkGetProc("vkCmdSetRenderingInputAttachmentIndicesKHR")) # Load VK_KHR_present_wait proc loadVK_KHR_present_wait*() = @@ -21803,7 +21803,7 @@ proc loadVK_EXT_headless_surface*() = # Load VK_KHR_deferred_host_operations proc loadVK_KHR_deferred_host_operations*() = vkCreateDeferredOperationKHR = cast[proc (device: VkDevice, pAllocator: ptr VkAllocationCallbacks, pDeferredOperation: ptr VkDeferredOperationKHR): VkResult {.stdcall.}](vkGetProc("vkCreateDeferredOperationKHR")) - vkDestroyDeferredOperationKHR = cast[proc (device: VkDevice, operation: VkDeferredOperationKHR, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyDeferredOperationKHR")) + vkDestroyDeferredOperationKHR = cast[proc (device: VkDevice, operation: VkDeferredOperationKHR, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyDeferredOperationKHR")) vkGetDeferredOperationMaxConcurrencyKHR = cast[proc (device: VkDevice, operation: VkDeferredOperationKHR): uint32 {.stdcall.}](vkGetProc("vkGetDeferredOperationMaxConcurrencyKHR")) vkGetDeferredOperationResultKHR = cast[proc (device: VkDevice, operation: VkDeferredOperationKHR): VkResult {.stdcall.}](vkGetProc("vkGetDeferredOperationResultKHR")) vkDeferredOperationJoinKHR = cast[proc (device: VkDevice, operation: VkDeferredOperationKHR): VkResult {.stdcall.}](vkGetProc("vkDeferredOperationJoinKHR")) @@ -21832,16 +21832,16 @@ proc loadVK_EXT_swapchain_maintenance1*() = # Load VK_NV_device_generated_commands proc loadVK_NV_device_generated_commands*() = - vkGetGeneratedCommandsMemoryRequirementsNV = cast[proc (device: VkDevice, pInfo: ptr VkGeneratedCommandsMemoryRequirementsInfoNV, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetGeneratedCommandsMemoryRequirementsNV")) - vkCmdPreprocessGeneratedCommandsNV = cast[proc (commandBuffer: VkCommandBuffer, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV): void {.stdcall.}](vkGetProc("vkCmdPreprocessGeneratedCommandsNV")) - vkCmdExecuteGeneratedCommandsNV = cast[proc (commandBuffer: VkCommandBuffer, isPreprocessed: VkBool32, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV): void {.stdcall.}](vkGetProc("vkCmdExecuteGeneratedCommandsNV")) - vkCmdBindPipelineShaderGroupNV = cast[proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline, groupIndex: uint32): void {.stdcall.}](vkGetProc("vkCmdBindPipelineShaderGroupNV")) + vkGetGeneratedCommandsMemoryRequirementsNV = cast[proc (device: VkDevice, pInfo: ptr VkGeneratedCommandsMemoryRequirementsInfoNV, pMemoryRequirements: ptr VkMemoryRequirements2) {.stdcall.}](vkGetProc("vkGetGeneratedCommandsMemoryRequirementsNV")) + vkCmdPreprocessGeneratedCommandsNV = cast[proc (commandBuffer: VkCommandBuffer, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV) {.stdcall.}](vkGetProc("vkCmdPreprocessGeneratedCommandsNV")) + vkCmdExecuteGeneratedCommandsNV = cast[proc (commandBuffer: VkCommandBuffer, isPreprocessed: VkBool32, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV) {.stdcall.}](vkGetProc("vkCmdExecuteGeneratedCommandsNV")) + vkCmdBindPipelineShaderGroupNV = cast[proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline, groupIndex: uint32) {.stdcall.}](vkGetProc("vkCmdBindPipelineShaderGroupNV")) vkCreateIndirectCommandsLayoutNV = cast[proc (device: VkDevice, pCreateInfo: ptr VkIndirectCommandsLayoutCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pIndirectCommandsLayout: ptr VkIndirectCommandsLayoutNV): VkResult {.stdcall.}](vkGetProc("vkCreateIndirectCommandsLayoutNV")) - vkDestroyIndirectCommandsLayoutNV = cast[proc (device: VkDevice, indirectCommandsLayout: VkIndirectCommandsLayoutNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyIndirectCommandsLayoutNV")) + vkDestroyIndirectCommandsLayoutNV = cast[proc (device: VkDevice, indirectCommandsLayout: VkIndirectCommandsLayoutNV, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyIndirectCommandsLayoutNV")) # Load VK_EXT_depth_bias_control proc loadVK_EXT_depth_bias_control*() = - vkCmdSetDepthBias2EXT = cast[proc (commandBuffer: VkCommandBuffer, pDepthBiasInfo: ptr VkDepthBiasInfoEXT): void {.stdcall.}](vkGetProc("vkCmdSetDepthBias2EXT")) + vkCmdSetDepthBias2EXT = cast[proc (commandBuffer: VkCommandBuffer, pDepthBiasInfo: ptr VkDepthBiasInfoEXT) {.stdcall.}](vkGetProc("vkCmdSetDepthBias2EXT")) # Load VK_EXT_acquire_drm_display proc loadVK_EXT_acquire_drm_display*() = @@ -21852,39 +21852,39 @@ proc loadVK_EXT_acquire_drm_display*() = proc loadVK_KHR_video_encode_queue*() = vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR = cast[proc (physicalDevice: VkPhysicalDevice, pQualityLevelInfo: ptr VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR, pQualityLevelProperties: ptr VkVideoEncodeQualityLevelPropertiesKHR): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR")) vkGetEncodedVideoSessionParametersKHR = cast[proc (device: VkDevice, pVideoSessionParametersInfo: ptr VkVideoEncodeSessionParametersGetInfoKHR, pFeedbackInfo: ptr VkVideoEncodeSessionParametersFeedbackInfoKHR, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetEncodedVideoSessionParametersKHR")) - vkCmdEncodeVideoKHR = cast[proc (commandBuffer: VkCommandBuffer, pEncodeInfo: ptr VkVideoEncodeInfoKHR): void {.stdcall.}](vkGetProc("vkCmdEncodeVideoKHR")) + vkCmdEncodeVideoKHR = cast[proc (commandBuffer: VkCommandBuffer, pEncodeInfo: ptr VkVideoEncodeInfoKHR) {.stdcall.}](vkGetProc("vkCmdEncodeVideoKHR")) # Load VK_NV_cuda_kernel_launch proc loadVK_NV_cuda_kernel_launch*() = vkCreateCudaModuleNV = cast[proc (device: VkDevice, pCreateInfo: ptr VkCudaModuleCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pModule: ptr VkCudaModuleNV): VkResult {.stdcall.}](vkGetProc("vkCreateCudaModuleNV")) vkGetCudaModuleCacheNV = cast[proc (device: VkDevice, module: VkCudaModuleNV, pCacheSize: ptr uint, pCacheData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetCudaModuleCacheNV")) vkCreateCudaFunctionNV = cast[proc (device: VkDevice, pCreateInfo: ptr VkCudaFunctionCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pFunction: ptr VkCudaFunctionNV): VkResult {.stdcall.}](vkGetProc("vkCreateCudaFunctionNV")) - vkDestroyCudaModuleNV = cast[proc (device: VkDevice, module: VkCudaModuleNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyCudaModuleNV")) - vkDestroyCudaFunctionNV = cast[proc (device: VkDevice, function: VkCudaFunctionNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyCudaFunctionNV")) - vkCmdCudaLaunchKernelNV = cast[proc (commandBuffer: VkCommandBuffer, pLaunchInfo: ptr VkCudaLaunchInfoNV): void {.stdcall.}](vkGetProc("vkCmdCudaLaunchKernelNV")) + vkDestroyCudaModuleNV = cast[proc (device: VkDevice, module: VkCudaModuleNV, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyCudaModuleNV")) + vkDestroyCudaFunctionNV = cast[proc (device: VkDevice, function: VkCudaFunctionNV, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyCudaFunctionNV")) + vkCmdCudaLaunchKernelNV = cast[proc (commandBuffer: VkCommandBuffer, pLaunchInfo: ptr VkCudaLaunchInfoNV) {.stdcall.}](vkGetProc("vkCmdCudaLaunchKernelNV")) # Load VK_KHR_object_refresh proc loadVK_KHR_object_refresh*() = - vkCmdRefreshObjectsKHR = cast[proc (commandBuffer: VkCommandBuffer, pRefreshObjects: ptr VkRefreshObjectListKHR): void {.stdcall.}](vkGetProc("vkCmdRefreshObjectsKHR")) + vkCmdRefreshObjectsKHR = cast[proc (commandBuffer: VkCommandBuffer, pRefreshObjects: ptr VkRefreshObjectListKHR) {.stdcall.}](vkGetProc("vkCmdRefreshObjectsKHR")) vkGetPhysicalDeviceRefreshableObjectTypesKHR = cast[proc (physicalDevice: VkPhysicalDevice, pRefreshableObjectTypeCount: ptr uint32, pRefreshableObjectTypes: ptr VkObjectType): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceRefreshableObjectTypesKHR")) # Load VK_EXT_metal_objects proc loadVK_EXT_metal_objects*() = - vkExportMetalObjectsEXT = cast[proc (device: VkDevice, pMetalObjectsInfo: ptr VkExportMetalObjectsInfoEXT): void {.stdcall.}](vkGetProc("vkExportMetalObjectsEXT")) + vkExportMetalObjectsEXT = cast[proc (device: VkDevice, pMetalObjectsInfo: ptr VkExportMetalObjectsInfoEXT) {.stdcall.}](vkGetProc("vkExportMetalObjectsEXT")) # Load VK_KHR_synchronization2 proc loadVK_KHR_synchronization2*() = - vkCmdWriteBufferMarker2AMD = cast[proc (commandBuffer: VkCommandBuffer, stage: VkPipelineStageFlags2, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, marker: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteBufferMarker2AMD")) - vkGetQueueCheckpointData2NV = cast[proc (queue: VkQueue, pCheckpointDataCount: ptr uint32, pCheckpointData: ptr VkCheckpointData2NV): void {.stdcall.}](vkGetProc("vkGetQueueCheckpointData2NV")) + vkCmdWriteBufferMarker2AMD = cast[proc (commandBuffer: VkCommandBuffer, stage: VkPipelineStageFlags2, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, marker: uint32) {.stdcall.}](vkGetProc("vkCmdWriteBufferMarker2AMD")) + vkGetQueueCheckpointData2NV = cast[proc (queue: VkQueue, pCheckpointDataCount: ptr uint32, pCheckpointData: ptr VkCheckpointData2NV) {.stdcall.}](vkGetProc("vkGetQueueCheckpointData2NV")) # Load VK_EXT_descriptor_buffer proc loadVK_EXT_descriptor_buffer*() = - vkGetDescriptorSetLayoutSizeEXT = cast[proc (device: VkDevice, layout: VkDescriptorSetLayout, pLayoutSizeInBytes: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutSizeEXT")) - vkGetDescriptorSetLayoutBindingOffsetEXT = cast[proc (device: VkDevice, layout: VkDescriptorSetLayout, binding: uint32, pOffset: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutBindingOffsetEXT")) - vkGetDescriptorEXT = cast[proc (device: VkDevice, pDescriptorInfo: ptr VkDescriptorGetInfoEXT, dataSize: uint, pDescriptor: pointer): void {.stdcall.}](vkGetProc("vkGetDescriptorEXT")) - vkCmdBindDescriptorBuffersEXT = cast[proc (commandBuffer: VkCommandBuffer, bufferCount: uint32, pBindingInfos: ptr VkDescriptorBufferBindingInfoEXT): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorBuffersEXT")) - vkCmdSetDescriptorBufferOffsetsEXT = cast[proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, firstSet: uint32, setCount: uint32, pBufferIndices: ptr uint32, pOffsets: ptr VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdSetDescriptorBufferOffsetsEXT")) - vkCmdBindDescriptorBufferEmbeddedSamplersEXT = cast[proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, set: uint32): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorBufferEmbeddedSamplersEXT")) + vkGetDescriptorSetLayoutSizeEXT = cast[proc (device: VkDevice, layout: VkDescriptorSetLayout, pLayoutSizeInBytes: ptr VkDeviceSize) {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutSizeEXT")) + vkGetDescriptorSetLayoutBindingOffsetEXT = cast[proc (device: VkDevice, layout: VkDescriptorSetLayout, binding: uint32, pOffset: ptr VkDeviceSize) {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutBindingOffsetEXT")) + vkGetDescriptorEXT = cast[proc (device: VkDevice, pDescriptorInfo: ptr VkDescriptorGetInfoEXT, dataSize: uint, pDescriptor: pointer) {.stdcall.}](vkGetProc("vkGetDescriptorEXT")) + vkCmdBindDescriptorBuffersEXT = cast[proc (commandBuffer: VkCommandBuffer, bufferCount: uint32, pBindingInfos: ptr VkDescriptorBufferBindingInfoEXT) {.stdcall.}](vkGetProc("vkCmdBindDescriptorBuffersEXT")) + vkCmdSetDescriptorBufferOffsetsEXT = cast[proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, firstSet: uint32, setCount: uint32, pBufferIndices: ptr uint32, pOffsets: ptr VkDeviceSize) {.stdcall.}](vkGetProc("vkCmdSetDescriptorBufferOffsetsEXT")) + vkCmdBindDescriptorBufferEmbeddedSamplersEXT = cast[proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, set: uint32) {.stdcall.}](vkGetProc("vkCmdBindDescriptorBufferEmbeddedSamplersEXT")) vkGetBufferOpaqueCaptureDescriptorDataEXT = cast[proc (device: VkDevice, pInfo: ptr VkBufferCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetBufferOpaqueCaptureDescriptorDataEXT")) vkGetImageOpaqueCaptureDescriptorDataEXT = cast[proc (device: VkDevice, pInfo: ptr VkImageCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetImageOpaqueCaptureDescriptorDataEXT")) vkGetImageViewOpaqueCaptureDescriptorDataEXT = cast[proc (device: VkDevice, pInfo: ptr VkImageViewCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetImageViewOpaqueCaptureDescriptorDataEXT")) @@ -21893,13 +21893,13 @@ proc loadVK_EXT_descriptor_buffer*() = # Load VK_NV_fragment_shading_rate_enums proc loadVK_NV_fragment_shading_rate_enums*() = - vkCmdSetFragmentShadingRateEnumNV = cast[proc (commandBuffer: VkCommandBuffer, shadingRate: VkFragmentShadingRateNV, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): void {.stdcall.}](vkGetProc("vkCmdSetFragmentShadingRateEnumNV")) + vkCmdSetFragmentShadingRateEnumNV = cast[proc (commandBuffer: VkCommandBuffer, shadingRate: VkFragmentShadingRateNV, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]) {.stdcall.}](vkGetProc("vkCmdSetFragmentShadingRateEnumNV")) # Load VK_EXT_mesh_shader proc loadVK_EXT_mesh_shader*() = - vkCmdDrawMeshTasksEXT = cast[proc (commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksEXT")) - vkCmdDrawMeshTasksIndirectEXT = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksIndirectEXT")) - vkCmdDrawMeshTasksIndirectCountEXT = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksIndirectCountEXT")) + vkCmdDrawMeshTasksEXT = cast[proc (commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32) {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksEXT")) + vkCmdDrawMeshTasksIndirectEXT = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32) {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksIndirectEXT")) + vkCmdDrawMeshTasksIndirectCountEXT = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32) {.stdcall.}](vkGetProc("vkCmdDrawMeshTasksIndirectCountEXT")) # Load VK_EXT_device_fault proc loadVK_EXT_device_fault*() = @@ -21917,7 +21917,7 @@ proc loadVK_EXT_directfb_surface*() = # Load VK_EXT_vertex_input_dynamic_state proc loadVK_EXT_vertex_input_dynamic_state*() = - vkCmdSetVertexInputEXT = cast[proc (commandBuffer: VkCommandBuffer, vertexBindingDescriptionCount: uint32, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription2EXT, vertexAttributeDescriptionCount: uint32, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription2EXT): void {.stdcall.}](vkGetProc("vkCmdSetVertexInputEXT")) + vkCmdSetVertexInputEXT = cast[proc (commandBuffer: VkCommandBuffer, vertexBindingDescriptionCount: uint32, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription2EXT, vertexAttributeDescriptionCount: uint32, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription2EXT) {.stdcall.}](vkGetProc("vkCmdSetVertexInputEXT")) # Load VK_FUCHSIA_external_memory proc loadVK_FUCHSIA_external_memory*() = @@ -21934,17 +21934,17 @@ proc loadVK_FUCHSIA_buffer_collection*() = vkCreateBufferCollectionFUCHSIA = cast[proc (device: VkDevice, pCreateInfo: ptr VkBufferCollectionCreateInfoFUCHSIA, pAllocator: ptr VkAllocationCallbacks, pCollection: ptr VkBufferCollectionFUCHSIA): VkResult {.stdcall.}](vkGetProc("vkCreateBufferCollectionFUCHSIA")) vkSetBufferCollectionImageConstraintsFUCHSIA = cast[proc (device: VkDevice, collection: VkBufferCollectionFUCHSIA, pImageConstraintsInfo: ptr VkImageConstraintsInfoFUCHSIA): VkResult {.stdcall.}](vkGetProc("vkSetBufferCollectionImageConstraintsFUCHSIA")) vkSetBufferCollectionBufferConstraintsFUCHSIA = cast[proc (device: VkDevice, collection: VkBufferCollectionFUCHSIA, pBufferConstraintsInfo: ptr VkBufferConstraintsInfoFUCHSIA): VkResult {.stdcall.}](vkGetProc("vkSetBufferCollectionBufferConstraintsFUCHSIA")) - vkDestroyBufferCollectionFUCHSIA = cast[proc (device: VkDevice, collection: VkBufferCollectionFUCHSIA, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyBufferCollectionFUCHSIA")) + vkDestroyBufferCollectionFUCHSIA = cast[proc (device: VkDevice, collection: VkBufferCollectionFUCHSIA, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyBufferCollectionFUCHSIA")) vkGetBufferCollectionPropertiesFUCHSIA = cast[proc (device: VkDevice, collection: VkBufferCollectionFUCHSIA, pProperties: ptr VkBufferCollectionPropertiesFUCHSIA): VkResult {.stdcall.}](vkGetProc("vkGetBufferCollectionPropertiesFUCHSIA")) # Load VK_HUAWEI_subpass_shading proc loadVK_HUAWEI_subpass_shading*() = vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = cast[proc (device: VkDevice, renderpass: VkRenderPass, pMaxWorkgroupSize: ptr VkExtent2D): VkResult {.stdcall.}](vkGetProc("vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI")) - vkCmdSubpassShadingHUAWEI = cast[proc (commandBuffer: VkCommandBuffer): void {.stdcall.}](vkGetProc("vkCmdSubpassShadingHUAWEI")) + vkCmdSubpassShadingHUAWEI = cast[proc (commandBuffer: VkCommandBuffer) {.stdcall.}](vkGetProc("vkCmdSubpassShadingHUAWEI")) # Load VK_HUAWEI_invocation_mask proc loadVK_HUAWEI_invocation_mask*() = - vkCmdBindInvocationMaskHUAWEI = cast[proc (commandBuffer: VkCommandBuffer, imageView: VkImageView, imageLayout: VkImageLayout): void {.stdcall.}](vkGetProc("vkCmdBindInvocationMaskHUAWEI")) + vkCmdBindInvocationMaskHUAWEI = cast[proc (commandBuffer: VkCommandBuffer, imageView: VkImageView, imageLayout: VkImageLayout) {.stdcall.}](vkGetProc("vkCmdBindInvocationMaskHUAWEI")) # Load VK_NV_external_memory_rdma proc loadVK_NV_external_memory_rdma*() = @@ -21972,8 +21972,8 @@ proc loadVK_NV_external_memory_sci_buf*() = # Load VK_EXT_extended_dynamic_state2 proc loadVK_EXT_extended_dynamic_state2*() = - vkCmdSetPatchControlPointsEXT = cast[proc (commandBuffer: VkCommandBuffer, patchControlPoints: uint32): void {.stdcall.}](vkGetProc("vkCmdSetPatchControlPointsEXT")) - vkCmdSetLogicOpEXT = cast[proc (commandBuffer: VkCommandBuffer, logicOp: VkLogicOp): void {.stdcall.}](vkGetProc("vkCmdSetLogicOpEXT")) + vkCmdSetPatchControlPointsEXT = cast[proc (commandBuffer: VkCommandBuffer, patchControlPoints: uint32) {.stdcall.}](vkGetProc("vkCmdSetPatchControlPointsEXT")) + vkCmdSetLogicOpEXT = cast[proc (commandBuffer: VkCommandBuffer, logicOp: VkLogicOp) {.stdcall.}](vkGetProc("vkCmdSetLogicOpEXT")) # Load VK_QNX_screen_surface proc loadVK_QNX_screen_surface*() = @@ -21982,158 +21982,158 @@ proc loadVK_QNX_screen_surface*() = # Load VK_EXT_color_write_enable proc loadVK_EXT_color_write_enable*() = - vkCmdSetColorWriteEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, attachmentCount: uint32, pColorWriteEnables: ptr VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetColorWriteEnableEXT")) + vkCmdSetColorWriteEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, attachmentCount: uint32, pColorWriteEnables: ptr VkBool32) {.stdcall.}](vkGetProc("vkCmdSetColorWriteEnableEXT")) # Load VK_KHR_ray_tracing_maintenance1 proc loadVK_KHR_ray_tracing_maintenance1*() = - vkCmdTraceRaysIndirect2KHR = cast[proc (commandBuffer: VkCommandBuffer, indirectDeviceAddress: VkDeviceAddress): void {.stdcall.}](vkGetProc("vkCmdTraceRaysIndirect2KHR")) + vkCmdTraceRaysIndirect2KHR = cast[proc (commandBuffer: VkCommandBuffer, indirectDeviceAddress: VkDeviceAddress) {.stdcall.}](vkGetProc("vkCmdTraceRaysIndirect2KHR")) # Load VK_EXT_multi_draw proc loadVK_EXT_multi_draw*() = - vkCmdDrawMultiEXT = cast[proc (commandBuffer: VkCommandBuffer, drawCount: uint32, pVertexInfo: ptr VkMultiDrawInfoEXT, instanceCount: uint32, firstInstance: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawMultiEXT")) - vkCmdDrawMultiIndexedEXT = cast[proc (commandBuffer: VkCommandBuffer, drawCount: uint32, pIndexInfo: ptr VkMultiDrawIndexedInfoEXT, instanceCount: uint32, firstInstance: uint32, stride: uint32, pVertexOffset: ptr int32): void {.stdcall.}](vkGetProc("vkCmdDrawMultiIndexedEXT")) + vkCmdDrawMultiEXT = cast[proc (commandBuffer: VkCommandBuffer, drawCount: uint32, pVertexInfo: ptr VkMultiDrawInfoEXT, instanceCount: uint32, firstInstance: uint32, stride: uint32) {.stdcall.}](vkGetProc("vkCmdDrawMultiEXT")) + vkCmdDrawMultiIndexedEXT = cast[proc (commandBuffer: VkCommandBuffer, drawCount: uint32, pIndexInfo: ptr VkMultiDrawIndexedInfoEXT, instanceCount: uint32, firstInstance: uint32, stride: uint32, pVertexOffset: ptr int32) {.stdcall.}](vkGetProc("vkCmdDrawMultiIndexedEXT")) # Load VK_EXT_opacity_micromap proc loadVK_EXT_opacity_micromap*() = vkCreateMicromapEXT = cast[proc (device: VkDevice, pCreateInfo: ptr VkMicromapCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pMicromap: ptr VkMicromapEXT): VkResult {.stdcall.}](vkGetProc("vkCreateMicromapEXT")) - vkDestroyMicromapEXT = cast[proc (device: VkDevice, micromap: VkMicromapEXT, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyMicromapEXT")) - vkCmdBuildMicromapsEXT = cast[proc (commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkMicromapBuildInfoEXT): void {.stdcall.}](vkGetProc("vkCmdBuildMicromapsEXT")) + vkDestroyMicromapEXT = cast[proc (device: VkDevice, micromap: VkMicromapEXT, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyMicromapEXT")) + vkCmdBuildMicromapsEXT = cast[proc (commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkMicromapBuildInfoEXT) {.stdcall.}](vkGetProc("vkCmdBuildMicromapsEXT")) vkBuildMicromapsEXT = cast[proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, infoCount: uint32, pInfos: ptr VkMicromapBuildInfoEXT): VkResult {.stdcall.}](vkGetProc("vkBuildMicromapsEXT")) vkCopyMicromapEXT = cast[proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMicromapInfoEXT): VkResult {.stdcall.}](vkGetProc("vkCopyMicromapEXT")) vkCopyMicromapToMemoryEXT = cast[proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMicromapToMemoryInfoEXT): VkResult {.stdcall.}](vkGetProc("vkCopyMicromapToMemoryEXT")) vkCopyMemoryToMicromapEXT = cast[proc (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMemoryToMicromapInfoEXT): VkResult {.stdcall.}](vkGetProc("vkCopyMemoryToMicromapEXT")) vkWriteMicromapsPropertiesEXT = cast[proc (device: VkDevice, micromapCount: uint32, pMicromaps: ptr VkMicromapEXT, queryType: VkQueryType, dataSize: uint, pData: pointer, stride: uint): VkResult {.stdcall.}](vkGetProc("vkWriteMicromapsPropertiesEXT")) - vkCmdCopyMicromapEXT = cast[proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMicromapInfoEXT): void {.stdcall.}](vkGetProc("vkCmdCopyMicromapEXT")) - vkCmdCopyMicromapToMemoryEXT = cast[proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMicromapToMemoryInfoEXT): void {.stdcall.}](vkGetProc("vkCmdCopyMicromapToMemoryEXT")) - vkCmdCopyMemoryToMicromapEXT = cast[proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMemoryToMicromapInfoEXT): void {.stdcall.}](vkGetProc("vkCmdCopyMemoryToMicromapEXT")) - vkCmdWriteMicromapsPropertiesEXT = cast[proc (commandBuffer: VkCommandBuffer, micromapCount: uint32, pMicromaps: ptr VkMicromapEXT, queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.stdcall.}](vkGetProc("vkCmdWriteMicromapsPropertiesEXT")) - vkGetDeviceMicromapCompatibilityEXT = cast[proc (device: VkDevice, pVersionInfo: ptr VkMicromapVersionInfoEXT, pCompatibility: ptr VkAccelerationStructureCompatibilityKHR): void {.stdcall.}](vkGetProc("vkGetDeviceMicromapCompatibilityEXT")) - vkGetMicromapBuildSizesEXT = cast[proc (device: VkDevice, buildType: VkAccelerationStructureBuildTypeKHR, pBuildInfo: ptr VkMicromapBuildInfoEXT, pSizeInfo: ptr VkMicromapBuildSizesInfoEXT): void {.stdcall.}](vkGetProc("vkGetMicromapBuildSizesEXT")) + vkCmdCopyMicromapEXT = cast[proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMicromapInfoEXT) {.stdcall.}](vkGetProc("vkCmdCopyMicromapEXT")) + vkCmdCopyMicromapToMemoryEXT = cast[proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMicromapToMemoryInfoEXT) {.stdcall.}](vkGetProc("vkCmdCopyMicromapToMemoryEXT")) + vkCmdCopyMemoryToMicromapEXT = cast[proc (commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMemoryToMicromapInfoEXT) {.stdcall.}](vkGetProc("vkCmdCopyMemoryToMicromapEXT")) + vkCmdWriteMicromapsPropertiesEXT = cast[proc (commandBuffer: VkCommandBuffer, micromapCount: uint32, pMicromaps: ptr VkMicromapEXT, queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32) {.stdcall.}](vkGetProc("vkCmdWriteMicromapsPropertiesEXT")) + vkGetDeviceMicromapCompatibilityEXT = cast[proc (device: VkDevice, pVersionInfo: ptr VkMicromapVersionInfoEXT, pCompatibility: ptr VkAccelerationStructureCompatibilityKHR) {.stdcall.}](vkGetProc("vkGetDeviceMicromapCompatibilityEXT")) + vkGetMicromapBuildSizesEXT = cast[proc (device: VkDevice, buildType: VkAccelerationStructureBuildTypeKHR, pBuildInfo: ptr VkMicromapBuildInfoEXT, pSizeInfo: ptr VkMicromapBuildSizesInfoEXT) {.stdcall.}](vkGetProc("vkGetMicromapBuildSizesEXT")) # Load VK_HUAWEI_cluster_culling_shader proc loadVK_HUAWEI_cluster_culling_shader*() = - vkCmdDrawClusterHUAWEI = cast[proc (commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.stdcall.}](vkGetProc("vkCmdDrawClusterHUAWEI")) - vkCmdDrawClusterIndirectHUAWEI = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize): void {.stdcall.}](vkGetProc("vkCmdDrawClusterIndirectHUAWEI")) + vkCmdDrawClusterHUAWEI = cast[proc (commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32) {.stdcall.}](vkGetProc("vkCmdDrawClusterHUAWEI")) + vkCmdDrawClusterIndirectHUAWEI = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize) {.stdcall.}](vkGetProc("vkCmdDrawClusterIndirectHUAWEI")) # Load VK_EXT_pageable_device_local_memory proc loadVK_EXT_pageable_device_local_memory*() = - vkSetDeviceMemoryPriorityEXT = cast[proc (device: VkDevice, memory: VkDeviceMemory, priority: float32): void {.stdcall.}](vkGetProc("vkSetDeviceMemoryPriorityEXT")) + vkSetDeviceMemoryPriorityEXT = cast[proc (device: VkDevice, memory: VkDeviceMemory, priority: float32) {.stdcall.}](vkGetProc("vkSetDeviceMemoryPriorityEXT")) # Load VK_VALVE_descriptor_set_host_mapping proc loadVK_VALVE_descriptor_set_host_mapping*() = - vkGetDescriptorSetLayoutHostMappingInfoVALVE = cast[proc (device: VkDevice, pBindingReference: ptr VkDescriptorSetBindingReferenceVALVE, pHostMapping: ptr VkDescriptorSetLayoutHostMappingInfoVALVE): void {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutHostMappingInfoVALVE")) - vkGetDescriptorSetHostMappingVALVE = cast[proc (device: VkDevice, descriptorSet: VkDescriptorSet, ppData: ptr pointer): void {.stdcall.}](vkGetProc("vkGetDescriptorSetHostMappingVALVE")) + vkGetDescriptorSetLayoutHostMappingInfoVALVE = cast[proc (device: VkDevice, pBindingReference: ptr VkDescriptorSetBindingReferenceVALVE, pHostMapping: ptr VkDescriptorSetLayoutHostMappingInfoVALVE) {.stdcall.}](vkGetProc("vkGetDescriptorSetLayoutHostMappingInfoVALVE")) + vkGetDescriptorSetHostMappingVALVE = cast[proc (device: VkDevice, descriptorSet: VkDescriptorSet, ppData: ptr pointer) {.stdcall.}](vkGetProc("vkGetDescriptorSetHostMappingVALVE")) # Load VK_NV_copy_memory_indirect proc loadVK_NV_copy_memory_indirect*() = - vkCmdCopyMemoryIndirectNV = cast[proc (commandBuffer: VkCommandBuffer, copyBufferAddress: VkDeviceAddress, copyCount: uint32, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdCopyMemoryIndirectNV")) - vkCmdCopyMemoryToImageIndirectNV = cast[proc (commandBuffer: VkCommandBuffer, copyBufferAddress: VkDeviceAddress, copyCount: uint32, stride: uint32, dstImage: VkImage, dstImageLayout: VkImageLayout, pImageSubresources: ptr VkImageSubresourceLayers): void {.stdcall.}](vkGetProc("vkCmdCopyMemoryToImageIndirectNV")) + vkCmdCopyMemoryIndirectNV = cast[proc (commandBuffer: VkCommandBuffer, copyBufferAddress: VkDeviceAddress, copyCount: uint32, stride: uint32) {.stdcall.}](vkGetProc("vkCmdCopyMemoryIndirectNV")) + vkCmdCopyMemoryToImageIndirectNV = cast[proc (commandBuffer: VkCommandBuffer, copyBufferAddress: VkDeviceAddress, copyCount: uint32, stride: uint32, dstImage: VkImage, dstImageLayout: VkImageLayout, pImageSubresources: ptr VkImageSubresourceLayers) {.stdcall.}](vkGetProc("vkCmdCopyMemoryToImageIndirectNV")) # Load VK_NV_memory_decompression proc loadVK_NV_memory_decompression*() = - vkCmdDecompressMemoryNV = cast[proc (commandBuffer: VkCommandBuffer, decompressRegionCount: uint32, pDecompressMemoryRegions: ptr VkDecompressMemoryRegionNV): void {.stdcall.}](vkGetProc("vkCmdDecompressMemoryNV")) - vkCmdDecompressMemoryIndirectCountNV = cast[proc (commandBuffer: VkCommandBuffer, indirectCommandsAddress: VkDeviceAddress, indirectCommandsCountAddress: VkDeviceAddress, stride: uint32): void {.stdcall.}](vkGetProc("vkCmdDecompressMemoryIndirectCountNV")) + vkCmdDecompressMemoryNV = cast[proc (commandBuffer: VkCommandBuffer, decompressRegionCount: uint32, pDecompressMemoryRegions: ptr VkDecompressMemoryRegionNV) {.stdcall.}](vkGetProc("vkCmdDecompressMemoryNV")) + vkCmdDecompressMemoryIndirectCountNV = cast[proc (commandBuffer: VkCommandBuffer, indirectCommandsAddress: VkDeviceAddress, indirectCommandsCountAddress: VkDeviceAddress, stride: uint32) {.stdcall.}](vkGetProc("vkCmdDecompressMemoryIndirectCountNV")) # Load VK_NV_device_generated_commands_compute proc loadVK_NV_device_generated_commands_compute*() = - vkGetPipelineIndirectMemoryRequirementsNV = cast[proc (device: VkDevice, pCreateInfo: ptr VkComputePipelineCreateInfo, pMemoryRequirements: ptr VkMemoryRequirements2): void {.stdcall.}](vkGetProc("vkGetPipelineIndirectMemoryRequirementsNV")) - vkCmdUpdatePipelineIndirectBufferNV = cast[proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline): void {.stdcall.}](vkGetProc("vkCmdUpdatePipelineIndirectBufferNV")) + vkGetPipelineIndirectMemoryRequirementsNV = cast[proc (device: VkDevice, pCreateInfo: ptr VkComputePipelineCreateInfo, pMemoryRequirements: ptr VkMemoryRequirements2) {.stdcall.}](vkGetProc("vkGetPipelineIndirectMemoryRequirementsNV")) + vkCmdUpdatePipelineIndirectBufferNV = cast[proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline) {.stdcall.}](vkGetProc("vkCmdUpdatePipelineIndirectBufferNV")) vkGetPipelineIndirectDeviceAddressNV = cast[proc (device: VkDevice, pInfo: ptr VkPipelineIndirectDeviceAddressInfoNV): VkDeviceAddress {.stdcall.}](vkGetProc("vkGetPipelineIndirectDeviceAddressNV")) # Load VK_EXT_extended_dynamic_state3 proc loadVK_EXT_extended_dynamic_state3*() = - vkCmdSetDepthClampEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, depthClampEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthClampEnableEXT")) - vkCmdSetPolygonModeEXT = cast[proc (commandBuffer: VkCommandBuffer, polygonMode: VkPolygonMode): void {.stdcall.}](vkGetProc("vkCmdSetPolygonModeEXT")) - vkCmdSetRasterizationSamplesEXT = cast[proc (commandBuffer: VkCommandBuffer, rasterizationSamples: VkSampleCountFlagBits): void {.stdcall.}](vkGetProc("vkCmdSetRasterizationSamplesEXT")) - vkCmdSetSampleMaskEXT = cast[proc (commandBuffer: VkCommandBuffer, samples: VkSampleCountFlagBits, pSampleMask: ptr VkSampleMask): void {.stdcall.}](vkGetProc("vkCmdSetSampleMaskEXT")) - vkCmdSetAlphaToCoverageEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, alphaToCoverageEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetAlphaToCoverageEnableEXT")) - vkCmdSetAlphaToOneEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, alphaToOneEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetAlphaToOneEnableEXT")) - vkCmdSetLogicOpEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, logicOpEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetLogicOpEnableEXT")) - vkCmdSetColorBlendEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEnables: ptr VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendEnableEXT")) - vkCmdSetColorBlendEquationEXT = cast[proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEquations: ptr VkColorBlendEquationEXT): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendEquationEXT")) - vkCmdSetColorWriteMaskEXT = cast[proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorWriteMasks: ptr VkColorComponentFlags): void {.stdcall.}](vkGetProc("vkCmdSetColorWriteMaskEXT")) - vkCmdSetTessellationDomainOriginEXT = cast[proc (commandBuffer: VkCommandBuffer, domainOrigin: VkTessellationDomainOrigin): void {.stdcall.}](vkGetProc("vkCmdSetTessellationDomainOriginEXT")) - vkCmdSetRasterizationStreamEXT = cast[proc (commandBuffer: VkCommandBuffer, rasterizationStream: uint32): void {.stdcall.}](vkGetProc("vkCmdSetRasterizationStreamEXT")) - vkCmdSetConservativeRasterizationModeEXT = cast[proc (commandBuffer: VkCommandBuffer, conservativeRasterizationMode: VkConservativeRasterizationModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetConservativeRasterizationModeEXT")) - vkCmdSetExtraPrimitiveOverestimationSizeEXT = cast[proc (commandBuffer: VkCommandBuffer, extraPrimitiveOverestimationSize: float32): void {.stdcall.}](vkGetProc("vkCmdSetExtraPrimitiveOverestimationSizeEXT")) - vkCmdSetDepthClipEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, depthClipEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthClipEnableEXT")) - vkCmdSetSampleLocationsEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, sampleLocationsEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetSampleLocationsEnableEXT")) - vkCmdSetColorBlendAdvancedEXT = cast[proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendAdvanced: ptr VkColorBlendAdvancedEXT): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendAdvancedEXT")) - vkCmdSetProvokingVertexModeEXT = cast[proc (commandBuffer: VkCommandBuffer, provokingVertexMode: VkProvokingVertexModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetProvokingVertexModeEXT")) - vkCmdSetLineRasterizationModeEXT = cast[proc (commandBuffer: VkCommandBuffer, lineRasterizationMode: VkLineRasterizationModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetLineRasterizationModeEXT")) - vkCmdSetLineStippleEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, stippledLineEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetLineStippleEnableEXT")) - vkCmdSetDepthClipNegativeOneToOneEXT = cast[proc (commandBuffer: VkCommandBuffer, negativeOneToOne: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthClipNegativeOneToOneEXT")) - vkCmdSetViewportWScalingEnableNV = cast[proc (commandBuffer: VkCommandBuffer, viewportWScalingEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetViewportWScalingEnableNV")) - vkCmdSetViewportSwizzleNV = cast[proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportSwizzles: ptr VkViewportSwizzleNV): void {.stdcall.}](vkGetProc("vkCmdSetViewportSwizzleNV")) - vkCmdSetCoverageToColorEnableNV = cast[proc (commandBuffer: VkCommandBuffer, coverageToColorEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorEnableNV")) - vkCmdSetCoverageToColorLocationNV = cast[proc (commandBuffer: VkCommandBuffer, coverageToColorLocation: uint32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorLocationNV")) - vkCmdSetCoverageModulationModeNV = cast[proc (commandBuffer: VkCommandBuffer, coverageModulationMode: VkCoverageModulationModeNV): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationModeNV")) - vkCmdSetCoverageModulationTableEnableNV = cast[proc (commandBuffer: VkCommandBuffer, coverageModulationTableEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableEnableNV")) - vkCmdSetCoverageModulationTableNV = cast[proc (commandBuffer: VkCommandBuffer, coverageModulationTableCount: uint32, pCoverageModulationTable: ptr float32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableNV")) - vkCmdSetShadingRateImageEnableNV = cast[proc (commandBuffer: VkCommandBuffer, shadingRateImageEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetShadingRateImageEnableNV")) - vkCmdSetRepresentativeFragmentTestEnableNV = cast[proc (commandBuffer: VkCommandBuffer, representativeFragmentTestEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetRepresentativeFragmentTestEnableNV")) - vkCmdSetCoverageReductionModeNV = cast[proc (commandBuffer: VkCommandBuffer, coverageReductionMode: VkCoverageReductionModeNV): void {.stdcall.}](vkGetProc("vkCmdSetCoverageReductionModeNV")) + vkCmdSetDepthClampEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, depthClampEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetDepthClampEnableEXT")) + vkCmdSetPolygonModeEXT = cast[proc (commandBuffer: VkCommandBuffer, polygonMode: VkPolygonMode) {.stdcall.}](vkGetProc("vkCmdSetPolygonModeEXT")) + vkCmdSetRasterizationSamplesEXT = cast[proc (commandBuffer: VkCommandBuffer, rasterizationSamples: VkSampleCountFlagBits) {.stdcall.}](vkGetProc("vkCmdSetRasterizationSamplesEXT")) + vkCmdSetSampleMaskEXT = cast[proc (commandBuffer: VkCommandBuffer, samples: VkSampleCountFlagBits, pSampleMask: ptr VkSampleMask) {.stdcall.}](vkGetProc("vkCmdSetSampleMaskEXT")) + vkCmdSetAlphaToCoverageEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, alphaToCoverageEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetAlphaToCoverageEnableEXT")) + vkCmdSetAlphaToOneEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, alphaToOneEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetAlphaToOneEnableEXT")) + vkCmdSetLogicOpEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, logicOpEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetLogicOpEnableEXT")) + vkCmdSetColorBlendEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEnables: ptr VkBool32) {.stdcall.}](vkGetProc("vkCmdSetColorBlendEnableEXT")) + vkCmdSetColorBlendEquationEXT = cast[proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEquations: ptr VkColorBlendEquationEXT) {.stdcall.}](vkGetProc("vkCmdSetColorBlendEquationEXT")) + vkCmdSetColorWriteMaskEXT = cast[proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorWriteMasks: ptr VkColorComponentFlags) {.stdcall.}](vkGetProc("vkCmdSetColorWriteMaskEXT")) + vkCmdSetTessellationDomainOriginEXT = cast[proc (commandBuffer: VkCommandBuffer, domainOrigin: VkTessellationDomainOrigin) {.stdcall.}](vkGetProc("vkCmdSetTessellationDomainOriginEXT")) + vkCmdSetRasterizationStreamEXT = cast[proc (commandBuffer: VkCommandBuffer, rasterizationStream: uint32) {.stdcall.}](vkGetProc("vkCmdSetRasterizationStreamEXT")) + vkCmdSetConservativeRasterizationModeEXT = cast[proc (commandBuffer: VkCommandBuffer, conservativeRasterizationMode: VkConservativeRasterizationModeEXT) {.stdcall.}](vkGetProc("vkCmdSetConservativeRasterizationModeEXT")) + vkCmdSetExtraPrimitiveOverestimationSizeEXT = cast[proc (commandBuffer: VkCommandBuffer, extraPrimitiveOverestimationSize: float32) {.stdcall.}](vkGetProc("vkCmdSetExtraPrimitiveOverestimationSizeEXT")) + vkCmdSetDepthClipEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, depthClipEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetDepthClipEnableEXT")) + vkCmdSetSampleLocationsEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, sampleLocationsEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetSampleLocationsEnableEXT")) + vkCmdSetColorBlendAdvancedEXT = cast[proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendAdvanced: ptr VkColorBlendAdvancedEXT) {.stdcall.}](vkGetProc("vkCmdSetColorBlendAdvancedEXT")) + vkCmdSetProvokingVertexModeEXT = cast[proc (commandBuffer: VkCommandBuffer, provokingVertexMode: VkProvokingVertexModeEXT) {.stdcall.}](vkGetProc("vkCmdSetProvokingVertexModeEXT")) + vkCmdSetLineRasterizationModeEXT = cast[proc (commandBuffer: VkCommandBuffer, lineRasterizationMode: VkLineRasterizationModeEXT) {.stdcall.}](vkGetProc("vkCmdSetLineRasterizationModeEXT")) + vkCmdSetLineStippleEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, stippledLineEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetLineStippleEnableEXT")) + vkCmdSetDepthClipNegativeOneToOneEXT = cast[proc (commandBuffer: VkCommandBuffer, negativeOneToOne: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetDepthClipNegativeOneToOneEXT")) + vkCmdSetViewportWScalingEnableNV = cast[proc (commandBuffer: VkCommandBuffer, viewportWScalingEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetViewportWScalingEnableNV")) + vkCmdSetViewportSwizzleNV = cast[proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportSwizzles: ptr VkViewportSwizzleNV) {.stdcall.}](vkGetProc("vkCmdSetViewportSwizzleNV")) + vkCmdSetCoverageToColorEnableNV = cast[proc (commandBuffer: VkCommandBuffer, coverageToColorEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorEnableNV")) + vkCmdSetCoverageToColorLocationNV = cast[proc (commandBuffer: VkCommandBuffer, coverageToColorLocation: uint32) {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorLocationNV")) + vkCmdSetCoverageModulationModeNV = cast[proc (commandBuffer: VkCommandBuffer, coverageModulationMode: VkCoverageModulationModeNV) {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationModeNV")) + vkCmdSetCoverageModulationTableEnableNV = cast[proc (commandBuffer: VkCommandBuffer, coverageModulationTableEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableEnableNV")) + vkCmdSetCoverageModulationTableNV = cast[proc (commandBuffer: VkCommandBuffer, coverageModulationTableCount: uint32, pCoverageModulationTable: ptr float32) {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableNV")) + vkCmdSetShadingRateImageEnableNV = cast[proc (commandBuffer: VkCommandBuffer, shadingRateImageEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetShadingRateImageEnableNV")) + vkCmdSetRepresentativeFragmentTestEnableNV = cast[proc (commandBuffer: VkCommandBuffer, representativeFragmentTestEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetRepresentativeFragmentTestEnableNV")) + vkCmdSetCoverageReductionModeNV = cast[proc (commandBuffer: VkCommandBuffer, coverageReductionMode: VkCoverageReductionModeNV) {.stdcall.}](vkGetProc("vkCmdSetCoverageReductionModeNV")) # Load VK_EXT_shader_module_identifier proc loadVK_EXT_shader_module_identifier*() = - vkGetShaderModuleIdentifierEXT = cast[proc (device: VkDevice, shaderModule: VkShaderModule, pIdentifier: ptr VkShaderModuleIdentifierEXT): void {.stdcall.}](vkGetProc("vkGetShaderModuleIdentifierEXT")) - vkGetShaderModuleCreateInfoIdentifierEXT = cast[proc (device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo, pIdentifier: ptr VkShaderModuleIdentifierEXT): void {.stdcall.}](vkGetProc("vkGetShaderModuleCreateInfoIdentifierEXT")) + vkGetShaderModuleIdentifierEXT = cast[proc (device: VkDevice, shaderModule: VkShaderModule, pIdentifier: ptr VkShaderModuleIdentifierEXT) {.stdcall.}](vkGetProc("vkGetShaderModuleIdentifierEXT")) + vkGetShaderModuleCreateInfoIdentifierEXT = cast[proc (device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo, pIdentifier: ptr VkShaderModuleIdentifierEXT) {.stdcall.}](vkGetProc("vkGetShaderModuleCreateInfoIdentifierEXT")) # Load VK_NV_optical_flow proc loadVK_NV_optical_flow*() = vkGetPhysicalDeviceOpticalFlowImageFormatsNV = cast[proc (physicalDevice: VkPhysicalDevice, pOpticalFlowImageFormatInfo: ptr VkOpticalFlowImageFormatInfoNV, pFormatCount: ptr uint32, pImageFormatProperties: ptr VkOpticalFlowImageFormatPropertiesNV): VkResult {.stdcall.}](vkGetProc("vkGetPhysicalDeviceOpticalFlowImageFormatsNV")) vkCreateOpticalFlowSessionNV = cast[proc (device: VkDevice, pCreateInfo: ptr VkOpticalFlowSessionCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pSession: ptr VkOpticalFlowSessionNV): VkResult {.stdcall.}](vkGetProc("vkCreateOpticalFlowSessionNV")) - vkDestroyOpticalFlowSessionNV = cast[proc (device: VkDevice, session: VkOpticalFlowSessionNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyOpticalFlowSessionNV")) + vkDestroyOpticalFlowSessionNV = cast[proc (device: VkDevice, session: VkOpticalFlowSessionNV, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyOpticalFlowSessionNV")) vkBindOpticalFlowSessionImageNV = cast[proc (device: VkDevice, session: VkOpticalFlowSessionNV, bindingPoint: VkOpticalFlowSessionBindingPointNV, view: VkImageView, layout: VkImageLayout): VkResult {.stdcall.}](vkGetProc("vkBindOpticalFlowSessionImageNV")) - vkCmdOpticalFlowExecuteNV = cast[proc (commandBuffer: VkCommandBuffer, session: VkOpticalFlowSessionNV, pExecuteInfo: ptr VkOpticalFlowExecuteInfoNV): void {.stdcall.}](vkGetProc("vkCmdOpticalFlowExecuteNV")) + vkCmdOpticalFlowExecuteNV = cast[proc (commandBuffer: VkCommandBuffer, session: VkOpticalFlowSessionNV, pExecuteInfo: ptr VkOpticalFlowExecuteInfoNV) {.stdcall.}](vkGetProc("vkCmdOpticalFlowExecuteNV")) # Load VK_KHR_maintenance5 proc loadVK_KHR_maintenance5*() = - vkCmdBindIndexBuffer2KHR = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize, indexType: VkIndexType): void {.stdcall.}](vkGetProc("vkCmdBindIndexBuffer2KHR")) - vkGetRenderingAreaGranularityKHR = cast[proc (device: VkDevice, pRenderingAreaInfo: ptr VkRenderingAreaInfoKHR, pGranularity: ptr VkExtent2D): void {.stdcall.}](vkGetProc("vkGetRenderingAreaGranularityKHR")) - vkGetDeviceImageSubresourceLayoutKHR = cast[proc (device: VkDevice, pInfo: ptr VkDeviceImageSubresourceInfoKHR, pLayout: ptr VkSubresourceLayout2KHR): void {.stdcall.}](vkGetProc("vkGetDeviceImageSubresourceLayoutKHR")) - vkGetImageSubresourceLayout2KHR = cast[proc (device: VkDevice, image: VkImage, pSubresource: ptr VkImageSubresource2KHR, pLayout: ptr VkSubresourceLayout2KHR): void {.stdcall.}](vkGetProc("vkGetImageSubresourceLayout2KHR")) + vkCmdBindIndexBuffer2KHR = cast[proc (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize, indexType: VkIndexType) {.stdcall.}](vkGetProc("vkCmdBindIndexBuffer2KHR")) + vkGetRenderingAreaGranularityKHR = cast[proc (device: VkDevice, pRenderingAreaInfo: ptr VkRenderingAreaInfoKHR, pGranularity: ptr VkExtent2D) {.stdcall.}](vkGetProc("vkGetRenderingAreaGranularityKHR")) + vkGetDeviceImageSubresourceLayoutKHR = cast[proc (device: VkDevice, pInfo: ptr VkDeviceImageSubresourceInfoKHR, pLayout: ptr VkSubresourceLayout2KHR) {.stdcall.}](vkGetProc("vkGetDeviceImageSubresourceLayoutKHR")) + vkGetImageSubresourceLayout2KHR = cast[proc (device: VkDevice, image: VkImage, pSubresource: ptr VkImageSubresource2KHR, pLayout: ptr VkSubresourceLayout2KHR) {.stdcall.}](vkGetProc("vkGetImageSubresourceLayout2KHR")) # Load VK_EXT_shader_object proc loadVK_EXT_shader_object*() = vkCreateShadersEXT = cast[proc (device: VkDevice, createInfoCount: uint32, pCreateInfos: ptr VkShaderCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pShaders: ptr VkShaderEXT): VkResult {.stdcall.}](vkGetProc("vkCreateShadersEXT")) - vkDestroyShaderEXT = cast[proc (device: VkDevice, shader: VkShaderEXT, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroyShaderEXT")) + vkDestroyShaderEXT = cast[proc (device: VkDevice, shader: VkShaderEXT, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyShaderEXT")) vkGetShaderBinaryDataEXT = cast[proc (device: VkDevice, shader: VkShaderEXT, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetShaderBinaryDataEXT")) - vkCmdBindShadersEXT = cast[proc (commandBuffer: VkCommandBuffer, stageCount: uint32, pStages: ptr VkShaderStageFlagBits, pShaders: ptr VkShaderEXT): void {.stdcall.}](vkGetProc("vkCmdBindShadersEXT")) - vkCmdSetVertexInputEXT = cast[proc (commandBuffer: VkCommandBuffer, vertexBindingDescriptionCount: uint32, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription2EXT, vertexAttributeDescriptionCount: uint32, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription2EXT): void {.stdcall.}](vkGetProc("vkCmdSetVertexInputEXT")) - vkCmdSetPatchControlPointsEXT = cast[proc (commandBuffer: VkCommandBuffer, patchControlPoints: uint32): void {.stdcall.}](vkGetProc("vkCmdSetPatchControlPointsEXT")) - vkCmdSetLogicOpEXT = cast[proc (commandBuffer: VkCommandBuffer, logicOp: VkLogicOp): void {.stdcall.}](vkGetProc("vkCmdSetLogicOpEXT")) - vkCmdSetTessellationDomainOriginEXT = cast[proc (commandBuffer: VkCommandBuffer, domainOrigin: VkTessellationDomainOrigin): void {.stdcall.}](vkGetProc("vkCmdSetTessellationDomainOriginEXT")) - vkCmdSetDepthClampEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, depthClampEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthClampEnableEXT")) - vkCmdSetPolygonModeEXT = cast[proc (commandBuffer: VkCommandBuffer, polygonMode: VkPolygonMode): void {.stdcall.}](vkGetProc("vkCmdSetPolygonModeEXT")) - vkCmdSetRasterizationSamplesEXT = cast[proc (commandBuffer: VkCommandBuffer, rasterizationSamples: VkSampleCountFlagBits): void {.stdcall.}](vkGetProc("vkCmdSetRasterizationSamplesEXT")) - vkCmdSetSampleMaskEXT = cast[proc (commandBuffer: VkCommandBuffer, samples: VkSampleCountFlagBits, pSampleMask: ptr VkSampleMask): void {.stdcall.}](vkGetProc("vkCmdSetSampleMaskEXT")) - vkCmdSetAlphaToCoverageEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, alphaToCoverageEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetAlphaToCoverageEnableEXT")) - vkCmdSetAlphaToOneEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, alphaToOneEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetAlphaToOneEnableEXT")) - vkCmdSetLogicOpEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, logicOpEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetLogicOpEnableEXT")) - vkCmdSetColorBlendEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEnables: ptr VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendEnableEXT")) - vkCmdSetColorBlendEquationEXT = cast[proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEquations: ptr VkColorBlendEquationEXT): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendEquationEXT")) - vkCmdSetColorWriteMaskEXT = cast[proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorWriteMasks: ptr VkColorComponentFlags): void {.stdcall.}](vkGetProc("vkCmdSetColorWriteMaskEXT")) - vkCmdSetRasterizationStreamEXT = cast[proc (commandBuffer: VkCommandBuffer, rasterizationStream: uint32): void {.stdcall.}](vkGetProc("vkCmdSetRasterizationStreamEXT")) - vkCmdSetConservativeRasterizationModeEXT = cast[proc (commandBuffer: VkCommandBuffer, conservativeRasterizationMode: VkConservativeRasterizationModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetConservativeRasterizationModeEXT")) - vkCmdSetExtraPrimitiveOverestimationSizeEXT = cast[proc (commandBuffer: VkCommandBuffer, extraPrimitiveOverestimationSize: float32): void {.stdcall.}](vkGetProc("vkCmdSetExtraPrimitiveOverestimationSizeEXT")) - vkCmdSetDepthClipEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, depthClipEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthClipEnableEXT")) - vkCmdSetSampleLocationsEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, sampleLocationsEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetSampleLocationsEnableEXT")) - vkCmdSetColorBlendAdvancedEXT = cast[proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendAdvanced: ptr VkColorBlendAdvancedEXT): void {.stdcall.}](vkGetProc("vkCmdSetColorBlendAdvancedEXT")) - vkCmdSetProvokingVertexModeEXT = cast[proc (commandBuffer: VkCommandBuffer, provokingVertexMode: VkProvokingVertexModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetProvokingVertexModeEXT")) - vkCmdSetLineRasterizationModeEXT = cast[proc (commandBuffer: VkCommandBuffer, lineRasterizationMode: VkLineRasterizationModeEXT): void {.stdcall.}](vkGetProc("vkCmdSetLineRasterizationModeEXT")) - vkCmdSetLineStippleEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, stippledLineEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetLineStippleEnableEXT")) - vkCmdSetDepthClipNegativeOneToOneEXT = cast[proc (commandBuffer: VkCommandBuffer, negativeOneToOne: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetDepthClipNegativeOneToOneEXT")) - vkCmdSetViewportWScalingEnableNV = cast[proc (commandBuffer: VkCommandBuffer, viewportWScalingEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetViewportWScalingEnableNV")) - vkCmdSetViewportSwizzleNV = cast[proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportSwizzles: ptr VkViewportSwizzleNV): void {.stdcall.}](vkGetProc("vkCmdSetViewportSwizzleNV")) - vkCmdSetCoverageToColorEnableNV = cast[proc (commandBuffer: VkCommandBuffer, coverageToColorEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorEnableNV")) - vkCmdSetCoverageToColorLocationNV = cast[proc (commandBuffer: VkCommandBuffer, coverageToColorLocation: uint32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorLocationNV")) - vkCmdSetCoverageModulationModeNV = cast[proc (commandBuffer: VkCommandBuffer, coverageModulationMode: VkCoverageModulationModeNV): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationModeNV")) - vkCmdSetCoverageModulationTableEnableNV = cast[proc (commandBuffer: VkCommandBuffer, coverageModulationTableEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableEnableNV")) - vkCmdSetCoverageModulationTableNV = cast[proc (commandBuffer: VkCommandBuffer, coverageModulationTableCount: uint32, pCoverageModulationTable: ptr float32): void {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableNV")) - vkCmdSetShadingRateImageEnableNV = cast[proc (commandBuffer: VkCommandBuffer, shadingRateImageEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetShadingRateImageEnableNV")) - vkCmdSetRepresentativeFragmentTestEnableNV = cast[proc (commandBuffer: VkCommandBuffer, representativeFragmentTestEnable: VkBool32): void {.stdcall.}](vkGetProc("vkCmdSetRepresentativeFragmentTestEnableNV")) - vkCmdSetCoverageReductionModeNV = cast[proc (commandBuffer: VkCommandBuffer, coverageReductionMode: VkCoverageReductionModeNV): void {.stdcall.}](vkGetProc("vkCmdSetCoverageReductionModeNV")) + vkCmdBindShadersEXT = cast[proc (commandBuffer: VkCommandBuffer, stageCount: uint32, pStages: ptr VkShaderStageFlagBits, pShaders: ptr VkShaderEXT) {.stdcall.}](vkGetProc("vkCmdBindShadersEXT")) + vkCmdSetVertexInputEXT = cast[proc (commandBuffer: VkCommandBuffer, vertexBindingDescriptionCount: uint32, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription2EXT, vertexAttributeDescriptionCount: uint32, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription2EXT) {.stdcall.}](vkGetProc("vkCmdSetVertexInputEXT")) + vkCmdSetPatchControlPointsEXT = cast[proc (commandBuffer: VkCommandBuffer, patchControlPoints: uint32) {.stdcall.}](vkGetProc("vkCmdSetPatchControlPointsEXT")) + vkCmdSetLogicOpEXT = cast[proc (commandBuffer: VkCommandBuffer, logicOp: VkLogicOp) {.stdcall.}](vkGetProc("vkCmdSetLogicOpEXT")) + vkCmdSetTessellationDomainOriginEXT = cast[proc (commandBuffer: VkCommandBuffer, domainOrigin: VkTessellationDomainOrigin) {.stdcall.}](vkGetProc("vkCmdSetTessellationDomainOriginEXT")) + vkCmdSetDepthClampEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, depthClampEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetDepthClampEnableEXT")) + vkCmdSetPolygonModeEXT = cast[proc (commandBuffer: VkCommandBuffer, polygonMode: VkPolygonMode) {.stdcall.}](vkGetProc("vkCmdSetPolygonModeEXT")) + vkCmdSetRasterizationSamplesEXT = cast[proc (commandBuffer: VkCommandBuffer, rasterizationSamples: VkSampleCountFlagBits) {.stdcall.}](vkGetProc("vkCmdSetRasterizationSamplesEXT")) + vkCmdSetSampleMaskEXT = cast[proc (commandBuffer: VkCommandBuffer, samples: VkSampleCountFlagBits, pSampleMask: ptr VkSampleMask) {.stdcall.}](vkGetProc("vkCmdSetSampleMaskEXT")) + vkCmdSetAlphaToCoverageEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, alphaToCoverageEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetAlphaToCoverageEnableEXT")) + vkCmdSetAlphaToOneEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, alphaToOneEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetAlphaToOneEnableEXT")) + vkCmdSetLogicOpEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, logicOpEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetLogicOpEnableEXT")) + vkCmdSetColorBlendEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEnables: ptr VkBool32) {.stdcall.}](vkGetProc("vkCmdSetColorBlendEnableEXT")) + vkCmdSetColorBlendEquationEXT = cast[proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEquations: ptr VkColorBlendEquationEXT) {.stdcall.}](vkGetProc("vkCmdSetColorBlendEquationEXT")) + vkCmdSetColorWriteMaskEXT = cast[proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorWriteMasks: ptr VkColorComponentFlags) {.stdcall.}](vkGetProc("vkCmdSetColorWriteMaskEXT")) + vkCmdSetRasterizationStreamEXT = cast[proc (commandBuffer: VkCommandBuffer, rasterizationStream: uint32) {.stdcall.}](vkGetProc("vkCmdSetRasterizationStreamEXT")) + vkCmdSetConservativeRasterizationModeEXT = cast[proc (commandBuffer: VkCommandBuffer, conservativeRasterizationMode: VkConservativeRasterizationModeEXT) {.stdcall.}](vkGetProc("vkCmdSetConservativeRasterizationModeEXT")) + vkCmdSetExtraPrimitiveOverestimationSizeEXT = cast[proc (commandBuffer: VkCommandBuffer, extraPrimitiveOverestimationSize: float32) {.stdcall.}](vkGetProc("vkCmdSetExtraPrimitiveOverestimationSizeEXT")) + vkCmdSetDepthClipEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, depthClipEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetDepthClipEnableEXT")) + vkCmdSetSampleLocationsEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, sampleLocationsEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetSampleLocationsEnableEXT")) + vkCmdSetColorBlendAdvancedEXT = cast[proc (commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendAdvanced: ptr VkColorBlendAdvancedEXT) {.stdcall.}](vkGetProc("vkCmdSetColorBlendAdvancedEXT")) + vkCmdSetProvokingVertexModeEXT = cast[proc (commandBuffer: VkCommandBuffer, provokingVertexMode: VkProvokingVertexModeEXT) {.stdcall.}](vkGetProc("vkCmdSetProvokingVertexModeEXT")) + vkCmdSetLineRasterizationModeEXT = cast[proc (commandBuffer: VkCommandBuffer, lineRasterizationMode: VkLineRasterizationModeEXT) {.stdcall.}](vkGetProc("vkCmdSetLineRasterizationModeEXT")) + vkCmdSetLineStippleEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, stippledLineEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetLineStippleEnableEXT")) + vkCmdSetDepthClipNegativeOneToOneEXT = cast[proc (commandBuffer: VkCommandBuffer, negativeOneToOne: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetDepthClipNegativeOneToOneEXT")) + vkCmdSetViewportWScalingEnableNV = cast[proc (commandBuffer: VkCommandBuffer, viewportWScalingEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetViewportWScalingEnableNV")) + vkCmdSetViewportSwizzleNV = cast[proc (commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportSwizzles: ptr VkViewportSwizzleNV) {.stdcall.}](vkGetProc("vkCmdSetViewportSwizzleNV")) + vkCmdSetCoverageToColorEnableNV = cast[proc (commandBuffer: VkCommandBuffer, coverageToColorEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorEnableNV")) + vkCmdSetCoverageToColorLocationNV = cast[proc (commandBuffer: VkCommandBuffer, coverageToColorLocation: uint32) {.stdcall.}](vkGetProc("vkCmdSetCoverageToColorLocationNV")) + vkCmdSetCoverageModulationModeNV = cast[proc (commandBuffer: VkCommandBuffer, coverageModulationMode: VkCoverageModulationModeNV) {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationModeNV")) + vkCmdSetCoverageModulationTableEnableNV = cast[proc (commandBuffer: VkCommandBuffer, coverageModulationTableEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableEnableNV")) + vkCmdSetCoverageModulationTableNV = cast[proc (commandBuffer: VkCommandBuffer, coverageModulationTableCount: uint32, pCoverageModulationTable: ptr float32) {.stdcall.}](vkGetProc("vkCmdSetCoverageModulationTableNV")) + vkCmdSetShadingRateImageEnableNV = cast[proc (commandBuffer: VkCommandBuffer, shadingRateImageEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetShadingRateImageEnableNV")) + vkCmdSetRepresentativeFragmentTestEnableNV = cast[proc (commandBuffer: VkCommandBuffer, representativeFragmentTestEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetRepresentativeFragmentTestEnableNV")) + vkCmdSetCoverageReductionModeNV = cast[proc (commandBuffer: VkCommandBuffer, coverageReductionMode: VkCoverageReductionModeNV) {.stdcall.}](vkGetProc("vkCmdSetCoverageReductionModeNV")) # Load VK_QCOM_tile_properties proc loadVK_QCOM_tile_properties*() = @@ -22143,7 +22143,7 @@ proc loadVK_QCOM_tile_properties*() = # Load VK_NV_external_sci_sync2 proc loadVK_NV_external_sci_sync2*() = vkCreateSemaphoreSciSyncPoolNV = cast[proc (device: VkDevice, pCreateInfo: ptr VkSemaphoreSciSyncPoolCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pSemaphorePool: ptr VkSemaphoreSciSyncPoolNV): VkResult {.stdcall.}](vkGetProc("vkCreateSemaphoreSciSyncPoolNV")) - vkDestroySemaphoreSciSyncPoolNV = cast[proc (device: VkDevice, semaphorePool: VkSemaphoreSciSyncPoolNV, pAllocator: ptr VkAllocationCallbacks): void {.stdcall.}](vkGetProc("vkDestroySemaphoreSciSyncPoolNV")) + vkDestroySemaphoreSciSyncPoolNV = cast[proc (device: VkDevice, semaphorePool: VkSemaphoreSciSyncPoolNV, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroySemaphoreSciSyncPoolNV")) vkGetFenceSciSyncFenceNV = cast[proc (device: VkDevice, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV, pHandle: pointer): VkResult {.stdcall.}](vkGetProc("vkGetFenceSciSyncFenceNV")) vkGetFenceSciSyncObjNV = cast[proc (device: VkDevice, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV, pHandle: pointer): VkResult {.stdcall.}](vkGetProc("vkGetFenceSciSyncObjNV")) vkImportFenceSciSyncFenceNV = cast[proc (device: VkDevice, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV): VkResult {.stdcall.}](vkGetProc("vkImportFenceSciSyncFenceNV")) @@ -22154,9 +22154,9 @@ proc loadVK_NV_external_sci_sync2*() = proc loadVK_NV_low_latency2*() = vkSetLatencySleepModeNV = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR, pSleepModeInfo: ptr VkLatencySleepModeInfoNV): VkResult {.stdcall.}](vkGetProc("vkSetLatencySleepModeNV")) vkLatencySleepNV = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR, pSleepInfo: ptr VkLatencySleepInfoNV): VkResult {.stdcall.}](vkGetProc("vkLatencySleepNV")) - vkSetLatencyMarkerNV = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR, pLatencyMarkerInfo: ptr VkSetLatencyMarkerInfoNV): void {.stdcall.}](vkGetProc("vkSetLatencyMarkerNV")) - vkGetLatencyTimingsNV = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR, pLatencyMarkerInfo: ptr VkGetLatencyMarkerInfoNV): void {.stdcall.}](vkGetProc("vkGetLatencyTimingsNV")) - vkQueueNotifyOutOfBandNV = cast[proc (queue: VkQueue, pQueueTypeInfo: ptr VkOutOfBandQueueTypeInfoNV): void {.stdcall.}](vkGetProc("vkQueueNotifyOutOfBandNV")) + vkSetLatencyMarkerNV = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR, pLatencyMarkerInfo: ptr VkSetLatencyMarkerInfoNV) {.stdcall.}](vkGetProc("vkSetLatencyMarkerNV")) + vkGetLatencyTimingsNV = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR, pLatencyMarkerInfo: ptr VkGetLatencyMarkerInfoNV) {.stdcall.}](vkGetProc("vkGetLatencyTimingsNV")) + vkQueueNotifyOutOfBandNV = cast[proc (queue: VkQueue, pQueueTypeInfo: ptr VkOutOfBandQueueTypeInfoNV) {.stdcall.}](vkGetProc("vkQueueNotifyOutOfBandNV")) # Load VK_KHR_cooperative_matrix proc loadVK_KHR_cooperative_matrix*() = @@ -22164,7 +22164,7 @@ proc loadVK_KHR_cooperative_matrix*() = # Load VK_EXT_attachment_feedback_loop_dynamic_state proc loadVK_EXT_attachment_feedback_loop_dynamic_state*() = - vkCmdSetAttachmentFeedbackLoopEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, aspectMask: VkImageAspectFlags): void {.stdcall.}](vkGetProc("vkCmdSetAttachmentFeedbackLoopEnableEXT")) + vkCmdSetAttachmentFeedbackLoopEnableEXT = cast[proc (commandBuffer: VkCommandBuffer, aspectMask: VkImageAspectFlags) {.stdcall.}](vkGetProc("vkCmdSetAttachmentFeedbackLoopEnableEXT")) # Load VK_QNX_external_memory_screen_buffer proc loadVK_QNX_external_memory_screen_buffer*() = @@ -22172,7 +22172,7 @@ proc loadVK_QNX_external_memory_screen_buffer*() = # Load VK_KHR_line_rasterization proc loadVK_KHR_line_rasterization*() = - vkCmdSetLineStippleKHR = cast[proc (commandBuffer: VkCommandBuffer, lineStippleFactor: uint32, lineStipplePattern: uint16): void {.stdcall.}](vkGetProc("vkCmdSetLineStippleKHR")) + vkCmdSetLineStippleKHR = cast[proc (commandBuffer: VkCommandBuffer, lineStippleFactor: uint32, lineStipplePattern: uint16) {.stdcall.}](vkGetProc("vkCmdSetLineStippleKHR")) # Load VK_KHR_calibrated_timestamps proc loadVK_KHR_calibrated_timestamps*() = @@ -22181,12 +22181,12 @@ proc loadVK_KHR_calibrated_timestamps*() = # Load VK_KHR_maintenance6 proc loadVK_KHR_maintenance6*() = - vkCmdBindDescriptorSets2KHR = cast[proc (commandBuffer: VkCommandBuffer, pBindDescriptorSetsInfo: ptr VkBindDescriptorSetsInfoKHR): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorSets2KHR")) - vkCmdPushConstants2KHR = cast[proc (commandBuffer: VkCommandBuffer, pPushConstantsInfo: ptr VkPushConstantsInfoKHR): void {.stdcall.}](vkGetProc("vkCmdPushConstants2KHR")) - vkCmdPushDescriptorSet2KHR = cast[proc (commandBuffer: VkCommandBuffer, pPushDescriptorSetInfo: ptr VkPushDescriptorSetInfoKHR): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSet2KHR")) - vkCmdPushDescriptorSetWithTemplate2KHR = cast[proc (commandBuffer: VkCommandBuffer, pPushDescriptorSetWithTemplateInfo: ptr VkPushDescriptorSetWithTemplateInfoKHR): void {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplate2KHR")) - vkCmdSetDescriptorBufferOffsets2EXT = cast[proc (commandBuffer: VkCommandBuffer, pSetDescriptorBufferOffsetsInfo: ptr VkSetDescriptorBufferOffsetsInfoEXT): void {.stdcall.}](vkGetProc("vkCmdSetDescriptorBufferOffsets2EXT")) - vkCmdBindDescriptorBufferEmbeddedSamplers2EXT = cast[proc (commandBuffer: VkCommandBuffer, pBindDescriptorBufferEmbeddedSamplersInfo: ptr VkBindDescriptorBufferEmbeddedSamplersInfoEXT): void {.stdcall.}](vkGetProc("vkCmdBindDescriptorBufferEmbeddedSamplers2EXT")) + vkCmdBindDescriptorSets2KHR = cast[proc (commandBuffer: VkCommandBuffer, pBindDescriptorSetsInfo: ptr VkBindDescriptorSetsInfoKHR) {.stdcall.}](vkGetProc("vkCmdBindDescriptorSets2KHR")) + vkCmdPushConstants2KHR = cast[proc (commandBuffer: VkCommandBuffer, pPushConstantsInfo: ptr VkPushConstantsInfoKHR) {.stdcall.}](vkGetProc("vkCmdPushConstants2KHR")) + vkCmdPushDescriptorSet2KHR = cast[proc (commandBuffer: VkCommandBuffer, pPushDescriptorSetInfo: ptr VkPushDescriptorSetInfoKHR) {.stdcall.}](vkGetProc("vkCmdPushDescriptorSet2KHR")) + vkCmdPushDescriptorSetWithTemplate2KHR = cast[proc (commandBuffer: VkCommandBuffer, pPushDescriptorSetWithTemplateInfo: ptr VkPushDescriptorSetWithTemplateInfoKHR) {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplate2KHR")) + vkCmdSetDescriptorBufferOffsets2EXT = cast[proc (commandBuffer: VkCommandBuffer, pSetDescriptorBufferOffsetsInfo: ptr VkSetDescriptorBufferOffsetsInfoEXT) {.stdcall.}](vkGetProc("vkCmdSetDescriptorBufferOffsets2EXT")) + vkCmdBindDescriptorBufferEmbeddedSamplers2EXT = cast[proc (commandBuffer: VkCommandBuffer, pBindDescriptorBufferEmbeddedSamplersInfo: ptr VkBindDescriptorBufferEmbeddedSamplersInfoEXT) {.stdcall.}](vkGetProc("vkCmdBindDescriptorBufferEmbeddedSamplers2EXT")) var vkCreateInstance*: proc (pCreateInfo: ptr VkInstanceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pInstance: ptr VkInstance): VkResult {.stdcall.} diff --git a/tools/generator.nim b/tools/generator.nim index 834983d..1f57b51 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -439,9 +439,10 @@ proc genProcs(node: XmlNode, output: var string) = output.add(", ") output.add(&"{arg.name}: {arg.argType}") if vkProc.rval == "void": - output.add(") {.stdcall.}\n") + output.add(")") else: - output.add(&"): {vkProc.rval} {{.stdcall.}}\n") + output.add(&"): {vkProc.rval}") + output.add(" {.stdcall.}\n") proc genFeatures(node: XmlNode, output: var string) = echo "Generating and Adding Features..." @@ -459,7 +460,11 @@ proc genFeatures(node: XmlNode, output: var string) = if not output.endsWith("("): output.add(", ") output.add(&"{arg.name}: {arg.argType}") - output.add(&"): {vkProc.rVal} {{.stdcall.}}](vkGetProc(\"{vkProc.name}\"))\n") + if vkProc.rval == "void": + output.add(&")") + else: + output.add(&"): {vkProc.rVal}") + output.add(&" {{.stdcall.}}](vkGetProc(\"{vkProc.name}\"))\n") proc genExtensions(node: XmlNode, output: var string) = echo "Generating and Adding Extensions..." @@ -483,7 +488,11 @@ proc genExtensions(node: XmlNode, output: var string) = if not output.endsWith('('): output.add(", ") output.add(&"{arg.name}: {arg.argType}") - output.add(&"): {vkProc.rVal} {{.stdcall.}}](vkGetProc(\"{vkProc.name}\"))\n") + if vkProc.rval == "void": + output.add(&")") + else: + output.add(&"): {vkProc.rVal}") + output.add(&" {{.stdcall.}}](vkGetProc(\"{vkProc.name}\"))\n") proc genConstructors(node: XmlNode, output: var string) = echo "Generating and Adding Constructors..." From 5c4df849ff6dd9379d1643a81fc10d8812f54d66 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Tue, 30 Apr 2024 18:47:38 +0300 Subject: [PATCH 24/57] fix warnings --- src/vulkan.nim | 10 +++++----- tools/generator.nim | 10 +++++----- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index dd41808..29b02ed 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -2364,13 +2364,13 @@ type VkShaderFloatControlsIndependenceKHR* = VkShaderFloatControlsIndependence VkSubmitFlagBitsKHR* = VkSubmitFlagBits VkDriverIdKHR* = VkDriverId - PFN_vkInternalAllocationNotification* = proc (pUserData: pointer; size: csize; allocationType: VkInternalAllocationType; allocationScope: VkSystemAllocationScope) {.cdecl.} - PFN_vkInternalFreeNotification* = proc (pUserData: pointer; size: csize; allocationType: VkInternalAllocationType; allocationScope: VkSystemAllocationScope) {.cdecl.} - PFN_vkReallocationFunction* = proc (pUserData: pointer; pOriginal: pointer; size: csize; alignment: csize; allocationScope: VkSystemAllocationScope): pointer {.cdecl.} - PFN_vkAllocationFunction* = proc (pUserData: pointer; size: csize; alignment: csize; allocationScope: VkSystemAllocationScope): pointer {.cdecl.} + PFN_vkInternalAllocationNotification* = proc (pUserData: pointer; size: uint; allocationType: VkInternalAllocationType; allocationScope: VkSystemAllocationScope) {.cdecl.} + PFN_vkInternalFreeNotification* = proc (pUserData: pointer; size: uint; allocationType: VkInternalAllocationType; allocationScope: VkSystemAllocationScope) {.cdecl.} + PFN_vkReallocationFunction* = proc (pUserData: pointer; pOriginal: pointer; size: uint; alignment: uint; allocationScope: VkSystemAllocationScope): pointer {.cdecl.} + PFN_vkAllocationFunction* = proc (pUserData: pointer; size: uint; alignment: uint; allocationScope: VkSystemAllocationScope): pointer {.cdecl.} PFN_vkFreeFunction* = proc (pUserData: pointer; pMemory: pointer) {.cdecl.} PFN_vkVoidFunction* = proc () {.cdecl.} - PFN_vkDebugReportCallbackEXT* = proc (flags: VkDebugReportFlagsEXT; objectType: VkDebugReportObjectTypeEXT; cbObject: uint64; location: csize; messageCode: int32; pLayerPrefix: cstring; pMessage: cstring; pUserData: pointer): VkBool32 {.cdecl.} + PFN_vkDebugReportCallbackEXT* = proc (flags: VkDebugReportFlagsEXT; objectType: VkDebugReportObjectTypeEXT; cbObject: uint64; location: uint; messageCode: int32; pLayerPrefix: cstring; pMessage: cstring; pUserData: pointer): VkBool32 {.cdecl.} PFN_vkDebugUtilsMessengerCallbackEXT* = proc (messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEXT, messageTypes: VkDebugUtilsMessageTypeFlagsEXT, pCallbackData: VkDebugUtilsMessengerCallbackDataEXT, userData: pointer): VkBool32 {.cdecl.} PFN_vkFaultCallbackFunction* = proc (unrecordedFaults: VkBool32; faultCount: uint32; pFaults: ptr VkFaultData) {.cdecl.} PFN_vkDeviceMemoryReportCallbackEXT* = proc (pCallbackData: ptr VkDeviceMemoryReportCallbackDataEXT; pUserData: pointer) {.cdecl.} diff --git a/tools/generator.nim b/tools/generator.nim index 1f57b51..f3198aa 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -198,13 +198,13 @@ proc genTypes(node: XmlNode, output: var string) = if t.attr("category") == "funcpointer": let name = t.child("name").innerText if name == "PFN_vkInternalAllocationNotification": - output.add(" PFN_vkInternalAllocationNotification* = proc (pUserData: pointer; size: csize; allocationType: VkInternalAllocationType; allocationScope: VkSystemAllocationScope) {.cdecl.}\n") + output.add(" PFN_vkInternalAllocationNotification* = proc (pUserData: pointer; size: uint; allocationType: VkInternalAllocationType; allocationScope: VkSystemAllocationScope) {.cdecl.}\n") elif name == "PFN_vkInternalFreeNotification": - output.add(" PFN_vkInternalFreeNotification* = proc (pUserData: pointer; size: csize; allocationType: VkInternalAllocationType; allocationScope: VkSystemAllocationScope) {.cdecl.}\n") + output.add(" PFN_vkInternalFreeNotification* = proc (pUserData: pointer; size: uint; allocationType: VkInternalAllocationType; allocationScope: VkSystemAllocationScope) {.cdecl.}\n") elif name == "PFN_vkReallocationFunction": - output.add(" PFN_vkReallocationFunction* = proc (pUserData: pointer; pOriginal: pointer; size: csize; alignment: csize; allocationScope: VkSystemAllocationScope): pointer {.cdecl.}\n") + output.add(" PFN_vkReallocationFunction* = proc (pUserData: pointer; pOriginal: pointer; size: uint; alignment: uint; allocationScope: VkSystemAllocationScope): pointer {.cdecl.}\n") elif name == "PFN_vkAllocationFunction": - output.add(" PFN_vkAllocationFunction* = proc (pUserData: pointer; size: csize; alignment: csize; allocationScope: VkSystemAllocationScope): pointer {.cdecl.}\n") + output.add(" PFN_vkAllocationFunction* = proc (pUserData: pointer; size: uint; alignment: uint; allocationScope: VkSystemAllocationScope): pointer {.cdecl.}\n") elif name == "PFN_vkFreeFunction": output.add(" PFN_vkFreeFunction* = proc (pUserData: pointer; pMemory: pointer) {.cdecl.}\n") elif name == "PFN_vkVoidFunction": @@ -216,7 +216,7 @@ proc genTypes(node: XmlNode, output: var string) = elif name == "PFN_vkGetInstanceProcAddrLUNARG": output.add(" PFN_vkGetInstanceProcAddrLUNARG* = proc (instance: VkInstance; pName: cstring): PFN_vkVoidFunction {.cdecl.}\n") elif name == "PFN_vkDebugReportCallbackEXT": - output.add(" PFN_vkDebugReportCallbackEXT* = proc (flags: VkDebugReportFlagsEXT; objectType: VkDebugReportObjectTypeEXT; cbObject: uint64; location: csize; messageCode: int32; pLayerPrefix: cstring; pMessage: cstring; pUserData: pointer): VkBool32 {.cdecl.}\n") + output.add(" PFN_vkDebugReportCallbackEXT* = proc (flags: VkDebugReportFlagsEXT; objectType: VkDebugReportObjectTypeEXT; cbObject: uint64; location: uint; messageCode: int32; pLayerPrefix: cstring; pMessage: cstring; pUserData: pointer): VkBool32 {.cdecl.}\n") elif name == "PFN_vkDebugUtilsMessengerCallbackEXT": output.add(" PFN_vkDebugUtilsMessengerCallbackEXT* = proc (messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEXT, messageTypes: VkDebugUtilsMessageTypeFlagsEXT, pCallbackData: VkDebugUtilsMessengerCallbackDataEXT, userData: pointer): VkBool32 {.cdecl.}\n") else: From 2e143fc7190281fcac667daf2c702c9e88636627 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Tue, 30 Apr 2024 19:36:44 +0300 Subject: [PATCH 25/57] rework vkinit raise nilacessdefect when instance is nil --- src/vulkan.nim | 5 +++-- tools/generator.nim | 9 --------- tools/utils.nim | 5 +++-- 3 files changed, 6 insertions(+), 13 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 29b02ed..5a028f2 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -22204,11 +22204,12 @@ proc vkPreload*(load1_1: bool = true) = if load1_1: vkEnumerateInstanceVersion = cast[proc (pApiVersion: ptr uint32): VkResult {.stdcall.}](vkGetProc("vkEnumerateInstanceVersion")) -proc vkInit*(instance: VkInstance, load1_0: bool = true, load1_1: bool = true): bool = +proc vkInit*(instance: VkInstance, load1_0: bool = true, load1_1: bool = true) = currInst = cast[pointer](instance) + if currInst == nil: + raise newException(NilAccessDefect, "Instance is nil") if load1_0: vkLoad1_0() when not defined(macosx): if load1_1: vkLoad1_1() - return true diff --git a/tools/generator.nim b/tools/generator.nim index f3198aa..d1a3ffb 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -73,9 +73,7 @@ proc translateType(s: string): string = proc genTypes(node: XmlNode, output: var string) = echo "Generating Types..." output.add("\n# Types\n") - var inType = false - for types in node.findAll("types"): for t in types.items: if t.attr("category") == "include" or t.attr("requires") == "vk_platform" or @@ -92,7 +90,6 @@ proc genTypes(node: XmlNode, output: var string) = output.add(&" {name}* {{.nodecl.}} = object\n") # Define category - if t.attr("category") == "define": if t.child("name") == nil: continue @@ -132,7 +129,6 @@ proc genTypes(node: XmlNode, output: var string) = continue # Basetype category - if t.attr("category") == "basetype": if not inType: output.add("\ntype\n") @@ -146,7 +142,6 @@ proc genTypes(node: XmlNode, output: var string) = continue # Bitmask category - if t.attr("category") == "bitmask": var name = t.attr("name") if t.attr("api") == "vulkansc": @@ -165,7 +160,6 @@ proc genTypes(node: XmlNode, output: var string) = continue # Handle category - if t.attr("category") == "handle": var name = t.attr("name") if t.child("name") != nil: @@ -182,7 +176,6 @@ proc genTypes(node: XmlNode, output: var string) = continue # Enum category - if t.attr("category") == "enum": let name = t.attr("name") let alias = t.attr("alias") @@ -194,7 +187,6 @@ proc genTypes(node: XmlNode, output: var string) = continue # Funcpointer category - if t.attr("category") == "funcpointer": let name = t.child("name").innerText if name == "PFN_vkInternalAllocationNotification": @@ -224,7 +216,6 @@ proc genTypes(node: XmlNode, output: var string) = continue # Struct category - if t.attr("category") == "struct": let name = t.attr("name") var vkStruct: VkStruct diff --git a/tools/utils.nim b/tools/utils.nim index 8b569fa..c541931 100644 --- a/tools/utils.nim +++ b/tools/utils.nim @@ -74,14 +74,15 @@ proc vkPreload*(load1_1: bool = true) = if load1_1: vkEnumerateInstanceVersion = cast[proc (pApiVersion: ptr uint32): VkResult {.stdcall.}](vkGetProc("vkEnumerateInstanceVersion")) -proc vkInit*(instance: VkInstance, load1_0: bool = true, load1_1: bool = true): bool = +proc vkInit*(instance: VkInstance, load1_0: bool = true, load1_1: bool = true) = currInst = cast[pointer](instance) + if currInst == nil: + raise newException(NilAccessDefect, "Instance is nil") if load1_0: vkLoad1_0() when not defined(macosx): if load1_1: vkLoad1_1() - return true """ keywords = ["addr", "and", "as", "asm", From 2dc94ec4ac9b187525f3ce428ec29b7c26cd0e3e Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Tue, 30 Apr 2024 20:11:59 +0300 Subject: [PATCH 26/57] add new --- src/vulkan.nim | 10 +++++++--- tools/utils.nim | 10 +++++++--- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 5a028f2..fcfb7fd 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -22204,12 +22204,16 @@ proc vkPreload*(load1_1: bool = true) = if load1_1: vkEnumerateInstanceVersion = cast[proc (pApiVersion: ptr uint32): VkResult {.stdcall.}](vkGetProc("vkEnumerateInstanceVersion")) -proc vkInit*(instance: VkInstance, load1_0: bool = true, load1_1: bool = true) = +proc vkInit*(instance: VkInstance, load1_0 = true, load1_1: bool = true, load1_2 = true, load1_3: bool = true) = currInst = cast[pointer](instance) if currInst == nil: raise newException(NilAccessDefect, "Instance is nil") if load1_0: vkLoad1_0() + if load1_1: + vkLoad1_1() + if load1_2: + vkLoad1_2() when not defined(macosx): - if load1_1: - vkLoad1_1() + if load1_3: + vkLoad1_3() diff --git a/tools/utils.nim b/tools/utils.nim index c541931..7678084 100644 --- a/tools/utils.nim +++ b/tools/utils.nim @@ -74,15 +74,19 @@ proc vkPreload*(load1_1: bool = true) = if load1_1: vkEnumerateInstanceVersion = cast[proc (pApiVersion: ptr uint32): VkResult {.stdcall.}](vkGetProc("vkEnumerateInstanceVersion")) -proc vkInit*(instance: VkInstance, load1_0: bool = true, load1_1: bool = true) = +proc vkInit*(instance: VkInstance, load1_0 = true, load1_1: bool = true, load1_2 = true, load1_3: bool = true) = currInst = cast[pointer](instance) if currInst == nil: raise newException(NilAccessDefect, "Instance is nil") if load1_0: vkLoad1_0() + if load1_1: + vkLoad1_1() + if load1_2: + vkLoad1_2() when not defined(macosx): - if load1_1: - vkLoad1_1() + if load1_3: + vkLoad1_3() """ keywords = ["addr", "and", "as", "asm", From 66d816db8a0a72fdf409f13014f0fc6031142553 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Wed, 1 May 2024 00:49:06 +0300 Subject: [PATCH 27/57] That looks wrong and I actually hit this bug --- src/vulkan.nim | 4 ++-- tools/generator.nim | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index fcfb7fd..509b646 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -2574,7 +2574,7 @@ type descriptorCount*: uint32 descriptorType*: VkDescriptorType pImageInfo*: ptr VkDescriptorImageInfo - pBufferInfo*: ptr ptr VkDescriptorBufferInfo + pBufferInfo*: ptr VkDescriptorBufferInfo pTexelBufferView*: ptr VkBufferView VkCopyDescriptorSet* = object @@ -10898,7 +10898,7 @@ proc newVkDescriptorImageInfo*(sampler: VkSampler, imageView: VkImageView, image imageLayout: imageLayout, ) -proc newVkWriteDescriptorSet*(sType: VkStructureType = VkStructureType.WriteDescriptorSet, pNext: pointer = nil, dstSet: VkDescriptorSet, dstBinding: uint32, dstArrayElement: uint32, descriptorCount: uint32, descriptorType: VkDescriptorType, pImageInfo: ptr VkDescriptorImageInfo, pBufferInfo: ptr ptr VkDescriptorBufferInfo, pTexelBufferView: ptr VkBufferView): VkWriteDescriptorSet = +proc newVkWriteDescriptorSet*(sType: VkStructureType = VkStructureType.WriteDescriptorSet, pNext: pointer = nil, dstSet: VkDescriptorSet, dstBinding: uint32, dstArrayElement: uint32, descriptorCount: uint32, descriptorType: VkDescriptorType, pImageInfo: ptr VkDescriptorImageInfo, pBufferInfo: ptr VkDescriptorBufferInfo, pTexelBufferView: ptr VkBufferView): VkWriteDescriptorSet = result = VkWriteDescriptorSet( sType: sType, pNext: pNext, diff --git a/tools/generator.nim b/tools/generator.nim index d1a3ffb..961120a 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -240,7 +240,7 @@ proc genTypes(node: XmlNode, output: var string) = if arraySize != "": isArray = true if arraySize == "_DYNAMIC": - memberType = "ptr " & memberType + # memberType = "ptr " & memberType isArray = false var depth = member.innerText.count('*') if memberType == "pointer": From d3b1547d4cda95adfae54a83cec827e2feca562f Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Wed, 1 May 2024 02:05:18 +0300 Subject: [PATCH 28/57] a library shouldn't call quit --- src/vulkan.nim | 12 +++--------- tools/utils.nim | 12 +++--------- 2 files changed, 6 insertions(+), 18 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 509b646..15a8ee4 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -20,18 +20,12 @@ when not defined(vkCustomLoader): let vkHandleDLL = loadLib(vkDLL) if isNil(vkHandleDLL): - quit("could not load: " & vkDLL) + raise newException(LibraryError, "could not load: " & vkDLL) - let vkGetProcAddress = cast[proc (inst: pointer, s: cstring): pointer {.stdcall.}](symAddr(vkHandleDLL, "vkGetInstanceProcAddr")) - if vkGetProcAddress == nil: - quit("failed to load `vkGetInstanceProcAddr` from " & vkDLL) + let vkGetProcAddress = cast[proc (inst: pointer, s: cstring): pointer {.stdcall.}](checkedSymAddr(vkHandleDLL, "vkGetInstanceProcAddr")) vkGetProc = proc (procName: cstring): pointer {.cdecl.} = - when defined(windows): - result = vkGetProcAddress(currInst, procName) - if result != nil: - return - result = symAddr(vkHandleDLL, procName) + result = vkGetProcAddress(currInst, procName) if result == nil: raiseInvalidLibrary(procName) diff --git a/tools/utils.nim b/tools/utils.nim index 7678084..044d434 100644 --- a/tools/utils.nim +++ b/tools/utils.nim @@ -25,18 +25,12 @@ when not defined(vkCustomLoader): let vkHandleDLL = loadLib(vkDLL) if isNil(vkHandleDLL): - quit("could not load: " & vkDLL) + raise newException(LibraryError, "could not load: " & vkDLL) - let vkGetProcAddress = cast[proc (inst: pointer, s: cstring): pointer {.stdcall.}](symAddr(vkHandleDLL, "vkGetInstanceProcAddr")) - if vkGetProcAddress == nil: - quit("failed to load `vkGetInstanceProcAddr` from " & vkDLL) + let vkGetProcAddress = cast[proc (inst: pointer, s: cstring): pointer {.stdcall.}](checkedSymAddr(vkHandleDLL, "vkGetInstanceProcAddr")) vkGetProc = proc (procName: cstring): pointer {.cdecl.} = - when defined(windows): - result = vkGetProcAddress(currInst, procName) - if result != nil: - return - result = symAddr(vkHandleDLL, procName) + result = vkGetProcAddress(currInst, procName) if result == nil: raiseInvalidLibrary(procName) From 9768a204b2cb75dc065478c6e6e655096503577b Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Wed, 8 May 2024 02:59:57 +0300 Subject: [PATCH 29/57] fixes --- src/vulkan.nim | 2 +- tools/generator.nim | 72 ++++++++++++++++++++++----------------------- 2 files changed, 37 insertions(+), 37 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 15a8ee4..c21b036 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -2365,7 +2365,7 @@ type PFN_vkFreeFunction* = proc (pUserData: pointer; pMemory: pointer) {.cdecl.} PFN_vkVoidFunction* = proc () {.cdecl.} PFN_vkDebugReportCallbackEXT* = proc (flags: VkDebugReportFlagsEXT; objectType: VkDebugReportObjectTypeEXT; cbObject: uint64; location: uint; messageCode: int32; pLayerPrefix: cstring; pMessage: cstring; pUserData: pointer): VkBool32 {.cdecl.} - PFN_vkDebugUtilsMessengerCallbackEXT* = proc (messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEXT, messageTypes: VkDebugUtilsMessageTypeFlagsEXT, pCallbackData: VkDebugUtilsMessengerCallbackDataEXT, userData: pointer): VkBool32 {.cdecl.} + PFN_vkDebugUtilsMessengerCallbackEXT* = proc (messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEXT, messageTypes: VkDebugUtilsMessageTypeFlagsEXT, pCallbackData: ptr VkDebugUtilsMessengerCallbackDataEXT, userData: pointer): VkBool32 {.cdecl.} PFN_vkFaultCallbackFunction* = proc (unrecordedFaults: VkBool32; faultCount: uint32; pFaults: ptr VkFaultData) {.cdecl.} PFN_vkDeviceMemoryReportCallbackEXT* = proc (pCallbackData: ptr VkDeviceMemoryReportCallbackDataEXT; pUserData: pointer) {.cdecl.} PFN_vkGetInstanceProcAddrLUNARG* = proc (instance: VkInstance; pName: cstring): PFN_vkVoidFunction {.cdecl.} diff --git a/tools/generator.nim b/tools/generator.nim index 961120a..4c55038 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -39,22 +39,23 @@ proc camelCaseAscii*(s: string): string = proc translateType(s: string): string = result = s - result = result.multiReplace([ - ("int64_t", "int64"), - ("int32_t", "int32"), - ("int16_t", "int16"), - ("int8_t", "int8"), - ("size_t", "uint"), # uint matches pointer size just like size_t - ("float", "float32"), - ("double", "float64"), - ("VK_DEFINE_HANDLE", "VkHandle"), - ("VK_DEFINE_NON_DISPATCHABLE_HANDLE", "VkNonDispatchableHandle"), - ("const ", ""), - (" const", ""), - ("unsigned ", "u"), - ("signed ", ""), - ("struct ", ""), - ]) + result = result.multiReplace({ + "int64_t": "int64", + "int32_t": "int32", + "int16_t": "int16", + "int8_t": "int8", + "size_t": "uint", # uint matches pointer size just like size_t + "float": "float32", + "double": "float64", + "VK_DEFINE_HANDLE": "VkHandle", + "VK_DEFINE_NON_DISPATCHABLE_HANDLE": "VkNonDispatchableHandle", + "const ": "", + " const": "", + "unsigned ": "u", + "signed ": "", + "struct ": "", + }) + if result.startsWith('_'): result = result.substr(1) @@ -64,11 +65,11 @@ proc translateType(s: string): string = for i in 0.. Date: Wed, 8 May 2024 23:31:41 +0300 Subject: [PATCH 30/57] enum values fixes --- src/vulkan.nim | 180 ++++++++++++++++++++++++------------------------- 1 file changed, 90 insertions(+), 90 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index c21b036..b2103ae 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -664,15 +664,15 @@ type IndirectBufferBit = 256 VkBufferUsageFlagBits2KHR* {.size: sizeof(int32).} = enum - N2TransferSrcBit = 1 - N2TransferDstBit - N2UniformTexelBufferBit = 4 - N2StorageTexelBufferBit = 8 - N2UniformBufferBit = 16 - N2StorageBufferBit = 32 - N2IndexBufferBit = 64 - N2VertexBufferBit = 128 - N2IndirectBufferBit = 256 + TransferSrcBit = 1 + TransferDstBit + UniformTexelBufferBit = 4 + StorageTexelBufferBit = 8 + UniformBufferBit = 16 + StorageBufferBit = 32 + IndexBufferBit = 64 + VertexBufferBit = 128 + IndirectBufferBit = 256 VkBufferCreateFlagBits* {.size: sizeof(int32).} = enum SparseBindingBit = 1 @@ -712,9 +712,9 @@ type DerivativeBit = 4 VkPipelineCreateFlagBits2KHR* {.size: sizeof(int32).} = enum - N2DisableOptimizationBit = 1 - N2AllowDerivativesBit - N2DerivativeBit = 4 + DisableOptimizationBit = 1 + AllowDerivativesBit + DerivativeBit = 4 VkColorComponentFlagBits* {.size: sizeof(int32).} = enum RBit = 1 @@ -915,11 +915,11 @@ type DescriptorSet Framebuffer CommandPool - SurfaceKhr - SwapchainKhr + Surface + Swapchain DebugReportCallbackExt - DisplayKhr - DisplayModeKhr + Display + DisplayMode ValidationCacheExt = 33 VkDeviceMemoryReportEventTypeEXT* {.size: sizeof(int32).} = enum @@ -1461,54 +1461,54 @@ type NotMergedUnspecified VkAccessFlagBits2* {.size: sizeof(int32).} = enum - N2None - N2IndirectCommandReadBit - N2IndexReadBit - N2VertexAttributeReadBit = 4 - N2UniformReadBit = 8 - N2InputAttachmentReadBit = 16 - N2ShaderReadBit = 32 - N2ShaderWriteBit = 64 - N2ColorAttachmentReadBit = 128 - N2ColorAttachmentWriteBit = 256 - N2DepthStencilAttachmentReadBit = 512 - N2DepthStencilAttachmentWriteBit = 1024 - N2TransferReadBit = 2048 - N2TransferWriteBit = 4096 - N2HostReadBit = 8192 - N2HostWriteBit = 16384 - N2MemoryReadBit = 32768 - N2MemoryWriteBit = 65536 - N2ShaderSampledReadBit = 4294967296 - N2ShaderStorageReadBit = 8589934592 - N2ShaderStorageWriteBit = 17179869184 + None + IndirectCommandReadBit + IndexReadBit + VertexAttributeReadBit = 4 + UniformReadBit = 8 + InputAttachmentReadBit = 16 + ShaderReadBit = 32 + ShaderWriteBit = 64 + ColorAttachmentReadBit = 128 + ColorAttachmentWriteBit = 256 + DepthStencilAttachmentReadBit = 512 + DepthStencilAttachmentWriteBit = 1024 + TransferReadBit = 2048 + TransferWriteBit = 4096 + HostReadBit = 8192 + HostWriteBit = 16384 + MemoryReadBit = 32768 + MemoryWriteBit = 65536 + ShaderSampledReadBit = 4294967296 + ShaderStorageReadBit = 8589934592 + ShaderStorageWriteBit = 17179869184 VkPipelineStageFlagBits2* {.size: sizeof(int32).} = enum - N2None - N2TopOfPipeBit - N2DrawIndirectBit - N2VertexInputBit = 4 - N2VertexShaderBit = 8 - N2TessellationControlShaderBit = 16 - N2TessellationEvaluationShaderBit = 32 - N2GeometryShaderBit = 64 - N2FragmentShaderBit = 128 - N2EarlyFragmentTestsBit = 256 - N2LateFragmentTestsBit = 512 - N2ColorAttachmentOutputBit = 1024 - N2ComputeShaderBit = 2048 - N2AllTransferBit = 4096 - N2BottomOfPipeBit = 8192 - N2HostBit = 16384 - N2AllGraphicsBit = 32768 - N2AllCommandsBit = 65536 - N2CopyBit = 4294967296 - N2ResolveBit = 8589934592 - N2BlitBit = 17179869184 - N2ClearBit = 34359738368 - N2IndexInputBit = 68719476736 - N2VertexAttributeInputBit = 137438953472 - N2PreRasterizationShadersBit = 274877906944 + None + TopOfPipeBit + DrawIndirectBit + VertexInputBit = 4 + VertexShaderBit = 8 + TessellationControlShaderBit = 16 + TessellationEvaluationShaderBit = 32 + GeometryShaderBit = 64 + FragmentShaderBit = 128 + EarlyFragmentTestsBit = 256 + LateFragmentTestsBit = 512 + ColorAttachmentOutputBit = 1024 + ComputeShaderBit = 2048 + AllTransferBit = 4096 + BottomOfPipeBit = 8192 + HostBit = 16384 + AllGraphicsBit = 32768 + AllCommandsBit = 65536 + CopyBit = 4294967296 + ResolveBit = 8589934592 + BlitBit = 17179869184 + ClearBit = 34359738368 + IndexInputBit = 68719476736 + VertexAttributeInputBit = 137438953472 + PreRasterizationShadersBit = 274877906944 VkSubmitFlagBits* {.size: sizeof(int32).} = enum ProtectedBit = 1 @@ -1561,7 +1561,7 @@ type CenteredBit = 4 VkPhysicalDeviceSchedulingControlsFlagBitsARM* {.size: sizeof(int32).} = enum - VkPhysicalDeviceSchedulingControlsShaderCoreCountArm = 1 + ShaderCoreCount = 1 VkVideoCodecOperationFlagBitsKHR* {.size: sizeof(int32).} = enum None @@ -1695,33 +1695,33 @@ type VkImageConstraintsInfoProtectedOptionalFuchsia = 16 VkFormatFeatureFlagBits2* {.size: sizeof(int32).} = enum - N2SampledImageBit = 1 - N2StorageImageBit - N2StorageImageAtomicBit = 4 - N2UniformTexelBufferBit = 8 - N2StorageTexelBufferBit = 16 - N2StorageTexelBufferAtomicBit = 32 - N2VertexBufferBit = 64 - N2ColorAttachmentBit = 128 - N2ColorAttachmentBlendBit = 256 - N2DepthStencilAttachmentBit = 512 - N2BlitSrcBit = 1024 - N2BlitDstBit = 2048 - N2SampledImageFilterLinearBit = 4096 - N2SampledImageFilterCubicBit = 8192 - N2TransferSrcBit = 16384 - N2TransferDstBit = 32768 - N2SampledImageFilterMinmaxBit = 65536 - N2MidpointChromaSamplesBit = 131072 - N2SampledImageYcbcrConversionLinearFilterBit = 262144 - N2SampledImageYcbcrConversionSeparateReconstructionFilterBit = 524288 - N2SampledImageYcbcrConversionChromaReconstructionExplicitBit = 1048576 - N2SampledImageYcbcrConversionChromaReconstructionExplicitForceableBit = 2097152 - N2DisjointBit = 4194304 - N2CositedChromaSamplesBit = 8388608 - N2StorageReadWithoutFormatBit = 2147483648 - N2StorageWriteWithoutFormatBit = 4294967296 - N2SampledImageDepthComparisonBit = 8589934592 + SampledImageBit = 1 + StorageImageBit + StorageImageAtomicBit = 4 + UniformTexelBufferBit = 8 + StorageTexelBufferBit = 16 + StorageTexelBufferAtomicBit = 32 + VertexBufferBit = 64 + ColorAttachmentBit = 128 + ColorAttachmentBlendBit = 256 + DepthStencilAttachmentBit = 512 + BlitSrcBit = 1024 + BlitDstBit = 2048 + SampledImageFilterLinearBit = 4096 + SampledImageFilterCubicBit = 8192 + TransferSrcBit = 16384 + TransferDstBit = 32768 + SampledImageFilterMinmaxBit = 65536 + MidpointChromaSamplesBit = 131072 + SampledImageYcbcrConversionLinearFilterBit = 262144 + SampledImageYcbcrConversionSeparateReconstructionFilterBit = 524288 + SampledImageYcbcrConversionChromaReconstructionExplicitBit = 1048576 + SampledImageYcbcrConversionChromaReconstructionExplicitForceableBit = 2097152 + DisjointBit = 4194304 + CositedChromaSamplesBit = 8388608 + StorageReadWithoutFormatBit = 2147483648 + StorageWriteWithoutFormatBit = 4294967296 + SampledImageDepthComparisonBit = 8589934592 VkRenderingFlagBits* {.size: sizeof(int32).} = enum ContentsSecondaryCommandBuffersBit = 1 From 2f774bd23ec5f9fba31354b2aed9bb6fc1eb1e7f Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Wed, 8 May 2024 23:51:13 +0300 Subject: [PATCH 31/57] better --- src/vulkan.nim | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index b2103ae..e596104 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -915,11 +915,11 @@ type DescriptorSet Framebuffer CommandPool - Surface - Swapchain + SurfaceKhr + SwapchainKhr DebugReportCallbackExt - Display - DisplayMode + DisplayKhr + DisplayModeKhr ValidationCacheExt = 33 VkDeviceMemoryReportEventTypeEXT* {.size: sizeof(int32).} = enum From 6f7dbbf01922ff946da48edacafe5f4a5cc97fc3 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Wed, 8 May 2024 23:56:35 +0300 Subject: [PATCH 32/57] generator improvements --- tools/generator.nim | 65 +++++++++++++++++++++++++++------------------ 1 file changed, 39 insertions(+), 26 deletions(-) diff --git a/tools/generator.nim b/tools/generator.nim index 4c55038..b502a70 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -299,6 +299,42 @@ proc genTypes(node: XmlNode, output: var string) = output.add(&" {memberName}*: array[{arraySize}, {memberType}]\n") continue +proc getEnumValue(e: XmlNode, name: string): (int, string) = + const companies = + ["KHR", "EXT", "NV", "INTEL", "AMD", "MSFT", "QCOM", "ANDROID", "LUNARG", "HUAWEI", "QNX", "ARM"] + var enumName = e.attr("name") + enumName = camelCaseAscii(enumName) + var tmp = name + tmp = tmp.replace("FlagBits", "") + var suffixes: seq[string] = @[] + for suf in companies: + if tmp.endsWith(suf): + suffixes.add(camelCaseAscii(suf)) + tmp.removeSuffix(suf) + for suf in suffixes.items: + enumName.removeSuffix(suf) + enumName.removePrefix(tmp) + if enumName.startsWith("Reserved"): + return (0, "") + if enumName[0] in Digits: + enumName = "N" & enumName + var enumValueStr = e.attr("value") + if enumValueStr == "": + var num = 0 + if e.attr("bitpos") != "": + let bitpos = e.attr("bitpos").parseInt() + num.setBit(bitpos) + enumValueStr = $num + enumValueStr = enumValueStr.translateType() + var enumValue = 0 + if enumValueStr.contains('x'): + enumValue = fromHex[int](enumValueStr) + else: + enumValue = enumValueStr.parseInt() + if name == "VkToolPurposeFlagBits" and enumName == "ValidationBit": + echo (e, enumValue, e.attr("alias")) + result = (enumValue, enumName) + proc genEnums(node: XmlNode, output: var string) = echo "Generating and Adding Enums" output.add("# Enums\n") @@ -339,33 +375,10 @@ proc genEnums(node: XmlNode, output: var string) = for e in enums.items: if e.kind != xnElement or e.tag != "enum": continue - if e.attr("api") == "vulkansc" or e.attr("deprecated") != "": + if e.attr("api") == "vulkansc" or e.attr("deprecated") != "" or e.attr("alias") != "": continue - var enumName = e.attr("name") - enumName = camelCaseAscii(enumName) - var tmp = name - for suf in ["KHR", "EXT", "NV", "INTEL", "AMD", "MSFT", "QCOM", "ANDROID", "LUNARG", "FlagBits", "FlagBits2"]: - tmp.removeSuffix(suf) - for suf in ["Khr", "Ext", "Nv", "Intel", "Amd", "Msft", "Qcom", "Android", "Lunarg"]: - enumName.removeSuffix(suf) - enumName.removePrefix(tmp) - if enumName[0] in Digits: - enumName = "N" & enumName - var enumValueStr = e.attr("value") - if enumValueStr == "": - if e.attr("bitpos") == "": - continue - let bitpos = e.attr("bitpos").parseInt() - var num = 0 - num.setBit(bitpos) - enumValueStr = $num - enumValueStr = enumValueStr.translateType() - var enumValue = 0 - if enumValueStr.contains('x'): - enumValue = fromHex[int](enumValueStr) - else: - enumValue = enumValueStr.parseInt() - if elements.hasKey(enumValue): + let (enumValue, enumName) = getEnumValue(e, name) + if enumName == "" or elements.hasKey(enumValue): continue elements.add(enumValue, enumName) if elements.len == 0: From 2a557019151017bc36d37e3fd4365515a81c112f Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Thu, 9 May 2024 01:16:41 +0300 Subject: [PATCH 33/57] added extension to enums --- src/vulkan.nim | 2643 +++++++++++++++++++++++++++++++------------ tools/generator.nim | 39 +- 2 files changed, 1977 insertions(+), 705 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index e596104..2ca1939 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -93,11 +93,24 @@ type TransferSrcOptimal TransferDstOptimal Preinitialized + PresentSrcKhr = 1000001002 + VideoDecodeDstKhr = 1000024000 + VideoDecodeSrcKhr + VideoDecodeDpbKhr + SharedPresentKhr = 1000111000 + FragmentShadingRateAttachmentOptimalKhr = 1000164003 + FragmentDensityMapOptimalExt = 1000218000 + RenderingLocalReadKhr = 1000232000 + VideoEncodeDstKhr = 1000299000 + VideoEncodeSrcKhr + VideoEncodeDpbKhr + AttachmentFeedbackLoopOptimalExt = 1000339000 VkAttachmentLoadOp* {.size: sizeof(int32).} = enum Load Clear DontCare + NoneKhr = 1000400000 VkAttachmentStoreOp* {.size: sizeof(int32).} = enum Store @@ -111,6 +124,7 @@ type VkImageTiling* {.size: sizeof(int32).} = enum Optimal Linear + DrmFormatModifierExt = 1000158000 VkImageViewType* {.size: sizeof(int32).} = enum N1d @@ -146,11 +160,30 @@ type UniformBufferDynamic StorageBufferDynamic InputAttachment + AccelerationStructureKhr = 1000150000 + AccelerationStructureNv = 1000165000 + MutableExt = 1000351000 + SampleWeightImageQcom = 1000440000 + BlockMatchImageQcom VkQueryType* {.size: sizeof(int32).} = enum Occlusion PipelineStatistics Timestamp + ResultStatusOnlyKhr = 1000023000 + TransformFeedbackStreamExt = 1000028004 + PerformanceQueryKhr = 1000116000 + AccelerationStructureCompactedSizeKhr = 1000150000 + AccelerationStructureSerializationSizeKhr + AccelerationStructureCompactedSizeNv = 1000165000 + PerformanceQueryIntel = 1000210000 + VideoEncodeFeedbackKhr = 1000299000 + MeshPrimitivesGeneratedExt = 1000328000 + PrimitivesGeneratedExt = 1000382000 + AccelerationStructureSerializationBottomLevelPointersKhr = 1000386000 + AccelerationStructureSizeKhr + MicromapSerializationSizeExt = 1000396000 + MicromapCompactedSizeExt VkBorderColor* {.size: sizeof(int32).} = enum FloatTransparentBlack @@ -159,10 +192,15 @@ type IntOpaqueBlack FloatOpaqueWhite IntOpaqueWhite + FloatCustomExt = 1000287003 + IntCustomExt VkPipelineBindPoint* {.size: sizeof(int32).} = enum Graphics Compute + ExecutionGraphAmdx = 1000134000 + RayTracingKhr = 1000165000 + SubpassShadingHuawei = 1000369003 VkPipelineCacheHeaderVersion* {.size: sizeof(int32).} = enum One = 1 @@ -187,10 +225,13 @@ type VkIndexType* {.size: sizeof(int32).} = enum Uint16 Uint32 + NoneKhr = 1000165000 + Uint8Khr = 1000265000 VkFilter* {.size: sizeof(int32).} = enum Nearest Linear + CubicExt = 1000015000 VkSamplerMipmapMode* {.size: sizeof(int32).} = enum Nearest @@ -201,6 +242,7 @@ type MirroredRepeat ClampToEdge ClampToBorder + MirrorClampToEdge VkCompareOp* {.size: sizeof(int32).} = enum Never @@ -216,6 +258,7 @@ type Fill Line Point + FillRectangleNv = 1000153000 VkFrontFace* {.size: sizeof(int32).} = enum CounterClockwise @@ -248,6 +291,52 @@ type ReverseSubtract Min Max + ZeroExt = 1000148000 + SrcExt + DstExt + SrcOverExt + DstOverExt + SrcInExt + DstInExt + SrcOutExt + DstOutExt + SrcAtopExt + DstAtopExt + XorExt + MultiplyExt + ScreenExt + OverlayExt + DarkenExt + LightenExt + ColordodgeExt + ColorburnExt + HardlightExt + SoftlightExt + DifferenceExt + ExclusionExt + InvertExt + InvertRgbExt + LineardodgeExt + LinearburnExt + VividlightExt + LinearlightExt + PinlightExt + HardmixExt + HslHueExt + HslSaturationExt + HslColorExt + HslLuminosityExt + PlusExt + PlusClampedExt + PlusClampedAlphaExt + PlusDarkerExt + MinusExt + MinusClampedExt + ContrastExt + InvertOvgExt + RedExt + GreenExt + BlueExt VkStencilOp* {.size: sizeof(int32).} = enum Keep @@ -484,6 +573,17 @@ type Astc12x10SrgbBlock Astc12x12UnormBlock Astc12x12SrgbBlock + Pvrtc12bppUnormBlockImg = 1000054000 + Pvrtc14bppUnormBlockImg + Pvrtc22bppUnormBlockImg + Pvrtc24bppUnormBlockImg + Pvrtc12bppSrgbBlockImg + Pvrtc14bppSrgbBlockImg + Pvrtc22bppSrgbBlockImg + Pvrtc24bppSrgbBlockImg + R16g16S105Nv = 1000464000 + A1b5g5r5UnormPack16Khr = 1000470000 + A8UnormKhr VkStructureType* {.size: sizeof(int32).} = enum ApplicationInfo @@ -535,12 +635,728 @@ type MemoryBarrier LoaderInstanceCreateInfo LoaderDeviceCreateInfo + SwapchainCreateInfoKhr = 1000001000 + PresentInfoKhr + DisplayModeCreateInfoKhr = 1000002000 + DisplaySurfaceCreateInfoKhr + DisplayPresentInfoKhr = 1000003000 + XlibSurfaceCreateInfoKhr = 1000004000 + XcbSurfaceCreateInfoKhr = 1000005000 + WaylandSurfaceCreateInfoKhr = 1000006000 + AndroidSurfaceCreateInfoKhr = 1000008000 + Win32SurfaceCreateInfoKhr = 1000009000 + DebugReportCallbackCreateInfoExt = 1000011000 + PipelineRasterizationStateRasterizationOrderAmd = 1000018000 + DebugMarkerObjectNameInfoExt = 1000022000 + DebugMarkerObjectTagInfoExt + DebugMarkerMarkerInfoExt + VideoProfileInfoKhr = 1000023000 + VideoCapabilitiesKhr + VideoPictureResourceInfoKhr + VideoSessionMemoryRequirementsKhr + BindVideoSessionMemoryInfoKhr + VideoSessionCreateInfoKhr + VideoSessionParametersCreateInfoKhr + VideoSessionParametersUpdateInfoKhr + VideoBeginCodingInfoKhr + VideoEndCodingInfoKhr + VideoCodingControlInfoKhr + VideoReferenceSlotInfoKhr + QueueFamilyVideoPropertiesKhr + VideoProfileListInfoKhr + PhysicalDeviceVideoFormatInfoKhr + VideoFormatPropertiesKhr + QueueFamilyQueryResultStatusPropertiesKhr + VideoDecodeInfoKhr = 1000024000 + VideoDecodeCapabilitiesKhr + VideoDecodeUsageInfoKhr + DedicatedAllocationImageCreateInfoNv = 1000026000 + DedicatedAllocationBufferCreateInfoNv + DedicatedAllocationMemoryAllocateInfoNv + PhysicalDeviceTransformFeedbackFeaturesExt = 1000028000 + PhysicalDeviceTransformFeedbackPropertiesExt + PipelineRasterizationStateStreamCreateInfoExt + CuModuleCreateInfoNvx = 1000029000 + CuFunctionCreateInfoNvx + CuLaunchInfoNvx + ImageViewHandleInfoNvx = 1000030000 + ImageViewAddressPropertiesNvx + VideoEncodeH264CapabilitiesKhr = 1000038000 + VideoEncodeH264SessionParametersCreateInfoKhr + VideoEncodeH264SessionParametersAddInfoKhr + VideoEncodeH264PictureInfoKhr + VideoEncodeH264DpbSlotInfoKhr + VideoEncodeH264NaluSliceInfoKhr + VideoEncodeH264GopRemainingFrameInfoKhr + VideoEncodeH264ProfileInfoKhr + VideoEncodeH264RateControlInfoKhr + VideoEncodeH264RateControlLayerInfoKhr + VideoEncodeH264SessionCreateInfoKhr + VideoEncodeH264QualityLevelPropertiesKhr + VideoEncodeH264SessionParametersGetInfoKhr + VideoEncodeH264SessionParametersFeedbackInfoKhr + VideoEncodeH265CapabilitiesKhr = 1000039000 + VideoEncodeH265SessionParametersCreateInfoKhr + VideoEncodeH265SessionParametersAddInfoKhr + VideoEncodeH265PictureInfoKhr + VideoEncodeH265DpbSlotInfoKhr + VideoEncodeH265NaluSliceSegmentInfoKhr + VideoEncodeH265GopRemainingFrameInfoKhr + VideoEncodeH265ProfileInfoKhr + VideoEncodeH265RateControlInfoKhr = 1000039009 + VideoEncodeH265RateControlLayerInfoKhr + VideoEncodeH265SessionCreateInfoKhr + VideoEncodeH265QualityLevelPropertiesKhr + VideoEncodeH265SessionParametersGetInfoKhr + VideoEncodeH265SessionParametersFeedbackInfoKhr + VideoDecodeH264CapabilitiesKhr = 1000040000 + VideoDecodeH264PictureInfoKhr + VideoDecodeH264ProfileInfoKhr = 1000040003 + VideoDecodeH264SessionParametersCreateInfoKhr + VideoDecodeH264SessionParametersAddInfoKhr + VideoDecodeH264DpbSlotInfoKhr + TextureLodGatherFormatPropertiesAmd = 1000041000 + RenderingFragmentShadingRateAttachmentInfoKhr = 1000044006 + RenderingFragmentDensityMapAttachmentInfoExt + AttachmentSampleCountInfoAmd + MultiviewPerViewAttributesInfoNvx + StreamDescriptorSurfaceCreateInfoGgp = 1000049000 + PhysicalDeviceCornerSampledImageFeaturesNv = 1000050000 + PrivateVendorInfoPlaceholderOffset0Nv = 1000051000 + ExternalMemoryImageCreateInfoNv = 1000056000 + ExportMemoryAllocateInfoNv + ImportMemoryWin32HandleInfoNv = 1000057000 + ExportMemoryWin32HandleInfoNv + Win32KeyedMutexAcquireReleaseInfoNv = 1000058000 + DeviceGroupPresentCapabilitiesKhr = 1000060007 + ImageSwapchainCreateInfoKhr + BindImageMemorySwapchainInfoKhr + AcquireNextImageInfoKhr + DeviceGroupPresentInfoKhr + DeviceGroupSwapchainCreateInfoKhr + ValidationFlagsExt = 1000061000 + ViSurfaceCreateInfoNn = 1000062000 + ImageViewAstcDecodeModeExt = 1000067000 + PhysicalDeviceAstcDecodeFeaturesExt + PipelineRobustnessCreateInfoExt = 1000068000 + PhysicalDevicePipelineRobustnessFeaturesExt + PhysicalDevicePipelineRobustnessPropertiesExt + ImportMemoryWin32HandleInfoKhr = 1000073000 + ExportMemoryWin32HandleInfoKhr + MemoryWin32HandlePropertiesKhr + MemoryGetWin32HandleInfoKhr + ImportMemoryFdInfoKhr = 1000074000 + MemoryFdPropertiesKhr + MemoryGetFdInfoKhr + Win32KeyedMutexAcquireReleaseInfoKhr = 1000075000 + ImportSemaphoreWin32HandleInfoKhr = 1000078000 + ExportSemaphoreWin32HandleInfoKhr + D3d12FenceSubmitInfoKhr + SemaphoreGetWin32HandleInfoKhr + ImportSemaphoreFdInfoKhr = 1000079000 + SemaphoreGetFdInfoKhr + PhysicalDevicePushDescriptorPropertiesKhr = 1000080000 + CommandBufferInheritanceConditionalRenderingInfoExt = 1000081000 + PhysicalDeviceConditionalRenderingFeaturesExt + ConditionalRenderingBeginInfoExt + PresentRegionsKhr = 1000084000 + PipelineViewportWScalingStateCreateInfoNv = 1000087000 + SurfaceCapabilities2Ext = 1000090000 + DisplayPowerInfoExt = 1000091000 + DeviceEventInfoExt + DisplayEventInfoExt + SwapchainCounterCreateInfoExt + PresentTimesInfoGoogle = 1000092000 + PhysicalDeviceMultiviewPerViewAttributesPropertiesNvx = 1000097000 + PipelineViewportSwizzleStateCreateInfoNv = 1000098000 + PhysicalDeviceDiscardRectanglePropertiesExt = 1000099000 + PipelineDiscardRectangleStateCreateInfoExt + PhysicalDeviceConservativeRasterizationPropertiesExt = 1000101000 + PipelineRasterizationConservativeStateCreateInfoExt + PhysicalDeviceDepthClipEnableFeaturesExt = 1000102000 + PipelineRasterizationDepthClipStateCreateInfoExt + HdrMetadataExt = 1000105000 + PhysicalDeviceRelaxedLineRasterizationFeaturesImg = 1000110000 + SharedPresentSurfaceCapabilitiesKhr = 1000111000 + ImportFenceWin32HandleInfoKhr = 1000114000 + ExportFenceWin32HandleInfoKhr + FenceGetWin32HandleInfoKhr + ImportFenceFdInfoKhr = 1000115000 + FenceGetFdInfoKhr + PhysicalDevicePerformanceQueryFeaturesKhr = 1000116000 + PhysicalDevicePerformanceQueryPropertiesKhr + QueryPoolPerformanceCreateInfoKhr + PerformanceQuerySubmitInfoKhr + AcquireProfilingLockInfoKhr + PerformanceCounterKhr + PerformanceCounterDescriptionKhr + PerformanceQueryReservationInfoKhr + PhysicalDeviceSurfaceInfo2Khr = 1000119000 + SurfaceCapabilities2Khr + SurfaceFormat2Khr + DisplayProperties2Khr = 1000121000 + DisplayPlaneProperties2Khr + DisplayModeProperties2Khr + DisplayPlaneInfo2Khr + DisplayPlaneCapabilities2Khr + IosSurfaceCreateInfoMvk = 1000122000 + MacosSurfaceCreateInfoMvk = 1000123000 + DebugUtilsObjectNameInfoExt = 1000128000 + DebugUtilsObjectTagInfoExt + DebugUtilsLabelExt + DebugUtilsMessengerCallbackDataExt + DebugUtilsMessengerCreateInfoExt + AndroidHardwareBufferUsageAndroid = 1000129000 + AndroidHardwareBufferPropertiesAndroid + AndroidHardwareBufferFormatPropertiesAndroid + ImportAndroidHardwareBufferInfoAndroid + MemoryGetAndroidHardwareBufferInfoAndroid + ExternalFormatAndroid + AndroidHardwareBufferFormatProperties2Android + PhysicalDeviceShaderEnqueueFeaturesAmdx = 1000134000 + PhysicalDeviceShaderEnqueuePropertiesAmdx + ExecutionGraphPipelineScratchSizeAmdx + ExecutionGraphPipelineCreateInfoAmdx + PipelineShaderStageNodeCreateInfoAmdx + SampleLocationsInfoExt = 1000143000 + RenderPassSampleLocationsBeginInfoExt + PipelineSampleLocationsStateCreateInfoExt + PhysicalDeviceSampleLocationsPropertiesExt + MultisamplePropertiesExt + PhysicalDeviceBlendOperationAdvancedFeaturesExt = 1000148000 + PhysicalDeviceBlendOperationAdvancedPropertiesExt + PipelineColorBlendAdvancedStateCreateInfoExt + PipelineCoverageToColorStateCreateInfoNv = 1000149000 + AccelerationStructureBuildGeometryInfoKhr = 1000150000 + AccelerationStructureDeviceAddressInfoKhr = 1000150002 + AccelerationStructureGeometryAabbsDataKhr + AccelerationStructureGeometryInstancesDataKhr + AccelerationStructureGeometryTrianglesDataKhr + AccelerationStructureGeometryKhr + WriteDescriptorSetAccelerationStructureKhr + AccelerationStructureVersionInfoKhr = 1000150009 + CopyAccelerationStructureInfoKhr + CopyAccelerationStructureToMemoryInfoKhr + CopyMemoryToAccelerationStructureInfoKhr + PhysicalDeviceAccelerationStructureFeaturesKhr + PhysicalDeviceAccelerationStructurePropertiesKhr + RayTracingPipelineCreateInfoKhr + RayTracingShaderGroupCreateInfoKhr + AccelerationStructureCreateInfoKhr + RayTracingPipelineInterfaceCreateInfoKhr + AccelerationStructureBuildSizesInfoKhr = 1000150020 + PipelineCoverageModulationStateCreateInfoNv = 1000152000 + PhysicalDeviceShaderSmBuiltinsFeaturesNv = 1000154000 + PhysicalDeviceShaderSmBuiltinsPropertiesNv + DrmFormatModifierPropertiesListExt = 1000158000 + PhysicalDeviceImageDrmFormatModifierInfoExt = 1000158002 + ImageDrmFormatModifierListCreateInfoExt + ImageDrmFormatModifierExplicitCreateInfoExt + ImageDrmFormatModifierPropertiesExt + DrmFormatModifierPropertiesList2Ext + ValidationCacheCreateInfoExt = 1000160000 + ShaderModuleValidationCacheCreateInfoExt + PhysicalDevicePortabilitySubsetFeaturesKhr = 1000163000 + PhysicalDevicePortabilitySubsetPropertiesKhr + PipelineViewportShadingRateImageStateCreateInfoNv = 1000164000 + PhysicalDeviceShadingRateImageFeaturesNv + PhysicalDeviceShadingRateImagePropertiesNv + PipelineViewportCoarseSampleOrderStateCreateInfoNv = 1000164005 + RayTracingPipelineCreateInfoNv = 1000165000 + AccelerationStructureCreateInfoNv + GeometryNv = 1000165003 + GeometryTrianglesNv + GeometryAabbNv + BindAccelerationStructureMemoryInfoNv + WriteDescriptorSetAccelerationStructureNv + AccelerationStructureMemoryRequirementsInfoNv + PhysicalDeviceRayTracingPropertiesNv + RayTracingShaderGroupCreateInfoNv = 1000165011 + AccelerationStructureInfoNv + PhysicalDeviceRepresentativeFragmentTestFeaturesNv = 1000166000 + PipelineRepresentativeFragmentTestStateCreateInfoNv + PhysicalDeviceImageViewImageFormatInfoExt = 1000170000 + FilterCubicImageViewImageFormatPropertiesExt + DeviceQueueGlobalPriorityCreateInfoKhr = 1000174000 + ImportMemoryHostPointerInfoExt = 1000178000 + MemoryHostPointerPropertiesExt + PhysicalDeviceExternalMemoryHostPropertiesExt + PhysicalDeviceShaderClockFeaturesKhr = 1000181000 + PipelineCompilerControlCreateInfoAmd = 1000183000 + CalibratedTimestampInfoKhr = 1000184000 + PhysicalDeviceShaderCorePropertiesAmd = 1000185000 + VideoDecodeH265CapabilitiesKhr = 1000187000 + VideoDecodeH265SessionParametersCreateInfoKhr + VideoDecodeH265SessionParametersAddInfoKhr + VideoDecodeH265ProfileInfoKhr + VideoDecodeH265PictureInfoKhr + VideoDecodeH265DpbSlotInfoKhr + DeviceMemoryOverallocationCreateInfoAmd = 1000189000 + PhysicalDeviceVertexAttributeDivisorPropertiesExt = 1000190000 + PipelineVertexInputDivisorStateCreateInfoKhr + PhysicalDeviceVertexAttributeDivisorFeaturesKhr + PresentFrameTokenGgp = 1000191000 + PhysicalDeviceComputeShaderDerivativesFeaturesNv = 1000201000 + PhysicalDeviceMeshShaderFeaturesNv = 1000202000 + PhysicalDeviceMeshShaderPropertiesNv + PhysicalDeviceFragmentShaderBarycentricFeaturesKhr = 1000203000 + PhysicalDeviceShaderImageFootprintFeaturesNv = 1000204000 + PipelineViewportExclusiveScissorStateCreateInfoNv = 1000205000 + PhysicalDeviceExclusiveScissorFeaturesNv = 1000205002 + CheckpointDataNv = 1000206000 + QueueFamilyCheckpointPropertiesNv + PhysicalDeviceShaderIntegerFunctions2FeaturesIntel = 1000209000 + QueryPoolPerformanceQueryCreateInfoIntel = 1000210000 + InitializePerformanceApiInfoIntel + PerformanceMarkerInfoIntel + PerformanceStreamMarkerInfoIntel + PerformanceOverrideInfoIntel + PerformanceConfigurationAcquireInfoIntel + PhysicalDevicePciBusInfoPropertiesExt = 1000212000 + DisplayNativeHdrSurfaceCapabilitiesAmd = 1000213000 + SwapchainDisplayNativeHdrCreateInfoAmd + ImagepipeSurfaceCreateInfoFuchsia = 1000214000 + MetalSurfaceCreateInfoExt = 1000217000 + PhysicalDeviceFragmentDensityMapFeaturesExt = 1000218000 + PhysicalDeviceFragmentDensityMapPropertiesExt + RenderPassFragmentDensityMapCreateInfoExt + FragmentShadingRateAttachmentInfoKhr = 1000226000 + PipelineFragmentShadingRateStateCreateInfoKhr + PhysicalDeviceFragmentShadingRatePropertiesKhr + PhysicalDeviceFragmentShadingRateFeaturesKhr + PhysicalDeviceFragmentShadingRateKhr + PhysicalDeviceShaderCoreProperties2Amd = 1000227000 + PhysicalDeviceCoherentMemoryFeaturesAmd = 1000229000 + PhysicalDeviceDynamicRenderingLocalReadFeaturesKhr = 1000232000 + RenderingAttachmentLocationInfoKhr + RenderingInputAttachmentIndexInfoKhr + PhysicalDeviceShaderImageAtomicInt64FeaturesExt = 1000234000 + PhysicalDeviceShaderQuadControlFeaturesKhr = 1000235000 + PhysicalDeviceMemoryBudgetPropertiesExt = 1000237000 + PhysicalDeviceMemoryPriorityFeaturesExt = 1000238000 + MemoryPriorityAllocateInfoExt + SurfaceProtectedCapabilitiesKhr = 1000239000 + PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNv = 1000240000 + PhysicalDeviceBufferDeviceAddressFeaturesExt = 1000244000 + BufferDeviceAddressCreateInfoExt = 1000244002 + ValidationFeaturesExt = 1000247000 + PhysicalDevicePresentWaitFeaturesKhr = 1000248000 + PhysicalDeviceCooperativeMatrixFeaturesNv = 1000249000 + CooperativeMatrixPropertiesNv + PhysicalDeviceCooperativeMatrixPropertiesNv + PhysicalDeviceCoverageReductionModeFeaturesNv = 1000250000 + PipelineCoverageReductionStateCreateInfoNv + FramebufferMixedSamplesCombinationNv + PhysicalDeviceFragmentShaderInterlockFeaturesExt = 1000251000 + PhysicalDeviceYcbcrImageArraysFeaturesExt = 1000252000 + PhysicalDeviceProvokingVertexFeaturesExt = 1000254000 + PipelineRasterizationProvokingVertexStateCreateInfoExt + PhysicalDeviceProvokingVertexPropertiesExt + SurfaceFullScreenExclusiveInfoExt = 1000255000 + SurfaceFullScreenExclusiveWin32InfoExt + SurfaceCapabilitiesFullScreenExclusiveExt + HeadlessSurfaceCreateInfoExt = 1000256000 + PhysicalDeviceLineRasterizationFeaturesKhr = 1000259000 + PipelineRasterizationLineStateCreateInfoKhr + PhysicalDeviceLineRasterizationPropertiesKhr + PhysicalDeviceShaderAtomicFloatFeaturesExt = 1000260000 + PhysicalDeviceIndexTypeUint8FeaturesKhr = 1000265000 + PhysicalDeviceExtendedDynamicStateFeaturesExt = 1000267000 + PhysicalDevicePipelineExecutablePropertiesFeaturesKhr = 1000269000 + PipelineInfoKhr + PipelineExecutablePropertiesKhr + PipelineExecutableInfoKhr + PipelineExecutableStatisticKhr + PipelineExecutableInternalRepresentationKhr + PhysicalDeviceHostImageCopyFeaturesExt = 1000270000 + PhysicalDeviceHostImageCopyPropertiesExt + MemoryToImageCopyExt + ImageToMemoryCopyExt + CopyImageToMemoryInfoExt + CopyMemoryToImageInfoExt + HostImageLayoutTransitionInfoExt + CopyImageToImageInfoExt + SubresourceHostMemcpySizeExt + HostImageCopyDevicePerformanceQueryExt + MemoryMapInfoKhr = 1000271000 + MemoryUnmapInfoKhr + PhysicalDeviceMapMemoryPlacedFeaturesExt = 1000272000 + PhysicalDeviceMapMemoryPlacedPropertiesExt + MemoryMapPlacedInfoExt + PhysicalDeviceShaderAtomicFloat2FeaturesExt = 1000273000 + SurfacePresentModeExt = 1000274000 + SurfacePresentScalingCapabilitiesExt + SurfacePresentModeCompatibilityExt + PhysicalDeviceSwapchainMaintenance1FeaturesExt = 1000275000 + SwapchainPresentFenceInfoExt + SwapchainPresentModesCreateInfoExt + SwapchainPresentModeInfoExt + SwapchainPresentScalingCreateInfoExt + ReleaseSwapchainImagesInfoExt + PhysicalDeviceDeviceGeneratedCommandsPropertiesNv = 1000277000 + GraphicsShaderGroupCreateInfoNv + GraphicsPipelineShaderGroupsCreateInfoNv + IndirectCommandsLayoutTokenNv + IndirectCommandsLayoutCreateInfoNv + GeneratedCommandsInfoNv + GeneratedCommandsMemoryRequirementsInfoNv + PhysicalDeviceDeviceGeneratedCommandsFeaturesNv + PhysicalDeviceInheritedViewportScissorFeaturesNv = 1000278000 + CommandBufferInheritanceViewportScissorInfoNv + PhysicalDeviceTexelBufferAlignmentFeaturesExt = 1000281000 + CommandBufferInheritanceRenderPassTransformInfoQcom = 1000282000 + RenderPassTransformBeginInfoQcom + PhysicalDeviceDepthBiasControlFeaturesExt = 1000283000 + DepthBiasInfoExt + DepthBiasRepresentationInfoExt + PhysicalDeviceDeviceMemoryReportFeaturesExt = 1000284000 + DeviceDeviceMemoryReportCreateInfoExt + DeviceMemoryReportCallbackDataExt + PhysicalDeviceRobustness2FeaturesExt = 1000286000 + PhysicalDeviceRobustness2PropertiesExt + SamplerCustomBorderColorCreateInfoExt = 1000287000 + PhysicalDeviceCustomBorderColorPropertiesExt + PhysicalDeviceCustomBorderColorFeaturesExt + PipelineLibraryCreateInfoKhr = 1000290000 + PhysicalDevicePresentBarrierFeaturesNv = 1000292000 + SurfaceCapabilitiesPresentBarrierNv + SwapchainPresentBarrierCreateInfoNv + PresentIdKhr = 1000294000 + PhysicalDevicePresentIdFeaturesKhr + VideoEncodeInfoKhr = 1000299000 + VideoEncodeRateControlInfoKhr + VideoEncodeRateControlLayerInfoKhr + VideoEncodeCapabilitiesKhr + VideoEncodeUsageInfoKhr + QueryPoolVideoEncodeFeedbackCreateInfoKhr + PhysicalDeviceVideoEncodeQualityLevelInfoKhr + VideoEncodeQualityLevelPropertiesKhr + VideoEncodeQualityLevelInfoKhr + VideoEncodeSessionParametersGetInfoKhr + VideoEncodeSessionParametersFeedbackInfoKhr + PhysicalDeviceDiagnosticsConfigFeaturesNv = 1000300000 + DeviceDiagnosticsConfigCreateInfoNv + CudaModuleCreateInfoNv = 1000307000 + CudaFunctionCreateInfoNv + CudaLaunchInfoNv + PhysicalDeviceCudaKernelLaunchFeaturesNv + PhysicalDeviceCudaKernelLaunchPropertiesNv + RefreshObjectListKhr = 1000308000 + QueryLowLatencySupportNv = 1000310000 + ExportMetalObjectCreateInfoExt = 1000311000 + ExportMetalObjectsInfoExt + ExportMetalDeviceInfoExt + ExportMetalCommandQueueInfoExt + ExportMetalBufferInfoExt + ImportMetalBufferInfoExt + ExportMetalTextureInfoExt + ImportMetalTextureInfoExt + ExportMetalIoSurfaceInfoExt + ImportMetalIoSurfaceInfoExt + ExportMetalSharedEventInfoExt + ImportMetalSharedEventInfoExt + QueueFamilyCheckpointProperties2Nv = 1000314008 + CheckpointData2Nv + PhysicalDeviceDescriptorBufferPropertiesExt = 1000316000 + PhysicalDeviceDescriptorBufferDensityMapPropertiesExt + PhysicalDeviceDescriptorBufferFeaturesExt + DescriptorAddressInfoExt + DescriptorGetInfoExt + BufferCaptureDescriptorDataInfoExt + ImageCaptureDescriptorDataInfoExt + ImageViewCaptureDescriptorDataInfoExt + SamplerCaptureDescriptorDataInfoExt + AccelerationStructureCaptureDescriptorDataInfoExt + OpaqueCaptureDescriptorDataCreateInfoExt + DescriptorBufferBindingInfoExt + DescriptorBufferBindingPushDescriptorBufferHandleExt + PhysicalDeviceGraphicsPipelineLibraryFeaturesExt = 1000320000 + PhysicalDeviceGraphicsPipelineLibraryPropertiesExt + GraphicsPipelineLibraryCreateInfoExt + PhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAmd = 1000321000 + PhysicalDeviceFragmentShaderBarycentricPropertiesKhr = 1000322000 + PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKhr = 1000323000 + PhysicalDeviceFragmentShadingRateEnumsPropertiesNv = 1000326000 + PhysicalDeviceFragmentShadingRateEnumsFeaturesNv + PipelineFragmentShadingRateEnumStateCreateInfoNv + AccelerationStructureGeometryMotionTrianglesDataNv = 1000327000 + PhysicalDeviceRayTracingMotionBlurFeaturesNv + AccelerationStructureMotionInfoNv + PhysicalDeviceMeshShaderFeaturesExt = 1000328000 + PhysicalDeviceMeshShaderPropertiesExt + PhysicalDeviceYcbcr2Plane444FormatsFeaturesExt = 1000330000 + PhysicalDeviceFragmentDensityMap2FeaturesExt = 1000332000 + PhysicalDeviceFragmentDensityMap2PropertiesExt + CopyCommandTransformInfoQcom = 1000333000 + PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKhr = 1000336000 + PhysicalDeviceImageCompressionControlFeaturesExt = 1000338000 + ImageCompressionControlExt + SubresourceLayout2Khr + ImageSubresource2Khr + ImageCompressionPropertiesExt + PhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesExt = 1000339000 + PhysicalDevice4444FormatsFeaturesExt = 1000340000 + PhysicalDeviceFaultFeaturesExt = 1000341000 + DeviceFaultCountsExt + DeviceFaultInfoExt + PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesExt = 1000342000 + PhysicalDeviceRgba10x6FormatsFeaturesExt = 1000344000 + DirectfbSurfaceCreateInfoExt = 1000346000 + PhysicalDeviceRayTracingPipelineFeaturesKhr = 1000347000 + PhysicalDeviceRayTracingPipelinePropertiesKhr + PhysicalDeviceRayQueryFeaturesKhr = 1000348013 + PhysicalDeviceMutableDescriptorTypeFeaturesExt = 1000351000 + MutableDescriptorTypeCreateInfoExt = 1000351002 + PhysicalDeviceVertexInputDynamicStateFeaturesExt = 1000352000 + VertexInputBindingDescription2Ext + VertexInputAttributeDescription2Ext + PhysicalDeviceDrmPropertiesExt = 1000353000 + PhysicalDeviceAddressBindingReportFeaturesExt = 1000354000 + DeviceAddressBindingCallbackDataExt + PhysicalDeviceDepthClipControlFeaturesExt = 1000355000 + PipelineViewportDepthClipControlCreateInfoExt + PhysicalDevicePrimitiveTopologyListRestartFeaturesExt = 1000356000 + ImportMemoryZirconHandleInfoFuchsia = 1000364000 + MemoryZirconHandlePropertiesFuchsia + MemoryGetZirconHandleInfoFuchsia + ImportSemaphoreZirconHandleInfoFuchsia = 1000365000 + SemaphoreGetZirconHandleInfoFuchsia + BufferCollectionCreateInfoFuchsia = 1000366000 + ImportMemoryBufferCollectionFuchsia + BufferCollectionImageCreateInfoFuchsia + BufferCollectionPropertiesFuchsia + BufferConstraintsInfoFuchsia + BufferCollectionBufferCreateInfoFuchsia + ImageConstraintsInfoFuchsia + ImageFormatConstraintsInfoFuchsia + SysmemColorSpaceFuchsia + BufferCollectionConstraintsInfoFuchsia + SubpassShadingPipelineCreateInfoHuawei = 1000369000 + PhysicalDeviceSubpassShadingFeaturesHuawei + PhysicalDeviceSubpassShadingPropertiesHuawei + PhysicalDeviceInvocationMaskFeaturesHuawei = 1000370000 + MemoryGetRemoteAddressInfoNv = 1000371000 + PhysicalDeviceExternalMemoryRdmaFeaturesNv + PipelinePropertiesIdentifierExt = 1000372000 + PhysicalDevicePipelinePropertiesFeaturesExt + ImportFenceSciSyncInfoNv = 1000373000 + ExportFenceSciSyncInfoNv + FenceGetSciSyncInfoNv + SciSyncAttributesInfoNv + ImportSemaphoreSciSyncInfoNv + ExportSemaphoreSciSyncInfoNv + SemaphoreGetSciSyncInfoNv + PhysicalDeviceExternalSciSyncFeaturesNv + ImportMemorySciBufInfoNv = 1000374000 + ExportMemorySciBufInfoNv + MemoryGetSciBufInfoNv + MemorySciBufPropertiesNv + PhysicalDeviceExternalMemorySciBufFeaturesNv + PhysicalDeviceFrameBoundaryFeaturesExt = 1000375000 + FrameBoundaryExt + PhysicalDeviceMultisampledRenderToSingleSampledFeaturesExt = 1000376000 + SubpassResolvePerformanceQueryExt + MultisampledRenderToSingleSampledInfoExt + PhysicalDeviceExtendedDynamicState2FeaturesExt = 1000377000 + ScreenSurfaceCreateInfoQnx = 1000378000 + PhysicalDeviceColorWriteEnableFeaturesExt = 1000381000 + PipelineColorWriteCreateInfoExt + PhysicalDevicePrimitivesGeneratedQueryFeaturesExt = 1000382000 + PhysicalDeviceRayTracingMaintenance1FeaturesKhr = 1000386000 + PhysicalDeviceGlobalPriorityQueryFeaturesKhr = 1000388000 + QueueFamilyGlobalPriorityPropertiesKhr + PhysicalDeviceImageViewMinLodFeaturesExt = 1000391000 + ImageViewMinLodCreateInfoExt + PhysicalDeviceMultiDrawFeaturesExt = 1000392000 + PhysicalDeviceMultiDrawPropertiesExt + PhysicalDeviceImage2dViewOf3dFeaturesExt = 1000393000 + PhysicalDeviceShaderTileImageFeaturesExt = 1000395000 + PhysicalDeviceShaderTileImagePropertiesExt + MicromapBuildInfoExt = 1000396000 + MicromapVersionInfoExt + CopyMicromapInfoExt + CopyMicromapToMemoryInfoExt + CopyMemoryToMicromapInfoExt + PhysicalDeviceOpacityMicromapFeaturesExt + PhysicalDeviceOpacityMicromapPropertiesExt + MicromapCreateInfoExt + MicromapBuildSizesInfoExt + AccelerationStructureTrianglesOpacityMicromapExt + PhysicalDeviceDisplacementMicromapFeaturesNv = 1000397000 + PhysicalDeviceDisplacementMicromapPropertiesNv + AccelerationStructureTrianglesDisplacementMicromapNv + PhysicalDeviceClusterCullingShaderFeaturesHuawei = 1000404000 + PhysicalDeviceClusterCullingShaderPropertiesHuawei + PhysicalDeviceClusterCullingShaderVrsFeaturesHuawei + PhysicalDeviceBorderColorSwizzleFeaturesExt = 1000411000 + SamplerBorderColorComponentMappingCreateInfoExt + PhysicalDevicePageableDeviceLocalMemoryFeaturesExt = 1000412000 + PhysicalDeviceShaderCorePropertiesArm = 1000415000 + PhysicalDeviceShaderSubgroupRotateFeaturesKhr = 1000416000 + DeviceQueueShaderCoreControlCreateInfoArm = 1000417000 + PhysicalDeviceSchedulingControlsFeaturesArm + PhysicalDeviceSchedulingControlsPropertiesArm + PhysicalDeviceImageSlicedViewOf3dFeaturesExt = 1000418000 + ImageViewSlicedCreateInfoExt + PhysicalDeviceDescriptorSetHostMappingFeaturesValve = 1000420000 + DescriptorSetBindingReferenceValve + DescriptorSetLayoutHostMappingInfoValve + PhysicalDeviceDepthClampZeroOneFeaturesExt = 1000421000 + PhysicalDeviceNonSeamlessCubeMapFeaturesExt = 1000422000 + PhysicalDeviceRenderPassStripedFeaturesArm = 1000424000 + PhysicalDeviceRenderPassStripedPropertiesArm + RenderPassStripeBeginInfoArm + RenderPassStripeInfoArm + RenderPassStripeSubmitInfoArm + PhysicalDeviceFragmentDensityMapOffsetFeaturesQcom = 1000425000 + PhysicalDeviceFragmentDensityMapOffsetPropertiesQcom + SubpassFragmentDensityMapOffsetEndInfoQcom + PhysicalDeviceCopyMemoryIndirectFeaturesNv = 1000426000 + PhysicalDeviceCopyMemoryIndirectPropertiesNv + PhysicalDeviceMemoryDecompressionFeaturesNv = 1000427000 + PhysicalDeviceMemoryDecompressionPropertiesNv + PhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNv = 1000428000 + ComputePipelineIndirectBufferInfoNv + PipelineIndirectDeviceAddressInfoNv + PhysicalDeviceLinearColorAttachmentFeaturesNv = 1000430000 + PhysicalDeviceShaderMaximalReconvergenceFeaturesKhr = 1000434000 + ApplicationParametersExt = 1000435000 + PhysicalDeviceImageCompressionControlSwapchainFeaturesExt = 1000437000 + PhysicalDeviceImageProcessingFeaturesQcom = 1000440000 + PhysicalDeviceImageProcessingPropertiesQcom + ImageViewSampleWeightCreateInfoQcom + PhysicalDeviceNestedCommandBufferFeaturesExt = 1000451000 + PhysicalDeviceNestedCommandBufferPropertiesExt + ExternalMemoryAcquireUnmodifiedExt = 1000453000 + PhysicalDeviceExtendedDynamicState3FeaturesExt = 1000455000 + PhysicalDeviceExtendedDynamicState3PropertiesExt + PhysicalDeviceSubpassMergeFeedbackFeaturesExt = 1000458000 + RenderPassCreationControlExt + RenderPassCreationFeedbackCreateInfoExt + RenderPassSubpassFeedbackCreateInfoExt + DirectDriverLoadingInfoLunarg = 1000459000 + DirectDriverLoadingListLunarg + PhysicalDeviceShaderModuleIdentifierFeaturesExt = 1000462000 + PhysicalDeviceShaderModuleIdentifierPropertiesExt + PipelineShaderStageModuleIdentifierCreateInfoExt + ShaderModuleIdentifierExt + PhysicalDeviceOpticalFlowFeaturesNv = 1000464000 + PhysicalDeviceOpticalFlowPropertiesNv + OpticalFlowImageFormatInfoNv + OpticalFlowImageFormatPropertiesNv + OpticalFlowSessionCreateInfoNv + OpticalFlowExecuteInfoNv + OpticalFlowSessionCreatePrivateDataInfoNv = 1000464010 + PhysicalDeviceLegacyDitheringFeaturesExt = 1000465000 + PhysicalDevicePipelineProtectedAccessFeaturesExt = 1000466000 + PhysicalDeviceExternalFormatResolveFeaturesAndroid = 1000468000 + PhysicalDeviceExternalFormatResolvePropertiesAndroid + AndroidHardwareBufferFormatResolvePropertiesAndroid + PhysicalDeviceMaintenance5FeaturesKhr = 1000470000 + PhysicalDeviceMaintenance5PropertiesKhr + RenderingAreaInfoKhr = 1000470003 + DeviceImageSubresourceInfoKhr + PipelineCreateFlags2CreateInfoKhr + BufferUsageFlags2CreateInfoKhr + PhysicalDeviceRayTracingPositionFetchFeaturesKhr = 1000481000 + PhysicalDeviceShaderObjectFeaturesExt = 1000482000 + PhysicalDeviceShaderObjectPropertiesExt + ShaderCreateInfoExt + PhysicalDeviceTilePropertiesFeaturesQcom = 1000484000 + TilePropertiesQcom + PhysicalDeviceAmigoProfilingFeaturesSec = 1000485000 + AmigoProfilingSubmitInfoSec + PhysicalDeviceMultiviewPerViewViewportsFeaturesQcom = 1000488000 + SemaphoreSciSyncPoolCreateInfoNv = 1000489000 + SemaphoreSciSyncCreateInfoNv + PhysicalDeviceExternalSciSync2FeaturesNv + DeviceSemaphoreSciSyncPoolReservationCreateInfoNv + PhysicalDeviceRayTracingInvocationReorderFeaturesNv = 1000490000 + PhysicalDeviceRayTracingInvocationReorderPropertiesNv + PhysicalDeviceExtendedSparseAddressSpaceFeaturesNv = 1000492000 + PhysicalDeviceExtendedSparseAddressSpacePropertiesNv + LayerSettingsCreateInfoExt = 1000496000 + PhysicalDeviceShaderCoreBuiltinsFeaturesArm = 1000497000 + PhysicalDeviceShaderCoreBuiltinsPropertiesArm + PhysicalDevicePipelineLibraryGroupHandlesFeaturesExt = 1000498000 + PhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesExt = 1000499000 + LatencySleepModeInfoNv = 1000505000 + LatencySleepInfoNv + SetLatencyMarkerInfoNv + GetLatencyMarkerInfoNv + LatencyTimingsFrameReportNv + LatencySubmissionPresentIdNv + OutOfBandQueueTypeInfoNv + SwapchainLatencyCreateInfoNv + LatencySurfaceCapabilitiesNv + PhysicalDeviceCooperativeMatrixFeaturesKhr = 1000506000 + CooperativeMatrixPropertiesKhr + PhysicalDeviceCooperativeMatrixPropertiesKhr + PhysicalDeviceMultiviewPerViewRenderAreasFeaturesQcom = 1000510000 + MultiviewPerViewRenderAreasRenderPassBeginInfoQcom + VideoDecodeAv1CapabilitiesKhr = 1000512000 + VideoDecodeAv1PictureInfoKhr + VideoDecodeAv1ProfileInfoKhr = 1000512003 + VideoDecodeAv1SessionParametersCreateInfoKhr + VideoDecodeAv1DpbSlotInfoKhr + PhysicalDeviceVideoMaintenance1FeaturesKhr = 1000515000 + VideoInlineQueryInfoKhr + PhysicalDevicePerStageDescriptorSetFeaturesNv = 1000516000 + PhysicalDeviceImageProcessing2FeaturesQcom = 1000518000 + PhysicalDeviceImageProcessing2PropertiesQcom + SamplerBlockMatchWindowCreateInfoQcom + SamplerCubicWeightsCreateInfoQcom = 1000519000 + PhysicalDeviceCubicWeightsFeaturesQcom + BlitImageCubicWeightsInfoQcom + PhysicalDeviceYcbcrDegammaFeaturesQcom = 1000520000 + SamplerYcbcrConversionYcbcrDegammaCreateInfoQcom + PhysicalDeviceCubicClampFeaturesQcom = 1000521000 + PhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesExt = 1000524000 + PhysicalDeviceVertexAttributeDivisorPropertiesKhr = 1000525000 + PhysicalDeviceShaderFloatControls2FeaturesKhr = 1000528000 + ScreenBufferPropertiesQnx = 1000529000 + ScreenBufferFormatPropertiesQnx + ImportScreenBufferInfoQnx + ExternalFormatQnx + PhysicalDeviceExternalMemoryScreenBufferFeaturesQnx + PhysicalDeviceLayeredDriverPropertiesMsft = 1000530000 + PhysicalDeviceShaderExpectAssumeFeaturesKhr = 1000544000 + PhysicalDeviceMaintenance6FeaturesKhr = 1000545000 + PhysicalDeviceMaintenance6PropertiesKhr + BindMemoryStatusKhr + BindDescriptorSetsInfoKhr + PushConstantsInfoKhr + PushDescriptorSetInfoKhr + PushDescriptorSetWithTemplateInfoKhr + SetDescriptorBufferOffsetsInfoExt + BindDescriptorBufferEmbeddedSamplersInfoExt + PhysicalDeviceDescriptorPoolOverallocationFeaturesNv = 1000546000 + PhysicalDeviceRawAccessChainsFeaturesNv = 1000555000 + PhysicalDeviceShaderAtomicFloat16VectorFeaturesNv = 1000563000 VkSubpassContents* {.size: sizeof(int32).} = enum Inline SecondaryCommandBuffers + InlineAndSecondaryCommandBuffersExt = 1000451000 VkResult* {.size: sizeof(int32).} = enum + VkErrorCompressionExhaustedExt = -1000338000 + VkErrorInvalidVideoStdParametersKhr = -1000299000 + VkErrorFullScreenExclusiveModeLostExt = -1000255000 + VkErrorNotPermittedKhr = -1000174001 + VkErrorInvalidDrmFormatModifierPlaneLayoutExt = -1000158000 + VkErrorVideoStdVersionNotSupportedKhr = -1000023005 + VkErrorVideoProfileCodecNotSupportedKhr + VkErrorVideoProfileFormatNotSupportedKhr + VkErrorVideoProfileOperationNotSupportedKhr + VkErrorVideoPictureLayoutNotSupportedKhr + VkErrorImageUsageNotSupportedKhr + VkErrorInvalidShaderNv = -1000012000 + VkErrorValidationFailedExt = -1000011001 + VkErrorIncompatibleDisplayKhr = -1000003001 + VkErrorOutOfDateKhr = -1000001004 + VkErrorNativeWindowInUseKhr = -1000000001 + VkErrorSurfaceLostKhr VkErrorUnknown = -13 VkErrorFragmentedPool VkErrorFormatNotSupported @@ -560,6 +1376,12 @@ type VkEventSet VkEventReset VkIncomplete + VkSuboptimalKhr = 1000001003 + VkThreadIdleKhr = 1000268000 + VkThreadDoneKhr + VkOperationDeferredKhr + VkOperationNotDeferredKhr + VkIncompatibleShaderBinaryExt = 1000482000 VkDynamicState* {.size: sizeof(int32).} = enum Viewport @@ -571,9 +1393,58 @@ type StencilCompareMask StencilWriteMask StencilReference + ViewportWScalingNv = 1000087000 + DiscardRectangleExt = 1000099000 + DiscardRectangleEnableExt + DiscardRectangleModeExt + SampleLocationsExt = 1000143000 + ViewportShadingRatePaletteNv = 1000164004 + ViewportCoarseSampleOrderNv = 1000164006 + ExclusiveScissorEnableNv = 1000205000 + ExclusiveScissorNv + FragmentShadingRateKhr = 1000226000 + LineStippleKhr = 1000259000 + RayTracingPipelineStackSizeKhr = 1000347000 + VertexInputExt = 1000352000 + PatchControlPointsExt = 1000377000 + LogicOpExt = 1000377003 + ColorWriteEnableExt = 1000381000 + TessellationDomainOriginExt = 1000455002 + DepthClampEnableExt + PolygonModeExt + RasterizationSamplesExt + SampleMaskExt + AlphaToCoverageEnableExt + AlphaToOneEnableExt + LogicOpEnableExt + ColorBlendEnableExt + ColorBlendEquationExt + ColorWriteMaskExt + RasterizationStreamExt + ConservativeRasterizationModeExt + ExtraPrimitiveOverestimationSizeExt + DepthClipEnableExt + SampleLocationsEnableExt + ColorBlendAdvancedExt + ProvokingVertexModeExt + LineRasterizationModeExt + LineStippleEnableExt + DepthClipNegativeOneToOneExt + ViewportWScalingEnableNv + ViewportSwizzleNv + CoverageToColorEnableNv + CoverageToColorLocationNv + CoverageModulationModeNv + CoverageModulationTableEnableNv + CoverageModulationTableNv + ShadingRateImageEnableNv + RepresentativeFragmentTestEnableNv + CoverageReductionModeNv + AttachmentFeedbackLoopEnableExt = 1000524000 VkDescriptorUpdateTemplateType* {.size: sizeof(int32).} = enum DescriptorSet + PushDescriptorsKhr VkObjectType* {.size: sizeof(int32).} = enum Unknown @@ -602,6 +1473,29 @@ type DescriptorSet Framebuffer CommandPool + SurfaceKhr = 1000000000 + SwapchainKhr = 1000001000 + DisplayKhr = 1000002000 + DisplayModeKhr + DebugReportCallbackExt = 1000011000 + VideoSessionKhr = 1000023000 + VideoSessionParametersKhr + CuModuleNvx = 1000029000 + CuFunctionNvx + DebugUtilsMessengerExt = 1000128000 + AccelerationStructureKhr = 1000150000 + ValidationCacheExt = 1000160000 + AccelerationStructureNv = 1000165000 + PerformanceConfigurationIntel = 1000210000 + DeferredOperationKhr = 1000268000 + IndirectCommandsLayoutNv = 1000277000 + CudaModuleNv = 1000307000 + CudaFunctionNv + BufferCollectionFuchsia = 1000366000 + MicromapExt = 1000396000 + OpticalFlowSessionNv = 1000464000 + ShaderExt = 1000482000 + SemaphoreSciSyncPoolNv = 1000489000 VkRayTracingInvocationReorderModeNV* {.size: sizeof(int32).} = enum None @@ -616,6 +1510,9 @@ type ComputeBit TransferBit = 4 SparseBindingBit = 8 + VideoDecodeBitKhr = 32 + VideoEncodeBitKhr = 64 + OpticalFlowBitNv = 256 VkCullModeFlagBits* {.size: sizeof(int32).} = enum None @@ -623,12 +1520,18 @@ type BackBit FrontAndBack + VkRenderPassCreateFlagBits* {.size: sizeof(int32).} = enum + TransformBitQcom = 2 + VkMemoryPropertyFlagBits* {.size: sizeof(int32).} = enum DeviceLocalBit = 1 HostVisibleBit HostCoherentBit = 4 HostCachedBit = 8 LazilyAllocatedBit = 16 + DeviceCoherentBitAmd = 64 + DeviceUncachedBitAmd = 128 + RdmaCapableBitNv = 256 VkMemoryHeapFlagBits* {.size: sizeof(int32).} = enum DeviceLocalBit = 1 @@ -651,6 +1554,17 @@ type HostWriteBit = 16384 MemoryReadBit = 32768 MemoryWriteBit = 65536 + CommandPreprocessReadBitNv = 131072 + CommandPreprocessWriteBitNv = 262144 + ColorAttachmentReadNoncoherentBitExt = 524288 + ConditionalRenderingReadBitExt = 1048576 + AccelerationStructureReadBitKhr = 2097152 + AccelerationStructureWriteBitKhr = 4194304 + FragmentShadingRateAttachmentReadBitKhr = 8388608 + FragmentDensityMapReadBitExt = 16777216 + TransformFeedbackWriteBitExt = 33554432 + TransformFeedbackCounterReadBitExt = 67108864 + TransformFeedbackCounterWriteBitExt = 134217728 VkBufferUsageFlagBits* {.size: sizeof(int32).} = enum TransferSrcBit = 1 @@ -662,6 +1576,22 @@ type IndexBufferBit = 64 VertexBufferBit = 128 IndirectBufferBit = 256 + ConditionalRenderingBitExt = 512 + ShaderBindingTableBitKhr = 1024 + TransformFeedbackBufferBitExt = 2048 + TransformFeedbackCounterBufferBitExt = 4096 + VideoDecodeSrcBitKhr = 8192 + VideoDecodeDstBitKhr = 16384 + VideoEncodeDstBitKhr = 32768 + VideoEncodeSrcBitKhr = 65536 + AccelerationStructureBuildInputReadOnlyBitKhr = 524288 + AccelerationStructureStorageBitKhr = 1048576 + SamplerDescriptorBufferBitExt = 2097152 + ResourceDescriptorBufferBitExt = 4194304 + MicromapBuildInputReadOnlyBitExt = 8388608 + MicromapStorageBitExt = 16777216 + ExecutionGraphScratchBitAmdx = 33554432 + PushDescriptorsDescriptorBufferBitExt = 67108864 VkBufferUsageFlagBits2KHR* {.size: sizeof(int32).} = enum TransferSrcBit = 1 @@ -673,11 +1603,30 @@ type IndexBufferBit = 64 VertexBufferBit = 128 IndirectBufferBit = 256 + ConditionalRenderingBitExt = 512 + ShaderBindingTableBit = 1024 + TransformFeedbackBufferBitExt = 2048 + TransformFeedbackCounterBufferBitExt = 4096 + VideoDecodeSrcBit = 8192 + VideoDecodeDstBit = 16384 + VideoEncodeDstBit = 32768 + VideoEncodeSrcBit = 65536 + ShaderDeviceAddressBit = 131072 + AccelerationStructureBuildInputReadOnlyBit = 524288 + AccelerationStructureStorageBit = 1048576 + SamplerDescriptorBufferBitExt = 2097152 + ResourceDescriptorBufferBitExt = 4194304 + MicromapBuildInputReadOnlyBitExt = 8388608 + MicromapStorageBitExt = 16777216 + ExecutionGraphScratchBitAmdx = 33554432 + PushDescriptorsDescriptorBufferBitExt = 67108864 VkBufferCreateFlagBits* {.size: sizeof(int32).} = enum SparseBindingBit = 1 SparseResidencyBit SparseAliasedBit = 4 + DescriptorBufferCaptureReplayBitExt = 32 + VideoProfileIndependentBitKhr = 64 VkShaderStageFlagBits* {.size: sizeof(int32).} = enum VertexBit = 1 @@ -687,6 +1636,16 @@ type FragmentBit = 16 AllGraphics = 31 ComputeBit + TaskBitExt = 64 + MeshBitExt = 128 + RaygenBitKhr = 256 + AnyHitBitKhr = 512 + ClosestHitBitKhr = 1024 + MissBitKhr = 2048 + IntersectionBitKhr = 4096 + CallableBitKhr = 8192 + SubpassShadingBitHuawei = 16384 + ClusterCullingBitHuawei = 524288 All = 2147483647 VkImageUsageFlagBits* {.size: sizeof(int32).} = enum @@ -698,6 +1657,19 @@ type DepthStencilAttachmentBit = 32 TransientAttachmentBit = 64 InputAttachmentBit = 128 + FragmentShadingRateAttachmentBitKhr = 256 + FragmentDensityMapBitExt = 512 + VideoDecodeDstBitKhr = 1024 + VideoDecodeSrcBitKhr = 2048 + VideoDecodeDpbBitKhr = 4096 + VideoEncodeDstBitKhr = 8192 + VideoEncodeSrcBitKhr = 16384 + VideoEncodeDpbBitKhr = 32768 + InvocationMaskBitHuawei = 262144 + AttachmentFeedbackLoopBitExt = 524288 + SampleWeightBitQcom = 1048576 + SampleBlockMatchBitQcom = 2097152 + HostTransferBitExt = 4194304 VkImageCreateFlagBits* {.size: sizeof(int32).} = enum SparseBindingBit = 1 @@ -705,16 +1677,88 @@ type SparseAliasedBit = 4 MutableFormatBit = 8 CubeCompatibleBit = 16 + SampleLocationsCompatibleDepthBitExt = 4096 + CornerSampledBitNv = 8192 + SubsampledBitExt = 16384 + FragmentDensityMapOffsetBitQcom = 32768 + DescriptorBufferCaptureReplayBitExt = 65536 + N2dViewCompatibleBitExt = 131072 + MultisampledRenderToSingleSampledBitExt = 262144 + VideoProfileIndependentBitKhr = 1048576 + + VkImageViewCreateFlagBits* {.size: sizeof(int32).} = enum + FragmentDensityMapDynamicBitExt = 1 + FragmentDensityMapDeferredBitExt + DescriptorBufferCaptureReplayBitExt = 4 + + VkSamplerCreateFlagBits* {.size: sizeof(int32).} = enum + SubsampledBitExt = 1 + SubsampledCoarseReconstructionBitExt + NonSeamlessCubeMapBitExt = 4 + DescriptorBufferCaptureReplayBitExt = 8 + ImageProcessingBitQcom = 16 VkPipelineCreateFlagBits* {.size: sizeof(int32).} = enum DisableOptimizationBit = 1 AllowDerivativesBit DerivativeBit = 4 + DeferCompileBitNv = 32 + CaptureStatisticsBitKhr = 64 + CaptureInternalRepresentationsBitKhr = 128 + LinkTimeOptimizationBitExt = 1024 + LibraryBitKhr = 2048 + RayTracingSkipTrianglesBitKhr = 4096 + RayTracingSkipAabbsBitKhr = 8192 + RayTracingNoNullAnyHitShadersBitKhr = 16384 + RayTracingNoNullClosestHitShadersBitKhr = 32768 + RayTracingNoNullMissShadersBitKhr = 65536 + RayTracingNoNullIntersectionShadersBitKhr = 131072 + IndirectBindableBitNv = 262144 + RayTracingShaderGroupHandleCaptureReplayBitKhr = 524288 + RayTracingAllowMotionBitNv = 1048576 + RenderingFragmentShadingRateAttachmentBitKhr = 2097152 + RenderingFragmentDensityMapAttachmentBitExt = 4194304 + RetainLinkTimeOptimizationInfoBitExt = 8388608 + RayTracingOpacityMicromapBitExt = 16777216 + ColorAttachmentFeedbackLoopBitExt = 33554432 + DepthStencilAttachmentFeedbackLoopBitExt = 67108864 + NoProtectedAccessBitExt = 134217728 + RayTracingDisplacementMicromapBitNv = 268435456 + DescriptorBufferBitExt = 536870912 + ProtectedAccessOnlyBitExt = 1073741824 VkPipelineCreateFlagBits2KHR* {.size: sizeof(int32).} = enum DisableOptimizationBit = 1 AllowDerivativesBit DerivativeBit = 4 + ViewIndexFromDeviceIndexBit = 8 + DispatchBaseBit = 16 + DeferCompileBitNv = 32 + CaptureStatisticsBit = 64 + CaptureInternalRepresentationsBit = 128 + FailOnPipelineCompileRequiredBit = 256 + EarlyReturnOnFailureBit = 512 + LinkTimeOptimizationBitExt = 1024 + LibraryBit = 2048 + RayTracingSkipTrianglesBit = 4096 + RayTracingSkipAabbsBit = 8192 + RayTracingNoNullAnyHitShadersBit = 16384 + RayTracingNoNullClosestHitShadersBit = 32768 + RayTracingNoNullMissShadersBit = 65536 + RayTracingNoNullIntersectionShadersBit = 131072 + IndirectBindableBitNv = 262144 + RayTracingShaderGroupHandleCaptureReplayBit = 524288 + RayTracingAllowMotionBitNv = 1048576 + RenderingFragmentShadingRateAttachmentBit = 2097152 + RenderingFragmentDensityMapAttachmentBitExt = 4194304 + RetainLinkTimeOptimizationInfoBitExt = 8388608 + RayTracingOpacityMicromapBitExt = 16777216 + ColorAttachmentFeedbackLoopBitExt = 33554432 + DepthStencilAttachmentFeedbackLoopBitExt = 67108864 + NoProtectedAccessBitExt = 134217728 + RayTracingDisplacementMicromapBitNv = 268435456 + DescriptorBufferBitExt = 536870912 + ProtectedAccessOnlyBitExt = 1073741824 VkColorComponentFlagBits* {.size: sizeof(int32).} = enum RBit = 1 @@ -739,6 +1783,14 @@ type BlitSrcBit = 1024 BlitDstBit = 2048 SampledImageFilterLinearBit = 4096 + SampledImageFilterCubicBitExt = 8192 + FragmentDensityMapBitExt = 16777216 + VideoDecodeOutputBitKhr = 33554432 + VideoDecodeDpbBitKhr = 67108864 + VideoEncodeInputBitKhr = 134217728 + VideoEncodeDpbBitKhr = 268435456 + AccelerationStructureVertexBufferBitKhr = 536870912 + FragmentShadingRateAttachmentBitKhr = 1073741824 VkQueryControlFlagBits* {.size: sizeof(int32).} = enum PreciseBit = 1 @@ -748,6 +1800,7 @@ type WaitBit WithAvailabilityBit = 4 PartialBit = 8 + WithStatusBitKhr = 16 VkCommandBufferUsageFlagBits* {.size: sizeof(int32).} = enum OneTimeSubmitBit = 1 @@ -766,12 +1819,22 @@ type TessellationControlShaderPatchesBit = 256 TessellationEvaluationShaderInvocationsBit = 512 ComputeShaderInvocationsBit = 1024 + TaskShaderInvocationsBitExt = 2048 + MeshShaderInvocationsBitExt = 4096 + ClusterCullingShaderInvocationsBitHuawei = 8192 + + VkMemoryMapFlagBits* {.size: sizeof(int32).} = enum + PlacedBitExt = 1 VkImageAspectFlagBits* {.size: sizeof(int32).} = enum ColorBit = 1 DepthBit StencilBit = 4 MetadataBit = 8 + MemoryPlane0BitExt = 128 + MemoryPlane1BitExt = 256 + MemoryPlane2BitExt = 512 + MemoryPlane3BitExt = 1024 VkSparseImageFormatFlagBits* {.size: sizeof(int32).} = enum SingleMiptailBit = 1 @@ -799,6 +1862,15 @@ type HostBit = 16384 AllGraphicsBit = 32768 AllCommandsBit = 65536 + CommandPreprocessBitNv = 131072 + ConditionalRenderingBitExt = 262144 + TaskShaderBitExt = 524288 + MeshShaderBitExt = 1048576 + RayTracingShaderBitKhr = 2097152 + FragmentShadingRateAttachmentBitKhr = 4194304 + FragmentDensityProcessBitExt = 8388608 + TransformFeedbackBitExt = 16777216 + AccelerationStructureBuildBitKhr = 33554432 VkCommandPoolCreateFlagBits* {.size: sizeof(int32).} = enum TransientBit = 1 @@ -829,9 +1901,13 @@ type VkDescriptorPoolCreateFlagBits* {.size: sizeof(int32).} = enum FreeDescriptorSetBit = 1 + HostOnlyBitExt = 4 + AllowOverallocationSetsBitNv = 8 + AllowOverallocationPoolsBitNv = 16 VkDependencyFlagBits* {.size: sizeof(int32).} = enum ByRegionBit = 1 + FeedbackLoopBitExt = 8 VkSemaphoreType* {.size: sizeof(int32).} = enum Binary @@ -845,9 +1921,26 @@ type Mailbox Fifo FifoRelaxed + SharedDemandRefresh = 1000111000 + SharedContinuousRefresh VkColorSpaceKHR* {.size: sizeof(int32).} = enum SrgbNonlinear + DisplayP3NonlinearExt = 1000104001 + ExtendedSrgbLinearExt + DisplayP3LinearExt + DciP3NonlinearExt + Bt709LinearExt + Bt709NonlinearExt + Bt2020LinearExt + Hdr10St2084Ext + DolbyvisionExt + Hdr10HlgExt + AdobergbLinearExt + AdobergbNonlinearExt + PassThroughExt + ExtendedSrgbNonlinearExt + DisplayNativeAmd = 1000213000 VkDisplayPlaneAlphaFlagBitsKHR* {.size: sizeof(int32).} = enum OpaqueBit = 1 @@ -921,6 +2014,15 @@ type DisplayKhr DisplayModeKhr ValidationCacheExt = 33 + CuModuleNvx = 1000029000 + CuFunctionNvx + DescriptorUpdateTemplate = 1000085000 + AccelerationStructureKhr = 1000150000 + SamplerYcbcrConversion = 1000156000 + AccelerationStructureNv = 1000165000 + CudaModuleNv = 1000307000 + CudaFunctionNv + BufferCollectionFuchsia = 1000366000 VkDeviceMemoryReportEventTypeEXT* {.size: sizeof(int32).} = enum Allocate @@ -984,6 +2086,9 @@ type ShuffleRelativeBit = 32 ClusteredBit = 64 QuadBit = 128 + PartitionedBitNv = 256 + RotateBitKhr = 512 + RotateClusteredBitKhr = 1024 VkIndirectCommandsLayoutUsageFlagBitsNV* {.size: sizeof(int32).} = enum ExplicitPreprocessBit = 1 @@ -1002,6 +2107,17 @@ type DrawIndexed Draw DrawTasks + DrawMeshTasks = 1000328000 + Pipeline = 1000428003 + Dispatch + + VkDescriptorSetLayoutCreateFlagBits* {.size: sizeof(int32).} = enum + PushDescriptorBitKhr = 1 + HostOnlyPoolBitExt = 4 + DescriptorBufferBitExt = 16 + EmbeddedImmutableSamplersBitExt = 32 + PerStageBitNv = 64 + IndirectBindableBitNv = 128 VkExternalMemoryHandleTypeFlagBits* {.size: sizeof(int32).} = enum OpaqueFdBit = 1 @@ -1011,6 +2127,14 @@ type D3d11TextureKmtBit = 16 D3d12HeapBit = 32 D3d12ResourceBit = 64 + HostAllocationBitExt = 128 + HostMappedForeignMemoryBitExt = 256 + DmaBufBitExt = 512 + AndroidHardwareBufferBitAndroid = 1024 + ZirconVmoBitFuchsia = 2048 + RdmaAddressBitNv = 4096 + SciBufBitNv = 8192 + ScreenBufferBitQnx = 16384 VkExternalMemoryFeatureFlagBits* {.size: sizeof(int32).} = enum DedicatedOnlyBit = 1 @@ -1023,6 +2147,8 @@ type OpaqueWin32KmtBit = 4 D3d12FenceBit = 8 SyncFdBit = 16 + SciSyncObjBitNv = 32 + ZirconEventBitFuchsia = 128 VkExternalSemaphoreFeatureFlagBits* {.size: sizeof(int32).} = enum ExportableBit = 1 @@ -1036,6 +2162,8 @@ type OpaqueWin32Bit OpaqueWin32KmtBit = 4 SyncFdBit = 8 + SciSyncObjBitNv = 16 + SciSyncFenceBitNv = 32 VkExternalFenceFeatureFlagBits* {.size: sizeof(int32).} = enum ExportableBit = 1 @@ -1073,6 +2201,12 @@ type SumBit = 4 LocalMultiDeviceBit = 8 + VkSwapchainCreateFlagBitsKHR* {.size: sizeof(int32).} = enum + SplitInstanceBindRegionsBit = 1 + ProtectedBit + MutableFormatBit = 4 + DeferredMemoryAllocationBitExt = 8 + VkViewportCoordinateSwizzleNV* {.size: sizeof(int32).} = enum PositiveX NegativeX @@ -1087,6 +2221,16 @@ type Inclusive Exclusive + VkSubpassDescriptionFlagBits* {.size: sizeof(int32).} = enum + PerViewAttributesBitNvx = 1 + PerViewPositionXOnlyBitNvx + FragmentRegionBitQcom = 4 + ShaderResolveBitQcom = 8 + RasterizationOrderAttachmentColorAccessBitExt = 16 + RasterizationOrderAttachmentDepthAccessBitExt = 32 + RasterizationOrderAttachmentStencilAccessBitExt = 64 + EnableLegacyDitheringBitExt = 128 + VkPointClippingBehavior* {.size: sizeof(int32).} = enum AllClipPlanes UserClipPlanesOnly @@ -1095,6 +2239,7 @@ type WeightedAverage Min Max + WeightedAverageRangeclampQcom = 1000521000 VkTessellationDomainOrigin* {.size: sizeof(int32).} = enum UpperLeft @@ -1154,6 +2299,7 @@ type GeneralBit = 1 ValidationBit PerformanceBit = 4 + DeviceAddressBindingBit = 8 VkConservativeRasterizationModeEXT* {.size: sizeof(int32).} = enum Disabled @@ -1212,6 +2358,7 @@ type AverageBit MinBit = 4 MaxBit = 8 + ExternalFormatDownsampleAndroid = 16 VkShadingRatePaletteEntryNV* {.size: sizeof(int32).} = enum NoInvocations @@ -1238,6 +2385,8 @@ type TriangleFlipFacingBit ForceOpaqueBit = 4 ForceNoOpaqueBit = 8 + ForceOpacityMicromap2StateExt = 16 + DisableOpacityMicromapsExt = 32 VkGeometryFlagBitsKHR* {.size: sizeof(int32).} = enum OpaqueBit = 1 @@ -1249,9 +2398,17 @@ type PreferFastTraceBit = 4 PreferFastBuildBit = 8 LowMemoryBit = 16 + MotionBitNv = 32 + AllowOpacityMicromapUpdateExt = 64 + AllowDisableOpacityMicromapsExt = 128 + AllowOpacityMicromapDataUpdateExt = 256 + AllowDisplacementMicromapUpdateNv = 512 + AllowDataAccess = 2048 VkAccelerationStructureCreateFlagBitsKHR* {.size: sizeof(int32).} = enum DeviceAddressCaptureReplayBit = 1 + MotionBitNv = 4 + DescriptorBufferCaptureReplayBitExt = 8 VkCopyAccelerationStructureModeKHR* {.size: sizeof(int32).} = enum Clone @@ -1415,6 +2572,8 @@ type TracingBit = 4 AdditionalFeaturesBit = 8 ModifyingFeaturesBit = 16 + DebugReportingBitExt = 32 + DebugMarkersBitExt = 64 VkPipelineMatchControl* {.size: sizeof(int32).} = enum ApplicationUuidExactMatch @@ -1479,9 +2638,31 @@ type HostWriteBit = 16384 MemoryReadBit = 32768 MemoryWriteBit = 65536 + CommandPreprocessReadBitNv = 131072 + CommandPreprocessWriteBitNv = 262144 + ColorAttachmentReadNoncoherentBitExt = 524288 + ConditionalRenderingReadBitExt = 1048576 + AccelerationStructureReadBitKhr = 2097152 + AccelerationStructureWriteBitKhr = 4194304 + FragmentShadingRateAttachmentReadBitKhr = 8388608 + FragmentDensityMapReadBitExt = 16777216 + TransformFeedbackWriteBitExt = 33554432 + TransformFeedbackCounterReadBitExt = 67108864 + TransformFeedbackCounterWriteBitExt = 134217728 ShaderSampledReadBit = 4294967296 ShaderStorageReadBit = 8589934592 ShaderStorageWriteBit = 17179869184 + VideoDecodeReadBitKhr = 34359738368 + VideoDecodeWriteBitKhr = 68719476736 + VideoEncodeReadBitKhr = 137438953472 + VideoEncodeWriteBitKhr = 274877906944 + InvocationMaskReadBitHuawei = 549755813888 + ShaderBindingTableReadBitKhr = 1099511627776 + DescriptorBufferReadBitExt = 2199023255552 + OpticalFlowReadBitNv = 4398046511104 + OpticalFlowWriteBitNv = 8796093022208 + MicromapReadBitExt = 17592186044416 + MicromapWriteBitExt = 35184372088832 VkPipelineStageFlagBits2* {.size: sizeof(int32).} = enum None @@ -1502,6 +2683,20 @@ type HostBit = 16384 AllGraphicsBit = 32768 AllCommandsBit = 65536 + CommandPreprocessBitNv = 131072 + ConditionalRenderingBitExt = 262144 + TaskShaderBitExt = 524288 + MeshShaderBitExt = 1048576 + RayTracingShaderBitKhr = 2097152 + FragmentShadingRateAttachmentBitKhr = 4194304 + FragmentDensityProcessBitExt = 8388608 + TransformFeedbackBitExt = 16777216 + AccelerationStructureBuildBitKhr = 33554432 + VideoDecodeBitKhr = 67108864 + VideoEncodeBitKhr = 134217728 + AccelerationStructureCopyBitKhr = 268435456 + OpticalFlowBitNv = 536870912 + MicromapBuildBitExt = 1073741824 CopyBit = 4294967296 ResolveBit = 8589934592 BlitBit = 17179869184 @@ -1509,10 +2704,16 @@ type IndexInputBit = 68719476736 VertexAttributeInputBit = 137438953472 PreRasterizationShadersBit = 274877906944 + SubpassShaderBitHuawei = 549755813888 + InvocationMaskBitHuawei = 1099511627776 + ClusterCullingShaderBitHuawei = 2199023255552 VkSubmitFlagBits* {.size: sizeof(int32).} = enum ProtectedBit = 1 + VkPipelineLayoutCreateFlagBits* {.size: sizeof(int32).} = enum + IndependentSetsBitExt = 2 + VkSciSyncClientTypeNV* {.size: sizeof(int32).} = enum Signaler Waiter @@ -1534,6 +2735,13 @@ type MatrixMotion SrtMotion + VkPipelineColorBlendStateCreateFlagBits* {.size: sizeof(int32).} = enum + RasterizationOrderAttachmentAccessBitExt = 1 + + VkPipelineDepthStencilStateCreateFlagBits* {.size: sizeof(int32).} = enum + RasterizationOrderAttachmentDepthAccessBitExt = 1 + RasterizationOrderAttachmentStencilAccessBitExt + VkGraphicsPipelineLibraryFlagBitsEXT* {.size: sizeof(int32).} = enum VertexInputInterfaceBit = 1 PreRasterizationShadersBit @@ -1565,6 +2773,11 @@ type VkVideoCodecOperationFlagBitsKHR* {.size: sizeof(int32).} = enum None + DecodeH264Bit + DecodeH265Bit + DecodeAv1Bit = 4 + EncodeH264Bit = 65536 + EncodeH265Bit = 131072 VkVideoChromaSubsamplingFlagBitsKHR* {.size: sizeof(int32).} = enum Invalid @@ -1585,6 +2798,8 @@ type VkVideoSessionCreateFlagBitsKHR* {.size: sizeof(int32).} = enum ProtectedContentBit = 1 + AllowEncodeParameterOptimizationsBit + InlineQueriesBit = 4 VkVideoDecodeH264PictureLayoutFlagBitsKHR* {.size: sizeof(int32).} = enum Progressive @@ -1593,8 +2808,11 @@ type VkVideoCodingControlFlagBitsKHR* {.size: sizeof(int32).} = enum ResetBit = 1 + EncodeRateControlBit + EncodeQualityLevelBit = 4 VkQueryResultStatusKHR* {.size: sizeof(int32).} = enum + InsufficientBitstreamBufferRange = -1000299000 Error = -1 NotReady Complete @@ -1719,14 +2937,32 @@ type SampledImageYcbcrConversionChromaReconstructionExplicitForceableBit = 2097152 DisjointBit = 4194304 CositedChromaSamplesBit = 8388608 + FragmentDensityMapBitExt = 16777216 + VideoDecodeOutputBitKhr = 33554432 + VideoDecodeDpbBitKhr = 67108864 + VideoEncodeInputBitKhr = 134217728 + VideoEncodeDpbBitKhr = 268435456 + AccelerationStructureVertexBufferBitKhr = 536870912 + FragmentShadingRateAttachmentBitKhr = 1073741824 StorageReadWithoutFormatBit = 2147483648 StorageWriteWithoutFormatBit = 4294967296 SampledImageDepthComparisonBit = 8589934592 + WeightImageBitQcom = 17179869184 + WeightSampledImageBitQcom = 34359738368 + BlockMatchingBitQcom = 68719476736 + BoxFilterSampledBitQcom = 137438953472 + LinearColorAttachmentBitNv = 274877906944 + OpticalFlowImageBitNv = 1099511627776 + OpticalFlowVectorBitNv = 2199023255552 + OpticalFlowCostBitNv = 4398046511104 + HostImageTransferBitExt = 70368744177664 VkRenderingFlagBits* {.size: sizeof(int32).} = enum ContentsSecondaryCommandBuffersBit = 1 SuspendingBit ResumingBit = 4 + EnableLegacyDitheringBitExt = 8 + ContentsInlineBitExt = 16 VkVideoEncodeH265CapabilityFlagBitsKHR* {.size: sizeof(int32).} = enum HrdComplianceBit = 1 @@ -1789,6 +3025,9 @@ type MetalIosurfaceBit = 16 MetalSharedEventBit = 32 + VkInstanceCreateFlagBits* {.size: sizeof(int32).} = enum + EnumeratePortabilityBitKhr = 1 + VkImageCompressionFlagBitsEXT* {.size: sizeof(int32).} = enum Default FixedRateDefault @@ -1878,6 +3117,7 @@ type VkMicromapTypeEXT* {.size: sizeof(int32).} = enum OpacityMicromap + DisplacementMicromapNv = 1000397000 VkBuildMicromapFlagBitsEXT* {.size: sizeof(int32).} = enum PreferFastTraceBit = 1 @@ -1930,6 +3170,12 @@ type VkShaderCreateFlagBitsEXT* {.size: sizeof(int32).} = enum LinkStageBit = 1 + AllowVaryingSubgroupSizeBit + RequireFullSubgroupsBit = 4 + NoTaskShaderBit = 8 + DispatchBaseBit = 16 + FragmentShadingRateAttachmentBit = 32 + FragmentDensityMapAttachmentBit = 64 VkShaderCodeTypeEXT* {.size: sizeof(int32).} = enum Binary @@ -1986,6 +3232,9 @@ type Render Present + VkMemoryUnmapFlagBitsKHR* {.size: sizeof(int32).} = enum + ReserveBitExt = 1 + # Types @@ -10919,7 +12168,7 @@ proc newVkCopyDescriptorSet*(sType: VkStructureType = VkStructureType.CopyDescri descriptorCount: descriptorCount, ) -proc newVkBufferUsageFlags2CreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, usage: VkBufferUsageFlags2KHR): VkBufferUsageFlags2CreateInfoKHR = +proc newVkBufferUsageFlags2CreateInfoKHR*(sType: VkStructureType = VkStructureType.BufferUsageFlags2CreateInfoKHR, pNext: pointer = nil, usage: VkBufferUsageFlags2KHR): VkBufferUsageFlags2CreateInfoKHR = result = VkBufferUsageFlags2CreateInfoKHR( sType: sType, pNext: pNext, @@ -11253,7 +12502,7 @@ proc newVkComputePipelineCreateInfo*(sType: VkStructureType = VkStructureType.Co basePipelineIndex: basePipelineIndex, ) -proc newVkComputePipelineIndirectBufferInfoNV*(sType: VkStructureType, pNext: pointer = nil, deviceAddress: VkDeviceAddress, size: VkDeviceSize, pipelineDeviceAddressCaptureReplay: VkDeviceAddress): VkComputePipelineIndirectBufferInfoNV = +proc newVkComputePipelineIndirectBufferInfoNV*(sType: VkStructureType = VkStructureType.ComputePipelineIndirectBufferInfoNV, pNext: pointer = nil, deviceAddress: VkDeviceAddress, size: VkDeviceSize, pipelineDeviceAddressCaptureReplay: VkDeviceAddress): VkComputePipelineIndirectBufferInfoNV = result = VkComputePipelineIndirectBufferInfoNV( sType: sType, pNext: pNext, @@ -11262,7 +12511,7 @@ proc newVkComputePipelineIndirectBufferInfoNV*(sType: VkStructureType, pNext: po pipelineDeviceAddressCaptureReplay: pipelineDeviceAddressCaptureReplay, ) -proc newVkPipelineCreateFlags2CreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCreateFlags2KHR = 0.VkPipelineCreateFlags2KHR): VkPipelineCreateFlags2CreateInfoKHR = +proc newVkPipelineCreateFlags2CreateInfoKHR*(sType: VkStructureType = VkStructureType.PipelineCreateFlags2CreateInfoKHR, pNext: pointer = nil, flags: VkPipelineCreateFlags2KHR = 0.VkPipelineCreateFlags2KHR): VkPipelineCreateFlags2CreateInfoKHR = result = VkPipelineCreateFlags2CreateInfoKHR( sType: sType, pNext: pNext, @@ -11940,7 +13189,7 @@ proc newVkDisplayModePropertiesKHR*(displayMode: VkDisplayModeKHR, parameters: V parameters: parameters, ) -proc newVkDisplayModeCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkDisplayModeCreateFlagsKHR = 0.VkDisplayModeCreateFlagsKHR, parameters: VkDisplayModeParametersKHR): VkDisplayModeCreateInfoKHR = +proc newVkDisplayModeCreateInfoKHR*(sType: VkStructureType = VkStructureType.DisplayModeCreateInfoKHR, pNext: pointer = nil, flags: VkDisplayModeCreateFlagsKHR = 0.VkDisplayModeCreateFlagsKHR, parameters: VkDisplayModeParametersKHR): VkDisplayModeCreateInfoKHR = result = VkDisplayModeCreateInfoKHR( sType: sType, pNext: pNext, @@ -11961,7 +13210,7 @@ proc newVkDisplayPlaneCapabilitiesKHR*(supportedAlpha: VkDisplayPlaneAlphaFlagsK maxDstExtent: maxDstExtent, ) -proc newVkDisplaySurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkDisplaySurfaceCreateFlagsKHR = 0.VkDisplaySurfaceCreateFlagsKHR, displayMode: VkDisplayModeKHR, planeIndex: uint32, planeStackIndex: uint32, transform: VkSurfaceTransformFlagBitsKHR, globalAlpha: float32, alphaMode: VkDisplayPlaneAlphaFlagBitsKHR, imageExtent: VkExtent2D): VkDisplaySurfaceCreateInfoKHR = +proc newVkDisplaySurfaceCreateInfoKHR*(sType: VkStructureType = VkStructureType.DisplaySurfaceCreateInfoKHR, pNext: pointer = nil, flags: VkDisplaySurfaceCreateFlagsKHR = 0.VkDisplaySurfaceCreateFlagsKHR, displayMode: VkDisplayModeKHR, planeIndex: uint32, planeStackIndex: uint32, transform: VkSurfaceTransformFlagBitsKHR, globalAlpha: float32, alphaMode: VkDisplayPlaneAlphaFlagBitsKHR, imageExtent: VkExtent2D): VkDisplaySurfaceCreateInfoKHR = result = VkDisplaySurfaceCreateInfoKHR( sType: sType, pNext: pNext, @@ -11975,7 +13224,7 @@ proc newVkDisplaySurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = imageExtent: imageExtent, ) -proc newVkDisplayPresentInfoKHR*(sType: VkStructureType, pNext: pointer = nil, srcRect: VkRect2D, dstRect: VkRect2D, persistent: VkBool32): VkDisplayPresentInfoKHR = +proc newVkDisplayPresentInfoKHR*(sType: VkStructureType = VkStructureType.DisplayPresentInfoKHR, pNext: pointer = nil, srcRect: VkRect2D, dstRect: VkRect2D, persistent: VkBool32): VkDisplayPresentInfoKHR = result = VkDisplayPresentInfoKHR( sType: sType, pNext: pNext, @@ -11998,7 +13247,7 @@ proc newVkSurfaceCapabilitiesKHR*(minImageCount: uint32, maxImageCount: uint32, supportedUsageFlags: supportedUsageFlags, ) -proc newVkAndroidSurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkAndroidSurfaceCreateFlagsKHR = 0.VkAndroidSurfaceCreateFlagsKHR, window: ptr ANativeWindow): VkAndroidSurfaceCreateInfoKHR = +proc newVkAndroidSurfaceCreateInfoKHR*(sType: VkStructureType = VkStructureType.AndroidSurfaceCreateInfoKHR, pNext: pointer = nil, flags: VkAndroidSurfaceCreateFlagsKHR = 0.VkAndroidSurfaceCreateFlagsKHR, window: ptr ANativeWindow): VkAndroidSurfaceCreateInfoKHR = result = VkAndroidSurfaceCreateInfoKHR( sType: sType, pNext: pNext, @@ -12006,7 +13255,7 @@ proc newVkAndroidSurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = window: window, ) -proc newVkViSurfaceCreateInfoNN*(sType: VkStructureType, pNext: pointer = nil, flags: VkViSurfaceCreateFlagsNN = 0.VkViSurfaceCreateFlagsNN, window: pointer = nil): VkViSurfaceCreateInfoNN = +proc newVkViSurfaceCreateInfoNN*(sType: VkStructureType = VkStructureType.ViSurfaceCreateInfoNN, pNext: pointer = nil, flags: VkViSurfaceCreateFlagsNN = 0.VkViSurfaceCreateFlagsNN, window: pointer = nil): VkViSurfaceCreateInfoNN = result = VkViSurfaceCreateInfoNN( sType: sType, pNext: pNext, @@ -12014,7 +13263,7 @@ proc newVkViSurfaceCreateInfoNN*(sType: VkStructureType, pNext: pointer = nil, f window: window, ) -proc newVkWaylandSurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkWaylandSurfaceCreateFlagsKHR = 0.VkWaylandSurfaceCreateFlagsKHR, display: ptr wl_display, surface: ptr wl_surface): VkWaylandSurfaceCreateInfoKHR = +proc newVkWaylandSurfaceCreateInfoKHR*(sType: VkStructureType = VkStructureType.WaylandSurfaceCreateInfoKHR, pNext: pointer = nil, flags: VkWaylandSurfaceCreateFlagsKHR = 0.VkWaylandSurfaceCreateFlagsKHR, display: ptr wl_display, surface: ptr wl_surface): VkWaylandSurfaceCreateInfoKHR = result = VkWaylandSurfaceCreateInfoKHR( sType: sType, pNext: pNext, @@ -12023,7 +13272,7 @@ proc newVkWaylandSurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = surface: surface, ) -proc newVkWin32SurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkWin32SurfaceCreateFlagsKHR = 0.VkWin32SurfaceCreateFlagsKHR, hinstance: HINSTANCE, hwnd: HWND): VkWin32SurfaceCreateInfoKHR = +proc newVkWin32SurfaceCreateInfoKHR*(sType: VkStructureType = VkStructureType.Win32SurfaceCreateInfoKHR, pNext: pointer = nil, flags: VkWin32SurfaceCreateFlagsKHR = 0.VkWin32SurfaceCreateFlagsKHR, hinstance: HINSTANCE, hwnd: HWND): VkWin32SurfaceCreateInfoKHR = result = VkWin32SurfaceCreateInfoKHR( sType: sType, pNext: pNext, @@ -12032,7 +13281,7 @@ proc newVkWin32SurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = ni hwnd: hwnd, ) -proc newVkXlibSurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkXlibSurfaceCreateFlagsKHR = 0.VkXlibSurfaceCreateFlagsKHR, dpy: ptr Display, window: Window): VkXlibSurfaceCreateInfoKHR = +proc newVkXlibSurfaceCreateInfoKHR*(sType: VkStructureType = VkStructureType.XlibSurfaceCreateInfoKHR, pNext: pointer = nil, flags: VkXlibSurfaceCreateFlagsKHR = 0.VkXlibSurfaceCreateFlagsKHR, dpy: ptr Display, window: Window): VkXlibSurfaceCreateInfoKHR = result = VkXlibSurfaceCreateInfoKHR( sType: sType, pNext: pNext, @@ -12041,7 +13290,7 @@ proc newVkXlibSurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil window: window, ) -proc newVkXcbSurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkXcbSurfaceCreateFlagsKHR = 0.VkXcbSurfaceCreateFlagsKHR, connection: ptr xcb_connection_t, window: xcb_window_t): VkXcbSurfaceCreateInfoKHR = +proc newVkXcbSurfaceCreateInfoKHR*(sType: VkStructureType = VkStructureType.XcbSurfaceCreateInfoKHR, pNext: pointer = nil, flags: VkXcbSurfaceCreateFlagsKHR = 0.VkXcbSurfaceCreateFlagsKHR, connection: ptr xcb_connection_t, window: xcb_window_t): VkXcbSurfaceCreateInfoKHR = result = VkXcbSurfaceCreateInfoKHR( sType: sType, pNext: pNext, @@ -12050,7 +13299,7 @@ proc newVkXcbSurfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, window: window, ) -proc newVkDirectFBSurfaceCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkDirectFBSurfaceCreateFlagsEXT = 0.VkDirectFBSurfaceCreateFlagsEXT, dfb: ptr IDirectFB, surface: ptr IDirectFBSurface): VkDirectFBSurfaceCreateInfoEXT = +proc newVkDirectFBSurfaceCreateInfoEXT*(sType: VkStructureType = VkStructureType.DirectFBSurfaceCreateInfoEXT, pNext: pointer = nil, flags: VkDirectFBSurfaceCreateFlagsEXT = 0.VkDirectFBSurfaceCreateFlagsEXT, dfb: ptr IDirectFB, surface: ptr IDirectFBSurface): VkDirectFBSurfaceCreateInfoEXT = result = VkDirectFBSurfaceCreateInfoEXT( sType: sType, pNext: pNext, @@ -12059,7 +13308,7 @@ proc newVkDirectFBSurfaceCreateInfoEXT*(sType: VkStructureType, pNext: pointer = surface: surface, ) -proc newVkImagePipeSurfaceCreateInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, flags: VkImagePipeSurfaceCreateFlagsFUCHSIA = 0.VkImagePipeSurfaceCreateFlagsFUCHSIA, imagePipeHandle: zx_handle_t): VkImagePipeSurfaceCreateInfoFUCHSIA = +proc newVkImagePipeSurfaceCreateInfoFUCHSIA*(sType: VkStructureType = VkStructureType.ImagePipeSurfaceCreateInfoFUCHSIA, pNext: pointer = nil, flags: VkImagePipeSurfaceCreateFlagsFUCHSIA = 0.VkImagePipeSurfaceCreateFlagsFUCHSIA, imagePipeHandle: zx_handle_t): VkImagePipeSurfaceCreateInfoFUCHSIA = result = VkImagePipeSurfaceCreateInfoFUCHSIA( sType: sType, pNext: pNext, @@ -12067,7 +13316,7 @@ proc newVkImagePipeSurfaceCreateInfoFUCHSIA*(sType: VkStructureType, pNext: poin imagePipeHandle: imagePipeHandle, ) -proc newVkStreamDescriptorSurfaceCreateInfoGGP*(sType: VkStructureType, pNext: pointer = nil, flags: VkStreamDescriptorSurfaceCreateFlagsGGP = 0.VkStreamDescriptorSurfaceCreateFlagsGGP, streamDescriptor: GgpStreamDescriptor): VkStreamDescriptorSurfaceCreateInfoGGP = +proc newVkStreamDescriptorSurfaceCreateInfoGGP*(sType: VkStructureType = VkStructureType.StreamDescriptorSurfaceCreateInfoGGP, pNext: pointer = nil, flags: VkStreamDescriptorSurfaceCreateFlagsGGP = 0.VkStreamDescriptorSurfaceCreateFlagsGGP, streamDescriptor: GgpStreamDescriptor): VkStreamDescriptorSurfaceCreateInfoGGP = result = VkStreamDescriptorSurfaceCreateInfoGGP( sType: sType, pNext: pNext, @@ -12075,7 +13324,7 @@ proc newVkStreamDescriptorSurfaceCreateInfoGGP*(sType: VkStructureType, pNext: p streamDescriptor: streamDescriptor, ) -proc newVkScreenSurfaceCreateInfoQNX*(sType: VkStructureType, pNext: pointer = nil, flags: VkScreenSurfaceCreateFlagsQNX = 0.VkScreenSurfaceCreateFlagsQNX, context: ptr screen_context, window: ptr screen_window): VkScreenSurfaceCreateInfoQNX = +proc newVkScreenSurfaceCreateInfoQNX*(sType: VkStructureType = VkStructureType.ScreenSurfaceCreateInfoQNX, pNext: pointer = nil, flags: VkScreenSurfaceCreateFlagsQNX = 0.VkScreenSurfaceCreateFlagsQNX, context: ptr screen_context, window: ptr screen_window): VkScreenSurfaceCreateInfoQNX = result = VkScreenSurfaceCreateInfoQNX( sType: sType, pNext: pNext, @@ -12090,7 +13339,7 @@ proc newVkSurfaceFormatKHR*(format: VkFormat, colorSpace: VkColorSpaceKHR): VkSu colorSpace: colorSpace, ) -proc newVkSwapchainCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkSwapchainCreateFlagsKHR = 0.VkSwapchainCreateFlagsKHR, surface: VkSurfaceKHR, minImageCount: uint32, imageFormat: VkFormat, imageColorSpace: VkColorSpaceKHR, imageExtent: VkExtent2D, imageArrayLayers: uint32, imageUsage: VkImageUsageFlags, imageSharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32, preTransform: VkSurfaceTransformFlagBitsKHR, compositeAlpha: VkCompositeAlphaFlagBitsKHR, presentMode: VkPresentModeKHR, clipped: VkBool32, oldSwapchain: VkSwapchainKHR): VkSwapchainCreateInfoKHR = +proc newVkSwapchainCreateInfoKHR*(sType: VkStructureType = VkStructureType.SwapchainCreateInfoKHR, pNext: pointer = nil, flags: VkSwapchainCreateFlagsKHR = 0.VkSwapchainCreateFlagsKHR, surface: VkSurfaceKHR, minImageCount: uint32, imageFormat: VkFormat, imageColorSpace: VkColorSpaceKHR, imageExtent: VkExtent2D, imageArrayLayers: uint32, imageUsage: VkImageUsageFlags, imageSharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32, preTransform: VkSurfaceTransformFlagBitsKHR, compositeAlpha: VkCompositeAlphaFlagBitsKHR, presentMode: VkPresentModeKHR, clipped: VkBool32, oldSwapchain: VkSwapchainKHR): VkSwapchainCreateInfoKHR = result = VkSwapchainCreateInfoKHR( sType: sType, pNext: pNext, @@ -12112,7 +13361,7 @@ proc newVkSwapchainCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, oldSwapchain: oldSwapchain, ) -proc newVkPresentInfoKHR*(sType: VkStructureType, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, swapchainCount: uint32, pSwapchains: ptr VkSwapchainKHR, pImageIndices: ptr uint32, pResults: ptr VkResult): VkPresentInfoKHR = +proc newVkPresentInfoKHR*(sType: VkStructureType = VkStructureType.PresentInfoKHR, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, swapchainCount: uint32, pSwapchains: ptr VkSwapchainKHR, pImageIndices: ptr uint32, pResults: ptr VkResult): VkPresentInfoKHR = result = VkPresentInfoKHR( sType: sType, pNext: pNext, @@ -12124,7 +13373,7 @@ proc newVkPresentInfoKHR*(sType: VkStructureType, pNext: pointer = nil, waitSema pResults: pResults, ) -proc newVkDebugReportCallbackCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkDebugReportFlagsEXT = 0.VkDebugReportFlagsEXT, pfnCallback: PFN_vkDebugReportCallbackEXT, pUserData: pointer = nil): VkDebugReportCallbackCreateInfoEXT = +proc newVkDebugReportCallbackCreateInfoEXT*(sType: VkStructureType = VkStructureType.DebugReportCallbackCreateInfoEXT, pNext: pointer = nil, flags: VkDebugReportFlagsEXT = 0.VkDebugReportFlagsEXT, pfnCallback: PFN_vkDebugReportCallbackEXT, pUserData: pointer = nil): VkDebugReportCallbackCreateInfoEXT = result = VkDebugReportCallbackCreateInfoEXT( sType: sType, pNext: pNext, @@ -12133,7 +13382,7 @@ proc newVkDebugReportCallbackCreateInfoEXT*(sType: VkStructureType, pNext: point pUserData: pUserData, ) -proc newVkValidationFlagsEXT*(sType: VkStructureType, pNext: pointer = nil, disabledValidationCheckCount: uint32, pDisabledValidationChecks: ptr VkValidationCheckEXT): VkValidationFlagsEXT = +proc newVkValidationFlagsEXT*(sType: VkStructureType = VkStructureType.ValidationFlagsEXT, pNext: pointer = nil, disabledValidationCheckCount: uint32, pDisabledValidationChecks: ptr VkValidationCheckEXT): VkValidationFlagsEXT = result = VkValidationFlagsEXT( sType: sType, pNext: pNext, @@ -12141,7 +13390,7 @@ proc newVkValidationFlagsEXT*(sType: VkStructureType, pNext: pointer = nil, disa pDisabledValidationChecks: pDisabledValidationChecks, ) -proc newVkValidationFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, enabledValidationFeatureCount: uint32, pEnabledValidationFeatures: ptr VkValidationFeatureEnableEXT, disabledValidationFeatureCount: uint32, pDisabledValidationFeatures: ptr VkValidationFeatureDisableEXT): VkValidationFeaturesEXT = +proc newVkValidationFeaturesEXT*(sType: VkStructureType = VkStructureType.ValidationFeaturesEXT, pNext: pointer = nil, enabledValidationFeatureCount: uint32, pEnabledValidationFeatures: ptr VkValidationFeatureEnableEXT, disabledValidationFeatureCount: uint32, pDisabledValidationFeatures: ptr VkValidationFeatureDisableEXT): VkValidationFeaturesEXT = result = VkValidationFeaturesEXT( sType: sType, pNext: pNext, @@ -12151,7 +13400,7 @@ proc newVkValidationFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, e pDisabledValidationFeatures: pDisabledValidationFeatures, ) -proc newVkLayerSettingsCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, settingCount: uint32, pSettings: ptr VkLayerSettingEXT): VkLayerSettingsCreateInfoEXT = +proc newVkLayerSettingsCreateInfoEXT*(sType: VkStructureType = VkStructureType.LayerSettingsCreateInfoEXT, pNext: pointer = nil, settingCount: uint32, pSettings: ptr VkLayerSettingEXT): VkLayerSettingsCreateInfoEXT = result = VkLayerSettingsCreateInfoEXT( sType: sType, pNext: pNext, @@ -12168,7 +13417,7 @@ proc newVkLayerSettingEXT*(pLayerName: cstring, pSettingName: cstring, `type`: V pValues: pValues, ) -proc newVkApplicationParametersEXT*(sType: VkStructureType, pNext: pointer = nil, vendorID: uint32, deviceID: uint32, key: uint32, value: uint64): VkApplicationParametersEXT = +proc newVkApplicationParametersEXT*(sType: VkStructureType = VkStructureType.ApplicationParametersEXT, pNext: pointer = nil, vendorID: uint32, deviceID: uint32, key: uint32, value: uint64): VkApplicationParametersEXT = result = VkApplicationParametersEXT( sType: sType, pNext: pNext, @@ -12178,14 +13427,14 @@ proc newVkApplicationParametersEXT*(sType: VkStructureType, pNext: pointer = nil value: value, ) -proc newVkPipelineRasterizationStateRasterizationOrderAMD*(sType: VkStructureType, pNext: pointer = nil, rasterizationOrder: VkRasterizationOrderAMD): VkPipelineRasterizationStateRasterizationOrderAMD = +proc newVkPipelineRasterizationStateRasterizationOrderAMD*(sType: VkStructureType = VkStructureType.PipelineRasterizationStateRasterizationOrderAMD, pNext: pointer = nil, rasterizationOrder: VkRasterizationOrderAMD): VkPipelineRasterizationStateRasterizationOrderAMD = result = VkPipelineRasterizationStateRasterizationOrderAMD( sType: sType, pNext: pNext, rasterizationOrder: rasterizationOrder, ) -proc newVkDebugMarkerObjectNameInfoEXT*(sType: VkStructureType, pNext: pointer = nil, objectType: VkDebugReportObjectTypeEXT, `object`: uint64, pObjectName: cstring): VkDebugMarkerObjectNameInfoEXT = +proc newVkDebugMarkerObjectNameInfoEXT*(sType: VkStructureType = VkStructureType.DebugMarkerObjectNameInfoEXT, pNext: pointer = nil, objectType: VkDebugReportObjectTypeEXT, `object`: uint64, pObjectName: cstring): VkDebugMarkerObjectNameInfoEXT = result = VkDebugMarkerObjectNameInfoEXT( sType: sType, pNext: pNext, @@ -12194,7 +13443,7 @@ proc newVkDebugMarkerObjectNameInfoEXT*(sType: VkStructureType, pNext: pointer = pObjectName: pObjectName, ) -proc newVkDebugMarkerObjectTagInfoEXT*(sType: VkStructureType, pNext: pointer = nil, objectType: VkDebugReportObjectTypeEXT, `object`: uint64, tagName: uint64, tagSize: uint, pTag: pointer = nil): VkDebugMarkerObjectTagInfoEXT = +proc newVkDebugMarkerObjectTagInfoEXT*(sType: VkStructureType = VkStructureType.DebugMarkerObjectTagInfoEXT, pNext: pointer = nil, objectType: VkDebugReportObjectTypeEXT, `object`: uint64, tagName: uint64, tagSize: uint, pTag: pointer = nil): VkDebugMarkerObjectTagInfoEXT = result = VkDebugMarkerObjectTagInfoEXT( sType: sType, pNext: pNext, @@ -12205,7 +13454,7 @@ proc newVkDebugMarkerObjectTagInfoEXT*(sType: VkStructureType, pNext: pointer = pTag: pTag, ) -proc newVkDebugMarkerMarkerInfoEXT*(sType: VkStructureType, pNext: pointer = nil, pMarkerName: cstring, color: array[4, float32]): VkDebugMarkerMarkerInfoEXT = +proc newVkDebugMarkerMarkerInfoEXT*(sType: VkStructureType = VkStructureType.DebugMarkerMarkerInfoEXT, pNext: pointer = nil, pMarkerName: cstring, color: array[4, float32]): VkDebugMarkerMarkerInfoEXT = result = VkDebugMarkerMarkerInfoEXT( sType: sType, pNext: pNext, @@ -12213,21 +13462,21 @@ proc newVkDebugMarkerMarkerInfoEXT*(sType: VkStructureType, pNext: pointer = nil color: color, ) -proc newVkDedicatedAllocationImageCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, dedicatedAllocation: VkBool32): VkDedicatedAllocationImageCreateInfoNV = +proc newVkDedicatedAllocationImageCreateInfoNV*(sType: VkStructureType = VkStructureType.DedicatedAllocationImageCreateInfoNV, pNext: pointer = nil, dedicatedAllocation: VkBool32): VkDedicatedAllocationImageCreateInfoNV = result = VkDedicatedAllocationImageCreateInfoNV( sType: sType, pNext: pNext, dedicatedAllocation: dedicatedAllocation, ) -proc newVkDedicatedAllocationBufferCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, dedicatedAllocation: VkBool32): VkDedicatedAllocationBufferCreateInfoNV = +proc newVkDedicatedAllocationBufferCreateInfoNV*(sType: VkStructureType = VkStructureType.DedicatedAllocationBufferCreateInfoNV, pNext: pointer = nil, dedicatedAllocation: VkBool32): VkDedicatedAllocationBufferCreateInfoNV = result = VkDedicatedAllocationBufferCreateInfoNV( sType: sType, pNext: pNext, dedicatedAllocation: dedicatedAllocation, ) -proc newVkDedicatedAllocationMemoryAllocateInfoNV*(sType: VkStructureType, pNext: pointer = nil, image: VkImage, buffer: VkBuffer): VkDedicatedAllocationMemoryAllocateInfoNV = +proc newVkDedicatedAllocationMemoryAllocateInfoNV*(sType: VkStructureType = VkStructureType.DedicatedAllocationMemoryAllocateInfoNV, pNext: pointer = nil, image: VkImage, buffer: VkBuffer): VkDedicatedAllocationMemoryAllocateInfoNV = result = VkDedicatedAllocationMemoryAllocateInfoNV( sType: sType, pNext: pNext, @@ -12243,21 +13492,21 @@ proc newVkExternalImageFormatPropertiesNV*(imageFormatProperties: VkImageFormatP compatibleHandleTypes: compatibleHandleTypes, ) -proc newVkExternalMemoryImageCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlagsNV): VkExternalMemoryImageCreateInfoNV = +proc newVkExternalMemoryImageCreateInfoNV*(sType: VkStructureType = VkStructureType.ExternalMemoryImageCreateInfoNV, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlagsNV): VkExternalMemoryImageCreateInfoNV = result = VkExternalMemoryImageCreateInfoNV( sType: sType, pNext: pNext, handleTypes: handleTypes, ) -proc newVkExportMemoryAllocateInfoNV*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlagsNV): VkExportMemoryAllocateInfoNV = +proc newVkExportMemoryAllocateInfoNV*(sType: VkStructureType = VkStructureType.ExportMemoryAllocateInfoNV, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlagsNV): VkExportMemoryAllocateInfoNV = result = VkExportMemoryAllocateInfoNV( sType: sType, pNext: pNext, handleTypes: handleTypes, ) -proc newVkImportMemoryWin32HandleInfoNV*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagsNV, handle: HANDLE): VkImportMemoryWin32HandleInfoNV = +proc newVkImportMemoryWin32HandleInfoNV*(sType: VkStructureType = VkStructureType.ImportMemoryWin32HandleInfoNV, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagsNV, handle: HANDLE): VkImportMemoryWin32HandleInfoNV = result = VkImportMemoryWin32HandleInfoNV( sType: sType, pNext: pNext, @@ -12265,7 +13514,7 @@ proc newVkImportMemoryWin32HandleInfoNV*(sType: VkStructureType, pNext: pointer handle: handle, ) -proc newVkExportMemoryWin32HandleInfoNV*(sType: VkStructureType, pNext: pointer = nil, pAttributes: ptr SECURITY_ATTRIBUTES, dwAccess: DWORD): VkExportMemoryWin32HandleInfoNV = +proc newVkExportMemoryWin32HandleInfoNV*(sType: VkStructureType = VkStructureType.ExportMemoryWin32HandleInfoNV, pNext: pointer = nil, pAttributes: ptr SECURITY_ATTRIBUTES, dwAccess: DWORD): VkExportMemoryWin32HandleInfoNV = result = VkExportMemoryWin32HandleInfoNV( sType: sType, pNext: pNext, @@ -12273,14 +13522,14 @@ proc newVkExportMemoryWin32HandleInfoNV*(sType: VkStructureType, pNext: pointer dwAccess: dwAccess, ) -proc newVkExportMemorySciBufInfoNV*(sType: VkStructureType, pNext: pointer = nil, pAttributes: NvSciBufAttrList): VkExportMemorySciBufInfoNV = +proc newVkExportMemorySciBufInfoNV*(sType: VkStructureType = VkStructureType.ExportMemorySciBufInfoNV, pNext: pointer = nil, pAttributes: NvSciBufAttrList): VkExportMemorySciBufInfoNV = result = VkExportMemorySciBufInfoNV( sType: sType, pNext: pNext, pAttributes: pAttributes, ) -proc newVkImportMemorySciBufInfoNV*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, handle: NvSciBufObj): VkImportMemorySciBufInfoNV = +proc newVkImportMemorySciBufInfoNV*(sType: VkStructureType = VkStructureType.ImportMemorySciBufInfoNV, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, handle: NvSciBufObj): VkImportMemorySciBufInfoNV = result = VkImportMemorySciBufInfoNV( sType: sType, pNext: pNext, @@ -12288,7 +13537,7 @@ proc newVkImportMemorySciBufInfoNV*(sType: VkStructureType, pNext: pointer = nil handle: handle, ) -proc newVkMemoryGetSciBufInfoNV*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetSciBufInfoNV = +proc newVkMemoryGetSciBufInfoNV*(sType: VkStructureType = VkStructureType.MemoryGetSciBufInfoNV, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetSciBufInfoNV = result = VkMemoryGetSciBufInfoNV( sType: sType, pNext: pNext, @@ -12296,14 +13545,14 @@ proc newVkMemoryGetSciBufInfoNV*(sType: VkStructureType, pNext: pointer = nil, m handleType: handleType, ) -proc newVkMemorySciBufPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, memoryTypeBits: uint32): VkMemorySciBufPropertiesNV = +proc newVkMemorySciBufPropertiesNV*(sType: VkStructureType = VkStructureType.MemorySciBufPropertiesNV, pNext: pointer = nil, memoryTypeBits: uint32): VkMemorySciBufPropertiesNV = result = VkMemorySciBufPropertiesNV( sType: sType, pNext: pNext, memoryTypeBits: memoryTypeBits, ) -proc newVkPhysicalDeviceExternalMemorySciBufFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, sciBufImport: VkBool32, sciBufExport: VkBool32): VkPhysicalDeviceExternalMemorySciBufFeaturesNV = +proc newVkPhysicalDeviceExternalMemorySciBufFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceExternalMemorySciBufFeaturesNV, pNext: pointer = nil, sciBufImport: VkBool32, sciBufExport: VkBool32): VkPhysicalDeviceExternalMemorySciBufFeaturesNV = result = VkPhysicalDeviceExternalMemorySciBufFeaturesNV( sType: sType, pNext: pNext, @@ -12311,7 +13560,7 @@ proc newVkPhysicalDeviceExternalMemorySciBufFeaturesNV*(sType: VkStructureType, sciBufExport: sciBufExport, ) -proc newVkWin32KeyedMutexAcquireReleaseInfoNV*(sType: VkStructureType, pNext: pointer = nil, acquireCount: uint32, pAcquireSyncs: ptr VkDeviceMemory, pAcquireKeys: ptr uint64, pAcquireTimeoutMilliseconds: ptr uint32, releaseCount: uint32, pReleaseSyncs: ptr VkDeviceMemory, pReleaseKeys: ptr uint64): VkWin32KeyedMutexAcquireReleaseInfoNV = +proc newVkWin32KeyedMutexAcquireReleaseInfoNV*(sType: VkStructureType = VkStructureType.Win32KeyedMutexAcquireReleaseInfoNV, pNext: pointer = nil, acquireCount: uint32, pAcquireSyncs: ptr VkDeviceMemory, pAcquireKeys: ptr uint64, pAcquireTimeoutMilliseconds: ptr uint32, releaseCount: uint32, pReleaseSyncs: ptr VkDeviceMemory, pReleaseKeys: ptr uint64): VkWin32KeyedMutexAcquireReleaseInfoNV = result = VkWin32KeyedMutexAcquireReleaseInfoNV( sType: sType, pNext: pNext, @@ -12324,14 +13573,14 @@ proc newVkWin32KeyedMutexAcquireReleaseInfoNV*(sType: VkStructureType, pNext: po pReleaseKeys: pReleaseKeys, ) -proc newVkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, deviceGeneratedCommands: VkBool32): VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV = +proc newVkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceDeviceGeneratedCommandsFeaturesNV, pNext: pointer = nil, deviceGeneratedCommands: VkBool32): VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV = result = VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV( sType: sType, pNext: pNext, deviceGeneratedCommands: deviceGeneratedCommands, ) -proc newVkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, deviceGeneratedCompute: VkBool32, deviceGeneratedComputePipelines: VkBool32, deviceGeneratedComputeCaptureReplay: VkBool32): VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV = +proc newVkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV, pNext: pointer = nil, deviceGeneratedCompute: VkBool32, deviceGeneratedComputePipelines: VkBool32, deviceGeneratedComputeCaptureReplay: VkBool32): VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV = result = VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV( sType: sType, pNext: pNext, @@ -12361,7 +13610,7 @@ proc newVkPhysicalDevicePrivateDataFeatures*(sType: VkStructureType, pNext: poin privateData: privateData, ) -proc newVkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, maxGraphicsShaderGroupCount: uint32, maxIndirectSequenceCount: uint32, maxIndirectCommandsTokenCount: uint32, maxIndirectCommandsStreamCount: uint32, maxIndirectCommandsTokenOffset: uint32, maxIndirectCommandsStreamStride: uint32, minSequencesCountBufferOffsetAlignment: uint32, minSequencesIndexBufferOffsetAlignment: uint32, minIndirectCommandsBufferOffsetAlignment: uint32): VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV = +proc newVkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceDeviceGeneratedCommandsPropertiesNV, pNext: pointer = nil, maxGraphicsShaderGroupCount: uint32, maxIndirectSequenceCount: uint32, maxIndirectCommandsTokenCount: uint32, maxIndirectCommandsStreamCount: uint32, maxIndirectCommandsTokenOffset: uint32, maxIndirectCommandsStreamStride: uint32, minSequencesCountBufferOffsetAlignment: uint32, minSequencesIndexBufferOffsetAlignment: uint32, minIndirectCommandsBufferOffsetAlignment: uint32): VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV = result = VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV( sType: sType, pNext: pNext, @@ -12376,14 +13625,14 @@ proc newVkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV*(sType: VkStructureT minIndirectCommandsBufferOffsetAlignment: minIndirectCommandsBufferOffsetAlignment, ) -proc newVkPhysicalDeviceMultiDrawPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxMultiDrawCount: uint32): VkPhysicalDeviceMultiDrawPropertiesEXT = +proc newVkPhysicalDeviceMultiDrawPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceMultiDrawPropertiesEXT, pNext: pointer = nil, maxMultiDrawCount: uint32): VkPhysicalDeviceMultiDrawPropertiesEXT = result = VkPhysicalDeviceMultiDrawPropertiesEXT( sType: sType, pNext: pNext, maxMultiDrawCount: maxMultiDrawCount, ) -proc newVkGraphicsShaderGroupCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, pVertexInputState: ptr VkPipelineVertexInputStateCreateInfo, pTessellationState: ptr VkPipelineTessellationStateCreateInfo): VkGraphicsShaderGroupCreateInfoNV = +proc newVkGraphicsShaderGroupCreateInfoNV*(sType: VkStructureType = VkStructureType.GraphicsShaderGroupCreateInfoNV, pNext: pointer = nil, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, pVertexInputState: ptr VkPipelineVertexInputStateCreateInfo, pTessellationState: ptr VkPipelineTessellationStateCreateInfo): VkGraphicsShaderGroupCreateInfoNV = result = VkGraphicsShaderGroupCreateInfoNV( sType: sType, pNext: pNext, @@ -12393,7 +13642,7 @@ proc newVkGraphicsShaderGroupCreateInfoNV*(sType: VkStructureType, pNext: pointe pTessellationState: pTessellationState, ) -proc newVkGraphicsPipelineShaderGroupsCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, groupCount: uint32, pGroups: ptr VkGraphicsShaderGroupCreateInfoNV, pipelineCount: uint32, pPipelines: ptr VkPipeline): VkGraphicsPipelineShaderGroupsCreateInfoNV = +proc newVkGraphicsPipelineShaderGroupsCreateInfoNV*(sType: VkStructureType = VkStructureType.GraphicsPipelineShaderGroupsCreateInfoNV, pNext: pointer = nil, groupCount: uint32, pGroups: ptr VkGraphicsShaderGroupCreateInfoNV, pipelineCount: uint32, pPipelines: ptr VkPipeline): VkGraphicsPipelineShaderGroupsCreateInfoNV = result = VkGraphicsPipelineShaderGroupsCreateInfoNV( sType: sType, pNext: pNext, @@ -12433,7 +13682,7 @@ proc newVkIndirectCommandsStreamNV*(buffer: VkBuffer, offset: VkDeviceSize): VkI offset: offset, ) -proc newVkIndirectCommandsLayoutTokenNV*(sType: VkStructureType, pNext: pointer = nil, tokenType: VkIndirectCommandsTokenTypeNV, stream: uint32, offset: uint32, vertexBindingUnit: uint32, vertexDynamicStride: VkBool32, pushconstantPipelineLayout: VkPipelineLayout, pushconstantShaderStageFlags: VkShaderStageFlags, pushconstantOffset: uint32, pushconstantSize: uint32, indirectStateFlags: VkIndirectStateFlagsNV, indexTypeCount: uint32, pIndexTypes: ptr VkIndexType, pIndexTypeValues: ptr uint32): VkIndirectCommandsLayoutTokenNV = +proc newVkIndirectCommandsLayoutTokenNV*(sType: VkStructureType = VkStructureType.IndirectCommandsLayoutTokenNV, pNext: pointer = nil, tokenType: VkIndirectCommandsTokenTypeNV, stream: uint32, offset: uint32, vertexBindingUnit: uint32, vertexDynamicStride: VkBool32, pushconstantPipelineLayout: VkPipelineLayout, pushconstantShaderStageFlags: VkShaderStageFlags, pushconstantOffset: uint32, pushconstantSize: uint32, indirectStateFlags: VkIndirectStateFlagsNV, indexTypeCount: uint32, pIndexTypes: ptr VkIndexType, pIndexTypeValues: ptr uint32): VkIndirectCommandsLayoutTokenNV = result = VkIndirectCommandsLayoutTokenNV( sType: sType, pNext: pNext, @@ -12452,7 +13701,7 @@ proc newVkIndirectCommandsLayoutTokenNV*(sType: VkStructureType, pNext: pointer pIndexTypeValues: pIndexTypeValues, ) -proc newVkIndirectCommandsLayoutCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkIndirectCommandsLayoutUsageFlagsNV = 0.VkIndirectCommandsLayoutUsageFlagsNV, pipelineBindPoint: VkPipelineBindPoint, tokenCount: uint32, pTokens: ptr VkIndirectCommandsLayoutTokenNV, streamCount: uint32, pStreamStrides: ptr uint32): VkIndirectCommandsLayoutCreateInfoNV = +proc newVkIndirectCommandsLayoutCreateInfoNV*(sType: VkStructureType = VkStructureType.IndirectCommandsLayoutCreateInfoNV, pNext: pointer = nil, flags: VkIndirectCommandsLayoutUsageFlagsNV = 0.VkIndirectCommandsLayoutUsageFlagsNV, pipelineBindPoint: VkPipelineBindPoint, tokenCount: uint32, pTokens: ptr VkIndirectCommandsLayoutTokenNV, streamCount: uint32, pStreamStrides: ptr uint32): VkIndirectCommandsLayoutCreateInfoNV = result = VkIndirectCommandsLayoutCreateInfoNV( sType: sType, pNext: pNext, @@ -12464,7 +13713,7 @@ proc newVkIndirectCommandsLayoutCreateInfoNV*(sType: VkStructureType, pNext: poi pStreamStrides: pStreamStrides, ) -proc newVkGeneratedCommandsInfoNV*(sType: VkStructureType, pNext: pointer = nil, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline, indirectCommandsLayout: VkIndirectCommandsLayoutNV, streamCount: uint32, pStreams: ptr VkIndirectCommandsStreamNV, sequencesCount: uint32, preprocessBuffer: VkBuffer, preprocessOffset: VkDeviceSize, preprocessSize: VkDeviceSize, sequencesCountBuffer: VkBuffer, sequencesCountOffset: VkDeviceSize, sequencesIndexBuffer: VkBuffer, sequencesIndexOffset: VkDeviceSize): VkGeneratedCommandsInfoNV = +proc newVkGeneratedCommandsInfoNV*(sType: VkStructureType = VkStructureType.GeneratedCommandsInfoNV, pNext: pointer = nil, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline, indirectCommandsLayout: VkIndirectCommandsLayoutNV, streamCount: uint32, pStreams: ptr VkIndirectCommandsStreamNV, sequencesCount: uint32, preprocessBuffer: VkBuffer, preprocessOffset: VkDeviceSize, preprocessSize: VkDeviceSize, sequencesCountBuffer: VkBuffer, sequencesCountOffset: VkDeviceSize, sequencesIndexBuffer: VkBuffer, sequencesIndexOffset: VkDeviceSize): VkGeneratedCommandsInfoNV = result = VkGeneratedCommandsInfoNV( sType: sType, pNext: pNext, @@ -12483,7 +13732,7 @@ proc newVkGeneratedCommandsInfoNV*(sType: VkStructureType, pNext: pointer = nil, sequencesIndexOffset: sequencesIndexOffset, ) -proc newVkGeneratedCommandsMemoryRequirementsInfoNV*(sType: VkStructureType, pNext: pointer = nil, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline, indirectCommandsLayout: VkIndirectCommandsLayoutNV, maxSequencesCount: uint32): VkGeneratedCommandsMemoryRequirementsInfoNV = +proc newVkGeneratedCommandsMemoryRequirementsInfoNV*(sType: VkStructureType = VkStructureType.GeneratedCommandsMemoryRequirementsInfoNV, pNext: pointer = nil, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline, indirectCommandsLayout: VkIndirectCommandsLayoutNV, maxSequencesCount: uint32): VkGeneratedCommandsMemoryRequirementsInfoNV = result = VkGeneratedCommandsMemoryRequirementsInfoNV( sType: sType, pNext: pNext, @@ -12493,7 +13742,7 @@ proc newVkGeneratedCommandsMemoryRequirementsInfoNV*(sType: VkStructureType, pNe maxSequencesCount: maxSequencesCount, ) -proc newVkPipelineIndirectDeviceAddressInfoNV*(sType: VkStructureType, pNext: pointer = nil, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline): VkPipelineIndirectDeviceAddressInfoNV = +proc newVkPipelineIndirectDeviceAddressInfoNV*(sType: VkStructureType = VkStructureType.PipelineIndirectDeviceAddressInfoNV, pNext: pointer = nil, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline): VkPipelineIndirectDeviceAddressInfoNV = result = VkPipelineIndirectDeviceAddressInfoNV( sType: sType, pNext: pNext, @@ -12577,7 +13826,7 @@ proc newVkPhysicalDeviceSparseImageFormatInfo2*(sType: VkStructureType, pNext: p tiling: tiling, ) -proc newVkPhysicalDevicePushDescriptorPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, maxPushDescriptors: uint32): VkPhysicalDevicePushDescriptorPropertiesKHR = +proc newVkPhysicalDevicePushDescriptorPropertiesKHR*(sType: VkStructureType = VkStructureType.PhysicalDevicePushDescriptorPropertiesKHR, pNext: pointer = nil, maxPushDescriptors: uint32): VkPhysicalDevicePushDescriptorPropertiesKHR = result = VkPhysicalDevicePushDescriptorPropertiesKHR( sType: sType, pNext: pNext, @@ -12602,7 +13851,7 @@ proc newVkPhysicalDeviceDriverProperties*(sType: VkStructureType, pNext: pointer conformanceVersion: conformanceVersion, ) -proc newVkPresentRegionsKHR*(sType: VkStructureType, pNext: pointer = nil, swapchainCount: uint32, pRegions: ptr VkPresentRegionKHR): VkPresentRegionsKHR = +proc newVkPresentRegionsKHR*(sType: VkStructureType = VkStructureType.PresentRegionsKHR, pNext: pointer = nil, swapchainCount: uint32, pRegions: ptr VkPresentRegionKHR): VkPresentRegionsKHR = result = VkPresentRegionsKHR( sType: sType, pNext: pNext, @@ -12700,7 +13949,7 @@ proc newVkExportMemoryAllocateInfo*(sType: VkStructureType, pNext: pointer = nil handleTypes: handleTypes, ) -proc newVkImportMemoryWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, handle: HANDLE, name: LPCWSTR): VkImportMemoryWin32HandleInfoKHR = +proc newVkImportMemoryWin32HandleInfoKHR*(sType: VkStructureType = VkStructureType.ImportMemoryWin32HandleInfoKHR, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, handle: HANDLE, name: LPCWSTR): VkImportMemoryWin32HandleInfoKHR = result = VkImportMemoryWin32HandleInfoKHR( sType: sType, pNext: pNext, @@ -12709,7 +13958,7 @@ proc newVkImportMemoryWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer name: name, ) -proc newVkExportMemoryWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pAttributes: ptr SECURITY_ATTRIBUTES, dwAccess: DWORD, name: LPCWSTR): VkExportMemoryWin32HandleInfoKHR = +proc newVkExportMemoryWin32HandleInfoKHR*(sType: VkStructureType = VkStructureType.ExportMemoryWin32HandleInfoKHR, pNext: pointer = nil, pAttributes: ptr SECURITY_ATTRIBUTES, dwAccess: DWORD, name: LPCWSTR): VkExportMemoryWin32HandleInfoKHR = result = VkExportMemoryWin32HandleInfoKHR( sType: sType, pNext: pNext, @@ -12718,7 +13967,7 @@ proc newVkExportMemoryWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer name: name, ) -proc newVkImportMemoryZirconHandleInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, handle: zx_handle_t): VkImportMemoryZirconHandleInfoFUCHSIA = +proc newVkImportMemoryZirconHandleInfoFUCHSIA*(sType: VkStructureType = VkStructureType.ImportMemoryZirconHandleInfoFUCHSIA, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, handle: zx_handle_t): VkImportMemoryZirconHandleInfoFUCHSIA = result = VkImportMemoryZirconHandleInfoFUCHSIA( sType: sType, pNext: pNext, @@ -12726,14 +13975,14 @@ proc newVkImportMemoryZirconHandleInfoFUCHSIA*(sType: VkStructureType, pNext: po handle: handle, ) -proc newVkMemoryZirconHandlePropertiesFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryZirconHandlePropertiesFUCHSIA = +proc newVkMemoryZirconHandlePropertiesFUCHSIA*(sType: VkStructureType = VkStructureType.MemoryZirconHandlePropertiesFUCHSIA, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryZirconHandlePropertiesFUCHSIA = result = VkMemoryZirconHandlePropertiesFUCHSIA( sType: sType, pNext: pNext, memoryTypeBits: memoryTypeBits, ) -proc newVkMemoryGetZirconHandleInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetZirconHandleInfoFUCHSIA = +proc newVkMemoryGetZirconHandleInfoFUCHSIA*(sType: VkStructureType = VkStructureType.MemoryGetZirconHandleInfoFUCHSIA, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetZirconHandleInfoFUCHSIA = result = VkMemoryGetZirconHandleInfoFUCHSIA( sType: sType, pNext: pNext, @@ -12741,14 +13990,14 @@ proc newVkMemoryGetZirconHandleInfoFUCHSIA*(sType: VkStructureType, pNext: point handleType: handleType, ) -proc newVkMemoryWin32HandlePropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryWin32HandlePropertiesKHR = +proc newVkMemoryWin32HandlePropertiesKHR*(sType: VkStructureType = VkStructureType.MemoryWin32HandlePropertiesKHR, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryWin32HandlePropertiesKHR = result = VkMemoryWin32HandlePropertiesKHR( sType: sType, pNext: pNext, memoryTypeBits: memoryTypeBits, ) -proc newVkMemoryGetWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetWin32HandleInfoKHR = +proc newVkMemoryGetWin32HandleInfoKHR*(sType: VkStructureType = VkStructureType.MemoryGetWin32HandleInfoKHR, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetWin32HandleInfoKHR = result = VkMemoryGetWin32HandleInfoKHR( sType: sType, pNext: pNext, @@ -12756,7 +14005,7 @@ proc newVkMemoryGetWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = handleType: handleType, ) -proc newVkImportMemoryFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, fd: int): VkImportMemoryFdInfoKHR = +proc newVkImportMemoryFdInfoKHR*(sType: VkStructureType = VkStructureType.ImportMemoryFdInfoKHR, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, fd: int): VkImportMemoryFdInfoKHR = result = VkImportMemoryFdInfoKHR( sType: sType, pNext: pNext, @@ -12764,14 +14013,14 @@ proc newVkImportMemoryFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, h fd: fd, ) -proc newVkMemoryFdPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryFdPropertiesKHR = +proc newVkMemoryFdPropertiesKHR*(sType: VkStructureType = VkStructureType.MemoryFdPropertiesKHR, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryFdPropertiesKHR = result = VkMemoryFdPropertiesKHR( sType: sType, pNext: pNext, memoryTypeBits: memoryTypeBits, ) -proc newVkMemoryGetFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetFdInfoKHR = +proc newVkMemoryGetFdInfoKHR*(sType: VkStructureType = VkStructureType.MemoryGetFdInfoKHR, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetFdInfoKHR = result = VkMemoryGetFdInfoKHR( sType: sType, pNext: pNext, @@ -12779,7 +14028,7 @@ proc newVkMemoryGetFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, memo handleType: handleType, ) -proc newVkWin32KeyedMutexAcquireReleaseInfoKHR*(sType: VkStructureType, pNext: pointer = nil, acquireCount: uint32, pAcquireSyncs: ptr VkDeviceMemory, pAcquireKeys: ptr uint64, pAcquireTimeouts: ptr uint32, releaseCount: uint32, pReleaseSyncs: ptr VkDeviceMemory, pReleaseKeys: ptr uint64): VkWin32KeyedMutexAcquireReleaseInfoKHR = +proc newVkWin32KeyedMutexAcquireReleaseInfoKHR*(sType: VkStructureType = VkStructureType.Win32KeyedMutexAcquireReleaseInfoKHR, pNext: pointer = nil, acquireCount: uint32, pAcquireSyncs: ptr VkDeviceMemory, pAcquireKeys: ptr uint64, pAcquireTimeouts: ptr uint32, releaseCount: uint32, pReleaseSyncs: ptr VkDeviceMemory, pReleaseKeys: ptr uint64): VkWin32KeyedMutexAcquireReleaseInfoKHR = result = VkWin32KeyedMutexAcquireReleaseInfoKHR( sType: sType, pNext: pNext, @@ -12815,7 +14064,7 @@ proc newVkExportSemaphoreCreateInfo*(sType: VkStructureType, pNext: pointer = ni handleTypes: handleTypes, ) -proc newVkImportSemaphoreWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, flags: VkSemaphoreImportFlags = 0.VkSemaphoreImportFlags, handleType: VkExternalSemaphoreHandleTypeFlagBits, handle: HANDLE, name: LPCWSTR): VkImportSemaphoreWin32HandleInfoKHR = +proc newVkImportSemaphoreWin32HandleInfoKHR*(sType: VkStructureType = VkStructureType.ImportSemaphoreWin32HandleInfoKHR, pNext: pointer = nil, semaphore: VkSemaphore, flags: VkSemaphoreImportFlags = 0.VkSemaphoreImportFlags, handleType: VkExternalSemaphoreHandleTypeFlagBits, handle: HANDLE, name: LPCWSTR): VkImportSemaphoreWin32HandleInfoKHR = result = VkImportSemaphoreWin32HandleInfoKHR( sType: sType, pNext: pNext, @@ -12826,7 +14075,7 @@ proc newVkImportSemaphoreWin32HandleInfoKHR*(sType: VkStructureType, pNext: poin name: name, ) -proc newVkExportSemaphoreWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pAttributes: ptr SECURITY_ATTRIBUTES, dwAccess: DWORD, name: LPCWSTR): VkExportSemaphoreWin32HandleInfoKHR = +proc newVkExportSemaphoreWin32HandleInfoKHR*(sType: VkStructureType = VkStructureType.ExportSemaphoreWin32HandleInfoKHR, pNext: pointer = nil, pAttributes: ptr SECURITY_ATTRIBUTES, dwAccess: DWORD, name: LPCWSTR): VkExportSemaphoreWin32HandleInfoKHR = result = VkExportSemaphoreWin32HandleInfoKHR( sType: sType, pNext: pNext, @@ -12835,7 +14084,7 @@ proc newVkExportSemaphoreWin32HandleInfoKHR*(sType: VkStructureType, pNext: poin name: name, ) -proc newVkD3D12FenceSubmitInfoKHR*(sType: VkStructureType, pNext: pointer = nil, waitSemaphoreValuesCount: uint32, pWaitSemaphoreValues: ptr uint64, signalSemaphoreValuesCount: uint32, pSignalSemaphoreValues: ptr uint64): VkD3D12FenceSubmitInfoKHR = +proc newVkD3D12FenceSubmitInfoKHR*(sType: VkStructureType = VkStructureType.D3D12FenceSubmitInfoKHR, pNext: pointer = nil, waitSemaphoreValuesCount: uint32, pWaitSemaphoreValues: ptr uint64, signalSemaphoreValuesCount: uint32, pSignalSemaphoreValues: ptr uint64): VkD3D12FenceSubmitInfoKHR = result = VkD3D12FenceSubmitInfoKHR( sType: sType, pNext: pNext, @@ -12845,7 +14094,7 @@ proc newVkD3D12FenceSubmitInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pSignalSemaphoreValues: pSignalSemaphoreValues, ) -proc newVkSemaphoreGetWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetWin32HandleInfoKHR = +proc newVkSemaphoreGetWin32HandleInfoKHR*(sType: VkStructureType = VkStructureType.SemaphoreGetWin32HandleInfoKHR, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetWin32HandleInfoKHR = result = VkSemaphoreGetWin32HandleInfoKHR( sType: sType, pNext: pNext, @@ -12853,7 +14102,7 @@ proc newVkSemaphoreGetWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer handleType: handleType, ) -proc newVkImportSemaphoreFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, flags: VkSemaphoreImportFlags = 0.VkSemaphoreImportFlags, handleType: VkExternalSemaphoreHandleTypeFlagBits, fd: int): VkImportSemaphoreFdInfoKHR = +proc newVkImportSemaphoreFdInfoKHR*(sType: VkStructureType = VkStructureType.ImportSemaphoreFdInfoKHR, pNext: pointer = nil, semaphore: VkSemaphore, flags: VkSemaphoreImportFlags = 0.VkSemaphoreImportFlags, handleType: VkExternalSemaphoreHandleTypeFlagBits, fd: int): VkImportSemaphoreFdInfoKHR = result = VkImportSemaphoreFdInfoKHR( sType: sType, pNext: pNext, @@ -12863,7 +14112,7 @@ proc newVkImportSemaphoreFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil fd: fd, ) -proc newVkSemaphoreGetFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetFdInfoKHR = +proc newVkSemaphoreGetFdInfoKHR*(sType: VkStructureType = VkStructureType.SemaphoreGetFdInfoKHR, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetFdInfoKHR = result = VkSemaphoreGetFdInfoKHR( sType: sType, pNext: pNext, @@ -12871,7 +14120,7 @@ proc newVkSemaphoreGetFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, s handleType: handleType, ) -proc newVkImportSemaphoreZirconHandleInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, flags: VkSemaphoreImportFlags = 0.VkSemaphoreImportFlags, handleType: VkExternalSemaphoreHandleTypeFlagBits, zirconHandle: zx_handle_t): VkImportSemaphoreZirconHandleInfoFUCHSIA = +proc newVkImportSemaphoreZirconHandleInfoFUCHSIA*(sType: VkStructureType = VkStructureType.ImportSemaphoreZirconHandleInfoFUCHSIA, pNext: pointer = nil, semaphore: VkSemaphore, flags: VkSemaphoreImportFlags = 0.VkSemaphoreImportFlags, handleType: VkExternalSemaphoreHandleTypeFlagBits, zirconHandle: zx_handle_t): VkImportSemaphoreZirconHandleInfoFUCHSIA = result = VkImportSemaphoreZirconHandleInfoFUCHSIA( sType: sType, pNext: pNext, @@ -12881,7 +14130,7 @@ proc newVkImportSemaphoreZirconHandleInfoFUCHSIA*(sType: VkStructureType, pNext: zirconHandle: zirconHandle, ) -proc newVkSemaphoreGetZirconHandleInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetZirconHandleInfoFUCHSIA = +proc newVkSemaphoreGetZirconHandleInfoFUCHSIA*(sType: VkStructureType = VkStructureType.SemaphoreGetZirconHandleInfoFUCHSIA, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetZirconHandleInfoFUCHSIA = result = VkSemaphoreGetZirconHandleInfoFUCHSIA( sType: sType, pNext: pNext, @@ -12912,7 +14161,7 @@ proc newVkExportFenceCreateInfo*(sType: VkStructureType, pNext: pointer = nil, h handleTypes: handleTypes, ) -proc newVkImportFenceWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, fence: VkFence, flags: VkFenceImportFlags = 0.VkFenceImportFlags, handleType: VkExternalFenceHandleTypeFlagBits, handle: HANDLE, name: LPCWSTR): VkImportFenceWin32HandleInfoKHR = +proc newVkImportFenceWin32HandleInfoKHR*(sType: VkStructureType = VkStructureType.ImportFenceWin32HandleInfoKHR, pNext: pointer = nil, fence: VkFence, flags: VkFenceImportFlags = 0.VkFenceImportFlags, handleType: VkExternalFenceHandleTypeFlagBits, handle: HANDLE, name: LPCWSTR): VkImportFenceWin32HandleInfoKHR = result = VkImportFenceWin32HandleInfoKHR( sType: sType, pNext: pNext, @@ -12923,7 +14172,7 @@ proc newVkImportFenceWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer name: name, ) -proc newVkExportFenceWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pAttributes: ptr SECURITY_ATTRIBUTES, dwAccess: DWORD, name: LPCWSTR): VkExportFenceWin32HandleInfoKHR = +proc newVkExportFenceWin32HandleInfoKHR*(sType: VkStructureType = VkStructureType.ExportFenceWin32HandleInfoKHR, pNext: pointer = nil, pAttributes: ptr SECURITY_ATTRIBUTES, dwAccess: DWORD, name: LPCWSTR): VkExportFenceWin32HandleInfoKHR = result = VkExportFenceWin32HandleInfoKHR( sType: sType, pNext: pNext, @@ -12932,7 +14181,7 @@ proc newVkExportFenceWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer name: name, ) -proc newVkFenceGetWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = nil, fence: VkFence, handleType: VkExternalFenceHandleTypeFlagBits): VkFenceGetWin32HandleInfoKHR = +proc newVkFenceGetWin32HandleInfoKHR*(sType: VkStructureType = VkStructureType.FenceGetWin32HandleInfoKHR, pNext: pointer = nil, fence: VkFence, handleType: VkExternalFenceHandleTypeFlagBits): VkFenceGetWin32HandleInfoKHR = result = VkFenceGetWin32HandleInfoKHR( sType: sType, pNext: pNext, @@ -12940,7 +14189,7 @@ proc newVkFenceGetWin32HandleInfoKHR*(sType: VkStructureType, pNext: pointer = n handleType: handleType, ) -proc newVkImportFenceFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, fence: VkFence, flags: VkFenceImportFlags = 0.VkFenceImportFlags, handleType: VkExternalFenceHandleTypeFlagBits, fd: int): VkImportFenceFdInfoKHR = +proc newVkImportFenceFdInfoKHR*(sType: VkStructureType = VkStructureType.ImportFenceFdInfoKHR, pNext: pointer = nil, fence: VkFence, flags: VkFenceImportFlags = 0.VkFenceImportFlags, handleType: VkExternalFenceHandleTypeFlagBits, fd: int): VkImportFenceFdInfoKHR = result = VkImportFenceFdInfoKHR( sType: sType, pNext: pNext, @@ -12950,7 +14199,7 @@ proc newVkImportFenceFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, fe fd: fd, ) -proc newVkFenceGetFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, fence: VkFence, handleType: VkExternalFenceHandleTypeFlagBits): VkFenceGetFdInfoKHR = +proc newVkFenceGetFdInfoKHR*(sType: VkStructureType = VkStructureType.FenceGetFdInfoKHR, pNext: pointer = nil, fence: VkFence, handleType: VkExternalFenceHandleTypeFlagBits): VkFenceGetFdInfoKHR = result = VkFenceGetFdInfoKHR( sType: sType, pNext: pNext, @@ -12958,14 +14207,14 @@ proc newVkFenceGetFdInfoKHR*(sType: VkStructureType, pNext: pointer = nil, fence handleType: handleType, ) -proc newVkExportFenceSciSyncInfoNV*(sType: VkStructureType, pNext: pointer = nil, pAttributes: NvSciSyncAttrList): VkExportFenceSciSyncInfoNV = +proc newVkExportFenceSciSyncInfoNV*(sType: VkStructureType = VkStructureType.ExportFenceSciSyncInfoNV, pNext: pointer = nil, pAttributes: NvSciSyncAttrList): VkExportFenceSciSyncInfoNV = result = VkExportFenceSciSyncInfoNV( sType: sType, pNext: pNext, pAttributes: pAttributes, ) -proc newVkImportFenceSciSyncInfoNV*(sType: VkStructureType, pNext: pointer = nil, fence: VkFence, handleType: VkExternalFenceHandleTypeFlagBits, handle: pointer = nil): VkImportFenceSciSyncInfoNV = +proc newVkImportFenceSciSyncInfoNV*(sType: VkStructureType = VkStructureType.ImportFenceSciSyncInfoNV, pNext: pointer = nil, fence: VkFence, handleType: VkExternalFenceHandleTypeFlagBits, handle: pointer = nil): VkImportFenceSciSyncInfoNV = result = VkImportFenceSciSyncInfoNV( sType: sType, pNext: pNext, @@ -12974,7 +14223,7 @@ proc newVkImportFenceSciSyncInfoNV*(sType: VkStructureType, pNext: pointer = nil handle: handle, ) -proc newVkFenceGetSciSyncInfoNV*(sType: VkStructureType, pNext: pointer = nil, fence: VkFence, handleType: VkExternalFenceHandleTypeFlagBits): VkFenceGetSciSyncInfoNV = +proc newVkFenceGetSciSyncInfoNV*(sType: VkStructureType = VkStructureType.FenceGetSciSyncInfoNV, pNext: pointer = nil, fence: VkFence, handleType: VkExternalFenceHandleTypeFlagBits): VkFenceGetSciSyncInfoNV = result = VkFenceGetSciSyncInfoNV( sType: sType, pNext: pNext, @@ -12982,14 +14231,14 @@ proc newVkFenceGetSciSyncInfoNV*(sType: VkStructureType, pNext: pointer = nil, f handleType: handleType, ) -proc newVkExportSemaphoreSciSyncInfoNV*(sType: VkStructureType, pNext: pointer = nil, pAttributes: NvSciSyncAttrList): VkExportSemaphoreSciSyncInfoNV = +proc newVkExportSemaphoreSciSyncInfoNV*(sType: VkStructureType = VkStructureType.ExportSemaphoreSciSyncInfoNV, pNext: pointer = nil, pAttributes: NvSciSyncAttrList): VkExportSemaphoreSciSyncInfoNV = result = VkExportSemaphoreSciSyncInfoNV( sType: sType, pNext: pNext, pAttributes: pAttributes, ) -proc newVkImportSemaphoreSciSyncInfoNV*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits, handle: pointer = nil): VkImportSemaphoreSciSyncInfoNV = +proc newVkImportSemaphoreSciSyncInfoNV*(sType: VkStructureType = VkStructureType.ImportSemaphoreSciSyncInfoNV, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits, handle: pointer = nil): VkImportSemaphoreSciSyncInfoNV = result = VkImportSemaphoreSciSyncInfoNV( sType: sType, pNext: pNext, @@ -12998,7 +14247,7 @@ proc newVkImportSemaphoreSciSyncInfoNV*(sType: VkStructureType, pNext: pointer = handle: handle, ) -proc newVkSemaphoreGetSciSyncInfoNV*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetSciSyncInfoNV = +proc newVkSemaphoreGetSciSyncInfoNV*(sType: VkStructureType = VkStructureType.SemaphoreGetSciSyncInfoNV, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetSciSyncInfoNV = result = VkSemaphoreGetSciSyncInfoNV( sType: sType, pNext: pNext, @@ -13006,7 +14255,7 @@ proc newVkSemaphoreGetSciSyncInfoNV*(sType: VkStructureType, pNext: pointer = ni handleType: handleType, ) -proc newVkSciSyncAttributesInfoNV*(sType: VkStructureType, pNext: pointer = nil, clientType: VkSciSyncClientTypeNV, primitiveType: VkSciSyncPrimitiveTypeNV): VkSciSyncAttributesInfoNV = +proc newVkSciSyncAttributesInfoNV*(sType: VkStructureType = VkStructureType.SciSyncAttributesInfoNV, pNext: pointer = nil, clientType: VkSciSyncClientTypeNV, primitiveType: VkSciSyncPrimitiveTypeNV): VkSciSyncAttributesInfoNV = result = VkSciSyncAttributesInfoNV( sType: sType, pNext: pNext, @@ -13014,7 +14263,7 @@ proc newVkSciSyncAttributesInfoNV*(sType: VkStructureType, pNext: pointer = nil, primitiveType: primitiveType, ) -proc newVkPhysicalDeviceExternalSciSyncFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, sciSyncFence: VkBool32, sciSyncSemaphore: VkBool32, sciSyncImport: VkBool32, sciSyncExport: VkBool32): VkPhysicalDeviceExternalSciSyncFeaturesNV = +proc newVkPhysicalDeviceExternalSciSyncFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceExternalSciSyncFeaturesNV, pNext: pointer = nil, sciSyncFence: VkBool32, sciSyncSemaphore: VkBool32, sciSyncImport: VkBool32, sciSyncExport: VkBool32): VkPhysicalDeviceExternalSciSyncFeaturesNV = result = VkPhysicalDeviceExternalSciSyncFeaturesNV( sType: sType, pNext: pNext, @@ -13024,7 +14273,7 @@ proc newVkPhysicalDeviceExternalSciSyncFeaturesNV*(sType: VkStructureType, pNext sciSyncExport: sciSyncExport, ) -proc newVkPhysicalDeviceExternalSciSync2FeaturesNV*(sType: VkStructureType, pNext: pointer = nil, sciSyncFence: VkBool32, sciSyncSemaphore2: VkBool32, sciSyncImport: VkBool32, sciSyncExport: VkBool32): VkPhysicalDeviceExternalSciSync2FeaturesNV = +proc newVkPhysicalDeviceExternalSciSync2FeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceExternalSciSync2FeaturesNV, pNext: pointer = nil, sciSyncFence: VkBool32, sciSyncSemaphore2: VkBool32, sciSyncImport: VkBool32, sciSyncExport: VkBool32): VkPhysicalDeviceExternalSciSync2FeaturesNV = result = VkPhysicalDeviceExternalSciSync2FeaturesNV( sType: sType, pNext: pNext, @@ -13034,14 +14283,14 @@ proc newVkPhysicalDeviceExternalSciSync2FeaturesNV*(sType: VkStructureType, pNex sciSyncExport: sciSyncExport, ) -proc newVkSemaphoreSciSyncPoolCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, handle: NvSciSyncObj): VkSemaphoreSciSyncPoolCreateInfoNV = +proc newVkSemaphoreSciSyncPoolCreateInfoNV*(sType: VkStructureType = VkStructureType.SemaphoreSciSyncPoolCreateInfoNV, pNext: pointer = nil, handle: NvSciSyncObj): VkSemaphoreSciSyncPoolCreateInfoNV = result = VkSemaphoreSciSyncPoolCreateInfoNV( sType: sType, pNext: pNext, handle: handle, ) -proc newVkSemaphoreSciSyncCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, semaphorePool: VkSemaphoreSciSyncPoolNV, pFence: ptr NvSciSyncFence): VkSemaphoreSciSyncCreateInfoNV = +proc newVkSemaphoreSciSyncCreateInfoNV*(sType: VkStructureType = VkStructureType.SemaphoreSciSyncCreateInfoNV, pNext: pointer = nil, semaphorePool: VkSemaphoreSciSyncPoolNV, pFence: ptr NvSciSyncFence): VkSemaphoreSciSyncCreateInfoNV = result = VkSemaphoreSciSyncCreateInfoNV( sType: sType, pNext: pNext, @@ -13049,7 +14298,7 @@ proc newVkSemaphoreSciSyncCreateInfoNV*(sType: VkStructureType, pNext: pointer = pFence: pFence, ) -proc newVkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, semaphoreSciSyncPoolRequestCount: uint32): VkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV = +proc newVkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV*(sType: VkStructureType = VkStructureType.DeviceSemaphoreSciSyncPoolReservationCreateInfoNV, pNext: pointer = nil, semaphoreSciSyncPoolRequestCount: uint32): VkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV = result = VkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV( sType: sType, pNext: pNext, @@ -13085,7 +14334,7 @@ proc newVkRenderPassMultiviewCreateInfo*(sType: VkStructureType, pNext: pointer pCorrelationMasks: pCorrelationMasks, ) -proc newVkSurfaceCapabilities2EXT*(sType: VkStructureType, pNext: pointer = nil, minImageCount: uint32, maxImageCount: uint32, currentExtent: VkExtent2D, minImageExtent: VkExtent2D, maxImageExtent: VkExtent2D, maxImageArrayLayers: uint32, supportedTransforms: VkSurfaceTransformFlagsKHR, currentTransform: VkSurfaceTransformFlagBitsKHR, supportedCompositeAlpha: VkCompositeAlphaFlagsKHR, supportedUsageFlags: VkImageUsageFlags, supportedSurfaceCounters: VkSurfaceCounterFlagsEXT): VkSurfaceCapabilities2EXT = +proc newVkSurfaceCapabilities2EXT*(sType: VkStructureType = VkStructureType.SurfaceCapabilities2EXT, pNext: pointer = nil, minImageCount: uint32, maxImageCount: uint32, currentExtent: VkExtent2D, minImageExtent: VkExtent2D, maxImageExtent: VkExtent2D, maxImageArrayLayers: uint32, supportedTransforms: VkSurfaceTransformFlagsKHR, currentTransform: VkSurfaceTransformFlagBitsKHR, supportedCompositeAlpha: VkCompositeAlphaFlagsKHR, supportedUsageFlags: VkImageUsageFlags, supportedSurfaceCounters: VkSurfaceCounterFlagsEXT): VkSurfaceCapabilities2EXT = result = VkSurfaceCapabilities2EXT( sType: sType, pNext: pNext, @@ -13102,28 +14351,28 @@ proc newVkSurfaceCapabilities2EXT*(sType: VkStructureType, pNext: pointer = nil, supportedSurfaceCounters: supportedSurfaceCounters, ) -proc newVkDisplayPowerInfoEXT*(sType: VkStructureType, pNext: pointer = nil, powerState: VkDisplayPowerStateEXT): VkDisplayPowerInfoEXT = +proc newVkDisplayPowerInfoEXT*(sType: VkStructureType = VkStructureType.DisplayPowerInfoEXT, pNext: pointer = nil, powerState: VkDisplayPowerStateEXT): VkDisplayPowerInfoEXT = result = VkDisplayPowerInfoEXT( sType: sType, pNext: pNext, powerState: powerState, ) -proc newVkDeviceEventInfoEXT*(sType: VkStructureType, pNext: pointer = nil, deviceEvent: VkDeviceEventTypeEXT): VkDeviceEventInfoEXT = +proc newVkDeviceEventInfoEXT*(sType: VkStructureType = VkStructureType.DeviceEventInfoEXT, pNext: pointer = nil, deviceEvent: VkDeviceEventTypeEXT): VkDeviceEventInfoEXT = result = VkDeviceEventInfoEXT( sType: sType, pNext: pNext, deviceEvent: deviceEvent, ) -proc newVkDisplayEventInfoEXT*(sType: VkStructureType, pNext: pointer = nil, displayEvent: VkDisplayEventTypeEXT): VkDisplayEventInfoEXT = +proc newVkDisplayEventInfoEXT*(sType: VkStructureType = VkStructureType.DisplayEventInfoEXT, pNext: pointer = nil, displayEvent: VkDisplayEventTypeEXT): VkDisplayEventInfoEXT = result = VkDisplayEventInfoEXT( sType: sType, pNext: pNext, displayEvent: displayEvent, ) -proc newVkSwapchainCounterCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, surfaceCounters: VkSurfaceCounterFlagsEXT): VkSwapchainCounterCreateInfoEXT = +proc newVkSwapchainCounterCreateInfoEXT*(sType: VkStructureType = VkStructureType.SwapchainCounterCreateInfoEXT, pNext: pointer = nil, surfaceCounters: VkSurfaceCounterFlagsEXT): VkSwapchainCounterCreateInfoEXT = result = VkSwapchainCounterCreateInfoEXT( sType: sType, pNext: pNext, @@ -13219,7 +14468,7 @@ proc newVkDeviceGroupBindSparseInfo*(sType: VkStructureType, pNext: pointer = ni memoryDeviceIndex: memoryDeviceIndex, ) -proc newVkDeviceGroupPresentCapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, presentMask: array[VK_MAX_DEVICE_GROUP_SIZE, uint32], modes: VkDeviceGroupPresentModeFlagsKHR): VkDeviceGroupPresentCapabilitiesKHR = +proc newVkDeviceGroupPresentCapabilitiesKHR*(sType: VkStructureType = VkStructureType.DeviceGroupPresentCapabilitiesKHR, pNext: pointer = nil, presentMask: array[VK_MAX_DEVICE_GROUP_SIZE, uint32], modes: VkDeviceGroupPresentModeFlagsKHR): VkDeviceGroupPresentCapabilitiesKHR = result = VkDeviceGroupPresentCapabilitiesKHR( sType: sType, pNext: pNext, @@ -13227,14 +14476,14 @@ proc newVkDeviceGroupPresentCapabilitiesKHR*(sType: VkStructureType, pNext: poin modes: modes, ) -proc newVkImageSwapchainCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, swapchain: VkSwapchainKHR): VkImageSwapchainCreateInfoKHR = +proc newVkImageSwapchainCreateInfoKHR*(sType: VkStructureType = VkStructureType.ImageSwapchainCreateInfoKHR, pNext: pointer = nil, swapchain: VkSwapchainKHR): VkImageSwapchainCreateInfoKHR = result = VkImageSwapchainCreateInfoKHR( sType: sType, pNext: pNext, swapchain: swapchain, ) -proc newVkBindImageMemorySwapchainInfoKHR*(sType: VkStructureType, pNext: pointer = nil, swapchain: VkSwapchainKHR, imageIndex: uint32): VkBindImageMemorySwapchainInfoKHR = +proc newVkBindImageMemorySwapchainInfoKHR*(sType: VkStructureType = VkStructureType.BindImageMemorySwapchainInfoKHR, pNext: pointer = nil, swapchain: VkSwapchainKHR, imageIndex: uint32): VkBindImageMemorySwapchainInfoKHR = result = VkBindImageMemorySwapchainInfoKHR( sType: sType, pNext: pNext, @@ -13242,7 +14491,7 @@ proc newVkBindImageMemorySwapchainInfoKHR*(sType: VkStructureType, pNext: pointe imageIndex: imageIndex, ) -proc newVkAcquireNextImageInfoKHR*(sType: VkStructureType, pNext: pointer = nil, swapchain: VkSwapchainKHR, timeout: uint64, semaphore: VkSemaphore, fence: VkFence, deviceMask: uint32): VkAcquireNextImageInfoKHR = +proc newVkAcquireNextImageInfoKHR*(sType: VkStructureType = VkStructureType.AcquireNextImageInfoKHR, pNext: pointer = nil, swapchain: VkSwapchainKHR, timeout: uint64, semaphore: VkSemaphore, fence: VkFence, deviceMask: uint32): VkAcquireNextImageInfoKHR = result = VkAcquireNextImageInfoKHR( sType: sType, pNext: pNext, @@ -13253,7 +14502,7 @@ proc newVkAcquireNextImageInfoKHR*(sType: VkStructureType, pNext: pointer = nil, deviceMask: deviceMask, ) -proc newVkDeviceGroupPresentInfoKHR*(sType: VkStructureType, pNext: pointer = nil, swapchainCount: uint32, pDeviceMasks: ptr uint32, mode: VkDeviceGroupPresentModeFlagBitsKHR): VkDeviceGroupPresentInfoKHR = +proc newVkDeviceGroupPresentInfoKHR*(sType: VkStructureType = VkStructureType.DeviceGroupPresentInfoKHR, pNext: pointer = nil, swapchainCount: uint32, pDeviceMasks: ptr uint32, mode: VkDeviceGroupPresentModeFlagBitsKHR): VkDeviceGroupPresentInfoKHR = result = VkDeviceGroupPresentInfoKHR( sType: sType, pNext: pNext, @@ -13270,7 +14519,7 @@ proc newVkDeviceGroupDeviceCreateInfo*(sType: VkStructureType, pNext: pointer = pPhysicalDevices: pPhysicalDevices, ) -proc newVkDeviceGroupSwapchainCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, modes: VkDeviceGroupPresentModeFlagsKHR): VkDeviceGroupSwapchainCreateInfoKHR = +proc newVkDeviceGroupSwapchainCreateInfoKHR*(sType: VkStructureType = VkStructureType.DeviceGroupSwapchainCreateInfoKHR, pNext: pointer = nil, modes: VkDeviceGroupPresentModeFlagsKHR): VkDeviceGroupSwapchainCreateInfoKHR = result = VkDeviceGroupSwapchainCreateInfoKHR( sType: sType, pNext: pNext, @@ -13307,14 +14556,14 @@ proc newVkXYColorEXT*(x: float32, y: float32): VkXYColorEXT = y: y, ) -proc newVkPhysicalDevicePresentIdFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, presentId: VkBool32): VkPhysicalDevicePresentIdFeaturesKHR = +proc newVkPhysicalDevicePresentIdFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDevicePresentIdFeaturesKHR, pNext: pointer = nil, presentId: VkBool32): VkPhysicalDevicePresentIdFeaturesKHR = result = VkPhysicalDevicePresentIdFeaturesKHR( sType: sType, pNext: pNext, presentId: presentId, ) -proc newVkPresentIdKHR*(sType: VkStructureType, pNext: pointer = nil, swapchainCount: uint32, pPresentIds: ptr uint64): VkPresentIdKHR = +proc newVkPresentIdKHR*(sType: VkStructureType = VkStructureType.PresentIdKHR, pNext: pointer = nil, swapchainCount: uint32, pPresentIds: ptr uint64): VkPresentIdKHR = result = VkPresentIdKHR( sType: sType, pNext: pNext, @@ -13322,14 +14571,14 @@ proc newVkPresentIdKHR*(sType: VkStructureType, pNext: pointer = nil, swapchainC pPresentIds: pPresentIds, ) -proc newVkPhysicalDevicePresentWaitFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, presentWait: VkBool32): VkPhysicalDevicePresentWaitFeaturesKHR = +proc newVkPhysicalDevicePresentWaitFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDevicePresentWaitFeaturesKHR, pNext: pointer = nil, presentWait: VkBool32): VkPhysicalDevicePresentWaitFeaturesKHR = result = VkPhysicalDevicePresentWaitFeaturesKHR( sType: sType, pNext: pNext, presentWait: presentWait, ) -proc newVkHdrMetadataEXT*(sType: VkStructureType, pNext: pointer = nil, displayPrimaryRed: VkXYColorEXT, displayPrimaryGreen: VkXYColorEXT, displayPrimaryBlue: VkXYColorEXT, whitePoint: VkXYColorEXT, maxLuminance: float32, minLuminance: float32, maxContentLightLevel: float32, maxFrameAverageLightLevel: float32): VkHdrMetadataEXT = +proc newVkHdrMetadataEXT*(sType: VkStructureType = VkStructureType.HdrMetadataEXT, pNext: pointer = nil, displayPrimaryRed: VkXYColorEXT, displayPrimaryGreen: VkXYColorEXT, displayPrimaryBlue: VkXYColorEXT, whitePoint: VkXYColorEXT, maxLuminance: float32, minLuminance: float32, maxContentLightLevel: float32, maxFrameAverageLightLevel: float32): VkHdrMetadataEXT = result = VkHdrMetadataEXT( sType: sType, pNext: pNext, @@ -13343,14 +14592,14 @@ proc newVkHdrMetadataEXT*(sType: VkStructureType, pNext: pointer = nil, displayP maxFrameAverageLightLevel: maxFrameAverageLightLevel, ) -proc newVkDisplayNativeHdrSurfaceCapabilitiesAMD*(sType: VkStructureType, pNext: pointer = nil, localDimmingSupport: VkBool32): VkDisplayNativeHdrSurfaceCapabilitiesAMD = +proc newVkDisplayNativeHdrSurfaceCapabilitiesAMD*(sType: VkStructureType = VkStructureType.DisplayNativeHdrSurfaceCapabilitiesAMD, pNext: pointer = nil, localDimmingSupport: VkBool32): VkDisplayNativeHdrSurfaceCapabilitiesAMD = result = VkDisplayNativeHdrSurfaceCapabilitiesAMD( sType: sType, pNext: pNext, localDimmingSupport: localDimmingSupport, ) -proc newVkSwapchainDisplayNativeHdrCreateInfoAMD*(sType: VkStructureType, pNext: pointer = nil, localDimmingEnable: VkBool32): VkSwapchainDisplayNativeHdrCreateInfoAMD = +proc newVkSwapchainDisplayNativeHdrCreateInfoAMD*(sType: VkStructureType = VkStructureType.SwapchainDisplayNativeHdrCreateInfoAMD, pNext: pointer = nil, localDimmingEnable: VkBool32): VkSwapchainDisplayNativeHdrCreateInfoAMD = result = VkSwapchainDisplayNativeHdrCreateInfoAMD( sType: sType, pNext: pNext, @@ -13371,7 +14620,7 @@ proc newVkPastPresentationTimingGOOGLE*(presentID: uint32, desiredPresentTime: u presentMargin: presentMargin, ) -proc newVkPresentTimesInfoGOOGLE*(sType: VkStructureType, pNext: pointer = nil, swapchainCount: uint32, pTimes: ptr VkPresentTimeGOOGLE): VkPresentTimesInfoGOOGLE = +proc newVkPresentTimesInfoGOOGLE*(sType: VkStructureType = VkStructureType.PresentTimesInfoGOOGLE, pNext: pointer = nil, swapchainCount: uint32, pTimes: ptr VkPresentTimeGOOGLE): VkPresentTimesInfoGOOGLE = result = VkPresentTimesInfoGOOGLE( sType: sType, pNext: pNext, @@ -13385,7 +14634,7 @@ proc newVkPresentTimeGOOGLE*(presentID: uint32, desiredPresentTime: uint64): VkP desiredPresentTime: desiredPresentTime, ) -proc newVkIOSSurfaceCreateInfoMVK*(sType: VkStructureType, pNext: pointer = nil, flags: VkIOSSurfaceCreateFlagsMVK = 0.VkIOSSurfaceCreateFlagsMVK, pView: pointer = nil): VkIOSSurfaceCreateInfoMVK = +proc newVkIOSSurfaceCreateInfoMVK*(sType: VkStructureType = VkStructureType.IOSSurfaceCreateInfoMVK, pNext: pointer = nil, flags: VkIOSSurfaceCreateFlagsMVK = 0.VkIOSSurfaceCreateFlagsMVK, pView: pointer = nil): VkIOSSurfaceCreateInfoMVK = result = VkIOSSurfaceCreateInfoMVK( sType: sType, pNext: pNext, @@ -13393,7 +14642,7 @@ proc newVkIOSSurfaceCreateInfoMVK*(sType: VkStructureType, pNext: pointer = nil, pView: pView, ) -proc newVkMacOSSurfaceCreateInfoMVK*(sType: VkStructureType, pNext: pointer = nil, flags: VkMacOSSurfaceCreateFlagsMVK = 0.VkMacOSSurfaceCreateFlagsMVK, pView: pointer = nil): VkMacOSSurfaceCreateInfoMVK = +proc newVkMacOSSurfaceCreateInfoMVK*(sType: VkStructureType = VkStructureType.MacOSSurfaceCreateInfoMVK, pNext: pointer = nil, flags: VkMacOSSurfaceCreateFlagsMVK = 0.VkMacOSSurfaceCreateFlagsMVK, pView: pointer = nil): VkMacOSSurfaceCreateInfoMVK = result = VkMacOSSurfaceCreateInfoMVK( sType: sType, pNext: pNext, @@ -13401,7 +14650,7 @@ proc newVkMacOSSurfaceCreateInfoMVK*(sType: VkStructureType, pNext: pointer = ni pView: pView, ) -proc newVkMetalSurfaceCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkMetalSurfaceCreateFlagsEXT = 0.VkMetalSurfaceCreateFlagsEXT, pLayer: ptr CAMetalLayer): VkMetalSurfaceCreateInfoEXT = +proc newVkMetalSurfaceCreateInfoEXT*(sType: VkStructureType = VkStructureType.MetalSurfaceCreateInfoEXT, pNext: pointer = nil, flags: VkMetalSurfaceCreateFlagsEXT = 0.VkMetalSurfaceCreateFlagsEXT, pLayer: ptr CAMetalLayer): VkMetalSurfaceCreateInfoEXT = result = VkMetalSurfaceCreateInfoEXT( sType: sType, pNext: pNext, @@ -13415,7 +14664,7 @@ proc newVkViewportWScalingNV*(xcoeff: float32, ycoeff: float32): VkViewportWScal ycoeff: ycoeff, ) -proc newVkPipelineViewportWScalingStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, viewportWScalingEnable: VkBool32, viewportCount: uint32, pViewportWScalings: ptr VkViewportWScalingNV): VkPipelineViewportWScalingStateCreateInfoNV = +proc newVkPipelineViewportWScalingStateCreateInfoNV*(sType: VkStructureType = VkStructureType.PipelineViewportWScalingStateCreateInfoNV, pNext: pointer = nil, viewportWScalingEnable: VkBool32, viewportCount: uint32, pViewportWScalings: ptr VkViewportWScalingNV): VkPipelineViewportWScalingStateCreateInfoNV = result = VkPipelineViewportWScalingStateCreateInfoNV( sType: sType, pNext: pNext, @@ -13432,7 +14681,7 @@ proc newVkViewportSwizzleNV*(x: VkViewportCoordinateSwizzleNV, y: VkViewportCoor w: w, ) -proc newVkPipelineViewportSwizzleStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineViewportSwizzleStateCreateFlagsNV = 0.VkPipelineViewportSwizzleStateCreateFlagsNV, viewportCount: uint32, pViewportSwizzles: ptr VkViewportSwizzleNV): VkPipelineViewportSwizzleStateCreateInfoNV = +proc newVkPipelineViewportSwizzleStateCreateInfoNV*(sType: VkStructureType = VkStructureType.PipelineViewportSwizzleStateCreateInfoNV, pNext: pointer = nil, flags: VkPipelineViewportSwizzleStateCreateFlagsNV = 0.VkPipelineViewportSwizzleStateCreateFlagsNV, viewportCount: uint32, pViewportSwizzles: ptr VkViewportSwizzleNV): VkPipelineViewportSwizzleStateCreateInfoNV = result = VkPipelineViewportSwizzleStateCreateInfoNV( sType: sType, pNext: pNext, @@ -13441,14 +14690,14 @@ proc newVkPipelineViewportSwizzleStateCreateInfoNV*(sType: VkStructureType, pNex pViewportSwizzles: pViewportSwizzles, ) -proc newVkPhysicalDeviceDiscardRectanglePropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxDiscardRectangles: uint32): VkPhysicalDeviceDiscardRectanglePropertiesEXT = +proc newVkPhysicalDeviceDiscardRectanglePropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceDiscardRectanglePropertiesEXT, pNext: pointer = nil, maxDiscardRectangles: uint32): VkPhysicalDeviceDiscardRectanglePropertiesEXT = result = VkPhysicalDeviceDiscardRectanglePropertiesEXT( sType: sType, pNext: pNext, maxDiscardRectangles: maxDiscardRectangles, ) -proc newVkPipelineDiscardRectangleStateCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineDiscardRectangleStateCreateFlagsEXT = 0.VkPipelineDiscardRectangleStateCreateFlagsEXT, discardRectangleMode: VkDiscardRectangleModeEXT, discardRectangleCount: uint32, pDiscardRectangles: ptr VkRect2D): VkPipelineDiscardRectangleStateCreateInfoEXT = +proc newVkPipelineDiscardRectangleStateCreateInfoEXT*(sType: VkStructureType = VkStructureType.PipelineDiscardRectangleStateCreateInfoEXT, pNext: pointer = nil, flags: VkPipelineDiscardRectangleStateCreateFlagsEXT = 0.VkPipelineDiscardRectangleStateCreateFlagsEXT, discardRectangleMode: VkDiscardRectangleModeEXT, discardRectangleCount: uint32, pDiscardRectangles: ptr VkRect2D): VkPipelineDiscardRectangleStateCreateInfoEXT = result = VkPipelineDiscardRectangleStateCreateInfoEXT( sType: sType, pNext: pNext, @@ -13458,7 +14707,7 @@ proc newVkPipelineDiscardRectangleStateCreateInfoEXT*(sType: VkStructureType, pN pDiscardRectangles: pDiscardRectangles, ) -proc newVkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX*(sType: VkStructureType, pNext: pointer = nil, perViewPositionAllComponents: VkBool32): VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX = +proc newVkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX*(sType: VkStructureType = VkStructureType.PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX, pNext: pointer = nil, perViewPositionAllComponents: VkBool32): VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX = result = VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX( sType: sType, pNext: pNext, @@ -13480,49 +14729,49 @@ proc newVkRenderPassInputAttachmentAspectCreateInfo*(sType: VkStructureType, pNe pAspectReferences: pAspectReferences, ) -proc newVkPhysicalDeviceSurfaceInfo2KHR*(sType: VkStructureType, pNext: pointer = nil, surface: VkSurfaceKHR): VkPhysicalDeviceSurfaceInfo2KHR = +proc newVkPhysicalDeviceSurfaceInfo2KHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceSurfaceInfo2KHR, pNext: pointer = nil, surface: VkSurfaceKHR): VkPhysicalDeviceSurfaceInfo2KHR = result = VkPhysicalDeviceSurfaceInfo2KHR( sType: sType, pNext: pNext, surface: surface, ) -proc newVkSurfaceCapabilities2KHR*(sType: VkStructureType, pNext: pointer = nil, surfaceCapabilities: VkSurfaceCapabilitiesKHR): VkSurfaceCapabilities2KHR = +proc newVkSurfaceCapabilities2KHR*(sType: VkStructureType = VkStructureType.SurfaceCapabilities2KHR, pNext: pointer = nil, surfaceCapabilities: VkSurfaceCapabilitiesKHR): VkSurfaceCapabilities2KHR = result = VkSurfaceCapabilities2KHR( sType: sType, pNext: pNext, surfaceCapabilities: surfaceCapabilities, ) -proc newVkSurfaceFormat2KHR*(sType: VkStructureType, pNext: pointer = nil, surfaceFormat: VkSurfaceFormatKHR): VkSurfaceFormat2KHR = +proc newVkSurfaceFormat2KHR*(sType: VkStructureType = VkStructureType.SurfaceFormat2KHR, pNext: pointer = nil, surfaceFormat: VkSurfaceFormatKHR): VkSurfaceFormat2KHR = result = VkSurfaceFormat2KHR( sType: sType, pNext: pNext, surfaceFormat: surfaceFormat, ) -proc newVkDisplayProperties2KHR*(sType: VkStructureType, pNext: pointer = nil, displayProperties: VkDisplayPropertiesKHR): VkDisplayProperties2KHR = +proc newVkDisplayProperties2KHR*(sType: VkStructureType = VkStructureType.DisplayProperties2KHR, pNext: pointer = nil, displayProperties: VkDisplayPropertiesKHR): VkDisplayProperties2KHR = result = VkDisplayProperties2KHR( sType: sType, pNext: pNext, displayProperties: displayProperties, ) -proc newVkDisplayPlaneProperties2KHR*(sType: VkStructureType, pNext: pointer = nil, displayPlaneProperties: VkDisplayPlanePropertiesKHR): VkDisplayPlaneProperties2KHR = +proc newVkDisplayPlaneProperties2KHR*(sType: VkStructureType = VkStructureType.DisplayPlaneProperties2KHR, pNext: pointer = nil, displayPlaneProperties: VkDisplayPlanePropertiesKHR): VkDisplayPlaneProperties2KHR = result = VkDisplayPlaneProperties2KHR( sType: sType, pNext: pNext, displayPlaneProperties: displayPlaneProperties, ) -proc newVkDisplayModeProperties2KHR*(sType: VkStructureType, pNext: pointer = nil, displayModeProperties: VkDisplayModePropertiesKHR): VkDisplayModeProperties2KHR = +proc newVkDisplayModeProperties2KHR*(sType: VkStructureType = VkStructureType.DisplayModeProperties2KHR, pNext: pointer = nil, displayModeProperties: VkDisplayModePropertiesKHR): VkDisplayModeProperties2KHR = result = VkDisplayModeProperties2KHR( sType: sType, pNext: pNext, displayModeProperties: displayModeProperties, ) -proc newVkDisplayPlaneInfo2KHR*(sType: VkStructureType, pNext: pointer = nil, mode: VkDisplayModeKHR, planeIndex: uint32): VkDisplayPlaneInfo2KHR = +proc newVkDisplayPlaneInfo2KHR*(sType: VkStructureType = VkStructureType.DisplayPlaneInfo2KHR, pNext: pointer = nil, mode: VkDisplayModeKHR, planeIndex: uint32): VkDisplayPlaneInfo2KHR = result = VkDisplayPlaneInfo2KHR( sType: sType, pNext: pNext, @@ -13530,14 +14779,14 @@ proc newVkDisplayPlaneInfo2KHR*(sType: VkStructureType, pNext: pointer = nil, mo planeIndex: planeIndex, ) -proc newVkDisplayPlaneCapabilities2KHR*(sType: VkStructureType, pNext: pointer = nil, capabilities: VkDisplayPlaneCapabilitiesKHR): VkDisplayPlaneCapabilities2KHR = +proc newVkDisplayPlaneCapabilities2KHR*(sType: VkStructureType = VkStructureType.DisplayPlaneCapabilities2KHR, pNext: pointer = nil, capabilities: VkDisplayPlaneCapabilitiesKHR): VkDisplayPlaneCapabilities2KHR = result = VkDisplayPlaneCapabilities2KHR( sType: sType, pNext: pNext, capabilities: capabilities, ) -proc newVkSharedPresentSurfaceCapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, sharedPresentSupportedUsageFlags: VkImageUsageFlags): VkSharedPresentSurfaceCapabilitiesKHR = +proc newVkSharedPresentSurfaceCapabilitiesKHR*(sType: VkStructureType = VkStructureType.SharedPresentSurfaceCapabilitiesKHR, pNext: pointer = nil, sharedPresentSupportedUsageFlags: VkImageUsageFlags): VkSharedPresentSurfaceCapabilitiesKHR = result = VkSharedPresentSurfaceCapabilitiesKHR( sType: sType, pNext: pNext, @@ -13651,7 +14900,7 @@ proc newVkImageViewUsageCreateInfo*(sType: VkStructureType, pNext: pointer = nil usage: usage, ) -proc newVkImageViewSlicedCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, sliceOffset: uint32, sliceCount: uint32): VkImageViewSlicedCreateInfoEXT = +proc newVkImageViewSlicedCreateInfoEXT*(sType: VkStructureType = VkStructureType.ImageViewSlicedCreateInfoEXT, pNext: pointer = nil, sliceOffset: uint32, sliceCount: uint32): VkImageViewSlicedCreateInfoEXT = result = VkImageViewSlicedCreateInfoEXT( sType: sType, pNext: pNext, @@ -13715,14 +14964,14 @@ proc newVkSamplerYcbcrConversionImageFormatProperties*(sType: VkStructureType, p combinedImageSamplerDescriptorCount: combinedImageSamplerDescriptorCount, ) -proc newVkTextureLODGatherFormatPropertiesAMD*(sType: VkStructureType, pNext: pointer = nil, supportsTextureGatherLODBiasAMD: VkBool32): VkTextureLODGatherFormatPropertiesAMD = +proc newVkTextureLODGatherFormatPropertiesAMD*(sType: VkStructureType = VkStructureType.TextureLODGatherFormatPropertiesAMD, pNext: pointer = nil, supportsTextureGatherLODBiasAMD: VkBool32): VkTextureLODGatherFormatPropertiesAMD = result = VkTextureLODGatherFormatPropertiesAMD( sType: sType, pNext: pNext, supportsTextureGatherLODBiasAMD: supportsTextureGatherLODBiasAMD, ) -proc newVkConditionalRenderingBeginInfoEXT*(sType: VkStructureType, pNext: pointer = nil, buffer: VkBuffer, offset: VkDeviceSize, flags: VkConditionalRenderingFlagsEXT = 0.VkConditionalRenderingFlagsEXT): VkConditionalRenderingBeginInfoEXT = +proc newVkConditionalRenderingBeginInfoEXT*(sType: VkStructureType = VkStructureType.ConditionalRenderingBeginInfoEXT, pNext: pointer = nil, buffer: VkBuffer, offset: VkDeviceSize, flags: VkConditionalRenderingFlagsEXT = 0.VkConditionalRenderingFlagsEXT): VkConditionalRenderingBeginInfoEXT = result = VkConditionalRenderingBeginInfoEXT( sType: sType, pNext: pNext, @@ -13761,7 +15010,7 @@ proc newVkDeviceQueueInfo2*(sType: VkStructureType, pNext: pointer = nil, flags: queueIndex: queueIndex, ) -proc newVkPipelineCoverageToColorStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCoverageToColorStateCreateFlagsNV = 0.VkPipelineCoverageToColorStateCreateFlagsNV, coverageToColorEnable: VkBool32, coverageToColorLocation: uint32): VkPipelineCoverageToColorStateCreateInfoNV = +proc newVkPipelineCoverageToColorStateCreateInfoNV*(sType: VkStructureType = VkStructureType.PipelineCoverageToColorStateCreateInfoNV, pNext: pointer = nil, flags: VkPipelineCoverageToColorStateCreateFlagsNV = 0.VkPipelineCoverageToColorStateCreateFlagsNV, coverageToColorEnable: VkBool32, coverageToColorLocation: uint32): VkPipelineCoverageToColorStateCreateInfoNV = result = VkPipelineCoverageToColorStateCreateInfoNV( sType: sType, pNext: pNext, @@ -13784,7 +15033,7 @@ proc newVkSampleLocationEXT*(x: float32, y: float32): VkSampleLocationEXT = y: y, ) -proc newVkSampleLocationsInfoEXT*(sType: VkStructureType, pNext: pointer = nil, sampleLocationsPerPixel: VkSampleCountFlagBits, sampleLocationGridSize: VkExtent2D, sampleLocationsCount: uint32, pSampleLocations: ptr VkSampleLocationEXT): VkSampleLocationsInfoEXT = +proc newVkSampleLocationsInfoEXT*(sType: VkStructureType = VkStructureType.SampleLocationsInfoEXT, pNext: pointer = nil, sampleLocationsPerPixel: VkSampleCountFlagBits, sampleLocationGridSize: VkExtent2D, sampleLocationsCount: uint32, pSampleLocations: ptr VkSampleLocationEXT): VkSampleLocationsInfoEXT = result = VkSampleLocationsInfoEXT( sType: sType, pNext: pNext, @@ -13806,7 +15055,7 @@ proc newVkSubpassSampleLocationsEXT*(subpassIndex: uint32, sampleLocationsInfo: sampleLocationsInfo: sampleLocationsInfo, ) -proc newVkRenderPassSampleLocationsBeginInfoEXT*(sType: VkStructureType, pNext: pointer = nil, attachmentInitialSampleLocationsCount: uint32, pAttachmentInitialSampleLocations: ptr VkAttachmentSampleLocationsEXT, postSubpassSampleLocationsCount: uint32, pPostSubpassSampleLocations: ptr VkSubpassSampleLocationsEXT): VkRenderPassSampleLocationsBeginInfoEXT = +proc newVkRenderPassSampleLocationsBeginInfoEXT*(sType: VkStructureType = VkStructureType.RenderPassSampleLocationsBeginInfoEXT, pNext: pointer = nil, attachmentInitialSampleLocationsCount: uint32, pAttachmentInitialSampleLocations: ptr VkAttachmentSampleLocationsEXT, postSubpassSampleLocationsCount: uint32, pPostSubpassSampleLocations: ptr VkSubpassSampleLocationsEXT): VkRenderPassSampleLocationsBeginInfoEXT = result = VkRenderPassSampleLocationsBeginInfoEXT( sType: sType, pNext: pNext, @@ -13816,7 +15065,7 @@ proc newVkRenderPassSampleLocationsBeginInfoEXT*(sType: VkStructureType, pNext: pPostSubpassSampleLocations: pPostSubpassSampleLocations, ) -proc newVkPipelineSampleLocationsStateCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, sampleLocationsEnable: VkBool32, sampleLocationsInfo: VkSampleLocationsInfoEXT): VkPipelineSampleLocationsStateCreateInfoEXT = +proc newVkPipelineSampleLocationsStateCreateInfoEXT*(sType: VkStructureType = VkStructureType.PipelineSampleLocationsStateCreateInfoEXT, pNext: pointer = nil, sampleLocationsEnable: VkBool32, sampleLocationsInfo: VkSampleLocationsInfoEXT): VkPipelineSampleLocationsStateCreateInfoEXT = result = VkPipelineSampleLocationsStateCreateInfoEXT( sType: sType, pNext: pNext, @@ -13824,7 +15073,7 @@ proc newVkPipelineSampleLocationsStateCreateInfoEXT*(sType: VkStructureType, pNe sampleLocationsInfo: sampleLocationsInfo, ) -proc newVkPhysicalDeviceSampleLocationsPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, sampleLocationSampleCounts: VkSampleCountFlags, maxSampleLocationGridSize: VkExtent2D, sampleLocationCoordinateRange: array[2, float32], sampleLocationSubPixelBits: uint32, variableSampleLocations: VkBool32): VkPhysicalDeviceSampleLocationsPropertiesEXT = +proc newVkPhysicalDeviceSampleLocationsPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceSampleLocationsPropertiesEXT, pNext: pointer = nil, sampleLocationSampleCounts: VkSampleCountFlags, maxSampleLocationGridSize: VkExtent2D, sampleLocationCoordinateRange: array[2, float32], sampleLocationSubPixelBits: uint32, variableSampleLocations: VkBool32): VkPhysicalDeviceSampleLocationsPropertiesEXT = result = VkPhysicalDeviceSampleLocationsPropertiesEXT( sType: sType, pNext: pNext, @@ -13835,7 +15084,7 @@ proc newVkPhysicalDeviceSampleLocationsPropertiesEXT*(sType: VkStructureType, pN variableSampleLocations: variableSampleLocations, ) -proc newVkMultisamplePropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxSampleLocationGridSize: VkExtent2D): VkMultisamplePropertiesEXT = +proc newVkMultisamplePropertiesEXT*(sType: VkStructureType = VkStructureType.MultisamplePropertiesEXT, pNext: pointer = nil, maxSampleLocationGridSize: VkExtent2D): VkMultisamplePropertiesEXT = result = VkMultisamplePropertiesEXT( sType: sType, pNext: pNext, @@ -13849,21 +15098,21 @@ proc newVkSamplerReductionModeCreateInfo*(sType: VkStructureType, pNext: pointer reductionMode: reductionMode, ) -proc newVkPhysicalDeviceBlendOperationAdvancedFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, advancedBlendCoherentOperations: VkBool32): VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT = +proc newVkPhysicalDeviceBlendOperationAdvancedFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceBlendOperationAdvancedFeaturesEXT, pNext: pointer = nil, advancedBlendCoherentOperations: VkBool32): VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT = result = VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT( sType: sType, pNext: pNext, advancedBlendCoherentOperations: advancedBlendCoherentOperations, ) -proc newVkPhysicalDeviceMultiDrawFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, multiDraw: VkBool32): VkPhysicalDeviceMultiDrawFeaturesEXT = +proc newVkPhysicalDeviceMultiDrawFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceMultiDrawFeaturesEXT, pNext: pointer = nil, multiDraw: VkBool32): VkPhysicalDeviceMultiDrawFeaturesEXT = result = VkPhysicalDeviceMultiDrawFeaturesEXT( sType: sType, pNext: pNext, multiDraw: multiDraw, ) -proc newVkPhysicalDeviceBlendOperationAdvancedPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, advancedBlendMaxColorAttachments: uint32, advancedBlendIndependentBlend: VkBool32, advancedBlendNonPremultipliedSrcColor: VkBool32, advancedBlendNonPremultipliedDstColor: VkBool32, advancedBlendCorrelatedOverlap: VkBool32, advancedBlendAllOperations: VkBool32): VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT = +proc newVkPhysicalDeviceBlendOperationAdvancedPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceBlendOperationAdvancedPropertiesEXT, pNext: pointer = nil, advancedBlendMaxColorAttachments: uint32, advancedBlendIndependentBlend: VkBool32, advancedBlendNonPremultipliedSrcColor: VkBool32, advancedBlendNonPremultipliedDstColor: VkBool32, advancedBlendCorrelatedOverlap: VkBool32, advancedBlendAllOperations: VkBool32): VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT = result = VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT( sType: sType, pNext: pNext, @@ -13875,7 +15124,7 @@ proc newVkPhysicalDeviceBlendOperationAdvancedPropertiesEXT*(sType: VkStructureT advancedBlendAllOperations: advancedBlendAllOperations, ) -proc newVkPipelineColorBlendAdvancedStateCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, srcPremultiplied: VkBool32, dstPremultiplied: VkBool32, blendOverlap: VkBlendOverlapEXT): VkPipelineColorBlendAdvancedStateCreateInfoEXT = +proc newVkPipelineColorBlendAdvancedStateCreateInfoEXT*(sType: VkStructureType = VkStructureType.PipelineColorBlendAdvancedStateCreateInfoEXT, pNext: pointer = nil, srcPremultiplied: VkBool32, dstPremultiplied: VkBool32, blendOverlap: VkBlendOverlapEXT): VkPipelineColorBlendAdvancedStateCreateInfoEXT = result = VkPipelineColorBlendAdvancedStateCreateInfoEXT( sType: sType, pNext: pNext, @@ -13918,7 +15167,7 @@ proc newVkDescriptorPoolInlineUniformBlockCreateInfo*(sType: VkStructureType, pN maxInlineUniformBlockBindings: maxInlineUniformBlockBindings, ) -proc newVkPipelineCoverageModulationStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCoverageModulationStateCreateFlagsNV = 0.VkPipelineCoverageModulationStateCreateFlagsNV, coverageModulationMode: VkCoverageModulationModeNV, coverageModulationTableEnable: VkBool32, coverageModulationTableCount: uint32, pCoverageModulationTable: ptr float32): VkPipelineCoverageModulationStateCreateInfoNV = +proc newVkPipelineCoverageModulationStateCreateInfoNV*(sType: VkStructureType = VkStructureType.PipelineCoverageModulationStateCreateInfoNV, pNext: pointer = nil, flags: VkPipelineCoverageModulationStateCreateFlagsNV = 0.VkPipelineCoverageModulationStateCreateFlagsNV, coverageModulationMode: VkCoverageModulationModeNV, coverageModulationTableEnable: VkBool32, coverageModulationTableCount: uint32, pCoverageModulationTable: ptr float32): VkPipelineCoverageModulationStateCreateInfoNV = result = VkPipelineCoverageModulationStateCreateInfoNV( sType: sType, pNext: pNext, @@ -13937,7 +15186,7 @@ proc newVkImageFormatListCreateInfo*(sType: VkStructureType, pNext: pointer = ni pViewFormats: pViewFormats, ) -proc newVkValidationCacheCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkValidationCacheCreateFlagsEXT = 0.VkValidationCacheCreateFlagsEXT, initialDataSize: uint, pInitialData: pointer = nil): VkValidationCacheCreateInfoEXT = +proc newVkValidationCacheCreateInfoEXT*(sType: VkStructureType = VkStructureType.ValidationCacheCreateInfoEXT, pNext: pointer = nil, flags: VkValidationCacheCreateFlagsEXT = 0.VkValidationCacheCreateFlagsEXT, initialDataSize: uint, pInitialData: pointer = nil): VkValidationCacheCreateInfoEXT = result = VkValidationCacheCreateInfoEXT( sType: sType, pNext: pNext, @@ -13946,7 +15195,7 @@ proc newVkValidationCacheCreateInfoEXT*(sType: VkStructureType, pNext: pointer = pInitialData: pInitialData, ) -proc newVkShaderModuleValidationCacheCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, validationCache: VkValidationCacheEXT): VkShaderModuleValidationCacheCreateInfoEXT = +proc newVkShaderModuleValidationCacheCreateInfoEXT*(sType: VkStructureType = VkStructureType.ShaderModuleValidationCacheCreateInfoEXT, pNext: pointer = nil, validationCache: VkValidationCacheEXT): VkShaderModuleValidationCacheCreateInfoEXT = result = VkShaderModuleValidationCacheCreateInfoEXT( sType: sType, pNext: pNext, @@ -13975,14 +15224,14 @@ proc newVkPhysicalDeviceMaintenance4Properties*(sType: VkStructureType, pNext: p maxBufferSize: maxBufferSize, ) -proc newVkPhysicalDeviceMaintenance5FeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, maintenance5: VkBool32): VkPhysicalDeviceMaintenance5FeaturesKHR = +proc newVkPhysicalDeviceMaintenance5FeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceMaintenance5FeaturesKHR, pNext: pointer = nil, maintenance5: VkBool32): VkPhysicalDeviceMaintenance5FeaturesKHR = result = VkPhysicalDeviceMaintenance5FeaturesKHR( sType: sType, pNext: pNext, maintenance5: maintenance5, ) -proc newVkPhysicalDeviceMaintenance5PropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, earlyFragmentMultisampleCoverageAfterSampleCounting: VkBool32, earlyFragmentSampleMaskTestBeforeSampleCounting: VkBool32, depthStencilSwizzleOneSupport: VkBool32, polygonModePointSize: VkBool32, nonStrictSinglePixelWideLinesUseParallelogram: VkBool32, nonStrictWideLinesUseParallelogram: VkBool32): VkPhysicalDeviceMaintenance5PropertiesKHR = +proc newVkPhysicalDeviceMaintenance5PropertiesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceMaintenance5PropertiesKHR, pNext: pointer = nil, earlyFragmentMultisampleCoverageAfterSampleCounting: VkBool32, earlyFragmentSampleMaskTestBeforeSampleCounting: VkBool32, depthStencilSwizzleOneSupport: VkBool32, polygonModePointSize: VkBool32, nonStrictSinglePixelWideLinesUseParallelogram: VkBool32, nonStrictWideLinesUseParallelogram: VkBool32): VkPhysicalDeviceMaintenance5PropertiesKHR = result = VkPhysicalDeviceMaintenance5PropertiesKHR( sType: sType, pNext: pNext, @@ -13994,14 +15243,14 @@ proc newVkPhysicalDeviceMaintenance5PropertiesKHR*(sType: VkStructureType, pNext nonStrictWideLinesUseParallelogram: nonStrictWideLinesUseParallelogram, ) -proc newVkPhysicalDeviceMaintenance6FeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, maintenance6: VkBool32): VkPhysicalDeviceMaintenance6FeaturesKHR = +proc newVkPhysicalDeviceMaintenance6FeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceMaintenance6FeaturesKHR, pNext: pointer = nil, maintenance6: VkBool32): VkPhysicalDeviceMaintenance6FeaturesKHR = result = VkPhysicalDeviceMaintenance6FeaturesKHR( sType: sType, pNext: pNext, maintenance6: maintenance6, ) -proc newVkPhysicalDeviceMaintenance6PropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, blockTexelViewCompatibleMultipleLayers: VkBool32, maxCombinedImageSamplerDescriptorCount: uint32, fragmentShadingRateClampCombinerInputs: VkBool32): VkPhysicalDeviceMaintenance6PropertiesKHR = +proc newVkPhysicalDeviceMaintenance6PropertiesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceMaintenance6PropertiesKHR, pNext: pointer = nil, blockTexelViewCompatibleMultipleLayers: VkBool32, maxCombinedImageSamplerDescriptorCount: uint32, fragmentShadingRateClampCombinerInputs: VkBool32): VkPhysicalDeviceMaintenance6PropertiesKHR = result = VkPhysicalDeviceMaintenance6PropertiesKHR( sType: sType, pNext: pNext, @@ -14010,7 +15259,7 @@ proc newVkPhysicalDeviceMaintenance6PropertiesKHR*(sType: VkStructureType, pNext fragmentShadingRateClampCombinerInputs: fragmentShadingRateClampCombinerInputs, ) -proc newVkRenderingAreaInfoKHR*(sType: VkStructureType, pNext: pointer = nil, viewMask: uint32, colorAttachmentCount: uint32, pColorAttachmentFormats: ptr VkFormat, depthAttachmentFormat: VkFormat, stencilAttachmentFormat: VkFormat): VkRenderingAreaInfoKHR = +proc newVkRenderingAreaInfoKHR*(sType: VkStructureType = VkStructureType.RenderingAreaInfoKHR, pNext: pointer = nil, viewMask: uint32, colorAttachmentCount: uint32, pColorAttachmentFormats: ptr VkFormat, depthAttachmentFormat: VkFormat, stencilAttachmentFormat: VkFormat): VkRenderingAreaInfoKHR = result = VkRenderingAreaInfoKHR( sType: sType, pNext: pNext, @@ -14124,21 +15373,21 @@ proc newVkShaderStatisticsInfoAMD*(shaderStageMask: VkShaderStageFlags, resource computeWorkGroupSize: computeWorkGroupSize, ) -proc newVkDeviceQueueGlobalPriorityCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, globalPriority: VkQueueGlobalPriorityKHR): VkDeviceQueueGlobalPriorityCreateInfoKHR = +proc newVkDeviceQueueGlobalPriorityCreateInfoKHR*(sType: VkStructureType = VkStructureType.DeviceQueueGlobalPriorityCreateInfoKHR, pNext: pointer = nil, globalPriority: VkQueueGlobalPriorityKHR): VkDeviceQueueGlobalPriorityCreateInfoKHR = result = VkDeviceQueueGlobalPriorityCreateInfoKHR( sType: sType, pNext: pNext, globalPriority: globalPriority, ) -proc newVkPhysicalDeviceGlobalPriorityQueryFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, globalPriorityQuery: VkBool32): VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR = +proc newVkPhysicalDeviceGlobalPriorityQueryFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceGlobalPriorityQueryFeaturesKHR, pNext: pointer = nil, globalPriorityQuery: VkBool32): VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR = result = VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR( sType: sType, pNext: pNext, globalPriorityQuery: globalPriorityQuery, ) -proc newVkQueueFamilyGlobalPriorityPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, priorityCount: uint32, priorities: array[VK_MAX_GLOBAL_PRIORITY_SIZE_KHR, VkQueueGlobalPriorityKHR]): VkQueueFamilyGlobalPriorityPropertiesKHR = +proc newVkQueueFamilyGlobalPriorityPropertiesKHR*(sType: VkStructureType = VkStructureType.QueueFamilyGlobalPriorityPropertiesKHR, pNext: pointer = nil, priorityCount: uint32, priorities: array[VK_MAX_GLOBAL_PRIORITY_SIZE_KHR, VkQueueGlobalPriorityKHR]): VkQueueFamilyGlobalPriorityPropertiesKHR = result = VkQueueFamilyGlobalPriorityPropertiesKHR( sType: sType, pNext: pNext, @@ -14146,7 +15395,7 @@ proc newVkQueueFamilyGlobalPriorityPropertiesKHR*(sType: VkStructureType, pNext: priorities: priorities, ) -proc newVkDebugUtilsObjectNameInfoEXT*(sType: VkStructureType, pNext: pointer = nil, objectType: VkObjectType, objectHandle: uint64, pObjectName: cstring): VkDebugUtilsObjectNameInfoEXT = +proc newVkDebugUtilsObjectNameInfoEXT*(sType: VkStructureType = VkStructureType.DebugUtilsObjectNameInfoEXT, pNext: pointer = nil, objectType: VkObjectType, objectHandle: uint64, pObjectName: cstring): VkDebugUtilsObjectNameInfoEXT = result = VkDebugUtilsObjectNameInfoEXT( sType: sType, pNext: pNext, @@ -14155,7 +15404,7 @@ proc newVkDebugUtilsObjectNameInfoEXT*(sType: VkStructureType, pNext: pointer = pObjectName: pObjectName, ) -proc newVkDebugUtilsObjectTagInfoEXT*(sType: VkStructureType, pNext: pointer = nil, objectType: VkObjectType, objectHandle: uint64, tagName: uint64, tagSize: uint, pTag: pointer = nil): VkDebugUtilsObjectTagInfoEXT = +proc newVkDebugUtilsObjectTagInfoEXT*(sType: VkStructureType = VkStructureType.DebugUtilsObjectTagInfoEXT, pNext: pointer = nil, objectType: VkObjectType, objectHandle: uint64, tagName: uint64, tagSize: uint, pTag: pointer = nil): VkDebugUtilsObjectTagInfoEXT = result = VkDebugUtilsObjectTagInfoEXT( sType: sType, pNext: pNext, @@ -14166,7 +15415,7 @@ proc newVkDebugUtilsObjectTagInfoEXT*(sType: VkStructureType, pNext: pointer = n pTag: pTag, ) -proc newVkDebugUtilsLabelEXT*(sType: VkStructureType, pNext: pointer = nil, pLabelName: cstring, color: array[4, float32]): VkDebugUtilsLabelEXT = +proc newVkDebugUtilsLabelEXT*(sType: VkStructureType = VkStructureType.DebugUtilsLabelEXT, pNext: pointer = nil, pLabelName: cstring, color: array[4, float32]): VkDebugUtilsLabelEXT = result = VkDebugUtilsLabelEXT( sType: sType, pNext: pNext, @@ -14174,7 +15423,7 @@ proc newVkDebugUtilsLabelEXT*(sType: VkStructureType, pNext: pointer = nil, pLab color: color, ) -proc newVkDebugUtilsMessengerCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkDebugUtilsMessengerCreateFlagsEXT = 0.VkDebugUtilsMessengerCreateFlagsEXT, messageSeverity: VkDebugUtilsMessageSeverityFlagsEXT, messageType: VkDebugUtilsMessageTypeFlagsEXT, pfnUserCallback: PFN_vkDebugUtilsMessengerCallbackEXT, pUserData: pointer = nil): VkDebugUtilsMessengerCreateInfoEXT = +proc newVkDebugUtilsMessengerCreateInfoEXT*(sType: VkStructureType = VkStructureType.DebugUtilsMessengerCreateInfoEXT, pNext: pointer = nil, flags: VkDebugUtilsMessengerCreateFlagsEXT = 0.VkDebugUtilsMessengerCreateFlagsEXT, messageSeverity: VkDebugUtilsMessageSeverityFlagsEXT, messageType: VkDebugUtilsMessageTypeFlagsEXT, pfnUserCallback: PFN_vkDebugUtilsMessengerCallbackEXT, pUserData: pointer = nil): VkDebugUtilsMessengerCreateInfoEXT = result = VkDebugUtilsMessengerCreateInfoEXT( sType: sType, pNext: pNext, @@ -14185,7 +15434,7 @@ proc newVkDebugUtilsMessengerCreateInfoEXT*(sType: VkStructureType, pNext: point pUserData: pUserData, ) -proc newVkDebugUtilsMessengerCallbackDataEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkDebugUtilsMessengerCallbackDataFlagsEXT = 0.VkDebugUtilsMessengerCallbackDataFlagsEXT, pMessageIdName: cstring, messageIdNumber: int32, pMessage: cstring, queueLabelCount: uint32, pQueueLabels: ptr VkDebugUtilsLabelEXT, cmdBufLabelCount: uint32, pCmdBufLabels: ptr VkDebugUtilsLabelEXT, objectCount: uint32, pObjects: ptr VkDebugUtilsObjectNameInfoEXT): VkDebugUtilsMessengerCallbackDataEXT = +proc newVkDebugUtilsMessengerCallbackDataEXT*(sType: VkStructureType = VkStructureType.DebugUtilsMessengerCallbackDataEXT, pNext: pointer = nil, flags: VkDebugUtilsMessengerCallbackDataFlagsEXT = 0.VkDebugUtilsMessengerCallbackDataFlagsEXT, pMessageIdName: cstring, messageIdNumber: int32, pMessage: cstring, queueLabelCount: uint32, pQueueLabels: ptr VkDebugUtilsLabelEXT, cmdBufLabelCount: uint32, pCmdBufLabels: ptr VkDebugUtilsLabelEXT, objectCount: uint32, pObjects: ptr VkDebugUtilsObjectNameInfoEXT): VkDebugUtilsMessengerCallbackDataEXT = result = VkDebugUtilsMessengerCallbackDataEXT( sType: sType, pNext: pNext, @@ -14201,14 +15450,14 @@ proc newVkDebugUtilsMessengerCallbackDataEXT*(sType: VkStructureType, pNext: poi pObjects: pObjects, ) -proc newVkPhysicalDeviceDeviceMemoryReportFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, deviceMemoryReport: VkBool32): VkPhysicalDeviceDeviceMemoryReportFeaturesEXT = +proc newVkPhysicalDeviceDeviceMemoryReportFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceDeviceMemoryReportFeaturesEXT, pNext: pointer = nil, deviceMemoryReport: VkBool32): VkPhysicalDeviceDeviceMemoryReportFeaturesEXT = result = VkPhysicalDeviceDeviceMemoryReportFeaturesEXT( sType: sType, pNext: pNext, deviceMemoryReport: deviceMemoryReport, ) -proc newVkDeviceDeviceMemoryReportCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkDeviceMemoryReportFlagsEXT = 0.VkDeviceMemoryReportFlagsEXT, pfnUserCallback: PFN_vkDeviceMemoryReportCallbackEXT, pUserData: pointer = nil): VkDeviceDeviceMemoryReportCreateInfoEXT = +proc newVkDeviceDeviceMemoryReportCreateInfoEXT*(sType: VkStructureType = VkStructureType.DeviceDeviceMemoryReportCreateInfoEXT, pNext: pointer = nil, flags: VkDeviceMemoryReportFlagsEXT = 0.VkDeviceMemoryReportFlagsEXT, pfnUserCallback: PFN_vkDeviceMemoryReportCallbackEXT, pUserData: pointer = nil): VkDeviceDeviceMemoryReportCreateInfoEXT = result = VkDeviceDeviceMemoryReportCreateInfoEXT( sType: sType, pNext: pNext, @@ -14217,7 +15466,7 @@ proc newVkDeviceDeviceMemoryReportCreateInfoEXT*(sType: VkStructureType, pNext: pUserData: pUserData, ) -proc newVkDeviceMemoryReportCallbackDataEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkDeviceMemoryReportFlagsEXT = 0.VkDeviceMemoryReportFlagsEXT, `type`: VkDeviceMemoryReportEventTypeEXT, memoryObjectId: uint64, size: VkDeviceSize, objectType: VkObjectType, objectHandle: uint64, heapIndex: uint32): VkDeviceMemoryReportCallbackDataEXT = +proc newVkDeviceMemoryReportCallbackDataEXT*(sType: VkStructureType = VkStructureType.DeviceMemoryReportCallbackDataEXT, pNext: pointer = nil, flags: VkDeviceMemoryReportFlagsEXT = 0.VkDeviceMemoryReportFlagsEXT, `type`: VkDeviceMemoryReportEventTypeEXT, memoryObjectId: uint64, size: VkDeviceSize, objectType: VkObjectType, objectHandle: uint64, heapIndex: uint32): VkDeviceMemoryReportCallbackDataEXT = result = VkDeviceMemoryReportCallbackDataEXT( sType: sType, pNext: pNext, @@ -14230,7 +15479,7 @@ proc newVkDeviceMemoryReportCallbackDataEXT*(sType: VkStructureType, pNext: poin heapIndex: heapIndex, ) -proc newVkImportMemoryHostPointerInfoEXT*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, pHostPointer: pointer = nil): VkImportMemoryHostPointerInfoEXT = +proc newVkImportMemoryHostPointerInfoEXT*(sType: VkStructureType = VkStructureType.ImportMemoryHostPointerInfoEXT, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, pHostPointer: pointer = nil): VkImportMemoryHostPointerInfoEXT = result = VkImportMemoryHostPointerInfoEXT( sType: sType, pNext: pNext, @@ -14238,21 +15487,21 @@ proc newVkImportMemoryHostPointerInfoEXT*(sType: VkStructureType, pNext: pointer pHostPointer: pHostPointer, ) -proc newVkMemoryHostPointerPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryHostPointerPropertiesEXT = +proc newVkMemoryHostPointerPropertiesEXT*(sType: VkStructureType = VkStructureType.MemoryHostPointerPropertiesEXT, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryHostPointerPropertiesEXT = result = VkMemoryHostPointerPropertiesEXT( sType: sType, pNext: pNext, memoryTypeBits: memoryTypeBits, ) -proc newVkPhysicalDeviceExternalMemoryHostPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, minImportedHostPointerAlignment: VkDeviceSize): VkPhysicalDeviceExternalMemoryHostPropertiesEXT = +proc newVkPhysicalDeviceExternalMemoryHostPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceExternalMemoryHostPropertiesEXT, pNext: pointer = nil, minImportedHostPointerAlignment: VkDeviceSize): VkPhysicalDeviceExternalMemoryHostPropertiesEXT = result = VkPhysicalDeviceExternalMemoryHostPropertiesEXT( sType: sType, pNext: pNext, minImportedHostPointerAlignment: minImportedHostPointerAlignment, ) -proc newVkPhysicalDeviceConservativeRasterizationPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, primitiveOverestimationSize: float32, maxExtraPrimitiveOverestimationSize: float32, extraPrimitiveOverestimationSizeGranularity: float32, primitiveUnderestimation: VkBool32, conservativePointAndLineRasterization: VkBool32, degenerateTrianglesRasterized: VkBool32, degenerateLinesRasterized: VkBool32, fullyCoveredFragmentShaderInputVariable: VkBool32, conservativeRasterizationPostDepthCoverage: VkBool32): VkPhysicalDeviceConservativeRasterizationPropertiesEXT = +proc newVkPhysicalDeviceConservativeRasterizationPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceConservativeRasterizationPropertiesEXT, pNext: pointer = nil, primitiveOverestimationSize: float32, maxExtraPrimitiveOverestimationSize: float32, extraPrimitiveOverestimationSizeGranularity: float32, primitiveUnderestimation: VkBool32, conservativePointAndLineRasterization: VkBool32, degenerateTrianglesRasterized: VkBool32, degenerateLinesRasterized: VkBool32, fullyCoveredFragmentShaderInputVariable: VkBool32, conservativeRasterizationPostDepthCoverage: VkBool32): VkPhysicalDeviceConservativeRasterizationPropertiesEXT = result = VkPhysicalDeviceConservativeRasterizationPropertiesEXT( sType: sType, pNext: pNext, @@ -14267,14 +15516,14 @@ proc newVkPhysicalDeviceConservativeRasterizationPropertiesEXT*(sType: VkStructu conservativeRasterizationPostDepthCoverage: conservativeRasterizationPostDepthCoverage, ) -proc newVkCalibratedTimestampInfoKHR*(sType: VkStructureType, pNext: pointer = nil, timeDomain: VkTimeDomainKHR): VkCalibratedTimestampInfoKHR = +proc newVkCalibratedTimestampInfoKHR*(sType: VkStructureType = VkStructureType.CalibratedTimestampInfoKHR, pNext: pointer = nil, timeDomain: VkTimeDomainKHR): VkCalibratedTimestampInfoKHR = result = VkCalibratedTimestampInfoKHR( sType: sType, pNext: pNext, timeDomain: timeDomain, ) -proc newVkPhysicalDeviceShaderCorePropertiesAMD*(sType: VkStructureType, pNext: pointer = nil, shaderEngineCount: uint32, shaderArraysPerEngineCount: uint32, computeUnitsPerShaderArray: uint32, simdPerComputeUnit: uint32, wavefrontsPerSimd: uint32, wavefrontSize: uint32, sgprsPerSimd: uint32, minSgprAllocation: uint32, maxSgprAllocation: uint32, sgprAllocationGranularity: uint32, vgprsPerSimd: uint32, minVgprAllocation: uint32, maxVgprAllocation: uint32, vgprAllocationGranularity: uint32): VkPhysicalDeviceShaderCorePropertiesAMD = +proc newVkPhysicalDeviceShaderCorePropertiesAMD*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderCorePropertiesAMD, pNext: pointer = nil, shaderEngineCount: uint32, shaderArraysPerEngineCount: uint32, computeUnitsPerShaderArray: uint32, simdPerComputeUnit: uint32, wavefrontsPerSimd: uint32, wavefrontSize: uint32, sgprsPerSimd: uint32, minSgprAllocation: uint32, maxSgprAllocation: uint32, sgprAllocationGranularity: uint32, vgprsPerSimd: uint32, minVgprAllocation: uint32, maxVgprAllocation: uint32, vgprAllocationGranularity: uint32): VkPhysicalDeviceShaderCorePropertiesAMD = result = VkPhysicalDeviceShaderCorePropertiesAMD( sType: sType, pNext: pNext, @@ -14294,7 +15543,7 @@ proc newVkPhysicalDeviceShaderCorePropertiesAMD*(sType: VkStructureType, pNext: vgprAllocationGranularity: vgprAllocationGranularity, ) -proc newVkPhysicalDeviceShaderCoreProperties2AMD*(sType: VkStructureType, pNext: pointer = nil, shaderCoreFeatures: VkShaderCorePropertiesFlagsAMD, activeComputeUnitCount: uint32): VkPhysicalDeviceShaderCoreProperties2AMD = +proc newVkPhysicalDeviceShaderCoreProperties2AMD*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderCoreProperties2AMD, pNext: pointer = nil, shaderCoreFeatures: VkShaderCorePropertiesFlagsAMD, activeComputeUnitCount: uint32): VkPhysicalDeviceShaderCoreProperties2AMD = result = VkPhysicalDeviceShaderCoreProperties2AMD( sType: sType, pNext: pNext, @@ -14302,7 +15551,7 @@ proc newVkPhysicalDeviceShaderCoreProperties2AMD*(sType: VkStructureType, pNext: activeComputeUnitCount: activeComputeUnitCount, ) -proc newVkPipelineRasterizationConservativeStateCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineRasterizationConservativeStateCreateFlagsEXT = 0.VkPipelineRasterizationConservativeStateCreateFlagsEXT, conservativeRasterizationMode: VkConservativeRasterizationModeEXT, extraPrimitiveOverestimationSize: float32): VkPipelineRasterizationConservativeStateCreateInfoEXT = +proc newVkPipelineRasterizationConservativeStateCreateInfoEXT*(sType: VkStructureType = VkStructureType.PipelineRasterizationConservativeStateCreateInfoEXT, pNext: pointer = nil, flags: VkPipelineRasterizationConservativeStateCreateFlagsEXT = 0.VkPipelineRasterizationConservativeStateCreateFlagsEXT, conservativeRasterizationMode: VkConservativeRasterizationModeEXT, extraPrimitiveOverestimationSize: float32): VkPipelineRasterizationConservativeStateCreateInfoEXT = result = VkPipelineRasterizationConservativeStateCreateInfoEXT( sType: sType, pNext: pNext, @@ -14528,7 +15777,7 @@ proc newVkVertexInputBindingDivisorDescriptionKHR*(binding: uint32, divisor: uin divisor: divisor, ) -proc newVkPipelineVertexInputDivisorStateCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, vertexBindingDivisorCount: uint32, pVertexBindingDivisors: ptr VkVertexInputBindingDivisorDescriptionKHR): VkPipelineVertexInputDivisorStateCreateInfoKHR = +proc newVkPipelineVertexInputDivisorStateCreateInfoKHR*(sType: VkStructureType = VkStructureType.PipelineVertexInputDivisorStateCreateInfoKHR, pNext: pointer = nil, vertexBindingDivisorCount: uint32, pVertexBindingDivisors: ptr VkVertexInputBindingDivisorDescriptionKHR): VkPipelineVertexInputDivisorStateCreateInfoKHR = result = VkPipelineVertexInputDivisorStateCreateInfoKHR( sType: sType, pNext: pNext, @@ -14536,14 +15785,14 @@ proc newVkPipelineVertexInputDivisorStateCreateInfoKHR*(sType: VkStructureType, pVertexBindingDivisors: pVertexBindingDivisors, ) -proc newVkPhysicalDeviceVertexAttributeDivisorPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxVertexAttribDivisor: uint32): VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT = +proc newVkPhysicalDeviceVertexAttributeDivisorPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceVertexAttributeDivisorPropertiesEXT, pNext: pointer = nil, maxVertexAttribDivisor: uint32): VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT = result = VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT( sType: sType, pNext: pNext, maxVertexAttribDivisor: maxVertexAttribDivisor, ) -proc newVkPhysicalDeviceVertexAttributeDivisorPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, maxVertexAttribDivisor: uint32, supportsNonZeroFirstInstance: VkBool32): VkPhysicalDeviceVertexAttributeDivisorPropertiesKHR = +proc newVkPhysicalDeviceVertexAttributeDivisorPropertiesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceVertexAttributeDivisorPropertiesKHR, pNext: pointer = nil, maxVertexAttribDivisor: uint32, supportsNonZeroFirstInstance: VkBool32): VkPhysicalDeviceVertexAttributeDivisorPropertiesKHR = result = VkPhysicalDeviceVertexAttributeDivisorPropertiesKHR( sType: sType, pNext: pNext, @@ -14551,7 +15800,7 @@ proc newVkPhysicalDeviceVertexAttributeDivisorPropertiesKHR*(sType: VkStructureT supportsNonZeroFirstInstance: supportsNonZeroFirstInstance, ) -proc newVkPhysicalDevicePCIBusInfoPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, pciDomain: uint32, pciBus: uint32, pciDevice: uint32, pciFunction: uint32): VkPhysicalDevicePCIBusInfoPropertiesEXT = +proc newVkPhysicalDevicePCIBusInfoPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDevicePCIBusInfoPropertiesEXT, pNext: pointer = nil, pciDomain: uint32, pciBus: uint32, pciDevice: uint32, pciFunction: uint32): VkPhysicalDevicePCIBusInfoPropertiesEXT = result = VkPhysicalDevicePCIBusInfoPropertiesEXT( sType: sType, pNext: pNext, @@ -14561,21 +15810,21 @@ proc newVkPhysicalDevicePCIBusInfoPropertiesEXT*(sType: VkStructureType, pNext: pciFunction: pciFunction, ) -proc newVkImportAndroidHardwareBufferInfoANDROID*(sType: VkStructureType, pNext: pointer = nil, buffer: ptr AHardwareBuffer): VkImportAndroidHardwareBufferInfoANDROID = +proc newVkImportAndroidHardwareBufferInfoANDROID*(sType: VkStructureType = VkStructureType.ImportAndroidHardwareBufferInfoANDROID, pNext: pointer = nil, buffer: ptr AHardwareBuffer): VkImportAndroidHardwareBufferInfoANDROID = result = VkImportAndroidHardwareBufferInfoANDROID( sType: sType, pNext: pNext, buffer: buffer, ) -proc newVkAndroidHardwareBufferUsageANDROID*(sType: VkStructureType, pNext: pointer = nil, androidHardwareBufferUsage: uint64): VkAndroidHardwareBufferUsageANDROID = +proc newVkAndroidHardwareBufferUsageANDROID*(sType: VkStructureType = VkStructureType.AndroidHardwareBufferUsageANDROID, pNext: pointer = nil, androidHardwareBufferUsage: uint64): VkAndroidHardwareBufferUsageANDROID = result = VkAndroidHardwareBufferUsageANDROID( sType: sType, pNext: pNext, androidHardwareBufferUsage: androidHardwareBufferUsage, ) -proc newVkAndroidHardwareBufferPropertiesANDROID*(sType: VkStructureType, pNext: pointer = nil, allocationSize: VkDeviceSize, memoryTypeBits: uint32): VkAndroidHardwareBufferPropertiesANDROID = +proc newVkAndroidHardwareBufferPropertiesANDROID*(sType: VkStructureType = VkStructureType.AndroidHardwareBufferPropertiesANDROID, pNext: pointer = nil, allocationSize: VkDeviceSize, memoryTypeBits: uint32): VkAndroidHardwareBufferPropertiesANDROID = result = VkAndroidHardwareBufferPropertiesANDROID( sType: sType, pNext: pNext, @@ -14583,14 +15832,14 @@ proc newVkAndroidHardwareBufferPropertiesANDROID*(sType: VkStructureType, pNext: memoryTypeBits: memoryTypeBits, ) -proc newVkMemoryGetAndroidHardwareBufferInfoANDROID*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory): VkMemoryGetAndroidHardwareBufferInfoANDROID = +proc newVkMemoryGetAndroidHardwareBufferInfoANDROID*(sType: VkStructureType = VkStructureType.MemoryGetAndroidHardwareBufferInfoANDROID, pNext: pointer = nil, memory: VkDeviceMemory): VkMemoryGetAndroidHardwareBufferInfoANDROID = result = VkMemoryGetAndroidHardwareBufferInfoANDROID( sType: sType, pNext: pNext, memory: memory, ) -proc newVkAndroidHardwareBufferFormatPropertiesANDROID*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat, externalFormat: uint64, formatFeatures: VkFormatFeatureFlags, samplerYcbcrConversionComponents: VkComponentMapping, suggestedYcbcrModel: VkSamplerYcbcrModelConversion, suggestedYcbcrRange: VkSamplerYcbcrRange, suggestedXChromaOffset: VkChromaLocation, suggestedYChromaOffset: VkChromaLocation): VkAndroidHardwareBufferFormatPropertiesANDROID = +proc newVkAndroidHardwareBufferFormatPropertiesANDROID*(sType: VkStructureType = VkStructureType.AndroidHardwareBufferFormatPropertiesANDROID, pNext: pointer = nil, format: VkFormat, externalFormat: uint64, formatFeatures: VkFormatFeatureFlags, samplerYcbcrConversionComponents: VkComponentMapping, suggestedYcbcrModel: VkSamplerYcbcrModelConversion, suggestedYcbcrRange: VkSamplerYcbcrRange, suggestedXChromaOffset: VkChromaLocation, suggestedYChromaOffset: VkChromaLocation): VkAndroidHardwareBufferFormatPropertiesANDROID = result = VkAndroidHardwareBufferFormatPropertiesANDROID( sType: sType, pNext: pNext, @@ -14604,14 +15853,14 @@ proc newVkAndroidHardwareBufferFormatPropertiesANDROID*(sType: VkStructureType, suggestedYChromaOffset: suggestedYChromaOffset, ) -proc newVkCommandBufferInheritanceConditionalRenderingInfoEXT*(sType: VkStructureType, pNext: pointer = nil, conditionalRenderingEnable: VkBool32): VkCommandBufferInheritanceConditionalRenderingInfoEXT = +proc newVkCommandBufferInheritanceConditionalRenderingInfoEXT*(sType: VkStructureType = VkStructureType.CommandBufferInheritanceConditionalRenderingInfoEXT, pNext: pointer = nil, conditionalRenderingEnable: VkBool32): VkCommandBufferInheritanceConditionalRenderingInfoEXT = result = VkCommandBufferInheritanceConditionalRenderingInfoEXT( sType: sType, pNext: pNext, conditionalRenderingEnable: conditionalRenderingEnable, ) -proc newVkExternalFormatANDROID*(sType: VkStructureType, pNext: pointer = nil, externalFormat: uint64): VkExternalFormatANDROID = +proc newVkExternalFormatANDROID*(sType: VkStructureType = VkStructureType.ExternalFormatANDROID, pNext: pointer = nil, externalFormat: uint64): VkExternalFormatANDROID = result = VkExternalFormatANDROID( sType: sType, pNext: pNext, @@ -14627,7 +15876,7 @@ proc newVkPhysicalDevice8BitStorageFeatures*(sType: VkStructureType, pNext: poin storagePushConstant8: storagePushConstant8, ) -proc newVkPhysicalDeviceConditionalRenderingFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, conditionalRendering: VkBool32, inheritedConditionalRendering: VkBool32): VkPhysicalDeviceConditionalRenderingFeaturesEXT = +proc newVkPhysicalDeviceConditionalRenderingFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceConditionalRenderingFeaturesEXT, pNext: pointer = nil, conditionalRendering: VkBool32, inheritedConditionalRendering: VkBool32): VkPhysicalDeviceConditionalRenderingFeaturesEXT = result = VkPhysicalDeviceConditionalRenderingFeaturesEXT( sType: sType, pNext: pNext, @@ -14652,7 +15901,7 @@ proc newVkPhysicalDeviceShaderAtomicInt64Features*(sType: VkStructureType, pNext shaderSharedInt64Atomics: shaderSharedInt64Atomics, ) -proc newVkPhysicalDeviceShaderAtomicFloatFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderBufferFloat32Atomics: VkBool32, shaderBufferFloat32AtomicAdd: VkBool32, shaderBufferFloat64Atomics: VkBool32, shaderBufferFloat64AtomicAdd: VkBool32, shaderSharedFloat32Atomics: VkBool32, shaderSharedFloat32AtomicAdd: VkBool32, shaderSharedFloat64Atomics: VkBool32, shaderSharedFloat64AtomicAdd: VkBool32, shaderImageFloat32Atomics: VkBool32, shaderImageFloat32AtomicAdd: VkBool32, sparseImageFloat32Atomics: VkBool32, sparseImageFloat32AtomicAdd: VkBool32): VkPhysicalDeviceShaderAtomicFloatFeaturesEXT = +proc newVkPhysicalDeviceShaderAtomicFloatFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderAtomicFloatFeaturesEXT, pNext: pointer = nil, shaderBufferFloat32Atomics: VkBool32, shaderBufferFloat32AtomicAdd: VkBool32, shaderBufferFloat64Atomics: VkBool32, shaderBufferFloat64AtomicAdd: VkBool32, shaderSharedFloat32Atomics: VkBool32, shaderSharedFloat32AtomicAdd: VkBool32, shaderSharedFloat64Atomics: VkBool32, shaderSharedFloat64AtomicAdd: VkBool32, shaderImageFloat32Atomics: VkBool32, shaderImageFloat32AtomicAdd: VkBool32, sparseImageFloat32Atomics: VkBool32, sparseImageFloat32AtomicAdd: VkBool32): VkPhysicalDeviceShaderAtomicFloatFeaturesEXT = result = VkPhysicalDeviceShaderAtomicFloatFeaturesEXT( sType: sType, pNext: pNext, @@ -14670,7 +15919,7 @@ proc newVkPhysicalDeviceShaderAtomicFloatFeaturesEXT*(sType: VkStructureType, pN sparseImageFloat32AtomicAdd: sparseImageFloat32AtomicAdd, ) -proc newVkPhysicalDeviceShaderAtomicFloat2FeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderBufferFloat16Atomics: VkBool32, shaderBufferFloat16AtomicAdd: VkBool32, shaderBufferFloat16AtomicMinMax: VkBool32, shaderBufferFloat32AtomicMinMax: VkBool32, shaderBufferFloat64AtomicMinMax: VkBool32, shaderSharedFloat16Atomics: VkBool32, shaderSharedFloat16AtomicAdd: VkBool32, shaderSharedFloat16AtomicMinMax: VkBool32, shaderSharedFloat32AtomicMinMax: VkBool32, shaderSharedFloat64AtomicMinMax: VkBool32, shaderImageFloat32AtomicMinMax: VkBool32, sparseImageFloat32AtomicMinMax: VkBool32): VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT = +proc newVkPhysicalDeviceShaderAtomicFloat2FeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderAtomicFloat2FeaturesEXT, pNext: pointer = nil, shaderBufferFloat16Atomics: VkBool32, shaderBufferFloat16AtomicAdd: VkBool32, shaderBufferFloat16AtomicMinMax: VkBool32, shaderBufferFloat32AtomicMinMax: VkBool32, shaderBufferFloat64AtomicMinMax: VkBool32, shaderSharedFloat16Atomics: VkBool32, shaderSharedFloat16AtomicAdd: VkBool32, shaderSharedFloat16AtomicMinMax: VkBool32, shaderSharedFloat32AtomicMinMax: VkBool32, shaderSharedFloat64AtomicMinMax: VkBool32, shaderImageFloat32AtomicMinMax: VkBool32, sparseImageFloat32AtomicMinMax: VkBool32): VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT = result = VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT( sType: sType, pNext: pNext, @@ -14688,7 +15937,7 @@ proc newVkPhysicalDeviceShaderAtomicFloat2FeaturesEXT*(sType: VkStructureType, p sparseImageFloat32AtomicMinMax: sparseImageFloat32AtomicMinMax, ) -proc newVkPhysicalDeviceVertexAttributeDivisorFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, vertexAttributeInstanceRateDivisor: VkBool32, vertexAttributeInstanceRateZeroDivisor: VkBool32): VkPhysicalDeviceVertexAttributeDivisorFeaturesKHR = +proc newVkPhysicalDeviceVertexAttributeDivisorFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceVertexAttributeDivisorFeaturesKHR, pNext: pointer = nil, vertexAttributeInstanceRateDivisor: VkBool32, vertexAttributeInstanceRateZeroDivisor: VkBool32): VkPhysicalDeviceVertexAttributeDivisorFeaturesKHR = result = VkPhysicalDeviceVertexAttributeDivisorFeaturesKHR( sType: sType, pNext: pNext, @@ -14696,14 +15945,14 @@ proc newVkPhysicalDeviceVertexAttributeDivisorFeaturesKHR*(sType: VkStructureTyp vertexAttributeInstanceRateZeroDivisor: vertexAttributeInstanceRateZeroDivisor, ) -proc newVkQueueFamilyCheckpointPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, checkpointExecutionStageMask: VkPipelineStageFlags): VkQueueFamilyCheckpointPropertiesNV = +proc newVkQueueFamilyCheckpointPropertiesNV*(sType: VkStructureType = VkStructureType.QueueFamilyCheckpointPropertiesNV, pNext: pointer = nil, checkpointExecutionStageMask: VkPipelineStageFlags): VkQueueFamilyCheckpointPropertiesNV = result = VkQueueFamilyCheckpointPropertiesNV( sType: sType, pNext: pNext, checkpointExecutionStageMask: checkpointExecutionStageMask, ) -proc newVkCheckpointDataNV*(sType: VkStructureType, pNext: pointer = nil, stage: VkPipelineStageFlagBits, pCheckpointMarker: pointer = nil): VkCheckpointDataNV = +proc newVkCheckpointDataNV*(sType: VkStructureType = VkStructureType.CheckpointDataNV, pNext: pointer = nil, stage: VkPipelineStageFlagBits, pCheckpointMarker: pointer = nil): VkCheckpointDataNV = result = VkCheckpointDataNV( sType: sType, pNext: pNext, @@ -14730,21 +15979,21 @@ proc newVkSubpassDescriptionDepthStencilResolve*(sType: VkStructureType, pNext: pDepthStencilResolveAttachment: pDepthStencilResolveAttachment, ) -proc newVkImageViewASTCDecodeModeEXT*(sType: VkStructureType, pNext: pointer = nil, decodeMode: VkFormat): VkImageViewASTCDecodeModeEXT = +proc newVkImageViewASTCDecodeModeEXT*(sType: VkStructureType = VkStructureType.ImageViewASTCDecodeModeEXT, pNext: pointer = nil, decodeMode: VkFormat): VkImageViewASTCDecodeModeEXT = result = VkImageViewASTCDecodeModeEXT( sType: sType, pNext: pNext, decodeMode: decodeMode, ) -proc newVkPhysicalDeviceASTCDecodeFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, decodeModeSharedExponent: VkBool32): VkPhysicalDeviceASTCDecodeFeaturesEXT = +proc newVkPhysicalDeviceASTCDecodeFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceASTCDecodeFeaturesEXT, pNext: pointer = nil, decodeModeSharedExponent: VkBool32): VkPhysicalDeviceASTCDecodeFeaturesEXT = result = VkPhysicalDeviceASTCDecodeFeaturesEXT( sType: sType, pNext: pNext, decodeModeSharedExponent: decodeModeSharedExponent, ) -proc newVkPhysicalDeviceTransformFeedbackFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, transformFeedback: VkBool32, geometryStreams: VkBool32): VkPhysicalDeviceTransformFeedbackFeaturesEXT = +proc newVkPhysicalDeviceTransformFeedbackFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceTransformFeedbackFeaturesEXT, pNext: pointer = nil, transformFeedback: VkBool32, geometryStreams: VkBool32): VkPhysicalDeviceTransformFeedbackFeaturesEXT = result = VkPhysicalDeviceTransformFeedbackFeaturesEXT( sType: sType, pNext: pNext, @@ -14752,7 +16001,7 @@ proc newVkPhysicalDeviceTransformFeedbackFeaturesEXT*(sType: VkStructureType, pN geometryStreams: geometryStreams, ) -proc newVkPhysicalDeviceTransformFeedbackPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxTransformFeedbackStreams: uint32, maxTransformFeedbackBuffers: uint32, maxTransformFeedbackBufferSize: VkDeviceSize, maxTransformFeedbackStreamDataSize: uint32, maxTransformFeedbackBufferDataSize: uint32, maxTransformFeedbackBufferDataStride: uint32, transformFeedbackQueries: VkBool32, transformFeedbackStreamsLinesTriangles: VkBool32, transformFeedbackRasterizationStreamSelect: VkBool32, transformFeedbackDraw: VkBool32): VkPhysicalDeviceTransformFeedbackPropertiesEXT = +proc newVkPhysicalDeviceTransformFeedbackPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceTransformFeedbackPropertiesEXT, pNext: pointer = nil, maxTransformFeedbackStreams: uint32, maxTransformFeedbackBuffers: uint32, maxTransformFeedbackBufferSize: VkDeviceSize, maxTransformFeedbackStreamDataSize: uint32, maxTransformFeedbackBufferDataSize: uint32, maxTransformFeedbackBufferDataStride: uint32, transformFeedbackQueries: VkBool32, transformFeedbackStreamsLinesTriangles: VkBool32, transformFeedbackRasterizationStreamSelect: VkBool32, transformFeedbackDraw: VkBool32): VkPhysicalDeviceTransformFeedbackPropertiesEXT = result = VkPhysicalDeviceTransformFeedbackPropertiesEXT( sType: sType, pNext: pNext, @@ -14768,7 +16017,7 @@ proc newVkPhysicalDeviceTransformFeedbackPropertiesEXT*(sType: VkStructureType, transformFeedbackDraw: transformFeedbackDraw, ) -proc newVkPipelineRasterizationStateStreamCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineRasterizationStateStreamCreateFlagsEXT = 0.VkPipelineRasterizationStateStreamCreateFlagsEXT, rasterizationStream: uint32): VkPipelineRasterizationStateStreamCreateInfoEXT = +proc newVkPipelineRasterizationStateStreamCreateInfoEXT*(sType: VkStructureType = VkStructureType.PipelineRasterizationStateStreamCreateInfoEXT, pNext: pointer = nil, flags: VkPipelineRasterizationStateStreamCreateFlagsEXT = 0.VkPipelineRasterizationStateStreamCreateFlagsEXT, rasterizationStream: uint32): VkPipelineRasterizationStateStreamCreateInfoEXT = result = VkPipelineRasterizationStateStreamCreateInfoEXT( sType: sType, pNext: pNext, @@ -14776,28 +16025,28 @@ proc newVkPipelineRasterizationStateStreamCreateInfoEXT*(sType: VkStructureType, rasterizationStream: rasterizationStream, ) -proc newVkPhysicalDeviceRepresentativeFragmentTestFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, representativeFragmentTest: VkBool32): VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV = +proc newVkPhysicalDeviceRepresentativeFragmentTestFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceRepresentativeFragmentTestFeaturesNV, pNext: pointer = nil, representativeFragmentTest: VkBool32): VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV = result = VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV( sType: sType, pNext: pNext, representativeFragmentTest: representativeFragmentTest, ) -proc newVkPipelineRepresentativeFragmentTestStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, representativeFragmentTestEnable: VkBool32): VkPipelineRepresentativeFragmentTestStateCreateInfoNV = +proc newVkPipelineRepresentativeFragmentTestStateCreateInfoNV*(sType: VkStructureType = VkStructureType.PipelineRepresentativeFragmentTestStateCreateInfoNV, pNext: pointer = nil, representativeFragmentTestEnable: VkBool32): VkPipelineRepresentativeFragmentTestStateCreateInfoNV = result = VkPipelineRepresentativeFragmentTestStateCreateInfoNV( sType: sType, pNext: pNext, representativeFragmentTestEnable: representativeFragmentTestEnable, ) -proc newVkPhysicalDeviceExclusiveScissorFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, exclusiveScissor: VkBool32): VkPhysicalDeviceExclusiveScissorFeaturesNV = +proc newVkPhysicalDeviceExclusiveScissorFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceExclusiveScissorFeaturesNV, pNext: pointer = nil, exclusiveScissor: VkBool32): VkPhysicalDeviceExclusiveScissorFeaturesNV = result = VkPhysicalDeviceExclusiveScissorFeaturesNV( sType: sType, pNext: pNext, exclusiveScissor: exclusiveScissor, ) -proc newVkPipelineViewportExclusiveScissorStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, exclusiveScissorCount: uint32, pExclusiveScissors: ptr VkRect2D): VkPipelineViewportExclusiveScissorStateCreateInfoNV = +proc newVkPipelineViewportExclusiveScissorStateCreateInfoNV*(sType: VkStructureType = VkStructureType.PipelineViewportExclusiveScissorStateCreateInfoNV, pNext: pointer = nil, exclusiveScissorCount: uint32, pExclusiveScissors: ptr VkRect2D): VkPipelineViewportExclusiveScissorStateCreateInfoNV = result = VkPipelineViewportExclusiveScissorStateCreateInfoNV( sType: sType, pNext: pNext, @@ -14805,14 +16054,14 @@ proc newVkPipelineViewportExclusiveScissorStateCreateInfoNV*(sType: VkStructureT pExclusiveScissors: pExclusiveScissors, ) -proc newVkPhysicalDeviceCornerSampledImageFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, cornerSampledImage: VkBool32): VkPhysicalDeviceCornerSampledImageFeaturesNV = +proc newVkPhysicalDeviceCornerSampledImageFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceCornerSampledImageFeaturesNV, pNext: pointer = nil, cornerSampledImage: VkBool32): VkPhysicalDeviceCornerSampledImageFeaturesNV = result = VkPhysicalDeviceCornerSampledImageFeaturesNV( sType: sType, pNext: pNext, cornerSampledImage: cornerSampledImage, ) -proc newVkPhysicalDeviceComputeShaderDerivativesFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, computeDerivativeGroupQuads: VkBool32, computeDerivativeGroupLinear: VkBool32): VkPhysicalDeviceComputeShaderDerivativesFeaturesNV = +proc newVkPhysicalDeviceComputeShaderDerivativesFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceComputeShaderDerivativesFeaturesNV, pNext: pointer = nil, computeDerivativeGroupQuads: VkBool32, computeDerivativeGroupLinear: VkBool32): VkPhysicalDeviceComputeShaderDerivativesFeaturesNV = result = VkPhysicalDeviceComputeShaderDerivativesFeaturesNV( sType: sType, pNext: pNext, @@ -14820,42 +16069,42 @@ proc newVkPhysicalDeviceComputeShaderDerivativesFeaturesNV*(sType: VkStructureTy computeDerivativeGroupLinear: computeDerivativeGroupLinear, ) -proc newVkPhysicalDeviceShaderImageFootprintFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, imageFootprint: VkBool32): VkPhysicalDeviceShaderImageFootprintFeaturesNV = +proc newVkPhysicalDeviceShaderImageFootprintFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderImageFootprintFeaturesNV, pNext: pointer = nil, imageFootprint: VkBool32): VkPhysicalDeviceShaderImageFootprintFeaturesNV = result = VkPhysicalDeviceShaderImageFootprintFeaturesNV( sType: sType, pNext: pNext, imageFootprint: imageFootprint, ) -proc newVkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, dedicatedAllocationImageAliasing: VkBool32): VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV = +proc newVkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV, pNext: pointer = nil, dedicatedAllocationImageAliasing: VkBool32): VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV = result = VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV( sType: sType, pNext: pNext, dedicatedAllocationImageAliasing: dedicatedAllocationImageAliasing, ) -proc newVkPhysicalDeviceCopyMemoryIndirectFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, indirectCopy: VkBool32): VkPhysicalDeviceCopyMemoryIndirectFeaturesNV = +proc newVkPhysicalDeviceCopyMemoryIndirectFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceCopyMemoryIndirectFeaturesNV, pNext: pointer = nil, indirectCopy: VkBool32): VkPhysicalDeviceCopyMemoryIndirectFeaturesNV = result = VkPhysicalDeviceCopyMemoryIndirectFeaturesNV( sType: sType, pNext: pNext, indirectCopy: indirectCopy, ) -proc newVkPhysicalDeviceCopyMemoryIndirectPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, supportedQueues: VkQueueFlags): VkPhysicalDeviceCopyMemoryIndirectPropertiesNV = +proc newVkPhysicalDeviceCopyMemoryIndirectPropertiesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceCopyMemoryIndirectPropertiesNV, pNext: pointer = nil, supportedQueues: VkQueueFlags): VkPhysicalDeviceCopyMemoryIndirectPropertiesNV = result = VkPhysicalDeviceCopyMemoryIndirectPropertiesNV( sType: sType, pNext: pNext, supportedQueues: supportedQueues, ) -proc newVkPhysicalDeviceMemoryDecompressionFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, memoryDecompression: VkBool32): VkPhysicalDeviceMemoryDecompressionFeaturesNV = +proc newVkPhysicalDeviceMemoryDecompressionFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceMemoryDecompressionFeaturesNV, pNext: pointer = nil, memoryDecompression: VkBool32): VkPhysicalDeviceMemoryDecompressionFeaturesNV = result = VkPhysicalDeviceMemoryDecompressionFeaturesNV( sType: sType, pNext: pNext, memoryDecompression: memoryDecompression, ) -proc newVkPhysicalDeviceMemoryDecompressionPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, decompressionMethods: VkMemoryDecompressionMethodFlagsNV, maxDecompressionIndirectCount: uint64): VkPhysicalDeviceMemoryDecompressionPropertiesNV = +proc newVkPhysicalDeviceMemoryDecompressionPropertiesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceMemoryDecompressionPropertiesNV, pNext: pointer = nil, decompressionMethods: VkMemoryDecompressionMethodFlagsNV, maxDecompressionIndirectCount: uint64): VkPhysicalDeviceMemoryDecompressionPropertiesNV = result = VkPhysicalDeviceMemoryDecompressionPropertiesNV( sType: sType, pNext: pNext, @@ -14869,7 +16118,7 @@ proc newVkShadingRatePaletteNV*(shadingRatePaletteEntryCount: uint32, pShadingRa pShadingRatePaletteEntries: pShadingRatePaletteEntries, ) -proc newVkPipelineViewportShadingRateImageStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, shadingRateImageEnable: VkBool32, viewportCount: uint32, pShadingRatePalettes: ptr VkShadingRatePaletteNV): VkPipelineViewportShadingRateImageStateCreateInfoNV = +proc newVkPipelineViewportShadingRateImageStateCreateInfoNV*(sType: VkStructureType = VkStructureType.PipelineViewportShadingRateImageStateCreateInfoNV, pNext: pointer = nil, shadingRateImageEnable: VkBool32, viewportCount: uint32, pShadingRatePalettes: ptr VkShadingRatePaletteNV): VkPipelineViewportShadingRateImageStateCreateInfoNV = result = VkPipelineViewportShadingRateImageStateCreateInfoNV( sType: sType, pNext: pNext, @@ -14878,7 +16127,7 @@ proc newVkPipelineViewportShadingRateImageStateCreateInfoNV*(sType: VkStructureT pShadingRatePalettes: pShadingRatePalettes, ) -proc newVkPhysicalDeviceShadingRateImageFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, shadingRateImage: VkBool32, shadingRateCoarseSampleOrder: VkBool32): VkPhysicalDeviceShadingRateImageFeaturesNV = +proc newVkPhysicalDeviceShadingRateImageFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceShadingRateImageFeaturesNV, pNext: pointer = nil, shadingRateImage: VkBool32, shadingRateCoarseSampleOrder: VkBool32): VkPhysicalDeviceShadingRateImageFeaturesNV = result = VkPhysicalDeviceShadingRateImageFeaturesNV( sType: sType, pNext: pNext, @@ -14886,7 +16135,7 @@ proc newVkPhysicalDeviceShadingRateImageFeaturesNV*(sType: VkStructureType, pNex shadingRateCoarseSampleOrder: shadingRateCoarseSampleOrder, ) -proc newVkPhysicalDeviceShadingRateImagePropertiesNV*(sType: VkStructureType, pNext: pointer = nil, shadingRateTexelSize: VkExtent2D, shadingRatePaletteSize: uint32, shadingRateMaxCoarseSamples: uint32): VkPhysicalDeviceShadingRateImagePropertiesNV = +proc newVkPhysicalDeviceShadingRateImagePropertiesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceShadingRateImagePropertiesNV, pNext: pointer = nil, shadingRateTexelSize: VkExtent2D, shadingRatePaletteSize: uint32, shadingRateMaxCoarseSamples: uint32): VkPhysicalDeviceShadingRateImagePropertiesNV = result = VkPhysicalDeviceShadingRateImagePropertiesNV( sType: sType, pNext: pNext, @@ -14895,7 +16144,7 @@ proc newVkPhysicalDeviceShadingRateImagePropertiesNV*(sType: VkStructureType, pN shadingRateMaxCoarseSamples: shadingRateMaxCoarseSamples, ) -proc newVkPhysicalDeviceInvocationMaskFeaturesHUAWEI*(sType: VkStructureType, pNext: pointer = nil, invocationMask: VkBool32): VkPhysicalDeviceInvocationMaskFeaturesHUAWEI = +proc newVkPhysicalDeviceInvocationMaskFeaturesHUAWEI*(sType: VkStructureType = VkStructureType.PhysicalDeviceInvocationMaskFeaturesHUAWEI, pNext: pointer = nil, invocationMask: VkBool32): VkPhysicalDeviceInvocationMaskFeaturesHUAWEI = result = VkPhysicalDeviceInvocationMaskFeaturesHUAWEI( sType: sType, pNext: pNext, @@ -14917,7 +16166,7 @@ proc newVkCoarseSampleOrderCustomNV*(shadingRate: VkShadingRatePaletteEntryNV, s pSampleLocations: pSampleLocations, ) -proc newVkPipelineViewportCoarseSampleOrderStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, sampleOrderType: VkCoarseSampleOrderTypeNV, customSampleOrderCount: uint32, pCustomSampleOrders: ptr VkCoarseSampleOrderCustomNV): VkPipelineViewportCoarseSampleOrderStateCreateInfoNV = +proc newVkPipelineViewportCoarseSampleOrderStateCreateInfoNV*(sType: VkStructureType = VkStructureType.PipelineViewportCoarseSampleOrderStateCreateInfoNV, pNext: pointer = nil, sampleOrderType: VkCoarseSampleOrderTypeNV, customSampleOrderCount: uint32, pCustomSampleOrders: ptr VkCoarseSampleOrderCustomNV): VkPipelineViewportCoarseSampleOrderStateCreateInfoNV = result = VkPipelineViewportCoarseSampleOrderStateCreateInfoNV( sType: sType, pNext: pNext, @@ -14926,7 +16175,7 @@ proc newVkPipelineViewportCoarseSampleOrderStateCreateInfoNV*(sType: VkStructure pCustomSampleOrders: pCustomSampleOrders, ) -proc newVkPhysicalDeviceMeshShaderFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, taskShader: VkBool32, meshShader: VkBool32): VkPhysicalDeviceMeshShaderFeaturesNV = +proc newVkPhysicalDeviceMeshShaderFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceMeshShaderFeaturesNV, pNext: pointer = nil, taskShader: VkBool32, meshShader: VkBool32): VkPhysicalDeviceMeshShaderFeaturesNV = result = VkPhysicalDeviceMeshShaderFeaturesNV( sType: sType, pNext: pNext, @@ -14934,7 +16183,7 @@ proc newVkPhysicalDeviceMeshShaderFeaturesNV*(sType: VkStructureType, pNext: poi meshShader: meshShader, ) -proc newVkPhysicalDeviceMeshShaderPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, maxDrawMeshTasksCount: uint32, maxTaskWorkGroupInvocations: uint32, maxTaskWorkGroupSize: array[3, uint32], maxTaskTotalMemorySize: uint32, maxTaskOutputCount: uint32, maxMeshWorkGroupInvocations: uint32, maxMeshWorkGroupSize: array[3, uint32], maxMeshTotalMemorySize: uint32, maxMeshOutputVertices: uint32, maxMeshOutputPrimitives: uint32, maxMeshMultiviewViewCount: uint32, meshOutputPerVertexGranularity: uint32, meshOutputPerPrimitiveGranularity: uint32): VkPhysicalDeviceMeshShaderPropertiesNV = +proc newVkPhysicalDeviceMeshShaderPropertiesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceMeshShaderPropertiesNV, pNext: pointer = nil, maxDrawMeshTasksCount: uint32, maxTaskWorkGroupInvocations: uint32, maxTaskWorkGroupSize: array[3, uint32], maxTaskTotalMemorySize: uint32, maxTaskOutputCount: uint32, maxMeshWorkGroupInvocations: uint32, maxMeshWorkGroupSize: array[3, uint32], maxMeshTotalMemorySize: uint32, maxMeshOutputVertices: uint32, maxMeshOutputPrimitives: uint32, maxMeshMultiviewViewCount: uint32, meshOutputPerVertexGranularity: uint32, meshOutputPerPrimitiveGranularity: uint32): VkPhysicalDeviceMeshShaderPropertiesNV = result = VkPhysicalDeviceMeshShaderPropertiesNV( sType: sType, pNext: pNext, @@ -14959,7 +16208,7 @@ proc newVkDrawMeshTasksIndirectCommandNV*(taskCount: uint32, firstTask: uint32): firstTask: firstTask, ) -proc newVkPhysicalDeviceMeshShaderFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, taskShader: VkBool32, meshShader: VkBool32, multiviewMeshShader: VkBool32, primitiveFragmentShadingRateMeshShader: VkBool32, meshShaderQueries: VkBool32): VkPhysicalDeviceMeshShaderFeaturesEXT = +proc newVkPhysicalDeviceMeshShaderFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceMeshShaderFeaturesEXT, pNext: pointer = nil, taskShader: VkBool32, meshShader: VkBool32, multiviewMeshShader: VkBool32, primitiveFragmentShadingRateMeshShader: VkBool32, meshShaderQueries: VkBool32): VkPhysicalDeviceMeshShaderFeaturesEXT = result = VkPhysicalDeviceMeshShaderFeaturesEXT( sType: sType, pNext: pNext, @@ -14970,7 +16219,7 @@ proc newVkPhysicalDeviceMeshShaderFeaturesEXT*(sType: VkStructureType, pNext: po meshShaderQueries: meshShaderQueries, ) -proc newVkPhysicalDeviceMeshShaderPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxTaskWorkGroupTotalCount: uint32, maxTaskWorkGroupCount: array[3, uint32], maxTaskWorkGroupInvocations: uint32, maxTaskWorkGroupSize: array[3, uint32], maxTaskPayloadSize: uint32, maxTaskSharedMemorySize: uint32, maxTaskPayloadAndSharedMemorySize: uint32, maxMeshWorkGroupTotalCount: uint32, maxMeshWorkGroupCount: array[3, uint32], maxMeshWorkGroupInvocations: uint32, maxMeshWorkGroupSize: array[3, uint32], maxMeshSharedMemorySize: uint32, maxMeshPayloadAndSharedMemorySize: uint32, maxMeshOutputMemorySize: uint32, maxMeshPayloadAndOutputMemorySize: uint32, maxMeshOutputComponents: uint32, maxMeshOutputVertices: uint32, maxMeshOutputPrimitives: uint32, maxMeshOutputLayers: uint32, maxMeshMultiviewViewCount: uint32, meshOutputPerVertexGranularity: uint32, meshOutputPerPrimitiveGranularity: uint32, maxPreferredTaskWorkGroupInvocations: uint32, maxPreferredMeshWorkGroupInvocations: uint32, prefersLocalInvocationVertexOutput: VkBool32, prefersLocalInvocationPrimitiveOutput: VkBool32, prefersCompactVertexOutput: VkBool32, prefersCompactPrimitiveOutput: VkBool32): VkPhysicalDeviceMeshShaderPropertiesEXT = +proc newVkPhysicalDeviceMeshShaderPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceMeshShaderPropertiesEXT, pNext: pointer = nil, maxTaskWorkGroupTotalCount: uint32, maxTaskWorkGroupCount: array[3, uint32], maxTaskWorkGroupInvocations: uint32, maxTaskWorkGroupSize: array[3, uint32], maxTaskPayloadSize: uint32, maxTaskSharedMemorySize: uint32, maxTaskPayloadAndSharedMemorySize: uint32, maxMeshWorkGroupTotalCount: uint32, maxMeshWorkGroupCount: array[3, uint32], maxMeshWorkGroupInvocations: uint32, maxMeshWorkGroupSize: array[3, uint32], maxMeshSharedMemorySize: uint32, maxMeshPayloadAndSharedMemorySize: uint32, maxMeshOutputMemorySize: uint32, maxMeshPayloadAndOutputMemorySize: uint32, maxMeshOutputComponents: uint32, maxMeshOutputVertices: uint32, maxMeshOutputPrimitives: uint32, maxMeshOutputLayers: uint32, maxMeshMultiviewViewCount: uint32, meshOutputPerVertexGranularity: uint32, meshOutputPerPrimitiveGranularity: uint32, maxPreferredTaskWorkGroupInvocations: uint32, maxPreferredMeshWorkGroupInvocations: uint32, prefersLocalInvocationVertexOutput: VkBool32, prefersLocalInvocationPrimitiveOutput: VkBool32, prefersCompactVertexOutput: VkBool32, prefersCompactPrimitiveOutput: VkBool32): VkPhysicalDeviceMeshShaderPropertiesEXT = result = VkPhysicalDeviceMeshShaderPropertiesEXT( sType: sType, pNext: pNext, @@ -15011,7 +16260,7 @@ proc newVkDrawMeshTasksIndirectCommandEXT*(groupCountX: uint32, groupCountY: uin groupCountZ: groupCountZ, ) -proc newVkRayTracingShaderGroupCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, `type`: VkRayTracingShaderGroupTypeKHR, generalShader: uint32, closestHitShader: uint32, anyHitShader: uint32, intersectionShader: uint32): VkRayTracingShaderGroupCreateInfoNV = +proc newVkRayTracingShaderGroupCreateInfoNV*(sType: VkStructureType = VkStructureType.RayTracingShaderGroupCreateInfoNV, pNext: pointer = nil, `type`: VkRayTracingShaderGroupTypeKHR, generalShader: uint32, closestHitShader: uint32, anyHitShader: uint32, intersectionShader: uint32): VkRayTracingShaderGroupCreateInfoNV = result = VkRayTracingShaderGroupCreateInfoNV( sType: sType, pNext: pNext, @@ -15022,7 +16271,7 @@ proc newVkRayTracingShaderGroupCreateInfoNV*(sType: VkStructureType, pNext: poin intersectionShader: intersectionShader, ) -proc newVkRayTracingShaderGroupCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, `type`: VkRayTracingShaderGroupTypeKHR, generalShader: uint32, closestHitShader: uint32, anyHitShader: uint32, intersectionShader: uint32, pShaderGroupCaptureReplayHandle: pointer = nil): VkRayTracingShaderGroupCreateInfoKHR = +proc newVkRayTracingShaderGroupCreateInfoKHR*(sType: VkStructureType = VkStructureType.RayTracingShaderGroupCreateInfoKHR, pNext: pointer = nil, `type`: VkRayTracingShaderGroupTypeKHR, generalShader: uint32, closestHitShader: uint32, anyHitShader: uint32, intersectionShader: uint32, pShaderGroupCaptureReplayHandle: pointer = nil): VkRayTracingShaderGroupCreateInfoKHR = result = VkRayTracingShaderGroupCreateInfoKHR( sType: sType, pNext: pNext, @@ -15034,7 +16283,7 @@ proc newVkRayTracingShaderGroupCreateInfoKHR*(sType: VkStructureType, pNext: poi pShaderGroupCaptureReplayHandle: pShaderGroupCaptureReplayHandle, ) -proc newVkRayTracingPipelineCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, groupCount: uint32, pGroups: ptr VkRayTracingShaderGroupCreateInfoNV, maxRecursionDepth: uint32, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkRayTracingPipelineCreateInfoNV = +proc newVkRayTracingPipelineCreateInfoNV*(sType: VkStructureType = VkStructureType.RayTracingPipelineCreateInfoNV, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, groupCount: uint32, pGroups: ptr VkRayTracingShaderGroupCreateInfoNV, maxRecursionDepth: uint32, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkRayTracingPipelineCreateInfoNV = result = VkRayTracingPipelineCreateInfoNV( sType: sType, pNext: pNext, @@ -15049,7 +16298,7 @@ proc newVkRayTracingPipelineCreateInfoNV*(sType: VkStructureType, pNext: pointer basePipelineIndex: basePipelineIndex, ) -proc newVkRayTracingPipelineCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, groupCount: uint32, pGroups: ptr VkRayTracingShaderGroupCreateInfoKHR, maxPipelineRayRecursionDepth: uint32, pLibraryInfo: ptr VkPipelineLibraryCreateInfoKHR, pLibraryInterface: ptr VkRayTracingPipelineInterfaceCreateInfoKHR, pDynamicState: ptr VkPipelineDynamicStateCreateInfo, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkRayTracingPipelineCreateInfoKHR = +proc newVkRayTracingPipelineCreateInfoKHR*(sType: VkStructureType = VkStructureType.RayTracingPipelineCreateInfoKHR, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, groupCount: uint32, pGroups: ptr VkRayTracingShaderGroupCreateInfoKHR, maxPipelineRayRecursionDepth: uint32, pLibraryInfo: ptr VkPipelineLibraryCreateInfoKHR, pLibraryInterface: ptr VkRayTracingPipelineInterfaceCreateInfoKHR, pDynamicState: ptr VkPipelineDynamicStateCreateInfo, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkRayTracingPipelineCreateInfoKHR = result = VkRayTracingPipelineCreateInfoKHR( sType: sType, pNext: pNext, @@ -15067,7 +16316,7 @@ proc newVkRayTracingPipelineCreateInfoKHR*(sType: VkStructureType, pNext: pointe basePipelineIndex: basePipelineIndex, ) -proc newVkGeometryTrianglesNV*(sType: VkStructureType, pNext: pointer = nil, vertexData: VkBuffer, vertexOffset: VkDeviceSize, vertexCount: uint32, vertexStride: VkDeviceSize, vertexFormat: VkFormat, indexData: VkBuffer, indexOffset: VkDeviceSize, indexCount: uint32, indexType: VkIndexType, transformData: VkBuffer, transformOffset: VkDeviceSize): VkGeometryTrianglesNV = +proc newVkGeometryTrianglesNV*(sType: VkStructureType = VkStructureType.GeometryTrianglesNV, pNext: pointer = nil, vertexData: VkBuffer, vertexOffset: VkDeviceSize, vertexCount: uint32, vertexStride: VkDeviceSize, vertexFormat: VkFormat, indexData: VkBuffer, indexOffset: VkDeviceSize, indexCount: uint32, indexType: VkIndexType, transformData: VkBuffer, transformOffset: VkDeviceSize): VkGeometryTrianglesNV = result = VkGeometryTrianglesNV( sType: sType, pNext: pNext, @@ -15084,7 +16333,7 @@ proc newVkGeometryTrianglesNV*(sType: VkStructureType, pNext: pointer = nil, ver transformOffset: transformOffset, ) -proc newVkGeometryAABBNV*(sType: VkStructureType, pNext: pointer = nil, aabbData: VkBuffer, numAABBs: uint32, stride: uint32, offset: VkDeviceSize): VkGeometryAABBNV = +proc newVkGeometryAABBNV*(sType: VkStructureType = VkStructureType.GeometryAABBNV, pNext: pointer = nil, aabbData: VkBuffer, numAABBs: uint32, stride: uint32, offset: VkDeviceSize): VkGeometryAABBNV = result = VkGeometryAABBNV( sType: sType, pNext: pNext, @@ -15100,7 +16349,7 @@ proc newVkGeometryDataNV*(triangles: VkGeometryTrianglesNV, aabbs: VkGeometryAAB aabbs: aabbs, ) -proc newVkGeometryNV*(sType: VkStructureType, pNext: pointer = nil, geometryType: VkGeometryTypeKHR, geometry: VkGeometryDataNV, flags: VkGeometryFlagsKHR = 0.VkGeometryFlagsKHR): VkGeometryNV = +proc newVkGeometryNV*(sType: VkStructureType = VkStructureType.GeometryNV, pNext: pointer = nil, geometryType: VkGeometryTypeKHR, geometry: VkGeometryDataNV, flags: VkGeometryFlagsKHR = 0.VkGeometryFlagsKHR): VkGeometryNV = result = VkGeometryNV( sType: sType, pNext: pNext, @@ -15109,7 +16358,7 @@ proc newVkGeometryNV*(sType: VkStructureType, pNext: pointer = nil, geometryType flags: flags, ) -proc newVkAccelerationStructureInfoNV*(sType: VkStructureType, pNext: pointer = nil, `type`: VkAccelerationStructureTypeNV, flags: VkBuildAccelerationStructureFlagsNV = 0.VkBuildAccelerationStructureFlagsNV, instanceCount: uint32, geometryCount: uint32, pGeometries: ptr VkGeometryNV): VkAccelerationStructureInfoNV = +proc newVkAccelerationStructureInfoNV*(sType: VkStructureType = VkStructureType.AccelerationStructureInfoNV, pNext: pointer = nil, `type`: VkAccelerationStructureTypeNV, flags: VkBuildAccelerationStructureFlagsNV = 0.VkBuildAccelerationStructureFlagsNV, instanceCount: uint32, geometryCount: uint32, pGeometries: ptr VkGeometryNV): VkAccelerationStructureInfoNV = result = VkAccelerationStructureInfoNV( sType: sType, pNext: pNext, @@ -15120,7 +16369,7 @@ proc newVkAccelerationStructureInfoNV*(sType: VkStructureType, pNext: pointer = pGeometries: pGeometries, ) -proc newVkAccelerationStructureCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, compactedSize: VkDeviceSize, info: VkAccelerationStructureInfoNV): VkAccelerationStructureCreateInfoNV = +proc newVkAccelerationStructureCreateInfoNV*(sType: VkStructureType = VkStructureType.AccelerationStructureCreateInfoNV, pNext: pointer = nil, compactedSize: VkDeviceSize, info: VkAccelerationStructureInfoNV): VkAccelerationStructureCreateInfoNV = result = VkAccelerationStructureCreateInfoNV( sType: sType, pNext: pNext, @@ -15128,7 +16377,7 @@ proc newVkAccelerationStructureCreateInfoNV*(sType: VkStructureType, pNext: poin info: info, ) -proc newVkBindAccelerationStructureMemoryInfoNV*(sType: VkStructureType, pNext: pointer = nil, accelerationStructure: VkAccelerationStructureNV, memory: VkDeviceMemory, memoryOffset: VkDeviceSize, deviceIndexCount: uint32, pDeviceIndices: ptr uint32): VkBindAccelerationStructureMemoryInfoNV = +proc newVkBindAccelerationStructureMemoryInfoNV*(sType: VkStructureType = VkStructureType.BindAccelerationStructureMemoryInfoNV, pNext: pointer = nil, accelerationStructure: VkAccelerationStructureNV, memory: VkDeviceMemory, memoryOffset: VkDeviceSize, deviceIndexCount: uint32, pDeviceIndices: ptr uint32): VkBindAccelerationStructureMemoryInfoNV = result = VkBindAccelerationStructureMemoryInfoNV( sType: sType, pNext: pNext, @@ -15139,7 +16388,7 @@ proc newVkBindAccelerationStructureMemoryInfoNV*(sType: VkStructureType, pNext: pDeviceIndices: pDeviceIndices, ) -proc newVkWriteDescriptorSetAccelerationStructureKHR*(sType: VkStructureType, pNext: pointer = nil, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR): VkWriteDescriptorSetAccelerationStructureKHR = +proc newVkWriteDescriptorSetAccelerationStructureKHR*(sType: VkStructureType = VkStructureType.WriteDescriptorSetAccelerationStructureKHR, pNext: pointer = nil, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR): VkWriteDescriptorSetAccelerationStructureKHR = result = VkWriteDescriptorSetAccelerationStructureKHR( sType: sType, pNext: pNext, @@ -15147,7 +16396,7 @@ proc newVkWriteDescriptorSetAccelerationStructureKHR*(sType: VkStructureType, pN pAccelerationStructures: pAccelerationStructures, ) -proc newVkWriteDescriptorSetAccelerationStructureNV*(sType: VkStructureType, pNext: pointer = nil, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureNV): VkWriteDescriptorSetAccelerationStructureNV = +proc newVkWriteDescriptorSetAccelerationStructureNV*(sType: VkStructureType = VkStructureType.WriteDescriptorSetAccelerationStructureNV, pNext: pointer = nil, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureNV): VkWriteDescriptorSetAccelerationStructureNV = result = VkWriteDescriptorSetAccelerationStructureNV( sType: sType, pNext: pNext, @@ -15155,7 +16404,7 @@ proc newVkWriteDescriptorSetAccelerationStructureNV*(sType: VkStructureType, pNe pAccelerationStructures: pAccelerationStructures, ) -proc newVkAccelerationStructureMemoryRequirementsInfoNV*(sType: VkStructureType, pNext: pointer = nil, `type`: VkAccelerationStructureMemoryRequirementsTypeNV, accelerationStructure: VkAccelerationStructureNV): VkAccelerationStructureMemoryRequirementsInfoNV = +proc newVkAccelerationStructureMemoryRequirementsInfoNV*(sType: VkStructureType = VkStructureType.AccelerationStructureMemoryRequirementsInfoNV, pNext: pointer = nil, `type`: VkAccelerationStructureMemoryRequirementsTypeNV, accelerationStructure: VkAccelerationStructureNV): VkAccelerationStructureMemoryRequirementsInfoNV = result = VkAccelerationStructureMemoryRequirementsInfoNV( sType: sType, pNext: pNext, @@ -15163,7 +16412,7 @@ proc newVkAccelerationStructureMemoryRequirementsInfoNV*(sType: VkStructureType, accelerationStructure: accelerationStructure, ) -proc newVkPhysicalDeviceAccelerationStructureFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, accelerationStructure: VkBool32, accelerationStructureCaptureReplay: VkBool32, accelerationStructureIndirectBuild: VkBool32, accelerationStructureHostCommands: VkBool32, descriptorBindingAccelerationStructureUpdateAfterBind: VkBool32): VkPhysicalDeviceAccelerationStructureFeaturesKHR = +proc newVkPhysicalDeviceAccelerationStructureFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceAccelerationStructureFeaturesKHR, pNext: pointer = nil, accelerationStructure: VkBool32, accelerationStructureCaptureReplay: VkBool32, accelerationStructureIndirectBuild: VkBool32, accelerationStructureHostCommands: VkBool32, descriptorBindingAccelerationStructureUpdateAfterBind: VkBool32): VkPhysicalDeviceAccelerationStructureFeaturesKHR = result = VkPhysicalDeviceAccelerationStructureFeaturesKHR( sType: sType, pNext: pNext, @@ -15174,7 +16423,7 @@ proc newVkPhysicalDeviceAccelerationStructureFeaturesKHR*(sType: VkStructureType descriptorBindingAccelerationStructureUpdateAfterBind: descriptorBindingAccelerationStructureUpdateAfterBind, ) -proc newVkPhysicalDeviceRayTracingPipelineFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, rayTracingPipeline: VkBool32, rayTracingPipelineShaderGroupHandleCaptureReplay: VkBool32, rayTracingPipelineShaderGroupHandleCaptureReplayMixed: VkBool32, rayTracingPipelineTraceRaysIndirect: VkBool32, rayTraversalPrimitiveCulling: VkBool32): VkPhysicalDeviceRayTracingPipelineFeaturesKHR = +proc newVkPhysicalDeviceRayTracingPipelineFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceRayTracingPipelineFeaturesKHR, pNext: pointer = nil, rayTracingPipeline: VkBool32, rayTracingPipelineShaderGroupHandleCaptureReplay: VkBool32, rayTracingPipelineShaderGroupHandleCaptureReplayMixed: VkBool32, rayTracingPipelineTraceRaysIndirect: VkBool32, rayTraversalPrimitiveCulling: VkBool32): VkPhysicalDeviceRayTracingPipelineFeaturesKHR = result = VkPhysicalDeviceRayTracingPipelineFeaturesKHR( sType: sType, pNext: pNext, @@ -15185,14 +16434,14 @@ proc newVkPhysicalDeviceRayTracingPipelineFeaturesKHR*(sType: VkStructureType, p rayTraversalPrimitiveCulling: rayTraversalPrimitiveCulling, ) -proc newVkPhysicalDeviceRayQueryFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, rayQuery: VkBool32): VkPhysicalDeviceRayQueryFeaturesKHR = +proc newVkPhysicalDeviceRayQueryFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceRayQueryFeaturesKHR, pNext: pointer = nil, rayQuery: VkBool32): VkPhysicalDeviceRayQueryFeaturesKHR = result = VkPhysicalDeviceRayQueryFeaturesKHR( sType: sType, pNext: pNext, rayQuery: rayQuery, ) -proc newVkPhysicalDeviceAccelerationStructurePropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, maxGeometryCount: uint64, maxInstanceCount: uint64, maxPrimitiveCount: uint64, maxPerStageDescriptorAccelerationStructures: uint32, maxPerStageDescriptorUpdateAfterBindAccelerationStructures: uint32, maxDescriptorSetAccelerationStructures: uint32, maxDescriptorSetUpdateAfterBindAccelerationStructures: uint32, minAccelerationStructureScratchOffsetAlignment: uint32): VkPhysicalDeviceAccelerationStructurePropertiesKHR = +proc newVkPhysicalDeviceAccelerationStructurePropertiesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceAccelerationStructurePropertiesKHR, pNext: pointer = nil, maxGeometryCount: uint64, maxInstanceCount: uint64, maxPrimitiveCount: uint64, maxPerStageDescriptorAccelerationStructures: uint32, maxPerStageDescriptorUpdateAfterBindAccelerationStructures: uint32, maxDescriptorSetAccelerationStructures: uint32, maxDescriptorSetUpdateAfterBindAccelerationStructures: uint32, minAccelerationStructureScratchOffsetAlignment: uint32): VkPhysicalDeviceAccelerationStructurePropertiesKHR = result = VkPhysicalDeviceAccelerationStructurePropertiesKHR( sType: sType, pNext: pNext, @@ -15206,7 +16455,7 @@ proc newVkPhysicalDeviceAccelerationStructurePropertiesKHR*(sType: VkStructureTy minAccelerationStructureScratchOffsetAlignment: minAccelerationStructureScratchOffsetAlignment, ) -proc newVkPhysicalDeviceRayTracingPipelinePropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, shaderGroupHandleSize: uint32, maxRayRecursionDepth: uint32, maxShaderGroupStride: uint32, shaderGroupBaseAlignment: uint32, shaderGroupHandleCaptureReplaySize: uint32, maxRayDispatchInvocationCount: uint32, shaderGroupHandleAlignment: uint32, maxRayHitAttributeSize: uint32): VkPhysicalDeviceRayTracingPipelinePropertiesKHR = +proc newVkPhysicalDeviceRayTracingPipelinePropertiesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceRayTracingPipelinePropertiesKHR, pNext: pointer = nil, shaderGroupHandleSize: uint32, maxRayRecursionDepth: uint32, maxShaderGroupStride: uint32, shaderGroupBaseAlignment: uint32, shaderGroupHandleCaptureReplaySize: uint32, maxRayDispatchInvocationCount: uint32, shaderGroupHandleAlignment: uint32, maxRayHitAttributeSize: uint32): VkPhysicalDeviceRayTracingPipelinePropertiesKHR = result = VkPhysicalDeviceRayTracingPipelinePropertiesKHR( sType: sType, pNext: pNext, @@ -15220,7 +16469,7 @@ proc newVkPhysicalDeviceRayTracingPipelinePropertiesKHR*(sType: VkStructureType, maxRayHitAttributeSize: maxRayHitAttributeSize, ) -proc newVkPhysicalDeviceRayTracingPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, shaderGroupHandleSize: uint32, maxRecursionDepth: uint32, maxShaderGroupStride: uint32, shaderGroupBaseAlignment: uint32, maxGeometryCount: uint64, maxInstanceCount: uint64, maxTriangleCount: uint64, maxDescriptorSetAccelerationStructures: uint32): VkPhysicalDeviceRayTracingPropertiesNV = +proc newVkPhysicalDeviceRayTracingPropertiesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceRayTracingPropertiesNV, pNext: pointer = nil, shaderGroupHandleSize: uint32, maxRecursionDepth: uint32, maxShaderGroupStride: uint32, shaderGroupBaseAlignment: uint32, maxGeometryCount: uint64, maxInstanceCount: uint64, maxTriangleCount: uint64, maxDescriptorSetAccelerationStructures: uint32): VkPhysicalDeviceRayTracingPropertiesNV = result = VkPhysicalDeviceRayTracingPropertiesNV( sType: sType, pNext: pNext, @@ -15266,7 +16515,7 @@ proc newVkTraceRaysIndirectCommand2KHR*(raygenShaderRecordAddress: VkDeviceAddre depth: depth, ) -proc newVkPhysicalDeviceRayTracingMaintenance1FeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, rayTracingMaintenance1: VkBool32, rayTracingPipelineTraceRaysIndirect2: VkBool32): VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR = +proc newVkPhysicalDeviceRayTracingMaintenance1FeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceRayTracingMaintenance1FeaturesKHR, pNext: pointer = nil, rayTracingMaintenance1: VkBool32, rayTracingPipelineTraceRaysIndirect2: VkBool32): VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR = result = VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR( sType: sType, pNext: pNext, @@ -15274,7 +16523,7 @@ proc newVkPhysicalDeviceRayTracingMaintenance1FeaturesKHR*(sType: VkStructureTyp rayTracingPipelineTraceRaysIndirect2: rayTracingPipelineTraceRaysIndirect2, ) -proc newVkDrmFormatModifierPropertiesListEXT*(sType: VkStructureType, pNext: pointer = nil, drmFormatModifierCount: uint32, pDrmFormatModifierProperties: ptr VkDrmFormatModifierPropertiesEXT): VkDrmFormatModifierPropertiesListEXT = +proc newVkDrmFormatModifierPropertiesListEXT*(sType: VkStructureType = VkStructureType.DrmFormatModifierPropertiesListEXT, pNext: pointer = nil, drmFormatModifierCount: uint32, pDrmFormatModifierProperties: ptr VkDrmFormatModifierPropertiesEXT): VkDrmFormatModifierPropertiesListEXT = result = VkDrmFormatModifierPropertiesListEXT( sType: sType, pNext: pNext, @@ -15289,7 +16538,7 @@ proc newVkDrmFormatModifierPropertiesEXT*(drmFormatModifier: uint64, drmFormatMo drmFormatModifierTilingFeatures: drmFormatModifierTilingFeatures, ) -proc newVkPhysicalDeviceImageDrmFormatModifierInfoEXT*(sType: VkStructureType, pNext: pointer = nil, drmFormatModifier: uint64, sharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32): VkPhysicalDeviceImageDrmFormatModifierInfoEXT = +proc newVkPhysicalDeviceImageDrmFormatModifierInfoEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceImageDrmFormatModifierInfoEXT, pNext: pointer = nil, drmFormatModifier: uint64, sharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32): VkPhysicalDeviceImageDrmFormatModifierInfoEXT = result = VkPhysicalDeviceImageDrmFormatModifierInfoEXT( sType: sType, pNext: pNext, @@ -15299,7 +16548,7 @@ proc newVkPhysicalDeviceImageDrmFormatModifierInfoEXT*(sType: VkStructureType, p pQueueFamilyIndices: pQueueFamilyIndices, ) -proc newVkImageDrmFormatModifierListCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, drmFormatModifierCount: uint32, pDrmFormatModifiers: ptr uint64): VkImageDrmFormatModifierListCreateInfoEXT = +proc newVkImageDrmFormatModifierListCreateInfoEXT*(sType: VkStructureType = VkStructureType.ImageDrmFormatModifierListCreateInfoEXT, pNext: pointer = nil, drmFormatModifierCount: uint32, pDrmFormatModifiers: ptr uint64): VkImageDrmFormatModifierListCreateInfoEXT = result = VkImageDrmFormatModifierListCreateInfoEXT( sType: sType, pNext: pNext, @@ -15307,7 +16556,7 @@ proc newVkImageDrmFormatModifierListCreateInfoEXT*(sType: VkStructureType, pNext pDrmFormatModifiers: pDrmFormatModifiers, ) -proc newVkImageDrmFormatModifierExplicitCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, drmFormatModifier: uint64, drmFormatModifierPlaneCount: uint32, pPlaneLayouts: ptr VkSubresourceLayout): VkImageDrmFormatModifierExplicitCreateInfoEXT = +proc newVkImageDrmFormatModifierExplicitCreateInfoEXT*(sType: VkStructureType = VkStructureType.ImageDrmFormatModifierExplicitCreateInfoEXT, pNext: pointer = nil, drmFormatModifier: uint64, drmFormatModifierPlaneCount: uint32, pPlaneLayouts: ptr VkSubresourceLayout): VkImageDrmFormatModifierExplicitCreateInfoEXT = result = VkImageDrmFormatModifierExplicitCreateInfoEXT( sType: sType, pNext: pNext, @@ -15316,7 +16565,7 @@ proc newVkImageDrmFormatModifierExplicitCreateInfoEXT*(sType: VkStructureType, p pPlaneLayouts: pPlaneLayouts, ) -proc newVkImageDrmFormatModifierPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, drmFormatModifier: uint64): VkImageDrmFormatModifierPropertiesEXT = +proc newVkImageDrmFormatModifierPropertiesEXT*(sType: VkStructureType = VkStructureType.ImageDrmFormatModifierPropertiesEXT, pNext: pointer = nil, drmFormatModifier: uint64): VkImageDrmFormatModifierPropertiesEXT = result = VkImageDrmFormatModifierPropertiesEXT( sType: sType, pNext: pNext, @@ -15330,14 +16579,14 @@ proc newVkImageStencilUsageCreateInfo*(sType: VkStructureType, pNext: pointer = stencilUsage: stencilUsage, ) -proc newVkDeviceMemoryOverallocationCreateInfoAMD*(sType: VkStructureType, pNext: pointer = nil, overallocationBehavior: VkMemoryOverallocationBehaviorAMD): VkDeviceMemoryOverallocationCreateInfoAMD = +proc newVkDeviceMemoryOverallocationCreateInfoAMD*(sType: VkStructureType = VkStructureType.DeviceMemoryOverallocationCreateInfoAMD, pNext: pointer = nil, overallocationBehavior: VkMemoryOverallocationBehaviorAMD): VkDeviceMemoryOverallocationCreateInfoAMD = result = VkDeviceMemoryOverallocationCreateInfoAMD( sType: sType, pNext: pNext, overallocationBehavior: overallocationBehavior, ) -proc newVkPhysicalDeviceFragmentDensityMapFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, fragmentDensityMap: VkBool32, fragmentDensityMapDynamic: VkBool32, fragmentDensityMapNonSubsampledImages: VkBool32): VkPhysicalDeviceFragmentDensityMapFeaturesEXT = +proc newVkPhysicalDeviceFragmentDensityMapFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceFragmentDensityMapFeaturesEXT, pNext: pointer = nil, fragmentDensityMap: VkBool32, fragmentDensityMapDynamic: VkBool32, fragmentDensityMapNonSubsampledImages: VkBool32): VkPhysicalDeviceFragmentDensityMapFeaturesEXT = result = VkPhysicalDeviceFragmentDensityMapFeaturesEXT( sType: sType, pNext: pNext, @@ -15346,21 +16595,21 @@ proc newVkPhysicalDeviceFragmentDensityMapFeaturesEXT*(sType: VkStructureType, p fragmentDensityMapNonSubsampledImages: fragmentDensityMapNonSubsampledImages, ) -proc newVkPhysicalDeviceFragmentDensityMap2FeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, fragmentDensityMapDeferred: VkBool32): VkPhysicalDeviceFragmentDensityMap2FeaturesEXT = +proc newVkPhysicalDeviceFragmentDensityMap2FeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceFragmentDensityMap2FeaturesEXT, pNext: pointer = nil, fragmentDensityMapDeferred: VkBool32): VkPhysicalDeviceFragmentDensityMap2FeaturesEXT = result = VkPhysicalDeviceFragmentDensityMap2FeaturesEXT( sType: sType, pNext: pNext, fragmentDensityMapDeferred: fragmentDensityMapDeferred, ) -proc newVkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, fragmentDensityMapOffset: VkBool32): VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM = +proc newVkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM*(sType: VkStructureType = VkStructureType.PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM, pNext: pointer = nil, fragmentDensityMapOffset: VkBool32): VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM = result = VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM( sType: sType, pNext: pNext, fragmentDensityMapOffset: fragmentDensityMapOffset, ) -proc newVkPhysicalDeviceFragmentDensityMapPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, minFragmentDensityTexelSize: VkExtent2D, maxFragmentDensityTexelSize: VkExtent2D, fragmentDensityInvocations: VkBool32): VkPhysicalDeviceFragmentDensityMapPropertiesEXT = +proc newVkPhysicalDeviceFragmentDensityMapPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceFragmentDensityMapPropertiesEXT, pNext: pointer = nil, minFragmentDensityTexelSize: VkExtent2D, maxFragmentDensityTexelSize: VkExtent2D, fragmentDensityInvocations: VkBool32): VkPhysicalDeviceFragmentDensityMapPropertiesEXT = result = VkPhysicalDeviceFragmentDensityMapPropertiesEXT( sType: sType, pNext: pNext, @@ -15369,7 +16618,7 @@ proc newVkPhysicalDeviceFragmentDensityMapPropertiesEXT*(sType: VkStructureType, fragmentDensityInvocations: fragmentDensityInvocations, ) -proc newVkPhysicalDeviceFragmentDensityMap2PropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, subsampledLoads: VkBool32, subsampledCoarseReconstructionEarlyAccess: VkBool32, maxSubsampledArrayLayers: uint32, maxDescriptorSetSubsampledSamplers: uint32): VkPhysicalDeviceFragmentDensityMap2PropertiesEXT = +proc newVkPhysicalDeviceFragmentDensityMap2PropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceFragmentDensityMap2PropertiesEXT, pNext: pointer = nil, subsampledLoads: VkBool32, subsampledCoarseReconstructionEarlyAccess: VkBool32, maxSubsampledArrayLayers: uint32, maxDescriptorSetSubsampledSamplers: uint32): VkPhysicalDeviceFragmentDensityMap2PropertiesEXT = result = VkPhysicalDeviceFragmentDensityMap2PropertiesEXT( sType: sType, pNext: pNext, @@ -15379,21 +16628,21 @@ proc newVkPhysicalDeviceFragmentDensityMap2PropertiesEXT*(sType: VkStructureType maxDescriptorSetSubsampledSamplers: maxDescriptorSetSubsampledSamplers, ) -proc newVkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM*(sType: VkStructureType, pNext: pointer = nil, fragmentDensityOffsetGranularity: VkExtent2D): VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM = +proc newVkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM*(sType: VkStructureType = VkStructureType.PhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM, pNext: pointer = nil, fragmentDensityOffsetGranularity: VkExtent2D): VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM = result = VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM( sType: sType, pNext: pNext, fragmentDensityOffsetGranularity: fragmentDensityOffsetGranularity, ) -proc newVkRenderPassFragmentDensityMapCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, fragmentDensityMapAttachment: VkAttachmentReference): VkRenderPassFragmentDensityMapCreateInfoEXT = +proc newVkRenderPassFragmentDensityMapCreateInfoEXT*(sType: VkStructureType = VkStructureType.RenderPassFragmentDensityMapCreateInfoEXT, pNext: pointer = nil, fragmentDensityMapAttachment: VkAttachmentReference): VkRenderPassFragmentDensityMapCreateInfoEXT = result = VkRenderPassFragmentDensityMapCreateInfoEXT( sType: sType, pNext: pNext, fragmentDensityMapAttachment: fragmentDensityMapAttachment, ) -proc newVkSubpassFragmentDensityMapOffsetEndInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, fragmentDensityOffsetCount: uint32, pFragmentDensityOffsets: ptr VkOffset2D): VkSubpassFragmentDensityMapOffsetEndInfoQCOM = +proc newVkSubpassFragmentDensityMapOffsetEndInfoQCOM*(sType: VkStructureType = VkStructureType.SubpassFragmentDensityMapOffsetEndInfoQCOM, pNext: pointer = nil, fragmentDensityOffsetCount: uint32, pFragmentDensityOffsets: ptr VkOffset2D): VkSubpassFragmentDensityMapOffsetEndInfoQCOM = result = VkSubpassFragmentDensityMapOffsetEndInfoQCOM( sType: sType, pNext: pNext, @@ -15408,7 +16657,7 @@ proc newVkPhysicalDeviceScalarBlockLayoutFeatures*(sType: VkStructureType, pNext scalarBlockLayout: scalarBlockLayout, ) -proc newVkSurfaceProtectedCapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, supportsProtected: VkBool32): VkSurfaceProtectedCapabilitiesKHR = +proc newVkSurfaceProtectedCapabilitiesKHR*(sType: VkStructureType = VkStructureType.SurfaceProtectedCapabilitiesKHR, pNext: pointer = nil, supportsProtected: VkBool32): VkSurfaceProtectedCapabilitiesKHR = result = VkSurfaceProtectedCapabilitiesKHR( sType: sType, pNext: pNext, @@ -15422,14 +16671,14 @@ proc newVkPhysicalDeviceUniformBufferStandardLayoutFeatures*(sType: VkStructureT uniformBufferStandardLayout: uniformBufferStandardLayout, ) -proc newVkPhysicalDeviceDepthClipEnableFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, depthClipEnable: VkBool32): VkPhysicalDeviceDepthClipEnableFeaturesEXT = +proc newVkPhysicalDeviceDepthClipEnableFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceDepthClipEnableFeaturesEXT, pNext: pointer = nil, depthClipEnable: VkBool32): VkPhysicalDeviceDepthClipEnableFeaturesEXT = result = VkPhysicalDeviceDepthClipEnableFeaturesEXT( sType: sType, pNext: pNext, depthClipEnable: depthClipEnable, ) -proc newVkPipelineRasterizationDepthClipStateCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineRasterizationDepthClipStateCreateFlagsEXT = 0.VkPipelineRasterizationDepthClipStateCreateFlagsEXT, depthClipEnable: VkBool32): VkPipelineRasterizationDepthClipStateCreateInfoEXT = +proc newVkPipelineRasterizationDepthClipStateCreateInfoEXT*(sType: VkStructureType = VkStructureType.PipelineRasterizationDepthClipStateCreateInfoEXT, pNext: pointer = nil, flags: VkPipelineRasterizationDepthClipStateCreateFlagsEXT = 0.VkPipelineRasterizationDepthClipStateCreateFlagsEXT, depthClipEnable: VkBool32): VkPipelineRasterizationDepthClipStateCreateInfoEXT = result = VkPipelineRasterizationDepthClipStateCreateInfoEXT( sType: sType, pNext: pNext, @@ -15437,7 +16686,7 @@ proc newVkPipelineRasterizationDepthClipStateCreateInfoEXT*(sType: VkStructureTy depthClipEnable: depthClipEnable, ) -proc newVkPhysicalDeviceMemoryBudgetPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, heapBudget: array[VK_MAX_MEMORY_HEAPS, VkDeviceSize], heapUsage: array[VK_MAX_MEMORY_HEAPS, VkDeviceSize]): VkPhysicalDeviceMemoryBudgetPropertiesEXT = +proc newVkPhysicalDeviceMemoryBudgetPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceMemoryBudgetPropertiesEXT, pNext: pointer = nil, heapBudget: array[VK_MAX_MEMORY_HEAPS, VkDeviceSize], heapUsage: array[VK_MAX_MEMORY_HEAPS, VkDeviceSize]): VkPhysicalDeviceMemoryBudgetPropertiesEXT = result = VkPhysicalDeviceMemoryBudgetPropertiesEXT( sType: sType, pNext: pNext, @@ -15445,21 +16694,21 @@ proc newVkPhysicalDeviceMemoryBudgetPropertiesEXT*(sType: VkStructureType, pNext heapUsage: heapUsage, ) -proc newVkPhysicalDeviceMemoryPriorityFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, memoryPriority: VkBool32): VkPhysicalDeviceMemoryPriorityFeaturesEXT = +proc newVkPhysicalDeviceMemoryPriorityFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceMemoryPriorityFeaturesEXT, pNext: pointer = nil, memoryPriority: VkBool32): VkPhysicalDeviceMemoryPriorityFeaturesEXT = result = VkPhysicalDeviceMemoryPriorityFeaturesEXT( sType: sType, pNext: pNext, memoryPriority: memoryPriority, ) -proc newVkMemoryPriorityAllocateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, priority: float32): VkMemoryPriorityAllocateInfoEXT = +proc newVkMemoryPriorityAllocateInfoEXT*(sType: VkStructureType = VkStructureType.MemoryPriorityAllocateInfoEXT, pNext: pointer = nil, priority: float32): VkMemoryPriorityAllocateInfoEXT = result = VkMemoryPriorityAllocateInfoEXT( sType: sType, pNext: pNext, priority: priority, ) -proc newVkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, pageableDeviceLocalMemory: VkBool32): VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT = +proc newVkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT, pNext: pointer = nil, pageableDeviceLocalMemory: VkBool32): VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT = result = VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT( sType: sType, pNext: pNext, @@ -15475,7 +16724,7 @@ proc newVkPhysicalDeviceBufferDeviceAddressFeatures*(sType: VkStructureType, pNe bufferDeviceAddressMultiDevice: bufferDeviceAddressMultiDevice, ) -proc newVkPhysicalDeviceBufferDeviceAddressFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, bufferDeviceAddress: VkBool32, bufferDeviceAddressCaptureReplay: VkBool32, bufferDeviceAddressMultiDevice: VkBool32): VkPhysicalDeviceBufferDeviceAddressFeaturesEXT = +proc newVkPhysicalDeviceBufferDeviceAddressFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceBufferDeviceAddressFeaturesEXT, pNext: pointer = nil, bufferDeviceAddress: VkBool32, bufferDeviceAddressCaptureReplay: VkBool32, bufferDeviceAddressMultiDevice: VkBool32): VkPhysicalDeviceBufferDeviceAddressFeaturesEXT = result = VkPhysicalDeviceBufferDeviceAddressFeaturesEXT( sType: sType, pNext: pNext, @@ -15498,21 +16747,21 @@ proc newVkBufferOpaqueCaptureAddressCreateInfo*(sType: VkStructureType, pNext: p opaqueCaptureAddress: opaqueCaptureAddress, ) -proc newVkBufferDeviceAddressCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, deviceAddress: VkDeviceAddress): VkBufferDeviceAddressCreateInfoEXT = +proc newVkBufferDeviceAddressCreateInfoEXT*(sType: VkStructureType = VkStructureType.BufferDeviceAddressCreateInfoEXT, pNext: pointer = nil, deviceAddress: VkDeviceAddress): VkBufferDeviceAddressCreateInfoEXT = result = VkBufferDeviceAddressCreateInfoEXT( sType: sType, pNext: pNext, deviceAddress: deviceAddress, ) -proc newVkPhysicalDeviceImageViewImageFormatInfoEXT*(sType: VkStructureType, pNext: pointer = nil, imageViewType: VkImageViewType): VkPhysicalDeviceImageViewImageFormatInfoEXT = +proc newVkPhysicalDeviceImageViewImageFormatInfoEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceImageViewImageFormatInfoEXT, pNext: pointer = nil, imageViewType: VkImageViewType): VkPhysicalDeviceImageViewImageFormatInfoEXT = result = VkPhysicalDeviceImageViewImageFormatInfoEXT( sType: sType, pNext: pNext, imageViewType: imageViewType, ) -proc newVkFilterCubicImageViewImageFormatPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, filterCubic: VkBool32, filterCubicMinmax: VkBool32): VkFilterCubicImageViewImageFormatPropertiesEXT = +proc newVkFilterCubicImageViewImageFormatPropertiesEXT*(sType: VkStructureType = VkStructureType.FilterCubicImageViewImageFormatPropertiesEXT, pNext: pointer = nil, filterCubic: VkBool32, filterCubicMinmax: VkBool32): VkFilterCubicImageViewImageFormatPropertiesEXT = result = VkFilterCubicImageViewImageFormatPropertiesEXT( sType: sType, pNext: pNext, @@ -15563,7 +16812,7 @@ proc newVkPhysicalDeviceTextureCompressionASTCHDRFeatures*(sType: VkStructureTyp textureCompressionASTC_HDR: textureCompressionASTC_HDR, ) -proc newVkPhysicalDeviceCooperativeMatrixFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, cooperativeMatrix: VkBool32, cooperativeMatrixRobustBufferAccess: VkBool32): VkPhysicalDeviceCooperativeMatrixFeaturesNV = +proc newVkPhysicalDeviceCooperativeMatrixFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceCooperativeMatrixFeaturesNV, pNext: pointer = nil, cooperativeMatrix: VkBool32, cooperativeMatrixRobustBufferAccess: VkBool32): VkPhysicalDeviceCooperativeMatrixFeaturesNV = result = VkPhysicalDeviceCooperativeMatrixFeaturesNV( sType: sType, pNext: pNext, @@ -15571,14 +16820,14 @@ proc newVkPhysicalDeviceCooperativeMatrixFeaturesNV*(sType: VkStructureType, pNe cooperativeMatrixRobustBufferAccess: cooperativeMatrixRobustBufferAccess, ) -proc newVkPhysicalDeviceCooperativeMatrixPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, cooperativeMatrixSupportedStages: VkShaderStageFlags): VkPhysicalDeviceCooperativeMatrixPropertiesNV = +proc newVkPhysicalDeviceCooperativeMatrixPropertiesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceCooperativeMatrixPropertiesNV, pNext: pointer = nil, cooperativeMatrixSupportedStages: VkShaderStageFlags): VkPhysicalDeviceCooperativeMatrixPropertiesNV = result = VkPhysicalDeviceCooperativeMatrixPropertiesNV( sType: sType, pNext: pNext, cooperativeMatrixSupportedStages: cooperativeMatrixSupportedStages, ) -proc newVkCooperativeMatrixPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, MSize: uint32, NSize: uint32, KSize: uint32, AType: VkComponentTypeNV, BType: VkComponentTypeNV, CType: VkComponentTypeNV, DType: VkComponentTypeNV, scope: VkScopeNV): VkCooperativeMatrixPropertiesNV = +proc newVkCooperativeMatrixPropertiesNV*(sType: VkStructureType = VkStructureType.CooperativeMatrixPropertiesNV, pNext: pointer = nil, MSize: uint32, NSize: uint32, KSize: uint32, AType: VkComponentTypeNV, BType: VkComponentTypeNV, CType: VkComponentTypeNV, DType: VkComponentTypeNV, scope: VkScopeNV): VkCooperativeMatrixPropertiesNV = result = VkCooperativeMatrixPropertiesNV( sType: sType, pNext: pNext, @@ -15592,14 +16841,14 @@ proc newVkCooperativeMatrixPropertiesNV*(sType: VkStructureType, pNext: pointer scope: scope, ) -proc newVkPhysicalDeviceYcbcrImageArraysFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, ycbcrImageArrays: VkBool32): VkPhysicalDeviceYcbcrImageArraysFeaturesEXT = +proc newVkPhysicalDeviceYcbcrImageArraysFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceYcbcrImageArraysFeaturesEXT, pNext: pointer = nil, ycbcrImageArrays: VkBool32): VkPhysicalDeviceYcbcrImageArraysFeaturesEXT = result = VkPhysicalDeviceYcbcrImageArraysFeaturesEXT( sType: sType, pNext: pNext, ycbcrImageArrays: ycbcrImageArrays, ) -proc newVkImageViewHandleInfoNVX*(sType: VkStructureType, pNext: pointer = nil, imageView: VkImageView, descriptorType: VkDescriptorType, sampler: VkSampler): VkImageViewHandleInfoNVX = +proc newVkImageViewHandleInfoNVX*(sType: VkStructureType = VkStructureType.ImageViewHandleInfoNVX, pNext: pointer = nil, imageView: VkImageView, descriptorType: VkDescriptorType, sampler: VkSampler): VkImageViewHandleInfoNVX = result = VkImageViewHandleInfoNVX( sType: sType, pNext: pNext, @@ -15608,7 +16857,7 @@ proc newVkImageViewHandleInfoNVX*(sType: VkStructureType, pNext: pointer = nil, sampler: sampler, ) -proc newVkImageViewAddressPropertiesNVX*(sType: VkStructureType, pNext: pointer = nil, deviceAddress: VkDeviceAddress, size: VkDeviceSize): VkImageViewAddressPropertiesNVX = +proc newVkImageViewAddressPropertiesNVX*(sType: VkStructureType = VkStructureType.ImageViewAddressPropertiesNVX, pNext: pointer = nil, deviceAddress: VkDeviceAddress, size: VkDeviceSize): VkImageViewAddressPropertiesNVX = result = VkImageViewAddressPropertiesNVX( sType: sType, pNext: pNext, @@ -15616,7 +16865,7 @@ proc newVkImageViewAddressPropertiesNVX*(sType: VkStructureType, pNext: pointer size: size, ) -proc newVkPresentFrameTokenGGP*(sType: VkStructureType, pNext: pointer = nil, frameToken: GgpFrameToken): VkPresentFrameTokenGGP = +proc newVkPresentFrameTokenGGP*(sType: VkStructureType = VkStructureType.PresentFrameTokenGGP, pNext: pointer = nil, frameToken: GgpFrameToken): VkPresentFrameTokenGGP = result = VkPresentFrameTokenGGP( sType: sType, pNext: pNext, @@ -15638,49 +16887,49 @@ proc newVkPipelineCreationFeedbackCreateInfo*(sType: VkStructureType, pNext: poi pPipelineStageCreationFeedbacks: pPipelineStageCreationFeedbacks, ) -proc newVkSurfaceFullScreenExclusiveInfoEXT*(sType: VkStructureType, pNext: pointer = nil, fullScreenExclusive: VkFullScreenExclusiveEXT): VkSurfaceFullScreenExclusiveInfoEXT = +proc newVkSurfaceFullScreenExclusiveInfoEXT*(sType: VkStructureType = VkStructureType.SurfaceFullScreenExclusiveInfoEXT, pNext: pointer = nil, fullScreenExclusive: VkFullScreenExclusiveEXT): VkSurfaceFullScreenExclusiveInfoEXT = result = VkSurfaceFullScreenExclusiveInfoEXT( sType: sType, pNext: pNext, fullScreenExclusive: fullScreenExclusive, ) -proc newVkSurfaceFullScreenExclusiveWin32InfoEXT*(sType: VkStructureType, pNext: pointer = nil, hmonitor: HMONITOR): VkSurfaceFullScreenExclusiveWin32InfoEXT = +proc newVkSurfaceFullScreenExclusiveWin32InfoEXT*(sType: VkStructureType = VkStructureType.SurfaceFullScreenExclusiveWin32InfoEXT, pNext: pointer = nil, hmonitor: HMONITOR): VkSurfaceFullScreenExclusiveWin32InfoEXT = result = VkSurfaceFullScreenExclusiveWin32InfoEXT( sType: sType, pNext: pNext, hmonitor: hmonitor, ) -proc newVkSurfaceCapabilitiesFullScreenExclusiveEXT*(sType: VkStructureType, pNext: pointer = nil, fullScreenExclusiveSupported: VkBool32): VkSurfaceCapabilitiesFullScreenExclusiveEXT = +proc newVkSurfaceCapabilitiesFullScreenExclusiveEXT*(sType: VkStructureType = VkStructureType.SurfaceCapabilitiesFullScreenExclusiveEXT, pNext: pointer = nil, fullScreenExclusiveSupported: VkBool32): VkSurfaceCapabilitiesFullScreenExclusiveEXT = result = VkSurfaceCapabilitiesFullScreenExclusiveEXT( sType: sType, pNext: pNext, fullScreenExclusiveSupported: fullScreenExclusiveSupported, ) -proc newVkPhysicalDevicePresentBarrierFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, presentBarrier: VkBool32): VkPhysicalDevicePresentBarrierFeaturesNV = +proc newVkPhysicalDevicePresentBarrierFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDevicePresentBarrierFeaturesNV, pNext: pointer = nil, presentBarrier: VkBool32): VkPhysicalDevicePresentBarrierFeaturesNV = result = VkPhysicalDevicePresentBarrierFeaturesNV( sType: sType, pNext: pNext, presentBarrier: presentBarrier, ) -proc newVkSurfaceCapabilitiesPresentBarrierNV*(sType: VkStructureType, pNext: pointer = nil, presentBarrierSupported: VkBool32): VkSurfaceCapabilitiesPresentBarrierNV = +proc newVkSurfaceCapabilitiesPresentBarrierNV*(sType: VkStructureType = VkStructureType.SurfaceCapabilitiesPresentBarrierNV, pNext: pointer = nil, presentBarrierSupported: VkBool32): VkSurfaceCapabilitiesPresentBarrierNV = result = VkSurfaceCapabilitiesPresentBarrierNV( sType: sType, pNext: pNext, presentBarrierSupported: presentBarrierSupported, ) -proc newVkSwapchainPresentBarrierCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, presentBarrierEnable: VkBool32): VkSwapchainPresentBarrierCreateInfoNV = +proc newVkSwapchainPresentBarrierCreateInfoNV*(sType: VkStructureType = VkStructureType.SwapchainPresentBarrierCreateInfoNV, pNext: pointer = nil, presentBarrierEnable: VkBool32): VkSwapchainPresentBarrierCreateInfoNV = result = VkSwapchainPresentBarrierCreateInfoNV( sType: sType, pNext: pNext, presentBarrierEnable: presentBarrierEnable, ) -proc newVkPhysicalDevicePerformanceQueryFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, performanceCounterQueryPools: VkBool32, performanceCounterMultipleQueryPools: VkBool32): VkPhysicalDevicePerformanceQueryFeaturesKHR = +proc newVkPhysicalDevicePerformanceQueryFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDevicePerformanceQueryFeaturesKHR, pNext: pointer = nil, performanceCounterQueryPools: VkBool32, performanceCounterMultipleQueryPools: VkBool32): VkPhysicalDevicePerformanceQueryFeaturesKHR = result = VkPhysicalDevicePerformanceQueryFeaturesKHR( sType: sType, pNext: pNext, @@ -15688,14 +16937,14 @@ proc newVkPhysicalDevicePerformanceQueryFeaturesKHR*(sType: VkStructureType, pNe performanceCounterMultipleQueryPools: performanceCounterMultipleQueryPools, ) -proc newVkPhysicalDevicePerformanceQueryPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, allowCommandBufferQueryCopies: VkBool32): VkPhysicalDevicePerformanceQueryPropertiesKHR = +proc newVkPhysicalDevicePerformanceQueryPropertiesKHR*(sType: VkStructureType = VkStructureType.PhysicalDevicePerformanceQueryPropertiesKHR, pNext: pointer = nil, allowCommandBufferQueryCopies: VkBool32): VkPhysicalDevicePerformanceQueryPropertiesKHR = result = VkPhysicalDevicePerformanceQueryPropertiesKHR( sType: sType, pNext: pNext, allowCommandBufferQueryCopies: allowCommandBufferQueryCopies, ) -proc newVkPerformanceCounterKHR*(sType: VkStructureType, pNext: pointer = nil, unit: VkPerformanceCounterUnitKHR, scope: VkPerformanceCounterScopeKHR, storage: VkPerformanceCounterStorageKHR, uuid: array[VK_UUID_SIZE, uint8]): VkPerformanceCounterKHR = +proc newVkPerformanceCounterKHR*(sType: VkStructureType = VkStructureType.PerformanceCounterKHR, pNext: pointer = nil, unit: VkPerformanceCounterUnitKHR, scope: VkPerformanceCounterScopeKHR, storage: VkPerformanceCounterStorageKHR, uuid: array[VK_UUID_SIZE, uint8]): VkPerformanceCounterKHR = result = VkPerformanceCounterKHR( sType: sType, pNext: pNext, @@ -15705,7 +16954,7 @@ proc newVkPerformanceCounterKHR*(sType: VkStructureType, pNext: pointer = nil, u uuid: uuid, ) -proc newVkPerformanceCounterDescriptionKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkPerformanceCounterDescriptionFlagsKHR = 0.VkPerformanceCounterDescriptionFlagsKHR, name: array[VK_MAX_DESCRIPTION_SIZE, char], category: array[VK_MAX_DESCRIPTION_SIZE, char], description: array[VK_MAX_DESCRIPTION_SIZE, char]): VkPerformanceCounterDescriptionKHR = +proc newVkPerformanceCounterDescriptionKHR*(sType: VkStructureType = VkStructureType.PerformanceCounterDescriptionKHR, pNext: pointer = nil, flags: VkPerformanceCounterDescriptionFlagsKHR = 0.VkPerformanceCounterDescriptionFlagsKHR, name: array[VK_MAX_DESCRIPTION_SIZE, char], category: array[VK_MAX_DESCRIPTION_SIZE, char], description: array[VK_MAX_DESCRIPTION_SIZE, char]): VkPerformanceCounterDescriptionKHR = result = VkPerformanceCounterDescriptionKHR( sType: sType, pNext: pNext, @@ -15715,7 +16964,7 @@ proc newVkPerformanceCounterDescriptionKHR*(sType: VkStructureType, pNext: point description: description, ) -proc newVkQueryPoolPerformanceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, queueFamilyIndex: uint32, counterIndexCount: uint32, pCounterIndices: ptr uint32): VkQueryPoolPerformanceCreateInfoKHR = +proc newVkQueryPoolPerformanceCreateInfoKHR*(sType: VkStructureType = VkStructureType.QueryPoolPerformanceCreateInfoKHR, pNext: pointer = nil, queueFamilyIndex: uint32, counterIndexCount: uint32, pCounterIndices: ptr uint32): VkQueryPoolPerformanceCreateInfoKHR = result = VkQueryPoolPerformanceCreateInfoKHR( sType: sType, pNext: pNext, @@ -15724,7 +16973,7 @@ proc newVkQueryPoolPerformanceCreateInfoKHR*(sType: VkStructureType, pNext: poin pCounterIndices: pCounterIndices, ) -proc newVkAcquireProfilingLockInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkAcquireProfilingLockFlagsKHR = 0.VkAcquireProfilingLockFlagsKHR, timeout: uint64): VkAcquireProfilingLockInfoKHR = +proc newVkAcquireProfilingLockInfoKHR*(sType: VkStructureType = VkStructureType.AcquireProfilingLockInfoKHR, pNext: pointer = nil, flags: VkAcquireProfilingLockFlagsKHR = 0.VkAcquireProfilingLockFlagsKHR, timeout: uint64): VkAcquireProfilingLockInfoKHR = result = VkAcquireProfilingLockInfoKHR( sType: sType, pNext: pNext, @@ -15732,35 +16981,35 @@ proc newVkAcquireProfilingLockInfoKHR*(sType: VkStructureType, pNext: pointer = timeout: timeout, ) -proc newVkPerformanceQuerySubmitInfoKHR*(sType: VkStructureType, pNext: pointer = nil, counterPassIndex: uint32): VkPerformanceQuerySubmitInfoKHR = +proc newVkPerformanceQuerySubmitInfoKHR*(sType: VkStructureType = VkStructureType.PerformanceQuerySubmitInfoKHR, pNext: pointer = nil, counterPassIndex: uint32): VkPerformanceQuerySubmitInfoKHR = result = VkPerformanceQuerySubmitInfoKHR( sType: sType, pNext: pNext, counterPassIndex: counterPassIndex, ) -proc newVkPerformanceQueryReservationInfoKHR*(sType: VkStructureType, pNext: pointer = nil, maxPerformanceQueriesPerPool: uint32): VkPerformanceQueryReservationInfoKHR = +proc newVkPerformanceQueryReservationInfoKHR*(sType: VkStructureType = VkStructureType.PerformanceQueryReservationInfoKHR, pNext: pointer = nil, maxPerformanceQueriesPerPool: uint32): VkPerformanceQueryReservationInfoKHR = result = VkPerformanceQueryReservationInfoKHR( sType: sType, pNext: pNext, maxPerformanceQueriesPerPool: maxPerformanceQueriesPerPool, ) -proc newVkHeadlessSurfaceCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkHeadlessSurfaceCreateFlagsEXT = 0.VkHeadlessSurfaceCreateFlagsEXT): VkHeadlessSurfaceCreateInfoEXT = +proc newVkHeadlessSurfaceCreateInfoEXT*(sType: VkStructureType = VkStructureType.HeadlessSurfaceCreateInfoEXT, pNext: pointer = nil, flags: VkHeadlessSurfaceCreateFlagsEXT = 0.VkHeadlessSurfaceCreateFlagsEXT): VkHeadlessSurfaceCreateInfoEXT = result = VkHeadlessSurfaceCreateInfoEXT( sType: sType, pNext: pNext, flags: flags, ) -proc newVkPhysicalDeviceCoverageReductionModeFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, coverageReductionMode: VkBool32): VkPhysicalDeviceCoverageReductionModeFeaturesNV = +proc newVkPhysicalDeviceCoverageReductionModeFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceCoverageReductionModeFeaturesNV, pNext: pointer = nil, coverageReductionMode: VkBool32): VkPhysicalDeviceCoverageReductionModeFeaturesNV = result = VkPhysicalDeviceCoverageReductionModeFeaturesNV( sType: sType, pNext: pNext, coverageReductionMode: coverageReductionMode, ) -proc newVkPipelineCoverageReductionStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCoverageReductionStateCreateFlagsNV = 0.VkPipelineCoverageReductionStateCreateFlagsNV, coverageReductionMode: VkCoverageReductionModeNV): VkPipelineCoverageReductionStateCreateInfoNV = +proc newVkPipelineCoverageReductionStateCreateInfoNV*(sType: VkStructureType = VkStructureType.PipelineCoverageReductionStateCreateInfoNV, pNext: pointer = nil, flags: VkPipelineCoverageReductionStateCreateFlagsNV = 0.VkPipelineCoverageReductionStateCreateFlagsNV, coverageReductionMode: VkCoverageReductionModeNV): VkPipelineCoverageReductionStateCreateInfoNV = result = VkPipelineCoverageReductionStateCreateInfoNV( sType: sType, pNext: pNext, @@ -15768,7 +17017,7 @@ proc newVkPipelineCoverageReductionStateCreateInfoNV*(sType: VkStructureType, pN coverageReductionMode: coverageReductionMode, ) -proc newVkFramebufferMixedSamplesCombinationNV*(sType: VkStructureType, pNext: pointer = nil, coverageReductionMode: VkCoverageReductionModeNV, rasterizationSamples: VkSampleCountFlagBits, depthStencilSamples: VkSampleCountFlags, colorSamples: VkSampleCountFlags): VkFramebufferMixedSamplesCombinationNV = +proc newVkFramebufferMixedSamplesCombinationNV*(sType: VkStructureType = VkStructureType.FramebufferMixedSamplesCombinationNV, pNext: pointer = nil, coverageReductionMode: VkCoverageReductionModeNV, rasterizationSamples: VkSampleCountFlagBits, depthStencilSamples: VkSampleCountFlags, colorSamples: VkSampleCountFlags): VkFramebufferMixedSamplesCombinationNV = result = VkFramebufferMixedSamplesCombinationNV( sType: sType, pNext: pNext, @@ -15778,7 +17027,7 @@ proc newVkFramebufferMixedSamplesCombinationNV*(sType: VkStructureType, pNext: p colorSamples: colorSamples, ) -proc newVkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL*(sType: VkStructureType, pNext: pointer = nil, shaderIntegerFunctions2: VkBool32): VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL = +proc newVkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL, pNext: pointer = nil, shaderIntegerFunctions2: VkBool32): VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL = result = VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL( sType: sType, pNext: pNext, @@ -15791,35 +17040,35 @@ proc newVkPerformanceValueINTEL*(`type`: VkPerformanceValueTypeINTEL, data: VkPe data: data, ) -proc newVkInitializePerformanceApiInfoINTEL*(sType: VkStructureType, pNext: pointer = nil, pUserData: pointer = nil): VkInitializePerformanceApiInfoINTEL = +proc newVkInitializePerformanceApiInfoINTEL*(sType: VkStructureType = VkStructureType.InitializePerformanceApiInfoINTEL, pNext: pointer = nil, pUserData: pointer = nil): VkInitializePerformanceApiInfoINTEL = result = VkInitializePerformanceApiInfoINTEL( sType: sType, pNext: pNext, pUserData: pUserData, ) -proc newVkQueryPoolPerformanceQueryCreateInfoINTEL*(sType: VkStructureType, pNext: pointer = nil, performanceCountersSampling: VkQueryPoolSamplingModeINTEL): VkQueryPoolPerformanceQueryCreateInfoINTEL = +proc newVkQueryPoolPerformanceQueryCreateInfoINTEL*(sType: VkStructureType = VkStructureType.QueryPoolPerformanceQueryCreateInfoINTEL, pNext: pointer = nil, performanceCountersSampling: VkQueryPoolSamplingModeINTEL): VkQueryPoolPerformanceQueryCreateInfoINTEL = result = VkQueryPoolPerformanceQueryCreateInfoINTEL( sType: sType, pNext: pNext, performanceCountersSampling: performanceCountersSampling, ) -proc newVkPerformanceMarkerInfoINTEL*(sType: VkStructureType, pNext: pointer = nil, marker: uint64): VkPerformanceMarkerInfoINTEL = +proc newVkPerformanceMarkerInfoINTEL*(sType: VkStructureType = VkStructureType.PerformanceMarkerInfoINTEL, pNext: pointer = nil, marker: uint64): VkPerformanceMarkerInfoINTEL = result = VkPerformanceMarkerInfoINTEL( sType: sType, pNext: pNext, marker: marker, ) -proc newVkPerformanceStreamMarkerInfoINTEL*(sType: VkStructureType, pNext: pointer = nil, marker: uint32): VkPerformanceStreamMarkerInfoINTEL = +proc newVkPerformanceStreamMarkerInfoINTEL*(sType: VkStructureType = VkStructureType.PerformanceStreamMarkerInfoINTEL, pNext: pointer = nil, marker: uint32): VkPerformanceStreamMarkerInfoINTEL = result = VkPerformanceStreamMarkerInfoINTEL( sType: sType, pNext: pNext, marker: marker, ) -proc newVkPerformanceOverrideInfoINTEL*(sType: VkStructureType, pNext: pointer = nil, `type`: VkPerformanceOverrideTypeINTEL, enable: VkBool32, parameter: uint64): VkPerformanceOverrideInfoINTEL = +proc newVkPerformanceOverrideInfoINTEL*(sType: VkStructureType = VkStructureType.PerformanceOverrideInfoINTEL, pNext: pointer = nil, `type`: VkPerformanceOverrideTypeINTEL, enable: VkBool32, parameter: uint64): VkPerformanceOverrideInfoINTEL = result = VkPerformanceOverrideInfoINTEL( sType: sType, pNext: pNext, @@ -15828,14 +17077,14 @@ proc newVkPerformanceOverrideInfoINTEL*(sType: VkStructureType, pNext: pointer = parameter: parameter, ) -proc newVkPerformanceConfigurationAcquireInfoINTEL*(sType: VkStructureType, pNext: pointer = nil, `type`: VkPerformanceConfigurationTypeINTEL): VkPerformanceConfigurationAcquireInfoINTEL = +proc newVkPerformanceConfigurationAcquireInfoINTEL*(sType: VkStructureType = VkStructureType.PerformanceConfigurationAcquireInfoINTEL, pNext: pointer = nil, `type`: VkPerformanceConfigurationTypeINTEL): VkPerformanceConfigurationAcquireInfoINTEL = result = VkPerformanceConfigurationAcquireInfoINTEL( sType: sType, pNext: pNext, `type`: `type`, ) -proc newVkPhysicalDeviceShaderClockFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, shaderSubgroupClock: VkBool32, shaderDeviceClock: VkBool32): VkPhysicalDeviceShaderClockFeaturesKHR = +proc newVkPhysicalDeviceShaderClockFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderClockFeaturesKHR, pNext: pointer = nil, shaderSubgroupClock: VkBool32, shaderDeviceClock: VkBool32): VkPhysicalDeviceShaderClockFeaturesKHR = result = VkPhysicalDeviceShaderClockFeaturesKHR( sType: sType, pNext: pNext, @@ -15843,14 +17092,14 @@ proc newVkPhysicalDeviceShaderClockFeaturesKHR*(sType: VkStructureType, pNext: p shaderDeviceClock: shaderDeviceClock, ) -proc newVkPhysicalDeviceIndexTypeUint8FeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, indexTypeUint8: VkBool32): VkPhysicalDeviceIndexTypeUint8FeaturesKHR = +proc newVkPhysicalDeviceIndexTypeUint8FeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceIndexTypeUint8FeaturesKHR, pNext: pointer = nil, indexTypeUint8: VkBool32): VkPhysicalDeviceIndexTypeUint8FeaturesKHR = result = VkPhysicalDeviceIndexTypeUint8FeaturesKHR( sType: sType, pNext: pNext, indexTypeUint8: indexTypeUint8, ) -proc newVkPhysicalDeviceShaderSMBuiltinsPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, shaderSMCount: uint32, shaderWarpsPerSM: uint32): VkPhysicalDeviceShaderSMBuiltinsPropertiesNV = +proc newVkPhysicalDeviceShaderSMBuiltinsPropertiesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderSMBuiltinsPropertiesNV, pNext: pointer = nil, shaderSMCount: uint32, shaderWarpsPerSM: uint32): VkPhysicalDeviceShaderSMBuiltinsPropertiesNV = result = VkPhysicalDeviceShaderSMBuiltinsPropertiesNV( sType: sType, pNext: pNext, @@ -15858,14 +17107,14 @@ proc newVkPhysicalDeviceShaderSMBuiltinsPropertiesNV*(sType: VkStructureType, pN shaderWarpsPerSM: shaderWarpsPerSM, ) -proc newVkPhysicalDeviceShaderSMBuiltinsFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, shaderSMBuiltins: VkBool32): VkPhysicalDeviceShaderSMBuiltinsFeaturesNV = +proc newVkPhysicalDeviceShaderSMBuiltinsFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderSMBuiltinsFeaturesNV, pNext: pointer = nil, shaderSMBuiltins: VkBool32): VkPhysicalDeviceShaderSMBuiltinsFeaturesNV = result = VkPhysicalDeviceShaderSMBuiltinsFeaturesNV( sType: sType, pNext: pNext, shaderSMBuiltins: shaderSMBuiltins, ) -proc newVkPhysicalDeviceFragmentShaderInterlockFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, fragmentShaderSampleInterlock: VkBool32, fragmentShaderPixelInterlock: VkBool32, fragmentShaderShadingRateInterlock: VkBool32): VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT = +proc newVkPhysicalDeviceFragmentShaderInterlockFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceFragmentShaderInterlockFeaturesEXT, pNext: pointer = nil, fragmentShaderSampleInterlock: VkBool32, fragmentShaderPixelInterlock: VkBool32, fragmentShaderShadingRateInterlock: VkBool32): VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT = result = VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT( sType: sType, pNext: pNext, @@ -15888,7 +17137,7 @@ proc newVkAttachmentReferenceStencilLayout*(sType: VkStructureType, pNext: point stencilLayout: stencilLayout, ) -proc newVkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, primitiveTopologyListRestart: VkBool32, primitiveTopologyPatchListRestart: VkBool32): VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT = +proc newVkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT, pNext: pointer = nil, primitiveTopologyListRestart: VkBool32, primitiveTopologyPatchListRestart: VkBool32): VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT = result = VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT( sType: sType, pNext: pNext, @@ -15904,21 +17153,21 @@ proc newVkAttachmentDescriptionStencilLayout*(sType: VkStructureType, pNext: poi stencilFinalLayout: stencilFinalLayout, ) -proc newVkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, pipelineExecutableInfo: VkBool32): VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR = +proc newVkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDevicePipelineExecutablePropertiesFeaturesKHR, pNext: pointer = nil, pipelineExecutableInfo: VkBool32): VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR = result = VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR( sType: sType, pNext: pNext, pipelineExecutableInfo: pipelineExecutableInfo, ) -proc newVkPipelineInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pipeline: VkPipeline): VkPipelineInfoKHR = +proc newVkPipelineInfoKHR*(sType: VkStructureType = VkStructureType.PipelineInfoKHR, pNext: pointer = nil, pipeline: VkPipeline): VkPipelineInfoKHR = result = VkPipelineInfoKHR( sType: sType, pNext: pNext, pipeline: pipeline, ) -proc newVkPipelineExecutablePropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, stages: VkShaderStageFlags, name: array[VK_MAX_DESCRIPTION_SIZE, char], description: array[VK_MAX_DESCRIPTION_SIZE, char], subgroupSize: uint32): VkPipelineExecutablePropertiesKHR = +proc newVkPipelineExecutablePropertiesKHR*(sType: VkStructureType = VkStructureType.PipelineExecutablePropertiesKHR, pNext: pointer = nil, stages: VkShaderStageFlags, name: array[VK_MAX_DESCRIPTION_SIZE, char], description: array[VK_MAX_DESCRIPTION_SIZE, char], subgroupSize: uint32): VkPipelineExecutablePropertiesKHR = result = VkPipelineExecutablePropertiesKHR( sType: sType, pNext: pNext, @@ -15928,7 +17177,7 @@ proc newVkPipelineExecutablePropertiesKHR*(sType: VkStructureType, pNext: pointe subgroupSize: subgroupSize, ) -proc newVkPipelineExecutableInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pipeline: VkPipeline, executableIndex: uint32): VkPipelineExecutableInfoKHR = +proc newVkPipelineExecutableInfoKHR*(sType: VkStructureType = VkStructureType.PipelineExecutableInfoKHR, pNext: pointer = nil, pipeline: VkPipeline, executableIndex: uint32): VkPipelineExecutableInfoKHR = result = VkPipelineExecutableInfoKHR( sType: sType, pNext: pNext, @@ -15936,7 +17185,7 @@ proc newVkPipelineExecutableInfoKHR*(sType: VkStructureType, pNext: pointer = ni executableIndex: executableIndex, ) -proc newVkPipelineExecutableStatisticKHR*(sType: VkStructureType, pNext: pointer = nil, name: array[VK_MAX_DESCRIPTION_SIZE, char], description: array[VK_MAX_DESCRIPTION_SIZE, char], format: VkPipelineExecutableStatisticFormatKHR, value: VkPipelineExecutableStatisticValueKHR): VkPipelineExecutableStatisticKHR = +proc newVkPipelineExecutableStatisticKHR*(sType: VkStructureType = VkStructureType.PipelineExecutableStatisticKHR, pNext: pointer = nil, name: array[VK_MAX_DESCRIPTION_SIZE, char], description: array[VK_MAX_DESCRIPTION_SIZE, char], format: VkPipelineExecutableStatisticFormatKHR, value: VkPipelineExecutableStatisticValueKHR): VkPipelineExecutableStatisticKHR = result = VkPipelineExecutableStatisticKHR( sType: sType, pNext: pNext, @@ -15946,7 +17195,7 @@ proc newVkPipelineExecutableStatisticKHR*(sType: VkStructureType, pNext: pointer value: value, ) -proc newVkPipelineExecutableInternalRepresentationKHR*(sType: VkStructureType, pNext: pointer = nil, name: array[VK_MAX_DESCRIPTION_SIZE, char], description: array[VK_MAX_DESCRIPTION_SIZE, char], isText: VkBool32, dataSize: uint, pData: pointer = nil): VkPipelineExecutableInternalRepresentationKHR = +proc newVkPipelineExecutableInternalRepresentationKHR*(sType: VkStructureType = VkStructureType.PipelineExecutableInternalRepresentationKHR, pNext: pointer = nil, name: array[VK_MAX_DESCRIPTION_SIZE, char], description: array[VK_MAX_DESCRIPTION_SIZE, char], isText: VkBool32, dataSize: uint, pData: pointer = nil): VkPipelineExecutableInternalRepresentationKHR = result = VkPipelineExecutableInternalRepresentationKHR( sType: sType, pNext: pNext, @@ -15964,7 +17213,7 @@ proc newVkPhysicalDeviceShaderDemoteToHelperInvocationFeatures*(sType: VkStructu shaderDemoteToHelperInvocation: shaderDemoteToHelperInvocation, ) -proc newVkPhysicalDeviceTexelBufferAlignmentFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, texelBufferAlignment: VkBool32): VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT = +proc newVkPhysicalDeviceTexelBufferAlignmentFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceTexelBufferAlignmentFeaturesEXT, pNext: pointer = nil, texelBufferAlignment: VkBool32): VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT = result = VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT( sType: sType, pNext: pNext, @@ -16006,7 +17255,7 @@ proc newVkPipelineShaderStageRequiredSubgroupSizeCreateInfo*(sType: VkStructureT requiredSubgroupSize: requiredSubgroupSize, ) -proc newVkSubpassShadingPipelineCreateInfoHUAWEI*(sType: VkStructureType, pNext: pointer = nil, renderPass: VkRenderPass, subpass: uint32): VkSubpassShadingPipelineCreateInfoHUAWEI = +proc newVkSubpassShadingPipelineCreateInfoHUAWEI*(sType: VkStructureType = VkStructureType.SubpassShadingPipelineCreateInfoHUAWEI, pNext: pointer = nil, renderPass: VkRenderPass, subpass: uint32): VkSubpassShadingPipelineCreateInfoHUAWEI = result = VkSubpassShadingPipelineCreateInfoHUAWEI( sType: sType, pNext: pNext, @@ -16014,14 +17263,14 @@ proc newVkSubpassShadingPipelineCreateInfoHUAWEI*(sType: VkStructureType, pNext: subpass: subpass, ) -proc newVkPhysicalDeviceSubpassShadingPropertiesHUAWEI*(sType: VkStructureType, pNext: pointer = nil, maxSubpassShadingWorkgroupSizeAspectRatio: uint32): VkPhysicalDeviceSubpassShadingPropertiesHUAWEI = +proc newVkPhysicalDeviceSubpassShadingPropertiesHUAWEI*(sType: VkStructureType = VkStructureType.PhysicalDeviceSubpassShadingPropertiesHUAWEI, pNext: pointer = nil, maxSubpassShadingWorkgroupSizeAspectRatio: uint32): VkPhysicalDeviceSubpassShadingPropertiesHUAWEI = result = VkPhysicalDeviceSubpassShadingPropertiesHUAWEI( sType: sType, pNext: pNext, maxSubpassShadingWorkgroupSizeAspectRatio: maxSubpassShadingWorkgroupSizeAspectRatio, ) -proc newVkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI*(sType: VkStructureType, pNext: pointer = nil, maxWorkGroupCount: array[3, uint32], maxWorkGroupSize: array[3, uint32], maxOutputClusterCount: uint32, indirectBufferOffsetAlignment: VkDeviceSize): VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI = +proc newVkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI*(sType: VkStructureType = VkStructureType.PhysicalDeviceClusterCullingShaderPropertiesHUAWEI, pNext: pointer = nil, maxWorkGroupCount: array[3, uint32], maxWorkGroupSize: array[3, uint32], maxOutputClusterCount: uint32, indirectBufferOffsetAlignment: VkDeviceSize): VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI = result = VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI( sType: sType, pNext: pNext, @@ -16045,7 +17294,7 @@ proc newVkDeviceMemoryOpaqueCaptureAddressInfo*(sType: VkStructureType, pNext: p memory: memory, ) -proc newVkPhysicalDeviceLineRasterizationFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, rectangularLines: VkBool32, bresenhamLines: VkBool32, smoothLines: VkBool32, stippledRectangularLines: VkBool32, stippledBresenhamLines: VkBool32, stippledSmoothLines: VkBool32): VkPhysicalDeviceLineRasterizationFeaturesKHR = +proc newVkPhysicalDeviceLineRasterizationFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceLineRasterizationFeaturesKHR, pNext: pointer = nil, rectangularLines: VkBool32, bresenhamLines: VkBool32, smoothLines: VkBool32, stippledRectangularLines: VkBool32, stippledBresenhamLines: VkBool32, stippledSmoothLines: VkBool32): VkPhysicalDeviceLineRasterizationFeaturesKHR = result = VkPhysicalDeviceLineRasterizationFeaturesKHR( sType: sType, pNext: pNext, @@ -16057,14 +17306,14 @@ proc newVkPhysicalDeviceLineRasterizationFeaturesKHR*(sType: VkStructureType, pN stippledSmoothLines: stippledSmoothLines, ) -proc newVkPhysicalDeviceLineRasterizationPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, lineSubPixelPrecisionBits: uint32): VkPhysicalDeviceLineRasterizationPropertiesKHR = +proc newVkPhysicalDeviceLineRasterizationPropertiesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceLineRasterizationPropertiesKHR, pNext: pointer = nil, lineSubPixelPrecisionBits: uint32): VkPhysicalDeviceLineRasterizationPropertiesKHR = result = VkPhysicalDeviceLineRasterizationPropertiesKHR( sType: sType, pNext: pNext, lineSubPixelPrecisionBits: lineSubPixelPrecisionBits, ) -proc newVkPipelineRasterizationLineStateCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, lineRasterizationMode: VkLineRasterizationModeKHR, stippledLineEnable: VkBool32, lineStippleFactor: uint32, lineStipplePattern: uint16): VkPipelineRasterizationLineStateCreateInfoKHR = +proc newVkPipelineRasterizationLineStateCreateInfoKHR*(sType: VkStructureType = VkStructureType.PipelineRasterizationLineStateCreateInfoKHR, pNext: pointer = nil, lineRasterizationMode: VkLineRasterizationModeKHR, stippledLineEnable: VkBool32, lineStippleFactor: uint32, lineStipplePattern: uint16): VkPipelineRasterizationLineStateCreateInfoKHR = result = VkPipelineRasterizationLineStateCreateInfoKHR( sType: sType, pNext: pNext, @@ -16303,14 +17552,14 @@ proc newVkPhysicalDeviceVulkan13Properties*(sType: VkStructureType, pNext: point maxBufferSize: maxBufferSize, ) -proc newVkPipelineCompilerControlCreateInfoAMD*(sType: VkStructureType, pNext: pointer = nil, compilerControlFlags: VkPipelineCompilerControlFlagsAMD): VkPipelineCompilerControlCreateInfoAMD = +proc newVkPipelineCompilerControlCreateInfoAMD*(sType: VkStructureType = VkStructureType.PipelineCompilerControlCreateInfoAMD, pNext: pointer = nil, compilerControlFlags: VkPipelineCompilerControlFlagsAMD): VkPipelineCompilerControlCreateInfoAMD = result = VkPipelineCompilerControlCreateInfoAMD( sType: sType, pNext: pNext, compilerControlFlags: compilerControlFlags, ) -proc newVkPhysicalDeviceCoherentMemoryFeaturesAMD*(sType: VkStructureType, pNext: pointer = nil, deviceCoherentMemory: VkBool32): VkPhysicalDeviceCoherentMemoryFeaturesAMD = +proc newVkPhysicalDeviceCoherentMemoryFeaturesAMD*(sType: VkStructureType = VkStructureType.PhysicalDeviceCoherentMemoryFeaturesAMD, pNext: pointer = nil, deviceCoherentMemory: VkBool32): VkPhysicalDeviceCoherentMemoryFeaturesAMD = result = VkPhysicalDeviceCoherentMemoryFeaturesAMD( sType: sType, pNext: pNext, @@ -16345,7 +17594,7 @@ proc newVkPhysicalDeviceToolProperties*(sType: VkStructureType, pNext: pointer = layer: layer, ) -proc newVkSamplerCustomBorderColorCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, customBorderColor: VkClearColorValue, format: VkFormat): VkSamplerCustomBorderColorCreateInfoEXT = +proc newVkSamplerCustomBorderColorCreateInfoEXT*(sType: VkStructureType = VkStructureType.SamplerCustomBorderColorCreateInfoEXT, pNext: pointer = nil, customBorderColor: VkClearColorValue, format: VkFormat): VkSamplerCustomBorderColorCreateInfoEXT = result = VkSamplerCustomBorderColorCreateInfoEXT( sType: sType, pNext: pNext, @@ -16353,14 +17602,14 @@ proc newVkSamplerCustomBorderColorCreateInfoEXT*(sType: VkStructureType, pNext: format: format, ) -proc newVkPhysicalDeviceCustomBorderColorPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxCustomBorderColorSamplers: uint32): VkPhysicalDeviceCustomBorderColorPropertiesEXT = +proc newVkPhysicalDeviceCustomBorderColorPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceCustomBorderColorPropertiesEXT, pNext: pointer = nil, maxCustomBorderColorSamplers: uint32): VkPhysicalDeviceCustomBorderColorPropertiesEXT = result = VkPhysicalDeviceCustomBorderColorPropertiesEXT( sType: sType, pNext: pNext, maxCustomBorderColorSamplers: maxCustomBorderColorSamplers, ) -proc newVkPhysicalDeviceCustomBorderColorFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, customBorderColors: VkBool32, customBorderColorWithoutFormat: VkBool32): VkPhysicalDeviceCustomBorderColorFeaturesEXT = +proc newVkPhysicalDeviceCustomBorderColorFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceCustomBorderColorFeaturesEXT, pNext: pointer = nil, customBorderColors: VkBool32, customBorderColorWithoutFormat: VkBool32): VkPhysicalDeviceCustomBorderColorFeaturesEXT = result = VkPhysicalDeviceCustomBorderColorFeaturesEXT( sType: sType, pNext: pNext, @@ -16368,7 +17617,7 @@ proc newVkPhysicalDeviceCustomBorderColorFeaturesEXT*(sType: VkStructureType, pN customBorderColorWithoutFormat: customBorderColorWithoutFormat, ) -proc newVkSamplerBorderColorComponentMappingCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, components: VkComponentMapping, srgb: VkBool32): VkSamplerBorderColorComponentMappingCreateInfoEXT = +proc newVkSamplerBorderColorComponentMappingCreateInfoEXT*(sType: VkStructureType = VkStructureType.SamplerBorderColorComponentMappingCreateInfoEXT, pNext: pointer = nil, components: VkComponentMapping, srgb: VkBool32): VkSamplerBorderColorComponentMappingCreateInfoEXT = result = VkSamplerBorderColorComponentMappingCreateInfoEXT( sType: sType, pNext: pNext, @@ -16376,7 +17625,7 @@ proc newVkSamplerBorderColorComponentMappingCreateInfoEXT*(sType: VkStructureTyp srgb: srgb, ) -proc newVkPhysicalDeviceBorderColorSwizzleFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, borderColorSwizzle: VkBool32, borderColorSwizzleFromImage: VkBool32): VkPhysicalDeviceBorderColorSwizzleFeaturesEXT = +proc newVkPhysicalDeviceBorderColorSwizzleFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceBorderColorSwizzleFeaturesEXT, pNext: pointer = nil, borderColorSwizzle: VkBool32, borderColorSwizzleFromImage: VkBool32): VkPhysicalDeviceBorderColorSwizzleFeaturesEXT = result = VkPhysicalDeviceBorderColorSwizzleFeaturesEXT( sType: sType, pNext: pNext, @@ -16384,7 +17633,7 @@ proc newVkPhysicalDeviceBorderColorSwizzleFeaturesEXT*(sType: VkStructureType, p borderColorSwizzleFromImage: borderColorSwizzleFromImage, ) -proc newVkAccelerationStructureGeometryTrianglesDataKHR*(sType: VkStructureType, pNext: pointer = nil, vertexFormat: VkFormat, vertexData: VkDeviceOrHostAddressConstKHR, vertexStride: VkDeviceSize, maxVertex: uint32, indexType: VkIndexType, indexData: VkDeviceOrHostAddressConstKHR, transformData: VkDeviceOrHostAddressConstKHR): VkAccelerationStructureGeometryTrianglesDataKHR = +proc newVkAccelerationStructureGeometryTrianglesDataKHR*(sType: VkStructureType = VkStructureType.AccelerationStructureGeometryTrianglesDataKHR, pNext: pointer = nil, vertexFormat: VkFormat, vertexData: VkDeviceOrHostAddressConstKHR, vertexStride: VkDeviceSize, maxVertex: uint32, indexType: VkIndexType, indexData: VkDeviceOrHostAddressConstKHR, transformData: VkDeviceOrHostAddressConstKHR): VkAccelerationStructureGeometryTrianglesDataKHR = result = VkAccelerationStructureGeometryTrianglesDataKHR( sType: sType, pNext: pNext, @@ -16397,7 +17646,7 @@ proc newVkAccelerationStructureGeometryTrianglesDataKHR*(sType: VkStructureType, transformData: transformData, ) -proc newVkAccelerationStructureGeometryAabbsDataKHR*(sType: VkStructureType, pNext: pointer = nil, data: VkDeviceOrHostAddressConstKHR, stride: VkDeviceSize): VkAccelerationStructureGeometryAabbsDataKHR = +proc newVkAccelerationStructureGeometryAabbsDataKHR*(sType: VkStructureType = VkStructureType.AccelerationStructureGeometryAabbsDataKHR, pNext: pointer = nil, data: VkDeviceOrHostAddressConstKHR, stride: VkDeviceSize): VkAccelerationStructureGeometryAabbsDataKHR = result = VkAccelerationStructureGeometryAabbsDataKHR( sType: sType, pNext: pNext, @@ -16405,7 +17654,7 @@ proc newVkAccelerationStructureGeometryAabbsDataKHR*(sType: VkStructureType, pNe stride: stride, ) -proc newVkAccelerationStructureGeometryInstancesDataKHR*(sType: VkStructureType, pNext: pointer = nil, arrayOfPointers: VkBool32, data: VkDeviceOrHostAddressConstKHR): VkAccelerationStructureGeometryInstancesDataKHR = +proc newVkAccelerationStructureGeometryInstancesDataKHR*(sType: VkStructureType = VkStructureType.AccelerationStructureGeometryInstancesDataKHR, pNext: pointer = nil, arrayOfPointers: VkBool32, data: VkDeviceOrHostAddressConstKHR): VkAccelerationStructureGeometryInstancesDataKHR = result = VkAccelerationStructureGeometryInstancesDataKHR( sType: sType, pNext: pNext, @@ -16413,7 +17662,7 @@ proc newVkAccelerationStructureGeometryInstancesDataKHR*(sType: VkStructureType, data: data, ) -proc newVkAccelerationStructureGeometryKHR*(sType: VkStructureType, pNext: pointer = nil, geometryType: VkGeometryTypeKHR, geometry: VkAccelerationStructureGeometryDataKHR, flags: VkGeometryFlagsKHR = 0.VkGeometryFlagsKHR): VkAccelerationStructureGeometryKHR = +proc newVkAccelerationStructureGeometryKHR*(sType: VkStructureType = VkStructureType.AccelerationStructureGeometryKHR, pNext: pointer = nil, geometryType: VkGeometryTypeKHR, geometry: VkAccelerationStructureGeometryDataKHR, flags: VkGeometryFlagsKHR = 0.VkGeometryFlagsKHR): VkAccelerationStructureGeometryKHR = result = VkAccelerationStructureGeometryKHR( sType: sType, pNext: pNext, @@ -16422,7 +17671,7 @@ proc newVkAccelerationStructureGeometryKHR*(sType: VkStructureType, pNext: point flags: flags, ) -proc newVkAccelerationStructureBuildGeometryInfoKHR*(sType: VkStructureType, pNext: pointer = nil, `type`: VkAccelerationStructureTypeKHR, flags: VkBuildAccelerationStructureFlagsKHR = 0.VkBuildAccelerationStructureFlagsKHR, mode: VkBuildAccelerationStructureModeKHR, srcAccelerationStructure: VkAccelerationStructureKHR, dstAccelerationStructure: VkAccelerationStructureKHR, geometryCount: uint32, pGeometries: ptr VkAccelerationStructureGeometryKHR, ppGeometries: ptr ptr VkAccelerationStructureGeometryKHR, scratchData: VkDeviceOrHostAddressKHR): VkAccelerationStructureBuildGeometryInfoKHR = +proc newVkAccelerationStructureBuildGeometryInfoKHR*(sType: VkStructureType = VkStructureType.AccelerationStructureBuildGeometryInfoKHR, pNext: pointer = nil, `type`: VkAccelerationStructureTypeKHR, flags: VkBuildAccelerationStructureFlagsKHR = 0.VkBuildAccelerationStructureFlagsKHR, mode: VkBuildAccelerationStructureModeKHR, srcAccelerationStructure: VkAccelerationStructureKHR, dstAccelerationStructure: VkAccelerationStructureKHR, geometryCount: uint32, pGeometries: ptr VkAccelerationStructureGeometryKHR, ppGeometries: ptr ptr VkAccelerationStructureGeometryKHR, scratchData: VkDeviceOrHostAddressKHR): VkAccelerationStructureBuildGeometryInfoKHR = result = VkAccelerationStructureBuildGeometryInfoKHR( sType: sType, pNext: pNext, @@ -16445,7 +17694,7 @@ proc newVkAccelerationStructureBuildRangeInfoKHR*(primitiveCount: uint32, primit transformOffset: transformOffset, ) -proc newVkAccelerationStructureCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, createFlags: VkAccelerationStructureCreateFlagsKHR, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize, `type`: VkAccelerationStructureTypeKHR, deviceAddress: VkDeviceAddress): VkAccelerationStructureCreateInfoKHR = +proc newVkAccelerationStructureCreateInfoKHR*(sType: VkStructureType = VkStructureType.AccelerationStructureCreateInfoKHR, pNext: pointer = nil, createFlags: VkAccelerationStructureCreateFlagsKHR, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize, `type`: VkAccelerationStructureTypeKHR, deviceAddress: VkDeviceAddress): VkAccelerationStructureCreateInfoKHR = result = VkAccelerationStructureCreateInfoKHR( sType: sType, pNext: pNext, @@ -16482,21 +17731,21 @@ proc newVkAccelerationStructureInstanceKHR*(transform: VkTransformMatrixKHR, ins accelerationStructureReference: accelerationStructureReference, ) -proc newVkAccelerationStructureDeviceAddressInfoKHR*(sType: VkStructureType, pNext: pointer = nil, accelerationStructure: VkAccelerationStructureKHR): VkAccelerationStructureDeviceAddressInfoKHR = +proc newVkAccelerationStructureDeviceAddressInfoKHR*(sType: VkStructureType = VkStructureType.AccelerationStructureDeviceAddressInfoKHR, pNext: pointer = nil, accelerationStructure: VkAccelerationStructureKHR): VkAccelerationStructureDeviceAddressInfoKHR = result = VkAccelerationStructureDeviceAddressInfoKHR( sType: sType, pNext: pNext, accelerationStructure: accelerationStructure, ) -proc newVkAccelerationStructureVersionInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pVersionData: ptr uint8): VkAccelerationStructureVersionInfoKHR = +proc newVkAccelerationStructureVersionInfoKHR*(sType: VkStructureType = VkStructureType.AccelerationStructureVersionInfoKHR, pNext: pointer = nil, pVersionData: ptr uint8): VkAccelerationStructureVersionInfoKHR = result = VkAccelerationStructureVersionInfoKHR( sType: sType, pNext: pNext, pVersionData: pVersionData, ) -proc newVkCopyAccelerationStructureInfoKHR*(sType: VkStructureType, pNext: pointer = nil, src: VkAccelerationStructureKHR, dst: VkAccelerationStructureKHR, mode: VkCopyAccelerationStructureModeKHR): VkCopyAccelerationStructureInfoKHR = +proc newVkCopyAccelerationStructureInfoKHR*(sType: VkStructureType = VkStructureType.CopyAccelerationStructureInfoKHR, pNext: pointer = nil, src: VkAccelerationStructureKHR, dst: VkAccelerationStructureKHR, mode: VkCopyAccelerationStructureModeKHR): VkCopyAccelerationStructureInfoKHR = result = VkCopyAccelerationStructureInfoKHR( sType: sType, pNext: pNext, @@ -16505,7 +17754,7 @@ proc newVkCopyAccelerationStructureInfoKHR*(sType: VkStructureType, pNext: point mode: mode, ) -proc newVkCopyAccelerationStructureToMemoryInfoKHR*(sType: VkStructureType, pNext: pointer = nil, src: VkAccelerationStructureKHR, dst: VkDeviceOrHostAddressKHR, mode: VkCopyAccelerationStructureModeKHR): VkCopyAccelerationStructureToMemoryInfoKHR = +proc newVkCopyAccelerationStructureToMemoryInfoKHR*(sType: VkStructureType = VkStructureType.CopyAccelerationStructureToMemoryInfoKHR, pNext: pointer = nil, src: VkAccelerationStructureKHR, dst: VkDeviceOrHostAddressKHR, mode: VkCopyAccelerationStructureModeKHR): VkCopyAccelerationStructureToMemoryInfoKHR = result = VkCopyAccelerationStructureToMemoryInfoKHR( sType: sType, pNext: pNext, @@ -16514,7 +17763,7 @@ proc newVkCopyAccelerationStructureToMemoryInfoKHR*(sType: VkStructureType, pNex mode: mode, ) -proc newVkCopyMemoryToAccelerationStructureInfoKHR*(sType: VkStructureType, pNext: pointer = nil, src: VkDeviceOrHostAddressConstKHR, dst: VkAccelerationStructureKHR, mode: VkCopyAccelerationStructureModeKHR): VkCopyMemoryToAccelerationStructureInfoKHR = +proc newVkCopyMemoryToAccelerationStructureInfoKHR*(sType: VkStructureType = VkStructureType.CopyMemoryToAccelerationStructureInfoKHR, pNext: pointer = nil, src: VkDeviceOrHostAddressConstKHR, dst: VkAccelerationStructureKHR, mode: VkCopyAccelerationStructureModeKHR): VkCopyMemoryToAccelerationStructureInfoKHR = result = VkCopyMemoryToAccelerationStructureInfoKHR( sType: sType, pNext: pNext, @@ -16523,7 +17772,7 @@ proc newVkCopyMemoryToAccelerationStructureInfoKHR*(sType: VkStructureType, pNex mode: mode, ) -proc newVkRayTracingPipelineInterfaceCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, maxPipelineRayPayloadSize: uint32, maxPipelineRayHitAttributeSize: uint32): VkRayTracingPipelineInterfaceCreateInfoKHR = +proc newVkRayTracingPipelineInterfaceCreateInfoKHR*(sType: VkStructureType = VkStructureType.RayTracingPipelineInterfaceCreateInfoKHR, pNext: pointer = nil, maxPipelineRayPayloadSize: uint32, maxPipelineRayHitAttributeSize: uint32): VkRayTracingPipelineInterfaceCreateInfoKHR = result = VkRayTracingPipelineInterfaceCreateInfoKHR( sType: sType, pNext: pNext, @@ -16531,7 +17780,7 @@ proc newVkRayTracingPipelineInterfaceCreateInfoKHR*(sType: VkStructureType, pNex maxPipelineRayHitAttributeSize: maxPipelineRayHitAttributeSize, ) -proc newVkPipelineLibraryCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, libraryCount: uint32, pLibraries: ptr VkPipeline): VkPipelineLibraryCreateInfoKHR = +proc newVkPipelineLibraryCreateInfoKHR*(sType: VkStructureType = VkStructureType.PipelineLibraryCreateInfoKHR, pNext: pointer = nil, libraryCount: uint32, pLibraries: ptr VkPipeline): VkPipelineLibraryCreateInfoKHR = result = VkPipelineLibraryCreateInfoKHR( sType: sType, pNext: pNext, @@ -16546,7 +17795,7 @@ proc newVkRefreshObjectKHR*(objectType: VkObjectType, objectHandle: uint64, flag flags: flags, ) -proc newVkRefreshObjectListKHR*(sType: VkStructureType, pNext: pointer = nil, objectCount: uint32, pObjects: ptr VkRefreshObjectKHR): VkRefreshObjectListKHR = +proc newVkRefreshObjectListKHR*(sType: VkStructureType = VkStructureType.RefreshObjectListKHR, pNext: pointer = nil, objectCount: uint32, pObjects: ptr VkRefreshObjectKHR): VkRefreshObjectListKHR = result = VkRefreshObjectListKHR( sType: sType, pNext: pNext, @@ -16554,14 +17803,14 @@ proc newVkRefreshObjectListKHR*(sType: VkStructureType, pNext: pointer = nil, ob pObjects: pObjects, ) -proc newVkPhysicalDeviceExtendedDynamicStateFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, extendedDynamicState: VkBool32): VkPhysicalDeviceExtendedDynamicStateFeaturesEXT = +proc newVkPhysicalDeviceExtendedDynamicStateFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceExtendedDynamicStateFeaturesEXT, pNext: pointer = nil, extendedDynamicState: VkBool32): VkPhysicalDeviceExtendedDynamicStateFeaturesEXT = result = VkPhysicalDeviceExtendedDynamicStateFeaturesEXT( sType: sType, pNext: pNext, extendedDynamicState: extendedDynamicState, ) -proc newVkPhysicalDeviceExtendedDynamicState2FeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, extendedDynamicState2: VkBool32, extendedDynamicState2LogicOp: VkBool32, extendedDynamicState2PatchControlPoints: VkBool32): VkPhysicalDeviceExtendedDynamicState2FeaturesEXT = +proc newVkPhysicalDeviceExtendedDynamicState2FeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceExtendedDynamicState2FeaturesEXT, pNext: pointer = nil, extendedDynamicState2: VkBool32, extendedDynamicState2LogicOp: VkBool32, extendedDynamicState2PatchControlPoints: VkBool32): VkPhysicalDeviceExtendedDynamicState2FeaturesEXT = result = VkPhysicalDeviceExtendedDynamicState2FeaturesEXT( sType: sType, pNext: pNext, @@ -16570,7 +17819,7 @@ proc newVkPhysicalDeviceExtendedDynamicState2FeaturesEXT*(sType: VkStructureType extendedDynamicState2PatchControlPoints: extendedDynamicState2PatchControlPoints, ) -proc newVkPhysicalDeviceExtendedDynamicState3FeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, extendedDynamicState3TessellationDomainOrigin: VkBool32, extendedDynamicState3DepthClampEnable: VkBool32, extendedDynamicState3PolygonMode: VkBool32, extendedDynamicState3RasterizationSamples: VkBool32, extendedDynamicState3SampleMask: VkBool32, extendedDynamicState3AlphaToCoverageEnable: VkBool32, extendedDynamicState3AlphaToOneEnable: VkBool32, extendedDynamicState3LogicOpEnable: VkBool32, extendedDynamicState3ColorBlendEnable: VkBool32, extendedDynamicState3ColorBlendEquation: VkBool32, extendedDynamicState3ColorWriteMask: VkBool32, extendedDynamicState3RasterizationStream: VkBool32, extendedDynamicState3ConservativeRasterizationMode: VkBool32, extendedDynamicState3ExtraPrimitiveOverestimationSize: VkBool32, extendedDynamicState3DepthClipEnable: VkBool32, extendedDynamicState3SampleLocationsEnable: VkBool32, extendedDynamicState3ColorBlendAdvanced: VkBool32, extendedDynamicState3ProvokingVertexMode: VkBool32, extendedDynamicState3LineRasterizationMode: VkBool32, extendedDynamicState3LineStippleEnable: VkBool32, extendedDynamicState3DepthClipNegativeOneToOne: VkBool32, extendedDynamicState3ViewportWScalingEnable: VkBool32, extendedDynamicState3ViewportSwizzle: VkBool32, extendedDynamicState3CoverageToColorEnable: VkBool32, extendedDynamicState3CoverageToColorLocation: VkBool32, extendedDynamicState3CoverageModulationMode: VkBool32, extendedDynamicState3CoverageModulationTableEnable: VkBool32, extendedDynamicState3CoverageModulationTable: VkBool32, extendedDynamicState3CoverageReductionMode: VkBool32, extendedDynamicState3RepresentativeFragmentTestEnable: VkBool32, extendedDynamicState3ShadingRateImageEnable: VkBool32): VkPhysicalDeviceExtendedDynamicState3FeaturesEXT = +proc newVkPhysicalDeviceExtendedDynamicState3FeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceExtendedDynamicState3FeaturesEXT, pNext: pointer = nil, extendedDynamicState3TessellationDomainOrigin: VkBool32, extendedDynamicState3DepthClampEnable: VkBool32, extendedDynamicState3PolygonMode: VkBool32, extendedDynamicState3RasterizationSamples: VkBool32, extendedDynamicState3SampleMask: VkBool32, extendedDynamicState3AlphaToCoverageEnable: VkBool32, extendedDynamicState3AlphaToOneEnable: VkBool32, extendedDynamicState3LogicOpEnable: VkBool32, extendedDynamicState3ColorBlendEnable: VkBool32, extendedDynamicState3ColorBlendEquation: VkBool32, extendedDynamicState3ColorWriteMask: VkBool32, extendedDynamicState3RasterizationStream: VkBool32, extendedDynamicState3ConservativeRasterizationMode: VkBool32, extendedDynamicState3ExtraPrimitiveOverestimationSize: VkBool32, extendedDynamicState3DepthClipEnable: VkBool32, extendedDynamicState3SampleLocationsEnable: VkBool32, extendedDynamicState3ColorBlendAdvanced: VkBool32, extendedDynamicState3ProvokingVertexMode: VkBool32, extendedDynamicState3LineRasterizationMode: VkBool32, extendedDynamicState3LineStippleEnable: VkBool32, extendedDynamicState3DepthClipNegativeOneToOne: VkBool32, extendedDynamicState3ViewportWScalingEnable: VkBool32, extendedDynamicState3ViewportSwizzle: VkBool32, extendedDynamicState3CoverageToColorEnable: VkBool32, extendedDynamicState3CoverageToColorLocation: VkBool32, extendedDynamicState3CoverageModulationMode: VkBool32, extendedDynamicState3CoverageModulationTableEnable: VkBool32, extendedDynamicState3CoverageModulationTable: VkBool32, extendedDynamicState3CoverageReductionMode: VkBool32, extendedDynamicState3RepresentativeFragmentTestEnable: VkBool32, extendedDynamicState3ShadingRateImageEnable: VkBool32): VkPhysicalDeviceExtendedDynamicState3FeaturesEXT = result = VkPhysicalDeviceExtendedDynamicState3FeaturesEXT( sType: sType, pNext: pNext, @@ -16607,7 +17856,7 @@ proc newVkPhysicalDeviceExtendedDynamicState3FeaturesEXT*(sType: VkStructureType extendedDynamicState3ShadingRateImageEnable: extendedDynamicState3ShadingRateImageEnable, ) -proc newVkPhysicalDeviceExtendedDynamicState3PropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, dynamicPrimitiveTopologyUnrestricted: VkBool32): VkPhysicalDeviceExtendedDynamicState3PropertiesEXT = +proc newVkPhysicalDeviceExtendedDynamicState3PropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceExtendedDynamicState3PropertiesEXT, pNext: pointer = nil, dynamicPrimitiveTopologyUnrestricted: VkBool32): VkPhysicalDeviceExtendedDynamicState3PropertiesEXT = result = VkPhysicalDeviceExtendedDynamicState3PropertiesEXT( sType: sType, pNext: pNext, @@ -16633,21 +17882,21 @@ proc newVkColorBlendAdvancedEXT*(advancedBlendOp: VkBlendOp, srcPremultiplied: V clampResults: clampResults, ) -proc newVkRenderPassTransformBeginInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, transform: VkSurfaceTransformFlagBitsKHR): VkRenderPassTransformBeginInfoQCOM = +proc newVkRenderPassTransformBeginInfoQCOM*(sType: VkStructureType = VkStructureType.RenderPassTransformBeginInfoQCOM, pNext: pointer = nil, transform: VkSurfaceTransformFlagBitsKHR): VkRenderPassTransformBeginInfoQCOM = result = VkRenderPassTransformBeginInfoQCOM( sType: sType, pNext: pNext, transform: transform, ) -proc newVkCopyCommandTransformInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, transform: VkSurfaceTransformFlagBitsKHR): VkCopyCommandTransformInfoQCOM = +proc newVkCopyCommandTransformInfoQCOM*(sType: VkStructureType = VkStructureType.CopyCommandTransformInfoQCOM, pNext: pointer = nil, transform: VkSurfaceTransformFlagBitsKHR): VkCopyCommandTransformInfoQCOM = result = VkCopyCommandTransformInfoQCOM( sType: sType, pNext: pNext, transform: transform, ) -proc newVkCommandBufferInheritanceRenderPassTransformInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, transform: VkSurfaceTransformFlagBitsKHR, renderArea: VkRect2D): VkCommandBufferInheritanceRenderPassTransformInfoQCOM = +proc newVkCommandBufferInheritanceRenderPassTransformInfoQCOM*(sType: VkStructureType = VkStructureType.CommandBufferInheritanceRenderPassTransformInfoQCOM, pNext: pointer = nil, transform: VkSurfaceTransformFlagBitsKHR, renderArea: VkRect2D): VkCommandBufferInheritanceRenderPassTransformInfoQCOM = result = VkCommandBufferInheritanceRenderPassTransformInfoQCOM( sType: sType, pNext: pNext, @@ -16655,14 +17904,14 @@ proc newVkCommandBufferInheritanceRenderPassTransformInfoQCOM*(sType: VkStructur renderArea: renderArea, ) -proc newVkPhysicalDeviceDiagnosticsConfigFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, diagnosticsConfig: VkBool32): VkPhysicalDeviceDiagnosticsConfigFeaturesNV = +proc newVkPhysicalDeviceDiagnosticsConfigFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceDiagnosticsConfigFeaturesNV, pNext: pointer = nil, diagnosticsConfig: VkBool32): VkPhysicalDeviceDiagnosticsConfigFeaturesNV = result = VkPhysicalDeviceDiagnosticsConfigFeaturesNV( sType: sType, pNext: pNext, diagnosticsConfig: diagnosticsConfig, ) -proc newVkDeviceDiagnosticsConfigCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkDeviceDiagnosticsConfigFlagsNV = 0.VkDeviceDiagnosticsConfigFlagsNV): VkDeviceDiagnosticsConfigCreateInfoNV = +proc newVkDeviceDiagnosticsConfigCreateInfoNV*(sType: VkStructureType = VkStructureType.DeviceDiagnosticsConfigCreateInfoNV, pNext: pointer = nil, flags: VkDeviceDiagnosticsConfigFlagsNV = 0.VkDeviceDiagnosticsConfigFlagsNV): VkDeviceDiagnosticsConfigCreateInfoNV = result = VkDeviceDiagnosticsConfigCreateInfoNV( sType: sType, pNext: pNext, @@ -16685,14 +17934,14 @@ proc newVkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures*(sType: VkStructur shaderZeroInitializeWorkgroupMemory: shaderZeroInitializeWorkgroupMemory, ) -proc newVkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, shaderSubgroupUniformControlFlow: VkBool32): VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR = +proc newVkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR, pNext: pointer = nil, shaderSubgroupUniformControlFlow: VkBool32): VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR = result = VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR( sType: sType, pNext: pNext, shaderSubgroupUniformControlFlow: shaderSubgroupUniformControlFlow, ) -proc newVkPhysicalDeviceRobustness2FeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, robustBufferAccess2: VkBool32, robustImageAccess2: VkBool32, nullDescriptor: VkBool32): VkPhysicalDeviceRobustness2FeaturesEXT = +proc newVkPhysicalDeviceRobustness2FeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceRobustness2FeaturesEXT, pNext: pointer = nil, robustBufferAccess2: VkBool32, robustImageAccess2: VkBool32, nullDescriptor: VkBool32): VkPhysicalDeviceRobustness2FeaturesEXT = result = VkPhysicalDeviceRobustness2FeaturesEXT( sType: sType, pNext: pNext, @@ -16701,7 +17950,7 @@ proc newVkPhysicalDeviceRobustness2FeaturesEXT*(sType: VkStructureType, pNext: p nullDescriptor: nullDescriptor, ) -proc newVkPhysicalDeviceRobustness2PropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, robustStorageBufferAccessSizeAlignment: VkDeviceSize, robustUniformBufferAccessSizeAlignment: VkDeviceSize): VkPhysicalDeviceRobustness2PropertiesEXT = +proc newVkPhysicalDeviceRobustness2PropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceRobustness2PropertiesEXT, pNext: pointer = nil, robustStorageBufferAccessSizeAlignment: VkDeviceSize, robustUniformBufferAccessSizeAlignment: VkDeviceSize): VkPhysicalDeviceRobustness2PropertiesEXT = result = VkPhysicalDeviceRobustness2PropertiesEXT( sType: sType, pNext: pNext, @@ -16716,7 +17965,7 @@ proc newVkPhysicalDeviceImageRobustnessFeatures*(sType: VkStructureType, pNext: robustImageAccess: robustImageAccess, ) -proc newVkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, workgroupMemoryExplicitLayout: VkBool32, workgroupMemoryExplicitLayoutScalarBlockLayout: VkBool32, workgroupMemoryExplicitLayout8BitAccess: VkBool32, workgroupMemoryExplicitLayout16BitAccess: VkBool32): VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR = +proc newVkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR, pNext: pointer = nil, workgroupMemoryExplicitLayout: VkBool32, workgroupMemoryExplicitLayoutScalarBlockLayout: VkBool32, workgroupMemoryExplicitLayout8BitAccess: VkBool32, workgroupMemoryExplicitLayout16BitAccess: VkBool32): VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR = result = VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR( sType: sType, pNext: pNext, @@ -16726,7 +17975,7 @@ proc newVkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR*(sType: VkStruc workgroupMemoryExplicitLayout16BitAccess: workgroupMemoryExplicitLayout16BitAccess, ) -proc newVkPhysicalDevicePortabilitySubsetFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, constantAlphaColorBlendFactors: VkBool32, events: VkBool32, imageViewFormatReinterpretation: VkBool32, imageViewFormatSwizzle: VkBool32, imageView2DOn3DImage: VkBool32, multisampleArrayImage: VkBool32, mutableComparisonSamplers: VkBool32, pointPolygons: VkBool32, samplerMipLodBias: VkBool32, separateStencilMaskRef: VkBool32, shaderSampleRateInterpolationFunctions: VkBool32, tessellationIsolines: VkBool32, tessellationPointMode: VkBool32, triangleFans: VkBool32, vertexAttributeAccessBeyondStride: VkBool32): VkPhysicalDevicePortabilitySubsetFeaturesKHR = +proc newVkPhysicalDevicePortabilitySubsetFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDevicePortabilitySubsetFeaturesKHR, pNext: pointer = nil, constantAlphaColorBlendFactors: VkBool32, events: VkBool32, imageViewFormatReinterpretation: VkBool32, imageViewFormatSwizzle: VkBool32, imageView2DOn3DImage: VkBool32, multisampleArrayImage: VkBool32, mutableComparisonSamplers: VkBool32, pointPolygons: VkBool32, samplerMipLodBias: VkBool32, separateStencilMaskRef: VkBool32, shaderSampleRateInterpolationFunctions: VkBool32, tessellationIsolines: VkBool32, tessellationPointMode: VkBool32, triangleFans: VkBool32, vertexAttributeAccessBeyondStride: VkBool32): VkPhysicalDevicePortabilitySubsetFeaturesKHR = result = VkPhysicalDevicePortabilitySubsetFeaturesKHR( sType: sType, pNext: pNext, @@ -16747,14 +17996,14 @@ proc newVkPhysicalDevicePortabilitySubsetFeaturesKHR*(sType: VkStructureType, pN vertexAttributeAccessBeyondStride: vertexAttributeAccessBeyondStride, ) -proc newVkPhysicalDevicePortabilitySubsetPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, minVertexInputBindingStrideAlignment: uint32): VkPhysicalDevicePortabilitySubsetPropertiesKHR = +proc newVkPhysicalDevicePortabilitySubsetPropertiesKHR*(sType: VkStructureType = VkStructureType.PhysicalDevicePortabilitySubsetPropertiesKHR, pNext: pointer = nil, minVertexInputBindingStrideAlignment: uint32): VkPhysicalDevicePortabilitySubsetPropertiesKHR = result = VkPhysicalDevicePortabilitySubsetPropertiesKHR( sType: sType, pNext: pNext, minVertexInputBindingStrideAlignment: minVertexInputBindingStrideAlignment, ) -proc newVkPhysicalDevice4444FormatsFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, formatA4R4G4B4: VkBool32, formatA4B4G4R4: VkBool32): VkPhysicalDevice4444FormatsFeaturesEXT = +proc newVkPhysicalDevice4444FormatsFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDevice4444FormatsFeaturesEXT, pNext: pointer = nil, formatA4R4G4B4: VkBool32, formatA4B4G4R4: VkBool32): VkPhysicalDevice4444FormatsFeaturesEXT = result = VkPhysicalDevice4444FormatsFeaturesEXT( sType: sType, pNext: pNext, @@ -16762,14 +18011,14 @@ proc newVkPhysicalDevice4444FormatsFeaturesEXT*(sType: VkStructureType, pNext: p formatA4B4G4R4: formatA4B4G4R4, ) -proc newVkPhysicalDeviceSubpassShadingFeaturesHUAWEI*(sType: VkStructureType, pNext: pointer = nil, subpassShading: VkBool32): VkPhysicalDeviceSubpassShadingFeaturesHUAWEI = +proc newVkPhysicalDeviceSubpassShadingFeaturesHUAWEI*(sType: VkStructureType = VkStructureType.PhysicalDeviceSubpassShadingFeaturesHUAWEI, pNext: pointer = nil, subpassShading: VkBool32): VkPhysicalDeviceSubpassShadingFeaturesHUAWEI = result = VkPhysicalDeviceSubpassShadingFeaturesHUAWEI( sType: sType, pNext: pNext, subpassShading: subpassShading, ) -proc newVkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI*(sType: VkStructureType, pNext: pointer = nil, clustercullingShader: VkBool32, multiviewClusterCullingShader: VkBool32): VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI = +proc newVkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI*(sType: VkStructureType = VkStructureType.PhysicalDeviceClusterCullingShaderFeaturesHUAWEI, pNext: pointer = nil, clustercullingShader: VkBool32, multiviewClusterCullingShader: VkBool32): VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI = result = VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI( sType: sType, pNext: pNext, @@ -16777,7 +18026,7 @@ proc newVkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI*(sType: VkStructureTy multiviewClusterCullingShader: multiviewClusterCullingShader, ) -proc newVkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI*(sType: VkStructureType, pNext: pointer = nil, clusterShadingRate: VkBool32): VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI = +proc newVkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI*(sType: VkStructureType = VkStructureType.PhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI, pNext: pointer = nil, clusterShadingRate: VkBool32): VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI = result = VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI( sType: sType, pNext: pNext, @@ -16906,7 +18155,7 @@ proc newVkResolveImageInfo2*(sType: VkStructureType, pNext: pointer = nil, srcIm pRegions: pRegions, ) -proc newVkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderImageInt64Atomics: VkBool32, sparseImageInt64Atomics: VkBool32): VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT = +proc newVkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderImageAtomicInt64FeaturesEXT, pNext: pointer = nil, shaderImageInt64Atomics: VkBool32, sparseImageInt64Atomics: VkBool32): VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT = result = VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT( sType: sType, pNext: pNext, @@ -16914,7 +18163,7 @@ proc newVkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT*(sType: VkStructureTyp sparseImageInt64Atomics: sparseImageInt64Atomics, ) -proc newVkFragmentShadingRateAttachmentInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pFragmentShadingRateAttachment: ptr VkAttachmentReference2, shadingRateAttachmentTexelSize: VkExtent2D): VkFragmentShadingRateAttachmentInfoKHR = +proc newVkFragmentShadingRateAttachmentInfoKHR*(sType: VkStructureType = VkStructureType.FragmentShadingRateAttachmentInfoKHR, pNext: pointer = nil, pFragmentShadingRateAttachment: ptr VkAttachmentReference2, shadingRateAttachmentTexelSize: VkExtent2D): VkFragmentShadingRateAttachmentInfoKHR = result = VkFragmentShadingRateAttachmentInfoKHR( sType: sType, pNext: pNext, @@ -16922,7 +18171,7 @@ proc newVkFragmentShadingRateAttachmentInfoKHR*(sType: VkStructureType, pNext: p shadingRateAttachmentTexelSize: shadingRateAttachmentTexelSize, ) -proc newVkPipelineFragmentShadingRateStateCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, fragmentSize: VkExtent2D, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): VkPipelineFragmentShadingRateStateCreateInfoKHR = +proc newVkPipelineFragmentShadingRateStateCreateInfoKHR*(sType: VkStructureType = VkStructureType.PipelineFragmentShadingRateStateCreateInfoKHR, pNext: pointer = nil, fragmentSize: VkExtent2D, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): VkPipelineFragmentShadingRateStateCreateInfoKHR = result = VkPipelineFragmentShadingRateStateCreateInfoKHR( sType: sType, pNext: pNext, @@ -16930,7 +18179,7 @@ proc newVkPipelineFragmentShadingRateStateCreateInfoKHR*(sType: VkStructureType, combinerOps: combinerOps, ) -proc newVkPhysicalDeviceFragmentShadingRateFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, pipelineFragmentShadingRate: VkBool32, primitiveFragmentShadingRate: VkBool32, attachmentFragmentShadingRate: VkBool32): VkPhysicalDeviceFragmentShadingRateFeaturesKHR = +proc newVkPhysicalDeviceFragmentShadingRateFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceFragmentShadingRateFeaturesKHR, pNext: pointer = nil, pipelineFragmentShadingRate: VkBool32, primitiveFragmentShadingRate: VkBool32, attachmentFragmentShadingRate: VkBool32): VkPhysicalDeviceFragmentShadingRateFeaturesKHR = result = VkPhysicalDeviceFragmentShadingRateFeaturesKHR( sType: sType, pNext: pNext, @@ -16939,7 +18188,7 @@ proc newVkPhysicalDeviceFragmentShadingRateFeaturesKHR*(sType: VkStructureType, attachmentFragmentShadingRate: attachmentFragmentShadingRate, ) -proc newVkPhysicalDeviceFragmentShadingRatePropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, minFragmentShadingRateAttachmentTexelSize: VkExtent2D, maxFragmentShadingRateAttachmentTexelSize: VkExtent2D, maxFragmentShadingRateAttachmentTexelSizeAspectRatio: uint32, primitiveFragmentShadingRateWithMultipleViewports: VkBool32, layeredShadingRateAttachments: VkBool32, fragmentShadingRateNonTrivialCombinerOps: VkBool32, maxFragmentSize: VkExtent2D, maxFragmentSizeAspectRatio: uint32, maxFragmentShadingRateCoverageSamples: uint32, maxFragmentShadingRateRasterizationSamples: VkSampleCountFlagBits, fragmentShadingRateWithShaderDepthStencilWrites: VkBool32, fragmentShadingRateWithSampleMask: VkBool32, fragmentShadingRateWithShaderSampleMask: VkBool32, fragmentShadingRateWithConservativeRasterization: VkBool32, fragmentShadingRateWithFragmentShaderInterlock: VkBool32, fragmentShadingRateWithCustomSampleLocations: VkBool32, fragmentShadingRateStrictMultiplyCombiner: VkBool32): VkPhysicalDeviceFragmentShadingRatePropertiesKHR = +proc newVkPhysicalDeviceFragmentShadingRatePropertiesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceFragmentShadingRatePropertiesKHR, pNext: pointer = nil, minFragmentShadingRateAttachmentTexelSize: VkExtent2D, maxFragmentShadingRateAttachmentTexelSize: VkExtent2D, maxFragmentShadingRateAttachmentTexelSizeAspectRatio: uint32, primitiveFragmentShadingRateWithMultipleViewports: VkBool32, layeredShadingRateAttachments: VkBool32, fragmentShadingRateNonTrivialCombinerOps: VkBool32, maxFragmentSize: VkExtent2D, maxFragmentSizeAspectRatio: uint32, maxFragmentShadingRateCoverageSamples: uint32, maxFragmentShadingRateRasterizationSamples: VkSampleCountFlagBits, fragmentShadingRateWithShaderDepthStencilWrites: VkBool32, fragmentShadingRateWithSampleMask: VkBool32, fragmentShadingRateWithShaderSampleMask: VkBool32, fragmentShadingRateWithConservativeRasterization: VkBool32, fragmentShadingRateWithFragmentShaderInterlock: VkBool32, fragmentShadingRateWithCustomSampleLocations: VkBool32, fragmentShadingRateStrictMultiplyCombiner: VkBool32): VkPhysicalDeviceFragmentShadingRatePropertiesKHR = result = VkPhysicalDeviceFragmentShadingRatePropertiesKHR( sType: sType, pNext: pNext, @@ -16962,7 +18211,7 @@ proc newVkPhysicalDeviceFragmentShadingRatePropertiesKHR*(sType: VkStructureType fragmentShadingRateStrictMultiplyCombiner: fragmentShadingRateStrictMultiplyCombiner, ) -proc newVkPhysicalDeviceFragmentShadingRateKHR*(sType: VkStructureType, pNext: pointer = nil, sampleCounts: VkSampleCountFlags, fragmentSize: VkExtent2D): VkPhysicalDeviceFragmentShadingRateKHR = +proc newVkPhysicalDeviceFragmentShadingRateKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceFragmentShadingRateKHR, pNext: pointer = nil, sampleCounts: VkSampleCountFlags, fragmentSize: VkExtent2D): VkPhysicalDeviceFragmentShadingRateKHR = result = VkPhysicalDeviceFragmentShadingRateKHR( sType: sType, pNext: pNext, @@ -16977,7 +18226,7 @@ proc newVkPhysicalDeviceShaderTerminateInvocationFeatures*(sType: VkStructureTyp shaderTerminateInvocation: shaderTerminateInvocation, ) -proc newVkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, fragmentShadingRateEnums: VkBool32, supersampleFragmentShadingRates: VkBool32, noInvocationFragmentShadingRates: VkBool32): VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV = +proc newVkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceFragmentShadingRateEnumsFeaturesNV, pNext: pointer = nil, fragmentShadingRateEnums: VkBool32, supersampleFragmentShadingRates: VkBool32, noInvocationFragmentShadingRates: VkBool32): VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV = result = VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV( sType: sType, pNext: pNext, @@ -16986,14 +18235,14 @@ proc newVkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV*(sType: VkStructureTy noInvocationFragmentShadingRates: noInvocationFragmentShadingRates, ) -proc newVkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, maxFragmentShadingRateInvocationCount: VkSampleCountFlagBits): VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV = +proc newVkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceFragmentShadingRateEnumsPropertiesNV, pNext: pointer = nil, maxFragmentShadingRateInvocationCount: VkSampleCountFlagBits): VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV = result = VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV( sType: sType, pNext: pNext, maxFragmentShadingRateInvocationCount: maxFragmentShadingRateInvocationCount, ) -proc newVkPipelineFragmentShadingRateEnumStateCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, shadingRateType: VkFragmentShadingRateTypeNV, shadingRate: VkFragmentShadingRateNV, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): VkPipelineFragmentShadingRateEnumStateCreateInfoNV = +proc newVkPipelineFragmentShadingRateEnumStateCreateInfoNV*(sType: VkStructureType = VkStructureType.PipelineFragmentShadingRateEnumStateCreateInfoNV, pNext: pointer = nil, shadingRateType: VkFragmentShadingRateTypeNV, shadingRate: VkFragmentShadingRateNV, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): VkPipelineFragmentShadingRateEnumStateCreateInfoNV = result = VkPipelineFragmentShadingRateEnumStateCreateInfoNV( sType: sType, pNext: pNext, @@ -17002,7 +18251,7 @@ proc newVkPipelineFragmentShadingRateEnumStateCreateInfoNV*(sType: VkStructureTy combinerOps: combinerOps, ) -proc newVkAccelerationStructureBuildSizesInfoKHR*(sType: VkStructureType, pNext: pointer = nil, accelerationStructureSize: VkDeviceSize, updateScratchSize: VkDeviceSize, buildScratchSize: VkDeviceSize): VkAccelerationStructureBuildSizesInfoKHR = +proc newVkAccelerationStructureBuildSizesInfoKHR*(sType: VkStructureType = VkStructureType.AccelerationStructureBuildSizesInfoKHR, pNext: pointer = nil, accelerationStructureSize: VkDeviceSize, updateScratchSize: VkDeviceSize, buildScratchSize: VkDeviceSize): VkAccelerationStructureBuildSizesInfoKHR = result = VkAccelerationStructureBuildSizesInfoKHR( sType: sType, pNext: pNext, @@ -17011,7 +18260,7 @@ proc newVkAccelerationStructureBuildSizesInfoKHR*(sType: VkStructureType, pNext: buildScratchSize: buildScratchSize, ) -proc newVkPhysicalDeviceImage2DViewOf3DFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, image2DViewOf3D: VkBool32, sampler2DViewOf3D: VkBool32): VkPhysicalDeviceImage2DViewOf3DFeaturesEXT = +proc newVkPhysicalDeviceImage2DViewOf3DFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceImage2DViewOf3DFeaturesEXT, pNext: pointer = nil, image2DViewOf3D: VkBool32, sampler2DViewOf3D: VkBool32): VkPhysicalDeviceImage2DViewOf3DFeaturesEXT = result = VkPhysicalDeviceImage2DViewOf3DFeaturesEXT( sType: sType, pNext: pNext, @@ -17019,21 +18268,21 @@ proc newVkPhysicalDeviceImage2DViewOf3DFeaturesEXT*(sType: VkStructureType, pNex sampler2DViewOf3D: sampler2DViewOf3D, ) -proc newVkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, imageSlicedViewOf3D: VkBool32): VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT = +proc newVkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceImageSlicedViewOf3DFeaturesEXT, pNext: pointer = nil, imageSlicedViewOf3D: VkBool32): VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT = result = VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT( sType: sType, pNext: pNext, imageSlicedViewOf3D: imageSlicedViewOf3D, ) -proc newVkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, attachmentFeedbackLoopDynamicState: VkBool32): VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT = +proc newVkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT, pNext: pointer = nil, attachmentFeedbackLoopDynamicState: VkBool32): VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT = result = VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT( sType: sType, pNext: pNext, attachmentFeedbackLoopDynamicState: attachmentFeedbackLoopDynamicState, ) -proc newVkPhysicalDeviceMutableDescriptorTypeFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, mutableDescriptorType: VkBool32): VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT = +proc newVkPhysicalDeviceMutableDescriptorTypeFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceMutableDescriptorTypeFeaturesEXT, pNext: pointer = nil, mutableDescriptorType: VkBool32): VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT = result = VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT( sType: sType, pNext: pNext, @@ -17046,7 +18295,7 @@ proc newVkMutableDescriptorTypeListEXT*(descriptorTypeCount: uint32, pDescriptor pDescriptorTypes: pDescriptorTypes, ) -proc newVkMutableDescriptorTypeCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, mutableDescriptorTypeListCount: uint32, pMutableDescriptorTypeLists: ptr VkMutableDescriptorTypeListEXT): VkMutableDescriptorTypeCreateInfoEXT = +proc newVkMutableDescriptorTypeCreateInfoEXT*(sType: VkStructureType = VkStructureType.MutableDescriptorTypeCreateInfoEXT, pNext: pointer = nil, mutableDescriptorTypeListCount: uint32, pMutableDescriptorTypeLists: ptr VkMutableDescriptorTypeListEXT): VkMutableDescriptorTypeCreateInfoEXT = result = VkMutableDescriptorTypeCreateInfoEXT( sType: sType, pNext: pNext, @@ -17054,35 +18303,35 @@ proc newVkMutableDescriptorTypeCreateInfoEXT*(sType: VkStructureType, pNext: poi pMutableDescriptorTypeLists: pMutableDescriptorTypeLists, ) -proc newVkPhysicalDeviceDepthClipControlFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, depthClipControl: VkBool32): VkPhysicalDeviceDepthClipControlFeaturesEXT = +proc newVkPhysicalDeviceDepthClipControlFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceDepthClipControlFeaturesEXT, pNext: pointer = nil, depthClipControl: VkBool32): VkPhysicalDeviceDepthClipControlFeaturesEXT = result = VkPhysicalDeviceDepthClipControlFeaturesEXT( sType: sType, pNext: pNext, depthClipControl: depthClipControl, ) -proc newVkPipelineViewportDepthClipControlCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, negativeOneToOne: VkBool32): VkPipelineViewportDepthClipControlCreateInfoEXT = +proc newVkPipelineViewportDepthClipControlCreateInfoEXT*(sType: VkStructureType = VkStructureType.PipelineViewportDepthClipControlCreateInfoEXT, pNext: pointer = nil, negativeOneToOne: VkBool32): VkPipelineViewportDepthClipControlCreateInfoEXT = result = VkPipelineViewportDepthClipControlCreateInfoEXT( sType: sType, pNext: pNext, negativeOneToOne: negativeOneToOne, ) -proc newVkPhysicalDeviceVertexInputDynamicStateFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, vertexInputDynamicState: VkBool32): VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT = +proc newVkPhysicalDeviceVertexInputDynamicStateFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceVertexInputDynamicStateFeaturesEXT, pNext: pointer = nil, vertexInputDynamicState: VkBool32): VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT = result = VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT( sType: sType, pNext: pNext, vertexInputDynamicState: vertexInputDynamicState, ) -proc newVkPhysicalDeviceExternalMemoryRDMAFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, externalMemoryRDMA: VkBool32): VkPhysicalDeviceExternalMemoryRDMAFeaturesNV = +proc newVkPhysicalDeviceExternalMemoryRDMAFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceExternalMemoryRDMAFeaturesNV, pNext: pointer = nil, externalMemoryRDMA: VkBool32): VkPhysicalDeviceExternalMemoryRDMAFeaturesNV = result = VkPhysicalDeviceExternalMemoryRDMAFeaturesNV( sType: sType, pNext: pNext, externalMemoryRDMA: externalMemoryRDMA, ) -proc newVkVertexInputBindingDescription2EXT*(sType: VkStructureType, pNext: pointer = nil, binding: uint32, stride: uint32, inputRate: VkVertexInputRate, divisor: uint32): VkVertexInputBindingDescription2EXT = +proc newVkVertexInputBindingDescription2EXT*(sType: VkStructureType = VkStructureType.VertexInputBindingDescription2EXT, pNext: pointer = nil, binding: uint32, stride: uint32, inputRate: VkVertexInputRate, divisor: uint32): VkVertexInputBindingDescription2EXT = result = VkVertexInputBindingDescription2EXT( sType: sType, pNext: pNext, @@ -17092,7 +18341,7 @@ proc newVkVertexInputBindingDescription2EXT*(sType: VkStructureType, pNext: poin divisor: divisor, ) -proc newVkVertexInputAttributeDescription2EXT*(sType: VkStructureType, pNext: pointer = nil, location: uint32, binding: uint32, format: VkFormat, offset: uint32): VkVertexInputAttributeDescription2EXT = +proc newVkVertexInputAttributeDescription2EXT*(sType: VkStructureType = VkStructureType.VertexInputAttributeDescription2EXT, pNext: pointer = nil, location: uint32, binding: uint32, format: VkFormat, offset: uint32): VkVertexInputAttributeDescription2EXT = result = VkVertexInputAttributeDescription2EXT( sType: sType, pNext: pNext, @@ -17102,14 +18351,14 @@ proc newVkVertexInputAttributeDescription2EXT*(sType: VkStructureType, pNext: po offset: offset, ) -proc newVkPhysicalDeviceColorWriteEnableFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, colorWriteEnable: VkBool32): VkPhysicalDeviceColorWriteEnableFeaturesEXT = +proc newVkPhysicalDeviceColorWriteEnableFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceColorWriteEnableFeaturesEXT, pNext: pointer = nil, colorWriteEnable: VkBool32): VkPhysicalDeviceColorWriteEnableFeaturesEXT = result = VkPhysicalDeviceColorWriteEnableFeaturesEXT( sType: sType, pNext: pNext, colorWriteEnable: colorWriteEnable, ) -proc newVkPipelineColorWriteCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, attachmentCount: uint32, pColorWriteEnables: ptr VkBool32): VkPipelineColorWriteCreateInfoEXT = +proc newVkPipelineColorWriteCreateInfoEXT*(sType: VkStructureType = VkStructureType.PipelineColorWriteCreateInfoEXT, pNext: pointer = nil, attachmentCount: uint32, pColorWriteEnables: ptr VkBool32): VkPipelineColorWriteCreateInfoEXT = result = VkPipelineColorWriteCreateInfoEXT( sType: sType, pNext: pNext, @@ -17202,14 +18451,14 @@ proc newVkSubmitInfo2*(sType: VkStructureType, pNext: pointer = nil, flags: VkSu pSignalSemaphoreInfos: pSignalSemaphoreInfos, ) -proc newVkQueueFamilyCheckpointProperties2NV*(sType: VkStructureType, pNext: pointer = nil, checkpointExecutionStageMask: VkPipelineStageFlags2): VkQueueFamilyCheckpointProperties2NV = +proc newVkQueueFamilyCheckpointProperties2NV*(sType: VkStructureType = VkStructureType.QueueFamilyCheckpointProperties2NV, pNext: pointer = nil, checkpointExecutionStageMask: VkPipelineStageFlags2): VkQueueFamilyCheckpointProperties2NV = result = VkQueueFamilyCheckpointProperties2NV( sType: sType, pNext: pNext, checkpointExecutionStageMask: checkpointExecutionStageMask, ) -proc newVkCheckpointData2NV*(sType: VkStructureType, pNext: pointer = nil, stage: VkPipelineStageFlags2, pCheckpointMarker: pointer = nil): VkCheckpointData2NV = +proc newVkCheckpointData2NV*(sType: VkStructureType = VkStructureType.CheckpointData2NV, pNext: pointer = nil, stage: VkPipelineStageFlags2, pCheckpointMarker: pointer = nil): VkCheckpointData2NV = result = VkCheckpointData2NV( sType: sType, pNext: pNext, @@ -17224,14 +18473,14 @@ proc newVkPhysicalDeviceSynchronization2Features*(sType: VkStructureType, pNext: synchronization2: synchronization2, ) -proc newVkPhysicalDeviceHostImageCopyFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, hostImageCopy: VkBool32): VkPhysicalDeviceHostImageCopyFeaturesEXT = +proc newVkPhysicalDeviceHostImageCopyFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceHostImageCopyFeaturesEXT, pNext: pointer = nil, hostImageCopy: VkBool32): VkPhysicalDeviceHostImageCopyFeaturesEXT = result = VkPhysicalDeviceHostImageCopyFeaturesEXT( sType: sType, pNext: pNext, hostImageCopy: hostImageCopy, ) -proc newVkPhysicalDeviceHostImageCopyPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, copySrcLayoutCount: uint32, pCopySrcLayouts: ptr VkImageLayout, copyDstLayoutCount: uint32, pCopyDstLayouts: ptr VkImageLayout, optimalTilingLayoutUUID: array[VK_UUID_SIZE, uint8], identicalMemoryTypeRequirements: VkBool32): VkPhysicalDeviceHostImageCopyPropertiesEXT = +proc newVkPhysicalDeviceHostImageCopyPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceHostImageCopyPropertiesEXT, pNext: pointer = nil, copySrcLayoutCount: uint32, pCopySrcLayouts: ptr VkImageLayout, copyDstLayoutCount: uint32, pCopyDstLayouts: ptr VkImageLayout, optimalTilingLayoutUUID: array[VK_UUID_SIZE, uint8], identicalMemoryTypeRequirements: VkBool32): VkPhysicalDeviceHostImageCopyPropertiesEXT = result = VkPhysicalDeviceHostImageCopyPropertiesEXT( sType: sType, pNext: pNext, @@ -17243,7 +18492,7 @@ proc newVkPhysicalDeviceHostImageCopyPropertiesEXT*(sType: VkStructureType, pNex identicalMemoryTypeRequirements: identicalMemoryTypeRequirements, ) -proc newVkMemoryToImageCopyEXT*(sType: VkStructureType, pNext: pointer = nil, pHostPointer: pointer = nil, memoryRowLength: uint32, memoryImageHeight: uint32, imageSubresource: VkImageSubresourceLayers, imageOffset: VkOffset3D, imageExtent: VkExtent3D): VkMemoryToImageCopyEXT = +proc newVkMemoryToImageCopyEXT*(sType: VkStructureType = VkStructureType.MemoryToImageCopyEXT, pNext: pointer = nil, pHostPointer: pointer = nil, memoryRowLength: uint32, memoryImageHeight: uint32, imageSubresource: VkImageSubresourceLayers, imageOffset: VkOffset3D, imageExtent: VkExtent3D): VkMemoryToImageCopyEXT = result = VkMemoryToImageCopyEXT( sType: sType, pNext: pNext, @@ -17255,7 +18504,7 @@ proc newVkMemoryToImageCopyEXT*(sType: VkStructureType, pNext: pointer = nil, pH imageExtent: imageExtent, ) -proc newVkImageToMemoryCopyEXT*(sType: VkStructureType, pNext: pointer = nil, pHostPointer: pointer = nil, memoryRowLength: uint32, memoryImageHeight: uint32, imageSubresource: VkImageSubresourceLayers, imageOffset: VkOffset3D, imageExtent: VkExtent3D): VkImageToMemoryCopyEXT = +proc newVkImageToMemoryCopyEXT*(sType: VkStructureType = VkStructureType.ImageToMemoryCopyEXT, pNext: pointer = nil, pHostPointer: pointer = nil, memoryRowLength: uint32, memoryImageHeight: uint32, imageSubresource: VkImageSubresourceLayers, imageOffset: VkOffset3D, imageExtent: VkExtent3D): VkImageToMemoryCopyEXT = result = VkImageToMemoryCopyEXT( sType: sType, pNext: pNext, @@ -17267,7 +18516,7 @@ proc newVkImageToMemoryCopyEXT*(sType: VkStructureType, pNext: pointer = nil, pH imageExtent: imageExtent, ) -proc newVkCopyMemoryToImageInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkHostImageCopyFlagsEXT = 0.VkHostImageCopyFlagsEXT, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkMemoryToImageCopyEXT): VkCopyMemoryToImageInfoEXT = +proc newVkCopyMemoryToImageInfoEXT*(sType: VkStructureType = VkStructureType.CopyMemoryToImageInfoEXT, pNext: pointer = nil, flags: VkHostImageCopyFlagsEXT = 0.VkHostImageCopyFlagsEXT, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkMemoryToImageCopyEXT): VkCopyMemoryToImageInfoEXT = result = VkCopyMemoryToImageInfoEXT( sType: sType, pNext: pNext, @@ -17278,7 +18527,7 @@ proc newVkCopyMemoryToImageInfoEXT*(sType: VkStructureType, pNext: pointer = nil pRegions: pRegions, ) -proc newVkCopyImageToMemoryInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkHostImageCopyFlagsEXT = 0.VkHostImageCopyFlagsEXT, srcImage: VkImage, srcImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageToMemoryCopyEXT): VkCopyImageToMemoryInfoEXT = +proc newVkCopyImageToMemoryInfoEXT*(sType: VkStructureType = VkStructureType.CopyImageToMemoryInfoEXT, pNext: pointer = nil, flags: VkHostImageCopyFlagsEXT = 0.VkHostImageCopyFlagsEXT, srcImage: VkImage, srcImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageToMemoryCopyEXT): VkCopyImageToMemoryInfoEXT = result = VkCopyImageToMemoryInfoEXT( sType: sType, pNext: pNext, @@ -17289,7 +18538,7 @@ proc newVkCopyImageToMemoryInfoEXT*(sType: VkStructureType, pNext: pointer = nil pRegions: pRegions, ) -proc newVkCopyImageToImageInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkHostImageCopyFlagsEXT = 0.VkHostImageCopyFlagsEXT, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageCopy2): VkCopyImageToImageInfoEXT = +proc newVkCopyImageToImageInfoEXT*(sType: VkStructureType = VkStructureType.CopyImageToImageInfoEXT, pNext: pointer = nil, flags: VkHostImageCopyFlagsEXT = 0.VkHostImageCopyFlagsEXT, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageCopy2): VkCopyImageToImageInfoEXT = result = VkCopyImageToImageInfoEXT( sType: sType, pNext: pNext, @@ -17302,7 +18551,7 @@ proc newVkCopyImageToImageInfoEXT*(sType: VkStructureType, pNext: pointer = nil, pRegions: pRegions, ) -proc newVkHostImageLayoutTransitionInfoEXT*(sType: VkStructureType, pNext: pointer = nil, image: VkImage, oldLayout: VkImageLayout, newLayout: VkImageLayout, subresourceRange: VkImageSubresourceRange): VkHostImageLayoutTransitionInfoEXT = +proc newVkHostImageLayoutTransitionInfoEXT*(sType: VkStructureType = VkStructureType.HostImageLayoutTransitionInfoEXT, pNext: pointer = nil, image: VkImage, oldLayout: VkImageLayout, newLayout: VkImageLayout, subresourceRange: VkImageSubresourceRange): VkHostImageLayoutTransitionInfoEXT = result = VkHostImageLayoutTransitionInfoEXT( sType: sType, pNext: pNext, @@ -17312,14 +18561,14 @@ proc newVkHostImageLayoutTransitionInfoEXT*(sType: VkStructureType, pNext: point subresourceRange: subresourceRange, ) -proc newVkSubresourceHostMemcpySizeEXT*(sType: VkStructureType, pNext: pointer = nil, size: VkDeviceSize): VkSubresourceHostMemcpySizeEXT = +proc newVkSubresourceHostMemcpySizeEXT*(sType: VkStructureType = VkStructureType.SubresourceHostMemcpySizeEXT, pNext: pointer = nil, size: VkDeviceSize): VkSubresourceHostMemcpySizeEXT = result = VkSubresourceHostMemcpySizeEXT( sType: sType, pNext: pNext, size: size, ) -proc newVkHostImageCopyDevicePerformanceQueryEXT*(sType: VkStructureType, pNext: pointer = nil, optimalDeviceAccess: VkBool32, identicalMemoryLayout: VkBool32): VkHostImageCopyDevicePerformanceQueryEXT = +proc newVkHostImageCopyDevicePerformanceQueryEXT*(sType: VkStructureType = VkStructureType.HostImageCopyDevicePerformanceQueryEXT, pNext: pointer = nil, optimalDeviceAccess: VkBool32, identicalMemoryLayout: VkBool32): VkHostImageCopyDevicePerformanceQueryEXT = result = VkHostImageCopyDevicePerformanceQueryEXT( sType: sType, pNext: pNext, @@ -17430,7 +18679,7 @@ proc newVkPhysicalDeviceVulkanSC10Features*(sType: VkStructureType, pNext: point shaderAtomicInstructions: shaderAtomicInstructions, ) -proc newVkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, primitivesGeneratedQuery: VkBool32, primitivesGeneratedQueryWithRasterizerDiscard: VkBool32, primitivesGeneratedQueryWithNonZeroStreams: VkBool32): VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT = +proc newVkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT, pNext: pointer = nil, primitivesGeneratedQuery: VkBool32, primitivesGeneratedQueryWithRasterizerDiscard: VkBool32, primitivesGeneratedQueryWithNonZeroStreams: VkBool32): VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT = result = VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT( sType: sType, pNext: pNext, @@ -17439,28 +18688,28 @@ proc newVkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT*(sType: VkStructureT primitivesGeneratedQueryWithNonZeroStreams: primitivesGeneratedQueryWithNonZeroStreams, ) -proc newVkPhysicalDeviceLegacyDitheringFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, legacyDithering: VkBool32): VkPhysicalDeviceLegacyDitheringFeaturesEXT = +proc newVkPhysicalDeviceLegacyDitheringFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceLegacyDitheringFeaturesEXT, pNext: pointer = nil, legacyDithering: VkBool32): VkPhysicalDeviceLegacyDitheringFeaturesEXT = result = VkPhysicalDeviceLegacyDitheringFeaturesEXT( sType: sType, pNext: pNext, legacyDithering: legacyDithering, ) -proc newVkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, multisampledRenderToSingleSampled: VkBool32): VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT = +proc newVkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT, pNext: pointer = nil, multisampledRenderToSingleSampled: VkBool32): VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT = result = VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT( sType: sType, pNext: pNext, multisampledRenderToSingleSampled: multisampledRenderToSingleSampled, ) -proc newVkSubpassResolvePerformanceQueryEXT*(sType: VkStructureType, pNext: pointer = nil, optimal: VkBool32): VkSubpassResolvePerformanceQueryEXT = +proc newVkSubpassResolvePerformanceQueryEXT*(sType: VkStructureType = VkStructureType.SubpassResolvePerformanceQueryEXT, pNext: pointer = nil, optimal: VkBool32): VkSubpassResolvePerformanceQueryEXT = result = VkSubpassResolvePerformanceQueryEXT( sType: sType, pNext: pNext, optimal: optimal, ) -proc newVkMultisampledRenderToSingleSampledInfoEXT*(sType: VkStructureType, pNext: pointer = nil, multisampledRenderToSingleSampledEnable: VkBool32, rasterizationSamples: VkSampleCountFlagBits): VkMultisampledRenderToSingleSampledInfoEXT = +proc newVkMultisampledRenderToSingleSampledInfoEXT*(sType: VkStructureType = VkStructureType.MultisampledRenderToSingleSampledInfoEXT, pNext: pointer = nil, multisampledRenderToSingleSampledEnable: VkBool32, rasterizationSamples: VkSampleCountFlagBits): VkMultisampledRenderToSingleSampledInfoEXT = result = VkMultisampledRenderToSingleSampledInfoEXT( sType: sType, pNext: pNext, @@ -17468,28 +18717,28 @@ proc newVkMultisampledRenderToSingleSampledInfoEXT*(sType: VkStructureType, pNex rasterizationSamples: rasterizationSamples, ) -proc newVkPhysicalDevicePipelineProtectedAccessFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, pipelineProtectedAccess: VkBool32): VkPhysicalDevicePipelineProtectedAccessFeaturesEXT = +proc newVkPhysicalDevicePipelineProtectedAccessFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDevicePipelineProtectedAccessFeaturesEXT, pNext: pointer = nil, pipelineProtectedAccess: VkBool32): VkPhysicalDevicePipelineProtectedAccessFeaturesEXT = result = VkPhysicalDevicePipelineProtectedAccessFeaturesEXT( sType: sType, pNext: pNext, pipelineProtectedAccess: pipelineProtectedAccess, ) -proc newVkQueueFamilyVideoPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, videoCodecOperations: VkVideoCodecOperationFlagsKHR): VkQueueFamilyVideoPropertiesKHR = +proc newVkQueueFamilyVideoPropertiesKHR*(sType: VkStructureType = VkStructureType.QueueFamilyVideoPropertiesKHR, pNext: pointer = nil, videoCodecOperations: VkVideoCodecOperationFlagsKHR): VkQueueFamilyVideoPropertiesKHR = result = VkQueueFamilyVideoPropertiesKHR( sType: sType, pNext: pNext, videoCodecOperations: videoCodecOperations, ) -proc newVkQueueFamilyQueryResultStatusPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, queryResultStatusSupport: VkBool32): VkQueueFamilyQueryResultStatusPropertiesKHR = +proc newVkQueueFamilyQueryResultStatusPropertiesKHR*(sType: VkStructureType = VkStructureType.QueueFamilyQueryResultStatusPropertiesKHR, pNext: pointer = nil, queryResultStatusSupport: VkBool32): VkQueueFamilyQueryResultStatusPropertiesKHR = result = VkQueueFamilyQueryResultStatusPropertiesKHR( sType: sType, pNext: pNext, queryResultStatusSupport: queryResultStatusSupport, ) -proc newVkVideoProfileListInfoKHR*(sType: VkStructureType, pNext: pointer = nil, profileCount: uint32, pProfiles: ptr VkVideoProfileInfoKHR): VkVideoProfileListInfoKHR = +proc newVkVideoProfileListInfoKHR*(sType: VkStructureType = VkStructureType.VideoProfileListInfoKHR, pNext: pointer = nil, profileCount: uint32, pProfiles: ptr VkVideoProfileInfoKHR): VkVideoProfileListInfoKHR = result = VkVideoProfileListInfoKHR( sType: sType, pNext: pNext, @@ -17497,14 +18746,14 @@ proc newVkVideoProfileListInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pProfiles: pProfiles, ) -proc newVkPhysicalDeviceVideoFormatInfoKHR*(sType: VkStructureType, pNext: pointer = nil, imageUsage: VkImageUsageFlags): VkPhysicalDeviceVideoFormatInfoKHR = +proc newVkPhysicalDeviceVideoFormatInfoKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceVideoFormatInfoKHR, pNext: pointer = nil, imageUsage: VkImageUsageFlags): VkPhysicalDeviceVideoFormatInfoKHR = result = VkPhysicalDeviceVideoFormatInfoKHR( sType: sType, pNext: pNext, imageUsage: imageUsage, ) -proc newVkVideoFormatPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat, componentMapping: VkComponentMapping, imageCreateFlags: VkImageCreateFlags, imageType: VkImageType, imageTiling: VkImageTiling, imageUsageFlags: VkImageUsageFlags): VkVideoFormatPropertiesKHR = +proc newVkVideoFormatPropertiesKHR*(sType: VkStructureType = VkStructureType.VideoFormatPropertiesKHR, pNext: pointer = nil, format: VkFormat, componentMapping: VkComponentMapping, imageCreateFlags: VkImageCreateFlags, imageType: VkImageType, imageTiling: VkImageTiling, imageUsageFlags: VkImageUsageFlags): VkVideoFormatPropertiesKHR = result = VkVideoFormatPropertiesKHR( sType: sType, pNext: pNext, @@ -17516,7 +18765,7 @@ proc newVkVideoFormatPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil imageUsageFlags: imageUsageFlags, ) -proc newVkVideoProfileInfoKHR*(sType: VkStructureType, pNext: pointer = nil, videoCodecOperation: VkVideoCodecOperationFlagBitsKHR, chromaSubsampling: VkVideoChromaSubsamplingFlagsKHR, lumaBitDepth: VkVideoComponentBitDepthFlagsKHR, chromaBitDepth: VkVideoComponentBitDepthFlagsKHR): VkVideoProfileInfoKHR = +proc newVkVideoProfileInfoKHR*(sType: VkStructureType = VkStructureType.VideoProfileInfoKHR, pNext: pointer = nil, videoCodecOperation: VkVideoCodecOperationFlagBitsKHR, chromaSubsampling: VkVideoChromaSubsamplingFlagsKHR, lumaBitDepth: VkVideoComponentBitDepthFlagsKHR, chromaBitDepth: VkVideoComponentBitDepthFlagsKHR): VkVideoProfileInfoKHR = result = VkVideoProfileInfoKHR( sType: sType, pNext: pNext, @@ -17526,7 +18775,7 @@ proc newVkVideoProfileInfoKHR*(sType: VkStructureType, pNext: pointer = nil, vid chromaBitDepth: chromaBitDepth, ) -proc newVkVideoCapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoCapabilityFlagsKHR = 0.VkVideoCapabilityFlagsKHR, minBitstreamBufferOffsetAlignment: VkDeviceSize, minBitstreamBufferSizeAlignment: VkDeviceSize, pictureAccessGranularity: VkExtent2D, minCodedExtent: VkExtent2D, maxCodedExtent: VkExtent2D, maxDpbSlots: uint32, maxActiveReferencePictures: uint32, stdHeaderVersion: VkExtensionProperties): VkVideoCapabilitiesKHR = +proc newVkVideoCapabilitiesKHR*(sType: VkStructureType = VkStructureType.VideoCapabilitiesKHR, pNext: pointer = nil, flags: VkVideoCapabilityFlagsKHR = 0.VkVideoCapabilityFlagsKHR, minBitstreamBufferOffsetAlignment: VkDeviceSize, minBitstreamBufferSizeAlignment: VkDeviceSize, pictureAccessGranularity: VkExtent2D, minCodedExtent: VkExtent2D, maxCodedExtent: VkExtent2D, maxDpbSlots: uint32, maxActiveReferencePictures: uint32, stdHeaderVersion: VkExtensionProperties): VkVideoCapabilitiesKHR = result = VkVideoCapabilitiesKHR( sType: sType, pNext: pNext, @@ -17541,7 +18790,7 @@ proc newVkVideoCapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, fl stdHeaderVersion: stdHeaderVersion, ) -proc newVkVideoSessionMemoryRequirementsKHR*(sType: VkStructureType, pNext: pointer = nil, memoryBindIndex: uint32, memoryRequirements: VkMemoryRequirements): VkVideoSessionMemoryRequirementsKHR = +proc newVkVideoSessionMemoryRequirementsKHR*(sType: VkStructureType = VkStructureType.VideoSessionMemoryRequirementsKHR, pNext: pointer = nil, memoryBindIndex: uint32, memoryRequirements: VkMemoryRequirements): VkVideoSessionMemoryRequirementsKHR = result = VkVideoSessionMemoryRequirementsKHR( sType: sType, pNext: pNext, @@ -17549,7 +18798,7 @@ proc newVkVideoSessionMemoryRequirementsKHR*(sType: VkStructureType, pNext: poin memoryRequirements: memoryRequirements, ) -proc newVkBindVideoSessionMemoryInfoKHR*(sType: VkStructureType, pNext: pointer = nil, memoryBindIndex: uint32, memory: VkDeviceMemory, memoryOffset: VkDeviceSize, memorySize: VkDeviceSize): VkBindVideoSessionMemoryInfoKHR = +proc newVkBindVideoSessionMemoryInfoKHR*(sType: VkStructureType = VkStructureType.BindVideoSessionMemoryInfoKHR, pNext: pointer = nil, memoryBindIndex: uint32, memory: VkDeviceMemory, memoryOffset: VkDeviceSize, memorySize: VkDeviceSize): VkBindVideoSessionMemoryInfoKHR = result = VkBindVideoSessionMemoryInfoKHR( sType: sType, pNext: pNext, @@ -17559,7 +18808,7 @@ proc newVkBindVideoSessionMemoryInfoKHR*(sType: VkStructureType, pNext: pointer memorySize: memorySize, ) -proc newVkVideoPictureResourceInfoKHR*(sType: VkStructureType, pNext: pointer = nil, codedOffset: VkOffset2D, codedExtent: VkExtent2D, baseArrayLayer: uint32, imageViewBinding: VkImageView): VkVideoPictureResourceInfoKHR = +proc newVkVideoPictureResourceInfoKHR*(sType: VkStructureType = VkStructureType.VideoPictureResourceInfoKHR, pNext: pointer = nil, codedOffset: VkOffset2D, codedExtent: VkExtent2D, baseArrayLayer: uint32, imageViewBinding: VkImageView): VkVideoPictureResourceInfoKHR = result = VkVideoPictureResourceInfoKHR( sType: sType, pNext: pNext, @@ -17569,7 +18818,7 @@ proc newVkVideoPictureResourceInfoKHR*(sType: VkStructureType, pNext: pointer = imageViewBinding: imageViewBinding, ) -proc newVkVideoReferenceSlotInfoKHR*(sType: VkStructureType, pNext: pointer = nil, slotIndex: int32, pPictureResource: ptr VkVideoPictureResourceInfoKHR): VkVideoReferenceSlotInfoKHR = +proc newVkVideoReferenceSlotInfoKHR*(sType: VkStructureType = VkStructureType.VideoReferenceSlotInfoKHR, pNext: pointer = nil, slotIndex: int32, pPictureResource: ptr VkVideoPictureResourceInfoKHR): VkVideoReferenceSlotInfoKHR = result = VkVideoReferenceSlotInfoKHR( sType: sType, pNext: pNext, @@ -17577,21 +18826,21 @@ proc newVkVideoReferenceSlotInfoKHR*(sType: VkStructureType, pNext: pointer = ni pPictureResource: pPictureResource, ) -proc newVkVideoDecodeCapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoDecodeCapabilityFlagsKHR = 0.VkVideoDecodeCapabilityFlagsKHR): VkVideoDecodeCapabilitiesKHR = +proc newVkVideoDecodeCapabilitiesKHR*(sType: VkStructureType = VkStructureType.VideoDecodeCapabilitiesKHR, pNext: pointer = nil, flags: VkVideoDecodeCapabilityFlagsKHR = 0.VkVideoDecodeCapabilityFlagsKHR): VkVideoDecodeCapabilitiesKHR = result = VkVideoDecodeCapabilitiesKHR( sType: sType, pNext: pNext, flags: flags, ) -proc newVkVideoDecodeUsageInfoKHR*(sType: VkStructureType, pNext: pointer = nil, videoUsageHints: VkVideoDecodeUsageFlagsKHR): VkVideoDecodeUsageInfoKHR = +proc newVkVideoDecodeUsageInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeUsageInfoKHR, pNext: pointer = nil, videoUsageHints: VkVideoDecodeUsageFlagsKHR): VkVideoDecodeUsageInfoKHR = result = VkVideoDecodeUsageInfoKHR( sType: sType, pNext: pNext, videoUsageHints: videoUsageHints, ) -proc newVkVideoDecodeInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoDecodeFlagsKHR = 0.VkVideoDecodeFlagsKHR, srcBuffer: VkBuffer, srcBufferOffset: VkDeviceSize, srcBufferRange: VkDeviceSize, dstPictureResource: VkVideoPictureResourceInfoKHR, pSetupReferenceSlot: ptr VkVideoReferenceSlotInfoKHR, referenceSlotCount: uint32, pReferenceSlots: ptr VkVideoReferenceSlotInfoKHR): VkVideoDecodeInfoKHR = +proc newVkVideoDecodeInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeInfoKHR, pNext: pointer = nil, flags: VkVideoDecodeFlagsKHR = 0.VkVideoDecodeFlagsKHR, srcBuffer: VkBuffer, srcBufferOffset: VkDeviceSize, srcBufferRange: VkDeviceSize, dstPictureResource: VkVideoPictureResourceInfoKHR, pSetupReferenceSlot: ptr VkVideoReferenceSlotInfoKHR, referenceSlotCount: uint32, pReferenceSlots: ptr VkVideoReferenceSlotInfoKHR): VkVideoDecodeInfoKHR = result = VkVideoDecodeInfoKHR( sType: sType, pNext: pNext, @@ -17605,14 +18854,14 @@ proc newVkVideoDecodeInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flag pReferenceSlots: pReferenceSlots, ) -proc newVkPhysicalDeviceVideoMaintenance1FeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, videoMaintenance1: VkBool32): VkPhysicalDeviceVideoMaintenance1FeaturesKHR = +proc newVkPhysicalDeviceVideoMaintenance1FeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceVideoMaintenance1FeaturesKHR, pNext: pointer = nil, videoMaintenance1: VkBool32): VkPhysicalDeviceVideoMaintenance1FeaturesKHR = result = VkPhysicalDeviceVideoMaintenance1FeaturesKHR( sType: sType, pNext: pNext, videoMaintenance1: videoMaintenance1, ) -proc newVkVideoInlineQueryInfoKHR*(sType: VkStructureType, pNext: pointer = nil, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32): VkVideoInlineQueryInfoKHR = +proc newVkVideoInlineQueryInfoKHR*(sType: VkStructureType = VkStructureType.VideoInlineQueryInfoKHR, pNext: pointer = nil, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32): VkVideoInlineQueryInfoKHR = result = VkVideoInlineQueryInfoKHR( sType: sType, pNext: pNext, @@ -17621,7 +18870,7 @@ proc newVkVideoInlineQueryInfoKHR*(sType: VkStructureType, pNext: pointer = nil, queryCount: queryCount, ) -proc newVkVideoDecodeH264ProfileInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdProfileIdc: StdVideoH264ProfileIdc, pictureLayout: VkVideoDecodeH264PictureLayoutFlagBitsKHR): VkVideoDecodeH264ProfileInfoKHR = +proc newVkVideoDecodeH264ProfileInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeH264ProfileInfoKHR, pNext: pointer = nil, stdProfileIdc: StdVideoH264ProfileIdc, pictureLayout: VkVideoDecodeH264PictureLayoutFlagBitsKHR): VkVideoDecodeH264ProfileInfoKHR = result = VkVideoDecodeH264ProfileInfoKHR( sType: sType, pNext: pNext, @@ -17629,7 +18878,7 @@ proc newVkVideoDecodeH264ProfileInfoKHR*(sType: VkStructureType, pNext: pointer pictureLayout: pictureLayout, ) -proc newVkVideoDecodeH264CapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, maxLevelIdc: StdVideoH264LevelIdc, fieldOffsetGranularity: VkOffset2D): VkVideoDecodeH264CapabilitiesKHR = +proc newVkVideoDecodeH264CapabilitiesKHR*(sType: VkStructureType = VkStructureType.VideoDecodeH264CapabilitiesKHR, pNext: pointer = nil, maxLevelIdc: StdVideoH264LevelIdc, fieldOffsetGranularity: VkOffset2D): VkVideoDecodeH264CapabilitiesKHR = result = VkVideoDecodeH264CapabilitiesKHR( sType: sType, pNext: pNext, @@ -17637,7 +18886,7 @@ proc newVkVideoDecodeH264CapabilitiesKHR*(sType: VkStructureType, pNext: pointer fieldOffsetGranularity: fieldOffsetGranularity, ) -proc newVkVideoDecodeH264SessionParametersAddInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdSPSCount: uint32, pStdSPSs: ptr StdVideoH264SequenceParameterSet, stdPPSCount: uint32, pStdPPSs: ptr StdVideoH264PictureParameterSet): VkVideoDecodeH264SessionParametersAddInfoKHR = +proc newVkVideoDecodeH264SessionParametersAddInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeH264SessionParametersAddInfoKHR, pNext: pointer = nil, stdSPSCount: uint32, pStdSPSs: ptr StdVideoH264SequenceParameterSet, stdPPSCount: uint32, pStdPPSs: ptr StdVideoH264PictureParameterSet): VkVideoDecodeH264SessionParametersAddInfoKHR = result = VkVideoDecodeH264SessionParametersAddInfoKHR( sType: sType, pNext: pNext, @@ -17647,7 +18896,7 @@ proc newVkVideoDecodeH264SessionParametersAddInfoKHR*(sType: VkStructureType, pN pStdPPSs: pStdPPSs, ) -proc newVkVideoDecodeH264SessionParametersCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, maxStdSPSCount: uint32, maxStdPPSCount: uint32, pParametersAddInfo: ptr VkVideoDecodeH264SessionParametersAddInfoKHR): VkVideoDecodeH264SessionParametersCreateInfoKHR = +proc newVkVideoDecodeH264SessionParametersCreateInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeH264SessionParametersCreateInfoKHR, pNext: pointer = nil, maxStdSPSCount: uint32, maxStdPPSCount: uint32, pParametersAddInfo: ptr VkVideoDecodeH264SessionParametersAddInfoKHR): VkVideoDecodeH264SessionParametersCreateInfoKHR = result = VkVideoDecodeH264SessionParametersCreateInfoKHR( sType: sType, pNext: pNext, @@ -17656,7 +18905,7 @@ proc newVkVideoDecodeH264SessionParametersCreateInfoKHR*(sType: VkStructureType, pParametersAddInfo: pParametersAddInfo, ) -proc newVkVideoDecodeH264PictureInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdPictureInfo: ptr StdVideoDecodeH264PictureInfo, sliceCount: uint32, pSliceOffsets: ptr uint32): VkVideoDecodeH264PictureInfoKHR = +proc newVkVideoDecodeH264PictureInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeH264PictureInfoKHR, pNext: pointer = nil, pStdPictureInfo: ptr StdVideoDecodeH264PictureInfo, sliceCount: uint32, pSliceOffsets: ptr uint32): VkVideoDecodeH264PictureInfoKHR = result = VkVideoDecodeH264PictureInfoKHR( sType: sType, pNext: pNext, @@ -17665,28 +18914,28 @@ proc newVkVideoDecodeH264PictureInfoKHR*(sType: VkStructureType, pNext: pointer pSliceOffsets: pSliceOffsets, ) -proc newVkVideoDecodeH264DpbSlotInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoDecodeH264ReferenceInfo): VkVideoDecodeH264DpbSlotInfoKHR = +proc newVkVideoDecodeH264DpbSlotInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeH264DpbSlotInfoKHR, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoDecodeH264ReferenceInfo): VkVideoDecodeH264DpbSlotInfoKHR = result = VkVideoDecodeH264DpbSlotInfoKHR( sType: sType, pNext: pNext, pStdReferenceInfo: pStdReferenceInfo, ) -proc newVkVideoDecodeH265ProfileInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdProfileIdc: StdVideoH265ProfileIdc): VkVideoDecodeH265ProfileInfoKHR = +proc newVkVideoDecodeH265ProfileInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeH265ProfileInfoKHR, pNext: pointer = nil, stdProfileIdc: StdVideoH265ProfileIdc): VkVideoDecodeH265ProfileInfoKHR = result = VkVideoDecodeH265ProfileInfoKHR( sType: sType, pNext: pNext, stdProfileIdc: stdProfileIdc, ) -proc newVkVideoDecodeH265CapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, maxLevelIdc: StdVideoH265LevelIdc): VkVideoDecodeH265CapabilitiesKHR = +proc newVkVideoDecodeH265CapabilitiesKHR*(sType: VkStructureType = VkStructureType.VideoDecodeH265CapabilitiesKHR, pNext: pointer = nil, maxLevelIdc: StdVideoH265LevelIdc): VkVideoDecodeH265CapabilitiesKHR = result = VkVideoDecodeH265CapabilitiesKHR( sType: sType, pNext: pNext, maxLevelIdc: maxLevelIdc, ) -proc newVkVideoDecodeH265SessionParametersAddInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdVPSCount: uint32, pStdVPSs: ptr StdVideoH265VideoParameterSet, stdSPSCount: uint32, pStdSPSs: ptr StdVideoH265SequenceParameterSet, stdPPSCount: uint32, pStdPPSs: ptr StdVideoH265PictureParameterSet): VkVideoDecodeH265SessionParametersAddInfoKHR = +proc newVkVideoDecodeH265SessionParametersAddInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeH265SessionParametersAddInfoKHR, pNext: pointer = nil, stdVPSCount: uint32, pStdVPSs: ptr StdVideoH265VideoParameterSet, stdSPSCount: uint32, pStdSPSs: ptr StdVideoH265SequenceParameterSet, stdPPSCount: uint32, pStdPPSs: ptr StdVideoH265PictureParameterSet): VkVideoDecodeH265SessionParametersAddInfoKHR = result = VkVideoDecodeH265SessionParametersAddInfoKHR( sType: sType, pNext: pNext, @@ -17698,7 +18947,7 @@ proc newVkVideoDecodeH265SessionParametersAddInfoKHR*(sType: VkStructureType, pN pStdPPSs: pStdPPSs, ) -proc newVkVideoDecodeH265SessionParametersCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, maxStdVPSCount: uint32, maxStdSPSCount: uint32, maxStdPPSCount: uint32, pParametersAddInfo: ptr VkVideoDecodeH265SessionParametersAddInfoKHR): VkVideoDecodeH265SessionParametersCreateInfoKHR = +proc newVkVideoDecodeH265SessionParametersCreateInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeH265SessionParametersCreateInfoKHR, pNext: pointer = nil, maxStdVPSCount: uint32, maxStdSPSCount: uint32, maxStdPPSCount: uint32, pParametersAddInfo: ptr VkVideoDecodeH265SessionParametersAddInfoKHR): VkVideoDecodeH265SessionParametersCreateInfoKHR = result = VkVideoDecodeH265SessionParametersCreateInfoKHR( sType: sType, pNext: pNext, @@ -17708,7 +18957,7 @@ proc newVkVideoDecodeH265SessionParametersCreateInfoKHR*(sType: VkStructureType, pParametersAddInfo: pParametersAddInfo, ) -proc newVkVideoDecodeH265PictureInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdPictureInfo: ptr StdVideoDecodeH265PictureInfo, sliceSegmentCount: uint32, pSliceSegmentOffsets: ptr uint32): VkVideoDecodeH265PictureInfoKHR = +proc newVkVideoDecodeH265PictureInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeH265PictureInfoKHR, pNext: pointer = nil, pStdPictureInfo: ptr StdVideoDecodeH265PictureInfo, sliceSegmentCount: uint32, pSliceSegmentOffsets: ptr uint32): VkVideoDecodeH265PictureInfoKHR = result = VkVideoDecodeH265PictureInfoKHR( sType: sType, pNext: pNext, @@ -17717,14 +18966,14 @@ proc newVkVideoDecodeH265PictureInfoKHR*(sType: VkStructureType, pNext: pointer pSliceSegmentOffsets: pSliceSegmentOffsets, ) -proc newVkVideoDecodeH265DpbSlotInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoDecodeH265ReferenceInfo): VkVideoDecodeH265DpbSlotInfoKHR = +proc newVkVideoDecodeH265DpbSlotInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeH265DpbSlotInfoKHR, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoDecodeH265ReferenceInfo): VkVideoDecodeH265DpbSlotInfoKHR = result = VkVideoDecodeH265DpbSlotInfoKHR( sType: sType, pNext: pNext, pStdReferenceInfo: pStdReferenceInfo, ) -proc newVkVideoDecodeAV1ProfileInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdProfile: StdVideoAV1Profile, filmGrainSupport: VkBool32): VkVideoDecodeAV1ProfileInfoKHR = +proc newVkVideoDecodeAV1ProfileInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeAV1ProfileInfoKHR, pNext: pointer = nil, stdProfile: StdVideoAV1Profile, filmGrainSupport: VkBool32): VkVideoDecodeAV1ProfileInfoKHR = result = VkVideoDecodeAV1ProfileInfoKHR( sType: sType, pNext: pNext, @@ -17732,21 +18981,21 @@ proc newVkVideoDecodeAV1ProfileInfoKHR*(sType: VkStructureType, pNext: pointer = filmGrainSupport: filmGrainSupport, ) -proc newVkVideoDecodeAV1CapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, maxLevel: StdVideoAV1Level): VkVideoDecodeAV1CapabilitiesKHR = +proc newVkVideoDecodeAV1CapabilitiesKHR*(sType: VkStructureType = VkStructureType.VideoDecodeAV1CapabilitiesKHR, pNext: pointer = nil, maxLevel: StdVideoAV1Level): VkVideoDecodeAV1CapabilitiesKHR = result = VkVideoDecodeAV1CapabilitiesKHR( sType: sType, pNext: pNext, maxLevel: maxLevel, ) -proc newVkVideoDecodeAV1SessionParametersCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdSequenceHeader: ptr StdVideoAV1SequenceHeader): VkVideoDecodeAV1SessionParametersCreateInfoKHR = +proc newVkVideoDecodeAV1SessionParametersCreateInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeAV1SessionParametersCreateInfoKHR, pNext: pointer = nil, pStdSequenceHeader: ptr StdVideoAV1SequenceHeader): VkVideoDecodeAV1SessionParametersCreateInfoKHR = result = VkVideoDecodeAV1SessionParametersCreateInfoKHR( sType: sType, pNext: pNext, pStdSequenceHeader: pStdSequenceHeader, ) -proc newVkVideoDecodeAV1PictureInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdPictureInfo: ptr StdVideoDecodeAV1PictureInfo, referenceNameSlotIndices: array[VK_MAX_VIDEO_AV1_REFERENCES_PER_FRAME_KHR, int32], frameHeaderOffset: uint32, tileCount: uint32, pTileOffsets: ptr uint32, pTileSizes: ptr uint32): VkVideoDecodeAV1PictureInfoKHR = +proc newVkVideoDecodeAV1PictureInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeAV1PictureInfoKHR, pNext: pointer = nil, pStdPictureInfo: ptr StdVideoDecodeAV1PictureInfo, referenceNameSlotIndices: array[VK_MAX_VIDEO_AV1_REFERENCES_PER_FRAME_KHR, int32], frameHeaderOffset: uint32, tileCount: uint32, pTileOffsets: ptr uint32, pTileSizes: ptr uint32): VkVideoDecodeAV1PictureInfoKHR = result = VkVideoDecodeAV1PictureInfoKHR( sType: sType, pNext: pNext, @@ -17758,14 +19007,14 @@ proc newVkVideoDecodeAV1PictureInfoKHR*(sType: VkStructureType, pNext: pointer = pTileSizes: pTileSizes, ) -proc newVkVideoDecodeAV1DpbSlotInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoDecodeAV1ReferenceInfo): VkVideoDecodeAV1DpbSlotInfoKHR = +proc newVkVideoDecodeAV1DpbSlotInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeAV1DpbSlotInfoKHR, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoDecodeAV1ReferenceInfo): VkVideoDecodeAV1DpbSlotInfoKHR = result = VkVideoDecodeAV1DpbSlotInfoKHR( sType: sType, pNext: pNext, pStdReferenceInfo: pStdReferenceInfo, ) -proc newVkVideoSessionCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, queueFamilyIndex: uint32, flags: VkVideoSessionCreateFlagsKHR = 0.VkVideoSessionCreateFlagsKHR, pVideoProfile: ptr VkVideoProfileInfoKHR, pictureFormat: VkFormat, maxCodedExtent: VkExtent2D, referencePictureFormat: VkFormat, maxDpbSlots: uint32, maxActiveReferencePictures: uint32, pStdHeaderVersion: ptr VkExtensionProperties): VkVideoSessionCreateInfoKHR = +proc newVkVideoSessionCreateInfoKHR*(sType: VkStructureType = VkStructureType.VideoSessionCreateInfoKHR, pNext: pointer = nil, queueFamilyIndex: uint32, flags: VkVideoSessionCreateFlagsKHR = 0.VkVideoSessionCreateFlagsKHR, pVideoProfile: ptr VkVideoProfileInfoKHR, pictureFormat: VkFormat, maxCodedExtent: VkExtent2D, referencePictureFormat: VkFormat, maxDpbSlots: uint32, maxActiveReferencePictures: uint32, pStdHeaderVersion: ptr VkExtensionProperties): VkVideoSessionCreateInfoKHR = result = VkVideoSessionCreateInfoKHR( sType: sType, pNext: pNext, @@ -17780,7 +19029,7 @@ proc newVkVideoSessionCreateInfoKHR*(sType: VkStructureType, pNext: pointer = ni pStdHeaderVersion: pStdHeaderVersion, ) -proc newVkVideoSessionParametersCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoSessionParametersCreateFlagsKHR = 0.VkVideoSessionParametersCreateFlagsKHR, videoSessionParametersTemplate: VkVideoSessionParametersKHR, videoSession: VkVideoSessionKHR): VkVideoSessionParametersCreateInfoKHR = +proc newVkVideoSessionParametersCreateInfoKHR*(sType: VkStructureType = VkStructureType.VideoSessionParametersCreateInfoKHR, pNext: pointer = nil, flags: VkVideoSessionParametersCreateFlagsKHR = 0.VkVideoSessionParametersCreateFlagsKHR, videoSessionParametersTemplate: VkVideoSessionParametersKHR, videoSession: VkVideoSessionKHR): VkVideoSessionParametersCreateInfoKHR = result = VkVideoSessionParametersCreateInfoKHR( sType: sType, pNext: pNext, @@ -17789,28 +19038,28 @@ proc newVkVideoSessionParametersCreateInfoKHR*(sType: VkStructureType, pNext: po videoSession: videoSession, ) -proc newVkVideoSessionParametersUpdateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, updateSequenceCount: uint32): VkVideoSessionParametersUpdateInfoKHR = +proc newVkVideoSessionParametersUpdateInfoKHR*(sType: VkStructureType = VkStructureType.VideoSessionParametersUpdateInfoKHR, pNext: pointer = nil, updateSequenceCount: uint32): VkVideoSessionParametersUpdateInfoKHR = result = VkVideoSessionParametersUpdateInfoKHR( sType: sType, pNext: pNext, updateSequenceCount: updateSequenceCount, ) -proc newVkVideoEncodeSessionParametersGetInfoKHR*(sType: VkStructureType, pNext: pointer = nil, videoSessionParameters: VkVideoSessionParametersKHR): VkVideoEncodeSessionParametersGetInfoKHR = +proc newVkVideoEncodeSessionParametersGetInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeSessionParametersGetInfoKHR, pNext: pointer = nil, videoSessionParameters: VkVideoSessionParametersKHR): VkVideoEncodeSessionParametersGetInfoKHR = result = VkVideoEncodeSessionParametersGetInfoKHR( sType: sType, pNext: pNext, videoSessionParameters: videoSessionParameters, ) -proc newVkVideoEncodeSessionParametersFeedbackInfoKHR*(sType: VkStructureType, pNext: pointer = nil, hasOverrides: VkBool32): VkVideoEncodeSessionParametersFeedbackInfoKHR = +proc newVkVideoEncodeSessionParametersFeedbackInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeSessionParametersFeedbackInfoKHR, pNext: pointer = nil, hasOverrides: VkBool32): VkVideoEncodeSessionParametersFeedbackInfoKHR = result = VkVideoEncodeSessionParametersFeedbackInfoKHR( sType: sType, pNext: pNext, hasOverrides: hasOverrides, ) -proc newVkVideoBeginCodingInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoBeginCodingFlagsKHR = 0.VkVideoBeginCodingFlagsKHR, videoSession: VkVideoSessionKHR, videoSessionParameters: VkVideoSessionParametersKHR, referenceSlotCount: uint32, pReferenceSlots: ptr VkVideoReferenceSlotInfoKHR): VkVideoBeginCodingInfoKHR = +proc newVkVideoBeginCodingInfoKHR*(sType: VkStructureType = VkStructureType.VideoBeginCodingInfoKHR, pNext: pointer = nil, flags: VkVideoBeginCodingFlagsKHR = 0.VkVideoBeginCodingFlagsKHR, videoSession: VkVideoSessionKHR, videoSessionParameters: VkVideoSessionParametersKHR, referenceSlotCount: uint32, pReferenceSlots: ptr VkVideoReferenceSlotInfoKHR): VkVideoBeginCodingInfoKHR = result = VkVideoBeginCodingInfoKHR( sType: sType, pNext: pNext, @@ -17821,21 +19070,21 @@ proc newVkVideoBeginCodingInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pReferenceSlots: pReferenceSlots, ) -proc newVkVideoEndCodingInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoEndCodingFlagsKHR = 0.VkVideoEndCodingFlagsKHR): VkVideoEndCodingInfoKHR = +proc newVkVideoEndCodingInfoKHR*(sType: VkStructureType = VkStructureType.VideoEndCodingInfoKHR, pNext: pointer = nil, flags: VkVideoEndCodingFlagsKHR = 0.VkVideoEndCodingFlagsKHR): VkVideoEndCodingInfoKHR = result = VkVideoEndCodingInfoKHR( sType: sType, pNext: pNext, flags: flags, ) -proc newVkVideoCodingControlInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoCodingControlFlagsKHR = 0.VkVideoCodingControlFlagsKHR): VkVideoCodingControlInfoKHR = +proc newVkVideoCodingControlInfoKHR*(sType: VkStructureType = VkStructureType.VideoCodingControlInfoKHR, pNext: pointer = nil, flags: VkVideoCodingControlFlagsKHR = 0.VkVideoCodingControlFlagsKHR): VkVideoCodingControlInfoKHR = result = VkVideoCodingControlInfoKHR( sType: sType, pNext: pNext, flags: flags, ) -proc newVkVideoEncodeUsageInfoKHR*(sType: VkStructureType, pNext: pointer = nil, videoUsageHints: VkVideoEncodeUsageFlagsKHR, videoContentHints: VkVideoEncodeContentFlagsKHR, tuningMode: VkVideoEncodeTuningModeKHR): VkVideoEncodeUsageInfoKHR = +proc newVkVideoEncodeUsageInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeUsageInfoKHR, pNext: pointer = nil, videoUsageHints: VkVideoEncodeUsageFlagsKHR, videoContentHints: VkVideoEncodeContentFlagsKHR, tuningMode: VkVideoEncodeTuningModeKHR): VkVideoEncodeUsageInfoKHR = result = VkVideoEncodeUsageInfoKHR( sType: sType, pNext: pNext, @@ -17844,7 +19093,7 @@ proc newVkVideoEncodeUsageInfoKHR*(sType: VkStructureType, pNext: pointer = nil, tuningMode: tuningMode, ) -proc newVkVideoEncodeInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoEncodeFlagsKHR = 0.VkVideoEncodeFlagsKHR, dstBuffer: VkBuffer, dstBufferOffset: VkDeviceSize, dstBufferRange: VkDeviceSize, srcPictureResource: VkVideoPictureResourceInfoKHR, pSetupReferenceSlot: ptr VkVideoReferenceSlotInfoKHR, referenceSlotCount: uint32, pReferenceSlots: ptr VkVideoReferenceSlotInfoKHR, precedingExternallyEncodedBytes: uint32): VkVideoEncodeInfoKHR = +proc newVkVideoEncodeInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeInfoKHR, pNext: pointer = nil, flags: VkVideoEncodeFlagsKHR = 0.VkVideoEncodeFlagsKHR, dstBuffer: VkBuffer, dstBufferOffset: VkDeviceSize, dstBufferRange: VkDeviceSize, srcPictureResource: VkVideoPictureResourceInfoKHR, pSetupReferenceSlot: ptr VkVideoReferenceSlotInfoKHR, referenceSlotCount: uint32, pReferenceSlots: ptr VkVideoReferenceSlotInfoKHR, precedingExternallyEncodedBytes: uint32): VkVideoEncodeInfoKHR = result = VkVideoEncodeInfoKHR( sType: sType, pNext: pNext, @@ -17859,21 +19108,21 @@ proc newVkVideoEncodeInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flag precedingExternallyEncodedBytes: precedingExternallyEncodedBytes, ) -proc newVkQueryPoolVideoEncodeFeedbackCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, encodeFeedbackFlags: VkVideoEncodeFeedbackFlagsKHR): VkQueryPoolVideoEncodeFeedbackCreateInfoKHR = +proc newVkQueryPoolVideoEncodeFeedbackCreateInfoKHR*(sType: VkStructureType = VkStructureType.QueryPoolVideoEncodeFeedbackCreateInfoKHR, pNext: pointer = nil, encodeFeedbackFlags: VkVideoEncodeFeedbackFlagsKHR): VkQueryPoolVideoEncodeFeedbackCreateInfoKHR = result = VkQueryPoolVideoEncodeFeedbackCreateInfoKHR( sType: sType, pNext: pNext, encodeFeedbackFlags: encodeFeedbackFlags, ) -proc newVkVideoEncodeQualityLevelInfoKHR*(sType: VkStructureType, pNext: pointer = nil, qualityLevel: uint32): VkVideoEncodeQualityLevelInfoKHR = +proc newVkVideoEncodeQualityLevelInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeQualityLevelInfoKHR, pNext: pointer = nil, qualityLevel: uint32): VkVideoEncodeQualityLevelInfoKHR = result = VkVideoEncodeQualityLevelInfoKHR( sType: sType, pNext: pNext, qualityLevel: qualityLevel, ) -proc newVkPhysicalDeviceVideoEncodeQualityLevelInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pVideoProfile: ptr VkVideoProfileInfoKHR, qualityLevel: uint32): VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR = +proc newVkPhysicalDeviceVideoEncodeQualityLevelInfoKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceVideoEncodeQualityLevelInfoKHR, pNext: pointer = nil, pVideoProfile: ptr VkVideoProfileInfoKHR, qualityLevel: uint32): VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR = result = VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR( sType: sType, pNext: pNext, @@ -17881,7 +19130,7 @@ proc newVkPhysicalDeviceVideoEncodeQualityLevelInfoKHR*(sType: VkStructureType, qualityLevel: qualityLevel, ) -proc newVkVideoEncodeQualityLevelPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, preferredRateControlMode: VkVideoEncodeRateControlModeFlagBitsKHR, preferredRateControlLayerCount: uint32): VkVideoEncodeQualityLevelPropertiesKHR = +proc newVkVideoEncodeQualityLevelPropertiesKHR*(sType: VkStructureType = VkStructureType.VideoEncodeQualityLevelPropertiesKHR, pNext: pointer = nil, preferredRateControlMode: VkVideoEncodeRateControlModeFlagBitsKHR, preferredRateControlLayerCount: uint32): VkVideoEncodeQualityLevelPropertiesKHR = result = VkVideoEncodeQualityLevelPropertiesKHR( sType: sType, pNext: pNext, @@ -17889,7 +19138,7 @@ proc newVkVideoEncodeQualityLevelPropertiesKHR*(sType: VkStructureType, pNext: p preferredRateControlLayerCount: preferredRateControlLayerCount, ) -proc newVkVideoEncodeRateControlInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoEncodeRateControlFlagsKHR = 0.VkVideoEncodeRateControlFlagsKHR, rateControlMode: VkVideoEncodeRateControlModeFlagBitsKHR, layerCount: uint32, pLayers: ptr VkVideoEncodeRateControlLayerInfoKHR, virtualBufferSizeInMs: uint32, initialVirtualBufferSizeInMs: uint32): VkVideoEncodeRateControlInfoKHR = +proc newVkVideoEncodeRateControlInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeRateControlInfoKHR, pNext: pointer = nil, flags: VkVideoEncodeRateControlFlagsKHR = 0.VkVideoEncodeRateControlFlagsKHR, rateControlMode: VkVideoEncodeRateControlModeFlagBitsKHR, layerCount: uint32, pLayers: ptr VkVideoEncodeRateControlLayerInfoKHR, virtualBufferSizeInMs: uint32, initialVirtualBufferSizeInMs: uint32): VkVideoEncodeRateControlInfoKHR = result = VkVideoEncodeRateControlInfoKHR( sType: sType, pNext: pNext, @@ -17901,7 +19150,7 @@ proc newVkVideoEncodeRateControlInfoKHR*(sType: VkStructureType, pNext: pointer initialVirtualBufferSizeInMs: initialVirtualBufferSizeInMs, ) -proc newVkVideoEncodeRateControlLayerInfoKHR*(sType: VkStructureType, pNext: pointer = nil, averageBitrate: uint64, maxBitrate: uint64, frameRateNumerator: uint32, frameRateDenominator: uint32): VkVideoEncodeRateControlLayerInfoKHR = +proc newVkVideoEncodeRateControlLayerInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeRateControlLayerInfoKHR, pNext: pointer = nil, averageBitrate: uint64, maxBitrate: uint64, frameRateNumerator: uint32, frameRateDenominator: uint32): VkVideoEncodeRateControlLayerInfoKHR = result = VkVideoEncodeRateControlLayerInfoKHR( sType: sType, pNext: pNext, @@ -17911,7 +19160,7 @@ proc newVkVideoEncodeRateControlLayerInfoKHR*(sType: VkStructureType, pNext: poi frameRateDenominator: frameRateDenominator, ) -proc newVkVideoEncodeCapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoEncodeCapabilityFlagsKHR = 0.VkVideoEncodeCapabilityFlagsKHR, rateControlModes: VkVideoEncodeRateControlModeFlagsKHR, maxRateControlLayers: uint32, maxBitrate: uint64, maxQualityLevels: uint32, encodeInputPictureGranularity: VkExtent2D, supportedEncodeFeedbackFlags: VkVideoEncodeFeedbackFlagsKHR): VkVideoEncodeCapabilitiesKHR = +proc newVkVideoEncodeCapabilitiesKHR*(sType: VkStructureType = VkStructureType.VideoEncodeCapabilitiesKHR, pNext: pointer = nil, flags: VkVideoEncodeCapabilityFlagsKHR = 0.VkVideoEncodeCapabilityFlagsKHR, rateControlModes: VkVideoEncodeRateControlModeFlagsKHR, maxRateControlLayers: uint32, maxBitrate: uint64, maxQualityLevels: uint32, encodeInputPictureGranularity: VkExtent2D, supportedEncodeFeedbackFlags: VkVideoEncodeFeedbackFlagsKHR): VkVideoEncodeCapabilitiesKHR = result = VkVideoEncodeCapabilitiesKHR( sType: sType, pNext: pNext, @@ -17924,7 +19173,7 @@ proc newVkVideoEncodeCapabilitiesKHR*(sType: VkStructureType, pNext: pointer = n supportedEncodeFeedbackFlags: supportedEncodeFeedbackFlags, ) -proc newVkVideoEncodeH264CapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoEncodeH264CapabilityFlagsKHR = 0.VkVideoEncodeH264CapabilityFlagsKHR, maxLevelIdc: StdVideoH264LevelIdc, maxSliceCount: uint32, maxPPictureL0ReferenceCount: uint32, maxBPictureL0ReferenceCount: uint32, maxL1ReferenceCount: uint32, maxTemporalLayerCount: uint32, expectDyadicTemporalLayerPattern: VkBool32, minQp: int32, maxQp: int32, prefersGopRemainingFrames: VkBool32, requiresGopRemainingFrames: VkBool32, stdSyntaxFlags: VkVideoEncodeH264StdFlagsKHR): VkVideoEncodeH264CapabilitiesKHR = +proc newVkVideoEncodeH264CapabilitiesKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH264CapabilitiesKHR, pNext: pointer = nil, flags: VkVideoEncodeH264CapabilityFlagsKHR = 0.VkVideoEncodeH264CapabilityFlagsKHR, maxLevelIdc: StdVideoH264LevelIdc, maxSliceCount: uint32, maxPPictureL0ReferenceCount: uint32, maxBPictureL0ReferenceCount: uint32, maxL1ReferenceCount: uint32, maxTemporalLayerCount: uint32, expectDyadicTemporalLayerPattern: VkBool32, minQp: int32, maxQp: int32, prefersGopRemainingFrames: VkBool32, requiresGopRemainingFrames: VkBool32, stdSyntaxFlags: VkVideoEncodeH264StdFlagsKHR): VkVideoEncodeH264CapabilitiesKHR = result = VkVideoEncodeH264CapabilitiesKHR( sType: sType, pNext: pNext, @@ -17943,7 +19192,7 @@ proc newVkVideoEncodeH264CapabilitiesKHR*(sType: VkStructureType, pNext: pointer stdSyntaxFlags: stdSyntaxFlags, ) -proc newVkVideoEncodeH264QualityLevelPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, preferredRateControlFlags: VkVideoEncodeH264RateControlFlagsKHR, preferredGopFrameCount: uint32, preferredIdrPeriod: uint32, preferredConsecutiveBFrameCount: uint32, preferredTemporalLayerCount: uint32, preferredConstantQp: VkVideoEncodeH264QpKHR, preferredMaxL0ReferenceCount: uint32, preferredMaxL1ReferenceCount: uint32, preferredStdEntropyCodingModeFlag: VkBool32): VkVideoEncodeH264QualityLevelPropertiesKHR = +proc newVkVideoEncodeH264QualityLevelPropertiesKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH264QualityLevelPropertiesKHR, pNext: pointer = nil, preferredRateControlFlags: VkVideoEncodeH264RateControlFlagsKHR, preferredGopFrameCount: uint32, preferredIdrPeriod: uint32, preferredConsecutiveBFrameCount: uint32, preferredTemporalLayerCount: uint32, preferredConstantQp: VkVideoEncodeH264QpKHR, preferredMaxL0ReferenceCount: uint32, preferredMaxL1ReferenceCount: uint32, preferredStdEntropyCodingModeFlag: VkBool32): VkVideoEncodeH264QualityLevelPropertiesKHR = result = VkVideoEncodeH264QualityLevelPropertiesKHR( sType: sType, pNext: pNext, @@ -17958,7 +19207,7 @@ proc newVkVideoEncodeH264QualityLevelPropertiesKHR*(sType: VkStructureType, pNex preferredStdEntropyCodingModeFlag: preferredStdEntropyCodingModeFlag, ) -proc newVkVideoEncodeH264SessionCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, useMaxLevelIdc: VkBool32, maxLevelIdc: StdVideoH264LevelIdc): VkVideoEncodeH264SessionCreateInfoKHR = +proc newVkVideoEncodeH264SessionCreateInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH264SessionCreateInfoKHR, pNext: pointer = nil, useMaxLevelIdc: VkBool32, maxLevelIdc: StdVideoH264LevelIdc): VkVideoEncodeH264SessionCreateInfoKHR = result = VkVideoEncodeH264SessionCreateInfoKHR( sType: sType, pNext: pNext, @@ -17966,7 +19215,7 @@ proc newVkVideoEncodeH264SessionCreateInfoKHR*(sType: VkStructureType, pNext: po maxLevelIdc: maxLevelIdc, ) -proc newVkVideoEncodeH264SessionParametersAddInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdSPSCount: uint32, pStdSPSs: ptr StdVideoH264SequenceParameterSet, stdPPSCount: uint32, pStdPPSs: ptr StdVideoH264PictureParameterSet): VkVideoEncodeH264SessionParametersAddInfoKHR = +proc newVkVideoEncodeH264SessionParametersAddInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH264SessionParametersAddInfoKHR, pNext: pointer = nil, stdSPSCount: uint32, pStdSPSs: ptr StdVideoH264SequenceParameterSet, stdPPSCount: uint32, pStdPPSs: ptr StdVideoH264PictureParameterSet): VkVideoEncodeH264SessionParametersAddInfoKHR = result = VkVideoEncodeH264SessionParametersAddInfoKHR( sType: sType, pNext: pNext, @@ -17976,7 +19225,7 @@ proc newVkVideoEncodeH264SessionParametersAddInfoKHR*(sType: VkStructureType, pN pStdPPSs: pStdPPSs, ) -proc newVkVideoEncodeH264SessionParametersCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, maxStdSPSCount: uint32, maxStdPPSCount: uint32, pParametersAddInfo: ptr VkVideoEncodeH264SessionParametersAddInfoKHR): VkVideoEncodeH264SessionParametersCreateInfoKHR = +proc newVkVideoEncodeH264SessionParametersCreateInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH264SessionParametersCreateInfoKHR, pNext: pointer = nil, maxStdSPSCount: uint32, maxStdPPSCount: uint32, pParametersAddInfo: ptr VkVideoEncodeH264SessionParametersAddInfoKHR): VkVideoEncodeH264SessionParametersCreateInfoKHR = result = VkVideoEncodeH264SessionParametersCreateInfoKHR( sType: sType, pNext: pNext, @@ -17985,7 +19234,7 @@ proc newVkVideoEncodeH264SessionParametersCreateInfoKHR*(sType: VkStructureType, pParametersAddInfo: pParametersAddInfo, ) -proc newVkVideoEncodeH264SessionParametersGetInfoKHR*(sType: VkStructureType, pNext: pointer = nil, writeStdSPS: VkBool32, writeStdPPS: VkBool32, stdSPSId: uint32, stdPPSId: uint32): VkVideoEncodeH264SessionParametersGetInfoKHR = +proc newVkVideoEncodeH264SessionParametersGetInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH264SessionParametersGetInfoKHR, pNext: pointer = nil, writeStdSPS: VkBool32, writeStdPPS: VkBool32, stdSPSId: uint32, stdPPSId: uint32): VkVideoEncodeH264SessionParametersGetInfoKHR = result = VkVideoEncodeH264SessionParametersGetInfoKHR( sType: sType, pNext: pNext, @@ -17995,7 +19244,7 @@ proc newVkVideoEncodeH264SessionParametersGetInfoKHR*(sType: VkStructureType, pN stdPPSId: stdPPSId, ) -proc newVkVideoEncodeH264SessionParametersFeedbackInfoKHR*(sType: VkStructureType, pNext: pointer = nil, hasStdSPSOverrides: VkBool32, hasStdPPSOverrides: VkBool32): VkVideoEncodeH264SessionParametersFeedbackInfoKHR = +proc newVkVideoEncodeH264SessionParametersFeedbackInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH264SessionParametersFeedbackInfoKHR, pNext: pointer = nil, hasStdSPSOverrides: VkBool32, hasStdPPSOverrides: VkBool32): VkVideoEncodeH264SessionParametersFeedbackInfoKHR = result = VkVideoEncodeH264SessionParametersFeedbackInfoKHR( sType: sType, pNext: pNext, @@ -18003,14 +19252,14 @@ proc newVkVideoEncodeH264SessionParametersFeedbackInfoKHR*(sType: VkStructureTyp hasStdPPSOverrides: hasStdPPSOverrides, ) -proc newVkVideoEncodeH264DpbSlotInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoEncodeH264ReferenceInfo): VkVideoEncodeH264DpbSlotInfoKHR = +proc newVkVideoEncodeH264DpbSlotInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH264DpbSlotInfoKHR, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoEncodeH264ReferenceInfo): VkVideoEncodeH264DpbSlotInfoKHR = result = VkVideoEncodeH264DpbSlotInfoKHR( sType: sType, pNext: pNext, pStdReferenceInfo: pStdReferenceInfo, ) -proc newVkVideoEncodeH264PictureInfoKHR*(sType: VkStructureType, pNext: pointer = nil, naluSliceEntryCount: uint32, pNaluSliceEntries: ptr VkVideoEncodeH264NaluSliceInfoKHR, pStdPictureInfo: ptr StdVideoEncodeH264PictureInfo, generatePrefixNalu: VkBool32): VkVideoEncodeH264PictureInfoKHR = +proc newVkVideoEncodeH264PictureInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH264PictureInfoKHR, pNext: pointer = nil, naluSliceEntryCount: uint32, pNaluSliceEntries: ptr VkVideoEncodeH264NaluSliceInfoKHR, pStdPictureInfo: ptr StdVideoEncodeH264PictureInfo, generatePrefixNalu: VkBool32): VkVideoEncodeH264PictureInfoKHR = result = VkVideoEncodeH264PictureInfoKHR( sType: sType, pNext: pNext, @@ -18020,14 +19269,14 @@ proc newVkVideoEncodeH264PictureInfoKHR*(sType: VkStructureType, pNext: pointer generatePrefixNalu: generatePrefixNalu, ) -proc newVkVideoEncodeH264ProfileInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdProfileIdc: StdVideoH264ProfileIdc): VkVideoEncodeH264ProfileInfoKHR = +proc newVkVideoEncodeH264ProfileInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH264ProfileInfoKHR, pNext: pointer = nil, stdProfileIdc: StdVideoH264ProfileIdc): VkVideoEncodeH264ProfileInfoKHR = result = VkVideoEncodeH264ProfileInfoKHR( sType: sType, pNext: pNext, stdProfileIdc: stdProfileIdc, ) -proc newVkVideoEncodeH264NaluSliceInfoKHR*(sType: VkStructureType, pNext: pointer = nil, constantQp: int32, pStdSliceHeader: ptr StdVideoEncodeH264SliceHeader): VkVideoEncodeH264NaluSliceInfoKHR = +proc newVkVideoEncodeH264NaluSliceInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH264NaluSliceInfoKHR, pNext: pointer = nil, constantQp: int32, pStdSliceHeader: ptr StdVideoEncodeH264SliceHeader): VkVideoEncodeH264NaluSliceInfoKHR = result = VkVideoEncodeH264NaluSliceInfoKHR( sType: sType, pNext: pNext, @@ -18035,7 +19284,7 @@ proc newVkVideoEncodeH264NaluSliceInfoKHR*(sType: VkStructureType, pNext: pointe pStdSliceHeader: pStdSliceHeader, ) -proc newVkVideoEncodeH264RateControlInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoEncodeH264RateControlFlagsKHR = 0.VkVideoEncodeH264RateControlFlagsKHR, gopFrameCount: uint32, idrPeriod: uint32, consecutiveBFrameCount: uint32, temporalLayerCount: uint32): VkVideoEncodeH264RateControlInfoKHR = +proc newVkVideoEncodeH264RateControlInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH264RateControlInfoKHR, pNext: pointer = nil, flags: VkVideoEncodeH264RateControlFlagsKHR = 0.VkVideoEncodeH264RateControlFlagsKHR, gopFrameCount: uint32, idrPeriod: uint32, consecutiveBFrameCount: uint32, temporalLayerCount: uint32): VkVideoEncodeH264RateControlInfoKHR = result = VkVideoEncodeH264RateControlInfoKHR( sType: sType, pNext: pNext, @@ -18060,7 +19309,7 @@ proc newVkVideoEncodeH264FrameSizeKHR*(frameISize: uint32, framePSize: uint32, f frameBSize: frameBSize, ) -proc newVkVideoEncodeH264GopRemainingFrameInfoKHR*(sType: VkStructureType, pNext: pointer = nil, useGopRemainingFrames: VkBool32, gopRemainingI: uint32, gopRemainingP: uint32, gopRemainingB: uint32): VkVideoEncodeH264GopRemainingFrameInfoKHR = +proc newVkVideoEncodeH264GopRemainingFrameInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH264GopRemainingFrameInfoKHR, pNext: pointer = nil, useGopRemainingFrames: VkBool32, gopRemainingI: uint32, gopRemainingP: uint32, gopRemainingB: uint32): VkVideoEncodeH264GopRemainingFrameInfoKHR = result = VkVideoEncodeH264GopRemainingFrameInfoKHR( sType: sType, pNext: pNext, @@ -18070,7 +19319,7 @@ proc newVkVideoEncodeH264GopRemainingFrameInfoKHR*(sType: VkStructureType, pNext gopRemainingB: gopRemainingB, ) -proc newVkVideoEncodeH264RateControlLayerInfoKHR*(sType: VkStructureType, pNext: pointer = nil, useMinQp: VkBool32, minQp: VkVideoEncodeH264QpKHR, useMaxQp: VkBool32, maxQp: VkVideoEncodeH264QpKHR, useMaxFrameSize: VkBool32, maxFrameSize: VkVideoEncodeH264FrameSizeKHR): VkVideoEncodeH264RateControlLayerInfoKHR = +proc newVkVideoEncodeH264RateControlLayerInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH264RateControlLayerInfoKHR, pNext: pointer = nil, useMinQp: VkBool32, minQp: VkVideoEncodeH264QpKHR, useMaxQp: VkBool32, maxQp: VkVideoEncodeH264QpKHR, useMaxFrameSize: VkBool32, maxFrameSize: VkVideoEncodeH264FrameSizeKHR): VkVideoEncodeH264RateControlLayerInfoKHR = result = VkVideoEncodeH264RateControlLayerInfoKHR( sType: sType, pNext: pNext, @@ -18082,7 +19331,7 @@ proc newVkVideoEncodeH264RateControlLayerInfoKHR*(sType: VkStructureType, pNext: maxFrameSize: maxFrameSize, ) -proc newVkVideoEncodeH265CapabilitiesKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoEncodeH265CapabilityFlagsKHR = 0.VkVideoEncodeH265CapabilityFlagsKHR, maxLevelIdc: StdVideoH265LevelIdc, maxSliceSegmentCount: uint32, maxTiles: VkExtent2D, ctbSizes: VkVideoEncodeH265CtbSizeFlagsKHR, transformBlockSizes: VkVideoEncodeH265TransformBlockSizeFlagsKHR, maxPPictureL0ReferenceCount: uint32, maxBPictureL0ReferenceCount: uint32, maxL1ReferenceCount: uint32, maxSubLayerCount: uint32, expectDyadicTemporalSubLayerPattern: VkBool32, minQp: int32, maxQp: int32, prefersGopRemainingFrames: VkBool32, requiresGopRemainingFrames: VkBool32, stdSyntaxFlags: VkVideoEncodeH265StdFlagsKHR): VkVideoEncodeH265CapabilitiesKHR = +proc newVkVideoEncodeH265CapabilitiesKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH265CapabilitiesKHR, pNext: pointer = nil, flags: VkVideoEncodeH265CapabilityFlagsKHR = 0.VkVideoEncodeH265CapabilityFlagsKHR, maxLevelIdc: StdVideoH265LevelIdc, maxSliceSegmentCount: uint32, maxTiles: VkExtent2D, ctbSizes: VkVideoEncodeH265CtbSizeFlagsKHR, transformBlockSizes: VkVideoEncodeH265TransformBlockSizeFlagsKHR, maxPPictureL0ReferenceCount: uint32, maxBPictureL0ReferenceCount: uint32, maxL1ReferenceCount: uint32, maxSubLayerCount: uint32, expectDyadicTemporalSubLayerPattern: VkBool32, minQp: int32, maxQp: int32, prefersGopRemainingFrames: VkBool32, requiresGopRemainingFrames: VkBool32, stdSyntaxFlags: VkVideoEncodeH265StdFlagsKHR): VkVideoEncodeH265CapabilitiesKHR = result = VkVideoEncodeH265CapabilitiesKHR( sType: sType, pNext: pNext, @@ -18104,7 +19353,7 @@ proc newVkVideoEncodeH265CapabilitiesKHR*(sType: VkStructureType, pNext: pointer stdSyntaxFlags: stdSyntaxFlags, ) -proc newVkVideoEncodeH265QualityLevelPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, preferredRateControlFlags: VkVideoEncodeH265RateControlFlagsKHR, preferredGopFrameCount: uint32, preferredIdrPeriod: uint32, preferredConsecutiveBFrameCount: uint32, preferredSubLayerCount: uint32, preferredConstantQp: VkVideoEncodeH265QpKHR, preferredMaxL0ReferenceCount: uint32, preferredMaxL1ReferenceCount: uint32): VkVideoEncodeH265QualityLevelPropertiesKHR = +proc newVkVideoEncodeH265QualityLevelPropertiesKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH265QualityLevelPropertiesKHR, pNext: pointer = nil, preferredRateControlFlags: VkVideoEncodeH265RateControlFlagsKHR, preferredGopFrameCount: uint32, preferredIdrPeriod: uint32, preferredConsecutiveBFrameCount: uint32, preferredSubLayerCount: uint32, preferredConstantQp: VkVideoEncodeH265QpKHR, preferredMaxL0ReferenceCount: uint32, preferredMaxL1ReferenceCount: uint32): VkVideoEncodeH265QualityLevelPropertiesKHR = result = VkVideoEncodeH265QualityLevelPropertiesKHR( sType: sType, pNext: pNext, @@ -18118,7 +19367,7 @@ proc newVkVideoEncodeH265QualityLevelPropertiesKHR*(sType: VkStructureType, pNex preferredMaxL1ReferenceCount: preferredMaxL1ReferenceCount, ) -proc newVkVideoEncodeH265SessionCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, useMaxLevelIdc: VkBool32, maxLevelIdc: StdVideoH265LevelIdc): VkVideoEncodeH265SessionCreateInfoKHR = +proc newVkVideoEncodeH265SessionCreateInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH265SessionCreateInfoKHR, pNext: pointer = nil, useMaxLevelIdc: VkBool32, maxLevelIdc: StdVideoH265LevelIdc): VkVideoEncodeH265SessionCreateInfoKHR = result = VkVideoEncodeH265SessionCreateInfoKHR( sType: sType, pNext: pNext, @@ -18126,7 +19375,7 @@ proc newVkVideoEncodeH265SessionCreateInfoKHR*(sType: VkStructureType, pNext: po maxLevelIdc: maxLevelIdc, ) -proc newVkVideoEncodeH265SessionParametersAddInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdVPSCount: uint32, pStdVPSs: ptr StdVideoH265VideoParameterSet, stdSPSCount: uint32, pStdSPSs: ptr StdVideoH265SequenceParameterSet, stdPPSCount: uint32, pStdPPSs: ptr StdVideoH265PictureParameterSet): VkVideoEncodeH265SessionParametersAddInfoKHR = +proc newVkVideoEncodeH265SessionParametersAddInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH265SessionParametersAddInfoKHR, pNext: pointer = nil, stdVPSCount: uint32, pStdVPSs: ptr StdVideoH265VideoParameterSet, stdSPSCount: uint32, pStdSPSs: ptr StdVideoH265SequenceParameterSet, stdPPSCount: uint32, pStdPPSs: ptr StdVideoH265PictureParameterSet): VkVideoEncodeH265SessionParametersAddInfoKHR = result = VkVideoEncodeH265SessionParametersAddInfoKHR( sType: sType, pNext: pNext, @@ -18138,7 +19387,7 @@ proc newVkVideoEncodeH265SessionParametersAddInfoKHR*(sType: VkStructureType, pN pStdPPSs: pStdPPSs, ) -proc newVkVideoEncodeH265SessionParametersCreateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, maxStdVPSCount: uint32, maxStdSPSCount: uint32, maxStdPPSCount: uint32, pParametersAddInfo: ptr VkVideoEncodeH265SessionParametersAddInfoKHR): VkVideoEncodeH265SessionParametersCreateInfoKHR = +proc newVkVideoEncodeH265SessionParametersCreateInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH265SessionParametersCreateInfoKHR, pNext: pointer = nil, maxStdVPSCount: uint32, maxStdSPSCount: uint32, maxStdPPSCount: uint32, pParametersAddInfo: ptr VkVideoEncodeH265SessionParametersAddInfoKHR): VkVideoEncodeH265SessionParametersCreateInfoKHR = result = VkVideoEncodeH265SessionParametersCreateInfoKHR( sType: sType, pNext: pNext, @@ -18148,7 +19397,7 @@ proc newVkVideoEncodeH265SessionParametersCreateInfoKHR*(sType: VkStructureType, pParametersAddInfo: pParametersAddInfo, ) -proc newVkVideoEncodeH265SessionParametersGetInfoKHR*(sType: VkStructureType, pNext: pointer = nil, writeStdVPS: VkBool32, writeStdSPS: VkBool32, writeStdPPS: VkBool32, stdVPSId: uint32, stdSPSId: uint32, stdPPSId: uint32): VkVideoEncodeH265SessionParametersGetInfoKHR = +proc newVkVideoEncodeH265SessionParametersGetInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH265SessionParametersGetInfoKHR, pNext: pointer = nil, writeStdVPS: VkBool32, writeStdSPS: VkBool32, writeStdPPS: VkBool32, stdVPSId: uint32, stdSPSId: uint32, stdPPSId: uint32): VkVideoEncodeH265SessionParametersGetInfoKHR = result = VkVideoEncodeH265SessionParametersGetInfoKHR( sType: sType, pNext: pNext, @@ -18160,7 +19409,7 @@ proc newVkVideoEncodeH265SessionParametersGetInfoKHR*(sType: VkStructureType, pN stdPPSId: stdPPSId, ) -proc newVkVideoEncodeH265SessionParametersFeedbackInfoKHR*(sType: VkStructureType, pNext: pointer = nil, hasStdVPSOverrides: VkBool32, hasStdSPSOverrides: VkBool32, hasStdPPSOverrides: VkBool32): VkVideoEncodeH265SessionParametersFeedbackInfoKHR = +proc newVkVideoEncodeH265SessionParametersFeedbackInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH265SessionParametersFeedbackInfoKHR, pNext: pointer = nil, hasStdVPSOverrides: VkBool32, hasStdSPSOverrides: VkBool32, hasStdPPSOverrides: VkBool32): VkVideoEncodeH265SessionParametersFeedbackInfoKHR = result = VkVideoEncodeH265SessionParametersFeedbackInfoKHR( sType: sType, pNext: pNext, @@ -18169,7 +19418,7 @@ proc newVkVideoEncodeH265SessionParametersFeedbackInfoKHR*(sType: VkStructureTyp hasStdPPSOverrides: hasStdPPSOverrides, ) -proc newVkVideoEncodeH265PictureInfoKHR*(sType: VkStructureType, pNext: pointer = nil, naluSliceSegmentEntryCount: uint32, pNaluSliceSegmentEntries: ptr VkVideoEncodeH265NaluSliceSegmentInfoKHR, pStdPictureInfo: ptr StdVideoEncodeH265PictureInfo): VkVideoEncodeH265PictureInfoKHR = +proc newVkVideoEncodeH265PictureInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH265PictureInfoKHR, pNext: pointer = nil, naluSliceSegmentEntryCount: uint32, pNaluSliceSegmentEntries: ptr VkVideoEncodeH265NaluSliceSegmentInfoKHR, pStdPictureInfo: ptr StdVideoEncodeH265PictureInfo): VkVideoEncodeH265PictureInfoKHR = result = VkVideoEncodeH265PictureInfoKHR( sType: sType, pNext: pNext, @@ -18178,7 +19427,7 @@ proc newVkVideoEncodeH265PictureInfoKHR*(sType: VkStructureType, pNext: pointer pStdPictureInfo: pStdPictureInfo, ) -proc newVkVideoEncodeH265NaluSliceSegmentInfoKHR*(sType: VkStructureType, pNext: pointer = nil, constantQp: int32, pStdSliceSegmentHeader: ptr StdVideoEncodeH265SliceSegmentHeader): VkVideoEncodeH265NaluSliceSegmentInfoKHR = +proc newVkVideoEncodeH265NaluSliceSegmentInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH265NaluSliceSegmentInfoKHR, pNext: pointer = nil, constantQp: int32, pStdSliceSegmentHeader: ptr StdVideoEncodeH265SliceSegmentHeader): VkVideoEncodeH265NaluSliceSegmentInfoKHR = result = VkVideoEncodeH265NaluSliceSegmentInfoKHR( sType: sType, pNext: pNext, @@ -18186,7 +19435,7 @@ proc newVkVideoEncodeH265NaluSliceSegmentInfoKHR*(sType: VkStructureType, pNext: pStdSliceSegmentHeader: pStdSliceSegmentHeader, ) -proc newVkVideoEncodeH265RateControlInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkVideoEncodeH265RateControlFlagsKHR = 0.VkVideoEncodeH265RateControlFlagsKHR, gopFrameCount: uint32, idrPeriod: uint32, consecutiveBFrameCount: uint32, subLayerCount: uint32): VkVideoEncodeH265RateControlInfoKHR = +proc newVkVideoEncodeH265RateControlInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH265RateControlInfoKHR, pNext: pointer = nil, flags: VkVideoEncodeH265RateControlFlagsKHR = 0.VkVideoEncodeH265RateControlFlagsKHR, gopFrameCount: uint32, idrPeriod: uint32, consecutiveBFrameCount: uint32, subLayerCount: uint32): VkVideoEncodeH265RateControlInfoKHR = result = VkVideoEncodeH265RateControlInfoKHR( sType: sType, pNext: pNext, @@ -18211,7 +19460,7 @@ proc newVkVideoEncodeH265FrameSizeKHR*(frameISize: uint32, framePSize: uint32, f frameBSize: frameBSize, ) -proc newVkVideoEncodeH265GopRemainingFrameInfoKHR*(sType: VkStructureType, pNext: pointer = nil, useGopRemainingFrames: VkBool32, gopRemainingI: uint32, gopRemainingP: uint32, gopRemainingB: uint32): VkVideoEncodeH265GopRemainingFrameInfoKHR = +proc newVkVideoEncodeH265GopRemainingFrameInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH265GopRemainingFrameInfoKHR, pNext: pointer = nil, useGopRemainingFrames: VkBool32, gopRemainingI: uint32, gopRemainingP: uint32, gopRemainingB: uint32): VkVideoEncodeH265GopRemainingFrameInfoKHR = result = VkVideoEncodeH265GopRemainingFrameInfoKHR( sType: sType, pNext: pNext, @@ -18221,7 +19470,7 @@ proc newVkVideoEncodeH265GopRemainingFrameInfoKHR*(sType: VkStructureType, pNext gopRemainingB: gopRemainingB, ) -proc newVkVideoEncodeH265RateControlLayerInfoKHR*(sType: VkStructureType, pNext: pointer = nil, useMinQp: VkBool32, minQp: VkVideoEncodeH265QpKHR, useMaxQp: VkBool32, maxQp: VkVideoEncodeH265QpKHR, useMaxFrameSize: VkBool32, maxFrameSize: VkVideoEncodeH265FrameSizeKHR): VkVideoEncodeH265RateControlLayerInfoKHR = +proc newVkVideoEncodeH265RateControlLayerInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH265RateControlLayerInfoKHR, pNext: pointer = nil, useMinQp: VkBool32, minQp: VkVideoEncodeH265QpKHR, useMaxQp: VkBool32, maxQp: VkVideoEncodeH265QpKHR, useMaxFrameSize: VkBool32, maxFrameSize: VkVideoEncodeH265FrameSizeKHR): VkVideoEncodeH265RateControlLayerInfoKHR = result = VkVideoEncodeH265RateControlLayerInfoKHR( sType: sType, pNext: pNext, @@ -18233,28 +19482,28 @@ proc newVkVideoEncodeH265RateControlLayerInfoKHR*(sType: VkStructureType, pNext: maxFrameSize: maxFrameSize, ) -proc newVkVideoEncodeH265ProfileInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stdProfileIdc: StdVideoH265ProfileIdc): VkVideoEncodeH265ProfileInfoKHR = +proc newVkVideoEncodeH265ProfileInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH265ProfileInfoKHR, pNext: pointer = nil, stdProfileIdc: StdVideoH265ProfileIdc): VkVideoEncodeH265ProfileInfoKHR = result = VkVideoEncodeH265ProfileInfoKHR( sType: sType, pNext: pNext, stdProfileIdc: stdProfileIdc, ) -proc newVkVideoEncodeH265DpbSlotInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoEncodeH265ReferenceInfo): VkVideoEncodeH265DpbSlotInfoKHR = +proc newVkVideoEncodeH265DpbSlotInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH265DpbSlotInfoKHR, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoEncodeH265ReferenceInfo): VkVideoEncodeH265DpbSlotInfoKHR = result = VkVideoEncodeH265DpbSlotInfoKHR( sType: sType, pNext: pNext, pStdReferenceInfo: pStdReferenceInfo, ) -proc newVkPhysicalDeviceInheritedViewportScissorFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, inheritedViewportScissor2D: VkBool32): VkPhysicalDeviceInheritedViewportScissorFeaturesNV = +proc newVkPhysicalDeviceInheritedViewportScissorFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceInheritedViewportScissorFeaturesNV, pNext: pointer = nil, inheritedViewportScissor2D: VkBool32): VkPhysicalDeviceInheritedViewportScissorFeaturesNV = result = VkPhysicalDeviceInheritedViewportScissorFeaturesNV( sType: sType, pNext: pNext, inheritedViewportScissor2D: inheritedViewportScissor2D, ) -proc newVkCommandBufferInheritanceViewportScissorInfoNV*(sType: VkStructureType, pNext: pointer = nil, viewportScissor2D: VkBool32, viewportDepthCount: uint32, pViewportDepths: ptr VkViewport): VkCommandBufferInheritanceViewportScissorInfoNV = +proc newVkCommandBufferInheritanceViewportScissorInfoNV*(sType: VkStructureType = VkStructureType.CommandBufferInheritanceViewportScissorInfoNV, pNext: pointer = nil, viewportScissor2D: VkBool32, viewportDepthCount: uint32, pViewportDepths: ptr VkViewport): VkCommandBufferInheritanceViewportScissorInfoNV = result = VkCommandBufferInheritanceViewportScissorInfoNV( sType: sType, pNext: pNext, @@ -18263,14 +19512,14 @@ proc newVkCommandBufferInheritanceViewportScissorInfoNV*(sType: VkStructureType, pViewportDepths: pViewportDepths, ) -proc newVkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, ycbcr2plane444Formats: VkBool32): VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT = +proc newVkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT, pNext: pointer = nil, ycbcr2plane444Formats: VkBool32): VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT = result = VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT( sType: sType, pNext: pNext, ycbcr2plane444Formats: ycbcr2plane444Formats, ) -proc newVkPhysicalDeviceProvokingVertexFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, provokingVertexLast: VkBool32, transformFeedbackPreservesProvokingVertex: VkBool32): VkPhysicalDeviceProvokingVertexFeaturesEXT = +proc newVkPhysicalDeviceProvokingVertexFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceProvokingVertexFeaturesEXT, pNext: pointer = nil, provokingVertexLast: VkBool32, transformFeedbackPreservesProvokingVertex: VkBool32): VkPhysicalDeviceProvokingVertexFeaturesEXT = result = VkPhysicalDeviceProvokingVertexFeaturesEXT( sType: sType, pNext: pNext, @@ -18278,7 +19527,7 @@ proc newVkPhysicalDeviceProvokingVertexFeaturesEXT*(sType: VkStructureType, pNex transformFeedbackPreservesProvokingVertex: transformFeedbackPreservesProvokingVertex, ) -proc newVkPhysicalDeviceProvokingVertexPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, provokingVertexModePerPipeline: VkBool32, transformFeedbackPreservesTriangleFanProvokingVertex: VkBool32): VkPhysicalDeviceProvokingVertexPropertiesEXT = +proc newVkPhysicalDeviceProvokingVertexPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceProvokingVertexPropertiesEXT, pNext: pointer = nil, provokingVertexModePerPipeline: VkBool32, transformFeedbackPreservesTriangleFanProvokingVertex: VkBool32): VkPhysicalDeviceProvokingVertexPropertiesEXT = result = VkPhysicalDeviceProvokingVertexPropertiesEXT( sType: sType, pNext: pNext, @@ -18286,14 +19535,14 @@ proc newVkPhysicalDeviceProvokingVertexPropertiesEXT*(sType: VkStructureType, pN transformFeedbackPreservesTriangleFanProvokingVertex: transformFeedbackPreservesTriangleFanProvokingVertex, ) -proc newVkPipelineRasterizationProvokingVertexStateCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, provokingVertexMode: VkProvokingVertexModeEXT): VkPipelineRasterizationProvokingVertexStateCreateInfoEXT = +proc newVkPipelineRasterizationProvokingVertexStateCreateInfoEXT*(sType: VkStructureType = VkStructureType.PipelineRasterizationProvokingVertexStateCreateInfoEXT, pNext: pointer = nil, provokingVertexMode: VkProvokingVertexModeEXT): VkPipelineRasterizationProvokingVertexStateCreateInfoEXT = result = VkPipelineRasterizationProvokingVertexStateCreateInfoEXT( sType: sType, pNext: pNext, provokingVertexMode: provokingVertexMode, ) -proc newVkCuModuleCreateInfoNVX*(sType: VkStructureType, pNext: pointer = nil, dataSize: uint, pData: pointer = nil): VkCuModuleCreateInfoNVX = +proc newVkCuModuleCreateInfoNVX*(sType: VkStructureType = VkStructureType.CuModuleCreateInfoNVX, pNext: pointer = nil, dataSize: uint, pData: pointer = nil): VkCuModuleCreateInfoNVX = result = VkCuModuleCreateInfoNVX( sType: sType, pNext: pNext, @@ -18301,7 +19550,7 @@ proc newVkCuModuleCreateInfoNVX*(sType: VkStructureType, pNext: pointer = nil, d pData: pData, ) -proc newVkCuFunctionCreateInfoNVX*(sType: VkStructureType, pNext: pointer = nil, module: VkCuModuleNVX, pName: cstring): VkCuFunctionCreateInfoNVX = +proc newVkCuFunctionCreateInfoNVX*(sType: VkStructureType = VkStructureType.CuFunctionCreateInfoNVX, pNext: pointer = nil, module: VkCuModuleNVX, pName: cstring): VkCuFunctionCreateInfoNVX = result = VkCuFunctionCreateInfoNVX( sType: sType, pNext: pNext, @@ -18309,7 +19558,7 @@ proc newVkCuFunctionCreateInfoNVX*(sType: VkStructureType, pNext: pointer = nil, pName: pName, ) -proc newVkCuLaunchInfoNVX*(sType: VkStructureType, pNext: pointer = nil, function: VkCuFunctionNVX, gridDimX: uint32, gridDimY: uint32, gridDimZ: uint32, blockDimX: uint32, blockDimY: uint32, blockDimZ: uint32, sharedMemBytes: uint32, paramCount: uint, pParams: ptr pointer, extraCount: uint, pExtras: ptr pointer): VkCuLaunchInfoNVX = +proc newVkCuLaunchInfoNVX*(sType: VkStructureType = VkStructureType.CuLaunchInfoNVX, pNext: pointer = nil, function: VkCuFunctionNVX, gridDimX: uint32, gridDimY: uint32, gridDimZ: uint32, blockDimX: uint32, blockDimY: uint32, blockDimZ: uint32, sharedMemBytes: uint32, paramCount: uint, pParams: ptr pointer, extraCount: uint, pExtras: ptr pointer): VkCuLaunchInfoNVX = result = VkCuLaunchInfoNVX( sType: sType, pNext: pNext, @@ -18327,7 +19576,7 @@ proc newVkCuLaunchInfoNVX*(sType: VkStructureType, pNext: pointer = nil, functio pExtras: pExtras, ) -proc newVkPhysicalDeviceDescriptorBufferFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, descriptorBuffer: VkBool32, descriptorBufferCaptureReplay: VkBool32, descriptorBufferImageLayoutIgnored: VkBool32, descriptorBufferPushDescriptors: VkBool32): VkPhysicalDeviceDescriptorBufferFeaturesEXT = +proc newVkPhysicalDeviceDescriptorBufferFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceDescriptorBufferFeaturesEXT, pNext: pointer = nil, descriptorBuffer: VkBool32, descriptorBufferCaptureReplay: VkBool32, descriptorBufferImageLayoutIgnored: VkBool32, descriptorBufferPushDescriptors: VkBool32): VkPhysicalDeviceDescriptorBufferFeaturesEXT = result = VkPhysicalDeviceDescriptorBufferFeaturesEXT( sType: sType, pNext: pNext, @@ -18337,7 +19586,7 @@ proc newVkPhysicalDeviceDescriptorBufferFeaturesEXT*(sType: VkStructureType, pNe descriptorBufferPushDescriptors: descriptorBufferPushDescriptors, ) -proc newVkPhysicalDeviceDescriptorBufferPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, combinedImageSamplerDescriptorSingleArray: VkBool32, bufferlessPushDescriptors: VkBool32, allowSamplerImageViewPostSubmitCreation: VkBool32, descriptorBufferOffsetAlignment: VkDeviceSize, maxDescriptorBufferBindings: uint32, maxResourceDescriptorBufferBindings: uint32, maxSamplerDescriptorBufferBindings: uint32, maxEmbeddedImmutableSamplerBindings: uint32, maxEmbeddedImmutableSamplers: uint32, bufferCaptureReplayDescriptorDataSize: uint, imageCaptureReplayDescriptorDataSize: uint, imageViewCaptureReplayDescriptorDataSize: uint, samplerCaptureReplayDescriptorDataSize: uint, accelerationStructureCaptureReplayDescriptorDataSize: uint, samplerDescriptorSize: uint, combinedImageSamplerDescriptorSize: uint, sampledImageDescriptorSize: uint, storageImageDescriptorSize: uint, uniformTexelBufferDescriptorSize: uint, robustUniformTexelBufferDescriptorSize: uint, storageTexelBufferDescriptorSize: uint, robustStorageTexelBufferDescriptorSize: uint, uniformBufferDescriptorSize: uint, robustUniformBufferDescriptorSize: uint, storageBufferDescriptorSize: uint, robustStorageBufferDescriptorSize: uint, inputAttachmentDescriptorSize: uint, accelerationStructureDescriptorSize: uint, maxSamplerDescriptorBufferRange: VkDeviceSize, maxResourceDescriptorBufferRange: VkDeviceSize, samplerDescriptorBufferAddressSpaceSize: VkDeviceSize, resourceDescriptorBufferAddressSpaceSize: VkDeviceSize, descriptorBufferAddressSpaceSize: VkDeviceSize): VkPhysicalDeviceDescriptorBufferPropertiesEXT = +proc newVkPhysicalDeviceDescriptorBufferPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceDescriptorBufferPropertiesEXT, pNext: pointer = nil, combinedImageSamplerDescriptorSingleArray: VkBool32, bufferlessPushDescriptors: VkBool32, allowSamplerImageViewPostSubmitCreation: VkBool32, descriptorBufferOffsetAlignment: VkDeviceSize, maxDescriptorBufferBindings: uint32, maxResourceDescriptorBufferBindings: uint32, maxSamplerDescriptorBufferBindings: uint32, maxEmbeddedImmutableSamplerBindings: uint32, maxEmbeddedImmutableSamplers: uint32, bufferCaptureReplayDescriptorDataSize: uint, imageCaptureReplayDescriptorDataSize: uint, imageViewCaptureReplayDescriptorDataSize: uint, samplerCaptureReplayDescriptorDataSize: uint, accelerationStructureCaptureReplayDescriptorDataSize: uint, samplerDescriptorSize: uint, combinedImageSamplerDescriptorSize: uint, sampledImageDescriptorSize: uint, storageImageDescriptorSize: uint, uniformTexelBufferDescriptorSize: uint, robustUniformTexelBufferDescriptorSize: uint, storageTexelBufferDescriptorSize: uint, robustStorageTexelBufferDescriptorSize: uint, uniformBufferDescriptorSize: uint, robustUniformBufferDescriptorSize: uint, storageBufferDescriptorSize: uint, robustStorageBufferDescriptorSize: uint, inputAttachmentDescriptorSize: uint, accelerationStructureDescriptorSize: uint, maxSamplerDescriptorBufferRange: VkDeviceSize, maxResourceDescriptorBufferRange: VkDeviceSize, samplerDescriptorBufferAddressSpaceSize: VkDeviceSize, resourceDescriptorBufferAddressSpaceSize: VkDeviceSize, descriptorBufferAddressSpaceSize: VkDeviceSize): VkPhysicalDeviceDescriptorBufferPropertiesEXT = result = VkPhysicalDeviceDescriptorBufferPropertiesEXT( sType: sType, pNext: pNext, @@ -18376,14 +19625,14 @@ proc newVkPhysicalDeviceDescriptorBufferPropertiesEXT*(sType: VkStructureType, p descriptorBufferAddressSpaceSize: descriptorBufferAddressSpaceSize, ) -proc newVkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, combinedImageSamplerDensityMapDescriptorSize: uint): VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT = +proc newVkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceDescriptorBufferDensityMapPropertiesEXT, pNext: pointer = nil, combinedImageSamplerDensityMapDescriptorSize: uint): VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT = result = VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT( sType: sType, pNext: pNext, combinedImageSamplerDensityMapDescriptorSize: combinedImageSamplerDensityMapDescriptorSize, ) -proc newVkDescriptorAddressInfoEXT*(sType: VkStructureType, pNext: pointer = nil, address: VkDeviceAddress, range: VkDeviceSize, format: VkFormat): VkDescriptorAddressInfoEXT = +proc newVkDescriptorAddressInfoEXT*(sType: VkStructureType = VkStructureType.DescriptorAddressInfoEXT, pNext: pointer = nil, address: VkDeviceAddress, range: VkDeviceSize, format: VkFormat): VkDescriptorAddressInfoEXT = result = VkDescriptorAddressInfoEXT( sType: sType, pNext: pNext, @@ -18392,7 +19641,7 @@ proc newVkDescriptorAddressInfoEXT*(sType: VkStructureType, pNext: pointer = nil format: format, ) -proc newVkDescriptorBufferBindingInfoEXT*(sType: VkStructureType, pNext: pointer = nil, address: VkDeviceAddress, usage: VkBufferUsageFlags): VkDescriptorBufferBindingInfoEXT = +proc newVkDescriptorBufferBindingInfoEXT*(sType: VkStructureType = VkStructureType.DescriptorBufferBindingInfoEXT, pNext: pointer = nil, address: VkDeviceAddress, usage: VkBufferUsageFlags): VkDescriptorBufferBindingInfoEXT = result = VkDescriptorBufferBindingInfoEXT( sType: sType, pNext: pNext, @@ -18400,14 +19649,14 @@ proc newVkDescriptorBufferBindingInfoEXT*(sType: VkStructureType, pNext: pointer usage: usage, ) -proc newVkDescriptorBufferBindingPushDescriptorBufferHandleEXT*(sType: VkStructureType, pNext: pointer = nil, buffer: VkBuffer): VkDescriptorBufferBindingPushDescriptorBufferHandleEXT = +proc newVkDescriptorBufferBindingPushDescriptorBufferHandleEXT*(sType: VkStructureType = VkStructureType.DescriptorBufferBindingPushDescriptorBufferHandleEXT, pNext: pointer = nil, buffer: VkBuffer): VkDescriptorBufferBindingPushDescriptorBufferHandleEXT = result = VkDescriptorBufferBindingPushDescriptorBufferHandleEXT( sType: sType, pNext: pNext, buffer: buffer, ) -proc newVkDescriptorGetInfoEXT*(sType: VkStructureType, pNext: pointer = nil, `type`: VkDescriptorType, data: VkDescriptorDataEXT): VkDescriptorGetInfoEXT = +proc newVkDescriptorGetInfoEXT*(sType: VkStructureType = VkStructureType.DescriptorGetInfoEXT, pNext: pointer = nil, `type`: VkDescriptorType, data: VkDescriptorDataEXT): VkDescriptorGetInfoEXT = result = VkDescriptorGetInfoEXT( sType: sType, pNext: pNext, @@ -18415,35 +19664,35 @@ proc newVkDescriptorGetInfoEXT*(sType: VkStructureType, pNext: pointer = nil, `t data: data, ) -proc newVkBufferCaptureDescriptorDataInfoEXT*(sType: VkStructureType, pNext: pointer = nil, buffer: VkBuffer): VkBufferCaptureDescriptorDataInfoEXT = +proc newVkBufferCaptureDescriptorDataInfoEXT*(sType: VkStructureType = VkStructureType.BufferCaptureDescriptorDataInfoEXT, pNext: pointer = nil, buffer: VkBuffer): VkBufferCaptureDescriptorDataInfoEXT = result = VkBufferCaptureDescriptorDataInfoEXT( sType: sType, pNext: pNext, buffer: buffer, ) -proc newVkImageCaptureDescriptorDataInfoEXT*(sType: VkStructureType, pNext: pointer = nil, image: VkImage): VkImageCaptureDescriptorDataInfoEXT = +proc newVkImageCaptureDescriptorDataInfoEXT*(sType: VkStructureType = VkStructureType.ImageCaptureDescriptorDataInfoEXT, pNext: pointer = nil, image: VkImage): VkImageCaptureDescriptorDataInfoEXT = result = VkImageCaptureDescriptorDataInfoEXT( sType: sType, pNext: pNext, image: image, ) -proc newVkImageViewCaptureDescriptorDataInfoEXT*(sType: VkStructureType, pNext: pointer = nil, imageView: VkImageView): VkImageViewCaptureDescriptorDataInfoEXT = +proc newVkImageViewCaptureDescriptorDataInfoEXT*(sType: VkStructureType = VkStructureType.ImageViewCaptureDescriptorDataInfoEXT, pNext: pointer = nil, imageView: VkImageView): VkImageViewCaptureDescriptorDataInfoEXT = result = VkImageViewCaptureDescriptorDataInfoEXT( sType: sType, pNext: pNext, imageView: imageView, ) -proc newVkSamplerCaptureDescriptorDataInfoEXT*(sType: VkStructureType, pNext: pointer = nil, sampler: VkSampler): VkSamplerCaptureDescriptorDataInfoEXT = +proc newVkSamplerCaptureDescriptorDataInfoEXT*(sType: VkStructureType = VkStructureType.SamplerCaptureDescriptorDataInfoEXT, pNext: pointer = nil, sampler: VkSampler): VkSamplerCaptureDescriptorDataInfoEXT = result = VkSamplerCaptureDescriptorDataInfoEXT( sType: sType, pNext: pNext, sampler: sampler, ) -proc newVkAccelerationStructureCaptureDescriptorDataInfoEXT*(sType: VkStructureType, pNext: pointer = nil, accelerationStructure: VkAccelerationStructureKHR, accelerationStructureNV: VkAccelerationStructureNV): VkAccelerationStructureCaptureDescriptorDataInfoEXT = +proc newVkAccelerationStructureCaptureDescriptorDataInfoEXT*(sType: VkStructureType = VkStructureType.AccelerationStructureCaptureDescriptorDataInfoEXT, pNext: pointer = nil, accelerationStructure: VkAccelerationStructureKHR, accelerationStructureNV: VkAccelerationStructureNV): VkAccelerationStructureCaptureDescriptorDataInfoEXT = result = VkAccelerationStructureCaptureDescriptorDataInfoEXT( sType: sType, pNext: pNext, @@ -18451,7 +19700,7 @@ proc newVkAccelerationStructureCaptureDescriptorDataInfoEXT*(sType: VkStructureT accelerationStructureNV: accelerationStructureNV, ) -proc newVkOpaqueCaptureDescriptorDataCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, opaqueCaptureDescriptorData: pointer = nil): VkOpaqueCaptureDescriptorDataCreateInfoEXT = +proc newVkOpaqueCaptureDescriptorDataCreateInfoEXT*(sType: VkStructureType = VkStructureType.OpaqueCaptureDescriptorDataCreateInfoEXT, pNext: pointer = nil, opaqueCaptureDescriptorData: pointer = nil): VkOpaqueCaptureDescriptorDataCreateInfoEXT = result = VkOpaqueCaptureDescriptorDataCreateInfoEXT( sType: sType, pNext: pNext, @@ -18501,7 +19750,7 @@ proc newVkPhysicalDeviceShaderIntegerDotProductProperties*(sType: VkStructureTyp integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated: integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated, ) -proc newVkPhysicalDeviceDrmPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, hasPrimary: VkBool32, hasRender: VkBool32, primaryMajor: int64, primaryMinor: int64, renderMajor: int64, renderMinor: int64): VkPhysicalDeviceDrmPropertiesEXT = +proc newVkPhysicalDeviceDrmPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceDrmPropertiesEXT, pNext: pointer = nil, hasPrimary: VkBool32, hasRender: VkBool32, primaryMajor: int64, primaryMinor: int64, renderMajor: int64, renderMinor: int64): VkPhysicalDeviceDrmPropertiesEXT = result = VkPhysicalDeviceDrmPropertiesEXT( sType: sType, pNext: pNext, @@ -18513,21 +19762,21 @@ proc newVkPhysicalDeviceDrmPropertiesEXT*(sType: VkStructureType, pNext: pointer renderMinor: renderMinor, ) -proc newVkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, fragmentShaderBarycentric: VkBool32): VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR = +proc newVkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceFragmentShaderBarycentricFeaturesKHR, pNext: pointer = nil, fragmentShaderBarycentric: VkBool32): VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR = result = VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR( sType: sType, pNext: pNext, fragmentShaderBarycentric: fragmentShaderBarycentric, ) -proc newVkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, triStripVertexOrderIndependentOfProvokingVertex: VkBool32): VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR = +proc newVkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceFragmentShaderBarycentricPropertiesKHR, pNext: pointer = nil, triStripVertexOrderIndependentOfProvokingVertex: VkBool32): VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR = result = VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR( sType: sType, pNext: pNext, triStripVertexOrderIndependentOfProvokingVertex: triStripVertexOrderIndependentOfProvokingVertex, ) -proc newVkPhysicalDeviceRayTracingMotionBlurFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, rayTracingMotionBlur: VkBool32, rayTracingMotionBlurPipelineTraceRaysIndirect: VkBool32): VkPhysicalDeviceRayTracingMotionBlurFeaturesNV = +proc newVkPhysicalDeviceRayTracingMotionBlurFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceRayTracingMotionBlurFeaturesNV, pNext: pointer = nil, rayTracingMotionBlur: VkBool32, rayTracingMotionBlurPipelineTraceRaysIndirect: VkBool32): VkPhysicalDeviceRayTracingMotionBlurFeaturesNV = result = VkPhysicalDeviceRayTracingMotionBlurFeaturesNV( sType: sType, pNext: pNext, @@ -18535,14 +19784,14 @@ proc newVkPhysicalDeviceRayTracingMotionBlurFeaturesNV*(sType: VkStructureType, rayTracingMotionBlurPipelineTraceRaysIndirect: rayTracingMotionBlurPipelineTraceRaysIndirect, ) -proc newVkAccelerationStructureGeometryMotionTrianglesDataNV*(sType: VkStructureType, pNext: pointer = nil, vertexData: VkDeviceOrHostAddressConstKHR): VkAccelerationStructureGeometryMotionTrianglesDataNV = +proc newVkAccelerationStructureGeometryMotionTrianglesDataNV*(sType: VkStructureType = VkStructureType.AccelerationStructureGeometryMotionTrianglesDataNV, pNext: pointer = nil, vertexData: VkDeviceOrHostAddressConstKHR): VkAccelerationStructureGeometryMotionTrianglesDataNV = result = VkAccelerationStructureGeometryMotionTrianglesDataNV( sType: sType, pNext: pNext, vertexData: vertexData, ) -proc newVkAccelerationStructureMotionInfoNV*(sType: VkStructureType, pNext: pointer = nil, maxInstances: uint32, flags: VkAccelerationStructureMotionInfoFlagsNV = 0.VkAccelerationStructureMotionInfoFlagsNV): VkAccelerationStructureMotionInfoNV = +proc newVkAccelerationStructureMotionInfoNV*(sType: VkStructureType = VkStructureType.AccelerationStructureMotionInfoNV, pNext: pointer = nil, maxInstances: uint32, flags: VkAccelerationStructureMotionInfoFlagsNV = 0.VkAccelerationStructureMotionInfoFlagsNV): VkAccelerationStructureMotionInfoNV = result = VkAccelerationStructureMotionInfoNV( sType: sType, pNext: pNext, @@ -18599,7 +19848,7 @@ proc newVkAccelerationStructureMotionInstanceNV*(`type`: VkAccelerationStructure data: data, ) -proc newVkMemoryGetRemoteAddressInfoNV*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetRemoteAddressInfoNV = +proc newVkMemoryGetRemoteAddressInfoNV*(sType: VkStructureType = VkStructureType.MemoryGetRemoteAddressInfoNV, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetRemoteAddressInfoNV = result = VkMemoryGetRemoteAddressInfoNV( sType: sType, pNext: pNext, @@ -18607,7 +19856,7 @@ proc newVkMemoryGetRemoteAddressInfoNV*(sType: VkStructureType, pNext: pointer = handleType: handleType, ) -proc newVkImportMemoryBufferCollectionFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, collection: VkBufferCollectionFUCHSIA, index: uint32): VkImportMemoryBufferCollectionFUCHSIA = +proc newVkImportMemoryBufferCollectionFUCHSIA*(sType: VkStructureType = VkStructureType.ImportMemoryBufferCollectionFUCHSIA, pNext: pointer = nil, collection: VkBufferCollectionFUCHSIA, index: uint32): VkImportMemoryBufferCollectionFUCHSIA = result = VkImportMemoryBufferCollectionFUCHSIA( sType: sType, pNext: pNext, @@ -18615,7 +19864,7 @@ proc newVkImportMemoryBufferCollectionFUCHSIA*(sType: VkStructureType, pNext: po index: index, ) -proc newVkBufferCollectionImageCreateInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, collection: VkBufferCollectionFUCHSIA, index: uint32): VkBufferCollectionImageCreateInfoFUCHSIA = +proc newVkBufferCollectionImageCreateInfoFUCHSIA*(sType: VkStructureType = VkStructureType.BufferCollectionImageCreateInfoFUCHSIA, pNext: pointer = nil, collection: VkBufferCollectionFUCHSIA, index: uint32): VkBufferCollectionImageCreateInfoFUCHSIA = result = VkBufferCollectionImageCreateInfoFUCHSIA( sType: sType, pNext: pNext, @@ -18623,7 +19872,7 @@ proc newVkBufferCollectionImageCreateInfoFUCHSIA*(sType: VkStructureType, pNext: index: index, ) -proc newVkBufferCollectionBufferCreateInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, collection: VkBufferCollectionFUCHSIA, index: uint32): VkBufferCollectionBufferCreateInfoFUCHSIA = +proc newVkBufferCollectionBufferCreateInfoFUCHSIA*(sType: VkStructureType = VkStructureType.BufferCollectionBufferCreateInfoFUCHSIA, pNext: pointer = nil, collection: VkBufferCollectionFUCHSIA, index: uint32): VkBufferCollectionBufferCreateInfoFUCHSIA = result = VkBufferCollectionBufferCreateInfoFUCHSIA( sType: sType, pNext: pNext, @@ -18631,14 +19880,14 @@ proc newVkBufferCollectionBufferCreateInfoFUCHSIA*(sType: VkStructureType, pNext index: index, ) -proc newVkBufferCollectionCreateInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, collectionToken: zx_handle_t): VkBufferCollectionCreateInfoFUCHSIA = +proc newVkBufferCollectionCreateInfoFUCHSIA*(sType: VkStructureType = VkStructureType.BufferCollectionCreateInfoFUCHSIA, pNext: pointer = nil, collectionToken: zx_handle_t): VkBufferCollectionCreateInfoFUCHSIA = result = VkBufferCollectionCreateInfoFUCHSIA( sType: sType, pNext: pNext, collectionToken: collectionToken, ) -proc newVkBufferCollectionPropertiesFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, memoryTypeBits: uint32, bufferCount: uint32, createInfoIndex: uint32, sysmemPixelFormat: uint64, formatFeatures: VkFormatFeatureFlags, sysmemColorSpaceIndex: VkSysmemColorSpaceFUCHSIA, samplerYcbcrConversionComponents: VkComponentMapping, suggestedYcbcrModel: VkSamplerYcbcrModelConversion, suggestedYcbcrRange: VkSamplerYcbcrRange, suggestedXChromaOffset: VkChromaLocation, suggestedYChromaOffset: VkChromaLocation): VkBufferCollectionPropertiesFUCHSIA = +proc newVkBufferCollectionPropertiesFUCHSIA*(sType: VkStructureType = VkStructureType.BufferCollectionPropertiesFUCHSIA, pNext: pointer = nil, memoryTypeBits: uint32, bufferCount: uint32, createInfoIndex: uint32, sysmemPixelFormat: uint64, formatFeatures: VkFormatFeatureFlags, sysmemColorSpaceIndex: VkSysmemColorSpaceFUCHSIA, samplerYcbcrConversionComponents: VkComponentMapping, suggestedYcbcrModel: VkSamplerYcbcrModelConversion, suggestedYcbcrRange: VkSamplerYcbcrRange, suggestedXChromaOffset: VkChromaLocation, suggestedYChromaOffset: VkChromaLocation): VkBufferCollectionPropertiesFUCHSIA = result = VkBufferCollectionPropertiesFUCHSIA( sType: sType, pNext: pNext, @@ -18655,7 +19904,7 @@ proc newVkBufferCollectionPropertiesFUCHSIA*(sType: VkStructureType, pNext: poin suggestedYChromaOffset: suggestedYChromaOffset, ) -proc newVkBufferConstraintsInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, createInfo: VkBufferCreateInfo, requiredFormatFeatures: VkFormatFeatureFlags, bufferCollectionConstraints: VkBufferCollectionConstraintsInfoFUCHSIA): VkBufferConstraintsInfoFUCHSIA = +proc newVkBufferConstraintsInfoFUCHSIA*(sType: VkStructureType = VkStructureType.BufferConstraintsInfoFUCHSIA, pNext: pointer = nil, createInfo: VkBufferCreateInfo, requiredFormatFeatures: VkFormatFeatureFlags, bufferCollectionConstraints: VkBufferCollectionConstraintsInfoFUCHSIA): VkBufferConstraintsInfoFUCHSIA = result = VkBufferConstraintsInfoFUCHSIA( sType: sType, pNext: pNext, @@ -18664,14 +19913,14 @@ proc newVkBufferConstraintsInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = bufferCollectionConstraints: bufferCollectionConstraints, ) -proc newVkSysmemColorSpaceFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, colorSpace: uint32): VkSysmemColorSpaceFUCHSIA = +proc newVkSysmemColorSpaceFUCHSIA*(sType: VkStructureType = VkStructureType.SysmemColorSpaceFUCHSIA, pNext: pointer = nil, colorSpace: uint32): VkSysmemColorSpaceFUCHSIA = result = VkSysmemColorSpaceFUCHSIA( sType: sType, pNext: pNext, colorSpace: colorSpace, ) -proc newVkImageFormatConstraintsInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, imageCreateInfo: VkImageCreateInfo, requiredFormatFeatures: VkFormatFeatureFlags, flags: VkImageFormatConstraintsFlagsFUCHSIA = 0.VkImageFormatConstraintsFlagsFUCHSIA, sysmemPixelFormat: uint64, colorSpaceCount: uint32, pColorSpaces: ptr VkSysmemColorSpaceFUCHSIA): VkImageFormatConstraintsInfoFUCHSIA = +proc newVkImageFormatConstraintsInfoFUCHSIA*(sType: VkStructureType = VkStructureType.ImageFormatConstraintsInfoFUCHSIA, pNext: pointer = nil, imageCreateInfo: VkImageCreateInfo, requiredFormatFeatures: VkFormatFeatureFlags, flags: VkImageFormatConstraintsFlagsFUCHSIA = 0.VkImageFormatConstraintsFlagsFUCHSIA, sysmemPixelFormat: uint64, colorSpaceCount: uint32, pColorSpaces: ptr VkSysmemColorSpaceFUCHSIA): VkImageFormatConstraintsInfoFUCHSIA = result = VkImageFormatConstraintsInfoFUCHSIA( sType: sType, pNext: pNext, @@ -18683,7 +19932,7 @@ proc newVkImageFormatConstraintsInfoFUCHSIA*(sType: VkStructureType, pNext: poin pColorSpaces: pColorSpaces, ) -proc newVkImageConstraintsInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, formatConstraintsCount: uint32, pFormatConstraints: ptr VkImageFormatConstraintsInfoFUCHSIA, bufferCollectionConstraints: VkBufferCollectionConstraintsInfoFUCHSIA, flags: VkImageConstraintsInfoFlagsFUCHSIA = 0.VkImageConstraintsInfoFlagsFUCHSIA): VkImageConstraintsInfoFUCHSIA = +proc newVkImageConstraintsInfoFUCHSIA*(sType: VkStructureType = VkStructureType.ImageConstraintsInfoFUCHSIA, pNext: pointer = nil, formatConstraintsCount: uint32, pFormatConstraints: ptr VkImageFormatConstraintsInfoFUCHSIA, bufferCollectionConstraints: VkBufferCollectionConstraintsInfoFUCHSIA, flags: VkImageConstraintsInfoFlagsFUCHSIA = 0.VkImageConstraintsInfoFlagsFUCHSIA): VkImageConstraintsInfoFUCHSIA = result = VkImageConstraintsInfoFUCHSIA( sType: sType, pNext: pNext, @@ -18693,7 +19942,7 @@ proc newVkImageConstraintsInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = flags: flags, ) -proc newVkBufferCollectionConstraintsInfoFUCHSIA*(sType: VkStructureType, pNext: pointer = nil, minBufferCount: uint32, maxBufferCount: uint32, minBufferCountForCamping: uint32, minBufferCountForDedicatedSlack: uint32, minBufferCountForSharedSlack: uint32): VkBufferCollectionConstraintsInfoFUCHSIA = +proc newVkBufferCollectionConstraintsInfoFUCHSIA*(sType: VkStructureType = VkStructureType.BufferCollectionConstraintsInfoFUCHSIA, pNext: pointer = nil, minBufferCount: uint32, maxBufferCount: uint32, minBufferCountForCamping: uint32, minBufferCountForDedicatedSlack: uint32, minBufferCountForSharedSlack: uint32): VkBufferCollectionConstraintsInfoFUCHSIA = result = VkBufferCollectionConstraintsInfoFUCHSIA( sType: sType, pNext: pNext, @@ -18704,7 +19953,7 @@ proc newVkBufferCollectionConstraintsInfoFUCHSIA*(sType: VkStructureType, pNext: minBufferCountForSharedSlack: minBufferCountForSharedSlack, ) -proc newVkCudaModuleCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, dataSize: uint, pData: pointer = nil): VkCudaModuleCreateInfoNV = +proc newVkCudaModuleCreateInfoNV*(sType: VkStructureType = VkStructureType.CudaModuleCreateInfoNV, pNext: pointer = nil, dataSize: uint, pData: pointer = nil): VkCudaModuleCreateInfoNV = result = VkCudaModuleCreateInfoNV( sType: sType, pNext: pNext, @@ -18712,7 +19961,7 @@ proc newVkCudaModuleCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, pData: pData, ) -proc newVkCudaFunctionCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, module: VkCudaModuleNV, pName: cstring): VkCudaFunctionCreateInfoNV = +proc newVkCudaFunctionCreateInfoNV*(sType: VkStructureType = VkStructureType.CudaFunctionCreateInfoNV, pNext: pointer = nil, module: VkCudaModuleNV, pName: cstring): VkCudaFunctionCreateInfoNV = result = VkCudaFunctionCreateInfoNV( sType: sType, pNext: pNext, @@ -18720,7 +19969,7 @@ proc newVkCudaFunctionCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil pName: pName, ) -proc newVkCudaLaunchInfoNV*(sType: VkStructureType, pNext: pointer = nil, function: VkCudaFunctionNV, gridDimX: uint32, gridDimY: uint32, gridDimZ: uint32, blockDimX: uint32, blockDimY: uint32, blockDimZ: uint32, sharedMemBytes: uint32, paramCount: uint, pParams: ptr pointer, extraCount: uint, pExtras: ptr pointer): VkCudaLaunchInfoNV = +proc newVkCudaLaunchInfoNV*(sType: VkStructureType = VkStructureType.CudaLaunchInfoNV, pNext: pointer = nil, function: VkCudaFunctionNV, gridDimX: uint32, gridDimY: uint32, gridDimZ: uint32, blockDimX: uint32, blockDimY: uint32, blockDimZ: uint32, sharedMemBytes: uint32, paramCount: uint, pParams: ptr pointer, extraCount: uint, pExtras: ptr pointer): VkCudaLaunchInfoNV = result = VkCudaLaunchInfoNV( sType: sType, pNext: pNext, @@ -18738,7 +19987,7 @@ proc newVkCudaLaunchInfoNV*(sType: VkStructureType, pNext: pointer = nil, functi pExtras: pExtras, ) -proc newVkPhysicalDeviceRGBA10X6FormatsFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, formatRgba10x6WithoutYCbCrSampler: VkBool32): VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT = +proc newVkPhysicalDeviceRGBA10X6FormatsFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceRGBA10X6FormatsFeaturesEXT, pNext: pointer = nil, formatRgba10x6WithoutYCbCrSampler: VkBool32): VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT = result = VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT( sType: sType, pNext: pNext, @@ -18754,7 +20003,7 @@ proc newVkFormatProperties3*(sType: VkStructureType, pNext: pointer = nil, linea bufferFeatures: bufferFeatures, ) -proc newVkDrmFormatModifierPropertiesList2EXT*(sType: VkStructureType, pNext: pointer = nil, drmFormatModifierCount: uint32, pDrmFormatModifierProperties: ptr VkDrmFormatModifierProperties2EXT): VkDrmFormatModifierPropertiesList2EXT = +proc newVkDrmFormatModifierPropertiesList2EXT*(sType: VkStructureType = VkStructureType.DrmFormatModifierPropertiesList2EXT, pNext: pointer = nil, drmFormatModifierCount: uint32, pDrmFormatModifierProperties: ptr VkDrmFormatModifierProperties2EXT): VkDrmFormatModifierPropertiesList2EXT = result = VkDrmFormatModifierPropertiesList2EXT( sType: sType, pNext: pNext, @@ -18769,7 +20018,7 @@ proc newVkDrmFormatModifierProperties2EXT*(drmFormatModifier: uint64, drmFormatM drmFormatModifierTilingFeatures: drmFormatModifierTilingFeatures, ) -proc newVkAndroidHardwareBufferFormatProperties2ANDROID*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat, externalFormat: uint64, formatFeatures: VkFormatFeatureFlags2, samplerYcbcrConversionComponents: VkComponentMapping, suggestedYcbcrModel: VkSamplerYcbcrModelConversion, suggestedYcbcrRange: VkSamplerYcbcrRange, suggestedXChromaOffset: VkChromaLocation, suggestedYChromaOffset: VkChromaLocation): VkAndroidHardwareBufferFormatProperties2ANDROID = +proc newVkAndroidHardwareBufferFormatProperties2ANDROID*(sType: VkStructureType = VkStructureType.AndroidHardwareBufferFormatProperties2ANDROID, pNext: pointer = nil, format: VkFormat, externalFormat: uint64, formatFeatures: VkFormatFeatureFlags2, samplerYcbcrConversionComponents: VkComponentMapping, suggestedYcbcrModel: VkSamplerYcbcrModelConversion, suggestedYcbcrRange: VkSamplerYcbcrRange, suggestedXChromaOffset: VkChromaLocation, suggestedYChromaOffset: VkChromaLocation): VkAndroidHardwareBufferFormatProperties2ANDROID = result = VkAndroidHardwareBufferFormatProperties2ANDROID( sType: sType, pNext: pNext, @@ -18822,7 +20071,7 @@ proc newVkRenderingAttachmentInfo*(sType: VkStructureType, pNext: pointer = nil, clearValue: clearValue, ) -proc newVkRenderingFragmentShadingRateAttachmentInfoKHR*(sType: VkStructureType, pNext: pointer = nil, imageView: VkImageView, imageLayout: VkImageLayout, shadingRateAttachmentTexelSize: VkExtent2D): VkRenderingFragmentShadingRateAttachmentInfoKHR = +proc newVkRenderingFragmentShadingRateAttachmentInfoKHR*(sType: VkStructureType = VkStructureType.RenderingFragmentShadingRateAttachmentInfoKHR, pNext: pointer = nil, imageView: VkImageView, imageLayout: VkImageLayout, shadingRateAttachmentTexelSize: VkExtent2D): VkRenderingFragmentShadingRateAttachmentInfoKHR = result = VkRenderingFragmentShadingRateAttachmentInfoKHR( sType: sType, pNext: pNext, @@ -18831,7 +20080,7 @@ proc newVkRenderingFragmentShadingRateAttachmentInfoKHR*(sType: VkStructureType, shadingRateAttachmentTexelSize: shadingRateAttachmentTexelSize, ) -proc newVkRenderingFragmentDensityMapAttachmentInfoEXT*(sType: VkStructureType, pNext: pointer = nil, imageView: VkImageView, imageLayout: VkImageLayout): VkRenderingFragmentDensityMapAttachmentInfoEXT = +proc newVkRenderingFragmentDensityMapAttachmentInfoEXT*(sType: VkStructureType = VkStructureType.RenderingFragmentDensityMapAttachmentInfoEXT, pNext: pointer = nil, imageView: VkImageView, imageLayout: VkImageLayout): VkRenderingFragmentDensityMapAttachmentInfoEXT = result = VkRenderingFragmentDensityMapAttachmentInfoEXT( sType: sType, pNext: pNext, @@ -18859,7 +20108,7 @@ proc newVkCommandBufferInheritanceRenderingInfo*(sType: VkStructureType, pNext: rasterizationSamples: rasterizationSamples, ) -proc newVkAttachmentSampleCountInfoAMD*(sType: VkStructureType, pNext: pointer = nil, colorAttachmentCount: uint32, pColorAttachmentSamples: ptr VkSampleCountFlagBits, depthStencilAttachmentSamples: VkSampleCountFlagBits): VkAttachmentSampleCountInfoAMD = +proc newVkAttachmentSampleCountInfoAMD*(sType: VkStructureType = VkStructureType.AttachmentSampleCountInfoAMD, pNext: pointer = nil, colorAttachmentCount: uint32, pColorAttachmentSamples: ptr VkSampleCountFlagBits, depthStencilAttachmentSamples: VkSampleCountFlagBits): VkAttachmentSampleCountInfoAMD = result = VkAttachmentSampleCountInfoAMD( sType: sType, pNext: pNext, @@ -18868,7 +20117,7 @@ proc newVkAttachmentSampleCountInfoAMD*(sType: VkStructureType, pNext: pointer = depthStencilAttachmentSamples: depthStencilAttachmentSamples, ) -proc newVkMultiviewPerViewAttributesInfoNVX*(sType: VkStructureType, pNext: pointer = nil, perViewAttributes: VkBool32, perViewAttributesPositionXOnly: VkBool32): VkMultiviewPerViewAttributesInfoNVX = +proc newVkMultiviewPerViewAttributesInfoNVX*(sType: VkStructureType = VkStructureType.MultiviewPerViewAttributesInfoNVX, pNext: pointer = nil, perViewAttributes: VkBool32, perViewAttributesPositionXOnly: VkBool32): VkMultiviewPerViewAttributesInfoNVX = result = VkMultiviewPerViewAttributesInfoNVX( sType: sType, pNext: pNext, @@ -18876,21 +20125,21 @@ proc newVkMultiviewPerViewAttributesInfoNVX*(sType: VkStructureType, pNext: poin perViewAttributesPositionXOnly: perViewAttributesPositionXOnly, ) -proc newVkPhysicalDeviceImageViewMinLodFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, minLod: VkBool32): VkPhysicalDeviceImageViewMinLodFeaturesEXT = +proc newVkPhysicalDeviceImageViewMinLodFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceImageViewMinLodFeaturesEXT, pNext: pointer = nil, minLod: VkBool32): VkPhysicalDeviceImageViewMinLodFeaturesEXT = result = VkPhysicalDeviceImageViewMinLodFeaturesEXT( sType: sType, pNext: pNext, minLod: minLod, ) -proc newVkImageViewMinLodCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, minLod: float32): VkImageViewMinLodCreateInfoEXT = +proc newVkImageViewMinLodCreateInfoEXT*(sType: VkStructureType = VkStructureType.ImageViewMinLodCreateInfoEXT, pNext: pointer = nil, minLod: float32): VkImageViewMinLodCreateInfoEXT = result = VkImageViewMinLodCreateInfoEXT( sType: sType, pNext: pNext, minLod: minLod, ) -proc newVkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, rasterizationOrderColorAttachmentAccess: VkBool32, rasterizationOrderDepthAttachmentAccess: VkBool32, rasterizationOrderStencilAttachmentAccess: VkBool32): VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT = +proc newVkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT, pNext: pointer = nil, rasterizationOrderColorAttachmentAccess: VkBool32, rasterizationOrderDepthAttachmentAccess: VkBool32, rasterizationOrderStencilAttachmentAccess: VkBool32): VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT = result = VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT( sType: sType, pNext: pNext, @@ -18899,21 +20148,21 @@ proc newVkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT*(sType: Vk rasterizationOrderStencilAttachmentAccess: rasterizationOrderStencilAttachmentAccess, ) -proc newVkPhysicalDeviceLinearColorAttachmentFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, linearColorAttachment: VkBool32): VkPhysicalDeviceLinearColorAttachmentFeaturesNV = +proc newVkPhysicalDeviceLinearColorAttachmentFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceLinearColorAttachmentFeaturesNV, pNext: pointer = nil, linearColorAttachment: VkBool32): VkPhysicalDeviceLinearColorAttachmentFeaturesNV = result = VkPhysicalDeviceLinearColorAttachmentFeaturesNV( sType: sType, pNext: pNext, linearColorAttachment: linearColorAttachment, ) -proc newVkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, graphicsPipelineLibrary: VkBool32): VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT = +proc newVkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT, pNext: pointer = nil, graphicsPipelineLibrary: VkBool32): VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT = result = VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT( sType: sType, pNext: pNext, graphicsPipelineLibrary: graphicsPipelineLibrary, ) -proc newVkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, graphicsPipelineLibraryFastLinking: VkBool32, graphicsPipelineLibraryIndependentInterpolationDecoration: VkBool32): VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT = +proc newVkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT, pNext: pointer = nil, graphicsPipelineLibraryFastLinking: VkBool32, graphicsPipelineLibraryIndependentInterpolationDecoration: VkBool32): VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT = result = VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT( sType: sType, pNext: pNext, @@ -18921,21 +20170,21 @@ proc newVkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT*(sType: VkStructure graphicsPipelineLibraryIndependentInterpolationDecoration: graphicsPipelineLibraryIndependentInterpolationDecoration, ) -proc newVkGraphicsPipelineLibraryCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkGraphicsPipelineLibraryFlagsEXT = 0.VkGraphicsPipelineLibraryFlagsEXT): VkGraphicsPipelineLibraryCreateInfoEXT = +proc newVkGraphicsPipelineLibraryCreateInfoEXT*(sType: VkStructureType = VkStructureType.GraphicsPipelineLibraryCreateInfoEXT, pNext: pointer = nil, flags: VkGraphicsPipelineLibraryFlagsEXT = 0.VkGraphicsPipelineLibraryFlagsEXT): VkGraphicsPipelineLibraryCreateInfoEXT = result = VkGraphicsPipelineLibraryCreateInfoEXT( sType: sType, pNext: pNext, flags: flags, ) -proc newVkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE*(sType: VkStructureType, pNext: pointer = nil, descriptorSetHostMapping: VkBool32): VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE = +proc newVkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE*(sType: VkStructureType = VkStructureType.PhysicalDeviceDescriptorSetHostMappingFeaturesVALVE, pNext: pointer = nil, descriptorSetHostMapping: VkBool32): VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE = result = VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE( sType: sType, pNext: pNext, descriptorSetHostMapping: descriptorSetHostMapping, ) -proc newVkDescriptorSetBindingReferenceVALVE*(sType: VkStructureType, pNext: pointer = nil, descriptorSetLayout: VkDescriptorSetLayout, binding: uint32): VkDescriptorSetBindingReferenceVALVE = +proc newVkDescriptorSetBindingReferenceVALVE*(sType: VkStructureType = VkStructureType.DescriptorSetBindingReferenceVALVE, pNext: pointer = nil, descriptorSetLayout: VkDescriptorSetLayout, binding: uint32): VkDescriptorSetBindingReferenceVALVE = result = VkDescriptorSetBindingReferenceVALVE( sType: sType, pNext: pNext, @@ -18943,7 +20192,7 @@ proc newVkDescriptorSetBindingReferenceVALVE*(sType: VkStructureType, pNext: poi binding: binding, ) -proc newVkDescriptorSetLayoutHostMappingInfoVALVE*(sType: VkStructureType, pNext: pointer = nil, descriptorOffset: uint, descriptorSize: uint32): VkDescriptorSetLayoutHostMappingInfoVALVE = +proc newVkDescriptorSetLayoutHostMappingInfoVALVE*(sType: VkStructureType = VkStructureType.DescriptorSetLayoutHostMappingInfoVALVE, pNext: pointer = nil, descriptorOffset: uint, descriptorSize: uint32): VkDescriptorSetLayoutHostMappingInfoVALVE = result = VkDescriptorSetLayoutHostMappingInfoVALVE( sType: sType, pNext: pNext, @@ -18951,7 +20200,7 @@ proc newVkDescriptorSetLayoutHostMappingInfoVALVE*(sType: VkStructureType, pNext descriptorSize: descriptorSize, ) -proc newVkPhysicalDeviceNestedCommandBufferFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, nestedCommandBuffer: VkBool32, nestedCommandBufferRendering: VkBool32, nestedCommandBufferSimultaneousUse: VkBool32): VkPhysicalDeviceNestedCommandBufferFeaturesEXT = +proc newVkPhysicalDeviceNestedCommandBufferFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceNestedCommandBufferFeaturesEXT, pNext: pointer = nil, nestedCommandBuffer: VkBool32, nestedCommandBufferRendering: VkBool32, nestedCommandBufferSimultaneousUse: VkBool32): VkPhysicalDeviceNestedCommandBufferFeaturesEXT = result = VkPhysicalDeviceNestedCommandBufferFeaturesEXT( sType: sType, pNext: pNext, @@ -18960,28 +20209,28 @@ proc newVkPhysicalDeviceNestedCommandBufferFeaturesEXT*(sType: VkStructureType, nestedCommandBufferSimultaneousUse: nestedCommandBufferSimultaneousUse, ) -proc newVkPhysicalDeviceNestedCommandBufferPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxCommandBufferNestingLevel: uint32): VkPhysicalDeviceNestedCommandBufferPropertiesEXT = +proc newVkPhysicalDeviceNestedCommandBufferPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceNestedCommandBufferPropertiesEXT, pNext: pointer = nil, maxCommandBufferNestingLevel: uint32): VkPhysicalDeviceNestedCommandBufferPropertiesEXT = result = VkPhysicalDeviceNestedCommandBufferPropertiesEXT( sType: sType, pNext: pNext, maxCommandBufferNestingLevel: maxCommandBufferNestingLevel, ) -proc newVkPhysicalDeviceShaderModuleIdentifierFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderModuleIdentifier: VkBool32): VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT = +proc newVkPhysicalDeviceShaderModuleIdentifierFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderModuleIdentifierFeaturesEXT, pNext: pointer = nil, shaderModuleIdentifier: VkBool32): VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT = result = VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT( sType: sType, pNext: pNext, shaderModuleIdentifier: shaderModuleIdentifier, ) -proc newVkPhysicalDeviceShaderModuleIdentifierPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderModuleIdentifierAlgorithmUUID: array[VK_UUID_SIZE, uint8]): VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT = +proc newVkPhysicalDeviceShaderModuleIdentifierPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderModuleIdentifierPropertiesEXT, pNext: pointer = nil, shaderModuleIdentifierAlgorithmUUID: array[VK_UUID_SIZE, uint8]): VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT = result = VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT( sType: sType, pNext: pNext, shaderModuleIdentifierAlgorithmUUID: shaderModuleIdentifierAlgorithmUUID, ) -proc newVkPipelineShaderStageModuleIdentifierCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, identifierSize: uint32, pIdentifier: ptr uint8): VkPipelineShaderStageModuleIdentifierCreateInfoEXT = +proc newVkPipelineShaderStageModuleIdentifierCreateInfoEXT*(sType: VkStructureType = VkStructureType.PipelineShaderStageModuleIdentifierCreateInfoEXT, pNext: pointer = nil, identifierSize: uint32, pIdentifier: ptr uint8): VkPipelineShaderStageModuleIdentifierCreateInfoEXT = result = VkPipelineShaderStageModuleIdentifierCreateInfoEXT( sType: sType, pNext: pNext, @@ -18989,7 +20238,7 @@ proc newVkPipelineShaderStageModuleIdentifierCreateInfoEXT*(sType: VkStructureTy pIdentifier: pIdentifier, ) -proc newVkShaderModuleIdentifierEXT*(sType: VkStructureType, pNext: pointer = nil, identifierSize: uint32, identifier: array[VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT, uint8]): VkShaderModuleIdentifierEXT = +proc newVkShaderModuleIdentifierEXT*(sType: VkStructureType = VkStructureType.ShaderModuleIdentifierEXT, pNext: pointer = nil, identifierSize: uint32, identifier: array[VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT, uint8]): VkShaderModuleIdentifierEXT = result = VkShaderModuleIdentifierEXT( sType: sType, pNext: pNext, @@ -18997,7 +20246,7 @@ proc newVkShaderModuleIdentifierEXT*(sType: VkStructureType, pNext: pointer = ni identifier: identifier, ) -proc newVkImageCompressionControlEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkImageCompressionFlagsEXT = 0.VkImageCompressionFlagsEXT, compressionControlPlaneCount: uint32, pFixedRateFlags: ptr VkImageCompressionFixedRateFlagsEXT): VkImageCompressionControlEXT = +proc newVkImageCompressionControlEXT*(sType: VkStructureType = VkStructureType.ImageCompressionControlEXT, pNext: pointer = nil, flags: VkImageCompressionFlagsEXT = 0.VkImageCompressionFlagsEXT, compressionControlPlaneCount: uint32, pFixedRateFlags: ptr VkImageCompressionFixedRateFlagsEXT): VkImageCompressionControlEXT = result = VkImageCompressionControlEXT( sType: sType, pNext: pNext, @@ -19006,14 +20255,14 @@ proc newVkImageCompressionControlEXT*(sType: VkStructureType, pNext: pointer = n pFixedRateFlags: pFixedRateFlags, ) -proc newVkPhysicalDeviceImageCompressionControlFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, imageCompressionControl: VkBool32): VkPhysicalDeviceImageCompressionControlFeaturesEXT = +proc newVkPhysicalDeviceImageCompressionControlFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceImageCompressionControlFeaturesEXT, pNext: pointer = nil, imageCompressionControl: VkBool32): VkPhysicalDeviceImageCompressionControlFeaturesEXT = result = VkPhysicalDeviceImageCompressionControlFeaturesEXT( sType: sType, pNext: pNext, imageCompressionControl: imageCompressionControl, ) -proc newVkImageCompressionPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, imageCompressionFlags: VkImageCompressionFlagsEXT, imageCompressionFixedRateFlags: VkImageCompressionFixedRateFlagsEXT): VkImageCompressionPropertiesEXT = +proc newVkImageCompressionPropertiesEXT*(sType: VkStructureType = VkStructureType.ImageCompressionPropertiesEXT, pNext: pointer = nil, imageCompressionFlags: VkImageCompressionFlagsEXT, imageCompressionFixedRateFlags: VkImageCompressionFixedRateFlagsEXT): VkImageCompressionPropertiesEXT = result = VkImageCompressionPropertiesEXT( sType: sType, pNext: pNext, @@ -19021,28 +20270,28 @@ proc newVkImageCompressionPropertiesEXT*(sType: VkStructureType, pNext: pointer imageCompressionFixedRateFlags: imageCompressionFixedRateFlags, ) -proc newVkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, imageCompressionControlSwapchain: VkBool32): VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT = +proc newVkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceImageCompressionControlSwapchainFeaturesEXT, pNext: pointer = nil, imageCompressionControlSwapchain: VkBool32): VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT = result = VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT( sType: sType, pNext: pNext, imageCompressionControlSwapchain: imageCompressionControlSwapchain, ) -proc newVkImageSubresource2KHR*(sType: VkStructureType, pNext: pointer = nil, imageSubresource: VkImageSubresource): VkImageSubresource2KHR = +proc newVkImageSubresource2KHR*(sType: VkStructureType = VkStructureType.ImageSubresource2KHR, pNext: pointer = nil, imageSubresource: VkImageSubresource): VkImageSubresource2KHR = result = VkImageSubresource2KHR( sType: sType, pNext: pNext, imageSubresource: imageSubresource, ) -proc newVkSubresourceLayout2KHR*(sType: VkStructureType, pNext: pointer = nil, subresourceLayout: VkSubresourceLayout): VkSubresourceLayout2KHR = +proc newVkSubresourceLayout2KHR*(sType: VkStructureType = VkStructureType.SubresourceLayout2KHR, pNext: pointer = nil, subresourceLayout: VkSubresourceLayout): VkSubresourceLayout2KHR = result = VkSubresourceLayout2KHR( sType: sType, pNext: pNext, subresourceLayout: subresourceLayout, ) -proc newVkRenderPassCreationControlEXT*(sType: VkStructureType, pNext: pointer = nil, disallowMerging: VkBool32): VkRenderPassCreationControlEXT = +proc newVkRenderPassCreationControlEXT*(sType: VkStructureType = VkStructureType.RenderPassCreationControlEXT, pNext: pointer = nil, disallowMerging: VkBool32): VkRenderPassCreationControlEXT = result = VkRenderPassCreationControlEXT( sType: sType, pNext: pNext, @@ -19054,7 +20303,7 @@ proc newVkRenderPassCreationFeedbackInfoEXT*(postMergeSubpassCount: uint32): VkR postMergeSubpassCount: postMergeSubpassCount, ) -proc newVkRenderPassCreationFeedbackCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, pRenderPassFeedback: ptr VkRenderPassCreationFeedbackInfoEXT): VkRenderPassCreationFeedbackCreateInfoEXT = +proc newVkRenderPassCreationFeedbackCreateInfoEXT*(sType: VkStructureType = VkStructureType.RenderPassCreationFeedbackCreateInfoEXT, pNext: pointer = nil, pRenderPassFeedback: ptr VkRenderPassCreationFeedbackInfoEXT): VkRenderPassCreationFeedbackCreateInfoEXT = result = VkRenderPassCreationFeedbackCreateInfoEXT( sType: sType, pNext: pNext, @@ -19068,21 +20317,21 @@ proc newVkRenderPassSubpassFeedbackInfoEXT*(subpassMergeStatus: VkSubpassMergeSt postMergeIndex: postMergeIndex, ) -proc newVkRenderPassSubpassFeedbackCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, pSubpassFeedback: ptr VkRenderPassSubpassFeedbackInfoEXT): VkRenderPassSubpassFeedbackCreateInfoEXT = +proc newVkRenderPassSubpassFeedbackCreateInfoEXT*(sType: VkStructureType = VkStructureType.RenderPassSubpassFeedbackCreateInfoEXT, pNext: pointer = nil, pSubpassFeedback: ptr VkRenderPassSubpassFeedbackInfoEXT): VkRenderPassSubpassFeedbackCreateInfoEXT = result = VkRenderPassSubpassFeedbackCreateInfoEXT( sType: sType, pNext: pNext, pSubpassFeedback: pSubpassFeedback, ) -proc newVkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, subpassMergeFeedback: VkBool32): VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT = +proc newVkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceSubpassMergeFeedbackFeaturesEXT, pNext: pointer = nil, subpassMergeFeedback: VkBool32): VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT = result = VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT( sType: sType, pNext: pNext, subpassMergeFeedback: subpassMergeFeedback, ) -proc newVkMicromapBuildInfoEXT*(sType: VkStructureType, pNext: pointer = nil, `type`: VkMicromapTypeEXT, flags: VkBuildMicromapFlagsEXT = 0.VkBuildMicromapFlagsEXT, mode: VkBuildMicromapModeEXT, dstMicromap: VkMicromapEXT, usageCountsCount: uint32, pUsageCounts: ptr VkMicromapUsageEXT, ppUsageCounts: ptr ptr VkMicromapUsageEXT, data: VkDeviceOrHostAddressConstKHR, scratchData: VkDeviceOrHostAddressKHR, triangleArray: VkDeviceOrHostAddressConstKHR, triangleArrayStride: VkDeviceSize): VkMicromapBuildInfoEXT = +proc newVkMicromapBuildInfoEXT*(sType: VkStructureType = VkStructureType.MicromapBuildInfoEXT, pNext: pointer = nil, `type`: VkMicromapTypeEXT, flags: VkBuildMicromapFlagsEXT = 0.VkBuildMicromapFlagsEXT, mode: VkBuildMicromapModeEXT, dstMicromap: VkMicromapEXT, usageCountsCount: uint32, pUsageCounts: ptr VkMicromapUsageEXT, ppUsageCounts: ptr ptr VkMicromapUsageEXT, data: VkDeviceOrHostAddressConstKHR, scratchData: VkDeviceOrHostAddressKHR, triangleArray: VkDeviceOrHostAddressConstKHR, triangleArrayStride: VkDeviceSize): VkMicromapBuildInfoEXT = result = VkMicromapBuildInfoEXT( sType: sType, pNext: pNext, @@ -19099,7 +20348,7 @@ proc newVkMicromapBuildInfoEXT*(sType: VkStructureType, pNext: pointer = nil, `t triangleArrayStride: triangleArrayStride, ) -proc newVkMicromapCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, createFlags: VkMicromapCreateFlagsEXT, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize, `type`: VkMicromapTypeEXT, deviceAddress: VkDeviceAddress): VkMicromapCreateInfoEXT = +proc newVkMicromapCreateInfoEXT*(sType: VkStructureType = VkStructureType.MicromapCreateInfoEXT, pNext: pointer = nil, createFlags: VkMicromapCreateFlagsEXT, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize, `type`: VkMicromapTypeEXT, deviceAddress: VkDeviceAddress): VkMicromapCreateInfoEXT = result = VkMicromapCreateInfoEXT( sType: sType, pNext: pNext, @@ -19111,14 +20360,14 @@ proc newVkMicromapCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, c deviceAddress: deviceAddress, ) -proc newVkMicromapVersionInfoEXT*(sType: VkStructureType, pNext: pointer = nil, pVersionData: ptr uint8): VkMicromapVersionInfoEXT = +proc newVkMicromapVersionInfoEXT*(sType: VkStructureType = VkStructureType.MicromapVersionInfoEXT, pNext: pointer = nil, pVersionData: ptr uint8): VkMicromapVersionInfoEXT = result = VkMicromapVersionInfoEXT( sType: sType, pNext: pNext, pVersionData: pVersionData, ) -proc newVkCopyMicromapInfoEXT*(sType: VkStructureType, pNext: pointer = nil, src: VkMicromapEXT, dst: VkMicromapEXT, mode: VkCopyMicromapModeEXT): VkCopyMicromapInfoEXT = +proc newVkCopyMicromapInfoEXT*(sType: VkStructureType = VkStructureType.CopyMicromapInfoEXT, pNext: pointer = nil, src: VkMicromapEXT, dst: VkMicromapEXT, mode: VkCopyMicromapModeEXT): VkCopyMicromapInfoEXT = result = VkCopyMicromapInfoEXT( sType: sType, pNext: pNext, @@ -19127,7 +20376,7 @@ proc newVkCopyMicromapInfoEXT*(sType: VkStructureType, pNext: pointer = nil, src mode: mode, ) -proc newVkCopyMicromapToMemoryInfoEXT*(sType: VkStructureType, pNext: pointer = nil, src: VkMicromapEXT, dst: VkDeviceOrHostAddressKHR, mode: VkCopyMicromapModeEXT): VkCopyMicromapToMemoryInfoEXT = +proc newVkCopyMicromapToMemoryInfoEXT*(sType: VkStructureType = VkStructureType.CopyMicromapToMemoryInfoEXT, pNext: pointer = nil, src: VkMicromapEXT, dst: VkDeviceOrHostAddressKHR, mode: VkCopyMicromapModeEXT): VkCopyMicromapToMemoryInfoEXT = result = VkCopyMicromapToMemoryInfoEXT( sType: sType, pNext: pNext, @@ -19136,7 +20385,7 @@ proc newVkCopyMicromapToMemoryInfoEXT*(sType: VkStructureType, pNext: pointer = mode: mode, ) -proc newVkCopyMemoryToMicromapInfoEXT*(sType: VkStructureType, pNext: pointer = nil, src: VkDeviceOrHostAddressConstKHR, dst: VkMicromapEXT, mode: VkCopyMicromapModeEXT): VkCopyMemoryToMicromapInfoEXT = +proc newVkCopyMemoryToMicromapInfoEXT*(sType: VkStructureType = VkStructureType.CopyMemoryToMicromapInfoEXT, pNext: pointer = nil, src: VkDeviceOrHostAddressConstKHR, dst: VkMicromapEXT, mode: VkCopyMicromapModeEXT): VkCopyMemoryToMicromapInfoEXT = result = VkCopyMemoryToMicromapInfoEXT( sType: sType, pNext: pNext, @@ -19145,7 +20394,7 @@ proc newVkCopyMemoryToMicromapInfoEXT*(sType: VkStructureType, pNext: pointer = mode: mode, ) -proc newVkMicromapBuildSizesInfoEXT*(sType: VkStructureType, pNext: pointer = nil, micromapSize: VkDeviceSize, buildScratchSize: VkDeviceSize, discardable: VkBool32): VkMicromapBuildSizesInfoEXT = +proc newVkMicromapBuildSizesInfoEXT*(sType: VkStructureType = VkStructureType.MicromapBuildSizesInfoEXT, pNext: pointer = nil, micromapSize: VkDeviceSize, buildScratchSize: VkDeviceSize, discardable: VkBool32): VkMicromapBuildSizesInfoEXT = result = VkMicromapBuildSizesInfoEXT( sType: sType, pNext: pNext, @@ -19168,7 +20417,7 @@ proc newVkMicromapTriangleEXT*(dataOffset: uint32, subdivisionLevel: uint16, for format: format, ) -proc newVkPhysicalDeviceOpacityMicromapFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, micromap: VkBool32, micromapCaptureReplay: VkBool32, micromapHostCommands: VkBool32): VkPhysicalDeviceOpacityMicromapFeaturesEXT = +proc newVkPhysicalDeviceOpacityMicromapFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceOpacityMicromapFeaturesEXT, pNext: pointer = nil, micromap: VkBool32, micromapCaptureReplay: VkBool32, micromapHostCommands: VkBool32): VkPhysicalDeviceOpacityMicromapFeaturesEXT = result = VkPhysicalDeviceOpacityMicromapFeaturesEXT( sType: sType, pNext: pNext, @@ -19177,7 +20426,7 @@ proc newVkPhysicalDeviceOpacityMicromapFeaturesEXT*(sType: VkStructureType, pNex micromapHostCommands: micromapHostCommands, ) -proc newVkPhysicalDeviceOpacityMicromapPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, maxOpacity2StateSubdivisionLevel: uint32, maxOpacity4StateSubdivisionLevel: uint32): VkPhysicalDeviceOpacityMicromapPropertiesEXT = +proc newVkPhysicalDeviceOpacityMicromapPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceOpacityMicromapPropertiesEXT, pNext: pointer = nil, maxOpacity2StateSubdivisionLevel: uint32, maxOpacity4StateSubdivisionLevel: uint32): VkPhysicalDeviceOpacityMicromapPropertiesEXT = result = VkPhysicalDeviceOpacityMicromapPropertiesEXT( sType: sType, pNext: pNext, @@ -19185,7 +20434,7 @@ proc newVkPhysicalDeviceOpacityMicromapPropertiesEXT*(sType: VkStructureType, pN maxOpacity4StateSubdivisionLevel: maxOpacity4StateSubdivisionLevel, ) -proc newVkAccelerationStructureTrianglesOpacityMicromapEXT*(sType: VkStructureType, pNext: pointer = nil, indexType: VkIndexType, indexBuffer: VkDeviceOrHostAddressConstKHR, indexStride: VkDeviceSize, baseTriangle: uint32, usageCountsCount: uint32, pUsageCounts: ptr VkMicromapUsageEXT, ppUsageCounts: ptr ptr VkMicromapUsageEXT, micromap: VkMicromapEXT): VkAccelerationStructureTrianglesOpacityMicromapEXT = +proc newVkAccelerationStructureTrianglesOpacityMicromapEXT*(sType: VkStructureType = VkStructureType.AccelerationStructureTrianglesOpacityMicromapEXT, pNext: pointer = nil, indexType: VkIndexType, indexBuffer: VkDeviceOrHostAddressConstKHR, indexStride: VkDeviceSize, baseTriangle: uint32, usageCountsCount: uint32, pUsageCounts: ptr VkMicromapUsageEXT, ppUsageCounts: ptr ptr VkMicromapUsageEXT, micromap: VkMicromapEXT): VkAccelerationStructureTrianglesOpacityMicromapEXT = result = VkAccelerationStructureTrianglesOpacityMicromapEXT( sType: sType, pNext: pNext, @@ -19199,21 +20448,21 @@ proc newVkAccelerationStructureTrianglesOpacityMicromapEXT*(sType: VkStructureTy micromap: micromap, ) -proc newVkPhysicalDeviceDisplacementMicromapFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, displacementMicromap: VkBool32): VkPhysicalDeviceDisplacementMicromapFeaturesNV = +proc newVkPhysicalDeviceDisplacementMicromapFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceDisplacementMicromapFeaturesNV, pNext: pointer = nil, displacementMicromap: VkBool32): VkPhysicalDeviceDisplacementMicromapFeaturesNV = result = VkPhysicalDeviceDisplacementMicromapFeaturesNV( sType: sType, pNext: pNext, displacementMicromap: displacementMicromap, ) -proc newVkPhysicalDeviceDisplacementMicromapPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, maxDisplacementMicromapSubdivisionLevel: uint32): VkPhysicalDeviceDisplacementMicromapPropertiesNV = +proc newVkPhysicalDeviceDisplacementMicromapPropertiesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceDisplacementMicromapPropertiesNV, pNext: pointer = nil, maxDisplacementMicromapSubdivisionLevel: uint32): VkPhysicalDeviceDisplacementMicromapPropertiesNV = result = VkPhysicalDeviceDisplacementMicromapPropertiesNV( sType: sType, pNext: pNext, maxDisplacementMicromapSubdivisionLevel: maxDisplacementMicromapSubdivisionLevel, ) -proc newVkAccelerationStructureTrianglesDisplacementMicromapNV*(sType: VkStructureType, pNext: pointer = nil, displacementBiasAndScaleFormat: VkFormat, displacementVectorFormat: VkFormat, displacementBiasAndScaleBuffer: VkDeviceOrHostAddressConstKHR, displacementBiasAndScaleStride: VkDeviceSize, displacementVectorBuffer: VkDeviceOrHostAddressConstKHR, displacementVectorStride: VkDeviceSize, displacedMicromapPrimitiveFlags: VkDeviceOrHostAddressConstKHR, displacedMicromapPrimitiveFlagsStride: VkDeviceSize, indexType: VkIndexType, indexBuffer: VkDeviceOrHostAddressConstKHR, indexStride: VkDeviceSize, baseTriangle: uint32, usageCountsCount: uint32, pUsageCounts: ptr VkMicromapUsageEXT, ppUsageCounts: ptr ptr VkMicromapUsageEXT, micromap: VkMicromapEXT): VkAccelerationStructureTrianglesDisplacementMicromapNV = +proc newVkAccelerationStructureTrianglesDisplacementMicromapNV*(sType: VkStructureType = VkStructureType.AccelerationStructureTrianglesDisplacementMicromapNV, pNext: pointer = nil, displacementBiasAndScaleFormat: VkFormat, displacementVectorFormat: VkFormat, displacementBiasAndScaleBuffer: VkDeviceOrHostAddressConstKHR, displacementBiasAndScaleStride: VkDeviceSize, displacementVectorBuffer: VkDeviceOrHostAddressConstKHR, displacementVectorStride: VkDeviceSize, displacedMicromapPrimitiveFlags: VkDeviceOrHostAddressConstKHR, displacedMicromapPrimitiveFlagsStride: VkDeviceSize, indexType: VkIndexType, indexBuffer: VkDeviceOrHostAddressConstKHR, indexStride: VkDeviceSize, baseTriangle: uint32, usageCountsCount: uint32, pUsageCounts: ptr VkMicromapUsageEXT, ppUsageCounts: ptr ptr VkMicromapUsageEXT, micromap: VkMicromapEXT): VkAccelerationStructureTrianglesDisplacementMicromapNV = result = VkAccelerationStructureTrianglesDisplacementMicromapNV( sType: sType, pNext: pNext, @@ -19235,55 +20484,55 @@ proc newVkAccelerationStructureTrianglesDisplacementMicromapNV*(sType: VkStructu micromap: micromap, ) -proc newVkPipelinePropertiesIdentifierEXT*(sType: VkStructureType, pNext: pointer = nil, pipelineIdentifier: array[VK_UUID_SIZE, uint8]): VkPipelinePropertiesIdentifierEXT = +proc newVkPipelinePropertiesIdentifierEXT*(sType: VkStructureType = VkStructureType.PipelinePropertiesIdentifierEXT, pNext: pointer = nil, pipelineIdentifier: array[VK_UUID_SIZE, uint8]): VkPipelinePropertiesIdentifierEXT = result = VkPipelinePropertiesIdentifierEXT( sType: sType, pNext: pNext, pipelineIdentifier: pipelineIdentifier, ) -proc newVkPhysicalDevicePipelinePropertiesFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, pipelinePropertiesIdentifier: VkBool32): VkPhysicalDevicePipelinePropertiesFeaturesEXT = +proc newVkPhysicalDevicePipelinePropertiesFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDevicePipelinePropertiesFeaturesEXT, pNext: pointer = nil, pipelinePropertiesIdentifier: VkBool32): VkPhysicalDevicePipelinePropertiesFeaturesEXT = result = VkPhysicalDevicePipelinePropertiesFeaturesEXT( sType: sType, pNext: pNext, pipelinePropertiesIdentifier: pipelinePropertiesIdentifier, ) -proc newVkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD*(sType: VkStructureType, pNext: pointer = nil, shaderEarlyAndLateFragmentTests: VkBool32): VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD = +proc newVkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD, pNext: pointer = nil, shaderEarlyAndLateFragmentTests: VkBool32): VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD = result = VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD( sType: sType, pNext: pNext, shaderEarlyAndLateFragmentTests: shaderEarlyAndLateFragmentTests, ) -proc newVkExternalMemoryAcquireUnmodifiedEXT*(sType: VkStructureType, pNext: pointer = nil, acquireUnmodifiedMemory: VkBool32): VkExternalMemoryAcquireUnmodifiedEXT = +proc newVkExternalMemoryAcquireUnmodifiedEXT*(sType: VkStructureType = VkStructureType.ExternalMemoryAcquireUnmodifiedEXT, pNext: pointer = nil, acquireUnmodifiedMemory: VkBool32): VkExternalMemoryAcquireUnmodifiedEXT = result = VkExternalMemoryAcquireUnmodifiedEXT( sType: sType, pNext: pNext, acquireUnmodifiedMemory: acquireUnmodifiedMemory, ) -proc newVkExportMetalObjectCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, exportObjectType: VkExportMetalObjectTypeFlagBitsEXT): VkExportMetalObjectCreateInfoEXT = +proc newVkExportMetalObjectCreateInfoEXT*(sType: VkStructureType = VkStructureType.ExportMetalObjectCreateInfoEXT, pNext: pointer = nil, exportObjectType: VkExportMetalObjectTypeFlagBitsEXT): VkExportMetalObjectCreateInfoEXT = result = VkExportMetalObjectCreateInfoEXT( sType: sType, pNext: pNext, exportObjectType: exportObjectType, ) -proc newVkExportMetalObjectsInfoEXT*(sType: VkStructureType, pNext: pointer = nil): VkExportMetalObjectsInfoEXT = +proc newVkExportMetalObjectsInfoEXT*(sType: VkStructureType = VkStructureType.ExportMetalObjectsInfoEXT, pNext: pointer = nil): VkExportMetalObjectsInfoEXT = result = VkExportMetalObjectsInfoEXT( sType: sType, pNext: pNext, ) -proc newVkExportMetalDeviceInfoEXT*(sType: VkStructureType, pNext: pointer = nil, mtlDevice: MTLDevice_id): VkExportMetalDeviceInfoEXT = +proc newVkExportMetalDeviceInfoEXT*(sType: VkStructureType = VkStructureType.ExportMetalDeviceInfoEXT, pNext: pointer = nil, mtlDevice: MTLDevice_id): VkExportMetalDeviceInfoEXT = result = VkExportMetalDeviceInfoEXT( sType: sType, pNext: pNext, mtlDevice: mtlDevice, ) -proc newVkExportMetalCommandQueueInfoEXT*(sType: VkStructureType, pNext: pointer = nil, queue: VkQueue, mtlCommandQueue: MTLCommandQueue_id): VkExportMetalCommandQueueInfoEXT = +proc newVkExportMetalCommandQueueInfoEXT*(sType: VkStructureType = VkStructureType.ExportMetalCommandQueueInfoEXT, pNext: pointer = nil, queue: VkQueue, mtlCommandQueue: MTLCommandQueue_id): VkExportMetalCommandQueueInfoEXT = result = VkExportMetalCommandQueueInfoEXT( sType: sType, pNext: pNext, @@ -19291,7 +20540,7 @@ proc newVkExportMetalCommandQueueInfoEXT*(sType: VkStructureType, pNext: pointer mtlCommandQueue: mtlCommandQueue, ) -proc newVkExportMetalBufferInfoEXT*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory, mtlBuffer: MTLBuffer_id): VkExportMetalBufferInfoEXT = +proc newVkExportMetalBufferInfoEXT*(sType: VkStructureType = VkStructureType.ExportMetalBufferInfoEXT, pNext: pointer = nil, memory: VkDeviceMemory, mtlBuffer: MTLBuffer_id): VkExportMetalBufferInfoEXT = result = VkExportMetalBufferInfoEXT( sType: sType, pNext: pNext, @@ -19299,14 +20548,14 @@ proc newVkExportMetalBufferInfoEXT*(sType: VkStructureType, pNext: pointer = nil mtlBuffer: mtlBuffer, ) -proc newVkImportMetalBufferInfoEXT*(sType: VkStructureType, pNext: pointer = nil, mtlBuffer: MTLBuffer_id): VkImportMetalBufferInfoEXT = +proc newVkImportMetalBufferInfoEXT*(sType: VkStructureType = VkStructureType.ImportMetalBufferInfoEXT, pNext: pointer = nil, mtlBuffer: MTLBuffer_id): VkImportMetalBufferInfoEXT = result = VkImportMetalBufferInfoEXT( sType: sType, pNext: pNext, mtlBuffer: mtlBuffer, ) -proc newVkExportMetalTextureInfoEXT*(sType: VkStructureType, pNext: pointer = nil, image: VkImage, imageView: VkImageView, bufferView: VkBufferView, plane: VkImageAspectFlagBits, mtlTexture: MTLTexture_id): VkExportMetalTextureInfoEXT = +proc newVkExportMetalTextureInfoEXT*(sType: VkStructureType = VkStructureType.ExportMetalTextureInfoEXT, pNext: pointer = nil, image: VkImage, imageView: VkImageView, bufferView: VkBufferView, plane: VkImageAspectFlagBits, mtlTexture: MTLTexture_id): VkExportMetalTextureInfoEXT = result = VkExportMetalTextureInfoEXT( sType: sType, pNext: pNext, @@ -19317,7 +20566,7 @@ proc newVkExportMetalTextureInfoEXT*(sType: VkStructureType, pNext: pointer = ni mtlTexture: mtlTexture, ) -proc newVkImportMetalTextureInfoEXT*(sType: VkStructureType, pNext: pointer = nil, plane: VkImageAspectFlagBits, mtlTexture: MTLTexture_id): VkImportMetalTextureInfoEXT = +proc newVkImportMetalTextureInfoEXT*(sType: VkStructureType = VkStructureType.ImportMetalTextureInfoEXT, pNext: pointer = nil, plane: VkImageAspectFlagBits, mtlTexture: MTLTexture_id): VkImportMetalTextureInfoEXT = result = VkImportMetalTextureInfoEXT( sType: sType, pNext: pNext, @@ -19325,7 +20574,7 @@ proc newVkImportMetalTextureInfoEXT*(sType: VkStructureType, pNext: pointer = ni mtlTexture: mtlTexture, ) -proc newVkExportMetalIOSurfaceInfoEXT*(sType: VkStructureType, pNext: pointer = nil, image: VkImage, ioSurface: IOSurfaceRef): VkExportMetalIOSurfaceInfoEXT = +proc newVkExportMetalIOSurfaceInfoEXT*(sType: VkStructureType = VkStructureType.ExportMetalIOSurfaceInfoEXT, pNext: pointer = nil, image: VkImage, ioSurface: IOSurfaceRef): VkExportMetalIOSurfaceInfoEXT = result = VkExportMetalIOSurfaceInfoEXT( sType: sType, pNext: pNext, @@ -19333,14 +20582,14 @@ proc newVkExportMetalIOSurfaceInfoEXT*(sType: VkStructureType, pNext: pointer = ioSurface: ioSurface, ) -proc newVkImportMetalIOSurfaceInfoEXT*(sType: VkStructureType, pNext: pointer = nil, ioSurface: IOSurfaceRef): VkImportMetalIOSurfaceInfoEXT = +proc newVkImportMetalIOSurfaceInfoEXT*(sType: VkStructureType = VkStructureType.ImportMetalIOSurfaceInfoEXT, pNext: pointer = nil, ioSurface: IOSurfaceRef): VkImportMetalIOSurfaceInfoEXT = result = VkImportMetalIOSurfaceInfoEXT( sType: sType, pNext: pNext, ioSurface: ioSurface, ) -proc newVkExportMetalSharedEventInfoEXT*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, event: VkEvent, mtlSharedEvent: MTLSharedEvent_id): VkExportMetalSharedEventInfoEXT = +proc newVkExportMetalSharedEventInfoEXT*(sType: VkStructureType = VkStructureType.ExportMetalSharedEventInfoEXT, pNext: pointer = nil, semaphore: VkSemaphore, event: VkEvent, mtlSharedEvent: MTLSharedEvent_id): VkExportMetalSharedEventInfoEXT = result = VkExportMetalSharedEventInfoEXT( sType: sType, pNext: pNext, @@ -19349,28 +20598,28 @@ proc newVkExportMetalSharedEventInfoEXT*(sType: VkStructureType, pNext: pointer mtlSharedEvent: mtlSharedEvent, ) -proc newVkImportMetalSharedEventInfoEXT*(sType: VkStructureType, pNext: pointer = nil, mtlSharedEvent: MTLSharedEvent_id): VkImportMetalSharedEventInfoEXT = +proc newVkImportMetalSharedEventInfoEXT*(sType: VkStructureType = VkStructureType.ImportMetalSharedEventInfoEXT, pNext: pointer = nil, mtlSharedEvent: MTLSharedEvent_id): VkImportMetalSharedEventInfoEXT = result = VkImportMetalSharedEventInfoEXT( sType: sType, pNext: pNext, mtlSharedEvent: mtlSharedEvent, ) -proc newVkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, nonSeamlessCubeMap: VkBool32): VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT = +proc newVkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceNonSeamlessCubeMapFeaturesEXT, pNext: pointer = nil, nonSeamlessCubeMap: VkBool32): VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT = result = VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT( sType: sType, pNext: pNext, nonSeamlessCubeMap: nonSeamlessCubeMap, ) -proc newVkPhysicalDevicePipelineRobustnessFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, pipelineRobustness: VkBool32): VkPhysicalDevicePipelineRobustnessFeaturesEXT = +proc newVkPhysicalDevicePipelineRobustnessFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDevicePipelineRobustnessFeaturesEXT, pNext: pointer = nil, pipelineRobustness: VkBool32): VkPhysicalDevicePipelineRobustnessFeaturesEXT = result = VkPhysicalDevicePipelineRobustnessFeaturesEXT( sType: sType, pNext: pNext, pipelineRobustness: pipelineRobustness, ) -proc newVkPipelineRobustnessCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, storageBuffers: VkPipelineRobustnessBufferBehaviorEXT, uniformBuffers: VkPipelineRobustnessBufferBehaviorEXT, vertexInputs: VkPipelineRobustnessBufferBehaviorEXT, images: VkPipelineRobustnessImageBehaviorEXT): VkPipelineRobustnessCreateInfoEXT = +proc newVkPipelineRobustnessCreateInfoEXT*(sType: VkStructureType = VkStructureType.PipelineRobustnessCreateInfoEXT, pNext: pointer = nil, storageBuffers: VkPipelineRobustnessBufferBehaviorEXT, uniformBuffers: VkPipelineRobustnessBufferBehaviorEXT, vertexInputs: VkPipelineRobustnessBufferBehaviorEXT, images: VkPipelineRobustnessImageBehaviorEXT): VkPipelineRobustnessCreateInfoEXT = result = VkPipelineRobustnessCreateInfoEXT( sType: sType, pNext: pNext, @@ -19380,7 +20629,7 @@ proc newVkPipelineRobustnessCreateInfoEXT*(sType: VkStructureType, pNext: pointe images: images, ) -proc newVkPhysicalDevicePipelineRobustnessPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, defaultRobustnessStorageBuffers: VkPipelineRobustnessBufferBehaviorEXT, defaultRobustnessUniformBuffers: VkPipelineRobustnessBufferBehaviorEXT, defaultRobustnessVertexInputs: VkPipelineRobustnessBufferBehaviorEXT, defaultRobustnessImages: VkPipelineRobustnessImageBehaviorEXT): VkPhysicalDevicePipelineRobustnessPropertiesEXT = +proc newVkPhysicalDevicePipelineRobustnessPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDevicePipelineRobustnessPropertiesEXT, pNext: pointer = nil, defaultRobustnessStorageBuffers: VkPipelineRobustnessBufferBehaviorEXT, defaultRobustnessUniformBuffers: VkPipelineRobustnessBufferBehaviorEXT, defaultRobustnessVertexInputs: VkPipelineRobustnessBufferBehaviorEXT, defaultRobustnessImages: VkPipelineRobustnessImageBehaviorEXT): VkPhysicalDevicePipelineRobustnessPropertiesEXT = result = VkPhysicalDevicePipelineRobustnessPropertiesEXT( sType: sType, pNext: pNext, @@ -19390,7 +20639,7 @@ proc newVkPhysicalDevicePipelineRobustnessPropertiesEXT*(sType: VkStructureType, defaultRobustnessImages: defaultRobustnessImages, ) -proc newVkImageViewSampleWeightCreateInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, filterCenter: VkOffset2D, filterSize: VkExtent2D, numPhases: uint32): VkImageViewSampleWeightCreateInfoQCOM = +proc newVkImageViewSampleWeightCreateInfoQCOM*(sType: VkStructureType = VkStructureType.ImageViewSampleWeightCreateInfoQCOM, pNext: pointer = nil, filterCenter: VkOffset2D, filterSize: VkExtent2D, numPhases: uint32): VkImageViewSampleWeightCreateInfoQCOM = result = VkImageViewSampleWeightCreateInfoQCOM( sType: sType, pNext: pNext, @@ -19399,7 +20648,7 @@ proc newVkImageViewSampleWeightCreateInfoQCOM*(sType: VkStructureType, pNext: po numPhases: numPhases, ) -proc newVkPhysicalDeviceImageProcessingFeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, textureSampleWeighted: VkBool32, textureBoxFilter: VkBool32, textureBlockMatch: VkBool32): VkPhysicalDeviceImageProcessingFeaturesQCOM = +proc newVkPhysicalDeviceImageProcessingFeaturesQCOM*(sType: VkStructureType = VkStructureType.PhysicalDeviceImageProcessingFeaturesQCOM, pNext: pointer = nil, textureSampleWeighted: VkBool32, textureBoxFilter: VkBool32, textureBlockMatch: VkBool32): VkPhysicalDeviceImageProcessingFeaturesQCOM = result = VkPhysicalDeviceImageProcessingFeaturesQCOM( sType: sType, pNext: pNext, @@ -19408,7 +20657,7 @@ proc newVkPhysicalDeviceImageProcessingFeaturesQCOM*(sType: VkStructureType, pNe textureBlockMatch: textureBlockMatch, ) -proc newVkPhysicalDeviceImageProcessingPropertiesQCOM*(sType: VkStructureType, pNext: pointer = nil, maxWeightFilterPhases: uint32, maxWeightFilterDimension: VkExtent2D, maxBlockMatchRegion: VkExtent2D, maxBoxFilterBlockSize: VkExtent2D): VkPhysicalDeviceImageProcessingPropertiesQCOM = +proc newVkPhysicalDeviceImageProcessingPropertiesQCOM*(sType: VkStructureType = VkStructureType.PhysicalDeviceImageProcessingPropertiesQCOM, pNext: pointer = nil, maxWeightFilterPhases: uint32, maxWeightFilterDimension: VkExtent2D, maxBlockMatchRegion: VkExtent2D, maxBoxFilterBlockSize: VkExtent2D): VkPhysicalDeviceImageProcessingPropertiesQCOM = result = VkPhysicalDeviceImageProcessingPropertiesQCOM( sType: sType, pNext: pNext, @@ -19418,14 +20667,14 @@ proc newVkPhysicalDeviceImageProcessingPropertiesQCOM*(sType: VkStructureType, p maxBoxFilterBlockSize: maxBoxFilterBlockSize, ) -proc newVkPhysicalDeviceTilePropertiesFeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, tileProperties: VkBool32): VkPhysicalDeviceTilePropertiesFeaturesQCOM = +proc newVkPhysicalDeviceTilePropertiesFeaturesQCOM*(sType: VkStructureType = VkStructureType.PhysicalDeviceTilePropertiesFeaturesQCOM, pNext: pointer = nil, tileProperties: VkBool32): VkPhysicalDeviceTilePropertiesFeaturesQCOM = result = VkPhysicalDeviceTilePropertiesFeaturesQCOM( sType: sType, pNext: pNext, tileProperties: tileProperties, ) -proc newVkTilePropertiesQCOM*(sType: VkStructureType, pNext: pointer = nil, tileSize: VkExtent3D, apronSize: VkExtent2D, origin: VkOffset2D): VkTilePropertiesQCOM = +proc newVkTilePropertiesQCOM*(sType: VkStructureType = VkStructureType.TilePropertiesQCOM, pNext: pointer = nil, tileSize: VkExtent3D, apronSize: VkExtent2D, origin: VkOffset2D): VkTilePropertiesQCOM = result = VkTilePropertiesQCOM( sType: sType, pNext: pNext, @@ -19434,14 +20683,14 @@ proc newVkTilePropertiesQCOM*(sType: VkStructureType, pNext: pointer = nil, tile origin: origin, ) -proc newVkPhysicalDeviceAmigoProfilingFeaturesSEC*(sType: VkStructureType, pNext: pointer = nil, amigoProfiling: VkBool32): VkPhysicalDeviceAmigoProfilingFeaturesSEC = +proc newVkPhysicalDeviceAmigoProfilingFeaturesSEC*(sType: VkStructureType = VkStructureType.PhysicalDeviceAmigoProfilingFeaturesSEC, pNext: pointer = nil, amigoProfiling: VkBool32): VkPhysicalDeviceAmigoProfilingFeaturesSEC = result = VkPhysicalDeviceAmigoProfilingFeaturesSEC( sType: sType, pNext: pNext, amigoProfiling: amigoProfiling, ) -proc newVkAmigoProfilingSubmitInfoSEC*(sType: VkStructureType, pNext: pointer = nil, firstDrawTimestamp: uint64, swapBufferTimestamp: uint64): VkAmigoProfilingSubmitInfoSEC = +proc newVkAmigoProfilingSubmitInfoSEC*(sType: VkStructureType = VkStructureType.AmigoProfilingSubmitInfoSEC, pNext: pointer = nil, firstDrawTimestamp: uint64, swapBufferTimestamp: uint64): VkAmigoProfilingSubmitInfoSEC = result = VkAmigoProfilingSubmitInfoSEC( sType: sType, pNext: pNext, @@ -19449,28 +20698,28 @@ proc newVkAmigoProfilingSubmitInfoSEC*(sType: VkStructureType, pNext: pointer = swapBufferTimestamp: swapBufferTimestamp, ) -proc newVkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, attachmentFeedbackLoopLayout: VkBool32): VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT = +proc newVkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT, pNext: pointer = nil, attachmentFeedbackLoopLayout: VkBool32): VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT = result = VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT( sType: sType, pNext: pNext, attachmentFeedbackLoopLayout: attachmentFeedbackLoopLayout, ) -proc newVkPhysicalDeviceDepthClampZeroOneFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, depthClampZeroOne: VkBool32): VkPhysicalDeviceDepthClampZeroOneFeaturesEXT = +proc newVkPhysicalDeviceDepthClampZeroOneFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceDepthClampZeroOneFeaturesEXT, pNext: pointer = nil, depthClampZeroOne: VkBool32): VkPhysicalDeviceDepthClampZeroOneFeaturesEXT = result = VkPhysicalDeviceDepthClampZeroOneFeaturesEXT( sType: sType, pNext: pNext, depthClampZeroOne: depthClampZeroOne, ) -proc newVkPhysicalDeviceAddressBindingReportFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, reportAddressBinding: VkBool32): VkPhysicalDeviceAddressBindingReportFeaturesEXT = +proc newVkPhysicalDeviceAddressBindingReportFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceAddressBindingReportFeaturesEXT, pNext: pointer = nil, reportAddressBinding: VkBool32): VkPhysicalDeviceAddressBindingReportFeaturesEXT = result = VkPhysicalDeviceAddressBindingReportFeaturesEXT( sType: sType, pNext: pNext, reportAddressBinding: reportAddressBinding, ) -proc newVkDeviceAddressBindingCallbackDataEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkDeviceAddressBindingFlagsEXT = 0.VkDeviceAddressBindingFlagsEXT, baseAddress: VkDeviceAddress, size: VkDeviceSize, bindingType: VkDeviceAddressBindingTypeEXT): VkDeviceAddressBindingCallbackDataEXT = +proc newVkDeviceAddressBindingCallbackDataEXT*(sType: VkStructureType = VkStructureType.DeviceAddressBindingCallbackDataEXT, pNext: pointer = nil, flags: VkDeviceAddressBindingFlagsEXT = 0.VkDeviceAddressBindingFlagsEXT, baseAddress: VkDeviceAddress, size: VkDeviceSize, bindingType: VkDeviceAddressBindingTypeEXT): VkDeviceAddressBindingCallbackDataEXT = result = VkDeviceAddressBindingCallbackDataEXT( sType: sType, pNext: pNext, @@ -19480,14 +20729,14 @@ proc newVkDeviceAddressBindingCallbackDataEXT*(sType: VkStructureType, pNext: po bindingType: bindingType, ) -proc newVkPhysicalDeviceOpticalFlowFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, opticalFlow: VkBool32): VkPhysicalDeviceOpticalFlowFeaturesNV = +proc newVkPhysicalDeviceOpticalFlowFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceOpticalFlowFeaturesNV, pNext: pointer = nil, opticalFlow: VkBool32): VkPhysicalDeviceOpticalFlowFeaturesNV = result = VkPhysicalDeviceOpticalFlowFeaturesNV( sType: sType, pNext: pNext, opticalFlow: opticalFlow, ) -proc newVkPhysicalDeviceOpticalFlowPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, supportedOutputGridSizes: VkOpticalFlowGridSizeFlagsNV, supportedHintGridSizes: VkOpticalFlowGridSizeFlagsNV, hintSupported: VkBool32, costSupported: VkBool32, bidirectionalFlowSupported: VkBool32, globalFlowSupported: VkBool32, minWidth: uint32, minHeight: uint32, maxWidth: uint32, maxHeight: uint32, maxNumRegionsOfInterest: uint32): VkPhysicalDeviceOpticalFlowPropertiesNV = +proc newVkPhysicalDeviceOpticalFlowPropertiesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceOpticalFlowPropertiesNV, pNext: pointer = nil, supportedOutputGridSizes: VkOpticalFlowGridSizeFlagsNV, supportedHintGridSizes: VkOpticalFlowGridSizeFlagsNV, hintSupported: VkBool32, costSupported: VkBool32, bidirectionalFlowSupported: VkBool32, globalFlowSupported: VkBool32, minWidth: uint32, minHeight: uint32, maxWidth: uint32, maxHeight: uint32, maxNumRegionsOfInterest: uint32): VkPhysicalDeviceOpticalFlowPropertiesNV = result = VkPhysicalDeviceOpticalFlowPropertiesNV( sType: sType, pNext: pNext, @@ -19504,21 +20753,21 @@ proc newVkPhysicalDeviceOpticalFlowPropertiesNV*(sType: VkStructureType, pNext: maxNumRegionsOfInterest: maxNumRegionsOfInterest, ) -proc newVkOpticalFlowImageFormatInfoNV*(sType: VkStructureType, pNext: pointer = nil, usage: VkOpticalFlowUsageFlagsNV): VkOpticalFlowImageFormatInfoNV = +proc newVkOpticalFlowImageFormatInfoNV*(sType: VkStructureType = VkStructureType.OpticalFlowImageFormatInfoNV, pNext: pointer = nil, usage: VkOpticalFlowUsageFlagsNV): VkOpticalFlowImageFormatInfoNV = result = VkOpticalFlowImageFormatInfoNV( sType: sType, pNext: pNext, usage: usage, ) -proc newVkOpticalFlowImageFormatPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat): VkOpticalFlowImageFormatPropertiesNV = +proc newVkOpticalFlowImageFormatPropertiesNV*(sType: VkStructureType = VkStructureType.OpticalFlowImageFormatPropertiesNV, pNext: pointer = nil, format: VkFormat): VkOpticalFlowImageFormatPropertiesNV = result = VkOpticalFlowImageFormatPropertiesNV( sType: sType, pNext: pNext, format: format, ) -proc newVkOpticalFlowSessionCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, width: uint32, height: uint32, imageFormat: VkFormat, flowVectorFormat: VkFormat, costFormat: VkFormat, outputGridSize: VkOpticalFlowGridSizeFlagsNV, hintGridSize: VkOpticalFlowGridSizeFlagsNV, performanceLevel: VkOpticalFlowPerformanceLevelNV, flags: VkOpticalFlowSessionCreateFlagsNV = 0.VkOpticalFlowSessionCreateFlagsNV): VkOpticalFlowSessionCreateInfoNV = +proc newVkOpticalFlowSessionCreateInfoNV*(sType: VkStructureType = VkStructureType.OpticalFlowSessionCreateInfoNV, pNext: pointer = nil, width: uint32, height: uint32, imageFormat: VkFormat, flowVectorFormat: VkFormat, costFormat: VkFormat, outputGridSize: VkOpticalFlowGridSizeFlagsNV, hintGridSize: VkOpticalFlowGridSizeFlagsNV, performanceLevel: VkOpticalFlowPerformanceLevelNV, flags: VkOpticalFlowSessionCreateFlagsNV = 0.VkOpticalFlowSessionCreateFlagsNV): VkOpticalFlowSessionCreateInfoNV = result = VkOpticalFlowSessionCreateInfoNV( sType: sType, pNext: pNext, @@ -19533,7 +20782,7 @@ proc newVkOpticalFlowSessionCreateInfoNV*(sType: VkStructureType, pNext: pointer flags: flags, ) -proc newVkOpticalFlowSessionCreatePrivateDataInfoNV*(sType: VkStructureType, pNext: pointer = nil, id: uint32, size: uint32, pPrivateData: pointer = nil): VkOpticalFlowSessionCreatePrivateDataInfoNV = +proc newVkOpticalFlowSessionCreatePrivateDataInfoNV*(sType: VkStructureType = VkStructureType.OpticalFlowSessionCreatePrivateDataInfoNV, pNext: pointer = nil, id: uint32, size: uint32, pPrivateData: pointer = nil): VkOpticalFlowSessionCreatePrivateDataInfoNV = result = VkOpticalFlowSessionCreatePrivateDataInfoNV( sType: sType, pNext: pNext, @@ -19542,7 +20791,7 @@ proc newVkOpticalFlowSessionCreatePrivateDataInfoNV*(sType: VkStructureType, pNe pPrivateData: pPrivateData, ) -proc newVkOpticalFlowExecuteInfoNV*(sType: VkStructureType, pNext: pointer = nil, flags: VkOpticalFlowExecuteFlagsNV = 0.VkOpticalFlowExecuteFlagsNV, regionCount: uint32, pRegions: ptr VkRect2D): VkOpticalFlowExecuteInfoNV = +proc newVkOpticalFlowExecuteInfoNV*(sType: VkStructureType = VkStructureType.OpticalFlowExecuteInfoNV, pNext: pointer = nil, flags: VkOpticalFlowExecuteFlagsNV = 0.VkOpticalFlowExecuteFlagsNV, regionCount: uint32, pRegions: ptr VkRect2D): VkOpticalFlowExecuteInfoNV = result = VkOpticalFlowExecuteInfoNV( sType: sType, pNext: pNext, @@ -19551,7 +20800,7 @@ proc newVkOpticalFlowExecuteInfoNV*(sType: VkStructureType, pNext: pointer = nil pRegions: pRegions, ) -proc newVkPhysicalDeviceFaultFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, deviceFault: VkBool32, deviceFaultVendorBinary: VkBool32): VkPhysicalDeviceFaultFeaturesEXT = +proc newVkPhysicalDeviceFaultFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceFaultFeaturesEXT, pNext: pointer = nil, deviceFault: VkBool32, deviceFaultVendorBinary: VkBool32): VkPhysicalDeviceFaultFeaturesEXT = result = VkPhysicalDeviceFaultFeaturesEXT( sType: sType, pNext: pNext, @@ -19573,7 +20822,7 @@ proc newVkDeviceFaultVendorInfoEXT*(description: array[VK_MAX_DESCRIPTION_SIZE, vendorFaultData: vendorFaultData, ) -proc newVkDeviceFaultCountsEXT*(sType: VkStructureType, pNext: pointer = nil, addressInfoCount: uint32, vendorInfoCount: uint32, vendorBinarySize: VkDeviceSize): VkDeviceFaultCountsEXT = +proc newVkDeviceFaultCountsEXT*(sType: VkStructureType = VkStructureType.DeviceFaultCountsEXT, pNext: pointer = nil, addressInfoCount: uint32, vendorInfoCount: uint32, vendorBinarySize: VkDeviceSize): VkDeviceFaultCountsEXT = result = VkDeviceFaultCountsEXT( sType: sType, pNext: pNext, @@ -19582,7 +20831,7 @@ proc newVkDeviceFaultCountsEXT*(sType: VkStructureType, pNext: pointer = nil, ad vendorBinarySize: vendorBinarySize, ) -proc newVkDeviceFaultInfoEXT*(sType: VkStructureType, pNext: pointer = nil, description: array[VK_MAX_DESCRIPTION_SIZE, char], pAddressInfos: ptr VkDeviceFaultAddressInfoEXT, pVendorInfos: ptr VkDeviceFaultVendorInfoEXT, pVendorBinaryData: pointer = nil): VkDeviceFaultInfoEXT = +proc newVkDeviceFaultInfoEXT*(sType: VkStructureType = VkStructureType.DeviceFaultInfoEXT, pNext: pointer = nil, description: array[VK_MAX_DESCRIPTION_SIZE, char], pAddressInfos: ptr VkDeviceFaultAddressInfoEXT, pVendorInfos: ptr VkDeviceFaultVendorInfoEXT, pVendorBinaryData: pointer = nil): VkDeviceFaultInfoEXT = result = VkDeviceFaultInfoEXT( sType: sType, pNext: pNext, @@ -19607,14 +20856,14 @@ proc newVkDeviceFaultVendorBinaryHeaderVersionOneEXT*(headerSize: uint32, header apiVersion: apiVersion, ) -proc newVkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, pipelineLibraryGroupHandles: VkBool32): VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT = +proc newVkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT, pNext: pointer = nil, pipelineLibraryGroupHandles: VkBool32): VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT = result = VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT( sType: sType, pNext: pNext, pipelineLibraryGroupHandles: pipelineLibraryGroupHandles, ) -proc newVkDepthBiasInfoEXT*(sType: VkStructureType, pNext: pointer = nil, depthBiasConstantFactor: float32, depthBiasClamp: float32, depthBiasSlopeFactor: float32): VkDepthBiasInfoEXT = +proc newVkDepthBiasInfoEXT*(sType: VkStructureType = VkStructureType.DepthBiasInfoEXT, pNext: pointer = nil, depthBiasConstantFactor: float32, depthBiasClamp: float32, depthBiasSlopeFactor: float32): VkDepthBiasInfoEXT = result = VkDepthBiasInfoEXT( sType: sType, pNext: pNext, @@ -19623,7 +20872,7 @@ proc newVkDepthBiasInfoEXT*(sType: VkStructureType, pNext: pointer = nil, depthB depthBiasSlopeFactor: depthBiasSlopeFactor, ) -proc newVkDepthBiasRepresentationInfoEXT*(sType: VkStructureType, pNext: pointer = nil, depthBiasRepresentation: VkDepthBiasRepresentationEXT, depthBiasExact: VkBool32): VkDepthBiasRepresentationInfoEXT = +proc newVkDepthBiasRepresentationInfoEXT*(sType: VkStructureType = VkStructureType.DepthBiasRepresentationInfoEXT, pNext: pointer = nil, depthBiasRepresentation: VkDepthBiasRepresentationEXT, depthBiasExact: VkBool32): VkDepthBiasRepresentationInfoEXT = result = VkDepthBiasRepresentationInfoEXT( sType: sType, pNext: pNext, @@ -19640,7 +20889,7 @@ proc newVkDecompressMemoryRegionNV*(srcAddress: VkDeviceAddress, dstAddress: VkD decompressionMethod: decompressionMethod, ) -proc newVkPhysicalDeviceShaderCoreBuiltinsPropertiesARM*(sType: VkStructureType, pNext: pointer = nil, shaderCoreMask: uint64, shaderCoreCount: uint32, shaderWarpsPerCore: uint32): VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM = +proc newVkPhysicalDeviceShaderCoreBuiltinsPropertiesARM*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderCoreBuiltinsPropertiesARM, pNext: pointer = nil, shaderCoreMask: uint64, shaderCoreCount: uint32, shaderWarpsPerCore: uint32): VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM = result = VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM( sType: sType, pNext: pNext, @@ -19649,14 +20898,14 @@ proc newVkPhysicalDeviceShaderCoreBuiltinsPropertiesARM*(sType: VkStructureType, shaderWarpsPerCore: shaderWarpsPerCore, ) -proc newVkPhysicalDeviceShaderCoreBuiltinsFeaturesARM*(sType: VkStructureType, pNext: pointer = nil, shaderCoreBuiltins: VkBool32): VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM = +proc newVkPhysicalDeviceShaderCoreBuiltinsFeaturesARM*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderCoreBuiltinsFeaturesARM, pNext: pointer = nil, shaderCoreBuiltins: VkBool32): VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM = result = VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM( sType: sType, pNext: pNext, shaderCoreBuiltins: shaderCoreBuiltins, ) -proc newVkFrameBoundaryEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkFrameBoundaryFlagsEXT = 0.VkFrameBoundaryFlagsEXT, frameID: uint64, imageCount: uint32, pImages: ptr VkImage, bufferCount: uint32, pBuffers: ptr VkBuffer, tagName: uint64, tagSize: uint, pTag: pointer = nil): VkFrameBoundaryEXT = +proc newVkFrameBoundaryEXT*(sType: VkStructureType = VkStructureType.FrameBoundaryEXT, pNext: pointer = nil, flags: VkFrameBoundaryFlagsEXT = 0.VkFrameBoundaryFlagsEXT, frameID: uint64, imageCount: uint32, pImages: ptr VkImage, bufferCount: uint32, pBuffers: ptr VkBuffer, tagName: uint64, tagSize: uint, pTag: pointer = nil): VkFrameBoundaryEXT = result = VkFrameBoundaryEXT( sType: sType, pNext: pNext, @@ -19671,28 +20920,28 @@ proc newVkFrameBoundaryEXT*(sType: VkStructureType, pNext: pointer = nil, flags: pTag: pTag, ) -proc newVkPhysicalDeviceFrameBoundaryFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, frameBoundary: VkBool32): VkPhysicalDeviceFrameBoundaryFeaturesEXT = +proc newVkPhysicalDeviceFrameBoundaryFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceFrameBoundaryFeaturesEXT, pNext: pointer = nil, frameBoundary: VkBool32): VkPhysicalDeviceFrameBoundaryFeaturesEXT = result = VkPhysicalDeviceFrameBoundaryFeaturesEXT( sType: sType, pNext: pNext, frameBoundary: frameBoundary, ) -proc newVkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, dynamicRenderingUnusedAttachments: VkBool32): VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT = +proc newVkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT, pNext: pointer = nil, dynamicRenderingUnusedAttachments: VkBool32): VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT = result = VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT( sType: sType, pNext: pNext, dynamicRenderingUnusedAttachments: dynamicRenderingUnusedAttachments, ) -proc newVkSurfacePresentModeEXT*(sType: VkStructureType, pNext: pointer = nil, presentMode: VkPresentModeKHR): VkSurfacePresentModeEXT = +proc newVkSurfacePresentModeEXT*(sType: VkStructureType = VkStructureType.SurfacePresentModeEXT, pNext: pointer = nil, presentMode: VkPresentModeKHR): VkSurfacePresentModeEXT = result = VkSurfacePresentModeEXT( sType: sType, pNext: pNext, presentMode: presentMode, ) -proc newVkSurfacePresentScalingCapabilitiesEXT*(sType: VkStructureType, pNext: pointer = nil, supportedPresentScaling: VkPresentScalingFlagsEXT, supportedPresentGravityX: VkPresentGravityFlagsEXT, supportedPresentGravityY: VkPresentGravityFlagsEXT, minScaledImageExtent: VkExtent2D, maxScaledImageExtent: VkExtent2D): VkSurfacePresentScalingCapabilitiesEXT = +proc newVkSurfacePresentScalingCapabilitiesEXT*(sType: VkStructureType = VkStructureType.SurfacePresentScalingCapabilitiesEXT, pNext: pointer = nil, supportedPresentScaling: VkPresentScalingFlagsEXT, supportedPresentGravityX: VkPresentGravityFlagsEXT, supportedPresentGravityY: VkPresentGravityFlagsEXT, minScaledImageExtent: VkExtent2D, maxScaledImageExtent: VkExtent2D): VkSurfacePresentScalingCapabilitiesEXT = result = VkSurfacePresentScalingCapabilitiesEXT( sType: sType, pNext: pNext, @@ -19703,7 +20952,7 @@ proc newVkSurfacePresentScalingCapabilitiesEXT*(sType: VkStructureType, pNext: p maxScaledImageExtent: maxScaledImageExtent, ) -proc newVkSurfacePresentModeCompatibilityEXT*(sType: VkStructureType, pNext: pointer = nil, presentModeCount: uint32, pPresentModes: ptr VkPresentModeKHR): VkSurfacePresentModeCompatibilityEXT = +proc newVkSurfacePresentModeCompatibilityEXT*(sType: VkStructureType = VkStructureType.SurfacePresentModeCompatibilityEXT, pNext: pointer = nil, presentModeCount: uint32, pPresentModes: ptr VkPresentModeKHR): VkSurfacePresentModeCompatibilityEXT = result = VkSurfacePresentModeCompatibilityEXT( sType: sType, pNext: pNext, @@ -19711,14 +20960,14 @@ proc newVkSurfacePresentModeCompatibilityEXT*(sType: VkStructureType, pNext: poi pPresentModes: pPresentModes, ) -proc newVkPhysicalDeviceSwapchainMaintenance1FeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, swapchainMaintenance1: VkBool32): VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT = +proc newVkPhysicalDeviceSwapchainMaintenance1FeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceSwapchainMaintenance1FeaturesEXT, pNext: pointer = nil, swapchainMaintenance1: VkBool32): VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT = result = VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT( sType: sType, pNext: pNext, swapchainMaintenance1: swapchainMaintenance1, ) -proc newVkSwapchainPresentFenceInfoEXT*(sType: VkStructureType, pNext: pointer = nil, swapchainCount: uint32, pFences: ptr VkFence): VkSwapchainPresentFenceInfoEXT = +proc newVkSwapchainPresentFenceInfoEXT*(sType: VkStructureType = VkStructureType.SwapchainPresentFenceInfoEXT, pNext: pointer = nil, swapchainCount: uint32, pFences: ptr VkFence): VkSwapchainPresentFenceInfoEXT = result = VkSwapchainPresentFenceInfoEXT( sType: sType, pNext: pNext, @@ -19726,7 +20975,7 @@ proc newVkSwapchainPresentFenceInfoEXT*(sType: VkStructureType, pNext: pointer = pFences: pFences, ) -proc newVkSwapchainPresentModesCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, presentModeCount: uint32, pPresentModes: ptr VkPresentModeKHR): VkSwapchainPresentModesCreateInfoEXT = +proc newVkSwapchainPresentModesCreateInfoEXT*(sType: VkStructureType = VkStructureType.SwapchainPresentModesCreateInfoEXT, pNext: pointer = nil, presentModeCount: uint32, pPresentModes: ptr VkPresentModeKHR): VkSwapchainPresentModesCreateInfoEXT = result = VkSwapchainPresentModesCreateInfoEXT( sType: sType, pNext: pNext, @@ -19734,7 +20983,7 @@ proc newVkSwapchainPresentModesCreateInfoEXT*(sType: VkStructureType, pNext: poi pPresentModes: pPresentModes, ) -proc newVkSwapchainPresentModeInfoEXT*(sType: VkStructureType, pNext: pointer = nil, swapchainCount: uint32, pPresentModes: ptr VkPresentModeKHR): VkSwapchainPresentModeInfoEXT = +proc newVkSwapchainPresentModeInfoEXT*(sType: VkStructureType = VkStructureType.SwapchainPresentModeInfoEXT, pNext: pointer = nil, swapchainCount: uint32, pPresentModes: ptr VkPresentModeKHR): VkSwapchainPresentModeInfoEXT = result = VkSwapchainPresentModeInfoEXT( sType: sType, pNext: pNext, @@ -19742,7 +20991,7 @@ proc newVkSwapchainPresentModeInfoEXT*(sType: VkStructureType, pNext: pointer = pPresentModes: pPresentModes, ) -proc newVkSwapchainPresentScalingCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, scalingBehavior: VkPresentScalingFlagsEXT, presentGravityX: VkPresentGravityFlagsEXT, presentGravityY: VkPresentGravityFlagsEXT): VkSwapchainPresentScalingCreateInfoEXT = +proc newVkSwapchainPresentScalingCreateInfoEXT*(sType: VkStructureType = VkStructureType.SwapchainPresentScalingCreateInfoEXT, pNext: pointer = nil, scalingBehavior: VkPresentScalingFlagsEXT, presentGravityX: VkPresentGravityFlagsEXT, presentGravityY: VkPresentGravityFlagsEXT): VkSwapchainPresentScalingCreateInfoEXT = result = VkSwapchainPresentScalingCreateInfoEXT( sType: sType, pNext: pNext, @@ -19751,7 +21000,7 @@ proc newVkSwapchainPresentScalingCreateInfoEXT*(sType: VkStructureType, pNext: p presentGravityY: presentGravityY, ) -proc newVkReleaseSwapchainImagesInfoEXT*(sType: VkStructureType, pNext: pointer = nil, swapchain: VkSwapchainKHR, imageIndexCount: uint32, pImageIndices: ptr uint32): VkReleaseSwapchainImagesInfoEXT = +proc newVkReleaseSwapchainImagesInfoEXT*(sType: VkStructureType = VkStructureType.ReleaseSwapchainImagesInfoEXT, pNext: pointer = nil, swapchain: VkSwapchainKHR, imageIndexCount: uint32, pImageIndices: ptr uint32): VkReleaseSwapchainImagesInfoEXT = result = VkReleaseSwapchainImagesInfoEXT( sType: sType, pNext: pNext, @@ -19760,7 +21009,7 @@ proc newVkReleaseSwapchainImagesInfoEXT*(sType: VkStructureType, pNext: pointer pImageIndices: pImageIndices, ) -proc newVkPhysicalDeviceDepthBiasControlFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, depthBiasControl: VkBool32, leastRepresentableValueForceUnormRepresentation: VkBool32, floatRepresentation: VkBool32, depthBiasExact: VkBool32): VkPhysicalDeviceDepthBiasControlFeaturesEXT = +proc newVkPhysicalDeviceDepthBiasControlFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceDepthBiasControlFeaturesEXT, pNext: pointer = nil, depthBiasControl: VkBool32, leastRepresentableValueForceUnormRepresentation: VkBool32, floatRepresentation: VkBool32, depthBiasExact: VkBool32): VkPhysicalDeviceDepthBiasControlFeaturesEXT = result = VkPhysicalDeviceDepthBiasControlFeaturesEXT( sType: sType, pNext: pNext, @@ -19770,28 +21019,28 @@ proc newVkPhysicalDeviceDepthBiasControlFeaturesEXT*(sType: VkStructureType, pNe depthBiasExact: depthBiasExact, ) -proc newVkPhysicalDeviceRayTracingInvocationReorderFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, rayTracingInvocationReorder: VkBool32): VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV = +proc newVkPhysicalDeviceRayTracingInvocationReorderFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceRayTracingInvocationReorderFeaturesNV, pNext: pointer = nil, rayTracingInvocationReorder: VkBool32): VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV = result = VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV( sType: sType, pNext: pNext, rayTracingInvocationReorder: rayTracingInvocationReorder, ) -proc newVkPhysicalDeviceRayTracingInvocationReorderPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, rayTracingInvocationReorderReorderingHint: VkRayTracingInvocationReorderModeNV): VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV = +proc newVkPhysicalDeviceRayTracingInvocationReorderPropertiesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceRayTracingInvocationReorderPropertiesNV, pNext: pointer = nil, rayTracingInvocationReorderReorderingHint: VkRayTracingInvocationReorderModeNV): VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV = result = VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV( sType: sType, pNext: pNext, rayTracingInvocationReorderReorderingHint: rayTracingInvocationReorderReorderingHint, ) -proc newVkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, extendedSparseAddressSpace: VkBool32): VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV = +proc newVkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceExtendedSparseAddressSpaceFeaturesNV, pNext: pointer = nil, extendedSparseAddressSpace: VkBool32): VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV = result = VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV( sType: sType, pNext: pNext, extendedSparseAddressSpace: extendedSparseAddressSpace, ) -proc newVkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV*(sType: VkStructureType, pNext: pointer = nil, extendedSparseAddressSpaceSize: VkDeviceSize, extendedSparseImageUsageFlags: VkImageUsageFlags, extendedSparseBufferUsageFlags: VkBufferUsageFlags): VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV = +proc newVkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceExtendedSparseAddressSpacePropertiesNV, pNext: pointer = nil, extendedSparseAddressSpaceSize: VkDeviceSize, extendedSparseImageUsageFlags: VkImageUsageFlags, extendedSparseBufferUsageFlags: VkBufferUsageFlags): VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV = result = VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV( sType: sType, pNext: pNext, @@ -19800,7 +21049,7 @@ proc newVkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV*(sType: VkStructu extendedSparseBufferUsageFlags: extendedSparseBufferUsageFlags, ) -proc newVkDirectDriverLoadingInfoLUNARG*(sType: VkStructureType, pNext: pointer = nil, flags: VkDirectDriverLoadingFlagsLUNARG = 0.VkDirectDriverLoadingFlagsLUNARG, pfnGetInstanceProcAddr: PFN_vkGetInstanceProcAddrLUNARG): VkDirectDriverLoadingInfoLUNARG = +proc newVkDirectDriverLoadingInfoLUNARG*(sType: VkStructureType = VkStructureType.DirectDriverLoadingInfoLUNARG, pNext: pointer = nil, flags: VkDirectDriverLoadingFlagsLUNARG = 0.VkDirectDriverLoadingFlagsLUNARG, pfnGetInstanceProcAddr: PFN_vkGetInstanceProcAddrLUNARG): VkDirectDriverLoadingInfoLUNARG = result = VkDirectDriverLoadingInfoLUNARG( sType: sType, pNext: pNext, @@ -19808,7 +21057,7 @@ proc newVkDirectDriverLoadingInfoLUNARG*(sType: VkStructureType, pNext: pointer pfnGetInstanceProcAddr: pfnGetInstanceProcAddr, ) -proc newVkDirectDriverLoadingListLUNARG*(sType: VkStructureType, pNext: pointer = nil, mode: VkDirectDriverLoadingModeLUNARG, driverCount: uint32, pDrivers: ptr VkDirectDriverLoadingInfoLUNARG): VkDirectDriverLoadingListLUNARG = +proc newVkDirectDriverLoadingListLUNARG*(sType: VkStructureType = VkStructureType.DirectDriverLoadingListLUNARG, pNext: pointer = nil, mode: VkDirectDriverLoadingModeLUNARG, driverCount: uint32, pDrivers: ptr VkDirectDriverLoadingInfoLUNARG): VkDirectDriverLoadingListLUNARG = result = VkDirectDriverLoadingListLUNARG( sType: sType, pNext: pNext, @@ -19817,21 +21066,21 @@ proc newVkDirectDriverLoadingListLUNARG*(sType: VkStructureType, pNext: pointer pDrivers: pDrivers, ) -proc newVkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, multiviewPerViewViewports: VkBool32): VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM = +proc newVkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM*(sType: VkStructureType = VkStructureType.PhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM, pNext: pointer = nil, multiviewPerViewViewports: VkBool32): VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM = result = VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM( sType: sType, pNext: pNext, multiviewPerViewViewports: multiviewPerViewViewports, ) -proc newVkPhysicalDeviceRayTracingPositionFetchFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, rayTracingPositionFetch: VkBool32): VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR = +proc newVkPhysicalDeviceRayTracingPositionFetchFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceRayTracingPositionFetchFeaturesKHR, pNext: pointer = nil, rayTracingPositionFetch: VkBool32): VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR = result = VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR( sType: sType, pNext: pNext, rayTracingPositionFetch: rayTracingPositionFetch, ) -proc newVkDeviceImageSubresourceInfoKHR*(sType: VkStructureType, pNext: pointer = nil, pCreateInfo: ptr VkImageCreateInfo, pSubresource: ptr VkImageSubresource2KHR): VkDeviceImageSubresourceInfoKHR = +proc newVkDeviceImageSubresourceInfoKHR*(sType: VkStructureType = VkStructureType.DeviceImageSubresourceInfoKHR, pNext: pointer = nil, pCreateInfo: ptr VkImageCreateInfo, pSubresource: ptr VkImageSubresource2KHR): VkDeviceImageSubresourceInfoKHR = result = VkDeviceImageSubresourceInfoKHR( sType: sType, pNext: pNext, @@ -19839,7 +21088,7 @@ proc newVkDeviceImageSubresourceInfoKHR*(sType: VkStructureType, pNext: pointer pSubresource: pSubresource, ) -proc newVkPhysicalDeviceShaderCorePropertiesARM*(sType: VkStructureType, pNext: pointer = nil, pixelRate: uint32, texelRate: uint32, fmaRate: uint32): VkPhysicalDeviceShaderCorePropertiesARM = +proc newVkPhysicalDeviceShaderCorePropertiesARM*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderCorePropertiesARM, pNext: pointer = nil, pixelRate: uint32, texelRate: uint32, fmaRate: uint32): VkPhysicalDeviceShaderCorePropertiesARM = result = VkPhysicalDeviceShaderCorePropertiesARM( sType: sType, pNext: pNext, @@ -19848,14 +21097,14 @@ proc newVkPhysicalDeviceShaderCorePropertiesARM*(sType: VkStructureType, pNext: fmaRate: fmaRate, ) -proc newVkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, multiviewPerViewRenderAreas: VkBool32): VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM = +proc newVkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM*(sType: VkStructureType = VkStructureType.PhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM, pNext: pointer = nil, multiviewPerViewRenderAreas: VkBool32): VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM = result = VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM( sType: sType, pNext: pNext, multiviewPerViewRenderAreas: multiviewPerViewRenderAreas, ) -proc newVkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, perViewRenderAreaCount: uint32, pPerViewRenderAreas: ptr VkRect2D): VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM = +proc newVkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM*(sType: VkStructureType = VkStructureType.MultiviewPerViewRenderAreasRenderPassBeginInfoQCOM, pNext: pointer = nil, perViewRenderAreaCount: uint32, pPerViewRenderAreas: ptr VkRect2D): VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM = result = VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM( sType: sType, pNext: pNext, @@ -19863,14 +21112,14 @@ proc newVkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM*(sType: VkStructure pPerViewRenderAreas: pPerViewRenderAreas, ) -proc newVkQueryLowLatencySupportNV*(sType: VkStructureType, pNext: pointer = nil, pQueriedLowLatencyData: pointer = nil): VkQueryLowLatencySupportNV = +proc newVkQueryLowLatencySupportNV*(sType: VkStructureType = VkStructureType.QueryLowLatencySupportNV, pNext: pointer = nil, pQueriedLowLatencyData: pointer = nil): VkQueryLowLatencySupportNV = result = VkQueryLowLatencySupportNV( sType: sType, pNext: pNext, pQueriedLowLatencyData: pQueriedLowLatencyData, ) -proc newVkMemoryMapInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkMemoryMapFlags = 0.VkMemoryMapFlags, memory: VkDeviceMemory, offset: VkDeviceSize, size: VkDeviceSize): VkMemoryMapInfoKHR = +proc newVkMemoryMapInfoKHR*(sType: VkStructureType = VkStructureType.MemoryMapInfoKHR, pNext: pointer = nil, flags: VkMemoryMapFlags = 0.VkMemoryMapFlags, memory: VkDeviceMemory, offset: VkDeviceSize, size: VkDeviceSize): VkMemoryMapInfoKHR = result = VkMemoryMapInfoKHR( sType: sType, pNext: pNext, @@ -19880,7 +21129,7 @@ proc newVkMemoryMapInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: size: size, ) -proc newVkMemoryUnmapInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flags: VkMemoryUnmapFlagsKHR = 0.VkMemoryUnmapFlagsKHR, memory: VkDeviceMemory): VkMemoryUnmapInfoKHR = +proc newVkMemoryUnmapInfoKHR*(sType: VkStructureType = VkStructureType.MemoryUnmapInfoKHR, pNext: pointer = nil, flags: VkMemoryUnmapFlagsKHR = 0.VkMemoryUnmapFlagsKHR, memory: VkDeviceMemory): VkMemoryUnmapInfoKHR = result = VkMemoryUnmapInfoKHR( sType: sType, pNext: pNext, @@ -19888,14 +21137,14 @@ proc newVkMemoryUnmapInfoKHR*(sType: VkStructureType, pNext: pointer = nil, flag memory: memory, ) -proc newVkPhysicalDeviceShaderObjectFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderObject: VkBool32): VkPhysicalDeviceShaderObjectFeaturesEXT = +proc newVkPhysicalDeviceShaderObjectFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderObjectFeaturesEXT, pNext: pointer = nil, shaderObject: VkBool32): VkPhysicalDeviceShaderObjectFeaturesEXT = result = VkPhysicalDeviceShaderObjectFeaturesEXT( sType: sType, pNext: pNext, shaderObject: shaderObject, ) -proc newVkPhysicalDeviceShaderObjectPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderBinaryUUID: array[VK_UUID_SIZE, uint8], shaderBinaryVersion: uint32): VkPhysicalDeviceShaderObjectPropertiesEXT = +proc newVkPhysicalDeviceShaderObjectPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderObjectPropertiesEXT, pNext: pointer = nil, shaderBinaryUUID: array[VK_UUID_SIZE, uint8], shaderBinaryVersion: uint32): VkPhysicalDeviceShaderObjectPropertiesEXT = result = VkPhysicalDeviceShaderObjectPropertiesEXT( sType: sType, pNext: pNext, @@ -19903,7 +21152,7 @@ proc newVkPhysicalDeviceShaderObjectPropertiesEXT*(sType: VkStructureType, pNext shaderBinaryVersion: shaderBinaryVersion, ) -proc newVkShaderCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, flags: VkShaderCreateFlagsEXT = 0.VkShaderCreateFlagsEXT, stage: VkShaderStageFlagBits, nextStage: VkShaderStageFlags, codeType: VkShaderCodeTypeEXT, codeSize: uint, pCode: pointer = nil, pName: cstring, setLayoutCount: uint32, pSetLayouts: ptr VkDescriptorSetLayout, pushConstantRangeCount: uint32, pPushConstantRanges: ptr VkPushConstantRange, pSpecializationInfo: ptr VkSpecializationInfo): VkShaderCreateInfoEXT = +proc newVkShaderCreateInfoEXT*(sType: VkStructureType = VkStructureType.ShaderCreateInfoEXT, pNext: pointer = nil, flags: VkShaderCreateFlagsEXT = 0.VkShaderCreateFlagsEXT, stage: VkShaderStageFlagBits, nextStage: VkShaderStageFlags, codeType: VkShaderCodeTypeEXT, codeSize: uint, pCode: pointer = nil, pName: cstring, setLayoutCount: uint32, pSetLayouts: ptr VkDescriptorSetLayout, pushConstantRangeCount: uint32, pPushConstantRanges: ptr VkPushConstantRange, pSpecializationInfo: ptr VkSpecializationInfo): VkShaderCreateInfoEXT = result = VkShaderCreateInfoEXT( sType: sType, pNext: pNext, @@ -19921,7 +21170,7 @@ proc newVkShaderCreateInfoEXT*(sType: VkStructureType, pNext: pointer = nil, fla pSpecializationInfo: pSpecializationInfo, ) -proc newVkPhysicalDeviceShaderTileImageFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderTileImageColorReadAccess: VkBool32, shaderTileImageDepthReadAccess: VkBool32, shaderTileImageStencilReadAccess: VkBool32): VkPhysicalDeviceShaderTileImageFeaturesEXT = +proc newVkPhysicalDeviceShaderTileImageFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderTileImageFeaturesEXT, pNext: pointer = nil, shaderTileImageColorReadAccess: VkBool32, shaderTileImageDepthReadAccess: VkBool32, shaderTileImageStencilReadAccess: VkBool32): VkPhysicalDeviceShaderTileImageFeaturesEXT = result = VkPhysicalDeviceShaderTileImageFeaturesEXT( sType: sType, pNext: pNext, @@ -19930,7 +21179,7 @@ proc newVkPhysicalDeviceShaderTileImageFeaturesEXT*(sType: VkStructureType, pNex shaderTileImageStencilReadAccess: shaderTileImageStencilReadAccess, ) -proc newVkPhysicalDeviceShaderTileImagePropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, shaderTileImageCoherentReadAccelerated: VkBool32, shaderTileImageReadSampleFromPixelRateInvocation: VkBool32, shaderTileImageReadFromHelperInvocation: VkBool32): VkPhysicalDeviceShaderTileImagePropertiesEXT = +proc newVkPhysicalDeviceShaderTileImagePropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderTileImagePropertiesEXT, pNext: pointer = nil, shaderTileImageCoherentReadAccelerated: VkBool32, shaderTileImageReadSampleFromPixelRateInvocation: VkBool32, shaderTileImageReadFromHelperInvocation: VkBool32): VkPhysicalDeviceShaderTileImagePropertiesEXT = result = VkPhysicalDeviceShaderTileImagePropertiesEXT( sType: sType, pNext: pNext, @@ -19939,14 +21188,14 @@ proc newVkPhysicalDeviceShaderTileImagePropertiesEXT*(sType: VkStructureType, pN shaderTileImageReadFromHelperInvocation: shaderTileImageReadFromHelperInvocation, ) -proc newVkImportScreenBufferInfoQNX*(sType: VkStructureType, pNext: pointer = nil, buffer: ptr screen_buffer): VkImportScreenBufferInfoQNX = +proc newVkImportScreenBufferInfoQNX*(sType: VkStructureType = VkStructureType.ImportScreenBufferInfoQNX, pNext: pointer = nil, buffer: ptr screen_buffer): VkImportScreenBufferInfoQNX = result = VkImportScreenBufferInfoQNX( sType: sType, pNext: pNext, buffer: buffer, ) -proc newVkScreenBufferPropertiesQNX*(sType: VkStructureType, pNext: pointer = nil, allocationSize: VkDeviceSize, memoryTypeBits: uint32): VkScreenBufferPropertiesQNX = +proc newVkScreenBufferPropertiesQNX*(sType: VkStructureType = VkStructureType.ScreenBufferPropertiesQNX, pNext: pointer = nil, allocationSize: VkDeviceSize, memoryTypeBits: uint32): VkScreenBufferPropertiesQNX = result = VkScreenBufferPropertiesQNX( sType: sType, pNext: pNext, @@ -19954,7 +21203,7 @@ proc newVkScreenBufferPropertiesQNX*(sType: VkStructureType, pNext: pointer = ni memoryTypeBits: memoryTypeBits, ) -proc newVkScreenBufferFormatPropertiesQNX*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat, externalFormat: uint64, screenUsage: uint64, formatFeatures: VkFormatFeatureFlags, samplerYcbcrConversionComponents: VkComponentMapping, suggestedYcbcrModel: VkSamplerYcbcrModelConversion, suggestedYcbcrRange: VkSamplerYcbcrRange, suggestedXChromaOffset: VkChromaLocation, suggestedYChromaOffset: VkChromaLocation): VkScreenBufferFormatPropertiesQNX = +proc newVkScreenBufferFormatPropertiesQNX*(sType: VkStructureType = VkStructureType.ScreenBufferFormatPropertiesQNX, pNext: pointer = nil, format: VkFormat, externalFormat: uint64, screenUsage: uint64, formatFeatures: VkFormatFeatureFlags, samplerYcbcrConversionComponents: VkComponentMapping, suggestedYcbcrModel: VkSamplerYcbcrModelConversion, suggestedYcbcrRange: VkSamplerYcbcrRange, suggestedXChromaOffset: VkChromaLocation, suggestedYChromaOffset: VkChromaLocation): VkScreenBufferFormatPropertiesQNX = result = VkScreenBufferFormatPropertiesQNX( sType: sType, pNext: pNext, @@ -19969,21 +21218,21 @@ proc newVkScreenBufferFormatPropertiesQNX*(sType: VkStructureType, pNext: pointe suggestedYChromaOffset: suggestedYChromaOffset, ) -proc newVkExternalFormatQNX*(sType: VkStructureType, pNext: pointer = nil, externalFormat: uint64): VkExternalFormatQNX = +proc newVkExternalFormatQNX*(sType: VkStructureType = VkStructureType.ExternalFormatQNX, pNext: pointer = nil, externalFormat: uint64): VkExternalFormatQNX = result = VkExternalFormatQNX( sType: sType, pNext: pNext, externalFormat: externalFormat, ) -proc newVkPhysicalDeviceExternalMemoryScreenBufferFeaturesQNX*(sType: VkStructureType, pNext: pointer = nil, screenBufferImport: VkBool32): VkPhysicalDeviceExternalMemoryScreenBufferFeaturesQNX = +proc newVkPhysicalDeviceExternalMemoryScreenBufferFeaturesQNX*(sType: VkStructureType = VkStructureType.PhysicalDeviceExternalMemoryScreenBufferFeaturesQNX, pNext: pointer = nil, screenBufferImport: VkBool32): VkPhysicalDeviceExternalMemoryScreenBufferFeaturesQNX = result = VkPhysicalDeviceExternalMemoryScreenBufferFeaturesQNX( sType: sType, pNext: pNext, screenBufferImport: screenBufferImport, ) -proc newVkPhysicalDeviceCooperativeMatrixFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, cooperativeMatrix: VkBool32, cooperativeMatrixRobustBufferAccess: VkBool32): VkPhysicalDeviceCooperativeMatrixFeaturesKHR = +proc newVkPhysicalDeviceCooperativeMatrixFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceCooperativeMatrixFeaturesKHR, pNext: pointer = nil, cooperativeMatrix: VkBool32, cooperativeMatrixRobustBufferAccess: VkBool32): VkPhysicalDeviceCooperativeMatrixFeaturesKHR = result = VkPhysicalDeviceCooperativeMatrixFeaturesKHR( sType: sType, pNext: pNext, @@ -19991,7 +21240,7 @@ proc newVkPhysicalDeviceCooperativeMatrixFeaturesKHR*(sType: VkStructureType, pN cooperativeMatrixRobustBufferAccess: cooperativeMatrixRobustBufferAccess, ) -proc newVkCooperativeMatrixPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, MSize: uint32, NSize: uint32, KSize: uint32, AType: VkComponentTypeKHR, BType: VkComponentTypeKHR, CType: VkComponentTypeKHR, ResultType: VkComponentTypeKHR, saturatingAccumulation: VkBool32, scope: VkScopeKHR): VkCooperativeMatrixPropertiesKHR = +proc newVkCooperativeMatrixPropertiesKHR*(sType: VkStructureType = VkStructureType.CooperativeMatrixPropertiesKHR, pNext: pointer = nil, MSize: uint32, NSize: uint32, KSize: uint32, AType: VkComponentTypeKHR, BType: VkComponentTypeKHR, CType: VkComponentTypeKHR, ResultType: VkComponentTypeKHR, saturatingAccumulation: VkBool32, scope: VkScopeKHR): VkCooperativeMatrixPropertiesKHR = result = VkCooperativeMatrixPropertiesKHR( sType: sType, pNext: pNext, @@ -20006,14 +21255,14 @@ proc newVkCooperativeMatrixPropertiesKHR*(sType: VkStructureType, pNext: pointer scope: scope, ) -proc newVkPhysicalDeviceCooperativeMatrixPropertiesKHR*(sType: VkStructureType, pNext: pointer = nil, cooperativeMatrixSupportedStages: VkShaderStageFlags): VkPhysicalDeviceCooperativeMatrixPropertiesKHR = +proc newVkPhysicalDeviceCooperativeMatrixPropertiesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceCooperativeMatrixPropertiesKHR, pNext: pointer = nil, cooperativeMatrixSupportedStages: VkShaderStageFlags): VkPhysicalDeviceCooperativeMatrixPropertiesKHR = result = VkPhysicalDeviceCooperativeMatrixPropertiesKHR( sType: sType, pNext: pNext, cooperativeMatrixSupportedStages: cooperativeMatrixSupportedStages, ) -proc newVkPhysicalDeviceShaderEnqueuePropertiesAMDX*(sType: VkStructureType, pNext: pointer = nil, maxExecutionGraphDepth: uint32, maxExecutionGraphShaderOutputNodes: uint32, maxExecutionGraphShaderPayloadSize: uint32, maxExecutionGraphShaderPayloadCount: uint32, executionGraphDispatchAddressAlignment: uint32): VkPhysicalDeviceShaderEnqueuePropertiesAMDX = +proc newVkPhysicalDeviceShaderEnqueuePropertiesAMDX*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderEnqueuePropertiesAMDX, pNext: pointer = nil, maxExecutionGraphDepth: uint32, maxExecutionGraphShaderOutputNodes: uint32, maxExecutionGraphShaderPayloadSize: uint32, maxExecutionGraphShaderPayloadCount: uint32, executionGraphDispatchAddressAlignment: uint32): VkPhysicalDeviceShaderEnqueuePropertiesAMDX = result = VkPhysicalDeviceShaderEnqueuePropertiesAMDX( sType: sType, pNext: pNext, @@ -20024,14 +21273,14 @@ proc newVkPhysicalDeviceShaderEnqueuePropertiesAMDX*(sType: VkStructureType, pNe executionGraphDispatchAddressAlignment: executionGraphDispatchAddressAlignment, ) -proc newVkPhysicalDeviceShaderEnqueueFeaturesAMDX*(sType: VkStructureType, pNext: pointer = nil, shaderEnqueue: VkBool32): VkPhysicalDeviceShaderEnqueueFeaturesAMDX = +proc newVkPhysicalDeviceShaderEnqueueFeaturesAMDX*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderEnqueueFeaturesAMDX, pNext: pointer = nil, shaderEnqueue: VkBool32): VkPhysicalDeviceShaderEnqueueFeaturesAMDX = result = VkPhysicalDeviceShaderEnqueueFeaturesAMDX( sType: sType, pNext: pNext, shaderEnqueue: shaderEnqueue, ) -proc newVkExecutionGraphPipelineCreateInfoAMDX*(sType: VkStructureType, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, pLibraryInfo: ptr VkPipelineLibraryCreateInfoKHR, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkExecutionGraphPipelineCreateInfoAMDX = +proc newVkExecutionGraphPipelineCreateInfoAMDX*(sType: VkStructureType = VkStructureType.ExecutionGraphPipelineCreateInfoAMDX, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, pLibraryInfo: ptr VkPipelineLibraryCreateInfoKHR, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkExecutionGraphPipelineCreateInfoAMDX = result = VkExecutionGraphPipelineCreateInfoAMDX( sType: sType, pNext: pNext, @@ -20044,7 +21293,7 @@ proc newVkExecutionGraphPipelineCreateInfoAMDX*(sType: VkStructureType, pNext: p basePipelineIndex: basePipelineIndex, ) -proc newVkPipelineShaderStageNodeCreateInfoAMDX*(sType: VkStructureType, pNext: pointer = nil, pName: cstring, index: uint32): VkPipelineShaderStageNodeCreateInfoAMDX = +proc newVkPipelineShaderStageNodeCreateInfoAMDX*(sType: VkStructureType = VkStructureType.PipelineShaderStageNodeCreateInfoAMDX, pNext: pointer = nil, pName: cstring, index: uint32): VkPipelineShaderStageNodeCreateInfoAMDX = result = VkPipelineShaderStageNodeCreateInfoAMDX( sType: sType, pNext: pNext, @@ -20052,7 +21301,7 @@ proc newVkPipelineShaderStageNodeCreateInfoAMDX*(sType: VkStructureType, pNext: index: index, ) -proc newVkExecutionGraphPipelineScratchSizeAMDX*(sType: VkStructureType, pNext: pointer = nil, size: VkDeviceSize): VkExecutionGraphPipelineScratchSizeAMDX = +proc newVkExecutionGraphPipelineScratchSizeAMDX*(sType: VkStructureType = VkStructureType.ExecutionGraphPipelineScratchSizeAMDX, pNext: pointer = nil, size: VkDeviceSize): VkExecutionGraphPipelineScratchSizeAMDX = result = VkExecutionGraphPipelineScratchSizeAMDX( sType: sType, pNext: pNext, @@ -20074,14 +21323,14 @@ proc newVkDispatchGraphCountInfoAMDX*(count: uint32, infos: VkDeviceOrHostAddres stride: stride, ) -proc newVkBindMemoryStatusKHR*(sType: VkStructureType, pNext: pointer = nil, pResult: ptr VkResult): VkBindMemoryStatusKHR = +proc newVkBindMemoryStatusKHR*(sType: VkStructureType = VkStructureType.BindMemoryStatusKHR, pNext: pointer = nil, pResult: ptr VkResult): VkBindMemoryStatusKHR = result = VkBindMemoryStatusKHR( sType: sType, pNext: pNext, pResult: pResult, ) -proc newVkBindDescriptorSetsInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stageFlags: VkShaderStageFlags, layout: VkPipelineLayout, firstSet: uint32, descriptorSetCount: uint32, pDescriptorSets: ptr VkDescriptorSet, dynamicOffsetCount: uint32, pDynamicOffsets: ptr uint32): VkBindDescriptorSetsInfoKHR = +proc newVkBindDescriptorSetsInfoKHR*(sType: VkStructureType = VkStructureType.BindDescriptorSetsInfoKHR, pNext: pointer = nil, stageFlags: VkShaderStageFlags, layout: VkPipelineLayout, firstSet: uint32, descriptorSetCount: uint32, pDescriptorSets: ptr VkDescriptorSet, dynamicOffsetCount: uint32, pDynamicOffsets: ptr uint32): VkBindDescriptorSetsInfoKHR = result = VkBindDescriptorSetsInfoKHR( sType: sType, pNext: pNext, @@ -20094,7 +21343,7 @@ proc newVkBindDescriptorSetsInfoKHR*(sType: VkStructureType, pNext: pointer = ni pDynamicOffsets: pDynamicOffsets, ) -proc newVkPushConstantsInfoKHR*(sType: VkStructureType, pNext: pointer = nil, layout: VkPipelineLayout, stageFlags: VkShaderStageFlags, offset: uint32, size: uint32, pValues: pointer = nil): VkPushConstantsInfoKHR = +proc newVkPushConstantsInfoKHR*(sType: VkStructureType = VkStructureType.PushConstantsInfoKHR, pNext: pointer = nil, layout: VkPipelineLayout, stageFlags: VkShaderStageFlags, offset: uint32, size: uint32, pValues: pointer = nil): VkPushConstantsInfoKHR = result = VkPushConstantsInfoKHR( sType: sType, pNext: pNext, @@ -20105,7 +21354,7 @@ proc newVkPushConstantsInfoKHR*(sType: VkStructureType, pNext: pointer = nil, la pValues: pValues, ) -proc newVkPushDescriptorSetInfoKHR*(sType: VkStructureType, pNext: pointer = nil, stageFlags: VkShaderStageFlags, layout: VkPipelineLayout, set: uint32, descriptorWriteCount: uint32, pDescriptorWrites: ptr VkWriteDescriptorSet): VkPushDescriptorSetInfoKHR = +proc newVkPushDescriptorSetInfoKHR*(sType: VkStructureType = VkStructureType.PushDescriptorSetInfoKHR, pNext: pointer = nil, stageFlags: VkShaderStageFlags, layout: VkPipelineLayout, set: uint32, descriptorWriteCount: uint32, pDescriptorWrites: ptr VkWriteDescriptorSet): VkPushDescriptorSetInfoKHR = result = VkPushDescriptorSetInfoKHR( sType: sType, pNext: pNext, @@ -20116,7 +21365,7 @@ proc newVkPushDescriptorSetInfoKHR*(sType: VkStructureType, pNext: pointer = nil pDescriptorWrites: pDescriptorWrites, ) -proc newVkPushDescriptorSetWithTemplateInfoKHR*(sType: VkStructureType, pNext: pointer = nil, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: uint32, pData: pointer = nil): VkPushDescriptorSetWithTemplateInfoKHR = +proc newVkPushDescriptorSetWithTemplateInfoKHR*(sType: VkStructureType = VkStructureType.PushDescriptorSetWithTemplateInfoKHR, pNext: pointer = nil, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: uint32, pData: pointer = nil): VkPushDescriptorSetWithTemplateInfoKHR = result = VkPushDescriptorSetWithTemplateInfoKHR( sType: sType, pNext: pNext, @@ -20126,7 +21375,7 @@ proc newVkPushDescriptorSetWithTemplateInfoKHR*(sType: VkStructureType, pNext: p pData: pData, ) -proc newVkSetDescriptorBufferOffsetsInfoEXT*(sType: VkStructureType, pNext: pointer = nil, stageFlags: VkShaderStageFlags, layout: VkPipelineLayout, firstSet: uint32, setCount: uint32, pBufferIndices: ptr uint32, pOffsets: ptr VkDeviceSize): VkSetDescriptorBufferOffsetsInfoEXT = +proc newVkSetDescriptorBufferOffsetsInfoEXT*(sType: VkStructureType = VkStructureType.SetDescriptorBufferOffsetsInfoEXT, pNext: pointer = nil, stageFlags: VkShaderStageFlags, layout: VkPipelineLayout, firstSet: uint32, setCount: uint32, pBufferIndices: ptr uint32, pOffsets: ptr VkDeviceSize): VkSetDescriptorBufferOffsetsInfoEXT = result = VkSetDescriptorBufferOffsetsInfoEXT( sType: sType, pNext: pNext, @@ -20138,7 +21387,7 @@ proc newVkSetDescriptorBufferOffsetsInfoEXT*(sType: VkStructureType, pNext: poin pOffsets: pOffsets, ) -proc newVkBindDescriptorBufferEmbeddedSamplersInfoEXT*(sType: VkStructureType, pNext: pointer = nil, stageFlags: VkShaderStageFlags, layout: VkPipelineLayout, set: uint32): VkBindDescriptorBufferEmbeddedSamplersInfoEXT = +proc newVkBindDescriptorBufferEmbeddedSamplersInfoEXT*(sType: VkStructureType = VkStructureType.BindDescriptorBufferEmbeddedSamplersInfoEXT, pNext: pointer = nil, stageFlags: VkShaderStageFlags, layout: VkPipelineLayout, set: uint32): VkBindDescriptorBufferEmbeddedSamplersInfoEXT = result = VkBindDescriptorBufferEmbeddedSamplersInfoEXT( sType: sType, pNext: pNext, @@ -20147,21 +21396,21 @@ proc newVkBindDescriptorBufferEmbeddedSamplersInfoEXT*(sType: VkStructureType, p set: set, ) -proc newVkPhysicalDeviceCubicClampFeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, cubicRangeClamp: VkBool32): VkPhysicalDeviceCubicClampFeaturesQCOM = +proc newVkPhysicalDeviceCubicClampFeaturesQCOM*(sType: VkStructureType = VkStructureType.PhysicalDeviceCubicClampFeaturesQCOM, pNext: pointer = nil, cubicRangeClamp: VkBool32): VkPhysicalDeviceCubicClampFeaturesQCOM = result = VkPhysicalDeviceCubicClampFeaturesQCOM( sType: sType, pNext: pNext, cubicRangeClamp: cubicRangeClamp, ) -proc newVkPhysicalDeviceYcbcrDegammaFeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, ycbcrDegamma: VkBool32): VkPhysicalDeviceYcbcrDegammaFeaturesQCOM = +proc newVkPhysicalDeviceYcbcrDegammaFeaturesQCOM*(sType: VkStructureType = VkStructureType.PhysicalDeviceYcbcrDegammaFeaturesQCOM, pNext: pointer = nil, ycbcrDegamma: VkBool32): VkPhysicalDeviceYcbcrDegammaFeaturesQCOM = result = VkPhysicalDeviceYcbcrDegammaFeaturesQCOM( sType: sType, pNext: pNext, ycbcrDegamma: ycbcrDegamma, ) -proc newVkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, enableYDegamma: VkBool32, enableCbCrDegamma: VkBool32): VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM = +proc newVkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM*(sType: VkStructureType = VkStructureType.SamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM, pNext: pointer = nil, enableYDegamma: VkBool32, enableCbCrDegamma: VkBool32): VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM = result = VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM( sType: sType, pNext: pNext, @@ -20169,42 +21418,42 @@ proc newVkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM*(sType: VkStructureTy enableCbCrDegamma: enableCbCrDegamma, ) -proc newVkPhysicalDeviceCubicWeightsFeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, selectableCubicWeights: VkBool32): VkPhysicalDeviceCubicWeightsFeaturesQCOM = +proc newVkPhysicalDeviceCubicWeightsFeaturesQCOM*(sType: VkStructureType = VkStructureType.PhysicalDeviceCubicWeightsFeaturesQCOM, pNext: pointer = nil, selectableCubicWeights: VkBool32): VkPhysicalDeviceCubicWeightsFeaturesQCOM = result = VkPhysicalDeviceCubicWeightsFeaturesQCOM( sType: sType, pNext: pNext, selectableCubicWeights: selectableCubicWeights, ) -proc newVkSamplerCubicWeightsCreateInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, cubicWeights: VkCubicFilterWeightsQCOM): VkSamplerCubicWeightsCreateInfoQCOM = +proc newVkSamplerCubicWeightsCreateInfoQCOM*(sType: VkStructureType = VkStructureType.SamplerCubicWeightsCreateInfoQCOM, pNext: pointer = nil, cubicWeights: VkCubicFilterWeightsQCOM): VkSamplerCubicWeightsCreateInfoQCOM = result = VkSamplerCubicWeightsCreateInfoQCOM( sType: sType, pNext: pNext, cubicWeights: cubicWeights, ) -proc newVkBlitImageCubicWeightsInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, cubicWeights: VkCubicFilterWeightsQCOM): VkBlitImageCubicWeightsInfoQCOM = +proc newVkBlitImageCubicWeightsInfoQCOM*(sType: VkStructureType = VkStructureType.BlitImageCubicWeightsInfoQCOM, pNext: pointer = nil, cubicWeights: VkCubicFilterWeightsQCOM): VkBlitImageCubicWeightsInfoQCOM = result = VkBlitImageCubicWeightsInfoQCOM( sType: sType, pNext: pNext, cubicWeights: cubicWeights, ) -proc newVkPhysicalDeviceImageProcessing2FeaturesQCOM*(sType: VkStructureType, pNext: pointer = nil, textureBlockMatch2: VkBool32): VkPhysicalDeviceImageProcessing2FeaturesQCOM = +proc newVkPhysicalDeviceImageProcessing2FeaturesQCOM*(sType: VkStructureType = VkStructureType.PhysicalDeviceImageProcessing2FeaturesQCOM, pNext: pointer = nil, textureBlockMatch2: VkBool32): VkPhysicalDeviceImageProcessing2FeaturesQCOM = result = VkPhysicalDeviceImageProcessing2FeaturesQCOM( sType: sType, pNext: pNext, textureBlockMatch2: textureBlockMatch2, ) -proc newVkPhysicalDeviceImageProcessing2PropertiesQCOM*(sType: VkStructureType, pNext: pointer = nil, maxBlockMatchWindow: VkExtent2D): VkPhysicalDeviceImageProcessing2PropertiesQCOM = +proc newVkPhysicalDeviceImageProcessing2PropertiesQCOM*(sType: VkStructureType = VkStructureType.PhysicalDeviceImageProcessing2PropertiesQCOM, pNext: pointer = nil, maxBlockMatchWindow: VkExtent2D): VkPhysicalDeviceImageProcessing2PropertiesQCOM = result = VkPhysicalDeviceImageProcessing2PropertiesQCOM( sType: sType, pNext: pNext, maxBlockMatchWindow: maxBlockMatchWindow, ) -proc newVkSamplerBlockMatchWindowCreateInfoQCOM*(sType: VkStructureType, pNext: pointer = nil, windowExtent: VkExtent2D, windowCompareMode: VkBlockMatchWindowCompareModeQCOM): VkSamplerBlockMatchWindowCreateInfoQCOM = +proc newVkSamplerBlockMatchWindowCreateInfoQCOM*(sType: VkStructureType = VkStructureType.SamplerBlockMatchWindowCreateInfoQCOM, pNext: pointer = nil, windowExtent: VkExtent2D, windowCompareMode: VkBlockMatchWindowCompareModeQCOM): VkSamplerBlockMatchWindowCreateInfoQCOM = result = VkSamplerBlockMatchWindowCreateInfoQCOM( sType: sType, pNext: pNext, @@ -20212,21 +21461,21 @@ proc newVkSamplerBlockMatchWindowCreateInfoQCOM*(sType: VkStructureType, pNext: windowCompareMode: windowCompareMode, ) -proc newVkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, descriptorPoolOverallocation: VkBool32): VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV = +proc newVkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceDescriptorPoolOverallocationFeaturesNV, pNext: pointer = nil, descriptorPoolOverallocation: VkBool32): VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV = result = VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV( sType: sType, pNext: pNext, descriptorPoolOverallocation: descriptorPoolOverallocation, ) -proc newVkPhysicalDeviceLayeredDriverPropertiesMSFT*(sType: VkStructureType, pNext: pointer = nil, underlyingAPI: VkLayeredDriverUnderlyingApiMSFT): VkPhysicalDeviceLayeredDriverPropertiesMSFT = +proc newVkPhysicalDeviceLayeredDriverPropertiesMSFT*(sType: VkStructureType = VkStructureType.PhysicalDeviceLayeredDriverPropertiesMSFT, pNext: pointer = nil, underlyingAPI: VkLayeredDriverUnderlyingApiMSFT): VkPhysicalDeviceLayeredDriverPropertiesMSFT = result = VkPhysicalDeviceLayeredDriverPropertiesMSFT( sType: sType, pNext: pNext, underlyingAPI: underlyingAPI, ) -proc newVkPhysicalDevicePerStageDescriptorSetFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, perStageDescriptorSet: VkBool32, dynamicPipelineLayout: VkBool32): VkPhysicalDevicePerStageDescriptorSetFeaturesNV = +proc newVkPhysicalDevicePerStageDescriptorSetFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDevicePerStageDescriptorSetFeaturesNV, pNext: pointer = nil, perStageDescriptorSet: VkBool32, dynamicPipelineLayout: VkBool32): VkPhysicalDevicePerStageDescriptorSetFeaturesNV = result = VkPhysicalDevicePerStageDescriptorSetFeaturesNV( sType: sType, pNext: pNext, @@ -20234,14 +21483,14 @@ proc newVkPhysicalDevicePerStageDescriptorSetFeaturesNV*(sType: VkStructureType, dynamicPipelineLayout: dynamicPipelineLayout, ) -proc newVkPhysicalDeviceExternalFormatResolveFeaturesANDROID*(sType: VkStructureType, pNext: pointer = nil, externalFormatResolve: VkBool32): VkPhysicalDeviceExternalFormatResolveFeaturesANDROID = +proc newVkPhysicalDeviceExternalFormatResolveFeaturesANDROID*(sType: VkStructureType = VkStructureType.PhysicalDeviceExternalFormatResolveFeaturesANDROID, pNext: pointer = nil, externalFormatResolve: VkBool32): VkPhysicalDeviceExternalFormatResolveFeaturesANDROID = result = VkPhysicalDeviceExternalFormatResolveFeaturesANDROID( sType: sType, pNext: pNext, externalFormatResolve: externalFormatResolve, ) -proc newVkPhysicalDeviceExternalFormatResolvePropertiesANDROID*(sType: VkStructureType, pNext: pointer = nil, nullColorAttachmentWithExternalFormatResolve: VkBool32, externalFormatResolveChromaOffsetX: VkChromaLocation, externalFormatResolveChromaOffsetY: VkChromaLocation): VkPhysicalDeviceExternalFormatResolvePropertiesANDROID = +proc newVkPhysicalDeviceExternalFormatResolvePropertiesANDROID*(sType: VkStructureType = VkStructureType.PhysicalDeviceExternalFormatResolvePropertiesANDROID, pNext: pointer = nil, nullColorAttachmentWithExternalFormatResolve: VkBool32, externalFormatResolveChromaOffsetX: VkChromaLocation, externalFormatResolveChromaOffsetY: VkChromaLocation): VkPhysicalDeviceExternalFormatResolvePropertiesANDROID = result = VkPhysicalDeviceExternalFormatResolvePropertiesANDROID( sType: sType, pNext: pNext, @@ -20250,14 +21499,14 @@ proc newVkPhysicalDeviceExternalFormatResolvePropertiesANDROID*(sType: VkStructu externalFormatResolveChromaOffsetY: externalFormatResolveChromaOffsetY, ) -proc newVkAndroidHardwareBufferFormatResolvePropertiesANDROID*(sType: VkStructureType, pNext: pointer = nil, colorAttachmentFormat: VkFormat): VkAndroidHardwareBufferFormatResolvePropertiesANDROID = +proc newVkAndroidHardwareBufferFormatResolvePropertiesANDROID*(sType: VkStructureType = VkStructureType.AndroidHardwareBufferFormatResolvePropertiesANDROID, pNext: pointer = nil, colorAttachmentFormat: VkFormat): VkAndroidHardwareBufferFormatResolvePropertiesANDROID = result = VkAndroidHardwareBufferFormatResolvePropertiesANDROID( sType: sType, pNext: pNext, colorAttachmentFormat: colorAttachmentFormat, ) -proc newVkLatencySleepModeInfoNV*(sType: VkStructureType, pNext: pointer = nil, lowLatencyMode: VkBool32, lowLatencyBoost: VkBool32, minimumIntervalUs: uint32): VkLatencySleepModeInfoNV = +proc newVkLatencySleepModeInfoNV*(sType: VkStructureType = VkStructureType.LatencySleepModeInfoNV, pNext: pointer = nil, lowLatencyMode: VkBool32, lowLatencyBoost: VkBool32, minimumIntervalUs: uint32): VkLatencySleepModeInfoNV = result = VkLatencySleepModeInfoNV( sType: sType, pNext: pNext, @@ -20266,7 +21515,7 @@ proc newVkLatencySleepModeInfoNV*(sType: VkStructureType, pNext: pointer = nil, minimumIntervalUs: minimumIntervalUs, ) -proc newVkLatencySleepInfoNV*(sType: VkStructureType, pNext: pointer = nil, signalSemaphore: VkSemaphore, value: uint64): VkLatencySleepInfoNV = +proc newVkLatencySleepInfoNV*(sType: VkStructureType = VkStructureType.LatencySleepInfoNV, pNext: pointer = nil, signalSemaphore: VkSemaphore, value: uint64): VkLatencySleepInfoNV = result = VkLatencySleepInfoNV( sType: sType, pNext: pNext, @@ -20274,7 +21523,7 @@ proc newVkLatencySleepInfoNV*(sType: VkStructureType, pNext: pointer = nil, sign value: value, ) -proc newVkSetLatencyMarkerInfoNV*(sType: VkStructureType, pNext: pointer = nil, presentID: uint64, marker: VkLatencyMarkerNV): VkSetLatencyMarkerInfoNV = +proc newVkSetLatencyMarkerInfoNV*(sType: VkStructureType = VkStructureType.SetLatencyMarkerInfoNV, pNext: pointer = nil, presentID: uint64, marker: VkLatencyMarkerNV): VkSetLatencyMarkerInfoNV = result = VkSetLatencyMarkerInfoNV( sType: sType, pNext: pNext, @@ -20282,7 +21531,7 @@ proc newVkSetLatencyMarkerInfoNV*(sType: VkStructureType, pNext: pointer = nil, marker: marker, ) -proc newVkGetLatencyMarkerInfoNV*(sType: VkStructureType, pNext: pointer = nil, timingCount: uint32, pTimings: ptr VkLatencyTimingsFrameReportNV): VkGetLatencyMarkerInfoNV = +proc newVkGetLatencyMarkerInfoNV*(sType: VkStructureType = VkStructureType.GetLatencyMarkerInfoNV, pNext: pointer = nil, timingCount: uint32, pTimings: ptr VkLatencyTimingsFrameReportNV): VkGetLatencyMarkerInfoNV = result = VkGetLatencyMarkerInfoNV( sType: sType, pNext: pNext, @@ -20290,7 +21539,7 @@ proc newVkGetLatencyMarkerInfoNV*(sType: VkStructureType, pNext: pointer = nil, pTimings: pTimings, ) -proc newVkLatencyTimingsFrameReportNV*(sType: VkStructureType, pNext: pointer = nil, presentID: uint64, inputSampleTimeUs: uint64, simStartTimeUs: uint64, simEndTimeUs: uint64, renderSubmitStartTimeUs: uint64, renderSubmitEndTimeUs: uint64, presentStartTimeUs: uint64, presentEndTimeUs: uint64, driverStartTimeUs: uint64, driverEndTimeUs: uint64, osRenderQueueStartTimeUs: uint64, osRenderQueueEndTimeUs: uint64, gpuRenderStartTimeUs: uint64, gpuRenderEndTimeUs: uint64): VkLatencyTimingsFrameReportNV = +proc newVkLatencyTimingsFrameReportNV*(sType: VkStructureType = VkStructureType.LatencyTimingsFrameReportNV, pNext: pointer = nil, presentID: uint64, inputSampleTimeUs: uint64, simStartTimeUs: uint64, simEndTimeUs: uint64, renderSubmitStartTimeUs: uint64, renderSubmitEndTimeUs: uint64, presentStartTimeUs: uint64, presentEndTimeUs: uint64, driverStartTimeUs: uint64, driverEndTimeUs: uint64, osRenderQueueStartTimeUs: uint64, osRenderQueueEndTimeUs: uint64, gpuRenderStartTimeUs: uint64, gpuRenderEndTimeUs: uint64): VkLatencyTimingsFrameReportNV = result = VkLatencyTimingsFrameReportNV( sType: sType, pNext: pNext, @@ -20310,28 +21559,28 @@ proc newVkLatencyTimingsFrameReportNV*(sType: VkStructureType, pNext: pointer = gpuRenderEndTimeUs: gpuRenderEndTimeUs, ) -proc newVkOutOfBandQueueTypeInfoNV*(sType: VkStructureType, pNext: pointer = nil, queueType: VkOutOfBandQueueTypeNV): VkOutOfBandQueueTypeInfoNV = +proc newVkOutOfBandQueueTypeInfoNV*(sType: VkStructureType = VkStructureType.OutOfBandQueueTypeInfoNV, pNext: pointer = nil, queueType: VkOutOfBandQueueTypeNV): VkOutOfBandQueueTypeInfoNV = result = VkOutOfBandQueueTypeInfoNV( sType: sType, pNext: pNext, queueType: queueType, ) -proc newVkLatencySubmissionPresentIdNV*(sType: VkStructureType, pNext: pointer = nil, presentID: uint64): VkLatencySubmissionPresentIdNV = +proc newVkLatencySubmissionPresentIdNV*(sType: VkStructureType = VkStructureType.LatencySubmissionPresentIdNV, pNext: pointer = nil, presentID: uint64): VkLatencySubmissionPresentIdNV = result = VkLatencySubmissionPresentIdNV( sType: sType, pNext: pNext, presentID: presentID, ) -proc newVkSwapchainLatencyCreateInfoNV*(sType: VkStructureType, pNext: pointer = nil, latencyModeEnable: VkBool32): VkSwapchainLatencyCreateInfoNV = +proc newVkSwapchainLatencyCreateInfoNV*(sType: VkStructureType = VkStructureType.SwapchainLatencyCreateInfoNV, pNext: pointer = nil, latencyModeEnable: VkBool32): VkSwapchainLatencyCreateInfoNV = result = VkSwapchainLatencyCreateInfoNV( sType: sType, pNext: pNext, latencyModeEnable: latencyModeEnable, ) -proc newVkLatencySurfaceCapabilitiesNV*(sType: VkStructureType, pNext: pointer = nil, presentModeCount: uint32, pPresentModes: ptr VkPresentModeKHR): VkLatencySurfaceCapabilitiesNV = +proc newVkLatencySurfaceCapabilitiesNV*(sType: VkStructureType = VkStructureType.LatencySurfaceCapabilitiesNV, pNext: pointer = nil, presentModeCount: uint32, pPresentModes: ptr VkPresentModeKHR): VkLatencySurfaceCapabilitiesNV = result = VkLatencySurfaceCapabilitiesNV( sType: sType, pNext: pNext, @@ -20339,14 +21588,14 @@ proc newVkLatencySurfaceCapabilitiesNV*(sType: VkStructureType, pNext: pointer = pPresentModes: pPresentModes, ) -proc newVkPhysicalDeviceCudaKernelLaunchFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, cudaKernelLaunchFeatures: VkBool32): VkPhysicalDeviceCudaKernelLaunchFeaturesNV = +proc newVkPhysicalDeviceCudaKernelLaunchFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceCudaKernelLaunchFeaturesNV, pNext: pointer = nil, cudaKernelLaunchFeatures: VkBool32): VkPhysicalDeviceCudaKernelLaunchFeaturesNV = result = VkPhysicalDeviceCudaKernelLaunchFeaturesNV( sType: sType, pNext: pNext, cudaKernelLaunchFeatures: cudaKernelLaunchFeatures, ) -proc newVkPhysicalDeviceCudaKernelLaunchPropertiesNV*(sType: VkStructureType, pNext: pointer = nil, computeCapabilityMinor: uint32, computeCapabilityMajor: uint32): VkPhysicalDeviceCudaKernelLaunchPropertiesNV = +proc newVkPhysicalDeviceCudaKernelLaunchPropertiesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceCudaKernelLaunchPropertiesNV, pNext: pointer = nil, computeCapabilityMinor: uint32, computeCapabilityMajor: uint32): VkPhysicalDeviceCudaKernelLaunchPropertiesNV = result = VkPhysicalDeviceCudaKernelLaunchPropertiesNV( sType: sType, pNext: pNext, @@ -20354,42 +21603,42 @@ proc newVkPhysicalDeviceCudaKernelLaunchPropertiesNV*(sType: VkStructureType, pN computeCapabilityMajor: computeCapabilityMajor, ) -proc newVkDeviceQueueShaderCoreControlCreateInfoARM*(sType: VkStructureType, pNext: pointer = nil, shaderCoreCount: uint32): VkDeviceQueueShaderCoreControlCreateInfoARM = +proc newVkDeviceQueueShaderCoreControlCreateInfoARM*(sType: VkStructureType = VkStructureType.DeviceQueueShaderCoreControlCreateInfoARM, pNext: pointer = nil, shaderCoreCount: uint32): VkDeviceQueueShaderCoreControlCreateInfoARM = result = VkDeviceQueueShaderCoreControlCreateInfoARM( sType: sType, pNext: pNext, shaderCoreCount: shaderCoreCount, ) -proc newVkPhysicalDeviceSchedulingControlsFeaturesARM*(sType: VkStructureType, pNext: pointer = nil, schedulingControls: VkBool32): VkPhysicalDeviceSchedulingControlsFeaturesARM = +proc newVkPhysicalDeviceSchedulingControlsFeaturesARM*(sType: VkStructureType = VkStructureType.PhysicalDeviceSchedulingControlsFeaturesARM, pNext: pointer = nil, schedulingControls: VkBool32): VkPhysicalDeviceSchedulingControlsFeaturesARM = result = VkPhysicalDeviceSchedulingControlsFeaturesARM( sType: sType, pNext: pNext, schedulingControls: schedulingControls, ) -proc newVkPhysicalDeviceSchedulingControlsPropertiesARM*(sType: VkStructureType, pNext: pointer = nil, schedulingControlsFlags: VkPhysicalDeviceSchedulingControlsFlagsARM): VkPhysicalDeviceSchedulingControlsPropertiesARM = +proc newVkPhysicalDeviceSchedulingControlsPropertiesARM*(sType: VkStructureType = VkStructureType.PhysicalDeviceSchedulingControlsPropertiesARM, pNext: pointer = nil, schedulingControlsFlags: VkPhysicalDeviceSchedulingControlsFlagsARM): VkPhysicalDeviceSchedulingControlsPropertiesARM = result = VkPhysicalDeviceSchedulingControlsPropertiesARM( sType: sType, pNext: pNext, schedulingControlsFlags: schedulingControlsFlags, ) -proc newVkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG*(sType: VkStructureType, pNext: pointer = nil, relaxedLineRasterization: VkBool32): VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG = +proc newVkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG*(sType: VkStructureType = VkStructureType.PhysicalDeviceRelaxedLineRasterizationFeaturesIMG, pNext: pointer = nil, relaxedLineRasterization: VkBool32): VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG = result = VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG( sType: sType, pNext: pNext, relaxedLineRasterization: relaxedLineRasterization, ) -proc newVkPhysicalDeviceRenderPassStripedFeaturesARM*(sType: VkStructureType, pNext: pointer = nil, renderPassStriped: VkBool32): VkPhysicalDeviceRenderPassStripedFeaturesARM = +proc newVkPhysicalDeviceRenderPassStripedFeaturesARM*(sType: VkStructureType = VkStructureType.PhysicalDeviceRenderPassStripedFeaturesARM, pNext: pointer = nil, renderPassStriped: VkBool32): VkPhysicalDeviceRenderPassStripedFeaturesARM = result = VkPhysicalDeviceRenderPassStripedFeaturesARM( sType: sType, pNext: pNext, renderPassStriped: renderPassStriped, ) -proc newVkPhysicalDeviceRenderPassStripedPropertiesARM*(sType: VkStructureType, pNext: pointer = nil, renderPassStripeGranularity: VkExtent2D, maxRenderPassStripes: uint32): VkPhysicalDeviceRenderPassStripedPropertiesARM = +proc newVkPhysicalDeviceRenderPassStripedPropertiesARM*(sType: VkStructureType = VkStructureType.PhysicalDeviceRenderPassStripedPropertiesARM, pNext: pointer = nil, renderPassStripeGranularity: VkExtent2D, maxRenderPassStripes: uint32): VkPhysicalDeviceRenderPassStripedPropertiesARM = result = VkPhysicalDeviceRenderPassStripedPropertiesARM( sType: sType, pNext: pNext, @@ -20397,14 +21646,14 @@ proc newVkPhysicalDeviceRenderPassStripedPropertiesARM*(sType: VkStructureType, maxRenderPassStripes: maxRenderPassStripes, ) -proc newVkRenderPassStripeInfoARM*(sType: VkStructureType, pNext: pointer = nil, stripeArea: VkRect2D): VkRenderPassStripeInfoARM = +proc newVkRenderPassStripeInfoARM*(sType: VkStructureType = VkStructureType.RenderPassStripeInfoARM, pNext: pointer = nil, stripeArea: VkRect2D): VkRenderPassStripeInfoARM = result = VkRenderPassStripeInfoARM( sType: sType, pNext: pNext, stripeArea: stripeArea, ) -proc newVkRenderPassStripeBeginInfoARM*(sType: VkStructureType, pNext: pointer = nil, stripeInfoCount: uint32, pStripeInfos: ptr VkRenderPassStripeInfoARM): VkRenderPassStripeBeginInfoARM = +proc newVkRenderPassStripeBeginInfoARM*(sType: VkStructureType = VkStructureType.RenderPassStripeBeginInfoARM, pNext: pointer = nil, stripeInfoCount: uint32, pStripeInfos: ptr VkRenderPassStripeInfoARM): VkRenderPassStripeBeginInfoARM = result = VkRenderPassStripeBeginInfoARM( sType: sType, pNext: pNext, @@ -20412,7 +21661,7 @@ proc newVkRenderPassStripeBeginInfoARM*(sType: VkStructureType, pNext: pointer = pStripeInfos: pStripeInfos, ) -proc newVkRenderPassStripeSubmitInfoARM*(sType: VkStructureType, pNext: pointer = nil, stripeSemaphoreInfoCount: uint32, pStripeSemaphoreInfos: ptr VkSemaphoreSubmitInfo): VkRenderPassStripeSubmitInfoARM = +proc newVkRenderPassStripeSubmitInfoARM*(sType: VkStructureType = VkStructureType.RenderPassStripeSubmitInfoARM, pNext: pointer = nil, stripeSemaphoreInfoCount: uint32, pStripeSemaphoreInfos: ptr VkSemaphoreSubmitInfo): VkRenderPassStripeSubmitInfoARM = result = VkRenderPassStripeSubmitInfoARM( sType: sType, pNext: pNext, @@ -20420,14 +21669,14 @@ proc newVkRenderPassStripeSubmitInfoARM*(sType: VkStructureType, pNext: pointer pStripeSemaphoreInfos: pStripeSemaphoreInfos, ) -proc newVkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, shaderMaximalReconvergence: VkBool32): VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR = +proc newVkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderMaximalReconvergenceFeaturesKHR, pNext: pointer = nil, shaderMaximalReconvergence: VkBool32): VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR = result = VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR( sType: sType, pNext: pNext, shaderMaximalReconvergence: shaderMaximalReconvergence, ) -proc newVkPhysicalDeviceShaderSubgroupRotateFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, shaderSubgroupRotate: VkBool32, shaderSubgroupRotateClustered: VkBool32): VkPhysicalDeviceShaderSubgroupRotateFeaturesKHR = +proc newVkPhysicalDeviceShaderSubgroupRotateFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderSubgroupRotateFeaturesKHR, pNext: pointer = nil, shaderSubgroupRotate: VkBool32, shaderSubgroupRotateClustered: VkBool32): VkPhysicalDeviceShaderSubgroupRotateFeaturesKHR = result = VkPhysicalDeviceShaderSubgroupRotateFeaturesKHR( sType: sType, pNext: pNext, @@ -20435,28 +21684,28 @@ proc newVkPhysicalDeviceShaderSubgroupRotateFeaturesKHR*(sType: VkStructureType, shaderSubgroupRotateClustered: shaderSubgroupRotateClustered, ) -proc newVkPhysicalDeviceShaderExpectAssumeFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, shaderExpectAssume: VkBool32): VkPhysicalDeviceShaderExpectAssumeFeaturesKHR = +proc newVkPhysicalDeviceShaderExpectAssumeFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderExpectAssumeFeaturesKHR, pNext: pointer = nil, shaderExpectAssume: VkBool32): VkPhysicalDeviceShaderExpectAssumeFeaturesKHR = result = VkPhysicalDeviceShaderExpectAssumeFeaturesKHR( sType: sType, pNext: pNext, shaderExpectAssume: shaderExpectAssume, ) -proc newVkPhysicalDeviceShaderFloatControls2FeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, shaderFloatControls2: VkBool32): VkPhysicalDeviceShaderFloatControls2FeaturesKHR = +proc newVkPhysicalDeviceShaderFloatControls2FeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderFloatControls2FeaturesKHR, pNext: pointer = nil, shaderFloatControls2: VkBool32): VkPhysicalDeviceShaderFloatControls2FeaturesKHR = result = VkPhysicalDeviceShaderFloatControls2FeaturesKHR( sType: sType, pNext: pNext, shaderFloatControls2: shaderFloatControls2, ) -proc newVkPhysicalDeviceDynamicRenderingLocalReadFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, dynamicRenderingLocalRead: VkBool32): VkPhysicalDeviceDynamicRenderingLocalReadFeaturesKHR = +proc newVkPhysicalDeviceDynamicRenderingLocalReadFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceDynamicRenderingLocalReadFeaturesKHR, pNext: pointer = nil, dynamicRenderingLocalRead: VkBool32): VkPhysicalDeviceDynamicRenderingLocalReadFeaturesKHR = result = VkPhysicalDeviceDynamicRenderingLocalReadFeaturesKHR( sType: sType, pNext: pNext, dynamicRenderingLocalRead: dynamicRenderingLocalRead, ) -proc newVkRenderingAttachmentLocationInfoKHR*(sType: VkStructureType, pNext: pointer = nil, colorAttachmentCount: uint32, pColorAttachmentLocations: ptr uint32): VkRenderingAttachmentLocationInfoKHR = +proc newVkRenderingAttachmentLocationInfoKHR*(sType: VkStructureType = VkStructureType.RenderingAttachmentLocationInfoKHR, pNext: pointer = nil, colorAttachmentCount: uint32, pColorAttachmentLocations: ptr uint32): VkRenderingAttachmentLocationInfoKHR = result = VkRenderingAttachmentLocationInfoKHR( sType: sType, pNext: pNext, @@ -20464,7 +21713,7 @@ proc newVkRenderingAttachmentLocationInfoKHR*(sType: VkStructureType, pNext: poi pColorAttachmentLocations: pColorAttachmentLocations, ) -proc newVkRenderingInputAttachmentIndexInfoKHR*(sType: VkStructureType, pNext: pointer = nil, colorAttachmentCount: uint32, pColorAttachmentInputIndices: ptr uint32, pDepthInputAttachmentIndex: ptr uint32, pStencilInputAttachmentIndex: ptr uint32): VkRenderingInputAttachmentIndexInfoKHR = +proc newVkRenderingInputAttachmentIndexInfoKHR*(sType: VkStructureType = VkStructureType.RenderingInputAttachmentIndexInfoKHR, pNext: pointer = nil, colorAttachmentCount: uint32, pColorAttachmentInputIndices: ptr uint32, pDepthInputAttachmentIndex: ptr uint32, pStencilInputAttachmentIndex: ptr uint32): VkRenderingInputAttachmentIndexInfoKHR = result = VkRenderingInputAttachmentIndexInfoKHR( sType: sType, pNext: pNext, @@ -20474,21 +21723,21 @@ proc newVkRenderingInputAttachmentIndexInfoKHR*(sType: VkStructureType, pNext: p pStencilInputAttachmentIndex: pStencilInputAttachmentIndex, ) -proc newVkPhysicalDeviceShaderQuadControlFeaturesKHR*(sType: VkStructureType, pNext: pointer = nil, shaderQuadControl: VkBool32): VkPhysicalDeviceShaderQuadControlFeaturesKHR = +proc newVkPhysicalDeviceShaderQuadControlFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderQuadControlFeaturesKHR, pNext: pointer = nil, shaderQuadControl: VkBool32): VkPhysicalDeviceShaderQuadControlFeaturesKHR = result = VkPhysicalDeviceShaderQuadControlFeaturesKHR( sType: sType, pNext: pNext, shaderQuadControl: shaderQuadControl, ) -proc newVkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, shaderFloat16VectorAtomics: VkBool32): VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV = +proc newVkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderAtomicFloat16VectorFeaturesNV, pNext: pointer = nil, shaderFloat16VectorAtomics: VkBool32): VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV = result = VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV( sType: sType, pNext: pNext, shaderFloat16VectorAtomics: shaderFloat16VectorAtomics, ) -proc newVkPhysicalDeviceMapMemoryPlacedFeaturesEXT*(sType: VkStructureType, pNext: pointer = nil, memoryMapPlaced: VkBool32, memoryMapRangePlaced: VkBool32, memoryUnmapReserve: VkBool32): VkPhysicalDeviceMapMemoryPlacedFeaturesEXT = +proc newVkPhysicalDeviceMapMemoryPlacedFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceMapMemoryPlacedFeaturesEXT, pNext: pointer = nil, memoryMapPlaced: VkBool32, memoryMapRangePlaced: VkBool32, memoryUnmapReserve: VkBool32): VkPhysicalDeviceMapMemoryPlacedFeaturesEXT = result = VkPhysicalDeviceMapMemoryPlacedFeaturesEXT( sType: sType, pNext: pNext, @@ -20497,21 +21746,21 @@ proc newVkPhysicalDeviceMapMemoryPlacedFeaturesEXT*(sType: VkStructureType, pNex memoryUnmapReserve: memoryUnmapReserve, ) -proc newVkPhysicalDeviceMapMemoryPlacedPropertiesEXT*(sType: VkStructureType, pNext: pointer = nil, minPlacedMemoryMapAlignment: VkDeviceSize): VkPhysicalDeviceMapMemoryPlacedPropertiesEXT = +proc newVkPhysicalDeviceMapMemoryPlacedPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceMapMemoryPlacedPropertiesEXT, pNext: pointer = nil, minPlacedMemoryMapAlignment: VkDeviceSize): VkPhysicalDeviceMapMemoryPlacedPropertiesEXT = result = VkPhysicalDeviceMapMemoryPlacedPropertiesEXT( sType: sType, pNext: pNext, minPlacedMemoryMapAlignment: minPlacedMemoryMapAlignment, ) -proc newVkMemoryMapPlacedInfoEXT*(sType: VkStructureType, pNext: pointer = nil, pPlacedAddress: pointer = nil): VkMemoryMapPlacedInfoEXT = +proc newVkMemoryMapPlacedInfoEXT*(sType: VkStructureType = VkStructureType.MemoryMapPlacedInfoEXT, pNext: pointer = nil, pPlacedAddress: pointer = nil): VkMemoryMapPlacedInfoEXT = result = VkMemoryMapPlacedInfoEXT( sType: sType, pNext: pNext, pPlacedAddress: pPlacedAddress, ) -proc newVkPhysicalDeviceRawAccessChainsFeaturesNV*(sType: VkStructureType, pNext: pointer = nil, shaderRawAccessChains: VkBool32): VkPhysicalDeviceRawAccessChainsFeaturesNV = +proc newVkPhysicalDeviceRawAccessChainsFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceRawAccessChainsFeaturesNV, pNext: pointer = nil, shaderRawAccessChains: VkBool32): VkPhysicalDeviceRawAccessChainsFeaturesNV = result = VkPhysicalDeviceRawAccessChainsFeaturesNV( sType: sType, pNext: pNext, diff --git a/tools/generator.nim b/tools/generator.nim index b502a70..527f249 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -299,7 +299,7 @@ proc genTypes(node: XmlNode, output: var string) = output.add(&" {memberName}*: array[{arraySize}, {memberType}]\n") continue -proc getEnumValue(e: XmlNode, name: string): (int, string) = +proc getEnumValue(e: XmlNode, name: string, extNumber: int): (int, string) = const companies = ["KHR", "EXT", "NV", "INTEL", "AMD", "MSFT", "QCOM", "ANDROID", "LUNARG", "HUAWEI", "QNX", "ARM"] var enumName = e.attr("name") @@ -314,8 +314,6 @@ proc getEnumValue(e: XmlNode, name: string): (int, string) = for suf in suffixes.items: enumName.removeSuffix(suf) enumName.removePrefix(tmp) - if enumName.startsWith("Reserved"): - return (0, "") if enumName[0] in Digits: enumName = "N" & enumName var enumValueStr = e.attr("value") @@ -324,15 +322,20 @@ proc getEnumValue(e: XmlNode, name: string): (int, string) = if e.attr("bitpos") != "": let bitpos = e.attr("bitpos").parseInt() num.setBit(bitpos) + if e.attr("offset") != "": + let extNumberAttr = e.attr("extnumber") + let extNumber = if extNumberAttr != "": extNumberAttr.parseInt() else: extNumber + let enumBase = 1000000000 + (extNumber - 1) * 1000 + num = parseInt(e.attr("offset")) + enumBase + if e.attr("dir") == "-": + num = -num enumValueStr = $num enumValueStr = enumValueStr.translateType() var enumValue = 0 - if enumValueStr.contains('x'): + if enumValueStr.startsWith("0x"): enumValue = fromHex[int](enumValueStr) else: enumValue = enumValueStr.parseInt() - if name == "VkToolPurposeFlagBits" and enumName == "ValidationBit": - echo (e, enumValue, e.attr("alias")) result = (enumValue, enumName) proc genEnums(node: XmlNode, output: var string) = @@ -377,10 +380,30 @@ proc genEnums(node: XmlNode, output: var string) = continue if e.attr("api") == "vulkansc" or e.attr("deprecated") != "" or e.attr("alias") != "": continue - let (enumValue, enumName) = getEnumValue(e, name) - if enumName == "" or elements.hasKey(enumValue): + let (enumValue, enumName) = getEnumValue(e, name, 1) + if elements.hasKey(enumValue): continue elements.add(enumValue, enumName) + # Add extensions + for ext in node.findAll("extension"): + if ext.attr("supported") == "disabled": continue + let extNumberAttr = ext.attr("number") + let extNumber = if extNumberAttr != "": extNumberAttr.parseInt() else: 1 + for r in ext.items: + if r.kind != xnElement or r.tag != "require": + continue + for e in r.items: + if e.kind != xnElement or e.tag != "enum": + continue + if e.attr("api") == "vulkansc" or e.attr("deprecated") != "" or e.attr("alias") != "": + continue + let extends = e.attr("extends") + if extends != name: + continue + let (enumValue, enumName) = getEnumValue(e, name, extNumber) + if elements.hasKey(enumValue): + continue + elements.add(enumValue, enumName) if elements.len == 0: continue output.add(&" {name}* {{.size: sizeof(int32).}} = enum\n") From 3b5e8bfea1f8f4092dcd058c1e9b09c3e46d644a Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Thu, 9 May 2024 01:57:49 +0300 Subject: [PATCH 34/57] add features --- src/vulkan.nim | 691 ++++++++++++++++++++++++++++++++------------ tools/generator.nim | 17 +- 2 files changed, 520 insertions(+), 188 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 2ca1939..1a9ee4c 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -98,12 +98,20 @@ type VideoDecodeSrcKhr VideoDecodeDpbKhr SharedPresentKhr = 1000111000 + DepthReadOnlyStencilAttachmentOptimal = 1000117000 + DepthAttachmentStencilReadOnlyOptimal FragmentShadingRateAttachmentOptimalKhr = 1000164003 FragmentDensityMapOptimalExt = 1000218000 RenderingLocalReadKhr = 1000232000 + DepthAttachmentOptimal = 1000241000 + DepthReadOnlyOptimal + StencilAttachmentOptimal + StencilReadOnlyOptimal VideoEncodeDstKhr = 1000299000 VideoEncodeSrcKhr VideoEncodeDpbKhr + ReadOnlyOptimal = 1000314000 + AttachmentOptimal AttachmentFeedbackLoopOptimalExt = 1000339000 VkAttachmentLoadOp* {.size: sizeof(int32).} = enum @@ -115,6 +123,7 @@ type VkAttachmentStoreOp* {.size: sizeof(int32).} = enum Store DontCare + None = 1000301000 VkImageType* {.size: sizeof(int32).} = enum N1d @@ -160,6 +169,7 @@ type UniformBufferDynamic StorageBufferDynamic InputAttachment + InlineUniformBlock = 1000138000 AccelerationStructureKhr = 1000150000 AccelerationStructureNv = 1000165000 MutableExt = 1000351000 @@ -204,6 +214,12 @@ type VkPipelineCacheHeaderVersion* {.size: sizeof(int32).} = enum One = 1 + SafetyCriticalOne = 1000298001 + + VkPipelineCacheCreateFlagBits* {.size: sizeof(int32).} = enum + ExternallySynchronizedBit = 1 + ReadOnlyBit + UseApplicationStorageBit = 4 VkPrimitiveTopology* {.size: sizeof(int32).} = enum PointList @@ -581,6 +597,60 @@ type Pvrtc14bppSrgbBlockImg Pvrtc22bppSrgbBlockImg Pvrtc24bppSrgbBlockImg + Astc4x4SfloatBlock = 1000066000 + Astc5x4SfloatBlock + Astc5x5SfloatBlock + Astc6x5SfloatBlock + Astc6x6SfloatBlock + Astc8x5SfloatBlock + Astc8x6SfloatBlock + Astc8x8SfloatBlock + Astc10x5SfloatBlock + Astc10x6SfloatBlock + Astc10x8SfloatBlock + Astc10x10SfloatBlock + Astc12x10SfloatBlock + Astc12x12SfloatBlock + G8b8g8r8422Unorm = 1000156000 + B8g8r8g8422Unorm + G8B8R83plane420Unorm + G8B8r82plane420Unorm + G8B8R83plane422Unorm + G8B8r82plane422Unorm + G8B8R83plane444Unorm + R10x6UnormPack16 + R10x6g10x6Unorm2pack16 + R10x6g10x6b10x6a10x6Unorm4pack16 + G10x6b10x6g10x6r10x6422Unorm4pack16 + B10x6g10x6r10x6g10x6422Unorm4pack16 + G10x6B10x6R10x63plane420Unorm3pack16 + G10x6B10x6r10x62plane420Unorm3pack16 + G10x6B10x6R10x63plane422Unorm3pack16 + G10x6B10x6r10x62plane422Unorm3pack16 + G10x6B10x6R10x63plane444Unorm3pack16 + R12x4UnormPack16 + R12x4g12x4Unorm2pack16 + R12x4g12x4b12x4a12x4Unorm4pack16 + G12x4b12x4g12x4r12x4422Unorm4pack16 + B12x4g12x4r12x4g12x4422Unorm4pack16 + G12x4B12x4R12x43plane420Unorm3pack16 + G12x4B12x4r12x42plane420Unorm3pack16 + G12x4B12x4R12x43plane422Unorm3pack16 + G12x4B12x4r12x42plane422Unorm3pack16 + G12x4B12x4R12x43plane444Unorm3pack16 + G16b16g16r16422Unorm + B16g16r16g16422Unorm + G16B16R163plane420Unorm + G16B16r162plane420Unorm + G16B16R163plane422Unorm + G16B16r162plane422Unorm + G16B16R163plane444Unorm + G8B8r82plane444Unorm = 1000330000 + G10x6B10x6r10x62plane444Unorm3pack16 + G12x4B12x4r12x42plane444Unorm3pack16 + G16B16r162plane444Unorm + A4r4g4b4UnormPack16 = 1000340000 + A4b4g4r4UnormPack16 R16g16S105Nv = 1000464000 A1b5g5r5UnormPack16Khr = 1000470000 A8UnormKhr @@ -635,6 +705,12 @@ type MemoryBarrier LoaderInstanceCreateInfo LoaderDeviceCreateInfo + PhysicalDeviceVulkan11Features + PhysicalDeviceVulkan11Properties + PhysicalDeviceVulkan12Features + PhysicalDeviceVulkan12Properties + PhysicalDeviceVulkan13Features + PhysicalDeviceVulkan13Properties SwapchainCreateInfoKhr = 1000001000 PresentInfoKhr DisplayModeCreateInfoKhr = 1000002000 @@ -716,6 +792,11 @@ type VideoDecodeH264SessionParametersAddInfoKhr VideoDecodeH264DpbSlotInfoKhr TextureLodGatherFormatPropertiesAmd = 1000041000 + RenderingInfo = 1000044000 + RenderingAttachmentInfo + PipelineRenderingCreateInfo + PhysicalDeviceDynamicRenderingFeatures + CommandBufferInheritanceRenderingInfo RenderingFragmentShadingRateAttachmentInfoKhr = 1000044006 RenderingFragmentDensityMapAttachmentInfoExt AttachmentSampleCountInfoAmd @@ -723,24 +804,55 @@ type StreamDescriptorSurfaceCreateInfoGgp = 1000049000 PhysicalDeviceCornerSampledImageFeaturesNv = 1000050000 PrivateVendorInfoPlaceholderOffset0Nv = 1000051000 + RenderPassMultiviewCreateInfo = 1000053000 + PhysicalDeviceMultiviewFeatures + PhysicalDeviceMultiviewProperties ExternalMemoryImageCreateInfoNv = 1000056000 ExportMemoryAllocateInfoNv ImportMemoryWin32HandleInfoNv = 1000057000 ExportMemoryWin32HandleInfoNv Win32KeyedMutexAcquireReleaseInfoNv = 1000058000 - DeviceGroupPresentCapabilitiesKhr = 1000060007 + PhysicalDeviceFeatures2 = 1000059000 + PhysicalDeviceProperties2 + FormatProperties2 + ImageFormatProperties2 + PhysicalDeviceImageFormatInfo2 + QueueFamilyProperties2 + PhysicalDeviceMemoryProperties2 + SparseImageFormatProperties2 + PhysicalDeviceSparseImageFormatInfo2 + MemoryAllocateFlagsInfo = 1000060000 + DeviceGroupRenderPassBeginInfo = 1000060003 + DeviceGroupCommandBufferBeginInfo + DeviceGroupSubmitInfo + DeviceGroupBindSparseInfo + DeviceGroupPresentCapabilitiesKhr ImageSwapchainCreateInfoKhr BindImageMemorySwapchainInfoKhr AcquireNextImageInfoKhr DeviceGroupPresentInfoKhr DeviceGroupSwapchainCreateInfoKhr + BindBufferMemoryDeviceGroupInfo + BindImageMemoryDeviceGroupInfo ValidationFlagsExt = 1000061000 ViSurfaceCreateInfoNn = 1000062000 + PhysicalDeviceShaderDrawParametersFeatures = 1000063000 + PhysicalDeviceTextureCompressionAstcHdrFeatures = 1000066000 ImageViewAstcDecodeModeExt = 1000067000 PhysicalDeviceAstcDecodeFeaturesExt PipelineRobustnessCreateInfoExt = 1000068000 PhysicalDevicePipelineRobustnessFeaturesExt PhysicalDevicePipelineRobustnessPropertiesExt + PhysicalDeviceGroupProperties = 1000070000 + DeviceGroupDeviceCreateInfo + PhysicalDeviceExternalImageFormatInfo = 1000071000 + ExternalImageFormatProperties + PhysicalDeviceExternalBufferInfo + ExternalBufferProperties + PhysicalDeviceIdProperties + ExternalMemoryBufferCreateInfo = 1000072000 + ExternalMemoryImageCreateInfo + ExportMemoryAllocateInfo ImportMemoryWin32HandleInfoKhr = 1000073000 ExportMemoryWin32HandleInfoKhr MemoryWin32HandlePropertiesKhr @@ -749,6 +861,9 @@ type MemoryFdPropertiesKhr MemoryGetFdInfoKhr Win32KeyedMutexAcquireReleaseInfoKhr = 1000075000 + PhysicalDeviceExternalSemaphoreInfo = 1000076000 + ExternalSemaphoreProperties + ExportSemaphoreCreateInfo = 1000077000 ImportSemaphoreWin32HandleInfoKhr = 1000078000 ExportSemaphoreWin32HandleInfoKhr D3d12FenceSubmitInfoKhr @@ -759,7 +874,10 @@ type CommandBufferInheritanceConditionalRenderingInfoExt = 1000081000 PhysicalDeviceConditionalRenderingFeaturesExt ConditionalRenderingBeginInfoExt + PhysicalDeviceShaderFloat16Int8Features = 1000082000 + PhysicalDevice16bitStorageFeatures = 1000083000 PresentRegionsKhr = 1000084000 + DescriptorUpdateTemplateCreateInfo = 1000085000 PipelineViewportWScalingStateCreateInfoNv = 1000087000 SurfaceCapabilities2Ext = 1000090000 DisplayPowerInfoExt = 1000091000 @@ -767,6 +885,7 @@ type DisplayEventInfoExt SwapchainCounterCreateInfoExt PresentTimesInfoGoogle = 1000092000 + PhysicalDeviceSubgroupProperties = 1000094000 PhysicalDeviceMultiviewPerViewAttributesPropertiesNvx = 1000097000 PipelineViewportSwizzleStateCreateInfoNv = 1000098000 PhysicalDeviceDiscardRectanglePropertiesExt = 1000099000 @@ -776,8 +895,22 @@ type PhysicalDeviceDepthClipEnableFeaturesExt = 1000102000 PipelineRasterizationDepthClipStateCreateInfoExt HdrMetadataExt = 1000105000 + PhysicalDeviceImagelessFramebufferFeatures = 1000108000 + FramebufferAttachmentsCreateInfo + FramebufferAttachmentImageInfo + RenderPassAttachmentBeginInfo + AttachmentDescription2 = 1000109000 + AttachmentReference2 + SubpassDescription2 + SubpassDependency2 + RenderPassCreateInfo2 + SubpassBeginInfo + SubpassEndInfo PhysicalDeviceRelaxedLineRasterizationFeaturesImg = 1000110000 SharedPresentSurfaceCapabilitiesKhr = 1000111000 + PhysicalDeviceExternalFenceInfo = 1000112000 + ExternalFenceProperties + ExportFenceCreateInfo = 1000113000 ImportFenceWin32HandleInfoKhr = 1000114000 ExportFenceWin32HandleInfoKhr FenceGetWin32HandleInfoKhr @@ -791,9 +924,14 @@ type PerformanceCounterKhr PerformanceCounterDescriptionKhr PerformanceQueryReservationInfoKhr + PhysicalDevicePointClippingProperties = 1000117000 + RenderPassInputAttachmentAspectCreateInfo + ImageViewUsageCreateInfo + PipelineTessellationDomainOriginStateCreateInfo PhysicalDeviceSurfaceInfo2Khr = 1000119000 SurfaceCapabilities2Khr SurfaceFormat2Khr + PhysicalDeviceVariablePointersFeatures = 1000120000 DisplayProperties2Khr = 1000121000 DisplayPlaneProperties2Khr DisplayModeProperties2Khr @@ -801,6 +939,8 @@ type DisplayPlaneCapabilities2Khr IosSurfaceCreateInfoMvk = 1000122000 MacosSurfaceCreateInfoMvk = 1000123000 + MemoryDedicatedRequirements = 1000127000 + MemoryDedicatedAllocateInfo DebugUtilsObjectNameInfoExt = 1000128000 DebugUtilsObjectTagInfoExt DebugUtilsLabelExt @@ -813,16 +953,32 @@ type MemoryGetAndroidHardwareBufferInfoAndroid ExternalFormatAndroid AndroidHardwareBufferFormatProperties2Android + PhysicalDeviceSamplerFilterMinmaxProperties = 1000130000 + SamplerReductionModeCreateInfo PhysicalDeviceShaderEnqueueFeaturesAmdx = 1000134000 PhysicalDeviceShaderEnqueuePropertiesAmdx ExecutionGraphPipelineScratchSizeAmdx ExecutionGraphPipelineCreateInfoAmdx PipelineShaderStageNodeCreateInfoAmdx + PhysicalDeviceInlineUniformBlockFeatures = 1000138000 + PhysicalDeviceInlineUniformBlockProperties + WriteDescriptorSetInlineUniformBlock + DescriptorPoolInlineUniformBlockCreateInfo SampleLocationsInfoExt = 1000143000 RenderPassSampleLocationsBeginInfoExt PipelineSampleLocationsStateCreateInfoExt PhysicalDeviceSampleLocationsPropertiesExt MultisamplePropertiesExt + ProtectedSubmitInfo = 1000145000 + PhysicalDeviceProtectedMemoryFeatures + PhysicalDeviceProtectedMemoryProperties + DeviceQueueInfo2 + BufferMemoryRequirementsInfo2 = 1000146000 + ImageMemoryRequirementsInfo2 + ImageSparseMemoryRequirementsInfo2 + MemoryRequirements2 + SparseImageMemoryRequirements2 + ImageFormatListCreateInfo = 1000147000 PhysicalDeviceBlendOperationAdvancedFeaturesExt = 1000148000 PhysicalDeviceBlendOperationAdvancedPropertiesExt PipelineColorBlendAdvancedStateCreateInfoExt @@ -848,6 +1004,14 @@ type PipelineCoverageModulationStateCreateInfoNv = 1000152000 PhysicalDeviceShaderSmBuiltinsFeaturesNv = 1000154000 PhysicalDeviceShaderSmBuiltinsPropertiesNv + SamplerYcbcrConversionCreateInfo = 1000156000 + SamplerYcbcrConversionInfo + BindImagePlaneMemoryInfo + ImagePlaneMemoryRequirementsInfo + PhysicalDeviceSamplerYcbcrConversionFeatures + SamplerYcbcrConversionImageFormatProperties + BindBufferMemoryInfo = 1000157000 + BindImageMemoryInfo DrmFormatModifierPropertiesListExt = 1000158000 PhysicalDeviceImageDrmFormatModifierInfoExt = 1000158002 ImageDrmFormatModifierListCreateInfoExt @@ -856,6 +1020,11 @@ type DrmFormatModifierPropertiesList2Ext ValidationCacheCreateInfoExt = 1000160000 ShaderModuleValidationCacheCreateInfoExt + DescriptorSetLayoutBindingFlagsCreateInfo = 1000161000 + PhysicalDeviceDescriptorIndexingFeatures + PhysicalDeviceDescriptorIndexingProperties + DescriptorSetVariableDescriptorCountAllocateInfo + DescriptorSetVariableDescriptorCountLayoutSupport PhysicalDevicePortabilitySubsetFeaturesKhr = 1000163000 PhysicalDevicePortabilitySubsetPropertiesKhr PipelineViewportShadingRateImageStateCreateInfoNv = 1000164000 @@ -875,12 +1044,17 @@ type AccelerationStructureInfoNv PhysicalDeviceRepresentativeFragmentTestFeaturesNv = 1000166000 PipelineRepresentativeFragmentTestStateCreateInfoNv + PhysicalDeviceMaintenance3Properties = 1000168000 + DescriptorSetLayoutSupport PhysicalDeviceImageViewImageFormatInfoExt = 1000170000 FilterCubicImageViewImageFormatPropertiesExt DeviceQueueGlobalPriorityCreateInfoKhr = 1000174000 + PhysicalDeviceShaderSubgroupExtendedTypesFeatures = 1000175000 + PhysicalDevice8bitStorageFeatures = 1000177000 ImportMemoryHostPointerInfoExt = 1000178000 MemoryHostPointerPropertiesExt PhysicalDeviceExternalMemoryHostPropertiesExt + PhysicalDeviceShaderAtomicInt64Features = 1000180000 PhysicalDeviceShaderClockFeaturesKhr = 1000181000 PipelineCompilerControlCreateInfoAmd = 1000183000 CalibratedTimestampInfoKhr = 1000184000 @@ -896,6 +1070,11 @@ type PipelineVertexInputDivisorStateCreateInfoKhr PhysicalDeviceVertexAttributeDivisorFeaturesKhr PresentFrameTokenGgp = 1000191000 + PipelineCreationFeedbackCreateInfo = 1000192000 + PhysicalDeviceDriverProperties = 1000196000 + PhysicalDeviceFloatControlsProperties = 1000197000 + PhysicalDeviceDepthStencilResolveProperties = 1000199000 + SubpassDescriptionDepthStencilResolve PhysicalDeviceComputeShaderDerivativesFeaturesNv = 1000201000 PhysicalDeviceMeshShaderFeaturesNv = 1000202000 PhysicalDeviceMeshShaderPropertiesNv @@ -905,6 +1084,12 @@ type PhysicalDeviceExclusiveScissorFeaturesNv = 1000205002 CheckpointDataNv = 1000206000 QueueFamilyCheckpointPropertiesNv + PhysicalDeviceTimelineSemaphoreFeatures = 1000207000 + PhysicalDeviceTimelineSemaphoreProperties + SemaphoreTypeCreateInfo + TimelineSemaphoreSubmitInfo + SemaphoreWaitInfo + SemaphoreSignalInfo PhysicalDeviceShaderIntegerFunctions2FeaturesIntel = 1000209000 QueryPoolPerformanceQueryCreateInfoIntel = 1000210000 InitializePerformanceApiInfoIntel @@ -912,14 +1097,20 @@ type PerformanceStreamMarkerInfoIntel PerformanceOverrideInfoIntel PerformanceConfigurationAcquireInfoIntel + PhysicalDeviceVulkanMemoryModelFeatures = 1000211000 PhysicalDevicePciBusInfoPropertiesExt = 1000212000 DisplayNativeHdrSurfaceCapabilitiesAmd = 1000213000 SwapchainDisplayNativeHdrCreateInfoAmd ImagepipeSurfaceCreateInfoFuchsia = 1000214000 + PhysicalDeviceShaderTerminateInvocationFeatures = 1000215000 MetalSurfaceCreateInfoExt = 1000217000 PhysicalDeviceFragmentDensityMapFeaturesExt = 1000218000 PhysicalDeviceFragmentDensityMapPropertiesExt RenderPassFragmentDensityMapCreateInfoExt + PhysicalDeviceScalarBlockLayoutFeatures = 1000221000 + PhysicalDeviceSubgroupSizeControlProperties = 1000225000 + PipelineShaderStageRequiredSubgroupSizeCreateInfo + PhysicalDeviceSubgroupSizeControlFeatures FragmentShadingRateAttachmentInfoKhr = 1000226000 PipelineFragmentShadingRateStateCreateInfoKhr PhysicalDeviceFragmentShadingRatePropertiesKhr @@ -937,8 +1128,14 @@ type MemoryPriorityAllocateInfoExt SurfaceProtectedCapabilitiesKhr = 1000239000 PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNv = 1000240000 + PhysicalDeviceSeparateDepthStencilLayoutsFeatures = 1000241000 + AttachmentReferenceStencilLayout + AttachmentDescriptionStencilLayout PhysicalDeviceBufferDeviceAddressFeaturesExt = 1000244000 - BufferDeviceAddressCreateInfoExt = 1000244002 + BufferDeviceAddressInfo + BufferDeviceAddressCreateInfoExt + PhysicalDeviceToolProperties = 1000245000 + ImageStencilUsageCreateInfo = 1000246000 ValidationFeaturesExt = 1000247000 PhysicalDevicePresentWaitFeaturesKhr = 1000248000 PhysicalDeviceCooperativeMatrixFeaturesNv = 1000249000 @@ -949,6 +1146,7 @@ type FramebufferMixedSamplesCombinationNv PhysicalDeviceFragmentShaderInterlockFeaturesExt = 1000251000 PhysicalDeviceYcbcrImageArraysFeaturesExt = 1000252000 + PhysicalDeviceUniformBufferStandardLayoutFeatures = 1000253000 PhysicalDeviceProvokingVertexFeaturesExt = 1000254000 PipelineRasterizationProvokingVertexStateCreateInfoExt PhysicalDeviceProvokingVertexPropertiesExt @@ -956,10 +1154,15 @@ type SurfaceFullScreenExclusiveWin32InfoExt SurfaceCapabilitiesFullScreenExclusiveExt HeadlessSurfaceCreateInfoExt = 1000256000 + PhysicalDeviceBufferDeviceAddressFeatures = 1000257000 + BufferOpaqueCaptureAddressCreateInfo = 1000257002 + MemoryOpaqueCaptureAddressAllocateInfo + DeviceMemoryOpaqueCaptureAddressInfo PhysicalDeviceLineRasterizationFeaturesKhr = 1000259000 PipelineRasterizationLineStateCreateInfoKhr PhysicalDeviceLineRasterizationPropertiesKhr PhysicalDeviceShaderAtomicFloatFeaturesExt = 1000260000 + PhysicalDeviceHostQueryResetFeatures = 1000261000 PhysicalDeviceIndexTypeUint8FeaturesKhr = 1000265000 PhysicalDeviceExtendedDynamicStateFeaturesExt = 1000267000 PhysicalDevicePipelineExecutablePropertiesFeaturesKhr = 1000269000 @@ -993,6 +1196,7 @@ type SwapchainPresentModeInfoExt SwapchainPresentScalingCreateInfoExt ReleaseSwapchainImagesInfoExt + PhysicalDeviceShaderDemoteToHelperInvocationFeatures = 1000276000 PhysicalDeviceDeviceGeneratedCommandsPropertiesNv = 1000277000 GraphicsShaderGroupCreateInfoNv GraphicsPipelineShaderGroupsCreateInfoNv @@ -1003,7 +1207,10 @@ type PhysicalDeviceDeviceGeneratedCommandsFeaturesNv PhysicalDeviceInheritedViewportScissorFeaturesNv = 1000278000 CommandBufferInheritanceViewportScissorInfoNv + PhysicalDeviceShaderIntegerDotProductFeatures = 1000280000 + PhysicalDeviceShaderIntegerDotProductProperties PhysicalDeviceTexelBufferAlignmentFeaturesExt = 1000281000 + PhysicalDeviceTexelBufferAlignmentProperties CommandBufferInheritanceRenderPassTransformInfoQcom = 1000282000 RenderPassTransformBeginInfoQcom PhysicalDeviceDepthBiasControlFeaturesExt = 1000283000 @@ -1023,6 +1230,19 @@ type SwapchainPresentBarrierCreateInfoNv PresentIdKhr = 1000294000 PhysicalDevicePresentIdFeaturesKhr + PhysicalDevicePrivateDataFeatures = 1000295000 + DevicePrivateDataCreateInfo + PrivateDataSlotCreateInfo + PhysicalDevicePipelineCreationCacheControlFeatures = 1000297000 + PhysicalDeviceVulkanSc10Features = 1000298000 + PhysicalDeviceVulkanSc10Properties + DeviceObjectReservationCreateInfo + CommandPoolMemoryReservationCreateInfo + CommandPoolMemoryConsumption + PipelinePoolSize + FaultData = 1000298007 + FaultCallbackInfo + PipelineOfflineCreateInfo = 1000298010 VideoEncodeInfoKhr = 1000299000 VideoEncodeRateControlInfoKhr VideoEncodeRateControlLayerInfoKhr @@ -1055,7 +1275,15 @@ type ImportMetalIoSurfaceInfoExt ExportMetalSharedEventInfoExt ImportMetalSharedEventInfoExt - QueueFamilyCheckpointProperties2Nv = 1000314008 + MemoryBarrier2 = 1000314000 + BufferMemoryBarrier2 + ImageMemoryBarrier2 + DependencyInfo + SubmitInfo2 + SemaphoreSubmitInfo + CommandBufferSubmitInfo + PhysicalDeviceSynchronization2Features + QueueFamilyCheckpointProperties2Nv CheckpointData2Nv PhysicalDeviceDescriptorBufferPropertiesExt = 1000316000 PhysicalDeviceDescriptorBufferDensityMapPropertiesExt @@ -1076,6 +1304,7 @@ type PhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAmd = 1000321000 PhysicalDeviceFragmentShaderBarycentricPropertiesKhr = 1000322000 PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKhr = 1000323000 + PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures = 1000325000 PhysicalDeviceFragmentShadingRateEnumsPropertiesNv = 1000326000 PhysicalDeviceFragmentShadingRateEnumsFeaturesNv PipelineFragmentShadingRateEnumStateCreateInfoNv @@ -1088,7 +1317,19 @@ type PhysicalDeviceFragmentDensityMap2FeaturesExt = 1000332000 PhysicalDeviceFragmentDensityMap2PropertiesExt CopyCommandTransformInfoQcom = 1000333000 + PhysicalDeviceImageRobustnessFeatures = 1000335000 PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKhr = 1000336000 + CopyBufferInfo2 = 1000337000 + CopyImageInfo2 + CopyBufferToImageInfo2 + CopyImageToBufferInfo2 + BlitImageInfo2 + ResolveImageInfo2 + BufferCopy2 + ImageCopy2 + ImageBlit2 + BufferImageCopy2 + ImageResolve2 PhysicalDeviceImageCompressionControlFeaturesExt = 1000338000 ImageCompressionControlExt SubresourceLayout2Khr @@ -1116,6 +1357,7 @@ type PhysicalDeviceDepthClipControlFeaturesExt = 1000355000 PipelineViewportDepthClipControlCreateInfoExt PhysicalDevicePrimitiveTopologyListRestartFeaturesExt = 1000356000 + FormatProperties3 = 1000360000 ImportMemoryZirconHandleInfoFuchsia = 1000364000 MemoryZirconHandlePropertiesFuchsia MemoryGetZirconHandleInfoFuchsia @@ -1191,6 +1433,10 @@ type PhysicalDeviceBorderColorSwizzleFeaturesExt = 1000411000 SamplerBorderColorComponentMappingCreateInfoExt PhysicalDevicePageableDeviceLocalMemoryFeaturesExt = 1000412000 + PhysicalDeviceMaintenance4Features = 1000413000 + PhysicalDeviceMaintenance4Properties + DeviceBufferMemoryRequirements + DeviceImageMemoryRequirements PhysicalDeviceShaderCorePropertiesArm = 1000415000 PhysicalDeviceShaderSubgroupRotateFeaturesKhr = 1000416000 DeviceQueueShaderCoreControlCreateInfoArm = 1000417000 @@ -1342,9 +1588,15 @@ type VkResult* {.size: sizeof(int32).} = enum VkErrorCompressionExhaustedExt = -1000338000 VkErrorInvalidVideoStdParametersKhr = -1000299000 + VkErrorNoPipelineMatch = -1000298001 + VkErrorInvalidPipelineCacheData + VkErrorInvalidOpaqueCaptureAddress = -1000257000 VkErrorFullScreenExclusiveModeLostExt = -1000255000 VkErrorNotPermittedKhr = -1000174001 + VkErrorFragmentation = -1000161000 VkErrorInvalidDrmFormatModifierPlaneLayoutExt = -1000158000 + VkErrorInvalidExternalHandle = -1000072003 + VkErrorOutOfPoolMemory = -1000069000 VkErrorVideoStdVersionNotSupportedKhr = -1000023005 VkErrorVideoProfileCodecNotSupportedKhr VkErrorVideoProfileFormatNotSupportedKhr @@ -1381,6 +1633,7 @@ type VkThreadDoneKhr VkOperationDeferredKhr VkOperationNotDeferredKhr + VkPipelineCompileRequired = 1000297000 VkIncompatibleShaderBinaryExt = 1000482000 VkDynamicState* {.size: sizeof(int32).} = enum @@ -1404,10 +1657,25 @@ type ExclusiveScissorNv FragmentShadingRateKhr = 1000226000 LineStippleKhr = 1000259000 + CullMode = 1000267000 + FrontFace + PrimitiveTopology + ViewportWithCount + ScissorWithCount + VertexInputBindingStride + DepthTestEnable + DepthWriteEnable + DepthCompareOp + DepthBoundsTestEnable + StencilTestEnable + StencilOp RayTracingPipelineStackSizeKhr = 1000347000 VertexInputExt = 1000352000 PatchControlPointsExt = 1000377000 - LogicOpExt = 1000377003 + RasterizerDiscardEnable + DepthBiasEnable + LogicOpExt + PrimitiveRestartEnable ColorWriteEnableExt = 1000381000 TessellationDomainOriginExt = 1000455002 DepthClampEnableExt @@ -1482,13 +1750,16 @@ type VideoSessionParametersKhr CuModuleNvx = 1000029000 CuFunctionNvx + DescriptorUpdateTemplate = 1000085000 DebugUtilsMessengerExt = 1000128000 AccelerationStructureKhr = 1000150000 + SamplerYcbcrConversion = 1000156000 ValidationCacheExt = 1000160000 AccelerationStructureNv = 1000165000 PerformanceConfigurationIntel = 1000210000 DeferredOperationKhr = 1000268000 IndirectCommandsLayoutNv = 1000277000 + PrivateDataSlot = 1000295000 CudaModuleNv = 1000307000 CudaFunctionNv BufferCollectionFuchsia = 1000366000 @@ -1510,6 +1781,7 @@ type ComputeBit TransferBit = 4 SparseBindingBit = 8 + ProtectedBit = 16 VideoDecodeBitKhr = 32 VideoEncodeBitKhr = 64 OpticalFlowBitNv = 256 @@ -1523,21 +1795,28 @@ type VkRenderPassCreateFlagBits* {.size: sizeof(int32).} = enum TransformBitQcom = 2 + VkDeviceQueueCreateFlagBits* {.size: sizeof(int32).} = enum + ProtectedBit = 1 + VkMemoryPropertyFlagBits* {.size: sizeof(int32).} = enum DeviceLocalBit = 1 HostVisibleBit HostCoherentBit = 4 HostCachedBit = 8 LazilyAllocatedBit = 16 + ProtectedBit = 32 DeviceCoherentBitAmd = 64 DeviceUncachedBitAmd = 128 RdmaCapableBitNv = 256 VkMemoryHeapFlagBits* {.size: sizeof(int32).} = enum DeviceLocalBit = 1 + MultiInstanceBit + SeuSafeBit = 4 VkAccessFlagBits* {.size: sizeof(int32).} = enum - IndirectCommandReadBit = 1 + None + IndirectCommandReadBit IndexReadBit VertexAttributeReadBit = 4 UniformReadBit = 8 @@ -1584,6 +1863,7 @@ type VideoDecodeDstBitKhr = 16384 VideoEncodeDstBitKhr = 32768 VideoEncodeSrcBitKhr = 65536 + ShaderDeviceAddressBit = 131072 AccelerationStructureBuildInputReadOnlyBitKhr = 524288 AccelerationStructureStorageBitKhr = 1048576 SamplerDescriptorBufferBitExt = 2097152 @@ -1625,6 +1905,8 @@ type SparseBindingBit = 1 SparseResidencyBit SparseAliasedBit = 4 + ProtectedBit = 8 + DeviceAddressCaptureReplayBit = 16 DescriptorBufferCaptureReplayBitExt = 32 VideoProfileIndependentBitKhr = 64 @@ -1677,6 +1959,13 @@ type SparseAliasedBit = 4 MutableFormatBit = 8 CubeCompatibleBit = 16 + N2dArrayCompatibleBit = 32 + SplitInstanceBindRegionsBit = 64 + BlockTexelViewCompatibleBit = 128 + ExtendedUsageBit = 256 + DisjointBit = 512 + AliasBit = 1024 + ProtectedBit = 2048 SampleLocationsCompatibleDepthBitExt = 4096 CornerSampledBitNv = 8192 SubsampledBitExt = 16384 @@ -1702,9 +1991,13 @@ type DisableOptimizationBit = 1 AllowDerivativesBit DerivativeBit = 4 + ViewIndexFromDeviceIndexBit = 8 + DispatchBaseBit = 16 DeferCompileBitNv = 32 CaptureStatisticsBitKhr = 64 CaptureInternalRepresentationsBitKhr = 128 + FailOnPipelineCompileRequiredBit = 256 + EarlyReturnOnFailureBit = 512 LinkTimeOptimizationBitExt = 1024 LibraryBitKhr = 2048 RayTracingSkipTrianglesBitKhr = 4096 @@ -1760,6 +2053,10 @@ type DescriptorBufferBitExt = 536870912 ProtectedAccessOnlyBitExt = 1073741824 + VkPipelineShaderStageCreateFlagBits* {.size: sizeof(int32).} = enum + AllowVaryingSubgroupSizeBit = 1 + RequireFullSubgroupsBit + VkColorComponentFlagBits* {.size: sizeof(int32).} = enum RBit = 1 GBit @@ -1784,6 +2081,16 @@ type BlitDstBit = 2048 SampledImageFilterLinearBit = 4096 SampledImageFilterCubicBitExt = 8192 + TransferSrcBit = 16384 + TransferDstBit = 32768 + SampledImageFilterMinmaxBit = 65536 + MidpointChromaSamplesBit = 131072 + SampledImageYcbcrConversionLinearFilterBit = 262144 + SampledImageYcbcrConversionSeparateReconstructionFilterBit = 524288 + SampledImageYcbcrConversionChromaReconstructionExplicitBit = 1048576 + SampledImageYcbcrConversionChromaReconstructionExplicitForceableBit = 2097152 + DisjointBit = 4194304 + CositedChromaSamplesBit = 8388608 FragmentDensityMapBitExt = 16777216 VideoDecodeOutputBitKhr = 33554432 VideoDecodeDpbBitKhr = 67108864 @@ -1827,10 +2134,14 @@ type PlacedBitExt = 1 VkImageAspectFlagBits* {.size: sizeof(int32).} = enum - ColorBit = 1 + None + ColorBit DepthBit StencilBit = 4 MetadataBit = 8 + Plane0Bit = 16 + Plane1Bit = 32 + Plane2Bit = 64 MemoryPlane0BitExt = 128 MemoryPlane1BitExt = 256 MemoryPlane2BitExt = 512 @@ -1845,7 +2156,8 @@ type MetadataBit = 1 VkPipelineStageFlagBits* {.size: sizeof(int32).} = enum - TopOfPipeBit = 1 + None + TopOfPipeBit DrawIndirectBit VertexInputBit = 4 VertexShaderBit = 8 @@ -1875,6 +2187,7 @@ type VkCommandPoolCreateFlagBits* {.size: sizeof(int32).} = enum TransientBit = 1 ResetCommandBufferBit + ProtectedBit = 4 VkCommandPoolResetFlagBits* {.size: sizeof(int32).} = enum ReleaseResourcesBit = 1 @@ -1901,12 +2214,15 @@ type VkDescriptorPoolCreateFlagBits* {.size: sizeof(int32).} = enum FreeDescriptorSetBit = 1 + UpdateAfterBindBit HostOnlyBitExt = 4 AllowOverallocationSetsBitNv = 8 AllowOverallocationPoolsBitNv = 16 VkDependencyFlagBits* {.size: sizeof(int32).} = enum ByRegionBit = 1 + ViewLocalBit + DeviceGroupBit = 4 FeedbackLoopBitExt = 8 VkSemaphoreType* {.size: sizeof(int32).} = enum @@ -2113,6 +2429,7 @@ type VkDescriptorSetLayoutCreateFlagBits* {.size: sizeof(int32).} = enum PushDescriptorBitKhr = 1 + UpdateAfterBindPoolBit HostOnlyPoolBitExt = 4 DescriptorBufferBitExt = 16 EmbeddedImmutableSamplersBitExt = 32 @@ -2194,6 +2511,8 @@ type VkMemoryAllocateFlagBits* {.size: sizeof(int32).} = enum DeviceMaskBit = 1 + DeviceAddressBit + DeviceAddressCaptureReplayBit = 4 VkDeviceGroupPresentModeFlagBitsKHR* {.size: sizeof(int32).} = enum LocalBit = 1 @@ -2460,6 +2779,9 @@ type Allowed Disallowed + VkFramebufferCreateFlagBits* {.size: sizeof(int32).} = enum + ImagelessBit = 1 + VkDeviceDiagnosticsConfigFlagBitsNV* {.size: sizeof(int32).} = enum EnableShaderDebugInfoBit = 1 EnableResourceTrackingBit @@ -2711,6 +3033,9 @@ type VkSubmitFlagBits* {.size: sizeof(int32).} = enum ProtectedBit = 1 + VkEventCreateFlagBits* {.size: sizeof(int32).} = enum + DeviceOnlyBit = 1 + VkPipelineLayoutCreateFlagBits* {.size: sizeof(int32).} = enum IndependentSetsBitExt = 2 @@ -13589,21 +13914,21 @@ proc newVkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV*(sType: VkStruc deviceGeneratedComputeCaptureReplay: deviceGeneratedComputeCaptureReplay, ) -proc newVkDevicePrivateDataCreateInfo*(sType: VkStructureType, pNext: pointer = nil, privateDataSlotRequestCount: uint32): VkDevicePrivateDataCreateInfo = +proc newVkDevicePrivateDataCreateInfo*(sType: VkStructureType = VkStructureType.DevicePrivateDataCreateInfo, pNext: pointer = nil, privateDataSlotRequestCount: uint32): VkDevicePrivateDataCreateInfo = result = VkDevicePrivateDataCreateInfo( sType: sType, pNext: pNext, privateDataSlotRequestCount: privateDataSlotRequestCount, ) -proc newVkPrivateDataSlotCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkPrivateDataSlotCreateFlags = 0.VkPrivateDataSlotCreateFlags): VkPrivateDataSlotCreateInfo = +proc newVkPrivateDataSlotCreateInfo*(sType: VkStructureType = VkStructureType.PrivateDataSlotCreateInfo, pNext: pointer = nil, flags: VkPrivateDataSlotCreateFlags = 0.VkPrivateDataSlotCreateFlags): VkPrivateDataSlotCreateInfo = result = VkPrivateDataSlotCreateInfo( sType: sType, pNext: pNext, flags: flags, ) -proc newVkPhysicalDevicePrivateDataFeatures*(sType: VkStructureType, pNext: pointer = nil, privateData: VkBool32): VkPhysicalDevicePrivateDataFeatures = +proc newVkPhysicalDevicePrivateDataFeatures*(sType: VkStructureType = VkStructureType.PhysicalDevicePrivateDataFeatures, pNext: pointer = nil, privateData: VkBool32): VkPhysicalDevicePrivateDataFeatures = result = VkPhysicalDevicePrivateDataFeatures( sType: sType, pNext: pNext, @@ -13755,35 +14080,35 @@ proc newVkBindPipelineIndirectCommandNV*(pipelineAddress: VkDeviceAddress): VkBi pipelineAddress: pipelineAddress, ) -proc newVkPhysicalDeviceFeatures2*(sType: VkStructureType, pNext: pointer = nil, features: VkPhysicalDeviceFeatures): VkPhysicalDeviceFeatures2 = +proc newVkPhysicalDeviceFeatures2*(sType: VkStructureType = VkStructureType.PhysicalDeviceFeatures2, pNext: pointer = nil, features: VkPhysicalDeviceFeatures): VkPhysicalDeviceFeatures2 = result = VkPhysicalDeviceFeatures2( sType: sType, pNext: pNext, features: features, ) -proc newVkPhysicalDeviceProperties2*(sType: VkStructureType, pNext: pointer = nil, properties: VkPhysicalDeviceProperties): VkPhysicalDeviceProperties2 = +proc newVkPhysicalDeviceProperties2*(sType: VkStructureType = VkStructureType.PhysicalDeviceProperties2, pNext: pointer = nil, properties: VkPhysicalDeviceProperties): VkPhysicalDeviceProperties2 = result = VkPhysicalDeviceProperties2( sType: sType, pNext: pNext, properties: properties, ) -proc newVkFormatProperties2*(sType: VkStructureType, pNext: pointer = nil, formatProperties: VkFormatProperties): VkFormatProperties2 = +proc newVkFormatProperties2*(sType: VkStructureType = VkStructureType.FormatProperties2, pNext: pointer = nil, formatProperties: VkFormatProperties): VkFormatProperties2 = result = VkFormatProperties2( sType: sType, pNext: pNext, formatProperties: formatProperties, ) -proc newVkImageFormatProperties2*(sType: VkStructureType, pNext: pointer = nil, imageFormatProperties: VkImageFormatProperties): VkImageFormatProperties2 = +proc newVkImageFormatProperties2*(sType: VkStructureType = VkStructureType.ImageFormatProperties2, pNext: pointer = nil, imageFormatProperties: VkImageFormatProperties): VkImageFormatProperties2 = result = VkImageFormatProperties2( sType: sType, pNext: pNext, imageFormatProperties: imageFormatProperties, ) -proc newVkPhysicalDeviceImageFormatInfo2*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat, `type`: VkImageType, tiling: VkImageTiling, usage: VkImageUsageFlags, flags: VkImageCreateFlags = 0.VkImageCreateFlags): VkPhysicalDeviceImageFormatInfo2 = +proc newVkPhysicalDeviceImageFormatInfo2*(sType: VkStructureType = VkStructureType.PhysicalDeviceImageFormatInfo2, pNext: pointer = nil, format: VkFormat, `type`: VkImageType, tiling: VkImageTiling, usage: VkImageUsageFlags, flags: VkImageCreateFlags = 0.VkImageCreateFlags): VkPhysicalDeviceImageFormatInfo2 = result = VkPhysicalDeviceImageFormatInfo2( sType: sType, pNext: pNext, @@ -13794,28 +14119,28 @@ proc newVkPhysicalDeviceImageFormatInfo2*(sType: VkStructureType, pNext: pointer flags: flags, ) -proc newVkQueueFamilyProperties2*(sType: VkStructureType, pNext: pointer = nil, queueFamilyProperties: VkQueueFamilyProperties): VkQueueFamilyProperties2 = +proc newVkQueueFamilyProperties2*(sType: VkStructureType = VkStructureType.QueueFamilyProperties2, pNext: pointer = nil, queueFamilyProperties: VkQueueFamilyProperties): VkQueueFamilyProperties2 = result = VkQueueFamilyProperties2( sType: sType, pNext: pNext, queueFamilyProperties: queueFamilyProperties, ) -proc newVkPhysicalDeviceMemoryProperties2*(sType: VkStructureType, pNext: pointer = nil, memoryProperties: VkPhysicalDeviceMemoryProperties): VkPhysicalDeviceMemoryProperties2 = +proc newVkPhysicalDeviceMemoryProperties2*(sType: VkStructureType = VkStructureType.PhysicalDeviceMemoryProperties2, pNext: pointer = nil, memoryProperties: VkPhysicalDeviceMemoryProperties): VkPhysicalDeviceMemoryProperties2 = result = VkPhysicalDeviceMemoryProperties2( sType: sType, pNext: pNext, memoryProperties: memoryProperties, ) -proc newVkSparseImageFormatProperties2*(sType: VkStructureType, pNext: pointer = nil, properties: VkSparseImageFormatProperties): VkSparseImageFormatProperties2 = +proc newVkSparseImageFormatProperties2*(sType: VkStructureType = VkStructureType.SparseImageFormatProperties2, pNext: pointer = nil, properties: VkSparseImageFormatProperties): VkSparseImageFormatProperties2 = result = VkSparseImageFormatProperties2( sType: sType, pNext: pNext, properties: properties, ) -proc newVkPhysicalDeviceSparseImageFormatInfo2*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat, `type`: VkImageType, samples: VkSampleCountFlagBits, usage: VkImageUsageFlags, tiling: VkImageTiling): VkPhysicalDeviceSparseImageFormatInfo2 = +proc newVkPhysicalDeviceSparseImageFormatInfo2*(sType: VkStructureType = VkStructureType.PhysicalDeviceSparseImageFormatInfo2, pNext: pointer = nil, format: VkFormat, `type`: VkImageType, samples: VkSampleCountFlagBits, usage: VkImageUsageFlags, tiling: VkImageTiling): VkPhysicalDeviceSparseImageFormatInfo2 = result = VkPhysicalDeviceSparseImageFormatInfo2( sType: sType, pNext: pNext, @@ -13841,7 +14166,7 @@ proc newVkConformanceVersion*(major: uint8, minor: uint8, subminor: uint8, patch patch: patch, ) -proc newVkPhysicalDeviceDriverProperties*(sType: VkStructureType, pNext: pointer = nil, driverID: VkDriverId, driverName: array[VK_MAX_DRIVER_NAME_SIZE, char], driverInfo: array[VK_MAX_DRIVER_INFO_SIZE, char], conformanceVersion: VkConformanceVersion): VkPhysicalDeviceDriverProperties = +proc newVkPhysicalDeviceDriverProperties*(sType: VkStructureType = VkStructureType.PhysicalDeviceDriverProperties, pNext: pointer = nil, driverID: VkDriverId, driverName: array[VK_MAX_DRIVER_NAME_SIZE, char], driverInfo: array[VK_MAX_DRIVER_INFO_SIZE, char], conformanceVersion: VkConformanceVersion): VkPhysicalDeviceDriverProperties = result = VkPhysicalDeviceDriverProperties( sType: sType, pNext: pNext, @@ -13872,7 +14197,7 @@ proc newVkRectLayerKHR*(offset: VkOffset2D, extent: VkExtent2D, layer: uint32): layer: layer, ) -proc newVkPhysicalDeviceVariablePointersFeatures*(sType: VkStructureType, pNext: pointer = nil, variablePointersStorageBuffer: VkBool32, variablePointers: VkBool32): VkPhysicalDeviceVariablePointersFeatures = +proc newVkPhysicalDeviceVariablePointersFeatures*(sType: VkStructureType = VkStructureType.PhysicalDeviceVariablePointersFeatures, pNext: pointer = nil, variablePointersStorageBuffer: VkBool32, variablePointers: VkBool32): VkPhysicalDeviceVariablePointersFeatures = result = VkPhysicalDeviceVariablePointersFeatures( sType: sType, pNext: pNext, @@ -13887,21 +14212,21 @@ proc newVkExternalMemoryProperties*(externalMemoryFeatures: VkExternalMemoryFeat compatibleHandleTypes: compatibleHandleTypes, ) -proc newVkPhysicalDeviceExternalImageFormatInfo*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits): VkPhysicalDeviceExternalImageFormatInfo = +proc newVkPhysicalDeviceExternalImageFormatInfo*(sType: VkStructureType = VkStructureType.PhysicalDeviceExternalImageFormatInfo, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits): VkPhysicalDeviceExternalImageFormatInfo = result = VkPhysicalDeviceExternalImageFormatInfo( sType: sType, pNext: pNext, handleType: handleType, ) -proc newVkExternalImageFormatProperties*(sType: VkStructureType, pNext: pointer = nil, externalMemoryProperties: VkExternalMemoryProperties): VkExternalImageFormatProperties = +proc newVkExternalImageFormatProperties*(sType: VkStructureType = VkStructureType.ExternalImageFormatProperties, pNext: pointer = nil, externalMemoryProperties: VkExternalMemoryProperties): VkExternalImageFormatProperties = result = VkExternalImageFormatProperties( sType: sType, pNext: pNext, externalMemoryProperties: externalMemoryProperties, ) -proc newVkPhysicalDeviceExternalBufferInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkBufferCreateFlags = 0.VkBufferCreateFlags, usage: VkBufferUsageFlags, handleType: VkExternalMemoryHandleTypeFlagBits): VkPhysicalDeviceExternalBufferInfo = +proc newVkPhysicalDeviceExternalBufferInfo*(sType: VkStructureType = VkStructureType.PhysicalDeviceExternalBufferInfo, pNext: pointer = nil, flags: VkBufferCreateFlags = 0.VkBufferCreateFlags, usage: VkBufferUsageFlags, handleType: VkExternalMemoryHandleTypeFlagBits): VkPhysicalDeviceExternalBufferInfo = result = VkPhysicalDeviceExternalBufferInfo( sType: sType, pNext: pNext, @@ -13910,14 +14235,14 @@ proc newVkPhysicalDeviceExternalBufferInfo*(sType: VkStructureType, pNext: point handleType: handleType, ) -proc newVkExternalBufferProperties*(sType: VkStructureType, pNext: pointer = nil, externalMemoryProperties: VkExternalMemoryProperties): VkExternalBufferProperties = +proc newVkExternalBufferProperties*(sType: VkStructureType = VkStructureType.ExternalBufferProperties, pNext: pointer = nil, externalMemoryProperties: VkExternalMemoryProperties): VkExternalBufferProperties = result = VkExternalBufferProperties( sType: sType, pNext: pNext, externalMemoryProperties: externalMemoryProperties, ) -proc newVkPhysicalDeviceIDProperties*(sType: VkStructureType, pNext: pointer = nil, deviceUUID: array[VK_UUID_SIZE, uint8], driverUUID: array[VK_UUID_SIZE, uint8], deviceLUID: array[VK_LUID_SIZE, uint8], deviceNodeMask: uint32, deviceLUIDValid: VkBool32): VkPhysicalDeviceIDProperties = +proc newVkPhysicalDeviceIDProperties*(sType: VkStructureType = VkStructureType.PhysicalDeviceIDProperties, pNext: pointer = nil, deviceUUID: array[VK_UUID_SIZE, uint8], driverUUID: array[VK_UUID_SIZE, uint8], deviceLUID: array[VK_LUID_SIZE, uint8], deviceNodeMask: uint32, deviceLUIDValid: VkBool32): VkPhysicalDeviceIDProperties = result = VkPhysicalDeviceIDProperties( sType: sType, pNext: pNext, @@ -13928,21 +14253,21 @@ proc newVkPhysicalDeviceIDProperties*(sType: VkStructureType, pNext: pointer = n deviceLUIDValid: deviceLUIDValid, ) -proc newVkExternalMemoryImageCreateInfo*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlags): VkExternalMemoryImageCreateInfo = +proc newVkExternalMemoryImageCreateInfo*(sType: VkStructureType = VkStructureType.ExternalMemoryImageCreateInfo, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlags): VkExternalMemoryImageCreateInfo = result = VkExternalMemoryImageCreateInfo( sType: sType, pNext: pNext, handleTypes: handleTypes, ) -proc newVkExternalMemoryBufferCreateInfo*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlags): VkExternalMemoryBufferCreateInfo = +proc newVkExternalMemoryBufferCreateInfo*(sType: VkStructureType = VkStructureType.ExternalMemoryBufferCreateInfo, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlags): VkExternalMemoryBufferCreateInfo = result = VkExternalMemoryBufferCreateInfo( sType: sType, pNext: pNext, handleTypes: handleTypes, ) -proc newVkExportMemoryAllocateInfo*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlags): VkExportMemoryAllocateInfo = +proc newVkExportMemoryAllocateInfo*(sType: VkStructureType = VkStructureType.ExportMemoryAllocateInfo, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlags): VkExportMemoryAllocateInfo = result = VkExportMemoryAllocateInfo( sType: sType, pNext: pNext, @@ -14041,14 +14366,14 @@ proc newVkWin32KeyedMutexAcquireReleaseInfoKHR*(sType: VkStructureType = VkStruc pReleaseKeys: pReleaseKeys, ) -proc newVkPhysicalDeviceExternalSemaphoreInfo*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkPhysicalDeviceExternalSemaphoreInfo = +proc newVkPhysicalDeviceExternalSemaphoreInfo*(sType: VkStructureType = VkStructureType.PhysicalDeviceExternalSemaphoreInfo, pNext: pointer = nil, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkPhysicalDeviceExternalSemaphoreInfo = result = VkPhysicalDeviceExternalSemaphoreInfo( sType: sType, pNext: pNext, handleType: handleType, ) -proc newVkExternalSemaphoreProperties*(sType: VkStructureType, pNext: pointer = nil, exportFromImportedHandleTypes: VkExternalSemaphoreHandleTypeFlags, compatibleHandleTypes: VkExternalSemaphoreHandleTypeFlags, externalSemaphoreFeatures: VkExternalSemaphoreFeatureFlags): VkExternalSemaphoreProperties = +proc newVkExternalSemaphoreProperties*(sType: VkStructureType = VkStructureType.ExternalSemaphoreProperties, pNext: pointer = nil, exportFromImportedHandleTypes: VkExternalSemaphoreHandleTypeFlags, compatibleHandleTypes: VkExternalSemaphoreHandleTypeFlags, externalSemaphoreFeatures: VkExternalSemaphoreFeatureFlags): VkExternalSemaphoreProperties = result = VkExternalSemaphoreProperties( sType: sType, pNext: pNext, @@ -14057,7 +14382,7 @@ proc newVkExternalSemaphoreProperties*(sType: VkStructureType, pNext: pointer = externalSemaphoreFeatures: externalSemaphoreFeatures, ) -proc newVkExportSemaphoreCreateInfo*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalSemaphoreHandleTypeFlags): VkExportSemaphoreCreateInfo = +proc newVkExportSemaphoreCreateInfo*(sType: VkStructureType = VkStructureType.ExportSemaphoreCreateInfo, pNext: pointer = nil, handleTypes: VkExternalSemaphoreHandleTypeFlags): VkExportSemaphoreCreateInfo = result = VkExportSemaphoreCreateInfo( sType: sType, pNext: pNext, @@ -14138,14 +14463,14 @@ proc newVkSemaphoreGetZirconHandleInfoFUCHSIA*(sType: VkStructureType = VkStruct handleType: handleType, ) -proc newVkPhysicalDeviceExternalFenceInfo*(sType: VkStructureType, pNext: pointer = nil, handleType: VkExternalFenceHandleTypeFlagBits): VkPhysicalDeviceExternalFenceInfo = +proc newVkPhysicalDeviceExternalFenceInfo*(sType: VkStructureType = VkStructureType.PhysicalDeviceExternalFenceInfo, pNext: pointer = nil, handleType: VkExternalFenceHandleTypeFlagBits): VkPhysicalDeviceExternalFenceInfo = result = VkPhysicalDeviceExternalFenceInfo( sType: sType, pNext: pNext, handleType: handleType, ) -proc newVkExternalFenceProperties*(sType: VkStructureType, pNext: pointer = nil, exportFromImportedHandleTypes: VkExternalFenceHandleTypeFlags, compatibleHandleTypes: VkExternalFenceHandleTypeFlags, externalFenceFeatures: VkExternalFenceFeatureFlags): VkExternalFenceProperties = +proc newVkExternalFenceProperties*(sType: VkStructureType = VkStructureType.ExternalFenceProperties, pNext: pointer = nil, exportFromImportedHandleTypes: VkExternalFenceHandleTypeFlags, compatibleHandleTypes: VkExternalFenceHandleTypeFlags, externalFenceFeatures: VkExternalFenceFeatureFlags): VkExternalFenceProperties = result = VkExternalFenceProperties( sType: sType, pNext: pNext, @@ -14154,7 +14479,7 @@ proc newVkExternalFenceProperties*(sType: VkStructureType, pNext: pointer = nil, externalFenceFeatures: externalFenceFeatures, ) -proc newVkExportFenceCreateInfo*(sType: VkStructureType, pNext: pointer = nil, handleTypes: VkExternalFenceHandleTypeFlags): VkExportFenceCreateInfo = +proc newVkExportFenceCreateInfo*(sType: VkStructureType = VkStructureType.ExportFenceCreateInfo, pNext: pointer = nil, handleTypes: VkExternalFenceHandleTypeFlags): VkExportFenceCreateInfo = result = VkExportFenceCreateInfo( sType: sType, pNext: pNext, @@ -14305,7 +14630,7 @@ proc newVkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV*(sType: VkStructureT semaphoreSciSyncPoolRequestCount: semaphoreSciSyncPoolRequestCount, ) -proc newVkPhysicalDeviceMultiviewFeatures*(sType: VkStructureType, pNext: pointer = nil, multiview: VkBool32, multiviewGeometryShader: VkBool32, multiviewTessellationShader: VkBool32): VkPhysicalDeviceMultiviewFeatures = +proc newVkPhysicalDeviceMultiviewFeatures*(sType: VkStructureType = VkStructureType.PhysicalDeviceMultiviewFeatures, pNext: pointer = nil, multiview: VkBool32, multiviewGeometryShader: VkBool32, multiviewTessellationShader: VkBool32): VkPhysicalDeviceMultiviewFeatures = result = VkPhysicalDeviceMultiviewFeatures( sType: sType, pNext: pNext, @@ -14314,7 +14639,7 @@ proc newVkPhysicalDeviceMultiviewFeatures*(sType: VkStructureType, pNext: pointe multiviewTessellationShader: multiviewTessellationShader, ) -proc newVkPhysicalDeviceMultiviewProperties*(sType: VkStructureType, pNext: pointer = nil, maxMultiviewViewCount: uint32, maxMultiviewInstanceIndex: uint32): VkPhysicalDeviceMultiviewProperties = +proc newVkPhysicalDeviceMultiviewProperties*(sType: VkStructureType = VkStructureType.PhysicalDeviceMultiviewProperties, pNext: pointer = nil, maxMultiviewViewCount: uint32, maxMultiviewInstanceIndex: uint32): VkPhysicalDeviceMultiviewProperties = result = VkPhysicalDeviceMultiviewProperties( sType: sType, pNext: pNext, @@ -14322,7 +14647,7 @@ proc newVkPhysicalDeviceMultiviewProperties*(sType: VkStructureType, pNext: poin maxMultiviewInstanceIndex: maxMultiviewInstanceIndex, ) -proc newVkRenderPassMultiviewCreateInfo*(sType: VkStructureType, pNext: pointer = nil, subpassCount: uint32, pViewMasks: ptr uint32, dependencyCount: uint32, pViewOffsets: ptr int32, correlationMaskCount: uint32, pCorrelationMasks: ptr uint32): VkRenderPassMultiviewCreateInfo = +proc newVkRenderPassMultiviewCreateInfo*(sType: VkStructureType = VkStructureType.RenderPassMultiviewCreateInfo, pNext: pointer = nil, subpassCount: uint32, pViewMasks: ptr uint32, dependencyCount: uint32, pViewOffsets: ptr int32, correlationMaskCount: uint32, pCorrelationMasks: ptr uint32): VkRenderPassMultiviewCreateInfo = result = VkRenderPassMultiviewCreateInfo( sType: sType, pNext: pNext, @@ -14379,7 +14704,7 @@ proc newVkSwapchainCounterCreateInfoEXT*(sType: VkStructureType = VkStructureTyp surfaceCounters: surfaceCounters, ) -proc newVkPhysicalDeviceGroupProperties*(sType: VkStructureType, pNext: pointer = nil, physicalDeviceCount: uint32, physicalDevices: array[VK_MAX_DEVICE_GROUP_SIZE, VkPhysicalDevice], subsetAllocation: VkBool32): VkPhysicalDeviceGroupProperties = +proc newVkPhysicalDeviceGroupProperties*(sType: VkStructureType = VkStructureType.PhysicalDeviceGroupProperties, pNext: pointer = nil, physicalDeviceCount: uint32, physicalDevices: array[VK_MAX_DEVICE_GROUP_SIZE, VkPhysicalDevice], subsetAllocation: VkBool32): VkPhysicalDeviceGroupProperties = result = VkPhysicalDeviceGroupProperties( sType: sType, pNext: pNext, @@ -14388,7 +14713,7 @@ proc newVkPhysicalDeviceGroupProperties*(sType: VkStructureType, pNext: pointer subsetAllocation: subsetAllocation, ) -proc newVkMemoryAllocateFlagsInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkMemoryAllocateFlags = 0.VkMemoryAllocateFlags, deviceMask: uint32): VkMemoryAllocateFlagsInfo = +proc newVkMemoryAllocateFlagsInfo*(sType: VkStructureType = VkStructureType.MemoryAllocateFlagsInfo, pNext: pointer = nil, flags: VkMemoryAllocateFlags = 0.VkMemoryAllocateFlags, deviceMask: uint32): VkMemoryAllocateFlagsInfo = result = VkMemoryAllocateFlagsInfo( sType: sType, pNext: pNext, @@ -14396,7 +14721,7 @@ proc newVkMemoryAllocateFlagsInfo*(sType: VkStructureType, pNext: pointer = nil, deviceMask: deviceMask, ) -proc newVkBindBufferMemoryInfo*(sType: VkStructureType, pNext: pointer = nil, buffer: VkBuffer, memory: VkDeviceMemory, memoryOffset: VkDeviceSize): VkBindBufferMemoryInfo = +proc newVkBindBufferMemoryInfo*(sType: VkStructureType = VkStructureType.BindBufferMemoryInfo, pNext: pointer = nil, buffer: VkBuffer, memory: VkDeviceMemory, memoryOffset: VkDeviceSize): VkBindBufferMemoryInfo = result = VkBindBufferMemoryInfo( sType: sType, pNext: pNext, @@ -14405,7 +14730,7 @@ proc newVkBindBufferMemoryInfo*(sType: VkStructureType, pNext: pointer = nil, bu memoryOffset: memoryOffset, ) -proc newVkBindBufferMemoryDeviceGroupInfo*(sType: VkStructureType, pNext: pointer = nil, deviceIndexCount: uint32, pDeviceIndices: ptr uint32): VkBindBufferMemoryDeviceGroupInfo = +proc newVkBindBufferMemoryDeviceGroupInfo*(sType: VkStructureType = VkStructureType.BindBufferMemoryDeviceGroupInfo, pNext: pointer = nil, deviceIndexCount: uint32, pDeviceIndices: ptr uint32): VkBindBufferMemoryDeviceGroupInfo = result = VkBindBufferMemoryDeviceGroupInfo( sType: sType, pNext: pNext, @@ -14413,7 +14738,7 @@ proc newVkBindBufferMemoryDeviceGroupInfo*(sType: VkStructureType, pNext: pointe pDeviceIndices: pDeviceIndices, ) -proc newVkBindImageMemoryInfo*(sType: VkStructureType, pNext: pointer = nil, image: VkImage, memory: VkDeviceMemory, memoryOffset: VkDeviceSize): VkBindImageMemoryInfo = +proc newVkBindImageMemoryInfo*(sType: VkStructureType = VkStructureType.BindImageMemoryInfo, pNext: pointer = nil, image: VkImage, memory: VkDeviceMemory, memoryOffset: VkDeviceSize): VkBindImageMemoryInfo = result = VkBindImageMemoryInfo( sType: sType, pNext: pNext, @@ -14422,7 +14747,7 @@ proc newVkBindImageMemoryInfo*(sType: VkStructureType, pNext: pointer = nil, ima memoryOffset: memoryOffset, ) -proc newVkBindImageMemoryDeviceGroupInfo*(sType: VkStructureType, pNext: pointer = nil, deviceIndexCount: uint32, pDeviceIndices: ptr uint32, splitInstanceBindRegionCount: uint32, pSplitInstanceBindRegions: ptr VkRect2D): VkBindImageMemoryDeviceGroupInfo = +proc newVkBindImageMemoryDeviceGroupInfo*(sType: VkStructureType = VkStructureType.BindImageMemoryDeviceGroupInfo, pNext: pointer = nil, deviceIndexCount: uint32, pDeviceIndices: ptr uint32, splitInstanceBindRegionCount: uint32, pSplitInstanceBindRegions: ptr VkRect2D): VkBindImageMemoryDeviceGroupInfo = result = VkBindImageMemoryDeviceGroupInfo( sType: sType, pNext: pNext, @@ -14432,7 +14757,7 @@ proc newVkBindImageMemoryDeviceGroupInfo*(sType: VkStructureType, pNext: pointer pSplitInstanceBindRegions: pSplitInstanceBindRegions, ) -proc newVkDeviceGroupRenderPassBeginInfo*(sType: VkStructureType, pNext: pointer = nil, deviceMask: uint32, deviceRenderAreaCount: uint32, pDeviceRenderAreas: ptr VkRect2D): VkDeviceGroupRenderPassBeginInfo = +proc newVkDeviceGroupRenderPassBeginInfo*(sType: VkStructureType = VkStructureType.DeviceGroupRenderPassBeginInfo, pNext: pointer = nil, deviceMask: uint32, deviceRenderAreaCount: uint32, pDeviceRenderAreas: ptr VkRect2D): VkDeviceGroupRenderPassBeginInfo = result = VkDeviceGroupRenderPassBeginInfo( sType: sType, pNext: pNext, @@ -14441,14 +14766,14 @@ proc newVkDeviceGroupRenderPassBeginInfo*(sType: VkStructureType, pNext: pointer pDeviceRenderAreas: pDeviceRenderAreas, ) -proc newVkDeviceGroupCommandBufferBeginInfo*(sType: VkStructureType, pNext: pointer = nil, deviceMask: uint32): VkDeviceGroupCommandBufferBeginInfo = +proc newVkDeviceGroupCommandBufferBeginInfo*(sType: VkStructureType = VkStructureType.DeviceGroupCommandBufferBeginInfo, pNext: pointer = nil, deviceMask: uint32): VkDeviceGroupCommandBufferBeginInfo = result = VkDeviceGroupCommandBufferBeginInfo( sType: sType, pNext: pNext, deviceMask: deviceMask, ) -proc newVkDeviceGroupSubmitInfo*(sType: VkStructureType, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphoreDeviceIndices: ptr uint32, commandBufferCount: uint32, pCommandBufferDeviceMasks: ptr uint32, signalSemaphoreCount: uint32, pSignalSemaphoreDeviceIndices: ptr uint32): VkDeviceGroupSubmitInfo = +proc newVkDeviceGroupSubmitInfo*(sType: VkStructureType = VkStructureType.DeviceGroupSubmitInfo, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphoreDeviceIndices: ptr uint32, commandBufferCount: uint32, pCommandBufferDeviceMasks: ptr uint32, signalSemaphoreCount: uint32, pSignalSemaphoreDeviceIndices: ptr uint32): VkDeviceGroupSubmitInfo = result = VkDeviceGroupSubmitInfo( sType: sType, pNext: pNext, @@ -14460,7 +14785,7 @@ proc newVkDeviceGroupSubmitInfo*(sType: VkStructureType, pNext: pointer = nil, w pSignalSemaphoreDeviceIndices: pSignalSemaphoreDeviceIndices, ) -proc newVkDeviceGroupBindSparseInfo*(sType: VkStructureType, pNext: pointer = nil, resourceDeviceIndex: uint32, memoryDeviceIndex: uint32): VkDeviceGroupBindSparseInfo = +proc newVkDeviceGroupBindSparseInfo*(sType: VkStructureType = VkStructureType.DeviceGroupBindSparseInfo, pNext: pointer = nil, resourceDeviceIndex: uint32, memoryDeviceIndex: uint32): VkDeviceGroupBindSparseInfo = result = VkDeviceGroupBindSparseInfo( sType: sType, pNext: pNext, @@ -14511,7 +14836,7 @@ proc newVkDeviceGroupPresentInfoKHR*(sType: VkStructureType = VkStructureType.De mode: mode, ) -proc newVkDeviceGroupDeviceCreateInfo*(sType: VkStructureType, pNext: pointer = nil, physicalDeviceCount: uint32, pPhysicalDevices: ptr VkPhysicalDevice): VkDeviceGroupDeviceCreateInfo = +proc newVkDeviceGroupDeviceCreateInfo*(sType: VkStructureType = VkStructureType.DeviceGroupDeviceCreateInfo, pNext: pointer = nil, physicalDeviceCount: uint32, pPhysicalDevices: ptr VkPhysicalDevice): VkDeviceGroupDeviceCreateInfo = result = VkDeviceGroupDeviceCreateInfo( sType: sType, pNext: pNext, @@ -14536,7 +14861,7 @@ proc newVkDescriptorUpdateTemplateEntry*(dstBinding: uint32, dstArrayElement: ui stride: stride, ) -proc newVkDescriptorUpdateTemplateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkDescriptorUpdateTemplateCreateFlags = 0.VkDescriptorUpdateTemplateCreateFlags, descriptorUpdateEntryCount: uint32, pDescriptorUpdateEntries: ptr VkDescriptorUpdateTemplateEntry, templateType: VkDescriptorUpdateTemplateType, descriptorSetLayout: VkDescriptorSetLayout, pipelineBindPoint: VkPipelineBindPoint, pipelineLayout: VkPipelineLayout, set: uint32): VkDescriptorUpdateTemplateCreateInfo = +proc newVkDescriptorUpdateTemplateCreateInfo*(sType: VkStructureType = VkStructureType.DescriptorUpdateTemplateCreateInfo, pNext: pointer = nil, flags: VkDescriptorUpdateTemplateCreateFlags = 0.VkDescriptorUpdateTemplateCreateFlags, descriptorUpdateEntryCount: uint32, pDescriptorUpdateEntries: ptr VkDescriptorUpdateTemplateEntry, templateType: VkDescriptorUpdateTemplateType, descriptorSetLayout: VkDescriptorSetLayout, pipelineBindPoint: VkPipelineBindPoint, pipelineLayout: VkPipelineLayout, set: uint32): VkDescriptorUpdateTemplateCreateInfo = result = VkDescriptorUpdateTemplateCreateInfo( sType: sType, pNext: pNext, @@ -14721,7 +15046,7 @@ proc newVkInputAttachmentAspectReference*(subpass: uint32, inputAttachmentIndex: aspectMask: aspectMask, ) -proc newVkRenderPassInputAttachmentAspectCreateInfo*(sType: VkStructureType, pNext: pointer = nil, aspectReferenceCount: uint32, pAspectReferences: ptr VkInputAttachmentAspectReference): VkRenderPassInputAttachmentAspectCreateInfo = +proc newVkRenderPassInputAttachmentAspectCreateInfo*(sType: VkStructureType = VkStructureType.RenderPassInputAttachmentAspectCreateInfo, pNext: pointer = nil, aspectReferenceCount: uint32, pAspectReferences: ptr VkInputAttachmentAspectReference): VkRenderPassInputAttachmentAspectCreateInfo = result = VkRenderPassInputAttachmentAspectCreateInfo( sType: sType, pNext: pNext, @@ -14793,7 +15118,7 @@ proc newVkSharedPresentSurfaceCapabilitiesKHR*(sType: VkStructureType = VkStruct sharedPresentSupportedUsageFlags: sharedPresentSupportedUsageFlags, ) -proc newVkPhysicalDevice16BitStorageFeatures*(sType: VkStructureType, pNext: pointer = nil, storageBuffer16BitAccess: VkBool32, uniformAndStorageBuffer16BitAccess: VkBool32, storagePushConstant16: VkBool32, storageInputOutput16: VkBool32): VkPhysicalDevice16BitStorageFeatures = +proc newVkPhysicalDevice16BitStorageFeatures*(sType: VkStructureType = VkStructureType.PhysicalDevice16BitStorageFeatures, pNext: pointer = nil, storageBuffer16BitAccess: VkBool32, uniformAndStorageBuffer16BitAccess: VkBool32, storagePushConstant16: VkBool32, storageInputOutput16: VkBool32): VkPhysicalDevice16BitStorageFeatures = result = VkPhysicalDevice16BitStorageFeatures( sType: sType, pNext: pNext, @@ -14803,7 +15128,7 @@ proc newVkPhysicalDevice16BitStorageFeatures*(sType: VkStructureType, pNext: poi storageInputOutput16: storageInputOutput16, ) -proc newVkPhysicalDeviceSubgroupProperties*(sType: VkStructureType, pNext: pointer = nil, subgroupSize: uint32, supportedStages: VkShaderStageFlags, supportedOperations: VkSubgroupFeatureFlags, quadOperationsInAllStages: VkBool32): VkPhysicalDeviceSubgroupProperties = +proc newVkPhysicalDeviceSubgroupProperties*(sType: VkStructureType = VkStructureType.PhysicalDeviceSubgroupProperties, pNext: pointer = nil, subgroupSize: uint32, supportedStages: VkShaderStageFlags, supportedOperations: VkSubgroupFeatureFlags, quadOperationsInAllStages: VkBool32): VkPhysicalDeviceSubgroupProperties = result = VkPhysicalDeviceSubgroupProperties( sType: sType, pNext: pNext, @@ -14813,42 +15138,42 @@ proc newVkPhysicalDeviceSubgroupProperties*(sType: VkStructureType, pNext: point quadOperationsInAllStages: quadOperationsInAllStages, ) -proc newVkPhysicalDeviceShaderSubgroupExtendedTypesFeatures*(sType: VkStructureType, pNext: pointer = nil, shaderSubgroupExtendedTypes: VkBool32): VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures = +proc newVkPhysicalDeviceShaderSubgroupExtendedTypesFeatures*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderSubgroupExtendedTypesFeatures, pNext: pointer = nil, shaderSubgroupExtendedTypes: VkBool32): VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures = result = VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures( sType: sType, pNext: pNext, shaderSubgroupExtendedTypes: shaderSubgroupExtendedTypes, ) -proc newVkBufferMemoryRequirementsInfo2*(sType: VkStructureType, pNext: pointer = nil, buffer: VkBuffer): VkBufferMemoryRequirementsInfo2 = +proc newVkBufferMemoryRequirementsInfo2*(sType: VkStructureType = VkStructureType.BufferMemoryRequirementsInfo2, pNext: pointer = nil, buffer: VkBuffer): VkBufferMemoryRequirementsInfo2 = result = VkBufferMemoryRequirementsInfo2( sType: sType, pNext: pNext, buffer: buffer, ) -proc newVkDeviceBufferMemoryRequirements*(sType: VkStructureType, pNext: pointer = nil, pCreateInfo: ptr VkBufferCreateInfo): VkDeviceBufferMemoryRequirements = +proc newVkDeviceBufferMemoryRequirements*(sType: VkStructureType = VkStructureType.DeviceBufferMemoryRequirements, pNext: pointer = nil, pCreateInfo: ptr VkBufferCreateInfo): VkDeviceBufferMemoryRequirements = result = VkDeviceBufferMemoryRequirements( sType: sType, pNext: pNext, pCreateInfo: pCreateInfo, ) -proc newVkImageMemoryRequirementsInfo2*(sType: VkStructureType, pNext: pointer = nil, image: VkImage): VkImageMemoryRequirementsInfo2 = +proc newVkImageMemoryRequirementsInfo2*(sType: VkStructureType = VkStructureType.ImageMemoryRequirementsInfo2, pNext: pointer = nil, image: VkImage): VkImageMemoryRequirementsInfo2 = result = VkImageMemoryRequirementsInfo2( sType: sType, pNext: pNext, image: image, ) -proc newVkImageSparseMemoryRequirementsInfo2*(sType: VkStructureType, pNext: pointer = nil, image: VkImage): VkImageSparseMemoryRequirementsInfo2 = +proc newVkImageSparseMemoryRequirementsInfo2*(sType: VkStructureType = VkStructureType.ImageSparseMemoryRequirementsInfo2, pNext: pointer = nil, image: VkImage): VkImageSparseMemoryRequirementsInfo2 = result = VkImageSparseMemoryRequirementsInfo2( sType: sType, pNext: pNext, image: image, ) -proc newVkDeviceImageMemoryRequirements*(sType: VkStructureType, pNext: pointer = nil, pCreateInfo: ptr VkImageCreateInfo, planeAspect: VkImageAspectFlagBits): VkDeviceImageMemoryRequirements = +proc newVkDeviceImageMemoryRequirements*(sType: VkStructureType = VkStructureType.DeviceImageMemoryRequirements, pNext: pointer = nil, pCreateInfo: ptr VkImageCreateInfo, planeAspect: VkImageAspectFlagBits): VkDeviceImageMemoryRequirements = result = VkDeviceImageMemoryRequirements( sType: sType, pNext: pNext, @@ -14856,28 +15181,28 @@ proc newVkDeviceImageMemoryRequirements*(sType: VkStructureType, pNext: pointer planeAspect: planeAspect, ) -proc newVkMemoryRequirements2*(sType: VkStructureType, pNext: pointer = nil, memoryRequirements: VkMemoryRequirements): VkMemoryRequirements2 = +proc newVkMemoryRequirements2*(sType: VkStructureType = VkStructureType.MemoryRequirements2, pNext: pointer = nil, memoryRequirements: VkMemoryRequirements): VkMemoryRequirements2 = result = VkMemoryRequirements2( sType: sType, pNext: pNext, memoryRequirements: memoryRequirements, ) -proc newVkSparseImageMemoryRequirements2*(sType: VkStructureType, pNext: pointer = nil, memoryRequirements: VkSparseImageMemoryRequirements): VkSparseImageMemoryRequirements2 = +proc newVkSparseImageMemoryRequirements2*(sType: VkStructureType = VkStructureType.SparseImageMemoryRequirements2, pNext: pointer = nil, memoryRequirements: VkSparseImageMemoryRequirements): VkSparseImageMemoryRequirements2 = result = VkSparseImageMemoryRequirements2( sType: sType, pNext: pNext, memoryRequirements: memoryRequirements, ) -proc newVkPhysicalDevicePointClippingProperties*(sType: VkStructureType, pNext: pointer = nil, pointClippingBehavior: VkPointClippingBehavior): VkPhysicalDevicePointClippingProperties = +proc newVkPhysicalDevicePointClippingProperties*(sType: VkStructureType = VkStructureType.PhysicalDevicePointClippingProperties, pNext: pointer = nil, pointClippingBehavior: VkPointClippingBehavior): VkPhysicalDevicePointClippingProperties = result = VkPhysicalDevicePointClippingProperties( sType: sType, pNext: pNext, pointClippingBehavior: pointClippingBehavior, ) -proc newVkMemoryDedicatedRequirements*(sType: VkStructureType, pNext: pointer = nil, prefersDedicatedAllocation: VkBool32, requiresDedicatedAllocation: VkBool32): VkMemoryDedicatedRequirements = +proc newVkMemoryDedicatedRequirements*(sType: VkStructureType = VkStructureType.MemoryDedicatedRequirements, pNext: pointer = nil, prefersDedicatedAllocation: VkBool32, requiresDedicatedAllocation: VkBool32): VkMemoryDedicatedRequirements = result = VkMemoryDedicatedRequirements( sType: sType, pNext: pNext, @@ -14885,7 +15210,7 @@ proc newVkMemoryDedicatedRequirements*(sType: VkStructureType, pNext: pointer = requiresDedicatedAllocation: requiresDedicatedAllocation, ) -proc newVkMemoryDedicatedAllocateInfo*(sType: VkStructureType, pNext: pointer = nil, image: VkImage, buffer: VkBuffer): VkMemoryDedicatedAllocateInfo = +proc newVkMemoryDedicatedAllocateInfo*(sType: VkStructureType = VkStructureType.MemoryDedicatedAllocateInfo, pNext: pointer = nil, image: VkImage, buffer: VkBuffer): VkMemoryDedicatedAllocateInfo = result = VkMemoryDedicatedAllocateInfo( sType: sType, pNext: pNext, @@ -14893,7 +15218,7 @@ proc newVkMemoryDedicatedAllocateInfo*(sType: VkStructureType, pNext: pointer = buffer: buffer, ) -proc newVkImageViewUsageCreateInfo*(sType: VkStructureType, pNext: pointer = nil, usage: VkImageUsageFlags): VkImageViewUsageCreateInfo = +proc newVkImageViewUsageCreateInfo*(sType: VkStructureType = VkStructureType.ImageViewUsageCreateInfo, pNext: pointer = nil, usage: VkImageUsageFlags): VkImageViewUsageCreateInfo = result = VkImageViewUsageCreateInfo( sType: sType, pNext: pNext, @@ -14908,21 +15233,21 @@ proc newVkImageViewSlicedCreateInfoEXT*(sType: VkStructureType = VkStructureType sliceCount: sliceCount, ) -proc newVkPipelineTessellationDomainOriginStateCreateInfo*(sType: VkStructureType, pNext: pointer = nil, domainOrigin: VkTessellationDomainOrigin): VkPipelineTessellationDomainOriginStateCreateInfo = +proc newVkPipelineTessellationDomainOriginStateCreateInfo*(sType: VkStructureType = VkStructureType.PipelineTessellationDomainOriginStateCreateInfo, pNext: pointer = nil, domainOrigin: VkTessellationDomainOrigin): VkPipelineTessellationDomainOriginStateCreateInfo = result = VkPipelineTessellationDomainOriginStateCreateInfo( sType: sType, pNext: pNext, domainOrigin: domainOrigin, ) -proc newVkSamplerYcbcrConversionInfo*(sType: VkStructureType, pNext: pointer = nil, conversion: VkSamplerYcbcrConversion): VkSamplerYcbcrConversionInfo = +proc newVkSamplerYcbcrConversionInfo*(sType: VkStructureType = VkStructureType.SamplerYcbcrConversionInfo, pNext: pointer = nil, conversion: VkSamplerYcbcrConversion): VkSamplerYcbcrConversionInfo = result = VkSamplerYcbcrConversionInfo( sType: sType, pNext: pNext, conversion: conversion, ) -proc newVkSamplerYcbcrConversionCreateInfo*(sType: VkStructureType, pNext: pointer = nil, format: VkFormat, ycbcrModel: VkSamplerYcbcrModelConversion, ycbcrRange: VkSamplerYcbcrRange, components: VkComponentMapping, xChromaOffset: VkChromaLocation, yChromaOffset: VkChromaLocation, chromaFilter: VkFilter, forceExplicitReconstruction: VkBool32): VkSamplerYcbcrConversionCreateInfo = +proc newVkSamplerYcbcrConversionCreateInfo*(sType: VkStructureType = VkStructureType.SamplerYcbcrConversionCreateInfo, pNext: pointer = nil, format: VkFormat, ycbcrModel: VkSamplerYcbcrModelConversion, ycbcrRange: VkSamplerYcbcrRange, components: VkComponentMapping, xChromaOffset: VkChromaLocation, yChromaOffset: VkChromaLocation, chromaFilter: VkFilter, forceExplicitReconstruction: VkBool32): VkSamplerYcbcrConversionCreateInfo = result = VkSamplerYcbcrConversionCreateInfo( sType: sType, pNext: pNext, @@ -14936,28 +15261,28 @@ proc newVkSamplerYcbcrConversionCreateInfo*(sType: VkStructureType, pNext: point forceExplicitReconstruction: forceExplicitReconstruction, ) -proc newVkBindImagePlaneMemoryInfo*(sType: VkStructureType, pNext: pointer = nil, planeAspect: VkImageAspectFlagBits): VkBindImagePlaneMemoryInfo = +proc newVkBindImagePlaneMemoryInfo*(sType: VkStructureType = VkStructureType.BindImagePlaneMemoryInfo, pNext: pointer = nil, planeAspect: VkImageAspectFlagBits): VkBindImagePlaneMemoryInfo = result = VkBindImagePlaneMemoryInfo( sType: sType, pNext: pNext, planeAspect: planeAspect, ) -proc newVkImagePlaneMemoryRequirementsInfo*(sType: VkStructureType, pNext: pointer = nil, planeAspect: VkImageAspectFlagBits): VkImagePlaneMemoryRequirementsInfo = +proc newVkImagePlaneMemoryRequirementsInfo*(sType: VkStructureType = VkStructureType.ImagePlaneMemoryRequirementsInfo, pNext: pointer = nil, planeAspect: VkImageAspectFlagBits): VkImagePlaneMemoryRequirementsInfo = result = VkImagePlaneMemoryRequirementsInfo( sType: sType, pNext: pNext, planeAspect: planeAspect, ) -proc newVkPhysicalDeviceSamplerYcbcrConversionFeatures*(sType: VkStructureType, pNext: pointer = nil, samplerYcbcrConversion: VkBool32): VkPhysicalDeviceSamplerYcbcrConversionFeatures = +proc newVkPhysicalDeviceSamplerYcbcrConversionFeatures*(sType: VkStructureType = VkStructureType.PhysicalDeviceSamplerYcbcrConversionFeatures, pNext: pointer = nil, samplerYcbcrConversion: VkBool32): VkPhysicalDeviceSamplerYcbcrConversionFeatures = result = VkPhysicalDeviceSamplerYcbcrConversionFeatures( sType: sType, pNext: pNext, samplerYcbcrConversion: samplerYcbcrConversion, ) -proc newVkSamplerYcbcrConversionImageFormatProperties*(sType: VkStructureType, pNext: pointer = nil, combinedImageSamplerDescriptorCount: uint32): VkSamplerYcbcrConversionImageFormatProperties = +proc newVkSamplerYcbcrConversionImageFormatProperties*(sType: VkStructureType = VkStructureType.SamplerYcbcrConversionImageFormatProperties, pNext: pointer = nil, combinedImageSamplerDescriptorCount: uint32): VkSamplerYcbcrConversionImageFormatProperties = result = VkSamplerYcbcrConversionImageFormatProperties( sType: sType, pNext: pNext, @@ -14980,28 +15305,28 @@ proc newVkConditionalRenderingBeginInfoEXT*(sType: VkStructureType = VkStructure flags: flags, ) -proc newVkProtectedSubmitInfo*(sType: VkStructureType, pNext: pointer = nil, protectedSubmit: VkBool32): VkProtectedSubmitInfo = +proc newVkProtectedSubmitInfo*(sType: VkStructureType = VkStructureType.ProtectedSubmitInfo, pNext: pointer = nil, protectedSubmit: VkBool32): VkProtectedSubmitInfo = result = VkProtectedSubmitInfo( sType: sType, pNext: pNext, protectedSubmit: protectedSubmit, ) -proc newVkPhysicalDeviceProtectedMemoryFeatures*(sType: VkStructureType, pNext: pointer = nil, protectedMemory: VkBool32): VkPhysicalDeviceProtectedMemoryFeatures = +proc newVkPhysicalDeviceProtectedMemoryFeatures*(sType: VkStructureType = VkStructureType.PhysicalDeviceProtectedMemoryFeatures, pNext: pointer = nil, protectedMemory: VkBool32): VkPhysicalDeviceProtectedMemoryFeatures = result = VkPhysicalDeviceProtectedMemoryFeatures( sType: sType, pNext: pNext, protectedMemory: protectedMemory, ) -proc newVkPhysicalDeviceProtectedMemoryProperties*(sType: VkStructureType, pNext: pointer = nil, protectedNoFault: VkBool32): VkPhysicalDeviceProtectedMemoryProperties = +proc newVkPhysicalDeviceProtectedMemoryProperties*(sType: VkStructureType = VkStructureType.PhysicalDeviceProtectedMemoryProperties, pNext: pointer = nil, protectedNoFault: VkBool32): VkPhysicalDeviceProtectedMemoryProperties = result = VkPhysicalDeviceProtectedMemoryProperties( sType: sType, pNext: pNext, protectedNoFault: protectedNoFault, ) -proc newVkDeviceQueueInfo2*(sType: VkStructureType, pNext: pointer = nil, flags: VkDeviceQueueCreateFlags = 0.VkDeviceQueueCreateFlags, queueFamilyIndex: uint32, queueIndex: uint32): VkDeviceQueueInfo2 = +proc newVkDeviceQueueInfo2*(sType: VkStructureType = VkStructureType.DeviceQueueInfo2, pNext: pointer = nil, flags: VkDeviceQueueCreateFlags = 0.VkDeviceQueueCreateFlags, queueFamilyIndex: uint32, queueIndex: uint32): VkDeviceQueueInfo2 = result = VkDeviceQueueInfo2( sType: sType, pNext: pNext, @@ -15019,7 +15344,7 @@ proc newVkPipelineCoverageToColorStateCreateInfoNV*(sType: VkStructureType = VkS coverageToColorLocation: coverageToColorLocation, ) -proc newVkPhysicalDeviceSamplerFilterMinmaxProperties*(sType: VkStructureType, pNext: pointer = nil, filterMinmaxSingleComponentFormats: VkBool32, filterMinmaxImageComponentMapping: VkBool32): VkPhysicalDeviceSamplerFilterMinmaxProperties = +proc newVkPhysicalDeviceSamplerFilterMinmaxProperties*(sType: VkStructureType = VkStructureType.PhysicalDeviceSamplerFilterMinmaxProperties, pNext: pointer = nil, filterMinmaxSingleComponentFormats: VkBool32, filterMinmaxImageComponentMapping: VkBool32): VkPhysicalDeviceSamplerFilterMinmaxProperties = result = VkPhysicalDeviceSamplerFilterMinmaxProperties( sType: sType, pNext: pNext, @@ -15091,7 +15416,7 @@ proc newVkMultisamplePropertiesEXT*(sType: VkStructureType = VkStructureType.Mul maxSampleLocationGridSize: maxSampleLocationGridSize, ) -proc newVkSamplerReductionModeCreateInfo*(sType: VkStructureType, pNext: pointer = nil, reductionMode: VkSamplerReductionMode): VkSamplerReductionModeCreateInfo = +proc newVkSamplerReductionModeCreateInfo*(sType: VkStructureType = VkStructureType.SamplerReductionModeCreateInfo, pNext: pointer = nil, reductionMode: VkSamplerReductionMode): VkSamplerReductionModeCreateInfo = result = VkSamplerReductionModeCreateInfo( sType: sType, pNext: pNext, @@ -15133,7 +15458,7 @@ proc newVkPipelineColorBlendAdvancedStateCreateInfoEXT*(sType: VkStructureType = blendOverlap: blendOverlap, ) -proc newVkPhysicalDeviceInlineUniformBlockFeatures*(sType: VkStructureType, pNext: pointer = nil, inlineUniformBlock: VkBool32, descriptorBindingInlineUniformBlockUpdateAfterBind: VkBool32): VkPhysicalDeviceInlineUniformBlockFeatures = +proc newVkPhysicalDeviceInlineUniformBlockFeatures*(sType: VkStructureType = VkStructureType.PhysicalDeviceInlineUniformBlockFeatures, pNext: pointer = nil, inlineUniformBlock: VkBool32, descriptorBindingInlineUniformBlockUpdateAfterBind: VkBool32): VkPhysicalDeviceInlineUniformBlockFeatures = result = VkPhysicalDeviceInlineUniformBlockFeatures( sType: sType, pNext: pNext, @@ -15141,7 +15466,7 @@ proc newVkPhysicalDeviceInlineUniformBlockFeatures*(sType: VkStructureType, pNex descriptorBindingInlineUniformBlockUpdateAfterBind: descriptorBindingInlineUniformBlockUpdateAfterBind, ) -proc newVkPhysicalDeviceInlineUniformBlockProperties*(sType: VkStructureType, pNext: pointer = nil, maxInlineUniformBlockSize: uint32, maxPerStageDescriptorInlineUniformBlocks: uint32, maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks: uint32, maxDescriptorSetInlineUniformBlocks: uint32, maxDescriptorSetUpdateAfterBindInlineUniformBlocks: uint32): VkPhysicalDeviceInlineUniformBlockProperties = +proc newVkPhysicalDeviceInlineUniformBlockProperties*(sType: VkStructureType = VkStructureType.PhysicalDeviceInlineUniformBlockProperties, pNext: pointer = nil, maxInlineUniformBlockSize: uint32, maxPerStageDescriptorInlineUniformBlocks: uint32, maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks: uint32, maxDescriptorSetInlineUniformBlocks: uint32, maxDescriptorSetUpdateAfterBindInlineUniformBlocks: uint32): VkPhysicalDeviceInlineUniformBlockProperties = result = VkPhysicalDeviceInlineUniformBlockProperties( sType: sType, pNext: pNext, @@ -15152,7 +15477,7 @@ proc newVkPhysicalDeviceInlineUniformBlockProperties*(sType: VkStructureType, pN maxDescriptorSetUpdateAfterBindInlineUniformBlocks: maxDescriptorSetUpdateAfterBindInlineUniformBlocks, ) -proc newVkWriteDescriptorSetInlineUniformBlock*(sType: VkStructureType, pNext: pointer = nil, dataSize: uint32, pData: pointer = nil): VkWriteDescriptorSetInlineUniformBlock = +proc newVkWriteDescriptorSetInlineUniformBlock*(sType: VkStructureType = VkStructureType.WriteDescriptorSetInlineUniformBlock, pNext: pointer = nil, dataSize: uint32, pData: pointer = nil): VkWriteDescriptorSetInlineUniformBlock = result = VkWriteDescriptorSetInlineUniformBlock( sType: sType, pNext: pNext, @@ -15160,7 +15485,7 @@ proc newVkWriteDescriptorSetInlineUniformBlock*(sType: VkStructureType, pNext: p pData: pData, ) -proc newVkDescriptorPoolInlineUniformBlockCreateInfo*(sType: VkStructureType, pNext: pointer = nil, maxInlineUniformBlockBindings: uint32): VkDescriptorPoolInlineUniformBlockCreateInfo = +proc newVkDescriptorPoolInlineUniformBlockCreateInfo*(sType: VkStructureType = VkStructureType.DescriptorPoolInlineUniformBlockCreateInfo, pNext: pointer = nil, maxInlineUniformBlockBindings: uint32): VkDescriptorPoolInlineUniformBlockCreateInfo = result = VkDescriptorPoolInlineUniformBlockCreateInfo( sType: sType, pNext: pNext, @@ -15178,7 +15503,7 @@ proc newVkPipelineCoverageModulationStateCreateInfoNV*(sType: VkStructureType = pCoverageModulationTable: pCoverageModulationTable, ) -proc newVkImageFormatListCreateInfo*(sType: VkStructureType, pNext: pointer = nil, viewFormatCount: uint32, pViewFormats: ptr VkFormat): VkImageFormatListCreateInfo = +proc newVkImageFormatListCreateInfo*(sType: VkStructureType = VkStructureType.ImageFormatListCreateInfo, pNext: pointer = nil, viewFormatCount: uint32, pViewFormats: ptr VkFormat): VkImageFormatListCreateInfo = result = VkImageFormatListCreateInfo( sType: sType, pNext: pNext, @@ -15202,7 +15527,7 @@ proc newVkShaderModuleValidationCacheCreateInfoEXT*(sType: VkStructureType = VkS validationCache: validationCache, ) -proc newVkPhysicalDeviceMaintenance3Properties*(sType: VkStructureType, pNext: pointer = nil, maxPerSetDescriptors: uint32, maxMemoryAllocationSize: VkDeviceSize): VkPhysicalDeviceMaintenance3Properties = +proc newVkPhysicalDeviceMaintenance3Properties*(sType: VkStructureType = VkStructureType.PhysicalDeviceMaintenance3Properties, pNext: pointer = nil, maxPerSetDescriptors: uint32, maxMemoryAllocationSize: VkDeviceSize): VkPhysicalDeviceMaintenance3Properties = result = VkPhysicalDeviceMaintenance3Properties( sType: sType, pNext: pNext, @@ -15210,14 +15535,14 @@ proc newVkPhysicalDeviceMaintenance3Properties*(sType: VkStructureType, pNext: p maxMemoryAllocationSize: maxMemoryAllocationSize, ) -proc newVkPhysicalDeviceMaintenance4Features*(sType: VkStructureType, pNext: pointer = nil, maintenance4: VkBool32): VkPhysicalDeviceMaintenance4Features = +proc newVkPhysicalDeviceMaintenance4Features*(sType: VkStructureType = VkStructureType.PhysicalDeviceMaintenance4Features, pNext: pointer = nil, maintenance4: VkBool32): VkPhysicalDeviceMaintenance4Features = result = VkPhysicalDeviceMaintenance4Features( sType: sType, pNext: pNext, maintenance4: maintenance4, ) -proc newVkPhysicalDeviceMaintenance4Properties*(sType: VkStructureType, pNext: pointer = nil, maxBufferSize: VkDeviceSize): VkPhysicalDeviceMaintenance4Properties = +proc newVkPhysicalDeviceMaintenance4Properties*(sType: VkStructureType = VkStructureType.PhysicalDeviceMaintenance4Properties, pNext: pointer = nil, maxBufferSize: VkDeviceSize): VkPhysicalDeviceMaintenance4Properties = result = VkPhysicalDeviceMaintenance4Properties( sType: sType, pNext: pNext, @@ -15270,21 +15595,21 @@ proc newVkRenderingAreaInfoKHR*(sType: VkStructureType = VkStructureType.Renderi stencilAttachmentFormat: stencilAttachmentFormat, ) -proc newVkDescriptorSetLayoutSupport*(sType: VkStructureType, pNext: pointer = nil, supported: VkBool32): VkDescriptorSetLayoutSupport = +proc newVkDescriptorSetLayoutSupport*(sType: VkStructureType = VkStructureType.DescriptorSetLayoutSupport, pNext: pointer = nil, supported: VkBool32): VkDescriptorSetLayoutSupport = result = VkDescriptorSetLayoutSupport( sType: sType, pNext: pNext, supported: supported, ) -proc newVkPhysicalDeviceShaderDrawParametersFeatures*(sType: VkStructureType, pNext: pointer = nil, shaderDrawParameters: VkBool32): VkPhysicalDeviceShaderDrawParametersFeatures = +proc newVkPhysicalDeviceShaderDrawParametersFeatures*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderDrawParametersFeatures, pNext: pointer = nil, shaderDrawParameters: VkBool32): VkPhysicalDeviceShaderDrawParametersFeatures = result = VkPhysicalDeviceShaderDrawParametersFeatures( sType: sType, pNext: pNext, shaderDrawParameters: shaderDrawParameters, ) -proc newVkPhysicalDeviceShaderFloat16Int8Features*(sType: VkStructureType, pNext: pointer = nil, shaderFloat16: VkBool32, shaderInt8: VkBool32): VkPhysicalDeviceShaderFloat16Int8Features = +proc newVkPhysicalDeviceShaderFloat16Int8Features*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderFloat16Int8Features, pNext: pointer = nil, shaderFloat16: VkBool32, shaderInt8: VkBool32): VkPhysicalDeviceShaderFloat16Int8Features = result = VkPhysicalDeviceShaderFloat16Int8Features( sType: sType, pNext: pNext, @@ -15292,7 +15617,7 @@ proc newVkPhysicalDeviceShaderFloat16Int8Features*(sType: VkStructureType, pNext shaderInt8: shaderInt8, ) -proc newVkPhysicalDeviceFloatControlsProperties*(sType: VkStructureType, pNext: pointer = nil, denormBehaviorIndependence: VkShaderFloatControlsIndependence, roundingModeIndependence: VkShaderFloatControlsIndependence, shaderSignedZeroInfNanPreserveFloat16: VkBool32, shaderSignedZeroInfNanPreserveFloat32: VkBool32, shaderSignedZeroInfNanPreserveFloat64: VkBool32, shaderDenormPreserveFloat16: VkBool32, shaderDenormPreserveFloat32: VkBool32, shaderDenormPreserveFloat64: VkBool32, shaderDenormFlushToZeroFloat16: VkBool32, shaderDenormFlushToZeroFloat32: VkBool32, shaderDenormFlushToZeroFloat64: VkBool32, shaderRoundingModeRTEFloat16: VkBool32, shaderRoundingModeRTEFloat32: VkBool32, shaderRoundingModeRTEFloat64: VkBool32, shaderRoundingModeRTZFloat16: VkBool32, shaderRoundingModeRTZFloat32: VkBool32, shaderRoundingModeRTZFloat64: VkBool32): VkPhysicalDeviceFloatControlsProperties = +proc newVkPhysicalDeviceFloatControlsProperties*(sType: VkStructureType = VkStructureType.PhysicalDeviceFloatControlsProperties, pNext: pointer = nil, denormBehaviorIndependence: VkShaderFloatControlsIndependence, roundingModeIndependence: VkShaderFloatControlsIndependence, shaderSignedZeroInfNanPreserveFloat16: VkBool32, shaderSignedZeroInfNanPreserveFloat32: VkBool32, shaderSignedZeroInfNanPreserveFloat64: VkBool32, shaderDenormPreserveFloat16: VkBool32, shaderDenormPreserveFloat32: VkBool32, shaderDenormPreserveFloat64: VkBool32, shaderDenormFlushToZeroFloat16: VkBool32, shaderDenormFlushToZeroFloat32: VkBool32, shaderDenormFlushToZeroFloat64: VkBool32, shaderRoundingModeRTEFloat16: VkBool32, shaderRoundingModeRTEFloat32: VkBool32, shaderRoundingModeRTEFloat64: VkBool32, shaderRoundingModeRTZFloat16: VkBool32, shaderRoundingModeRTZFloat32: VkBool32, shaderRoundingModeRTZFloat64: VkBool32): VkPhysicalDeviceFloatControlsProperties = result = VkPhysicalDeviceFloatControlsProperties( sType: sType, pNext: pNext, @@ -15315,7 +15640,7 @@ proc newVkPhysicalDeviceFloatControlsProperties*(sType: VkStructureType, pNext: shaderRoundingModeRTZFloat64: shaderRoundingModeRTZFloat64, ) -proc newVkPhysicalDeviceHostQueryResetFeatures*(sType: VkStructureType, pNext: pointer = nil, hostQueryReset: VkBool32): VkPhysicalDeviceHostQueryResetFeatures = +proc newVkPhysicalDeviceHostQueryResetFeatures*(sType: VkStructureType = VkStructureType.PhysicalDeviceHostQueryResetFeatures, pNext: pointer = nil, hostQueryReset: VkBool32): VkPhysicalDeviceHostQueryResetFeatures = result = VkPhysicalDeviceHostQueryResetFeatures( sType: sType, pNext: pNext, @@ -15560,7 +15885,7 @@ proc newVkPipelineRasterizationConservativeStateCreateInfoEXT*(sType: VkStructur extraPrimitiveOverestimationSize: extraPrimitiveOverestimationSize, ) -proc newVkPhysicalDeviceDescriptorIndexingFeatures*(sType: VkStructureType, pNext: pointer = nil, shaderInputAttachmentArrayDynamicIndexing: VkBool32, shaderUniformTexelBufferArrayDynamicIndexing: VkBool32, shaderStorageTexelBufferArrayDynamicIndexing: VkBool32, shaderUniformBufferArrayNonUniformIndexing: VkBool32, shaderSampledImageArrayNonUniformIndexing: VkBool32, shaderStorageBufferArrayNonUniformIndexing: VkBool32, shaderStorageImageArrayNonUniformIndexing: VkBool32, shaderInputAttachmentArrayNonUniformIndexing: VkBool32, shaderUniformTexelBufferArrayNonUniformIndexing: VkBool32, shaderStorageTexelBufferArrayNonUniformIndexing: VkBool32, descriptorBindingUniformBufferUpdateAfterBind: VkBool32, descriptorBindingSampledImageUpdateAfterBind: VkBool32, descriptorBindingStorageImageUpdateAfterBind: VkBool32, descriptorBindingStorageBufferUpdateAfterBind: VkBool32, descriptorBindingUniformTexelBufferUpdateAfterBind: VkBool32, descriptorBindingStorageTexelBufferUpdateAfterBind: VkBool32, descriptorBindingUpdateUnusedWhilePending: VkBool32, descriptorBindingPartiallyBound: VkBool32, descriptorBindingVariableDescriptorCount: VkBool32, runtimeDescriptorArray: VkBool32): VkPhysicalDeviceDescriptorIndexingFeatures = +proc newVkPhysicalDeviceDescriptorIndexingFeatures*(sType: VkStructureType = VkStructureType.PhysicalDeviceDescriptorIndexingFeatures, pNext: pointer = nil, shaderInputAttachmentArrayDynamicIndexing: VkBool32, shaderUniformTexelBufferArrayDynamicIndexing: VkBool32, shaderStorageTexelBufferArrayDynamicIndexing: VkBool32, shaderUniformBufferArrayNonUniformIndexing: VkBool32, shaderSampledImageArrayNonUniformIndexing: VkBool32, shaderStorageBufferArrayNonUniformIndexing: VkBool32, shaderStorageImageArrayNonUniformIndexing: VkBool32, shaderInputAttachmentArrayNonUniformIndexing: VkBool32, shaderUniformTexelBufferArrayNonUniformIndexing: VkBool32, shaderStorageTexelBufferArrayNonUniformIndexing: VkBool32, descriptorBindingUniformBufferUpdateAfterBind: VkBool32, descriptorBindingSampledImageUpdateAfterBind: VkBool32, descriptorBindingStorageImageUpdateAfterBind: VkBool32, descriptorBindingStorageBufferUpdateAfterBind: VkBool32, descriptorBindingUniformTexelBufferUpdateAfterBind: VkBool32, descriptorBindingStorageTexelBufferUpdateAfterBind: VkBool32, descriptorBindingUpdateUnusedWhilePending: VkBool32, descriptorBindingPartiallyBound: VkBool32, descriptorBindingVariableDescriptorCount: VkBool32, runtimeDescriptorArray: VkBool32): VkPhysicalDeviceDescriptorIndexingFeatures = result = VkPhysicalDeviceDescriptorIndexingFeatures( sType: sType, pNext: pNext, @@ -15586,7 +15911,7 @@ proc newVkPhysicalDeviceDescriptorIndexingFeatures*(sType: VkStructureType, pNex runtimeDescriptorArray: runtimeDescriptorArray, ) -proc newVkPhysicalDeviceDescriptorIndexingProperties*(sType: VkStructureType, pNext: pointer = nil, maxUpdateAfterBindDescriptorsInAllPools: uint32, shaderUniformBufferArrayNonUniformIndexingNative: VkBool32, shaderSampledImageArrayNonUniformIndexingNative: VkBool32, shaderStorageBufferArrayNonUniformIndexingNative: VkBool32, shaderStorageImageArrayNonUniformIndexingNative: VkBool32, shaderInputAttachmentArrayNonUniformIndexingNative: VkBool32, robustBufferAccessUpdateAfterBind: VkBool32, quadDivergentImplicitLod: VkBool32, maxPerStageDescriptorUpdateAfterBindSamplers: uint32, maxPerStageDescriptorUpdateAfterBindUniformBuffers: uint32, maxPerStageDescriptorUpdateAfterBindStorageBuffers: uint32, maxPerStageDescriptorUpdateAfterBindSampledImages: uint32, maxPerStageDescriptorUpdateAfterBindStorageImages: uint32, maxPerStageDescriptorUpdateAfterBindInputAttachments: uint32, maxPerStageUpdateAfterBindResources: uint32, maxDescriptorSetUpdateAfterBindSamplers: uint32, maxDescriptorSetUpdateAfterBindUniformBuffers: uint32, maxDescriptorSetUpdateAfterBindUniformBuffersDynamic: uint32, maxDescriptorSetUpdateAfterBindStorageBuffers: uint32, maxDescriptorSetUpdateAfterBindStorageBuffersDynamic: uint32, maxDescriptorSetUpdateAfterBindSampledImages: uint32, maxDescriptorSetUpdateAfterBindStorageImages: uint32, maxDescriptorSetUpdateAfterBindInputAttachments: uint32): VkPhysicalDeviceDescriptorIndexingProperties = +proc newVkPhysicalDeviceDescriptorIndexingProperties*(sType: VkStructureType = VkStructureType.PhysicalDeviceDescriptorIndexingProperties, pNext: pointer = nil, maxUpdateAfterBindDescriptorsInAllPools: uint32, shaderUniformBufferArrayNonUniformIndexingNative: VkBool32, shaderSampledImageArrayNonUniformIndexingNative: VkBool32, shaderStorageBufferArrayNonUniformIndexingNative: VkBool32, shaderStorageImageArrayNonUniformIndexingNative: VkBool32, shaderInputAttachmentArrayNonUniformIndexingNative: VkBool32, robustBufferAccessUpdateAfterBind: VkBool32, quadDivergentImplicitLod: VkBool32, maxPerStageDescriptorUpdateAfterBindSamplers: uint32, maxPerStageDescriptorUpdateAfterBindUniformBuffers: uint32, maxPerStageDescriptorUpdateAfterBindStorageBuffers: uint32, maxPerStageDescriptorUpdateAfterBindSampledImages: uint32, maxPerStageDescriptorUpdateAfterBindStorageImages: uint32, maxPerStageDescriptorUpdateAfterBindInputAttachments: uint32, maxPerStageUpdateAfterBindResources: uint32, maxDescriptorSetUpdateAfterBindSamplers: uint32, maxDescriptorSetUpdateAfterBindUniformBuffers: uint32, maxDescriptorSetUpdateAfterBindUniformBuffersDynamic: uint32, maxDescriptorSetUpdateAfterBindStorageBuffers: uint32, maxDescriptorSetUpdateAfterBindStorageBuffersDynamic: uint32, maxDescriptorSetUpdateAfterBindSampledImages: uint32, maxDescriptorSetUpdateAfterBindStorageImages: uint32, maxDescriptorSetUpdateAfterBindInputAttachments: uint32): VkPhysicalDeviceDescriptorIndexingProperties = result = VkPhysicalDeviceDescriptorIndexingProperties( sType: sType, pNext: pNext, @@ -15615,7 +15940,7 @@ proc newVkPhysicalDeviceDescriptorIndexingProperties*(sType: VkStructureType, pN maxDescriptorSetUpdateAfterBindInputAttachments: maxDescriptorSetUpdateAfterBindInputAttachments, ) -proc newVkDescriptorSetLayoutBindingFlagsCreateInfo*(sType: VkStructureType, pNext: pointer = nil, bindingCount: uint32, pBindingFlags: ptr VkDescriptorBindingFlags): VkDescriptorSetLayoutBindingFlagsCreateInfo = +proc newVkDescriptorSetLayoutBindingFlagsCreateInfo*(sType: VkStructureType = VkStructureType.DescriptorSetLayoutBindingFlagsCreateInfo, pNext: pointer = nil, bindingCount: uint32, pBindingFlags: ptr VkDescriptorBindingFlags): VkDescriptorSetLayoutBindingFlagsCreateInfo = result = VkDescriptorSetLayoutBindingFlagsCreateInfo( sType: sType, pNext: pNext, @@ -15623,7 +15948,7 @@ proc newVkDescriptorSetLayoutBindingFlagsCreateInfo*(sType: VkStructureType, pNe pBindingFlags: pBindingFlags, ) -proc newVkDescriptorSetVariableDescriptorCountAllocateInfo*(sType: VkStructureType, pNext: pointer = nil, descriptorSetCount: uint32, pDescriptorCounts: ptr uint32): VkDescriptorSetVariableDescriptorCountAllocateInfo = +proc newVkDescriptorSetVariableDescriptorCountAllocateInfo*(sType: VkStructureType = VkStructureType.DescriptorSetVariableDescriptorCountAllocateInfo, pNext: pointer = nil, descriptorSetCount: uint32, pDescriptorCounts: ptr uint32): VkDescriptorSetVariableDescriptorCountAllocateInfo = result = VkDescriptorSetVariableDescriptorCountAllocateInfo( sType: sType, pNext: pNext, @@ -15631,14 +15956,14 @@ proc newVkDescriptorSetVariableDescriptorCountAllocateInfo*(sType: VkStructureTy pDescriptorCounts: pDescriptorCounts, ) -proc newVkDescriptorSetVariableDescriptorCountLayoutSupport*(sType: VkStructureType, pNext: pointer = nil, maxVariableDescriptorCount: uint32): VkDescriptorSetVariableDescriptorCountLayoutSupport = +proc newVkDescriptorSetVariableDescriptorCountLayoutSupport*(sType: VkStructureType = VkStructureType.DescriptorSetVariableDescriptorCountLayoutSupport, pNext: pointer = nil, maxVariableDescriptorCount: uint32): VkDescriptorSetVariableDescriptorCountLayoutSupport = result = VkDescriptorSetVariableDescriptorCountLayoutSupport( sType: sType, pNext: pNext, maxVariableDescriptorCount: maxVariableDescriptorCount, ) -proc newVkAttachmentDescription2*(sType: VkStructureType, pNext: pointer = nil, flags: VkAttachmentDescriptionFlags = 0.VkAttachmentDescriptionFlags, format: VkFormat, samples: VkSampleCountFlagBits, loadOp: VkAttachmentLoadOp, storeOp: VkAttachmentStoreOp, stencilLoadOp: VkAttachmentLoadOp, stencilStoreOp: VkAttachmentStoreOp, initialLayout: VkImageLayout, finalLayout: VkImageLayout): VkAttachmentDescription2 = +proc newVkAttachmentDescription2*(sType: VkStructureType = VkStructureType.AttachmentDescription2, pNext: pointer = nil, flags: VkAttachmentDescriptionFlags = 0.VkAttachmentDescriptionFlags, format: VkFormat, samples: VkSampleCountFlagBits, loadOp: VkAttachmentLoadOp, storeOp: VkAttachmentStoreOp, stencilLoadOp: VkAttachmentLoadOp, stencilStoreOp: VkAttachmentStoreOp, initialLayout: VkImageLayout, finalLayout: VkImageLayout): VkAttachmentDescription2 = result = VkAttachmentDescription2( sType: sType, pNext: pNext, @@ -15653,7 +15978,7 @@ proc newVkAttachmentDescription2*(sType: VkStructureType, pNext: pointer = nil, finalLayout: finalLayout, ) -proc newVkAttachmentReference2*(sType: VkStructureType, pNext: pointer = nil, attachment: uint32, layout: VkImageLayout, aspectMask: VkImageAspectFlags): VkAttachmentReference2 = +proc newVkAttachmentReference2*(sType: VkStructureType = VkStructureType.AttachmentReference2, pNext: pointer = nil, attachment: uint32, layout: VkImageLayout, aspectMask: VkImageAspectFlags): VkAttachmentReference2 = result = VkAttachmentReference2( sType: sType, pNext: pNext, @@ -15662,7 +15987,7 @@ proc newVkAttachmentReference2*(sType: VkStructureType, pNext: pointer = nil, at aspectMask: aspectMask, ) -proc newVkSubpassDescription2*(sType: VkStructureType, pNext: pointer = nil, flags: VkSubpassDescriptionFlags = 0.VkSubpassDescriptionFlags, pipelineBindPoint: VkPipelineBindPoint, viewMask: uint32, inputAttachmentCount: uint32, pInputAttachments: ptr VkAttachmentReference2, colorAttachmentCount: uint32, pColorAttachments: ptr VkAttachmentReference2, pResolveAttachments: ptr VkAttachmentReference2, pDepthStencilAttachment: ptr VkAttachmentReference2, preserveAttachmentCount: uint32, pPreserveAttachments: ptr uint32): VkSubpassDescription2 = +proc newVkSubpassDescription2*(sType: VkStructureType = VkStructureType.SubpassDescription2, pNext: pointer = nil, flags: VkSubpassDescriptionFlags = 0.VkSubpassDescriptionFlags, pipelineBindPoint: VkPipelineBindPoint, viewMask: uint32, inputAttachmentCount: uint32, pInputAttachments: ptr VkAttachmentReference2, colorAttachmentCount: uint32, pColorAttachments: ptr VkAttachmentReference2, pResolveAttachments: ptr VkAttachmentReference2, pDepthStencilAttachment: ptr VkAttachmentReference2, preserveAttachmentCount: uint32, pPreserveAttachments: ptr uint32): VkSubpassDescription2 = result = VkSubpassDescription2( sType: sType, pNext: pNext, @@ -15679,7 +16004,7 @@ proc newVkSubpassDescription2*(sType: VkStructureType, pNext: pointer = nil, fla pPreserveAttachments: pPreserveAttachments, ) -proc newVkSubpassDependency2*(sType: VkStructureType, pNext: pointer = nil, srcSubpass: uint32, dstSubpass: uint32, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags, dependencyFlags: VkDependencyFlags, viewOffset: int32): VkSubpassDependency2 = +proc newVkSubpassDependency2*(sType: VkStructureType = VkStructureType.SubpassDependency2, pNext: pointer = nil, srcSubpass: uint32, dstSubpass: uint32, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags, dependencyFlags: VkDependencyFlags, viewOffset: int32): VkSubpassDependency2 = result = VkSubpassDependency2( sType: sType, pNext: pNext, @@ -15693,7 +16018,7 @@ proc newVkSubpassDependency2*(sType: VkStructureType, pNext: pointer = nil, srcS viewOffset: viewOffset, ) -proc newVkRenderPassCreateInfo2*(sType: VkStructureType, pNext: pointer = nil, flags: VkRenderPassCreateFlags = 0.VkRenderPassCreateFlags, attachmentCount: uint32, pAttachments: ptr VkAttachmentDescription2, subpassCount: uint32, pSubpasses: ptr VkSubpassDescription2, dependencyCount: uint32, pDependencies: ptr VkSubpassDependency2, correlatedViewMaskCount: uint32, pCorrelatedViewMasks: ptr uint32): VkRenderPassCreateInfo2 = +proc newVkRenderPassCreateInfo2*(sType: VkStructureType = VkStructureType.RenderPassCreateInfo2, pNext: pointer = nil, flags: VkRenderPassCreateFlags = 0.VkRenderPassCreateFlags, attachmentCount: uint32, pAttachments: ptr VkAttachmentDescription2, subpassCount: uint32, pSubpasses: ptr VkSubpassDescription2, dependencyCount: uint32, pDependencies: ptr VkSubpassDependency2, correlatedViewMaskCount: uint32, pCorrelatedViewMasks: ptr uint32): VkRenderPassCreateInfo2 = result = VkRenderPassCreateInfo2( sType: sType, pNext: pNext, @@ -15708,34 +16033,34 @@ proc newVkRenderPassCreateInfo2*(sType: VkStructureType, pNext: pointer = nil, f pCorrelatedViewMasks: pCorrelatedViewMasks, ) -proc newVkSubpassBeginInfo*(sType: VkStructureType, pNext: pointer = nil, contents: VkSubpassContents): VkSubpassBeginInfo = +proc newVkSubpassBeginInfo*(sType: VkStructureType = VkStructureType.SubpassBeginInfo, pNext: pointer = nil, contents: VkSubpassContents): VkSubpassBeginInfo = result = VkSubpassBeginInfo( sType: sType, pNext: pNext, contents: contents, ) -proc newVkSubpassEndInfo*(sType: VkStructureType, pNext: pointer = nil): VkSubpassEndInfo = +proc newVkSubpassEndInfo*(sType: VkStructureType = VkStructureType.SubpassEndInfo, pNext: pointer = nil): VkSubpassEndInfo = result = VkSubpassEndInfo( sType: sType, pNext: pNext, ) -proc newVkPhysicalDeviceTimelineSemaphoreFeatures*(sType: VkStructureType, pNext: pointer = nil, timelineSemaphore: VkBool32): VkPhysicalDeviceTimelineSemaphoreFeatures = +proc newVkPhysicalDeviceTimelineSemaphoreFeatures*(sType: VkStructureType = VkStructureType.PhysicalDeviceTimelineSemaphoreFeatures, pNext: pointer = nil, timelineSemaphore: VkBool32): VkPhysicalDeviceTimelineSemaphoreFeatures = result = VkPhysicalDeviceTimelineSemaphoreFeatures( sType: sType, pNext: pNext, timelineSemaphore: timelineSemaphore, ) -proc newVkPhysicalDeviceTimelineSemaphoreProperties*(sType: VkStructureType, pNext: pointer = nil, maxTimelineSemaphoreValueDifference: uint64): VkPhysicalDeviceTimelineSemaphoreProperties = +proc newVkPhysicalDeviceTimelineSemaphoreProperties*(sType: VkStructureType = VkStructureType.PhysicalDeviceTimelineSemaphoreProperties, pNext: pointer = nil, maxTimelineSemaphoreValueDifference: uint64): VkPhysicalDeviceTimelineSemaphoreProperties = result = VkPhysicalDeviceTimelineSemaphoreProperties( sType: sType, pNext: pNext, maxTimelineSemaphoreValueDifference: maxTimelineSemaphoreValueDifference, ) -proc newVkSemaphoreTypeCreateInfo*(sType: VkStructureType, pNext: pointer = nil, semaphoreType: VkSemaphoreType, initialValue: uint64): VkSemaphoreTypeCreateInfo = +proc newVkSemaphoreTypeCreateInfo*(sType: VkStructureType = VkStructureType.SemaphoreTypeCreateInfo, pNext: pointer = nil, semaphoreType: VkSemaphoreType, initialValue: uint64): VkSemaphoreTypeCreateInfo = result = VkSemaphoreTypeCreateInfo( sType: sType, pNext: pNext, @@ -15743,7 +16068,7 @@ proc newVkSemaphoreTypeCreateInfo*(sType: VkStructureType, pNext: pointer = nil, initialValue: initialValue, ) -proc newVkTimelineSemaphoreSubmitInfo*(sType: VkStructureType, pNext: pointer = nil, waitSemaphoreValueCount: uint32, pWaitSemaphoreValues: ptr uint64, signalSemaphoreValueCount: uint32, pSignalSemaphoreValues: ptr uint64): VkTimelineSemaphoreSubmitInfo = +proc newVkTimelineSemaphoreSubmitInfo*(sType: VkStructureType = VkStructureType.TimelineSemaphoreSubmitInfo, pNext: pointer = nil, waitSemaphoreValueCount: uint32, pWaitSemaphoreValues: ptr uint64, signalSemaphoreValueCount: uint32, pSignalSemaphoreValues: ptr uint64): VkTimelineSemaphoreSubmitInfo = result = VkTimelineSemaphoreSubmitInfo( sType: sType, pNext: pNext, @@ -15753,7 +16078,7 @@ proc newVkTimelineSemaphoreSubmitInfo*(sType: VkStructureType, pNext: pointer = pSignalSemaphoreValues: pSignalSemaphoreValues, ) -proc newVkSemaphoreWaitInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkSemaphoreWaitFlags = 0.VkSemaphoreWaitFlags, semaphoreCount: uint32, pSemaphores: ptr VkSemaphore, pValues: ptr uint64): VkSemaphoreWaitInfo = +proc newVkSemaphoreWaitInfo*(sType: VkStructureType = VkStructureType.SemaphoreWaitInfo, pNext: pointer = nil, flags: VkSemaphoreWaitFlags = 0.VkSemaphoreWaitFlags, semaphoreCount: uint32, pSemaphores: ptr VkSemaphore, pValues: ptr uint64): VkSemaphoreWaitInfo = result = VkSemaphoreWaitInfo( sType: sType, pNext: pNext, @@ -15763,7 +16088,7 @@ proc newVkSemaphoreWaitInfo*(sType: VkStructureType, pNext: pointer = nil, flags pValues: pValues, ) -proc newVkSemaphoreSignalInfo*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, value: uint64): VkSemaphoreSignalInfo = +proc newVkSemaphoreSignalInfo*(sType: VkStructureType = VkStructureType.SemaphoreSignalInfo, pNext: pointer = nil, semaphore: VkSemaphore, value: uint64): VkSemaphoreSignalInfo = result = VkSemaphoreSignalInfo( sType: sType, pNext: pNext, @@ -15867,7 +16192,7 @@ proc newVkExternalFormatANDROID*(sType: VkStructureType = VkStructureType.Extern externalFormat: externalFormat, ) -proc newVkPhysicalDevice8BitStorageFeatures*(sType: VkStructureType, pNext: pointer = nil, storageBuffer8BitAccess: VkBool32, uniformAndStorageBuffer8BitAccess: VkBool32, storagePushConstant8: VkBool32): VkPhysicalDevice8BitStorageFeatures = +proc newVkPhysicalDevice8BitStorageFeatures*(sType: VkStructureType = VkStructureType.PhysicalDevice8BitStorageFeatures, pNext: pointer = nil, storageBuffer8BitAccess: VkBool32, uniformAndStorageBuffer8BitAccess: VkBool32, storagePushConstant8: VkBool32): VkPhysicalDevice8BitStorageFeatures = result = VkPhysicalDevice8BitStorageFeatures( sType: sType, pNext: pNext, @@ -15884,7 +16209,7 @@ proc newVkPhysicalDeviceConditionalRenderingFeaturesEXT*(sType: VkStructureType inheritedConditionalRendering: inheritedConditionalRendering, ) -proc newVkPhysicalDeviceVulkanMemoryModelFeatures*(sType: VkStructureType, pNext: pointer = nil, vulkanMemoryModel: VkBool32, vulkanMemoryModelDeviceScope: VkBool32, vulkanMemoryModelAvailabilityVisibilityChains: VkBool32): VkPhysicalDeviceVulkanMemoryModelFeatures = +proc newVkPhysicalDeviceVulkanMemoryModelFeatures*(sType: VkStructureType = VkStructureType.PhysicalDeviceVulkanMemoryModelFeatures, pNext: pointer = nil, vulkanMemoryModel: VkBool32, vulkanMemoryModelDeviceScope: VkBool32, vulkanMemoryModelAvailabilityVisibilityChains: VkBool32): VkPhysicalDeviceVulkanMemoryModelFeatures = result = VkPhysicalDeviceVulkanMemoryModelFeatures( sType: sType, pNext: pNext, @@ -15893,7 +16218,7 @@ proc newVkPhysicalDeviceVulkanMemoryModelFeatures*(sType: VkStructureType, pNext vulkanMemoryModelAvailabilityVisibilityChains: vulkanMemoryModelAvailabilityVisibilityChains, ) -proc newVkPhysicalDeviceShaderAtomicInt64Features*(sType: VkStructureType, pNext: pointer = nil, shaderBufferInt64Atomics: VkBool32, shaderSharedInt64Atomics: VkBool32): VkPhysicalDeviceShaderAtomicInt64Features = +proc newVkPhysicalDeviceShaderAtomicInt64Features*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderAtomicInt64Features, pNext: pointer = nil, shaderBufferInt64Atomics: VkBool32, shaderSharedInt64Atomics: VkBool32): VkPhysicalDeviceShaderAtomicInt64Features = result = VkPhysicalDeviceShaderAtomicInt64Features( sType: sType, pNext: pNext, @@ -15960,7 +16285,7 @@ proc newVkCheckpointDataNV*(sType: VkStructureType = VkStructureType.CheckpointD pCheckpointMarker: pCheckpointMarker, ) -proc newVkPhysicalDeviceDepthStencilResolveProperties*(sType: VkStructureType, pNext: pointer = nil, supportedDepthResolveModes: VkResolveModeFlags, supportedStencilResolveModes: VkResolveModeFlags, independentResolveNone: VkBool32, independentResolve: VkBool32): VkPhysicalDeviceDepthStencilResolveProperties = +proc newVkPhysicalDeviceDepthStencilResolveProperties*(sType: VkStructureType = VkStructureType.PhysicalDeviceDepthStencilResolveProperties, pNext: pointer = nil, supportedDepthResolveModes: VkResolveModeFlags, supportedStencilResolveModes: VkResolveModeFlags, independentResolveNone: VkBool32, independentResolve: VkBool32): VkPhysicalDeviceDepthStencilResolveProperties = result = VkPhysicalDeviceDepthStencilResolveProperties( sType: sType, pNext: pNext, @@ -15970,7 +16295,7 @@ proc newVkPhysicalDeviceDepthStencilResolveProperties*(sType: VkStructureType, p independentResolve: independentResolve, ) -proc newVkSubpassDescriptionDepthStencilResolve*(sType: VkStructureType, pNext: pointer = nil, depthResolveMode: VkResolveModeFlagBits, stencilResolveMode: VkResolveModeFlagBits, pDepthStencilResolveAttachment: ptr VkAttachmentReference2): VkSubpassDescriptionDepthStencilResolve = +proc newVkSubpassDescriptionDepthStencilResolve*(sType: VkStructureType = VkStructureType.SubpassDescriptionDepthStencilResolve, pNext: pointer = nil, depthResolveMode: VkResolveModeFlagBits, stencilResolveMode: VkResolveModeFlagBits, pDepthStencilResolveAttachment: ptr VkAttachmentReference2): VkSubpassDescriptionDepthStencilResolve = result = VkSubpassDescriptionDepthStencilResolve( sType: sType, pNext: pNext, @@ -16572,7 +16897,7 @@ proc newVkImageDrmFormatModifierPropertiesEXT*(sType: VkStructureType = VkStruct drmFormatModifier: drmFormatModifier, ) -proc newVkImageStencilUsageCreateInfo*(sType: VkStructureType, pNext: pointer = nil, stencilUsage: VkImageUsageFlags): VkImageStencilUsageCreateInfo = +proc newVkImageStencilUsageCreateInfo*(sType: VkStructureType = VkStructureType.ImageStencilUsageCreateInfo, pNext: pointer = nil, stencilUsage: VkImageUsageFlags): VkImageStencilUsageCreateInfo = result = VkImageStencilUsageCreateInfo( sType: sType, pNext: pNext, @@ -16650,7 +16975,7 @@ proc newVkSubpassFragmentDensityMapOffsetEndInfoQCOM*(sType: VkStructureType = V pFragmentDensityOffsets: pFragmentDensityOffsets, ) -proc newVkPhysicalDeviceScalarBlockLayoutFeatures*(sType: VkStructureType, pNext: pointer = nil, scalarBlockLayout: VkBool32): VkPhysicalDeviceScalarBlockLayoutFeatures = +proc newVkPhysicalDeviceScalarBlockLayoutFeatures*(sType: VkStructureType = VkStructureType.PhysicalDeviceScalarBlockLayoutFeatures, pNext: pointer = nil, scalarBlockLayout: VkBool32): VkPhysicalDeviceScalarBlockLayoutFeatures = result = VkPhysicalDeviceScalarBlockLayoutFeatures( sType: sType, pNext: pNext, @@ -16664,7 +16989,7 @@ proc newVkSurfaceProtectedCapabilitiesKHR*(sType: VkStructureType = VkStructureT supportsProtected: supportsProtected, ) -proc newVkPhysicalDeviceUniformBufferStandardLayoutFeatures*(sType: VkStructureType, pNext: pointer = nil, uniformBufferStandardLayout: VkBool32): VkPhysicalDeviceUniformBufferStandardLayoutFeatures = +proc newVkPhysicalDeviceUniformBufferStandardLayoutFeatures*(sType: VkStructureType = VkStructureType.PhysicalDeviceUniformBufferStandardLayoutFeatures, pNext: pointer = nil, uniformBufferStandardLayout: VkBool32): VkPhysicalDeviceUniformBufferStandardLayoutFeatures = result = VkPhysicalDeviceUniformBufferStandardLayoutFeatures( sType: sType, pNext: pNext, @@ -16715,7 +17040,7 @@ proc newVkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT*(sType: VkStructure pageableDeviceLocalMemory: pageableDeviceLocalMemory, ) -proc newVkPhysicalDeviceBufferDeviceAddressFeatures*(sType: VkStructureType, pNext: pointer = nil, bufferDeviceAddress: VkBool32, bufferDeviceAddressCaptureReplay: VkBool32, bufferDeviceAddressMultiDevice: VkBool32): VkPhysicalDeviceBufferDeviceAddressFeatures = +proc newVkPhysicalDeviceBufferDeviceAddressFeatures*(sType: VkStructureType = VkStructureType.PhysicalDeviceBufferDeviceAddressFeatures, pNext: pointer = nil, bufferDeviceAddress: VkBool32, bufferDeviceAddressCaptureReplay: VkBool32, bufferDeviceAddressMultiDevice: VkBool32): VkPhysicalDeviceBufferDeviceAddressFeatures = result = VkPhysicalDeviceBufferDeviceAddressFeatures( sType: sType, pNext: pNext, @@ -16733,14 +17058,14 @@ proc newVkPhysicalDeviceBufferDeviceAddressFeaturesEXT*(sType: VkStructureType = bufferDeviceAddressMultiDevice: bufferDeviceAddressMultiDevice, ) -proc newVkBufferDeviceAddressInfo*(sType: VkStructureType, pNext: pointer = nil, buffer: VkBuffer): VkBufferDeviceAddressInfo = +proc newVkBufferDeviceAddressInfo*(sType: VkStructureType = VkStructureType.BufferDeviceAddressInfo, pNext: pointer = nil, buffer: VkBuffer): VkBufferDeviceAddressInfo = result = VkBufferDeviceAddressInfo( sType: sType, pNext: pNext, buffer: buffer, ) -proc newVkBufferOpaqueCaptureAddressCreateInfo*(sType: VkStructureType, pNext: pointer = nil, opaqueCaptureAddress: uint64): VkBufferOpaqueCaptureAddressCreateInfo = +proc newVkBufferOpaqueCaptureAddressCreateInfo*(sType: VkStructureType = VkStructureType.BufferOpaqueCaptureAddressCreateInfo, pNext: pointer = nil, opaqueCaptureAddress: uint64): VkBufferOpaqueCaptureAddressCreateInfo = result = VkBufferOpaqueCaptureAddressCreateInfo( sType: sType, pNext: pNext, @@ -16769,14 +17094,14 @@ proc newVkFilterCubicImageViewImageFormatPropertiesEXT*(sType: VkStructureType = filterCubicMinmax: filterCubicMinmax, ) -proc newVkPhysicalDeviceImagelessFramebufferFeatures*(sType: VkStructureType, pNext: pointer = nil, imagelessFramebuffer: VkBool32): VkPhysicalDeviceImagelessFramebufferFeatures = +proc newVkPhysicalDeviceImagelessFramebufferFeatures*(sType: VkStructureType = VkStructureType.PhysicalDeviceImagelessFramebufferFeatures, pNext: pointer = nil, imagelessFramebuffer: VkBool32): VkPhysicalDeviceImagelessFramebufferFeatures = result = VkPhysicalDeviceImagelessFramebufferFeatures( sType: sType, pNext: pNext, imagelessFramebuffer: imagelessFramebuffer, ) -proc newVkFramebufferAttachmentsCreateInfo*(sType: VkStructureType, pNext: pointer = nil, attachmentImageInfoCount: uint32, pAttachmentImageInfos: ptr VkFramebufferAttachmentImageInfo): VkFramebufferAttachmentsCreateInfo = +proc newVkFramebufferAttachmentsCreateInfo*(sType: VkStructureType = VkStructureType.FramebufferAttachmentsCreateInfo, pNext: pointer = nil, attachmentImageInfoCount: uint32, pAttachmentImageInfos: ptr VkFramebufferAttachmentImageInfo): VkFramebufferAttachmentsCreateInfo = result = VkFramebufferAttachmentsCreateInfo( sType: sType, pNext: pNext, @@ -16784,7 +17109,7 @@ proc newVkFramebufferAttachmentsCreateInfo*(sType: VkStructureType, pNext: point pAttachmentImageInfos: pAttachmentImageInfos, ) -proc newVkFramebufferAttachmentImageInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkImageCreateFlags = 0.VkImageCreateFlags, usage: VkImageUsageFlags, width: uint32, height: uint32, layerCount: uint32, viewFormatCount: uint32, pViewFormats: ptr VkFormat): VkFramebufferAttachmentImageInfo = +proc newVkFramebufferAttachmentImageInfo*(sType: VkStructureType = VkStructureType.FramebufferAttachmentImageInfo, pNext: pointer = nil, flags: VkImageCreateFlags = 0.VkImageCreateFlags, usage: VkImageUsageFlags, width: uint32, height: uint32, layerCount: uint32, viewFormatCount: uint32, pViewFormats: ptr VkFormat): VkFramebufferAttachmentImageInfo = result = VkFramebufferAttachmentImageInfo( sType: sType, pNext: pNext, @@ -16797,7 +17122,7 @@ proc newVkFramebufferAttachmentImageInfo*(sType: VkStructureType, pNext: pointer pViewFormats: pViewFormats, ) -proc newVkRenderPassAttachmentBeginInfo*(sType: VkStructureType, pNext: pointer = nil, attachmentCount: uint32, pAttachments: ptr VkImageView): VkRenderPassAttachmentBeginInfo = +proc newVkRenderPassAttachmentBeginInfo*(sType: VkStructureType = VkStructureType.RenderPassAttachmentBeginInfo, pNext: pointer = nil, attachmentCount: uint32, pAttachments: ptr VkImageView): VkRenderPassAttachmentBeginInfo = result = VkRenderPassAttachmentBeginInfo( sType: sType, pNext: pNext, @@ -16805,7 +17130,7 @@ proc newVkRenderPassAttachmentBeginInfo*(sType: VkStructureType, pNext: pointer pAttachments: pAttachments, ) -proc newVkPhysicalDeviceTextureCompressionASTCHDRFeatures*(sType: VkStructureType, pNext: pointer = nil, textureCompressionASTC_HDR: VkBool32): VkPhysicalDeviceTextureCompressionASTCHDRFeatures = +proc newVkPhysicalDeviceTextureCompressionASTCHDRFeatures*(sType: VkStructureType = VkStructureType.PhysicalDeviceTextureCompressionASTCHDRFeatures, pNext: pointer = nil, textureCompressionASTC_HDR: VkBool32): VkPhysicalDeviceTextureCompressionASTCHDRFeatures = result = VkPhysicalDeviceTextureCompressionASTCHDRFeatures( sType: sType, pNext: pNext, @@ -16878,7 +17203,7 @@ proc newVkPipelineCreationFeedback*(flags: VkPipelineCreationFeedbackFlags = 0.V duration: duration, ) -proc newVkPipelineCreationFeedbackCreateInfo*(sType: VkStructureType, pNext: pointer = nil, pPipelineCreationFeedback: ptr VkPipelineCreationFeedback, pipelineStageCreationFeedbackCount: uint32, pPipelineStageCreationFeedbacks: ptr ptr VkPipelineCreationFeedback): VkPipelineCreationFeedbackCreateInfo = +proc newVkPipelineCreationFeedbackCreateInfo*(sType: VkStructureType = VkStructureType.PipelineCreationFeedbackCreateInfo, pNext: pointer = nil, pPipelineCreationFeedback: ptr VkPipelineCreationFeedback, pipelineStageCreationFeedbackCount: uint32, pPipelineStageCreationFeedbacks: ptr ptr VkPipelineCreationFeedback): VkPipelineCreationFeedbackCreateInfo = result = VkPipelineCreationFeedbackCreateInfo( sType: sType, pNext: pNext, @@ -17123,14 +17448,14 @@ proc newVkPhysicalDeviceFragmentShaderInterlockFeaturesEXT*(sType: VkStructureTy fragmentShaderShadingRateInterlock: fragmentShaderShadingRateInterlock, ) -proc newVkPhysicalDeviceSeparateDepthStencilLayoutsFeatures*(sType: VkStructureType, pNext: pointer = nil, separateDepthStencilLayouts: VkBool32): VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures = +proc newVkPhysicalDeviceSeparateDepthStencilLayoutsFeatures*(sType: VkStructureType = VkStructureType.PhysicalDeviceSeparateDepthStencilLayoutsFeatures, pNext: pointer = nil, separateDepthStencilLayouts: VkBool32): VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures = result = VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures( sType: sType, pNext: pNext, separateDepthStencilLayouts: separateDepthStencilLayouts, ) -proc newVkAttachmentReferenceStencilLayout*(sType: VkStructureType, pNext: pointer = nil, stencilLayout: VkImageLayout): VkAttachmentReferenceStencilLayout = +proc newVkAttachmentReferenceStencilLayout*(sType: VkStructureType = VkStructureType.AttachmentReferenceStencilLayout, pNext: pointer = nil, stencilLayout: VkImageLayout): VkAttachmentReferenceStencilLayout = result = VkAttachmentReferenceStencilLayout( sType: sType, pNext: pNext, @@ -17145,7 +17470,7 @@ proc newVkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT*(sType: VkStruct primitiveTopologyPatchListRestart: primitiveTopologyPatchListRestart, ) -proc newVkAttachmentDescriptionStencilLayout*(sType: VkStructureType, pNext: pointer = nil, stencilInitialLayout: VkImageLayout, stencilFinalLayout: VkImageLayout): VkAttachmentDescriptionStencilLayout = +proc newVkAttachmentDescriptionStencilLayout*(sType: VkStructureType = VkStructureType.AttachmentDescriptionStencilLayout, pNext: pointer = nil, stencilInitialLayout: VkImageLayout, stencilFinalLayout: VkImageLayout): VkAttachmentDescriptionStencilLayout = result = VkAttachmentDescriptionStencilLayout( sType: sType, pNext: pNext, @@ -17206,7 +17531,7 @@ proc newVkPipelineExecutableInternalRepresentationKHR*(sType: VkStructureType = pData: pData, ) -proc newVkPhysicalDeviceShaderDemoteToHelperInvocationFeatures*(sType: VkStructureType, pNext: pointer = nil, shaderDemoteToHelperInvocation: VkBool32): VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures = +proc newVkPhysicalDeviceShaderDemoteToHelperInvocationFeatures*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderDemoteToHelperInvocationFeatures, pNext: pointer = nil, shaderDemoteToHelperInvocation: VkBool32): VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures = result = VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures( sType: sType, pNext: pNext, @@ -17220,7 +17545,7 @@ proc newVkPhysicalDeviceTexelBufferAlignmentFeaturesEXT*(sType: VkStructureType texelBufferAlignment: texelBufferAlignment, ) -proc newVkPhysicalDeviceTexelBufferAlignmentProperties*(sType: VkStructureType, pNext: pointer = nil, storageTexelBufferOffsetAlignmentBytes: VkDeviceSize, storageTexelBufferOffsetSingleTexelAlignment: VkBool32, uniformTexelBufferOffsetAlignmentBytes: VkDeviceSize, uniformTexelBufferOffsetSingleTexelAlignment: VkBool32): VkPhysicalDeviceTexelBufferAlignmentProperties = +proc newVkPhysicalDeviceTexelBufferAlignmentProperties*(sType: VkStructureType = VkStructureType.PhysicalDeviceTexelBufferAlignmentProperties, pNext: pointer = nil, storageTexelBufferOffsetAlignmentBytes: VkDeviceSize, storageTexelBufferOffsetSingleTexelAlignment: VkBool32, uniformTexelBufferOffsetAlignmentBytes: VkDeviceSize, uniformTexelBufferOffsetSingleTexelAlignment: VkBool32): VkPhysicalDeviceTexelBufferAlignmentProperties = result = VkPhysicalDeviceTexelBufferAlignmentProperties( sType: sType, pNext: pNext, @@ -17230,7 +17555,7 @@ proc newVkPhysicalDeviceTexelBufferAlignmentProperties*(sType: VkStructureType, uniformTexelBufferOffsetSingleTexelAlignment: uniformTexelBufferOffsetSingleTexelAlignment, ) -proc newVkPhysicalDeviceSubgroupSizeControlFeatures*(sType: VkStructureType, pNext: pointer = nil, subgroupSizeControl: VkBool32, computeFullSubgroups: VkBool32): VkPhysicalDeviceSubgroupSizeControlFeatures = +proc newVkPhysicalDeviceSubgroupSizeControlFeatures*(sType: VkStructureType = VkStructureType.PhysicalDeviceSubgroupSizeControlFeatures, pNext: pointer = nil, subgroupSizeControl: VkBool32, computeFullSubgroups: VkBool32): VkPhysicalDeviceSubgroupSizeControlFeatures = result = VkPhysicalDeviceSubgroupSizeControlFeatures( sType: sType, pNext: pNext, @@ -17238,7 +17563,7 @@ proc newVkPhysicalDeviceSubgroupSizeControlFeatures*(sType: VkStructureType, pNe computeFullSubgroups: computeFullSubgroups, ) -proc newVkPhysicalDeviceSubgroupSizeControlProperties*(sType: VkStructureType, pNext: pointer = nil, minSubgroupSize: uint32, maxSubgroupSize: uint32, maxComputeWorkgroupSubgroups: uint32, requiredSubgroupSizeStages: VkShaderStageFlags): VkPhysicalDeviceSubgroupSizeControlProperties = +proc newVkPhysicalDeviceSubgroupSizeControlProperties*(sType: VkStructureType = VkStructureType.PhysicalDeviceSubgroupSizeControlProperties, pNext: pointer = nil, minSubgroupSize: uint32, maxSubgroupSize: uint32, maxComputeWorkgroupSubgroups: uint32, requiredSubgroupSizeStages: VkShaderStageFlags): VkPhysicalDeviceSubgroupSizeControlProperties = result = VkPhysicalDeviceSubgroupSizeControlProperties( sType: sType, pNext: pNext, @@ -17248,7 +17573,7 @@ proc newVkPhysicalDeviceSubgroupSizeControlProperties*(sType: VkStructureType, p requiredSubgroupSizeStages: requiredSubgroupSizeStages, ) -proc newVkPipelineShaderStageRequiredSubgroupSizeCreateInfo*(sType: VkStructureType, pNext: pointer = nil, requiredSubgroupSize: uint32): VkPipelineShaderStageRequiredSubgroupSizeCreateInfo = +proc newVkPipelineShaderStageRequiredSubgroupSizeCreateInfo*(sType: VkStructureType = VkStructureType.PipelineShaderStageRequiredSubgroupSizeCreateInfo, pNext: pointer = nil, requiredSubgroupSize: uint32): VkPipelineShaderStageRequiredSubgroupSizeCreateInfo = result = VkPipelineShaderStageRequiredSubgroupSizeCreateInfo( sType: sType, pNext: pNext, @@ -17280,14 +17605,14 @@ proc newVkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI*(sType: VkStructure indirectBufferOffsetAlignment: indirectBufferOffsetAlignment, ) -proc newVkMemoryOpaqueCaptureAddressAllocateInfo*(sType: VkStructureType, pNext: pointer = nil, opaqueCaptureAddress: uint64): VkMemoryOpaqueCaptureAddressAllocateInfo = +proc newVkMemoryOpaqueCaptureAddressAllocateInfo*(sType: VkStructureType = VkStructureType.MemoryOpaqueCaptureAddressAllocateInfo, pNext: pointer = nil, opaqueCaptureAddress: uint64): VkMemoryOpaqueCaptureAddressAllocateInfo = result = VkMemoryOpaqueCaptureAddressAllocateInfo( sType: sType, pNext: pNext, opaqueCaptureAddress: opaqueCaptureAddress, ) -proc newVkDeviceMemoryOpaqueCaptureAddressInfo*(sType: VkStructureType, pNext: pointer = nil, memory: VkDeviceMemory): VkDeviceMemoryOpaqueCaptureAddressInfo = +proc newVkDeviceMemoryOpaqueCaptureAddressInfo*(sType: VkStructureType = VkStructureType.DeviceMemoryOpaqueCaptureAddressInfo, pNext: pointer = nil, memory: VkDeviceMemory): VkDeviceMemoryOpaqueCaptureAddressInfo = result = VkDeviceMemoryOpaqueCaptureAddressInfo( sType: sType, pNext: pNext, @@ -17323,14 +17648,14 @@ proc newVkPipelineRasterizationLineStateCreateInfoKHR*(sType: VkStructureType = lineStipplePattern: lineStipplePattern, ) -proc newVkPhysicalDevicePipelineCreationCacheControlFeatures*(sType: VkStructureType, pNext: pointer = nil, pipelineCreationCacheControl: VkBool32): VkPhysicalDevicePipelineCreationCacheControlFeatures = +proc newVkPhysicalDevicePipelineCreationCacheControlFeatures*(sType: VkStructureType = VkStructureType.PhysicalDevicePipelineCreationCacheControlFeatures, pNext: pointer = nil, pipelineCreationCacheControl: VkBool32): VkPhysicalDevicePipelineCreationCacheControlFeatures = result = VkPhysicalDevicePipelineCreationCacheControlFeatures( sType: sType, pNext: pNext, pipelineCreationCacheControl: pipelineCreationCacheControl, ) -proc newVkPhysicalDeviceVulkan11Features*(sType: VkStructureType, pNext: pointer = nil, storageBuffer16BitAccess: VkBool32, uniformAndStorageBuffer16BitAccess: VkBool32, storagePushConstant16: VkBool32, storageInputOutput16: VkBool32, multiview: VkBool32, multiviewGeometryShader: VkBool32, multiviewTessellationShader: VkBool32, variablePointersStorageBuffer: VkBool32, variablePointers: VkBool32, protectedMemory: VkBool32, samplerYcbcrConversion: VkBool32, shaderDrawParameters: VkBool32): VkPhysicalDeviceVulkan11Features = +proc newVkPhysicalDeviceVulkan11Features*(sType: VkStructureType = VkStructureType.PhysicalDeviceVulkan11Features, pNext: pointer = nil, storageBuffer16BitAccess: VkBool32, uniformAndStorageBuffer16BitAccess: VkBool32, storagePushConstant16: VkBool32, storageInputOutput16: VkBool32, multiview: VkBool32, multiviewGeometryShader: VkBool32, multiviewTessellationShader: VkBool32, variablePointersStorageBuffer: VkBool32, variablePointers: VkBool32, protectedMemory: VkBool32, samplerYcbcrConversion: VkBool32, shaderDrawParameters: VkBool32): VkPhysicalDeviceVulkan11Features = result = VkPhysicalDeviceVulkan11Features( sType: sType, pNext: pNext, @@ -17348,7 +17673,7 @@ proc newVkPhysicalDeviceVulkan11Features*(sType: VkStructureType, pNext: pointer shaderDrawParameters: shaderDrawParameters, ) -proc newVkPhysicalDeviceVulkan11Properties*(sType: VkStructureType, pNext: pointer = nil, deviceUUID: array[VK_UUID_SIZE, uint8], driverUUID: array[VK_UUID_SIZE, uint8], deviceLUID: array[VK_LUID_SIZE, uint8], deviceNodeMask: uint32, deviceLUIDValid: VkBool32, subgroupSize: uint32, subgroupSupportedStages: VkShaderStageFlags, subgroupSupportedOperations: VkSubgroupFeatureFlags, subgroupQuadOperationsInAllStages: VkBool32, pointClippingBehavior: VkPointClippingBehavior, maxMultiviewViewCount: uint32, maxMultiviewInstanceIndex: uint32, protectedNoFault: VkBool32, maxPerSetDescriptors: uint32, maxMemoryAllocationSize: VkDeviceSize): VkPhysicalDeviceVulkan11Properties = +proc newVkPhysicalDeviceVulkan11Properties*(sType: VkStructureType = VkStructureType.PhysicalDeviceVulkan11Properties, pNext: pointer = nil, deviceUUID: array[VK_UUID_SIZE, uint8], driverUUID: array[VK_UUID_SIZE, uint8], deviceLUID: array[VK_LUID_SIZE, uint8], deviceNodeMask: uint32, deviceLUIDValid: VkBool32, subgroupSize: uint32, subgroupSupportedStages: VkShaderStageFlags, subgroupSupportedOperations: VkSubgroupFeatureFlags, subgroupQuadOperationsInAllStages: VkBool32, pointClippingBehavior: VkPointClippingBehavior, maxMultiviewViewCount: uint32, maxMultiviewInstanceIndex: uint32, protectedNoFault: VkBool32, maxPerSetDescriptors: uint32, maxMemoryAllocationSize: VkDeviceSize): VkPhysicalDeviceVulkan11Properties = result = VkPhysicalDeviceVulkan11Properties( sType: sType, pNext: pNext, @@ -17369,7 +17694,7 @@ proc newVkPhysicalDeviceVulkan11Properties*(sType: VkStructureType, pNext: point maxMemoryAllocationSize: maxMemoryAllocationSize, ) -proc newVkPhysicalDeviceVulkan12Features*(sType: VkStructureType, pNext: pointer = nil, samplerMirrorClampToEdge: VkBool32, drawIndirectCount: VkBool32, storageBuffer8BitAccess: VkBool32, uniformAndStorageBuffer8BitAccess: VkBool32, storagePushConstant8: VkBool32, shaderBufferInt64Atomics: VkBool32, shaderSharedInt64Atomics: VkBool32, shaderFloat16: VkBool32, shaderInt8: VkBool32, descriptorIndexing: VkBool32, shaderInputAttachmentArrayDynamicIndexing: VkBool32, shaderUniformTexelBufferArrayDynamicIndexing: VkBool32, shaderStorageTexelBufferArrayDynamicIndexing: VkBool32, shaderUniformBufferArrayNonUniformIndexing: VkBool32, shaderSampledImageArrayNonUniformIndexing: VkBool32, shaderStorageBufferArrayNonUniformIndexing: VkBool32, shaderStorageImageArrayNonUniformIndexing: VkBool32, shaderInputAttachmentArrayNonUniformIndexing: VkBool32, shaderUniformTexelBufferArrayNonUniformIndexing: VkBool32, shaderStorageTexelBufferArrayNonUniformIndexing: VkBool32, descriptorBindingUniformBufferUpdateAfterBind: VkBool32, descriptorBindingSampledImageUpdateAfterBind: VkBool32, descriptorBindingStorageImageUpdateAfterBind: VkBool32, descriptorBindingStorageBufferUpdateAfterBind: VkBool32, descriptorBindingUniformTexelBufferUpdateAfterBind: VkBool32, descriptorBindingStorageTexelBufferUpdateAfterBind: VkBool32, descriptorBindingUpdateUnusedWhilePending: VkBool32, descriptorBindingPartiallyBound: VkBool32, descriptorBindingVariableDescriptorCount: VkBool32, runtimeDescriptorArray: VkBool32, samplerFilterMinmax: VkBool32, scalarBlockLayout: VkBool32, imagelessFramebuffer: VkBool32, uniformBufferStandardLayout: VkBool32, shaderSubgroupExtendedTypes: VkBool32, separateDepthStencilLayouts: VkBool32, hostQueryReset: VkBool32, timelineSemaphore: VkBool32, bufferDeviceAddress: VkBool32, bufferDeviceAddressCaptureReplay: VkBool32, bufferDeviceAddressMultiDevice: VkBool32, vulkanMemoryModel: VkBool32, vulkanMemoryModelDeviceScope: VkBool32, vulkanMemoryModelAvailabilityVisibilityChains: VkBool32, shaderOutputViewportIndex: VkBool32, shaderOutputLayer: VkBool32, subgroupBroadcastDynamicId: VkBool32): VkPhysicalDeviceVulkan12Features = +proc newVkPhysicalDeviceVulkan12Features*(sType: VkStructureType = VkStructureType.PhysicalDeviceVulkan12Features, pNext: pointer = nil, samplerMirrorClampToEdge: VkBool32, drawIndirectCount: VkBool32, storageBuffer8BitAccess: VkBool32, uniformAndStorageBuffer8BitAccess: VkBool32, storagePushConstant8: VkBool32, shaderBufferInt64Atomics: VkBool32, shaderSharedInt64Atomics: VkBool32, shaderFloat16: VkBool32, shaderInt8: VkBool32, descriptorIndexing: VkBool32, shaderInputAttachmentArrayDynamicIndexing: VkBool32, shaderUniformTexelBufferArrayDynamicIndexing: VkBool32, shaderStorageTexelBufferArrayDynamicIndexing: VkBool32, shaderUniformBufferArrayNonUniformIndexing: VkBool32, shaderSampledImageArrayNonUniformIndexing: VkBool32, shaderStorageBufferArrayNonUniformIndexing: VkBool32, shaderStorageImageArrayNonUniformIndexing: VkBool32, shaderInputAttachmentArrayNonUniformIndexing: VkBool32, shaderUniformTexelBufferArrayNonUniformIndexing: VkBool32, shaderStorageTexelBufferArrayNonUniformIndexing: VkBool32, descriptorBindingUniformBufferUpdateAfterBind: VkBool32, descriptorBindingSampledImageUpdateAfterBind: VkBool32, descriptorBindingStorageImageUpdateAfterBind: VkBool32, descriptorBindingStorageBufferUpdateAfterBind: VkBool32, descriptorBindingUniformTexelBufferUpdateAfterBind: VkBool32, descriptorBindingStorageTexelBufferUpdateAfterBind: VkBool32, descriptorBindingUpdateUnusedWhilePending: VkBool32, descriptorBindingPartiallyBound: VkBool32, descriptorBindingVariableDescriptorCount: VkBool32, runtimeDescriptorArray: VkBool32, samplerFilterMinmax: VkBool32, scalarBlockLayout: VkBool32, imagelessFramebuffer: VkBool32, uniformBufferStandardLayout: VkBool32, shaderSubgroupExtendedTypes: VkBool32, separateDepthStencilLayouts: VkBool32, hostQueryReset: VkBool32, timelineSemaphore: VkBool32, bufferDeviceAddress: VkBool32, bufferDeviceAddressCaptureReplay: VkBool32, bufferDeviceAddressMultiDevice: VkBool32, vulkanMemoryModel: VkBool32, vulkanMemoryModelDeviceScope: VkBool32, vulkanMemoryModelAvailabilityVisibilityChains: VkBool32, shaderOutputViewportIndex: VkBool32, shaderOutputLayer: VkBool32, subgroupBroadcastDynamicId: VkBool32): VkPhysicalDeviceVulkan12Features = result = VkPhysicalDeviceVulkan12Features( sType: sType, pNext: pNext, @@ -17422,7 +17747,7 @@ proc newVkPhysicalDeviceVulkan12Features*(sType: VkStructureType, pNext: pointer subgroupBroadcastDynamicId: subgroupBroadcastDynamicId, ) -proc newVkPhysicalDeviceVulkan12Properties*(sType: VkStructureType, pNext: pointer = nil, driverID: VkDriverId, driverName: array[VK_MAX_DRIVER_NAME_SIZE, char], driverInfo: array[VK_MAX_DRIVER_INFO_SIZE, char], conformanceVersion: VkConformanceVersion, denormBehaviorIndependence: VkShaderFloatControlsIndependence, roundingModeIndependence: VkShaderFloatControlsIndependence, shaderSignedZeroInfNanPreserveFloat16: VkBool32, shaderSignedZeroInfNanPreserveFloat32: VkBool32, shaderSignedZeroInfNanPreserveFloat64: VkBool32, shaderDenormPreserveFloat16: VkBool32, shaderDenormPreserveFloat32: VkBool32, shaderDenormPreserveFloat64: VkBool32, shaderDenormFlushToZeroFloat16: VkBool32, shaderDenormFlushToZeroFloat32: VkBool32, shaderDenormFlushToZeroFloat64: VkBool32, shaderRoundingModeRTEFloat16: VkBool32, shaderRoundingModeRTEFloat32: VkBool32, shaderRoundingModeRTEFloat64: VkBool32, shaderRoundingModeRTZFloat16: VkBool32, shaderRoundingModeRTZFloat32: VkBool32, shaderRoundingModeRTZFloat64: VkBool32, maxUpdateAfterBindDescriptorsInAllPools: uint32, shaderUniformBufferArrayNonUniformIndexingNative: VkBool32, shaderSampledImageArrayNonUniformIndexingNative: VkBool32, shaderStorageBufferArrayNonUniformIndexingNative: VkBool32, shaderStorageImageArrayNonUniformIndexingNative: VkBool32, shaderInputAttachmentArrayNonUniformIndexingNative: VkBool32, robustBufferAccessUpdateAfterBind: VkBool32, quadDivergentImplicitLod: VkBool32, maxPerStageDescriptorUpdateAfterBindSamplers: uint32, maxPerStageDescriptorUpdateAfterBindUniformBuffers: uint32, maxPerStageDescriptorUpdateAfterBindStorageBuffers: uint32, maxPerStageDescriptorUpdateAfterBindSampledImages: uint32, maxPerStageDescriptorUpdateAfterBindStorageImages: uint32, maxPerStageDescriptorUpdateAfterBindInputAttachments: uint32, maxPerStageUpdateAfterBindResources: uint32, maxDescriptorSetUpdateAfterBindSamplers: uint32, maxDescriptorSetUpdateAfterBindUniformBuffers: uint32, maxDescriptorSetUpdateAfterBindUniformBuffersDynamic: uint32, maxDescriptorSetUpdateAfterBindStorageBuffers: uint32, maxDescriptorSetUpdateAfterBindStorageBuffersDynamic: uint32, maxDescriptorSetUpdateAfterBindSampledImages: uint32, maxDescriptorSetUpdateAfterBindStorageImages: uint32, maxDescriptorSetUpdateAfterBindInputAttachments: uint32, supportedDepthResolveModes: VkResolveModeFlags, supportedStencilResolveModes: VkResolveModeFlags, independentResolveNone: VkBool32, independentResolve: VkBool32, filterMinmaxSingleComponentFormats: VkBool32, filterMinmaxImageComponentMapping: VkBool32, maxTimelineSemaphoreValueDifference: uint64, framebufferIntegerColorSampleCounts: VkSampleCountFlags): VkPhysicalDeviceVulkan12Properties = +proc newVkPhysicalDeviceVulkan12Properties*(sType: VkStructureType = VkStructureType.PhysicalDeviceVulkan12Properties, pNext: pointer = nil, driverID: VkDriverId, driverName: array[VK_MAX_DRIVER_NAME_SIZE, char], driverInfo: array[VK_MAX_DRIVER_INFO_SIZE, char], conformanceVersion: VkConformanceVersion, denormBehaviorIndependence: VkShaderFloatControlsIndependence, roundingModeIndependence: VkShaderFloatControlsIndependence, shaderSignedZeroInfNanPreserveFloat16: VkBool32, shaderSignedZeroInfNanPreserveFloat32: VkBool32, shaderSignedZeroInfNanPreserveFloat64: VkBool32, shaderDenormPreserveFloat16: VkBool32, shaderDenormPreserveFloat32: VkBool32, shaderDenormPreserveFloat64: VkBool32, shaderDenormFlushToZeroFloat16: VkBool32, shaderDenormFlushToZeroFloat32: VkBool32, shaderDenormFlushToZeroFloat64: VkBool32, shaderRoundingModeRTEFloat16: VkBool32, shaderRoundingModeRTEFloat32: VkBool32, shaderRoundingModeRTEFloat64: VkBool32, shaderRoundingModeRTZFloat16: VkBool32, shaderRoundingModeRTZFloat32: VkBool32, shaderRoundingModeRTZFloat64: VkBool32, maxUpdateAfterBindDescriptorsInAllPools: uint32, shaderUniformBufferArrayNonUniformIndexingNative: VkBool32, shaderSampledImageArrayNonUniformIndexingNative: VkBool32, shaderStorageBufferArrayNonUniformIndexingNative: VkBool32, shaderStorageImageArrayNonUniformIndexingNative: VkBool32, shaderInputAttachmentArrayNonUniformIndexingNative: VkBool32, robustBufferAccessUpdateAfterBind: VkBool32, quadDivergentImplicitLod: VkBool32, maxPerStageDescriptorUpdateAfterBindSamplers: uint32, maxPerStageDescriptorUpdateAfterBindUniformBuffers: uint32, maxPerStageDescriptorUpdateAfterBindStorageBuffers: uint32, maxPerStageDescriptorUpdateAfterBindSampledImages: uint32, maxPerStageDescriptorUpdateAfterBindStorageImages: uint32, maxPerStageDescriptorUpdateAfterBindInputAttachments: uint32, maxPerStageUpdateAfterBindResources: uint32, maxDescriptorSetUpdateAfterBindSamplers: uint32, maxDescriptorSetUpdateAfterBindUniformBuffers: uint32, maxDescriptorSetUpdateAfterBindUniformBuffersDynamic: uint32, maxDescriptorSetUpdateAfterBindStorageBuffers: uint32, maxDescriptorSetUpdateAfterBindStorageBuffersDynamic: uint32, maxDescriptorSetUpdateAfterBindSampledImages: uint32, maxDescriptorSetUpdateAfterBindStorageImages: uint32, maxDescriptorSetUpdateAfterBindInputAttachments: uint32, supportedDepthResolveModes: VkResolveModeFlags, supportedStencilResolveModes: VkResolveModeFlags, independentResolveNone: VkBool32, independentResolve: VkBool32, filterMinmaxSingleComponentFormats: VkBool32, filterMinmaxImageComponentMapping: VkBool32, maxTimelineSemaphoreValueDifference: uint64, framebufferIntegerColorSampleCounts: VkSampleCountFlags): VkPhysicalDeviceVulkan12Properties = result = VkPhysicalDeviceVulkan12Properties( sType: sType, pNext: pNext, @@ -17480,7 +17805,7 @@ proc newVkPhysicalDeviceVulkan12Properties*(sType: VkStructureType, pNext: point framebufferIntegerColorSampleCounts: framebufferIntegerColorSampleCounts, ) -proc newVkPhysicalDeviceVulkan13Features*(sType: VkStructureType, pNext: pointer = nil, robustImageAccess: VkBool32, inlineUniformBlock: VkBool32, descriptorBindingInlineUniformBlockUpdateAfterBind: VkBool32, pipelineCreationCacheControl: VkBool32, privateData: VkBool32, shaderDemoteToHelperInvocation: VkBool32, shaderTerminateInvocation: VkBool32, subgroupSizeControl: VkBool32, computeFullSubgroups: VkBool32, synchronization2: VkBool32, textureCompressionASTC_HDR: VkBool32, shaderZeroInitializeWorkgroupMemory: VkBool32, dynamicRendering: VkBool32, shaderIntegerDotProduct: VkBool32, maintenance4: VkBool32): VkPhysicalDeviceVulkan13Features = +proc newVkPhysicalDeviceVulkan13Features*(sType: VkStructureType = VkStructureType.PhysicalDeviceVulkan13Features, pNext: pointer = nil, robustImageAccess: VkBool32, inlineUniformBlock: VkBool32, descriptorBindingInlineUniformBlockUpdateAfterBind: VkBool32, pipelineCreationCacheControl: VkBool32, privateData: VkBool32, shaderDemoteToHelperInvocation: VkBool32, shaderTerminateInvocation: VkBool32, subgroupSizeControl: VkBool32, computeFullSubgroups: VkBool32, synchronization2: VkBool32, textureCompressionASTC_HDR: VkBool32, shaderZeroInitializeWorkgroupMemory: VkBool32, dynamicRendering: VkBool32, shaderIntegerDotProduct: VkBool32, maintenance4: VkBool32): VkPhysicalDeviceVulkan13Features = result = VkPhysicalDeviceVulkan13Features( sType: sType, pNext: pNext, @@ -17501,7 +17826,7 @@ proc newVkPhysicalDeviceVulkan13Features*(sType: VkStructureType, pNext: pointer maintenance4: maintenance4, ) -proc newVkPhysicalDeviceVulkan13Properties*(sType: VkStructureType, pNext: pointer = nil, minSubgroupSize: uint32, maxSubgroupSize: uint32, maxComputeWorkgroupSubgroups: uint32, requiredSubgroupSizeStages: VkShaderStageFlags, maxInlineUniformBlockSize: uint32, maxPerStageDescriptorInlineUniformBlocks: uint32, maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks: uint32, maxDescriptorSetInlineUniformBlocks: uint32, maxDescriptorSetUpdateAfterBindInlineUniformBlocks: uint32, maxInlineUniformTotalSize: uint32, integerDotProduct8BitUnsignedAccelerated: VkBool32, integerDotProduct8BitSignedAccelerated: VkBool32, integerDotProduct8BitMixedSignednessAccelerated: VkBool32, integerDotProduct4x8BitPackedUnsignedAccelerated: VkBool32, integerDotProduct4x8BitPackedSignedAccelerated: VkBool32, integerDotProduct4x8BitPackedMixedSignednessAccelerated: VkBool32, integerDotProduct16BitUnsignedAccelerated: VkBool32, integerDotProduct16BitSignedAccelerated: VkBool32, integerDotProduct16BitMixedSignednessAccelerated: VkBool32, integerDotProduct32BitUnsignedAccelerated: VkBool32, integerDotProduct32BitSignedAccelerated: VkBool32, integerDotProduct32BitMixedSignednessAccelerated: VkBool32, integerDotProduct64BitUnsignedAccelerated: VkBool32, integerDotProduct64BitSignedAccelerated: VkBool32, integerDotProduct64BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating8BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating8BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating16BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating16BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating32BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating32BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating64BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating64BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated: VkBool32, storageTexelBufferOffsetAlignmentBytes: VkDeviceSize, storageTexelBufferOffsetSingleTexelAlignment: VkBool32, uniformTexelBufferOffsetAlignmentBytes: VkDeviceSize, uniformTexelBufferOffsetSingleTexelAlignment: VkBool32, maxBufferSize: VkDeviceSize): VkPhysicalDeviceVulkan13Properties = +proc newVkPhysicalDeviceVulkan13Properties*(sType: VkStructureType = VkStructureType.PhysicalDeviceVulkan13Properties, pNext: pointer = nil, minSubgroupSize: uint32, maxSubgroupSize: uint32, maxComputeWorkgroupSubgroups: uint32, requiredSubgroupSizeStages: VkShaderStageFlags, maxInlineUniformBlockSize: uint32, maxPerStageDescriptorInlineUniformBlocks: uint32, maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks: uint32, maxDescriptorSetInlineUniformBlocks: uint32, maxDescriptorSetUpdateAfterBindInlineUniformBlocks: uint32, maxInlineUniformTotalSize: uint32, integerDotProduct8BitUnsignedAccelerated: VkBool32, integerDotProduct8BitSignedAccelerated: VkBool32, integerDotProduct8BitMixedSignednessAccelerated: VkBool32, integerDotProduct4x8BitPackedUnsignedAccelerated: VkBool32, integerDotProduct4x8BitPackedSignedAccelerated: VkBool32, integerDotProduct4x8BitPackedMixedSignednessAccelerated: VkBool32, integerDotProduct16BitUnsignedAccelerated: VkBool32, integerDotProduct16BitSignedAccelerated: VkBool32, integerDotProduct16BitMixedSignednessAccelerated: VkBool32, integerDotProduct32BitUnsignedAccelerated: VkBool32, integerDotProduct32BitSignedAccelerated: VkBool32, integerDotProduct32BitMixedSignednessAccelerated: VkBool32, integerDotProduct64BitUnsignedAccelerated: VkBool32, integerDotProduct64BitSignedAccelerated: VkBool32, integerDotProduct64BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating8BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating8BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating16BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating16BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating32BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating32BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating64BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating64BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated: VkBool32, storageTexelBufferOffsetAlignmentBytes: VkDeviceSize, storageTexelBufferOffsetSingleTexelAlignment: VkBool32, uniformTexelBufferOffsetAlignmentBytes: VkDeviceSize, uniformTexelBufferOffsetSingleTexelAlignment: VkBool32, maxBufferSize: VkDeviceSize): VkPhysicalDeviceVulkan13Properties = result = VkPhysicalDeviceVulkan13Properties( sType: sType, pNext: pNext, @@ -17566,7 +17891,7 @@ proc newVkPhysicalDeviceCoherentMemoryFeaturesAMD*(sType: VkStructureType = VkSt deviceCoherentMemory: deviceCoherentMemory, ) -proc newVkFaultData*(sType: VkStructureType, pNext: pointer = nil, faultLevel: VkFaultLevel, faultType: VkFaultType): VkFaultData = +proc newVkFaultData*(sType: VkStructureType = VkStructureType.FaultData, pNext: pointer = nil, faultLevel: VkFaultLevel, faultType: VkFaultType): VkFaultData = result = VkFaultData( sType: sType, pNext: pNext, @@ -17574,7 +17899,7 @@ proc newVkFaultData*(sType: VkStructureType, pNext: pointer = nil, faultLevel: V faultType: faultType, ) -proc newVkFaultCallbackInfo*(sType: VkStructureType, pNext: pointer = nil, faultCount: uint32, pFaults: ptr VkFaultData, pfnFaultCallback: PFN_vkFaultCallbackFunction): VkFaultCallbackInfo = +proc newVkFaultCallbackInfo*(sType: VkStructureType = VkStructureType.FaultCallbackInfo, pNext: pointer = nil, faultCount: uint32, pFaults: ptr VkFaultData, pfnFaultCallback: PFN_vkFaultCallbackFunction): VkFaultCallbackInfo = result = VkFaultCallbackInfo( sType: sType, pNext: pNext, @@ -17583,7 +17908,7 @@ proc newVkFaultCallbackInfo*(sType: VkStructureType, pNext: pointer = nil, fault pfnFaultCallback: pfnFaultCallback, ) -proc newVkPhysicalDeviceToolProperties*(sType: VkStructureType, pNext: pointer = nil, name: array[VK_MAX_EXTENSION_NAME_SIZE, char], version: array[VK_MAX_EXTENSION_NAME_SIZE, char], purposes: VkToolPurposeFlags, description: array[VK_MAX_DESCRIPTION_SIZE, char], layer: array[VK_MAX_EXTENSION_NAME_SIZE, char]): VkPhysicalDeviceToolProperties = +proc newVkPhysicalDeviceToolProperties*(sType: VkStructureType = VkStructureType.PhysicalDeviceToolProperties, pNext: pointer = nil, name: array[VK_MAX_EXTENSION_NAME_SIZE, char], version: array[VK_MAX_EXTENSION_NAME_SIZE, char], purposes: VkToolPurposeFlags, description: array[VK_MAX_DESCRIPTION_SIZE, char], layer: array[VK_MAX_EXTENSION_NAME_SIZE, char]): VkPhysicalDeviceToolProperties = result = VkPhysicalDeviceToolProperties( sType: sType, pNext: pNext, @@ -17918,7 +18243,7 @@ proc newVkDeviceDiagnosticsConfigCreateInfoNV*(sType: VkStructureType = VkStruct flags: flags, ) -proc newVkPipelineOfflineCreateInfo*(sType: VkStructureType, pNext: pointer = nil, pipelineIdentifier: array[VK_UUID_SIZE, uint8], matchControl: VkPipelineMatchControl, poolEntrySize: VkDeviceSize): VkPipelineOfflineCreateInfo = +proc newVkPipelineOfflineCreateInfo*(sType: VkStructureType = VkStructureType.PipelineOfflineCreateInfo, pNext: pointer = nil, pipelineIdentifier: array[VK_UUID_SIZE, uint8], matchControl: VkPipelineMatchControl, poolEntrySize: VkDeviceSize): VkPipelineOfflineCreateInfo = result = VkPipelineOfflineCreateInfo( sType: sType, pNext: pNext, @@ -17927,7 +18252,7 @@ proc newVkPipelineOfflineCreateInfo*(sType: VkStructureType, pNext: pointer = ni poolEntrySize: poolEntrySize, ) -proc newVkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures*(sType: VkStructureType, pNext: pointer = nil, shaderZeroInitializeWorkgroupMemory: VkBool32): VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures = +proc newVkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures*(sType: VkStructureType = VkStructureType.PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures, pNext: pointer = nil, shaderZeroInitializeWorkgroupMemory: VkBool32): VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures = result = VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures( sType: sType, pNext: pNext, @@ -17958,7 +18283,7 @@ proc newVkPhysicalDeviceRobustness2PropertiesEXT*(sType: VkStructureType = VkStr robustUniformBufferAccessSizeAlignment: robustUniformBufferAccessSizeAlignment, ) -proc newVkPhysicalDeviceImageRobustnessFeatures*(sType: VkStructureType, pNext: pointer = nil, robustImageAccess: VkBool32): VkPhysicalDeviceImageRobustnessFeatures = +proc newVkPhysicalDeviceImageRobustnessFeatures*(sType: VkStructureType = VkStructureType.PhysicalDeviceImageRobustnessFeatures, pNext: pointer = nil, robustImageAccess: VkBool32): VkPhysicalDeviceImageRobustnessFeatures = result = VkPhysicalDeviceImageRobustnessFeatures( sType: sType, pNext: pNext, @@ -18033,7 +18358,7 @@ proc newVkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI*(sType: VkStructur clusterShadingRate: clusterShadingRate, ) -proc newVkBufferCopy2*(sType: VkStructureType, pNext: pointer = nil, srcOffset: VkDeviceSize, dstOffset: VkDeviceSize, size: VkDeviceSize): VkBufferCopy2 = +proc newVkBufferCopy2*(sType: VkStructureType = VkStructureType.BufferCopy2, pNext: pointer = nil, srcOffset: VkDeviceSize, dstOffset: VkDeviceSize, size: VkDeviceSize): VkBufferCopy2 = result = VkBufferCopy2( sType: sType, pNext: pNext, @@ -18042,7 +18367,7 @@ proc newVkBufferCopy2*(sType: VkStructureType, pNext: pointer = nil, srcOffset: size: size, ) -proc newVkImageCopy2*(sType: VkStructureType, pNext: pointer = nil, srcSubresource: VkImageSubresourceLayers, srcOffset: VkOffset3D, dstSubresource: VkImageSubresourceLayers, dstOffset: VkOffset3D, extent: VkExtent3D): VkImageCopy2 = +proc newVkImageCopy2*(sType: VkStructureType = VkStructureType.ImageCopy2, pNext: pointer = nil, srcSubresource: VkImageSubresourceLayers, srcOffset: VkOffset3D, dstSubresource: VkImageSubresourceLayers, dstOffset: VkOffset3D, extent: VkExtent3D): VkImageCopy2 = result = VkImageCopy2( sType: sType, pNext: pNext, @@ -18053,7 +18378,7 @@ proc newVkImageCopy2*(sType: VkStructureType, pNext: pointer = nil, srcSubresour extent: extent, ) -proc newVkImageBlit2*(sType: VkStructureType, pNext: pointer = nil, srcSubresource: VkImageSubresourceLayers, srcOffsets: array[2, VkOffset3D], dstSubresource: VkImageSubresourceLayers, dstOffsets: array[2, VkOffset3D]): VkImageBlit2 = +proc newVkImageBlit2*(sType: VkStructureType = VkStructureType.ImageBlit2, pNext: pointer = nil, srcSubresource: VkImageSubresourceLayers, srcOffsets: array[2, VkOffset3D], dstSubresource: VkImageSubresourceLayers, dstOffsets: array[2, VkOffset3D]): VkImageBlit2 = result = VkImageBlit2( sType: sType, pNext: pNext, @@ -18063,7 +18388,7 @@ proc newVkImageBlit2*(sType: VkStructureType, pNext: pointer = nil, srcSubresour dstOffsets: dstOffsets, ) -proc newVkBufferImageCopy2*(sType: VkStructureType, pNext: pointer = nil, bufferOffset: VkDeviceSize, bufferRowLength: uint32, bufferImageHeight: uint32, imageSubresource: VkImageSubresourceLayers, imageOffset: VkOffset3D, imageExtent: VkExtent3D): VkBufferImageCopy2 = +proc newVkBufferImageCopy2*(sType: VkStructureType = VkStructureType.BufferImageCopy2, pNext: pointer = nil, bufferOffset: VkDeviceSize, bufferRowLength: uint32, bufferImageHeight: uint32, imageSubresource: VkImageSubresourceLayers, imageOffset: VkOffset3D, imageExtent: VkExtent3D): VkBufferImageCopy2 = result = VkBufferImageCopy2( sType: sType, pNext: pNext, @@ -18075,7 +18400,7 @@ proc newVkBufferImageCopy2*(sType: VkStructureType, pNext: pointer = nil, buffer imageExtent: imageExtent, ) -proc newVkImageResolve2*(sType: VkStructureType, pNext: pointer = nil, srcSubresource: VkImageSubresourceLayers, srcOffset: VkOffset3D, dstSubresource: VkImageSubresourceLayers, dstOffset: VkOffset3D, extent: VkExtent3D): VkImageResolve2 = +proc newVkImageResolve2*(sType: VkStructureType = VkStructureType.ImageResolve2, pNext: pointer = nil, srcSubresource: VkImageSubresourceLayers, srcOffset: VkOffset3D, dstSubresource: VkImageSubresourceLayers, dstOffset: VkOffset3D, extent: VkExtent3D): VkImageResolve2 = result = VkImageResolve2( sType: sType, pNext: pNext, @@ -18086,7 +18411,7 @@ proc newVkImageResolve2*(sType: VkStructureType, pNext: pointer = nil, srcSubres extent: extent, ) -proc newVkCopyBufferInfo2*(sType: VkStructureType, pNext: pointer = nil, srcBuffer: VkBuffer, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferCopy2): VkCopyBufferInfo2 = +proc newVkCopyBufferInfo2*(sType: VkStructureType = VkStructureType.CopyBufferInfo2, pNext: pointer = nil, srcBuffer: VkBuffer, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferCopy2): VkCopyBufferInfo2 = result = VkCopyBufferInfo2( sType: sType, pNext: pNext, @@ -18096,7 +18421,7 @@ proc newVkCopyBufferInfo2*(sType: VkStructureType, pNext: pointer = nil, srcBuff pRegions: pRegions, ) -proc newVkCopyImageInfo2*(sType: VkStructureType, pNext: pointer = nil, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageCopy2): VkCopyImageInfo2 = +proc newVkCopyImageInfo2*(sType: VkStructureType = VkStructureType.CopyImageInfo2, pNext: pointer = nil, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageCopy2): VkCopyImageInfo2 = result = VkCopyImageInfo2( sType: sType, pNext: pNext, @@ -18108,7 +18433,7 @@ proc newVkCopyImageInfo2*(sType: VkStructureType, pNext: pointer = nil, srcImage pRegions: pRegions, ) -proc newVkBlitImageInfo2*(sType: VkStructureType, pNext: pointer = nil, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageBlit2, filter: VkFilter): VkBlitImageInfo2 = +proc newVkBlitImageInfo2*(sType: VkStructureType = VkStructureType.BlitImageInfo2, pNext: pointer = nil, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageBlit2, filter: VkFilter): VkBlitImageInfo2 = result = VkBlitImageInfo2( sType: sType, pNext: pNext, @@ -18121,7 +18446,7 @@ proc newVkBlitImageInfo2*(sType: VkStructureType, pNext: pointer = nil, srcImage filter: filter, ) -proc newVkCopyBufferToImageInfo2*(sType: VkStructureType, pNext: pointer = nil, srcBuffer: VkBuffer, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkBufferImageCopy2): VkCopyBufferToImageInfo2 = +proc newVkCopyBufferToImageInfo2*(sType: VkStructureType = VkStructureType.CopyBufferToImageInfo2, pNext: pointer = nil, srcBuffer: VkBuffer, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkBufferImageCopy2): VkCopyBufferToImageInfo2 = result = VkCopyBufferToImageInfo2( sType: sType, pNext: pNext, @@ -18132,7 +18457,7 @@ proc newVkCopyBufferToImageInfo2*(sType: VkStructureType, pNext: pointer = nil, pRegions: pRegions, ) -proc newVkCopyImageToBufferInfo2*(sType: VkStructureType, pNext: pointer = nil, srcImage: VkImage, srcImageLayout: VkImageLayout, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferImageCopy2): VkCopyImageToBufferInfo2 = +proc newVkCopyImageToBufferInfo2*(sType: VkStructureType = VkStructureType.CopyImageToBufferInfo2, pNext: pointer = nil, srcImage: VkImage, srcImageLayout: VkImageLayout, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferImageCopy2): VkCopyImageToBufferInfo2 = result = VkCopyImageToBufferInfo2( sType: sType, pNext: pNext, @@ -18143,7 +18468,7 @@ proc newVkCopyImageToBufferInfo2*(sType: VkStructureType, pNext: pointer = nil, pRegions: pRegions, ) -proc newVkResolveImageInfo2*(sType: VkStructureType, pNext: pointer = nil, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageResolve2): VkResolveImageInfo2 = +proc newVkResolveImageInfo2*(sType: VkStructureType = VkStructureType.ResolveImageInfo2, pNext: pointer = nil, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageResolve2): VkResolveImageInfo2 = result = VkResolveImageInfo2( sType: sType, pNext: pNext, @@ -18219,7 +18544,7 @@ proc newVkPhysicalDeviceFragmentShadingRateKHR*(sType: VkStructureType = VkStruc fragmentSize: fragmentSize, ) -proc newVkPhysicalDeviceShaderTerminateInvocationFeatures*(sType: VkStructureType, pNext: pointer = nil, shaderTerminateInvocation: VkBool32): VkPhysicalDeviceShaderTerminateInvocationFeatures = +proc newVkPhysicalDeviceShaderTerminateInvocationFeatures*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderTerminateInvocationFeatures, pNext: pointer = nil, shaderTerminateInvocation: VkBool32): VkPhysicalDeviceShaderTerminateInvocationFeatures = result = VkPhysicalDeviceShaderTerminateInvocationFeatures( sType: sType, pNext: pNext, @@ -18366,7 +18691,7 @@ proc newVkPipelineColorWriteCreateInfoEXT*(sType: VkStructureType = VkStructureT pColorWriteEnables: pColorWriteEnables, ) -proc newVkMemoryBarrier2*(sType: VkStructureType, pNext: pointer = nil, srcStageMask: VkPipelineStageFlags2, srcAccessMask: VkAccessFlags2, dstStageMask: VkPipelineStageFlags2, dstAccessMask: VkAccessFlags2): VkMemoryBarrier2 = +proc newVkMemoryBarrier2*(sType: VkStructureType = VkStructureType.MemoryBarrier2, pNext: pointer = nil, srcStageMask: VkPipelineStageFlags2, srcAccessMask: VkAccessFlags2, dstStageMask: VkPipelineStageFlags2, dstAccessMask: VkAccessFlags2): VkMemoryBarrier2 = result = VkMemoryBarrier2( sType: sType, pNext: pNext, @@ -18376,7 +18701,7 @@ proc newVkMemoryBarrier2*(sType: VkStructureType, pNext: pointer = nil, srcStage dstAccessMask: dstAccessMask, ) -proc newVkImageMemoryBarrier2*(sType: VkStructureType, pNext: pointer = nil, srcStageMask: VkPipelineStageFlags2, srcAccessMask: VkAccessFlags2, dstStageMask: VkPipelineStageFlags2, dstAccessMask: VkAccessFlags2, oldLayout: VkImageLayout, newLayout: VkImageLayout, srcQueueFamilyIndex: uint32, dstQueueFamilyIndex: uint32, image: VkImage, subresourceRange: VkImageSubresourceRange): VkImageMemoryBarrier2 = +proc newVkImageMemoryBarrier2*(sType: VkStructureType = VkStructureType.ImageMemoryBarrier2, pNext: pointer = nil, srcStageMask: VkPipelineStageFlags2, srcAccessMask: VkAccessFlags2, dstStageMask: VkPipelineStageFlags2, dstAccessMask: VkAccessFlags2, oldLayout: VkImageLayout, newLayout: VkImageLayout, srcQueueFamilyIndex: uint32, dstQueueFamilyIndex: uint32, image: VkImage, subresourceRange: VkImageSubresourceRange): VkImageMemoryBarrier2 = result = VkImageMemoryBarrier2( sType: sType, pNext: pNext, @@ -18392,7 +18717,7 @@ proc newVkImageMemoryBarrier2*(sType: VkStructureType, pNext: pointer = nil, src subresourceRange: subresourceRange, ) -proc newVkBufferMemoryBarrier2*(sType: VkStructureType, pNext: pointer = nil, srcStageMask: VkPipelineStageFlags2, srcAccessMask: VkAccessFlags2, dstStageMask: VkPipelineStageFlags2, dstAccessMask: VkAccessFlags2, srcQueueFamilyIndex: uint32, dstQueueFamilyIndex: uint32, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize): VkBufferMemoryBarrier2 = +proc newVkBufferMemoryBarrier2*(sType: VkStructureType = VkStructureType.BufferMemoryBarrier2, pNext: pointer = nil, srcStageMask: VkPipelineStageFlags2, srcAccessMask: VkAccessFlags2, dstStageMask: VkPipelineStageFlags2, dstAccessMask: VkAccessFlags2, srcQueueFamilyIndex: uint32, dstQueueFamilyIndex: uint32, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize): VkBufferMemoryBarrier2 = result = VkBufferMemoryBarrier2( sType: sType, pNext: pNext, @@ -18407,7 +18732,7 @@ proc newVkBufferMemoryBarrier2*(sType: VkStructureType, pNext: pointer = nil, sr size: size, ) -proc newVkDependencyInfo*(sType: VkStructureType, pNext: pointer = nil, dependencyFlags: VkDependencyFlags, memoryBarrierCount: uint32, pMemoryBarriers: ptr VkMemoryBarrier2, bufferMemoryBarrierCount: uint32, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier2, imageMemoryBarrierCount: uint32, pImageMemoryBarriers: ptr VkImageMemoryBarrier2): VkDependencyInfo = +proc newVkDependencyInfo*(sType: VkStructureType = VkStructureType.DependencyInfo, pNext: pointer = nil, dependencyFlags: VkDependencyFlags, memoryBarrierCount: uint32, pMemoryBarriers: ptr VkMemoryBarrier2, bufferMemoryBarrierCount: uint32, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier2, imageMemoryBarrierCount: uint32, pImageMemoryBarriers: ptr VkImageMemoryBarrier2): VkDependencyInfo = result = VkDependencyInfo( sType: sType, pNext: pNext, @@ -18420,7 +18745,7 @@ proc newVkDependencyInfo*(sType: VkStructureType, pNext: pointer = nil, dependen pImageMemoryBarriers: pImageMemoryBarriers, ) -proc newVkSemaphoreSubmitInfo*(sType: VkStructureType, pNext: pointer = nil, semaphore: VkSemaphore, value: uint64, stageMask: VkPipelineStageFlags2, deviceIndex: uint32): VkSemaphoreSubmitInfo = +proc newVkSemaphoreSubmitInfo*(sType: VkStructureType = VkStructureType.SemaphoreSubmitInfo, pNext: pointer = nil, semaphore: VkSemaphore, value: uint64, stageMask: VkPipelineStageFlags2, deviceIndex: uint32): VkSemaphoreSubmitInfo = result = VkSemaphoreSubmitInfo( sType: sType, pNext: pNext, @@ -18430,7 +18755,7 @@ proc newVkSemaphoreSubmitInfo*(sType: VkStructureType, pNext: pointer = nil, sem deviceIndex: deviceIndex, ) -proc newVkCommandBufferSubmitInfo*(sType: VkStructureType, pNext: pointer = nil, commandBuffer: VkCommandBuffer, deviceMask: uint32): VkCommandBufferSubmitInfo = +proc newVkCommandBufferSubmitInfo*(sType: VkStructureType = VkStructureType.CommandBufferSubmitInfo, pNext: pointer = nil, commandBuffer: VkCommandBuffer, deviceMask: uint32): VkCommandBufferSubmitInfo = result = VkCommandBufferSubmitInfo( sType: sType, pNext: pNext, @@ -18438,7 +18763,7 @@ proc newVkCommandBufferSubmitInfo*(sType: VkStructureType, pNext: pointer = nil, deviceMask: deviceMask, ) -proc newVkSubmitInfo2*(sType: VkStructureType, pNext: pointer = nil, flags: VkSubmitFlags = 0.VkSubmitFlags, waitSemaphoreInfoCount: uint32, pWaitSemaphoreInfos: ptr VkSemaphoreSubmitInfo, commandBufferInfoCount: uint32, pCommandBufferInfos: ptr VkCommandBufferSubmitInfo, signalSemaphoreInfoCount: uint32, pSignalSemaphoreInfos: ptr VkSemaphoreSubmitInfo): VkSubmitInfo2 = +proc newVkSubmitInfo2*(sType: VkStructureType = VkStructureType.SubmitInfo2, pNext: pointer = nil, flags: VkSubmitFlags = 0.VkSubmitFlags, waitSemaphoreInfoCount: uint32, pWaitSemaphoreInfos: ptr VkSemaphoreSubmitInfo, commandBufferInfoCount: uint32, pCommandBufferInfos: ptr VkCommandBufferSubmitInfo, signalSemaphoreInfoCount: uint32, pSignalSemaphoreInfos: ptr VkSemaphoreSubmitInfo): VkSubmitInfo2 = result = VkSubmitInfo2( sType: sType, pNext: pNext, @@ -18466,7 +18791,7 @@ proc newVkCheckpointData2NV*(sType: VkStructureType = VkStructureType.Checkpoint pCheckpointMarker: pCheckpointMarker, ) -proc newVkPhysicalDeviceSynchronization2Features*(sType: VkStructureType, pNext: pointer = nil, synchronization2: VkBool32): VkPhysicalDeviceSynchronization2Features = +proc newVkPhysicalDeviceSynchronization2Features*(sType: VkStructureType = VkStructureType.PhysicalDeviceSynchronization2Features, pNext: pointer = nil, synchronization2: VkBool32): VkPhysicalDeviceSynchronization2Features = result = VkPhysicalDeviceSynchronization2Features( sType: sType, pNext: pNext, @@ -18576,7 +18901,7 @@ proc newVkHostImageCopyDevicePerformanceQueryEXT*(sType: VkStructureType = VkStr identicalMemoryLayout: identicalMemoryLayout, ) -proc newVkPhysicalDeviceVulkanSC10Properties*(sType: VkStructureType, pNext: pointer = nil, deviceNoDynamicHostAllocations: VkBool32, deviceDestroyFreesMemory: VkBool32, commandPoolMultipleCommandBuffersRecording: VkBool32, commandPoolResetCommandBuffer: VkBool32, commandBufferSimultaneousUse: VkBool32, secondaryCommandBufferNullOrImagelessFramebuffer: VkBool32, recycleDescriptorSetMemory: VkBool32, recyclePipelineMemory: VkBool32, maxRenderPassSubpasses: uint32, maxRenderPassDependencies: uint32, maxSubpassInputAttachments: uint32, maxSubpassPreserveAttachments: uint32, maxFramebufferAttachments: uint32, maxDescriptorSetLayoutBindings: uint32, maxQueryFaultCount: uint32, maxCallbackFaultCount: uint32, maxCommandPoolCommandBuffers: uint32, maxCommandBufferSize: VkDeviceSize): VkPhysicalDeviceVulkanSC10Properties = +proc newVkPhysicalDeviceVulkanSC10Properties*(sType: VkStructureType = VkStructureType.PhysicalDeviceVulkanSC10Properties, pNext: pointer = nil, deviceNoDynamicHostAllocations: VkBool32, deviceDestroyFreesMemory: VkBool32, commandPoolMultipleCommandBuffersRecording: VkBool32, commandPoolResetCommandBuffer: VkBool32, commandBufferSimultaneousUse: VkBool32, secondaryCommandBufferNullOrImagelessFramebuffer: VkBool32, recycleDescriptorSetMemory: VkBool32, recyclePipelineMemory: VkBool32, maxRenderPassSubpasses: uint32, maxRenderPassDependencies: uint32, maxSubpassInputAttachments: uint32, maxSubpassPreserveAttachments: uint32, maxFramebufferAttachments: uint32, maxDescriptorSetLayoutBindings: uint32, maxQueryFaultCount: uint32, maxCallbackFaultCount: uint32, maxCommandPoolCommandBuffers: uint32, maxCommandBufferSize: VkDeviceSize): VkPhysicalDeviceVulkanSC10Properties = result = VkPhysicalDeviceVulkanSC10Properties( sType: sType, pNext: pNext, @@ -18600,7 +18925,7 @@ proc newVkPhysicalDeviceVulkanSC10Properties*(sType: VkStructureType, pNext: poi maxCommandBufferSize: maxCommandBufferSize, ) -proc newVkPipelinePoolSize*(sType: VkStructureType, pNext: pointer = nil, poolEntrySize: VkDeviceSize, poolEntryCount: uint32): VkPipelinePoolSize = +proc newVkPipelinePoolSize*(sType: VkStructureType = VkStructureType.PipelinePoolSize, pNext: pointer = nil, poolEntrySize: VkDeviceSize, poolEntryCount: uint32): VkPipelinePoolSize = result = VkPipelinePoolSize( sType: sType, pNext: pNext, @@ -18608,7 +18933,7 @@ proc newVkPipelinePoolSize*(sType: VkStructureType, pNext: pointer = nil, poolEn poolEntryCount: poolEntryCount, ) -proc newVkDeviceObjectReservationCreateInfo*(sType: VkStructureType, pNext: pointer = nil, pipelineCacheCreateInfoCount: uint32, pPipelineCacheCreateInfos: ptr VkPipelineCacheCreateInfo, pipelinePoolSizeCount: uint32, pPipelinePoolSizes: ptr VkPipelinePoolSize, semaphoreRequestCount: uint32, commandBufferRequestCount: uint32, fenceRequestCount: uint32, deviceMemoryRequestCount: uint32, bufferRequestCount: uint32, imageRequestCount: uint32, eventRequestCount: uint32, queryPoolRequestCount: uint32, bufferViewRequestCount: uint32, imageViewRequestCount: uint32, layeredImageViewRequestCount: uint32, pipelineCacheRequestCount: uint32, pipelineLayoutRequestCount: uint32, renderPassRequestCount: uint32, graphicsPipelineRequestCount: uint32, computePipelineRequestCount: uint32, descriptorSetLayoutRequestCount: uint32, samplerRequestCount: uint32, descriptorPoolRequestCount: uint32, descriptorSetRequestCount: uint32, framebufferRequestCount: uint32, commandPoolRequestCount: uint32, samplerYcbcrConversionRequestCount: uint32, surfaceRequestCount: uint32, swapchainRequestCount: uint32, displayModeRequestCount: uint32, subpassDescriptionRequestCount: uint32, attachmentDescriptionRequestCount: uint32, descriptorSetLayoutBindingRequestCount: uint32, descriptorSetLayoutBindingLimit: uint32, maxImageViewMipLevels: uint32, maxImageViewArrayLayers: uint32, maxLayeredImageViewMipLevels: uint32, maxOcclusionQueriesPerPool: uint32, maxPipelineStatisticsQueriesPerPool: uint32, maxTimestampQueriesPerPool: uint32, maxImmutableSamplersPerDescriptorSetLayout: uint32): VkDeviceObjectReservationCreateInfo = +proc newVkDeviceObjectReservationCreateInfo*(sType: VkStructureType = VkStructureType.DeviceObjectReservationCreateInfo, pNext: pointer = nil, pipelineCacheCreateInfoCount: uint32, pPipelineCacheCreateInfos: ptr VkPipelineCacheCreateInfo, pipelinePoolSizeCount: uint32, pPipelinePoolSizes: ptr VkPipelinePoolSize, semaphoreRequestCount: uint32, commandBufferRequestCount: uint32, fenceRequestCount: uint32, deviceMemoryRequestCount: uint32, bufferRequestCount: uint32, imageRequestCount: uint32, eventRequestCount: uint32, queryPoolRequestCount: uint32, bufferViewRequestCount: uint32, imageViewRequestCount: uint32, layeredImageViewRequestCount: uint32, pipelineCacheRequestCount: uint32, pipelineLayoutRequestCount: uint32, renderPassRequestCount: uint32, graphicsPipelineRequestCount: uint32, computePipelineRequestCount: uint32, descriptorSetLayoutRequestCount: uint32, samplerRequestCount: uint32, descriptorPoolRequestCount: uint32, descriptorSetRequestCount: uint32, framebufferRequestCount: uint32, commandPoolRequestCount: uint32, samplerYcbcrConversionRequestCount: uint32, surfaceRequestCount: uint32, swapchainRequestCount: uint32, displayModeRequestCount: uint32, subpassDescriptionRequestCount: uint32, attachmentDescriptionRequestCount: uint32, descriptorSetLayoutBindingRequestCount: uint32, descriptorSetLayoutBindingLimit: uint32, maxImageViewMipLevels: uint32, maxImageViewArrayLayers: uint32, maxLayeredImageViewMipLevels: uint32, maxOcclusionQueriesPerPool: uint32, maxPipelineStatisticsQueriesPerPool: uint32, maxTimestampQueriesPerPool: uint32, maxImmutableSamplersPerDescriptorSetLayout: uint32): VkDeviceObjectReservationCreateInfo = result = VkDeviceObjectReservationCreateInfo( sType: sType, pNext: pNext, @@ -18655,7 +18980,7 @@ proc newVkDeviceObjectReservationCreateInfo*(sType: VkStructureType, pNext: poin maxImmutableSamplersPerDescriptorSetLayout: maxImmutableSamplersPerDescriptorSetLayout, ) -proc newVkCommandPoolMemoryReservationCreateInfo*(sType: VkStructureType, pNext: pointer = nil, commandPoolReservedSize: VkDeviceSize, commandPoolMaxCommandBuffers: uint32): VkCommandPoolMemoryReservationCreateInfo = +proc newVkCommandPoolMemoryReservationCreateInfo*(sType: VkStructureType = VkStructureType.CommandPoolMemoryReservationCreateInfo, pNext: pointer = nil, commandPoolReservedSize: VkDeviceSize, commandPoolMaxCommandBuffers: uint32): VkCommandPoolMemoryReservationCreateInfo = result = VkCommandPoolMemoryReservationCreateInfo( sType: sType, pNext: pNext, @@ -18663,7 +18988,7 @@ proc newVkCommandPoolMemoryReservationCreateInfo*(sType: VkStructureType, pNext: commandPoolMaxCommandBuffers: commandPoolMaxCommandBuffers, ) -proc newVkCommandPoolMemoryConsumption*(sType: VkStructureType, pNext: pointer = nil, commandPoolAllocated: VkDeviceSize, commandPoolReservedSize: VkDeviceSize, commandBufferAllocated: VkDeviceSize): VkCommandPoolMemoryConsumption = +proc newVkCommandPoolMemoryConsumption*(sType: VkStructureType = VkStructureType.CommandPoolMemoryConsumption, pNext: pointer = nil, commandPoolAllocated: VkDeviceSize, commandPoolReservedSize: VkDeviceSize, commandBufferAllocated: VkDeviceSize): VkCommandPoolMemoryConsumption = result = VkCommandPoolMemoryConsumption( sType: sType, pNext: pNext, @@ -18672,7 +18997,7 @@ proc newVkCommandPoolMemoryConsumption*(sType: VkStructureType, pNext: pointer = commandBufferAllocated: commandBufferAllocated, ) -proc newVkPhysicalDeviceVulkanSC10Features*(sType: VkStructureType, pNext: pointer = nil, shaderAtomicInstructions: VkBool32): VkPhysicalDeviceVulkanSC10Features = +proc newVkPhysicalDeviceVulkanSC10Features*(sType: VkStructureType = VkStructureType.PhysicalDeviceVulkanSC10Features, pNext: pointer = nil, shaderAtomicInstructions: VkBool32): VkPhysicalDeviceVulkanSC10Features = result = VkPhysicalDeviceVulkanSC10Features( sType: sType, pNext: pNext, @@ -19707,14 +20032,14 @@ proc newVkOpaqueCaptureDescriptorDataCreateInfoEXT*(sType: VkStructureType = VkS opaqueCaptureDescriptorData: opaqueCaptureDescriptorData, ) -proc newVkPhysicalDeviceShaderIntegerDotProductFeatures*(sType: VkStructureType, pNext: pointer = nil, shaderIntegerDotProduct: VkBool32): VkPhysicalDeviceShaderIntegerDotProductFeatures = +proc newVkPhysicalDeviceShaderIntegerDotProductFeatures*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderIntegerDotProductFeatures, pNext: pointer = nil, shaderIntegerDotProduct: VkBool32): VkPhysicalDeviceShaderIntegerDotProductFeatures = result = VkPhysicalDeviceShaderIntegerDotProductFeatures( sType: sType, pNext: pNext, shaderIntegerDotProduct: shaderIntegerDotProduct, ) -proc newVkPhysicalDeviceShaderIntegerDotProductProperties*(sType: VkStructureType, pNext: pointer = nil, integerDotProduct8BitUnsignedAccelerated: VkBool32, integerDotProduct8BitSignedAccelerated: VkBool32, integerDotProduct8BitMixedSignednessAccelerated: VkBool32, integerDotProduct4x8BitPackedUnsignedAccelerated: VkBool32, integerDotProduct4x8BitPackedSignedAccelerated: VkBool32, integerDotProduct4x8BitPackedMixedSignednessAccelerated: VkBool32, integerDotProduct16BitUnsignedAccelerated: VkBool32, integerDotProduct16BitSignedAccelerated: VkBool32, integerDotProduct16BitMixedSignednessAccelerated: VkBool32, integerDotProduct32BitUnsignedAccelerated: VkBool32, integerDotProduct32BitSignedAccelerated: VkBool32, integerDotProduct32BitMixedSignednessAccelerated: VkBool32, integerDotProduct64BitUnsignedAccelerated: VkBool32, integerDotProduct64BitSignedAccelerated: VkBool32, integerDotProduct64BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating8BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating8BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating16BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating16BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating32BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating32BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating64BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating64BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated: VkBool32): VkPhysicalDeviceShaderIntegerDotProductProperties = +proc newVkPhysicalDeviceShaderIntegerDotProductProperties*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderIntegerDotProductProperties, pNext: pointer = nil, integerDotProduct8BitUnsignedAccelerated: VkBool32, integerDotProduct8BitSignedAccelerated: VkBool32, integerDotProduct8BitMixedSignednessAccelerated: VkBool32, integerDotProduct4x8BitPackedUnsignedAccelerated: VkBool32, integerDotProduct4x8BitPackedSignedAccelerated: VkBool32, integerDotProduct4x8BitPackedMixedSignednessAccelerated: VkBool32, integerDotProduct16BitUnsignedAccelerated: VkBool32, integerDotProduct16BitSignedAccelerated: VkBool32, integerDotProduct16BitMixedSignednessAccelerated: VkBool32, integerDotProduct32BitUnsignedAccelerated: VkBool32, integerDotProduct32BitSignedAccelerated: VkBool32, integerDotProduct32BitMixedSignednessAccelerated: VkBool32, integerDotProduct64BitUnsignedAccelerated: VkBool32, integerDotProduct64BitSignedAccelerated: VkBool32, integerDotProduct64BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating8BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating8BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating16BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating16BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating32BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating32BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated: VkBool32, integerDotProductAccumulatingSaturating64BitUnsignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating64BitSignedAccelerated: VkBool32, integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated: VkBool32): VkPhysicalDeviceShaderIntegerDotProductProperties = result = VkPhysicalDeviceShaderIntegerDotProductProperties( sType: sType, pNext: pNext, @@ -19994,7 +20319,7 @@ proc newVkPhysicalDeviceRGBA10X6FormatsFeaturesEXT*(sType: VkStructureType = VkS formatRgba10x6WithoutYCbCrSampler: formatRgba10x6WithoutYCbCrSampler, ) -proc newVkFormatProperties3*(sType: VkStructureType, pNext: pointer = nil, linearTilingFeatures: VkFormatFeatureFlags2, optimalTilingFeatures: VkFormatFeatureFlags2, bufferFeatures: VkFormatFeatureFlags2): VkFormatProperties3 = +proc newVkFormatProperties3*(sType: VkStructureType = VkStructureType.FormatProperties3, pNext: pointer = nil, linearTilingFeatures: VkFormatFeatureFlags2, optimalTilingFeatures: VkFormatFeatureFlags2, bufferFeatures: VkFormatFeatureFlags2): VkFormatProperties3 = result = VkFormatProperties3( sType: sType, pNext: pNext, @@ -20032,7 +20357,7 @@ proc newVkAndroidHardwareBufferFormatProperties2ANDROID*(sType: VkStructureType suggestedYChromaOffset: suggestedYChromaOffset, ) -proc newVkPipelineRenderingCreateInfo*(sType: VkStructureType, pNext: pointer = nil, viewMask: uint32, colorAttachmentCount: uint32, pColorAttachmentFormats: ptr VkFormat, depthAttachmentFormat: VkFormat, stencilAttachmentFormat: VkFormat): VkPipelineRenderingCreateInfo = +proc newVkPipelineRenderingCreateInfo*(sType: VkStructureType = VkStructureType.PipelineRenderingCreateInfo, pNext: pointer = nil, viewMask: uint32, colorAttachmentCount: uint32, pColorAttachmentFormats: ptr VkFormat, depthAttachmentFormat: VkFormat, stencilAttachmentFormat: VkFormat): VkPipelineRenderingCreateInfo = result = VkPipelineRenderingCreateInfo( sType: sType, pNext: pNext, @@ -20043,7 +20368,7 @@ proc newVkPipelineRenderingCreateInfo*(sType: VkStructureType, pNext: pointer = stencilAttachmentFormat: stencilAttachmentFormat, ) -proc newVkRenderingInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkRenderingFlags = 0.VkRenderingFlags, renderArea: VkRect2D, layerCount: uint32, viewMask: uint32, colorAttachmentCount: uint32, pColorAttachments: ptr VkRenderingAttachmentInfo, pDepthAttachment: ptr VkRenderingAttachmentInfo, pStencilAttachment: ptr VkRenderingAttachmentInfo): VkRenderingInfo = +proc newVkRenderingInfo*(sType: VkStructureType = VkStructureType.RenderingInfo, pNext: pointer = nil, flags: VkRenderingFlags = 0.VkRenderingFlags, renderArea: VkRect2D, layerCount: uint32, viewMask: uint32, colorAttachmentCount: uint32, pColorAttachments: ptr VkRenderingAttachmentInfo, pDepthAttachment: ptr VkRenderingAttachmentInfo, pStencilAttachment: ptr VkRenderingAttachmentInfo): VkRenderingInfo = result = VkRenderingInfo( sType: sType, pNext: pNext, @@ -20057,7 +20382,7 @@ proc newVkRenderingInfo*(sType: VkStructureType, pNext: pointer = nil, flags: Vk pStencilAttachment: pStencilAttachment, ) -proc newVkRenderingAttachmentInfo*(sType: VkStructureType, pNext: pointer = nil, imageView: VkImageView, imageLayout: VkImageLayout, resolveMode: VkResolveModeFlagBits, resolveImageView: VkImageView, resolveImageLayout: VkImageLayout, loadOp: VkAttachmentLoadOp, storeOp: VkAttachmentStoreOp, clearValue: VkClearValue): VkRenderingAttachmentInfo = +proc newVkRenderingAttachmentInfo*(sType: VkStructureType = VkStructureType.RenderingAttachmentInfo, pNext: pointer = nil, imageView: VkImageView, imageLayout: VkImageLayout, resolveMode: VkResolveModeFlagBits, resolveImageView: VkImageView, resolveImageLayout: VkImageLayout, loadOp: VkAttachmentLoadOp, storeOp: VkAttachmentStoreOp, clearValue: VkClearValue): VkRenderingAttachmentInfo = result = VkRenderingAttachmentInfo( sType: sType, pNext: pNext, @@ -20088,14 +20413,14 @@ proc newVkRenderingFragmentDensityMapAttachmentInfoEXT*(sType: VkStructureType = imageLayout: imageLayout, ) -proc newVkPhysicalDeviceDynamicRenderingFeatures*(sType: VkStructureType, pNext: pointer = nil, dynamicRendering: VkBool32): VkPhysicalDeviceDynamicRenderingFeatures = +proc newVkPhysicalDeviceDynamicRenderingFeatures*(sType: VkStructureType = VkStructureType.PhysicalDeviceDynamicRenderingFeatures, pNext: pointer = nil, dynamicRendering: VkBool32): VkPhysicalDeviceDynamicRenderingFeatures = result = VkPhysicalDeviceDynamicRenderingFeatures( sType: sType, pNext: pNext, dynamicRendering: dynamicRendering, ) -proc newVkCommandBufferInheritanceRenderingInfo*(sType: VkStructureType, pNext: pointer = nil, flags: VkRenderingFlags = 0.VkRenderingFlags, viewMask: uint32, colorAttachmentCount: uint32, pColorAttachmentFormats: ptr VkFormat, depthAttachmentFormat: VkFormat, stencilAttachmentFormat: VkFormat, rasterizationSamples: VkSampleCountFlagBits): VkCommandBufferInheritanceRenderingInfo = +proc newVkCommandBufferInheritanceRenderingInfo*(sType: VkStructureType = VkStructureType.CommandBufferInheritanceRenderingInfo, pNext: pointer = nil, flags: VkRenderingFlags = 0.VkRenderingFlags, viewMask: uint32, colorAttachmentCount: uint32, pColorAttachmentFormats: ptr VkFormat, depthAttachmentFormat: VkFormat, stencilAttachmentFormat: VkFormat, rasterizationSamples: VkSampleCountFlagBits): VkCommandBufferInheritanceRenderingInfo = result = VkCommandBufferInheritanceRenderingInfo( sType: sType, pNext: pNext, diff --git a/tools/generator.nim b/tools/generator.nim index 527f249..9a02258 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -339,6 +339,13 @@ proc getEnumValue(e: XmlNode, name: string, extNumber: int): (int, string) = result = (enumValue, enumName) proc genEnums(node: XmlNode, output: var string) = + var extOrFeature: seq[XmlNode] = @[] + for ext in node.findAll("extension"): + if ext.attr("supported") == "disabled": continue + extOrFeature.add ext + for feat in node.findAll("feature"): + if feat.attr("supported") == "disabled": continue + extOrFeature.add feat echo "Generating and Adding Enums" output.add("# Enums\n") var inType = false @@ -385,11 +392,11 @@ proc genEnums(node: XmlNode, output: var string) = continue elements.add(enumValue, enumName) # Add extensions - for ext in node.findAll("extension"): - if ext.attr("supported") == "disabled": continue - let extNumberAttr = ext.attr("number") - let extNumber = if extNumberAttr != "": extNumberAttr.parseInt() else: 1 - for r in ext.items: + for extOrFeat in extOrFeature.items: + let extNumberAttr = extOrFeat.attr("number") + let extNumber = + if extNumberAttr != "" and extOrFeat.tag == "extension": extNumberAttr.parseInt() else: 1 + for r in extOrFeat.items: if r.kind != xnElement or r.tag != "require": continue for e in r.items: From 6cb322af7ddb00a88ae4ee20f2fe7bdb9b256a74 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Thu, 9 May 2024 15:16:53 +0300 Subject: [PATCH 35/57] add extensions constants --- src/vulkan.nim | 1125 +++++++++++++++++++++++++++++++++++++++++++ tools/generator.nim | 22 +- 2 files changed, 1146 insertions(+), 1 deletion(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 1a9ee4c..c0a8d52 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -81,6 +81,1131 @@ const VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT* = 32 VK_MAX_VIDEO_AV1_REFERENCES_PER_FRAME_KHR* = 7 VK_SHADER_INDEX_UNUSED_AMDX* = (not 0'u32) + # Extension: VK_KHR_surface + VK_KHR_SURFACE_SPEC_VERSION* = 25 + VK_KHR_SURFACE_EXTENSION_NAME* = "VK_KHR_surface" + # Extension: VK_KHR_swapchain + VK_KHR_SWAPCHAIN_SPEC_VERSION* = 70 + VK_KHR_SWAPCHAIN_EXTENSION_NAME* = "VK_KHR_swapchain" + # Extension: VK_KHR_display + VK_KHR_DISPLAY_SPEC_VERSION* = 23 + VK_KHR_DISPLAY_EXTENSION_NAME* = "VK_KHR_display" + # Extension: VK_KHR_display_swapchain + VK_KHR_DISPLAY_SWAPCHAIN_SPEC_VERSION* = 10 + VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME* = "VK_KHR_display_swapchain" + # Extension: VK_KHR_xlib_surface + VK_KHR_XLIB_SURFACE_SPEC_VERSION* = 6 + VK_KHR_XLIB_SURFACE_EXTENSION_NAME* = "VK_KHR_xlib_surface" + # Extension: VK_KHR_xcb_surface + VK_KHR_XCB_SURFACE_SPEC_VERSION* = 6 + VK_KHR_XCB_SURFACE_EXTENSION_NAME* = "VK_KHR_xcb_surface" + # Extension: VK_KHR_wayland_surface + VK_KHR_WAYLAND_SURFACE_SPEC_VERSION* = 6 + VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME* = "VK_KHR_wayland_surface" + # Extension: VK_KHR_android_surface + VK_KHR_ANDROID_SURFACE_SPEC_VERSION* = 6 + VK_KHR_ANDROID_SURFACE_EXTENSION_NAME* = "VK_KHR_android_surface" + # Extension: VK_KHR_win32_surface + VK_KHR_WIN32_SURFACE_SPEC_VERSION* = 6 + VK_KHR_WIN32_SURFACE_EXTENSION_NAME* = "VK_KHR_win32_surface" + # Extension: VK_EXT_debug_report + VK_EXT_DEBUG_REPORT_SPEC_VERSION* = 10 + VK_EXT_DEBUG_REPORT_EXTENSION_NAME* = "VK_EXT_debug_report" + # Extension: VK_NV_glsl_shader + VK_NV_GLSL_SHADER_SPEC_VERSION* = 1 + VK_NV_GLSL_SHADER_EXTENSION_NAME* = "VK_NV_glsl_shader" + # Extension: VK_EXT_depth_range_unrestricted + VK_EXT_DEPTH_RANGE_UNRESTRICTED_SPEC_VERSION* = 1 + VK_EXT_DEPTH_RANGE_UNRESTRICTED_EXTENSION_NAME* = "VK_EXT_depth_range_unrestricted" + # Extension: VK_KHR_sampler_mirror_clamp_to_edge + VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_SPEC_VERSION* = 3 + VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_EXTENSION_NAME* = "VK_KHR_sampler_mirror_clamp_to_edge" + # Extension: VK_IMG_filter_cubic + VK_IMG_FILTER_CUBIC_SPEC_VERSION* = 1 + VK_IMG_FILTER_CUBIC_EXTENSION_NAME* = "VK_IMG_filter_cubic" + # Extension: VK_AMD_rasterization_order + VK_AMD_RASTERIZATION_ORDER_SPEC_VERSION* = 1 + VK_AMD_RASTERIZATION_ORDER_EXTENSION_NAME* = "VK_AMD_rasterization_order" + # Extension: VK_AMD_shader_trinary_minmax + VK_AMD_SHADER_TRINARY_MINMAX_SPEC_VERSION* = 1 + VK_AMD_SHADER_TRINARY_MINMAX_EXTENSION_NAME* = "VK_AMD_shader_trinary_minmax" + # Extension: VK_AMD_shader_explicit_vertex_parameter + VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_SPEC_VERSION* = 1 + VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_EXTENSION_NAME* = "VK_AMD_shader_explicit_vertex_parameter" + # Extension: VK_EXT_debug_marker + VK_EXT_DEBUG_MARKER_SPEC_VERSION* = 4 + VK_EXT_DEBUG_MARKER_EXTENSION_NAME* = "VK_EXT_debug_marker" + # Extension: VK_KHR_video_queue + VK_KHR_VIDEO_QUEUE_SPEC_VERSION* = 8 + VK_KHR_VIDEO_QUEUE_EXTENSION_NAME* = "VK_KHR_video_queue" + # Extension: VK_KHR_video_decode_queue + VK_KHR_VIDEO_DECODE_QUEUE_SPEC_VERSION* = 8 + VK_KHR_VIDEO_DECODE_QUEUE_EXTENSION_NAME* = "VK_KHR_video_decode_queue" + # Extension: VK_AMD_gcn_shader + VK_AMD_GCN_SHADER_SPEC_VERSION* = 1 + VK_AMD_GCN_SHADER_EXTENSION_NAME* = "VK_AMD_gcn_shader" + # Extension: VK_NV_dedicated_allocation + VK_NV_DEDICATED_ALLOCATION_SPEC_VERSION* = 1 + VK_NV_DEDICATED_ALLOCATION_EXTENSION_NAME* = "VK_NV_dedicated_allocation" + # Extension: VK_EXT_transform_feedback + VK_EXT_TRANSFORM_FEEDBACK_SPEC_VERSION* = 1 + VK_EXT_TRANSFORM_FEEDBACK_EXTENSION_NAME* = "VK_EXT_transform_feedback" + # Extension: VK_NVX_binary_import + VK_NVX_BINARY_IMPORT_SPEC_VERSION* = 1 + VK_NVX_BINARY_IMPORT_EXTENSION_NAME* = "VK_NVX_binary_import" + # Extension: VK_NVX_image_view_handle + VK_NVX_IMAGE_VIEW_HANDLE_SPEC_VERSION* = 2 + VK_NVX_IMAGE_VIEW_HANDLE_EXTENSION_NAME* = "VK_NVX_image_view_handle" + # Extension: VK_AMD_draw_indirect_count + VK_AMD_DRAW_INDIRECT_COUNT_SPEC_VERSION* = 2 + VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME* = "VK_AMD_draw_indirect_count" + # Extension: VK_AMD_negative_viewport_height + VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_SPEC_VERSION* = 1 + VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_EXTENSION_NAME* = "VK_AMD_negative_viewport_height" + # Extension: VK_AMD_gpu_shader_half_float + VK_AMD_GPU_SHADER_HALF_FLOAT_SPEC_VERSION* = 2 + VK_AMD_GPU_SHADER_HALF_FLOAT_EXTENSION_NAME* = "VK_AMD_gpu_shader_half_float" + # Extension: VK_AMD_shader_ballot + VK_AMD_SHADER_BALLOT_SPEC_VERSION* = 1 + VK_AMD_SHADER_BALLOT_EXTENSION_NAME* = "VK_AMD_shader_ballot" + # Extension: VK_KHR_video_encode_h264 + VK_KHR_VIDEO_ENCODE_H264_SPEC_VERSION* = 14 + VK_KHR_VIDEO_ENCODE_H264_EXTENSION_NAME* = "VK_KHR_video_encode_h264" + # Extension: VK_KHR_video_encode_h265 + VK_KHR_VIDEO_ENCODE_H265_SPEC_VERSION* = 14 + VK_KHR_VIDEO_ENCODE_H265_EXTENSION_NAME* = "VK_KHR_video_encode_h265" + # Extension: VK_KHR_video_decode_h264 + VK_KHR_VIDEO_DECODE_H264_SPEC_VERSION* = 9 + VK_KHR_VIDEO_DECODE_H264_EXTENSION_NAME* = "VK_KHR_video_decode_h264" + # Extension: VK_AMD_texture_gather_bias_lod + VK_AMD_TEXTURE_GATHER_BIAS_LOD_SPEC_VERSION* = 1 + VK_AMD_TEXTURE_GATHER_BIAS_LOD_EXTENSION_NAME* = "VK_AMD_texture_gather_bias_lod" + # Extension: VK_AMD_shader_info + VK_AMD_SHADER_INFO_SPEC_VERSION* = 1 + VK_AMD_SHADER_INFO_EXTENSION_NAME* = "VK_AMD_shader_info" + # Extension: VK_KHR_dynamic_rendering + VK_KHR_DYNAMIC_RENDERING_SPEC_VERSION* = 1 + VK_KHR_DYNAMIC_RENDERING_EXTENSION_NAME* = "VK_KHR_dynamic_rendering" + # Extension: VK_AMD_shader_image_load_store_lod + VK_AMD_SHADER_IMAGE_LOAD_STORE_LOD_SPEC_VERSION* = 1 + VK_AMD_SHADER_IMAGE_LOAD_STORE_LOD_EXTENSION_NAME* = "VK_AMD_shader_image_load_store_lod" + # Extension: VK_GGP_stream_descriptor_surface + VK_GGP_STREAM_DESCRIPTOR_SURFACE_SPEC_VERSION* = 1 + VK_GGP_STREAM_DESCRIPTOR_SURFACE_EXTENSION_NAME* = "VK_GGP_stream_descriptor_surface" + # Extension: VK_NV_corner_sampled_image + VK_NV_CORNER_SAMPLED_IMAGE_SPEC_VERSION* = 2 + VK_NV_CORNER_SAMPLED_IMAGE_EXTENSION_NAME* = "VK_NV_corner_sampled_image" + # Extension: VK_NV_private_vendor_info + VK_NV_PRIVATE_VENDOR_INFO_SPEC_VERSION* = 2 + VK_NV_PRIVATE_VENDOR_INFO_EXTENSION_NAME* = "VK_NV_private_vendor_info" + # Extension: VK_KHR_multiview + VK_KHR_MULTIVIEW_SPEC_VERSION* = 1 + VK_KHR_MULTIVIEW_EXTENSION_NAME* = "VK_KHR_multiview" + # Extension: VK_IMG_format_pvrtc + VK_IMG_FORMAT_PVRTC_SPEC_VERSION* = 1 + VK_IMG_FORMAT_PVRTC_EXTENSION_NAME* = "VK_IMG_format_pvrtc" + # Extension: VK_NV_external_memory_capabilities + VK_NV_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION* = 1 + VK_NV_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME* = "VK_NV_external_memory_capabilities" + # Extension: VK_NV_external_memory + VK_NV_EXTERNAL_MEMORY_SPEC_VERSION* = 1 + VK_NV_EXTERNAL_MEMORY_EXTENSION_NAME* = "VK_NV_external_memory" + # Extension: VK_NV_external_memory_win32 + VK_NV_EXTERNAL_MEMORY_WIN32_SPEC_VERSION* = 1 + VK_NV_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME* = "VK_NV_external_memory_win32" + # Extension: VK_NV_win32_keyed_mutex + VK_NV_WIN32_KEYED_MUTEX_SPEC_VERSION* = 2 + VK_NV_WIN32_KEYED_MUTEX_EXTENSION_NAME* = "VK_NV_win32_keyed_mutex" + # Extension: VK_KHR_get_physical_device_properties2 + VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_SPEC_VERSION* = 2 + VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME* = "VK_KHR_get_physical_device_properties2" + # Extension: VK_KHR_device_group + VK_KHR_DEVICE_GROUP_SPEC_VERSION* = 4 + VK_KHR_DEVICE_GROUP_EXTENSION_NAME* = "VK_KHR_device_group" + # Extension: VK_EXT_validation_flags + VK_EXT_VALIDATION_FLAGS_SPEC_VERSION* = 3 + VK_EXT_VALIDATION_FLAGS_EXTENSION_NAME* = "VK_EXT_validation_flags" + # Extension: VK_NN_vi_surface + VK_NN_VI_SURFACE_SPEC_VERSION* = 1 + VK_NN_VI_SURFACE_EXTENSION_NAME* = "VK_NN_vi_surface" + # Extension: VK_KHR_shader_draw_parameters + VK_KHR_SHADER_DRAW_PARAMETERS_SPEC_VERSION* = 1 + VK_KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME* = "VK_KHR_shader_draw_parameters" + # Extension: VK_EXT_shader_subgroup_ballot + VK_EXT_SHADER_SUBGROUP_BALLOT_SPEC_VERSION* = 1 + VK_EXT_SHADER_SUBGROUP_BALLOT_EXTENSION_NAME* = "VK_EXT_shader_subgroup_ballot" + # Extension: VK_EXT_shader_subgroup_vote + VK_EXT_SHADER_SUBGROUP_VOTE_SPEC_VERSION* = 1 + VK_EXT_SHADER_SUBGROUP_VOTE_EXTENSION_NAME* = "VK_EXT_shader_subgroup_vote" + # Extension: VK_EXT_texture_compression_astc_hdr + VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_SPEC_VERSION* = 1 + VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_EXTENSION_NAME* = "VK_EXT_texture_compression_astc_hdr" + # Extension: VK_EXT_astc_decode_mode + VK_EXT_ASTC_DECODE_MODE_SPEC_VERSION* = 1 + VK_EXT_ASTC_DECODE_MODE_EXTENSION_NAME* = "VK_EXT_astc_decode_mode" + # Extension: VK_EXT_pipeline_robustness + VK_EXT_PIPELINE_ROBUSTNESS_SPEC_VERSION* = 1 + VK_EXT_PIPELINE_ROBUSTNESS_EXTENSION_NAME* = "VK_EXT_pipeline_robustness" + # Extension: VK_KHR_maintenance1 + VK_KHR_MAINTENANCE_1_SPEC_VERSION* = 2 + VK_KHR_MAINTENANCE_1_EXTENSION_NAME* = "VK_KHR_maintenance1" + # Extension: VK_KHR_device_group_creation + VK_KHR_DEVICE_GROUP_CREATION_SPEC_VERSION* = 1 + VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME* = "VK_KHR_device_group_creation" + # Extension: VK_KHR_external_memory_capabilities + VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION* = 1 + VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME* = "VK_KHR_external_memory_capabilities" + # Extension: VK_KHR_external_memory + VK_KHR_EXTERNAL_MEMORY_SPEC_VERSION* = 1 + VK_KHR_EXTERNAL_MEMORY_EXTENSION_NAME* = "VK_KHR_external_memory" + # Extension: VK_KHR_external_memory_win32 + VK_KHR_EXTERNAL_MEMORY_WIN32_SPEC_VERSION* = 1 + VK_KHR_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME* = "VK_KHR_external_memory_win32" + # Extension: VK_KHR_external_memory_fd + VK_KHR_EXTERNAL_MEMORY_FD_SPEC_VERSION* = 1 + VK_KHR_EXTERNAL_MEMORY_FD_EXTENSION_NAME* = "VK_KHR_external_memory_fd" + # Extension: VK_KHR_win32_keyed_mutex + VK_KHR_WIN32_KEYED_MUTEX_SPEC_VERSION* = 1 + VK_KHR_WIN32_KEYED_MUTEX_EXTENSION_NAME* = "VK_KHR_win32_keyed_mutex" + # Extension: VK_KHR_external_semaphore_capabilities + VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_SPEC_VERSION* = 1 + VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_EXTENSION_NAME* = "VK_KHR_external_semaphore_capabilities" + # Extension: VK_KHR_external_semaphore + VK_KHR_EXTERNAL_SEMAPHORE_SPEC_VERSION* = 1 + VK_KHR_EXTERNAL_SEMAPHORE_EXTENSION_NAME* = "VK_KHR_external_semaphore" + # Extension: VK_KHR_external_semaphore_win32 + VK_KHR_EXTERNAL_SEMAPHORE_WIN32_SPEC_VERSION* = 1 + VK_KHR_EXTERNAL_SEMAPHORE_WIN32_EXTENSION_NAME* = "VK_KHR_external_semaphore_win32" + # Extension: VK_KHR_external_semaphore_fd + VK_KHR_EXTERNAL_SEMAPHORE_FD_SPEC_VERSION* = 1 + VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME* = "VK_KHR_external_semaphore_fd" + # Extension: VK_KHR_push_descriptor + VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION* = 2 + VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME* = "VK_KHR_push_descriptor" + # Extension: VK_EXT_conditional_rendering + VK_EXT_CONDITIONAL_RENDERING_SPEC_VERSION* = 2 + VK_EXT_CONDITIONAL_RENDERING_EXTENSION_NAME* = "VK_EXT_conditional_rendering" + # Extension: VK_KHR_shader_float16_int8 + VK_KHR_SHADER_FLOAT16_INT8_SPEC_VERSION* = 1 + VK_KHR_SHADER_FLOAT16_INT8_EXTENSION_NAME* = "VK_KHR_shader_float16_int8" + # Extension: VK_KHR_16bit_storage + VK_KHR_16BIT_STORAGE_SPEC_VERSION* = 1 + VK_KHR_16BIT_STORAGE_EXTENSION_NAME* = "VK_KHR_16bit_storage" + # Extension: VK_KHR_incremental_present + VK_KHR_INCREMENTAL_PRESENT_SPEC_VERSION* = 2 + VK_KHR_INCREMENTAL_PRESENT_EXTENSION_NAME* = "VK_KHR_incremental_present" + # Extension: VK_KHR_descriptor_update_template + VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_SPEC_VERSION* = 1 + VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME* = "VK_KHR_descriptor_update_template" + # Extension: VK_NV_clip_space_w_scaling + VK_NV_CLIP_SPACE_W_SCALING_SPEC_VERSION* = 1 + VK_NV_CLIP_SPACE_W_SCALING_EXTENSION_NAME* = "VK_NV_clip_space_w_scaling" + # Extension: VK_EXT_direct_mode_display + VK_EXT_DIRECT_MODE_DISPLAY_SPEC_VERSION* = 1 + VK_EXT_DIRECT_MODE_DISPLAY_EXTENSION_NAME* = "VK_EXT_direct_mode_display" + # Extension: VK_EXT_acquire_xlib_display + VK_EXT_ACQUIRE_XLIB_DISPLAY_SPEC_VERSION* = 1 + VK_EXT_ACQUIRE_XLIB_DISPLAY_EXTENSION_NAME* = "VK_EXT_acquire_xlib_display" + # Extension: VK_EXT_display_surface_counter + VK_EXT_DISPLAY_SURFACE_COUNTER_SPEC_VERSION* = 1 + VK_EXT_DISPLAY_SURFACE_COUNTER_EXTENSION_NAME* = "VK_EXT_display_surface_counter" + # Extension: VK_EXT_display_control + VK_EXT_DISPLAY_CONTROL_SPEC_VERSION* = 1 + VK_EXT_DISPLAY_CONTROL_EXTENSION_NAME* = "VK_EXT_display_control" + # Extension: VK_GOOGLE_display_timing + VK_GOOGLE_DISPLAY_TIMING_SPEC_VERSION* = 1 + VK_GOOGLE_DISPLAY_TIMING_EXTENSION_NAME* = "VK_GOOGLE_display_timing" + # Extension: VK_NV_sample_mask_override_coverage + VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_SPEC_VERSION* = 1 + VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_EXTENSION_NAME* = "VK_NV_sample_mask_override_coverage" + # Extension: VK_NV_geometry_shader_passthrough + VK_NV_GEOMETRY_SHADER_PASSTHROUGH_SPEC_VERSION* = 1 + VK_NV_GEOMETRY_SHADER_PASSTHROUGH_EXTENSION_NAME* = "VK_NV_geometry_shader_passthrough" + # Extension: VK_NV_viewport_array2 + VK_NV_VIEWPORT_ARRAY_2_SPEC_VERSION* = 1 + VK_NV_VIEWPORT_ARRAY_2_EXTENSION_NAME* = "VK_NV_viewport_array2" + # Extension: VK_NVX_multiview_per_view_attributes + VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_SPEC_VERSION* = 1 + VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME* = "VK_NVX_multiview_per_view_attributes" + # Extension: VK_NV_viewport_swizzle + VK_NV_VIEWPORT_SWIZZLE_SPEC_VERSION* = 1 + VK_NV_VIEWPORT_SWIZZLE_EXTENSION_NAME* = "VK_NV_viewport_swizzle" + # Extension: VK_EXT_discard_rectangles + VK_EXT_DISCARD_RECTANGLES_SPEC_VERSION* = 2 + VK_EXT_DISCARD_RECTANGLES_EXTENSION_NAME* = "VK_EXT_discard_rectangles" + # Extension: VK_EXT_conservative_rasterization + VK_EXT_CONSERVATIVE_RASTERIZATION_SPEC_VERSION* = 1 + VK_EXT_CONSERVATIVE_RASTERIZATION_EXTENSION_NAME* = "VK_EXT_conservative_rasterization" + # Extension: VK_EXT_depth_clip_enable + VK_EXT_DEPTH_CLIP_ENABLE_SPEC_VERSION* = 1 + VK_EXT_DEPTH_CLIP_ENABLE_EXTENSION_NAME* = "VK_EXT_depth_clip_enable" + # Extension: VK_EXT_swapchain_colorspace + VK_EXT_SWAPCHAIN_COLOR_SPACE_SPEC_VERSION* = 4 + VK_EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME* = "VK_EXT_swapchain_colorspace" + # Extension: VK_EXT_hdr_metadata + VK_EXT_HDR_METADATA_SPEC_VERSION* = 2 + VK_EXT_HDR_METADATA_EXTENSION_NAME* = "VK_EXT_hdr_metadata" + # Extension: VK_KHR_imageless_framebuffer + VK_KHR_IMAGELESS_FRAMEBUFFER_SPEC_VERSION* = 1 + VK_KHR_IMAGELESS_FRAMEBUFFER_EXTENSION_NAME* = "VK_KHR_imageless_framebuffer" + # Extension: VK_KHR_create_renderpass2 + VK_KHR_CREATE_RENDERPASS_2_SPEC_VERSION* = 1 + VK_KHR_CREATE_RENDERPASS_2_EXTENSION_NAME* = "VK_KHR_create_renderpass2" + # Extension: VK_IMG_relaxed_line_rasterization + VK_IMG_RELAXED_LINE_RASTERIZATION_SPEC_VERSION* = 1 + VK_IMG_RELAXED_LINE_RASTERIZATION_EXTENSION_NAME* = "VK_IMG_relaxed_line_rasterization" + # Extension: VK_KHR_shared_presentable_image + VK_KHR_SHARED_PRESENTABLE_IMAGE_SPEC_VERSION* = 1 + VK_KHR_SHARED_PRESENTABLE_IMAGE_EXTENSION_NAME* = "VK_KHR_shared_presentable_image" + # Extension: VK_KHR_external_fence_capabilities + VK_KHR_EXTERNAL_FENCE_CAPABILITIES_SPEC_VERSION* = 1 + VK_KHR_EXTERNAL_FENCE_CAPABILITIES_EXTENSION_NAME* = "VK_KHR_external_fence_capabilities" + # Extension: VK_KHR_external_fence + VK_KHR_EXTERNAL_FENCE_SPEC_VERSION* = 1 + VK_KHR_EXTERNAL_FENCE_EXTENSION_NAME* = "VK_KHR_external_fence" + # Extension: VK_KHR_external_fence_win32 + VK_KHR_EXTERNAL_FENCE_WIN32_SPEC_VERSION* = 1 + VK_KHR_EXTERNAL_FENCE_WIN32_EXTENSION_NAME* = "VK_KHR_external_fence_win32" + # Extension: VK_KHR_external_fence_fd + VK_KHR_EXTERNAL_FENCE_FD_SPEC_VERSION* = 1 + VK_KHR_EXTERNAL_FENCE_FD_EXTENSION_NAME* = "VK_KHR_external_fence_fd" + # Extension: VK_KHR_performance_query + VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION* = 1 + VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME* = "VK_KHR_performance_query" + # Extension: VK_KHR_maintenance2 + VK_KHR_MAINTENANCE_2_SPEC_VERSION* = 1 + VK_KHR_MAINTENANCE_2_EXTENSION_NAME* = "VK_KHR_maintenance2" + # Extension: VK_KHR_get_surface_capabilities2 + VK_KHR_GET_SURFACE_CAPABILITIES_2_SPEC_VERSION* = 1 + VK_KHR_GET_SURFACE_CAPABILITIES_2_EXTENSION_NAME* = "VK_KHR_get_surface_capabilities2" + # Extension: VK_KHR_variable_pointers + VK_KHR_VARIABLE_POINTERS_SPEC_VERSION* = 1 + VK_KHR_VARIABLE_POINTERS_EXTENSION_NAME* = "VK_KHR_variable_pointers" + # Extension: VK_KHR_get_display_properties2 + VK_KHR_GET_DISPLAY_PROPERTIES_2_SPEC_VERSION* = 1 + VK_KHR_GET_DISPLAY_PROPERTIES_2_EXTENSION_NAME* = "VK_KHR_get_display_properties2" + # Extension: VK_MVK_ios_surface + VK_MVK_IOS_SURFACE_SPEC_VERSION* = 3 + VK_MVK_IOS_SURFACE_EXTENSION_NAME* = "VK_MVK_ios_surface" + # Extension: VK_MVK_macos_surface + VK_MVK_MACOS_SURFACE_SPEC_VERSION* = 3 + VK_MVK_MACOS_SURFACE_EXTENSION_NAME* = "VK_MVK_macos_surface" + # Extension: VK_EXT_external_memory_dma_buf + VK_EXT_EXTERNAL_MEMORY_DMA_BUF_SPEC_VERSION* = 1 + VK_EXT_EXTERNAL_MEMORY_DMA_BUF_EXTENSION_NAME* = "VK_EXT_external_memory_dma_buf" + # Extension: VK_EXT_queue_family_foreign + VK_EXT_QUEUE_FAMILY_FOREIGN_SPEC_VERSION* = 1 + VK_EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME* = "VK_EXT_queue_family_foreign" + # Extension: VK_KHR_dedicated_allocation + VK_KHR_DEDICATED_ALLOCATION_SPEC_VERSION* = 3 + VK_KHR_DEDICATED_ALLOCATION_EXTENSION_NAME* = "VK_KHR_dedicated_allocation" + # Extension: VK_EXT_debug_utils + VK_EXT_DEBUG_UTILS_SPEC_VERSION* = 2 + VK_EXT_DEBUG_UTILS_EXTENSION_NAME* = "VK_EXT_debug_utils" + # Extension: VK_ANDROID_external_memory_android_hardware_buffer + VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_SPEC_VERSION* = 5 + VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME* = "VK_ANDROID_external_memory_android_hardware_buffer" + # Extension: VK_EXT_sampler_filter_minmax + VK_EXT_SAMPLER_FILTER_MINMAX_SPEC_VERSION* = 2 + VK_EXT_SAMPLER_FILTER_MINMAX_EXTENSION_NAME* = "VK_EXT_sampler_filter_minmax" + # Extension: VK_KHR_storage_buffer_storage_class + VK_KHR_STORAGE_BUFFER_STORAGE_CLASS_SPEC_VERSION* = 1 + VK_KHR_STORAGE_BUFFER_STORAGE_CLASS_EXTENSION_NAME* = "VK_KHR_storage_buffer_storage_class" + # Extension: VK_AMD_gpu_shader_int16 + VK_AMD_GPU_SHADER_INT16_SPEC_VERSION* = 2 + VK_AMD_GPU_SHADER_INT16_EXTENSION_NAME* = "VK_AMD_gpu_shader_int16" + # Extension: VK_AMDX_shader_enqueue + VK_AMDX_SHADER_ENQUEUE_SPEC_VERSION* = 1 + VK_AMDX_SHADER_ENQUEUE_EXTENSION_NAME* = "VK_AMDX_shader_enqueue" + # Extension: VK_AMD_mixed_attachment_samples + VK_AMD_MIXED_ATTACHMENT_SAMPLES_SPEC_VERSION* = 1 + VK_AMD_MIXED_ATTACHMENT_SAMPLES_EXTENSION_NAME* = "VK_AMD_mixed_attachment_samples" + # Extension: VK_AMD_shader_fragment_mask + VK_AMD_SHADER_FRAGMENT_MASK_SPEC_VERSION* = 1 + VK_AMD_SHADER_FRAGMENT_MASK_EXTENSION_NAME* = "VK_AMD_shader_fragment_mask" + # Extension: VK_EXT_inline_uniform_block + VK_EXT_INLINE_UNIFORM_BLOCK_SPEC_VERSION* = 1 + VK_EXT_INLINE_UNIFORM_BLOCK_EXTENSION_NAME* = "VK_EXT_inline_uniform_block" + # Extension: VK_EXT_shader_stencil_export + VK_EXT_SHADER_STENCIL_EXPORT_SPEC_VERSION* = 1 + VK_EXT_SHADER_STENCIL_EXPORT_EXTENSION_NAME* = "VK_EXT_shader_stencil_export" + # Extension: VK_EXT_sample_locations + VK_EXT_SAMPLE_LOCATIONS_SPEC_VERSION* = 1 + VK_EXT_SAMPLE_LOCATIONS_EXTENSION_NAME* = "VK_EXT_sample_locations" + # Extension: VK_KHR_relaxed_block_layout + VK_KHR_RELAXED_BLOCK_LAYOUT_SPEC_VERSION* = 1 + VK_KHR_RELAXED_BLOCK_LAYOUT_EXTENSION_NAME* = "VK_KHR_relaxed_block_layout" + # Extension: VK_KHR_get_memory_requirements2 + VK_KHR_GET_MEMORY_REQUIREMENTS_2_SPEC_VERSION* = 1 + VK_KHR_GET_MEMORY_REQUIREMENTS_2_EXTENSION_NAME* = "VK_KHR_get_memory_requirements2" + # Extension: VK_KHR_image_format_list + VK_KHR_IMAGE_FORMAT_LIST_SPEC_VERSION* = 1 + VK_KHR_IMAGE_FORMAT_LIST_EXTENSION_NAME* = "VK_KHR_image_format_list" + # Extension: VK_EXT_blend_operation_advanced + VK_EXT_BLEND_OPERATION_ADVANCED_SPEC_VERSION* = 2 + VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME* = "VK_EXT_blend_operation_advanced" + # Extension: VK_NV_fragment_coverage_to_color + VK_NV_FRAGMENT_COVERAGE_TO_COLOR_SPEC_VERSION* = 1 + VK_NV_FRAGMENT_COVERAGE_TO_COLOR_EXTENSION_NAME* = "VK_NV_fragment_coverage_to_color" + # Extension: VK_KHR_acceleration_structure + VK_KHR_ACCELERATION_STRUCTURE_SPEC_VERSION* = 13 + VK_KHR_ACCELERATION_STRUCTURE_EXTENSION_NAME* = "VK_KHR_acceleration_structure" + # Extension: VK_KHR_ray_tracing_pipeline + VK_KHR_RAY_TRACING_PIPELINE_SPEC_VERSION* = 1 + VK_KHR_RAY_TRACING_PIPELINE_EXTENSION_NAME* = "VK_KHR_ray_tracing_pipeline" + # Extension: VK_KHR_ray_query + VK_KHR_RAY_QUERY_SPEC_VERSION* = 1 + VK_KHR_RAY_QUERY_EXTENSION_NAME* = "VK_KHR_ray_query" + # Extension: VK_NV_framebuffer_mixed_samples + VK_NV_FRAMEBUFFER_MIXED_SAMPLES_SPEC_VERSION* = 1 + VK_NV_FRAMEBUFFER_MIXED_SAMPLES_EXTENSION_NAME* = "VK_NV_framebuffer_mixed_samples" + # Extension: VK_NV_fill_rectangle + VK_NV_FILL_RECTANGLE_SPEC_VERSION* = 1 + VK_NV_FILL_RECTANGLE_EXTENSION_NAME* = "VK_NV_fill_rectangle" + # Extension: VK_NV_shader_sm_builtins + VK_NV_SHADER_SM_BUILTINS_SPEC_VERSION* = 1 + VK_NV_SHADER_SM_BUILTINS_EXTENSION_NAME* = "VK_NV_shader_sm_builtins" + # Extension: VK_EXT_post_depth_coverage + VK_EXT_POST_DEPTH_COVERAGE_SPEC_VERSION* = 1 + VK_EXT_POST_DEPTH_COVERAGE_EXTENSION_NAME* = "VK_EXT_post_depth_coverage" + # Extension: VK_KHR_sampler_ycbcr_conversion + VK_KHR_SAMPLER_YCBCR_CONVERSION_SPEC_VERSION* = 14 + VK_KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME* = "VK_KHR_sampler_ycbcr_conversion" + # Extension: VK_KHR_bind_memory2 + VK_KHR_BIND_MEMORY_2_SPEC_VERSION* = 1 + VK_KHR_BIND_MEMORY_2_EXTENSION_NAME* = "VK_KHR_bind_memory2" + # Extension: VK_EXT_image_drm_format_modifier + VK_EXT_IMAGE_DRM_FORMAT_MODIFIER_SPEC_VERSION* = 2 + VK_EXT_IMAGE_DRM_FORMAT_MODIFIER_EXTENSION_NAME* = "VK_EXT_image_drm_format_modifier" + # Extension: VK_EXT_validation_cache + VK_EXT_VALIDATION_CACHE_SPEC_VERSION* = 1 + VK_EXT_VALIDATION_CACHE_EXTENSION_NAME* = "VK_EXT_validation_cache" + # Extension: VK_EXT_descriptor_indexing + VK_EXT_DESCRIPTOR_INDEXING_SPEC_VERSION* = 2 + VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME* = "VK_EXT_descriptor_indexing" + # Extension: VK_EXT_shader_viewport_index_layer + VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_SPEC_VERSION* = 1 + VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_EXTENSION_NAME* = "VK_EXT_shader_viewport_index_layer" + # Extension: VK_KHR_portability_subset + VK_KHR_PORTABILITY_SUBSET_SPEC_VERSION* = 1 + VK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME* = "VK_KHR_portability_subset" + # Extension: VK_NV_shading_rate_image + VK_NV_SHADING_RATE_IMAGE_SPEC_VERSION* = 3 + VK_NV_SHADING_RATE_IMAGE_EXTENSION_NAME* = "VK_NV_shading_rate_image" + # Extension: VK_NV_ray_tracing + VK_NV_RAY_TRACING_SPEC_VERSION* = 3 + VK_NV_RAY_TRACING_EXTENSION_NAME* = "VK_NV_ray_tracing" + # Extension: VK_NV_representative_fragment_test + VK_NV_REPRESENTATIVE_FRAGMENT_TEST_SPEC_VERSION* = 2 + VK_NV_REPRESENTATIVE_FRAGMENT_TEST_EXTENSION_NAME* = "VK_NV_representative_fragment_test" + # Extension: VK_KHR_maintenance3 + VK_KHR_MAINTENANCE_3_SPEC_VERSION* = 1 + VK_KHR_MAINTENANCE_3_EXTENSION_NAME* = "VK_KHR_maintenance3" + # Extension: VK_KHR_draw_indirect_count + VK_KHR_DRAW_INDIRECT_COUNT_SPEC_VERSION* = 1 + VK_KHR_DRAW_INDIRECT_COUNT_EXTENSION_NAME* = "VK_KHR_draw_indirect_count" + # Extension: VK_EXT_filter_cubic + VK_EXT_FILTER_CUBIC_SPEC_VERSION* = 3 + VK_EXT_FILTER_CUBIC_EXTENSION_NAME* = "VK_EXT_filter_cubic" + # Extension: VK_QCOM_render_pass_shader_resolve + VK_QCOM_RENDER_PASS_SHADER_RESOLVE_SPEC_VERSION* = 4 + VK_QCOM_RENDER_PASS_SHADER_RESOLVE_EXTENSION_NAME* = "VK_QCOM_render_pass_shader_resolve" + # Extension: VK_EXT_global_priority + VK_EXT_GLOBAL_PRIORITY_SPEC_VERSION* = 2 + VK_EXT_GLOBAL_PRIORITY_EXTENSION_NAME* = "VK_EXT_global_priority" + # Extension: VK_KHR_shader_subgroup_extended_types + VK_KHR_SHADER_SUBGROUP_EXTENDED_TYPES_SPEC_VERSION* = 1 + VK_KHR_SHADER_SUBGROUP_EXTENDED_TYPES_EXTENSION_NAME* = "VK_KHR_shader_subgroup_extended_types" + # Extension: VK_KHR_8bit_storage + VK_KHR_8BIT_STORAGE_SPEC_VERSION* = 1 + VK_KHR_8BIT_STORAGE_EXTENSION_NAME* = "VK_KHR_8bit_storage" + # Extension: VK_EXT_external_memory_host + VK_EXT_EXTERNAL_MEMORY_HOST_SPEC_VERSION* = 1 + VK_EXT_EXTERNAL_MEMORY_HOST_EXTENSION_NAME* = "VK_EXT_external_memory_host" + # Extension: VK_AMD_buffer_marker + VK_AMD_BUFFER_MARKER_SPEC_VERSION* = 1 + VK_AMD_BUFFER_MARKER_EXTENSION_NAME* = "VK_AMD_buffer_marker" + # Extension: VK_KHR_shader_atomic_int64 + VK_KHR_SHADER_ATOMIC_INT64_SPEC_VERSION* = 1 + VK_KHR_SHADER_ATOMIC_INT64_EXTENSION_NAME* = "VK_KHR_shader_atomic_int64" + # Extension: VK_KHR_shader_clock + VK_KHR_SHADER_CLOCK_SPEC_VERSION* = 1 + VK_KHR_SHADER_CLOCK_EXTENSION_NAME* = "VK_KHR_shader_clock" + # Extension: VK_AMD_pipeline_compiler_control + VK_AMD_PIPELINE_COMPILER_CONTROL_SPEC_VERSION* = 1 + VK_AMD_PIPELINE_COMPILER_CONTROL_EXTENSION_NAME* = "VK_AMD_pipeline_compiler_control" + # Extension: VK_EXT_calibrated_timestamps + VK_EXT_CALIBRATED_TIMESTAMPS_SPEC_VERSION* = 2 + VK_EXT_CALIBRATED_TIMESTAMPS_EXTENSION_NAME* = "VK_EXT_calibrated_timestamps" + # Extension: VK_AMD_shader_core_properties + VK_AMD_SHADER_CORE_PROPERTIES_SPEC_VERSION* = 2 + VK_AMD_SHADER_CORE_PROPERTIES_EXTENSION_NAME* = "VK_AMD_shader_core_properties" + # Extension: VK_KHR_video_decode_h265 + VK_KHR_VIDEO_DECODE_H265_SPEC_VERSION* = 8 + VK_KHR_VIDEO_DECODE_H265_EXTENSION_NAME* = "VK_KHR_video_decode_h265" + # Extension: VK_KHR_global_priority + VK_KHR_GLOBAL_PRIORITY_SPEC_VERSION* = 1 + VK_KHR_GLOBAL_PRIORITY_EXTENSION_NAME* = "VK_KHR_global_priority" + # Extension: VK_AMD_memory_overallocation_behavior + VK_AMD_MEMORY_OVERALLOCATION_BEHAVIOR_SPEC_VERSION* = 1 + VK_AMD_MEMORY_OVERALLOCATION_BEHAVIOR_EXTENSION_NAME* = "VK_AMD_memory_overallocation_behavior" + # Extension: VK_EXT_vertex_attribute_divisor + VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_SPEC_VERSION* = 3 + VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME* = "VK_EXT_vertex_attribute_divisor" + # Extension: VK_GGP_frame_token + VK_GGP_FRAME_TOKEN_SPEC_VERSION* = 1 + VK_GGP_FRAME_TOKEN_EXTENSION_NAME* = "VK_GGP_frame_token" + # Extension: VK_EXT_pipeline_creation_feedback + VK_EXT_PIPELINE_CREATION_FEEDBACK_SPEC_VERSION* = 1 + VK_EXT_PIPELINE_CREATION_FEEDBACK_EXTENSION_NAME* = "VK_EXT_pipeline_creation_feedback" + # Extension: VK_KHR_driver_properties + VK_KHR_DRIVER_PROPERTIES_SPEC_VERSION* = 1 + VK_KHR_DRIVER_PROPERTIES_EXTENSION_NAME* = "VK_KHR_driver_properties" + # Extension: VK_KHR_shader_float_controls + VK_KHR_SHADER_FLOAT_CONTROLS_SPEC_VERSION* = 4 + VK_KHR_SHADER_FLOAT_CONTROLS_EXTENSION_NAME* = "VK_KHR_shader_float_controls" + # Extension: VK_NV_shader_subgroup_partitioned + VK_NV_SHADER_SUBGROUP_PARTITIONED_SPEC_VERSION* = 1 + VK_NV_SHADER_SUBGROUP_PARTITIONED_EXTENSION_NAME* = "VK_NV_shader_subgroup_partitioned" + # Extension: VK_KHR_depth_stencil_resolve + VK_KHR_DEPTH_STENCIL_RESOLVE_SPEC_VERSION* = 1 + VK_KHR_DEPTH_STENCIL_RESOLVE_EXTENSION_NAME* = "VK_KHR_depth_stencil_resolve" + # Extension: VK_KHR_swapchain_mutable_format + VK_KHR_SWAPCHAIN_MUTABLE_FORMAT_SPEC_VERSION* = 1 + VK_KHR_SWAPCHAIN_MUTABLE_FORMAT_EXTENSION_NAME* = "VK_KHR_swapchain_mutable_format" + # Extension: VK_NV_compute_shader_derivatives + VK_NV_COMPUTE_SHADER_DERIVATIVES_SPEC_VERSION* = 1 + VK_NV_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME* = "VK_NV_compute_shader_derivatives" + # Extension: VK_NV_mesh_shader + VK_NV_MESH_SHADER_SPEC_VERSION* = 1 + VK_NV_MESH_SHADER_EXTENSION_NAME* = "VK_NV_mesh_shader" + # Extension: VK_NV_fragment_shader_barycentric + VK_NV_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION* = 1 + VK_NV_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME* = "VK_NV_fragment_shader_barycentric" + # Extension: VK_NV_shader_image_footprint + VK_NV_SHADER_IMAGE_FOOTPRINT_SPEC_VERSION* = 2 + VK_NV_SHADER_IMAGE_FOOTPRINT_EXTENSION_NAME* = "VK_NV_shader_image_footprint" + # Extension: VK_NV_scissor_exclusive + VK_NV_SCISSOR_EXCLUSIVE_SPEC_VERSION* = 2 + VK_NV_SCISSOR_EXCLUSIVE_EXTENSION_NAME* = "VK_NV_scissor_exclusive" + # Extension: VK_NV_device_diagnostic_checkpoints + VK_NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_SPEC_VERSION* = 2 + VK_NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_EXTENSION_NAME* = "VK_NV_device_diagnostic_checkpoints" + # Extension: VK_KHR_timeline_semaphore + VK_KHR_TIMELINE_SEMAPHORE_SPEC_VERSION* = 2 + VK_KHR_TIMELINE_SEMAPHORE_EXTENSION_NAME* = "VK_KHR_timeline_semaphore" + # Extension: VK_INTEL_shader_integer_functions2 + VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_SPEC_VERSION* = 1 + VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_EXTENSION_NAME* = "VK_INTEL_shader_integer_functions2" + # Extension: VK_INTEL_performance_query + VK_INTEL_PERFORMANCE_QUERY_SPEC_VERSION* = 2 + VK_INTEL_PERFORMANCE_QUERY_EXTENSION_NAME* = "VK_INTEL_performance_query" + # Extension: VK_KHR_vulkan_memory_model + VK_KHR_VULKAN_MEMORY_MODEL_SPEC_VERSION* = 3 + VK_KHR_VULKAN_MEMORY_MODEL_EXTENSION_NAME* = "VK_KHR_vulkan_memory_model" + # Extension: VK_EXT_pci_bus_info + VK_EXT_PCI_BUS_INFO_SPEC_VERSION* = 2 + VK_EXT_PCI_BUS_INFO_EXTENSION_NAME* = "VK_EXT_pci_bus_info" + # Extension: VK_AMD_display_native_hdr + VK_AMD_DISPLAY_NATIVE_HDR_SPEC_VERSION* = 1 + VK_AMD_DISPLAY_NATIVE_HDR_EXTENSION_NAME* = "VK_AMD_display_native_hdr" + # Extension: VK_FUCHSIA_imagepipe_surface + VK_FUCHSIA_IMAGEPIPE_SURFACE_SPEC_VERSION* = 1 + VK_FUCHSIA_IMAGEPIPE_SURFACE_EXTENSION_NAME* = "VK_FUCHSIA_imagepipe_surface" + # Extension: VK_KHR_shader_terminate_invocation + VK_KHR_SHADER_TERMINATE_INVOCATION_SPEC_VERSION* = 1 + VK_KHR_SHADER_TERMINATE_INVOCATION_EXTENSION_NAME* = "VK_KHR_shader_terminate_invocation" + # Extension: VK_EXT_metal_surface + VK_EXT_METAL_SURFACE_SPEC_VERSION* = 1 + VK_EXT_METAL_SURFACE_EXTENSION_NAME* = "VK_EXT_metal_surface" + # Extension: VK_EXT_fragment_density_map + VK_EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION* = 2 + VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME* = "VK_EXT_fragment_density_map" + # Extension: VK_EXT_scalar_block_layout + VK_EXT_SCALAR_BLOCK_LAYOUT_SPEC_VERSION* = 1 + VK_EXT_SCALAR_BLOCK_LAYOUT_EXTENSION_NAME* = "VK_EXT_scalar_block_layout" + # Extension: VK_GOOGLE_hlsl_functionality1 + VK_GOOGLE_HLSL_FUNCTIONALITY_1_SPEC_VERSION* = 1 + VK_GOOGLE_HLSL_FUNCTIONALITY_1_EXTENSION_NAME* = "VK_GOOGLE_hlsl_functionality1" + # Extension: VK_GOOGLE_decorate_string + VK_GOOGLE_DECORATE_STRING_SPEC_VERSION* = 1 + VK_GOOGLE_DECORATE_STRING_EXTENSION_NAME* = "VK_GOOGLE_decorate_string" + # Extension: VK_EXT_subgroup_size_control + VK_EXT_SUBGROUP_SIZE_CONTROL_SPEC_VERSION* = 2 + VK_EXT_SUBGROUP_SIZE_CONTROL_EXTENSION_NAME* = "VK_EXT_subgroup_size_control" + # Extension: VK_KHR_fragment_shading_rate + VK_KHR_FRAGMENT_SHADING_RATE_SPEC_VERSION* = 2 + VK_KHR_FRAGMENT_SHADING_RATE_EXTENSION_NAME* = "VK_KHR_fragment_shading_rate" + # Extension: VK_AMD_shader_core_properties2 + VK_AMD_SHADER_CORE_PROPERTIES_2_SPEC_VERSION* = 1 + VK_AMD_SHADER_CORE_PROPERTIES_2_EXTENSION_NAME* = "VK_AMD_shader_core_properties2" + # Extension: VK_AMD_device_coherent_memory + VK_AMD_DEVICE_COHERENT_MEMORY_SPEC_VERSION* = 1 + VK_AMD_DEVICE_COHERENT_MEMORY_EXTENSION_NAME* = "VK_AMD_device_coherent_memory" + # Extension: VK_KHR_dynamic_rendering_local_read + VK_KHR_DYNAMIC_RENDERING_LOCAL_READ_SPEC_VERSION* = 1 + VK_KHR_DYNAMIC_RENDERING_LOCAL_READ_EXTENSION_NAME* = "VK_KHR_dynamic_rendering_local_read" + # Extension: VK_EXT_shader_image_atomic_int64 + VK_EXT_SHADER_IMAGE_ATOMIC_INT64_SPEC_VERSION* = 1 + VK_EXT_SHADER_IMAGE_ATOMIC_INT64_EXTENSION_NAME* = "VK_EXT_shader_image_atomic_int64" + # Extension: VK_KHR_shader_quad_control + VK_KHR_SHADER_QUAD_CONTROL_SPEC_VERSION* = 1 + VK_KHR_SHADER_QUAD_CONTROL_EXTENSION_NAME* = "VK_KHR_shader_quad_control" + # Extension: VK_KHR_spirv_1_4 + VK_KHR_SPIRV_1_4_SPEC_VERSION* = 1 + VK_KHR_SPIRV_1_4_EXTENSION_NAME* = "VK_KHR_spirv_1_4" + # Extension: VK_EXT_memory_budget + VK_EXT_MEMORY_BUDGET_SPEC_VERSION* = 1 + VK_EXT_MEMORY_BUDGET_EXTENSION_NAME* = "VK_EXT_memory_budget" + # Extension: VK_EXT_memory_priority + VK_EXT_MEMORY_PRIORITY_SPEC_VERSION* = 1 + VK_EXT_MEMORY_PRIORITY_EXTENSION_NAME* = "VK_EXT_memory_priority" + # Extension: VK_KHR_surface_protected_capabilities + VK_KHR_SURFACE_PROTECTED_CAPABILITIES_SPEC_VERSION* = 1 + VK_KHR_SURFACE_PROTECTED_CAPABILITIES_EXTENSION_NAME* = "VK_KHR_surface_protected_capabilities" + # Extension: VK_NV_dedicated_allocation_image_aliasing + VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_SPEC_VERSION* = 1 + VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_EXTENSION_NAME* = "VK_NV_dedicated_allocation_image_aliasing" + # Extension: VK_KHR_separate_depth_stencil_layouts + VK_KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_SPEC_VERSION* = 1 + VK_KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_EXTENSION_NAME* = "VK_KHR_separate_depth_stencil_layouts" + # Extension: VK_EXT_buffer_device_address + VK_EXT_BUFFER_DEVICE_ADDRESS_SPEC_VERSION* = 2 + VK_EXT_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME* = "VK_EXT_buffer_device_address" + # Extension: VK_EXT_tooling_info + VK_EXT_TOOLING_INFO_SPEC_VERSION* = 1 + VK_EXT_TOOLING_INFO_EXTENSION_NAME* = "VK_EXT_tooling_info" + # Extension: VK_EXT_separate_stencil_usage + VK_EXT_SEPARATE_STENCIL_USAGE_SPEC_VERSION* = 1 + VK_EXT_SEPARATE_STENCIL_USAGE_EXTENSION_NAME* = "VK_EXT_separate_stencil_usage" + # Extension: VK_EXT_validation_features + VK_EXT_VALIDATION_FEATURES_SPEC_VERSION* = 6 + VK_EXT_VALIDATION_FEATURES_EXTENSION_NAME* = "VK_EXT_validation_features" + # Extension: VK_KHR_present_wait + VK_KHR_PRESENT_WAIT_SPEC_VERSION* = 1 + VK_KHR_PRESENT_WAIT_EXTENSION_NAME* = "VK_KHR_present_wait" + # Extension: VK_NV_cooperative_matrix + VK_NV_COOPERATIVE_MATRIX_SPEC_VERSION* = 1 + VK_NV_COOPERATIVE_MATRIX_EXTENSION_NAME* = "VK_NV_cooperative_matrix" + # Extension: VK_NV_coverage_reduction_mode + VK_NV_COVERAGE_REDUCTION_MODE_SPEC_VERSION* = 1 + VK_NV_COVERAGE_REDUCTION_MODE_EXTENSION_NAME* = "VK_NV_coverage_reduction_mode" + # Extension: VK_EXT_fragment_shader_interlock + VK_EXT_FRAGMENT_SHADER_INTERLOCK_SPEC_VERSION* = 1 + VK_EXT_FRAGMENT_SHADER_INTERLOCK_EXTENSION_NAME* = "VK_EXT_fragment_shader_interlock" + # Extension: VK_EXT_ycbcr_image_arrays + VK_EXT_YCBCR_IMAGE_ARRAYS_SPEC_VERSION* = 1 + VK_EXT_YCBCR_IMAGE_ARRAYS_EXTENSION_NAME* = "VK_EXT_ycbcr_image_arrays" + # Extension: VK_KHR_uniform_buffer_standard_layout + VK_KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_SPEC_VERSION* = 1 + VK_KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_EXTENSION_NAME* = "VK_KHR_uniform_buffer_standard_layout" + # Extension: VK_EXT_provoking_vertex + VK_EXT_PROVOKING_VERTEX_SPEC_VERSION* = 1 + VK_EXT_PROVOKING_VERTEX_EXTENSION_NAME* = "VK_EXT_provoking_vertex" + # Extension: VK_EXT_full_screen_exclusive + VK_EXT_FULL_SCREEN_EXCLUSIVE_SPEC_VERSION* = 4 + VK_EXT_FULL_SCREEN_EXCLUSIVE_EXTENSION_NAME* = "VK_EXT_full_screen_exclusive" + # Extension: VK_EXT_headless_surface + VK_EXT_HEADLESS_SURFACE_SPEC_VERSION* = 1 + VK_EXT_HEADLESS_SURFACE_EXTENSION_NAME* = "VK_EXT_headless_surface" + # Extension: VK_KHR_buffer_device_address + VK_KHR_BUFFER_DEVICE_ADDRESS_SPEC_VERSION* = 1 + VK_KHR_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME* = "VK_KHR_buffer_device_address" + # Extension: VK_EXT_line_rasterization + VK_EXT_LINE_RASTERIZATION_SPEC_VERSION* = 1 + VK_EXT_LINE_RASTERIZATION_EXTENSION_NAME* = "VK_EXT_line_rasterization" + # Extension: VK_EXT_shader_atomic_float + VK_EXT_SHADER_ATOMIC_FLOAT_SPEC_VERSION* = 1 + VK_EXT_SHADER_ATOMIC_FLOAT_EXTENSION_NAME* = "VK_EXT_shader_atomic_float" + # Extension: VK_EXT_host_query_reset + VK_EXT_HOST_QUERY_RESET_SPEC_VERSION* = 1 + VK_EXT_HOST_QUERY_RESET_EXTENSION_NAME* = "VK_EXT_host_query_reset" + # Extension: VK_EXT_index_type_uint8 + VK_EXT_INDEX_TYPE_UINT8_SPEC_VERSION* = 1 + VK_EXT_INDEX_TYPE_UINT8_EXTENSION_NAME* = "VK_EXT_index_type_uint8" + # Extension: VK_EXT_extended_dynamic_state + VK_EXT_EXTENDED_DYNAMIC_STATE_SPEC_VERSION* = 1 + VK_EXT_EXTENDED_DYNAMIC_STATE_EXTENSION_NAME* = "VK_EXT_extended_dynamic_state" + # Extension: VK_KHR_deferred_host_operations + VK_KHR_DEFERRED_HOST_OPERATIONS_SPEC_VERSION* = 4 + VK_KHR_DEFERRED_HOST_OPERATIONS_EXTENSION_NAME* = "VK_KHR_deferred_host_operations" + # Extension: VK_KHR_pipeline_executable_properties + VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_SPEC_VERSION* = 1 + VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_EXTENSION_NAME* = "VK_KHR_pipeline_executable_properties" + # Extension: VK_EXT_host_image_copy + VK_EXT_HOST_IMAGE_COPY_SPEC_VERSION* = 1 + VK_EXT_HOST_IMAGE_COPY_EXTENSION_NAME* = "VK_EXT_host_image_copy" + # Extension: VK_KHR_map_memory2 + VK_KHR_MAP_MEMORY_2_SPEC_VERSION* = 1 + VK_KHR_MAP_MEMORY_2_EXTENSION_NAME* = "VK_KHR_map_memory2" + # Extension: VK_EXT_map_memory_placed + VK_EXT_MAP_MEMORY_PLACED_SPEC_VERSION* = 1 + VK_EXT_MAP_MEMORY_PLACED_EXTENSION_NAME* = "VK_EXT_map_memory_placed" + # Extension: VK_EXT_shader_atomic_float2 + VK_EXT_SHADER_ATOMIC_FLOAT_2_SPEC_VERSION* = 1 + VK_EXT_SHADER_ATOMIC_FLOAT_2_EXTENSION_NAME* = "VK_EXT_shader_atomic_float2" + # Extension: VK_EXT_surface_maintenance1 + VK_EXT_SURFACE_MAINTENANCE_1_SPEC_VERSION* = 1 + VK_EXT_SURFACE_MAINTENANCE_1_EXTENSION_NAME* = "VK_EXT_surface_maintenance1" + # Extension: VK_EXT_swapchain_maintenance1 + VK_EXT_SWAPCHAIN_MAINTENANCE_1_SPEC_VERSION* = 1 + VK_EXT_SWAPCHAIN_MAINTENANCE_1_EXTENSION_NAME* = "VK_EXT_swapchain_maintenance1" + # Extension: VK_EXT_shader_demote_to_helper_invocation + VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_SPEC_VERSION* = 1 + VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_EXTENSION_NAME* = "VK_EXT_shader_demote_to_helper_invocation" + # Extension: VK_NV_device_generated_commands + VK_NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION* = 3 + VK_NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME* = "VK_NV_device_generated_commands" + # Extension: VK_NV_inherited_viewport_scissor + VK_NV_INHERITED_VIEWPORT_SCISSOR_SPEC_VERSION* = 1 + VK_NV_INHERITED_VIEWPORT_SCISSOR_EXTENSION_NAME* = "VK_NV_inherited_viewport_scissor" + # Extension: VK_KHR_shader_integer_dot_product + VK_KHR_SHADER_INTEGER_DOT_PRODUCT_SPEC_VERSION* = 1 + VK_KHR_SHADER_INTEGER_DOT_PRODUCT_EXTENSION_NAME* = "VK_KHR_shader_integer_dot_product" + # Extension: VK_EXT_texel_buffer_alignment + VK_EXT_TEXEL_BUFFER_ALIGNMENT_SPEC_VERSION* = 1 + VK_EXT_TEXEL_BUFFER_ALIGNMENT_EXTENSION_NAME* = "VK_EXT_texel_buffer_alignment" + # Extension: VK_QCOM_render_pass_transform + VK_QCOM_RENDER_PASS_TRANSFORM_SPEC_VERSION* = 4 + VK_QCOM_RENDER_PASS_TRANSFORM_EXTENSION_NAME* = "VK_QCOM_render_pass_transform" + # Extension: VK_EXT_depth_bias_control + VK_EXT_DEPTH_BIAS_CONTROL_SPEC_VERSION* = 1 + VK_EXT_DEPTH_BIAS_CONTROL_EXTENSION_NAME* = "VK_EXT_depth_bias_control" + # Extension: VK_EXT_device_memory_report + VK_EXT_DEVICE_MEMORY_REPORT_SPEC_VERSION* = 2 + VK_EXT_DEVICE_MEMORY_REPORT_EXTENSION_NAME* = "VK_EXT_device_memory_report" + # Extension: VK_EXT_acquire_drm_display + VK_EXT_ACQUIRE_DRM_DISPLAY_SPEC_VERSION* = 1 + VK_EXT_ACQUIRE_DRM_DISPLAY_EXTENSION_NAME* = "VK_EXT_acquire_drm_display" + # Extension: VK_EXT_robustness2 + VK_EXT_ROBUSTNESS_2_SPEC_VERSION* = 1 + VK_EXT_ROBUSTNESS_2_EXTENSION_NAME* = "VK_EXT_robustness2" + # Extension: VK_EXT_custom_border_color + VK_EXT_CUSTOM_BORDER_COLOR_SPEC_VERSION* = 12 + VK_EXT_CUSTOM_BORDER_COLOR_EXTENSION_NAME* = "VK_EXT_custom_border_color" + # Extension: VK_GOOGLE_user_type + VK_GOOGLE_USER_TYPE_SPEC_VERSION* = 1 + VK_GOOGLE_USER_TYPE_EXTENSION_NAME* = "VK_GOOGLE_user_type" + # Extension: VK_KHR_pipeline_library + VK_KHR_PIPELINE_LIBRARY_SPEC_VERSION* = 1 + VK_KHR_PIPELINE_LIBRARY_EXTENSION_NAME* = "VK_KHR_pipeline_library" + # Extension: VK_NV_present_barrier + VK_NV_PRESENT_BARRIER_SPEC_VERSION* = 1 + VK_NV_PRESENT_BARRIER_EXTENSION_NAME* = "VK_NV_present_barrier" + # Extension: VK_KHR_shader_non_semantic_info + VK_KHR_SHADER_NON_SEMANTIC_INFO_SPEC_VERSION* = 1 + VK_KHR_SHADER_NON_SEMANTIC_INFO_EXTENSION_NAME* = "VK_KHR_shader_non_semantic_info" + # Extension: VK_KHR_present_id + VK_KHR_PRESENT_ID_SPEC_VERSION* = 1 + VK_KHR_PRESENT_ID_EXTENSION_NAME* = "VK_KHR_present_id" + # Extension: VK_EXT_private_data + VK_EXT_PRIVATE_DATA_SPEC_VERSION* = 1 + VK_EXT_PRIVATE_DATA_EXTENSION_NAME* = "VK_EXT_private_data" + # Extension: VK_EXT_pipeline_creation_cache_control + VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_SPEC_VERSION* = 3 + VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_EXTENSION_NAME* = "VK_EXT_pipeline_creation_cache_control" + # Extension: VK_KHR_video_encode_queue + VK_KHR_VIDEO_ENCODE_QUEUE_SPEC_VERSION* = 12 + VK_KHR_VIDEO_ENCODE_QUEUE_EXTENSION_NAME* = "VK_KHR_video_encode_queue" + # Extension: VK_NV_device_diagnostics_config + VK_NV_DEVICE_DIAGNOSTICS_CONFIG_SPEC_VERSION* = 2 + VK_NV_DEVICE_DIAGNOSTICS_CONFIG_EXTENSION_NAME* = "VK_NV_device_diagnostics_config" + # Extension: VK_QCOM_render_pass_store_ops + VK_QCOM_RENDER_PASS_STORE_OPS_SPEC_VERSION* = 2 + VK_QCOM_RENDER_PASS_STORE_OPS_EXTENSION_NAME* = "VK_QCOM_render_pass_store_ops" + # Extension: VK_NV_cuda_kernel_launch + VK_NV_CUDA_KERNEL_LAUNCH_SPEC_VERSION* = 2 + VK_NV_CUDA_KERNEL_LAUNCH_EXTENSION_NAME* = "VK_NV_cuda_kernel_launch" + # Extension: VK_KHR_object_refresh + VK_KHR_OBJECT_REFRESH_SPEC_VERSION* = 1 + VK_KHR_OBJECT_REFRESH_EXTENSION_NAME* = "VK_KHR_object_refresh" + # Extension: VK_NV_low_latency + VK_NV_LOW_LATENCY_SPEC_VERSION* = 1 + VK_NV_LOW_LATENCY_EXTENSION_NAME* = "VK_NV_low_latency" + # Extension: VK_EXT_metal_objects + VK_EXT_METAL_OBJECTS_SPEC_VERSION* = 1 + VK_EXT_METAL_OBJECTS_EXTENSION_NAME* = "VK_EXT_metal_objects" + # Extension: VK_KHR_synchronization2 + VK_KHR_SYNCHRONIZATION_2_SPEC_VERSION* = 1 + VK_KHR_SYNCHRONIZATION_2_EXTENSION_NAME* = "VK_KHR_synchronization2" + # Extension: VK_EXT_descriptor_buffer + VK_EXT_DESCRIPTOR_BUFFER_SPEC_VERSION* = 1 + VK_EXT_DESCRIPTOR_BUFFER_EXTENSION_NAME* = "VK_EXT_descriptor_buffer" + # Extension: VK_EXT_graphics_pipeline_library + VK_EXT_GRAPHICS_PIPELINE_LIBRARY_SPEC_VERSION* = 1 + VK_EXT_GRAPHICS_PIPELINE_LIBRARY_EXTENSION_NAME* = "VK_EXT_graphics_pipeline_library" + # Extension: VK_AMD_shader_early_and_late_fragment_tests + VK_AMD_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_SPEC_VERSION* = 1 + VK_AMD_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_EXTENSION_NAME* = "VK_AMD_shader_early_and_late_fragment_tests" + # Extension: VK_KHR_fragment_shader_barycentric + VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION* = 1 + VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME* = "VK_KHR_fragment_shader_barycentric" + # Extension: VK_KHR_shader_subgroup_uniform_control_flow + VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_SPEC_VERSION* = 1 + VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME* = "VK_KHR_shader_subgroup_uniform_control_flow" + # Extension: VK_KHR_zero_initialize_workgroup_memory + VK_KHR_ZERO_INITIALIZE_WORKGROUP_MEMORY_SPEC_VERSION* = 1 + VK_KHR_ZERO_INITIALIZE_WORKGROUP_MEMORY_EXTENSION_NAME* = "VK_KHR_zero_initialize_workgroup_memory" + # Extension: VK_NV_fragment_shading_rate_enums + VK_NV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION* = 1 + VK_NV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME* = "VK_NV_fragment_shading_rate_enums" + # Extension: VK_NV_ray_tracing_motion_blur + VK_NV_RAY_TRACING_MOTION_BLUR_SPEC_VERSION* = 1 + VK_NV_RAY_TRACING_MOTION_BLUR_EXTENSION_NAME* = "VK_NV_ray_tracing_motion_blur" + # Extension: VK_EXT_mesh_shader + VK_EXT_MESH_SHADER_SPEC_VERSION* = 1 + VK_EXT_MESH_SHADER_EXTENSION_NAME* = "VK_EXT_mesh_shader" + # Extension: VK_EXT_ycbcr_2plane_444_formats + VK_EXT_YCBCR_2PLANE_444_FORMATS_SPEC_VERSION* = 1 + VK_EXT_YCBCR_2PLANE_444_FORMATS_EXTENSION_NAME* = "VK_EXT_ycbcr_2plane_444_formats" + # Extension: VK_EXT_fragment_density_map2 + VK_EXT_FRAGMENT_DENSITY_MAP_2_SPEC_VERSION* = 1 + VK_EXT_FRAGMENT_DENSITY_MAP_2_EXTENSION_NAME* = "VK_EXT_fragment_density_map2" + # Extension: VK_QCOM_rotated_copy_commands + VK_QCOM_ROTATED_COPY_COMMANDS_SPEC_VERSION* = 2 + VK_QCOM_ROTATED_COPY_COMMANDS_EXTENSION_NAME* = "VK_QCOM_rotated_copy_commands" + # Extension: VK_EXT_image_robustness + VK_EXT_IMAGE_ROBUSTNESS_SPEC_VERSION* = 1 + VK_EXT_IMAGE_ROBUSTNESS_EXTENSION_NAME* = "VK_EXT_image_robustness" + # Extension: VK_KHR_workgroup_memory_explicit_layout + VK_KHR_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_SPEC_VERSION* = 1 + VK_KHR_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_EXTENSION_NAME* = "VK_KHR_workgroup_memory_explicit_layout" + # Extension: VK_KHR_copy_commands2 + VK_KHR_COPY_COMMANDS_2_SPEC_VERSION* = 1 + VK_KHR_COPY_COMMANDS_2_EXTENSION_NAME* = "VK_KHR_copy_commands2" + # Extension: VK_EXT_image_compression_control + VK_EXT_IMAGE_COMPRESSION_CONTROL_SPEC_VERSION* = 1 + VK_EXT_IMAGE_COMPRESSION_CONTROL_EXTENSION_NAME* = "VK_EXT_image_compression_control" + # Extension: VK_EXT_attachment_feedback_loop_layout + VK_EXT_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_SPEC_VERSION* = 2 + VK_EXT_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_EXTENSION_NAME* = "VK_EXT_attachment_feedback_loop_layout" + # Extension: VK_EXT_4444_formats + VK_EXT_4444_FORMATS_SPEC_VERSION* = 1 + VK_EXT_4444_FORMATS_EXTENSION_NAME* = "VK_EXT_4444_formats" + # Extension: VK_EXT_device_fault + VK_EXT_DEVICE_FAULT_SPEC_VERSION* = 2 + VK_EXT_DEVICE_FAULT_EXTENSION_NAME* = "VK_EXT_device_fault" + # Extension: VK_ARM_rasterization_order_attachment_access + VK_ARM_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_SPEC_VERSION* = 1 + VK_ARM_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_EXTENSION_NAME* = "VK_ARM_rasterization_order_attachment_access" + # Extension: VK_EXT_rgba10x6_formats + VK_EXT_RGBA10X6_FORMATS_SPEC_VERSION* = 1 + VK_EXT_RGBA10X6_FORMATS_EXTENSION_NAME* = "VK_EXT_rgba10x6_formats" + # Extension: VK_NV_acquire_winrt_display + VK_NV_ACQUIRE_WINRT_DISPLAY_SPEC_VERSION* = 1 + VK_NV_ACQUIRE_WINRT_DISPLAY_EXTENSION_NAME* = "VK_NV_acquire_winrt_display" + # Extension: VK_EXT_directfb_surface + VK_EXT_DIRECTFB_SURFACE_SPEC_VERSION* = 1 + VK_EXT_DIRECTFB_SURFACE_EXTENSION_NAME* = "VK_EXT_directfb_surface" + # Extension: VK_VALVE_mutable_descriptor_type + VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION* = 1 + VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME* = "VK_VALVE_mutable_descriptor_type" + # Extension: VK_EXT_vertex_input_dynamic_state + VK_EXT_VERTEX_INPUT_DYNAMIC_STATE_SPEC_VERSION* = 2 + VK_EXT_VERTEX_INPUT_DYNAMIC_STATE_EXTENSION_NAME* = "VK_EXT_vertex_input_dynamic_state" + # Extension: VK_EXT_physical_device_drm + VK_EXT_PHYSICAL_DEVICE_DRM_SPEC_VERSION* = 1 + VK_EXT_PHYSICAL_DEVICE_DRM_EXTENSION_NAME* = "VK_EXT_physical_device_drm" + # Extension: VK_EXT_device_address_binding_report + VK_EXT_DEVICE_ADDRESS_BINDING_REPORT_SPEC_VERSION* = 1 + VK_EXT_DEVICE_ADDRESS_BINDING_REPORT_EXTENSION_NAME* = "VK_EXT_device_address_binding_report" + # Extension: VK_EXT_depth_clip_control + VK_EXT_DEPTH_CLIP_CONTROL_SPEC_VERSION* = 1 + VK_EXT_DEPTH_CLIP_CONTROL_EXTENSION_NAME* = "VK_EXT_depth_clip_control" + # Extension: VK_EXT_primitive_topology_list_restart + VK_EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_SPEC_VERSION* = 1 + VK_EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_EXTENSION_NAME* = "VK_EXT_primitive_topology_list_restart" + # Extension: VK_KHR_format_feature_flags2 + VK_KHR_FORMAT_FEATURE_FLAGS_2_SPEC_VERSION* = 2 + VK_KHR_FORMAT_FEATURE_FLAGS_2_EXTENSION_NAME* = "VK_KHR_format_feature_flags2" + # Extension: VK_FUCHSIA_external_memory + VK_FUCHSIA_EXTERNAL_MEMORY_SPEC_VERSION* = 1 + VK_FUCHSIA_EXTERNAL_MEMORY_EXTENSION_NAME* = "VK_FUCHSIA_external_memory" + # Extension: VK_FUCHSIA_external_semaphore + VK_FUCHSIA_EXTERNAL_SEMAPHORE_SPEC_VERSION* = 1 + VK_FUCHSIA_EXTERNAL_SEMAPHORE_EXTENSION_NAME* = "VK_FUCHSIA_external_semaphore" + # Extension: VK_FUCHSIA_buffer_collection + VK_FUCHSIA_BUFFER_COLLECTION_SPEC_VERSION* = 2 + VK_FUCHSIA_BUFFER_COLLECTION_EXTENSION_NAME* = "VK_FUCHSIA_buffer_collection" + # Extension: VK_HUAWEI_subpass_shading + VK_HUAWEI_SUBPASS_SHADING_SPEC_VERSION* = 3 + VK_HUAWEI_SUBPASS_SHADING_EXTENSION_NAME* = "VK_HUAWEI_subpass_shading" + # Extension: VK_HUAWEI_invocation_mask + VK_HUAWEI_INVOCATION_MASK_SPEC_VERSION* = 1 + VK_HUAWEI_INVOCATION_MASK_EXTENSION_NAME* = "VK_HUAWEI_invocation_mask" + # Extension: VK_NV_external_memory_rdma + VK_NV_EXTERNAL_MEMORY_RDMA_SPEC_VERSION* = 1 + VK_NV_EXTERNAL_MEMORY_RDMA_EXTENSION_NAME* = "VK_NV_external_memory_rdma" + # Extension: VK_EXT_pipeline_properties + VK_EXT_PIPELINE_PROPERTIES_SPEC_VERSION* = 1 + VK_EXT_PIPELINE_PROPERTIES_EXTENSION_NAME* = "VK_EXT_pipeline_properties" + # Extension: VK_NV_external_sci_sync + VK_NV_EXTERNAL_SCI_SYNC_SPEC_VERSION* = 2 + VK_NV_EXTERNAL_SCI_SYNC_EXTENSION_NAME* = "VK_NV_external_sci_sync" + # Extension: VK_NV_external_memory_sci_buf + VK_NV_EXTERNAL_MEMORY_SCI_BUF_SPEC_VERSION* = 2 + VK_NV_EXTERNAL_MEMORY_SCI_BUF_EXTENSION_NAME* = "VK_NV_external_memory_sci_buf" + # Extension: VK_EXT_frame_boundary + VK_EXT_FRAME_BOUNDARY_SPEC_VERSION* = 1 + VK_EXT_FRAME_BOUNDARY_EXTENSION_NAME* = "VK_EXT_frame_boundary" + # Extension: VK_EXT_multisampled_render_to_single_sampled + VK_EXT_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_SPEC_VERSION* = 1 + VK_EXT_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_EXTENSION_NAME* = "VK_EXT_multisampled_render_to_single_sampled" + # Extension: VK_EXT_extended_dynamic_state2 + VK_EXT_EXTENDED_DYNAMIC_STATE_2_SPEC_VERSION* = 1 + VK_EXT_EXTENDED_DYNAMIC_STATE_2_EXTENSION_NAME* = "VK_EXT_extended_dynamic_state2" + # Extension: VK_QNX_screen_surface + VK_QNX_SCREEN_SURFACE_SPEC_VERSION* = 1 + VK_QNX_SCREEN_SURFACE_EXTENSION_NAME* = "VK_QNX_screen_surface" + # Extension: VK_EXT_color_write_enable + VK_EXT_COLOR_WRITE_ENABLE_SPEC_VERSION* = 1 + VK_EXT_COLOR_WRITE_ENABLE_EXTENSION_NAME* = "VK_EXT_color_write_enable" + # Extension: VK_EXT_primitives_generated_query + VK_EXT_PRIMITIVES_GENERATED_QUERY_SPEC_VERSION* = 1 + VK_EXT_PRIMITIVES_GENERATED_QUERY_EXTENSION_NAME* = "VK_EXT_primitives_generated_query" + # Extension: VK_KHR_ray_tracing_maintenance1 + VK_KHR_RAY_TRACING_MAINTENANCE_1_SPEC_VERSION* = 1 + VK_KHR_RAY_TRACING_MAINTENANCE_1_EXTENSION_NAME* = "VK_KHR_ray_tracing_maintenance1" + # Extension: VK_EXT_global_priority_query + VK_EXT_GLOBAL_PRIORITY_QUERY_SPEC_VERSION* = 1 + VK_EXT_GLOBAL_PRIORITY_QUERY_EXTENSION_NAME* = "VK_EXT_global_priority_query" + # Extension: VK_EXT_image_view_min_lod + VK_EXT_IMAGE_VIEW_MIN_LOD_SPEC_VERSION* = 1 + VK_EXT_IMAGE_VIEW_MIN_LOD_EXTENSION_NAME* = "VK_EXT_image_view_min_lod" + # Extension: VK_EXT_multi_draw + VK_EXT_MULTI_DRAW_SPEC_VERSION* = 1 + VK_EXT_MULTI_DRAW_EXTENSION_NAME* = "VK_EXT_multi_draw" + # Extension: VK_EXT_image_2d_view_of_3d + VK_EXT_IMAGE_2D_VIEW_OF_3D_SPEC_VERSION* = 1 + VK_EXT_IMAGE_2D_VIEW_OF_3D_EXTENSION_NAME* = "VK_EXT_image_2d_view_of_3d" + # Extension: VK_KHR_portability_enumeration + VK_KHR_PORTABILITY_ENUMERATION_SPEC_VERSION* = 1 + VK_KHR_PORTABILITY_ENUMERATION_EXTENSION_NAME* = "VK_KHR_portability_enumeration" + # Extension: VK_EXT_shader_tile_image + VK_EXT_SHADER_TILE_IMAGE_SPEC_VERSION* = 1 + VK_EXT_SHADER_TILE_IMAGE_EXTENSION_NAME* = "VK_EXT_shader_tile_image" + # Extension: VK_EXT_opacity_micromap + VK_EXT_OPACITY_MICROMAP_SPEC_VERSION* = 2 + VK_EXT_OPACITY_MICROMAP_EXTENSION_NAME* = "VK_EXT_opacity_micromap" + # Extension: VK_NV_displacement_micromap + VK_NV_DISPLACEMENT_MICROMAP_SPEC_VERSION* = 2 + VK_NV_DISPLACEMENT_MICROMAP_EXTENSION_NAME* = "VK_NV_displacement_micromap" + # Extension: VK_EXT_load_store_op_none + VK_EXT_LOAD_STORE_OP_NONE_SPEC_VERSION* = 1 + VK_EXT_LOAD_STORE_OP_NONE_EXTENSION_NAME* = "VK_EXT_load_store_op_none" + # Extension: VK_HUAWEI_cluster_culling_shader + VK_HUAWEI_CLUSTER_CULLING_SHADER_SPEC_VERSION* = 3 + VK_HUAWEI_CLUSTER_CULLING_SHADER_EXTENSION_NAME* = "VK_HUAWEI_cluster_culling_shader" + # Extension: VK_EXT_border_color_swizzle + VK_EXT_BORDER_COLOR_SWIZZLE_SPEC_VERSION* = 1 + VK_EXT_BORDER_COLOR_SWIZZLE_EXTENSION_NAME* = "VK_EXT_border_color_swizzle" + # Extension: VK_EXT_pageable_device_local_memory + VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_SPEC_VERSION* = 1 + VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_EXTENSION_NAME* = "VK_EXT_pageable_device_local_memory" + # Extension: VK_KHR_maintenance4 + VK_KHR_MAINTENANCE_4_SPEC_VERSION* = 2 + VK_KHR_MAINTENANCE_4_EXTENSION_NAME* = "VK_KHR_maintenance4" + # Extension: VK_ARM_shader_core_properties + VK_ARM_SHADER_CORE_PROPERTIES_SPEC_VERSION* = 1 + VK_ARM_SHADER_CORE_PROPERTIES_EXTENSION_NAME* = "VK_ARM_shader_core_properties" + # Extension: VK_KHR_shader_subgroup_rotate + VK_KHR_SHADER_SUBGROUP_ROTATE_SPEC_VERSION* = 2 + VK_KHR_SHADER_SUBGROUP_ROTATE_EXTENSION_NAME* = "VK_KHR_shader_subgroup_rotate" + # Extension: VK_ARM_scheduling_controls + VK_ARM_SCHEDULING_CONTROLS_SPEC_VERSION* = 1 + VK_ARM_SCHEDULING_CONTROLS_EXTENSION_NAME* = "VK_ARM_scheduling_controls" + # Extension: VK_EXT_image_sliced_view_of_3d + VK_EXT_IMAGE_SLICED_VIEW_OF_3D_SPEC_VERSION* = 1 + VK_EXT_IMAGE_SLICED_VIEW_OF_3D_EXTENSION_NAME* = "VK_EXT_image_sliced_view_of_3d" + # Extension: VK_VALVE_descriptor_set_host_mapping + VK_VALVE_DESCRIPTOR_SET_HOST_MAPPING_SPEC_VERSION* = 1 + VK_VALVE_DESCRIPTOR_SET_HOST_MAPPING_EXTENSION_NAME* = "VK_VALVE_descriptor_set_host_mapping" + # Extension: VK_EXT_depth_clamp_zero_one + VK_EXT_DEPTH_CLAMP_ZERO_ONE_SPEC_VERSION* = 1 + VK_EXT_DEPTH_CLAMP_ZERO_ONE_EXTENSION_NAME* = "VK_EXT_depth_clamp_zero_one" + # Extension: VK_EXT_non_seamless_cube_map + VK_EXT_NON_SEAMLESS_CUBE_MAP_SPEC_VERSION* = 1 + VK_EXT_NON_SEAMLESS_CUBE_MAP_EXTENSION_NAME* = "VK_EXT_non_seamless_cube_map" + # Extension: VK_ARM_render_pass_striped + VK_ARM_RENDER_PASS_STRIPED_SPEC_VERSION* = 1 + VK_ARM_RENDER_PASS_STRIPED_EXTENSION_NAME* = "VK_ARM_render_pass_striped" + # Extension: VK_QCOM_fragment_density_map_offset + VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_SPEC_VERSION* = 1 + VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_EXTENSION_NAME* = "VK_QCOM_fragment_density_map_offset" + # Extension: VK_NV_copy_memory_indirect + VK_NV_COPY_MEMORY_INDIRECT_SPEC_VERSION* = 1 + VK_NV_COPY_MEMORY_INDIRECT_EXTENSION_NAME* = "VK_NV_copy_memory_indirect" + # Extension: VK_NV_memory_decompression + VK_NV_MEMORY_DECOMPRESSION_SPEC_VERSION* = 1 + VK_NV_MEMORY_DECOMPRESSION_EXTENSION_NAME* = "VK_NV_memory_decompression" + # Extension: VK_NV_device_generated_commands_compute + VK_NV_DEVICE_GENERATED_COMMANDS_COMPUTE_SPEC_VERSION* = 2 + VK_NV_DEVICE_GENERATED_COMMANDS_COMPUTE_EXTENSION_NAME* = "VK_NV_device_generated_commands_compute" + # Extension: VK_NV_linear_color_attachment + VK_NV_LINEAR_COLOR_ATTACHMENT_SPEC_VERSION* = 1 + VK_NV_LINEAR_COLOR_ATTACHMENT_EXTENSION_NAME* = "VK_NV_linear_color_attachment" + # Extension: VK_GOOGLE_surfaceless_query + VK_GOOGLE_SURFACELESS_QUERY_SPEC_VERSION* = 2 + VK_GOOGLE_SURFACELESS_QUERY_EXTENSION_NAME* = "VK_GOOGLE_surfaceless_query" + # Extension: VK_KHR_shader_maximal_reconvergence + VK_KHR_SHADER_MAXIMAL_RECONVERGENCE_SPEC_VERSION* = 1 + VK_KHR_SHADER_MAXIMAL_RECONVERGENCE_EXTENSION_NAME* = "VK_KHR_shader_maximal_reconvergence" + # Extension: VK_EXT_application_parameters + VK_EXT_APPLICATION_PARAMETERS_SPEC_VERSION* = 1 + VK_EXT_APPLICATION_PARAMETERS_EXTENSION_NAME* = "VK_EXT_application_parameters" + # Extension: VK_EXT_image_compression_control_swapchain + VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_SPEC_VERSION* = 1 + VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_EXTENSION_NAME* = "VK_EXT_image_compression_control_swapchain" + # Extension: VK_QCOM_image_processing + VK_QCOM_IMAGE_PROCESSING_SPEC_VERSION* = 1 + VK_QCOM_IMAGE_PROCESSING_EXTENSION_NAME* = "VK_QCOM_image_processing" + # Extension: VK_EXT_nested_command_buffer + VK_EXT_NESTED_COMMAND_BUFFER_SPEC_VERSION* = 1 + VK_EXT_NESTED_COMMAND_BUFFER_EXTENSION_NAME* = "VK_EXT_nested_command_buffer" + # Extension: VK_EXT_external_memory_acquire_unmodified + VK_EXT_EXTERNAL_MEMORY_ACQUIRE_UNMODIFIED_SPEC_VERSION* = 1 + VK_EXT_EXTERNAL_MEMORY_ACQUIRE_UNMODIFIED_EXTENSION_NAME* = "VK_EXT_external_memory_acquire_unmodified" + # Extension: VK_EXT_extended_dynamic_state3 + VK_EXT_EXTENDED_DYNAMIC_STATE_3_SPEC_VERSION* = 2 + VK_EXT_EXTENDED_DYNAMIC_STATE_3_EXTENSION_NAME* = "VK_EXT_extended_dynamic_state3" + # Extension: VK_EXT_subpass_merge_feedback + VK_EXT_SUBPASS_MERGE_FEEDBACK_SPEC_VERSION* = 2 + VK_EXT_SUBPASS_MERGE_FEEDBACK_EXTENSION_NAME* = "VK_EXT_subpass_merge_feedback" + # Extension: VK_LUNARG_direct_driver_loading + VK_LUNARG_DIRECT_DRIVER_LOADING_SPEC_VERSION* = 1 + VK_LUNARG_DIRECT_DRIVER_LOADING_EXTENSION_NAME* = "VK_LUNARG_direct_driver_loading" + # Extension: VK_EXT_shader_module_identifier + VK_EXT_SHADER_MODULE_IDENTIFIER_SPEC_VERSION* = 1 + VK_EXT_SHADER_MODULE_IDENTIFIER_EXTENSION_NAME* = "VK_EXT_shader_module_identifier" + # Extension: VK_EXT_rasterization_order_attachment_access + VK_EXT_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_SPEC_VERSION* = 1 + VK_EXT_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_EXTENSION_NAME* = "VK_EXT_rasterization_order_attachment_access" + # Extension: VK_NV_optical_flow + VK_NV_OPTICAL_FLOW_SPEC_VERSION* = 1 + VK_NV_OPTICAL_FLOW_EXTENSION_NAME* = "VK_NV_optical_flow" + # Extension: VK_EXT_legacy_dithering + VK_EXT_LEGACY_DITHERING_SPEC_VERSION* = 1 + VK_EXT_LEGACY_DITHERING_EXTENSION_NAME* = "VK_EXT_legacy_dithering" + # Extension: VK_EXT_pipeline_protected_access + VK_EXT_PIPELINE_PROTECTED_ACCESS_SPEC_VERSION* = 1 + VK_EXT_PIPELINE_PROTECTED_ACCESS_EXTENSION_NAME* = "VK_EXT_pipeline_protected_access" + # Extension: VK_ANDROID_external_format_resolve + VK_ANDROID_EXTERNAL_FORMAT_RESOLVE_SPEC_VERSION* = 1 + VK_ANDROID_EXTERNAL_FORMAT_RESOLVE_EXTENSION_NAME* = "VK_ANDROID_external_format_resolve" + # Extension: VK_KHR_maintenance5 + VK_KHR_MAINTENANCE_5_SPEC_VERSION* = 1 + VK_KHR_MAINTENANCE_5_EXTENSION_NAME* = "VK_KHR_maintenance5" + # Extension: VK_KHR_ray_tracing_position_fetch + VK_KHR_RAY_TRACING_POSITION_FETCH_SPEC_VERSION* = 1 + VK_KHR_RAY_TRACING_POSITION_FETCH_EXTENSION_NAME* = "VK_KHR_ray_tracing_position_fetch" + # Extension: VK_EXT_shader_object + VK_EXT_SHADER_OBJECT_SPEC_VERSION* = 1 + VK_EXT_SHADER_OBJECT_EXTENSION_NAME* = "VK_EXT_shader_object" + # Extension: VK_QCOM_tile_properties + VK_QCOM_TILE_PROPERTIES_SPEC_VERSION* = 1 + VK_QCOM_TILE_PROPERTIES_EXTENSION_NAME* = "VK_QCOM_tile_properties" + # Extension: VK_SEC_amigo_profiling + VK_SEC_AMIGO_PROFILING_SPEC_VERSION* = 1 + VK_SEC_AMIGO_PROFILING_EXTENSION_NAME* = "VK_SEC_amigo_profiling" + # Extension: VK_QCOM_multiview_per_view_viewports + VK_QCOM_MULTIVIEW_PER_VIEW_VIEWPORTS_SPEC_VERSION* = 1 + VK_QCOM_MULTIVIEW_PER_VIEW_VIEWPORTS_EXTENSION_NAME* = "VK_QCOM_multiview_per_view_viewports" + # Extension: VK_NV_external_sci_sync2 + VK_NV_EXTERNAL_SCI_SYNC_2_SPEC_VERSION* = 1 + VK_NV_EXTERNAL_SCI_SYNC_2_EXTENSION_NAME* = "VK_NV_external_sci_sync2" + # Extension: VK_NV_ray_tracing_invocation_reorder + VK_NV_RAY_TRACING_INVOCATION_REORDER_SPEC_VERSION* = 1 + VK_NV_RAY_TRACING_INVOCATION_REORDER_EXTENSION_NAME* = "VK_NV_ray_tracing_invocation_reorder" + # Extension: VK_NV_extended_sparse_address_space + VK_NV_EXTENDED_SPARSE_ADDRESS_SPACE_SPEC_VERSION* = 1 + VK_NV_EXTENDED_SPARSE_ADDRESS_SPACE_EXTENSION_NAME* = "VK_NV_extended_sparse_address_space" + # Extension: VK_EXT_mutable_descriptor_type + VK_EXT_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION* = 1 + VK_EXT_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME* = "VK_EXT_mutable_descriptor_type" + # Extension: VK_EXT_layer_settings + VK_EXT_LAYER_SETTINGS_SPEC_VERSION* = 2 + VK_EXT_LAYER_SETTINGS_EXTENSION_NAME* = "VK_EXT_layer_settings" + # Extension: VK_ARM_shader_core_builtins + VK_ARM_SHADER_CORE_BUILTINS_SPEC_VERSION* = 2 + VK_ARM_SHADER_CORE_BUILTINS_EXTENSION_NAME* = "VK_ARM_shader_core_builtins" + # Extension: VK_EXT_pipeline_library_group_handles + VK_EXT_PIPELINE_LIBRARY_GROUP_HANDLES_SPEC_VERSION* = 1 + VK_EXT_PIPELINE_LIBRARY_GROUP_HANDLES_EXTENSION_NAME* = "VK_EXT_pipeline_library_group_handles" + # Extension: VK_EXT_dynamic_rendering_unused_attachments + VK_EXT_DYNAMIC_RENDERING_UNUSED_ATTACHMENTS_SPEC_VERSION* = 1 + VK_EXT_DYNAMIC_RENDERING_UNUSED_ATTACHMENTS_EXTENSION_NAME* = "VK_EXT_dynamic_rendering_unused_attachments" + # Extension: VK_NV_low_latency2 + VK_NV_LOW_LATENCY_2_SPEC_VERSION* = 2 + VK_NV_LOW_LATENCY_2_EXTENSION_NAME* = "VK_NV_low_latency2" + # Extension: VK_KHR_cooperative_matrix + VK_KHR_COOPERATIVE_MATRIX_SPEC_VERSION* = 2 + VK_KHR_COOPERATIVE_MATRIX_EXTENSION_NAME* = "VK_KHR_cooperative_matrix" + # Extension: VK_QCOM_multiview_per_view_render_areas + VK_QCOM_MULTIVIEW_PER_VIEW_RENDER_AREAS_SPEC_VERSION* = 1 + VK_QCOM_MULTIVIEW_PER_VIEW_RENDER_AREAS_EXTENSION_NAME* = "VK_QCOM_multiview_per_view_render_areas" + # Extension: VK_KHR_video_decode_av1 + VK_KHR_VIDEO_DECODE_AV1_SPEC_VERSION* = 1 + VK_KHR_VIDEO_DECODE_AV1_EXTENSION_NAME* = "VK_KHR_video_decode_av1" + # Extension: VK_KHR_video_maintenance1 + VK_KHR_VIDEO_MAINTENANCE_1_SPEC_VERSION* = 1 + VK_KHR_VIDEO_MAINTENANCE_1_EXTENSION_NAME* = "VK_KHR_video_maintenance1" + # Extension: VK_NV_per_stage_descriptor_set + VK_NV_PER_STAGE_DESCRIPTOR_SET_SPEC_VERSION* = 1 + VK_NV_PER_STAGE_DESCRIPTOR_SET_EXTENSION_NAME* = "VK_NV_per_stage_descriptor_set" + # Extension: VK_QCOM_image_processing2 + VK_QCOM_IMAGE_PROCESSING_2_SPEC_VERSION* = 1 + VK_QCOM_IMAGE_PROCESSING_2_EXTENSION_NAME* = "VK_QCOM_image_processing2" + # Extension: VK_QCOM_filter_cubic_weights + VK_QCOM_FILTER_CUBIC_WEIGHTS_SPEC_VERSION* = 1 + VK_QCOM_FILTER_CUBIC_WEIGHTS_EXTENSION_NAME* = "VK_QCOM_filter_cubic_weights" + # Extension: VK_QCOM_ycbcr_degamma + VK_QCOM_YCBCR_DEGAMMA_SPEC_VERSION* = 1 + VK_QCOM_YCBCR_DEGAMMA_EXTENSION_NAME* = "VK_QCOM_ycbcr_degamma" + # Extension: VK_QCOM_filter_cubic_clamp + VK_QCOM_FILTER_CUBIC_CLAMP_SPEC_VERSION* = 1 + VK_QCOM_FILTER_CUBIC_CLAMP_EXTENSION_NAME* = "VK_QCOM_filter_cubic_clamp" + # Extension: VK_EXT_attachment_feedback_loop_dynamic_state + VK_EXT_ATTACHMENT_FEEDBACK_LOOP_DYNAMIC_STATE_SPEC_VERSION* = 1 + VK_EXT_ATTACHMENT_FEEDBACK_LOOP_DYNAMIC_STATE_EXTENSION_NAME* = "VK_EXT_attachment_feedback_loop_dynamic_state" + # Extension: VK_KHR_vertex_attribute_divisor + VK_KHR_VERTEX_ATTRIBUTE_DIVISOR_SPEC_VERSION* = 1 + VK_KHR_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME* = "VK_KHR_vertex_attribute_divisor" + # Extension: VK_KHR_load_store_op_none + VK_KHR_LOAD_STORE_OP_NONE_SPEC_VERSION* = 1 + VK_KHR_LOAD_STORE_OP_NONE_EXTENSION_NAME* = "VK_KHR_load_store_op_none" + # Extension: VK_KHR_shader_float_controls2 + VK_KHR_SHADER_FLOAT_CONTROLS_2_SPEC_VERSION* = 1 + VK_KHR_SHADER_FLOAT_CONTROLS_2_EXTENSION_NAME* = "VK_KHR_shader_float_controls2" + # Extension: VK_QNX_external_memory_screen_buffer + VK_QNX_EXTERNAL_MEMORY_SCREEN_BUFFER_SPEC_VERSION* = 1 + VK_QNX_EXTERNAL_MEMORY_SCREEN_BUFFER_EXTENSION_NAME* = "VK_QNX_external_memory_screen_buffer" + # Extension: VK_MSFT_layered_driver + VK_MSFT_LAYERED_DRIVER_SPEC_VERSION* = 1 + VK_MSFT_LAYERED_DRIVER_EXTENSION_NAME* = "VK_MSFT_layered_driver" + # Extension: VK_KHR_index_type_uint8 + VK_KHR_INDEX_TYPE_UINT8_SPEC_VERSION* = 1 + VK_KHR_INDEX_TYPE_UINT8_EXTENSION_NAME* = "VK_KHR_index_type_uint8" + # Extension: VK_KHR_line_rasterization + VK_KHR_LINE_RASTERIZATION_SPEC_VERSION* = 1 + VK_KHR_LINE_RASTERIZATION_EXTENSION_NAME* = "VK_KHR_line_rasterization" + # Extension: VK_KHR_calibrated_timestamps + VK_KHR_CALIBRATED_TIMESTAMPS_SPEC_VERSION* = 1 + VK_KHR_CALIBRATED_TIMESTAMPS_EXTENSION_NAME* = "VK_KHR_calibrated_timestamps" + # Extension: VK_KHR_shader_expect_assume + VK_KHR_SHADER_EXPECT_ASSUME_SPEC_VERSION* = 1 + VK_KHR_SHADER_EXPECT_ASSUME_EXTENSION_NAME* = "VK_KHR_shader_expect_assume" + # Extension: VK_KHR_maintenance6 + VK_KHR_MAINTENANCE_6_SPEC_VERSION* = 1 + VK_KHR_MAINTENANCE_6_EXTENSION_NAME* = "VK_KHR_maintenance6" + # Extension: VK_NV_descriptor_pool_overallocation + VK_NV_DESCRIPTOR_POOL_OVERALLOCATION_SPEC_VERSION* = 1 + VK_NV_DESCRIPTOR_POOL_OVERALLOCATION_EXTENSION_NAME* = "VK_NV_descriptor_pool_overallocation" + # Extension: VK_NV_raw_access_chains + VK_NV_RAW_ACCESS_CHAINS_SPEC_VERSION* = 1 + VK_NV_RAW_ACCESS_CHAINS_EXTENSION_NAME* = "VK_NV_raw_access_chains" + # Extension: VK_NV_shader_atomic_float16_vector + VK_NV_SHADER_ATOMIC_FLOAT16_VECTOR_SPEC_VERSION* = 1 + VK_NV_SHADER_ATOMIC_FLOAT16_VECTOR_EXTENSION_NAME* = "VK_NV_shader_atomic_float16_vector" type VkImageLayout* {.size: sizeof(int32).} = enum diff --git a/tools/generator.nim b/tools/generator.nim index 9a02258..4ec819f 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -377,7 +377,25 @@ proc genEnums(node: XmlNode, output: var string) = elif enumName == "VK_MAX_DEVICE_GROUP_SIZE_KHR": enumValue = "VK_MAX_DEVICE_GROUP_SIZE" output.add(&" {enumName}* = {enumValue}\n") - continue + for extOrFeat in extOrFeature.items: + if extOrFeat.tag == "feature": continue + let name = extOrFeat.attr("name") + output.add(&" # Extension: {name}\n") + for r in extOrFeat.items: + if r.kind != xnElement or r.tag != "require": + continue + for e in r.items: + if e.kind != xnElement or e.tag != "enum": + continue + if e.attr("api") == "vulkansc" or e.attr("deprecated") != "" or e.attr("alias") != "": + continue + let enumName = e.attr("name") + if enumName.endsWith("_NAME") or enumName.endsWith("_VERSION"): + var enumValue = e.attr("value") + output.add(&" {enumName}* = {enumValue}\n") + for enums in node.findAll("enums"): + let name = enums.attr("name") + if name == "API Constants": continue if not inType: output.add("\ntype\n") inType = true @@ -481,6 +499,7 @@ proc genProcs(node: XmlNode, output: var string) = proc genFeatures(node: XmlNode, output: var string) = echo "Generating and Adding Features..." for feature in node.findAll("feature"): + # if feature.attr("supported") == "disabled": continue if feature.attr("api") == "vulkansc": continue let number = feature.attr("number").replace(".", "_") output.add(&"\n# Vulkan {number}\n") @@ -504,6 +523,7 @@ proc genExtensions(node: XmlNode, output: var string) = echo "Generating and Adding Extensions..." for extensions in node.findAll("extensions"): for extension in extensions.findAll("extension"): + # if extension.attr("supported") == "disabled": continue # if extension.attr("api") == "vulkansc": continue var commands: seq[VkProc] for require in extension.findAll("require"): From ebd08972cf78b6b5745739b00f2d55851fe94c35 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Sun, 12 May 2024 00:25:40 +0300 Subject: [PATCH 36/57] some early flags helpers --- src/vulkan.nim | 271 ++++++++++++++++++++++++++++++++++++++++++++ tools/generator.nim | 42 ++++++- 2 files changed, 309 insertions(+), 4 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index c0a8d52..33880a9 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -24881,6 +24881,277 @@ proc loadVK_KHR_maintenance6*() = vkCmdSetDescriptorBufferOffsets2EXT = cast[proc (commandBuffer: VkCommandBuffer, pSetDescriptorBufferOffsetsInfo: ptr VkSetDescriptorBufferOffsetsInfoEXT) {.stdcall.}](vkGetProc("vkCmdSetDescriptorBufferOffsets2EXT")) vkCmdBindDescriptorBufferEmbeddedSamplers2EXT = cast[proc (commandBuffer: VkCommandBuffer, pBindDescriptorBufferEmbeddedSamplersInfo: ptr VkBindDescriptorBufferEmbeddedSamplersInfoEXT) {.stdcall.}](vkGetProc("vkCmdBindDescriptorBufferEmbeddedSamplers2EXT")) +# Flags helpers +import std/macros + +macro flagsImpl(base: typed, args: varargs[untyped]): untyped = + let arr = newNimNode(nnkBracketExpr) + for n in args: arr.add newCall(base, n) + result = nestList(bindSym"or", arr) + +template `{}`*(t: typedesc[VkFramebufferCreateFlags]; args: varargs[VkFramebufferCreateFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkRenderPassCreateFlags]; args: varargs[VkRenderPassCreateFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkSamplerCreateFlags]; args: varargs[VkSamplerCreateFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPipelineLayoutCreateFlags]; args: varargs[VkPipelineLayoutCreateFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPipelineCacheCreateFlags]; args: varargs[VkPipelineCacheCreateFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPipelineDepthStencilStateCreateFlags]; args: varargs[VkPipelineDepthStencilStateCreateFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPipelineColorBlendStateCreateFlags]; args: varargs[VkPipelineColorBlendStateCreateFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPipelineShaderStageCreateFlags]; args: varargs[VkPipelineShaderStageCreateFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkDescriptorSetLayoutCreateFlags]; args: varargs[VkDescriptorSetLayoutCreateFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkInstanceCreateFlags]; args: varargs[VkInstanceCreateFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkDeviceQueueCreateFlags]; args: varargs[VkDeviceQueueCreateFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkQueueFlags]; args: varargs[VkQueueFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkMemoryPropertyFlags]; args: varargs[VkMemoryPropertyFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkMemoryHeapFlags]; args: varargs[VkMemoryHeapFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkAccessFlags]; args: varargs[VkAccessFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkBufferUsageFlags]; args: varargs[VkBufferUsageFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkBufferCreateFlags]; args: varargs[VkBufferCreateFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkShaderStageFlags]; args: varargs[VkShaderStageFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkImageUsageFlags]; args: varargs[VkImageUsageFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkImageCreateFlags]; args: varargs[VkImageCreateFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkImageViewCreateFlags]; args: varargs[VkImageViewCreateFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPipelineCreateFlags]; args: varargs[VkPipelineCreateFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkColorComponentFlags]; args: varargs[VkColorComponentFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkFenceCreateFlags]; args: varargs[VkFenceCreateFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkFormatFeatureFlags]; args: varargs[VkFormatFeatureFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkQueryControlFlags]; args: varargs[VkQueryControlFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkQueryResultFlags]; args: varargs[VkQueryResultFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkEventCreateFlags]; args: varargs[VkEventCreateFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkCommandPoolCreateFlags]; args: varargs[VkCommandPoolCreateFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkCommandPoolResetFlags]; args: varargs[VkCommandPoolResetFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkCommandBufferResetFlags]; args: varargs[VkCommandBufferResetFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkCommandBufferUsageFlags]; args: varargs[VkCommandBufferUsageFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkQueryPipelineStatisticFlags]; args: varargs[VkQueryPipelineStatisticFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkMemoryMapFlags]; args: varargs[VkMemoryMapFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkMemoryUnmapFlagsKHR]; args: varargs[VkMemoryUnmapFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkImageAspectFlags]; args: varargs[VkImageAspectFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkSparseMemoryBindFlags]; args: varargs[VkSparseMemoryBindFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkSparseImageFormatFlags]; args: varargs[VkSparseImageFormatFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkSubpassDescriptionFlags]; args: varargs[VkSubpassDescriptionFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPipelineStageFlags]; args: varargs[VkPipelineStageFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkSampleCountFlags]; args: varargs[VkSampleCountFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkAttachmentDescriptionFlags]; args: varargs[VkAttachmentDescriptionFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkStencilFaceFlags]; args: varargs[VkStencilFaceFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkCullModeFlags]; args: varargs[VkCullModeFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkDescriptorPoolCreateFlags]; args: varargs[VkDescriptorPoolCreateFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkDependencyFlags]; args: varargs[VkDependencyFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkSubgroupFeatureFlags]; args: varargs[VkSubgroupFeatureFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkIndirectCommandsLayoutUsageFlagsNV]; args: varargs[VkIndirectCommandsLayoutUsageFlagBitsNV]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkIndirectStateFlagsNV]; args: varargs[VkIndirectStateFlagBitsNV]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkGeometryFlagsKHR]; args: varargs[VkGeometryFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkGeometryInstanceFlagsKHR]; args: varargs[VkGeometryInstanceFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkBuildAccelerationStructureFlagsKHR]; args: varargs[VkBuildAccelerationStructureFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkAccelerationStructureCreateFlagsKHR]; args: varargs[VkAccelerationStructureCreateFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPipelineCreationFeedbackFlags]; args: varargs[VkPipelineCreationFeedbackFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPerformanceCounterDescriptionFlagsKHR]; args: varargs[VkPerformanceCounterDescriptionFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkSemaphoreWaitFlags]; args: varargs[VkSemaphoreWaitFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkDeviceDiagnosticsConfigFlagsNV]; args: varargs[VkDeviceDiagnosticsConfigFlagBitsNV]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkAccessFlags2]; args: varargs[VkAccessFlagBits2]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPipelineStageFlags2]; args: varargs[VkPipelineStageFlagBits2]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkFormatFeatureFlags2]; args: varargs[VkFormatFeatureFlagBits2]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkRenderingFlags]; args: varargs[VkRenderingFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkMemoryDecompressionMethodFlagsNV]; args: varargs[VkMemoryDecompressionMethodFlagBitsNV]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkBuildMicromapFlagsEXT]; args: varargs[VkBuildMicromapFlagBitsEXT]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkMicromapCreateFlagsEXT]; args: varargs[VkMicromapCreateFlagBitsEXT]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPipelineCreateFlags2KHR]; args: varargs[VkPipelineCreateFlagBits2KHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkBufferUsageFlags2KHR]; args: varargs[VkBufferUsageFlagBits2KHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkCompositeAlphaFlagsKHR]; args: varargs[VkCompositeAlphaFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkDisplayPlaneAlphaFlagsKHR]; args: varargs[VkDisplayPlaneAlphaFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkSurfaceTransformFlagsKHR]; args: varargs[VkSurfaceTransformFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkSwapchainCreateFlagsKHR]; args: varargs[VkSwapchainCreateFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPeerMemoryFeatureFlags]; args: varargs[VkPeerMemoryFeatureFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkMemoryAllocateFlags]; args: varargs[VkMemoryAllocateFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkDeviceGroupPresentModeFlagsKHR]; args: varargs[VkDeviceGroupPresentModeFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkDebugReportFlagsEXT]; args: varargs[VkDebugReportFlagBitsEXT]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkExternalMemoryHandleTypeFlagsNV]; args: varargs[VkExternalMemoryHandleTypeFlagBitsNV]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkExternalMemoryFeatureFlagsNV]; args: varargs[VkExternalMemoryFeatureFlagBitsNV]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkExternalMemoryHandleTypeFlags]; args: varargs[VkExternalMemoryHandleTypeFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkExternalMemoryFeatureFlags]; args: varargs[VkExternalMemoryFeatureFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkExternalSemaphoreHandleTypeFlags]; args: varargs[VkExternalSemaphoreHandleTypeFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkExternalSemaphoreFeatureFlags]; args: varargs[VkExternalSemaphoreFeatureFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkSemaphoreImportFlags]; args: varargs[VkSemaphoreImportFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkExternalFenceHandleTypeFlags]; args: varargs[VkExternalFenceHandleTypeFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkExternalFenceFeatureFlags]; args: varargs[VkExternalFenceFeatureFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkFenceImportFlags]; args: varargs[VkFenceImportFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkSurfaceCounterFlagsEXT]; args: varargs[VkSurfaceCounterFlagBitsEXT]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkDebugUtilsMessageSeverityFlagsEXT]; args: varargs[VkDebugUtilsMessageSeverityFlagBitsEXT]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkDebugUtilsMessageTypeFlagsEXT]; args: varargs[VkDebugUtilsMessageTypeFlagBitsEXT]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkDescriptorBindingFlags]; args: varargs[VkDescriptorBindingFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkConditionalRenderingFlagsEXT]; args: varargs[VkConditionalRenderingFlagBitsEXT]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkResolveModeFlags]; args: varargs[VkResolveModeFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkSwapchainImageUsageFlagsANDROID]; args: varargs[VkSwapchainImageUsageFlagBitsANDROID]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkToolPurposeFlags]; args: varargs[VkToolPurposeFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkSubmitFlags]; args: varargs[VkSubmitFlagBits]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkHostImageCopyFlagsEXT]; args: varargs[VkHostImageCopyFlagBitsEXT]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkImageConstraintsInfoFlagsFUCHSIA]; args: varargs[VkImageConstraintsInfoFlagBitsFUCHSIA]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkGraphicsPipelineLibraryFlagsEXT]; args: varargs[VkGraphicsPipelineLibraryFlagBitsEXT]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkImageCompressionFlagsEXT]; args: varargs[VkImageCompressionFlagBitsEXT]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkImageCompressionFixedRateFlagsEXT]; args: varargs[VkImageCompressionFixedRateFlagBitsEXT]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkExportMetalObjectTypeFlagsEXT]; args: varargs[VkExportMetalObjectTypeFlagBitsEXT]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkDeviceAddressBindingFlagsEXT]; args: varargs[VkDeviceAddressBindingFlagBitsEXT]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkOpticalFlowGridSizeFlagsNV]; args: varargs[VkOpticalFlowGridSizeFlagBitsNV]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkOpticalFlowUsageFlagsNV]; args: varargs[VkOpticalFlowUsageFlagBitsNV]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkOpticalFlowSessionCreateFlagsNV]; args: varargs[VkOpticalFlowSessionCreateFlagBitsNV]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkOpticalFlowExecuteFlagsNV]; args: varargs[VkOpticalFlowExecuteFlagBitsNV]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkFrameBoundaryFlagsEXT]; args: varargs[VkFrameBoundaryFlagBitsEXT]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPresentScalingFlagsEXT]; args: varargs[VkPresentScalingFlagBitsEXT]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPresentGravityFlagsEXT]; args: varargs[VkPresentGravityFlagBitsEXT]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkShaderCreateFlagsEXT]; args: varargs[VkShaderCreateFlagBitsEXT]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPhysicalDeviceSchedulingControlsFlagsARM]; args: varargs[VkPhysicalDeviceSchedulingControlsFlagBitsARM]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoCodecOperationFlagsKHR]; args: varargs[VkVideoCodecOperationFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoCapabilityFlagsKHR]; args: varargs[VkVideoCapabilityFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoSessionCreateFlagsKHR]; args: varargs[VkVideoSessionCreateFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoCodingControlFlagsKHR]; args: varargs[VkVideoCodingControlFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoDecodeUsageFlagsKHR]; args: varargs[VkVideoDecodeUsageFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoDecodeCapabilityFlagsKHR]; args: varargs[VkVideoDecodeCapabilityFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoDecodeH264PictureLayoutFlagsKHR]; args: varargs[VkVideoDecodeH264PictureLayoutFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoEncodeUsageFlagsKHR]; args: varargs[VkVideoEncodeUsageFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoEncodeContentFlagsKHR]; args: varargs[VkVideoEncodeContentFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoEncodeCapabilityFlagsKHR]; args: varargs[VkVideoEncodeCapabilityFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoEncodeFeedbackFlagsKHR]; args: varargs[VkVideoEncodeFeedbackFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoEncodeRateControlModeFlagsKHR]; args: varargs[VkVideoEncodeRateControlModeFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoChromaSubsamplingFlagsKHR]; args: varargs[VkVideoChromaSubsamplingFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoComponentBitDepthFlagsKHR]; args: varargs[VkVideoComponentBitDepthFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoEncodeH264CapabilityFlagsKHR]; args: varargs[VkVideoEncodeH264CapabilityFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoEncodeH264StdFlagsKHR]; args: varargs[VkVideoEncodeH264StdFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoEncodeH264RateControlFlagsKHR]; args: varargs[VkVideoEncodeH264RateControlFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoEncodeH265CapabilityFlagsKHR]; args: varargs[VkVideoEncodeH265CapabilityFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoEncodeH265StdFlagsKHR]; args: varargs[VkVideoEncodeH265StdFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoEncodeH265RateControlFlagsKHR]; args: varargs[VkVideoEncodeH265RateControlFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoEncodeH265CtbSizeFlagsKHR]; args: varargs[VkVideoEncodeH265CtbSizeFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoEncodeH265TransformBlockSizeFlagsKHR]; args: varargs[VkVideoEncodeH265TransformBlockSizeFlagBitsKHR]): untyped = + t(flagsImpl(uint32, args)) + var vkCreateInstance*: proc (pCreateInfo: ptr VkInstanceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pInstance: ptr VkInstance): VkResult {.stdcall.} vkEnumerateInstanceExtensionProperties*: proc (pLayerName: cstring, pPropertyCount: ptr uint32, pProperties: ptr VkExtensionProperties): VkResult {.stdcall.} diff --git a/tools/generator.nim b/tools/generator.nim index 4ec819f..def8c81 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -1,6 +1,7 @@ # Written by Leonardo Mariscal , 2019 -import strutils, ./utils, httpClient, os, xmlparser, xmltree, streams, strformat, math, tables, algorithm, bitops +import std/[strutils, httpclient, os, xmlparser, xmltree, streams, strformat, math, tables, algorithm, bitops, sequtils] +import utils # local import type VkProc = object @@ -13,10 +14,16 @@ type VkStruct = object name: string members: seq[VkArg] + VkFlags = object + name: string + flagbits: string + bType: string var vkProcs: seq[VkProc] var vkStructs: seq[VkStruct] var vkStructureTypes: seq[string] +var vkFlagsTypes: seq[VkFlags] +var vkFlagBitsTypes: seq[string] proc camelCaseAscii*(s: string): string = ## Converts snake_case to CamelCase @@ -158,6 +165,11 @@ proc genTypes(node: XmlNode, output: var string) = if not alias: bType = "distinct " & bType output.add(&" {name}* = {bType}\n") + vkFlagsTypes.add VkFlags( + name: name, + flagbits: name.replace("Flags", "FlagBits"), + bType: if bType == "VkFlags64": "uint64" else: "uint32" + ) continue # Handle category @@ -390,9 +402,9 @@ proc genEnums(node: XmlNode, output: var string) = if e.attr("api") == "vulkansc" or e.attr("deprecated") != "" or e.attr("alias") != "": continue let enumName = e.attr("name") - if enumName.endsWith("_NAME") or enumName.endsWith("_VERSION"): - var enumValue = e.attr("value") - output.add(&" {enumName}* = {enumValue}\n") + if not enumName.endsWith("EXTENSION_NAME") and not enumName.endsWith("SPEC_VERSION"): continue + var enumValue = e.attr("value") + output.add(&" {enumName}* = {enumValue}\n") for enums in node.findAll("enums"): let name = enums.attr("name") if name == "API Constants": continue @@ -432,6 +444,8 @@ proc genEnums(node: XmlNode, output: var string) = if elements.len == 0: continue output.add(&" {name}* {{.size: sizeof(int32).}} = enum\n") + if name.contains("FlagBits"): + vkFlagBitsTypes.add name elements.sort(system.cmp) var prev = -1 for enumValue, enumName in elements.pairs: @@ -444,6 +458,25 @@ proc genEnums(node: XmlNode, output: var string) = prev = enumValue output.add("\n") +proc genFlags(output: var string) = + echo "Generating Flags helpers..." + output.add("\n# Flags helpers\n") + output.add(""" +import std/macros + +macro flagsImpl(base: typed, args: varargs[untyped]): untyped = + let arr = newNimNode(nnkBracketExpr) + for n in args: arr.add newCall(base, n) + result = nestList(bindSym"or", arr) + +""") + for flags in vkFlagsTypes.items: + if not vkFlagBitsTypes.anyIt(it == flags.flagbits): continue + output.add(&""" +template `{{}}`*(t: typedesc[{flags.name}]; args: varargs[{flags.flagbits}]): untyped = + t(flagsImpl({flags.bType}, args)) +""") + proc genProcs(node: XmlNode, output: var string) = echo "Generating Procedures..." output.add("\n# Procs\n") @@ -589,6 +622,7 @@ proc main() = xml.genProcs(output) xml.genFeatures(output) xml.genExtensions(output) + genFlags(output) output.add("\n" & vkInit) From dec4d5119ebfb98a9a1e81f99415646b34c3fddb Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Wed, 19 Jun 2024 02:48:03 +0300 Subject: [PATCH 37/57] first version of constructors that deal with openarrays --- src/vulkan.nim | 3290 +++++++++++++++++++++---------------------- tools/generator.nim | 65 +- 2 files changed, 1703 insertions(+), 1652 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 33880a9..f01dcfe 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -5069,33 +5069,33 @@ type PFN_vkDeviceMemoryReportCallbackEXT* = proc (pCallbackData: ptr VkDeviceMemoryReportCallbackDataEXT; pUserData: pointer) {.cdecl.} PFN_vkGetInstanceProcAddrLUNARG* = proc (instance: VkInstance; pName: cstring): PFN_vkVoidFunction {.cdecl.} - VkBaseOutStructure* = object + VkBaseOutStructure* {.byref.} = object sType*: VkStructureType pNext*: ptr VkBaseOutStructure - VkBaseInStructure* = object + VkBaseInStructure* {.byref.} = object sType*: VkStructureType pNext*: ptr VkBaseInStructure - VkOffset2D* = object + VkOffset2D* {.byref.} = object x*: int32 y*: int32 - VkOffset3D* = object + VkOffset3D* {.byref.} = object x*: int32 y*: int32 z*: int32 - VkExtent2D* = object + VkExtent2D* {.byref.} = object width*: uint32 height*: uint32 - VkExtent3D* = object + VkExtent3D* {.byref.} = object width*: uint32 height*: uint32 depth*: uint32 - VkViewport* = object + VkViewport* {.byref.} = object x*: float32 y*: float32 width*: float32 @@ -5103,22 +5103,22 @@ type minDepth*: float32 maxDepth*: float32 - VkRect2D* = object + VkRect2D* {.byref.} = object offset*: VkOffset2D extent*: VkExtent2D - VkClearRect* = object + VkClearRect* {.byref.} = object rect*: VkRect2D baseArrayLayer*: uint32 layerCount*: uint32 - VkComponentMapping* = object + VkComponentMapping* {.byref.} = object r*: VkComponentSwizzle g*: VkComponentSwizzle b*: VkComponentSwizzle a*: VkComponentSwizzle - VkPhysicalDeviceProperties* = object + VkPhysicalDeviceProperties* {.byref.} = object apiVersion*: uint32 driverVersion*: uint32 vendorID*: uint32 @@ -5129,17 +5129,17 @@ type limits*: VkPhysicalDeviceLimits sparseProperties*: VkPhysicalDeviceSparseProperties - VkExtensionProperties* = object + VkExtensionProperties* {.byref.} = object extensionName*: array[VK_MAX_EXTENSION_NAME_SIZE, char] specVersion*: uint32 - VkLayerProperties* = object + VkLayerProperties* {.byref.} = object layerName*: array[VK_MAX_EXTENSION_NAME_SIZE, char] specVersion*: uint32 implementationVersion*: uint32 description*: array[VK_MAX_DESCRIPTION_SIZE, char] - VkApplicationInfo* = object + VkApplicationInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer pApplicationName*: cstring @@ -5148,7 +5148,7 @@ type engineVersion*: uint32 apiVersion*: uint32 - VkAllocationCallbacks* = object + VkAllocationCallbacks* {.byref.} = object pUserData*: pointer pfnAllocation*: PFN_vkAllocationFunction pfnReallocation*: PFN_vkReallocationFunction @@ -5156,7 +5156,7 @@ type pfnInternalAllocation*: PFN_vkInternalAllocationNotification pfnInternalFree*: PFN_vkInternalFreeNotification - VkDeviceQueueCreateInfo* = object + VkDeviceQueueCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkDeviceQueueCreateFlags @@ -5164,7 +5164,7 @@ type queueCount*: uint32 pQueuePriorities*: ptr float32 - VkDeviceCreateInfo* = object + VkDeviceCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkDeviceCreateFlags @@ -5176,7 +5176,7 @@ type ppEnabledExtensionNames*: cstringArray pEnabledFeatures*: ptr VkPhysicalDeviceFeatures - VkInstanceCreateInfo* = object + VkInstanceCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkInstanceCreateFlags @@ -5186,79 +5186,79 @@ type enabledExtensionCount*: uint32 ppEnabledExtensionNames*: cstringArray - VkQueueFamilyProperties* = object + VkQueueFamilyProperties* {.byref.} = object queueFlags*: VkQueueFlags queueCount*: uint32 timestampValidBits*: uint32 minImageTransferGranularity*: VkExtent3D - VkPhysicalDeviceMemoryProperties* = object + VkPhysicalDeviceMemoryProperties* {.byref.} = object memoryTypeCount*: uint32 memoryTypes*: array[VK_MAX_MEMORY_TYPES, VkMemoryType] memoryHeapCount*: uint32 memoryHeaps*: array[VK_MAX_MEMORY_HEAPS, VkMemoryHeap] - VkMemoryAllocateInfo* = object + VkMemoryAllocateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer allocationSize*: VkDeviceSize memoryTypeIndex*: uint32 - VkMemoryRequirements* = object + VkMemoryRequirements* {.byref.} = object size*: VkDeviceSize alignment*: VkDeviceSize memoryTypeBits*: uint32 - VkSparseImageFormatProperties* = object + VkSparseImageFormatProperties* {.byref.} = object aspectMask*: VkImageAspectFlags imageGranularity*: VkExtent3D flags*: VkSparseImageFormatFlags - VkSparseImageMemoryRequirements* = object + VkSparseImageMemoryRequirements* {.byref.} = object formatProperties*: VkSparseImageFormatProperties imageMipTailFirstLod*: uint32 imageMipTailSize*: VkDeviceSize imageMipTailOffset*: VkDeviceSize imageMipTailStride*: VkDeviceSize - VkMemoryType* = object + VkMemoryType* {.byref.} = object propertyFlags*: VkMemoryPropertyFlags heapIndex*: uint32 - VkMemoryHeap* = object + VkMemoryHeap* {.byref.} = object size*: VkDeviceSize flags*: VkMemoryHeapFlags - VkMappedMemoryRange* = object + VkMappedMemoryRange* {.byref.} = object sType*: VkStructureType pNext*: pointer memory*: VkDeviceMemory offset*: VkDeviceSize size*: VkDeviceSize - VkFormatProperties* = object + VkFormatProperties* {.byref.} = object linearTilingFeatures*: VkFormatFeatureFlags optimalTilingFeatures*: VkFormatFeatureFlags bufferFeatures*: VkFormatFeatureFlags - VkImageFormatProperties* = object + VkImageFormatProperties* {.byref.} = object maxExtent*: VkExtent3D maxMipLevels*: uint32 maxArrayLayers*: uint32 sampleCounts*: VkSampleCountFlags maxResourceSize*: VkDeviceSize - VkDescriptorBufferInfo* = object + VkDescriptorBufferInfo* {.byref.} = object buffer*: VkBuffer offset*: VkDeviceSize range*: VkDeviceSize - VkDescriptorImageInfo* = object + VkDescriptorImageInfo* {.byref.} = object sampler*: VkSampler imageView*: VkImageView imageLayout*: VkImageLayout - VkWriteDescriptorSet* = object + VkWriteDescriptorSet* {.byref.} = object sType*: VkStructureType pNext*: pointer dstSet*: VkDescriptorSet @@ -5270,7 +5270,7 @@ type pBufferInfo*: ptr VkDescriptorBufferInfo pTexelBufferView*: ptr VkBufferView - VkCopyDescriptorSet* = object + VkCopyDescriptorSet* {.byref.} = object sType*: VkStructureType pNext*: pointer srcSet*: VkDescriptorSet @@ -5281,12 +5281,12 @@ type dstArrayElement*: uint32 descriptorCount*: uint32 - VkBufferUsageFlags2CreateInfoKHR* = object + VkBufferUsageFlags2CreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer usage*: VkBufferUsageFlags2KHR - VkBufferCreateInfo* = object + VkBufferCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkBufferCreateFlags @@ -5296,7 +5296,7 @@ type queueFamilyIndexCount*: uint32 pQueueFamilyIndices*: ptr uint32 - VkBufferViewCreateInfo* = object + VkBufferViewCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkBufferViewCreateFlags @@ -5305,31 +5305,31 @@ type offset*: VkDeviceSize range*: VkDeviceSize - VkImageSubresource* = object + VkImageSubresource* {.byref.} = object aspectMask*: VkImageAspectFlags mipLevel*: uint32 arrayLayer*: uint32 - VkImageSubresourceLayers* = object + VkImageSubresourceLayers* {.byref.} = object aspectMask*: VkImageAspectFlags mipLevel*: uint32 baseArrayLayer*: uint32 layerCount*: uint32 - VkImageSubresourceRange* = object + VkImageSubresourceRange* {.byref.} = object aspectMask*: VkImageAspectFlags baseMipLevel*: uint32 levelCount*: uint32 baseArrayLayer*: uint32 layerCount*: uint32 - VkMemoryBarrier* = object + VkMemoryBarrier* {.byref.} = object sType*: VkStructureType pNext*: pointer srcAccessMask*: VkAccessFlags dstAccessMask*: VkAccessFlags - VkBufferMemoryBarrier* = object + VkBufferMemoryBarrier* {.byref.} = object sType*: VkStructureType pNext*: pointer srcAccessMask*: VkAccessFlags @@ -5340,7 +5340,7 @@ type offset*: VkDeviceSize size*: VkDeviceSize - VkImageMemoryBarrier* = object + VkImageMemoryBarrier* {.byref.} = object sType*: VkStructureType pNext*: pointer srcAccessMask*: VkAccessFlags @@ -5352,7 +5352,7 @@ type image*: VkImage subresourceRange*: VkImageSubresourceRange - VkImageCreateInfo* = object + VkImageCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkImageCreateFlags @@ -5369,14 +5369,14 @@ type pQueueFamilyIndices*: ptr uint32 initialLayout*: VkImageLayout - VkSubresourceLayout* = object + VkSubresourceLayout* {.byref.} = object offset*: VkDeviceSize size*: VkDeviceSize rowPitch*: VkDeviceSize arrayPitch*: VkDeviceSize depthPitch*: VkDeviceSize - VkImageViewCreateInfo* = object + VkImageViewCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkImageViewCreateFlags @@ -5386,19 +5386,19 @@ type components*: VkComponentMapping subresourceRange*: VkImageSubresourceRange - VkBufferCopy* = object + VkBufferCopy* {.byref.} = object srcOffset*: VkDeviceSize dstOffset*: VkDeviceSize size*: VkDeviceSize - VkSparseMemoryBind* = object + VkSparseMemoryBind* {.byref.} = object resourceOffset*: VkDeviceSize size*: VkDeviceSize memory*: VkDeviceMemory memoryOffset*: VkDeviceSize flags*: VkSparseMemoryBindFlags - VkSparseImageMemoryBind* = object + VkSparseImageMemoryBind* {.byref.} = object subresource*: VkImageSubresource offset*: VkOffset3D extent*: VkExtent3D @@ -5406,22 +5406,22 @@ type memoryOffset*: VkDeviceSize flags*: VkSparseMemoryBindFlags - VkSparseBufferMemoryBindInfo* = object + VkSparseBufferMemoryBindInfo* {.byref.} = object buffer*: VkBuffer bindCount*: uint32 pBinds*: ptr VkSparseMemoryBind - VkSparseImageOpaqueMemoryBindInfo* = object + VkSparseImageOpaqueMemoryBindInfo* {.byref.} = object image*: VkImage bindCount*: uint32 pBinds*: ptr VkSparseMemoryBind - VkSparseImageMemoryBindInfo* = object + VkSparseImageMemoryBindInfo* {.byref.} = object image*: VkImage bindCount*: uint32 pBinds*: ptr VkSparseImageMemoryBind - VkBindSparseInfo* = object + VkBindSparseInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer waitSemaphoreCount*: uint32 @@ -5435,20 +5435,20 @@ type signalSemaphoreCount*: uint32 pSignalSemaphores*: ptr VkSemaphore - VkImageCopy* = object + VkImageCopy* {.byref.} = object srcSubresource*: VkImageSubresourceLayers srcOffset*: VkOffset3D dstSubresource*: VkImageSubresourceLayers dstOffset*: VkOffset3D extent*: VkExtent3D - VkImageBlit* = object + VkImageBlit* {.byref.} = object srcSubresource*: VkImageSubresourceLayers srcOffsets*: array[2, VkOffset3D] dstSubresource*: VkImageSubresourceLayers dstOffsets*: array[2, VkOffset3D] - VkBufferImageCopy* = object + VkBufferImageCopy* {.byref.} = object bufferOffset*: VkDeviceSize bufferRowLength*: uint32 bufferImageHeight*: uint32 @@ -5456,12 +5456,12 @@ type imageOffset*: VkOffset3D imageExtent*: VkExtent3D - VkCopyMemoryIndirectCommandNV* = object + VkCopyMemoryIndirectCommandNV* {.byref.} = object srcAddress*: VkDeviceAddress dstAddress*: VkDeviceAddress size*: VkDeviceSize - VkCopyMemoryToImageIndirectCommandNV* = object + VkCopyMemoryToImageIndirectCommandNV* {.byref.} = object srcAddress*: VkDeviceAddress bufferRowLength*: uint32 bufferImageHeight*: uint32 @@ -5469,39 +5469,39 @@ type imageOffset*: VkOffset3D imageExtent*: VkExtent3D - VkImageResolve* = object + VkImageResolve* {.byref.} = object srcSubresource*: VkImageSubresourceLayers srcOffset*: VkOffset3D dstSubresource*: VkImageSubresourceLayers dstOffset*: VkOffset3D extent*: VkExtent3D - VkShaderModuleCreateInfo* = object + VkShaderModuleCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkShaderModuleCreateFlags codeSize*: uint pCode*: ptr uint32 - VkDescriptorSetLayoutBinding* = object + VkDescriptorSetLayoutBinding* {.byref.} = object binding*: uint32 descriptorType*: VkDescriptorType descriptorCount*: uint32 stageFlags*: VkShaderStageFlags pImmutableSamplers*: ptr VkSampler - VkDescriptorSetLayoutCreateInfo* = object + VkDescriptorSetLayoutCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkDescriptorSetLayoutCreateFlags bindingCount*: uint32 pBindings*: ptr VkDescriptorSetLayoutBinding - VkDescriptorPoolSize* = object + VkDescriptorPoolSize* {.byref.} = object `type`*: VkDescriptorType descriptorCount*: uint32 - VkDescriptorPoolCreateInfo* = object + VkDescriptorPoolCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkDescriptorPoolCreateFlags @@ -5509,25 +5509,25 @@ type poolSizeCount*: uint32 pPoolSizes*: ptr VkDescriptorPoolSize - VkDescriptorSetAllocateInfo* = object + VkDescriptorSetAllocateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer descriptorPool*: VkDescriptorPool descriptorSetCount*: uint32 pSetLayouts*: ptr VkDescriptorSetLayout - VkSpecializationMapEntry* = object + VkSpecializationMapEntry* {.byref.} = object constantID*: uint32 offset*: uint32 size*: uint - VkSpecializationInfo* = object + VkSpecializationInfo* {.byref.} = object mapEntryCount*: uint32 pMapEntries*: ptr VkSpecializationMapEntry dataSize*: uint pData*: pointer - VkPipelineShaderStageCreateInfo* = object + VkPipelineShaderStageCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineShaderStageCreateFlags @@ -5536,7 +5536,7 @@ type pName*: cstring pSpecializationInfo*: ptr VkSpecializationInfo - VkComputePipelineCreateInfo* = object + VkComputePipelineCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineCreateFlags @@ -5545,30 +5545,30 @@ type basePipelineHandle*: VkPipeline basePipelineIndex*: int32 - VkComputePipelineIndirectBufferInfoNV* = object + VkComputePipelineIndirectBufferInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer deviceAddress*: VkDeviceAddress size*: VkDeviceSize pipelineDeviceAddressCaptureReplay*: VkDeviceAddress - VkPipelineCreateFlags2CreateInfoKHR* = object + VkPipelineCreateFlags2CreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineCreateFlags2KHR - VkVertexInputBindingDescription* = object + VkVertexInputBindingDescription* {.byref.} = object binding*: uint32 stride*: uint32 inputRate*: VkVertexInputRate - VkVertexInputAttributeDescription* = object + VkVertexInputAttributeDescription* {.byref.} = object location*: uint32 binding*: uint32 format*: VkFormat offset*: uint32 - VkPipelineVertexInputStateCreateInfo* = object + VkPipelineVertexInputStateCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineVertexInputStateCreateFlags @@ -5577,20 +5577,20 @@ type vertexAttributeDescriptionCount*: uint32 pVertexAttributeDescriptions*: ptr VkVertexInputAttributeDescription - VkPipelineInputAssemblyStateCreateInfo* = object + VkPipelineInputAssemblyStateCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineInputAssemblyStateCreateFlags topology*: VkPrimitiveTopology primitiveRestartEnable*: VkBool32 - VkPipelineTessellationStateCreateInfo* = object + VkPipelineTessellationStateCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineTessellationStateCreateFlags patchControlPoints*: uint32 - VkPipelineViewportStateCreateInfo* = object + VkPipelineViewportStateCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineViewportStateCreateFlags @@ -5599,7 +5599,7 @@ type scissorCount*: uint32 pScissors*: ptr VkRect2D - VkPipelineRasterizationStateCreateInfo* = object + VkPipelineRasterizationStateCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineRasterizationStateCreateFlags @@ -5614,7 +5614,7 @@ type depthBiasSlopeFactor*: float32 lineWidth*: float32 - VkPipelineMultisampleStateCreateInfo* = object + VkPipelineMultisampleStateCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineMultisampleStateCreateFlags @@ -5625,7 +5625,7 @@ type alphaToCoverageEnable*: VkBool32 alphaToOneEnable*: VkBool32 - VkPipelineColorBlendAttachmentState* = object + VkPipelineColorBlendAttachmentState* {.byref.} = object blendEnable*: VkBool32 srcColorBlendFactor*: VkBlendFactor dstColorBlendFactor*: VkBlendFactor @@ -5635,7 +5635,7 @@ type alphaBlendOp*: VkBlendOp colorWriteMask*: VkColorComponentFlags - VkPipelineColorBlendStateCreateInfo* = object + VkPipelineColorBlendStateCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineColorBlendStateCreateFlags @@ -5645,14 +5645,14 @@ type pAttachments*: ptr VkPipelineColorBlendAttachmentState blendConstants*: array[4, float32] - VkPipelineDynamicStateCreateInfo* = object + VkPipelineDynamicStateCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineDynamicStateCreateFlags dynamicStateCount*: uint32 pDynamicStates*: ptr VkDynamicState - VkStencilOpState* = object + VkStencilOpState* {.byref.} = object failOp*: VkStencilOp passOp*: VkStencilOp depthFailOp*: VkStencilOp @@ -5661,7 +5661,7 @@ type writeMask*: uint32 reference*: uint32 - VkPipelineDepthStencilStateCreateInfo* = object + VkPipelineDepthStencilStateCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineDepthStencilStateCreateFlags @@ -5675,7 +5675,7 @@ type minDepthBounds*: float32 maxDepthBounds*: float32 - VkGraphicsPipelineCreateInfo* = object + VkGraphicsPipelineCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineCreateFlags @@ -5696,25 +5696,25 @@ type basePipelineHandle*: VkPipeline basePipelineIndex*: int32 - VkPipelineCacheCreateInfo* = object + VkPipelineCacheCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineCacheCreateFlags initialDataSize*: uint pInitialData*: pointer - VkPipelineCacheHeaderVersionOne* = object + VkPipelineCacheHeaderVersionOne* {.byref.} = object headerSize*: uint32 headerVersion*: VkPipelineCacheHeaderVersion vendorID*: uint32 deviceID*: uint32 pipelineCacheUUID*: array[VK_UUID_SIZE, uint8] - VkPipelineCacheStageValidationIndexEntry* = object + VkPipelineCacheStageValidationIndexEntry* {.byref.} = object codeSize*: uint64 codeOffset*: uint64 - VkPipelineCacheSafetyCriticalIndexEntry* = object + VkPipelineCacheSafetyCriticalIndexEntry* {.byref.} = object pipelineIdentifier*: array[VK_UUID_SIZE, uint8] pipelineMemorySize*: uint64 jsonSize*: uint64 @@ -5723,7 +5723,7 @@ type stageIndexStride*: uint32 stageIndexOffset*: uint64 - VkPipelineCacheHeaderVersionSafetyCriticalOne* = object + VkPipelineCacheHeaderVersionSafetyCriticalOne* {.byref.} = object headerVersionOne*: VkPipelineCacheHeaderVersionOne validationVersion*: VkPipelineCacheValidationVersion implementationData*: uint32 @@ -5731,12 +5731,12 @@ type pipelineIndexStride*: uint32 pipelineIndexOffset*: uint64 - VkPushConstantRange* = object + VkPushConstantRange* {.byref.} = object stageFlags*: VkShaderStageFlags offset*: uint32 size*: uint32 - VkPipelineLayoutCreateInfo* = object + VkPipelineLayoutCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineLayoutCreateFlags @@ -5745,7 +5745,7 @@ type pushConstantRangeCount*: uint32 pPushConstantRanges*: ptr VkPushConstantRange - VkSamplerCreateInfo* = object + VkSamplerCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkSamplerCreateFlags @@ -5765,20 +5765,20 @@ type borderColor*: VkBorderColor unnormalizedCoordinates*: VkBool32 - VkCommandPoolCreateInfo* = object + VkCommandPoolCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkCommandPoolCreateFlags queueFamilyIndex*: uint32 - VkCommandBufferAllocateInfo* = object + VkCommandBufferAllocateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer commandPool*: VkCommandPool level*: VkCommandBufferLevel commandBufferCount*: uint32 - VkCommandBufferInheritanceInfo* = object + VkCommandBufferInheritanceInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer renderPass*: VkRenderPass @@ -5788,13 +5788,13 @@ type queryFlags*: VkQueryControlFlags pipelineStatistics*: VkQueryPipelineStatisticFlags - VkCommandBufferBeginInfo* = object + VkCommandBufferBeginInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkCommandBufferUsageFlags pInheritanceInfo*: ptr VkCommandBufferInheritanceInfo - VkRenderPassBeginInfo* = object + VkRenderPassBeginInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer renderPass*: VkRenderPass @@ -5803,25 +5803,25 @@ type clearValueCount*: uint32 pClearValues*: ptr VkClearValue - VkClearColorValue* {.union.} = object + VkClearColorValue* {.union, byref.} = object float32*: array[4, float32] int32*: array[4, int32] uint32*: array[4, uint32] - VkClearDepthStencilValue* = object + VkClearDepthStencilValue* {.byref.} = object depth*: float32 stencil*: uint32 - VkClearValue* {.union.} = object + VkClearValue* {.union, byref.} = object color*: VkClearColorValue depthStencil*: VkClearDepthStencilValue - VkClearAttachment* = object + VkClearAttachment* {.byref.} = object aspectMask*: VkImageAspectFlags colorAttachment*: uint32 clearValue*: VkClearValue - VkAttachmentDescription* = object + VkAttachmentDescription* {.byref.} = object flags*: VkAttachmentDescriptionFlags format*: VkFormat samples*: VkSampleCountFlagBits @@ -5832,11 +5832,11 @@ type initialLayout*: VkImageLayout finalLayout*: VkImageLayout - VkAttachmentReference* = object + VkAttachmentReference* {.byref.} = object attachment*: uint32 layout*: VkImageLayout - VkSubpassDescription* = object + VkSubpassDescription* {.byref.} = object flags*: VkSubpassDescriptionFlags pipelineBindPoint*: VkPipelineBindPoint inputAttachmentCount*: uint32 @@ -5848,7 +5848,7 @@ type preserveAttachmentCount*: uint32 pPreserveAttachments*: ptr uint32 - VkSubpassDependency* = object + VkSubpassDependency* {.byref.} = object srcSubpass*: uint32 dstSubpass*: uint32 srcStageMask*: VkPipelineStageFlags @@ -5857,7 +5857,7 @@ type dstAccessMask*: VkAccessFlags dependencyFlags*: VkDependencyFlags - VkRenderPassCreateInfo* = object + VkRenderPassCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkRenderPassCreateFlags @@ -5868,17 +5868,17 @@ type dependencyCount*: uint32 pDependencies*: ptr VkSubpassDependency - VkEventCreateInfo* = object + VkEventCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkEventCreateFlags - VkFenceCreateInfo* = object + VkFenceCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkFenceCreateFlags - VkPhysicalDeviceFeatures* = object + VkPhysicalDeviceFeatures* {.byref.} = object robustBufferAccess*: VkBool32 fullDrawIndexUint32*: VkBool32 imageCubeArray*: VkBool32 @@ -5935,14 +5935,14 @@ type variableMultisampleRate*: VkBool32 inheritedQueries*: VkBool32 - VkPhysicalDeviceSparseProperties* = object + VkPhysicalDeviceSparseProperties* {.byref.} = object residencyStandard2DBlockShape*: VkBool32 residencyStandard2DMultisampleBlockShape*: VkBool32 residencyStandard3DBlockShape*: VkBool32 residencyAlignedMipSize*: VkBool32 residencyNonResidentStrict*: VkBool32 - VkPhysicalDeviceLimits* = object + VkPhysicalDeviceLimits* {.byref.} = object maxImageDimension1D*: uint32 maxImageDimension2D*: uint32 maxImageDimension3D*: uint32 @@ -6050,12 +6050,12 @@ type optimalBufferCopyRowPitchAlignment*: VkDeviceSize nonCoherentAtomSize*: VkDeviceSize - VkSemaphoreCreateInfo* = object + VkSemaphoreCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkSemaphoreCreateFlags - VkQueryPoolCreateInfo* = object + VkQueryPoolCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkQueryPoolCreateFlags @@ -6063,7 +6063,7 @@ type queryCount*: uint32 pipelineStatistics*: VkQueryPipelineStatisticFlags - VkFramebufferCreateInfo* = object + VkFramebufferCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkFramebufferCreateFlags @@ -6074,34 +6074,34 @@ type height*: uint32 layers*: uint32 - VkDrawIndirectCommand* = object + VkDrawIndirectCommand* {.byref.} = object vertexCount*: uint32 instanceCount*: uint32 firstVertex*: uint32 firstInstance*: uint32 - VkDrawIndexedIndirectCommand* = object + VkDrawIndexedIndirectCommand* {.byref.} = object indexCount*: uint32 instanceCount*: uint32 firstIndex*: uint32 vertexOffset*: int32 firstInstance*: uint32 - VkDispatchIndirectCommand* = object + VkDispatchIndirectCommand* {.byref.} = object x*: uint32 y*: uint32 z*: uint32 - VkMultiDrawInfoEXT* = object + VkMultiDrawInfoEXT* {.byref.} = object firstVertex*: uint32 vertexCount*: uint32 - VkMultiDrawIndexedInfoEXT* = object + VkMultiDrawIndexedInfoEXT* {.byref.} = object firstIndex*: uint32 indexCount*: uint32 vertexOffset*: int32 - VkSubmitInfo* = object + VkSubmitInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer waitSemaphoreCount*: uint32 @@ -6112,7 +6112,7 @@ type signalSemaphoreCount*: uint32 pSignalSemaphores*: ptr VkSemaphore - VkDisplayPropertiesKHR* = object + VkDisplayPropertiesKHR* {.byref.} = object display*: VkDisplayKHR displayName*: cstring physicalDimensions*: VkExtent2D @@ -6121,25 +6121,25 @@ type planeReorderPossible*: VkBool32 persistentContent*: VkBool32 - VkDisplayPlanePropertiesKHR* = object + VkDisplayPlanePropertiesKHR* {.byref.} = object currentDisplay*: VkDisplayKHR currentStackIndex*: uint32 - VkDisplayModeParametersKHR* = object + VkDisplayModeParametersKHR* {.byref.} = object visibleRegion*: VkExtent2D refreshRate*: uint32 - VkDisplayModePropertiesKHR* = object + VkDisplayModePropertiesKHR* {.byref.} = object displayMode*: VkDisplayModeKHR parameters*: VkDisplayModeParametersKHR - VkDisplayModeCreateInfoKHR* = object + VkDisplayModeCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkDisplayModeCreateFlagsKHR parameters*: VkDisplayModeParametersKHR - VkDisplayPlaneCapabilitiesKHR* = object + VkDisplayPlaneCapabilitiesKHR* {.byref.} = object supportedAlpha*: VkDisplayPlaneAlphaFlagsKHR minSrcPosition*: VkOffset2D maxSrcPosition*: VkOffset2D @@ -6150,7 +6150,7 @@ type minDstExtent*: VkExtent2D maxDstExtent*: VkExtent2D - VkDisplaySurfaceCreateInfoKHR* = object + VkDisplaySurfaceCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkDisplaySurfaceCreateFlagsKHR @@ -6162,14 +6162,14 @@ type alphaMode*: VkDisplayPlaneAlphaFlagBitsKHR imageExtent*: VkExtent2D - VkDisplayPresentInfoKHR* = object + VkDisplayPresentInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer srcRect*: VkRect2D dstRect*: VkRect2D persistent*: VkBool32 - VkSurfaceCapabilitiesKHR* = object + VkSurfaceCapabilitiesKHR* {.byref.} = object minImageCount*: uint32 maxImageCount*: uint32 currentExtent*: VkExtent2D @@ -6181,77 +6181,77 @@ type supportedCompositeAlpha*: VkCompositeAlphaFlagsKHR supportedUsageFlags*: VkImageUsageFlags - VkAndroidSurfaceCreateInfoKHR* = object + VkAndroidSurfaceCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkAndroidSurfaceCreateFlagsKHR window*: ptr ANativeWindow - VkViSurfaceCreateInfoNN* = object + VkViSurfaceCreateInfoNN* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkViSurfaceCreateFlagsNN window*: pointer - VkWaylandSurfaceCreateInfoKHR* = object + VkWaylandSurfaceCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkWaylandSurfaceCreateFlagsKHR display*: ptr wl_display surface*: ptr wl_surface - VkWin32SurfaceCreateInfoKHR* = object + VkWin32SurfaceCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkWin32SurfaceCreateFlagsKHR hinstance*: HINSTANCE hwnd*: HWND - VkXlibSurfaceCreateInfoKHR* = object + VkXlibSurfaceCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkXlibSurfaceCreateFlagsKHR dpy*: ptr Display window*: Window - VkXcbSurfaceCreateInfoKHR* = object + VkXcbSurfaceCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkXcbSurfaceCreateFlagsKHR connection*: ptr xcb_connection_t window*: xcb_window_t - VkDirectFBSurfaceCreateInfoEXT* = object + VkDirectFBSurfaceCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkDirectFBSurfaceCreateFlagsEXT dfb*: ptr IDirectFB surface*: ptr IDirectFBSurface - VkImagePipeSurfaceCreateInfoFUCHSIA* = object + VkImagePipeSurfaceCreateInfoFUCHSIA* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkImagePipeSurfaceCreateFlagsFUCHSIA imagePipeHandle*: zx_handle_t - VkStreamDescriptorSurfaceCreateInfoGGP* = object + VkStreamDescriptorSurfaceCreateInfoGGP* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkStreamDescriptorSurfaceCreateFlagsGGP streamDescriptor*: GgpStreamDescriptor - VkScreenSurfaceCreateInfoQNX* = object + VkScreenSurfaceCreateInfoQNX* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkScreenSurfaceCreateFlagsQNX context*: ptr screen_context window*: ptr screen_window - VkSurfaceFormatKHR* = object + VkSurfaceFormatKHR* {.byref.} = object format*: VkFormat colorSpace*: VkColorSpaceKHR - VkSwapchainCreateInfoKHR* = object + VkSwapchainCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkSwapchainCreateFlagsKHR @@ -6271,7 +6271,7 @@ type clipped*: VkBool32 oldSwapchain*: VkSwapchainKHR - VkPresentInfoKHR* = object + VkPresentInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer waitSemaphoreCount*: uint32 @@ -6281,20 +6281,20 @@ type pImageIndices*: ptr uint32 pResults*: ptr VkResult - VkDebugReportCallbackCreateInfoEXT* = object + VkDebugReportCallbackCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkDebugReportFlagsEXT pfnCallback*: PFN_vkDebugReportCallbackEXT pUserData*: pointer - VkValidationFlagsEXT* = object + VkValidationFlagsEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer disabledValidationCheckCount*: uint32 pDisabledValidationChecks*: ptr VkValidationCheckEXT - VkValidationFeaturesEXT* = object + VkValidationFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer enabledValidationFeatureCount*: uint32 @@ -6302,20 +6302,20 @@ type disabledValidationFeatureCount*: uint32 pDisabledValidationFeatures*: ptr VkValidationFeatureDisableEXT - VkLayerSettingsCreateInfoEXT* = object + VkLayerSettingsCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer settingCount*: uint32 pSettings*: ptr VkLayerSettingEXT - VkLayerSettingEXT* = object + VkLayerSettingEXT* {.byref.} = object pLayerName*: cstring pSettingName*: cstring `type`*: VkLayerSettingTypeEXT valueCount*: uint32 pValues*: pointer - VkApplicationParametersEXT* = object + VkApplicationParametersEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer vendorID*: uint32 @@ -6323,19 +6323,19 @@ type key*: uint32 value*: uint64 - VkPipelineRasterizationStateRasterizationOrderAMD* = object + VkPipelineRasterizationStateRasterizationOrderAMD* {.byref.} = object sType*: VkStructureType pNext*: pointer rasterizationOrder*: VkRasterizationOrderAMD - VkDebugMarkerObjectNameInfoEXT* = object + VkDebugMarkerObjectNameInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer objectType*: VkDebugReportObjectTypeEXT `object`*: uint64 pObjectName*: cstring - VkDebugMarkerObjectTagInfoEXT* = object + VkDebugMarkerObjectTagInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer objectType*: VkDebugReportObjectTypeEXT @@ -6344,79 +6344,79 @@ type tagSize*: uint pTag*: pointer - VkDebugMarkerMarkerInfoEXT* = object + VkDebugMarkerMarkerInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer pMarkerName*: cstring color*: array[4, float32] - VkDedicatedAllocationImageCreateInfoNV* = object + VkDedicatedAllocationImageCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer dedicatedAllocation*: VkBool32 - VkDedicatedAllocationBufferCreateInfoNV* = object + VkDedicatedAllocationBufferCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer dedicatedAllocation*: VkBool32 - VkDedicatedAllocationMemoryAllocateInfoNV* = object + VkDedicatedAllocationMemoryAllocateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer image*: VkImage buffer*: VkBuffer - VkExternalImageFormatPropertiesNV* = object + VkExternalImageFormatPropertiesNV* {.byref.} = object imageFormatProperties*: VkImageFormatProperties externalMemoryFeatures*: VkExternalMemoryFeatureFlagsNV exportFromImportedHandleTypes*: VkExternalMemoryHandleTypeFlagsNV compatibleHandleTypes*: VkExternalMemoryHandleTypeFlagsNV - VkExternalMemoryImageCreateInfoNV* = object + VkExternalMemoryImageCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer handleTypes*: VkExternalMemoryHandleTypeFlagsNV - VkExportMemoryAllocateInfoNV* = object + VkExportMemoryAllocateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer handleTypes*: VkExternalMemoryHandleTypeFlagsNV - VkImportMemoryWin32HandleInfoNV* = object + VkImportMemoryWin32HandleInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer handleType*: VkExternalMemoryHandleTypeFlagsNV handle*: HANDLE - VkExportMemoryWin32HandleInfoNV* = object + VkExportMemoryWin32HandleInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer pAttributes*: ptr SECURITY_ATTRIBUTES dwAccess*: DWORD - VkExportMemorySciBufInfoNV* = object + VkExportMemorySciBufInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer pAttributes*: NvSciBufAttrList - VkImportMemorySciBufInfoNV* = object + VkImportMemorySciBufInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer handleType*: VkExternalMemoryHandleTypeFlagBits handle*: NvSciBufObj - VkMemoryGetSciBufInfoNV* = object + VkMemoryGetSciBufInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer memory*: VkDeviceMemory handleType*: VkExternalMemoryHandleTypeFlagBits - VkMemorySciBufPropertiesNV* = object + VkMemorySciBufPropertiesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer memoryTypeBits*: uint32 - VkPhysicalDeviceExternalMemorySciBufFeaturesNV* = object + VkPhysicalDeviceExternalMemorySciBufFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer sciBufImport*: VkBool32 @@ -6424,7 +6424,7 @@ type VkPhysicalDeviceExternalSciBufFeaturesNV* = VkPhysicalDeviceExternalMemorySciBufFeaturesNV - VkWin32KeyedMutexAcquireReleaseInfoNV* = object + VkWin32KeyedMutexAcquireReleaseInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer acquireCount*: uint32 @@ -6435,40 +6435,40 @@ type pReleaseSyncs*: ptr VkDeviceMemory pReleaseKeys*: ptr uint64 - VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV* = object + VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer deviceGeneratedCommands*: VkBool32 - VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV* = object + VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer deviceGeneratedCompute*: VkBool32 deviceGeneratedComputePipelines*: VkBool32 deviceGeneratedComputeCaptureReplay*: VkBool32 - VkDevicePrivateDataCreateInfo* = object + VkDevicePrivateDataCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer privateDataSlotRequestCount*: uint32 VkDevicePrivateDataCreateInfoEXT* = VkDevicePrivateDataCreateInfo - VkPrivateDataSlotCreateInfo* = object + VkPrivateDataSlotCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPrivateDataSlotCreateFlags VkPrivateDataSlotCreateInfoEXT* = VkPrivateDataSlotCreateInfo - VkPhysicalDevicePrivateDataFeatures* = object + VkPhysicalDevicePrivateDataFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer privateData*: VkBool32 VkPhysicalDevicePrivateDataFeaturesEXT* = VkPhysicalDevicePrivateDataFeatures - VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV* = object + VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer maxGraphicsShaderGroupCount*: uint32 @@ -6481,12 +6481,12 @@ type minSequencesIndexBufferOffsetAlignment*: uint32 minIndirectCommandsBufferOffsetAlignment*: uint32 - VkPhysicalDeviceMultiDrawPropertiesEXT* = object + VkPhysicalDeviceMultiDrawPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer maxMultiDrawCount*: uint32 - VkGraphicsShaderGroupCreateInfoNV* = object + VkGraphicsShaderGroupCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer stageCount*: uint32 @@ -6494,7 +6494,7 @@ type pVertexInputState*: ptr VkPipelineVertexInputStateCreateInfo pTessellationState*: ptr VkPipelineTessellationStateCreateInfo - VkGraphicsPipelineShaderGroupsCreateInfoNV* = object + VkGraphicsPipelineShaderGroupsCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer groupCount*: uint32 @@ -6502,27 +6502,27 @@ type pipelineCount*: uint32 pPipelines*: ptr VkPipeline - VkBindShaderGroupIndirectCommandNV* = object + VkBindShaderGroupIndirectCommandNV* {.byref.} = object groupIndex*: uint32 - VkBindIndexBufferIndirectCommandNV* = object + VkBindIndexBufferIndirectCommandNV* {.byref.} = object bufferAddress*: VkDeviceAddress size*: uint32 indexType*: VkIndexType - VkBindVertexBufferIndirectCommandNV* = object + VkBindVertexBufferIndirectCommandNV* {.byref.} = object bufferAddress*: VkDeviceAddress size*: uint32 stride*: uint32 - VkSetStateFlagsIndirectCommandNV* = object + VkSetStateFlagsIndirectCommandNV* {.byref.} = object data*: uint32 - VkIndirectCommandsStreamNV* = object + VkIndirectCommandsStreamNV* {.byref.} = object buffer*: VkBuffer offset*: VkDeviceSize - VkIndirectCommandsLayoutTokenNV* = object + VkIndirectCommandsLayoutTokenNV* {.byref.} = object sType*: VkStructureType pNext*: pointer tokenType*: VkIndirectCommandsTokenTypeNV @@ -6539,7 +6539,7 @@ type pIndexTypes*: ptr VkIndexType pIndexTypeValues*: ptr uint32 - VkIndirectCommandsLayoutCreateInfoNV* = object + VkIndirectCommandsLayoutCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkIndirectCommandsLayoutUsageFlagsNV @@ -6549,7 +6549,7 @@ type streamCount*: uint32 pStreamStrides*: ptr uint32 - VkGeneratedCommandsInfoNV* = object + VkGeneratedCommandsInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer pipelineBindPoint*: VkPipelineBindPoint @@ -6566,7 +6566,7 @@ type sequencesIndexBuffer*: VkBuffer sequencesIndexOffset*: VkDeviceSize - VkGeneratedCommandsMemoryRequirementsInfoNV* = object + VkGeneratedCommandsMemoryRequirementsInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer pipelineBindPoint*: VkPipelineBindPoint @@ -6574,44 +6574,44 @@ type indirectCommandsLayout*: VkIndirectCommandsLayoutNV maxSequencesCount*: uint32 - VkPipelineIndirectDeviceAddressInfoNV* = object + VkPipelineIndirectDeviceAddressInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer pipelineBindPoint*: VkPipelineBindPoint pipeline*: VkPipeline - VkBindPipelineIndirectCommandNV* = object + VkBindPipelineIndirectCommandNV* {.byref.} = object pipelineAddress*: VkDeviceAddress - VkPhysicalDeviceFeatures2* = object + VkPhysicalDeviceFeatures2* {.byref.} = object sType*: VkStructureType pNext*: pointer features*: VkPhysicalDeviceFeatures VkPhysicalDeviceFeatures2KHR* = VkPhysicalDeviceFeatures2 - VkPhysicalDeviceProperties2* = object + VkPhysicalDeviceProperties2* {.byref.} = object sType*: VkStructureType pNext*: pointer properties*: VkPhysicalDeviceProperties VkPhysicalDeviceProperties2KHR* = VkPhysicalDeviceProperties2 - VkFormatProperties2* = object + VkFormatProperties2* {.byref.} = object sType*: VkStructureType pNext*: pointer formatProperties*: VkFormatProperties VkFormatProperties2KHR* = VkFormatProperties2 - VkImageFormatProperties2* = object + VkImageFormatProperties2* {.byref.} = object sType*: VkStructureType pNext*: pointer imageFormatProperties*: VkImageFormatProperties VkImageFormatProperties2KHR* = VkImageFormatProperties2 - VkPhysicalDeviceImageFormatInfo2* = object + VkPhysicalDeviceImageFormatInfo2* {.byref.} = object sType*: VkStructureType pNext*: pointer format*: VkFormat @@ -6622,28 +6622,28 @@ type VkPhysicalDeviceImageFormatInfo2KHR* = VkPhysicalDeviceImageFormatInfo2 - VkQueueFamilyProperties2* = object + VkQueueFamilyProperties2* {.byref.} = object sType*: VkStructureType pNext*: pointer queueFamilyProperties*: VkQueueFamilyProperties VkQueueFamilyProperties2KHR* = VkQueueFamilyProperties2 - VkPhysicalDeviceMemoryProperties2* = object + VkPhysicalDeviceMemoryProperties2* {.byref.} = object sType*: VkStructureType pNext*: pointer memoryProperties*: VkPhysicalDeviceMemoryProperties VkPhysicalDeviceMemoryProperties2KHR* = VkPhysicalDeviceMemoryProperties2 - VkSparseImageFormatProperties2* = object + VkSparseImageFormatProperties2* {.byref.} = object sType*: VkStructureType pNext*: pointer properties*: VkSparseImageFormatProperties VkSparseImageFormatProperties2KHR* = VkSparseImageFormatProperties2 - VkPhysicalDeviceSparseImageFormatInfo2* = object + VkPhysicalDeviceSparseImageFormatInfo2* {.byref.} = object sType*: VkStructureType pNext*: pointer format*: VkFormat @@ -6654,12 +6654,12 @@ type VkPhysicalDeviceSparseImageFormatInfo2KHR* = VkPhysicalDeviceSparseImageFormatInfo2 - VkPhysicalDevicePushDescriptorPropertiesKHR* = object + VkPhysicalDevicePushDescriptorPropertiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer maxPushDescriptors*: uint32 - VkConformanceVersion* = object + VkConformanceVersion* {.byref.} = object major*: uint8 minor*: uint8 subminor*: uint8 @@ -6667,7 +6667,7 @@ type VkConformanceVersionKHR* = VkConformanceVersion - VkPhysicalDeviceDriverProperties* = object + VkPhysicalDeviceDriverProperties* {.byref.} = object sType*: VkStructureType pNext*: pointer driverID*: VkDriverId @@ -6677,22 +6677,22 @@ type VkPhysicalDeviceDriverPropertiesKHR* = VkPhysicalDeviceDriverProperties - VkPresentRegionsKHR* = object + VkPresentRegionsKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer swapchainCount*: uint32 pRegions*: ptr VkPresentRegionKHR - VkPresentRegionKHR* = object + VkPresentRegionKHR* {.byref.} = object rectangleCount*: uint32 pRectangles*: ptr VkRectLayerKHR - VkRectLayerKHR* = object + VkRectLayerKHR* {.byref.} = object offset*: VkOffset2D extent*: VkExtent2D layer*: uint32 - VkPhysicalDeviceVariablePointersFeatures* = object + VkPhysicalDeviceVariablePointersFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer variablePointersStorageBuffer*: VkBool32 @@ -6704,28 +6704,28 @@ type VkPhysicalDeviceVariablePointerFeatures* = VkPhysicalDeviceVariablePointersFeatures - VkExternalMemoryProperties* = object + VkExternalMemoryProperties* {.byref.} = object externalMemoryFeatures*: VkExternalMemoryFeatureFlags exportFromImportedHandleTypes*: VkExternalMemoryHandleTypeFlags compatibleHandleTypes*: VkExternalMemoryHandleTypeFlags VkExternalMemoryPropertiesKHR* = VkExternalMemoryProperties - VkPhysicalDeviceExternalImageFormatInfo* = object + VkPhysicalDeviceExternalImageFormatInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer handleType*: VkExternalMemoryHandleTypeFlagBits VkPhysicalDeviceExternalImageFormatInfoKHR* = VkPhysicalDeviceExternalImageFormatInfo - VkExternalImageFormatProperties* = object + VkExternalImageFormatProperties* {.byref.} = object sType*: VkStructureType pNext*: pointer externalMemoryProperties*: VkExternalMemoryProperties VkExternalImageFormatPropertiesKHR* = VkExternalImageFormatProperties - VkPhysicalDeviceExternalBufferInfo* = object + VkPhysicalDeviceExternalBufferInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkBufferCreateFlags @@ -6734,14 +6734,14 @@ type VkPhysicalDeviceExternalBufferInfoKHR* = VkPhysicalDeviceExternalBufferInfo - VkExternalBufferProperties* = object + VkExternalBufferProperties* {.byref.} = object sType*: VkStructureType pNext*: pointer externalMemoryProperties*: VkExternalMemoryProperties VkExternalBufferPropertiesKHR* = VkExternalBufferProperties - VkPhysicalDeviceIDProperties* = object + VkPhysicalDeviceIDProperties* {.byref.} = object sType*: VkStructureType pNext*: pointer deviceUUID*: array[VK_UUID_SIZE, uint8] @@ -6752,87 +6752,87 @@ type VkPhysicalDeviceIDPropertiesKHR* = VkPhysicalDeviceIDProperties - VkExternalMemoryImageCreateInfo* = object + VkExternalMemoryImageCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer handleTypes*: VkExternalMemoryHandleTypeFlags VkExternalMemoryImageCreateInfoKHR* = VkExternalMemoryImageCreateInfo - VkExternalMemoryBufferCreateInfo* = object + VkExternalMemoryBufferCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer handleTypes*: VkExternalMemoryHandleTypeFlags VkExternalMemoryBufferCreateInfoKHR* = VkExternalMemoryBufferCreateInfo - VkExportMemoryAllocateInfo* = object + VkExportMemoryAllocateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer handleTypes*: VkExternalMemoryHandleTypeFlags VkExportMemoryAllocateInfoKHR* = VkExportMemoryAllocateInfo - VkImportMemoryWin32HandleInfoKHR* = object + VkImportMemoryWin32HandleInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer handleType*: VkExternalMemoryHandleTypeFlagBits handle*: HANDLE name*: LPCWSTR - VkExportMemoryWin32HandleInfoKHR* = object + VkExportMemoryWin32HandleInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer pAttributes*: ptr SECURITY_ATTRIBUTES dwAccess*: DWORD name*: LPCWSTR - VkImportMemoryZirconHandleInfoFUCHSIA* = object + VkImportMemoryZirconHandleInfoFUCHSIA* {.byref.} = object sType*: VkStructureType pNext*: pointer handleType*: VkExternalMemoryHandleTypeFlagBits handle*: zx_handle_t - VkMemoryZirconHandlePropertiesFUCHSIA* = object + VkMemoryZirconHandlePropertiesFUCHSIA* {.byref.} = object sType*: VkStructureType pNext*: pointer memoryTypeBits*: uint32 - VkMemoryGetZirconHandleInfoFUCHSIA* = object + VkMemoryGetZirconHandleInfoFUCHSIA* {.byref.} = object sType*: VkStructureType pNext*: pointer memory*: VkDeviceMemory handleType*: VkExternalMemoryHandleTypeFlagBits - VkMemoryWin32HandlePropertiesKHR* = object + VkMemoryWin32HandlePropertiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer memoryTypeBits*: uint32 - VkMemoryGetWin32HandleInfoKHR* = object + VkMemoryGetWin32HandleInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer memory*: VkDeviceMemory handleType*: VkExternalMemoryHandleTypeFlagBits - VkImportMemoryFdInfoKHR* = object + VkImportMemoryFdInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer handleType*: VkExternalMemoryHandleTypeFlagBits fd*: int - VkMemoryFdPropertiesKHR* = object + VkMemoryFdPropertiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer memoryTypeBits*: uint32 - VkMemoryGetFdInfoKHR* = object + VkMemoryGetFdInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer memory*: VkDeviceMemory handleType*: VkExternalMemoryHandleTypeFlagBits - VkWin32KeyedMutexAcquireReleaseInfoKHR* = object + VkWin32KeyedMutexAcquireReleaseInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer acquireCount*: uint32 @@ -6843,14 +6843,14 @@ type pReleaseSyncs*: ptr VkDeviceMemory pReleaseKeys*: ptr uint64 - VkPhysicalDeviceExternalSemaphoreInfo* = object + VkPhysicalDeviceExternalSemaphoreInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer handleType*: VkExternalSemaphoreHandleTypeFlagBits VkPhysicalDeviceExternalSemaphoreInfoKHR* = VkPhysicalDeviceExternalSemaphoreInfo - VkExternalSemaphoreProperties* = object + VkExternalSemaphoreProperties* {.byref.} = object sType*: VkStructureType pNext*: pointer exportFromImportedHandleTypes*: VkExternalSemaphoreHandleTypeFlags @@ -6859,14 +6859,14 @@ type VkExternalSemaphorePropertiesKHR* = VkExternalSemaphoreProperties - VkExportSemaphoreCreateInfo* = object + VkExportSemaphoreCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer handleTypes*: VkExternalSemaphoreHandleTypeFlags VkExportSemaphoreCreateInfoKHR* = VkExportSemaphoreCreateInfo - VkImportSemaphoreWin32HandleInfoKHR* = object + VkImportSemaphoreWin32HandleInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer semaphore*: VkSemaphore @@ -6875,14 +6875,14 @@ type handle*: HANDLE name*: LPCWSTR - VkExportSemaphoreWin32HandleInfoKHR* = object + VkExportSemaphoreWin32HandleInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer pAttributes*: ptr SECURITY_ATTRIBUTES dwAccess*: DWORD name*: LPCWSTR - VkD3D12FenceSubmitInfoKHR* = object + VkD3D12FenceSubmitInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer waitSemaphoreValuesCount*: uint32 @@ -6890,13 +6890,13 @@ type signalSemaphoreValuesCount*: uint32 pSignalSemaphoreValues*: ptr uint64 - VkSemaphoreGetWin32HandleInfoKHR* = object + VkSemaphoreGetWin32HandleInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer semaphore*: VkSemaphore handleType*: VkExternalSemaphoreHandleTypeFlagBits - VkImportSemaphoreFdInfoKHR* = object + VkImportSemaphoreFdInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer semaphore*: VkSemaphore @@ -6904,13 +6904,13 @@ type handleType*: VkExternalSemaphoreHandleTypeFlagBits fd*: int - VkSemaphoreGetFdInfoKHR* = object + VkSemaphoreGetFdInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer semaphore*: VkSemaphore handleType*: VkExternalSemaphoreHandleTypeFlagBits - VkImportSemaphoreZirconHandleInfoFUCHSIA* = object + VkImportSemaphoreZirconHandleInfoFUCHSIA* {.byref.} = object sType*: VkStructureType pNext*: pointer semaphore*: VkSemaphore @@ -6918,20 +6918,20 @@ type handleType*: VkExternalSemaphoreHandleTypeFlagBits zirconHandle*: zx_handle_t - VkSemaphoreGetZirconHandleInfoFUCHSIA* = object + VkSemaphoreGetZirconHandleInfoFUCHSIA* {.byref.} = object sType*: VkStructureType pNext*: pointer semaphore*: VkSemaphore handleType*: VkExternalSemaphoreHandleTypeFlagBits - VkPhysicalDeviceExternalFenceInfo* = object + VkPhysicalDeviceExternalFenceInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer handleType*: VkExternalFenceHandleTypeFlagBits VkPhysicalDeviceExternalFenceInfoKHR* = VkPhysicalDeviceExternalFenceInfo - VkExternalFenceProperties* = object + VkExternalFenceProperties* {.byref.} = object sType*: VkStructureType pNext*: pointer exportFromImportedHandleTypes*: VkExternalFenceHandleTypeFlags @@ -6940,14 +6940,14 @@ type VkExternalFencePropertiesKHR* = VkExternalFenceProperties - VkExportFenceCreateInfo* = object + VkExportFenceCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer handleTypes*: VkExternalFenceHandleTypeFlags VkExportFenceCreateInfoKHR* = VkExportFenceCreateInfo - VkImportFenceWin32HandleInfoKHR* = object + VkImportFenceWin32HandleInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer fence*: VkFence @@ -6956,20 +6956,20 @@ type handle*: HANDLE name*: LPCWSTR - VkExportFenceWin32HandleInfoKHR* = object + VkExportFenceWin32HandleInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer pAttributes*: ptr SECURITY_ATTRIBUTES dwAccess*: DWORD name*: LPCWSTR - VkFenceGetWin32HandleInfoKHR* = object + VkFenceGetWin32HandleInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer fence*: VkFence handleType*: VkExternalFenceHandleTypeFlagBits - VkImportFenceFdInfoKHR* = object + VkImportFenceFdInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer fence*: VkFence @@ -6977,55 +6977,55 @@ type handleType*: VkExternalFenceHandleTypeFlagBits fd*: int - VkFenceGetFdInfoKHR* = object + VkFenceGetFdInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer fence*: VkFence handleType*: VkExternalFenceHandleTypeFlagBits - VkExportFenceSciSyncInfoNV* = object + VkExportFenceSciSyncInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer pAttributes*: NvSciSyncAttrList - VkImportFenceSciSyncInfoNV* = object + VkImportFenceSciSyncInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer fence*: VkFence handleType*: VkExternalFenceHandleTypeFlagBits handle*: pointer - VkFenceGetSciSyncInfoNV* = object + VkFenceGetSciSyncInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer fence*: VkFence handleType*: VkExternalFenceHandleTypeFlagBits - VkExportSemaphoreSciSyncInfoNV* = object + VkExportSemaphoreSciSyncInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer pAttributes*: NvSciSyncAttrList - VkImportSemaphoreSciSyncInfoNV* = object + VkImportSemaphoreSciSyncInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer semaphore*: VkSemaphore handleType*: VkExternalSemaphoreHandleTypeFlagBits handle*: pointer - VkSemaphoreGetSciSyncInfoNV* = object + VkSemaphoreGetSciSyncInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer semaphore*: VkSemaphore handleType*: VkExternalSemaphoreHandleTypeFlagBits - VkSciSyncAttributesInfoNV* = object + VkSciSyncAttributesInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer clientType*: VkSciSyncClientTypeNV primitiveType*: VkSciSyncPrimitiveTypeNV - VkPhysicalDeviceExternalSciSyncFeaturesNV* = object + VkPhysicalDeviceExternalSciSyncFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer sciSyncFence*: VkBool32 @@ -7033,7 +7033,7 @@ type sciSyncImport*: VkBool32 sciSyncExport*: VkBool32 - VkPhysicalDeviceExternalSciSync2FeaturesNV* = object + VkPhysicalDeviceExternalSciSync2FeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer sciSyncFence*: VkBool32 @@ -7041,23 +7041,23 @@ type sciSyncImport*: VkBool32 sciSyncExport*: VkBool32 - VkSemaphoreSciSyncPoolCreateInfoNV* = object + VkSemaphoreSciSyncPoolCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer handle*: NvSciSyncObj - VkSemaphoreSciSyncCreateInfoNV* = object + VkSemaphoreSciSyncCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer semaphorePool*: VkSemaphoreSciSyncPoolNV pFence*: ptr NvSciSyncFence - VkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV* = object + VkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer semaphoreSciSyncPoolRequestCount*: uint32 - VkPhysicalDeviceMultiviewFeatures* = object + VkPhysicalDeviceMultiviewFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer multiview*: VkBool32 @@ -7066,7 +7066,7 @@ type VkPhysicalDeviceMultiviewFeaturesKHR* = VkPhysicalDeviceMultiviewFeatures - VkPhysicalDeviceMultiviewProperties* = object + VkPhysicalDeviceMultiviewProperties* {.byref.} = object sType*: VkStructureType pNext*: pointer maxMultiviewViewCount*: uint32 @@ -7074,7 +7074,7 @@ type VkPhysicalDeviceMultiviewPropertiesKHR* = VkPhysicalDeviceMultiviewProperties - VkRenderPassMultiviewCreateInfo* = object + VkRenderPassMultiviewCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer subpassCount*: uint32 @@ -7086,7 +7086,7 @@ type VkRenderPassMultiviewCreateInfoKHR* = VkRenderPassMultiviewCreateInfo - VkSurfaceCapabilities2EXT* = object + VkSurfaceCapabilities2EXT* {.byref.} = object sType*: VkStructureType pNext*: pointer minImageCount*: uint32 @@ -7101,27 +7101,27 @@ type supportedUsageFlags*: VkImageUsageFlags supportedSurfaceCounters*: VkSurfaceCounterFlagsEXT - VkDisplayPowerInfoEXT* = object + VkDisplayPowerInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer powerState*: VkDisplayPowerStateEXT - VkDeviceEventInfoEXT* = object + VkDeviceEventInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer deviceEvent*: VkDeviceEventTypeEXT - VkDisplayEventInfoEXT* = object + VkDisplayEventInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer displayEvent*: VkDisplayEventTypeEXT - VkSwapchainCounterCreateInfoEXT* = object + VkSwapchainCounterCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer surfaceCounters*: VkSurfaceCounterFlagsEXT - VkPhysicalDeviceGroupProperties* = object + VkPhysicalDeviceGroupProperties* {.byref.} = object sType*: VkStructureType pNext*: pointer physicalDeviceCount*: uint32 @@ -7130,7 +7130,7 @@ type VkPhysicalDeviceGroupPropertiesKHR* = VkPhysicalDeviceGroupProperties - VkMemoryAllocateFlagsInfo* = object + VkMemoryAllocateFlagsInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkMemoryAllocateFlags @@ -7138,7 +7138,7 @@ type VkMemoryAllocateFlagsInfoKHR* = VkMemoryAllocateFlagsInfo - VkBindBufferMemoryInfo* = object + VkBindBufferMemoryInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer buffer*: VkBuffer @@ -7147,7 +7147,7 @@ type VkBindBufferMemoryInfoKHR* = VkBindBufferMemoryInfo - VkBindBufferMemoryDeviceGroupInfo* = object + VkBindBufferMemoryDeviceGroupInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer deviceIndexCount*: uint32 @@ -7155,7 +7155,7 @@ type VkBindBufferMemoryDeviceGroupInfoKHR* = VkBindBufferMemoryDeviceGroupInfo - VkBindImageMemoryInfo* = object + VkBindImageMemoryInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer image*: VkImage @@ -7164,7 +7164,7 @@ type VkBindImageMemoryInfoKHR* = VkBindImageMemoryInfo - VkBindImageMemoryDeviceGroupInfo* = object + VkBindImageMemoryDeviceGroupInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer deviceIndexCount*: uint32 @@ -7174,7 +7174,7 @@ type VkBindImageMemoryDeviceGroupInfoKHR* = VkBindImageMemoryDeviceGroupInfo - VkDeviceGroupRenderPassBeginInfo* = object + VkDeviceGroupRenderPassBeginInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer deviceMask*: uint32 @@ -7183,14 +7183,14 @@ type VkDeviceGroupRenderPassBeginInfoKHR* = VkDeviceGroupRenderPassBeginInfo - VkDeviceGroupCommandBufferBeginInfo* = object + VkDeviceGroupCommandBufferBeginInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer deviceMask*: uint32 VkDeviceGroupCommandBufferBeginInfoKHR* = VkDeviceGroupCommandBufferBeginInfo - VkDeviceGroupSubmitInfo* = object + VkDeviceGroupSubmitInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer waitSemaphoreCount*: uint32 @@ -7202,7 +7202,7 @@ type VkDeviceGroupSubmitInfoKHR* = VkDeviceGroupSubmitInfo - VkDeviceGroupBindSparseInfo* = object + VkDeviceGroupBindSparseInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer resourceDeviceIndex*: uint32 @@ -7210,24 +7210,24 @@ type VkDeviceGroupBindSparseInfoKHR* = VkDeviceGroupBindSparseInfo - VkDeviceGroupPresentCapabilitiesKHR* = object + VkDeviceGroupPresentCapabilitiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer presentMask*: array[VK_MAX_DEVICE_GROUP_SIZE, uint32] modes*: VkDeviceGroupPresentModeFlagsKHR - VkImageSwapchainCreateInfoKHR* = object + VkImageSwapchainCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer swapchain*: VkSwapchainKHR - VkBindImageMemorySwapchainInfoKHR* = object + VkBindImageMemorySwapchainInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer swapchain*: VkSwapchainKHR imageIndex*: uint32 - VkAcquireNextImageInfoKHR* = object + VkAcquireNextImageInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer swapchain*: VkSwapchainKHR @@ -7236,14 +7236,14 @@ type fence*: VkFence deviceMask*: uint32 - VkDeviceGroupPresentInfoKHR* = object + VkDeviceGroupPresentInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer swapchainCount*: uint32 pDeviceMasks*: ptr uint32 mode*: VkDeviceGroupPresentModeFlagBitsKHR - VkDeviceGroupDeviceCreateInfo* = object + VkDeviceGroupDeviceCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer physicalDeviceCount*: uint32 @@ -7251,12 +7251,12 @@ type VkDeviceGroupDeviceCreateInfoKHR* = VkDeviceGroupDeviceCreateInfo - VkDeviceGroupSwapchainCreateInfoKHR* = object + VkDeviceGroupSwapchainCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer modes*: VkDeviceGroupPresentModeFlagsKHR - VkDescriptorUpdateTemplateEntry* = object + VkDescriptorUpdateTemplateEntry* {.byref.} = object dstBinding*: uint32 dstArrayElement*: uint32 descriptorCount*: uint32 @@ -7266,7 +7266,7 @@ type VkDescriptorUpdateTemplateEntryKHR* = VkDescriptorUpdateTemplateEntry - VkDescriptorUpdateTemplateCreateInfo* = object + VkDescriptorUpdateTemplateCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkDescriptorUpdateTemplateCreateFlags @@ -7280,27 +7280,27 @@ type VkDescriptorUpdateTemplateCreateInfoKHR* = VkDescriptorUpdateTemplateCreateInfo - VkXYColorEXT* = object + VkXYColorEXT* {.byref.} = object x*: float32 y*: float32 - VkPhysicalDevicePresentIdFeaturesKHR* = object + VkPhysicalDevicePresentIdFeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer presentId*: VkBool32 - VkPresentIdKHR* = object + VkPresentIdKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer swapchainCount*: uint32 pPresentIds*: ptr uint64 - VkPhysicalDevicePresentWaitFeaturesKHR* = object + VkPhysicalDevicePresentWaitFeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer presentWait*: VkBool32 - VkHdrMetadataEXT* = object + VkHdrMetadataEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer displayPrimaryRed*: VkXYColorEXT @@ -7312,84 +7312,84 @@ type maxContentLightLevel*: float32 maxFrameAverageLightLevel*: float32 - VkDisplayNativeHdrSurfaceCapabilitiesAMD* = object + VkDisplayNativeHdrSurfaceCapabilitiesAMD* {.byref.} = object sType*: VkStructureType pNext*: pointer localDimmingSupport*: VkBool32 - VkSwapchainDisplayNativeHdrCreateInfoAMD* = object + VkSwapchainDisplayNativeHdrCreateInfoAMD* {.byref.} = object sType*: VkStructureType pNext*: pointer localDimmingEnable*: VkBool32 - VkRefreshCycleDurationGOOGLE* = object + VkRefreshCycleDurationGOOGLE* {.byref.} = object refreshDuration*: uint64 - VkPastPresentationTimingGOOGLE* = object + VkPastPresentationTimingGOOGLE* {.byref.} = object presentID*: uint32 desiredPresentTime*: uint64 actualPresentTime*: uint64 earliestPresentTime*: uint64 presentMargin*: uint64 - VkPresentTimesInfoGOOGLE* = object + VkPresentTimesInfoGOOGLE* {.byref.} = object sType*: VkStructureType pNext*: pointer swapchainCount*: uint32 pTimes*: ptr VkPresentTimeGOOGLE - VkPresentTimeGOOGLE* = object + VkPresentTimeGOOGLE* {.byref.} = object presentID*: uint32 desiredPresentTime*: uint64 - VkIOSSurfaceCreateInfoMVK* = object + VkIOSSurfaceCreateInfoMVK* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkIOSSurfaceCreateFlagsMVK pView*: pointer - VkMacOSSurfaceCreateInfoMVK* = object + VkMacOSSurfaceCreateInfoMVK* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkMacOSSurfaceCreateFlagsMVK pView*: pointer - VkMetalSurfaceCreateInfoEXT* = object + VkMetalSurfaceCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkMetalSurfaceCreateFlagsEXT pLayer*: ptr CAMetalLayer - VkViewportWScalingNV* = object + VkViewportWScalingNV* {.byref.} = object xcoeff*: float32 ycoeff*: float32 - VkPipelineViewportWScalingStateCreateInfoNV* = object + VkPipelineViewportWScalingStateCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer viewportWScalingEnable*: VkBool32 viewportCount*: uint32 pViewportWScalings*: ptr VkViewportWScalingNV - VkViewportSwizzleNV* = object + VkViewportSwizzleNV* {.byref.} = object x*: VkViewportCoordinateSwizzleNV y*: VkViewportCoordinateSwizzleNV z*: VkViewportCoordinateSwizzleNV w*: VkViewportCoordinateSwizzleNV - VkPipelineViewportSwizzleStateCreateInfoNV* = object + VkPipelineViewportSwizzleStateCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineViewportSwizzleStateCreateFlagsNV viewportCount*: uint32 pViewportSwizzles*: ptr VkViewportSwizzleNV - VkPhysicalDeviceDiscardRectanglePropertiesEXT* = object + VkPhysicalDeviceDiscardRectanglePropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer maxDiscardRectangles*: uint32 - VkPipelineDiscardRectangleStateCreateInfoEXT* = object + VkPipelineDiscardRectangleStateCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineDiscardRectangleStateCreateFlagsEXT @@ -7397,19 +7397,19 @@ type discardRectangleCount*: uint32 pDiscardRectangles*: ptr VkRect2D - VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX* = object + VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX* {.byref.} = object sType*: VkStructureType pNext*: pointer perViewPositionAllComponents*: VkBool32 - VkInputAttachmentAspectReference* = object + VkInputAttachmentAspectReference* {.byref.} = object subpass*: uint32 inputAttachmentIndex*: uint32 aspectMask*: VkImageAspectFlags VkInputAttachmentAspectReferenceKHR* = VkInputAttachmentAspectReference - VkRenderPassInputAttachmentAspectCreateInfo* = object + VkRenderPassInputAttachmentAspectCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer aspectReferenceCount*: uint32 @@ -7417,53 +7417,53 @@ type VkRenderPassInputAttachmentAspectCreateInfoKHR* = VkRenderPassInputAttachmentAspectCreateInfo - VkPhysicalDeviceSurfaceInfo2KHR* = object + VkPhysicalDeviceSurfaceInfo2KHR* {.byref.} = object sType*: VkStructureType pNext*: pointer surface*: VkSurfaceKHR - VkSurfaceCapabilities2KHR* = object + VkSurfaceCapabilities2KHR* {.byref.} = object sType*: VkStructureType pNext*: pointer surfaceCapabilities*: VkSurfaceCapabilitiesKHR - VkSurfaceFormat2KHR* = object + VkSurfaceFormat2KHR* {.byref.} = object sType*: VkStructureType pNext*: pointer surfaceFormat*: VkSurfaceFormatKHR - VkDisplayProperties2KHR* = object + VkDisplayProperties2KHR* {.byref.} = object sType*: VkStructureType pNext*: pointer displayProperties*: VkDisplayPropertiesKHR - VkDisplayPlaneProperties2KHR* = object + VkDisplayPlaneProperties2KHR* {.byref.} = object sType*: VkStructureType pNext*: pointer displayPlaneProperties*: VkDisplayPlanePropertiesKHR - VkDisplayModeProperties2KHR* = object + VkDisplayModeProperties2KHR* {.byref.} = object sType*: VkStructureType pNext*: pointer displayModeProperties*: VkDisplayModePropertiesKHR - VkDisplayPlaneInfo2KHR* = object + VkDisplayPlaneInfo2KHR* {.byref.} = object sType*: VkStructureType pNext*: pointer mode*: VkDisplayModeKHR planeIndex*: uint32 - VkDisplayPlaneCapabilities2KHR* = object + VkDisplayPlaneCapabilities2KHR* {.byref.} = object sType*: VkStructureType pNext*: pointer capabilities*: VkDisplayPlaneCapabilitiesKHR - VkSharedPresentSurfaceCapabilitiesKHR* = object + VkSharedPresentSurfaceCapabilitiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer sharedPresentSupportedUsageFlags*: VkImageUsageFlags - VkPhysicalDevice16BitStorageFeatures* = object + VkPhysicalDevice16BitStorageFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer storageBuffer16BitAccess*: VkBool32 @@ -7473,7 +7473,7 @@ type VkPhysicalDevice16BitStorageFeaturesKHR* = VkPhysicalDevice16BitStorageFeatures - VkPhysicalDeviceSubgroupProperties* = object + VkPhysicalDeviceSubgroupProperties* {.byref.} = object sType*: VkStructureType pNext*: pointer subgroupSize*: uint32 @@ -7481,42 +7481,42 @@ type supportedOperations*: VkSubgroupFeatureFlags quadOperationsInAllStages*: VkBool32 - VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures* = object + VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderSubgroupExtendedTypes*: VkBool32 VkPhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR* = VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures - VkBufferMemoryRequirementsInfo2* = object + VkBufferMemoryRequirementsInfo2* {.byref.} = object sType*: VkStructureType pNext*: pointer buffer*: VkBuffer VkBufferMemoryRequirementsInfo2KHR* = VkBufferMemoryRequirementsInfo2 - VkDeviceBufferMemoryRequirements* = object + VkDeviceBufferMemoryRequirements* {.byref.} = object sType*: VkStructureType pNext*: pointer pCreateInfo*: ptr VkBufferCreateInfo VkDeviceBufferMemoryRequirementsKHR* = VkDeviceBufferMemoryRequirements - VkImageMemoryRequirementsInfo2* = object + VkImageMemoryRequirementsInfo2* {.byref.} = object sType*: VkStructureType pNext*: pointer image*: VkImage VkImageMemoryRequirementsInfo2KHR* = VkImageMemoryRequirementsInfo2 - VkImageSparseMemoryRequirementsInfo2* = object + VkImageSparseMemoryRequirementsInfo2* {.byref.} = object sType*: VkStructureType pNext*: pointer image*: VkImage VkImageSparseMemoryRequirementsInfo2KHR* = VkImageSparseMemoryRequirementsInfo2 - VkDeviceImageMemoryRequirements* = object + VkDeviceImageMemoryRequirements* {.byref.} = object sType*: VkStructureType pNext*: pointer pCreateInfo*: ptr VkImageCreateInfo @@ -7524,28 +7524,28 @@ type VkDeviceImageMemoryRequirementsKHR* = VkDeviceImageMemoryRequirements - VkMemoryRequirements2* = object + VkMemoryRequirements2* {.byref.} = object sType*: VkStructureType pNext*: pointer memoryRequirements*: VkMemoryRequirements VkMemoryRequirements2KHR* = VkMemoryRequirements2 - VkSparseImageMemoryRequirements2* = object + VkSparseImageMemoryRequirements2* {.byref.} = object sType*: VkStructureType pNext*: pointer memoryRequirements*: VkSparseImageMemoryRequirements VkSparseImageMemoryRequirements2KHR* = VkSparseImageMemoryRequirements2 - VkPhysicalDevicePointClippingProperties* = object + VkPhysicalDevicePointClippingProperties* {.byref.} = object sType*: VkStructureType pNext*: pointer pointClippingBehavior*: VkPointClippingBehavior VkPhysicalDevicePointClippingPropertiesKHR* = VkPhysicalDevicePointClippingProperties - VkMemoryDedicatedRequirements* = object + VkMemoryDedicatedRequirements* {.byref.} = object sType*: VkStructureType pNext*: pointer prefersDedicatedAllocation*: VkBool32 @@ -7553,7 +7553,7 @@ type VkMemoryDedicatedRequirementsKHR* = VkMemoryDedicatedRequirements - VkMemoryDedicatedAllocateInfo* = object + VkMemoryDedicatedAllocateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer image*: VkImage @@ -7561,12 +7561,12 @@ type VkMemoryDedicatedAllocateInfoKHR* = VkMemoryDedicatedAllocateInfo - VkImageViewUsageCreateInfo* = object + VkImageViewUsageCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer usage*: VkImageUsageFlags - VkImageViewSlicedCreateInfoEXT* = object + VkImageViewSlicedCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer sliceOffset*: uint32 @@ -7574,21 +7574,21 @@ type VkImageViewUsageCreateInfoKHR* = VkImageViewUsageCreateInfo - VkPipelineTessellationDomainOriginStateCreateInfo* = object + VkPipelineTessellationDomainOriginStateCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer domainOrigin*: VkTessellationDomainOrigin VkPipelineTessellationDomainOriginStateCreateInfoKHR* = VkPipelineTessellationDomainOriginStateCreateInfo - VkSamplerYcbcrConversionInfo* = object + VkSamplerYcbcrConversionInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer conversion*: VkSamplerYcbcrConversion VkSamplerYcbcrConversionInfoKHR* = VkSamplerYcbcrConversionInfo - VkSamplerYcbcrConversionCreateInfo* = object + VkSamplerYcbcrConversionCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer format*: VkFormat @@ -7602,76 +7602,76 @@ type VkSamplerYcbcrConversionCreateInfoKHR* = VkSamplerYcbcrConversionCreateInfo - VkBindImagePlaneMemoryInfo* = object + VkBindImagePlaneMemoryInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer planeAspect*: VkImageAspectFlagBits VkBindImagePlaneMemoryInfoKHR* = VkBindImagePlaneMemoryInfo - VkImagePlaneMemoryRequirementsInfo* = object + VkImagePlaneMemoryRequirementsInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer planeAspect*: VkImageAspectFlagBits VkImagePlaneMemoryRequirementsInfoKHR* = VkImagePlaneMemoryRequirementsInfo - VkPhysicalDeviceSamplerYcbcrConversionFeatures* = object + VkPhysicalDeviceSamplerYcbcrConversionFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer samplerYcbcrConversion*: VkBool32 VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR* = VkPhysicalDeviceSamplerYcbcrConversionFeatures - VkSamplerYcbcrConversionImageFormatProperties* = object + VkSamplerYcbcrConversionImageFormatProperties* {.byref.} = object sType*: VkStructureType pNext*: pointer combinedImageSamplerDescriptorCount*: uint32 VkSamplerYcbcrConversionImageFormatPropertiesKHR* = VkSamplerYcbcrConversionImageFormatProperties - VkTextureLODGatherFormatPropertiesAMD* = object + VkTextureLODGatherFormatPropertiesAMD* {.byref.} = object sType*: VkStructureType pNext*: pointer supportsTextureGatherLODBiasAMD*: VkBool32 - VkConditionalRenderingBeginInfoEXT* = object + VkConditionalRenderingBeginInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer buffer*: VkBuffer offset*: VkDeviceSize flags*: VkConditionalRenderingFlagsEXT - VkProtectedSubmitInfo* = object + VkProtectedSubmitInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer protectedSubmit*: VkBool32 - VkPhysicalDeviceProtectedMemoryFeatures* = object + VkPhysicalDeviceProtectedMemoryFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer protectedMemory*: VkBool32 - VkPhysicalDeviceProtectedMemoryProperties* = object + VkPhysicalDeviceProtectedMemoryProperties* {.byref.} = object sType*: VkStructureType pNext*: pointer protectedNoFault*: VkBool32 - VkDeviceQueueInfo2* = object + VkDeviceQueueInfo2* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkDeviceQueueCreateFlags queueFamilyIndex*: uint32 queueIndex*: uint32 - VkPipelineCoverageToColorStateCreateInfoNV* = object + VkPipelineCoverageToColorStateCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineCoverageToColorStateCreateFlagsNV coverageToColorEnable*: VkBool32 coverageToColorLocation*: uint32 - VkPhysicalDeviceSamplerFilterMinmaxProperties* = object + VkPhysicalDeviceSamplerFilterMinmaxProperties* {.byref.} = object sType*: VkStructureType pNext*: pointer filterMinmaxSingleComponentFormats*: VkBool32 @@ -7679,11 +7679,11 @@ type VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT* = VkPhysicalDeviceSamplerFilterMinmaxProperties - VkSampleLocationEXT* = object + VkSampleLocationEXT* {.byref.} = object x*: float32 y*: float32 - VkSampleLocationsInfoEXT* = object + VkSampleLocationsInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer sampleLocationsPerPixel*: VkSampleCountFlagBits @@ -7691,15 +7691,15 @@ type sampleLocationsCount*: uint32 pSampleLocations*: ptr VkSampleLocationEXT - VkAttachmentSampleLocationsEXT* = object + VkAttachmentSampleLocationsEXT* {.byref.} = object attachmentIndex*: uint32 sampleLocationsInfo*: VkSampleLocationsInfoEXT - VkSubpassSampleLocationsEXT* = object + VkSubpassSampleLocationsEXT* {.byref.} = object subpassIndex*: uint32 sampleLocationsInfo*: VkSampleLocationsInfoEXT - VkRenderPassSampleLocationsBeginInfoEXT* = object + VkRenderPassSampleLocationsBeginInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer attachmentInitialSampleLocationsCount*: uint32 @@ -7707,13 +7707,13 @@ type postSubpassSampleLocationsCount*: uint32 pPostSubpassSampleLocations*: ptr VkSubpassSampleLocationsEXT - VkPipelineSampleLocationsStateCreateInfoEXT* = object + VkPipelineSampleLocationsStateCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer sampleLocationsEnable*: VkBool32 sampleLocationsInfo*: VkSampleLocationsInfoEXT - VkPhysicalDeviceSampleLocationsPropertiesEXT* = object + VkPhysicalDeviceSampleLocationsPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer sampleLocationSampleCounts*: VkSampleCountFlags @@ -7722,29 +7722,29 @@ type sampleLocationSubPixelBits*: uint32 variableSampleLocations*: VkBool32 - VkMultisamplePropertiesEXT* = object + VkMultisamplePropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer maxSampleLocationGridSize*: VkExtent2D - VkSamplerReductionModeCreateInfo* = object + VkSamplerReductionModeCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer reductionMode*: VkSamplerReductionMode VkSamplerReductionModeCreateInfoEXT* = VkSamplerReductionModeCreateInfo - VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT* = object + VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer advancedBlendCoherentOperations*: VkBool32 - VkPhysicalDeviceMultiDrawFeaturesEXT* = object + VkPhysicalDeviceMultiDrawFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer multiDraw*: VkBool32 - VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT* = object + VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer advancedBlendMaxColorAttachments*: uint32 @@ -7754,14 +7754,14 @@ type advancedBlendCorrelatedOverlap*: VkBool32 advancedBlendAllOperations*: VkBool32 - VkPipelineColorBlendAdvancedStateCreateInfoEXT* = object + VkPipelineColorBlendAdvancedStateCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer srcPremultiplied*: VkBool32 dstPremultiplied*: VkBool32 blendOverlap*: VkBlendOverlapEXT - VkPhysicalDeviceInlineUniformBlockFeatures* = object + VkPhysicalDeviceInlineUniformBlockFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer inlineUniformBlock*: VkBool32 @@ -7769,7 +7769,7 @@ type VkPhysicalDeviceInlineUniformBlockFeaturesEXT* = VkPhysicalDeviceInlineUniformBlockFeatures - VkPhysicalDeviceInlineUniformBlockProperties* = object + VkPhysicalDeviceInlineUniformBlockProperties* {.byref.} = object sType*: VkStructureType pNext*: pointer maxInlineUniformBlockSize*: uint32 @@ -7780,7 +7780,7 @@ type VkPhysicalDeviceInlineUniformBlockPropertiesEXT* = VkPhysicalDeviceInlineUniformBlockProperties - VkWriteDescriptorSetInlineUniformBlock* = object + VkWriteDescriptorSetInlineUniformBlock* {.byref.} = object sType*: VkStructureType pNext*: pointer dataSize*: uint32 @@ -7788,14 +7788,14 @@ type VkWriteDescriptorSetInlineUniformBlockEXT* = VkWriteDescriptorSetInlineUniformBlock - VkDescriptorPoolInlineUniformBlockCreateInfo* = object + VkDescriptorPoolInlineUniformBlockCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer maxInlineUniformBlockBindings*: uint32 VkDescriptorPoolInlineUniformBlockCreateInfoEXT* = VkDescriptorPoolInlineUniformBlockCreateInfo - VkPipelineCoverageModulationStateCreateInfoNV* = object + VkPipelineCoverageModulationStateCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineCoverageModulationStateCreateFlagsNV @@ -7804,7 +7804,7 @@ type coverageModulationTableCount*: uint32 pCoverageModulationTable*: ptr float32 - VkImageFormatListCreateInfo* = object + VkImageFormatListCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer viewFormatCount*: uint32 @@ -7812,19 +7812,19 @@ type VkImageFormatListCreateInfoKHR* = VkImageFormatListCreateInfo - VkValidationCacheCreateInfoEXT* = object + VkValidationCacheCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkValidationCacheCreateFlagsEXT initialDataSize*: uint pInitialData*: pointer - VkShaderModuleValidationCacheCreateInfoEXT* = object + VkShaderModuleValidationCacheCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer validationCache*: VkValidationCacheEXT - VkPhysicalDeviceMaintenance3Properties* = object + VkPhysicalDeviceMaintenance3Properties* {.byref.} = object sType*: VkStructureType pNext*: pointer maxPerSetDescriptors*: uint32 @@ -7832,26 +7832,26 @@ type VkPhysicalDeviceMaintenance3PropertiesKHR* = VkPhysicalDeviceMaintenance3Properties - VkPhysicalDeviceMaintenance4Features* = object + VkPhysicalDeviceMaintenance4Features* {.byref.} = object sType*: VkStructureType pNext*: pointer maintenance4*: VkBool32 VkPhysicalDeviceMaintenance4FeaturesKHR* = VkPhysicalDeviceMaintenance4Features - VkPhysicalDeviceMaintenance4Properties* = object + VkPhysicalDeviceMaintenance4Properties* {.byref.} = object sType*: VkStructureType pNext*: pointer maxBufferSize*: VkDeviceSize VkPhysicalDeviceMaintenance4PropertiesKHR* = VkPhysicalDeviceMaintenance4Properties - VkPhysicalDeviceMaintenance5FeaturesKHR* = object + VkPhysicalDeviceMaintenance5FeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer maintenance5*: VkBool32 - VkPhysicalDeviceMaintenance5PropertiesKHR* = object + VkPhysicalDeviceMaintenance5PropertiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer earlyFragmentMultisampleCoverageAfterSampleCounting*: VkBool32 @@ -7861,19 +7861,19 @@ type nonStrictSinglePixelWideLinesUseParallelogram*: VkBool32 nonStrictWideLinesUseParallelogram*: VkBool32 - VkPhysicalDeviceMaintenance6FeaturesKHR* = object + VkPhysicalDeviceMaintenance6FeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer maintenance6*: VkBool32 - VkPhysicalDeviceMaintenance6PropertiesKHR* = object + VkPhysicalDeviceMaintenance6PropertiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer blockTexelViewCompatibleMultipleLayers*: VkBool32 maxCombinedImageSamplerDescriptorCount*: uint32 fragmentShadingRateClampCombinerInputs*: VkBool32 - VkRenderingAreaInfoKHR* = object + VkRenderingAreaInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer viewMask*: uint32 @@ -7882,21 +7882,21 @@ type depthAttachmentFormat*: VkFormat stencilAttachmentFormat*: VkFormat - VkDescriptorSetLayoutSupport* = object + VkDescriptorSetLayoutSupport* {.byref.} = object sType*: VkStructureType pNext*: pointer supported*: VkBool32 VkDescriptorSetLayoutSupportKHR* = VkDescriptorSetLayoutSupport - VkPhysicalDeviceShaderDrawParametersFeatures* = object + VkPhysicalDeviceShaderDrawParametersFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderDrawParameters*: VkBool32 VkPhysicalDeviceShaderDrawParameterFeatures* = VkPhysicalDeviceShaderDrawParametersFeatures - VkPhysicalDeviceShaderFloat16Int8Features* = object + VkPhysicalDeviceShaderFloat16Int8Features* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderFloat16*: VkBool32 @@ -7906,7 +7906,7 @@ type VkPhysicalDeviceFloat16Int8FeaturesKHR* = VkPhysicalDeviceShaderFloat16Int8Features - VkPhysicalDeviceFloatControlsProperties* = object + VkPhysicalDeviceFloatControlsProperties* {.byref.} = object sType*: VkStructureType pNext*: pointer denormBehaviorIndependence*: VkShaderFloatControlsIndependence @@ -7929,18 +7929,18 @@ type VkPhysicalDeviceFloatControlsPropertiesKHR* = VkPhysicalDeviceFloatControlsProperties - VkPhysicalDeviceHostQueryResetFeatures* = object + VkPhysicalDeviceHostQueryResetFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer hostQueryReset*: VkBool32 VkPhysicalDeviceHostQueryResetFeaturesEXT* = VkPhysicalDeviceHostQueryResetFeatures - VkNativeBufferUsage2ANDROID* = object + VkNativeBufferUsage2ANDROID* {.byref.} = object consumer*: uint64 producer*: uint64 - VkNativeBufferANDROID* = object + VkNativeBufferANDROID* {.byref.} = object sType*: VkStructureType pNext*: pointer handle*: pointer @@ -7949,24 +7949,24 @@ type usage*: int usage2*: VkNativeBufferUsage2ANDROID - VkSwapchainImageCreateInfoANDROID* = object + VkSwapchainImageCreateInfoANDROID* {.byref.} = object sType*: VkStructureType pNext*: pointer usage*: VkSwapchainImageUsageFlagsANDROID - VkPhysicalDevicePresentationPropertiesANDROID* = object + VkPhysicalDevicePresentationPropertiesANDROID* {.byref.} = object sType*: VkStructureType pNext*: pointer sharedImage*: VkBool32 - VkShaderResourceUsageAMD* = object + VkShaderResourceUsageAMD* {.byref.} = object numUsedVgprs*: uint32 numUsedSgprs*: uint32 ldsSizePerLocalWorkGroup*: uint32 ldsUsageSizeInBytes*: uint scratchMemUsageInBytes*: uint - VkShaderStatisticsInfoAMD* = object + VkShaderStatisticsInfoAMD* {.byref.} = object shaderStageMask*: VkShaderStageFlags resourceUsage*: VkShaderResourceUsageAMD numPhysicalVgprs*: uint32 @@ -7975,21 +7975,21 @@ type numAvailableSgprs*: uint32 computeWorkGroupSize*: array[3, uint32] - VkDeviceQueueGlobalPriorityCreateInfoKHR* = object + VkDeviceQueueGlobalPriorityCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer globalPriority*: VkQueueGlobalPriorityKHR VkDeviceQueueGlobalPriorityCreateInfoEXT* = VkDeviceQueueGlobalPriorityCreateInfoKHR - VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR* = object + VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer globalPriorityQuery*: VkBool32 VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT* = VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR - VkQueueFamilyGlobalPriorityPropertiesKHR* = object + VkQueueFamilyGlobalPriorityPropertiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer priorityCount*: uint32 @@ -7997,14 +7997,14 @@ type VkQueueFamilyGlobalPriorityPropertiesEXT* = VkQueueFamilyGlobalPriorityPropertiesKHR - VkDebugUtilsObjectNameInfoEXT* = object + VkDebugUtilsObjectNameInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer objectType*: VkObjectType objectHandle*: uint64 pObjectName*: cstring - VkDebugUtilsObjectTagInfoEXT* = object + VkDebugUtilsObjectTagInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer objectType*: VkObjectType @@ -8013,13 +8013,13 @@ type tagSize*: uint pTag*: pointer - VkDebugUtilsLabelEXT* = object + VkDebugUtilsLabelEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer pLabelName*: cstring color*: array[4, float32] - VkDebugUtilsMessengerCreateInfoEXT* = object + VkDebugUtilsMessengerCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkDebugUtilsMessengerCreateFlagsEXT @@ -8028,7 +8028,7 @@ type pfnUserCallback*: PFN_vkDebugUtilsMessengerCallbackEXT pUserData*: pointer - VkDebugUtilsMessengerCallbackDataEXT* = object + VkDebugUtilsMessengerCallbackDataEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkDebugUtilsMessengerCallbackDataFlagsEXT @@ -8042,19 +8042,19 @@ type objectCount*: uint32 pObjects*: ptr VkDebugUtilsObjectNameInfoEXT - VkPhysicalDeviceDeviceMemoryReportFeaturesEXT* = object + VkPhysicalDeviceDeviceMemoryReportFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer deviceMemoryReport*: VkBool32 - VkDeviceDeviceMemoryReportCreateInfoEXT* = object + VkDeviceDeviceMemoryReportCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkDeviceMemoryReportFlagsEXT pfnUserCallback*: PFN_vkDeviceMemoryReportCallbackEXT pUserData*: pointer - VkDeviceMemoryReportCallbackDataEXT* = object + VkDeviceMemoryReportCallbackDataEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkDeviceMemoryReportFlagsEXT @@ -8065,23 +8065,23 @@ type objectHandle*: uint64 heapIndex*: uint32 - VkImportMemoryHostPointerInfoEXT* = object + VkImportMemoryHostPointerInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer handleType*: VkExternalMemoryHandleTypeFlagBits pHostPointer*: pointer - VkMemoryHostPointerPropertiesEXT* = object + VkMemoryHostPointerPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer memoryTypeBits*: uint32 - VkPhysicalDeviceExternalMemoryHostPropertiesEXT* = object + VkPhysicalDeviceExternalMemoryHostPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer minImportedHostPointerAlignment*: VkDeviceSize - VkPhysicalDeviceConservativeRasterizationPropertiesEXT* = object + VkPhysicalDeviceConservativeRasterizationPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer primitiveOverestimationSize*: float32 @@ -8094,14 +8094,14 @@ type fullyCoveredFragmentShaderInputVariable*: VkBool32 conservativeRasterizationPostDepthCoverage*: VkBool32 - VkCalibratedTimestampInfoKHR* = object + VkCalibratedTimestampInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer timeDomain*: VkTimeDomainKHR VkCalibratedTimestampInfoEXT* = VkCalibratedTimestampInfoKHR - VkPhysicalDeviceShaderCorePropertiesAMD* = object + VkPhysicalDeviceShaderCorePropertiesAMD* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderEngineCount*: uint32 @@ -8119,20 +8119,20 @@ type maxVgprAllocation*: uint32 vgprAllocationGranularity*: uint32 - VkPhysicalDeviceShaderCoreProperties2AMD* = object + VkPhysicalDeviceShaderCoreProperties2AMD* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderCoreFeatures*: VkShaderCorePropertiesFlagsAMD activeComputeUnitCount*: uint32 - VkPipelineRasterizationConservativeStateCreateInfoEXT* = object + VkPipelineRasterizationConservativeStateCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineRasterizationConservativeStateCreateFlagsEXT conservativeRasterizationMode*: VkConservativeRasterizationModeEXT extraPrimitiveOverestimationSize*: float32 - VkPhysicalDeviceDescriptorIndexingFeatures* = object + VkPhysicalDeviceDescriptorIndexingFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderInputAttachmentArrayDynamicIndexing*: VkBool32 @@ -8158,7 +8158,7 @@ type VkPhysicalDeviceDescriptorIndexingFeaturesEXT* = VkPhysicalDeviceDescriptorIndexingFeatures - VkPhysicalDeviceDescriptorIndexingProperties* = object + VkPhysicalDeviceDescriptorIndexingProperties* {.byref.} = object sType*: VkStructureType pNext*: pointer maxUpdateAfterBindDescriptorsInAllPools*: uint32 @@ -8187,7 +8187,7 @@ type VkPhysicalDeviceDescriptorIndexingPropertiesEXT* = VkPhysicalDeviceDescriptorIndexingProperties - VkDescriptorSetLayoutBindingFlagsCreateInfo* = object + VkDescriptorSetLayoutBindingFlagsCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer bindingCount*: uint32 @@ -8195,7 +8195,7 @@ type VkDescriptorSetLayoutBindingFlagsCreateInfoEXT* = VkDescriptorSetLayoutBindingFlagsCreateInfo - VkDescriptorSetVariableDescriptorCountAllocateInfo* = object + VkDescriptorSetVariableDescriptorCountAllocateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer descriptorSetCount*: uint32 @@ -8203,14 +8203,14 @@ type VkDescriptorSetVariableDescriptorCountAllocateInfoEXT* = VkDescriptorSetVariableDescriptorCountAllocateInfo - VkDescriptorSetVariableDescriptorCountLayoutSupport* = object + VkDescriptorSetVariableDescriptorCountLayoutSupport* {.byref.} = object sType*: VkStructureType pNext*: pointer maxVariableDescriptorCount*: uint32 VkDescriptorSetVariableDescriptorCountLayoutSupportEXT* = VkDescriptorSetVariableDescriptorCountLayoutSupport - VkAttachmentDescription2* = object + VkAttachmentDescription2* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkAttachmentDescriptionFlags @@ -8225,7 +8225,7 @@ type VkAttachmentDescription2KHR* = VkAttachmentDescription2 - VkAttachmentReference2* = object + VkAttachmentReference2* {.byref.} = object sType*: VkStructureType pNext*: pointer attachment*: uint32 @@ -8234,7 +8234,7 @@ type VkAttachmentReference2KHR* = VkAttachmentReference2 - VkSubpassDescription2* = object + VkSubpassDescription2* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkSubpassDescriptionFlags @@ -8251,7 +8251,7 @@ type VkSubpassDescription2KHR* = VkSubpassDescription2 - VkSubpassDependency2* = object + VkSubpassDependency2* {.byref.} = object sType*: VkStructureType pNext*: pointer srcSubpass*: uint32 @@ -8265,7 +8265,7 @@ type VkSubpassDependency2KHR* = VkSubpassDependency2 - VkRenderPassCreateInfo2* = object + VkRenderPassCreateInfo2* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkRenderPassCreateFlags @@ -8280,34 +8280,34 @@ type VkRenderPassCreateInfo2KHR* = VkRenderPassCreateInfo2 - VkSubpassBeginInfo* = object + VkSubpassBeginInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer contents*: VkSubpassContents VkSubpassBeginInfoKHR* = VkSubpassBeginInfo - VkSubpassEndInfo* = object + VkSubpassEndInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer VkSubpassEndInfoKHR* = VkSubpassEndInfo - VkPhysicalDeviceTimelineSemaphoreFeatures* = object + VkPhysicalDeviceTimelineSemaphoreFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer timelineSemaphore*: VkBool32 VkPhysicalDeviceTimelineSemaphoreFeaturesKHR* = VkPhysicalDeviceTimelineSemaphoreFeatures - VkPhysicalDeviceTimelineSemaphoreProperties* = object + VkPhysicalDeviceTimelineSemaphoreProperties* {.byref.} = object sType*: VkStructureType pNext*: pointer maxTimelineSemaphoreValueDifference*: uint64 VkPhysicalDeviceTimelineSemaphorePropertiesKHR* = VkPhysicalDeviceTimelineSemaphoreProperties - VkSemaphoreTypeCreateInfo* = object + VkSemaphoreTypeCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer semaphoreType*: VkSemaphoreType @@ -8315,7 +8315,7 @@ type VkSemaphoreTypeCreateInfoKHR* = VkSemaphoreTypeCreateInfo - VkTimelineSemaphoreSubmitInfo* = object + VkTimelineSemaphoreSubmitInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer waitSemaphoreValueCount*: uint32 @@ -8325,7 +8325,7 @@ type VkTimelineSemaphoreSubmitInfoKHR* = VkTimelineSemaphoreSubmitInfo - VkSemaphoreWaitInfo* = object + VkSemaphoreWaitInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkSemaphoreWaitFlags @@ -8335,7 +8335,7 @@ type VkSemaphoreWaitInfoKHR* = VkSemaphoreWaitInfo - VkSemaphoreSignalInfo* = object + VkSemaphoreSignalInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer semaphore*: VkSemaphore @@ -8343,13 +8343,13 @@ type VkSemaphoreSignalInfoKHR* = VkSemaphoreSignalInfo - VkVertexInputBindingDivisorDescriptionKHR* = object + VkVertexInputBindingDivisorDescriptionKHR* {.byref.} = object binding*: uint32 divisor*: uint32 VkVertexInputBindingDivisorDescriptionEXT* = VkVertexInputBindingDivisorDescriptionKHR - VkPipelineVertexInputDivisorStateCreateInfoKHR* = object + VkPipelineVertexInputDivisorStateCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer vertexBindingDivisorCount*: uint32 @@ -8357,18 +8357,18 @@ type VkPipelineVertexInputDivisorStateCreateInfoEXT* = VkPipelineVertexInputDivisorStateCreateInfoKHR - VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT* = object + VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer maxVertexAttribDivisor*: uint32 - VkPhysicalDeviceVertexAttributeDivisorPropertiesKHR* = object + VkPhysicalDeviceVertexAttributeDivisorPropertiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer maxVertexAttribDivisor*: uint32 supportsNonZeroFirstInstance*: VkBool32 - VkPhysicalDevicePCIBusInfoPropertiesEXT* = object + VkPhysicalDevicePCIBusInfoPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer pciDomain*: uint32 @@ -8376,28 +8376,28 @@ type pciDevice*: uint32 pciFunction*: uint32 - VkImportAndroidHardwareBufferInfoANDROID* = object + VkImportAndroidHardwareBufferInfoANDROID* {.byref.} = object sType*: VkStructureType pNext*: pointer buffer*: ptr AHardwareBuffer - VkAndroidHardwareBufferUsageANDROID* = object + VkAndroidHardwareBufferUsageANDROID* {.byref.} = object sType*: VkStructureType pNext*: pointer androidHardwareBufferUsage*: uint64 - VkAndroidHardwareBufferPropertiesANDROID* = object + VkAndroidHardwareBufferPropertiesANDROID* {.byref.} = object sType*: VkStructureType pNext*: pointer allocationSize*: VkDeviceSize memoryTypeBits*: uint32 - VkMemoryGetAndroidHardwareBufferInfoANDROID* = object + VkMemoryGetAndroidHardwareBufferInfoANDROID* {.byref.} = object sType*: VkStructureType pNext*: pointer memory*: VkDeviceMemory - VkAndroidHardwareBufferFormatPropertiesANDROID* = object + VkAndroidHardwareBufferFormatPropertiesANDROID* {.byref.} = object sType*: VkStructureType pNext*: pointer format*: VkFormat @@ -8409,17 +8409,17 @@ type suggestedXChromaOffset*: VkChromaLocation suggestedYChromaOffset*: VkChromaLocation - VkCommandBufferInheritanceConditionalRenderingInfoEXT* = object + VkCommandBufferInheritanceConditionalRenderingInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer conditionalRenderingEnable*: VkBool32 - VkExternalFormatANDROID* = object + VkExternalFormatANDROID* {.byref.} = object sType*: VkStructureType pNext*: pointer externalFormat*: uint64 - VkPhysicalDevice8BitStorageFeatures* = object + VkPhysicalDevice8BitStorageFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer storageBuffer8BitAccess*: VkBool32 @@ -8428,13 +8428,13 @@ type VkPhysicalDevice8BitStorageFeaturesKHR* = VkPhysicalDevice8BitStorageFeatures - VkPhysicalDeviceConditionalRenderingFeaturesEXT* = object + VkPhysicalDeviceConditionalRenderingFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer conditionalRendering*: VkBool32 inheritedConditionalRendering*: VkBool32 - VkPhysicalDeviceVulkanMemoryModelFeatures* = object + VkPhysicalDeviceVulkanMemoryModelFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer vulkanMemoryModel*: VkBool32 @@ -8443,7 +8443,7 @@ type VkPhysicalDeviceVulkanMemoryModelFeaturesKHR* = VkPhysicalDeviceVulkanMemoryModelFeatures - VkPhysicalDeviceShaderAtomicInt64Features* = object + VkPhysicalDeviceShaderAtomicInt64Features* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderBufferInt64Atomics*: VkBool32 @@ -8451,7 +8451,7 @@ type VkPhysicalDeviceShaderAtomicInt64FeaturesKHR* = VkPhysicalDeviceShaderAtomicInt64Features - VkPhysicalDeviceShaderAtomicFloatFeaturesEXT* = object + VkPhysicalDeviceShaderAtomicFloatFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderBufferFloat32Atomics*: VkBool32 @@ -8467,7 +8467,7 @@ type sparseImageFloat32Atomics*: VkBool32 sparseImageFloat32AtomicAdd*: VkBool32 - VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT* = object + VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderBufferFloat16Atomics*: VkBool32 @@ -8483,7 +8483,7 @@ type shaderImageFloat32AtomicMinMax*: VkBool32 sparseImageFloat32AtomicMinMax*: VkBool32 - VkPhysicalDeviceVertexAttributeDivisorFeaturesKHR* = object + VkPhysicalDeviceVertexAttributeDivisorFeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer vertexAttributeInstanceRateDivisor*: VkBool32 @@ -8491,18 +8491,18 @@ type VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT* = VkPhysicalDeviceVertexAttributeDivisorFeaturesKHR - VkQueueFamilyCheckpointPropertiesNV* = object + VkQueueFamilyCheckpointPropertiesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer checkpointExecutionStageMask*: VkPipelineStageFlags - VkCheckpointDataNV* = object + VkCheckpointDataNV* {.byref.} = object sType*: VkStructureType pNext*: pointer stage*: VkPipelineStageFlagBits pCheckpointMarker*: pointer - VkPhysicalDeviceDepthStencilResolveProperties* = object + VkPhysicalDeviceDepthStencilResolveProperties* {.byref.} = object sType*: VkStructureType pNext*: pointer supportedDepthResolveModes*: VkResolveModeFlags @@ -8512,7 +8512,7 @@ type VkPhysicalDeviceDepthStencilResolvePropertiesKHR* = VkPhysicalDeviceDepthStencilResolveProperties - VkSubpassDescriptionDepthStencilResolve* = object + VkSubpassDescriptionDepthStencilResolve* {.byref.} = object sType*: VkStructureType pNext*: pointer depthResolveMode*: VkResolveModeFlagBits @@ -8521,23 +8521,23 @@ type VkSubpassDescriptionDepthStencilResolveKHR* = VkSubpassDescriptionDepthStencilResolve - VkImageViewASTCDecodeModeEXT* = object + VkImageViewASTCDecodeModeEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer decodeMode*: VkFormat - VkPhysicalDeviceASTCDecodeFeaturesEXT* = object + VkPhysicalDeviceASTCDecodeFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer decodeModeSharedExponent*: VkBool32 - VkPhysicalDeviceTransformFeedbackFeaturesEXT* = object + VkPhysicalDeviceTransformFeedbackFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer transformFeedback*: VkBool32 geometryStreams*: VkBool32 - VkPhysicalDeviceTransformFeedbackPropertiesEXT* = object + VkPhysicalDeviceTransformFeedbackPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer maxTransformFeedbackStreams*: uint32 @@ -8551,39 +8551,39 @@ type transformFeedbackRasterizationStreamSelect*: VkBool32 transformFeedbackDraw*: VkBool32 - VkPipelineRasterizationStateStreamCreateInfoEXT* = object + VkPipelineRasterizationStateStreamCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineRasterizationStateStreamCreateFlagsEXT rasterizationStream*: uint32 - VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV* = object + VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer representativeFragmentTest*: VkBool32 - VkPipelineRepresentativeFragmentTestStateCreateInfoNV* = object + VkPipelineRepresentativeFragmentTestStateCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer representativeFragmentTestEnable*: VkBool32 - VkPhysicalDeviceExclusiveScissorFeaturesNV* = object + VkPhysicalDeviceExclusiveScissorFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer exclusiveScissor*: VkBool32 - VkPipelineViewportExclusiveScissorStateCreateInfoNV* = object + VkPipelineViewportExclusiveScissorStateCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer exclusiveScissorCount*: uint32 pExclusiveScissors*: ptr VkRect2D - VkPhysicalDeviceCornerSampledImageFeaturesNV* = object + VkPhysicalDeviceCornerSampledImageFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer cornerSampledImage*: VkBool32 - VkPhysicalDeviceComputeShaderDerivativesFeaturesNV* = object + VkPhysicalDeviceComputeShaderDerivativesFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer computeDerivativeGroupQuads*: VkBool32 @@ -8591,91 +8591,91 @@ type VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV* = VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR - VkPhysicalDeviceShaderImageFootprintFeaturesNV* = object + VkPhysicalDeviceShaderImageFootprintFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer imageFootprint*: VkBool32 - VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV* = object + VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer dedicatedAllocationImageAliasing*: VkBool32 - VkPhysicalDeviceCopyMemoryIndirectFeaturesNV* = object + VkPhysicalDeviceCopyMemoryIndirectFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer indirectCopy*: VkBool32 - VkPhysicalDeviceCopyMemoryIndirectPropertiesNV* = object + VkPhysicalDeviceCopyMemoryIndirectPropertiesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer supportedQueues*: VkQueueFlags - VkPhysicalDeviceMemoryDecompressionFeaturesNV* = object + VkPhysicalDeviceMemoryDecompressionFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer memoryDecompression*: VkBool32 - VkPhysicalDeviceMemoryDecompressionPropertiesNV* = object + VkPhysicalDeviceMemoryDecompressionPropertiesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer decompressionMethods*: VkMemoryDecompressionMethodFlagsNV maxDecompressionIndirectCount*: uint64 - VkShadingRatePaletteNV* = object + VkShadingRatePaletteNV* {.byref.} = object shadingRatePaletteEntryCount*: uint32 pShadingRatePaletteEntries*: ptr VkShadingRatePaletteEntryNV - VkPipelineViewportShadingRateImageStateCreateInfoNV* = object + VkPipelineViewportShadingRateImageStateCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer shadingRateImageEnable*: VkBool32 viewportCount*: uint32 pShadingRatePalettes*: ptr VkShadingRatePaletteNV - VkPhysicalDeviceShadingRateImageFeaturesNV* = object + VkPhysicalDeviceShadingRateImageFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer shadingRateImage*: VkBool32 shadingRateCoarseSampleOrder*: VkBool32 - VkPhysicalDeviceShadingRateImagePropertiesNV* = object + VkPhysicalDeviceShadingRateImagePropertiesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer shadingRateTexelSize*: VkExtent2D shadingRatePaletteSize*: uint32 shadingRateMaxCoarseSamples*: uint32 - VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* = object + VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* {.byref.} = object sType*: VkStructureType pNext*: pointer invocationMask*: VkBool32 - VkCoarseSampleLocationNV* = object + VkCoarseSampleLocationNV* {.byref.} = object pixelX*: uint32 pixelY*: uint32 sample*: uint32 - VkCoarseSampleOrderCustomNV* = object + VkCoarseSampleOrderCustomNV* {.byref.} = object shadingRate*: VkShadingRatePaletteEntryNV sampleCount*: uint32 sampleLocationCount*: uint32 pSampleLocations*: ptr VkCoarseSampleLocationNV - VkPipelineViewportCoarseSampleOrderStateCreateInfoNV* = object + VkPipelineViewportCoarseSampleOrderStateCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer sampleOrderType*: VkCoarseSampleOrderTypeNV customSampleOrderCount*: uint32 pCustomSampleOrders*: ptr VkCoarseSampleOrderCustomNV - VkPhysicalDeviceMeshShaderFeaturesNV* = object + VkPhysicalDeviceMeshShaderFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer taskShader*: VkBool32 meshShader*: VkBool32 - VkPhysicalDeviceMeshShaderPropertiesNV* = object + VkPhysicalDeviceMeshShaderPropertiesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer maxDrawMeshTasksCount*: uint32 @@ -8692,11 +8692,11 @@ type meshOutputPerVertexGranularity*: uint32 meshOutputPerPrimitiveGranularity*: uint32 - VkDrawMeshTasksIndirectCommandNV* = object + VkDrawMeshTasksIndirectCommandNV* {.byref.} = object taskCount*: uint32 firstTask*: uint32 - VkPhysicalDeviceMeshShaderFeaturesEXT* = object + VkPhysicalDeviceMeshShaderFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer taskShader*: VkBool32 @@ -8705,7 +8705,7 @@ type primitiveFragmentShadingRateMeshShader*: VkBool32 meshShaderQueries*: VkBool32 - VkPhysicalDeviceMeshShaderPropertiesEXT* = object + VkPhysicalDeviceMeshShaderPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer maxTaskWorkGroupTotalCount*: uint32 @@ -8737,12 +8737,12 @@ type prefersCompactVertexOutput*: VkBool32 prefersCompactPrimitiveOutput*: VkBool32 - VkDrawMeshTasksIndirectCommandEXT* = object + VkDrawMeshTasksIndirectCommandEXT* {.byref.} = object groupCountX*: uint32 groupCountY*: uint32 groupCountZ*: uint32 - VkRayTracingShaderGroupCreateInfoNV* = object + VkRayTracingShaderGroupCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer `type`*: VkRayTracingShaderGroupTypeKHR @@ -8751,7 +8751,7 @@ type anyHitShader*: uint32 intersectionShader*: uint32 - VkRayTracingShaderGroupCreateInfoKHR* = object + VkRayTracingShaderGroupCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer `type`*: VkRayTracingShaderGroupTypeKHR @@ -8761,7 +8761,7 @@ type intersectionShader*: uint32 pShaderGroupCaptureReplayHandle*: pointer - VkRayTracingPipelineCreateInfoNV* = object + VkRayTracingPipelineCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineCreateFlags @@ -8774,7 +8774,7 @@ type basePipelineHandle*: VkPipeline basePipelineIndex*: int32 - VkRayTracingPipelineCreateInfoKHR* = object + VkRayTracingPipelineCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineCreateFlags @@ -8790,7 +8790,7 @@ type basePipelineHandle*: VkPipeline basePipelineIndex*: int32 - VkGeometryTrianglesNV* = object + VkGeometryTrianglesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer vertexData*: VkBuffer @@ -8805,7 +8805,7 @@ type transformData*: VkBuffer transformOffset*: VkDeviceSize - VkGeometryAABBNV* = object + VkGeometryAABBNV* {.byref.} = object sType*: VkStructureType pNext*: pointer aabbData*: VkBuffer @@ -8813,18 +8813,18 @@ type stride*: uint32 offset*: VkDeviceSize - VkGeometryDataNV* = object + VkGeometryDataNV* {.byref.} = object triangles*: VkGeometryTrianglesNV aabbs*: VkGeometryAABBNV - VkGeometryNV* = object + VkGeometryNV* {.byref.} = object sType*: VkStructureType pNext*: pointer geometryType*: VkGeometryTypeKHR geometry*: VkGeometryDataNV flags*: VkGeometryFlagsKHR - VkAccelerationStructureInfoNV* = object + VkAccelerationStructureInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer `type`*: VkAccelerationStructureTypeNV @@ -8833,13 +8833,13 @@ type geometryCount*: uint32 pGeometries*: ptr VkGeometryNV - VkAccelerationStructureCreateInfoNV* = object + VkAccelerationStructureCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer compactedSize*: VkDeviceSize info*: VkAccelerationStructureInfoNV - VkBindAccelerationStructureMemoryInfoNV* = object + VkBindAccelerationStructureMemoryInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer accelerationStructure*: VkAccelerationStructureNV @@ -8848,25 +8848,25 @@ type deviceIndexCount*: uint32 pDeviceIndices*: ptr uint32 - VkWriteDescriptorSetAccelerationStructureKHR* = object + VkWriteDescriptorSetAccelerationStructureKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer accelerationStructureCount*: uint32 pAccelerationStructures*: ptr VkAccelerationStructureKHR - VkWriteDescriptorSetAccelerationStructureNV* = object + VkWriteDescriptorSetAccelerationStructureNV* {.byref.} = object sType*: VkStructureType pNext*: pointer accelerationStructureCount*: uint32 pAccelerationStructures*: ptr VkAccelerationStructureNV - VkAccelerationStructureMemoryRequirementsInfoNV* = object + VkAccelerationStructureMemoryRequirementsInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer `type`*: VkAccelerationStructureMemoryRequirementsTypeNV accelerationStructure*: VkAccelerationStructureNV - VkPhysicalDeviceAccelerationStructureFeaturesKHR* = object + VkPhysicalDeviceAccelerationStructureFeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer accelerationStructure*: VkBool32 @@ -8875,7 +8875,7 @@ type accelerationStructureHostCommands*: VkBool32 descriptorBindingAccelerationStructureUpdateAfterBind*: VkBool32 - VkPhysicalDeviceRayTracingPipelineFeaturesKHR* = object + VkPhysicalDeviceRayTracingPipelineFeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer rayTracingPipeline*: VkBool32 @@ -8884,12 +8884,12 @@ type rayTracingPipelineTraceRaysIndirect*: VkBool32 rayTraversalPrimitiveCulling*: VkBool32 - VkPhysicalDeviceRayQueryFeaturesKHR* = object + VkPhysicalDeviceRayQueryFeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer rayQuery*: VkBool32 - VkPhysicalDeviceAccelerationStructurePropertiesKHR* = object + VkPhysicalDeviceAccelerationStructurePropertiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer maxGeometryCount*: uint64 @@ -8901,7 +8901,7 @@ type maxDescriptorSetUpdateAfterBindAccelerationStructures*: uint32 minAccelerationStructureScratchOffsetAlignment*: uint32 - VkPhysicalDeviceRayTracingPipelinePropertiesKHR* = object + VkPhysicalDeviceRayTracingPipelinePropertiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderGroupHandleSize*: uint32 @@ -8913,7 +8913,7 @@ type shaderGroupHandleAlignment*: uint32 maxRayHitAttributeSize*: uint32 - VkPhysicalDeviceRayTracingPropertiesNV* = object + VkPhysicalDeviceRayTracingPropertiesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderGroupHandleSize*: uint32 @@ -8925,17 +8925,17 @@ type maxTriangleCount*: uint64 maxDescriptorSetAccelerationStructures*: uint32 - VkStridedDeviceAddressRegionKHR* = object + VkStridedDeviceAddressRegionKHR* {.byref.} = object deviceAddress*: VkDeviceAddress stride*: VkDeviceSize size*: VkDeviceSize - VkTraceRaysIndirectCommandKHR* = object + VkTraceRaysIndirectCommandKHR* {.byref.} = object width*: uint32 height*: uint32 depth*: uint32 - VkTraceRaysIndirectCommand2KHR* = object + VkTraceRaysIndirectCommand2KHR* {.byref.} = object raygenShaderRecordAddress*: VkDeviceAddress raygenShaderRecordSize*: VkDeviceSize missShaderBindingTableAddress*: VkDeviceAddress @@ -8951,24 +8951,24 @@ type height*: uint32 depth*: uint32 - VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR* = object + VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer rayTracingMaintenance1*: VkBool32 rayTracingPipelineTraceRaysIndirect2*: VkBool32 - VkDrmFormatModifierPropertiesListEXT* = object + VkDrmFormatModifierPropertiesListEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer drmFormatModifierCount*: uint32 pDrmFormatModifierProperties*: ptr VkDrmFormatModifierPropertiesEXT - VkDrmFormatModifierPropertiesEXT* = object + VkDrmFormatModifierPropertiesEXT* {.byref.} = object drmFormatModifier*: uint64 drmFormatModifierPlaneCount*: uint32 drmFormatModifierTilingFeatures*: VkFormatFeatureFlags - VkPhysicalDeviceImageDrmFormatModifierInfoEXT* = object + VkPhysicalDeviceImageDrmFormatModifierInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer drmFormatModifier*: uint64 @@ -8976,61 +8976,61 @@ type queueFamilyIndexCount*: uint32 pQueueFamilyIndices*: ptr uint32 - VkImageDrmFormatModifierListCreateInfoEXT* = object + VkImageDrmFormatModifierListCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer drmFormatModifierCount*: uint32 pDrmFormatModifiers*: ptr uint64 - VkImageDrmFormatModifierExplicitCreateInfoEXT* = object + VkImageDrmFormatModifierExplicitCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer drmFormatModifier*: uint64 drmFormatModifierPlaneCount*: uint32 pPlaneLayouts*: ptr VkSubresourceLayout - VkImageDrmFormatModifierPropertiesEXT* = object + VkImageDrmFormatModifierPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer drmFormatModifier*: uint64 - VkImageStencilUsageCreateInfo* = object + VkImageStencilUsageCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer stencilUsage*: VkImageUsageFlags VkImageStencilUsageCreateInfoEXT* = VkImageStencilUsageCreateInfo - VkDeviceMemoryOverallocationCreateInfoAMD* = object + VkDeviceMemoryOverallocationCreateInfoAMD* {.byref.} = object sType*: VkStructureType pNext*: pointer overallocationBehavior*: VkMemoryOverallocationBehaviorAMD - VkPhysicalDeviceFragmentDensityMapFeaturesEXT* = object + VkPhysicalDeviceFragmentDensityMapFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer fragmentDensityMap*: VkBool32 fragmentDensityMapDynamic*: VkBool32 fragmentDensityMapNonSubsampledImages*: VkBool32 - VkPhysicalDeviceFragmentDensityMap2FeaturesEXT* = object + VkPhysicalDeviceFragmentDensityMap2FeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer fragmentDensityMapDeferred*: VkBool32 - VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM* = object + VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM* {.byref.} = object sType*: VkStructureType pNext*: pointer fragmentDensityMapOffset*: VkBool32 - VkPhysicalDeviceFragmentDensityMapPropertiesEXT* = object + VkPhysicalDeviceFragmentDensityMapPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer minFragmentDensityTexelSize*: VkExtent2D maxFragmentDensityTexelSize*: VkExtent2D fragmentDensityInvocations*: VkBool32 - VkPhysicalDeviceFragmentDensityMap2PropertiesEXT* = object + VkPhysicalDeviceFragmentDensityMap2PropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer subsampledLoads*: VkBool32 @@ -9038,74 +9038,74 @@ type maxSubsampledArrayLayers*: uint32 maxDescriptorSetSubsampledSamplers*: uint32 - VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM* = object + VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM* {.byref.} = object sType*: VkStructureType pNext*: pointer fragmentDensityOffsetGranularity*: VkExtent2D - VkRenderPassFragmentDensityMapCreateInfoEXT* = object + VkRenderPassFragmentDensityMapCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer fragmentDensityMapAttachment*: VkAttachmentReference - VkSubpassFragmentDensityMapOffsetEndInfoQCOM* = object + VkSubpassFragmentDensityMapOffsetEndInfoQCOM* {.byref.} = object sType*: VkStructureType pNext*: pointer fragmentDensityOffsetCount*: uint32 pFragmentDensityOffsets*: ptr VkOffset2D - VkPhysicalDeviceScalarBlockLayoutFeatures* = object + VkPhysicalDeviceScalarBlockLayoutFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer scalarBlockLayout*: VkBool32 VkPhysicalDeviceScalarBlockLayoutFeaturesEXT* = VkPhysicalDeviceScalarBlockLayoutFeatures - VkSurfaceProtectedCapabilitiesKHR* = object + VkSurfaceProtectedCapabilitiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer supportsProtected*: VkBool32 - VkPhysicalDeviceUniformBufferStandardLayoutFeatures* = object + VkPhysicalDeviceUniformBufferStandardLayoutFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer uniformBufferStandardLayout*: VkBool32 VkPhysicalDeviceUniformBufferStandardLayoutFeaturesKHR* = VkPhysicalDeviceUniformBufferStandardLayoutFeatures - VkPhysicalDeviceDepthClipEnableFeaturesEXT* = object + VkPhysicalDeviceDepthClipEnableFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer depthClipEnable*: VkBool32 - VkPipelineRasterizationDepthClipStateCreateInfoEXT* = object + VkPipelineRasterizationDepthClipStateCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineRasterizationDepthClipStateCreateFlagsEXT depthClipEnable*: VkBool32 - VkPhysicalDeviceMemoryBudgetPropertiesEXT* = object + VkPhysicalDeviceMemoryBudgetPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer heapBudget*: array[VK_MAX_MEMORY_HEAPS, VkDeviceSize] heapUsage*: array[VK_MAX_MEMORY_HEAPS, VkDeviceSize] - VkPhysicalDeviceMemoryPriorityFeaturesEXT* = object + VkPhysicalDeviceMemoryPriorityFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer memoryPriority*: VkBool32 - VkMemoryPriorityAllocateInfoEXT* = object + VkMemoryPriorityAllocateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer priority*: float32 - VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* = object + VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer pageableDeviceLocalMemory*: VkBool32 - VkPhysicalDeviceBufferDeviceAddressFeatures* = object + VkPhysicalDeviceBufferDeviceAddressFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer bufferDeviceAddress*: VkBool32 @@ -9114,7 +9114,7 @@ type VkPhysicalDeviceBufferDeviceAddressFeaturesKHR* = VkPhysicalDeviceBufferDeviceAddressFeatures - VkPhysicalDeviceBufferDeviceAddressFeaturesEXT* = object + VkPhysicalDeviceBufferDeviceAddressFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer bufferDeviceAddress*: VkBool32 @@ -9123,7 +9123,7 @@ type VkPhysicalDeviceBufferAddressFeaturesEXT* = VkPhysicalDeviceBufferDeviceAddressFeaturesEXT - VkBufferDeviceAddressInfo* = object + VkBufferDeviceAddressInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer buffer*: VkBuffer @@ -9132,37 +9132,37 @@ type VkBufferDeviceAddressInfoEXT* = VkBufferDeviceAddressInfo - VkBufferOpaqueCaptureAddressCreateInfo* = object + VkBufferOpaqueCaptureAddressCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer opaqueCaptureAddress*: uint64 VkBufferOpaqueCaptureAddressCreateInfoKHR* = VkBufferOpaqueCaptureAddressCreateInfo - VkBufferDeviceAddressCreateInfoEXT* = object + VkBufferDeviceAddressCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer deviceAddress*: VkDeviceAddress - VkPhysicalDeviceImageViewImageFormatInfoEXT* = object + VkPhysicalDeviceImageViewImageFormatInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer imageViewType*: VkImageViewType - VkFilterCubicImageViewImageFormatPropertiesEXT* = object + VkFilterCubicImageViewImageFormatPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer filterCubic*: VkBool32 filterCubicMinmax*: VkBool32 - VkPhysicalDeviceImagelessFramebufferFeatures* = object + VkPhysicalDeviceImagelessFramebufferFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer imagelessFramebuffer*: VkBool32 VkPhysicalDeviceImagelessFramebufferFeaturesKHR* = VkPhysicalDeviceImagelessFramebufferFeatures - VkFramebufferAttachmentsCreateInfo* = object + VkFramebufferAttachmentsCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer attachmentImageInfoCount*: uint32 @@ -9170,7 +9170,7 @@ type VkFramebufferAttachmentsCreateInfoKHR* = VkFramebufferAttachmentsCreateInfo - VkFramebufferAttachmentImageInfo* = object + VkFramebufferAttachmentImageInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkImageCreateFlags @@ -9183,7 +9183,7 @@ type VkFramebufferAttachmentImageInfoKHR* = VkFramebufferAttachmentImageInfo - VkRenderPassAttachmentBeginInfo* = object + VkRenderPassAttachmentBeginInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer attachmentCount*: uint32 @@ -9191,25 +9191,25 @@ type VkRenderPassAttachmentBeginInfoKHR* = VkRenderPassAttachmentBeginInfo - VkPhysicalDeviceTextureCompressionASTCHDRFeatures* = object + VkPhysicalDeviceTextureCompressionASTCHDRFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer textureCompressionASTC_HDR*: VkBool32 VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT* = VkPhysicalDeviceTextureCompressionASTCHDRFeatures - VkPhysicalDeviceCooperativeMatrixFeaturesNV* = object + VkPhysicalDeviceCooperativeMatrixFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer cooperativeMatrix*: VkBool32 cooperativeMatrixRobustBufferAccess*: VkBool32 - VkPhysicalDeviceCooperativeMatrixPropertiesNV* = object + VkPhysicalDeviceCooperativeMatrixPropertiesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer cooperativeMatrixSupportedStages*: VkShaderStageFlags - VkCooperativeMatrixPropertiesNV* = object + VkCooperativeMatrixPropertiesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer MSize*: uint32 @@ -9221,36 +9221,36 @@ type DType*: VkComponentTypeNV scope*: VkScopeNV - VkPhysicalDeviceYcbcrImageArraysFeaturesEXT* = object + VkPhysicalDeviceYcbcrImageArraysFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer ycbcrImageArrays*: VkBool32 - VkImageViewHandleInfoNVX* = object + VkImageViewHandleInfoNVX* {.byref.} = object sType*: VkStructureType pNext*: pointer imageView*: VkImageView descriptorType*: VkDescriptorType sampler*: VkSampler - VkImageViewAddressPropertiesNVX* = object + VkImageViewAddressPropertiesNVX* {.byref.} = object sType*: VkStructureType pNext*: pointer deviceAddress*: VkDeviceAddress size*: VkDeviceSize - VkPresentFrameTokenGGP* = object + VkPresentFrameTokenGGP* {.byref.} = object sType*: VkStructureType pNext*: pointer frameToken*: GgpFrameToken - VkPipelineCreationFeedback* = object + VkPipelineCreationFeedback* {.byref.} = object flags*: VkPipelineCreationFeedbackFlags duration*: uint64 VkPipelineCreationFeedbackEXT* = VkPipelineCreationFeedback - VkPipelineCreationFeedbackCreateInfo* = object + VkPipelineCreationFeedbackCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer pPipelineCreationFeedback*: ptr VkPipelineCreationFeedback @@ -9259,48 +9259,48 @@ type VkPipelineCreationFeedbackCreateInfoEXT* = VkPipelineCreationFeedbackCreateInfo - VkSurfaceFullScreenExclusiveInfoEXT* = object + VkSurfaceFullScreenExclusiveInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer fullScreenExclusive*: VkFullScreenExclusiveEXT - VkSurfaceFullScreenExclusiveWin32InfoEXT* = object + VkSurfaceFullScreenExclusiveWin32InfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer hmonitor*: HMONITOR - VkSurfaceCapabilitiesFullScreenExclusiveEXT* = object + VkSurfaceCapabilitiesFullScreenExclusiveEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer fullScreenExclusiveSupported*: VkBool32 - VkPhysicalDevicePresentBarrierFeaturesNV* = object + VkPhysicalDevicePresentBarrierFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer presentBarrier*: VkBool32 - VkSurfaceCapabilitiesPresentBarrierNV* = object + VkSurfaceCapabilitiesPresentBarrierNV* {.byref.} = object sType*: VkStructureType pNext*: pointer presentBarrierSupported*: VkBool32 - VkSwapchainPresentBarrierCreateInfoNV* = object + VkSwapchainPresentBarrierCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer presentBarrierEnable*: VkBool32 - VkPhysicalDevicePerformanceQueryFeaturesKHR* = object + VkPhysicalDevicePerformanceQueryFeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer performanceCounterQueryPools*: VkBool32 performanceCounterMultipleQueryPools*: VkBool32 - VkPhysicalDevicePerformanceQueryPropertiesKHR* = object + VkPhysicalDevicePerformanceQueryPropertiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer allowCommandBufferQueryCopies*: VkBool32 - VkPerformanceCounterKHR* = object + VkPerformanceCounterKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer unit*: VkPerformanceCounterUnitKHR @@ -9308,7 +9308,7 @@ type storage*: VkPerformanceCounterStorageKHR uuid*: array[VK_UUID_SIZE, uint8] - VkPerformanceCounterDescriptionKHR* = object + VkPerformanceCounterDescriptionKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPerformanceCounterDescriptionFlagsKHR @@ -9316,14 +9316,14 @@ type category*: array[VK_MAX_DESCRIPTION_SIZE, char] description*: array[VK_MAX_DESCRIPTION_SIZE, char] - VkQueryPoolPerformanceCreateInfoKHR* = object + VkQueryPoolPerformanceCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer queueFamilyIndex*: uint32 counterIndexCount*: uint32 pCounterIndices*: ptr uint32 - VkPerformanceCounterResultKHR* {.union.} = object + VkPerformanceCounterResultKHR* {.union, byref.} = object int32*: int32 int64*: int64 uint32*: uint32 @@ -9331,39 +9331,39 @@ type float32*: float32 float64*: float64 - VkAcquireProfilingLockInfoKHR* = object + VkAcquireProfilingLockInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkAcquireProfilingLockFlagsKHR timeout*: uint64 - VkPerformanceQuerySubmitInfoKHR* = object + VkPerformanceQuerySubmitInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer counterPassIndex*: uint32 - VkPerformanceQueryReservationInfoKHR* = object + VkPerformanceQueryReservationInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer maxPerformanceQueriesPerPool*: uint32 - VkHeadlessSurfaceCreateInfoEXT* = object + VkHeadlessSurfaceCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkHeadlessSurfaceCreateFlagsEXT - VkPhysicalDeviceCoverageReductionModeFeaturesNV* = object + VkPhysicalDeviceCoverageReductionModeFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer coverageReductionMode*: VkBool32 - VkPipelineCoverageReductionStateCreateInfoNV* = object + VkPipelineCoverageReductionStateCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineCoverageReductionStateCreateFlagsNV coverageReductionMode*: VkCoverageReductionModeNV - VkFramebufferMixedSamplesCombinationNV* = object + VkFramebufferMixedSamplesCombinationNV* {.byref.} = object sType*: VkStructureType pNext*: pointer coverageReductionMode*: VkCoverageReductionModeNV @@ -9371,100 +9371,100 @@ type depthStencilSamples*: VkSampleCountFlags colorSamples*: VkSampleCountFlags - VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL* = object + VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderIntegerFunctions2*: VkBool32 - VkPerformanceValueDataINTEL* {.union.} = object + VkPerformanceValueDataINTEL* {.union, byref.} = object value32*: uint32 value64*: uint64 valueFloat*: float32 valueBool*: VkBool32 valueString*: cstring - VkPerformanceValueINTEL* = object + VkPerformanceValueINTEL* {.byref.} = object `type`*: VkPerformanceValueTypeINTEL data*: VkPerformanceValueDataINTEL - VkInitializePerformanceApiInfoINTEL* = object + VkInitializePerformanceApiInfoINTEL* {.byref.} = object sType*: VkStructureType pNext*: pointer pUserData*: pointer - VkQueryPoolPerformanceQueryCreateInfoINTEL* = object + VkQueryPoolPerformanceQueryCreateInfoINTEL* {.byref.} = object sType*: VkStructureType pNext*: pointer performanceCountersSampling*: VkQueryPoolSamplingModeINTEL VkQueryPoolCreateInfoINTEL* = VkQueryPoolPerformanceQueryCreateInfoINTEL - VkPerformanceMarkerInfoINTEL* = object + VkPerformanceMarkerInfoINTEL* {.byref.} = object sType*: VkStructureType pNext*: pointer marker*: uint64 - VkPerformanceStreamMarkerInfoINTEL* = object + VkPerformanceStreamMarkerInfoINTEL* {.byref.} = object sType*: VkStructureType pNext*: pointer marker*: uint32 - VkPerformanceOverrideInfoINTEL* = object + VkPerformanceOverrideInfoINTEL* {.byref.} = object sType*: VkStructureType pNext*: pointer `type`*: VkPerformanceOverrideTypeINTEL enable*: VkBool32 parameter*: uint64 - VkPerformanceConfigurationAcquireInfoINTEL* = object + VkPerformanceConfigurationAcquireInfoINTEL* {.byref.} = object sType*: VkStructureType pNext*: pointer `type`*: VkPerformanceConfigurationTypeINTEL - VkPhysicalDeviceShaderClockFeaturesKHR* = object + VkPhysicalDeviceShaderClockFeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderSubgroupClock*: VkBool32 shaderDeviceClock*: VkBool32 - VkPhysicalDeviceIndexTypeUint8FeaturesKHR* = object + VkPhysicalDeviceIndexTypeUint8FeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer indexTypeUint8*: VkBool32 VkPhysicalDeviceIndexTypeUint8FeaturesEXT* = VkPhysicalDeviceIndexTypeUint8FeaturesKHR - VkPhysicalDeviceShaderSMBuiltinsPropertiesNV* = object + VkPhysicalDeviceShaderSMBuiltinsPropertiesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderSMCount*: uint32 shaderWarpsPerSM*: uint32 - VkPhysicalDeviceShaderSMBuiltinsFeaturesNV* = object + VkPhysicalDeviceShaderSMBuiltinsFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderSMBuiltins*: VkBool32 - VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT* = object + VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer fragmentShaderSampleInterlock*: VkBool32 fragmentShaderPixelInterlock*: VkBool32 fragmentShaderShadingRateInterlock*: VkBool32 - VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures* = object + VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer separateDepthStencilLayouts*: VkBool32 VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR* = VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures - VkAttachmentReferenceStencilLayout* = object + VkAttachmentReferenceStencilLayout* {.byref.} = object sType*: VkStructureType pNext*: pointer stencilLayout*: VkImageLayout - VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* = object + VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer primitiveTopologyListRestart*: VkBool32 @@ -9472,7 +9472,7 @@ type VkAttachmentReferenceStencilLayoutKHR* = VkAttachmentReferenceStencilLayout - VkAttachmentDescriptionStencilLayout* = object + VkAttachmentDescriptionStencilLayout* {.byref.} = object sType*: VkStructureType pNext*: pointer stencilInitialLayout*: VkImageLayout @@ -9480,19 +9480,19 @@ type VkAttachmentDescriptionStencilLayoutKHR* = VkAttachmentDescriptionStencilLayout - VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR* = object + VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer pipelineExecutableInfo*: VkBool32 - VkPipelineInfoKHR* = object + VkPipelineInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer pipeline*: VkPipeline VkPipelineInfoEXT* = VkPipelineInfoKHR - VkPipelineExecutablePropertiesKHR* = object + VkPipelineExecutablePropertiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer stages*: VkShaderStageFlags @@ -9500,19 +9500,19 @@ type description*: array[VK_MAX_DESCRIPTION_SIZE, char] subgroupSize*: uint32 - VkPipelineExecutableInfoKHR* = object + VkPipelineExecutableInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer pipeline*: VkPipeline executableIndex*: uint32 - VkPipelineExecutableStatisticValueKHR* {.union.} = object + VkPipelineExecutableStatisticValueKHR* {.union, byref.} = object b32*: VkBool32 i64*: int64 u64*: uint64 f64*: float64 - VkPipelineExecutableStatisticKHR* = object + VkPipelineExecutableStatisticKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer name*: array[VK_MAX_DESCRIPTION_SIZE, char] @@ -9520,7 +9520,7 @@ type format*: VkPipelineExecutableStatisticFormatKHR value*: VkPipelineExecutableStatisticValueKHR - VkPipelineExecutableInternalRepresentationKHR* = object + VkPipelineExecutableInternalRepresentationKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer name*: array[VK_MAX_DESCRIPTION_SIZE, char] @@ -9529,19 +9529,19 @@ type dataSize*: uint pData*: pointer - VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures* = object + VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderDemoteToHelperInvocation*: VkBool32 VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT* = VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures - VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT* = object + VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer texelBufferAlignment*: VkBool32 - VkPhysicalDeviceTexelBufferAlignmentProperties* = object + VkPhysicalDeviceTexelBufferAlignmentProperties* {.byref.} = object sType*: VkStructureType pNext*: pointer storageTexelBufferOffsetAlignmentBytes*: VkDeviceSize @@ -9551,7 +9551,7 @@ type VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT* = VkPhysicalDeviceTexelBufferAlignmentProperties - VkPhysicalDeviceSubgroupSizeControlFeatures* = object + VkPhysicalDeviceSubgroupSizeControlFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer subgroupSizeControl*: VkBool32 @@ -9559,7 +9559,7 @@ type VkPhysicalDeviceSubgroupSizeControlFeaturesEXT* = VkPhysicalDeviceSubgroupSizeControlFeatures - VkPhysicalDeviceSubgroupSizeControlProperties* = object + VkPhysicalDeviceSubgroupSizeControlProperties* {.byref.} = object sType*: VkStructureType pNext*: pointer minSubgroupSize*: uint32 @@ -9569,7 +9569,7 @@ type VkPhysicalDeviceSubgroupSizeControlPropertiesEXT* = VkPhysicalDeviceSubgroupSizeControlProperties - VkPipelineShaderStageRequiredSubgroupSizeCreateInfo* = object + VkPipelineShaderStageRequiredSubgroupSizeCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer requiredSubgroupSize*: uint32 @@ -9578,18 +9578,18 @@ type VkShaderRequiredSubgroupSizeCreateInfoEXT* = VkPipelineShaderStageRequiredSubgroupSizeCreateInfo - VkSubpassShadingPipelineCreateInfoHUAWEI* = object + VkSubpassShadingPipelineCreateInfoHUAWEI* {.byref.} = object sType*: VkStructureType pNext*: pointer renderPass*: VkRenderPass subpass*: uint32 - VkPhysicalDeviceSubpassShadingPropertiesHUAWEI* = object + VkPhysicalDeviceSubpassShadingPropertiesHUAWEI* {.byref.} = object sType*: VkStructureType pNext*: pointer maxSubpassShadingWorkgroupSizeAspectRatio*: uint32 - VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI* = object + VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI* {.byref.} = object sType*: VkStructureType pNext*: pointer maxWorkGroupCount*: array[3, uint32] @@ -9597,21 +9597,21 @@ type maxOutputClusterCount*: uint32 indirectBufferOffsetAlignment*: VkDeviceSize - VkMemoryOpaqueCaptureAddressAllocateInfo* = object + VkMemoryOpaqueCaptureAddressAllocateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer opaqueCaptureAddress*: uint64 VkMemoryOpaqueCaptureAddressAllocateInfoKHR* = VkMemoryOpaqueCaptureAddressAllocateInfo - VkDeviceMemoryOpaqueCaptureAddressInfo* = object + VkDeviceMemoryOpaqueCaptureAddressInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer memory*: VkDeviceMemory VkDeviceMemoryOpaqueCaptureAddressInfoKHR* = VkDeviceMemoryOpaqueCaptureAddressInfo - VkPhysicalDeviceLineRasterizationFeaturesKHR* = object + VkPhysicalDeviceLineRasterizationFeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer rectangularLines*: VkBool32 @@ -9623,14 +9623,14 @@ type VkPhysicalDeviceLineRasterizationFeaturesEXT* = VkPhysicalDeviceLineRasterizationFeaturesKHR - VkPhysicalDeviceLineRasterizationPropertiesKHR* = object + VkPhysicalDeviceLineRasterizationPropertiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer lineSubPixelPrecisionBits*: uint32 VkPhysicalDeviceLineRasterizationPropertiesEXT* = VkPhysicalDeviceLineRasterizationPropertiesKHR - VkPipelineRasterizationLineStateCreateInfoKHR* = object + VkPipelineRasterizationLineStateCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer lineRasterizationMode*: VkLineRasterizationModeKHR @@ -9640,14 +9640,14 @@ type VkPipelineRasterizationLineStateCreateInfoEXT* = VkPipelineRasterizationLineStateCreateInfoKHR - VkPhysicalDevicePipelineCreationCacheControlFeatures* = object + VkPhysicalDevicePipelineCreationCacheControlFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer pipelineCreationCacheControl*: VkBool32 VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT* = VkPhysicalDevicePipelineCreationCacheControlFeatures - VkPhysicalDeviceVulkan11Features* = object + VkPhysicalDeviceVulkan11Features* {.byref.} = object sType*: VkStructureType pNext*: pointer storageBuffer16BitAccess*: VkBool32 @@ -9663,7 +9663,7 @@ type samplerYcbcrConversion*: VkBool32 shaderDrawParameters*: VkBool32 - VkPhysicalDeviceVulkan11Properties* = object + VkPhysicalDeviceVulkan11Properties* {.byref.} = object sType*: VkStructureType pNext*: pointer deviceUUID*: array[VK_UUID_SIZE, uint8] @@ -9682,7 +9682,7 @@ type maxPerSetDescriptors*: uint32 maxMemoryAllocationSize*: VkDeviceSize - VkPhysicalDeviceVulkan12Features* = object + VkPhysicalDeviceVulkan12Features* {.byref.} = object sType*: VkStructureType pNext*: pointer samplerMirrorClampToEdge*: VkBool32 @@ -9733,7 +9733,7 @@ type shaderOutputLayer*: VkBool32 subgroupBroadcastDynamicId*: VkBool32 - VkPhysicalDeviceVulkan12Properties* = object + VkPhysicalDeviceVulkan12Properties* {.byref.} = object sType*: VkStructureType pNext*: pointer driverID*: VkDriverId @@ -9789,7 +9789,7 @@ type maxTimelineSemaphoreValueDifference*: uint64 framebufferIntegerColorSampleCounts*: VkSampleCountFlags - VkPhysicalDeviceVulkan13Features* = object + VkPhysicalDeviceVulkan13Features* {.byref.} = object sType*: VkStructureType pNext*: pointer robustImageAccess*: VkBool32 @@ -9808,7 +9808,7 @@ type shaderIntegerDotProduct*: VkBool32 maintenance4*: VkBool32 - VkPhysicalDeviceVulkan13Properties* = object + VkPhysicalDeviceVulkan13Properties* {.byref.} = object sType*: VkStructureType pNext*: pointer minSubgroupSize*: uint32 @@ -9857,30 +9857,30 @@ type uniformTexelBufferOffsetSingleTexelAlignment*: VkBool32 maxBufferSize*: VkDeviceSize - VkPipelineCompilerControlCreateInfoAMD* = object + VkPipelineCompilerControlCreateInfoAMD* {.byref.} = object sType*: VkStructureType pNext*: pointer compilerControlFlags*: VkPipelineCompilerControlFlagsAMD - VkPhysicalDeviceCoherentMemoryFeaturesAMD* = object + VkPhysicalDeviceCoherentMemoryFeaturesAMD* {.byref.} = object sType*: VkStructureType pNext*: pointer deviceCoherentMemory*: VkBool32 - VkFaultData* = object + VkFaultData* {.byref.} = object sType*: VkStructureType pNext*: pointer faultLevel*: VkFaultLevel faultType*: VkFaultType - VkFaultCallbackInfo* = object + VkFaultCallbackInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer faultCount*: uint32 pFaults*: ptr VkFaultData pfnFaultCallback*: PFN_vkFaultCallbackFunction - VkPhysicalDeviceToolProperties* = object + VkPhysicalDeviceToolProperties* {.byref.} = object sType*: VkStructureType pNext*: pointer name*: array[VK_MAX_EXTENSION_NAME_SIZE, char] @@ -9891,48 +9891,48 @@ type VkPhysicalDeviceToolPropertiesEXT* = VkPhysicalDeviceToolProperties - VkSamplerCustomBorderColorCreateInfoEXT* = object + VkSamplerCustomBorderColorCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer customBorderColor*: VkClearColorValue format*: VkFormat - VkPhysicalDeviceCustomBorderColorPropertiesEXT* = object + VkPhysicalDeviceCustomBorderColorPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer maxCustomBorderColorSamplers*: uint32 - VkPhysicalDeviceCustomBorderColorFeaturesEXT* = object + VkPhysicalDeviceCustomBorderColorFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer customBorderColors*: VkBool32 customBorderColorWithoutFormat*: VkBool32 - VkSamplerBorderColorComponentMappingCreateInfoEXT* = object + VkSamplerBorderColorComponentMappingCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer components*: VkComponentMapping srgb*: VkBool32 - VkPhysicalDeviceBorderColorSwizzleFeaturesEXT* = object + VkPhysicalDeviceBorderColorSwizzleFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer borderColorSwizzle*: VkBool32 borderColorSwizzleFromImage*: VkBool32 - VkDeviceOrHostAddressKHR* {.union.} = object + VkDeviceOrHostAddressKHR* {.union, byref.} = object deviceAddress*: VkDeviceAddress hostAddress*: pointer - VkDeviceOrHostAddressConstKHR* {.union.} = object + VkDeviceOrHostAddressConstKHR* {.union, byref.} = object deviceAddress*: VkDeviceAddress hostAddress*: pointer - VkDeviceOrHostAddressConstAMDX* {.union.} = object + VkDeviceOrHostAddressConstAMDX* {.union, byref.} = object deviceAddress*: VkDeviceAddress hostAddress*: pointer - VkAccelerationStructureGeometryTrianglesDataKHR* = object + VkAccelerationStructureGeometryTrianglesDataKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer vertexFormat*: VkFormat @@ -9943,31 +9943,31 @@ type indexData*: VkDeviceOrHostAddressConstKHR transformData*: VkDeviceOrHostAddressConstKHR - VkAccelerationStructureGeometryAabbsDataKHR* = object + VkAccelerationStructureGeometryAabbsDataKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer data*: VkDeviceOrHostAddressConstKHR stride*: VkDeviceSize - VkAccelerationStructureGeometryInstancesDataKHR* = object + VkAccelerationStructureGeometryInstancesDataKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer arrayOfPointers*: VkBool32 data*: VkDeviceOrHostAddressConstKHR - VkAccelerationStructureGeometryDataKHR* {.union.} = object + VkAccelerationStructureGeometryDataKHR* {.union, byref.} = object triangles*: VkAccelerationStructureGeometryTrianglesDataKHR aabbs*: VkAccelerationStructureGeometryAabbsDataKHR instances*: VkAccelerationStructureGeometryInstancesDataKHR - VkAccelerationStructureGeometryKHR* = object + VkAccelerationStructureGeometryKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer geometryType*: VkGeometryTypeKHR geometry*: VkAccelerationStructureGeometryDataKHR flags*: VkGeometryFlagsKHR - VkAccelerationStructureBuildGeometryInfoKHR* = object + VkAccelerationStructureBuildGeometryInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer `type`*: VkAccelerationStructureTypeKHR @@ -9980,13 +9980,13 @@ type ppGeometries*: ptr ptr VkAccelerationStructureGeometryKHR scratchData*: VkDeviceOrHostAddressKHR - VkAccelerationStructureBuildRangeInfoKHR* = object + VkAccelerationStructureBuildRangeInfoKHR* {.byref.} = object primitiveCount*: uint32 primitiveOffset*: uint32 firstVertex*: uint32 transformOffset*: uint32 - VkAccelerationStructureCreateInfoKHR* = object + VkAccelerationStructureCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer createFlags*: VkAccelerationStructureCreateFlagsKHR @@ -9996,7 +9996,7 @@ type `type`*: VkAccelerationStructureTypeKHR deviceAddress*: VkDeviceAddress - VkAabbPositionsKHR* = object + VkAabbPositionsKHR* {.byref.} = object minX*: float32 minY*: float32 minZ*: float32 @@ -10006,12 +10006,12 @@ type VkAabbPositionsNV* = VkAabbPositionsKHR - VkTransformMatrixKHR* = object + VkTransformMatrixKHR* {.byref.} = object matrix*: array[3, float32] VkTransformMatrixNV* = VkTransformMatrixKHR - VkAccelerationStructureInstanceKHR* = object + VkAccelerationStructureInstanceKHR* {.byref.} = object transform*: VkTransformMatrixKHR instanceCustomIndex*: uint32 mask*: uint32 @@ -10021,73 +10021,73 @@ type VkAccelerationStructureInstanceNV* = VkAccelerationStructureInstanceKHR - VkAccelerationStructureDeviceAddressInfoKHR* = object + VkAccelerationStructureDeviceAddressInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer accelerationStructure*: VkAccelerationStructureKHR - VkAccelerationStructureVersionInfoKHR* = object + VkAccelerationStructureVersionInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer pVersionData*: ptr uint8 - VkCopyAccelerationStructureInfoKHR* = object + VkCopyAccelerationStructureInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer src*: VkAccelerationStructureKHR dst*: VkAccelerationStructureKHR mode*: VkCopyAccelerationStructureModeKHR - VkCopyAccelerationStructureToMemoryInfoKHR* = object + VkCopyAccelerationStructureToMemoryInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer src*: VkAccelerationStructureKHR dst*: VkDeviceOrHostAddressKHR mode*: VkCopyAccelerationStructureModeKHR - VkCopyMemoryToAccelerationStructureInfoKHR* = object + VkCopyMemoryToAccelerationStructureInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer src*: VkDeviceOrHostAddressConstKHR dst*: VkAccelerationStructureKHR mode*: VkCopyAccelerationStructureModeKHR - VkRayTracingPipelineInterfaceCreateInfoKHR* = object + VkRayTracingPipelineInterfaceCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer maxPipelineRayPayloadSize*: uint32 maxPipelineRayHitAttributeSize*: uint32 - VkPipelineLibraryCreateInfoKHR* = object + VkPipelineLibraryCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer libraryCount*: uint32 pLibraries*: ptr VkPipeline - VkRefreshObjectKHR* = object + VkRefreshObjectKHR* {.byref.} = object objectType*: VkObjectType objectHandle*: uint64 flags*: VkRefreshObjectFlagsKHR - VkRefreshObjectListKHR* = object + VkRefreshObjectListKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer objectCount*: uint32 pObjects*: ptr VkRefreshObjectKHR - VkPhysicalDeviceExtendedDynamicStateFeaturesEXT* = object + VkPhysicalDeviceExtendedDynamicStateFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer extendedDynamicState*: VkBool32 - VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* = object + VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer extendedDynamicState2*: VkBool32 extendedDynamicState2LogicOp*: VkBool32 extendedDynamicState2PatchControlPoints*: VkBool32 - VkPhysicalDeviceExtendedDynamicState3FeaturesEXT* = object + VkPhysicalDeviceExtendedDynamicState3FeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer extendedDynamicState3TessellationDomainOrigin*: VkBool32 @@ -10122,12 +10122,12 @@ type extendedDynamicState3RepresentativeFragmentTestEnable*: VkBool32 extendedDynamicState3ShadingRateImageEnable*: VkBool32 - VkPhysicalDeviceExtendedDynamicState3PropertiesEXT* = object + VkPhysicalDeviceExtendedDynamicState3PropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer dynamicPrimitiveTopologyUnrestricted*: VkBool32 - VkColorBlendEquationEXT* = object + VkColorBlendEquationEXT* {.byref.} = object srcColorBlendFactor*: VkBlendFactor dstColorBlendFactor*: VkBlendFactor colorBlendOp*: VkBlendOp @@ -10135,79 +10135,79 @@ type dstAlphaBlendFactor*: VkBlendFactor alphaBlendOp*: VkBlendOp - VkColorBlendAdvancedEXT* = object + VkColorBlendAdvancedEXT* {.byref.} = object advancedBlendOp*: VkBlendOp srcPremultiplied*: VkBool32 dstPremultiplied*: VkBool32 blendOverlap*: VkBlendOverlapEXT clampResults*: VkBool32 - VkRenderPassTransformBeginInfoQCOM* = object + VkRenderPassTransformBeginInfoQCOM* {.byref.} = object sType*: VkStructureType pNext*: pointer transform*: VkSurfaceTransformFlagBitsKHR - VkCopyCommandTransformInfoQCOM* = object + VkCopyCommandTransformInfoQCOM* {.byref.} = object sType*: VkStructureType pNext*: pointer transform*: VkSurfaceTransformFlagBitsKHR - VkCommandBufferInheritanceRenderPassTransformInfoQCOM* = object + VkCommandBufferInheritanceRenderPassTransformInfoQCOM* {.byref.} = object sType*: VkStructureType pNext*: pointer transform*: VkSurfaceTransformFlagBitsKHR renderArea*: VkRect2D - VkPhysicalDeviceDiagnosticsConfigFeaturesNV* = object + VkPhysicalDeviceDiagnosticsConfigFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer diagnosticsConfig*: VkBool32 - VkDeviceDiagnosticsConfigCreateInfoNV* = object + VkDeviceDiagnosticsConfigCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkDeviceDiagnosticsConfigFlagsNV - VkPipelineOfflineCreateInfo* = object + VkPipelineOfflineCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer pipelineIdentifier*: array[VK_UUID_SIZE, uint8] matchControl*: VkPipelineMatchControl poolEntrySize*: VkDeviceSize - VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures* = object + VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderZeroInitializeWorkgroupMemory*: VkBool32 VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR* = VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures - VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* = object + VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderSubgroupUniformControlFlow*: VkBool32 - VkPhysicalDeviceRobustness2FeaturesEXT* = object + VkPhysicalDeviceRobustness2FeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer robustBufferAccess2*: VkBool32 robustImageAccess2*: VkBool32 nullDescriptor*: VkBool32 - VkPhysicalDeviceRobustness2PropertiesEXT* = object + VkPhysicalDeviceRobustness2PropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer robustStorageBufferAccessSizeAlignment*: VkDeviceSize robustUniformBufferAccessSizeAlignment*: VkDeviceSize - VkPhysicalDeviceImageRobustnessFeatures* = object + VkPhysicalDeviceImageRobustnessFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer robustImageAccess*: VkBool32 VkPhysicalDeviceImageRobustnessFeaturesEXT* = VkPhysicalDeviceImageRobustnessFeatures - VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* = object + VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer workgroupMemoryExplicitLayout*: VkBool32 @@ -10215,7 +10215,7 @@ type workgroupMemoryExplicitLayout8BitAccess*: VkBool32 workgroupMemoryExplicitLayout16BitAccess*: VkBool32 - VkPhysicalDevicePortabilitySubsetFeaturesKHR* = object + VkPhysicalDevicePortabilitySubsetFeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer constantAlphaColorBlendFactors*: VkBool32 @@ -10234,34 +10234,34 @@ type triangleFans*: VkBool32 vertexAttributeAccessBeyondStride*: VkBool32 - VkPhysicalDevicePortabilitySubsetPropertiesKHR* = object + VkPhysicalDevicePortabilitySubsetPropertiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer minVertexInputBindingStrideAlignment*: uint32 - VkPhysicalDevice4444FormatsFeaturesEXT* = object + VkPhysicalDevice4444FormatsFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer formatA4R4G4B4*: VkBool32 formatA4B4G4R4*: VkBool32 - VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* = object + VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* {.byref.} = object sType*: VkStructureType pNext*: pointer subpassShading*: VkBool32 - VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI* = object + VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI* {.byref.} = object sType*: VkStructureType pNext*: pointer clustercullingShader*: VkBool32 multiviewClusterCullingShader*: VkBool32 - VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI* = object + VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI* {.byref.} = object sType*: VkStructureType pNext*: pointer clusterShadingRate*: VkBool32 - VkBufferCopy2* = object + VkBufferCopy2* {.byref.} = object sType*: VkStructureType pNext*: pointer srcOffset*: VkDeviceSize @@ -10270,7 +10270,7 @@ type VkBufferCopy2KHR* = VkBufferCopy2 - VkImageCopy2* = object + VkImageCopy2* {.byref.} = object sType*: VkStructureType pNext*: pointer srcSubresource*: VkImageSubresourceLayers @@ -10281,7 +10281,7 @@ type VkImageCopy2KHR* = VkImageCopy2 - VkImageBlit2* = object + VkImageBlit2* {.byref.} = object sType*: VkStructureType pNext*: pointer srcSubresource*: VkImageSubresourceLayers @@ -10291,7 +10291,7 @@ type VkImageBlit2KHR* = VkImageBlit2 - VkBufferImageCopy2* = object + VkBufferImageCopy2* {.byref.} = object sType*: VkStructureType pNext*: pointer bufferOffset*: VkDeviceSize @@ -10303,7 +10303,7 @@ type VkBufferImageCopy2KHR* = VkBufferImageCopy2 - VkImageResolve2* = object + VkImageResolve2* {.byref.} = object sType*: VkStructureType pNext*: pointer srcSubresource*: VkImageSubresourceLayers @@ -10314,7 +10314,7 @@ type VkImageResolve2KHR* = VkImageResolve2 - VkCopyBufferInfo2* = object + VkCopyBufferInfo2* {.byref.} = object sType*: VkStructureType pNext*: pointer srcBuffer*: VkBuffer @@ -10324,7 +10324,7 @@ type VkCopyBufferInfo2KHR* = VkCopyBufferInfo2 - VkCopyImageInfo2* = object + VkCopyImageInfo2* {.byref.} = object sType*: VkStructureType pNext*: pointer srcImage*: VkImage @@ -10336,7 +10336,7 @@ type VkCopyImageInfo2KHR* = VkCopyImageInfo2 - VkBlitImageInfo2* = object + VkBlitImageInfo2* {.byref.} = object sType*: VkStructureType pNext*: pointer srcImage*: VkImage @@ -10349,7 +10349,7 @@ type VkBlitImageInfo2KHR* = VkBlitImageInfo2 - VkCopyBufferToImageInfo2* = object + VkCopyBufferToImageInfo2* {.byref.} = object sType*: VkStructureType pNext*: pointer srcBuffer*: VkBuffer @@ -10360,7 +10360,7 @@ type VkCopyBufferToImageInfo2KHR* = VkCopyBufferToImageInfo2 - VkCopyImageToBufferInfo2* = object + VkCopyImageToBufferInfo2* {.byref.} = object sType*: VkStructureType pNext*: pointer srcImage*: VkImage @@ -10371,7 +10371,7 @@ type VkCopyImageToBufferInfo2KHR* = VkCopyImageToBufferInfo2 - VkResolveImageInfo2* = object + VkResolveImageInfo2* {.byref.} = object sType*: VkStructureType pNext*: pointer srcImage*: VkImage @@ -10383,32 +10383,32 @@ type VkResolveImageInfo2KHR* = VkResolveImageInfo2 - VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT* = object + VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderImageInt64Atomics*: VkBool32 sparseImageInt64Atomics*: VkBool32 - VkFragmentShadingRateAttachmentInfoKHR* = object + VkFragmentShadingRateAttachmentInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer pFragmentShadingRateAttachment*: ptr VkAttachmentReference2 shadingRateAttachmentTexelSize*: VkExtent2D - VkPipelineFragmentShadingRateStateCreateInfoKHR* = object + VkPipelineFragmentShadingRateStateCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer fragmentSize*: VkExtent2D combinerOps*: array[2, VkFragmentShadingRateCombinerOpKHR] - VkPhysicalDeviceFragmentShadingRateFeaturesKHR* = object + VkPhysicalDeviceFragmentShadingRateFeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer pipelineFragmentShadingRate*: VkBool32 primitiveFragmentShadingRate*: VkBool32 attachmentFragmentShadingRate*: VkBool32 - VkPhysicalDeviceFragmentShadingRatePropertiesKHR* = object + VkPhysicalDeviceFragmentShadingRatePropertiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer minFragmentShadingRateAttachmentTexelSize*: VkExtent2D @@ -10429,75 +10429,75 @@ type fragmentShadingRateWithCustomSampleLocations*: VkBool32 fragmentShadingRateStrictMultiplyCombiner*: VkBool32 - VkPhysicalDeviceFragmentShadingRateKHR* = object + VkPhysicalDeviceFragmentShadingRateKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer sampleCounts*: VkSampleCountFlags fragmentSize*: VkExtent2D - VkPhysicalDeviceShaderTerminateInvocationFeatures* = object + VkPhysicalDeviceShaderTerminateInvocationFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderTerminateInvocation*: VkBool32 VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR* = VkPhysicalDeviceShaderTerminateInvocationFeatures - VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV* = object + VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer fragmentShadingRateEnums*: VkBool32 supersampleFragmentShadingRates*: VkBool32 noInvocationFragmentShadingRates*: VkBool32 - VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV* = object + VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer maxFragmentShadingRateInvocationCount*: VkSampleCountFlagBits - VkPipelineFragmentShadingRateEnumStateCreateInfoNV* = object + VkPipelineFragmentShadingRateEnumStateCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer shadingRateType*: VkFragmentShadingRateTypeNV shadingRate*: VkFragmentShadingRateNV combinerOps*: array[2, VkFragmentShadingRateCombinerOpKHR] - VkAccelerationStructureBuildSizesInfoKHR* = object + VkAccelerationStructureBuildSizesInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer accelerationStructureSize*: VkDeviceSize updateScratchSize*: VkDeviceSize buildScratchSize*: VkDeviceSize - VkPhysicalDeviceImage2DViewOf3DFeaturesEXT* = object + VkPhysicalDeviceImage2DViewOf3DFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer image2DViewOf3D*: VkBool32 sampler2DViewOf3D*: VkBool32 - VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT* = object + VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer imageSlicedViewOf3D*: VkBool32 - VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT* = object + VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer attachmentFeedbackLoopDynamicState*: VkBool32 - VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT* = object + VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer mutableDescriptorType*: VkBool32 VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE* = VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT - VkMutableDescriptorTypeListEXT* = object + VkMutableDescriptorTypeListEXT* {.byref.} = object descriptorTypeCount*: uint32 pDescriptorTypes*: ptr VkDescriptorType VkMutableDescriptorTypeListVALVE* = VkMutableDescriptorTypeListEXT - VkMutableDescriptorTypeCreateInfoEXT* = object + VkMutableDescriptorTypeCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer mutableDescriptorTypeListCount*: uint32 @@ -10505,27 +10505,27 @@ type VkMutableDescriptorTypeCreateInfoVALVE* = VkMutableDescriptorTypeCreateInfoEXT - VkPhysicalDeviceDepthClipControlFeaturesEXT* = object + VkPhysicalDeviceDepthClipControlFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer depthClipControl*: VkBool32 - VkPipelineViewportDepthClipControlCreateInfoEXT* = object + VkPipelineViewportDepthClipControlCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer negativeOneToOne*: VkBool32 - VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* = object + VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer vertexInputDynamicState*: VkBool32 - VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* = object + VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer externalMemoryRDMA*: VkBool32 - VkVertexInputBindingDescription2EXT* = object + VkVertexInputBindingDescription2EXT* {.byref.} = object sType*: VkStructureType pNext*: pointer binding*: uint32 @@ -10533,7 +10533,7 @@ type inputRate*: VkVertexInputRate divisor*: uint32 - VkVertexInputAttributeDescription2EXT* = object + VkVertexInputAttributeDescription2EXT* {.byref.} = object sType*: VkStructureType pNext*: pointer location*: uint32 @@ -10541,18 +10541,18 @@ type format*: VkFormat offset*: uint32 - VkPhysicalDeviceColorWriteEnableFeaturesEXT* = object + VkPhysicalDeviceColorWriteEnableFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer colorWriteEnable*: VkBool32 - VkPipelineColorWriteCreateInfoEXT* = object + VkPipelineColorWriteCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer attachmentCount*: uint32 pColorWriteEnables*: ptr VkBool32 - VkMemoryBarrier2* = object + VkMemoryBarrier2* {.byref.} = object sType*: VkStructureType pNext*: pointer srcStageMask*: VkPipelineStageFlags2 @@ -10562,7 +10562,7 @@ type VkMemoryBarrier2KHR* = VkMemoryBarrier2 - VkImageMemoryBarrier2* = object + VkImageMemoryBarrier2* {.byref.} = object sType*: VkStructureType pNext*: pointer srcStageMask*: VkPipelineStageFlags2 @@ -10578,7 +10578,7 @@ type VkImageMemoryBarrier2KHR* = VkImageMemoryBarrier2 - VkBufferMemoryBarrier2* = object + VkBufferMemoryBarrier2* {.byref.} = object sType*: VkStructureType pNext*: pointer srcStageMask*: VkPipelineStageFlags2 @@ -10593,7 +10593,7 @@ type VkBufferMemoryBarrier2KHR* = VkBufferMemoryBarrier2 - VkDependencyInfo* = object + VkDependencyInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer dependencyFlags*: VkDependencyFlags @@ -10606,7 +10606,7 @@ type VkDependencyInfoKHR* = VkDependencyInfo - VkSemaphoreSubmitInfo* = object + VkSemaphoreSubmitInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer semaphore*: VkSemaphore @@ -10616,7 +10616,7 @@ type VkSemaphoreSubmitInfoKHR* = VkSemaphoreSubmitInfo - VkCommandBufferSubmitInfo* = object + VkCommandBufferSubmitInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer commandBuffer*: VkCommandBuffer @@ -10624,7 +10624,7 @@ type VkCommandBufferSubmitInfoKHR* = VkCommandBufferSubmitInfo - VkSubmitInfo2* = object + VkSubmitInfo2* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkSubmitFlags @@ -10637,30 +10637,30 @@ type VkSubmitInfo2KHR* = VkSubmitInfo2 - VkQueueFamilyCheckpointProperties2NV* = object + VkQueueFamilyCheckpointProperties2NV* {.byref.} = object sType*: VkStructureType pNext*: pointer checkpointExecutionStageMask*: VkPipelineStageFlags2 - VkCheckpointData2NV* = object + VkCheckpointData2NV* {.byref.} = object sType*: VkStructureType pNext*: pointer stage*: VkPipelineStageFlags2 pCheckpointMarker*: pointer - VkPhysicalDeviceSynchronization2Features* = object + VkPhysicalDeviceSynchronization2Features* {.byref.} = object sType*: VkStructureType pNext*: pointer synchronization2*: VkBool32 VkPhysicalDeviceSynchronization2FeaturesKHR* = VkPhysicalDeviceSynchronization2Features - VkPhysicalDeviceHostImageCopyFeaturesEXT* = object + VkPhysicalDeviceHostImageCopyFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer hostImageCopy*: VkBool32 - VkPhysicalDeviceHostImageCopyPropertiesEXT* = object + VkPhysicalDeviceHostImageCopyPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer copySrcLayoutCount*: uint32 @@ -10670,7 +10670,7 @@ type optimalTilingLayoutUUID*: array[VK_UUID_SIZE, uint8] identicalMemoryTypeRequirements*: VkBool32 - VkMemoryToImageCopyEXT* = object + VkMemoryToImageCopyEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer pHostPointer*: pointer @@ -10680,7 +10680,7 @@ type imageOffset*: VkOffset3D imageExtent*: VkExtent3D - VkImageToMemoryCopyEXT* = object + VkImageToMemoryCopyEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer pHostPointer*: pointer @@ -10690,7 +10690,7 @@ type imageOffset*: VkOffset3D imageExtent*: VkExtent3D - VkCopyMemoryToImageInfoEXT* = object + VkCopyMemoryToImageInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkHostImageCopyFlagsEXT @@ -10699,7 +10699,7 @@ type regionCount*: uint32 pRegions*: ptr VkMemoryToImageCopyEXT - VkCopyImageToMemoryInfoEXT* = object + VkCopyImageToMemoryInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkHostImageCopyFlagsEXT @@ -10708,7 +10708,7 @@ type regionCount*: uint32 pRegions*: ptr VkImageToMemoryCopyEXT - VkCopyImageToImageInfoEXT* = object + VkCopyImageToImageInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkHostImageCopyFlagsEXT @@ -10719,7 +10719,7 @@ type regionCount*: uint32 pRegions*: ptr VkImageCopy2 - VkHostImageLayoutTransitionInfoEXT* = object + VkHostImageLayoutTransitionInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer image*: VkImage @@ -10727,18 +10727,18 @@ type newLayout*: VkImageLayout subresourceRange*: VkImageSubresourceRange - VkSubresourceHostMemcpySizeEXT* = object + VkSubresourceHostMemcpySizeEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer size*: VkDeviceSize - VkHostImageCopyDevicePerformanceQueryEXT* = object + VkHostImageCopyDevicePerformanceQueryEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer optimalDeviceAccess*: VkBool32 identicalMemoryLayout*: VkBool32 - VkPhysicalDeviceVulkanSC10Properties* = object + VkPhysicalDeviceVulkanSC10Properties* {.byref.} = object sType*: VkStructureType pNext*: pointer deviceNoDynamicHostAllocations*: VkBool32 @@ -10760,13 +10760,13 @@ type maxCommandPoolCommandBuffers*: uint32 maxCommandBufferSize*: VkDeviceSize - VkPipelinePoolSize* = object + VkPipelinePoolSize* {.byref.} = object sType*: VkStructureType pNext*: pointer poolEntrySize*: VkDeviceSize poolEntryCount*: uint32 - VkDeviceObjectReservationCreateInfo* = object + VkDeviceObjectReservationCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer pipelineCacheCreateInfoCount*: uint32 @@ -10811,79 +10811,79 @@ type maxTimestampQueriesPerPool*: uint32 maxImmutableSamplersPerDescriptorSetLayout*: uint32 - VkCommandPoolMemoryReservationCreateInfo* = object + VkCommandPoolMemoryReservationCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer commandPoolReservedSize*: VkDeviceSize commandPoolMaxCommandBuffers*: uint32 - VkCommandPoolMemoryConsumption* = object + VkCommandPoolMemoryConsumption* {.byref.} = object sType*: VkStructureType pNext*: pointer commandPoolAllocated*: VkDeviceSize commandPoolReservedSize*: VkDeviceSize commandBufferAllocated*: VkDeviceSize - VkPhysicalDeviceVulkanSC10Features* = object + VkPhysicalDeviceVulkanSC10Features* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderAtomicInstructions*: VkBool32 - VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT* = object + VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer primitivesGeneratedQuery*: VkBool32 primitivesGeneratedQueryWithRasterizerDiscard*: VkBool32 primitivesGeneratedQueryWithNonZeroStreams*: VkBool32 - VkPhysicalDeviceLegacyDitheringFeaturesEXT* = object + VkPhysicalDeviceLegacyDitheringFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer legacyDithering*: VkBool32 - VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT* = object + VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer multisampledRenderToSingleSampled*: VkBool32 - VkSubpassResolvePerformanceQueryEXT* = object + VkSubpassResolvePerformanceQueryEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer optimal*: VkBool32 - VkMultisampledRenderToSingleSampledInfoEXT* = object + VkMultisampledRenderToSingleSampledInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer multisampledRenderToSingleSampledEnable*: VkBool32 rasterizationSamples*: VkSampleCountFlagBits - VkPhysicalDevicePipelineProtectedAccessFeaturesEXT* = object + VkPhysicalDevicePipelineProtectedAccessFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer pipelineProtectedAccess*: VkBool32 - VkQueueFamilyVideoPropertiesKHR* = object + VkQueueFamilyVideoPropertiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer videoCodecOperations*: VkVideoCodecOperationFlagsKHR - VkQueueFamilyQueryResultStatusPropertiesKHR* = object + VkQueueFamilyQueryResultStatusPropertiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer queryResultStatusSupport*: VkBool32 - VkVideoProfileListInfoKHR* = object + VkVideoProfileListInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer profileCount*: uint32 pProfiles*: ptr VkVideoProfileInfoKHR - VkPhysicalDeviceVideoFormatInfoKHR* = object + VkPhysicalDeviceVideoFormatInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer imageUsage*: VkImageUsageFlags - VkVideoFormatPropertiesKHR* = object + VkVideoFormatPropertiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer format*: VkFormat @@ -10893,7 +10893,7 @@ type imageTiling*: VkImageTiling imageUsageFlags*: VkImageUsageFlags - VkVideoProfileInfoKHR* = object + VkVideoProfileInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer videoCodecOperation*: VkVideoCodecOperationFlagBitsKHR @@ -10901,7 +10901,7 @@ type lumaBitDepth*: VkVideoComponentBitDepthFlagsKHR chromaBitDepth*: VkVideoComponentBitDepthFlagsKHR - VkVideoCapabilitiesKHR* = object + VkVideoCapabilitiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkVideoCapabilityFlagsKHR @@ -10914,13 +10914,13 @@ type maxActiveReferencePictures*: uint32 stdHeaderVersion*: VkExtensionProperties - VkVideoSessionMemoryRequirementsKHR* = object + VkVideoSessionMemoryRequirementsKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer memoryBindIndex*: uint32 memoryRequirements*: VkMemoryRequirements - VkBindVideoSessionMemoryInfoKHR* = object + VkBindVideoSessionMemoryInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer memoryBindIndex*: uint32 @@ -10928,7 +10928,7 @@ type memoryOffset*: VkDeviceSize memorySize*: VkDeviceSize - VkVideoPictureResourceInfoKHR* = object + VkVideoPictureResourceInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer codedOffset*: VkOffset2D @@ -10936,23 +10936,23 @@ type baseArrayLayer*: uint32 imageViewBinding*: VkImageView - VkVideoReferenceSlotInfoKHR* = object + VkVideoReferenceSlotInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer slotIndex*: int32 pPictureResource*: ptr VkVideoPictureResourceInfoKHR - VkVideoDecodeCapabilitiesKHR* = object + VkVideoDecodeCapabilitiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkVideoDecodeCapabilityFlagsKHR - VkVideoDecodeUsageInfoKHR* = object + VkVideoDecodeUsageInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer videoUsageHints*: VkVideoDecodeUsageFlagsKHR - VkVideoDecodeInfoKHR* = object + VkVideoDecodeInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkVideoDecodeFlagsKHR @@ -10964,12 +10964,12 @@ type referenceSlotCount*: uint32 pReferenceSlots*: ptr VkVideoReferenceSlotInfoKHR - VkPhysicalDeviceVideoMaintenance1FeaturesKHR* = object + VkPhysicalDeviceVideoMaintenance1FeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer videoMaintenance1*: VkBool32 - VkVideoInlineQueryInfoKHR* = object + VkVideoInlineQueryInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer queryPool*: VkQueryPool @@ -10998,13 +10998,13 @@ type StdVideoDecodeH264PictureInfoFlags* {.nodecl.} = object StdVideoDecodeH264ReferenceInfoFlags* {.nodecl.} = object - VkVideoDecodeH264ProfileInfoKHR* = object + VkVideoDecodeH264ProfileInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer stdProfileIdc*: StdVideoH264ProfileIdc pictureLayout*: VkVideoDecodeH264PictureLayoutFlagBitsKHR - VkVideoDecodeH264CapabilitiesKHR* = object + VkVideoDecodeH264CapabilitiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer maxLevelIdc*: StdVideoH264LevelIdc @@ -11012,7 +11012,7 @@ type StdVideoH264SequenceParameterSet* {.nodecl.} = object StdVideoH264PictureParameterSet* {.nodecl.} = object - VkVideoDecodeH264SessionParametersAddInfoKHR* = object + VkVideoDecodeH264SessionParametersAddInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer stdSPSCount*: uint32 @@ -11020,21 +11020,21 @@ type stdPPSCount*: uint32 pStdPPSs*: ptr StdVideoH264PictureParameterSet - VkVideoDecodeH264SessionParametersCreateInfoKHR* = object + VkVideoDecodeH264SessionParametersCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer maxStdSPSCount*: uint32 maxStdPPSCount*: uint32 pParametersAddInfo*: ptr VkVideoDecodeH264SessionParametersAddInfoKHR - VkVideoDecodeH264PictureInfoKHR* = object + VkVideoDecodeH264PictureInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer pStdPictureInfo*: ptr StdVideoDecodeH264PictureInfo sliceCount*: uint32 pSliceOffsets*: ptr uint32 - VkVideoDecodeH264DpbSlotInfoKHR* = object + VkVideoDecodeH264DpbSlotInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer pStdReferenceInfo*: ptr StdVideoDecodeH264ReferenceInfo @@ -11061,17 +11061,17 @@ type StdVideoDecodeH265PictureInfoFlags* {.nodecl.} = object StdVideoDecodeH265ReferenceInfoFlags* {.nodecl.} = object - VkVideoDecodeH265ProfileInfoKHR* = object + VkVideoDecodeH265ProfileInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer stdProfileIdc*: StdVideoH265ProfileIdc - VkVideoDecodeH265CapabilitiesKHR* = object + VkVideoDecodeH265CapabilitiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer maxLevelIdc*: StdVideoH265LevelIdc - VkVideoDecodeH265SessionParametersAddInfoKHR* = object + VkVideoDecodeH265SessionParametersAddInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer stdVPSCount*: uint32 @@ -11081,7 +11081,7 @@ type stdPPSCount*: uint32 pStdPPSs*: ptr StdVideoH265PictureParameterSet - VkVideoDecodeH265SessionParametersCreateInfoKHR* = object + VkVideoDecodeH265SessionParametersCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer maxStdVPSCount*: uint32 @@ -11089,14 +11089,14 @@ type maxStdPPSCount*: uint32 pParametersAddInfo*: ptr VkVideoDecodeH265SessionParametersAddInfoKHR - VkVideoDecodeH265PictureInfoKHR* = object + VkVideoDecodeH265PictureInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer pStdPictureInfo*: ptr StdVideoDecodeH265PictureInfo sliceSegmentCount*: uint32 pSliceSegmentOffsets*: ptr uint32 - VkVideoDecodeH265DpbSlotInfoKHR* = object + VkVideoDecodeH265DpbSlotInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer pStdReferenceInfo*: ptr StdVideoDecodeH265ReferenceInfo @@ -11106,23 +11106,23 @@ type StdVideoDecodeAV1PictureInfo* {.nodecl.} = object StdVideoDecodeAV1ReferenceInfo* {.nodecl.} = object - VkVideoDecodeAV1ProfileInfoKHR* = object + VkVideoDecodeAV1ProfileInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer stdProfile*: StdVideoAV1Profile filmGrainSupport*: VkBool32 - VkVideoDecodeAV1CapabilitiesKHR* = object + VkVideoDecodeAV1CapabilitiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer maxLevel*: StdVideoAV1Level - VkVideoDecodeAV1SessionParametersCreateInfoKHR* = object + VkVideoDecodeAV1SessionParametersCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer pStdSequenceHeader*: ptr StdVideoAV1SequenceHeader - VkVideoDecodeAV1PictureInfoKHR* = object + VkVideoDecodeAV1PictureInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer pStdPictureInfo*: ptr StdVideoDecodeAV1PictureInfo @@ -11132,12 +11132,12 @@ type pTileOffsets*: ptr uint32 pTileSizes*: ptr uint32 - VkVideoDecodeAV1DpbSlotInfoKHR* = object + VkVideoDecodeAV1DpbSlotInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer pStdReferenceInfo*: ptr StdVideoDecodeAV1ReferenceInfo - VkVideoSessionCreateInfoKHR* = object + VkVideoSessionCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer queueFamilyIndex*: uint32 @@ -11150,29 +11150,29 @@ type maxActiveReferencePictures*: uint32 pStdHeaderVersion*: ptr VkExtensionProperties - VkVideoSessionParametersCreateInfoKHR* = object + VkVideoSessionParametersCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkVideoSessionParametersCreateFlagsKHR videoSessionParametersTemplate*: VkVideoSessionParametersKHR videoSession*: VkVideoSessionKHR - VkVideoSessionParametersUpdateInfoKHR* = object + VkVideoSessionParametersUpdateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer updateSequenceCount*: uint32 - VkVideoEncodeSessionParametersGetInfoKHR* = object + VkVideoEncodeSessionParametersGetInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer videoSessionParameters*: VkVideoSessionParametersKHR - VkVideoEncodeSessionParametersFeedbackInfoKHR* = object + VkVideoEncodeSessionParametersFeedbackInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer hasOverrides*: VkBool32 - VkVideoBeginCodingInfoKHR* = object + VkVideoBeginCodingInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkVideoBeginCodingFlagsKHR @@ -11181,24 +11181,24 @@ type referenceSlotCount*: uint32 pReferenceSlots*: ptr VkVideoReferenceSlotInfoKHR - VkVideoEndCodingInfoKHR* = object + VkVideoEndCodingInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkVideoEndCodingFlagsKHR - VkVideoCodingControlInfoKHR* = object + VkVideoCodingControlInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkVideoCodingControlFlagsKHR - VkVideoEncodeUsageInfoKHR* = object + VkVideoEncodeUsageInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer videoUsageHints*: VkVideoEncodeUsageFlagsKHR videoContentHints*: VkVideoEncodeContentFlagsKHR tuningMode*: VkVideoEncodeTuningModeKHR - VkVideoEncodeInfoKHR* = object + VkVideoEncodeInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkVideoEncodeFlagsKHR @@ -11211,29 +11211,29 @@ type pReferenceSlots*: ptr VkVideoReferenceSlotInfoKHR precedingExternallyEncodedBytes*: uint32 - VkQueryPoolVideoEncodeFeedbackCreateInfoKHR* = object + VkQueryPoolVideoEncodeFeedbackCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer encodeFeedbackFlags*: VkVideoEncodeFeedbackFlagsKHR - VkVideoEncodeQualityLevelInfoKHR* = object + VkVideoEncodeQualityLevelInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer qualityLevel*: uint32 - VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR* = object + VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer pVideoProfile*: ptr VkVideoProfileInfoKHR qualityLevel*: uint32 - VkVideoEncodeQualityLevelPropertiesKHR* = object + VkVideoEncodeQualityLevelPropertiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer preferredRateControlMode*: VkVideoEncodeRateControlModeFlagBitsKHR preferredRateControlLayerCount*: uint32 - VkVideoEncodeRateControlInfoKHR* = object + VkVideoEncodeRateControlInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkVideoEncodeRateControlFlagsKHR @@ -11243,7 +11243,7 @@ type virtualBufferSizeInMs*: uint32 initialVirtualBufferSizeInMs*: uint32 - VkVideoEncodeRateControlLayerInfoKHR* = object + VkVideoEncodeRateControlLayerInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer averageBitrate*: uint64 @@ -11251,7 +11251,7 @@ type frameRateNumerator*: uint32 frameRateDenominator*: uint32 - VkVideoEncodeCapabilitiesKHR* = object + VkVideoEncodeCapabilitiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkVideoEncodeCapabilityFlagsKHR @@ -11262,7 +11262,7 @@ type encodeInputPictureGranularity*: VkExtent2D supportedEncodeFeedbackFlags*: VkVideoEncodeFeedbackFlagsKHR - VkVideoEncodeH264CapabilitiesKHR* = object + VkVideoEncodeH264CapabilitiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkVideoEncodeH264CapabilityFlagsKHR @@ -11279,7 +11279,7 @@ type requiresGopRemainingFrames*: VkBool32 stdSyntaxFlags*: VkVideoEncodeH264StdFlagsKHR - VkVideoEncodeH264QualityLevelPropertiesKHR* = object + VkVideoEncodeH264QualityLevelPropertiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer preferredRateControlFlags*: VkVideoEncodeH264RateControlFlagsKHR @@ -11302,13 +11302,13 @@ type StdVideoEncodeH264RefListModEntry* {.nodecl.} = object StdVideoEncodeH264RefPicMarkingEntry* {.nodecl.} = object - VkVideoEncodeH264SessionCreateInfoKHR* = object + VkVideoEncodeH264SessionCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer useMaxLevelIdc*: VkBool32 maxLevelIdc*: StdVideoH264LevelIdc - VkVideoEncodeH264SessionParametersAddInfoKHR* = object + VkVideoEncodeH264SessionParametersAddInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer stdSPSCount*: uint32 @@ -11316,14 +11316,14 @@ type stdPPSCount*: uint32 pStdPPSs*: ptr StdVideoH264PictureParameterSet - VkVideoEncodeH264SessionParametersCreateInfoKHR* = object + VkVideoEncodeH264SessionParametersCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer maxStdSPSCount*: uint32 maxStdPPSCount*: uint32 pParametersAddInfo*: ptr VkVideoEncodeH264SessionParametersAddInfoKHR - VkVideoEncodeH264SessionParametersGetInfoKHR* = object + VkVideoEncodeH264SessionParametersGetInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer writeStdSPS*: VkBool32 @@ -11331,18 +11331,18 @@ type stdSPSId*: uint32 stdPPSId*: uint32 - VkVideoEncodeH264SessionParametersFeedbackInfoKHR* = object + VkVideoEncodeH264SessionParametersFeedbackInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer hasStdSPSOverrides*: VkBool32 hasStdPPSOverrides*: VkBool32 - VkVideoEncodeH264DpbSlotInfoKHR* = object + VkVideoEncodeH264DpbSlotInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer pStdReferenceInfo*: ptr StdVideoEncodeH264ReferenceInfo - VkVideoEncodeH264PictureInfoKHR* = object + VkVideoEncodeH264PictureInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer naluSliceEntryCount*: uint32 @@ -11350,18 +11350,18 @@ type pStdPictureInfo*: ptr StdVideoEncodeH264PictureInfo generatePrefixNalu*: VkBool32 - VkVideoEncodeH264ProfileInfoKHR* = object + VkVideoEncodeH264ProfileInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer stdProfileIdc*: StdVideoH264ProfileIdc - VkVideoEncodeH264NaluSliceInfoKHR* = object + VkVideoEncodeH264NaluSliceInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer constantQp*: int32 pStdSliceHeader*: ptr StdVideoEncodeH264SliceHeader - VkVideoEncodeH264RateControlInfoKHR* = object + VkVideoEncodeH264RateControlInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkVideoEncodeH264RateControlFlagsKHR @@ -11370,17 +11370,17 @@ type consecutiveBFrameCount*: uint32 temporalLayerCount*: uint32 - VkVideoEncodeH264QpKHR* = object + VkVideoEncodeH264QpKHR* {.byref.} = object qpI*: int32 qpP*: int32 qpB*: int32 - VkVideoEncodeH264FrameSizeKHR* = object + VkVideoEncodeH264FrameSizeKHR* {.byref.} = object frameISize*: uint32 framePSize*: uint32 frameBSize*: uint32 - VkVideoEncodeH264GopRemainingFrameInfoKHR* = object + VkVideoEncodeH264GopRemainingFrameInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer useGopRemainingFrames*: VkBool32 @@ -11388,7 +11388,7 @@ type gopRemainingP*: uint32 gopRemainingB*: uint32 - VkVideoEncodeH264RateControlLayerInfoKHR* = object + VkVideoEncodeH264RateControlLayerInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer useMinQp*: VkBool32 @@ -11398,7 +11398,7 @@ type useMaxFrameSize*: VkBool32 maxFrameSize*: VkVideoEncodeH264FrameSizeKHR - VkVideoEncodeH265CapabilitiesKHR* = object + VkVideoEncodeH265CapabilitiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkVideoEncodeH265CapabilityFlagsKHR @@ -11418,7 +11418,7 @@ type requiresGopRemainingFrames*: VkBool32 stdSyntaxFlags*: VkVideoEncodeH265StdFlagsKHR - VkVideoEncodeH265QualityLevelPropertiesKHR* = object + VkVideoEncodeH265QualityLevelPropertiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer preferredRateControlFlags*: VkVideoEncodeH265RateControlFlagsKHR @@ -11438,13 +11438,13 @@ type StdVideoEncodeH265ReferenceInfoFlags* {.nodecl.} = object StdVideoEncodeH265ReferenceModificationFlags* {.nodecl.} = object - VkVideoEncodeH265SessionCreateInfoKHR* = object + VkVideoEncodeH265SessionCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer useMaxLevelIdc*: VkBool32 maxLevelIdc*: StdVideoH265LevelIdc - VkVideoEncodeH265SessionParametersAddInfoKHR* = object + VkVideoEncodeH265SessionParametersAddInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer stdVPSCount*: uint32 @@ -11454,7 +11454,7 @@ type stdPPSCount*: uint32 pStdPPSs*: ptr StdVideoH265PictureParameterSet - VkVideoEncodeH265SessionParametersCreateInfoKHR* = object + VkVideoEncodeH265SessionParametersCreateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer maxStdVPSCount*: uint32 @@ -11462,7 +11462,7 @@ type maxStdPPSCount*: uint32 pParametersAddInfo*: ptr VkVideoEncodeH265SessionParametersAddInfoKHR - VkVideoEncodeH265SessionParametersGetInfoKHR* = object + VkVideoEncodeH265SessionParametersGetInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer writeStdVPS*: VkBool32 @@ -11472,27 +11472,27 @@ type stdSPSId*: uint32 stdPPSId*: uint32 - VkVideoEncodeH265SessionParametersFeedbackInfoKHR* = object + VkVideoEncodeH265SessionParametersFeedbackInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer hasStdVPSOverrides*: VkBool32 hasStdSPSOverrides*: VkBool32 hasStdPPSOverrides*: VkBool32 - VkVideoEncodeH265PictureInfoKHR* = object + VkVideoEncodeH265PictureInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer naluSliceSegmentEntryCount*: uint32 pNaluSliceSegmentEntries*: ptr VkVideoEncodeH265NaluSliceSegmentInfoKHR pStdPictureInfo*: ptr StdVideoEncodeH265PictureInfo - VkVideoEncodeH265NaluSliceSegmentInfoKHR* = object + VkVideoEncodeH265NaluSliceSegmentInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer constantQp*: int32 pStdSliceSegmentHeader*: ptr StdVideoEncodeH265SliceSegmentHeader - VkVideoEncodeH265RateControlInfoKHR* = object + VkVideoEncodeH265RateControlInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkVideoEncodeH265RateControlFlagsKHR @@ -11501,17 +11501,17 @@ type consecutiveBFrameCount*: uint32 subLayerCount*: uint32 - VkVideoEncodeH265QpKHR* = object + VkVideoEncodeH265QpKHR* {.byref.} = object qpI*: int32 qpP*: int32 qpB*: int32 - VkVideoEncodeH265FrameSizeKHR* = object + VkVideoEncodeH265FrameSizeKHR* {.byref.} = object frameISize*: uint32 framePSize*: uint32 frameBSize*: uint32 - VkVideoEncodeH265GopRemainingFrameInfoKHR* = object + VkVideoEncodeH265GopRemainingFrameInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer useGopRemainingFrames*: VkBool32 @@ -11519,7 +11519,7 @@ type gopRemainingP*: uint32 gopRemainingB*: uint32 - VkVideoEncodeH265RateControlLayerInfoKHR* = object + VkVideoEncodeH265RateControlLayerInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer useMinQp*: VkBool32 @@ -11529,63 +11529,63 @@ type useMaxFrameSize*: VkBool32 maxFrameSize*: VkVideoEncodeH265FrameSizeKHR - VkVideoEncodeH265ProfileInfoKHR* = object + VkVideoEncodeH265ProfileInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer stdProfileIdc*: StdVideoH265ProfileIdc - VkVideoEncodeH265DpbSlotInfoKHR* = object + VkVideoEncodeH265DpbSlotInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer pStdReferenceInfo*: ptr StdVideoEncodeH265ReferenceInfo - VkPhysicalDeviceInheritedViewportScissorFeaturesNV* = object + VkPhysicalDeviceInheritedViewportScissorFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer inheritedViewportScissor2D*: VkBool32 - VkCommandBufferInheritanceViewportScissorInfoNV* = object + VkCommandBufferInheritanceViewportScissorInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer viewportScissor2D*: VkBool32 viewportDepthCount*: uint32 pViewportDepths*: ptr VkViewport - VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* = object + VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer ycbcr2plane444Formats*: VkBool32 - VkPhysicalDeviceProvokingVertexFeaturesEXT* = object + VkPhysicalDeviceProvokingVertexFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer provokingVertexLast*: VkBool32 transformFeedbackPreservesProvokingVertex*: VkBool32 - VkPhysicalDeviceProvokingVertexPropertiesEXT* = object + VkPhysicalDeviceProvokingVertexPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer provokingVertexModePerPipeline*: VkBool32 transformFeedbackPreservesTriangleFanProvokingVertex*: VkBool32 - VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* = object + VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer provokingVertexMode*: VkProvokingVertexModeEXT - VkCuModuleCreateInfoNVX* = object + VkCuModuleCreateInfoNVX* {.byref.} = object sType*: VkStructureType pNext*: pointer dataSize*: uint pData*: pointer - VkCuFunctionCreateInfoNVX* = object + VkCuFunctionCreateInfoNVX* {.byref.} = object sType*: VkStructureType pNext*: pointer module*: VkCuModuleNVX pName*: cstring - VkCuLaunchInfoNVX* = object + VkCuLaunchInfoNVX* {.byref.} = object sType*: VkStructureType pNext*: pointer function*: VkCuFunctionNVX @@ -11601,7 +11601,7 @@ type extraCount*: uint pExtras*: ptr pointer - VkPhysicalDeviceDescriptorBufferFeaturesEXT* = object + VkPhysicalDeviceDescriptorBufferFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer descriptorBuffer*: VkBool32 @@ -11609,7 +11609,7 @@ type descriptorBufferImageLayoutIgnored*: VkBool32 descriptorBufferPushDescriptors*: VkBool32 - VkPhysicalDeviceDescriptorBufferPropertiesEXT* = object + VkPhysicalDeviceDescriptorBufferPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer combinedImageSamplerDescriptorSingleArray*: VkBool32 @@ -11646,30 +11646,30 @@ type resourceDescriptorBufferAddressSpaceSize*: VkDeviceSize descriptorBufferAddressSpaceSize*: VkDeviceSize - VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT* = object + VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer combinedImageSamplerDensityMapDescriptorSize*: uint - VkDescriptorAddressInfoEXT* = object + VkDescriptorAddressInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer address*: VkDeviceAddress range*: VkDeviceSize format*: VkFormat - VkDescriptorBufferBindingInfoEXT* = object + VkDescriptorBufferBindingInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer address*: VkDeviceAddress usage*: VkBufferUsageFlags - VkDescriptorBufferBindingPushDescriptorBufferHandleEXT* = object + VkDescriptorBufferBindingPushDescriptorBufferHandleEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer buffer*: VkBuffer - VkDescriptorDataEXT* {.union.} = object + VkDescriptorDataEXT* {.union, byref.} = object pSampler*: ptr VkSampler pCombinedImageSampler*: ptr VkDescriptorImageInfo pInputAttachmentImage*: ptr VkDescriptorImageInfo @@ -11681,51 +11681,51 @@ type pStorageBuffer*: ptr VkDescriptorAddressInfoEXT accelerationStructure*: VkDeviceAddress - VkDescriptorGetInfoEXT* = object + VkDescriptorGetInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer `type`*: VkDescriptorType data*: VkDescriptorDataEXT - VkBufferCaptureDescriptorDataInfoEXT* = object + VkBufferCaptureDescriptorDataInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer buffer*: VkBuffer - VkImageCaptureDescriptorDataInfoEXT* = object + VkImageCaptureDescriptorDataInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer image*: VkImage - VkImageViewCaptureDescriptorDataInfoEXT* = object + VkImageViewCaptureDescriptorDataInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer imageView*: VkImageView - VkSamplerCaptureDescriptorDataInfoEXT* = object + VkSamplerCaptureDescriptorDataInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer sampler*: VkSampler - VkAccelerationStructureCaptureDescriptorDataInfoEXT* = object + VkAccelerationStructureCaptureDescriptorDataInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer accelerationStructure*: VkAccelerationStructureKHR accelerationStructureNV*: VkAccelerationStructureNV - VkOpaqueCaptureDescriptorDataCreateInfoEXT* = object + VkOpaqueCaptureDescriptorDataCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer opaqueCaptureDescriptorData*: pointer - VkPhysicalDeviceShaderIntegerDotProductFeatures* = object + VkPhysicalDeviceShaderIntegerDotProductFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderIntegerDotProduct*: VkBool32 VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR* = VkPhysicalDeviceShaderIntegerDotProductFeatures - VkPhysicalDeviceShaderIntegerDotProductProperties* = object + VkPhysicalDeviceShaderIntegerDotProductProperties* {.byref.} = object sType*: VkStructureType pNext*: pointer integerDotProduct8BitUnsignedAccelerated*: VkBool32 @@ -11761,7 +11761,7 @@ type VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR* = VkPhysicalDeviceShaderIntegerDotProductProperties - VkPhysicalDeviceDrmPropertiesEXT* = object + VkPhysicalDeviceDrmPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer hasPrimary*: VkBool32 @@ -11771,34 +11771,34 @@ type renderMajor*: int64 renderMinor*: int64 - VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR* = object + VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer fragmentShaderBarycentric*: VkBool32 - VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR* = object + VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer triStripVertexOrderIndependentOfProvokingVertex*: VkBool32 - VkPhysicalDeviceRayTracingMotionBlurFeaturesNV* = object + VkPhysicalDeviceRayTracingMotionBlurFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer rayTracingMotionBlur*: VkBool32 rayTracingMotionBlurPipelineTraceRaysIndirect*: VkBool32 - VkAccelerationStructureGeometryMotionTrianglesDataNV* = object + VkAccelerationStructureGeometryMotionTrianglesDataNV* {.byref.} = object sType*: VkStructureType pNext*: pointer vertexData*: VkDeviceOrHostAddressConstKHR - VkAccelerationStructureMotionInfoNV* = object + VkAccelerationStructureMotionInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer maxInstances*: uint32 flags*: VkAccelerationStructureMotionInfoFlagsNV - VkSRTDataNV* = object + VkSRTDataNV* {.byref.} = object sx*: float32 a*: float32 b*: float32 @@ -11816,7 +11816,7 @@ type ty*: float32 tz*: float32 - VkAccelerationStructureSRTMotionInstanceNV* = object + VkAccelerationStructureSRTMotionInstanceNV* {.byref.} = object transformT0*: VkSRTDataNV transformT1*: VkSRTDataNV instanceCustomIndex*: uint32 @@ -11825,7 +11825,7 @@ type flags*: VkGeometryInstanceFlagsKHR accelerationStructureReference*: uint64 - VkAccelerationStructureMatrixMotionInstanceNV* = object + VkAccelerationStructureMatrixMotionInstanceNV* {.byref.} = object transformT0*: VkTransformMatrixKHR transformT1*: VkTransformMatrixKHR instanceCustomIndex*: uint32 @@ -11834,47 +11834,47 @@ type flags*: VkGeometryInstanceFlagsKHR accelerationStructureReference*: uint64 - VkAccelerationStructureMotionInstanceDataNV* {.union.} = object + VkAccelerationStructureMotionInstanceDataNV* {.union, byref.} = object staticInstance*: VkAccelerationStructureInstanceKHR matrixMotionInstance*: VkAccelerationStructureMatrixMotionInstanceNV srtMotionInstance*: VkAccelerationStructureSRTMotionInstanceNV - VkAccelerationStructureMotionInstanceNV* = object + VkAccelerationStructureMotionInstanceNV* {.byref.} = object `type`*: VkAccelerationStructureMotionInstanceTypeNV flags*: VkAccelerationStructureMotionInstanceFlagsNV data*: VkAccelerationStructureMotionInstanceDataNV VkRemoteAddressNV* = distinct pointer - VkMemoryGetRemoteAddressInfoNV* = object + VkMemoryGetRemoteAddressInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer memory*: VkDeviceMemory handleType*: VkExternalMemoryHandleTypeFlagBits - VkImportMemoryBufferCollectionFUCHSIA* = object + VkImportMemoryBufferCollectionFUCHSIA* {.byref.} = object sType*: VkStructureType pNext*: pointer collection*: VkBufferCollectionFUCHSIA index*: uint32 - VkBufferCollectionImageCreateInfoFUCHSIA* = object + VkBufferCollectionImageCreateInfoFUCHSIA* {.byref.} = object sType*: VkStructureType pNext*: pointer collection*: VkBufferCollectionFUCHSIA index*: uint32 - VkBufferCollectionBufferCreateInfoFUCHSIA* = object + VkBufferCollectionBufferCreateInfoFUCHSIA* {.byref.} = object sType*: VkStructureType pNext*: pointer collection*: VkBufferCollectionFUCHSIA index*: uint32 - VkBufferCollectionCreateInfoFUCHSIA* = object + VkBufferCollectionCreateInfoFUCHSIA* {.byref.} = object sType*: VkStructureType pNext*: pointer collectionToken*: zx_handle_t - VkBufferCollectionPropertiesFUCHSIA* = object + VkBufferCollectionPropertiesFUCHSIA* {.byref.} = object sType*: VkStructureType pNext*: pointer memoryTypeBits*: uint32 @@ -11889,19 +11889,19 @@ type suggestedXChromaOffset*: VkChromaLocation suggestedYChromaOffset*: VkChromaLocation - VkBufferConstraintsInfoFUCHSIA* = object + VkBufferConstraintsInfoFUCHSIA* {.byref.} = object sType*: VkStructureType pNext*: pointer createInfo*: VkBufferCreateInfo requiredFormatFeatures*: VkFormatFeatureFlags bufferCollectionConstraints*: VkBufferCollectionConstraintsInfoFUCHSIA - VkSysmemColorSpaceFUCHSIA* = object + VkSysmemColorSpaceFUCHSIA* {.byref.} = object sType*: VkStructureType pNext*: pointer colorSpace*: uint32 - VkImageFormatConstraintsInfoFUCHSIA* = object + VkImageFormatConstraintsInfoFUCHSIA* {.byref.} = object sType*: VkStructureType pNext*: pointer imageCreateInfo*: VkImageCreateInfo @@ -11911,7 +11911,7 @@ type colorSpaceCount*: uint32 pColorSpaces*: ptr VkSysmemColorSpaceFUCHSIA - VkImageConstraintsInfoFUCHSIA* = object + VkImageConstraintsInfoFUCHSIA* {.byref.} = object sType*: VkStructureType pNext*: pointer formatConstraintsCount*: uint32 @@ -11919,7 +11919,7 @@ type bufferCollectionConstraints*: VkBufferCollectionConstraintsInfoFUCHSIA flags*: VkImageConstraintsInfoFlagsFUCHSIA - VkBufferCollectionConstraintsInfoFUCHSIA* = object + VkBufferCollectionConstraintsInfoFUCHSIA* {.byref.} = object sType*: VkStructureType pNext*: pointer minBufferCount*: uint32 @@ -11930,19 +11930,19 @@ type VkCudaModuleNV* = distinct VkNonDispatchableHandle VkCudaFunctionNV* = distinct VkNonDispatchableHandle - VkCudaModuleCreateInfoNV* = object + VkCudaModuleCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer dataSize*: uint pData*: pointer - VkCudaFunctionCreateInfoNV* = object + VkCudaFunctionCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer module*: VkCudaModuleNV pName*: cstring - VkCudaLaunchInfoNV* = object + VkCudaLaunchInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer function*: VkCudaFunctionNV @@ -11958,12 +11958,12 @@ type extraCount*: uint pExtras*: ptr pointer - VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* = object + VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer formatRgba10x6WithoutYCbCrSampler*: VkBool32 - VkFormatProperties3* = object + VkFormatProperties3* {.byref.} = object sType*: VkStructureType pNext*: pointer linearTilingFeatures*: VkFormatFeatureFlags2 @@ -11972,18 +11972,18 @@ type VkFormatProperties3KHR* = VkFormatProperties3 - VkDrmFormatModifierPropertiesList2EXT* = object + VkDrmFormatModifierPropertiesList2EXT* {.byref.} = object sType*: VkStructureType pNext*: pointer drmFormatModifierCount*: uint32 pDrmFormatModifierProperties*: ptr VkDrmFormatModifierProperties2EXT - VkDrmFormatModifierProperties2EXT* = object + VkDrmFormatModifierProperties2EXT* {.byref.} = object drmFormatModifier*: uint64 drmFormatModifierPlaneCount*: uint32 drmFormatModifierTilingFeatures*: VkFormatFeatureFlags2 - VkAndroidHardwareBufferFormatProperties2ANDROID* = object + VkAndroidHardwareBufferFormatProperties2ANDROID* {.byref.} = object sType*: VkStructureType pNext*: pointer format*: VkFormat @@ -11995,7 +11995,7 @@ type suggestedXChromaOffset*: VkChromaLocation suggestedYChromaOffset*: VkChromaLocation - VkPipelineRenderingCreateInfo* = object + VkPipelineRenderingCreateInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer viewMask*: uint32 @@ -12006,7 +12006,7 @@ type VkPipelineRenderingCreateInfoKHR* = VkPipelineRenderingCreateInfo - VkRenderingInfo* = object + VkRenderingInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkRenderingFlags @@ -12020,7 +12020,7 @@ type VkRenderingInfoKHR* = VkRenderingInfo - VkRenderingAttachmentInfo* = object + VkRenderingAttachmentInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer imageView*: VkImageView @@ -12034,27 +12034,27 @@ type VkRenderingAttachmentInfoKHR* = VkRenderingAttachmentInfo - VkRenderingFragmentShadingRateAttachmentInfoKHR* = object + VkRenderingFragmentShadingRateAttachmentInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer imageView*: VkImageView imageLayout*: VkImageLayout shadingRateAttachmentTexelSize*: VkExtent2D - VkRenderingFragmentDensityMapAttachmentInfoEXT* = object + VkRenderingFragmentDensityMapAttachmentInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer imageView*: VkImageView imageLayout*: VkImageLayout - VkPhysicalDeviceDynamicRenderingFeatures* = object + VkPhysicalDeviceDynamicRenderingFeatures* {.byref.} = object sType*: VkStructureType pNext*: pointer dynamicRendering*: VkBool32 VkPhysicalDeviceDynamicRenderingFeaturesKHR* = VkPhysicalDeviceDynamicRenderingFeatures - VkCommandBufferInheritanceRenderingInfo* = object + VkCommandBufferInheritanceRenderingInfo* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkRenderingFlags @@ -12067,7 +12067,7 @@ type VkCommandBufferInheritanceRenderingInfoKHR* = VkCommandBufferInheritanceRenderingInfo - VkAttachmentSampleCountInfoAMD* = object + VkAttachmentSampleCountInfoAMD* {.byref.} = object sType*: VkStructureType pNext*: pointer colorAttachmentCount*: uint32 @@ -12076,23 +12076,23 @@ type VkAttachmentSampleCountInfoNV* = VkAttachmentSampleCountInfoAMD - VkMultiviewPerViewAttributesInfoNVX* = object + VkMultiviewPerViewAttributesInfoNVX* {.byref.} = object sType*: VkStructureType pNext*: pointer perViewAttributes*: VkBool32 perViewAttributesPositionXOnly*: VkBool32 - VkPhysicalDeviceImageViewMinLodFeaturesEXT* = object + VkPhysicalDeviceImageViewMinLodFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer minLod*: VkBool32 - VkImageViewMinLodCreateInfoEXT* = object + VkImageViewMinLodCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer minLod*: float32 - VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT* = object + VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer rasterizationOrderColorAttachmentAccess*: VkBool32 @@ -12101,144 +12101,144 @@ type VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM* = VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT - VkPhysicalDeviceLinearColorAttachmentFeaturesNV* = object + VkPhysicalDeviceLinearColorAttachmentFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer linearColorAttachment*: VkBool32 - VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT* = object + VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer graphicsPipelineLibrary*: VkBool32 - VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT* = object + VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer graphicsPipelineLibraryFastLinking*: VkBool32 graphicsPipelineLibraryIndependentInterpolationDecoration*: VkBool32 - VkGraphicsPipelineLibraryCreateInfoEXT* = object + VkGraphicsPipelineLibraryCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkGraphicsPipelineLibraryFlagsEXT - VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE* = object + VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE* {.byref.} = object sType*: VkStructureType pNext*: pointer descriptorSetHostMapping*: VkBool32 - VkDescriptorSetBindingReferenceVALVE* = object + VkDescriptorSetBindingReferenceVALVE* {.byref.} = object sType*: VkStructureType pNext*: pointer descriptorSetLayout*: VkDescriptorSetLayout binding*: uint32 - VkDescriptorSetLayoutHostMappingInfoVALVE* = object + VkDescriptorSetLayoutHostMappingInfoVALVE* {.byref.} = object sType*: VkStructureType pNext*: pointer descriptorOffset*: uint descriptorSize*: uint32 - VkPhysicalDeviceNestedCommandBufferFeaturesEXT* = object + VkPhysicalDeviceNestedCommandBufferFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer nestedCommandBuffer*: VkBool32 nestedCommandBufferRendering*: VkBool32 nestedCommandBufferSimultaneousUse*: VkBool32 - VkPhysicalDeviceNestedCommandBufferPropertiesEXT* = object + VkPhysicalDeviceNestedCommandBufferPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer maxCommandBufferNestingLevel*: uint32 - VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT* = object + VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderModuleIdentifier*: VkBool32 - VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT* = object + VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderModuleIdentifierAlgorithmUUID*: array[VK_UUID_SIZE, uint8] - VkPipelineShaderStageModuleIdentifierCreateInfoEXT* = object + VkPipelineShaderStageModuleIdentifierCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer identifierSize*: uint32 pIdentifier*: ptr uint8 - VkShaderModuleIdentifierEXT* = object + VkShaderModuleIdentifierEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer identifierSize*: uint32 identifier*: array[VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT, uint8] - VkImageCompressionControlEXT* = object + VkImageCompressionControlEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkImageCompressionFlagsEXT compressionControlPlaneCount*: uint32 pFixedRateFlags*: ptr VkImageCompressionFixedRateFlagsEXT - VkPhysicalDeviceImageCompressionControlFeaturesEXT* = object + VkPhysicalDeviceImageCompressionControlFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer imageCompressionControl*: VkBool32 - VkImageCompressionPropertiesEXT* = object + VkImageCompressionPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer imageCompressionFlags*: VkImageCompressionFlagsEXT imageCompressionFixedRateFlags*: VkImageCompressionFixedRateFlagsEXT - VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT* = object + VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer imageCompressionControlSwapchain*: VkBool32 - VkImageSubresource2KHR* = object + VkImageSubresource2KHR* {.byref.} = object sType*: VkStructureType pNext*: pointer imageSubresource*: VkImageSubresource VkImageSubresource2EXT* = VkImageSubresource2KHR - VkSubresourceLayout2KHR* = object + VkSubresourceLayout2KHR* {.byref.} = object sType*: VkStructureType pNext*: pointer subresourceLayout*: VkSubresourceLayout VkSubresourceLayout2EXT* = VkSubresourceLayout2KHR - VkRenderPassCreationControlEXT* = object + VkRenderPassCreationControlEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer disallowMerging*: VkBool32 - VkRenderPassCreationFeedbackInfoEXT* = object + VkRenderPassCreationFeedbackInfoEXT* {.byref.} = object postMergeSubpassCount*: uint32 - VkRenderPassCreationFeedbackCreateInfoEXT* = object + VkRenderPassCreationFeedbackCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer pRenderPassFeedback*: ptr VkRenderPassCreationFeedbackInfoEXT - VkRenderPassSubpassFeedbackInfoEXT* = object + VkRenderPassSubpassFeedbackInfoEXT* {.byref.} = object subpassMergeStatus*: VkSubpassMergeStatusEXT description*: array[VK_MAX_DESCRIPTION_SIZE, char] postMergeIndex*: uint32 - VkRenderPassSubpassFeedbackCreateInfoEXT* = object + VkRenderPassSubpassFeedbackCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer pSubpassFeedback*: ptr VkRenderPassSubpassFeedbackInfoEXT - VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT* = object + VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer subpassMergeFeedback*: VkBool32 - VkMicromapBuildInfoEXT* = object + VkMicromapBuildInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer `type`*: VkMicromapTypeEXT @@ -12253,7 +12253,7 @@ type triangleArray*: VkDeviceOrHostAddressConstKHR triangleArrayStride*: VkDeviceSize - VkMicromapCreateInfoEXT* = object + VkMicromapCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer createFlags*: VkMicromapCreateFlagsEXT @@ -12263,63 +12263,63 @@ type `type`*: VkMicromapTypeEXT deviceAddress*: VkDeviceAddress - VkMicromapVersionInfoEXT* = object + VkMicromapVersionInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer pVersionData*: ptr uint8 - VkCopyMicromapInfoEXT* = object + VkCopyMicromapInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer src*: VkMicromapEXT dst*: VkMicromapEXT mode*: VkCopyMicromapModeEXT - VkCopyMicromapToMemoryInfoEXT* = object + VkCopyMicromapToMemoryInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer src*: VkMicromapEXT dst*: VkDeviceOrHostAddressKHR mode*: VkCopyMicromapModeEXT - VkCopyMemoryToMicromapInfoEXT* = object + VkCopyMemoryToMicromapInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer src*: VkDeviceOrHostAddressConstKHR dst*: VkMicromapEXT mode*: VkCopyMicromapModeEXT - VkMicromapBuildSizesInfoEXT* = object + VkMicromapBuildSizesInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer micromapSize*: VkDeviceSize buildScratchSize*: VkDeviceSize discardable*: VkBool32 - VkMicromapUsageEXT* = object + VkMicromapUsageEXT* {.byref.} = object count*: uint32 subdivisionLevel*: uint32 format*: uint32 - VkMicromapTriangleEXT* = object + VkMicromapTriangleEXT* {.byref.} = object dataOffset*: uint32 subdivisionLevel*: uint16 format*: uint16 - VkPhysicalDeviceOpacityMicromapFeaturesEXT* = object + VkPhysicalDeviceOpacityMicromapFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer micromap*: VkBool32 micromapCaptureReplay*: VkBool32 micromapHostCommands*: VkBool32 - VkPhysicalDeviceOpacityMicromapPropertiesEXT* = object + VkPhysicalDeviceOpacityMicromapPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer maxOpacity2StateSubdivisionLevel*: uint32 maxOpacity4StateSubdivisionLevel*: uint32 - VkAccelerationStructureTrianglesOpacityMicromapEXT* = object + VkAccelerationStructureTrianglesOpacityMicromapEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer indexType*: VkIndexType @@ -12331,17 +12331,17 @@ type ppUsageCounts*: ptr ptr VkMicromapUsageEXT micromap*: VkMicromapEXT - VkPhysicalDeviceDisplacementMicromapFeaturesNV* = object + VkPhysicalDeviceDisplacementMicromapFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer displacementMicromap*: VkBool32 - VkPhysicalDeviceDisplacementMicromapPropertiesNV* = object + VkPhysicalDeviceDisplacementMicromapPropertiesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer maxDisplacementMicromapSubdivisionLevel*: uint32 - VkAccelerationStructureTrianglesDisplacementMicromapNV* = object + VkAccelerationStructureTrianglesDisplacementMicromapNV* {.byref.} = object sType*: VkStructureType pNext*: pointer displacementBiasAndScaleFormat*: VkFormat @@ -12361,58 +12361,58 @@ type ppUsageCounts*: ptr ptr VkMicromapUsageEXT micromap*: VkMicromapEXT - VkPipelinePropertiesIdentifierEXT* = object + VkPipelinePropertiesIdentifierEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer pipelineIdentifier*: array[VK_UUID_SIZE, uint8] - VkPhysicalDevicePipelinePropertiesFeaturesEXT* = object + VkPhysicalDevicePipelinePropertiesFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer pipelinePropertiesIdentifier*: VkBool32 - VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD* = object + VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderEarlyAndLateFragmentTests*: VkBool32 - VkExternalMemoryAcquireUnmodifiedEXT* = object + VkExternalMemoryAcquireUnmodifiedEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer acquireUnmodifiedMemory*: VkBool32 - VkExportMetalObjectCreateInfoEXT* = object + VkExportMetalObjectCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer exportObjectType*: VkExportMetalObjectTypeFlagBitsEXT - VkExportMetalObjectsInfoEXT* = object + VkExportMetalObjectsInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer - VkExportMetalDeviceInfoEXT* = object + VkExportMetalDeviceInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer mtlDevice*: MTLDevice_id - VkExportMetalCommandQueueInfoEXT* = object + VkExportMetalCommandQueueInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer queue*: VkQueue mtlCommandQueue*: MTLCommandQueue_id - VkExportMetalBufferInfoEXT* = object + VkExportMetalBufferInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer memory*: VkDeviceMemory mtlBuffer*: MTLBuffer_id - VkImportMetalBufferInfoEXT* = object + VkImportMetalBufferInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer mtlBuffer*: MTLBuffer_id - VkExportMetalTextureInfoEXT* = object + VkExportMetalTextureInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer image*: VkImage @@ -12421,46 +12421,46 @@ type plane*: VkImageAspectFlagBits mtlTexture*: MTLTexture_id - VkImportMetalTextureInfoEXT* = object + VkImportMetalTextureInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer plane*: VkImageAspectFlagBits mtlTexture*: MTLTexture_id - VkExportMetalIOSurfaceInfoEXT* = object + VkExportMetalIOSurfaceInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer image*: VkImage ioSurface*: IOSurfaceRef - VkImportMetalIOSurfaceInfoEXT* = object + VkImportMetalIOSurfaceInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer ioSurface*: IOSurfaceRef - VkExportMetalSharedEventInfoEXT* = object + VkExportMetalSharedEventInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer semaphore*: VkSemaphore event*: VkEvent mtlSharedEvent*: MTLSharedEvent_id - VkImportMetalSharedEventInfoEXT* = object + VkImportMetalSharedEventInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer mtlSharedEvent*: MTLSharedEvent_id - VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT* = object + VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer nonSeamlessCubeMap*: VkBool32 - VkPhysicalDevicePipelineRobustnessFeaturesEXT* = object + VkPhysicalDevicePipelineRobustnessFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer pipelineRobustness*: VkBool32 - VkPipelineRobustnessCreateInfoEXT* = object + VkPipelineRobustnessCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer storageBuffers*: VkPipelineRobustnessBufferBehaviorEXT @@ -12468,7 +12468,7 @@ type vertexInputs*: VkPipelineRobustnessBufferBehaviorEXT images*: VkPipelineRobustnessImageBehaviorEXT - VkPhysicalDevicePipelineRobustnessPropertiesEXT* = object + VkPhysicalDevicePipelineRobustnessPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer defaultRobustnessStorageBuffers*: VkPipelineRobustnessBufferBehaviorEXT @@ -12476,21 +12476,21 @@ type defaultRobustnessVertexInputs*: VkPipelineRobustnessBufferBehaviorEXT defaultRobustnessImages*: VkPipelineRobustnessImageBehaviorEXT - VkImageViewSampleWeightCreateInfoQCOM* = object + VkImageViewSampleWeightCreateInfoQCOM* {.byref.} = object sType*: VkStructureType pNext*: pointer filterCenter*: VkOffset2D filterSize*: VkExtent2D numPhases*: uint32 - VkPhysicalDeviceImageProcessingFeaturesQCOM* = object + VkPhysicalDeviceImageProcessingFeaturesQCOM* {.byref.} = object sType*: VkStructureType pNext*: pointer textureSampleWeighted*: VkBool32 textureBoxFilter*: VkBool32 textureBlockMatch*: VkBool32 - VkPhysicalDeviceImageProcessingPropertiesQCOM* = object + VkPhysicalDeviceImageProcessingPropertiesQCOM* {.byref.} = object sType*: VkStructureType pNext*: pointer maxWeightFilterPhases*: uint32 @@ -12498,45 +12498,45 @@ type maxBlockMatchRegion*: VkExtent2D maxBoxFilterBlockSize*: VkExtent2D - VkPhysicalDeviceTilePropertiesFeaturesQCOM* = object + VkPhysicalDeviceTilePropertiesFeaturesQCOM* {.byref.} = object sType*: VkStructureType pNext*: pointer tileProperties*: VkBool32 - VkTilePropertiesQCOM* = object + VkTilePropertiesQCOM* {.byref.} = object sType*: VkStructureType pNext*: pointer tileSize*: VkExtent3D apronSize*: VkExtent2D origin*: VkOffset2D - VkPhysicalDeviceAmigoProfilingFeaturesSEC* = object + VkPhysicalDeviceAmigoProfilingFeaturesSEC* {.byref.} = object sType*: VkStructureType pNext*: pointer amigoProfiling*: VkBool32 - VkAmigoProfilingSubmitInfoSEC* = object + VkAmigoProfilingSubmitInfoSEC* {.byref.} = object sType*: VkStructureType pNext*: pointer firstDrawTimestamp*: uint64 swapBufferTimestamp*: uint64 - VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT* = object + VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer attachmentFeedbackLoopLayout*: VkBool32 - VkPhysicalDeviceDepthClampZeroOneFeaturesEXT* = object + VkPhysicalDeviceDepthClampZeroOneFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer depthClampZeroOne*: VkBool32 - VkPhysicalDeviceAddressBindingReportFeaturesEXT* = object + VkPhysicalDeviceAddressBindingReportFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer reportAddressBinding*: VkBool32 - VkDeviceAddressBindingCallbackDataEXT* = object + VkDeviceAddressBindingCallbackDataEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkDeviceAddressBindingFlagsEXT @@ -12544,12 +12544,12 @@ type size*: VkDeviceSize bindingType*: VkDeviceAddressBindingTypeEXT - VkPhysicalDeviceOpticalFlowFeaturesNV* = object + VkPhysicalDeviceOpticalFlowFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer opticalFlow*: VkBool32 - VkPhysicalDeviceOpticalFlowPropertiesNV* = object + VkPhysicalDeviceOpticalFlowPropertiesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer supportedOutputGridSizes*: VkOpticalFlowGridSizeFlagsNV @@ -12564,17 +12564,17 @@ type maxHeight*: uint32 maxNumRegionsOfInterest*: uint32 - VkOpticalFlowImageFormatInfoNV* = object + VkOpticalFlowImageFormatInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer usage*: VkOpticalFlowUsageFlagsNV - VkOpticalFlowImageFormatPropertiesNV* = object + VkOpticalFlowImageFormatPropertiesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer format*: VkFormat - VkOpticalFlowSessionCreateInfoNV* = object + VkOpticalFlowSessionCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer width*: uint32 @@ -12587,44 +12587,44 @@ type performanceLevel*: VkOpticalFlowPerformanceLevelNV flags*: VkOpticalFlowSessionCreateFlagsNV - VkOpticalFlowSessionCreatePrivateDataInfoNV* = object + VkOpticalFlowSessionCreatePrivateDataInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer id*: uint32 size*: uint32 pPrivateData*: pointer - VkOpticalFlowExecuteInfoNV* = object + VkOpticalFlowExecuteInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkOpticalFlowExecuteFlagsNV regionCount*: uint32 pRegions*: ptr VkRect2D - VkPhysicalDeviceFaultFeaturesEXT* = object + VkPhysicalDeviceFaultFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer deviceFault*: VkBool32 deviceFaultVendorBinary*: VkBool32 - VkDeviceFaultAddressInfoEXT* = object + VkDeviceFaultAddressInfoEXT* {.byref.} = object addressType*: VkDeviceFaultAddressTypeEXT reportedAddress*: VkDeviceAddress addressPrecision*: VkDeviceSize - VkDeviceFaultVendorInfoEXT* = object + VkDeviceFaultVendorInfoEXT* {.byref.} = object description*: array[VK_MAX_DESCRIPTION_SIZE, char] vendorFaultCode*: uint64 vendorFaultData*: uint64 - VkDeviceFaultCountsEXT* = object + VkDeviceFaultCountsEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer addressInfoCount*: uint32 vendorInfoCount*: uint32 vendorBinarySize*: VkDeviceSize - VkDeviceFaultInfoEXT* = object + VkDeviceFaultInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer description*: array[VK_MAX_DESCRIPTION_SIZE, char] @@ -12632,7 +12632,7 @@ type pVendorInfos*: ptr VkDeviceFaultVendorInfoEXT pVendorBinaryData*: pointer - VkDeviceFaultVendorBinaryHeaderVersionOneEXT* = object + VkDeviceFaultVendorBinaryHeaderVersionOneEXT* {.byref.} = object headerSize*: uint32 headerVersion*: VkDeviceFaultVendorBinaryHeaderVersionEXT vendorID*: uint32 @@ -12645,44 +12645,44 @@ type engineVersion*: uint32 apiVersion*: uint32 - VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT* = object + VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer pipelineLibraryGroupHandles*: VkBool32 - VkDepthBiasInfoEXT* = object + VkDepthBiasInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer depthBiasConstantFactor*: float32 depthBiasClamp*: float32 depthBiasSlopeFactor*: float32 - VkDepthBiasRepresentationInfoEXT* = object + VkDepthBiasRepresentationInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer depthBiasRepresentation*: VkDepthBiasRepresentationEXT depthBiasExact*: VkBool32 - VkDecompressMemoryRegionNV* = object + VkDecompressMemoryRegionNV* {.byref.} = object srcAddress*: VkDeviceAddress dstAddress*: VkDeviceAddress compressedSize*: VkDeviceSize decompressedSize*: VkDeviceSize decompressionMethod*: VkMemoryDecompressionMethodFlagsNV - VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM* = object + VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderCoreMask*: uint64 shaderCoreCount*: uint32 shaderWarpsPerCore*: uint32 - VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM* = object + VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderCoreBuiltins*: VkBool32 - VkFrameBoundaryEXT* = object + VkFrameBoundaryEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkFrameBoundaryFlagsEXT @@ -12695,22 +12695,22 @@ type tagSize*: uint pTag*: pointer - VkPhysicalDeviceFrameBoundaryFeaturesEXT* = object + VkPhysicalDeviceFrameBoundaryFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer frameBoundary*: VkBool32 - VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT* = object + VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer dynamicRenderingUnusedAttachments*: VkBool32 - VkSurfacePresentModeEXT* = object + VkSurfacePresentModeEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer presentMode*: VkPresentModeKHR - VkSurfacePresentScalingCapabilitiesEXT* = object + VkSurfacePresentScalingCapabilitiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer supportedPresentScaling*: VkPresentScalingFlagsEXT @@ -12719,50 +12719,50 @@ type minScaledImageExtent*: VkExtent2D maxScaledImageExtent*: VkExtent2D - VkSurfacePresentModeCompatibilityEXT* = object + VkSurfacePresentModeCompatibilityEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer presentModeCount*: uint32 pPresentModes*: ptr VkPresentModeKHR - VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT* = object + VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer swapchainMaintenance1*: VkBool32 - VkSwapchainPresentFenceInfoEXT* = object + VkSwapchainPresentFenceInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer swapchainCount*: uint32 pFences*: ptr VkFence - VkSwapchainPresentModesCreateInfoEXT* = object + VkSwapchainPresentModesCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer presentModeCount*: uint32 pPresentModes*: ptr VkPresentModeKHR - VkSwapchainPresentModeInfoEXT* = object + VkSwapchainPresentModeInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer swapchainCount*: uint32 pPresentModes*: ptr VkPresentModeKHR - VkSwapchainPresentScalingCreateInfoEXT* = object + VkSwapchainPresentScalingCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer scalingBehavior*: VkPresentScalingFlagsEXT presentGravityX*: VkPresentGravityFlagsEXT presentGravityY*: VkPresentGravityFlagsEXT - VkReleaseSwapchainImagesInfoEXT* = object + VkReleaseSwapchainImagesInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer swapchain*: VkSwapchainKHR imageIndexCount*: uint32 pImageIndices*: ptr uint32 - VkPhysicalDeviceDepthBiasControlFeaturesEXT* = object + VkPhysicalDeviceDepthBiasControlFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer depthBiasControl*: VkBool32 @@ -12770,81 +12770,81 @@ type floatRepresentation*: VkBool32 depthBiasExact*: VkBool32 - VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV* = object + VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer rayTracingInvocationReorder*: VkBool32 - VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV* = object + VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer rayTracingInvocationReorderReorderingHint*: VkRayTracingInvocationReorderModeNV - VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV* = object + VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer extendedSparseAddressSpace*: VkBool32 - VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV* = object + VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer extendedSparseAddressSpaceSize*: VkDeviceSize extendedSparseImageUsageFlags*: VkImageUsageFlags extendedSparseBufferUsageFlags*: VkBufferUsageFlags - VkDirectDriverLoadingInfoLUNARG* = object + VkDirectDriverLoadingInfoLUNARG* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkDirectDriverLoadingFlagsLUNARG pfnGetInstanceProcAddr*: PFN_vkGetInstanceProcAddrLUNARG - VkDirectDriverLoadingListLUNARG* = object + VkDirectDriverLoadingListLUNARG* {.byref.} = object sType*: VkStructureType pNext*: pointer mode*: VkDirectDriverLoadingModeLUNARG driverCount*: uint32 pDrivers*: ptr VkDirectDriverLoadingInfoLUNARG - VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM* = object + VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM* {.byref.} = object sType*: VkStructureType pNext*: pointer multiviewPerViewViewports*: VkBool32 - VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR* = object + VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer rayTracingPositionFetch*: VkBool32 - VkDeviceImageSubresourceInfoKHR* = object + VkDeviceImageSubresourceInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer pCreateInfo*: ptr VkImageCreateInfo pSubresource*: ptr VkImageSubresource2KHR - VkPhysicalDeviceShaderCorePropertiesARM* = object + VkPhysicalDeviceShaderCorePropertiesARM* {.byref.} = object sType*: VkStructureType pNext*: pointer pixelRate*: uint32 texelRate*: uint32 fmaRate*: uint32 - VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM* = object + VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM* {.byref.} = object sType*: VkStructureType pNext*: pointer multiviewPerViewRenderAreas*: VkBool32 - VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM* = object + VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM* {.byref.} = object sType*: VkStructureType pNext*: pointer perViewRenderAreaCount*: uint32 pPerViewRenderAreas*: ptr VkRect2D - VkQueryLowLatencySupportNV* = object + VkQueryLowLatencySupportNV* {.byref.} = object sType*: VkStructureType pNext*: pointer pQueriedLowLatencyData*: pointer - VkMemoryMapInfoKHR* = object + VkMemoryMapInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkMemoryMapFlags @@ -12852,24 +12852,24 @@ type offset*: VkDeviceSize size*: VkDeviceSize - VkMemoryUnmapInfoKHR* = object + VkMemoryUnmapInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkMemoryUnmapFlagsKHR memory*: VkDeviceMemory - VkPhysicalDeviceShaderObjectFeaturesEXT* = object + VkPhysicalDeviceShaderObjectFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderObject*: VkBool32 - VkPhysicalDeviceShaderObjectPropertiesEXT* = object + VkPhysicalDeviceShaderObjectPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderBinaryUUID*: array[VK_UUID_SIZE, uint8] shaderBinaryVersion*: uint32 - VkShaderCreateInfoEXT* = object + VkShaderCreateInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkShaderCreateFlagsEXT @@ -12885,32 +12885,32 @@ type pPushConstantRanges*: ptr VkPushConstantRange pSpecializationInfo*: ptr VkSpecializationInfo - VkPhysicalDeviceShaderTileImageFeaturesEXT* = object + VkPhysicalDeviceShaderTileImageFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderTileImageColorReadAccess*: VkBool32 shaderTileImageDepthReadAccess*: VkBool32 shaderTileImageStencilReadAccess*: VkBool32 - VkPhysicalDeviceShaderTileImagePropertiesEXT* = object + VkPhysicalDeviceShaderTileImagePropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderTileImageCoherentReadAccelerated*: VkBool32 shaderTileImageReadSampleFromPixelRateInvocation*: VkBool32 shaderTileImageReadFromHelperInvocation*: VkBool32 - VkImportScreenBufferInfoQNX* = object + VkImportScreenBufferInfoQNX* {.byref.} = object sType*: VkStructureType pNext*: pointer buffer*: ptr screen_buffer - VkScreenBufferPropertiesQNX* = object + VkScreenBufferPropertiesQNX* {.byref.} = object sType*: VkStructureType pNext*: pointer allocationSize*: VkDeviceSize memoryTypeBits*: uint32 - VkScreenBufferFormatPropertiesQNX* = object + VkScreenBufferFormatPropertiesQNX* {.byref.} = object sType*: VkStructureType pNext*: pointer format*: VkFormat @@ -12923,23 +12923,23 @@ type suggestedXChromaOffset*: VkChromaLocation suggestedYChromaOffset*: VkChromaLocation - VkExternalFormatQNX* = object + VkExternalFormatQNX* {.byref.} = object sType*: VkStructureType pNext*: pointer externalFormat*: uint64 - VkPhysicalDeviceExternalMemoryScreenBufferFeaturesQNX* = object + VkPhysicalDeviceExternalMemoryScreenBufferFeaturesQNX* {.byref.} = object sType*: VkStructureType pNext*: pointer screenBufferImport*: VkBool32 - VkPhysicalDeviceCooperativeMatrixFeaturesKHR* = object + VkPhysicalDeviceCooperativeMatrixFeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer cooperativeMatrix*: VkBool32 cooperativeMatrixRobustBufferAccess*: VkBool32 - VkCooperativeMatrixPropertiesKHR* = object + VkCooperativeMatrixPropertiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer MSize*: uint32 @@ -12952,12 +12952,12 @@ type saturatingAccumulation*: VkBool32 scope*: VkScopeKHR - VkPhysicalDeviceCooperativeMatrixPropertiesKHR* = object + VkPhysicalDeviceCooperativeMatrixPropertiesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer cooperativeMatrixSupportedStages*: VkShaderStageFlags - VkPhysicalDeviceShaderEnqueuePropertiesAMDX* = object + VkPhysicalDeviceShaderEnqueuePropertiesAMDX* {.byref.} = object sType*: VkStructureType pNext*: pointer maxExecutionGraphDepth*: uint32 @@ -12966,12 +12966,12 @@ type maxExecutionGraphShaderPayloadCount*: uint32 executionGraphDispatchAddressAlignment*: uint32 - VkPhysicalDeviceShaderEnqueueFeaturesAMDX* = object + VkPhysicalDeviceShaderEnqueueFeaturesAMDX* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderEnqueue*: VkBool32 - VkExecutionGraphPipelineCreateInfoAMDX* = object + VkExecutionGraphPipelineCreateInfoAMDX* {.byref.} = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineCreateFlags @@ -12982,34 +12982,34 @@ type basePipelineHandle*: VkPipeline basePipelineIndex*: int32 - VkPipelineShaderStageNodeCreateInfoAMDX* = object + VkPipelineShaderStageNodeCreateInfoAMDX* {.byref.} = object sType*: VkStructureType pNext*: pointer pName*: cstring index*: uint32 - VkExecutionGraphPipelineScratchSizeAMDX* = object + VkExecutionGraphPipelineScratchSizeAMDX* {.byref.} = object sType*: VkStructureType pNext*: pointer size*: VkDeviceSize - VkDispatchGraphInfoAMDX* = object + VkDispatchGraphInfoAMDX* {.byref.} = object nodeIndex*: uint32 payloadCount*: uint32 payloads*: VkDeviceOrHostAddressConstAMDX payloadStride*: uint64 - VkDispatchGraphCountInfoAMDX* = object + VkDispatchGraphCountInfoAMDX* {.byref.} = object count*: uint32 infos*: VkDeviceOrHostAddressConstAMDX stride*: uint64 - VkBindMemoryStatusKHR* = object + VkBindMemoryStatusKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer pResult*: ptr VkResult - VkBindDescriptorSetsInfoKHR* = object + VkBindDescriptorSetsInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer stageFlags*: VkShaderStageFlags @@ -13020,7 +13020,7 @@ type dynamicOffsetCount*: uint32 pDynamicOffsets*: ptr uint32 - VkPushConstantsInfoKHR* = object + VkPushConstantsInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer layout*: VkPipelineLayout @@ -13029,7 +13029,7 @@ type size*: uint32 pValues*: pointer - VkPushDescriptorSetInfoKHR* = object + VkPushDescriptorSetInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer stageFlags*: VkShaderStageFlags @@ -13038,7 +13038,7 @@ type descriptorWriteCount*: uint32 pDescriptorWrites*: ptr VkWriteDescriptorSet - VkPushDescriptorSetWithTemplateInfoKHR* = object + VkPushDescriptorSetWithTemplateInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer descriptorUpdateTemplate*: VkDescriptorUpdateTemplate @@ -13046,7 +13046,7 @@ type set*: uint32 pData*: pointer - VkSetDescriptorBufferOffsetsInfoEXT* = object + VkSetDescriptorBufferOffsetsInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer stageFlags*: VkShaderStageFlags @@ -13056,119 +13056,119 @@ type pBufferIndices*: ptr uint32 pOffsets*: ptr VkDeviceSize - VkBindDescriptorBufferEmbeddedSamplersInfoEXT* = object + VkBindDescriptorBufferEmbeddedSamplersInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer stageFlags*: VkShaderStageFlags layout*: VkPipelineLayout set*: uint32 - VkPhysicalDeviceCubicClampFeaturesQCOM* = object + VkPhysicalDeviceCubicClampFeaturesQCOM* {.byref.} = object sType*: VkStructureType pNext*: pointer cubicRangeClamp*: VkBool32 - VkPhysicalDeviceYcbcrDegammaFeaturesQCOM* = object + VkPhysicalDeviceYcbcrDegammaFeaturesQCOM* {.byref.} = object sType*: VkStructureType pNext*: pointer ycbcrDegamma*: VkBool32 - VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM* = object + VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM* {.byref.} = object sType*: VkStructureType pNext*: pointer enableYDegamma*: VkBool32 enableCbCrDegamma*: VkBool32 - VkPhysicalDeviceCubicWeightsFeaturesQCOM* = object + VkPhysicalDeviceCubicWeightsFeaturesQCOM* {.byref.} = object sType*: VkStructureType pNext*: pointer selectableCubicWeights*: VkBool32 - VkSamplerCubicWeightsCreateInfoQCOM* = object + VkSamplerCubicWeightsCreateInfoQCOM* {.byref.} = object sType*: VkStructureType pNext*: pointer cubicWeights*: VkCubicFilterWeightsQCOM - VkBlitImageCubicWeightsInfoQCOM* = object + VkBlitImageCubicWeightsInfoQCOM* {.byref.} = object sType*: VkStructureType pNext*: pointer cubicWeights*: VkCubicFilterWeightsQCOM - VkPhysicalDeviceImageProcessing2FeaturesQCOM* = object + VkPhysicalDeviceImageProcessing2FeaturesQCOM* {.byref.} = object sType*: VkStructureType pNext*: pointer textureBlockMatch2*: VkBool32 - VkPhysicalDeviceImageProcessing2PropertiesQCOM* = object + VkPhysicalDeviceImageProcessing2PropertiesQCOM* {.byref.} = object sType*: VkStructureType pNext*: pointer maxBlockMatchWindow*: VkExtent2D - VkSamplerBlockMatchWindowCreateInfoQCOM* = object + VkSamplerBlockMatchWindowCreateInfoQCOM* {.byref.} = object sType*: VkStructureType pNext*: pointer windowExtent*: VkExtent2D windowCompareMode*: VkBlockMatchWindowCompareModeQCOM - VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV* = object + VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer descriptorPoolOverallocation*: VkBool32 - VkPhysicalDeviceLayeredDriverPropertiesMSFT* = object + VkPhysicalDeviceLayeredDriverPropertiesMSFT* {.byref.} = object sType*: VkStructureType pNext*: pointer underlyingAPI*: VkLayeredDriverUnderlyingApiMSFT - VkPhysicalDevicePerStageDescriptorSetFeaturesNV* = object + VkPhysicalDevicePerStageDescriptorSetFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer perStageDescriptorSet*: VkBool32 dynamicPipelineLayout*: VkBool32 - VkPhysicalDeviceExternalFormatResolveFeaturesANDROID* = object + VkPhysicalDeviceExternalFormatResolveFeaturesANDROID* {.byref.} = object sType*: VkStructureType pNext*: pointer externalFormatResolve*: VkBool32 - VkPhysicalDeviceExternalFormatResolvePropertiesANDROID* = object + VkPhysicalDeviceExternalFormatResolvePropertiesANDROID* {.byref.} = object sType*: VkStructureType pNext*: pointer nullColorAttachmentWithExternalFormatResolve*: VkBool32 externalFormatResolveChromaOffsetX*: VkChromaLocation externalFormatResolveChromaOffsetY*: VkChromaLocation - VkAndroidHardwareBufferFormatResolvePropertiesANDROID* = object + VkAndroidHardwareBufferFormatResolvePropertiesANDROID* {.byref.} = object sType*: VkStructureType pNext*: pointer colorAttachmentFormat*: VkFormat - VkLatencySleepModeInfoNV* = object + VkLatencySleepModeInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer lowLatencyMode*: VkBool32 lowLatencyBoost*: VkBool32 minimumIntervalUs*: uint32 - VkLatencySleepInfoNV* = object + VkLatencySleepInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer signalSemaphore*: VkSemaphore value*: uint64 - VkSetLatencyMarkerInfoNV* = object + VkSetLatencyMarkerInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer presentID*: uint64 marker*: VkLatencyMarkerNV - VkGetLatencyMarkerInfoNV* = object + VkGetLatencyMarkerInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer timingCount*: uint32 pTimings*: ptr VkLatencyTimingsFrameReportNV - VkLatencyTimingsFrameReportNV* = object + VkLatencyTimingsFrameReportNV* {.byref.} = object sType*: VkStructureType pNext*: pointer presentID*: uint64 @@ -13186,119 +13186,119 @@ type gpuRenderStartTimeUs*: uint64 gpuRenderEndTimeUs*: uint64 - VkOutOfBandQueueTypeInfoNV* = object + VkOutOfBandQueueTypeInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer queueType*: VkOutOfBandQueueTypeNV - VkLatencySubmissionPresentIdNV* = object + VkLatencySubmissionPresentIdNV* {.byref.} = object sType*: VkStructureType pNext*: pointer presentID*: uint64 - VkSwapchainLatencyCreateInfoNV* = object + VkSwapchainLatencyCreateInfoNV* {.byref.} = object sType*: VkStructureType pNext*: pointer latencyModeEnable*: VkBool32 - VkLatencySurfaceCapabilitiesNV* = object + VkLatencySurfaceCapabilitiesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer presentModeCount*: uint32 pPresentModes*: ptr VkPresentModeKHR - VkPhysicalDeviceCudaKernelLaunchFeaturesNV* = object + VkPhysicalDeviceCudaKernelLaunchFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer cudaKernelLaunchFeatures*: VkBool32 - VkPhysicalDeviceCudaKernelLaunchPropertiesNV* = object + VkPhysicalDeviceCudaKernelLaunchPropertiesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer computeCapabilityMinor*: uint32 computeCapabilityMajor*: uint32 - VkDeviceQueueShaderCoreControlCreateInfoARM* = object + VkDeviceQueueShaderCoreControlCreateInfoARM* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderCoreCount*: uint32 - VkPhysicalDeviceSchedulingControlsFeaturesARM* = object + VkPhysicalDeviceSchedulingControlsFeaturesARM* {.byref.} = object sType*: VkStructureType pNext*: pointer schedulingControls*: VkBool32 - VkPhysicalDeviceSchedulingControlsPropertiesARM* = object + VkPhysicalDeviceSchedulingControlsPropertiesARM* {.byref.} = object sType*: VkStructureType pNext*: pointer schedulingControlsFlags*: VkPhysicalDeviceSchedulingControlsFlagsARM - VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG* = object + VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG* {.byref.} = object sType*: VkStructureType pNext*: pointer relaxedLineRasterization*: VkBool32 - VkPhysicalDeviceRenderPassStripedFeaturesARM* = object + VkPhysicalDeviceRenderPassStripedFeaturesARM* {.byref.} = object sType*: VkStructureType pNext*: pointer renderPassStriped*: VkBool32 - VkPhysicalDeviceRenderPassStripedPropertiesARM* = object + VkPhysicalDeviceRenderPassStripedPropertiesARM* {.byref.} = object sType*: VkStructureType pNext*: pointer renderPassStripeGranularity*: VkExtent2D maxRenderPassStripes*: uint32 - VkRenderPassStripeInfoARM* = object + VkRenderPassStripeInfoARM* {.byref.} = object sType*: VkStructureType pNext*: pointer stripeArea*: VkRect2D - VkRenderPassStripeBeginInfoARM* = object + VkRenderPassStripeBeginInfoARM* {.byref.} = object sType*: VkStructureType pNext*: pointer stripeInfoCount*: uint32 pStripeInfos*: ptr VkRenderPassStripeInfoARM - VkRenderPassStripeSubmitInfoARM* = object + VkRenderPassStripeSubmitInfoARM* {.byref.} = object sType*: VkStructureType pNext*: pointer stripeSemaphoreInfoCount*: uint32 pStripeSemaphoreInfos*: ptr VkSemaphoreSubmitInfo - VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR* = object + VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderMaximalReconvergence*: VkBool32 - VkPhysicalDeviceShaderSubgroupRotateFeaturesKHR* = object + VkPhysicalDeviceShaderSubgroupRotateFeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderSubgroupRotate*: VkBool32 shaderSubgroupRotateClustered*: VkBool32 - VkPhysicalDeviceShaderExpectAssumeFeaturesKHR* = object + VkPhysicalDeviceShaderExpectAssumeFeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderExpectAssume*: VkBool32 - VkPhysicalDeviceShaderFloatControls2FeaturesKHR* = object + VkPhysicalDeviceShaderFloatControls2FeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderFloatControls2*: VkBool32 - VkPhysicalDeviceDynamicRenderingLocalReadFeaturesKHR* = object + VkPhysicalDeviceDynamicRenderingLocalReadFeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer dynamicRenderingLocalRead*: VkBool32 - VkRenderingAttachmentLocationInfoKHR* = object + VkRenderingAttachmentLocationInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer colorAttachmentCount*: uint32 pColorAttachmentLocations*: ptr uint32 - VkRenderingInputAttachmentIndexInfoKHR* = object + VkRenderingInputAttachmentIndexInfoKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer colorAttachmentCount*: uint32 @@ -13306,34 +13306,34 @@ type pDepthInputAttachmentIndex*: ptr uint32 pStencilInputAttachmentIndex*: ptr uint32 - VkPhysicalDeviceShaderQuadControlFeaturesKHR* = object + VkPhysicalDeviceShaderQuadControlFeaturesKHR* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderQuadControl*: VkBool32 - VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV* = object + VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderFloat16VectorAtomics*: VkBool32 - VkPhysicalDeviceMapMemoryPlacedFeaturesEXT* = object + VkPhysicalDeviceMapMemoryPlacedFeaturesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer memoryMapPlaced*: VkBool32 memoryMapRangePlaced*: VkBool32 memoryUnmapReserve*: VkBool32 - VkPhysicalDeviceMapMemoryPlacedPropertiesEXT* = object + VkPhysicalDeviceMapMemoryPlacedPropertiesEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer minPlacedMemoryMapAlignment*: VkDeviceSize - VkMemoryMapPlacedInfoEXT* = object + VkMemoryMapPlacedInfoEXT* {.byref.} = object sType*: VkStructureType pNext*: pointer pPlacedAddress*: pointer - VkPhysicalDeviceRawAccessChainsFeaturesNV* = object + VkPhysicalDeviceRawAccessChainsFeaturesNV* {.byref.} = object sType*: VkStructureType pNext*: pointer shaderRawAccessChains*: VkBool32 @@ -13457,23 +13457,23 @@ proc newVkAllocationCallbacks*(pUserData: pointer = nil, pfnAllocation: PFN_vkAl pfnInternalFree: pfnInternalFree, ) -proc newVkDeviceQueueCreateInfo*(sType: VkStructureType = VkStructureType.DeviceQueueCreateInfo, pNext: pointer = nil, flags: VkDeviceQueueCreateFlags = 0.VkDeviceQueueCreateFlags, queueFamilyIndex: uint32, queueCount: uint32, pQueuePriorities: ptr float32): VkDeviceQueueCreateInfo = +proc newVkDeviceQueueCreateInfo*(sType: VkStructureType = VkStructureType.DeviceQueueCreateInfo, pNext: pointer = nil, flags: VkDeviceQueueCreateFlags = 0.VkDeviceQueueCreateFlags, queueFamilyIndex: uint32, queuePriorities: openarray[float32]): VkDeviceQueueCreateInfo = result = VkDeviceQueueCreateInfo( sType: sType, pNext: pNext, flags: flags, queueFamilyIndex: queueFamilyIndex, - queueCount: queueCount, - pQueuePriorities: pQueuePriorities, + queueCount: len(queuePriorities).uint32, + pQueuePriorities: if len(queuePriorities) == 0: nil else: cast[ptr float32](queuePriorities), ) -proc newVkDeviceCreateInfo*(sType: VkStructureType = VkStructureType.DeviceCreateInfo, pNext: pointer = nil, flags: VkDeviceCreateFlags = 0.VkDeviceCreateFlags, queueCreateInfoCount: uint32, pQueueCreateInfos: ptr VkDeviceQueueCreateInfo, enabledLayerCount: uint32, ppEnabledLayerNames: cstringArray, enabledExtensionCount: uint32, ppEnabledExtensionNames: cstringArray, pEnabledFeatures: ptr VkPhysicalDeviceFeatures): VkDeviceCreateInfo = +proc newVkDeviceCreateInfo*(sType: VkStructureType = VkStructureType.DeviceCreateInfo, pNext: pointer = nil, flags: VkDeviceCreateFlags = 0.VkDeviceCreateFlags, queueCreateInfos: openarray[VkDeviceQueueCreateInfo], enabledLayerCount: uint32, ppEnabledLayerNames: cstringArray, enabledExtensionCount: uint32, ppEnabledExtensionNames: cstringArray, pEnabledFeatures: ptr VkPhysicalDeviceFeatures): VkDeviceCreateInfo = result = VkDeviceCreateInfo( sType: sType, pNext: pNext, flags: flags, - queueCreateInfoCount: queueCreateInfoCount, - pQueueCreateInfos: pQueueCreateInfos, + queueCreateInfoCount: len(queueCreateInfos).uint32, + pQueueCreateInfos: if len(queueCreateInfos) == 0: nil else: cast[ptr VkDeviceQueueCreateInfo](queueCreateInfos), enabledLayerCount: enabledLayerCount, ppEnabledLayerNames: ppEnabledLayerNames, enabledExtensionCount: enabledExtensionCount, @@ -13625,7 +13625,7 @@ proc newVkBufferUsageFlags2CreateInfoKHR*(sType: VkStructureType = VkStructureTy usage: usage, ) -proc newVkBufferCreateInfo*(sType: VkStructureType = VkStructureType.BufferCreateInfo, pNext: pointer = nil, flags: VkBufferCreateFlags = 0.VkBufferCreateFlags, size: VkDeviceSize, usage: VkBufferUsageFlags, sharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32): VkBufferCreateInfo = +proc newVkBufferCreateInfo*(sType: VkStructureType = VkStructureType.BufferCreateInfo, pNext: pointer = nil, flags: VkBufferCreateFlags = 0.VkBufferCreateFlags, size: VkDeviceSize, usage: VkBufferUsageFlags, sharingMode: VkSharingMode, queueFamilyIndices: openarray[uint32]): VkBufferCreateInfo = result = VkBufferCreateInfo( sType: sType, pNext: pNext, @@ -13633,8 +13633,8 @@ proc newVkBufferCreateInfo*(sType: VkStructureType = VkStructureType.BufferCreat size: size, usage: usage, sharingMode: sharingMode, - queueFamilyIndexCount: queueFamilyIndexCount, - pQueueFamilyIndices: pQueueFamilyIndices, + queueFamilyIndexCount: len(queueFamilyIndices).uint32, + pQueueFamilyIndices: if len(queueFamilyIndices) == 0: nil else: cast[ptr uint32](queueFamilyIndices), ) proc newVkBufferViewCreateInfo*(sType: VkStructureType = VkStructureType.BufferViewCreateInfo, pNext: pointer = nil, flags: VkBufferViewCreateFlags = 0.VkBufferViewCreateFlags, buffer: VkBuffer, format: VkFormat, offset: VkDeviceSize, range: VkDeviceSize): VkBufferViewCreateInfo = @@ -13707,7 +13707,7 @@ proc newVkImageMemoryBarrier*(sType: VkStructureType = VkStructureType.ImageMemo subresourceRange: subresourceRange, ) -proc newVkImageCreateInfo*(sType: VkStructureType = VkStructureType.ImageCreateInfo, pNext: pointer = nil, flags: VkImageCreateFlags = 0.VkImageCreateFlags, imageType: VkImageType, format: VkFormat, extent: VkExtent3D, mipLevels: uint32, arrayLayers: uint32, samples: VkSampleCountFlagBits, tiling: VkImageTiling, usage: VkImageUsageFlags, sharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32, initialLayout: VkImageLayout): VkImageCreateInfo = +proc newVkImageCreateInfo*(sType: VkStructureType = VkStructureType.ImageCreateInfo, pNext: pointer = nil, flags: VkImageCreateFlags = 0.VkImageCreateFlags, imageType: VkImageType, format: VkFormat, extent: VkExtent3D, mipLevels: uint32, arrayLayers: uint32, samples: VkSampleCountFlagBits, tiling: VkImageTiling, usage: VkImageUsageFlags, sharingMode: VkSharingMode, queueFamilyIndices: openarray[uint32], initialLayout: VkImageLayout): VkImageCreateInfo = result = VkImageCreateInfo( sType: sType, pNext: pNext, @@ -13721,8 +13721,8 @@ proc newVkImageCreateInfo*(sType: VkStructureType = VkStructureType.ImageCreateI tiling: tiling, usage: usage, sharingMode: sharingMode, - queueFamilyIndexCount: queueFamilyIndexCount, - pQueueFamilyIndices: pQueueFamilyIndices, + queueFamilyIndexCount: len(queueFamilyIndices).uint32, + pQueueFamilyIndices: if len(queueFamilyIndices) == 0: nil else: cast[ptr uint32](queueFamilyIndices), initialLayout: initialLayout, ) @@ -13773,41 +13773,41 @@ proc newVkSparseImageMemoryBind*(subresource: VkImageSubresource, offset: VkOffs flags: flags, ) -proc newVkSparseBufferMemoryBindInfo*(buffer: VkBuffer, bindCount: uint32, pBinds: ptr VkSparseMemoryBind): VkSparseBufferMemoryBindInfo = +proc newVkSparseBufferMemoryBindInfo*(buffer: VkBuffer, binds: openarray[VkSparseMemoryBind]): VkSparseBufferMemoryBindInfo = result = VkSparseBufferMemoryBindInfo( buffer: buffer, - bindCount: bindCount, - pBinds: pBinds, + bindCount: len(binds).uint32, + pBinds: if len(binds) == 0: nil else: cast[ptr VkSparseMemoryBind](binds), ) -proc newVkSparseImageOpaqueMemoryBindInfo*(image: VkImage, bindCount: uint32, pBinds: ptr VkSparseMemoryBind): VkSparseImageOpaqueMemoryBindInfo = +proc newVkSparseImageOpaqueMemoryBindInfo*(image: VkImage, binds: openarray[VkSparseMemoryBind]): VkSparseImageOpaqueMemoryBindInfo = result = VkSparseImageOpaqueMemoryBindInfo( image: image, - bindCount: bindCount, - pBinds: pBinds, + bindCount: len(binds).uint32, + pBinds: if len(binds) == 0: nil else: cast[ptr VkSparseMemoryBind](binds), ) -proc newVkSparseImageMemoryBindInfo*(image: VkImage, bindCount: uint32, pBinds: ptr VkSparseImageMemoryBind): VkSparseImageMemoryBindInfo = +proc newVkSparseImageMemoryBindInfo*(image: VkImage, binds: openarray[VkSparseImageMemoryBind]): VkSparseImageMemoryBindInfo = result = VkSparseImageMemoryBindInfo( image: image, - bindCount: bindCount, - pBinds: pBinds, + bindCount: len(binds).uint32, + pBinds: if len(binds) == 0: nil else: cast[ptr VkSparseImageMemoryBind](binds), ) -proc newVkBindSparseInfo*(sType: VkStructureType = VkStructureType.BindSparseInfo, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, bufferBindCount: uint32, pBufferBinds: ptr VkSparseBufferMemoryBindInfo, imageOpaqueBindCount: uint32, pImageOpaqueBinds: ptr VkSparseImageOpaqueMemoryBindInfo, imageBindCount: uint32, pImageBinds: ptr VkSparseImageMemoryBindInfo, signalSemaphoreCount: uint32, pSignalSemaphores: ptr VkSemaphore): VkBindSparseInfo = +proc newVkBindSparseInfo*(sType: VkStructureType = VkStructureType.BindSparseInfo, pNext: pointer = nil, waitSemaphores: openarray[VkSemaphore], bufferBinds: openarray[VkSparseBufferMemoryBindInfo], imageOpaqueBinds: openarray[VkSparseImageOpaqueMemoryBindInfo], imageBinds: openarray[VkSparseImageMemoryBindInfo], signalSemaphores: openarray[VkSemaphore]): VkBindSparseInfo = result = VkBindSparseInfo( sType: sType, pNext: pNext, - waitSemaphoreCount: waitSemaphoreCount, - pWaitSemaphores: pWaitSemaphores, - bufferBindCount: bufferBindCount, - pBufferBinds: pBufferBinds, - imageOpaqueBindCount: imageOpaqueBindCount, - pImageOpaqueBinds: pImageOpaqueBinds, - imageBindCount: imageBindCount, - pImageBinds: pImageBinds, - signalSemaphoreCount: signalSemaphoreCount, - pSignalSemaphores: pSignalSemaphores, + waitSemaphoreCount: len(waitSemaphores).uint32, + pWaitSemaphores: if len(waitSemaphores) == 0: nil else: cast[ptr VkSemaphore](waitSemaphores), + bufferBindCount: len(bufferBinds).uint32, + pBufferBinds: if len(bufferBinds) == 0: nil else: cast[ptr VkSparseBufferMemoryBindInfo](bufferBinds), + imageOpaqueBindCount: len(imageOpaqueBinds).uint32, + pImageOpaqueBinds: if len(imageOpaqueBinds) == 0: nil else: cast[ptr VkSparseImageOpaqueMemoryBindInfo](imageOpaqueBinds), + imageBindCount: len(imageBinds).uint32, + pImageBinds: if len(imageBinds) == 0: nil else: cast[ptr VkSparseImageMemoryBindInfo](imageBinds), + signalSemaphoreCount: len(signalSemaphores).uint32, + pSignalSemaphores: if len(signalSemaphores) == 0: nil else: cast[ptr VkSemaphore](signalSemaphores), ) proc newVkImageCopy*(srcSubresource: VkImageSubresourceLayers, srcOffset: VkOffset3D, dstSubresource: VkImageSubresourceLayers, dstOffset: VkOffset3D, extent: VkExtent3D): VkImageCopy = @@ -13863,13 +13863,13 @@ proc newVkImageResolve*(srcSubresource: VkImageSubresourceLayers, srcOffset: VkO extent: extent, ) -proc newVkShaderModuleCreateInfo*(sType: VkStructureType = VkStructureType.ShaderModuleCreateInfo, pNext: pointer = nil, flags: VkShaderModuleCreateFlags = 0.VkShaderModuleCreateFlags, codeSize: uint, pCode: ptr uint32): VkShaderModuleCreateInfo = +proc newVkShaderModuleCreateInfo*(sType: VkStructureType = VkStructureType.ShaderModuleCreateInfo, pNext: pointer = nil, flags: VkShaderModuleCreateFlags = 0.VkShaderModuleCreateFlags, code: openarray[uint32]): VkShaderModuleCreateInfo = result = VkShaderModuleCreateInfo( sType: sType, pNext: pNext, flags: flags, - codeSize: codeSize, - pCode: pCode, + codeSize: len(code).uint, + pCode: if len(code) == 0: nil else: cast[ptr uint32](code), ) proc newVkDescriptorSetLayoutBinding*(binding: uint32, descriptorType: VkDescriptorType, descriptorCount: uint32, stageFlags: VkShaderStageFlags, pImmutableSamplers: ptr VkSampler): VkDescriptorSetLayoutBinding = @@ -13881,13 +13881,13 @@ proc newVkDescriptorSetLayoutBinding*(binding: uint32, descriptorType: VkDescrip pImmutableSamplers: pImmutableSamplers, ) -proc newVkDescriptorSetLayoutCreateInfo*(sType: VkStructureType = VkStructureType.DescriptorSetLayoutCreateInfo, pNext: pointer = nil, flags: VkDescriptorSetLayoutCreateFlags = 0.VkDescriptorSetLayoutCreateFlags, bindingCount: uint32, pBindings: ptr VkDescriptorSetLayoutBinding): VkDescriptorSetLayoutCreateInfo = +proc newVkDescriptorSetLayoutCreateInfo*(sType: VkStructureType = VkStructureType.DescriptorSetLayoutCreateInfo, pNext: pointer = nil, flags: VkDescriptorSetLayoutCreateFlags = 0.VkDescriptorSetLayoutCreateFlags, bindings: openarray[VkDescriptorSetLayoutBinding]): VkDescriptorSetLayoutCreateInfo = result = VkDescriptorSetLayoutCreateInfo( sType: sType, pNext: pNext, flags: flags, - bindingCount: bindingCount, - pBindings: pBindings, + bindingCount: len(bindings).uint32, + pBindings: if len(bindings) == 0: nil else: cast[ptr VkDescriptorSetLayoutBinding](bindings), ) proc newVkDescriptorPoolSize*(`type`: VkDescriptorType, descriptorCount: uint32): VkDescriptorPoolSize = @@ -13896,23 +13896,23 @@ proc newVkDescriptorPoolSize*(`type`: VkDescriptorType, descriptorCount: uint32) descriptorCount: descriptorCount, ) -proc newVkDescriptorPoolCreateInfo*(sType: VkStructureType = VkStructureType.DescriptorPoolCreateInfo, pNext: pointer = nil, flags: VkDescriptorPoolCreateFlags = 0.VkDescriptorPoolCreateFlags, maxSets: uint32, poolSizeCount: uint32, pPoolSizes: ptr VkDescriptorPoolSize): VkDescriptorPoolCreateInfo = +proc newVkDescriptorPoolCreateInfo*(sType: VkStructureType = VkStructureType.DescriptorPoolCreateInfo, pNext: pointer = nil, flags: VkDescriptorPoolCreateFlags = 0.VkDescriptorPoolCreateFlags, maxSets: uint32, poolSizes: openarray[VkDescriptorPoolSize]): VkDescriptorPoolCreateInfo = result = VkDescriptorPoolCreateInfo( sType: sType, pNext: pNext, flags: flags, maxSets: maxSets, - poolSizeCount: poolSizeCount, - pPoolSizes: pPoolSizes, + poolSizeCount: len(poolSizes).uint32, + pPoolSizes: if len(poolSizes) == 0: nil else: cast[ptr VkDescriptorPoolSize](poolSizes), ) -proc newVkDescriptorSetAllocateInfo*(sType: VkStructureType = VkStructureType.DescriptorSetAllocateInfo, pNext: pointer = nil, descriptorPool: VkDescriptorPool, descriptorSetCount: uint32, pSetLayouts: ptr VkDescriptorSetLayout): VkDescriptorSetAllocateInfo = +proc newVkDescriptorSetAllocateInfo*(sType: VkStructureType = VkStructureType.DescriptorSetAllocateInfo, pNext: pointer = nil, descriptorPool: VkDescriptorPool, setLayouts: openarray[VkDescriptorSetLayout]): VkDescriptorSetAllocateInfo = result = VkDescriptorSetAllocateInfo( sType: sType, pNext: pNext, descriptorPool: descriptorPool, - descriptorSetCount: descriptorSetCount, - pSetLayouts: pSetLayouts, + descriptorSetCount: len(setLayouts).uint32, + pSetLayouts: if len(setLayouts) == 0: nil else: cast[ptr VkDescriptorSetLayout](setLayouts), ) proc newVkSpecializationMapEntry*(constantID: uint32, offset: uint32, size: uint): VkSpecializationMapEntry = @@ -13922,10 +13922,10 @@ proc newVkSpecializationMapEntry*(constantID: uint32, offset: uint32, size: uint size: size, ) -proc newVkSpecializationInfo*(mapEntryCount: uint32, pMapEntries: ptr VkSpecializationMapEntry, dataSize: uint, pData: pointer = nil): VkSpecializationInfo = +proc newVkSpecializationInfo*(mapEntries: openarray[VkSpecializationMapEntry], dataSize: uint, pData: pointer = nil): VkSpecializationInfo = result = VkSpecializationInfo( - mapEntryCount: mapEntryCount, - pMapEntries: pMapEntries, + mapEntryCount: len(mapEntries).uint32, + pMapEntries: if len(mapEntries) == 0: nil else: cast[ptr VkSpecializationMapEntry](mapEntries), dataSize: dataSize, pData: pData, ) @@ -13983,15 +13983,15 @@ proc newVkVertexInputAttributeDescription*(location: uint32, binding: uint32, fo offset: offset, ) -proc newVkPipelineVertexInputStateCreateInfo*(sType: VkStructureType = VkStructureType.PipelineVertexInputStateCreateInfo, pNext: pointer = nil, flags: VkPipelineVertexInputStateCreateFlags = 0.VkPipelineVertexInputStateCreateFlags, vertexBindingDescriptionCount: uint32, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription, vertexAttributeDescriptionCount: uint32, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription): VkPipelineVertexInputStateCreateInfo = +proc newVkPipelineVertexInputStateCreateInfo*(sType: VkStructureType = VkStructureType.PipelineVertexInputStateCreateInfo, pNext: pointer = nil, flags: VkPipelineVertexInputStateCreateFlags = 0.VkPipelineVertexInputStateCreateFlags, vertexBindingDescriptions: openarray[VkVertexInputBindingDescription], vertexAttributeDescriptions: openarray[VkVertexInputAttributeDescription]): VkPipelineVertexInputStateCreateInfo = result = VkPipelineVertexInputStateCreateInfo( sType: sType, pNext: pNext, flags: flags, - vertexBindingDescriptionCount: vertexBindingDescriptionCount, - pVertexBindingDescriptions: pVertexBindingDescriptions, - vertexAttributeDescriptionCount: vertexAttributeDescriptionCount, - pVertexAttributeDescriptions: pVertexAttributeDescriptions, + vertexBindingDescriptionCount: len(vertexBindingDescriptions).uint32, + pVertexBindingDescriptions: if len(vertexBindingDescriptions) == 0: nil else: cast[ptr VkVertexInputBindingDescription](vertexBindingDescriptions), + vertexAttributeDescriptionCount: len(vertexAttributeDescriptions).uint32, + pVertexAttributeDescriptions: if len(vertexAttributeDescriptions) == 0: nil else: cast[ptr VkVertexInputAttributeDescription](vertexAttributeDescriptions), ) proc newVkPipelineInputAssemblyStateCreateInfo*(sType: VkStructureType = VkStructureType.PipelineInputAssemblyStateCreateInfo, pNext: pointer = nil, flags: VkPipelineInputAssemblyStateCreateFlags = 0.VkPipelineInputAssemblyStateCreateFlags, topology: VkPrimitiveTopology, primitiveRestartEnable: VkBool32): VkPipelineInputAssemblyStateCreateInfo = @@ -14011,15 +14011,15 @@ proc newVkPipelineTessellationStateCreateInfo*(sType: VkStructureType = VkStruct patchControlPoints: patchControlPoints, ) -proc newVkPipelineViewportStateCreateInfo*(sType: VkStructureType = VkStructureType.PipelineViewportStateCreateInfo, pNext: pointer = nil, flags: VkPipelineViewportStateCreateFlags = 0.VkPipelineViewportStateCreateFlags, viewportCount: uint32, pViewports: ptr VkViewport, scissorCount: uint32, pScissors: ptr VkRect2D): VkPipelineViewportStateCreateInfo = +proc newVkPipelineViewportStateCreateInfo*(sType: VkStructureType = VkStructureType.PipelineViewportStateCreateInfo, pNext: pointer = nil, flags: VkPipelineViewportStateCreateFlags = 0.VkPipelineViewportStateCreateFlags, viewports: openarray[VkViewport], scissors: openarray[VkRect2D]): VkPipelineViewportStateCreateInfo = result = VkPipelineViewportStateCreateInfo( sType: sType, pNext: pNext, flags: flags, - viewportCount: viewportCount, - pViewports: pViewports, - scissorCount: scissorCount, - pScissors: pScissors, + viewportCount: len(viewports).uint32, + pViewports: if len(viewports) == 0: nil else: cast[ptr VkViewport](viewports), + scissorCount: len(scissors).uint32, + pScissors: if len(scissors) == 0: nil else: cast[ptr VkRect2D](scissors), ) proc newVkPipelineRasterizationStateCreateInfo*(sType: VkStructureType = VkStructureType.PipelineRasterizationStateCreateInfo, pNext: pointer = nil, flags: VkPipelineRasterizationStateCreateFlags = 0.VkPipelineRasterizationStateCreateFlags, depthClampEnable: VkBool32, rasterizerDiscardEnable: VkBool32, polygonMode: VkPolygonMode, cullMode: VkCullModeFlags, frontFace: VkFrontFace, depthBiasEnable: VkBool32, depthBiasConstantFactor: float32, depthBiasClamp: float32, depthBiasSlopeFactor: float32, lineWidth: float32): VkPipelineRasterizationStateCreateInfo = @@ -14064,25 +14064,25 @@ proc newVkPipelineColorBlendAttachmentState*(blendEnable: VkBool32, srcColorBlen colorWriteMask: colorWriteMask, ) -proc newVkPipelineColorBlendStateCreateInfo*(sType: VkStructureType = VkStructureType.PipelineColorBlendStateCreateInfo, pNext: pointer = nil, flags: VkPipelineColorBlendStateCreateFlags = 0.VkPipelineColorBlendStateCreateFlags, logicOpEnable: VkBool32, logicOp: VkLogicOp, attachmentCount: uint32, pAttachments: ptr VkPipelineColorBlendAttachmentState, blendConstants: array[4, float32]): VkPipelineColorBlendStateCreateInfo = +proc newVkPipelineColorBlendStateCreateInfo*(sType: VkStructureType = VkStructureType.PipelineColorBlendStateCreateInfo, pNext: pointer = nil, flags: VkPipelineColorBlendStateCreateFlags = 0.VkPipelineColorBlendStateCreateFlags, logicOpEnable: VkBool32, logicOp: VkLogicOp, attachments: openarray[VkPipelineColorBlendAttachmentState], blendConstants: array[4, float32]): VkPipelineColorBlendStateCreateInfo = result = VkPipelineColorBlendStateCreateInfo( sType: sType, pNext: pNext, flags: flags, logicOpEnable: logicOpEnable, logicOp: logicOp, - attachmentCount: attachmentCount, - pAttachments: pAttachments, + attachmentCount: len(attachments).uint32, + pAttachments: if len(attachments) == 0: nil else: cast[ptr VkPipelineColorBlendAttachmentState](attachments), blendConstants: blendConstants, ) -proc newVkPipelineDynamicStateCreateInfo*(sType: VkStructureType = VkStructureType.PipelineDynamicStateCreateInfo, pNext: pointer = nil, flags: VkPipelineDynamicStateCreateFlags = 0.VkPipelineDynamicStateCreateFlags, dynamicStateCount: uint32, pDynamicStates: ptr VkDynamicState): VkPipelineDynamicStateCreateInfo = +proc newVkPipelineDynamicStateCreateInfo*(sType: VkStructureType = VkStructureType.PipelineDynamicStateCreateInfo, pNext: pointer = nil, flags: VkPipelineDynamicStateCreateFlags = 0.VkPipelineDynamicStateCreateFlags, dynamicStates: openarray[VkDynamicState]): VkPipelineDynamicStateCreateInfo = result = VkPipelineDynamicStateCreateInfo( sType: sType, pNext: pNext, flags: flags, - dynamicStateCount: dynamicStateCount, - pDynamicStates: pDynamicStates, + dynamicStateCount: len(dynamicStates).uint32, + pDynamicStates: if len(dynamicStates) == 0: nil else: cast[ptr VkDynamicState](dynamicStates), ) proc newVkStencilOpState*(failOp: VkStencilOp, passOp: VkStencilOp, depthFailOp: VkStencilOp, compareOp: VkCompareOp, compareMask: uint32, writeMask: uint32, reference: uint32): VkStencilOpState = @@ -14112,13 +14112,13 @@ proc newVkPipelineDepthStencilStateCreateInfo*(sType: VkStructureType = VkStruct maxDepthBounds: maxDepthBounds, ) -proc newVkGraphicsPipelineCreateInfo*(sType: VkStructureType = VkStructureType.GraphicsPipelineCreateInfo, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, pVertexInputState: ptr VkPipelineVertexInputStateCreateInfo, pInputAssemblyState: ptr VkPipelineInputAssemblyStateCreateInfo, pTessellationState: ptr VkPipelineTessellationStateCreateInfo, pViewportState: ptr VkPipelineViewportStateCreateInfo, pRasterizationState: ptr VkPipelineRasterizationStateCreateInfo, pMultisampleState: ptr VkPipelineMultisampleStateCreateInfo, pDepthStencilState: ptr VkPipelineDepthStencilStateCreateInfo, pColorBlendState: ptr VkPipelineColorBlendStateCreateInfo, pDynamicState: ptr VkPipelineDynamicStateCreateInfo, layout: VkPipelineLayout, renderPass: VkRenderPass, subpass: uint32, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkGraphicsPipelineCreateInfo = +proc newVkGraphicsPipelineCreateInfo*(sType: VkStructureType = VkStructureType.GraphicsPipelineCreateInfo, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stages: openarray[VkPipelineShaderStageCreateInfo], pVertexInputState: ptr VkPipelineVertexInputStateCreateInfo, pInputAssemblyState: ptr VkPipelineInputAssemblyStateCreateInfo, pTessellationState: ptr VkPipelineTessellationStateCreateInfo, pViewportState: ptr VkPipelineViewportStateCreateInfo, pRasterizationState: ptr VkPipelineRasterizationStateCreateInfo, pMultisampleState: ptr VkPipelineMultisampleStateCreateInfo, pDepthStencilState: ptr VkPipelineDepthStencilStateCreateInfo, pColorBlendState: ptr VkPipelineColorBlendStateCreateInfo, pDynamicState: ptr VkPipelineDynamicStateCreateInfo, layout: VkPipelineLayout, renderPass: VkRenderPass, subpass: uint32, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkGraphicsPipelineCreateInfo = result = VkGraphicsPipelineCreateInfo( sType: sType, pNext: pNext, flags: flags, - stageCount: stageCount, - pStages: pStages, + stageCount: len(stages).uint32, + pStages: if len(stages) == 0: nil else: cast[ptr VkPipelineShaderStageCreateInfo](stages), pVertexInputState: pVertexInputState, pInputAssemblyState: pInputAssemblyState, pTessellationState: pTessellationState, @@ -14187,15 +14187,15 @@ proc newVkPushConstantRange*(stageFlags: VkShaderStageFlags, offset: uint32, siz size: size, ) -proc newVkPipelineLayoutCreateInfo*(sType: VkStructureType = VkStructureType.PipelineLayoutCreateInfo, pNext: pointer = nil, flags: VkPipelineLayoutCreateFlags = 0.VkPipelineLayoutCreateFlags, setLayoutCount: uint32, pSetLayouts: ptr VkDescriptorSetLayout, pushConstantRangeCount: uint32, pPushConstantRanges: ptr VkPushConstantRange): VkPipelineLayoutCreateInfo = +proc newVkPipelineLayoutCreateInfo*(sType: VkStructureType = VkStructureType.PipelineLayoutCreateInfo, pNext: pointer = nil, flags: VkPipelineLayoutCreateFlags = 0.VkPipelineLayoutCreateFlags, setLayouts: openarray[VkDescriptorSetLayout], pushConstantRanges: openarray[VkPushConstantRange]): VkPipelineLayoutCreateInfo = result = VkPipelineLayoutCreateInfo( sType: sType, pNext: pNext, flags: flags, - setLayoutCount: setLayoutCount, - pSetLayouts: pSetLayouts, - pushConstantRangeCount: pushConstantRangeCount, - pPushConstantRanges: pPushConstantRanges, + setLayoutCount: len(setLayouts).uint32, + pSetLayouts: if len(setLayouts) == 0: nil else: cast[ptr VkDescriptorSetLayout](setLayouts), + pushConstantRangeCount: len(pushConstantRanges).uint32, + pPushConstantRanges: if len(pushConstantRanges) == 0: nil else: cast[ptr VkPushConstantRange](pushConstantRanges), ) proc newVkSamplerCreateInfo*(sType: VkStructureType = VkStructureType.SamplerCreateInfo, pNext: pointer = nil, flags: VkSamplerCreateFlags = 0.VkSamplerCreateFlags, magFilter: VkFilter, minFilter: VkFilter, mipmapMode: VkSamplerMipmapMode, addressModeU: VkSamplerAddressMode, addressModeV: VkSamplerAddressMode, addressModeW: VkSamplerAddressMode, mipLodBias: float32, anisotropyEnable: VkBool32, maxAnisotropy: float32, compareEnable: VkBool32, compareOp: VkCompareOp, minLod: float32, maxLod: float32, borderColor: VkBorderColor, unnormalizedCoordinates: VkBool32): VkSamplerCreateInfo = @@ -14257,15 +14257,15 @@ proc newVkCommandBufferBeginInfo*(sType: VkStructureType = VkStructureType.Comma pInheritanceInfo: pInheritanceInfo, ) -proc newVkRenderPassBeginInfo*(sType: VkStructureType = VkStructureType.RenderPassBeginInfo, pNext: pointer = nil, renderPass: VkRenderPass, framebuffer: VkFramebuffer, renderArea: VkRect2D, clearValueCount: uint32, pClearValues: ptr VkClearValue): VkRenderPassBeginInfo = +proc newVkRenderPassBeginInfo*(sType: VkStructureType = VkStructureType.RenderPassBeginInfo, pNext: pointer = nil, renderPass: VkRenderPass, framebuffer: VkFramebuffer, renderArea: VkRect2D, clearValues: openarray[VkClearValue]): VkRenderPassBeginInfo = result = VkRenderPassBeginInfo( sType: sType, pNext: pNext, renderPass: renderPass, framebuffer: framebuffer, renderArea: renderArea, - clearValueCount: clearValueCount, - pClearValues: pClearValues, + clearValueCount: len(clearValues).uint32, + pClearValues: if len(clearValues) == 0: nil else: cast[ptr VkClearValue](clearValues), ) proc newVkClearDepthStencilValue*(depth: float32, stencil: uint32): VkClearDepthStencilValue = @@ -14300,18 +14300,18 @@ proc newVkAttachmentReference*(attachment: uint32, layout: VkImageLayout): VkAtt layout: layout, ) -proc newVkSubpassDescription*(flags: VkSubpassDescriptionFlags = 0.VkSubpassDescriptionFlags, pipelineBindPoint: VkPipelineBindPoint, inputAttachmentCount: uint32, pInputAttachments: ptr VkAttachmentReference, colorAttachmentCount: uint32, pColorAttachments: ptr VkAttachmentReference, pResolveAttachments: ptr VkAttachmentReference, pDepthStencilAttachment: ptr VkAttachmentReference, preserveAttachmentCount: uint32, pPreserveAttachments: ptr uint32): VkSubpassDescription = +proc newVkSubpassDescription*(flags: VkSubpassDescriptionFlags = 0.VkSubpassDescriptionFlags, pipelineBindPoint: VkPipelineBindPoint, inputAttachments: openarray[VkAttachmentReference], colorAttachments: openarray[VkAttachmentReference], resolveAttachments: openarray[VkAttachmentReference], pDepthStencilAttachment: ptr VkAttachmentReference, preserveAttachments: openarray[uint32]): VkSubpassDescription = result = VkSubpassDescription( flags: flags, pipelineBindPoint: pipelineBindPoint, - inputAttachmentCount: inputAttachmentCount, - pInputAttachments: pInputAttachments, - colorAttachmentCount: colorAttachmentCount, - pColorAttachments: pColorAttachments, - pResolveAttachments: pResolveAttachments, + inputAttachmentCount: len(inputAttachments).uint32, + pInputAttachments: if len(inputAttachments) == 0: nil else: cast[ptr VkAttachmentReference](inputAttachments), + colorAttachmentCount: len(colorAttachments).uint32, + pColorAttachments: if len(colorAttachments) == 0: nil else: cast[ptr VkAttachmentReference](colorAttachments), + pResolveAttachments: if len(resolveAttachments) == 0: nil else: cast[ptr VkAttachmentReference](resolveAttachments), pDepthStencilAttachment: pDepthStencilAttachment, - preserveAttachmentCount: preserveAttachmentCount, - pPreserveAttachments: pPreserveAttachments, + preserveAttachmentCount: len(preserveAttachments).uint32, + pPreserveAttachments: if len(preserveAttachments) == 0: nil else: cast[ptr uint32](preserveAttachments), ) proc newVkSubpassDependency*(srcSubpass: uint32, dstSubpass: uint32, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags, dependencyFlags: VkDependencyFlags): VkSubpassDependency = @@ -14325,17 +14325,17 @@ proc newVkSubpassDependency*(srcSubpass: uint32, dstSubpass: uint32, srcStageMas dependencyFlags: dependencyFlags, ) -proc newVkRenderPassCreateInfo*(sType: VkStructureType = VkStructureType.RenderPassCreateInfo, pNext: pointer = nil, flags: VkRenderPassCreateFlags = 0.VkRenderPassCreateFlags, attachmentCount: uint32, pAttachments: ptr VkAttachmentDescription, subpassCount: uint32, pSubpasses: ptr VkSubpassDescription, dependencyCount: uint32, pDependencies: ptr VkSubpassDependency): VkRenderPassCreateInfo = +proc newVkRenderPassCreateInfo*(sType: VkStructureType = VkStructureType.RenderPassCreateInfo, pNext: pointer = nil, flags: VkRenderPassCreateFlags = 0.VkRenderPassCreateFlags, attachments: openarray[VkAttachmentDescription], subpasses: openarray[VkSubpassDescription], dependencies: openarray[VkSubpassDependency]): VkRenderPassCreateInfo = result = VkRenderPassCreateInfo( sType: sType, pNext: pNext, flags: flags, - attachmentCount: attachmentCount, - pAttachments: pAttachments, - subpassCount: subpassCount, - pSubpasses: pSubpasses, - dependencyCount: dependencyCount, - pDependencies: pDependencies, + attachmentCount: len(attachments).uint32, + pAttachments: if len(attachments) == 0: nil else: cast[ptr VkAttachmentDescription](attachments), + subpassCount: len(subpasses).uint32, + pSubpasses: if len(subpasses) == 0: nil else: cast[ptr VkSubpassDescription](subpasses), + dependencyCount: len(dependencies).uint32, + pDependencies: if len(dependencies) == 0: nil else: cast[ptr VkSubpassDependency](dependencies), ) proc newVkEventCreateInfo*(sType: VkStructureType = VkStructureType.EventCreateInfo, pNext: pointer = nil, flags: VkEventCreateFlags = 0.VkEventCreateFlags): VkEventCreateInfo = @@ -14547,14 +14547,14 @@ proc newVkQueryPoolCreateInfo*(sType: VkStructureType = VkStructureType.QueryPoo pipelineStatistics: pipelineStatistics, ) -proc newVkFramebufferCreateInfo*(sType: VkStructureType = VkStructureType.FramebufferCreateInfo, pNext: pointer = nil, flags: VkFramebufferCreateFlags = 0.VkFramebufferCreateFlags, renderPass: VkRenderPass, attachmentCount: uint32, pAttachments: ptr VkImageView, width: uint32, height: uint32, layers: uint32): VkFramebufferCreateInfo = +proc newVkFramebufferCreateInfo*(sType: VkStructureType = VkStructureType.FramebufferCreateInfo, pNext: pointer = nil, flags: VkFramebufferCreateFlags = 0.VkFramebufferCreateFlags, renderPass: VkRenderPass, attachments: openarray[VkImageView], width: uint32, height: uint32, layers: uint32): VkFramebufferCreateInfo = result = VkFramebufferCreateInfo( sType: sType, pNext: pNext, flags: flags, renderPass: renderPass, - attachmentCount: attachmentCount, - pAttachments: pAttachments, + attachmentCount: len(attachments).uint32, + pAttachments: if len(attachments) == 0: nil else: cast[ptr VkImageView](attachments), width: width, height: height, layers: layers, @@ -14597,17 +14597,17 @@ proc newVkMultiDrawIndexedInfoEXT*(firstIndex: uint32, indexCount: uint32, verte vertexOffset: vertexOffset, ) -proc newVkSubmitInfo*(sType: VkStructureType = VkStructureType.SubmitInfo, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, pWaitDstStageMask: ptr VkPipelineStageFlags, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer, signalSemaphoreCount: uint32, pSignalSemaphores: ptr VkSemaphore): VkSubmitInfo = +proc newVkSubmitInfo*(sType: VkStructureType = VkStructureType.SubmitInfo, pNext: pointer = nil, waitSemaphores: openarray[VkSemaphore], pWaitDstStageMask: ptr VkPipelineStageFlags, commandBuffers: openarray[VkCommandBuffer], signalSemaphores: openarray[VkSemaphore]): VkSubmitInfo = result = VkSubmitInfo( sType: sType, pNext: pNext, - waitSemaphoreCount: waitSemaphoreCount, - pWaitSemaphores: pWaitSemaphores, + waitSemaphoreCount: len(waitSemaphores).uint32, + pWaitSemaphores: if len(waitSemaphores) == 0: nil else: cast[ptr VkSemaphore](waitSemaphores), pWaitDstStageMask: pWaitDstStageMask, - commandBufferCount: commandBufferCount, - pCommandBuffers: pCommandBuffers, - signalSemaphoreCount: signalSemaphoreCount, - pSignalSemaphores: pSignalSemaphores, + commandBufferCount: len(commandBuffers).uint32, + pCommandBuffers: if len(commandBuffers) == 0: nil else: cast[ptr VkCommandBuffer](commandBuffers), + signalSemaphoreCount: len(signalSemaphores).uint32, + pSignalSemaphores: if len(signalSemaphores) == 0: nil else: cast[ptr VkSemaphore](signalSemaphores), ) proc newVkDisplayPropertiesKHR*(display: VkDisplayKHR, displayName: cstring, physicalDimensions: VkExtent2D, physicalResolution: VkExtent2D, supportedTransforms: VkSurfaceTransformFlagsKHR, planeReorderPossible: VkBool32, persistentContent: VkBool32): VkDisplayPropertiesKHR = @@ -14789,7 +14789,7 @@ proc newVkSurfaceFormatKHR*(format: VkFormat, colorSpace: VkColorSpaceKHR): VkSu colorSpace: colorSpace, ) -proc newVkSwapchainCreateInfoKHR*(sType: VkStructureType = VkStructureType.SwapchainCreateInfoKHR, pNext: pointer = nil, flags: VkSwapchainCreateFlagsKHR = 0.VkSwapchainCreateFlagsKHR, surface: VkSurfaceKHR, minImageCount: uint32, imageFormat: VkFormat, imageColorSpace: VkColorSpaceKHR, imageExtent: VkExtent2D, imageArrayLayers: uint32, imageUsage: VkImageUsageFlags, imageSharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32, preTransform: VkSurfaceTransformFlagBitsKHR, compositeAlpha: VkCompositeAlphaFlagBitsKHR, presentMode: VkPresentModeKHR, clipped: VkBool32, oldSwapchain: VkSwapchainKHR): VkSwapchainCreateInfoKHR = +proc newVkSwapchainCreateInfoKHR*(sType: VkStructureType = VkStructureType.SwapchainCreateInfoKHR, pNext: pointer = nil, flags: VkSwapchainCreateFlagsKHR = 0.VkSwapchainCreateFlagsKHR, surface: VkSurfaceKHR, minImageCount: uint32, imageFormat: VkFormat, imageColorSpace: VkColorSpaceKHR, imageExtent: VkExtent2D, imageArrayLayers: uint32, imageUsage: VkImageUsageFlags, imageSharingMode: VkSharingMode, queueFamilyIndices: openarray[uint32], preTransform: VkSurfaceTransformFlagBitsKHR, compositeAlpha: VkCompositeAlphaFlagBitsKHR, presentMode: VkPresentModeKHR, clipped: VkBool32, oldSwapchain: VkSwapchainKHR): VkSwapchainCreateInfoKHR = result = VkSwapchainCreateInfoKHR( sType: sType, pNext: pNext, @@ -14802,8 +14802,8 @@ proc newVkSwapchainCreateInfoKHR*(sType: VkStructureType = VkStructureType.Swapc imageArrayLayers: imageArrayLayers, imageUsage: imageUsage, imageSharingMode: imageSharingMode, - queueFamilyIndexCount: queueFamilyIndexCount, - pQueueFamilyIndices: pQueueFamilyIndices, + queueFamilyIndexCount: len(queueFamilyIndices).uint32, + pQueueFamilyIndices: if len(queueFamilyIndices) == 0: nil else: cast[ptr uint32](queueFamilyIndices), preTransform: preTransform, compositeAlpha: compositeAlpha, presentMode: presentMode, @@ -14811,16 +14811,16 @@ proc newVkSwapchainCreateInfoKHR*(sType: VkStructureType = VkStructureType.Swapc oldSwapchain: oldSwapchain, ) -proc newVkPresentInfoKHR*(sType: VkStructureType = VkStructureType.PresentInfoKHR, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, swapchainCount: uint32, pSwapchains: ptr VkSwapchainKHR, pImageIndices: ptr uint32, pResults: ptr VkResult): VkPresentInfoKHR = +proc newVkPresentInfoKHR*(sType: VkStructureType = VkStructureType.PresentInfoKHR, pNext: pointer = nil, waitSemaphores: openarray[VkSemaphore], swapchains: openarray[VkSwapchainKHR], imageIndices: openarray[uint32], results: openarray[VkResult]): VkPresentInfoKHR = result = VkPresentInfoKHR( sType: sType, pNext: pNext, - waitSemaphoreCount: waitSemaphoreCount, - pWaitSemaphores: pWaitSemaphores, - swapchainCount: swapchainCount, - pSwapchains: pSwapchains, - pImageIndices: pImageIndices, - pResults: pResults, + waitSemaphoreCount: len(waitSemaphores).uint32, + pWaitSemaphores: if len(waitSemaphores) == 0: nil else: cast[ptr VkSemaphore](waitSemaphores), + swapchainCount: len(swapchains).uint32, + pSwapchains: if len(swapchains) == 0: nil else: cast[ptr VkSwapchainKHR](swapchains), + pImageIndices: if len(imageIndices) == 0: nil else: cast[ptr uint32](imageIndices), + pResults: if len(results) == 0: nil else: cast[ptr VkResult](results), ) proc newVkDebugReportCallbackCreateInfoEXT*(sType: VkStructureType = VkStructureType.DebugReportCallbackCreateInfoEXT, pNext: pointer = nil, flags: VkDebugReportFlagsEXT = 0.VkDebugReportFlagsEXT, pfnCallback: PFN_vkDebugReportCallbackEXT, pUserData: pointer = nil): VkDebugReportCallbackCreateInfoEXT = @@ -14832,30 +14832,30 @@ proc newVkDebugReportCallbackCreateInfoEXT*(sType: VkStructureType = VkStructure pUserData: pUserData, ) -proc newVkValidationFlagsEXT*(sType: VkStructureType = VkStructureType.ValidationFlagsEXT, pNext: pointer = nil, disabledValidationCheckCount: uint32, pDisabledValidationChecks: ptr VkValidationCheckEXT): VkValidationFlagsEXT = +proc newVkValidationFlagsEXT*(sType: VkStructureType = VkStructureType.ValidationFlagsEXT, pNext: pointer = nil, disabledValidationChecks: openarray[VkValidationCheckEXT]): VkValidationFlagsEXT = result = VkValidationFlagsEXT( sType: sType, pNext: pNext, - disabledValidationCheckCount: disabledValidationCheckCount, - pDisabledValidationChecks: pDisabledValidationChecks, + disabledValidationCheckCount: len(disabledValidationChecks).uint32, + pDisabledValidationChecks: if len(disabledValidationChecks) == 0: nil else: cast[ptr VkValidationCheckEXT](disabledValidationChecks), ) -proc newVkValidationFeaturesEXT*(sType: VkStructureType = VkStructureType.ValidationFeaturesEXT, pNext: pointer = nil, enabledValidationFeatureCount: uint32, pEnabledValidationFeatures: ptr VkValidationFeatureEnableEXT, disabledValidationFeatureCount: uint32, pDisabledValidationFeatures: ptr VkValidationFeatureDisableEXT): VkValidationFeaturesEXT = +proc newVkValidationFeaturesEXT*(sType: VkStructureType = VkStructureType.ValidationFeaturesEXT, pNext: pointer = nil, enabledValidationFeatures: openarray[VkValidationFeatureEnableEXT], disabledValidationFeatures: openarray[VkValidationFeatureDisableEXT]): VkValidationFeaturesEXT = result = VkValidationFeaturesEXT( sType: sType, pNext: pNext, - enabledValidationFeatureCount: enabledValidationFeatureCount, - pEnabledValidationFeatures: pEnabledValidationFeatures, - disabledValidationFeatureCount: disabledValidationFeatureCount, - pDisabledValidationFeatures: pDisabledValidationFeatures, + enabledValidationFeatureCount: len(enabledValidationFeatures).uint32, + pEnabledValidationFeatures: if len(enabledValidationFeatures) == 0: nil else: cast[ptr VkValidationFeatureEnableEXT](enabledValidationFeatures), + disabledValidationFeatureCount: len(disabledValidationFeatures).uint32, + pDisabledValidationFeatures: if len(disabledValidationFeatures) == 0: nil else: cast[ptr VkValidationFeatureDisableEXT](disabledValidationFeatures), ) -proc newVkLayerSettingsCreateInfoEXT*(sType: VkStructureType = VkStructureType.LayerSettingsCreateInfoEXT, pNext: pointer = nil, settingCount: uint32, pSettings: ptr VkLayerSettingEXT): VkLayerSettingsCreateInfoEXT = +proc newVkLayerSettingsCreateInfoEXT*(sType: VkStructureType = VkStructureType.LayerSettingsCreateInfoEXT, pNext: pointer = nil, settings: openarray[VkLayerSettingEXT]): VkLayerSettingsCreateInfoEXT = result = VkLayerSettingsCreateInfoEXT( sType: sType, pNext: pNext, - settingCount: settingCount, - pSettings: pSettings, + settingCount: len(settings).uint32, + pSettings: if len(settings) == 0: nil else: cast[ptr VkLayerSettingEXT](settings), ) proc newVkLayerSettingEXT*(pLayerName: cstring, pSettingName: cstring, `type`: VkLayerSettingTypeEXT, valueCount: uint32, pValues: pointer = nil): VkLayerSettingEXT = @@ -15010,17 +15010,17 @@ proc newVkPhysicalDeviceExternalMemorySciBufFeaturesNV*(sType: VkStructureType = sciBufExport: sciBufExport, ) -proc newVkWin32KeyedMutexAcquireReleaseInfoNV*(sType: VkStructureType = VkStructureType.Win32KeyedMutexAcquireReleaseInfoNV, pNext: pointer = nil, acquireCount: uint32, pAcquireSyncs: ptr VkDeviceMemory, pAcquireKeys: ptr uint64, pAcquireTimeoutMilliseconds: ptr uint32, releaseCount: uint32, pReleaseSyncs: ptr VkDeviceMemory, pReleaseKeys: ptr uint64): VkWin32KeyedMutexAcquireReleaseInfoNV = +proc newVkWin32KeyedMutexAcquireReleaseInfoNV*(sType: VkStructureType = VkStructureType.Win32KeyedMutexAcquireReleaseInfoNV, pNext: pointer = nil, acquireSyncs: openarray[VkDeviceMemory], acquireKeys: openarray[uint64], acquireTimeoutMilliseconds: openarray[uint32], releaseSyncs: openarray[VkDeviceMemory], releaseKeys: openarray[uint64]): VkWin32KeyedMutexAcquireReleaseInfoNV = result = VkWin32KeyedMutexAcquireReleaseInfoNV( sType: sType, pNext: pNext, - acquireCount: acquireCount, - pAcquireSyncs: pAcquireSyncs, - pAcquireKeys: pAcquireKeys, - pAcquireTimeoutMilliseconds: pAcquireTimeoutMilliseconds, - releaseCount: releaseCount, - pReleaseSyncs: pReleaseSyncs, - pReleaseKeys: pReleaseKeys, + acquireCount: len(acquireSyncs).uint32, + pAcquireSyncs: if len(acquireSyncs) == 0: nil else: cast[ptr VkDeviceMemory](acquireSyncs), + pAcquireKeys: if len(acquireKeys) == 0: nil else: cast[ptr uint64](acquireKeys), + pAcquireTimeoutMilliseconds: if len(acquireTimeoutMilliseconds) == 0: nil else: cast[ptr uint32](acquireTimeoutMilliseconds), + releaseCount: len(releaseSyncs).uint32, + pReleaseSyncs: if len(releaseSyncs) == 0: nil else: cast[ptr VkDeviceMemory](releaseSyncs), + pReleaseKeys: if len(releaseKeys) == 0: nil else: cast[ptr uint64](releaseKeys), ) proc newVkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceDeviceGeneratedCommandsFeaturesNV, pNext: pointer = nil, deviceGeneratedCommands: VkBool32): VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV = @@ -15082,24 +15082,24 @@ proc newVkPhysicalDeviceMultiDrawPropertiesEXT*(sType: VkStructureType = VkStruc maxMultiDrawCount: maxMultiDrawCount, ) -proc newVkGraphicsShaderGroupCreateInfoNV*(sType: VkStructureType = VkStructureType.GraphicsShaderGroupCreateInfoNV, pNext: pointer = nil, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, pVertexInputState: ptr VkPipelineVertexInputStateCreateInfo, pTessellationState: ptr VkPipelineTessellationStateCreateInfo): VkGraphicsShaderGroupCreateInfoNV = +proc newVkGraphicsShaderGroupCreateInfoNV*(sType: VkStructureType = VkStructureType.GraphicsShaderGroupCreateInfoNV, pNext: pointer = nil, stages: openarray[VkPipelineShaderStageCreateInfo], pVertexInputState: ptr VkPipelineVertexInputStateCreateInfo, pTessellationState: ptr VkPipelineTessellationStateCreateInfo): VkGraphicsShaderGroupCreateInfoNV = result = VkGraphicsShaderGroupCreateInfoNV( sType: sType, pNext: pNext, - stageCount: stageCount, - pStages: pStages, + stageCount: len(stages).uint32, + pStages: if len(stages) == 0: nil else: cast[ptr VkPipelineShaderStageCreateInfo](stages), pVertexInputState: pVertexInputState, pTessellationState: pTessellationState, ) -proc newVkGraphicsPipelineShaderGroupsCreateInfoNV*(sType: VkStructureType = VkStructureType.GraphicsPipelineShaderGroupsCreateInfoNV, pNext: pointer = nil, groupCount: uint32, pGroups: ptr VkGraphicsShaderGroupCreateInfoNV, pipelineCount: uint32, pPipelines: ptr VkPipeline): VkGraphicsPipelineShaderGroupsCreateInfoNV = +proc newVkGraphicsPipelineShaderGroupsCreateInfoNV*(sType: VkStructureType = VkStructureType.GraphicsPipelineShaderGroupsCreateInfoNV, pNext: pointer = nil, groups: openarray[VkGraphicsShaderGroupCreateInfoNV], pipelines: openarray[VkPipeline]): VkGraphicsPipelineShaderGroupsCreateInfoNV = result = VkGraphicsPipelineShaderGroupsCreateInfoNV( sType: sType, pNext: pNext, - groupCount: groupCount, - pGroups: pGroups, - pipelineCount: pipelineCount, - pPipelines: pPipelines, + groupCount: len(groups).uint32, + pGroups: if len(groups) == 0: nil else: cast[ptr VkGraphicsShaderGroupCreateInfoNV](groups), + pipelineCount: len(pipelines).uint32, + pPipelines: if len(pipelines) == 0: nil else: cast[ptr VkPipeline](pipelines), ) proc newVkBindShaderGroupIndirectCommandNV*(groupIndex: uint32): VkBindShaderGroupIndirectCommandNV = @@ -15132,7 +15132,7 @@ proc newVkIndirectCommandsStreamNV*(buffer: VkBuffer, offset: VkDeviceSize): VkI offset: offset, ) -proc newVkIndirectCommandsLayoutTokenNV*(sType: VkStructureType = VkStructureType.IndirectCommandsLayoutTokenNV, pNext: pointer = nil, tokenType: VkIndirectCommandsTokenTypeNV, stream: uint32, offset: uint32, vertexBindingUnit: uint32, vertexDynamicStride: VkBool32, pushconstantPipelineLayout: VkPipelineLayout, pushconstantShaderStageFlags: VkShaderStageFlags, pushconstantOffset: uint32, pushconstantSize: uint32, indirectStateFlags: VkIndirectStateFlagsNV, indexTypeCount: uint32, pIndexTypes: ptr VkIndexType, pIndexTypeValues: ptr uint32): VkIndirectCommandsLayoutTokenNV = +proc newVkIndirectCommandsLayoutTokenNV*(sType: VkStructureType = VkStructureType.IndirectCommandsLayoutTokenNV, pNext: pointer = nil, tokenType: VkIndirectCommandsTokenTypeNV, stream: uint32, offset: uint32, vertexBindingUnit: uint32, vertexDynamicStride: VkBool32, pushconstantPipelineLayout: VkPipelineLayout, pushconstantShaderStageFlags: VkShaderStageFlags, pushconstantOffset: uint32, pushconstantSize: uint32, indirectStateFlags: VkIndirectStateFlagsNV, indexTypes: openarray[VkIndexType], indexTypeValues: openarray[uint32]): VkIndirectCommandsLayoutTokenNV = result = VkIndirectCommandsLayoutTokenNV( sType: sType, pNext: pNext, @@ -15146,32 +15146,32 @@ proc newVkIndirectCommandsLayoutTokenNV*(sType: VkStructureType = VkStructureTyp pushconstantOffset: pushconstantOffset, pushconstantSize: pushconstantSize, indirectStateFlags: indirectStateFlags, - indexTypeCount: indexTypeCount, - pIndexTypes: pIndexTypes, - pIndexTypeValues: pIndexTypeValues, + indexTypeCount: len(indexTypes).uint32, + pIndexTypes: if len(indexTypes) == 0: nil else: cast[ptr VkIndexType](indexTypes), + pIndexTypeValues: if len(indexTypeValues) == 0: nil else: cast[ptr uint32](indexTypeValues), ) -proc newVkIndirectCommandsLayoutCreateInfoNV*(sType: VkStructureType = VkStructureType.IndirectCommandsLayoutCreateInfoNV, pNext: pointer = nil, flags: VkIndirectCommandsLayoutUsageFlagsNV = 0.VkIndirectCommandsLayoutUsageFlagsNV, pipelineBindPoint: VkPipelineBindPoint, tokenCount: uint32, pTokens: ptr VkIndirectCommandsLayoutTokenNV, streamCount: uint32, pStreamStrides: ptr uint32): VkIndirectCommandsLayoutCreateInfoNV = +proc newVkIndirectCommandsLayoutCreateInfoNV*(sType: VkStructureType = VkStructureType.IndirectCommandsLayoutCreateInfoNV, pNext: pointer = nil, flags: VkIndirectCommandsLayoutUsageFlagsNV = 0.VkIndirectCommandsLayoutUsageFlagsNV, pipelineBindPoint: VkPipelineBindPoint, tokens: openarray[VkIndirectCommandsLayoutTokenNV], streamStrides: openarray[uint32]): VkIndirectCommandsLayoutCreateInfoNV = result = VkIndirectCommandsLayoutCreateInfoNV( sType: sType, pNext: pNext, flags: flags, pipelineBindPoint: pipelineBindPoint, - tokenCount: tokenCount, - pTokens: pTokens, - streamCount: streamCount, - pStreamStrides: pStreamStrides, + tokenCount: len(tokens).uint32, + pTokens: if len(tokens) == 0: nil else: cast[ptr VkIndirectCommandsLayoutTokenNV](tokens), + streamCount: len(streamStrides).uint32, + pStreamStrides: if len(streamStrides) == 0: nil else: cast[ptr uint32](streamStrides), ) -proc newVkGeneratedCommandsInfoNV*(sType: VkStructureType = VkStructureType.GeneratedCommandsInfoNV, pNext: pointer = nil, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline, indirectCommandsLayout: VkIndirectCommandsLayoutNV, streamCount: uint32, pStreams: ptr VkIndirectCommandsStreamNV, sequencesCount: uint32, preprocessBuffer: VkBuffer, preprocessOffset: VkDeviceSize, preprocessSize: VkDeviceSize, sequencesCountBuffer: VkBuffer, sequencesCountOffset: VkDeviceSize, sequencesIndexBuffer: VkBuffer, sequencesIndexOffset: VkDeviceSize): VkGeneratedCommandsInfoNV = +proc newVkGeneratedCommandsInfoNV*(sType: VkStructureType = VkStructureType.GeneratedCommandsInfoNV, pNext: pointer = nil, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline, indirectCommandsLayout: VkIndirectCommandsLayoutNV, streams: openarray[VkIndirectCommandsStreamNV], sequencesCount: uint32, preprocessBuffer: VkBuffer, preprocessOffset: VkDeviceSize, preprocessSize: VkDeviceSize, sequencesCountBuffer: VkBuffer, sequencesCountOffset: VkDeviceSize, sequencesIndexBuffer: VkBuffer, sequencesIndexOffset: VkDeviceSize): VkGeneratedCommandsInfoNV = result = VkGeneratedCommandsInfoNV( sType: sType, pNext: pNext, pipelineBindPoint: pipelineBindPoint, pipeline: pipeline, indirectCommandsLayout: indirectCommandsLayout, - streamCount: streamCount, - pStreams: pStreams, + streamCount: len(streams).uint32, + pStreams: if len(streams) == 0: nil else: cast[ptr VkIndirectCommandsStreamNV](streams), sequencesCount: sequencesCount, preprocessBuffer: preprocessBuffer, preprocessOffset: preprocessOffset, @@ -15301,18 +15301,18 @@ proc newVkPhysicalDeviceDriverProperties*(sType: VkStructureType = VkStructureTy conformanceVersion: conformanceVersion, ) -proc newVkPresentRegionsKHR*(sType: VkStructureType = VkStructureType.PresentRegionsKHR, pNext: pointer = nil, swapchainCount: uint32, pRegions: ptr VkPresentRegionKHR): VkPresentRegionsKHR = +proc newVkPresentRegionsKHR*(sType: VkStructureType = VkStructureType.PresentRegionsKHR, pNext: pointer = nil, regions: openarray[VkPresentRegionKHR]): VkPresentRegionsKHR = result = VkPresentRegionsKHR( sType: sType, pNext: pNext, - swapchainCount: swapchainCount, - pRegions: pRegions, + swapchainCount: len(regions).uint32, + pRegions: if len(regions) == 0: nil else: cast[ptr VkPresentRegionKHR](regions), ) -proc newVkPresentRegionKHR*(rectangleCount: uint32, pRectangles: ptr VkRectLayerKHR): VkPresentRegionKHR = +proc newVkPresentRegionKHR*(rectangles: openarray[VkRectLayerKHR]): VkPresentRegionKHR = result = VkPresentRegionKHR( - rectangleCount: rectangleCount, - pRectangles: pRectangles, + rectangleCount: len(rectangles).uint32, + pRectangles: if len(rectangles) == 0: nil else: cast[ptr VkRectLayerKHR](rectangles), ) proc newVkRectLayerKHR*(offset: VkOffset2D, extent: VkExtent2D, layer: uint32): VkRectLayerKHR = @@ -15478,17 +15478,17 @@ proc newVkMemoryGetFdInfoKHR*(sType: VkStructureType = VkStructureType.MemoryGet handleType: handleType, ) -proc newVkWin32KeyedMutexAcquireReleaseInfoKHR*(sType: VkStructureType = VkStructureType.Win32KeyedMutexAcquireReleaseInfoKHR, pNext: pointer = nil, acquireCount: uint32, pAcquireSyncs: ptr VkDeviceMemory, pAcquireKeys: ptr uint64, pAcquireTimeouts: ptr uint32, releaseCount: uint32, pReleaseSyncs: ptr VkDeviceMemory, pReleaseKeys: ptr uint64): VkWin32KeyedMutexAcquireReleaseInfoKHR = +proc newVkWin32KeyedMutexAcquireReleaseInfoKHR*(sType: VkStructureType = VkStructureType.Win32KeyedMutexAcquireReleaseInfoKHR, pNext: pointer = nil, acquireSyncs: openarray[VkDeviceMemory], acquireKeys: openarray[uint64], acquireTimeouts: openarray[uint32], releaseSyncs: openarray[VkDeviceMemory], releaseKeys: openarray[uint64]): VkWin32KeyedMutexAcquireReleaseInfoKHR = result = VkWin32KeyedMutexAcquireReleaseInfoKHR( sType: sType, pNext: pNext, - acquireCount: acquireCount, - pAcquireSyncs: pAcquireSyncs, - pAcquireKeys: pAcquireKeys, - pAcquireTimeouts: pAcquireTimeouts, - releaseCount: releaseCount, - pReleaseSyncs: pReleaseSyncs, - pReleaseKeys: pReleaseKeys, + acquireCount: len(acquireSyncs).uint32, + pAcquireSyncs: if len(acquireSyncs) == 0: nil else: cast[ptr VkDeviceMemory](acquireSyncs), + pAcquireKeys: if len(acquireKeys) == 0: nil else: cast[ptr uint64](acquireKeys), + pAcquireTimeouts: if len(acquireTimeouts) == 0: nil else: cast[ptr uint32](acquireTimeouts), + releaseCount: len(releaseSyncs).uint32, + pReleaseSyncs: if len(releaseSyncs) == 0: nil else: cast[ptr VkDeviceMemory](releaseSyncs), + pReleaseKeys: if len(releaseKeys) == 0: nil else: cast[ptr uint64](releaseKeys), ) proc newVkPhysicalDeviceExternalSemaphoreInfo*(sType: VkStructureType = VkStructureType.PhysicalDeviceExternalSemaphoreInfo, pNext: pointer = nil, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkPhysicalDeviceExternalSemaphoreInfo = @@ -15534,14 +15534,14 @@ proc newVkExportSemaphoreWin32HandleInfoKHR*(sType: VkStructureType = VkStructur name: name, ) -proc newVkD3D12FenceSubmitInfoKHR*(sType: VkStructureType = VkStructureType.D3D12FenceSubmitInfoKHR, pNext: pointer = nil, waitSemaphoreValuesCount: uint32, pWaitSemaphoreValues: ptr uint64, signalSemaphoreValuesCount: uint32, pSignalSemaphoreValues: ptr uint64): VkD3D12FenceSubmitInfoKHR = +proc newVkD3D12FenceSubmitInfoKHR*(sType: VkStructureType = VkStructureType.D3D12FenceSubmitInfoKHR, pNext: pointer = nil, waitSemaphoreValues: openarray[uint64], signalSemaphoreValues: openarray[uint64]): VkD3D12FenceSubmitInfoKHR = result = VkD3D12FenceSubmitInfoKHR( sType: sType, pNext: pNext, - waitSemaphoreValuesCount: waitSemaphoreValuesCount, - pWaitSemaphoreValues: pWaitSemaphoreValues, - signalSemaphoreValuesCount: signalSemaphoreValuesCount, - pSignalSemaphoreValues: pSignalSemaphoreValues, + waitSemaphoreValuesCount: len(waitSemaphoreValues).uint32, + pWaitSemaphoreValues: if len(waitSemaphoreValues) == 0: nil else: cast[ptr uint64](waitSemaphoreValues), + signalSemaphoreValuesCount: len(signalSemaphoreValues).uint32, + pSignalSemaphoreValues: if len(signalSemaphoreValues) == 0: nil else: cast[ptr uint64](signalSemaphoreValues), ) proc newVkSemaphoreGetWin32HandleInfoKHR*(sType: VkStructureType = VkStructureType.SemaphoreGetWin32HandleInfoKHR, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetWin32HandleInfoKHR = @@ -15772,16 +15772,16 @@ proc newVkPhysicalDeviceMultiviewProperties*(sType: VkStructureType = VkStructur maxMultiviewInstanceIndex: maxMultiviewInstanceIndex, ) -proc newVkRenderPassMultiviewCreateInfo*(sType: VkStructureType = VkStructureType.RenderPassMultiviewCreateInfo, pNext: pointer = nil, subpassCount: uint32, pViewMasks: ptr uint32, dependencyCount: uint32, pViewOffsets: ptr int32, correlationMaskCount: uint32, pCorrelationMasks: ptr uint32): VkRenderPassMultiviewCreateInfo = +proc newVkRenderPassMultiviewCreateInfo*(sType: VkStructureType = VkStructureType.RenderPassMultiviewCreateInfo, pNext: pointer = nil, viewMasks: openarray[uint32], viewOffsets: openarray[int32], correlationMasks: openarray[uint32]): VkRenderPassMultiviewCreateInfo = result = VkRenderPassMultiviewCreateInfo( sType: sType, pNext: pNext, - subpassCount: subpassCount, - pViewMasks: pViewMasks, - dependencyCount: dependencyCount, - pViewOffsets: pViewOffsets, - correlationMaskCount: correlationMaskCount, - pCorrelationMasks: pCorrelationMasks, + subpassCount: len(viewMasks).uint32, + pViewMasks: if len(viewMasks) == 0: nil else: cast[ptr uint32](viewMasks), + dependencyCount: len(viewOffsets).uint32, + pViewOffsets: if len(viewOffsets) == 0: nil else: cast[ptr int32](viewOffsets), + correlationMaskCount: len(correlationMasks).uint32, + pCorrelationMasks: if len(correlationMasks) == 0: nil else: cast[ptr uint32](correlationMasks), ) proc newVkSurfaceCapabilities2EXT*(sType: VkStructureType = VkStructureType.SurfaceCapabilities2EXT, pNext: pointer = nil, minImageCount: uint32, maxImageCount: uint32, currentExtent: VkExtent2D, minImageExtent: VkExtent2D, maxImageExtent: VkExtent2D, maxImageArrayLayers: uint32, supportedTransforms: VkSurfaceTransformFlagsKHR, currentTransform: VkSurfaceTransformFlagBitsKHR, supportedCompositeAlpha: VkCompositeAlphaFlagsKHR, supportedUsageFlags: VkImageUsageFlags, supportedSurfaceCounters: VkSurfaceCounterFlagsEXT): VkSurfaceCapabilities2EXT = @@ -15855,12 +15855,12 @@ proc newVkBindBufferMemoryInfo*(sType: VkStructureType = VkStructureType.BindBuf memoryOffset: memoryOffset, ) -proc newVkBindBufferMemoryDeviceGroupInfo*(sType: VkStructureType = VkStructureType.BindBufferMemoryDeviceGroupInfo, pNext: pointer = nil, deviceIndexCount: uint32, pDeviceIndices: ptr uint32): VkBindBufferMemoryDeviceGroupInfo = +proc newVkBindBufferMemoryDeviceGroupInfo*(sType: VkStructureType = VkStructureType.BindBufferMemoryDeviceGroupInfo, pNext: pointer = nil, deviceIndices: openarray[uint32]): VkBindBufferMemoryDeviceGroupInfo = result = VkBindBufferMemoryDeviceGroupInfo( sType: sType, pNext: pNext, - deviceIndexCount: deviceIndexCount, - pDeviceIndices: pDeviceIndices, + deviceIndexCount: len(deviceIndices).uint32, + pDeviceIndices: if len(deviceIndices) == 0: nil else: cast[ptr uint32](deviceIndices), ) proc newVkBindImageMemoryInfo*(sType: VkStructureType = VkStructureType.BindImageMemoryInfo, pNext: pointer = nil, image: VkImage, memory: VkDeviceMemory, memoryOffset: VkDeviceSize): VkBindImageMemoryInfo = @@ -15872,23 +15872,23 @@ proc newVkBindImageMemoryInfo*(sType: VkStructureType = VkStructureType.BindImag memoryOffset: memoryOffset, ) -proc newVkBindImageMemoryDeviceGroupInfo*(sType: VkStructureType = VkStructureType.BindImageMemoryDeviceGroupInfo, pNext: pointer = nil, deviceIndexCount: uint32, pDeviceIndices: ptr uint32, splitInstanceBindRegionCount: uint32, pSplitInstanceBindRegions: ptr VkRect2D): VkBindImageMemoryDeviceGroupInfo = +proc newVkBindImageMemoryDeviceGroupInfo*(sType: VkStructureType = VkStructureType.BindImageMemoryDeviceGroupInfo, pNext: pointer = nil, deviceIndices: openarray[uint32], splitInstanceBindRegions: openarray[VkRect2D]): VkBindImageMemoryDeviceGroupInfo = result = VkBindImageMemoryDeviceGroupInfo( sType: sType, pNext: pNext, - deviceIndexCount: deviceIndexCount, - pDeviceIndices: pDeviceIndices, - splitInstanceBindRegionCount: splitInstanceBindRegionCount, - pSplitInstanceBindRegions: pSplitInstanceBindRegions, + deviceIndexCount: len(deviceIndices).uint32, + pDeviceIndices: if len(deviceIndices) == 0: nil else: cast[ptr uint32](deviceIndices), + splitInstanceBindRegionCount: len(splitInstanceBindRegions).uint32, + pSplitInstanceBindRegions: if len(splitInstanceBindRegions) == 0: nil else: cast[ptr VkRect2D](splitInstanceBindRegions), ) -proc newVkDeviceGroupRenderPassBeginInfo*(sType: VkStructureType = VkStructureType.DeviceGroupRenderPassBeginInfo, pNext: pointer = nil, deviceMask: uint32, deviceRenderAreaCount: uint32, pDeviceRenderAreas: ptr VkRect2D): VkDeviceGroupRenderPassBeginInfo = +proc newVkDeviceGroupRenderPassBeginInfo*(sType: VkStructureType = VkStructureType.DeviceGroupRenderPassBeginInfo, pNext: pointer = nil, deviceMask: uint32, deviceRenderAreas: openarray[VkRect2D]): VkDeviceGroupRenderPassBeginInfo = result = VkDeviceGroupRenderPassBeginInfo( sType: sType, pNext: pNext, deviceMask: deviceMask, - deviceRenderAreaCount: deviceRenderAreaCount, - pDeviceRenderAreas: pDeviceRenderAreas, + deviceRenderAreaCount: len(deviceRenderAreas).uint32, + pDeviceRenderAreas: if len(deviceRenderAreas) == 0: nil else: cast[ptr VkRect2D](deviceRenderAreas), ) proc newVkDeviceGroupCommandBufferBeginInfo*(sType: VkStructureType = VkStructureType.DeviceGroupCommandBufferBeginInfo, pNext: pointer = nil, deviceMask: uint32): VkDeviceGroupCommandBufferBeginInfo = @@ -15898,16 +15898,16 @@ proc newVkDeviceGroupCommandBufferBeginInfo*(sType: VkStructureType = VkStructur deviceMask: deviceMask, ) -proc newVkDeviceGroupSubmitInfo*(sType: VkStructureType = VkStructureType.DeviceGroupSubmitInfo, pNext: pointer = nil, waitSemaphoreCount: uint32, pWaitSemaphoreDeviceIndices: ptr uint32, commandBufferCount: uint32, pCommandBufferDeviceMasks: ptr uint32, signalSemaphoreCount: uint32, pSignalSemaphoreDeviceIndices: ptr uint32): VkDeviceGroupSubmitInfo = +proc newVkDeviceGroupSubmitInfo*(sType: VkStructureType = VkStructureType.DeviceGroupSubmitInfo, pNext: pointer = nil, waitSemaphoreDeviceIndices: openarray[uint32], commandBufferDeviceMasks: openarray[uint32], signalSemaphoreDeviceIndices: openarray[uint32]): VkDeviceGroupSubmitInfo = result = VkDeviceGroupSubmitInfo( sType: sType, pNext: pNext, - waitSemaphoreCount: waitSemaphoreCount, - pWaitSemaphoreDeviceIndices: pWaitSemaphoreDeviceIndices, - commandBufferCount: commandBufferCount, - pCommandBufferDeviceMasks: pCommandBufferDeviceMasks, - signalSemaphoreCount: signalSemaphoreCount, - pSignalSemaphoreDeviceIndices: pSignalSemaphoreDeviceIndices, + waitSemaphoreCount: len(waitSemaphoreDeviceIndices).uint32, + pWaitSemaphoreDeviceIndices: if len(waitSemaphoreDeviceIndices) == 0: nil else: cast[ptr uint32](waitSemaphoreDeviceIndices), + commandBufferCount: len(commandBufferDeviceMasks).uint32, + pCommandBufferDeviceMasks: if len(commandBufferDeviceMasks) == 0: nil else: cast[ptr uint32](commandBufferDeviceMasks), + signalSemaphoreCount: len(signalSemaphoreDeviceIndices).uint32, + pSignalSemaphoreDeviceIndices: if len(signalSemaphoreDeviceIndices) == 0: nil else: cast[ptr uint32](signalSemaphoreDeviceIndices), ) proc newVkDeviceGroupBindSparseInfo*(sType: VkStructureType = VkStructureType.DeviceGroupBindSparseInfo, pNext: pointer = nil, resourceDeviceIndex: uint32, memoryDeviceIndex: uint32): VkDeviceGroupBindSparseInfo = @@ -15952,21 +15952,21 @@ proc newVkAcquireNextImageInfoKHR*(sType: VkStructureType = VkStructureType.Acqu deviceMask: deviceMask, ) -proc newVkDeviceGroupPresentInfoKHR*(sType: VkStructureType = VkStructureType.DeviceGroupPresentInfoKHR, pNext: pointer = nil, swapchainCount: uint32, pDeviceMasks: ptr uint32, mode: VkDeviceGroupPresentModeFlagBitsKHR): VkDeviceGroupPresentInfoKHR = +proc newVkDeviceGroupPresentInfoKHR*(sType: VkStructureType = VkStructureType.DeviceGroupPresentInfoKHR, pNext: pointer = nil, deviceMasks: openarray[uint32], mode: VkDeviceGroupPresentModeFlagBitsKHR): VkDeviceGroupPresentInfoKHR = result = VkDeviceGroupPresentInfoKHR( sType: sType, pNext: pNext, - swapchainCount: swapchainCount, - pDeviceMasks: pDeviceMasks, + swapchainCount: len(deviceMasks).uint32, + pDeviceMasks: if len(deviceMasks) == 0: nil else: cast[ptr uint32](deviceMasks), mode: mode, ) -proc newVkDeviceGroupDeviceCreateInfo*(sType: VkStructureType = VkStructureType.DeviceGroupDeviceCreateInfo, pNext: pointer = nil, physicalDeviceCount: uint32, pPhysicalDevices: ptr VkPhysicalDevice): VkDeviceGroupDeviceCreateInfo = +proc newVkDeviceGroupDeviceCreateInfo*(sType: VkStructureType = VkStructureType.DeviceGroupDeviceCreateInfo, pNext: pointer = nil, physicalDevices: openarray[VkPhysicalDevice]): VkDeviceGroupDeviceCreateInfo = result = VkDeviceGroupDeviceCreateInfo( sType: sType, pNext: pNext, - physicalDeviceCount: physicalDeviceCount, - pPhysicalDevices: pPhysicalDevices, + physicalDeviceCount: len(physicalDevices).uint32, + pPhysicalDevices: if len(physicalDevices) == 0: nil else: cast[ptr VkPhysicalDevice](physicalDevices), ) proc newVkDeviceGroupSwapchainCreateInfoKHR*(sType: VkStructureType = VkStructureType.DeviceGroupSwapchainCreateInfoKHR, pNext: pointer = nil, modes: VkDeviceGroupPresentModeFlagsKHR): VkDeviceGroupSwapchainCreateInfoKHR = @@ -15986,13 +15986,13 @@ proc newVkDescriptorUpdateTemplateEntry*(dstBinding: uint32, dstArrayElement: ui stride: stride, ) -proc newVkDescriptorUpdateTemplateCreateInfo*(sType: VkStructureType = VkStructureType.DescriptorUpdateTemplateCreateInfo, pNext: pointer = nil, flags: VkDescriptorUpdateTemplateCreateFlags = 0.VkDescriptorUpdateTemplateCreateFlags, descriptorUpdateEntryCount: uint32, pDescriptorUpdateEntries: ptr VkDescriptorUpdateTemplateEntry, templateType: VkDescriptorUpdateTemplateType, descriptorSetLayout: VkDescriptorSetLayout, pipelineBindPoint: VkPipelineBindPoint, pipelineLayout: VkPipelineLayout, set: uint32): VkDescriptorUpdateTemplateCreateInfo = +proc newVkDescriptorUpdateTemplateCreateInfo*(sType: VkStructureType = VkStructureType.DescriptorUpdateTemplateCreateInfo, pNext: pointer = nil, flags: VkDescriptorUpdateTemplateCreateFlags = 0.VkDescriptorUpdateTemplateCreateFlags, descriptorUpdateEntries: openarray[VkDescriptorUpdateTemplateEntry], templateType: VkDescriptorUpdateTemplateType, descriptorSetLayout: VkDescriptorSetLayout, pipelineBindPoint: VkPipelineBindPoint, pipelineLayout: VkPipelineLayout, set: uint32): VkDescriptorUpdateTemplateCreateInfo = result = VkDescriptorUpdateTemplateCreateInfo( sType: sType, pNext: pNext, flags: flags, - descriptorUpdateEntryCount: descriptorUpdateEntryCount, - pDescriptorUpdateEntries: pDescriptorUpdateEntries, + descriptorUpdateEntryCount: len(descriptorUpdateEntries).uint32, + pDescriptorUpdateEntries: if len(descriptorUpdateEntries) == 0: nil else: cast[ptr VkDescriptorUpdateTemplateEntry](descriptorUpdateEntries), templateType: templateType, descriptorSetLayout: descriptorSetLayout, pipelineBindPoint: pipelineBindPoint, @@ -16013,12 +16013,12 @@ proc newVkPhysicalDevicePresentIdFeaturesKHR*(sType: VkStructureType = VkStructu presentId: presentId, ) -proc newVkPresentIdKHR*(sType: VkStructureType = VkStructureType.PresentIdKHR, pNext: pointer = nil, swapchainCount: uint32, pPresentIds: ptr uint64): VkPresentIdKHR = +proc newVkPresentIdKHR*(sType: VkStructureType = VkStructureType.PresentIdKHR, pNext: pointer = nil, presentIds: openarray[uint64]): VkPresentIdKHR = result = VkPresentIdKHR( sType: sType, pNext: pNext, - swapchainCount: swapchainCount, - pPresentIds: pPresentIds, + swapchainCount: len(presentIds).uint32, + pPresentIds: if len(presentIds) == 0: nil else: cast[ptr uint64](presentIds), ) proc newVkPhysicalDevicePresentWaitFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDevicePresentWaitFeaturesKHR, pNext: pointer = nil, presentWait: VkBool32): VkPhysicalDevicePresentWaitFeaturesKHR = @@ -16070,12 +16070,12 @@ proc newVkPastPresentationTimingGOOGLE*(presentID: uint32, desiredPresentTime: u presentMargin: presentMargin, ) -proc newVkPresentTimesInfoGOOGLE*(sType: VkStructureType = VkStructureType.PresentTimesInfoGOOGLE, pNext: pointer = nil, swapchainCount: uint32, pTimes: ptr VkPresentTimeGOOGLE): VkPresentTimesInfoGOOGLE = +proc newVkPresentTimesInfoGOOGLE*(sType: VkStructureType = VkStructureType.PresentTimesInfoGOOGLE, pNext: pointer = nil, times: openarray[VkPresentTimeGOOGLE]): VkPresentTimesInfoGOOGLE = result = VkPresentTimesInfoGOOGLE( sType: sType, pNext: pNext, - swapchainCount: swapchainCount, - pTimes: pTimes, + swapchainCount: len(times).uint32, + pTimes: if len(times) == 0: nil else: cast[ptr VkPresentTimeGOOGLE](times), ) proc newVkPresentTimeGOOGLE*(presentID: uint32, desiredPresentTime: uint64): VkPresentTimeGOOGLE = @@ -16114,13 +16114,13 @@ proc newVkViewportWScalingNV*(xcoeff: float32, ycoeff: float32): VkViewportWScal ycoeff: ycoeff, ) -proc newVkPipelineViewportWScalingStateCreateInfoNV*(sType: VkStructureType = VkStructureType.PipelineViewportWScalingStateCreateInfoNV, pNext: pointer = nil, viewportWScalingEnable: VkBool32, viewportCount: uint32, pViewportWScalings: ptr VkViewportWScalingNV): VkPipelineViewportWScalingStateCreateInfoNV = +proc newVkPipelineViewportWScalingStateCreateInfoNV*(sType: VkStructureType = VkStructureType.PipelineViewportWScalingStateCreateInfoNV, pNext: pointer = nil, viewportWScalingEnable: VkBool32, viewportWScalings: openarray[VkViewportWScalingNV]): VkPipelineViewportWScalingStateCreateInfoNV = result = VkPipelineViewportWScalingStateCreateInfoNV( sType: sType, pNext: pNext, viewportWScalingEnable: viewportWScalingEnable, - viewportCount: viewportCount, - pViewportWScalings: pViewportWScalings, + viewportCount: len(viewportWScalings).uint32, + pViewportWScalings: if len(viewportWScalings) == 0: nil else: cast[ptr VkViewportWScalingNV](viewportWScalings), ) proc newVkViewportSwizzleNV*(x: VkViewportCoordinateSwizzleNV, y: VkViewportCoordinateSwizzleNV, z: VkViewportCoordinateSwizzleNV, w: VkViewportCoordinateSwizzleNV): VkViewportSwizzleNV = @@ -16131,13 +16131,13 @@ proc newVkViewportSwizzleNV*(x: VkViewportCoordinateSwizzleNV, y: VkViewportCoor w: w, ) -proc newVkPipelineViewportSwizzleStateCreateInfoNV*(sType: VkStructureType = VkStructureType.PipelineViewportSwizzleStateCreateInfoNV, pNext: pointer = nil, flags: VkPipelineViewportSwizzleStateCreateFlagsNV = 0.VkPipelineViewportSwizzleStateCreateFlagsNV, viewportCount: uint32, pViewportSwizzles: ptr VkViewportSwizzleNV): VkPipelineViewportSwizzleStateCreateInfoNV = +proc newVkPipelineViewportSwizzleStateCreateInfoNV*(sType: VkStructureType = VkStructureType.PipelineViewportSwizzleStateCreateInfoNV, pNext: pointer = nil, flags: VkPipelineViewportSwizzleStateCreateFlagsNV = 0.VkPipelineViewportSwizzleStateCreateFlagsNV, viewportSwizzles: openarray[VkViewportSwizzleNV]): VkPipelineViewportSwizzleStateCreateInfoNV = result = VkPipelineViewportSwizzleStateCreateInfoNV( sType: sType, pNext: pNext, flags: flags, - viewportCount: viewportCount, - pViewportSwizzles: pViewportSwizzles, + viewportCount: len(viewportSwizzles).uint32, + pViewportSwizzles: if len(viewportSwizzles) == 0: nil else: cast[ptr VkViewportSwizzleNV](viewportSwizzles), ) proc newVkPhysicalDeviceDiscardRectanglePropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceDiscardRectanglePropertiesEXT, pNext: pointer = nil, maxDiscardRectangles: uint32): VkPhysicalDeviceDiscardRectanglePropertiesEXT = @@ -16147,14 +16147,14 @@ proc newVkPhysicalDeviceDiscardRectanglePropertiesEXT*(sType: VkStructureType = maxDiscardRectangles: maxDiscardRectangles, ) -proc newVkPipelineDiscardRectangleStateCreateInfoEXT*(sType: VkStructureType = VkStructureType.PipelineDiscardRectangleStateCreateInfoEXT, pNext: pointer = nil, flags: VkPipelineDiscardRectangleStateCreateFlagsEXT = 0.VkPipelineDiscardRectangleStateCreateFlagsEXT, discardRectangleMode: VkDiscardRectangleModeEXT, discardRectangleCount: uint32, pDiscardRectangles: ptr VkRect2D): VkPipelineDiscardRectangleStateCreateInfoEXT = +proc newVkPipelineDiscardRectangleStateCreateInfoEXT*(sType: VkStructureType = VkStructureType.PipelineDiscardRectangleStateCreateInfoEXT, pNext: pointer = nil, flags: VkPipelineDiscardRectangleStateCreateFlagsEXT = 0.VkPipelineDiscardRectangleStateCreateFlagsEXT, discardRectangleMode: VkDiscardRectangleModeEXT, discardRectangles: openarray[VkRect2D]): VkPipelineDiscardRectangleStateCreateInfoEXT = result = VkPipelineDiscardRectangleStateCreateInfoEXT( sType: sType, pNext: pNext, flags: flags, discardRectangleMode: discardRectangleMode, - discardRectangleCount: discardRectangleCount, - pDiscardRectangles: pDiscardRectangles, + discardRectangleCount: len(discardRectangles).uint32, + pDiscardRectangles: if len(discardRectangles) == 0: nil else: cast[ptr VkRect2D](discardRectangles), ) proc newVkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX*(sType: VkStructureType = VkStructureType.PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX, pNext: pointer = nil, perViewPositionAllComponents: VkBool32): VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX = @@ -16171,12 +16171,12 @@ proc newVkInputAttachmentAspectReference*(subpass: uint32, inputAttachmentIndex: aspectMask: aspectMask, ) -proc newVkRenderPassInputAttachmentAspectCreateInfo*(sType: VkStructureType = VkStructureType.RenderPassInputAttachmentAspectCreateInfo, pNext: pointer = nil, aspectReferenceCount: uint32, pAspectReferences: ptr VkInputAttachmentAspectReference): VkRenderPassInputAttachmentAspectCreateInfo = +proc newVkRenderPassInputAttachmentAspectCreateInfo*(sType: VkStructureType = VkStructureType.RenderPassInputAttachmentAspectCreateInfo, pNext: pointer = nil, aspectReferences: openarray[VkInputAttachmentAspectReference]): VkRenderPassInputAttachmentAspectCreateInfo = result = VkRenderPassInputAttachmentAspectCreateInfo( sType: sType, pNext: pNext, - aspectReferenceCount: aspectReferenceCount, - pAspectReferences: pAspectReferences, + aspectReferenceCount: len(aspectReferences).uint32, + pAspectReferences: if len(aspectReferences) == 0: nil else: cast[ptr VkInputAttachmentAspectReference](aspectReferences), ) proc newVkPhysicalDeviceSurfaceInfo2KHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceSurfaceInfo2KHR, pNext: pointer = nil, surface: VkSurfaceKHR): VkPhysicalDeviceSurfaceInfo2KHR = @@ -16483,14 +16483,14 @@ proc newVkSampleLocationEXT*(x: float32, y: float32): VkSampleLocationEXT = y: y, ) -proc newVkSampleLocationsInfoEXT*(sType: VkStructureType = VkStructureType.SampleLocationsInfoEXT, pNext: pointer = nil, sampleLocationsPerPixel: VkSampleCountFlagBits, sampleLocationGridSize: VkExtent2D, sampleLocationsCount: uint32, pSampleLocations: ptr VkSampleLocationEXT): VkSampleLocationsInfoEXT = +proc newVkSampleLocationsInfoEXT*(sType: VkStructureType = VkStructureType.SampleLocationsInfoEXT, pNext: pointer = nil, sampleLocationsPerPixel: VkSampleCountFlagBits, sampleLocationGridSize: VkExtent2D, sampleLocations: openarray[VkSampleLocationEXT]): VkSampleLocationsInfoEXT = result = VkSampleLocationsInfoEXT( sType: sType, pNext: pNext, sampleLocationsPerPixel: sampleLocationsPerPixel, sampleLocationGridSize: sampleLocationGridSize, - sampleLocationsCount: sampleLocationsCount, - pSampleLocations: pSampleLocations, + sampleLocationsCount: len(sampleLocations).uint32, + pSampleLocations: if len(sampleLocations) == 0: nil else: cast[ptr VkSampleLocationEXT](sampleLocations), ) proc newVkAttachmentSampleLocationsEXT*(attachmentIndex: uint32, sampleLocationsInfo: VkSampleLocationsInfoEXT): VkAttachmentSampleLocationsEXT = @@ -16505,14 +16505,14 @@ proc newVkSubpassSampleLocationsEXT*(subpassIndex: uint32, sampleLocationsInfo: sampleLocationsInfo: sampleLocationsInfo, ) -proc newVkRenderPassSampleLocationsBeginInfoEXT*(sType: VkStructureType = VkStructureType.RenderPassSampleLocationsBeginInfoEXT, pNext: pointer = nil, attachmentInitialSampleLocationsCount: uint32, pAttachmentInitialSampleLocations: ptr VkAttachmentSampleLocationsEXT, postSubpassSampleLocationsCount: uint32, pPostSubpassSampleLocations: ptr VkSubpassSampleLocationsEXT): VkRenderPassSampleLocationsBeginInfoEXT = +proc newVkRenderPassSampleLocationsBeginInfoEXT*(sType: VkStructureType = VkStructureType.RenderPassSampleLocationsBeginInfoEXT, pNext: pointer = nil, attachmentInitialSampleLocations: openarray[VkAttachmentSampleLocationsEXT], postSubpassSampleLocations: openarray[VkSubpassSampleLocationsEXT]): VkRenderPassSampleLocationsBeginInfoEXT = result = VkRenderPassSampleLocationsBeginInfoEXT( sType: sType, pNext: pNext, - attachmentInitialSampleLocationsCount: attachmentInitialSampleLocationsCount, - pAttachmentInitialSampleLocations: pAttachmentInitialSampleLocations, - postSubpassSampleLocationsCount: postSubpassSampleLocationsCount, - pPostSubpassSampleLocations: pPostSubpassSampleLocations, + attachmentInitialSampleLocationsCount: len(attachmentInitialSampleLocations).uint32, + pAttachmentInitialSampleLocations: if len(attachmentInitialSampleLocations) == 0: nil else: cast[ptr VkAttachmentSampleLocationsEXT](attachmentInitialSampleLocations), + postSubpassSampleLocationsCount: len(postSubpassSampleLocations).uint32, + pPostSubpassSampleLocations: if len(postSubpassSampleLocations) == 0: nil else: cast[ptr VkSubpassSampleLocationsEXT](postSubpassSampleLocations), ) proc newVkPipelineSampleLocationsStateCreateInfoEXT*(sType: VkStructureType = VkStructureType.PipelineSampleLocationsStateCreateInfoEXT, pNext: pointer = nil, sampleLocationsEnable: VkBool32, sampleLocationsInfo: VkSampleLocationsInfoEXT): VkPipelineSampleLocationsStateCreateInfoEXT = @@ -16628,12 +16628,12 @@ proc newVkPipelineCoverageModulationStateCreateInfoNV*(sType: VkStructureType = pCoverageModulationTable: pCoverageModulationTable, ) -proc newVkImageFormatListCreateInfo*(sType: VkStructureType = VkStructureType.ImageFormatListCreateInfo, pNext: pointer = nil, viewFormatCount: uint32, pViewFormats: ptr VkFormat): VkImageFormatListCreateInfo = +proc newVkImageFormatListCreateInfo*(sType: VkStructureType = VkStructureType.ImageFormatListCreateInfo, pNext: pointer = nil, viewFormats: openarray[VkFormat]): VkImageFormatListCreateInfo = result = VkImageFormatListCreateInfo( sType: sType, pNext: pNext, - viewFormatCount: viewFormatCount, - pViewFormats: pViewFormats, + viewFormatCount: len(viewFormats).uint32, + pViewFormats: if len(viewFormats) == 0: nil else: cast[ptr VkFormat](viewFormats), ) proc newVkValidationCacheCreateInfoEXT*(sType: VkStructureType = VkStructureType.ValidationCacheCreateInfoEXT, pNext: pointer = nil, flags: VkValidationCacheCreateFlagsEXT = 0.VkValidationCacheCreateFlagsEXT, initialDataSize: uint, pInitialData: pointer = nil): VkValidationCacheCreateInfoEXT = @@ -16709,13 +16709,13 @@ proc newVkPhysicalDeviceMaintenance6PropertiesKHR*(sType: VkStructureType = VkSt fragmentShadingRateClampCombinerInputs: fragmentShadingRateClampCombinerInputs, ) -proc newVkRenderingAreaInfoKHR*(sType: VkStructureType = VkStructureType.RenderingAreaInfoKHR, pNext: pointer = nil, viewMask: uint32, colorAttachmentCount: uint32, pColorAttachmentFormats: ptr VkFormat, depthAttachmentFormat: VkFormat, stencilAttachmentFormat: VkFormat): VkRenderingAreaInfoKHR = +proc newVkRenderingAreaInfoKHR*(sType: VkStructureType = VkStructureType.RenderingAreaInfoKHR, pNext: pointer = nil, viewMask: uint32, colorAttachmentFormats: openarray[VkFormat], depthAttachmentFormat: VkFormat, stencilAttachmentFormat: VkFormat): VkRenderingAreaInfoKHR = result = VkRenderingAreaInfoKHR( sType: sType, pNext: pNext, viewMask: viewMask, - colorAttachmentCount: colorAttachmentCount, - pColorAttachmentFormats: pColorAttachmentFormats, + colorAttachmentCount: len(colorAttachmentFormats).uint32, + pColorAttachmentFormats: if len(colorAttachmentFormats) == 0: nil else: cast[ptr VkFormat](colorAttachmentFormats), depthAttachmentFormat: depthAttachmentFormat, stencilAttachmentFormat: stencilAttachmentFormat, ) @@ -16884,7 +16884,7 @@ proc newVkDebugUtilsMessengerCreateInfoEXT*(sType: VkStructureType = VkStructure pUserData: pUserData, ) -proc newVkDebugUtilsMessengerCallbackDataEXT*(sType: VkStructureType = VkStructureType.DebugUtilsMessengerCallbackDataEXT, pNext: pointer = nil, flags: VkDebugUtilsMessengerCallbackDataFlagsEXT = 0.VkDebugUtilsMessengerCallbackDataFlagsEXT, pMessageIdName: cstring, messageIdNumber: int32, pMessage: cstring, queueLabelCount: uint32, pQueueLabels: ptr VkDebugUtilsLabelEXT, cmdBufLabelCount: uint32, pCmdBufLabels: ptr VkDebugUtilsLabelEXT, objectCount: uint32, pObjects: ptr VkDebugUtilsObjectNameInfoEXT): VkDebugUtilsMessengerCallbackDataEXT = +proc newVkDebugUtilsMessengerCallbackDataEXT*(sType: VkStructureType = VkStructureType.DebugUtilsMessengerCallbackDataEXT, pNext: pointer = nil, flags: VkDebugUtilsMessengerCallbackDataFlagsEXT = 0.VkDebugUtilsMessengerCallbackDataFlagsEXT, pMessageIdName: cstring, messageIdNumber: int32, pMessage: cstring, queueLabels: openarray[VkDebugUtilsLabelEXT], cmdBufLabels: openarray[VkDebugUtilsLabelEXT], objects: openarray[VkDebugUtilsObjectNameInfoEXT]): VkDebugUtilsMessengerCallbackDataEXT = result = VkDebugUtilsMessengerCallbackDataEXT( sType: sType, pNext: pNext, @@ -16892,12 +16892,12 @@ proc newVkDebugUtilsMessengerCallbackDataEXT*(sType: VkStructureType = VkStructu pMessageIdName: pMessageIdName, messageIdNumber: messageIdNumber, pMessage: pMessage, - queueLabelCount: queueLabelCount, - pQueueLabels: pQueueLabels, - cmdBufLabelCount: cmdBufLabelCount, - pCmdBufLabels: pCmdBufLabels, - objectCount: objectCount, - pObjects: pObjects, + queueLabelCount: len(queueLabels).uint32, + pQueueLabels: if len(queueLabels) == 0: nil else: cast[ptr VkDebugUtilsLabelEXT](queueLabels), + cmdBufLabelCount: len(cmdBufLabels).uint32, + pCmdBufLabels: if len(cmdBufLabels) == 0: nil else: cast[ptr VkDebugUtilsLabelEXT](cmdBufLabels), + objectCount: len(objects).uint32, + pObjects: if len(objects) == 0: nil else: cast[ptr VkDebugUtilsObjectNameInfoEXT](objects), ) proc newVkPhysicalDeviceDeviceMemoryReportFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceDeviceMemoryReportFeaturesEXT, pNext: pointer = nil, deviceMemoryReport: VkBool32): VkPhysicalDeviceDeviceMemoryReportFeaturesEXT = @@ -17065,20 +17065,20 @@ proc newVkPhysicalDeviceDescriptorIndexingProperties*(sType: VkStructureType = V maxDescriptorSetUpdateAfterBindInputAttachments: maxDescriptorSetUpdateAfterBindInputAttachments, ) -proc newVkDescriptorSetLayoutBindingFlagsCreateInfo*(sType: VkStructureType = VkStructureType.DescriptorSetLayoutBindingFlagsCreateInfo, pNext: pointer = nil, bindingCount: uint32, pBindingFlags: ptr VkDescriptorBindingFlags): VkDescriptorSetLayoutBindingFlagsCreateInfo = +proc newVkDescriptorSetLayoutBindingFlagsCreateInfo*(sType: VkStructureType = VkStructureType.DescriptorSetLayoutBindingFlagsCreateInfo, pNext: pointer = nil, bindingFlags: openarray[VkDescriptorBindingFlags]): VkDescriptorSetLayoutBindingFlagsCreateInfo = result = VkDescriptorSetLayoutBindingFlagsCreateInfo( sType: sType, pNext: pNext, - bindingCount: bindingCount, - pBindingFlags: pBindingFlags, + bindingCount: len(bindingFlags).uint32, + pBindingFlags: if len(bindingFlags) == 0: nil else: cast[ptr VkDescriptorBindingFlags](bindingFlags), ) -proc newVkDescriptorSetVariableDescriptorCountAllocateInfo*(sType: VkStructureType = VkStructureType.DescriptorSetVariableDescriptorCountAllocateInfo, pNext: pointer = nil, descriptorSetCount: uint32, pDescriptorCounts: ptr uint32): VkDescriptorSetVariableDescriptorCountAllocateInfo = +proc newVkDescriptorSetVariableDescriptorCountAllocateInfo*(sType: VkStructureType = VkStructureType.DescriptorSetVariableDescriptorCountAllocateInfo, pNext: pointer = nil, descriptorCounts: openarray[uint32]): VkDescriptorSetVariableDescriptorCountAllocateInfo = result = VkDescriptorSetVariableDescriptorCountAllocateInfo( sType: sType, pNext: pNext, - descriptorSetCount: descriptorSetCount, - pDescriptorCounts: pDescriptorCounts, + descriptorSetCount: len(descriptorCounts).uint32, + pDescriptorCounts: if len(descriptorCounts) == 0: nil else: cast[ptr uint32](descriptorCounts), ) proc newVkDescriptorSetVariableDescriptorCountLayoutSupport*(sType: VkStructureType = VkStructureType.DescriptorSetVariableDescriptorCountLayoutSupport, pNext: pointer = nil, maxVariableDescriptorCount: uint32): VkDescriptorSetVariableDescriptorCountLayoutSupport = @@ -17112,21 +17112,21 @@ proc newVkAttachmentReference2*(sType: VkStructureType = VkStructureType.Attachm aspectMask: aspectMask, ) -proc newVkSubpassDescription2*(sType: VkStructureType = VkStructureType.SubpassDescription2, pNext: pointer = nil, flags: VkSubpassDescriptionFlags = 0.VkSubpassDescriptionFlags, pipelineBindPoint: VkPipelineBindPoint, viewMask: uint32, inputAttachmentCount: uint32, pInputAttachments: ptr VkAttachmentReference2, colorAttachmentCount: uint32, pColorAttachments: ptr VkAttachmentReference2, pResolveAttachments: ptr VkAttachmentReference2, pDepthStencilAttachment: ptr VkAttachmentReference2, preserveAttachmentCount: uint32, pPreserveAttachments: ptr uint32): VkSubpassDescription2 = +proc newVkSubpassDescription2*(sType: VkStructureType = VkStructureType.SubpassDescription2, pNext: pointer = nil, flags: VkSubpassDescriptionFlags = 0.VkSubpassDescriptionFlags, pipelineBindPoint: VkPipelineBindPoint, viewMask: uint32, inputAttachments: openarray[VkAttachmentReference2], colorAttachments: openarray[VkAttachmentReference2], resolveAttachments: openarray[VkAttachmentReference2], pDepthStencilAttachment: ptr VkAttachmentReference2, preserveAttachments: openarray[uint32]): VkSubpassDescription2 = result = VkSubpassDescription2( sType: sType, pNext: pNext, flags: flags, pipelineBindPoint: pipelineBindPoint, viewMask: viewMask, - inputAttachmentCount: inputAttachmentCount, - pInputAttachments: pInputAttachments, - colorAttachmentCount: colorAttachmentCount, - pColorAttachments: pColorAttachments, - pResolveAttachments: pResolveAttachments, + inputAttachmentCount: len(inputAttachments).uint32, + pInputAttachments: if len(inputAttachments) == 0: nil else: cast[ptr VkAttachmentReference2](inputAttachments), + colorAttachmentCount: len(colorAttachments).uint32, + pColorAttachments: if len(colorAttachments) == 0: nil else: cast[ptr VkAttachmentReference2](colorAttachments), + pResolveAttachments: if len(resolveAttachments) == 0: nil else: cast[ptr VkAttachmentReference2](resolveAttachments), pDepthStencilAttachment: pDepthStencilAttachment, - preserveAttachmentCount: preserveAttachmentCount, - pPreserveAttachments: pPreserveAttachments, + preserveAttachmentCount: len(preserveAttachments).uint32, + pPreserveAttachments: if len(preserveAttachments) == 0: nil else: cast[ptr uint32](preserveAttachments), ) proc newVkSubpassDependency2*(sType: VkStructureType = VkStructureType.SubpassDependency2, pNext: pointer = nil, srcSubpass: uint32, dstSubpass: uint32, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags, dependencyFlags: VkDependencyFlags, viewOffset: int32): VkSubpassDependency2 = @@ -17143,19 +17143,19 @@ proc newVkSubpassDependency2*(sType: VkStructureType = VkStructureType.SubpassDe viewOffset: viewOffset, ) -proc newVkRenderPassCreateInfo2*(sType: VkStructureType = VkStructureType.RenderPassCreateInfo2, pNext: pointer = nil, flags: VkRenderPassCreateFlags = 0.VkRenderPassCreateFlags, attachmentCount: uint32, pAttachments: ptr VkAttachmentDescription2, subpassCount: uint32, pSubpasses: ptr VkSubpassDescription2, dependencyCount: uint32, pDependencies: ptr VkSubpassDependency2, correlatedViewMaskCount: uint32, pCorrelatedViewMasks: ptr uint32): VkRenderPassCreateInfo2 = +proc newVkRenderPassCreateInfo2*(sType: VkStructureType = VkStructureType.RenderPassCreateInfo2, pNext: pointer = nil, flags: VkRenderPassCreateFlags = 0.VkRenderPassCreateFlags, attachments: openarray[VkAttachmentDescription2], subpasses: openarray[VkSubpassDescription2], dependencies: openarray[VkSubpassDependency2], correlatedViewMasks: openarray[uint32]): VkRenderPassCreateInfo2 = result = VkRenderPassCreateInfo2( sType: sType, pNext: pNext, flags: flags, - attachmentCount: attachmentCount, - pAttachments: pAttachments, - subpassCount: subpassCount, - pSubpasses: pSubpasses, - dependencyCount: dependencyCount, - pDependencies: pDependencies, - correlatedViewMaskCount: correlatedViewMaskCount, - pCorrelatedViewMasks: pCorrelatedViewMasks, + attachmentCount: len(attachments).uint32, + pAttachments: if len(attachments) == 0: nil else: cast[ptr VkAttachmentDescription2](attachments), + subpassCount: len(subpasses).uint32, + pSubpasses: if len(subpasses) == 0: nil else: cast[ptr VkSubpassDescription2](subpasses), + dependencyCount: len(dependencies).uint32, + pDependencies: if len(dependencies) == 0: nil else: cast[ptr VkSubpassDependency2](dependencies), + correlatedViewMaskCount: len(correlatedViewMasks).uint32, + pCorrelatedViewMasks: if len(correlatedViewMasks) == 0: nil else: cast[ptr uint32](correlatedViewMasks), ) proc newVkSubpassBeginInfo*(sType: VkStructureType = VkStructureType.SubpassBeginInfo, pNext: pointer = nil, contents: VkSubpassContents): VkSubpassBeginInfo = @@ -17193,24 +17193,24 @@ proc newVkSemaphoreTypeCreateInfo*(sType: VkStructureType = VkStructureType.Sema initialValue: initialValue, ) -proc newVkTimelineSemaphoreSubmitInfo*(sType: VkStructureType = VkStructureType.TimelineSemaphoreSubmitInfo, pNext: pointer = nil, waitSemaphoreValueCount: uint32, pWaitSemaphoreValues: ptr uint64, signalSemaphoreValueCount: uint32, pSignalSemaphoreValues: ptr uint64): VkTimelineSemaphoreSubmitInfo = +proc newVkTimelineSemaphoreSubmitInfo*(sType: VkStructureType = VkStructureType.TimelineSemaphoreSubmitInfo, pNext: pointer = nil, waitSemaphoreValues: openarray[uint64], signalSemaphoreValues: openarray[uint64]): VkTimelineSemaphoreSubmitInfo = result = VkTimelineSemaphoreSubmitInfo( sType: sType, pNext: pNext, - waitSemaphoreValueCount: waitSemaphoreValueCount, - pWaitSemaphoreValues: pWaitSemaphoreValues, - signalSemaphoreValueCount: signalSemaphoreValueCount, - pSignalSemaphoreValues: pSignalSemaphoreValues, + waitSemaphoreValueCount: len(waitSemaphoreValues).uint32, + pWaitSemaphoreValues: if len(waitSemaphoreValues) == 0: nil else: cast[ptr uint64](waitSemaphoreValues), + signalSemaphoreValueCount: len(signalSemaphoreValues).uint32, + pSignalSemaphoreValues: if len(signalSemaphoreValues) == 0: nil else: cast[ptr uint64](signalSemaphoreValues), ) -proc newVkSemaphoreWaitInfo*(sType: VkStructureType = VkStructureType.SemaphoreWaitInfo, pNext: pointer = nil, flags: VkSemaphoreWaitFlags = 0.VkSemaphoreWaitFlags, semaphoreCount: uint32, pSemaphores: ptr VkSemaphore, pValues: ptr uint64): VkSemaphoreWaitInfo = +proc newVkSemaphoreWaitInfo*(sType: VkStructureType = VkStructureType.SemaphoreWaitInfo, pNext: pointer = nil, flags: VkSemaphoreWaitFlags = 0.VkSemaphoreWaitFlags, semaphores: openarray[VkSemaphore], values: openarray[uint64]): VkSemaphoreWaitInfo = result = VkSemaphoreWaitInfo( sType: sType, pNext: pNext, flags: flags, - semaphoreCount: semaphoreCount, - pSemaphores: pSemaphores, - pValues: pValues, + semaphoreCount: len(semaphores).uint32, + pSemaphores: if len(semaphores) == 0: nil else: cast[ptr VkSemaphore](semaphores), + pValues: if len(values) == 0: nil else: cast[ptr uint64](values), ) proc newVkSemaphoreSignalInfo*(sType: VkStructureType = VkStructureType.SemaphoreSignalInfo, pNext: pointer = nil, semaphore: VkSemaphore, value: uint64): VkSemaphoreSignalInfo = @@ -17227,12 +17227,12 @@ proc newVkVertexInputBindingDivisorDescriptionKHR*(binding: uint32, divisor: uin divisor: divisor, ) -proc newVkPipelineVertexInputDivisorStateCreateInfoKHR*(sType: VkStructureType = VkStructureType.PipelineVertexInputDivisorStateCreateInfoKHR, pNext: pointer = nil, vertexBindingDivisorCount: uint32, pVertexBindingDivisors: ptr VkVertexInputBindingDivisorDescriptionKHR): VkPipelineVertexInputDivisorStateCreateInfoKHR = +proc newVkPipelineVertexInputDivisorStateCreateInfoKHR*(sType: VkStructureType = VkStructureType.PipelineVertexInputDivisorStateCreateInfoKHR, pNext: pointer = nil, vertexBindingDivisors: openarray[VkVertexInputBindingDivisorDescriptionKHR]): VkPipelineVertexInputDivisorStateCreateInfoKHR = result = VkPipelineVertexInputDivisorStateCreateInfoKHR( sType: sType, pNext: pNext, - vertexBindingDivisorCount: vertexBindingDivisorCount, - pVertexBindingDivisors: pVertexBindingDivisors, + vertexBindingDivisorCount: len(vertexBindingDivisors).uint32, + pVertexBindingDivisors: if len(vertexBindingDivisors) == 0: nil else: cast[ptr VkVertexInputBindingDivisorDescriptionKHR](vertexBindingDivisors), ) proc newVkPhysicalDeviceVertexAttributeDivisorPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceVertexAttributeDivisorPropertiesEXT, pNext: pointer = nil, maxVertexAttribDivisor: uint32): VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT = @@ -17496,12 +17496,12 @@ proc newVkPhysicalDeviceExclusiveScissorFeaturesNV*(sType: VkStructureType = VkS exclusiveScissor: exclusiveScissor, ) -proc newVkPipelineViewportExclusiveScissorStateCreateInfoNV*(sType: VkStructureType = VkStructureType.PipelineViewportExclusiveScissorStateCreateInfoNV, pNext: pointer = nil, exclusiveScissorCount: uint32, pExclusiveScissors: ptr VkRect2D): VkPipelineViewportExclusiveScissorStateCreateInfoNV = +proc newVkPipelineViewportExclusiveScissorStateCreateInfoNV*(sType: VkStructureType = VkStructureType.PipelineViewportExclusiveScissorStateCreateInfoNV, pNext: pointer = nil, exclusiveScissors: openarray[VkRect2D]): VkPipelineViewportExclusiveScissorStateCreateInfoNV = result = VkPipelineViewportExclusiveScissorStateCreateInfoNV( sType: sType, pNext: pNext, - exclusiveScissorCount: exclusiveScissorCount, - pExclusiveScissors: pExclusiveScissors, + exclusiveScissorCount: len(exclusiveScissors).uint32, + pExclusiveScissors: if len(exclusiveScissors) == 0: nil else: cast[ptr VkRect2D](exclusiveScissors), ) proc newVkPhysicalDeviceCornerSampledImageFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceCornerSampledImageFeaturesNV, pNext: pointer = nil, cornerSampledImage: VkBool32): VkPhysicalDeviceCornerSampledImageFeaturesNV = @@ -17562,19 +17562,19 @@ proc newVkPhysicalDeviceMemoryDecompressionPropertiesNV*(sType: VkStructureType maxDecompressionIndirectCount: maxDecompressionIndirectCount, ) -proc newVkShadingRatePaletteNV*(shadingRatePaletteEntryCount: uint32, pShadingRatePaletteEntries: ptr VkShadingRatePaletteEntryNV): VkShadingRatePaletteNV = +proc newVkShadingRatePaletteNV*(shadingRatePaletteEntries: openarray[VkShadingRatePaletteEntryNV]): VkShadingRatePaletteNV = result = VkShadingRatePaletteNV( - shadingRatePaletteEntryCount: shadingRatePaletteEntryCount, - pShadingRatePaletteEntries: pShadingRatePaletteEntries, + shadingRatePaletteEntryCount: len(shadingRatePaletteEntries).uint32, + pShadingRatePaletteEntries: if len(shadingRatePaletteEntries) == 0: nil else: cast[ptr VkShadingRatePaletteEntryNV](shadingRatePaletteEntries), ) -proc newVkPipelineViewportShadingRateImageStateCreateInfoNV*(sType: VkStructureType = VkStructureType.PipelineViewportShadingRateImageStateCreateInfoNV, pNext: pointer = nil, shadingRateImageEnable: VkBool32, viewportCount: uint32, pShadingRatePalettes: ptr VkShadingRatePaletteNV): VkPipelineViewportShadingRateImageStateCreateInfoNV = +proc newVkPipelineViewportShadingRateImageStateCreateInfoNV*(sType: VkStructureType = VkStructureType.PipelineViewportShadingRateImageStateCreateInfoNV, pNext: pointer = nil, shadingRateImageEnable: VkBool32, shadingRatePalettes: openarray[VkShadingRatePaletteNV]): VkPipelineViewportShadingRateImageStateCreateInfoNV = result = VkPipelineViewportShadingRateImageStateCreateInfoNV( sType: sType, pNext: pNext, shadingRateImageEnable: shadingRateImageEnable, - viewportCount: viewportCount, - pShadingRatePalettes: pShadingRatePalettes, + viewportCount: len(shadingRatePalettes).uint32, + pShadingRatePalettes: if len(shadingRatePalettes) == 0: nil else: cast[ptr VkShadingRatePaletteNV](shadingRatePalettes), ) proc newVkPhysicalDeviceShadingRateImageFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceShadingRateImageFeaturesNV, pNext: pointer = nil, shadingRateImage: VkBool32, shadingRateCoarseSampleOrder: VkBool32): VkPhysicalDeviceShadingRateImageFeaturesNV = @@ -17608,21 +17608,21 @@ proc newVkCoarseSampleLocationNV*(pixelX: uint32, pixelY: uint32, sample: uint32 sample: sample, ) -proc newVkCoarseSampleOrderCustomNV*(shadingRate: VkShadingRatePaletteEntryNV, sampleCount: uint32, sampleLocationCount: uint32, pSampleLocations: ptr VkCoarseSampleLocationNV): VkCoarseSampleOrderCustomNV = +proc newVkCoarseSampleOrderCustomNV*(shadingRate: VkShadingRatePaletteEntryNV, sampleCount: uint32, sampleLocations: openarray[VkCoarseSampleLocationNV]): VkCoarseSampleOrderCustomNV = result = VkCoarseSampleOrderCustomNV( shadingRate: shadingRate, sampleCount: sampleCount, - sampleLocationCount: sampleLocationCount, - pSampleLocations: pSampleLocations, + sampleLocationCount: len(sampleLocations).uint32, + pSampleLocations: if len(sampleLocations) == 0: nil else: cast[ptr VkCoarseSampleLocationNV](sampleLocations), ) -proc newVkPipelineViewportCoarseSampleOrderStateCreateInfoNV*(sType: VkStructureType = VkStructureType.PipelineViewportCoarseSampleOrderStateCreateInfoNV, pNext: pointer = nil, sampleOrderType: VkCoarseSampleOrderTypeNV, customSampleOrderCount: uint32, pCustomSampleOrders: ptr VkCoarseSampleOrderCustomNV): VkPipelineViewportCoarseSampleOrderStateCreateInfoNV = +proc newVkPipelineViewportCoarseSampleOrderStateCreateInfoNV*(sType: VkStructureType = VkStructureType.PipelineViewportCoarseSampleOrderStateCreateInfoNV, pNext: pointer = nil, sampleOrderType: VkCoarseSampleOrderTypeNV, customSampleOrders: openarray[VkCoarseSampleOrderCustomNV]): VkPipelineViewportCoarseSampleOrderStateCreateInfoNV = result = VkPipelineViewportCoarseSampleOrderStateCreateInfoNV( sType: sType, pNext: pNext, sampleOrderType: sampleOrderType, - customSampleOrderCount: customSampleOrderCount, - pCustomSampleOrders: pCustomSampleOrders, + customSampleOrderCount: len(customSampleOrders).uint32, + pCustomSampleOrders: if len(customSampleOrders) == 0: nil else: cast[ptr VkCoarseSampleOrderCustomNV](customSampleOrders), ) proc newVkPhysicalDeviceMeshShaderFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceMeshShaderFeaturesNV, pNext: pointer = nil, taskShader: VkBool32, meshShader: VkBool32): VkPhysicalDeviceMeshShaderFeaturesNV = @@ -17733,30 +17733,30 @@ proc newVkRayTracingShaderGroupCreateInfoKHR*(sType: VkStructureType = VkStructu pShaderGroupCaptureReplayHandle: pShaderGroupCaptureReplayHandle, ) -proc newVkRayTracingPipelineCreateInfoNV*(sType: VkStructureType = VkStructureType.RayTracingPipelineCreateInfoNV, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, groupCount: uint32, pGroups: ptr VkRayTracingShaderGroupCreateInfoNV, maxRecursionDepth: uint32, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkRayTracingPipelineCreateInfoNV = +proc newVkRayTracingPipelineCreateInfoNV*(sType: VkStructureType = VkStructureType.RayTracingPipelineCreateInfoNV, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stages: openarray[VkPipelineShaderStageCreateInfo], groups: openarray[VkRayTracingShaderGroupCreateInfoNV], maxRecursionDepth: uint32, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkRayTracingPipelineCreateInfoNV = result = VkRayTracingPipelineCreateInfoNV( sType: sType, pNext: pNext, flags: flags, - stageCount: stageCount, - pStages: pStages, - groupCount: groupCount, - pGroups: pGroups, + stageCount: len(stages).uint32, + pStages: if len(stages) == 0: nil else: cast[ptr VkPipelineShaderStageCreateInfo](stages), + groupCount: len(groups).uint32, + pGroups: if len(groups) == 0: nil else: cast[ptr VkRayTracingShaderGroupCreateInfoNV](groups), maxRecursionDepth: maxRecursionDepth, layout: layout, basePipelineHandle: basePipelineHandle, basePipelineIndex: basePipelineIndex, ) -proc newVkRayTracingPipelineCreateInfoKHR*(sType: VkStructureType = VkStructureType.RayTracingPipelineCreateInfoKHR, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, groupCount: uint32, pGroups: ptr VkRayTracingShaderGroupCreateInfoKHR, maxPipelineRayRecursionDepth: uint32, pLibraryInfo: ptr VkPipelineLibraryCreateInfoKHR, pLibraryInterface: ptr VkRayTracingPipelineInterfaceCreateInfoKHR, pDynamicState: ptr VkPipelineDynamicStateCreateInfo, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkRayTracingPipelineCreateInfoKHR = +proc newVkRayTracingPipelineCreateInfoKHR*(sType: VkStructureType = VkStructureType.RayTracingPipelineCreateInfoKHR, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stages: openarray[VkPipelineShaderStageCreateInfo], groups: openarray[VkRayTracingShaderGroupCreateInfoKHR], maxPipelineRayRecursionDepth: uint32, pLibraryInfo: ptr VkPipelineLibraryCreateInfoKHR, pLibraryInterface: ptr VkRayTracingPipelineInterfaceCreateInfoKHR, pDynamicState: ptr VkPipelineDynamicStateCreateInfo, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkRayTracingPipelineCreateInfoKHR = result = VkRayTracingPipelineCreateInfoKHR( sType: sType, pNext: pNext, flags: flags, - stageCount: stageCount, - pStages: pStages, - groupCount: groupCount, - pGroups: pGroups, + stageCount: len(stages).uint32, + pStages: if len(stages) == 0: nil else: cast[ptr VkPipelineShaderStageCreateInfo](stages), + groupCount: len(groups).uint32, + pGroups: if len(groups) == 0: nil else: cast[ptr VkRayTracingShaderGroupCreateInfoKHR](groups), maxPipelineRayRecursionDepth: maxPipelineRayRecursionDepth, pLibraryInfo: pLibraryInfo, pLibraryInterface: pLibraryInterface, @@ -17808,15 +17808,15 @@ proc newVkGeometryNV*(sType: VkStructureType = VkStructureType.GeometryNV, pNext flags: flags, ) -proc newVkAccelerationStructureInfoNV*(sType: VkStructureType = VkStructureType.AccelerationStructureInfoNV, pNext: pointer = nil, `type`: VkAccelerationStructureTypeNV, flags: VkBuildAccelerationStructureFlagsNV = 0.VkBuildAccelerationStructureFlagsNV, instanceCount: uint32, geometryCount: uint32, pGeometries: ptr VkGeometryNV): VkAccelerationStructureInfoNV = +proc newVkAccelerationStructureInfoNV*(sType: VkStructureType = VkStructureType.AccelerationStructureInfoNV, pNext: pointer = nil, `type`: VkAccelerationStructureTypeNV, flags: VkBuildAccelerationStructureFlagsNV = 0.VkBuildAccelerationStructureFlagsNV, instanceCount: uint32, geometries: openarray[VkGeometryNV]): VkAccelerationStructureInfoNV = result = VkAccelerationStructureInfoNV( sType: sType, pNext: pNext, `type`: `type`, flags: flags, instanceCount: instanceCount, - geometryCount: geometryCount, - pGeometries: pGeometries, + geometryCount: len(geometries).uint32, + pGeometries: if len(geometries) == 0: nil else: cast[ptr VkGeometryNV](geometries), ) proc newVkAccelerationStructureCreateInfoNV*(sType: VkStructureType = VkStructureType.AccelerationStructureCreateInfoNV, pNext: pointer = nil, compactedSize: VkDeviceSize, info: VkAccelerationStructureInfoNV): VkAccelerationStructureCreateInfoNV = @@ -17827,31 +17827,31 @@ proc newVkAccelerationStructureCreateInfoNV*(sType: VkStructureType = VkStructur info: info, ) -proc newVkBindAccelerationStructureMemoryInfoNV*(sType: VkStructureType = VkStructureType.BindAccelerationStructureMemoryInfoNV, pNext: pointer = nil, accelerationStructure: VkAccelerationStructureNV, memory: VkDeviceMemory, memoryOffset: VkDeviceSize, deviceIndexCount: uint32, pDeviceIndices: ptr uint32): VkBindAccelerationStructureMemoryInfoNV = +proc newVkBindAccelerationStructureMemoryInfoNV*(sType: VkStructureType = VkStructureType.BindAccelerationStructureMemoryInfoNV, pNext: pointer = nil, accelerationStructure: VkAccelerationStructureNV, memory: VkDeviceMemory, memoryOffset: VkDeviceSize, deviceIndices: openarray[uint32]): VkBindAccelerationStructureMemoryInfoNV = result = VkBindAccelerationStructureMemoryInfoNV( sType: sType, pNext: pNext, accelerationStructure: accelerationStructure, memory: memory, memoryOffset: memoryOffset, - deviceIndexCount: deviceIndexCount, - pDeviceIndices: pDeviceIndices, + deviceIndexCount: len(deviceIndices).uint32, + pDeviceIndices: if len(deviceIndices) == 0: nil else: cast[ptr uint32](deviceIndices), ) -proc newVkWriteDescriptorSetAccelerationStructureKHR*(sType: VkStructureType = VkStructureType.WriteDescriptorSetAccelerationStructureKHR, pNext: pointer = nil, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR): VkWriteDescriptorSetAccelerationStructureKHR = +proc newVkWriteDescriptorSetAccelerationStructureKHR*(sType: VkStructureType = VkStructureType.WriteDescriptorSetAccelerationStructureKHR, pNext: pointer = nil, accelerationStructures: openarray[VkAccelerationStructureKHR]): VkWriteDescriptorSetAccelerationStructureKHR = result = VkWriteDescriptorSetAccelerationStructureKHR( sType: sType, pNext: pNext, - accelerationStructureCount: accelerationStructureCount, - pAccelerationStructures: pAccelerationStructures, + accelerationStructureCount: len(accelerationStructures).uint32, + pAccelerationStructures: if len(accelerationStructures) == 0: nil else: cast[ptr VkAccelerationStructureKHR](accelerationStructures), ) -proc newVkWriteDescriptorSetAccelerationStructureNV*(sType: VkStructureType = VkStructureType.WriteDescriptorSetAccelerationStructureNV, pNext: pointer = nil, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureNV): VkWriteDescriptorSetAccelerationStructureNV = +proc newVkWriteDescriptorSetAccelerationStructureNV*(sType: VkStructureType = VkStructureType.WriteDescriptorSetAccelerationStructureNV, pNext: pointer = nil, accelerationStructures: openarray[VkAccelerationStructureNV]): VkWriteDescriptorSetAccelerationStructureNV = result = VkWriteDescriptorSetAccelerationStructureNV( sType: sType, pNext: pNext, - accelerationStructureCount: accelerationStructureCount, - pAccelerationStructures: pAccelerationStructures, + accelerationStructureCount: len(accelerationStructures).uint32, + pAccelerationStructures: if len(accelerationStructures) == 0: nil else: cast[ptr VkAccelerationStructureNV](accelerationStructures), ) proc newVkAccelerationStructureMemoryRequirementsInfoNV*(sType: VkStructureType = VkStructureType.AccelerationStructureMemoryRequirementsInfoNV, pNext: pointer = nil, `type`: VkAccelerationStructureMemoryRequirementsTypeNV, accelerationStructure: VkAccelerationStructureNV): VkAccelerationStructureMemoryRequirementsInfoNV = @@ -17973,12 +17973,12 @@ proc newVkPhysicalDeviceRayTracingMaintenance1FeaturesKHR*(sType: VkStructureTyp rayTracingPipelineTraceRaysIndirect2: rayTracingPipelineTraceRaysIndirect2, ) -proc newVkDrmFormatModifierPropertiesListEXT*(sType: VkStructureType = VkStructureType.DrmFormatModifierPropertiesListEXT, pNext: pointer = nil, drmFormatModifierCount: uint32, pDrmFormatModifierProperties: ptr VkDrmFormatModifierPropertiesEXT): VkDrmFormatModifierPropertiesListEXT = +proc newVkDrmFormatModifierPropertiesListEXT*(sType: VkStructureType = VkStructureType.DrmFormatModifierPropertiesListEXT, pNext: pointer = nil, drmFormatModifierProperties: openarray[VkDrmFormatModifierPropertiesEXT]): VkDrmFormatModifierPropertiesListEXT = result = VkDrmFormatModifierPropertiesListEXT( sType: sType, pNext: pNext, - drmFormatModifierCount: drmFormatModifierCount, - pDrmFormatModifierProperties: pDrmFormatModifierProperties, + drmFormatModifierCount: len(drmFormatModifierProperties).uint32, + pDrmFormatModifierProperties: if len(drmFormatModifierProperties) == 0: nil else: cast[ptr VkDrmFormatModifierPropertiesEXT](drmFormatModifierProperties), ) proc newVkDrmFormatModifierPropertiesEXT*(drmFormatModifier: uint64, drmFormatModifierPlaneCount: uint32, drmFormatModifierTilingFeatures: VkFormatFeatureFlags): VkDrmFormatModifierPropertiesEXT = @@ -17988,31 +17988,31 @@ proc newVkDrmFormatModifierPropertiesEXT*(drmFormatModifier: uint64, drmFormatMo drmFormatModifierTilingFeatures: drmFormatModifierTilingFeatures, ) -proc newVkPhysicalDeviceImageDrmFormatModifierInfoEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceImageDrmFormatModifierInfoEXT, pNext: pointer = nil, drmFormatModifier: uint64, sharingMode: VkSharingMode, queueFamilyIndexCount: uint32, pQueueFamilyIndices: ptr uint32): VkPhysicalDeviceImageDrmFormatModifierInfoEXT = +proc newVkPhysicalDeviceImageDrmFormatModifierInfoEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceImageDrmFormatModifierInfoEXT, pNext: pointer = nil, drmFormatModifier: uint64, sharingMode: VkSharingMode, queueFamilyIndices: openarray[uint32]): VkPhysicalDeviceImageDrmFormatModifierInfoEXT = result = VkPhysicalDeviceImageDrmFormatModifierInfoEXT( sType: sType, pNext: pNext, drmFormatModifier: drmFormatModifier, sharingMode: sharingMode, - queueFamilyIndexCount: queueFamilyIndexCount, - pQueueFamilyIndices: pQueueFamilyIndices, + queueFamilyIndexCount: len(queueFamilyIndices).uint32, + pQueueFamilyIndices: if len(queueFamilyIndices) == 0: nil else: cast[ptr uint32](queueFamilyIndices), ) -proc newVkImageDrmFormatModifierListCreateInfoEXT*(sType: VkStructureType = VkStructureType.ImageDrmFormatModifierListCreateInfoEXT, pNext: pointer = nil, drmFormatModifierCount: uint32, pDrmFormatModifiers: ptr uint64): VkImageDrmFormatModifierListCreateInfoEXT = +proc newVkImageDrmFormatModifierListCreateInfoEXT*(sType: VkStructureType = VkStructureType.ImageDrmFormatModifierListCreateInfoEXT, pNext: pointer = nil, drmFormatModifiers: openarray[uint64]): VkImageDrmFormatModifierListCreateInfoEXT = result = VkImageDrmFormatModifierListCreateInfoEXT( sType: sType, pNext: pNext, - drmFormatModifierCount: drmFormatModifierCount, - pDrmFormatModifiers: pDrmFormatModifiers, + drmFormatModifierCount: len(drmFormatModifiers).uint32, + pDrmFormatModifiers: if len(drmFormatModifiers) == 0: nil else: cast[ptr uint64](drmFormatModifiers), ) -proc newVkImageDrmFormatModifierExplicitCreateInfoEXT*(sType: VkStructureType = VkStructureType.ImageDrmFormatModifierExplicitCreateInfoEXT, pNext: pointer = nil, drmFormatModifier: uint64, drmFormatModifierPlaneCount: uint32, pPlaneLayouts: ptr VkSubresourceLayout): VkImageDrmFormatModifierExplicitCreateInfoEXT = +proc newVkImageDrmFormatModifierExplicitCreateInfoEXT*(sType: VkStructureType = VkStructureType.ImageDrmFormatModifierExplicitCreateInfoEXT, pNext: pointer = nil, drmFormatModifier: uint64, planeLayouts: openarray[VkSubresourceLayout]): VkImageDrmFormatModifierExplicitCreateInfoEXT = result = VkImageDrmFormatModifierExplicitCreateInfoEXT( sType: sType, pNext: pNext, drmFormatModifier: drmFormatModifier, - drmFormatModifierPlaneCount: drmFormatModifierPlaneCount, - pPlaneLayouts: pPlaneLayouts, + drmFormatModifierPlaneCount: len(planeLayouts).uint32, + pPlaneLayouts: if len(planeLayouts) == 0: nil else: cast[ptr VkSubresourceLayout](planeLayouts), ) proc newVkImageDrmFormatModifierPropertiesEXT*(sType: VkStructureType = VkStructureType.ImageDrmFormatModifierPropertiesEXT, pNext: pointer = nil, drmFormatModifier: uint64): VkImageDrmFormatModifierPropertiesEXT = @@ -18092,12 +18092,12 @@ proc newVkRenderPassFragmentDensityMapCreateInfoEXT*(sType: VkStructureType = Vk fragmentDensityMapAttachment: fragmentDensityMapAttachment, ) -proc newVkSubpassFragmentDensityMapOffsetEndInfoQCOM*(sType: VkStructureType = VkStructureType.SubpassFragmentDensityMapOffsetEndInfoQCOM, pNext: pointer = nil, fragmentDensityOffsetCount: uint32, pFragmentDensityOffsets: ptr VkOffset2D): VkSubpassFragmentDensityMapOffsetEndInfoQCOM = +proc newVkSubpassFragmentDensityMapOffsetEndInfoQCOM*(sType: VkStructureType = VkStructureType.SubpassFragmentDensityMapOffsetEndInfoQCOM, pNext: pointer = nil, fragmentDensityOffsets: openarray[VkOffset2D]): VkSubpassFragmentDensityMapOffsetEndInfoQCOM = result = VkSubpassFragmentDensityMapOffsetEndInfoQCOM( sType: sType, pNext: pNext, - fragmentDensityOffsetCount: fragmentDensityOffsetCount, - pFragmentDensityOffsets: pFragmentDensityOffsets, + fragmentDensityOffsetCount: len(fragmentDensityOffsets).uint32, + pFragmentDensityOffsets: if len(fragmentDensityOffsets) == 0: nil else: cast[ptr VkOffset2D](fragmentDensityOffsets), ) proc newVkPhysicalDeviceScalarBlockLayoutFeatures*(sType: VkStructureType = VkStructureType.PhysicalDeviceScalarBlockLayoutFeatures, pNext: pointer = nil, scalarBlockLayout: VkBool32): VkPhysicalDeviceScalarBlockLayoutFeatures = @@ -18226,15 +18226,15 @@ proc newVkPhysicalDeviceImagelessFramebufferFeatures*(sType: VkStructureType = V imagelessFramebuffer: imagelessFramebuffer, ) -proc newVkFramebufferAttachmentsCreateInfo*(sType: VkStructureType = VkStructureType.FramebufferAttachmentsCreateInfo, pNext: pointer = nil, attachmentImageInfoCount: uint32, pAttachmentImageInfos: ptr VkFramebufferAttachmentImageInfo): VkFramebufferAttachmentsCreateInfo = +proc newVkFramebufferAttachmentsCreateInfo*(sType: VkStructureType = VkStructureType.FramebufferAttachmentsCreateInfo, pNext: pointer = nil, attachmentImageInfos: openarray[VkFramebufferAttachmentImageInfo]): VkFramebufferAttachmentsCreateInfo = result = VkFramebufferAttachmentsCreateInfo( sType: sType, pNext: pNext, - attachmentImageInfoCount: attachmentImageInfoCount, - pAttachmentImageInfos: pAttachmentImageInfos, + attachmentImageInfoCount: len(attachmentImageInfos).uint32, + pAttachmentImageInfos: if len(attachmentImageInfos) == 0: nil else: cast[ptr VkFramebufferAttachmentImageInfo](attachmentImageInfos), ) -proc newVkFramebufferAttachmentImageInfo*(sType: VkStructureType = VkStructureType.FramebufferAttachmentImageInfo, pNext: pointer = nil, flags: VkImageCreateFlags = 0.VkImageCreateFlags, usage: VkImageUsageFlags, width: uint32, height: uint32, layerCount: uint32, viewFormatCount: uint32, pViewFormats: ptr VkFormat): VkFramebufferAttachmentImageInfo = +proc newVkFramebufferAttachmentImageInfo*(sType: VkStructureType = VkStructureType.FramebufferAttachmentImageInfo, pNext: pointer = nil, flags: VkImageCreateFlags = 0.VkImageCreateFlags, usage: VkImageUsageFlags, width: uint32, height: uint32, layerCount: uint32, viewFormats: openarray[VkFormat]): VkFramebufferAttachmentImageInfo = result = VkFramebufferAttachmentImageInfo( sType: sType, pNext: pNext, @@ -18243,16 +18243,16 @@ proc newVkFramebufferAttachmentImageInfo*(sType: VkStructureType = VkStructureTy width: width, height: height, layerCount: layerCount, - viewFormatCount: viewFormatCount, - pViewFormats: pViewFormats, + viewFormatCount: len(viewFormats).uint32, + pViewFormats: if len(viewFormats) == 0: nil else: cast[ptr VkFormat](viewFormats), ) -proc newVkRenderPassAttachmentBeginInfo*(sType: VkStructureType = VkStructureType.RenderPassAttachmentBeginInfo, pNext: pointer = nil, attachmentCount: uint32, pAttachments: ptr VkImageView): VkRenderPassAttachmentBeginInfo = +proc newVkRenderPassAttachmentBeginInfo*(sType: VkStructureType = VkStructureType.RenderPassAttachmentBeginInfo, pNext: pointer = nil, attachments: openarray[VkImageView]): VkRenderPassAttachmentBeginInfo = result = VkRenderPassAttachmentBeginInfo( sType: sType, pNext: pNext, - attachmentCount: attachmentCount, - pAttachments: pAttachments, + attachmentCount: len(attachments).uint32, + pAttachments: if len(attachments) == 0: nil else: cast[ptr VkImageView](attachments), ) proc newVkPhysicalDeviceTextureCompressionASTCHDRFeatures*(sType: VkStructureType = VkStructureType.PhysicalDeviceTextureCompressionASTCHDRFeatures, pNext: pointer = nil, textureCompressionASTC_HDR: VkBool32): VkPhysicalDeviceTextureCompressionASTCHDRFeatures = @@ -18328,13 +18328,13 @@ proc newVkPipelineCreationFeedback*(flags: VkPipelineCreationFeedbackFlags = 0.V duration: duration, ) -proc newVkPipelineCreationFeedbackCreateInfo*(sType: VkStructureType = VkStructureType.PipelineCreationFeedbackCreateInfo, pNext: pointer = nil, pPipelineCreationFeedback: ptr VkPipelineCreationFeedback, pipelineStageCreationFeedbackCount: uint32, pPipelineStageCreationFeedbacks: ptr ptr VkPipelineCreationFeedback): VkPipelineCreationFeedbackCreateInfo = +proc newVkPipelineCreationFeedbackCreateInfo*(sType: VkStructureType = VkStructureType.PipelineCreationFeedbackCreateInfo, pNext: pointer = nil, pPipelineCreationFeedback: ptr VkPipelineCreationFeedback, pipelineStageCreationFeedbacks: openarray[ptr VkPipelineCreationFeedback]): VkPipelineCreationFeedbackCreateInfo = result = VkPipelineCreationFeedbackCreateInfo( sType: sType, pNext: pNext, pPipelineCreationFeedback: pPipelineCreationFeedback, - pipelineStageCreationFeedbackCount: pipelineStageCreationFeedbackCount, - pPipelineStageCreationFeedbacks: pPipelineStageCreationFeedbacks, + pipelineStageCreationFeedbackCount: len(pipelineStageCreationFeedbacks).uint32, + pPipelineStageCreationFeedbacks: if len(pipelineStageCreationFeedbacks) == 0: nil else: cast[ptr ptr VkPipelineCreationFeedback](pipelineStageCreationFeedbacks), ) proc newVkSurfaceFullScreenExclusiveInfoEXT*(sType: VkStructureType = VkStructureType.SurfaceFullScreenExclusiveInfoEXT, pNext: pointer = nil, fullScreenExclusive: VkFullScreenExclusiveEXT): VkSurfaceFullScreenExclusiveInfoEXT = @@ -18414,13 +18414,13 @@ proc newVkPerformanceCounterDescriptionKHR*(sType: VkStructureType = VkStructure description: description, ) -proc newVkQueryPoolPerformanceCreateInfoKHR*(sType: VkStructureType = VkStructureType.QueryPoolPerformanceCreateInfoKHR, pNext: pointer = nil, queueFamilyIndex: uint32, counterIndexCount: uint32, pCounterIndices: ptr uint32): VkQueryPoolPerformanceCreateInfoKHR = +proc newVkQueryPoolPerformanceCreateInfoKHR*(sType: VkStructureType = VkStructureType.QueryPoolPerformanceCreateInfoKHR, pNext: pointer = nil, queueFamilyIndex: uint32, counterIndices: openarray[uint32]): VkQueryPoolPerformanceCreateInfoKHR = result = VkQueryPoolPerformanceCreateInfoKHR( sType: sType, pNext: pNext, queueFamilyIndex: queueFamilyIndex, - counterIndexCount: counterIndexCount, - pCounterIndices: pCounterIndices, + counterIndexCount: len(counterIndices).uint32, + pCounterIndices: if len(counterIndices) == 0: nil else: cast[ptr uint32](counterIndices), ) proc newVkAcquireProfilingLockInfoKHR*(sType: VkStructureType = VkStructureType.AcquireProfilingLockInfoKHR, pNext: pointer = nil, flags: VkAcquireProfilingLockFlagsKHR = 0.VkAcquireProfilingLockFlagsKHR, timeout: uint64): VkAcquireProfilingLockInfoKHR = @@ -19024,12 +19024,12 @@ proc newVkFaultData*(sType: VkStructureType = VkStructureType.FaultData, pNext: faultType: faultType, ) -proc newVkFaultCallbackInfo*(sType: VkStructureType = VkStructureType.FaultCallbackInfo, pNext: pointer = nil, faultCount: uint32, pFaults: ptr VkFaultData, pfnFaultCallback: PFN_vkFaultCallbackFunction): VkFaultCallbackInfo = +proc newVkFaultCallbackInfo*(sType: VkStructureType = VkStructureType.FaultCallbackInfo, pNext: pointer = nil, faults: openarray[VkFaultData], pfnFaultCallback: PFN_vkFaultCallbackFunction): VkFaultCallbackInfo = result = VkFaultCallbackInfo( sType: sType, pNext: pNext, - faultCount: faultCount, - pFaults: pFaults, + faultCount: len(faults).uint32, + pFaults: if len(faults) == 0: nil else: cast[ptr VkFaultData](faults), pfnFaultCallback: pfnFaultCallback, ) @@ -19230,12 +19230,12 @@ proc newVkRayTracingPipelineInterfaceCreateInfoKHR*(sType: VkStructureType = VkS maxPipelineRayHitAttributeSize: maxPipelineRayHitAttributeSize, ) -proc newVkPipelineLibraryCreateInfoKHR*(sType: VkStructureType = VkStructureType.PipelineLibraryCreateInfoKHR, pNext: pointer = nil, libraryCount: uint32, pLibraries: ptr VkPipeline): VkPipelineLibraryCreateInfoKHR = +proc newVkPipelineLibraryCreateInfoKHR*(sType: VkStructureType = VkStructureType.PipelineLibraryCreateInfoKHR, pNext: pointer = nil, libraries: openarray[VkPipeline]): VkPipelineLibraryCreateInfoKHR = result = VkPipelineLibraryCreateInfoKHR( sType: sType, pNext: pNext, - libraryCount: libraryCount, - pLibraries: pLibraries, + libraryCount: len(libraries).uint32, + pLibraries: if len(libraries) == 0: nil else: cast[ptr VkPipeline](libraries), ) proc newVkRefreshObjectKHR*(objectType: VkObjectType, objectHandle: uint64, flags: VkRefreshObjectFlagsKHR = 0.VkRefreshObjectFlagsKHR): VkRefreshObjectKHR = @@ -19245,12 +19245,12 @@ proc newVkRefreshObjectKHR*(objectType: VkObjectType, objectHandle: uint64, flag flags: flags, ) -proc newVkRefreshObjectListKHR*(sType: VkStructureType = VkStructureType.RefreshObjectListKHR, pNext: pointer = nil, objectCount: uint32, pObjects: ptr VkRefreshObjectKHR): VkRefreshObjectListKHR = +proc newVkRefreshObjectListKHR*(sType: VkStructureType = VkStructureType.RefreshObjectListKHR, pNext: pointer = nil, objects: openarray[VkRefreshObjectKHR]): VkRefreshObjectListKHR = result = VkRefreshObjectListKHR( sType: sType, pNext: pNext, - objectCount: objectCount, - pObjects: pObjects, + objectCount: len(objects).uint32, + pObjects: if len(objects) == 0: nil else: cast[ptr VkRefreshObjectKHR](objects), ) proc newVkPhysicalDeviceExtendedDynamicStateFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceExtendedDynamicStateFeaturesEXT, pNext: pointer = nil, extendedDynamicState: VkBool32): VkPhysicalDeviceExtendedDynamicStateFeaturesEXT = @@ -19536,17 +19536,17 @@ proc newVkImageResolve2*(sType: VkStructureType = VkStructureType.ImageResolve2, extent: extent, ) -proc newVkCopyBufferInfo2*(sType: VkStructureType = VkStructureType.CopyBufferInfo2, pNext: pointer = nil, srcBuffer: VkBuffer, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferCopy2): VkCopyBufferInfo2 = +proc newVkCopyBufferInfo2*(sType: VkStructureType = VkStructureType.CopyBufferInfo2, pNext: pointer = nil, srcBuffer: VkBuffer, dstBuffer: VkBuffer, regions: openarray[VkBufferCopy2]): VkCopyBufferInfo2 = result = VkCopyBufferInfo2( sType: sType, pNext: pNext, srcBuffer: srcBuffer, dstBuffer: dstBuffer, - regionCount: regionCount, - pRegions: pRegions, + regionCount: len(regions).uint32, + pRegions: if len(regions) == 0: nil else: cast[ptr VkBufferCopy2](regions), ) -proc newVkCopyImageInfo2*(sType: VkStructureType = VkStructureType.CopyImageInfo2, pNext: pointer = nil, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageCopy2): VkCopyImageInfo2 = +proc newVkCopyImageInfo2*(sType: VkStructureType = VkStructureType.CopyImageInfo2, pNext: pointer = nil, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regions: openarray[VkImageCopy2]): VkCopyImageInfo2 = result = VkCopyImageInfo2( sType: sType, pNext: pNext, @@ -19554,11 +19554,11 @@ proc newVkCopyImageInfo2*(sType: VkStructureType = VkStructureType.CopyImageInfo srcImageLayout: srcImageLayout, dstImage: dstImage, dstImageLayout: dstImageLayout, - regionCount: regionCount, - pRegions: pRegions, + regionCount: len(regions).uint32, + pRegions: if len(regions) == 0: nil else: cast[ptr VkImageCopy2](regions), ) -proc newVkBlitImageInfo2*(sType: VkStructureType = VkStructureType.BlitImageInfo2, pNext: pointer = nil, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageBlit2, filter: VkFilter): VkBlitImageInfo2 = +proc newVkBlitImageInfo2*(sType: VkStructureType = VkStructureType.BlitImageInfo2, pNext: pointer = nil, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regions: openarray[VkImageBlit2], filter: VkFilter): VkBlitImageInfo2 = result = VkBlitImageInfo2( sType: sType, pNext: pNext, @@ -19566,34 +19566,34 @@ proc newVkBlitImageInfo2*(sType: VkStructureType = VkStructureType.BlitImageInfo srcImageLayout: srcImageLayout, dstImage: dstImage, dstImageLayout: dstImageLayout, - regionCount: regionCount, - pRegions: pRegions, + regionCount: len(regions).uint32, + pRegions: if len(regions) == 0: nil else: cast[ptr VkImageBlit2](regions), filter: filter, ) -proc newVkCopyBufferToImageInfo2*(sType: VkStructureType = VkStructureType.CopyBufferToImageInfo2, pNext: pointer = nil, srcBuffer: VkBuffer, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkBufferImageCopy2): VkCopyBufferToImageInfo2 = +proc newVkCopyBufferToImageInfo2*(sType: VkStructureType = VkStructureType.CopyBufferToImageInfo2, pNext: pointer = nil, srcBuffer: VkBuffer, dstImage: VkImage, dstImageLayout: VkImageLayout, regions: openarray[VkBufferImageCopy2]): VkCopyBufferToImageInfo2 = result = VkCopyBufferToImageInfo2( sType: sType, pNext: pNext, srcBuffer: srcBuffer, dstImage: dstImage, dstImageLayout: dstImageLayout, - regionCount: regionCount, - pRegions: pRegions, + regionCount: len(regions).uint32, + pRegions: if len(regions) == 0: nil else: cast[ptr VkBufferImageCopy2](regions), ) -proc newVkCopyImageToBufferInfo2*(sType: VkStructureType = VkStructureType.CopyImageToBufferInfo2, pNext: pointer = nil, srcImage: VkImage, srcImageLayout: VkImageLayout, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferImageCopy2): VkCopyImageToBufferInfo2 = +proc newVkCopyImageToBufferInfo2*(sType: VkStructureType = VkStructureType.CopyImageToBufferInfo2, pNext: pointer = nil, srcImage: VkImage, srcImageLayout: VkImageLayout, dstBuffer: VkBuffer, regions: openarray[VkBufferImageCopy2]): VkCopyImageToBufferInfo2 = result = VkCopyImageToBufferInfo2( sType: sType, pNext: pNext, srcImage: srcImage, srcImageLayout: srcImageLayout, dstBuffer: dstBuffer, - regionCount: regionCount, - pRegions: pRegions, + regionCount: len(regions).uint32, + pRegions: if len(regions) == 0: nil else: cast[ptr VkBufferImageCopy2](regions), ) -proc newVkResolveImageInfo2*(sType: VkStructureType = VkStructureType.ResolveImageInfo2, pNext: pointer = nil, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageResolve2): VkResolveImageInfo2 = +proc newVkResolveImageInfo2*(sType: VkStructureType = VkStructureType.ResolveImageInfo2, pNext: pointer = nil, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regions: openarray[VkImageResolve2]): VkResolveImageInfo2 = result = VkResolveImageInfo2( sType: sType, pNext: pNext, @@ -19601,8 +19601,8 @@ proc newVkResolveImageInfo2*(sType: VkStructureType = VkStructureType.ResolveIma srcImageLayout: srcImageLayout, dstImage: dstImage, dstImageLayout: dstImageLayout, - regionCount: regionCount, - pRegions: pRegions, + regionCount: len(regions).uint32, + pRegions: if len(regions) == 0: nil else: cast[ptr VkImageResolve2](regions), ) proc newVkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderImageAtomicInt64FeaturesEXT, pNext: pointer = nil, shaderImageInt64Atomics: VkBool32, sparseImageInt64Atomics: VkBool32): VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT = @@ -19739,18 +19739,18 @@ proc newVkPhysicalDeviceMutableDescriptorTypeFeaturesEXT*(sType: VkStructureType mutableDescriptorType: mutableDescriptorType, ) -proc newVkMutableDescriptorTypeListEXT*(descriptorTypeCount: uint32, pDescriptorTypes: ptr VkDescriptorType): VkMutableDescriptorTypeListEXT = +proc newVkMutableDescriptorTypeListEXT*(descriptorTypes: openarray[VkDescriptorType]): VkMutableDescriptorTypeListEXT = result = VkMutableDescriptorTypeListEXT( - descriptorTypeCount: descriptorTypeCount, - pDescriptorTypes: pDescriptorTypes, + descriptorTypeCount: len(descriptorTypes).uint32, + pDescriptorTypes: if len(descriptorTypes) == 0: nil else: cast[ptr VkDescriptorType](descriptorTypes), ) -proc newVkMutableDescriptorTypeCreateInfoEXT*(sType: VkStructureType = VkStructureType.MutableDescriptorTypeCreateInfoEXT, pNext: pointer = nil, mutableDescriptorTypeListCount: uint32, pMutableDescriptorTypeLists: ptr VkMutableDescriptorTypeListEXT): VkMutableDescriptorTypeCreateInfoEXT = +proc newVkMutableDescriptorTypeCreateInfoEXT*(sType: VkStructureType = VkStructureType.MutableDescriptorTypeCreateInfoEXT, pNext: pointer = nil, mutableDescriptorTypeLists: openarray[VkMutableDescriptorTypeListEXT]): VkMutableDescriptorTypeCreateInfoEXT = result = VkMutableDescriptorTypeCreateInfoEXT( sType: sType, pNext: pNext, - mutableDescriptorTypeListCount: mutableDescriptorTypeListCount, - pMutableDescriptorTypeLists: pMutableDescriptorTypeLists, + mutableDescriptorTypeListCount: len(mutableDescriptorTypeLists).uint32, + pMutableDescriptorTypeLists: if len(mutableDescriptorTypeLists) == 0: nil else: cast[ptr VkMutableDescriptorTypeListEXT](mutableDescriptorTypeLists), ) proc newVkPhysicalDeviceDepthClipControlFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceDepthClipControlFeaturesEXT, pNext: pointer = nil, depthClipControl: VkBool32): VkPhysicalDeviceDepthClipControlFeaturesEXT = @@ -19808,12 +19808,12 @@ proc newVkPhysicalDeviceColorWriteEnableFeaturesEXT*(sType: VkStructureType = Vk colorWriteEnable: colorWriteEnable, ) -proc newVkPipelineColorWriteCreateInfoEXT*(sType: VkStructureType = VkStructureType.PipelineColorWriteCreateInfoEXT, pNext: pointer = nil, attachmentCount: uint32, pColorWriteEnables: ptr VkBool32): VkPipelineColorWriteCreateInfoEXT = +proc newVkPipelineColorWriteCreateInfoEXT*(sType: VkStructureType = VkStructureType.PipelineColorWriteCreateInfoEXT, pNext: pointer = nil, colorWriteEnables: openarray[VkBool32]): VkPipelineColorWriteCreateInfoEXT = result = VkPipelineColorWriteCreateInfoEXT( sType: sType, pNext: pNext, - attachmentCount: attachmentCount, - pColorWriteEnables: pColorWriteEnables, + attachmentCount: len(colorWriteEnables).uint32, + pColorWriteEnables: if len(colorWriteEnables) == 0: nil else: cast[ptr VkBool32](colorWriteEnables), ) proc newVkMemoryBarrier2*(sType: VkStructureType = VkStructureType.MemoryBarrier2, pNext: pointer = nil, srcStageMask: VkPipelineStageFlags2, srcAccessMask: VkAccessFlags2, dstStageMask: VkPipelineStageFlags2, dstAccessMask: VkAccessFlags2): VkMemoryBarrier2 = @@ -19857,17 +19857,17 @@ proc newVkBufferMemoryBarrier2*(sType: VkStructureType = VkStructureType.BufferM size: size, ) -proc newVkDependencyInfo*(sType: VkStructureType = VkStructureType.DependencyInfo, pNext: pointer = nil, dependencyFlags: VkDependencyFlags, memoryBarrierCount: uint32, pMemoryBarriers: ptr VkMemoryBarrier2, bufferMemoryBarrierCount: uint32, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier2, imageMemoryBarrierCount: uint32, pImageMemoryBarriers: ptr VkImageMemoryBarrier2): VkDependencyInfo = +proc newVkDependencyInfo*(sType: VkStructureType = VkStructureType.DependencyInfo, pNext: pointer = nil, dependencyFlags: VkDependencyFlags, memoryBarriers: openarray[VkMemoryBarrier2], bufferMemoryBarriers: openarray[VkBufferMemoryBarrier2], imageMemoryBarriers: openarray[VkImageMemoryBarrier2]): VkDependencyInfo = result = VkDependencyInfo( sType: sType, pNext: pNext, dependencyFlags: dependencyFlags, - memoryBarrierCount: memoryBarrierCount, - pMemoryBarriers: pMemoryBarriers, - bufferMemoryBarrierCount: bufferMemoryBarrierCount, - pBufferMemoryBarriers: pBufferMemoryBarriers, - imageMemoryBarrierCount: imageMemoryBarrierCount, - pImageMemoryBarriers: pImageMemoryBarriers, + memoryBarrierCount: len(memoryBarriers).uint32, + pMemoryBarriers: if len(memoryBarriers) == 0: nil else: cast[ptr VkMemoryBarrier2](memoryBarriers), + bufferMemoryBarrierCount: len(bufferMemoryBarriers).uint32, + pBufferMemoryBarriers: if len(bufferMemoryBarriers) == 0: nil else: cast[ptr VkBufferMemoryBarrier2](bufferMemoryBarriers), + imageMemoryBarrierCount: len(imageMemoryBarriers).uint32, + pImageMemoryBarriers: if len(imageMemoryBarriers) == 0: nil else: cast[ptr VkImageMemoryBarrier2](imageMemoryBarriers), ) proc newVkSemaphoreSubmitInfo*(sType: VkStructureType = VkStructureType.SemaphoreSubmitInfo, pNext: pointer = nil, semaphore: VkSemaphore, value: uint64, stageMask: VkPipelineStageFlags2, deviceIndex: uint32): VkSemaphoreSubmitInfo = @@ -19888,17 +19888,17 @@ proc newVkCommandBufferSubmitInfo*(sType: VkStructureType = VkStructureType.Comm deviceMask: deviceMask, ) -proc newVkSubmitInfo2*(sType: VkStructureType = VkStructureType.SubmitInfo2, pNext: pointer = nil, flags: VkSubmitFlags = 0.VkSubmitFlags, waitSemaphoreInfoCount: uint32, pWaitSemaphoreInfos: ptr VkSemaphoreSubmitInfo, commandBufferInfoCount: uint32, pCommandBufferInfos: ptr VkCommandBufferSubmitInfo, signalSemaphoreInfoCount: uint32, pSignalSemaphoreInfos: ptr VkSemaphoreSubmitInfo): VkSubmitInfo2 = +proc newVkSubmitInfo2*(sType: VkStructureType = VkStructureType.SubmitInfo2, pNext: pointer = nil, flags: VkSubmitFlags = 0.VkSubmitFlags, waitSemaphoreInfos: openarray[VkSemaphoreSubmitInfo], commandBufferInfos: openarray[VkCommandBufferSubmitInfo], signalSemaphoreInfos: openarray[VkSemaphoreSubmitInfo]): VkSubmitInfo2 = result = VkSubmitInfo2( sType: sType, pNext: pNext, flags: flags, - waitSemaphoreInfoCount: waitSemaphoreInfoCount, - pWaitSemaphoreInfos: pWaitSemaphoreInfos, - commandBufferInfoCount: commandBufferInfoCount, - pCommandBufferInfos: pCommandBufferInfos, - signalSemaphoreInfoCount: signalSemaphoreInfoCount, - pSignalSemaphoreInfos: pSignalSemaphoreInfos, + waitSemaphoreInfoCount: len(waitSemaphoreInfos).uint32, + pWaitSemaphoreInfos: if len(waitSemaphoreInfos) == 0: nil else: cast[ptr VkSemaphoreSubmitInfo](waitSemaphoreInfos), + commandBufferInfoCount: len(commandBufferInfos).uint32, + pCommandBufferInfos: if len(commandBufferInfos) == 0: nil else: cast[ptr VkCommandBufferSubmitInfo](commandBufferInfos), + signalSemaphoreInfoCount: len(signalSemaphoreInfos).uint32, + pSignalSemaphoreInfos: if len(signalSemaphoreInfos) == 0: nil else: cast[ptr VkSemaphoreSubmitInfo](signalSemaphoreInfos), ) proc newVkQueueFamilyCheckpointProperties2NV*(sType: VkStructureType = VkStructureType.QueueFamilyCheckpointProperties2NV, pNext: pointer = nil, checkpointExecutionStageMask: VkPipelineStageFlags2): VkQueueFamilyCheckpointProperties2NV = @@ -19930,14 +19930,14 @@ proc newVkPhysicalDeviceHostImageCopyFeaturesEXT*(sType: VkStructureType = VkStr hostImageCopy: hostImageCopy, ) -proc newVkPhysicalDeviceHostImageCopyPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceHostImageCopyPropertiesEXT, pNext: pointer = nil, copySrcLayoutCount: uint32, pCopySrcLayouts: ptr VkImageLayout, copyDstLayoutCount: uint32, pCopyDstLayouts: ptr VkImageLayout, optimalTilingLayoutUUID: array[VK_UUID_SIZE, uint8], identicalMemoryTypeRequirements: VkBool32): VkPhysicalDeviceHostImageCopyPropertiesEXT = +proc newVkPhysicalDeviceHostImageCopyPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceHostImageCopyPropertiesEXT, pNext: pointer = nil, copySrcLayouts: openarray[VkImageLayout], copyDstLayouts: openarray[VkImageLayout], optimalTilingLayoutUUID: array[VK_UUID_SIZE, uint8], identicalMemoryTypeRequirements: VkBool32): VkPhysicalDeviceHostImageCopyPropertiesEXT = result = VkPhysicalDeviceHostImageCopyPropertiesEXT( sType: sType, pNext: pNext, - copySrcLayoutCount: copySrcLayoutCount, - pCopySrcLayouts: pCopySrcLayouts, - copyDstLayoutCount: copyDstLayoutCount, - pCopyDstLayouts: pCopyDstLayouts, + copySrcLayoutCount: len(copySrcLayouts).uint32, + pCopySrcLayouts: if len(copySrcLayouts) == 0: nil else: cast[ptr VkImageLayout](copySrcLayouts), + copyDstLayoutCount: len(copyDstLayouts).uint32, + pCopyDstLayouts: if len(copyDstLayouts) == 0: nil else: cast[ptr VkImageLayout](copyDstLayouts), optimalTilingLayoutUUID: optimalTilingLayoutUUID, identicalMemoryTypeRequirements: identicalMemoryTypeRequirements, ) @@ -19966,29 +19966,29 @@ proc newVkImageToMemoryCopyEXT*(sType: VkStructureType = VkStructureType.ImageTo imageExtent: imageExtent, ) -proc newVkCopyMemoryToImageInfoEXT*(sType: VkStructureType = VkStructureType.CopyMemoryToImageInfoEXT, pNext: pointer = nil, flags: VkHostImageCopyFlagsEXT = 0.VkHostImageCopyFlagsEXT, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkMemoryToImageCopyEXT): VkCopyMemoryToImageInfoEXT = +proc newVkCopyMemoryToImageInfoEXT*(sType: VkStructureType = VkStructureType.CopyMemoryToImageInfoEXT, pNext: pointer = nil, flags: VkHostImageCopyFlagsEXT = 0.VkHostImageCopyFlagsEXT, dstImage: VkImage, dstImageLayout: VkImageLayout, regions: openarray[VkMemoryToImageCopyEXT]): VkCopyMemoryToImageInfoEXT = result = VkCopyMemoryToImageInfoEXT( sType: sType, pNext: pNext, flags: flags, dstImage: dstImage, dstImageLayout: dstImageLayout, - regionCount: regionCount, - pRegions: pRegions, + regionCount: len(regions).uint32, + pRegions: if len(regions) == 0: nil else: cast[ptr VkMemoryToImageCopyEXT](regions), ) -proc newVkCopyImageToMemoryInfoEXT*(sType: VkStructureType = VkStructureType.CopyImageToMemoryInfoEXT, pNext: pointer = nil, flags: VkHostImageCopyFlagsEXT = 0.VkHostImageCopyFlagsEXT, srcImage: VkImage, srcImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageToMemoryCopyEXT): VkCopyImageToMemoryInfoEXT = +proc newVkCopyImageToMemoryInfoEXT*(sType: VkStructureType = VkStructureType.CopyImageToMemoryInfoEXT, pNext: pointer = nil, flags: VkHostImageCopyFlagsEXT = 0.VkHostImageCopyFlagsEXT, srcImage: VkImage, srcImageLayout: VkImageLayout, regions: openarray[VkImageToMemoryCopyEXT]): VkCopyImageToMemoryInfoEXT = result = VkCopyImageToMemoryInfoEXT( sType: sType, pNext: pNext, flags: flags, srcImage: srcImage, srcImageLayout: srcImageLayout, - regionCount: regionCount, - pRegions: pRegions, + regionCount: len(regions).uint32, + pRegions: if len(regions) == 0: nil else: cast[ptr VkImageToMemoryCopyEXT](regions), ) -proc newVkCopyImageToImageInfoEXT*(sType: VkStructureType = VkStructureType.CopyImageToImageInfoEXT, pNext: pointer = nil, flags: VkHostImageCopyFlagsEXT = 0.VkHostImageCopyFlagsEXT, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageCopy2): VkCopyImageToImageInfoEXT = +proc newVkCopyImageToImageInfoEXT*(sType: VkStructureType = VkStructureType.CopyImageToImageInfoEXT, pNext: pointer = nil, flags: VkHostImageCopyFlagsEXT = 0.VkHostImageCopyFlagsEXT, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regions: openarray[VkImageCopy2]): VkCopyImageToImageInfoEXT = result = VkCopyImageToImageInfoEXT( sType: sType, pNext: pNext, @@ -19997,8 +19997,8 @@ proc newVkCopyImageToImageInfoEXT*(sType: VkStructureType = VkStructureType.Copy srcImageLayout: srcImageLayout, dstImage: dstImage, dstImageLayout: dstImageLayout, - regionCount: regionCount, - pRegions: pRegions, + regionCount: len(regions).uint32, + pRegions: if len(regions) == 0: nil else: cast[ptr VkImageCopy2](regions), ) proc newVkHostImageLayoutTransitionInfoEXT*(sType: VkStructureType = VkStructureType.HostImageLayoutTransitionInfoEXT, pNext: pointer = nil, image: VkImage, oldLayout: VkImageLayout, newLayout: VkImageLayout, subresourceRange: VkImageSubresourceRange): VkHostImageLayoutTransitionInfoEXT = @@ -20058,14 +20058,14 @@ proc newVkPipelinePoolSize*(sType: VkStructureType = VkStructureType.PipelinePoo poolEntryCount: poolEntryCount, ) -proc newVkDeviceObjectReservationCreateInfo*(sType: VkStructureType = VkStructureType.DeviceObjectReservationCreateInfo, pNext: pointer = nil, pipelineCacheCreateInfoCount: uint32, pPipelineCacheCreateInfos: ptr VkPipelineCacheCreateInfo, pipelinePoolSizeCount: uint32, pPipelinePoolSizes: ptr VkPipelinePoolSize, semaphoreRequestCount: uint32, commandBufferRequestCount: uint32, fenceRequestCount: uint32, deviceMemoryRequestCount: uint32, bufferRequestCount: uint32, imageRequestCount: uint32, eventRequestCount: uint32, queryPoolRequestCount: uint32, bufferViewRequestCount: uint32, imageViewRequestCount: uint32, layeredImageViewRequestCount: uint32, pipelineCacheRequestCount: uint32, pipelineLayoutRequestCount: uint32, renderPassRequestCount: uint32, graphicsPipelineRequestCount: uint32, computePipelineRequestCount: uint32, descriptorSetLayoutRequestCount: uint32, samplerRequestCount: uint32, descriptorPoolRequestCount: uint32, descriptorSetRequestCount: uint32, framebufferRequestCount: uint32, commandPoolRequestCount: uint32, samplerYcbcrConversionRequestCount: uint32, surfaceRequestCount: uint32, swapchainRequestCount: uint32, displayModeRequestCount: uint32, subpassDescriptionRequestCount: uint32, attachmentDescriptionRequestCount: uint32, descriptorSetLayoutBindingRequestCount: uint32, descriptorSetLayoutBindingLimit: uint32, maxImageViewMipLevels: uint32, maxImageViewArrayLayers: uint32, maxLayeredImageViewMipLevels: uint32, maxOcclusionQueriesPerPool: uint32, maxPipelineStatisticsQueriesPerPool: uint32, maxTimestampQueriesPerPool: uint32, maxImmutableSamplersPerDescriptorSetLayout: uint32): VkDeviceObjectReservationCreateInfo = +proc newVkDeviceObjectReservationCreateInfo*(sType: VkStructureType = VkStructureType.DeviceObjectReservationCreateInfo, pNext: pointer = nil, pipelineCacheCreateInfos: openarray[VkPipelineCacheCreateInfo], pipelinePoolSizes: openarray[VkPipelinePoolSize], semaphoreRequestCount: uint32, commandBufferRequestCount: uint32, fenceRequestCount: uint32, deviceMemoryRequestCount: uint32, bufferRequestCount: uint32, imageRequestCount: uint32, eventRequestCount: uint32, queryPoolRequestCount: uint32, bufferViewRequestCount: uint32, imageViewRequestCount: uint32, layeredImageViewRequestCount: uint32, pipelineCacheRequestCount: uint32, pipelineLayoutRequestCount: uint32, renderPassRequestCount: uint32, graphicsPipelineRequestCount: uint32, computePipelineRequestCount: uint32, descriptorSetLayoutRequestCount: uint32, samplerRequestCount: uint32, descriptorPoolRequestCount: uint32, descriptorSetRequestCount: uint32, framebufferRequestCount: uint32, commandPoolRequestCount: uint32, samplerYcbcrConversionRequestCount: uint32, surfaceRequestCount: uint32, swapchainRequestCount: uint32, displayModeRequestCount: uint32, subpassDescriptionRequestCount: uint32, attachmentDescriptionRequestCount: uint32, descriptorSetLayoutBindingRequestCount: uint32, descriptorSetLayoutBindingLimit: uint32, maxImageViewMipLevels: uint32, maxImageViewArrayLayers: uint32, maxLayeredImageViewMipLevels: uint32, maxOcclusionQueriesPerPool: uint32, maxPipelineStatisticsQueriesPerPool: uint32, maxTimestampQueriesPerPool: uint32, maxImmutableSamplersPerDescriptorSetLayout: uint32): VkDeviceObjectReservationCreateInfo = result = VkDeviceObjectReservationCreateInfo( sType: sType, pNext: pNext, - pipelineCacheCreateInfoCount: pipelineCacheCreateInfoCount, - pPipelineCacheCreateInfos: pPipelineCacheCreateInfos, - pipelinePoolSizeCount: pipelinePoolSizeCount, - pPipelinePoolSizes: pPipelinePoolSizes, + pipelineCacheCreateInfoCount: len(pipelineCacheCreateInfos).uint32, + pPipelineCacheCreateInfos: if len(pipelineCacheCreateInfos) == 0: nil else: cast[ptr VkPipelineCacheCreateInfo](pipelineCacheCreateInfos), + pipelinePoolSizeCount: len(pipelinePoolSizes).uint32, + pPipelinePoolSizes: if len(pipelinePoolSizes) == 0: nil else: cast[ptr VkPipelinePoolSize](pipelinePoolSizes), semaphoreRequestCount: semaphoreRequestCount, commandBufferRequestCount: commandBufferRequestCount, fenceRequestCount: fenceRequestCount, @@ -20188,12 +20188,12 @@ proc newVkQueueFamilyQueryResultStatusPropertiesKHR*(sType: VkStructureType = Vk queryResultStatusSupport: queryResultStatusSupport, ) -proc newVkVideoProfileListInfoKHR*(sType: VkStructureType = VkStructureType.VideoProfileListInfoKHR, pNext: pointer = nil, profileCount: uint32, pProfiles: ptr VkVideoProfileInfoKHR): VkVideoProfileListInfoKHR = +proc newVkVideoProfileListInfoKHR*(sType: VkStructureType = VkStructureType.VideoProfileListInfoKHR, pNext: pointer = nil, profiles: openarray[VkVideoProfileInfoKHR]): VkVideoProfileListInfoKHR = result = VkVideoProfileListInfoKHR( sType: sType, pNext: pNext, - profileCount: profileCount, - pProfiles: pProfiles, + profileCount: len(profiles).uint32, + pProfiles: if len(profiles) == 0: nil else: cast[ptr VkVideoProfileInfoKHR](profiles), ) proc newVkPhysicalDeviceVideoFormatInfoKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceVideoFormatInfoKHR, pNext: pointer = nil, imageUsage: VkImageUsageFlags): VkPhysicalDeviceVideoFormatInfoKHR = @@ -20290,7 +20290,7 @@ proc newVkVideoDecodeUsageInfoKHR*(sType: VkStructureType = VkStructureType.Vide videoUsageHints: videoUsageHints, ) -proc newVkVideoDecodeInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeInfoKHR, pNext: pointer = nil, flags: VkVideoDecodeFlagsKHR = 0.VkVideoDecodeFlagsKHR, srcBuffer: VkBuffer, srcBufferOffset: VkDeviceSize, srcBufferRange: VkDeviceSize, dstPictureResource: VkVideoPictureResourceInfoKHR, pSetupReferenceSlot: ptr VkVideoReferenceSlotInfoKHR, referenceSlotCount: uint32, pReferenceSlots: ptr VkVideoReferenceSlotInfoKHR): VkVideoDecodeInfoKHR = +proc newVkVideoDecodeInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeInfoKHR, pNext: pointer = nil, flags: VkVideoDecodeFlagsKHR = 0.VkVideoDecodeFlagsKHR, srcBuffer: VkBuffer, srcBufferOffset: VkDeviceSize, srcBufferRange: VkDeviceSize, dstPictureResource: VkVideoPictureResourceInfoKHR, pSetupReferenceSlot: ptr VkVideoReferenceSlotInfoKHR, referenceSlots: openarray[VkVideoReferenceSlotInfoKHR]): VkVideoDecodeInfoKHR = result = VkVideoDecodeInfoKHR( sType: sType, pNext: pNext, @@ -20300,8 +20300,8 @@ proc newVkVideoDecodeInfoKHR*(sType: VkStructureType = VkStructureType.VideoDeco srcBufferRange: srcBufferRange, dstPictureResource: dstPictureResource, pSetupReferenceSlot: pSetupReferenceSlot, - referenceSlotCount: referenceSlotCount, - pReferenceSlots: pReferenceSlots, + referenceSlotCount: len(referenceSlots).uint32, + pReferenceSlots: if len(referenceSlots) == 0: nil else: cast[ptr VkVideoReferenceSlotInfoKHR](referenceSlots), ) proc newVkPhysicalDeviceVideoMaintenance1FeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceVideoMaintenance1FeaturesKHR, pNext: pointer = nil, videoMaintenance1: VkBool32): VkPhysicalDeviceVideoMaintenance1FeaturesKHR = @@ -20336,14 +20336,14 @@ proc newVkVideoDecodeH264CapabilitiesKHR*(sType: VkStructureType = VkStructureTy fieldOffsetGranularity: fieldOffsetGranularity, ) -proc newVkVideoDecodeH264SessionParametersAddInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeH264SessionParametersAddInfoKHR, pNext: pointer = nil, stdSPSCount: uint32, pStdSPSs: ptr StdVideoH264SequenceParameterSet, stdPPSCount: uint32, pStdPPSs: ptr StdVideoH264PictureParameterSet): VkVideoDecodeH264SessionParametersAddInfoKHR = +proc newVkVideoDecodeH264SessionParametersAddInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeH264SessionParametersAddInfoKHR, pNext: pointer = nil, stdSPSs: openarray[StdVideoH264SequenceParameterSet], stdPPSs: openarray[StdVideoH264PictureParameterSet]): VkVideoDecodeH264SessionParametersAddInfoKHR = result = VkVideoDecodeH264SessionParametersAddInfoKHR( sType: sType, pNext: pNext, - stdSPSCount: stdSPSCount, - pStdSPSs: pStdSPSs, - stdPPSCount: stdPPSCount, - pStdPPSs: pStdPPSs, + stdSPSCount: len(stdSPSs).uint32, + pStdSPSs: if len(stdSPSs) == 0: nil else: cast[ptr StdVideoH264SequenceParameterSet](stdSPSs), + stdPPSCount: len(stdPPSs).uint32, + pStdPPSs: if len(stdPPSs) == 0: nil else: cast[ptr StdVideoH264PictureParameterSet](stdPPSs), ) proc newVkVideoDecodeH264SessionParametersCreateInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeH264SessionParametersCreateInfoKHR, pNext: pointer = nil, maxStdSPSCount: uint32, maxStdPPSCount: uint32, pParametersAddInfo: ptr VkVideoDecodeH264SessionParametersAddInfoKHR): VkVideoDecodeH264SessionParametersCreateInfoKHR = @@ -20355,13 +20355,13 @@ proc newVkVideoDecodeH264SessionParametersCreateInfoKHR*(sType: VkStructureType pParametersAddInfo: pParametersAddInfo, ) -proc newVkVideoDecodeH264PictureInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeH264PictureInfoKHR, pNext: pointer = nil, pStdPictureInfo: ptr StdVideoDecodeH264PictureInfo, sliceCount: uint32, pSliceOffsets: ptr uint32): VkVideoDecodeH264PictureInfoKHR = +proc newVkVideoDecodeH264PictureInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeH264PictureInfoKHR, pNext: pointer = nil, pStdPictureInfo: ptr StdVideoDecodeH264PictureInfo, sliceOffsets: openarray[uint32]): VkVideoDecodeH264PictureInfoKHR = result = VkVideoDecodeH264PictureInfoKHR( sType: sType, pNext: pNext, pStdPictureInfo: pStdPictureInfo, - sliceCount: sliceCount, - pSliceOffsets: pSliceOffsets, + sliceCount: len(sliceOffsets).uint32, + pSliceOffsets: if len(sliceOffsets) == 0: nil else: cast[ptr uint32](sliceOffsets), ) proc newVkVideoDecodeH264DpbSlotInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeH264DpbSlotInfoKHR, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoDecodeH264ReferenceInfo): VkVideoDecodeH264DpbSlotInfoKHR = @@ -20385,16 +20385,16 @@ proc newVkVideoDecodeH265CapabilitiesKHR*(sType: VkStructureType = VkStructureTy maxLevelIdc: maxLevelIdc, ) -proc newVkVideoDecodeH265SessionParametersAddInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeH265SessionParametersAddInfoKHR, pNext: pointer = nil, stdVPSCount: uint32, pStdVPSs: ptr StdVideoH265VideoParameterSet, stdSPSCount: uint32, pStdSPSs: ptr StdVideoH265SequenceParameterSet, stdPPSCount: uint32, pStdPPSs: ptr StdVideoH265PictureParameterSet): VkVideoDecodeH265SessionParametersAddInfoKHR = +proc newVkVideoDecodeH265SessionParametersAddInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeH265SessionParametersAddInfoKHR, pNext: pointer = nil, stdVPSs: openarray[StdVideoH265VideoParameterSet], stdSPSs: openarray[StdVideoH265SequenceParameterSet], stdPPSs: openarray[StdVideoH265PictureParameterSet]): VkVideoDecodeH265SessionParametersAddInfoKHR = result = VkVideoDecodeH265SessionParametersAddInfoKHR( sType: sType, pNext: pNext, - stdVPSCount: stdVPSCount, - pStdVPSs: pStdVPSs, - stdSPSCount: stdSPSCount, - pStdSPSs: pStdSPSs, - stdPPSCount: stdPPSCount, - pStdPPSs: pStdPPSs, + stdVPSCount: len(stdVPSs).uint32, + pStdVPSs: if len(stdVPSs) == 0: nil else: cast[ptr StdVideoH265VideoParameterSet](stdVPSs), + stdSPSCount: len(stdSPSs).uint32, + pStdSPSs: if len(stdSPSs) == 0: nil else: cast[ptr StdVideoH265SequenceParameterSet](stdSPSs), + stdPPSCount: len(stdPPSs).uint32, + pStdPPSs: if len(stdPPSs) == 0: nil else: cast[ptr StdVideoH265PictureParameterSet](stdPPSs), ) proc newVkVideoDecodeH265SessionParametersCreateInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeH265SessionParametersCreateInfoKHR, pNext: pointer = nil, maxStdVPSCount: uint32, maxStdSPSCount: uint32, maxStdPPSCount: uint32, pParametersAddInfo: ptr VkVideoDecodeH265SessionParametersAddInfoKHR): VkVideoDecodeH265SessionParametersCreateInfoKHR = @@ -20407,13 +20407,13 @@ proc newVkVideoDecodeH265SessionParametersCreateInfoKHR*(sType: VkStructureType pParametersAddInfo: pParametersAddInfo, ) -proc newVkVideoDecodeH265PictureInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeH265PictureInfoKHR, pNext: pointer = nil, pStdPictureInfo: ptr StdVideoDecodeH265PictureInfo, sliceSegmentCount: uint32, pSliceSegmentOffsets: ptr uint32): VkVideoDecodeH265PictureInfoKHR = +proc newVkVideoDecodeH265PictureInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeH265PictureInfoKHR, pNext: pointer = nil, pStdPictureInfo: ptr StdVideoDecodeH265PictureInfo, sliceSegmentOffsets: openarray[uint32]): VkVideoDecodeH265PictureInfoKHR = result = VkVideoDecodeH265PictureInfoKHR( sType: sType, pNext: pNext, pStdPictureInfo: pStdPictureInfo, - sliceSegmentCount: sliceSegmentCount, - pSliceSegmentOffsets: pSliceSegmentOffsets, + sliceSegmentCount: len(sliceSegmentOffsets).uint32, + pSliceSegmentOffsets: if len(sliceSegmentOffsets) == 0: nil else: cast[ptr uint32](sliceSegmentOffsets), ) proc newVkVideoDecodeH265DpbSlotInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeH265DpbSlotInfoKHR, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoDecodeH265ReferenceInfo): VkVideoDecodeH265DpbSlotInfoKHR = @@ -20445,16 +20445,16 @@ proc newVkVideoDecodeAV1SessionParametersCreateInfoKHR*(sType: VkStructureType = pStdSequenceHeader: pStdSequenceHeader, ) -proc newVkVideoDecodeAV1PictureInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeAV1PictureInfoKHR, pNext: pointer = nil, pStdPictureInfo: ptr StdVideoDecodeAV1PictureInfo, referenceNameSlotIndices: array[VK_MAX_VIDEO_AV1_REFERENCES_PER_FRAME_KHR, int32], frameHeaderOffset: uint32, tileCount: uint32, pTileOffsets: ptr uint32, pTileSizes: ptr uint32): VkVideoDecodeAV1PictureInfoKHR = +proc newVkVideoDecodeAV1PictureInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeAV1PictureInfoKHR, pNext: pointer = nil, pStdPictureInfo: ptr StdVideoDecodeAV1PictureInfo, referenceNameSlotIndices: array[VK_MAX_VIDEO_AV1_REFERENCES_PER_FRAME_KHR, int32], frameHeaderOffset: uint32, tileOffsets: openarray[uint32], tileSizes: openarray[uint32]): VkVideoDecodeAV1PictureInfoKHR = result = VkVideoDecodeAV1PictureInfoKHR( sType: sType, pNext: pNext, pStdPictureInfo: pStdPictureInfo, referenceNameSlotIndices: referenceNameSlotIndices, frameHeaderOffset: frameHeaderOffset, - tileCount: tileCount, - pTileOffsets: pTileOffsets, - pTileSizes: pTileSizes, + tileCount: len(tileOffsets).uint32, + pTileOffsets: if len(tileOffsets) == 0: nil else: cast[ptr uint32](tileOffsets), + pTileSizes: if len(tileSizes) == 0: nil else: cast[ptr uint32](tileSizes), ) proc newVkVideoDecodeAV1DpbSlotInfoKHR*(sType: VkStructureType = VkStructureType.VideoDecodeAV1DpbSlotInfoKHR, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoDecodeAV1ReferenceInfo): VkVideoDecodeAV1DpbSlotInfoKHR = @@ -20509,15 +20509,15 @@ proc newVkVideoEncodeSessionParametersFeedbackInfoKHR*(sType: VkStructureType = hasOverrides: hasOverrides, ) -proc newVkVideoBeginCodingInfoKHR*(sType: VkStructureType = VkStructureType.VideoBeginCodingInfoKHR, pNext: pointer = nil, flags: VkVideoBeginCodingFlagsKHR = 0.VkVideoBeginCodingFlagsKHR, videoSession: VkVideoSessionKHR, videoSessionParameters: VkVideoSessionParametersKHR, referenceSlotCount: uint32, pReferenceSlots: ptr VkVideoReferenceSlotInfoKHR): VkVideoBeginCodingInfoKHR = +proc newVkVideoBeginCodingInfoKHR*(sType: VkStructureType = VkStructureType.VideoBeginCodingInfoKHR, pNext: pointer = nil, flags: VkVideoBeginCodingFlagsKHR = 0.VkVideoBeginCodingFlagsKHR, videoSession: VkVideoSessionKHR, videoSessionParameters: VkVideoSessionParametersKHR, referenceSlots: openarray[VkVideoReferenceSlotInfoKHR]): VkVideoBeginCodingInfoKHR = result = VkVideoBeginCodingInfoKHR( sType: sType, pNext: pNext, flags: flags, videoSession: videoSession, videoSessionParameters: videoSessionParameters, - referenceSlotCount: referenceSlotCount, - pReferenceSlots: pReferenceSlots, + referenceSlotCount: len(referenceSlots).uint32, + pReferenceSlots: if len(referenceSlots) == 0: nil else: cast[ptr VkVideoReferenceSlotInfoKHR](referenceSlots), ) proc newVkVideoEndCodingInfoKHR*(sType: VkStructureType = VkStructureType.VideoEndCodingInfoKHR, pNext: pointer = nil, flags: VkVideoEndCodingFlagsKHR = 0.VkVideoEndCodingFlagsKHR): VkVideoEndCodingInfoKHR = @@ -20543,7 +20543,7 @@ proc newVkVideoEncodeUsageInfoKHR*(sType: VkStructureType = VkStructureType.Vide tuningMode: tuningMode, ) -proc newVkVideoEncodeInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeInfoKHR, pNext: pointer = nil, flags: VkVideoEncodeFlagsKHR = 0.VkVideoEncodeFlagsKHR, dstBuffer: VkBuffer, dstBufferOffset: VkDeviceSize, dstBufferRange: VkDeviceSize, srcPictureResource: VkVideoPictureResourceInfoKHR, pSetupReferenceSlot: ptr VkVideoReferenceSlotInfoKHR, referenceSlotCount: uint32, pReferenceSlots: ptr VkVideoReferenceSlotInfoKHR, precedingExternallyEncodedBytes: uint32): VkVideoEncodeInfoKHR = +proc newVkVideoEncodeInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeInfoKHR, pNext: pointer = nil, flags: VkVideoEncodeFlagsKHR = 0.VkVideoEncodeFlagsKHR, dstBuffer: VkBuffer, dstBufferOffset: VkDeviceSize, dstBufferRange: VkDeviceSize, srcPictureResource: VkVideoPictureResourceInfoKHR, pSetupReferenceSlot: ptr VkVideoReferenceSlotInfoKHR, referenceSlots: openarray[VkVideoReferenceSlotInfoKHR], precedingExternallyEncodedBytes: uint32): VkVideoEncodeInfoKHR = result = VkVideoEncodeInfoKHR( sType: sType, pNext: pNext, @@ -20553,8 +20553,8 @@ proc newVkVideoEncodeInfoKHR*(sType: VkStructureType = VkStructureType.VideoEnco dstBufferRange: dstBufferRange, srcPictureResource: srcPictureResource, pSetupReferenceSlot: pSetupReferenceSlot, - referenceSlotCount: referenceSlotCount, - pReferenceSlots: pReferenceSlots, + referenceSlotCount: len(referenceSlots).uint32, + pReferenceSlots: if len(referenceSlots) == 0: nil else: cast[ptr VkVideoReferenceSlotInfoKHR](referenceSlots), precedingExternallyEncodedBytes: precedingExternallyEncodedBytes, ) @@ -20588,14 +20588,14 @@ proc newVkVideoEncodeQualityLevelPropertiesKHR*(sType: VkStructureType = VkStruc preferredRateControlLayerCount: preferredRateControlLayerCount, ) -proc newVkVideoEncodeRateControlInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeRateControlInfoKHR, pNext: pointer = nil, flags: VkVideoEncodeRateControlFlagsKHR = 0.VkVideoEncodeRateControlFlagsKHR, rateControlMode: VkVideoEncodeRateControlModeFlagBitsKHR, layerCount: uint32, pLayers: ptr VkVideoEncodeRateControlLayerInfoKHR, virtualBufferSizeInMs: uint32, initialVirtualBufferSizeInMs: uint32): VkVideoEncodeRateControlInfoKHR = +proc newVkVideoEncodeRateControlInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeRateControlInfoKHR, pNext: pointer = nil, flags: VkVideoEncodeRateControlFlagsKHR = 0.VkVideoEncodeRateControlFlagsKHR, rateControlMode: VkVideoEncodeRateControlModeFlagBitsKHR, layers: openarray[VkVideoEncodeRateControlLayerInfoKHR], virtualBufferSizeInMs: uint32, initialVirtualBufferSizeInMs: uint32): VkVideoEncodeRateControlInfoKHR = result = VkVideoEncodeRateControlInfoKHR( sType: sType, pNext: pNext, flags: flags, rateControlMode: rateControlMode, - layerCount: layerCount, - pLayers: pLayers, + layerCount: len(layers).uint32, + pLayers: if len(layers) == 0: nil else: cast[ptr VkVideoEncodeRateControlLayerInfoKHR](layers), virtualBufferSizeInMs: virtualBufferSizeInMs, initialVirtualBufferSizeInMs: initialVirtualBufferSizeInMs, ) @@ -20665,14 +20665,14 @@ proc newVkVideoEncodeH264SessionCreateInfoKHR*(sType: VkStructureType = VkStruct maxLevelIdc: maxLevelIdc, ) -proc newVkVideoEncodeH264SessionParametersAddInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH264SessionParametersAddInfoKHR, pNext: pointer = nil, stdSPSCount: uint32, pStdSPSs: ptr StdVideoH264SequenceParameterSet, stdPPSCount: uint32, pStdPPSs: ptr StdVideoH264PictureParameterSet): VkVideoEncodeH264SessionParametersAddInfoKHR = +proc newVkVideoEncodeH264SessionParametersAddInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH264SessionParametersAddInfoKHR, pNext: pointer = nil, stdSPSs: openarray[StdVideoH264SequenceParameterSet], stdPPSs: openarray[StdVideoH264PictureParameterSet]): VkVideoEncodeH264SessionParametersAddInfoKHR = result = VkVideoEncodeH264SessionParametersAddInfoKHR( sType: sType, pNext: pNext, - stdSPSCount: stdSPSCount, - pStdSPSs: pStdSPSs, - stdPPSCount: stdPPSCount, - pStdPPSs: pStdPPSs, + stdSPSCount: len(stdSPSs).uint32, + pStdSPSs: if len(stdSPSs) == 0: nil else: cast[ptr StdVideoH264SequenceParameterSet](stdSPSs), + stdPPSCount: len(stdPPSs).uint32, + pStdPPSs: if len(stdPPSs) == 0: nil else: cast[ptr StdVideoH264PictureParameterSet](stdPPSs), ) proc newVkVideoEncodeH264SessionParametersCreateInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH264SessionParametersCreateInfoKHR, pNext: pointer = nil, maxStdSPSCount: uint32, maxStdPPSCount: uint32, pParametersAddInfo: ptr VkVideoEncodeH264SessionParametersAddInfoKHR): VkVideoEncodeH264SessionParametersCreateInfoKHR = @@ -20709,12 +20709,12 @@ proc newVkVideoEncodeH264DpbSlotInfoKHR*(sType: VkStructureType = VkStructureTyp pStdReferenceInfo: pStdReferenceInfo, ) -proc newVkVideoEncodeH264PictureInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH264PictureInfoKHR, pNext: pointer = nil, naluSliceEntryCount: uint32, pNaluSliceEntries: ptr VkVideoEncodeH264NaluSliceInfoKHR, pStdPictureInfo: ptr StdVideoEncodeH264PictureInfo, generatePrefixNalu: VkBool32): VkVideoEncodeH264PictureInfoKHR = +proc newVkVideoEncodeH264PictureInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH264PictureInfoKHR, pNext: pointer = nil, naluSliceEntries: openarray[VkVideoEncodeH264NaluSliceInfoKHR], pStdPictureInfo: ptr StdVideoEncodeH264PictureInfo, generatePrefixNalu: VkBool32): VkVideoEncodeH264PictureInfoKHR = result = VkVideoEncodeH264PictureInfoKHR( sType: sType, pNext: pNext, - naluSliceEntryCount: naluSliceEntryCount, - pNaluSliceEntries: pNaluSliceEntries, + naluSliceEntryCount: len(naluSliceEntries).uint32, + pNaluSliceEntries: if len(naluSliceEntries) == 0: nil else: cast[ptr VkVideoEncodeH264NaluSliceInfoKHR](naluSliceEntries), pStdPictureInfo: pStdPictureInfo, generatePrefixNalu: generatePrefixNalu, ) @@ -20825,16 +20825,16 @@ proc newVkVideoEncodeH265SessionCreateInfoKHR*(sType: VkStructureType = VkStruct maxLevelIdc: maxLevelIdc, ) -proc newVkVideoEncodeH265SessionParametersAddInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH265SessionParametersAddInfoKHR, pNext: pointer = nil, stdVPSCount: uint32, pStdVPSs: ptr StdVideoH265VideoParameterSet, stdSPSCount: uint32, pStdSPSs: ptr StdVideoH265SequenceParameterSet, stdPPSCount: uint32, pStdPPSs: ptr StdVideoH265PictureParameterSet): VkVideoEncodeH265SessionParametersAddInfoKHR = +proc newVkVideoEncodeH265SessionParametersAddInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH265SessionParametersAddInfoKHR, pNext: pointer = nil, stdVPSs: openarray[StdVideoH265VideoParameterSet], stdSPSs: openarray[StdVideoH265SequenceParameterSet], stdPPSs: openarray[StdVideoH265PictureParameterSet]): VkVideoEncodeH265SessionParametersAddInfoKHR = result = VkVideoEncodeH265SessionParametersAddInfoKHR( sType: sType, pNext: pNext, - stdVPSCount: stdVPSCount, - pStdVPSs: pStdVPSs, - stdSPSCount: stdSPSCount, - pStdSPSs: pStdSPSs, - stdPPSCount: stdPPSCount, - pStdPPSs: pStdPPSs, + stdVPSCount: len(stdVPSs).uint32, + pStdVPSs: if len(stdVPSs) == 0: nil else: cast[ptr StdVideoH265VideoParameterSet](stdVPSs), + stdSPSCount: len(stdSPSs).uint32, + pStdSPSs: if len(stdSPSs) == 0: nil else: cast[ptr StdVideoH265SequenceParameterSet](stdSPSs), + stdPPSCount: len(stdPPSs).uint32, + pStdPPSs: if len(stdPPSs) == 0: nil else: cast[ptr StdVideoH265PictureParameterSet](stdPPSs), ) proc newVkVideoEncodeH265SessionParametersCreateInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH265SessionParametersCreateInfoKHR, pNext: pointer = nil, maxStdVPSCount: uint32, maxStdSPSCount: uint32, maxStdPPSCount: uint32, pParametersAddInfo: ptr VkVideoEncodeH265SessionParametersAddInfoKHR): VkVideoEncodeH265SessionParametersCreateInfoKHR = @@ -20868,12 +20868,12 @@ proc newVkVideoEncodeH265SessionParametersFeedbackInfoKHR*(sType: VkStructureTyp hasStdPPSOverrides: hasStdPPSOverrides, ) -proc newVkVideoEncodeH265PictureInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH265PictureInfoKHR, pNext: pointer = nil, naluSliceSegmentEntryCount: uint32, pNaluSliceSegmentEntries: ptr VkVideoEncodeH265NaluSliceSegmentInfoKHR, pStdPictureInfo: ptr StdVideoEncodeH265PictureInfo): VkVideoEncodeH265PictureInfoKHR = +proc newVkVideoEncodeH265PictureInfoKHR*(sType: VkStructureType = VkStructureType.VideoEncodeH265PictureInfoKHR, pNext: pointer = nil, naluSliceSegmentEntries: openarray[VkVideoEncodeH265NaluSliceSegmentInfoKHR], pStdPictureInfo: ptr StdVideoEncodeH265PictureInfo): VkVideoEncodeH265PictureInfoKHR = result = VkVideoEncodeH265PictureInfoKHR( sType: sType, pNext: pNext, - naluSliceSegmentEntryCount: naluSliceSegmentEntryCount, - pNaluSliceSegmentEntries: pNaluSliceSegmentEntries, + naluSliceSegmentEntryCount: len(naluSliceSegmentEntries).uint32, + pNaluSliceSegmentEntries: if len(naluSliceSegmentEntries) == 0: nil else: cast[ptr VkVideoEncodeH265NaluSliceSegmentInfoKHR](naluSliceSegmentEntries), pStdPictureInfo: pStdPictureInfo, ) @@ -20953,13 +20953,13 @@ proc newVkPhysicalDeviceInheritedViewportScissorFeaturesNV*(sType: VkStructureTy inheritedViewportScissor2D: inheritedViewportScissor2D, ) -proc newVkCommandBufferInheritanceViewportScissorInfoNV*(sType: VkStructureType = VkStructureType.CommandBufferInheritanceViewportScissorInfoNV, pNext: pointer = nil, viewportScissor2D: VkBool32, viewportDepthCount: uint32, pViewportDepths: ptr VkViewport): VkCommandBufferInheritanceViewportScissorInfoNV = +proc newVkCommandBufferInheritanceViewportScissorInfoNV*(sType: VkStructureType = VkStructureType.CommandBufferInheritanceViewportScissorInfoNV, pNext: pointer = nil, viewportScissor2D: VkBool32, viewportDepths: openarray[VkViewport]): VkCommandBufferInheritanceViewportScissorInfoNV = result = VkCommandBufferInheritanceViewportScissorInfoNV( sType: sType, pNext: pNext, viewportScissor2D: viewportScissor2D, - viewportDepthCount: viewportDepthCount, - pViewportDepths: pViewportDepths, + viewportDepthCount: len(viewportDepths).uint32, + pViewportDepths: if len(viewportDepths) == 0: nil else: cast[ptr VkViewport](viewportDepths), ) proc newVkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT, pNext: pointer = nil, ycbcr2plane444Formats: VkBool32): VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT = @@ -21008,7 +21008,7 @@ proc newVkCuFunctionCreateInfoNVX*(sType: VkStructureType = VkStructureType.CuFu pName: pName, ) -proc newVkCuLaunchInfoNVX*(sType: VkStructureType = VkStructureType.CuLaunchInfoNVX, pNext: pointer = nil, function: VkCuFunctionNVX, gridDimX: uint32, gridDimY: uint32, gridDimZ: uint32, blockDimX: uint32, blockDimY: uint32, blockDimZ: uint32, sharedMemBytes: uint32, paramCount: uint, pParams: ptr pointer, extraCount: uint, pExtras: ptr pointer): VkCuLaunchInfoNVX = +proc newVkCuLaunchInfoNVX*(sType: VkStructureType = VkStructureType.CuLaunchInfoNVX, pNext: pointer = nil, function: VkCuFunctionNVX, gridDimX: uint32, gridDimY: uint32, gridDimZ: uint32, blockDimX: uint32, blockDimY: uint32, blockDimZ: uint32, sharedMemBytes: uint32, params: openarray[pointer], extras: openarray[pointer]): VkCuLaunchInfoNVX = result = VkCuLaunchInfoNVX( sType: sType, pNext: pNext, @@ -21020,10 +21020,10 @@ proc newVkCuLaunchInfoNVX*(sType: VkStructureType = VkStructureType.CuLaunchInfo blockDimY: blockDimY, blockDimZ: blockDimZ, sharedMemBytes: sharedMemBytes, - paramCount: paramCount, - pParams: pParams, - extraCount: extraCount, - pExtras: pExtras, + paramCount: len(params).uint, + pParams: if len(params) == 0: nil else: cast[ptr pointer](params), + extraCount: len(extras).uint, + pExtras: if len(extras) == 0: nil else: cast[ptr pointer](extras), ) proc newVkPhysicalDeviceDescriptorBufferFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceDescriptorBufferFeaturesEXT, pNext: pointer = nil, descriptorBuffer: VkBool32, descriptorBufferCaptureReplay: VkBool32, descriptorBufferImageLayoutIgnored: VkBool32, descriptorBufferPushDescriptors: VkBool32): VkPhysicalDeviceDescriptorBufferFeaturesEXT = @@ -21370,7 +21370,7 @@ proc newVkSysmemColorSpaceFUCHSIA*(sType: VkStructureType = VkStructureType.Sysm colorSpace: colorSpace, ) -proc newVkImageFormatConstraintsInfoFUCHSIA*(sType: VkStructureType = VkStructureType.ImageFormatConstraintsInfoFUCHSIA, pNext: pointer = nil, imageCreateInfo: VkImageCreateInfo, requiredFormatFeatures: VkFormatFeatureFlags, flags: VkImageFormatConstraintsFlagsFUCHSIA = 0.VkImageFormatConstraintsFlagsFUCHSIA, sysmemPixelFormat: uint64, colorSpaceCount: uint32, pColorSpaces: ptr VkSysmemColorSpaceFUCHSIA): VkImageFormatConstraintsInfoFUCHSIA = +proc newVkImageFormatConstraintsInfoFUCHSIA*(sType: VkStructureType = VkStructureType.ImageFormatConstraintsInfoFUCHSIA, pNext: pointer = nil, imageCreateInfo: VkImageCreateInfo, requiredFormatFeatures: VkFormatFeatureFlags, flags: VkImageFormatConstraintsFlagsFUCHSIA = 0.VkImageFormatConstraintsFlagsFUCHSIA, sysmemPixelFormat: uint64, colorSpaces: openarray[VkSysmemColorSpaceFUCHSIA]): VkImageFormatConstraintsInfoFUCHSIA = result = VkImageFormatConstraintsInfoFUCHSIA( sType: sType, pNext: pNext, @@ -21378,16 +21378,16 @@ proc newVkImageFormatConstraintsInfoFUCHSIA*(sType: VkStructureType = VkStructur requiredFormatFeatures: requiredFormatFeatures, flags: flags, sysmemPixelFormat: sysmemPixelFormat, - colorSpaceCount: colorSpaceCount, - pColorSpaces: pColorSpaces, + colorSpaceCount: len(colorSpaces).uint32, + pColorSpaces: if len(colorSpaces) == 0: nil else: cast[ptr VkSysmemColorSpaceFUCHSIA](colorSpaces), ) -proc newVkImageConstraintsInfoFUCHSIA*(sType: VkStructureType = VkStructureType.ImageConstraintsInfoFUCHSIA, pNext: pointer = nil, formatConstraintsCount: uint32, pFormatConstraints: ptr VkImageFormatConstraintsInfoFUCHSIA, bufferCollectionConstraints: VkBufferCollectionConstraintsInfoFUCHSIA, flags: VkImageConstraintsInfoFlagsFUCHSIA = 0.VkImageConstraintsInfoFlagsFUCHSIA): VkImageConstraintsInfoFUCHSIA = +proc newVkImageConstraintsInfoFUCHSIA*(sType: VkStructureType = VkStructureType.ImageConstraintsInfoFUCHSIA, pNext: pointer = nil, formatConstraints: openarray[VkImageFormatConstraintsInfoFUCHSIA], bufferCollectionConstraints: VkBufferCollectionConstraintsInfoFUCHSIA, flags: VkImageConstraintsInfoFlagsFUCHSIA = 0.VkImageConstraintsInfoFlagsFUCHSIA): VkImageConstraintsInfoFUCHSIA = result = VkImageConstraintsInfoFUCHSIA( sType: sType, pNext: pNext, - formatConstraintsCount: formatConstraintsCount, - pFormatConstraints: pFormatConstraints, + formatConstraintsCount: len(formatConstraints).uint32, + pFormatConstraints: if len(formatConstraints) == 0: nil else: cast[ptr VkImageFormatConstraintsInfoFUCHSIA](formatConstraints), bufferCollectionConstraints: bufferCollectionConstraints, flags: flags, ) @@ -21419,7 +21419,7 @@ proc newVkCudaFunctionCreateInfoNV*(sType: VkStructureType = VkStructureType.Cud pName: pName, ) -proc newVkCudaLaunchInfoNV*(sType: VkStructureType = VkStructureType.CudaLaunchInfoNV, pNext: pointer = nil, function: VkCudaFunctionNV, gridDimX: uint32, gridDimY: uint32, gridDimZ: uint32, blockDimX: uint32, blockDimY: uint32, blockDimZ: uint32, sharedMemBytes: uint32, paramCount: uint, pParams: ptr pointer, extraCount: uint, pExtras: ptr pointer): VkCudaLaunchInfoNV = +proc newVkCudaLaunchInfoNV*(sType: VkStructureType = VkStructureType.CudaLaunchInfoNV, pNext: pointer = nil, function: VkCudaFunctionNV, gridDimX: uint32, gridDimY: uint32, gridDimZ: uint32, blockDimX: uint32, blockDimY: uint32, blockDimZ: uint32, sharedMemBytes: uint32, params: openarray[pointer], extras: openarray[pointer]): VkCudaLaunchInfoNV = result = VkCudaLaunchInfoNV( sType: sType, pNext: pNext, @@ -21431,10 +21431,10 @@ proc newVkCudaLaunchInfoNV*(sType: VkStructureType = VkStructureType.CudaLaunchI blockDimY: blockDimY, blockDimZ: blockDimZ, sharedMemBytes: sharedMemBytes, - paramCount: paramCount, - pParams: pParams, - extraCount: extraCount, - pExtras: pExtras, + paramCount: len(params).uint, + pParams: if len(params) == 0: nil else: cast[ptr pointer](params), + extraCount: len(extras).uint, + pExtras: if len(extras) == 0: nil else: cast[ptr pointer](extras), ) proc newVkPhysicalDeviceRGBA10X6FormatsFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceRGBA10X6FormatsFeaturesEXT, pNext: pointer = nil, formatRgba10x6WithoutYCbCrSampler: VkBool32): VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT = @@ -21453,12 +21453,12 @@ proc newVkFormatProperties3*(sType: VkStructureType = VkStructureType.FormatProp bufferFeatures: bufferFeatures, ) -proc newVkDrmFormatModifierPropertiesList2EXT*(sType: VkStructureType = VkStructureType.DrmFormatModifierPropertiesList2EXT, pNext: pointer = nil, drmFormatModifierCount: uint32, pDrmFormatModifierProperties: ptr VkDrmFormatModifierProperties2EXT): VkDrmFormatModifierPropertiesList2EXT = +proc newVkDrmFormatModifierPropertiesList2EXT*(sType: VkStructureType = VkStructureType.DrmFormatModifierPropertiesList2EXT, pNext: pointer = nil, drmFormatModifierProperties: openarray[VkDrmFormatModifierProperties2EXT]): VkDrmFormatModifierPropertiesList2EXT = result = VkDrmFormatModifierPropertiesList2EXT( sType: sType, pNext: pNext, - drmFormatModifierCount: drmFormatModifierCount, - pDrmFormatModifierProperties: pDrmFormatModifierProperties, + drmFormatModifierCount: len(drmFormatModifierProperties).uint32, + pDrmFormatModifierProperties: if len(drmFormatModifierProperties) == 0: nil else: cast[ptr VkDrmFormatModifierProperties2EXT](drmFormatModifierProperties), ) proc newVkDrmFormatModifierProperties2EXT*(drmFormatModifier: uint64, drmFormatModifierPlaneCount: uint32, drmFormatModifierTilingFeatures: VkFormatFeatureFlags2): VkDrmFormatModifierProperties2EXT = @@ -21482,18 +21482,18 @@ proc newVkAndroidHardwareBufferFormatProperties2ANDROID*(sType: VkStructureType suggestedYChromaOffset: suggestedYChromaOffset, ) -proc newVkPipelineRenderingCreateInfo*(sType: VkStructureType = VkStructureType.PipelineRenderingCreateInfo, pNext: pointer = nil, viewMask: uint32, colorAttachmentCount: uint32, pColorAttachmentFormats: ptr VkFormat, depthAttachmentFormat: VkFormat, stencilAttachmentFormat: VkFormat): VkPipelineRenderingCreateInfo = +proc newVkPipelineRenderingCreateInfo*(sType: VkStructureType = VkStructureType.PipelineRenderingCreateInfo, pNext: pointer = nil, viewMask: uint32, colorAttachmentFormats: openarray[VkFormat], depthAttachmentFormat: VkFormat, stencilAttachmentFormat: VkFormat): VkPipelineRenderingCreateInfo = result = VkPipelineRenderingCreateInfo( sType: sType, pNext: pNext, viewMask: viewMask, - colorAttachmentCount: colorAttachmentCount, - pColorAttachmentFormats: pColorAttachmentFormats, + colorAttachmentCount: len(colorAttachmentFormats).uint32, + pColorAttachmentFormats: if len(colorAttachmentFormats) == 0: nil else: cast[ptr VkFormat](colorAttachmentFormats), depthAttachmentFormat: depthAttachmentFormat, stencilAttachmentFormat: stencilAttachmentFormat, ) -proc newVkRenderingInfo*(sType: VkStructureType = VkStructureType.RenderingInfo, pNext: pointer = nil, flags: VkRenderingFlags = 0.VkRenderingFlags, renderArea: VkRect2D, layerCount: uint32, viewMask: uint32, colorAttachmentCount: uint32, pColorAttachments: ptr VkRenderingAttachmentInfo, pDepthAttachment: ptr VkRenderingAttachmentInfo, pStencilAttachment: ptr VkRenderingAttachmentInfo): VkRenderingInfo = +proc newVkRenderingInfo*(sType: VkStructureType = VkStructureType.RenderingInfo, pNext: pointer = nil, flags: VkRenderingFlags = 0.VkRenderingFlags, renderArea: VkRect2D, layerCount: uint32, viewMask: uint32, colorAttachments: openarray[VkRenderingAttachmentInfo], pDepthAttachment: ptr VkRenderingAttachmentInfo, pStencilAttachment: ptr VkRenderingAttachmentInfo): VkRenderingInfo = result = VkRenderingInfo( sType: sType, pNext: pNext, @@ -21501,8 +21501,8 @@ proc newVkRenderingInfo*(sType: VkStructureType = VkStructureType.RenderingInfo, renderArea: renderArea, layerCount: layerCount, viewMask: viewMask, - colorAttachmentCount: colorAttachmentCount, - pColorAttachments: pColorAttachments, + colorAttachmentCount: len(colorAttachments).uint32, + pColorAttachments: if len(colorAttachments) == 0: nil else: cast[ptr VkRenderingAttachmentInfo](colorAttachments), pDepthAttachment: pDepthAttachment, pStencilAttachment: pStencilAttachment, ) @@ -21545,25 +21545,25 @@ proc newVkPhysicalDeviceDynamicRenderingFeatures*(sType: VkStructureType = VkStr dynamicRendering: dynamicRendering, ) -proc newVkCommandBufferInheritanceRenderingInfo*(sType: VkStructureType = VkStructureType.CommandBufferInheritanceRenderingInfo, pNext: pointer = nil, flags: VkRenderingFlags = 0.VkRenderingFlags, viewMask: uint32, colorAttachmentCount: uint32, pColorAttachmentFormats: ptr VkFormat, depthAttachmentFormat: VkFormat, stencilAttachmentFormat: VkFormat, rasterizationSamples: VkSampleCountFlagBits): VkCommandBufferInheritanceRenderingInfo = +proc newVkCommandBufferInheritanceRenderingInfo*(sType: VkStructureType = VkStructureType.CommandBufferInheritanceRenderingInfo, pNext: pointer = nil, flags: VkRenderingFlags = 0.VkRenderingFlags, viewMask: uint32, colorAttachmentFormats: openarray[VkFormat], depthAttachmentFormat: VkFormat, stencilAttachmentFormat: VkFormat, rasterizationSamples: VkSampleCountFlagBits): VkCommandBufferInheritanceRenderingInfo = result = VkCommandBufferInheritanceRenderingInfo( sType: sType, pNext: pNext, flags: flags, viewMask: viewMask, - colorAttachmentCount: colorAttachmentCount, - pColorAttachmentFormats: pColorAttachmentFormats, + colorAttachmentCount: len(colorAttachmentFormats).uint32, + pColorAttachmentFormats: if len(colorAttachmentFormats) == 0: nil else: cast[ptr VkFormat](colorAttachmentFormats), depthAttachmentFormat: depthAttachmentFormat, stencilAttachmentFormat: stencilAttachmentFormat, rasterizationSamples: rasterizationSamples, ) -proc newVkAttachmentSampleCountInfoAMD*(sType: VkStructureType = VkStructureType.AttachmentSampleCountInfoAMD, pNext: pointer = nil, colorAttachmentCount: uint32, pColorAttachmentSamples: ptr VkSampleCountFlagBits, depthStencilAttachmentSamples: VkSampleCountFlagBits): VkAttachmentSampleCountInfoAMD = +proc newVkAttachmentSampleCountInfoAMD*(sType: VkStructureType = VkStructureType.AttachmentSampleCountInfoAMD, pNext: pointer = nil, colorAttachmentSamples: openarray[VkSampleCountFlagBits], depthStencilAttachmentSamples: VkSampleCountFlagBits): VkAttachmentSampleCountInfoAMD = result = VkAttachmentSampleCountInfoAMD( sType: sType, pNext: pNext, - colorAttachmentCount: colorAttachmentCount, - pColorAttachmentSamples: pColorAttachmentSamples, + colorAttachmentCount: len(colorAttachmentSamples).uint32, + pColorAttachmentSamples: if len(colorAttachmentSamples) == 0: nil else: cast[ptr VkSampleCountFlagBits](colorAttachmentSamples), depthStencilAttachmentSamples: depthStencilAttachmentSamples, ) @@ -21696,13 +21696,13 @@ proc newVkShaderModuleIdentifierEXT*(sType: VkStructureType = VkStructureType.Sh identifier: identifier, ) -proc newVkImageCompressionControlEXT*(sType: VkStructureType = VkStructureType.ImageCompressionControlEXT, pNext: pointer = nil, flags: VkImageCompressionFlagsEXT = 0.VkImageCompressionFlagsEXT, compressionControlPlaneCount: uint32, pFixedRateFlags: ptr VkImageCompressionFixedRateFlagsEXT): VkImageCompressionControlEXT = +proc newVkImageCompressionControlEXT*(sType: VkStructureType = VkStructureType.ImageCompressionControlEXT, pNext: pointer = nil, flags: VkImageCompressionFlagsEXT = 0.VkImageCompressionFlagsEXT, fixedRateFlags: openarray[VkImageCompressionFixedRateFlagsEXT]): VkImageCompressionControlEXT = result = VkImageCompressionControlEXT( sType: sType, pNext: pNext, flags: flags, - compressionControlPlaneCount: compressionControlPlaneCount, - pFixedRateFlags: pFixedRateFlags, + compressionControlPlaneCount: len(fixedRateFlags).uint32, + pFixedRateFlags: if len(fixedRateFlags) == 0: nil else: cast[ptr VkImageCompressionFixedRateFlagsEXT](fixedRateFlags), ) proc newVkPhysicalDeviceImageCompressionControlFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceImageCompressionControlFeaturesEXT, pNext: pointer = nil, imageCompressionControl: VkBool32): VkPhysicalDeviceImageCompressionControlFeaturesEXT = @@ -22241,13 +22241,13 @@ proc newVkOpticalFlowSessionCreatePrivateDataInfoNV*(sType: VkStructureType = Vk pPrivateData: pPrivateData, ) -proc newVkOpticalFlowExecuteInfoNV*(sType: VkStructureType = VkStructureType.OpticalFlowExecuteInfoNV, pNext: pointer = nil, flags: VkOpticalFlowExecuteFlagsNV = 0.VkOpticalFlowExecuteFlagsNV, regionCount: uint32, pRegions: ptr VkRect2D): VkOpticalFlowExecuteInfoNV = +proc newVkOpticalFlowExecuteInfoNV*(sType: VkStructureType = VkStructureType.OpticalFlowExecuteInfoNV, pNext: pointer = nil, flags: VkOpticalFlowExecuteFlagsNV = 0.VkOpticalFlowExecuteFlagsNV, regions: openarray[VkRect2D]): VkOpticalFlowExecuteInfoNV = result = VkOpticalFlowExecuteInfoNV( sType: sType, pNext: pNext, flags: flags, - regionCount: regionCount, - pRegions: pRegions, + regionCount: len(regions).uint32, + pRegions: if len(regions) == 0: nil else: cast[ptr VkRect2D](regions), ) proc newVkPhysicalDeviceFaultFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceFaultFeaturesEXT, pNext: pointer = nil, deviceFault: VkBool32, deviceFaultVendorBinary: VkBool32): VkPhysicalDeviceFaultFeaturesEXT = @@ -22355,16 +22355,16 @@ proc newVkPhysicalDeviceShaderCoreBuiltinsFeaturesARM*(sType: VkStructureType = shaderCoreBuiltins: shaderCoreBuiltins, ) -proc newVkFrameBoundaryEXT*(sType: VkStructureType = VkStructureType.FrameBoundaryEXT, pNext: pointer = nil, flags: VkFrameBoundaryFlagsEXT = 0.VkFrameBoundaryFlagsEXT, frameID: uint64, imageCount: uint32, pImages: ptr VkImage, bufferCount: uint32, pBuffers: ptr VkBuffer, tagName: uint64, tagSize: uint, pTag: pointer = nil): VkFrameBoundaryEXT = +proc newVkFrameBoundaryEXT*(sType: VkStructureType = VkStructureType.FrameBoundaryEXT, pNext: pointer = nil, flags: VkFrameBoundaryFlagsEXT = 0.VkFrameBoundaryFlagsEXT, frameID: uint64, images: openarray[VkImage], buffers: openarray[VkBuffer], tagName: uint64, tagSize: uint, pTag: pointer = nil): VkFrameBoundaryEXT = result = VkFrameBoundaryEXT( sType: sType, pNext: pNext, flags: flags, frameID: frameID, - imageCount: imageCount, - pImages: pImages, - bufferCount: bufferCount, - pBuffers: pBuffers, + imageCount: len(images).uint32, + pImages: if len(images) == 0: nil else: cast[ptr VkImage](images), + bufferCount: len(buffers).uint32, + pBuffers: if len(buffers) == 0: nil else: cast[ptr VkBuffer](buffers), tagName: tagName, tagSize: tagSize, pTag: pTag, @@ -22402,12 +22402,12 @@ proc newVkSurfacePresentScalingCapabilitiesEXT*(sType: VkStructureType = VkStruc maxScaledImageExtent: maxScaledImageExtent, ) -proc newVkSurfacePresentModeCompatibilityEXT*(sType: VkStructureType = VkStructureType.SurfacePresentModeCompatibilityEXT, pNext: pointer = nil, presentModeCount: uint32, pPresentModes: ptr VkPresentModeKHR): VkSurfacePresentModeCompatibilityEXT = +proc newVkSurfacePresentModeCompatibilityEXT*(sType: VkStructureType = VkStructureType.SurfacePresentModeCompatibilityEXT, pNext: pointer = nil, presentModes: openarray[VkPresentModeKHR]): VkSurfacePresentModeCompatibilityEXT = result = VkSurfacePresentModeCompatibilityEXT( sType: sType, pNext: pNext, - presentModeCount: presentModeCount, - pPresentModes: pPresentModes, + presentModeCount: len(presentModes).uint32, + pPresentModes: if len(presentModes) == 0: nil else: cast[ptr VkPresentModeKHR](presentModes), ) proc newVkPhysicalDeviceSwapchainMaintenance1FeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceSwapchainMaintenance1FeaturesEXT, pNext: pointer = nil, swapchainMaintenance1: VkBool32): VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT = @@ -22417,28 +22417,28 @@ proc newVkPhysicalDeviceSwapchainMaintenance1FeaturesEXT*(sType: VkStructureType swapchainMaintenance1: swapchainMaintenance1, ) -proc newVkSwapchainPresentFenceInfoEXT*(sType: VkStructureType = VkStructureType.SwapchainPresentFenceInfoEXT, pNext: pointer = nil, swapchainCount: uint32, pFences: ptr VkFence): VkSwapchainPresentFenceInfoEXT = +proc newVkSwapchainPresentFenceInfoEXT*(sType: VkStructureType = VkStructureType.SwapchainPresentFenceInfoEXT, pNext: pointer = nil, fences: openarray[VkFence]): VkSwapchainPresentFenceInfoEXT = result = VkSwapchainPresentFenceInfoEXT( sType: sType, pNext: pNext, - swapchainCount: swapchainCount, - pFences: pFences, + swapchainCount: len(fences).uint32, + pFences: if len(fences) == 0: nil else: cast[ptr VkFence](fences), ) -proc newVkSwapchainPresentModesCreateInfoEXT*(sType: VkStructureType = VkStructureType.SwapchainPresentModesCreateInfoEXT, pNext: pointer = nil, presentModeCount: uint32, pPresentModes: ptr VkPresentModeKHR): VkSwapchainPresentModesCreateInfoEXT = +proc newVkSwapchainPresentModesCreateInfoEXT*(sType: VkStructureType = VkStructureType.SwapchainPresentModesCreateInfoEXT, pNext: pointer = nil, presentModes: openarray[VkPresentModeKHR]): VkSwapchainPresentModesCreateInfoEXT = result = VkSwapchainPresentModesCreateInfoEXT( sType: sType, pNext: pNext, - presentModeCount: presentModeCount, - pPresentModes: pPresentModes, + presentModeCount: len(presentModes).uint32, + pPresentModes: if len(presentModes) == 0: nil else: cast[ptr VkPresentModeKHR](presentModes), ) -proc newVkSwapchainPresentModeInfoEXT*(sType: VkStructureType = VkStructureType.SwapchainPresentModeInfoEXT, pNext: pointer = nil, swapchainCount: uint32, pPresentModes: ptr VkPresentModeKHR): VkSwapchainPresentModeInfoEXT = +proc newVkSwapchainPresentModeInfoEXT*(sType: VkStructureType = VkStructureType.SwapchainPresentModeInfoEXT, pNext: pointer = nil, presentModes: openarray[VkPresentModeKHR]): VkSwapchainPresentModeInfoEXT = result = VkSwapchainPresentModeInfoEXT( sType: sType, pNext: pNext, - swapchainCount: swapchainCount, - pPresentModes: pPresentModes, + swapchainCount: len(presentModes).uint32, + pPresentModes: if len(presentModes) == 0: nil else: cast[ptr VkPresentModeKHR](presentModes), ) proc newVkSwapchainPresentScalingCreateInfoEXT*(sType: VkStructureType = VkStructureType.SwapchainPresentScalingCreateInfoEXT, pNext: pointer = nil, scalingBehavior: VkPresentScalingFlagsEXT, presentGravityX: VkPresentGravityFlagsEXT, presentGravityY: VkPresentGravityFlagsEXT): VkSwapchainPresentScalingCreateInfoEXT = @@ -22450,13 +22450,13 @@ proc newVkSwapchainPresentScalingCreateInfoEXT*(sType: VkStructureType = VkStruc presentGravityY: presentGravityY, ) -proc newVkReleaseSwapchainImagesInfoEXT*(sType: VkStructureType = VkStructureType.ReleaseSwapchainImagesInfoEXT, pNext: pointer = nil, swapchain: VkSwapchainKHR, imageIndexCount: uint32, pImageIndices: ptr uint32): VkReleaseSwapchainImagesInfoEXT = +proc newVkReleaseSwapchainImagesInfoEXT*(sType: VkStructureType = VkStructureType.ReleaseSwapchainImagesInfoEXT, pNext: pointer = nil, swapchain: VkSwapchainKHR, imageIndices: openarray[uint32]): VkReleaseSwapchainImagesInfoEXT = result = VkReleaseSwapchainImagesInfoEXT( sType: sType, pNext: pNext, swapchain: swapchain, - imageIndexCount: imageIndexCount, - pImageIndices: pImageIndices, + imageIndexCount: len(imageIndices).uint32, + pImageIndices: if len(imageIndices) == 0: nil else: cast[ptr uint32](imageIndices), ) proc newVkPhysicalDeviceDepthBiasControlFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceDepthBiasControlFeaturesEXT, pNext: pointer = nil, depthBiasControl: VkBool32, leastRepresentableValueForceUnormRepresentation: VkBool32, floatRepresentation: VkBool32, depthBiasExact: VkBool32): VkPhysicalDeviceDepthBiasControlFeaturesEXT = @@ -22507,13 +22507,13 @@ proc newVkDirectDriverLoadingInfoLUNARG*(sType: VkStructureType = VkStructureTyp pfnGetInstanceProcAddr: pfnGetInstanceProcAddr, ) -proc newVkDirectDriverLoadingListLUNARG*(sType: VkStructureType = VkStructureType.DirectDriverLoadingListLUNARG, pNext: pointer = nil, mode: VkDirectDriverLoadingModeLUNARG, driverCount: uint32, pDrivers: ptr VkDirectDriverLoadingInfoLUNARG): VkDirectDriverLoadingListLUNARG = +proc newVkDirectDriverLoadingListLUNARG*(sType: VkStructureType = VkStructureType.DirectDriverLoadingListLUNARG, pNext: pointer = nil, mode: VkDirectDriverLoadingModeLUNARG, drivers: openarray[VkDirectDriverLoadingInfoLUNARG]): VkDirectDriverLoadingListLUNARG = result = VkDirectDriverLoadingListLUNARG( sType: sType, pNext: pNext, mode: mode, - driverCount: driverCount, - pDrivers: pDrivers, + driverCount: len(drivers).uint32, + pDrivers: if len(drivers) == 0: nil else: cast[ptr VkDirectDriverLoadingInfoLUNARG](drivers), ) proc newVkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM*(sType: VkStructureType = VkStructureType.PhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM, pNext: pointer = nil, multiviewPerViewViewports: VkBool32): VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM = @@ -22554,12 +22554,12 @@ proc newVkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM*(sType: VkStruct multiviewPerViewRenderAreas: multiviewPerViewRenderAreas, ) -proc newVkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM*(sType: VkStructureType = VkStructureType.MultiviewPerViewRenderAreasRenderPassBeginInfoQCOM, pNext: pointer = nil, perViewRenderAreaCount: uint32, pPerViewRenderAreas: ptr VkRect2D): VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM = +proc newVkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM*(sType: VkStructureType = VkStructureType.MultiviewPerViewRenderAreasRenderPassBeginInfoQCOM, pNext: pointer = nil, perViewRenderAreas: openarray[VkRect2D]): VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM = result = VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM( sType: sType, pNext: pNext, - perViewRenderAreaCount: perViewRenderAreaCount, - pPerViewRenderAreas: pPerViewRenderAreas, + perViewRenderAreaCount: len(perViewRenderAreas).uint32, + pPerViewRenderAreas: if len(perViewRenderAreas) == 0: nil else: cast[ptr VkRect2D](perViewRenderAreas), ) proc newVkQueryLowLatencySupportNV*(sType: VkStructureType = VkStructureType.QueryLowLatencySupportNV, pNext: pointer = nil, pQueriedLowLatencyData: pointer = nil): VkQueryLowLatencySupportNV = @@ -22602,7 +22602,7 @@ proc newVkPhysicalDeviceShaderObjectPropertiesEXT*(sType: VkStructureType = VkSt shaderBinaryVersion: shaderBinaryVersion, ) -proc newVkShaderCreateInfoEXT*(sType: VkStructureType = VkStructureType.ShaderCreateInfoEXT, pNext: pointer = nil, flags: VkShaderCreateFlagsEXT = 0.VkShaderCreateFlagsEXT, stage: VkShaderStageFlagBits, nextStage: VkShaderStageFlags, codeType: VkShaderCodeTypeEXT, codeSize: uint, pCode: pointer = nil, pName: cstring, setLayoutCount: uint32, pSetLayouts: ptr VkDescriptorSetLayout, pushConstantRangeCount: uint32, pPushConstantRanges: ptr VkPushConstantRange, pSpecializationInfo: ptr VkSpecializationInfo): VkShaderCreateInfoEXT = +proc newVkShaderCreateInfoEXT*(sType: VkStructureType = VkStructureType.ShaderCreateInfoEXT, pNext: pointer = nil, flags: VkShaderCreateFlagsEXT = 0.VkShaderCreateFlagsEXT, stage: VkShaderStageFlagBits, nextStage: VkShaderStageFlags, codeType: VkShaderCodeTypeEXT, codeSize: uint, pCode: pointer = nil, pName: cstring, setLayouts: openarray[VkDescriptorSetLayout], pushConstantRanges: openarray[VkPushConstantRange], pSpecializationInfo: ptr VkSpecializationInfo): VkShaderCreateInfoEXT = result = VkShaderCreateInfoEXT( sType: sType, pNext: pNext, @@ -22613,10 +22613,10 @@ proc newVkShaderCreateInfoEXT*(sType: VkStructureType = VkStructureType.ShaderCr codeSize: codeSize, pCode: pCode, pName: pName, - setLayoutCount: setLayoutCount, - pSetLayouts: pSetLayouts, - pushConstantRangeCount: pushConstantRangeCount, - pPushConstantRanges: pPushConstantRanges, + setLayoutCount: len(setLayouts).uint32, + pSetLayouts: if len(setLayouts) == 0: nil else: cast[ptr VkDescriptorSetLayout](setLayouts), + pushConstantRangeCount: len(pushConstantRanges).uint32, + pPushConstantRanges: if len(pushConstantRanges) == 0: nil else: cast[ptr VkPushConstantRange](pushConstantRanges), pSpecializationInfo: pSpecializationInfo, ) @@ -22730,13 +22730,13 @@ proc newVkPhysicalDeviceShaderEnqueueFeaturesAMDX*(sType: VkStructureType = VkSt shaderEnqueue: shaderEnqueue, ) -proc newVkExecutionGraphPipelineCreateInfoAMDX*(sType: VkStructureType = VkStructureType.ExecutionGraphPipelineCreateInfoAMDX, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stageCount: uint32, pStages: ptr VkPipelineShaderStageCreateInfo, pLibraryInfo: ptr VkPipelineLibraryCreateInfoKHR, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkExecutionGraphPipelineCreateInfoAMDX = +proc newVkExecutionGraphPipelineCreateInfoAMDX*(sType: VkStructureType = VkStructureType.ExecutionGraphPipelineCreateInfoAMDX, pNext: pointer = nil, flags: VkPipelineCreateFlags = 0.VkPipelineCreateFlags, stages: openarray[VkPipelineShaderStageCreateInfo], pLibraryInfo: ptr VkPipelineLibraryCreateInfoKHR, layout: VkPipelineLayout, basePipelineHandle: VkPipeline, basePipelineIndex: int32): VkExecutionGraphPipelineCreateInfoAMDX = result = VkExecutionGraphPipelineCreateInfoAMDX( sType: sType, pNext: pNext, flags: flags, - stageCount: stageCount, - pStages: pStages, + stageCount: len(stages).uint32, + pStages: if len(stages) == 0: nil else: cast[ptr VkPipelineShaderStageCreateInfo](stages), pLibraryInfo: pLibraryInfo, layout: layout, basePipelineHandle: basePipelineHandle, @@ -22780,17 +22780,17 @@ proc newVkBindMemoryStatusKHR*(sType: VkStructureType = VkStructureType.BindMemo pResult: pResult, ) -proc newVkBindDescriptorSetsInfoKHR*(sType: VkStructureType = VkStructureType.BindDescriptorSetsInfoKHR, pNext: pointer = nil, stageFlags: VkShaderStageFlags, layout: VkPipelineLayout, firstSet: uint32, descriptorSetCount: uint32, pDescriptorSets: ptr VkDescriptorSet, dynamicOffsetCount: uint32, pDynamicOffsets: ptr uint32): VkBindDescriptorSetsInfoKHR = +proc newVkBindDescriptorSetsInfoKHR*(sType: VkStructureType = VkStructureType.BindDescriptorSetsInfoKHR, pNext: pointer = nil, stageFlags: VkShaderStageFlags, layout: VkPipelineLayout, firstSet: uint32, descriptorSets: openarray[VkDescriptorSet], dynamicOffsets: openarray[uint32]): VkBindDescriptorSetsInfoKHR = result = VkBindDescriptorSetsInfoKHR( sType: sType, pNext: pNext, stageFlags: stageFlags, layout: layout, firstSet: firstSet, - descriptorSetCount: descriptorSetCount, - pDescriptorSets: pDescriptorSets, - dynamicOffsetCount: dynamicOffsetCount, - pDynamicOffsets: pDynamicOffsets, + descriptorSetCount: len(descriptorSets).uint32, + pDescriptorSets: if len(descriptorSets) == 0: nil else: cast[ptr VkDescriptorSet](descriptorSets), + dynamicOffsetCount: len(dynamicOffsets).uint32, + pDynamicOffsets: if len(dynamicOffsets) == 0: nil else: cast[ptr uint32](dynamicOffsets), ) proc newVkPushConstantsInfoKHR*(sType: VkStructureType = VkStructureType.PushConstantsInfoKHR, pNext: pointer = nil, layout: VkPipelineLayout, stageFlags: VkShaderStageFlags, offset: uint32, size: uint32, pValues: pointer = nil): VkPushConstantsInfoKHR = @@ -22804,15 +22804,15 @@ proc newVkPushConstantsInfoKHR*(sType: VkStructureType = VkStructureType.PushCon pValues: pValues, ) -proc newVkPushDescriptorSetInfoKHR*(sType: VkStructureType = VkStructureType.PushDescriptorSetInfoKHR, pNext: pointer = nil, stageFlags: VkShaderStageFlags, layout: VkPipelineLayout, set: uint32, descriptorWriteCount: uint32, pDescriptorWrites: ptr VkWriteDescriptorSet): VkPushDescriptorSetInfoKHR = +proc newVkPushDescriptorSetInfoKHR*(sType: VkStructureType = VkStructureType.PushDescriptorSetInfoKHR, pNext: pointer = nil, stageFlags: VkShaderStageFlags, layout: VkPipelineLayout, set: uint32, descriptorWrites: openarray[VkWriteDescriptorSet]): VkPushDescriptorSetInfoKHR = result = VkPushDescriptorSetInfoKHR( sType: sType, pNext: pNext, stageFlags: stageFlags, layout: layout, set: set, - descriptorWriteCount: descriptorWriteCount, - pDescriptorWrites: pDescriptorWrites, + descriptorWriteCount: len(descriptorWrites).uint32, + pDescriptorWrites: if len(descriptorWrites) == 0: nil else: cast[ptr VkWriteDescriptorSet](descriptorWrites), ) proc newVkPushDescriptorSetWithTemplateInfoKHR*(sType: VkStructureType = VkStructureType.PushDescriptorSetWithTemplateInfoKHR, pNext: pointer = nil, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: uint32, pData: pointer = nil): VkPushDescriptorSetWithTemplateInfoKHR = @@ -22825,16 +22825,16 @@ proc newVkPushDescriptorSetWithTemplateInfoKHR*(sType: VkStructureType = VkStruc pData: pData, ) -proc newVkSetDescriptorBufferOffsetsInfoEXT*(sType: VkStructureType = VkStructureType.SetDescriptorBufferOffsetsInfoEXT, pNext: pointer = nil, stageFlags: VkShaderStageFlags, layout: VkPipelineLayout, firstSet: uint32, setCount: uint32, pBufferIndices: ptr uint32, pOffsets: ptr VkDeviceSize): VkSetDescriptorBufferOffsetsInfoEXT = +proc newVkSetDescriptorBufferOffsetsInfoEXT*(sType: VkStructureType = VkStructureType.SetDescriptorBufferOffsetsInfoEXT, pNext: pointer = nil, stageFlags: VkShaderStageFlags, layout: VkPipelineLayout, firstSet: uint32, bufferIndices: openarray[uint32], offsets: openarray[VkDeviceSize]): VkSetDescriptorBufferOffsetsInfoEXT = result = VkSetDescriptorBufferOffsetsInfoEXT( sType: sType, pNext: pNext, stageFlags: stageFlags, layout: layout, firstSet: firstSet, - setCount: setCount, - pBufferIndices: pBufferIndices, - pOffsets: pOffsets, + setCount: len(bufferIndices).uint32, + pBufferIndices: if len(bufferIndices) == 0: nil else: cast[ptr uint32](bufferIndices), + pOffsets: if len(offsets) == 0: nil else: cast[ptr VkDeviceSize](offsets), ) proc newVkBindDescriptorBufferEmbeddedSamplersInfoEXT*(sType: VkStructureType = VkStructureType.BindDescriptorBufferEmbeddedSamplersInfoEXT, pNext: pointer = nil, stageFlags: VkShaderStageFlags, layout: VkPipelineLayout, set: uint32): VkBindDescriptorBufferEmbeddedSamplersInfoEXT = @@ -22981,12 +22981,12 @@ proc newVkSetLatencyMarkerInfoNV*(sType: VkStructureType = VkStructureType.SetLa marker: marker, ) -proc newVkGetLatencyMarkerInfoNV*(sType: VkStructureType = VkStructureType.GetLatencyMarkerInfoNV, pNext: pointer = nil, timingCount: uint32, pTimings: ptr VkLatencyTimingsFrameReportNV): VkGetLatencyMarkerInfoNV = +proc newVkGetLatencyMarkerInfoNV*(sType: VkStructureType = VkStructureType.GetLatencyMarkerInfoNV, pNext: pointer = nil, timings: openarray[VkLatencyTimingsFrameReportNV]): VkGetLatencyMarkerInfoNV = result = VkGetLatencyMarkerInfoNV( sType: sType, pNext: pNext, - timingCount: timingCount, - pTimings: pTimings, + timingCount: len(timings).uint32, + pTimings: if len(timings) == 0: nil else: cast[ptr VkLatencyTimingsFrameReportNV](timings), ) proc newVkLatencyTimingsFrameReportNV*(sType: VkStructureType = VkStructureType.LatencyTimingsFrameReportNV, pNext: pointer = nil, presentID: uint64, inputSampleTimeUs: uint64, simStartTimeUs: uint64, simEndTimeUs: uint64, renderSubmitStartTimeUs: uint64, renderSubmitEndTimeUs: uint64, presentStartTimeUs: uint64, presentEndTimeUs: uint64, driverStartTimeUs: uint64, driverEndTimeUs: uint64, osRenderQueueStartTimeUs: uint64, osRenderQueueEndTimeUs: uint64, gpuRenderStartTimeUs: uint64, gpuRenderEndTimeUs: uint64): VkLatencyTimingsFrameReportNV = @@ -23030,12 +23030,12 @@ proc newVkSwapchainLatencyCreateInfoNV*(sType: VkStructureType = VkStructureType latencyModeEnable: latencyModeEnable, ) -proc newVkLatencySurfaceCapabilitiesNV*(sType: VkStructureType = VkStructureType.LatencySurfaceCapabilitiesNV, pNext: pointer = nil, presentModeCount: uint32, pPresentModes: ptr VkPresentModeKHR): VkLatencySurfaceCapabilitiesNV = +proc newVkLatencySurfaceCapabilitiesNV*(sType: VkStructureType = VkStructureType.LatencySurfaceCapabilitiesNV, pNext: pointer = nil, presentModes: openarray[VkPresentModeKHR]): VkLatencySurfaceCapabilitiesNV = result = VkLatencySurfaceCapabilitiesNV( sType: sType, pNext: pNext, - presentModeCount: presentModeCount, - pPresentModes: pPresentModes, + presentModeCount: len(presentModes).uint32, + pPresentModes: if len(presentModes) == 0: nil else: cast[ptr VkPresentModeKHR](presentModes), ) proc newVkPhysicalDeviceCudaKernelLaunchFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceCudaKernelLaunchFeaturesNV, pNext: pointer = nil, cudaKernelLaunchFeatures: VkBool32): VkPhysicalDeviceCudaKernelLaunchFeaturesNV = @@ -23103,20 +23103,20 @@ proc newVkRenderPassStripeInfoARM*(sType: VkStructureType = VkStructureType.Rend stripeArea: stripeArea, ) -proc newVkRenderPassStripeBeginInfoARM*(sType: VkStructureType = VkStructureType.RenderPassStripeBeginInfoARM, pNext: pointer = nil, stripeInfoCount: uint32, pStripeInfos: ptr VkRenderPassStripeInfoARM): VkRenderPassStripeBeginInfoARM = +proc newVkRenderPassStripeBeginInfoARM*(sType: VkStructureType = VkStructureType.RenderPassStripeBeginInfoARM, pNext: pointer = nil, stripeInfos: openarray[VkRenderPassStripeInfoARM]): VkRenderPassStripeBeginInfoARM = result = VkRenderPassStripeBeginInfoARM( sType: sType, pNext: pNext, - stripeInfoCount: stripeInfoCount, - pStripeInfos: pStripeInfos, + stripeInfoCount: len(stripeInfos).uint32, + pStripeInfos: if len(stripeInfos) == 0: nil else: cast[ptr VkRenderPassStripeInfoARM](stripeInfos), ) -proc newVkRenderPassStripeSubmitInfoARM*(sType: VkStructureType = VkStructureType.RenderPassStripeSubmitInfoARM, pNext: pointer = nil, stripeSemaphoreInfoCount: uint32, pStripeSemaphoreInfos: ptr VkSemaphoreSubmitInfo): VkRenderPassStripeSubmitInfoARM = +proc newVkRenderPassStripeSubmitInfoARM*(sType: VkStructureType = VkStructureType.RenderPassStripeSubmitInfoARM, pNext: pointer = nil, stripeSemaphoreInfos: openarray[VkSemaphoreSubmitInfo]): VkRenderPassStripeSubmitInfoARM = result = VkRenderPassStripeSubmitInfoARM( sType: sType, pNext: pNext, - stripeSemaphoreInfoCount: stripeSemaphoreInfoCount, - pStripeSemaphoreInfos: pStripeSemaphoreInfos, + stripeSemaphoreInfoCount: len(stripeSemaphoreInfos).uint32, + pStripeSemaphoreInfos: if len(stripeSemaphoreInfos) == 0: nil else: cast[ptr VkSemaphoreSubmitInfo](stripeSemaphoreInfos), ) proc newVkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderMaximalReconvergenceFeaturesKHR, pNext: pointer = nil, shaderMaximalReconvergence: VkBool32): VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR = @@ -23155,20 +23155,20 @@ proc newVkPhysicalDeviceDynamicRenderingLocalReadFeaturesKHR*(sType: VkStructure dynamicRenderingLocalRead: dynamicRenderingLocalRead, ) -proc newVkRenderingAttachmentLocationInfoKHR*(sType: VkStructureType = VkStructureType.RenderingAttachmentLocationInfoKHR, pNext: pointer = nil, colorAttachmentCount: uint32, pColorAttachmentLocations: ptr uint32): VkRenderingAttachmentLocationInfoKHR = +proc newVkRenderingAttachmentLocationInfoKHR*(sType: VkStructureType = VkStructureType.RenderingAttachmentLocationInfoKHR, pNext: pointer = nil, colorAttachmentLocations: openarray[uint32]): VkRenderingAttachmentLocationInfoKHR = result = VkRenderingAttachmentLocationInfoKHR( sType: sType, pNext: pNext, - colorAttachmentCount: colorAttachmentCount, - pColorAttachmentLocations: pColorAttachmentLocations, + colorAttachmentCount: len(colorAttachmentLocations).uint32, + pColorAttachmentLocations: if len(colorAttachmentLocations) == 0: nil else: cast[ptr uint32](colorAttachmentLocations), ) -proc newVkRenderingInputAttachmentIndexInfoKHR*(sType: VkStructureType = VkStructureType.RenderingInputAttachmentIndexInfoKHR, pNext: pointer = nil, colorAttachmentCount: uint32, pColorAttachmentInputIndices: ptr uint32, pDepthInputAttachmentIndex: ptr uint32, pStencilInputAttachmentIndex: ptr uint32): VkRenderingInputAttachmentIndexInfoKHR = +proc newVkRenderingInputAttachmentIndexInfoKHR*(sType: VkStructureType = VkStructureType.RenderingInputAttachmentIndexInfoKHR, pNext: pointer = nil, colorAttachmentInputIndices: openarray[uint32], pDepthInputAttachmentIndex: ptr uint32, pStencilInputAttachmentIndex: ptr uint32): VkRenderingInputAttachmentIndexInfoKHR = result = VkRenderingInputAttachmentIndexInfoKHR( sType: sType, pNext: pNext, - colorAttachmentCount: colorAttachmentCount, - pColorAttachmentInputIndices: pColorAttachmentInputIndices, + colorAttachmentCount: len(colorAttachmentInputIndices).uint32, + pColorAttachmentInputIndices: if len(colorAttachmentInputIndices) == 0: nil else: cast[ptr uint32](colorAttachmentInputIndices), pDepthInputAttachmentIndex: pDepthInputAttachmentIndex, pStencilInputAttachmentIndex: pStencilInputAttachmentIndex, ) diff --git a/tools/generator.nim b/tools/generator.nim index def8c81..b112af0 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -237,7 +237,7 @@ proc genTypes(node: XmlNode, output: var string) = let val = t.attr("alias") output.add(&"\n {name}* = {val}\n") continue - output.add(&"\n {name}* = object\n") + output.add(&"\n {name}* {{.byref.}} = object\n") for member in t.findAll("member"): if member.attr("api") == "vulkansc": continue @@ -284,7 +284,7 @@ proc genTypes(node: XmlNode, output: var string) = let name = t.attr("name") if name == "VkBaseOutStructure" or name == "VkBaseInStructure": continue - output.add(&"\n {name}* {{.union.}} = object\n") + output.add(&"\n {name}* {{.union, byref.}} = object\n") for member in t.findAll("member"): var memberName = member.child("name").innerText if isKeyword(memberName): @@ -581,6 +581,33 @@ proc genExtensions(node: XmlNode, output: var string) = output.add(&"): {vkProc.rVal}") output.add(&" {{.stdcall.}}](vkGetProc(\"{vkProc.name}\"))\n") +proc isPlural(x: string): bool = + # Determine if an identifier is plural + x.endsWith("es") or (not x.endsWith("ss") and x.endsWith('s')) or + endsWith(x.normalize, "data") or endsWith(x.normalize, "code") + +proc isArray(x: VkArg): bool = + x.name.isPlural() and x.name.startsWith('p') and x.argType.startsWith("ptr") + +proc isCounter(x: string): bool = + let x = x.normalize + endsWith(x, "count") or endsWith(x, "size") + +proc uncapitalizeAscii*(s: string): string = + if s.len == 0: result = "" + else: result = toLowerAscii(s[0]) & substr(s, 1) + +proc toArgName(x: string): string = + result = x + result.removePrefix("p") + result = uncapitalizeAscii(result) + +proc isException(x: string): bool = + x in ["VkAccelerationStructureBuildGeometryInfoKHR", + "VkMicromapBuildInfoEXT", + "VkAccelerationStructureTrianglesOpacityMicromapEXT", + "VkAccelerationStructureTrianglesDisplacementMicromapNV"] + proc genConstructors(node: XmlNode, output: var string) = echo "Generating and Adding Constructors..." output.add("\n# Constructors\n") @@ -588,10 +615,20 @@ proc genConstructors(node: XmlNode, output: var string) = if s.members.len == 0: continue output.add(&"\nproc new{s.name}*(") - for m in s.members: + var foundMany = false + for i, m in s.members: + if not isException(s.name) and m.name.isCounter() and + i < s.members.high and s.members[i+1].isArray(): + foundMany = true + continue if not output.endsWith('('): output.add(", ") - output.add(&"{m.name}: {m.argType}") + if foundMany: + var argType = m.argType + argType.removePrefix("ptr ") + output.add(&"{m.name.toArgName}: openarray[{argType}]") + else: + output.add(&"{m.name}: {m.argType}") if m.name.contains("flags"): output.add(&" = 0.{m.argType}") if m.name == "sType": @@ -599,12 +636,26 @@ proc genConstructors(node: XmlNode, output: var string) = let styp = s.name.substr(2) if structType.cmpIgnoreStyle(styp) == 0: output.add(&" = VkStructureType.{styp}") - if m.argType == "pointer": + if not foundMany and m.argType == "pointer": output.add(" = nil") + if foundMany and (i >= s.members.high or not s.members[i+1].isArray()): + foundMany = false output.add(&"): {s.name} =\n") output.add(&" result = {s.name}(\n") - for m in s.members: - output.add(&" {m.name}: {m.name},\n") + foundMany = false + for i, m in s.members: + output.add(" ") + if not isException(s.name) and m.name.isCounter and + i < s.members.high and s.members[i+1].isArray(): + output.add(&"{m.name}: len({s.members[i+1].name.toArgName}).{m.argType},\n") + foundMany = true + continue + if foundMany: + output.add(&"{m.name}: if len({m.name.toArgName}) == 0: nil else: cast[{m.argType}]({m.name.toArgName}),\n") + else: + output.add(&"{m.name}: {m.name},\n") + if foundMany and (i >= s.members.high or not s.members[i+1].isArray()): + foundMany = false output.add(" )\n") proc main() = From d391723052952e08296390a56a9635a6c6d54322 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Wed, 19 Jun 2024 03:05:00 +0300 Subject: [PATCH 38/57] code is string. Wrong yes, convenient though.. --- src/vulkan.nim | 2 +- tools/generator.nim | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index f01dcfe..5d99e60 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -13863,7 +13863,7 @@ proc newVkImageResolve*(srcSubresource: VkImageSubresourceLayers, srcOffset: VkO extent: extent, ) -proc newVkShaderModuleCreateInfo*(sType: VkStructureType = VkStructureType.ShaderModuleCreateInfo, pNext: pointer = nil, flags: VkShaderModuleCreateFlags = 0.VkShaderModuleCreateFlags, code: openarray[uint32]): VkShaderModuleCreateInfo = +proc newVkShaderModuleCreateInfo*(sType: VkStructureType = VkStructureType.ShaderModuleCreateInfo, pNext: pointer = nil, flags: VkShaderModuleCreateFlags = 0.VkShaderModuleCreateFlags, code: openarray[char]): VkShaderModuleCreateInfo = result = VkShaderModuleCreateInfo( sType: sType, pNext: pNext, diff --git a/tools/generator.nim b/tools/generator.nim index b112af0..7bfd488 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -626,6 +626,7 @@ proc genConstructors(node: XmlNode, output: var string) = if foundMany: var argType = m.argType argType.removePrefix("ptr ") + if m.name == "pCode": argType = "char" output.add(&"{m.name.toArgName}: openarray[{argType}]") else: output.add(&"{m.name}: {m.argType}") From 73ec9f211224c36a94ab738b3c5ad390aece51a6 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Wed, 19 Jun 2024 03:09:05 +0300 Subject: [PATCH 39/57] add another exception --- src/vulkan.nim | 4 ++-- tools/generator.nim | 6 ++++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 5d99e60..5458a0c 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -14597,13 +14597,13 @@ proc newVkMultiDrawIndexedInfoEXT*(firstIndex: uint32, indexCount: uint32, verte vertexOffset: vertexOffset, ) -proc newVkSubmitInfo*(sType: VkStructureType = VkStructureType.SubmitInfo, pNext: pointer = nil, waitSemaphores: openarray[VkSemaphore], pWaitDstStageMask: ptr VkPipelineStageFlags, commandBuffers: openarray[VkCommandBuffer], signalSemaphores: openarray[VkSemaphore]): VkSubmitInfo = +proc newVkSubmitInfo*(sType: VkStructureType = VkStructureType.SubmitInfo, pNext: pointer = nil, waitSemaphores: openarray[VkSemaphore], waitDstStageMask: openarray[VkPipelineStageFlags], commandBuffers: openarray[VkCommandBuffer], signalSemaphores: openarray[VkSemaphore]): VkSubmitInfo = result = VkSubmitInfo( sType: sType, pNext: pNext, waitSemaphoreCount: len(waitSemaphores).uint32, pWaitSemaphores: if len(waitSemaphores) == 0: nil else: cast[ptr VkSemaphore](waitSemaphores), - pWaitDstStageMask: pWaitDstStageMask, + pWaitDstStageMask: if len(waitDstStageMask) == 0: nil else: cast[ptr VkPipelineStageFlags](waitDstStageMask), commandBufferCount: len(commandBuffers).uint32, pCommandBuffers: if len(commandBuffers) == 0: nil else: cast[ptr VkCommandBuffer](commandBuffers), signalSemaphoreCount: len(signalSemaphores).uint32, diff --git a/tools/generator.nim b/tools/generator.nim index 7bfd488..bbb51d9 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -639,7 +639,8 @@ proc genConstructors(node: XmlNode, output: var string) = output.add(&" = VkStructureType.{styp}") if not foundMany and m.argType == "pointer": output.add(" = nil") - if foundMany and (i >= s.members.high or not s.members[i+1].isArray()): + if foundMany and (i >= s.members.high or not (s.members[i+1].isArray() or + s.members[i+1].name == "pWaitDstStageMask")): foundMany = false output.add(&"): {s.name} =\n") output.add(&" result = {s.name}(\n") @@ -655,7 +656,8 @@ proc genConstructors(node: XmlNode, output: var string) = output.add(&"{m.name}: if len({m.name.toArgName}) == 0: nil else: cast[{m.argType}]({m.name.toArgName}),\n") else: output.add(&"{m.name}: {m.name},\n") - if foundMany and (i >= s.members.high or not s.members[i+1].isArray()): + if foundMany and (i >= s.members.high or not (s.members[i+1].isArray() or + s.members[i+1].name == "pWaitDstStageMask")): foundMany = false output.add(" )\n") From 76918820a0d8183388ff7dc75941a2a8eb962753 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Wed, 19 Jun 2024 03:12:11 +0300 Subject: [PATCH 40/57] cleanup exceptions --- tools/generator.nim | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/tools/generator.nim b/tools/generator.nim index bbb51d9..52e868d 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -602,12 +602,15 @@ proc toArgName(x: string): string = result.removePrefix("p") result = uncapitalizeAscii(result) -proc isException(x: string): bool = - x in ["VkAccelerationStructureBuildGeometryInfoKHR", +proc isException(x: VkStruct): bool = + x.name in ["VkAccelerationStructureBuildGeometryInfoKHR", "VkMicromapBuildInfoEXT", "VkAccelerationStructureTrianglesOpacityMicromapEXT", "VkAccelerationStructureTrianglesDisplacementMicromapNV"] +proc isException(x: VkArg): bool = + x.name in ["pWaitDstStageMask"] + proc genConstructors(node: XmlNode, output: var string) = echo "Generating and Adding Constructors..." output.add("\n# Constructors\n") @@ -617,7 +620,7 @@ proc genConstructors(node: XmlNode, output: var string) = output.add(&"\nproc new{s.name}*(") var foundMany = false for i, m in s.members: - if not isException(s.name) and m.name.isCounter() and + if not isException(s) and m.name.isCounter() and i < s.members.high and s.members[i+1].isArray(): foundMany = true continue @@ -640,14 +643,14 @@ proc genConstructors(node: XmlNode, output: var string) = if not foundMany and m.argType == "pointer": output.add(" = nil") if foundMany and (i >= s.members.high or not (s.members[i+1].isArray() or - s.members[i+1].name == "pWaitDstStageMask")): + s.members[i+1].isException)): foundMany = false output.add(&"): {s.name} =\n") output.add(&" result = {s.name}(\n") foundMany = false for i, m in s.members: output.add(" ") - if not isException(s.name) and m.name.isCounter and + if not isException(s) and m.name.isCounter and i < s.members.high and s.members[i+1].isArray(): output.add(&"{m.name}: len({s.members[i+1].name.toArgName}).{m.argType},\n") foundMany = true @@ -657,7 +660,7 @@ proc genConstructors(node: XmlNode, output: var string) = else: output.add(&"{m.name}: {m.name},\n") if foundMany and (i >= s.members.high or not (s.members[i+1].isArray() or - s.members[i+1].name == "pWaitDstStageMask")): + s.members[i+1].isException)): foundMany = false output.add(" )\n") From c8283ed28ef33d279b425ce873aa06302a39f491 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Wed, 19 Jun 2024 03:19:15 +0300 Subject: [PATCH 41/57] treat cstringArray --- src/vulkan.nim | 22 +++++++++++----------- tools/generator.nim | 4 +++- 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 5458a0c..16abfb1 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -13467,30 +13467,30 @@ proc newVkDeviceQueueCreateInfo*(sType: VkStructureType = VkStructureType.Device pQueuePriorities: if len(queuePriorities) == 0: nil else: cast[ptr float32](queuePriorities), ) -proc newVkDeviceCreateInfo*(sType: VkStructureType = VkStructureType.DeviceCreateInfo, pNext: pointer = nil, flags: VkDeviceCreateFlags = 0.VkDeviceCreateFlags, queueCreateInfos: openarray[VkDeviceQueueCreateInfo], enabledLayerCount: uint32, ppEnabledLayerNames: cstringArray, enabledExtensionCount: uint32, ppEnabledExtensionNames: cstringArray, pEnabledFeatures: ptr VkPhysicalDeviceFeatures): VkDeviceCreateInfo = +proc newVkDeviceCreateInfo*(sType: VkStructureType = VkStructureType.DeviceCreateInfo, pNext: pointer = nil, flags: VkDeviceCreateFlags = 0.VkDeviceCreateFlags, queueCreateInfos: openarray[VkDeviceQueueCreateInfo], pEnabledLayerNames: openarray[cstring], pEnabledExtensionNames: openarray[cstring], enabledFeatures: openarray[VkPhysicalDeviceFeatures]): VkDeviceCreateInfo = result = VkDeviceCreateInfo( sType: sType, pNext: pNext, flags: flags, queueCreateInfoCount: len(queueCreateInfos).uint32, pQueueCreateInfos: if len(queueCreateInfos) == 0: nil else: cast[ptr VkDeviceQueueCreateInfo](queueCreateInfos), - enabledLayerCount: enabledLayerCount, - ppEnabledLayerNames: ppEnabledLayerNames, - enabledExtensionCount: enabledExtensionCount, - ppEnabledExtensionNames: ppEnabledExtensionNames, - pEnabledFeatures: pEnabledFeatures, + enabledLayerCount: len(pEnabledLayerNames).uint32, + ppEnabledLayerNames: if len(pEnabledLayerNames) == 0: nil else: cast[cstringArray](pEnabledLayerNames), + enabledExtensionCount: len(pEnabledExtensionNames).uint32, + ppEnabledExtensionNames: if len(pEnabledExtensionNames) == 0: nil else: cast[cstringArray](pEnabledExtensionNames), + pEnabledFeatures: if len(enabledFeatures) == 0: nil else: cast[ptr VkPhysicalDeviceFeatures](enabledFeatures), ) -proc newVkInstanceCreateInfo*(sType: VkStructureType = VkStructureType.InstanceCreateInfo, pNext: pointer = nil, flags: VkInstanceCreateFlags = 0.VkInstanceCreateFlags, pApplicationInfo: ptr VkApplicationInfo, enabledLayerCount: uint32, ppEnabledLayerNames: cstringArray, enabledExtensionCount: uint32, ppEnabledExtensionNames: cstringArray): VkInstanceCreateInfo = +proc newVkInstanceCreateInfo*(sType: VkStructureType = VkStructureType.InstanceCreateInfo, pNext: pointer = nil, flags: VkInstanceCreateFlags = 0.VkInstanceCreateFlags, pApplicationInfo: ptr VkApplicationInfo, pEnabledLayerNames: openarray[cstring], pEnabledExtensionNames: openarray[cstring]): VkInstanceCreateInfo = result = VkInstanceCreateInfo( sType: sType, pNext: pNext, flags: flags, pApplicationInfo: pApplicationInfo, - enabledLayerCount: enabledLayerCount, - ppEnabledLayerNames: ppEnabledLayerNames, - enabledExtensionCount: enabledExtensionCount, - ppEnabledExtensionNames: ppEnabledExtensionNames, + enabledLayerCount: len(pEnabledLayerNames).uint32, + ppEnabledLayerNames: if len(pEnabledLayerNames) == 0: nil else: cast[cstringArray](pEnabledLayerNames), + enabledExtensionCount: len(pEnabledExtensionNames).uint32, + ppEnabledExtensionNames: if len(pEnabledExtensionNames) == 0: nil else: cast[cstringArray](pEnabledExtensionNames), ) proc newVkQueueFamilyProperties*(queueFlags: VkQueueFlags, queueCount: uint32, timestampValidBits: uint32, minImageTransferGranularity: VkExtent3D): VkQueueFamilyProperties = diff --git a/tools/generator.nim b/tools/generator.nim index 52e868d..9272075 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -587,7 +587,8 @@ proc isPlural(x: string): bool = endsWith(x.normalize, "data") or endsWith(x.normalize, "code") proc isArray(x: VkArg): bool = - x.name.isPlural() and x.name.startsWith('p') and x.argType.startsWith("ptr") + x.name.isPlural() and x.name.startsWith('p') and + (x.argType.startsWith("ptr") or x.argType == "cstringArray") proc isCounter(x: string): bool = let x = x.normalize @@ -630,6 +631,7 @@ proc genConstructors(node: XmlNode, output: var string) = var argType = m.argType argType.removePrefix("ptr ") if m.name == "pCode": argType = "char" + if argType == "cstringArray": argType = "cstring" output.add(&"{m.name.toArgName}: openarray[{argType}]") else: output.add(&"{m.name}: {m.argType}") From dabcb08243954780b0ec74e10a0d828279836c81 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Wed, 19 Jun 2024 03:20:16 +0300 Subject: [PATCH 42/57] remove pp prefix --- src/vulkan.nim | 20 ++++++++++---------- tools/generator.nim | 2 +- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 16abfb1..abc1bbd 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -13467,30 +13467,30 @@ proc newVkDeviceQueueCreateInfo*(sType: VkStructureType = VkStructureType.Device pQueuePriorities: if len(queuePriorities) == 0: nil else: cast[ptr float32](queuePriorities), ) -proc newVkDeviceCreateInfo*(sType: VkStructureType = VkStructureType.DeviceCreateInfo, pNext: pointer = nil, flags: VkDeviceCreateFlags = 0.VkDeviceCreateFlags, queueCreateInfos: openarray[VkDeviceQueueCreateInfo], pEnabledLayerNames: openarray[cstring], pEnabledExtensionNames: openarray[cstring], enabledFeatures: openarray[VkPhysicalDeviceFeatures]): VkDeviceCreateInfo = +proc newVkDeviceCreateInfo*(sType: VkStructureType = VkStructureType.DeviceCreateInfo, pNext: pointer = nil, flags: VkDeviceCreateFlags = 0.VkDeviceCreateFlags, queueCreateInfos: openarray[VkDeviceQueueCreateInfo], enabledLayerNames: openarray[cstring], enabledExtensionNames: openarray[cstring], enabledFeatures: openarray[VkPhysicalDeviceFeatures]): VkDeviceCreateInfo = result = VkDeviceCreateInfo( sType: sType, pNext: pNext, flags: flags, queueCreateInfoCount: len(queueCreateInfos).uint32, pQueueCreateInfos: if len(queueCreateInfos) == 0: nil else: cast[ptr VkDeviceQueueCreateInfo](queueCreateInfos), - enabledLayerCount: len(pEnabledLayerNames).uint32, - ppEnabledLayerNames: if len(pEnabledLayerNames) == 0: nil else: cast[cstringArray](pEnabledLayerNames), - enabledExtensionCount: len(pEnabledExtensionNames).uint32, - ppEnabledExtensionNames: if len(pEnabledExtensionNames) == 0: nil else: cast[cstringArray](pEnabledExtensionNames), + enabledLayerCount: len(enabledLayerNames).uint32, + ppEnabledLayerNames: if len(enabledLayerNames) == 0: nil else: cast[cstringArray](enabledLayerNames), + enabledExtensionCount: len(enabledExtensionNames).uint32, + ppEnabledExtensionNames: if len(enabledExtensionNames) == 0: nil else: cast[cstringArray](enabledExtensionNames), pEnabledFeatures: if len(enabledFeatures) == 0: nil else: cast[ptr VkPhysicalDeviceFeatures](enabledFeatures), ) -proc newVkInstanceCreateInfo*(sType: VkStructureType = VkStructureType.InstanceCreateInfo, pNext: pointer = nil, flags: VkInstanceCreateFlags = 0.VkInstanceCreateFlags, pApplicationInfo: ptr VkApplicationInfo, pEnabledLayerNames: openarray[cstring], pEnabledExtensionNames: openarray[cstring]): VkInstanceCreateInfo = +proc newVkInstanceCreateInfo*(sType: VkStructureType = VkStructureType.InstanceCreateInfo, pNext: pointer = nil, flags: VkInstanceCreateFlags = 0.VkInstanceCreateFlags, pApplicationInfo: ptr VkApplicationInfo, enabledLayerNames: openarray[cstring], enabledExtensionNames: openarray[cstring]): VkInstanceCreateInfo = result = VkInstanceCreateInfo( sType: sType, pNext: pNext, flags: flags, pApplicationInfo: pApplicationInfo, - enabledLayerCount: len(pEnabledLayerNames).uint32, - ppEnabledLayerNames: if len(pEnabledLayerNames) == 0: nil else: cast[cstringArray](pEnabledLayerNames), - enabledExtensionCount: len(pEnabledExtensionNames).uint32, - ppEnabledExtensionNames: if len(pEnabledExtensionNames) == 0: nil else: cast[cstringArray](pEnabledExtensionNames), + enabledLayerCount: len(enabledLayerNames).uint32, + ppEnabledLayerNames: if len(enabledLayerNames) == 0: nil else: cast[cstringArray](enabledLayerNames), + enabledExtensionCount: len(enabledExtensionNames).uint32, + ppEnabledExtensionNames: if len(enabledExtensionNames) == 0: nil else: cast[cstringArray](enabledExtensionNames), ) proc newVkQueueFamilyProperties*(queueFlags: VkQueueFlags, queueCount: uint32, timestampValidBits: uint32, minImageTransferGranularity: VkExtent3D): VkQueueFamilyProperties = diff --git a/tools/generator.nim b/tools/generator.nim index 9272075..2485475 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -600,7 +600,7 @@ proc uncapitalizeAscii*(s: string): string = proc toArgName(x: string): string = result = x - result.removePrefix("p") + result.removePrefix('p') result = uncapitalizeAscii(result) proc isException(x: VkStruct): bool = From fb0914b3501e097639fe702490f0b021d94ba8d7 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Wed, 19 Jun 2024 12:19:03 +0300 Subject: [PATCH 43/57] remove .byref --- src/vulkan.nim | 2150 +++++++++++++++++++++---------------------- tools/generator.nim | 4 +- 2 files changed, 1077 insertions(+), 1077 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index abc1bbd..e774a4b 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -5069,33 +5069,33 @@ type PFN_vkDeviceMemoryReportCallbackEXT* = proc (pCallbackData: ptr VkDeviceMemoryReportCallbackDataEXT; pUserData: pointer) {.cdecl.} PFN_vkGetInstanceProcAddrLUNARG* = proc (instance: VkInstance; pName: cstring): PFN_vkVoidFunction {.cdecl.} - VkBaseOutStructure* {.byref.} = object + VkBaseOutStructure* = object sType*: VkStructureType pNext*: ptr VkBaseOutStructure - VkBaseInStructure* {.byref.} = object + VkBaseInStructure* = object sType*: VkStructureType pNext*: ptr VkBaseInStructure - VkOffset2D* {.byref.} = object + VkOffset2D* = object x*: int32 y*: int32 - VkOffset3D* {.byref.} = object + VkOffset3D* = object x*: int32 y*: int32 z*: int32 - VkExtent2D* {.byref.} = object + VkExtent2D* = object width*: uint32 height*: uint32 - VkExtent3D* {.byref.} = object + VkExtent3D* = object width*: uint32 height*: uint32 depth*: uint32 - VkViewport* {.byref.} = object + VkViewport* = object x*: float32 y*: float32 width*: float32 @@ -5103,22 +5103,22 @@ type minDepth*: float32 maxDepth*: float32 - VkRect2D* {.byref.} = object + VkRect2D* = object offset*: VkOffset2D extent*: VkExtent2D - VkClearRect* {.byref.} = object + VkClearRect* = object rect*: VkRect2D baseArrayLayer*: uint32 layerCount*: uint32 - VkComponentMapping* {.byref.} = object + VkComponentMapping* = object r*: VkComponentSwizzle g*: VkComponentSwizzle b*: VkComponentSwizzle a*: VkComponentSwizzle - VkPhysicalDeviceProperties* {.byref.} = object + VkPhysicalDeviceProperties* = object apiVersion*: uint32 driverVersion*: uint32 vendorID*: uint32 @@ -5129,17 +5129,17 @@ type limits*: VkPhysicalDeviceLimits sparseProperties*: VkPhysicalDeviceSparseProperties - VkExtensionProperties* {.byref.} = object + VkExtensionProperties* = object extensionName*: array[VK_MAX_EXTENSION_NAME_SIZE, char] specVersion*: uint32 - VkLayerProperties* {.byref.} = object + VkLayerProperties* = object layerName*: array[VK_MAX_EXTENSION_NAME_SIZE, char] specVersion*: uint32 implementationVersion*: uint32 description*: array[VK_MAX_DESCRIPTION_SIZE, char] - VkApplicationInfo* {.byref.} = object + VkApplicationInfo* = object sType*: VkStructureType pNext*: pointer pApplicationName*: cstring @@ -5148,7 +5148,7 @@ type engineVersion*: uint32 apiVersion*: uint32 - VkAllocationCallbacks* {.byref.} = object + VkAllocationCallbacks* = object pUserData*: pointer pfnAllocation*: PFN_vkAllocationFunction pfnReallocation*: PFN_vkReallocationFunction @@ -5156,7 +5156,7 @@ type pfnInternalAllocation*: PFN_vkInternalAllocationNotification pfnInternalFree*: PFN_vkInternalFreeNotification - VkDeviceQueueCreateInfo* {.byref.} = object + VkDeviceQueueCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkDeviceQueueCreateFlags @@ -5164,7 +5164,7 @@ type queueCount*: uint32 pQueuePriorities*: ptr float32 - VkDeviceCreateInfo* {.byref.} = object + VkDeviceCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkDeviceCreateFlags @@ -5176,7 +5176,7 @@ type ppEnabledExtensionNames*: cstringArray pEnabledFeatures*: ptr VkPhysicalDeviceFeatures - VkInstanceCreateInfo* {.byref.} = object + VkInstanceCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkInstanceCreateFlags @@ -5186,79 +5186,79 @@ type enabledExtensionCount*: uint32 ppEnabledExtensionNames*: cstringArray - VkQueueFamilyProperties* {.byref.} = object + VkQueueFamilyProperties* = object queueFlags*: VkQueueFlags queueCount*: uint32 timestampValidBits*: uint32 minImageTransferGranularity*: VkExtent3D - VkPhysicalDeviceMemoryProperties* {.byref.} = object + VkPhysicalDeviceMemoryProperties* = object memoryTypeCount*: uint32 memoryTypes*: array[VK_MAX_MEMORY_TYPES, VkMemoryType] memoryHeapCount*: uint32 memoryHeaps*: array[VK_MAX_MEMORY_HEAPS, VkMemoryHeap] - VkMemoryAllocateInfo* {.byref.} = object + VkMemoryAllocateInfo* = object sType*: VkStructureType pNext*: pointer allocationSize*: VkDeviceSize memoryTypeIndex*: uint32 - VkMemoryRequirements* {.byref.} = object + VkMemoryRequirements* = object size*: VkDeviceSize alignment*: VkDeviceSize memoryTypeBits*: uint32 - VkSparseImageFormatProperties* {.byref.} = object + VkSparseImageFormatProperties* = object aspectMask*: VkImageAspectFlags imageGranularity*: VkExtent3D flags*: VkSparseImageFormatFlags - VkSparseImageMemoryRequirements* {.byref.} = object + VkSparseImageMemoryRequirements* = object formatProperties*: VkSparseImageFormatProperties imageMipTailFirstLod*: uint32 imageMipTailSize*: VkDeviceSize imageMipTailOffset*: VkDeviceSize imageMipTailStride*: VkDeviceSize - VkMemoryType* {.byref.} = object + VkMemoryType* = object propertyFlags*: VkMemoryPropertyFlags heapIndex*: uint32 - VkMemoryHeap* {.byref.} = object + VkMemoryHeap* = object size*: VkDeviceSize flags*: VkMemoryHeapFlags - VkMappedMemoryRange* {.byref.} = object + VkMappedMemoryRange* = object sType*: VkStructureType pNext*: pointer memory*: VkDeviceMemory offset*: VkDeviceSize size*: VkDeviceSize - VkFormatProperties* {.byref.} = object + VkFormatProperties* = object linearTilingFeatures*: VkFormatFeatureFlags optimalTilingFeatures*: VkFormatFeatureFlags bufferFeatures*: VkFormatFeatureFlags - VkImageFormatProperties* {.byref.} = object + VkImageFormatProperties* = object maxExtent*: VkExtent3D maxMipLevels*: uint32 maxArrayLayers*: uint32 sampleCounts*: VkSampleCountFlags maxResourceSize*: VkDeviceSize - VkDescriptorBufferInfo* {.byref.} = object + VkDescriptorBufferInfo* = object buffer*: VkBuffer offset*: VkDeviceSize range*: VkDeviceSize - VkDescriptorImageInfo* {.byref.} = object + VkDescriptorImageInfo* = object sampler*: VkSampler imageView*: VkImageView imageLayout*: VkImageLayout - VkWriteDescriptorSet* {.byref.} = object + VkWriteDescriptorSet* = object sType*: VkStructureType pNext*: pointer dstSet*: VkDescriptorSet @@ -5270,7 +5270,7 @@ type pBufferInfo*: ptr VkDescriptorBufferInfo pTexelBufferView*: ptr VkBufferView - VkCopyDescriptorSet* {.byref.} = object + VkCopyDescriptorSet* = object sType*: VkStructureType pNext*: pointer srcSet*: VkDescriptorSet @@ -5281,12 +5281,12 @@ type dstArrayElement*: uint32 descriptorCount*: uint32 - VkBufferUsageFlags2CreateInfoKHR* {.byref.} = object + VkBufferUsageFlags2CreateInfoKHR* = object sType*: VkStructureType pNext*: pointer usage*: VkBufferUsageFlags2KHR - VkBufferCreateInfo* {.byref.} = object + VkBufferCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkBufferCreateFlags @@ -5296,7 +5296,7 @@ type queueFamilyIndexCount*: uint32 pQueueFamilyIndices*: ptr uint32 - VkBufferViewCreateInfo* {.byref.} = object + VkBufferViewCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkBufferViewCreateFlags @@ -5305,31 +5305,31 @@ type offset*: VkDeviceSize range*: VkDeviceSize - VkImageSubresource* {.byref.} = object + VkImageSubresource* = object aspectMask*: VkImageAspectFlags mipLevel*: uint32 arrayLayer*: uint32 - VkImageSubresourceLayers* {.byref.} = object + VkImageSubresourceLayers* = object aspectMask*: VkImageAspectFlags mipLevel*: uint32 baseArrayLayer*: uint32 layerCount*: uint32 - VkImageSubresourceRange* {.byref.} = object + VkImageSubresourceRange* = object aspectMask*: VkImageAspectFlags baseMipLevel*: uint32 levelCount*: uint32 baseArrayLayer*: uint32 layerCount*: uint32 - VkMemoryBarrier* {.byref.} = object + VkMemoryBarrier* = object sType*: VkStructureType pNext*: pointer srcAccessMask*: VkAccessFlags dstAccessMask*: VkAccessFlags - VkBufferMemoryBarrier* {.byref.} = object + VkBufferMemoryBarrier* = object sType*: VkStructureType pNext*: pointer srcAccessMask*: VkAccessFlags @@ -5340,7 +5340,7 @@ type offset*: VkDeviceSize size*: VkDeviceSize - VkImageMemoryBarrier* {.byref.} = object + VkImageMemoryBarrier* = object sType*: VkStructureType pNext*: pointer srcAccessMask*: VkAccessFlags @@ -5352,7 +5352,7 @@ type image*: VkImage subresourceRange*: VkImageSubresourceRange - VkImageCreateInfo* {.byref.} = object + VkImageCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkImageCreateFlags @@ -5369,14 +5369,14 @@ type pQueueFamilyIndices*: ptr uint32 initialLayout*: VkImageLayout - VkSubresourceLayout* {.byref.} = object + VkSubresourceLayout* = object offset*: VkDeviceSize size*: VkDeviceSize rowPitch*: VkDeviceSize arrayPitch*: VkDeviceSize depthPitch*: VkDeviceSize - VkImageViewCreateInfo* {.byref.} = object + VkImageViewCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkImageViewCreateFlags @@ -5386,19 +5386,19 @@ type components*: VkComponentMapping subresourceRange*: VkImageSubresourceRange - VkBufferCopy* {.byref.} = object + VkBufferCopy* = object srcOffset*: VkDeviceSize dstOffset*: VkDeviceSize size*: VkDeviceSize - VkSparseMemoryBind* {.byref.} = object + VkSparseMemoryBind* = object resourceOffset*: VkDeviceSize size*: VkDeviceSize memory*: VkDeviceMemory memoryOffset*: VkDeviceSize flags*: VkSparseMemoryBindFlags - VkSparseImageMemoryBind* {.byref.} = object + VkSparseImageMemoryBind* = object subresource*: VkImageSubresource offset*: VkOffset3D extent*: VkExtent3D @@ -5406,22 +5406,22 @@ type memoryOffset*: VkDeviceSize flags*: VkSparseMemoryBindFlags - VkSparseBufferMemoryBindInfo* {.byref.} = object + VkSparseBufferMemoryBindInfo* = object buffer*: VkBuffer bindCount*: uint32 pBinds*: ptr VkSparseMemoryBind - VkSparseImageOpaqueMemoryBindInfo* {.byref.} = object + VkSparseImageOpaqueMemoryBindInfo* = object image*: VkImage bindCount*: uint32 pBinds*: ptr VkSparseMemoryBind - VkSparseImageMemoryBindInfo* {.byref.} = object + VkSparseImageMemoryBindInfo* = object image*: VkImage bindCount*: uint32 pBinds*: ptr VkSparseImageMemoryBind - VkBindSparseInfo* {.byref.} = object + VkBindSparseInfo* = object sType*: VkStructureType pNext*: pointer waitSemaphoreCount*: uint32 @@ -5435,20 +5435,20 @@ type signalSemaphoreCount*: uint32 pSignalSemaphores*: ptr VkSemaphore - VkImageCopy* {.byref.} = object + VkImageCopy* = object srcSubresource*: VkImageSubresourceLayers srcOffset*: VkOffset3D dstSubresource*: VkImageSubresourceLayers dstOffset*: VkOffset3D extent*: VkExtent3D - VkImageBlit* {.byref.} = object + VkImageBlit* = object srcSubresource*: VkImageSubresourceLayers srcOffsets*: array[2, VkOffset3D] dstSubresource*: VkImageSubresourceLayers dstOffsets*: array[2, VkOffset3D] - VkBufferImageCopy* {.byref.} = object + VkBufferImageCopy* = object bufferOffset*: VkDeviceSize bufferRowLength*: uint32 bufferImageHeight*: uint32 @@ -5456,12 +5456,12 @@ type imageOffset*: VkOffset3D imageExtent*: VkExtent3D - VkCopyMemoryIndirectCommandNV* {.byref.} = object + VkCopyMemoryIndirectCommandNV* = object srcAddress*: VkDeviceAddress dstAddress*: VkDeviceAddress size*: VkDeviceSize - VkCopyMemoryToImageIndirectCommandNV* {.byref.} = object + VkCopyMemoryToImageIndirectCommandNV* = object srcAddress*: VkDeviceAddress bufferRowLength*: uint32 bufferImageHeight*: uint32 @@ -5469,39 +5469,39 @@ type imageOffset*: VkOffset3D imageExtent*: VkExtent3D - VkImageResolve* {.byref.} = object + VkImageResolve* = object srcSubresource*: VkImageSubresourceLayers srcOffset*: VkOffset3D dstSubresource*: VkImageSubresourceLayers dstOffset*: VkOffset3D extent*: VkExtent3D - VkShaderModuleCreateInfo* {.byref.} = object + VkShaderModuleCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkShaderModuleCreateFlags codeSize*: uint pCode*: ptr uint32 - VkDescriptorSetLayoutBinding* {.byref.} = object + VkDescriptorSetLayoutBinding* = object binding*: uint32 descriptorType*: VkDescriptorType descriptorCount*: uint32 stageFlags*: VkShaderStageFlags pImmutableSamplers*: ptr VkSampler - VkDescriptorSetLayoutCreateInfo* {.byref.} = object + VkDescriptorSetLayoutCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkDescriptorSetLayoutCreateFlags bindingCount*: uint32 pBindings*: ptr VkDescriptorSetLayoutBinding - VkDescriptorPoolSize* {.byref.} = object + VkDescriptorPoolSize* = object `type`*: VkDescriptorType descriptorCount*: uint32 - VkDescriptorPoolCreateInfo* {.byref.} = object + VkDescriptorPoolCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkDescriptorPoolCreateFlags @@ -5509,25 +5509,25 @@ type poolSizeCount*: uint32 pPoolSizes*: ptr VkDescriptorPoolSize - VkDescriptorSetAllocateInfo* {.byref.} = object + VkDescriptorSetAllocateInfo* = object sType*: VkStructureType pNext*: pointer descriptorPool*: VkDescriptorPool descriptorSetCount*: uint32 pSetLayouts*: ptr VkDescriptorSetLayout - VkSpecializationMapEntry* {.byref.} = object + VkSpecializationMapEntry* = object constantID*: uint32 offset*: uint32 size*: uint - VkSpecializationInfo* {.byref.} = object + VkSpecializationInfo* = object mapEntryCount*: uint32 pMapEntries*: ptr VkSpecializationMapEntry dataSize*: uint pData*: pointer - VkPipelineShaderStageCreateInfo* {.byref.} = object + VkPipelineShaderStageCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineShaderStageCreateFlags @@ -5536,7 +5536,7 @@ type pName*: cstring pSpecializationInfo*: ptr VkSpecializationInfo - VkComputePipelineCreateInfo* {.byref.} = object + VkComputePipelineCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineCreateFlags @@ -5545,30 +5545,30 @@ type basePipelineHandle*: VkPipeline basePipelineIndex*: int32 - VkComputePipelineIndirectBufferInfoNV* {.byref.} = object + VkComputePipelineIndirectBufferInfoNV* = object sType*: VkStructureType pNext*: pointer deviceAddress*: VkDeviceAddress size*: VkDeviceSize pipelineDeviceAddressCaptureReplay*: VkDeviceAddress - VkPipelineCreateFlags2CreateInfoKHR* {.byref.} = object + VkPipelineCreateFlags2CreateInfoKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineCreateFlags2KHR - VkVertexInputBindingDescription* {.byref.} = object + VkVertexInputBindingDescription* = object binding*: uint32 stride*: uint32 inputRate*: VkVertexInputRate - VkVertexInputAttributeDescription* {.byref.} = object + VkVertexInputAttributeDescription* = object location*: uint32 binding*: uint32 format*: VkFormat offset*: uint32 - VkPipelineVertexInputStateCreateInfo* {.byref.} = object + VkPipelineVertexInputStateCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineVertexInputStateCreateFlags @@ -5577,20 +5577,20 @@ type vertexAttributeDescriptionCount*: uint32 pVertexAttributeDescriptions*: ptr VkVertexInputAttributeDescription - VkPipelineInputAssemblyStateCreateInfo* {.byref.} = object + VkPipelineInputAssemblyStateCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineInputAssemblyStateCreateFlags topology*: VkPrimitiveTopology primitiveRestartEnable*: VkBool32 - VkPipelineTessellationStateCreateInfo* {.byref.} = object + VkPipelineTessellationStateCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineTessellationStateCreateFlags patchControlPoints*: uint32 - VkPipelineViewportStateCreateInfo* {.byref.} = object + VkPipelineViewportStateCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineViewportStateCreateFlags @@ -5599,7 +5599,7 @@ type scissorCount*: uint32 pScissors*: ptr VkRect2D - VkPipelineRasterizationStateCreateInfo* {.byref.} = object + VkPipelineRasterizationStateCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineRasterizationStateCreateFlags @@ -5614,7 +5614,7 @@ type depthBiasSlopeFactor*: float32 lineWidth*: float32 - VkPipelineMultisampleStateCreateInfo* {.byref.} = object + VkPipelineMultisampleStateCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineMultisampleStateCreateFlags @@ -5625,7 +5625,7 @@ type alphaToCoverageEnable*: VkBool32 alphaToOneEnable*: VkBool32 - VkPipelineColorBlendAttachmentState* {.byref.} = object + VkPipelineColorBlendAttachmentState* = object blendEnable*: VkBool32 srcColorBlendFactor*: VkBlendFactor dstColorBlendFactor*: VkBlendFactor @@ -5635,7 +5635,7 @@ type alphaBlendOp*: VkBlendOp colorWriteMask*: VkColorComponentFlags - VkPipelineColorBlendStateCreateInfo* {.byref.} = object + VkPipelineColorBlendStateCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineColorBlendStateCreateFlags @@ -5645,14 +5645,14 @@ type pAttachments*: ptr VkPipelineColorBlendAttachmentState blendConstants*: array[4, float32] - VkPipelineDynamicStateCreateInfo* {.byref.} = object + VkPipelineDynamicStateCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineDynamicStateCreateFlags dynamicStateCount*: uint32 pDynamicStates*: ptr VkDynamicState - VkStencilOpState* {.byref.} = object + VkStencilOpState* = object failOp*: VkStencilOp passOp*: VkStencilOp depthFailOp*: VkStencilOp @@ -5661,7 +5661,7 @@ type writeMask*: uint32 reference*: uint32 - VkPipelineDepthStencilStateCreateInfo* {.byref.} = object + VkPipelineDepthStencilStateCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineDepthStencilStateCreateFlags @@ -5675,7 +5675,7 @@ type minDepthBounds*: float32 maxDepthBounds*: float32 - VkGraphicsPipelineCreateInfo* {.byref.} = object + VkGraphicsPipelineCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineCreateFlags @@ -5696,25 +5696,25 @@ type basePipelineHandle*: VkPipeline basePipelineIndex*: int32 - VkPipelineCacheCreateInfo* {.byref.} = object + VkPipelineCacheCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineCacheCreateFlags initialDataSize*: uint pInitialData*: pointer - VkPipelineCacheHeaderVersionOne* {.byref.} = object + VkPipelineCacheHeaderVersionOne* = object headerSize*: uint32 headerVersion*: VkPipelineCacheHeaderVersion vendorID*: uint32 deviceID*: uint32 pipelineCacheUUID*: array[VK_UUID_SIZE, uint8] - VkPipelineCacheStageValidationIndexEntry* {.byref.} = object + VkPipelineCacheStageValidationIndexEntry* = object codeSize*: uint64 codeOffset*: uint64 - VkPipelineCacheSafetyCriticalIndexEntry* {.byref.} = object + VkPipelineCacheSafetyCriticalIndexEntry* = object pipelineIdentifier*: array[VK_UUID_SIZE, uint8] pipelineMemorySize*: uint64 jsonSize*: uint64 @@ -5723,7 +5723,7 @@ type stageIndexStride*: uint32 stageIndexOffset*: uint64 - VkPipelineCacheHeaderVersionSafetyCriticalOne* {.byref.} = object + VkPipelineCacheHeaderVersionSafetyCriticalOne* = object headerVersionOne*: VkPipelineCacheHeaderVersionOne validationVersion*: VkPipelineCacheValidationVersion implementationData*: uint32 @@ -5731,12 +5731,12 @@ type pipelineIndexStride*: uint32 pipelineIndexOffset*: uint64 - VkPushConstantRange* {.byref.} = object + VkPushConstantRange* = object stageFlags*: VkShaderStageFlags offset*: uint32 size*: uint32 - VkPipelineLayoutCreateInfo* {.byref.} = object + VkPipelineLayoutCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineLayoutCreateFlags @@ -5745,7 +5745,7 @@ type pushConstantRangeCount*: uint32 pPushConstantRanges*: ptr VkPushConstantRange - VkSamplerCreateInfo* {.byref.} = object + VkSamplerCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkSamplerCreateFlags @@ -5765,20 +5765,20 @@ type borderColor*: VkBorderColor unnormalizedCoordinates*: VkBool32 - VkCommandPoolCreateInfo* {.byref.} = object + VkCommandPoolCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkCommandPoolCreateFlags queueFamilyIndex*: uint32 - VkCommandBufferAllocateInfo* {.byref.} = object + VkCommandBufferAllocateInfo* = object sType*: VkStructureType pNext*: pointer commandPool*: VkCommandPool level*: VkCommandBufferLevel commandBufferCount*: uint32 - VkCommandBufferInheritanceInfo* {.byref.} = object + VkCommandBufferInheritanceInfo* = object sType*: VkStructureType pNext*: pointer renderPass*: VkRenderPass @@ -5788,13 +5788,13 @@ type queryFlags*: VkQueryControlFlags pipelineStatistics*: VkQueryPipelineStatisticFlags - VkCommandBufferBeginInfo* {.byref.} = object + VkCommandBufferBeginInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkCommandBufferUsageFlags pInheritanceInfo*: ptr VkCommandBufferInheritanceInfo - VkRenderPassBeginInfo* {.byref.} = object + VkRenderPassBeginInfo* = object sType*: VkStructureType pNext*: pointer renderPass*: VkRenderPass @@ -5803,25 +5803,25 @@ type clearValueCount*: uint32 pClearValues*: ptr VkClearValue - VkClearColorValue* {.union, byref.} = object + VkClearColorValue* {.union.} = object float32*: array[4, float32] int32*: array[4, int32] uint32*: array[4, uint32] - VkClearDepthStencilValue* {.byref.} = object + VkClearDepthStencilValue* = object depth*: float32 stencil*: uint32 - VkClearValue* {.union, byref.} = object + VkClearValue* {.union.} = object color*: VkClearColorValue depthStencil*: VkClearDepthStencilValue - VkClearAttachment* {.byref.} = object + VkClearAttachment* = object aspectMask*: VkImageAspectFlags colorAttachment*: uint32 clearValue*: VkClearValue - VkAttachmentDescription* {.byref.} = object + VkAttachmentDescription* = object flags*: VkAttachmentDescriptionFlags format*: VkFormat samples*: VkSampleCountFlagBits @@ -5832,11 +5832,11 @@ type initialLayout*: VkImageLayout finalLayout*: VkImageLayout - VkAttachmentReference* {.byref.} = object + VkAttachmentReference* = object attachment*: uint32 layout*: VkImageLayout - VkSubpassDescription* {.byref.} = object + VkSubpassDescription* = object flags*: VkSubpassDescriptionFlags pipelineBindPoint*: VkPipelineBindPoint inputAttachmentCount*: uint32 @@ -5848,7 +5848,7 @@ type preserveAttachmentCount*: uint32 pPreserveAttachments*: ptr uint32 - VkSubpassDependency* {.byref.} = object + VkSubpassDependency* = object srcSubpass*: uint32 dstSubpass*: uint32 srcStageMask*: VkPipelineStageFlags @@ -5857,7 +5857,7 @@ type dstAccessMask*: VkAccessFlags dependencyFlags*: VkDependencyFlags - VkRenderPassCreateInfo* {.byref.} = object + VkRenderPassCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkRenderPassCreateFlags @@ -5868,17 +5868,17 @@ type dependencyCount*: uint32 pDependencies*: ptr VkSubpassDependency - VkEventCreateInfo* {.byref.} = object + VkEventCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkEventCreateFlags - VkFenceCreateInfo* {.byref.} = object + VkFenceCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkFenceCreateFlags - VkPhysicalDeviceFeatures* {.byref.} = object + VkPhysicalDeviceFeatures* = object robustBufferAccess*: VkBool32 fullDrawIndexUint32*: VkBool32 imageCubeArray*: VkBool32 @@ -5935,14 +5935,14 @@ type variableMultisampleRate*: VkBool32 inheritedQueries*: VkBool32 - VkPhysicalDeviceSparseProperties* {.byref.} = object + VkPhysicalDeviceSparseProperties* = object residencyStandard2DBlockShape*: VkBool32 residencyStandard2DMultisampleBlockShape*: VkBool32 residencyStandard3DBlockShape*: VkBool32 residencyAlignedMipSize*: VkBool32 residencyNonResidentStrict*: VkBool32 - VkPhysicalDeviceLimits* {.byref.} = object + VkPhysicalDeviceLimits* = object maxImageDimension1D*: uint32 maxImageDimension2D*: uint32 maxImageDimension3D*: uint32 @@ -6050,12 +6050,12 @@ type optimalBufferCopyRowPitchAlignment*: VkDeviceSize nonCoherentAtomSize*: VkDeviceSize - VkSemaphoreCreateInfo* {.byref.} = object + VkSemaphoreCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkSemaphoreCreateFlags - VkQueryPoolCreateInfo* {.byref.} = object + VkQueryPoolCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkQueryPoolCreateFlags @@ -6063,7 +6063,7 @@ type queryCount*: uint32 pipelineStatistics*: VkQueryPipelineStatisticFlags - VkFramebufferCreateInfo* {.byref.} = object + VkFramebufferCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkFramebufferCreateFlags @@ -6074,34 +6074,34 @@ type height*: uint32 layers*: uint32 - VkDrawIndirectCommand* {.byref.} = object + VkDrawIndirectCommand* = object vertexCount*: uint32 instanceCount*: uint32 firstVertex*: uint32 firstInstance*: uint32 - VkDrawIndexedIndirectCommand* {.byref.} = object + VkDrawIndexedIndirectCommand* = object indexCount*: uint32 instanceCount*: uint32 firstIndex*: uint32 vertexOffset*: int32 firstInstance*: uint32 - VkDispatchIndirectCommand* {.byref.} = object + VkDispatchIndirectCommand* = object x*: uint32 y*: uint32 z*: uint32 - VkMultiDrawInfoEXT* {.byref.} = object + VkMultiDrawInfoEXT* = object firstVertex*: uint32 vertexCount*: uint32 - VkMultiDrawIndexedInfoEXT* {.byref.} = object + VkMultiDrawIndexedInfoEXT* = object firstIndex*: uint32 indexCount*: uint32 vertexOffset*: int32 - VkSubmitInfo* {.byref.} = object + VkSubmitInfo* = object sType*: VkStructureType pNext*: pointer waitSemaphoreCount*: uint32 @@ -6112,7 +6112,7 @@ type signalSemaphoreCount*: uint32 pSignalSemaphores*: ptr VkSemaphore - VkDisplayPropertiesKHR* {.byref.} = object + VkDisplayPropertiesKHR* = object display*: VkDisplayKHR displayName*: cstring physicalDimensions*: VkExtent2D @@ -6121,25 +6121,25 @@ type planeReorderPossible*: VkBool32 persistentContent*: VkBool32 - VkDisplayPlanePropertiesKHR* {.byref.} = object + VkDisplayPlanePropertiesKHR* = object currentDisplay*: VkDisplayKHR currentStackIndex*: uint32 - VkDisplayModeParametersKHR* {.byref.} = object + VkDisplayModeParametersKHR* = object visibleRegion*: VkExtent2D refreshRate*: uint32 - VkDisplayModePropertiesKHR* {.byref.} = object + VkDisplayModePropertiesKHR* = object displayMode*: VkDisplayModeKHR parameters*: VkDisplayModeParametersKHR - VkDisplayModeCreateInfoKHR* {.byref.} = object + VkDisplayModeCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkDisplayModeCreateFlagsKHR parameters*: VkDisplayModeParametersKHR - VkDisplayPlaneCapabilitiesKHR* {.byref.} = object + VkDisplayPlaneCapabilitiesKHR* = object supportedAlpha*: VkDisplayPlaneAlphaFlagsKHR minSrcPosition*: VkOffset2D maxSrcPosition*: VkOffset2D @@ -6150,7 +6150,7 @@ type minDstExtent*: VkExtent2D maxDstExtent*: VkExtent2D - VkDisplaySurfaceCreateInfoKHR* {.byref.} = object + VkDisplaySurfaceCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkDisplaySurfaceCreateFlagsKHR @@ -6162,14 +6162,14 @@ type alphaMode*: VkDisplayPlaneAlphaFlagBitsKHR imageExtent*: VkExtent2D - VkDisplayPresentInfoKHR* {.byref.} = object + VkDisplayPresentInfoKHR* = object sType*: VkStructureType pNext*: pointer srcRect*: VkRect2D dstRect*: VkRect2D persistent*: VkBool32 - VkSurfaceCapabilitiesKHR* {.byref.} = object + VkSurfaceCapabilitiesKHR* = object minImageCount*: uint32 maxImageCount*: uint32 currentExtent*: VkExtent2D @@ -6181,77 +6181,77 @@ type supportedCompositeAlpha*: VkCompositeAlphaFlagsKHR supportedUsageFlags*: VkImageUsageFlags - VkAndroidSurfaceCreateInfoKHR* {.byref.} = object + VkAndroidSurfaceCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkAndroidSurfaceCreateFlagsKHR window*: ptr ANativeWindow - VkViSurfaceCreateInfoNN* {.byref.} = object + VkViSurfaceCreateInfoNN* = object sType*: VkStructureType pNext*: pointer flags*: VkViSurfaceCreateFlagsNN window*: pointer - VkWaylandSurfaceCreateInfoKHR* {.byref.} = object + VkWaylandSurfaceCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkWaylandSurfaceCreateFlagsKHR display*: ptr wl_display surface*: ptr wl_surface - VkWin32SurfaceCreateInfoKHR* {.byref.} = object + VkWin32SurfaceCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkWin32SurfaceCreateFlagsKHR hinstance*: HINSTANCE hwnd*: HWND - VkXlibSurfaceCreateInfoKHR* {.byref.} = object + VkXlibSurfaceCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkXlibSurfaceCreateFlagsKHR dpy*: ptr Display window*: Window - VkXcbSurfaceCreateInfoKHR* {.byref.} = object + VkXcbSurfaceCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkXcbSurfaceCreateFlagsKHR connection*: ptr xcb_connection_t window*: xcb_window_t - VkDirectFBSurfaceCreateInfoEXT* {.byref.} = object + VkDirectFBSurfaceCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer flags*: VkDirectFBSurfaceCreateFlagsEXT dfb*: ptr IDirectFB surface*: ptr IDirectFBSurface - VkImagePipeSurfaceCreateInfoFUCHSIA* {.byref.} = object + VkImagePipeSurfaceCreateInfoFUCHSIA* = object sType*: VkStructureType pNext*: pointer flags*: VkImagePipeSurfaceCreateFlagsFUCHSIA imagePipeHandle*: zx_handle_t - VkStreamDescriptorSurfaceCreateInfoGGP* {.byref.} = object + VkStreamDescriptorSurfaceCreateInfoGGP* = object sType*: VkStructureType pNext*: pointer flags*: VkStreamDescriptorSurfaceCreateFlagsGGP streamDescriptor*: GgpStreamDescriptor - VkScreenSurfaceCreateInfoQNX* {.byref.} = object + VkScreenSurfaceCreateInfoQNX* = object sType*: VkStructureType pNext*: pointer flags*: VkScreenSurfaceCreateFlagsQNX context*: ptr screen_context window*: ptr screen_window - VkSurfaceFormatKHR* {.byref.} = object + VkSurfaceFormatKHR* = object format*: VkFormat colorSpace*: VkColorSpaceKHR - VkSwapchainCreateInfoKHR* {.byref.} = object + VkSwapchainCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkSwapchainCreateFlagsKHR @@ -6271,7 +6271,7 @@ type clipped*: VkBool32 oldSwapchain*: VkSwapchainKHR - VkPresentInfoKHR* {.byref.} = object + VkPresentInfoKHR* = object sType*: VkStructureType pNext*: pointer waitSemaphoreCount*: uint32 @@ -6281,20 +6281,20 @@ type pImageIndices*: ptr uint32 pResults*: ptr VkResult - VkDebugReportCallbackCreateInfoEXT* {.byref.} = object + VkDebugReportCallbackCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer flags*: VkDebugReportFlagsEXT pfnCallback*: PFN_vkDebugReportCallbackEXT pUserData*: pointer - VkValidationFlagsEXT* {.byref.} = object + VkValidationFlagsEXT* = object sType*: VkStructureType pNext*: pointer disabledValidationCheckCount*: uint32 pDisabledValidationChecks*: ptr VkValidationCheckEXT - VkValidationFeaturesEXT* {.byref.} = object + VkValidationFeaturesEXT* = object sType*: VkStructureType pNext*: pointer enabledValidationFeatureCount*: uint32 @@ -6302,20 +6302,20 @@ type disabledValidationFeatureCount*: uint32 pDisabledValidationFeatures*: ptr VkValidationFeatureDisableEXT - VkLayerSettingsCreateInfoEXT* {.byref.} = object + VkLayerSettingsCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer settingCount*: uint32 pSettings*: ptr VkLayerSettingEXT - VkLayerSettingEXT* {.byref.} = object + VkLayerSettingEXT* = object pLayerName*: cstring pSettingName*: cstring `type`*: VkLayerSettingTypeEXT valueCount*: uint32 pValues*: pointer - VkApplicationParametersEXT* {.byref.} = object + VkApplicationParametersEXT* = object sType*: VkStructureType pNext*: pointer vendorID*: uint32 @@ -6323,19 +6323,19 @@ type key*: uint32 value*: uint64 - VkPipelineRasterizationStateRasterizationOrderAMD* {.byref.} = object + VkPipelineRasterizationStateRasterizationOrderAMD* = object sType*: VkStructureType pNext*: pointer rasterizationOrder*: VkRasterizationOrderAMD - VkDebugMarkerObjectNameInfoEXT* {.byref.} = object + VkDebugMarkerObjectNameInfoEXT* = object sType*: VkStructureType pNext*: pointer objectType*: VkDebugReportObjectTypeEXT `object`*: uint64 pObjectName*: cstring - VkDebugMarkerObjectTagInfoEXT* {.byref.} = object + VkDebugMarkerObjectTagInfoEXT* = object sType*: VkStructureType pNext*: pointer objectType*: VkDebugReportObjectTypeEXT @@ -6344,79 +6344,79 @@ type tagSize*: uint pTag*: pointer - VkDebugMarkerMarkerInfoEXT* {.byref.} = object + VkDebugMarkerMarkerInfoEXT* = object sType*: VkStructureType pNext*: pointer pMarkerName*: cstring color*: array[4, float32] - VkDedicatedAllocationImageCreateInfoNV* {.byref.} = object + VkDedicatedAllocationImageCreateInfoNV* = object sType*: VkStructureType pNext*: pointer dedicatedAllocation*: VkBool32 - VkDedicatedAllocationBufferCreateInfoNV* {.byref.} = object + VkDedicatedAllocationBufferCreateInfoNV* = object sType*: VkStructureType pNext*: pointer dedicatedAllocation*: VkBool32 - VkDedicatedAllocationMemoryAllocateInfoNV* {.byref.} = object + VkDedicatedAllocationMemoryAllocateInfoNV* = object sType*: VkStructureType pNext*: pointer image*: VkImage buffer*: VkBuffer - VkExternalImageFormatPropertiesNV* {.byref.} = object + VkExternalImageFormatPropertiesNV* = object imageFormatProperties*: VkImageFormatProperties externalMemoryFeatures*: VkExternalMemoryFeatureFlagsNV exportFromImportedHandleTypes*: VkExternalMemoryHandleTypeFlagsNV compatibleHandleTypes*: VkExternalMemoryHandleTypeFlagsNV - VkExternalMemoryImageCreateInfoNV* {.byref.} = object + VkExternalMemoryImageCreateInfoNV* = object sType*: VkStructureType pNext*: pointer handleTypes*: VkExternalMemoryHandleTypeFlagsNV - VkExportMemoryAllocateInfoNV* {.byref.} = object + VkExportMemoryAllocateInfoNV* = object sType*: VkStructureType pNext*: pointer handleTypes*: VkExternalMemoryHandleTypeFlagsNV - VkImportMemoryWin32HandleInfoNV* {.byref.} = object + VkImportMemoryWin32HandleInfoNV* = object sType*: VkStructureType pNext*: pointer handleType*: VkExternalMemoryHandleTypeFlagsNV handle*: HANDLE - VkExportMemoryWin32HandleInfoNV* {.byref.} = object + VkExportMemoryWin32HandleInfoNV* = object sType*: VkStructureType pNext*: pointer pAttributes*: ptr SECURITY_ATTRIBUTES dwAccess*: DWORD - VkExportMemorySciBufInfoNV* {.byref.} = object + VkExportMemorySciBufInfoNV* = object sType*: VkStructureType pNext*: pointer pAttributes*: NvSciBufAttrList - VkImportMemorySciBufInfoNV* {.byref.} = object + VkImportMemorySciBufInfoNV* = object sType*: VkStructureType pNext*: pointer handleType*: VkExternalMemoryHandleTypeFlagBits handle*: NvSciBufObj - VkMemoryGetSciBufInfoNV* {.byref.} = object + VkMemoryGetSciBufInfoNV* = object sType*: VkStructureType pNext*: pointer memory*: VkDeviceMemory handleType*: VkExternalMemoryHandleTypeFlagBits - VkMemorySciBufPropertiesNV* {.byref.} = object + VkMemorySciBufPropertiesNV* = object sType*: VkStructureType pNext*: pointer memoryTypeBits*: uint32 - VkPhysicalDeviceExternalMemorySciBufFeaturesNV* {.byref.} = object + VkPhysicalDeviceExternalMemorySciBufFeaturesNV* = object sType*: VkStructureType pNext*: pointer sciBufImport*: VkBool32 @@ -6424,7 +6424,7 @@ type VkPhysicalDeviceExternalSciBufFeaturesNV* = VkPhysicalDeviceExternalMemorySciBufFeaturesNV - VkWin32KeyedMutexAcquireReleaseInfoNV* {.byref.} = object + VkWin32KeyedMutexAcquireReleaseInfoNV* = object sType*: VkStructureType pNext*: pointer acquireCount*: uint32 @@ -6435,40 +6435,40 @@ type pReleaseSyncs*: ptr VkDeviceMemory pReleaseKeys*: ptr uint64 - VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV* {.byref.} = object + VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV* = object sType*: VkStructureType pNext*: pointer deviceGeneratedCommands*: VkBool32 - VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV* {.byref.} = object + VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV* = object sType*: VkStructureType pNext*: pointer deviceGeneratedCompute*: VkBool32 deviceGeneratedComputePipelines*: VkBool32 deviceGeneratedComputeCaptureReplay*: VkBool32 - VkDevicePrivateDataCreateInfo* {.byref.} = object + VkDevicePrivateDataCreateInfo* = object sType*: VkStructureType pNext*: pointer privateDataSlotRequestCount*: uint32 VkDevicePrivateDataCreateInfoEXT* = VkDevicePrivateDataCreateInfo - VkPrivateDataSlotCreateInfo* {.byref.} = object + VkPrivateDataSlotCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkPrivateDataSlotCreateFlags VkPrivateDataSlotCreateInfoEXT* = VkPrivateDataSlotCreateInfo - VkPhysicalDevicePrivateDataFeatures* {.byref.} = object + VkPhysicalDevicePrivateDataFeatures* = object sType*: VkStructureType pNext*: pointer privateData*: VkBool32 VkPhysicalDevicePrivateDataFeaturesEXT* = VkPhysicalDevicePrivateDataFeatures - VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV* {.byref.} = object + VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV* = object sType*: VkStructureType pNext*: pointer maxGraphicsShaderGroupCount*: uint32 @@ -6481,12 +6481,12 @@ type minSequencesIndexBufferOffsetAlignment*: uint32 minIndirectCommandsBufferOffsetAlignment*: uint32 - VkPhysicalDeviceMultiDrawPropertiesEXT* {.byref.} = object + VkPhysicalDeviceMultiDrawPropertiesEXT* = object sType*: VkStructureType pNext*: pointer maxMultiDrawCount*: uint32 - VkGraphicsShaderGroupCreateInfoNV* {.byref.} = object + VkGraphicsShaderGroupCreateInfoNV* = object sType*: VkStructureType pNext*: pointer stageCount*: uint32 @@ -6494,7 +6494,7 @@ type pVertexInputState*: ptr VkPipelineVertexInputStateCreateInfo pTessellationState*: ptr VkPipelineTessellationStateCreateInfo - VkGraphicsPipelineShaderGroupsCreateInfoNV* {.byref.} = object + VkGraphicsPipelineShaderGroupsCreateInfoNV* = object sType*: VkStructureType pNext*: pointer groupCount*: uint32 @@ -6502,27 +6502,27 @@ type pipelineCount*: uint32 pPipelines*: ptr VkPipeline - VkBindShaderGroupIndirectCommandNV* {.byref.} = object + VkBindShaderGroupIndirectCommandNV* = object groupIndex*: uint32 - VkBindIndexBufferIndirectCommandNV* {.byref.} = object + VkBindIndexBufferIndirectCommandNV* = object bufferAddress*: VkDeviceAddress size*: uint32 indexType*: VkIndexType - VkBindVertexBufferIndirectCommandNV* {.byref.} = object + VkBindVertexBufferIndirectCommandNV* = object bufferAddress*: VkDeviceAddress size*: uint32 stride*: uint32 - VkSetStateFlagsIndirectCommandNV* {.byref.} = object + VkSetStateFlagsIndirectCommandNV* = object data*: uint32 - VkIndirectCommandsStreamNV* {.byref.} = object + VkIndirectCommandsStreamNV* = object buffer*: VkBuffer offset*: VkDeviceSize - VkIndirectCommandsLayoutTokenNV* {.byref.} = object + VkIndirectCommandsLayoutTokenNV* = object sType*: VkStructureType pNext*: pointer tokenType*: VkIndirectCommandsTokenTypeNV @@ -6539,7 +6539,7 @@ type pIndexTypes*: ptr VkIndexType pIndexTypeValues*: ptr uint32 - VkIndirectCommandsLayoutCreateInfoNV* {.byref.} = object + VkIndirectCommandsLayoutCreateInfoNV* = object sType*: VkStructureType pNext*: pointer flags*: VkIndirectCommandsLayoutUsageFlagsNV @@ -6549,7 +6549,7 @@ type streamCount*: uint32 pStreamStrides*: ptr uint32 - VkGeneratedCommandsInfoNV* {.byref.} = object + VkGeneratedCommandsInfoNV* = object sType*: VkStructureType pNext*: pointer pipelineBindPoint*: VkPipelineBindPoint @@ -6566,7 +6566,7 @@ type sequencesIndexBuffer*: VkBuffer sequencesIndexOffset*: VkDeviceSize - VkGeneratedCommandsMemoryRequirementsInfoNV* {.byref.} = object + VkGeneratedCommandsMemoryRequirementsInfoNV* = object sType*: VkStructureType pNext*: pointer pipelineBindPoint*: VkPipelineBindPoint @@ -6574,44 +6574,44 @@ type indirectCommandsLayout*: VkIndirectCommandsLayoutNV maxSequencesCount*: uint32 - VkPipelineIndirectDeviceAddressInfoNV* {.byref.} = object + VkPipelineIndirectDeviceAddressInfoNV* = object sType*: VkStructureType pNext*: pointer pipelineBindPoint*: VkPipelineBindPoint pipeline*: VkPipeline - VkBindPipelineIndirectCommandNV* {.byref.} = object + VkBindPipelineIndirectCommandNV* = object pipelineAddress*: VkDeviceAddress - VkPhysicalDeviceFeatures2* {.byref.} = object + VkPhysicalDeviceFeatures2* = object sType*: VkStructureType pNext*: pointer features*: VkPhysicalDeviceFeatures VkPhysicalDeviceFeatures2KHR* = VkPhysicalDeviceFeatures2 - VkPhysicalDeviceProperties2* {.byref.} = object + VkPhysicalDeviceProperties2* = object sType*: VkStructureType pNext*: pointer properties*: VkPhysicalDeviceProperties VkPhysicalDeviceProperties2KHR* = VkPhysicalDeviceProperties2 - VkFormatProperties2* {.byref.} = object + VkFormatProperties2* = object sType*: VkStructureType pNext*: pointer formatProperties*: VkFormatProperties VkFormatProperties2KHR* = VkFormatProperties2 - VkImageFormatProperties2* {.byref.} = object + VkImageFormatProperties2* = object sType*: VkStructureType pNext*: pointer imageFormatProperties*: VkImageFormatProperties VkImageFormatProperties2KHR* = VkImageFormatProperties2 - VkPhysicalDeviceImageFormatInfo2* {.byref.} = object + VkPhysicalDeviceImageFormatInfo2* = object sType*: VkStructureType pNext*: pointer format*: VkFormat @@ -6622,28 +6622,28 @@ type VkPhysicalDeviceImageFormatInfo2KHR* = VkPhysicalDeviceImageFormatInfo2 - VkQueueFamilyProperties2* {.byref.} = object + VkQueueFamilyProperties2* = object sType*: VkStructureType pNext*: pointer queueFamilyProperties*: VkQueueFamilyProperties VkQueueFamilyProperties2KHR* = VkQueueFamilyProperties2 - VkPhysicalDeviceMemoryProperties2* {.byref.} = object + VkPhysicalDeviceMemoryProperties2* = object sType*: VkStructureType pNext*: pointer memoryProperties*: VkPhysicalDeviceMemoryProperties VkPhysicalDeviceMemoryProperties2KHR* = VkPhysicalDeviceMemoryProperties2 - VkSparseImageFormatProperties2* {.byref.} = object + VkSparseImageFormatProperties2* = object sType*: VkStructureType pNext*: pointer properties*: VkSparseImageFormatProperties VkSparseImageFormatProperties2KHR* = VkSparseImageFormatProperties2 - VkPhysicalDeviceSparseImageFormatInfo2* {.byref.} = object + VkPhysicalDeviceSparseImageFormatInfo2* = object sType*: VkStructureType pNext*: pointer format*: VkFormat @@ -6654,12 +6654,12 @@ type VkPhysicalDeviceSparseImageFormatInfo2KHR* = VkPhysicalDeviceSparseImageFormatInfo2 - VkPhysicalDevicePushDescriptorPropertiesKHR* {.byref.} = object + VkPhysicalDevicePushDescriptorPropertiesKHR* = object sType*: VkStructureType pNext*: pointer maxPushDescriptors*: uint32 - VkConformanceVersion* {.byref.} = object + VkConformanceVersion* = object major*: uint8 minor*: uint8 subminor*: uint8 @@ -6667,7 +6667,7 @@ type VkConformanceVersionKHR* = VkConformanceVersion - VkPhysicalDeviceDriverProperties* {.byref.} = object + VkPhysicalDeviceDriverProperties* = object sType*: VkStructureType pNext*: pointer driverID*: VkDriverId @@ -6677,22 +6677,22 @@ type VkPhysicalDeviceDriverPropertiesKHR* = VkPhysicalDeviceDriverProperties - VkPresentRegionsKHR* {.byref.} = object + VkPresentRegionsKHR* = object sType*: VkStructureType pNext*: pointer swapchainCount*: uint32 pRegions*: ptr VkPresentRegionKHR - VkPresentRegionKHR* {.byref.} = object + VkPresentRegionKHR* = object rectangleCount*: uint32 pRectangles*: ptr VkRectLayerKHR - VkRectLayerKHR* {.byref.} = object + VkRectLayerKHR* = object offset*: VkOffset2D extent*: VkExtent2D layer*: uint32 - VkPhysicalDeviceVariablePointersFeatures* {.byref.} = object + VkPhysicalDeviceVariablePointersFeatures* = object sType*: VkStructureType pNext*: pointer variablePointersStorageBuffer*: VkBool32 @@ -6704,28 +6704,28 @@ type VkPhysicalDeviceVariablePointerFeatures* = VkPhysicalDeviceVariablePointersFeatures - VkExternalMemoryProperties* {.byref.} = object + VkExternalMemoryProperties* = object externalMemoryFeatures*: VkExternalMemoryFeatureFlags exportFromImportedHandleTypes*: VkExternalMemoryHandleTypeFlags compatibleHandleTypes*: VkExternalMemoryHandleTypeFlags VkExternalMemoryPropertiesKHR* = VkExternalMemoryProperties - VkPhysicalDeviceExternalImageFormatInfo* {.byref.} = object + VkPhysicalDeviceExternalImageFormatInfo* = object sType*: VkStructureType pNext*: pointer handleType*: VkExternalMemoryHandleTypeFlagBits VkPhysicalDeviceExternalImageFormatInfoKHR* = VkPhysicalDeviceExternalImageFormatInfo - VkExternalImageFormatProperties* {.byref.} = object + VkExternalImageFormatProperties* = object sType*: VkStructureType pNext*: pointer externalMemoryProperties*: VkExternalMemoryProperties VkExternalImageFormatPropertiesKHR* = VkExternalImageFormatProperties - VkPhysicalDeviceExternalBufferInfo* {.byref.} = object + VkPhysicalDeviceExternalBufferInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkBufferCreateFlags @@ -6734,14 +6734,14 @@ type VkPhysicalDeviceExternalBufferInfoKHR* = VkPhysicalDeviceExternalBufferInfo - VkExternalBufferProperties* {.byref.} = object + VkExternalBufferProperties* = object sType*: VkStructureType pNext*: pointer externalMemoryProperties*: VkExternalMemoryProperties VkExternalBufferPropertiesKHR* = VkExternalBufferProperties - VkPhysicalDeviceIDProperties* {.byref.} = object + VkPhysicalDeviceIDProperties* = object sType*: VkStructureType pNext*: pointer deviceUUID*: array[VK_UUID_SIZE, uint8] @@ -6752,87 +6752,87 @@ type VkPhysicalDeviceIDPropertiesKHR* = VkPhysicalDeviceIDProperties - VkExternalMemoryImageCreateInfo* {.byref.} = object + VkExternalMemoryImageCreateInfo* = object sType*: VkStructureType pNext*: pointer handleTypes*: VkExternalMemoryHandleTypeFlags VkExternalMemoryImageCreateInfoKHR* = VkExternalMemoryImageCreateInfo - VkExternalMemoryBufferCreateInfo* {.byref.} = object + VkExternalMemoryBufferCreateInfo* = object sType*: VkStructureType pNext*: pointer handleTypes*: VkExternalMemoryHandleTypeFlags VkExternalMemoryBufferCreateInfoKHR* = VkExternalMemoryBufferCreateInfo - VkExportMemoryAllocateInfo* {.byref.} = object + VkExportMemoryAllocateInfo* = object sType*: VkStructureType pNext*: pointer handleTypes*: VkExternalMemoryHandleTypeFlags VkExportMemoryAllocateInfoKHR* = VkExportMemoryAllocateInfo - VkImportMemoryWin32HandleInfoKHR* {.byref.} = object + VkImportMemoryWin32HandleInfoKHR* = object sType*: VkStructureType pNext*: pointer handleType*: VkExternalMemoryHandleTypeFlagBits handle*: HANDLE name*: LPCWSTR - VkExportMemoryWin32HandleInfoKHR* {.byref.} = object + VkExportMemoryWin32HandleInfoKHR* = object sType*: VkStructureType pNext*: pointer pAttributes*: ptr SECURITY_ATTRIBUTES dwAccess*: DWORD name*: LPCWSTR - VkImportMemoryZirconHandleInfoFUCHSIA* {.byref.} = object + VkImportMemoryZirconHandleInfoFUCHSIA* = object sType*: VkStructureType pNext*: pointer handleType*: VkExternalMemoryHandleTypeFlagBits handle*: zx_handle_t - VkMemoryZirconHandlePropertiesFUCHSIA* {.byref.} = object + VkMemoryZirconHandlePropertiesFUCHSIA* = object sType*: VkStructureType pNext*: pointer memoryTypeBits*: uint32 - VkMemoryGetZirconHandleInfoFUCHSIA* {.byref.} = object + VkMemoryGetZirconHandleInfoFUCHSIA* = object sType*: VkStructureType pNext*: pointer memory*: VkDeviceMemory handleType*: VkExternalMemoryHandleTypeFlagBits - VkMemoryWin32HandlePropertiesKHR* {.byref.} = object + VkMemoryWin32HandlePropertiesKHR* = object sType*: VkStructureType pNext*: pointer memoryTypeBits*: uint32 - VkMemoryGetWin32HandleInfoKHR* {.byref.} = object + VkMemoryGetWin32HandleInfoKHR* = object sType*: VkStructureType pNext*: pointer memory*: VkDeviceMemory handleType*: VkExternalMemoryHandleTypeFlagBits - VkImportMemoryFdInfoKHR* {.byref.} = object + VkImportMemoryFdInfoKHR* = object sType*: VkStructureType pNext*: pointer handleType*: VkExternalMemoryHandleTypeFlagBits fd*: int - VkMemoryFdPropertiesKHR* {.byref.} = object + VkMemoryFdPropertiesKHR* = object sType*: VkStructureType pNext*: pointer memoryTypeBits*: uint32 - VkMemoryGetFdInfoKHR* {.byref.} = object + VkMemoryGetFdInfoKHR* = object sType*: VkStructureType pNext*: pointer memory*: VkDeviceMemory handleType*: VkExternalMemoryHandleTypeFlagBits - VkWin32KeyedMutexAcquireReleaseInfoKHR* {.byref.} = object + VkWin32KeyedMutexAcquireReleaseInfoKHR* = object sType*: VkStructureType pNext*: pointer acquireCount*: uint32 @@ -6843,14 +6843,14 @@ type pReleaseSyncs*: ptr VkDeviceMemory pReleaseKeys*: ptr uint64 - VkPhysicalDeviceExternalSemaphoreInfo* {.byref.} = object + VkPhysicalDeviceExternalSemaphoreInfo* = object sType*: VkStructureType pNext*: pointer handleType*: VkExternalSemaphoreHandleTypeFlagBits VkPhysicalDeviceExternalSemaphoreInfoKHR* = VkPhysicalDeviceExternalSemaphoreInfo - VkExternalSemaphoreProperties* {.byref.} = object + VkExternalSemaphoreProperties* = object sType*: VkStructureType pNext*: pointer exportFromImportedHandleTypes*: VkExternalSemaphoreHandleTypeFlags @@ -6859,14 +6859,14 @@ type VkExternalSemaphorePropertiesKHR* = VkExternalSemaphoreProperties - VkExportSemaphoreCreateInfo* {.byref.} = object + VkExportSemaphoreCreateInfo* = object sType*: VkStructureType pNext*: pointer handleTypes*: VkExternalSemaphoreHandleTypeFlags VkExportSemaphoreCreateInfoKHR* = VkExportSemaphoreCreateInfo - VkImportSemaphoreWin32HandleInfoKHR* {.byref.} = object + VkImportSemaphoreWin32HandleInfoKHR* = object sType*: VkStructureType pNext*: pointer semaphore*: VkSemaphore @@ -6875,14 +6875,14 @@ type handle*: HANDLE name*: LPCWSTR - VkExportSemaphoreWin32HandleInfoKHR* {.byref.} = object + VkExportSemaphoreWin32HandleInfoKHR* = object sType*: VkStructureType pNext*: pointer pAttributes*: ptr SECURITY_ATTRIBUTES dwAccess*: DWORD name*: LPCWSTR - VkD3D12FenceSubmitInfoKHR* {.byref.} = object + VkD3D12FenceSubmitInfoKHR* = object sType*: VkStructureType pNext*: pointer waitSemaphoreValuesCount*: uint32 @@ -6890,13 +6890,13 @@ type signalSemaphoreValuesCount*: uint32 pSignalSemaphoreValues*: ptr uint64 - VkSemaphoreGetWin32HandleInfoKHR* {.byref.} = object + VkSemaphoreGetWin32HandleInfoKHR* = object sType*: VkStructureType pNext*: pointer semaphore*: VkSemaphore handleType*: VkExternalSemaphoreHandleTypeFlagBits - VkImportSemaphoreFdInfoKHR* {.byref.} = object + VkImportSemaphoreFdInfoKHR* = object sType*: VkStructureType pNext*: pointer semaphore*: VkSemaphore @@ -6904,13 +6904,13 @@ type handleType*: VkExternalSemaphoreHandleTypeFlagBits fd*: int - VkSemaphoreGetFdInfoKHR* {.byref.} = object + VkSemaphoreGetFdInfoKHR* = object sType*: VkStructureType pNext*: pointer semaphore*: VkSemaphore handleType*: VkExternalSemaphoreHandleTypeFlagBits - VkImportSemaphoreZirconHandleInfoFUCHSIA* {.byref.} = object + VkImportSemaphoreZirconHandleInfoFUCHSIA* = object sType*: VkStructureType pNext*: pointer semaphore*: VkSemaphore @@ -6918,20 +6918,20 @@ type handleType*: VkExternalSemaphoreHandleTypeFlagBits zirconHandle*: zx_handle_t - VkSemaphoreGetZirconHandleInfoFUCHSIA* {.byref.} = object + VkSemaphoreGetZirconHandleInfoFUCHSIA* = object sType*: VkStructureType pNext*: pointer semaphore*: VkSemaphore handleType*: VkExternalSemaphoreHandleTypeFlagBits - VkPhysicalDeviceExternalFenceInfo* {.byref.} = object + VkPhysicalDeviceExternalFenceInfo* = object sType*: VkStructureType pNext*: pointer handleType*: VkExternalFenceHandleTypeFlagBits VkPhysicalDeviceExternalFenceInfoKHR* = VkPhysicalDeviceExternalFenceInfo - VkExternalFenceProperties* {.byref.} = object + VkExternalFenceProperties* = object sType*: VkStructureType pNext*: pointer exportFromImportedHandleTypes*: VkExternalFenceHandleTypeFlags @@ -6940,14 +6940,14 @@ type VkExternalFencePropertiesKHR* = VkExternalFenceProperties - VkExportFenceCreateInfo* {.byref.} = object + VkExportFenceCreateInfo* = object sType*: VkStructureType pNext*: pointer handleTypes*: VkExternalFenceHandleTypeFlags VkExportFenceCreateInfoKHR* = VkExportFenceCreateInfo - VkImportFenceWin32HandleInfoKHR* {.byref.} = object + VkImportFenceWin32HandleInfoKHR* = object sType*: VkStructureType pNext*: pointer fence*: VkFence @@ -6956,20 +6956,20 @@ type handle*: HANDLE name*: LPCWSTR - VkExportFenceWin32HandleInfoKHR* {.byref.} = object + VkExportFenceWin32HandleInfoKHR* = object sType*: VkStructureType pNext*: pointer pAttributes*: ptr SECURITY_ATTRIBUTES dwAccess*: DWORD name*: LPCWSTR - VkFenceGetWin32HandleInfoKHR* {.byref.} = object + VkFenceGetWin32HandleInfoKHR* = object sType*: VkStructureType pNext*: pointer fence*: VkFence handleType*: VkExternalFenceHandleTypeFlagBits - VkImportFenceFdInfoKHR* {.byref.} = object + VkImportFenceFdInfoKHR* = object sType*: VkStructureType pNext*: pointer fence*: VkFence @@ -6977,55 +6977,55 @@ type handleType*: VkExternalFenceHandleTypeFlagBits fd*: int - VkFenceGetFdInfoKHR* {.byref.} = object + VkFenceGetFdInfoKHR* = object sType*: VkStructureType pNext*: pointer fence*: VkFence handleType*: VkExternalFenceHandleTypeFlagBits - VkExportFenceSciSyncInfoNV* {.byref.} = object + VkExportFenceSciSyncInfoNV* = object sType*: VkStructureType pNext*: pointer pAttributes*: NvSciSyncAttrList - VkImportFenceSciSyncInfoNV* {.byref.} = object + VkImportFenceSciSyncInfoNV* = object sType*: VkStructureType pNext*: pointer fence*: VkFence handleType*: VkExternalFenceHandleTypeFlagBits handle*: pointer - VkFenceGetSciSyncInfoNV* {.byref.} = object + VkFenceGetSciSyncInfoNV* = object sType*: VkStructureType pNext*: pointer fence*: VkFence handleType*: VkExternalFenceHandleTypeFlagBits - VkExportSemaphoreSciSyncInfoNV* {.byref.} = object + VkExportSemaphoreSciSyncInfoNV* = object sType*: VkStructureType pNext*: pointer pAttributes*: NvSciSyncAttrList - VkImportSemaphoreSciSyncInfoNV* {.byref.} = object + VkImportSemaphoreSciSyncInfoNV* = object sType*: VkStructureType pNext*: pointer semaphore*: VkSemaphore handleType*: VkExternalSemaphoreHandleTypeFlagBits handle*: pointer - VkSemaphoreGetSciSyncInfoNV* {.byref.} = object + VkSemaphoreGetSciSyncInfoNV* = object sType*: VkStructureType pNext*: pointer semaphore*: VkSemaphore handleType*: VkExternalSemaphoreHandleTypeFlagBits - VkSciSyncAttributesInfoNV* {.byref.} = object + VkSciSyncAttributesInfoNV* = object sType*: VkStructureType pNext*: pointer clientType*: VkSciSyncClientTypeNV primitiveType*: VkSciSyncPrimitiveTypeNV - VkPhysicalDeviceExternalSciSyncFeaturesNV* {.byref.} = object + VkPhysicalDeviceExternalSciSyncFeaturesNV* = object sType*: VkStructureType pNext*: pointer sciSyncFence*: VkBool32 @@ -7033,7 +7033,7 @@ type sciSyncImport*: VkBool32 sciSyncExport*: VkBool32 - VkPhysicalDeviceExternalSciSync2FeaturesNV* {.byref.} = object + VkPhysicalDeviceExternalSciSync2FeaturesNV* = object sType*: VkStructureType pNext*: pointer sciSyncFence*: VkBool32 @@ -7041,23 +7041,23 @@ type sciSyncImport*: VkBool32 sciSyncExport*: VkBool32 - VkSemaphoreSciSyncPoolCreateInfoNV* {.byref.} = object + VkSemaphoreSciSyncPoolCreateInfoNV* = object sType*: VkStructureType pNext*: pointer handle*: NvSciSyncObj - VkSemaphoreSciSyncCreateInfoNV* {.byref.} = object + VkSemaphoreSciSyncCreateInfoNV* = object sType*: VkStructureType pNext*: pointer semaphorePool*: VkSemaphoreSciSyncPoolNV pFence*: ptr NvSciSyncFence - VkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV* {.byref.} = object + VkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV* = object sType*: VkStructureType pNext*: pointer semaphoreSciSyncPoolRequestCount*: uint32 - VkPhysicalDeviceMultiviewFeatures* {.byref.} = object + VkPhysicalDeviceMultiviewFeatures* = object sType*: VkStructureType pNext*: pointer multiview*: VkBool32 @@ -7066,7 +7066,7 @@ type VkPhysicalDeviceMultiviewFeaturesKHR* = VkPhysicalDeviceMultiviewFeatures - VkPhysicalDeviceMultiviewProperties* {.byref.} = object + VkPhysicalDeviceMultiviewProperties* = object sType*: VkStructureType pNext*: pointer maxMultiviewViewCount*: uint32 @@ -7074,7 +7074,7 @@ type VkPhysicalDeviceMultiviewPropertiesKHR* = VkPhysicalDeviceMultiviewProperties - VkRenderPassMultiviewCreateInfo* {.byref.} = object + VkRenderPassMultiviewCreateInfo* = object sType*: VkStructureType pNext*: pointer subpassCount*: uint32 @@ -7086,7 +7086,7 @@ type VkRenderPassMultiviewCreateInfoKHR* = VkRenderPassMultiviewCreateInfo - VkSurfaceCapabilities2EXT* {.byref.} = object + VkSurfaceCapabilities2EXT* = object sType*: VkStructureType pNext*: pointer minImageCount*: uint32 @@ -7101,27 +7101,27 @@ type supportedUsageFlags*: VkImageUsageFlags supportedSurfaceCounters*: VkSurfaceCounterFlagsEXT - VkDisplayPowerInfoEXT* {.byref.} = object + VkDisplayPowerInfoEXT* = object sType*: VkStructureType pNext*: pointer powerState*: VkDisplayPowerStateEXT - VkDeviceEventInfoEXT* {.byref.} = object + VkDeviceEventInfoEXT* = object sType*: VkStructureType pNext*: pointer deviceEvent*: VkDeviceEventTypeEXT - VkDisplayEventInfoEXT* {.byref.} = object + VkDisplayEventInfoEXT* = object sType*: VkStructureType pNext*: pointer displayEvent*: VkDisplayEventTypeEXT - VkSwapchainCounterCreateInfoEXT* {.byref.} = object + VkSwapchainCounterCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer surfaceCounters*: VkSurfaceCounterFlagsEXT - VkPhysicalDeviceGroupProperties* {.byref.} = object + VkPhysicalDeviceGroupProperties* = object sType*: VkStructureType pNext*: pointer physicalDeviceCount*: uint32 @@ -7130,7 +7130,7 @@ type VkPhysicalDeviceGroupPropertiesKHR* = VkPhysicalDeviceGroupProperties - VkMemoryAllocateFlagsInfo* {.byref.} = object + VkMemoryAllocateFlagsInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkMemoryAllocateFlags @@ -7138,7 +7138,7 @@ type VkMemoryAllocateFlagsInfoKHR* = VkMemoryAllocateFlagsInfo - VkBindBufferMemoryInfo* {.byref.} = object + VkBindBufferMemoryInfo* = object sType*: VkStructureType pNext*: pointer buffer*: VkBuffer @@ -7147,7 +7147,7 @@ type VkBindBufferMemoryInfoKHR* = VkBindBufferMemoryInfo - VkBindBufferMemoryDeviceGroupInfo* {.byref.} = object + VkBindBufferMemoryDeviceGroupInfo* = object sType*: VkStructureType pNext*: pointer deviceIndexCount*: uint32 @@ -7155,7 +7155,7 @@ type VkBindBufferMemoryDeviceGroupInfoKHR* = VkBindBufferMemoryDeviceGroupInfo - VkBindImageMemoryInfo* {.byref.} = object + VkBindImageMemoryInfo* = object sType*: VkStructureType pNext*: pointer image*: VkImage @@ -7164,7 +7164,7 @@ type VkBindImageMemoryInfoKHR* = VkBindImageMemoryInfo - VkBindImageMemoryDeviceGroupInfo* {.byref.} = object + VkBindImageMemoryDeviceGroupInfo* = object sType*: VkStructureType pNext*: pointer deviceIndexCount*: uint32 @@ -7174,7 +7174,7 @@ type VkBindImageMemoryDeviceGroupInfoKHR* = VkBindImageMemoryDeviceGroupInfo - VkDeviceGroupRenderPassBeginInfo* {.byref.} = object + VkDeviceGroupRenderPassBeginInfo* = object sType*: VkStructureType pNext*: pointer deviceMask*: uint32 @@ -7183,14 +7183,14 @@ type VkDeviceGroupRenderPassBeginInfoKHR* = VkDeviceGroupRenderPassBeginInfo - VkDeviceGroupCommandBufferBeginInfo* {.byref.} = object + VkDeviceGroupCommandBufferBeginInfo* = object sType*: VkStructureType pNext*: pointer deviceMask*: uint32 VkDeviceGroupCommandBufferBeginInfoKHR* = VkDeviceGroupCommandBufferBeginInfo - VkDeviceGroupSubmitInfo* {.byref.} = object + VkDeviceGroupSubmitInfo* = object sType*: VkStructureType pNext*: pointer waitSemaphoreCount*: uint32 @@ -7202,7 +7202,7 @@ type VkDeviceGroupSubmitInfoKHR* = VkDeviceGroupSubmitInfo - VkDeviceGroupBindSparseInfo* {.byref.} = object + VkDeviceGroupBindSparseInfo* = object sType*: VkStructureType pNext*: pointer resourceDeviceIndex*: uint32 @@ -7210,24 +7210,24 @@ type VkDeviceGroupBindSparseInfoKHR* = VkDeviceGroupBindSparseInfo - VkDeviceGroupPresentCapabilitiesKHR* {.byref.} = object + VkDeviceGroupPresentCapabilitiesKHR* = object sType*: VkStructureType pNext*: pointer presentMask*: array[VK_MAX_DEVICE_GROUP_SIZE, uint32] modes*: VkDeviceGroupPresentModeFlagsKHR - VkImageSwapchainCreateInfoKHR* {.byref.} = object + VkImageSwapchainCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer swapchain*: VkSwapchainKHR - VkBindImageMemorySwapchainInfoKHR* {.byref.} = object + VkBindImageMemorySwapchainInfoKHR* = object sType*: VkStructureType pNext*: pointer swapchain*: VkSwapchainKHR imageIndex*: uint32 - VkAcquireNextImageInfoKHR* {.byref.} = object + VkAcquireNextImageInfoKHR* = object sType*: VkStructureType pNext*: pointer swapchain*: VkSwapchainKHR @@ -7236,14 +7236,14 @@ type fence*: VkFence deviceMask*: uint32 - VkDeviceGroupPresentInfoKHR* {.byref.} = object + VkDeviceGroupPresentInfoKHR* = object sType*: VkStructureType pNext*: pointer swapchainCount*: uint32 pDeviceMasks*: ptr uint32 mode*: VkDeviceGroupPresentModeFlagBitsKHR - VkDeviceGroupDeviceCreateInfo* {.byref.} = object + VkDeviceGroupDeviceCreateInfo* = object sType*: VkStructureType pNext*: pointer physicalDeviceCount*: uint32 @@ -7251,12 +7251,12 @@ type VkDeviceGroupDeviceCreateInfoKHR* = VkDeviceGroupDeviceCreateInfo - VkDeviceGroupSwapchainCreateInfoKHR* {.byref.} = object + VkDeviceGroupSwapchainCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer modes*: VkDeviceGroupPresentModeFlagsKHR - VkDescriptorUpdateTemplateEntry* {.byref.} = object + VkDescriptorUpdateTemplateEntry* = object dstBinding*: uint32 dstArrayElement*: uint32 descriptorCount*: uint32 @@ -7266,7 +7266,7 @@ type VkDescriptorUpdateTemplateEntryKHR* = VkDescriptorUpdateTemplateEntry - VkDescriptorUpdateTemplateCreateInfo* {.byref.} = object + VkDescriptorUpdateTemplateCreateInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkDescriptorUpdateTemplateCreateFlags @@ -7280,27 +7280,27 @@ type VkDescriptorUpdateTemplateCreateInfoKHR* = VkDescriptorUpdateTemplateCreateInfo - VkXYColorEXT* {.byref.} = object + VkXYColorEXT* = object x*: float32 y*: float32 - VkPhysicalDevicePresentIdFeaturesKHR* {.byref.} = object + VkPhysicalDevicePresentIdFeaturesKHR* = object sType*: VkStructureType pNext*: pointer presentId*: VkBool32 - VkPresentIdKHR* {.byref.} = object + VkPresentIdKHR* = object sType*: VkStructureType pNext*: pointer swapchainCount*: uint32 pPresentIds*: ptr uint64 - VkPhysicalDevicePresentWaitFeaturesKHR* {.byref.} = object + VkPhysicalDevicePresentWaitFeaturesKHR* = object sType*: VkStructureType pNext*: pointer presentWait*: VkBool32 - VkHdrMetadataEXT* {.byref.} = object + VkHdrMetadataEXT* = object sType*: VkStructureType pNext*: pointer displayPrimaryRed*: VkXYColorEXT @@ -7312,84 +7312,84 @@ type maxContentLightLevel*: float32 maxFrameAverageLightLevel*: float32 - VkDisplayNativeHdrSurfaceCapabilitiesAMD* {.byref.} = object + VkDisplayNativeHdrSurfaceCapabilitiesAMD* = object sType*: VkStructureType pNext*: pointer localDimmingSupport*: VkBool32 - VkSwapchainDisplayNativeHdrCreateInfoAMD* {.byref.} = object + VkSwapchainDisplayNativeHdrCreateInfoAMD* = object sType*: VkStructureType pNext*: pointer localDimmingEnable*: VkBool32 - VkRefreshCycleDurationGOOGLE* {.byref.} = object + VkRefreshCycleDurationGOOGLE* = object refreshDuration*: uint64 - VkPastPresentationTimingGOOGLE* {.byref.} = object + VkPastPresentationTimingGOOGLE* = object presentID*: uint32 desiredPresentTime*: uint64 actualPresentTime*: uint64 earliestPresentTime*: uint64 presentMargin*: uint64 - VkPresentTimesInfoGOOGLE* {.byref.} = object + VkPresentTimesInfoGOOGLE* = object sType*: VkStructureType pNext*: pointer swapchainCount*: uint32 pTimes*: ptr VkPresentTimeGOOGLE - VkPresentTimeGOOGLE* {.byref.} = object + VkPresentTimeGOOGLE* = object presentID*: uint32 desiredPresentTime*: uint64 - VkIOSSurfaceCreateInfoMVK* {.byref.} = object + VkIOSSurfaceCreateInfoMVK* = object sType*: VkStructureType pNext*: pointer flags*: VkIOSSurfaceCreateFlagsMVK pView*: pointer - VkMacOSSurfaceCreateInfoMVK* {.byref.} = object + VkMacOSSurfaceCreateInfoMVK* = object sType*: VkStructureType pNext*: pointer flags*: VkMacOSSurfaceCreateFlagsMVK pView*: pointer - VkMetalSurfaceCreateInfoEXT* {.byref.} = object + VkMetalSurfaceCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer flags*: VkMetalSurfaceCreateFlagsEXT pLayer*: ptr CAMetalLayer - VkViewportWScalingNV* {.byref.} = object + VkViewportWScalingNV* = object xcoeff*: float32 ycoeff*: float32 - VkPipelineViewportWScalingStateCreateInfoNV* {.byref.} = object + VkPipelineViewportWScalingStateCreateInfoNV* = object sType*: VkStructureType pNext*: pointer viewportWScalingEnable*: VkBool32 viewportCount*: uint32 pViewportWScalings*: ptr VkViewportWScalingNV - VkViewportSwizzleNV* {.byref.} = object + VkViewportSwizzleNV* = object x*: VkViewportCoordinateSwizzleNV y*: VkViewportCoordinateSwizzleNV z*: VkViewportCoordinateSwizzleNV w*: VkViewportCoordinateSwizzleNV - VkPipelineViewportSwizzleStateCreateInfoNV* {.byref.} = object + VkPipelineViewportSwizzleStateCreateInfoNV* = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineViewportSwizzleStateCreateFlagsNV viewportCount*: uint32 pViewportSwizzles*: ptr VkViewportSwizzleNV - VkPhysicalDeviceDiscardRectanglePropertiesEXT* {.byref.} = object + VkPhysicalDeviceDiscardRectanglePropertiesEXT* = object sType*: VkStructureType pNext*: pointer maxDiscardRectangles*: uint32 - VkPipelineDiscardRectangleStateCreateInfoEXT* {.byref.} = object + VkPipelineDiscardRectangleStateCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineDiscardRectangleStateCreateFlagsEXT @@ -7397,19 +7397,19 @@ type discardRectangleCount*: uint32 pDiscardRectangles*: ptr VkRect2D - VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX* {.byref.} = object + VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX* = object sType*: VkStructureType pNext*: pointer perViewPositionAllComponents*: VkBool32 - VkInputAttachmentAspectReference* {.byref.} = object + VkInputAttachmentAspectReference* = object subpass*: uint32 inputAttachmentIndex*: uint32 aspectMask*: VkImageAspectFlags VkInputAttachmentAspectReferenceKHR* = VkInputAttachmentAspectReference - VkRenderPassInputAttachmentAspectCreateInfo* {.byref.} = object + VkRenderPassInputAttachmentAspectCreateInfo* = object sType*: VkStructureType pNext*: pointer aspectReferenceCount*: uint32 @@ -7417,53 +7417,53 @@ type VkRenderPassInputAttachmentAspectCreateInfoKHR* = VkRenderPassInputAttachmentAspectCreateInfo - VkPhysicalDeviceSurfaceInfo2KHR* {.byref.} = object + VkPhysicalDeviceSurfaceInfo2KHR* = object sType*: VkStructureType pNext*: pointer surface*: VkSurfaceKHR - VkSurfaceCapabilities2KHR* {.byref.} = object + VkSurfaceCapabilities2KHR* = object sType*: VkStructureType pNext*: pointer surfaceCapabilities*: VkSurfaceCapabilitiesKHR - VkSurfaceFormat2KHR* {.byref.} = object + VkSurfaceFormat2KHR* = object sType*: VkStructureType pNext*: pointer surfaceFormat*: VkSurfaceFormatKHR - VkDisplayProperties2KHR* {.byref.} = object + VkDisplayProperties2KHR* = object sType*: VkStructureType pNext*: pointer displayProperties*: VkDisplayPropertiesKHR - VkDisplayPlaneProperties2KHR* {.byref.} = object + VkDisplayPlaneProperties2KHR* = object sType*: VkStructureType pNext*: pointer displayPlaneProperties*: VkDisplayPlanePropertiesKHR - VkDisplayModeProperties2KHR* {.byref.} = object + VkDisplayModeProperties2KHR* = object sType*: VkStructureType pNext*: pointer displayModeProperties*: VkDisplayModePropertiesKHR - VkDisplayPlaneInfo2KHR* {.byref.} = object + VkDisplayPlaneInfo2KHR* = object sType*: VkStructureType pNext*: pointer mode*: VkDisplayModeKHR planeIndex*: uint32 - VkDisplayPlaneCapabilities2KHR* {.byref.} = object + VkDisplayPlaneCapabilities2KHR* = object sType*: VkStructureType pNext*: pointer capabilities*: VkDisplayPlaneCapabilitiesKHR - VkSharedPresentSurfaceCapabilitiesKHR* {.byref.} = object + VkSharedPresentSurfaceCapabilitiesKHR* = object sType*: VkStructureType pNext*: pointer sharedPresentSupportedUsageFlags*: VkImageUsageFlags - VkPhysicalDevice16BitStorageFeatures* {.byref.} = object + VkPhysicalDevice16BitStorageFeatures* = object sType*: VkStructureType pNext*: pointer storageBuffer16BitAccess*: VkBool32 @@ -7473,7 +7473,7 @@ type VkPhysicalDevice16BitStorageFeaturesKHR* = VkPhysicalDevice16BitStorageFeatures - VkPhysicalDeviceSubgroupProperties* {.byref.} = object + VkPhysicalDeviceSubgroupProperties* = object sType*: VkStructureType pNext*: pointer subgroupSize*: uint32 @@ -7481,42 +7481,42 @@ type supportedOperations*: VkSubgroupFeatureFlags quadOperationsInAllStages*: VkBool32 - VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures* {.byref.} = object + VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures* = object sType*: VkStructureType pNext*: pointer shaderSubgroupExtendedTypes*: VkBool32 VkPhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR* = VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures - VkBufferMemoryRequirementsInfo2* {.byref.} = object + VkBufferMemoryRequirementsInfo2* = object sType*: VkStructureType pNext*: pointer buffer*: VkBuffer VkBufferMemoryRequirementsInfo2KHR* = VkBufferMemoryRequirementsInfo2 - VkDeviceBufferMemoryRequirements* {.byref.} = object + VkDeviceBufferMemoryRequirements* = object sType*: VkStructureType pNext*: pointer pCreateInfo*: ptr VkBufferCreateInfo VkDeviceBufferMemoryRequirementsKHR* = VkDeviceBufferMemoryRequirements - VkImageMemoryRequirementsInfo2* {.byref.} = object + VkImageMemoryRequirementsInfo2* = object sType*: VkStructureType pNext*: pointer image*: VkImage VkImageMemoryRequirementsInfo2KHR* = VkImageMemoryRequirementsInfo2 - VkImageSparseMemoryRequirementsInfo2* {.byref.} = object + VkImageSparseMemoryRequirementsInfo2* = object sType*: VkStructureType pNext*: pointer image*: VkImage VkImageSparseMemoryRequirementsInfo2KHR* = VkImageSparseMemoryRequirementsInfo2 - VkDeviceImageMemoryRequirements* {.byref.} = object + VkDeviceImageMemoryRequirements* = object sType*: VkStructureType pNext*: pointer pCreateInfo*: ptr VkImageCreateInfo @@ -7524,28 +7524,28 @@ type VkDeviceImageMemoryRequirementsKHR* = VkDeviceImageMemoryRequirements - VkMemoryRequirements2* {.byref.} = object + VkMemoryRequirements2* = object sType*: VkStructureType pNext*: pointer memoryRequirements*: VkMemoryRequirements VkMemoryRequirements2KHR* = VkMemoryRequirements2 - VkSparseImageMemoryRequirements2* {.byref.} = object + VkSparseImageMemoryRequirements2* = object sType*: VkStructureType pNext*: pointer memoryRequirements*: VkSparseImageMemoryRequirements VkSparseImageMemoryRequirements2KHR* = VkSparseImageMemoryRequirements2 - VkPhysicalDevicePointClippingProperties* {.byref.} = object + VkPhysicalDevicePointClippingProperties* = object sType*: VkStructureType pNext*: pointer pointClippingBehavior*: VkPointClippingBehavior VkPhysicalDevicePointClippingPropertiesKHR* = VkPhysicalDevicePointClippingProperties - VkMemoryDedicatedRequirements* {.byref.} = object + VkMemoryDedicatedRequirements* = object sType*: VkStructureType pNext*: pointer prefersDedicatedAllocation*: VkBool32 @@ -7553,7 +7553,7 @@ type VkMemoryDedicatedRequirementsKHR* = VkMemoryDedicatedRequirements - VkMemoryDedicatedAllocateInfo* {.byref.} = object + VkMemoryDedicatedAllocateInfo* = object sType*: VkStructureType pNext*: pointer image*: VkImage @@ -7561,12 +7561,12 @@ type VkMemoryDedicatedAllocateInfoKHR* = VkMemoryDedicatedAllocateInfo - VkImageViewUsageCreateInfo* {.byref.} = object + VkImageViewUsageCreateInfo* = object sType*: VkStructureType pNext*: pointer usage*: VkImageUsageFlags - VkImageViewSlicedCreateInfoEXT* {.byref.} = object + VkImageViewSlicedCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer sliceOffset*: uint32 @@ -7574,21 +7574,21 @@ type VkImageViewUsageCreateInfoKHR* = VkImageViewUsageCreateInfo - VkPipelineTessellationDomainOriginStateCreateInfo* {.byref.} = object + VkPipelineTessellationDomainOriginStateCreateInfo* = object sType*: VkStructureType pNext*: pointer domainOrigin*: VkTessellationDomainOrigin VkPipelineTessellationDomainOriginStateCreateInfoKHR* = VkPipelineTessellationDomainOriginStateCreateInfo - VkSamplerYcbcrConversionInfo* {.byref.} = object + VkSamplerYcbcrConversionInfo* = object sType*: VkStructureType pNext*: pointer conversion*: VkSamplerYcbcrConversion VkSamplerYcbcrConversionInfoKHR* = VkSamplerYcbcrConversionInfo - VkSamplerYcbcrConversionCreateInfo* {.byref.} = object + VkSamplerYcbcrConversionCreateInfo* = object sType*: VkStructureType pNext*: pointer format*: VkFormat @@ -7602,76 +7602,76 @@ type VkSamplerYcbcrConversionCreateInfoKHR* = VkSamplerYcbcrConversionCreateInfo - VkBindImagePlaneMemoryInfo* {.byref.} = object + VkBindImagePlaneMemoryInfo* = object sType*: VkStructureType pNext*: pointer planeAspect*: VkImageAspectFlagBits VkBindImagePlaneMemoryInfoKHR* = VkBindImagePlaneMemoryInfo - VkImagePlaneMemoryRequirementsInfo* {.byref.} = object + VkImagePlaneMemoryRequirementsInfo* = object sType*: VkStructureType pNext*: pointer planeAspect*: VkImageAspectFlagBits VkImagePlaneMemoryRequirementsInfoKHR* = VkImagePlaneMemoryRequirementsInfo - VkPhysicalDeviceSamplerYcbcrConversionFeatures* {.byref.} = object + VkPhysicalDeviceSamplerYcbcrConversionFeatures* = object sType*: VkStructureType pNext*: pointer samplerYcbcrConversion*: VkBool32 VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR* = VkPhysicalDeviceSamplerYcbcrConversionFeatures - VkSamplerYcbcrConversionImageFormatProperties* {.byref.} = object + VkSamplerYcbcrConversionImageFormatProperties* = object sType*: VkStructureType pNext*: pointer combinedImageSamplerDescriptorCount*: uint32 VkSamplerYcbcrConversionImageFormatPropertiesKHR* = VkSamplerYcbcrConversionImageFormatProperties - VkTextureLODGatherFormatPropertiesAMD* {.byref.} = object + VkTextureLODGatherFormatPropertiesAMD* = object sType*: VkStructureType pNext*: pointer supportsTextureGatherLODBiasAMD*: VkBool32 - VkConditionalRenderingBeginInfoEXT* {.byref.} = object + VkConditionalRenderingBeginInfoEXT* = object sType*: VkStructureType pNext*: pointer buffer*: VkBuffer offset*: VkDeviceSize flags*: VkConditionalRenderingFlagsEXT - VkProtectedSubmitInfo* {.byref.} = object + VkProtectedSubmitInfo* = object sType*: VkStructureType pNext*: pointer protectedSubmit*: VkBool32 - VkPhysicalDeviceProtectedMemoryFeatures* {.byref.} = object + VkPhysicalDeviceProtectedMemoryFeatures* = object sType*: VkStructureType pNext*: pointer protectedMemory*: VkBool32 - VkPhysicalDeviceProtectedMemoryProperties* {.byref.} = object + VkPhysicalDeviceProtectedMemoryProperties* = object sType*: VkStructureType pNext*: pointer protectedNoFault*: VkBool32 - VkDeviceQueueInfo2* {.byref.} = object + VkDeviceQueueInfo2* = object sType*: VkStructureType pNext*: pointer flags*: VkDeviceQueueCreateFlags queueFamilyIndex*: uint32 queueIndex*: uint32 - VkPipelineCoverageToColorStateCreateInfoNV* {.byref.} = object + VkPipelineCoverageToColorStateCreateInfoNV* = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineCoverageToColorStateCreateFlagsNV coverageToColorEnable*: VkBool32 coverageToColorLocation*: uint32 - VkPhysicalDeviceSamplerFilterMinmaxProperties* {.byref.} = object + VkPhysicalDeviceSamplerFilterMinmaxProperties* = object sType*: VkStructureType pNext*: pointer filterMinmaxSingleComponentFormats*: VkBool32 @@ -7679,11 +7679,11 @@ type VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT* = VkPhysicalDeviceSamplerFilterMinmaxProperties - VkSampleLocationEXT* {.byref.} = object + VkSampleLocationEXT* = object x*: float32 y*: float32 - VkSampleLocationsInfoEXT* {.byref.} = object + VkSampleLocationsInfoEXT* = object sType*: VkStructureType pNext*: pointer sampleLocationsPerPixel*: VkSampleCountFlagBits @@ -7691,15 +7691,15 @@ type sampleLocationsCount*: uint32 pSampleLocations*: ptr VkSampleLocationEXT - VkAttachmentSampleLocationsEXT* {.byref.} = object + VkAttachmentSampleLocationsEXT* = object attachmentIndex*: uint32 sampleLocationsInfo*: VkSampleLocationsInfoEXT - VkSubpassSampleLocationsEXT* {.byref.} = object + VkSubpassSampleLocationsEXT* = object subpassIndex*: uint32 sampleLocationsInfo*: VkSampleLocationsInfoEXT - VkRenderPassSampleLocationsBeginInfoEXT* {.byref.} = object + VkRenderPassSampleLocationsBeginInfoEXT* = object sType*: VkStructureType pNext*: pointer attachmentInitialSampleLocationsCount*: uint32 @@ -7707,13 +7707,13 @@ type postSubpassSampleLocationsCount*: uint32 pPostSubpassSampleLocations*: ptr VkSubpassSampleLocationsEXT - VkPipelineSampleLocationsStateCreateInfoEXT* {.byref.} = object + VkPipelineSampleLocationsStateCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer sampleLocationsEnable*: VkBool32 sampleLocationsInfo*: VkSampleLocationsInfoEXT - VkPhysicalDeviceSampleLocationsPropertiesEXT* {.byref.} = object + VkPhysicalDeviceSampleLocationsPropertiesEXT* = object sType*: VkStructureType pNext*: pointer sampleLocationSampleCounts*: VkSampleCountFlags @@ -7722,29 +7722,29 @@ type sampleLocationSubPixelBits*: uint32 variableSampleLocations*: VkBool32 - VkMultisamplePropertiesEXT* {.byref.} = object + VkMultisamplePropertiesEXT* = object sType*: VkStructureType pNext*: pointer maxSampleLocationGridSize*: VkExtent2D - VkSamplerReductionModeCreateInfo* {.byref.} = object + VkSamplerReductionModeCreateInfo* = object sType*: VkStructureType pNext*: pointer reductionMode*: VkSamplerReductionMode VkSamplerReductionModeCreateInfoEXT* = VkSamplerReductionModeCreateInfo - VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT* {.byref.} = object + VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT* = object sType*: VkStructureType pNext*: pointer advancedBlendCoherentOperations*: VkBool32 - VkPhysicalDeviceMultiDrawFeaturesEXT* {.byref.} = object + VkPhysicalDeviceMultiDrawFeaturesEXT* = object sType*: VkStructureType pNext*: pointer multiDraw*: VkBool32 - VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT* {.byref.} = object + VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT* = object sType*: VkStructureType pNext*: pointer advancedBlendMaxColorAttachments*: uint32 @@ -7754,14 +7754,14 @@ type advancedBlendCorrelatedOverlap*: VkBool32 advancedBlendAllOperations*: VkBool32 - VkPipelineColorBlendAdvancedStateCreateInfoEXT* {.byref.} = object + VkPipelineColorBlendAdvancedStateCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer srcPremultiplied*: VkBool32 dstPremultiplied*: VkBool32 blendOverlap*: VkBlendOverlapEXT - VkPhysicalDeviceInlineUniformBlockFeatures* {.byref.} = object + VkPhysicalDeviceInlineUniformBlockFeatures* = object sType*: VkStructureType pNext*: pointer inlineUniformBlock*: VkBool32 @@ -7769,7 +7769,7 @@ type VkPhysicalDeviceInlineUniformBlockFeaturesEXT* = VkPhysicalDeviceInlineUniformBlockFeatures - VkPhysicalDeviceInlineUniformBlockProperties* {.byref.} = object + VkPhysicalDeviceInlineUniformBlockProperties* = object sType*: VkStructureType pNext*: pointer maxInlineUniformBlockSize*: uint32 @@ -7780,7 +7780,7 @@ type VkPhysicalDeviceInlineUniformBlockPropertiesEXT* = VkPhysicalDeviceInlineUniformBlockProperties - VkWriteDescriptorSetInlineUniformBlock* {.byref.} = object + VkWriteDescriptorSetInlineUniformBlock* = object sType*: VkStructureType pNext*: pointer dataSize*: uint32 @@ -7788,14 +7788,14 @@ type VkWriteDescriptorSetInlineUniformBlockEXT* = VkWriteDescriptorSetInlineUniformBlock - VkDescriptorPoolInlineUniformBlockCreateInfo* {.byref.} = object + VkDescriptorPoolInlineUniformBlockCreateInfo* = object sType*: VkStructureType pNext*: pointer maxInlineUniformBlockBindings*: uint32 VkDescriptorPoolInlineUniformBlockCreateInfoEXT* = VkDescriptorPoolInlineUniformBlockCreateInfo - VkPipelineCoverageModulationStateCreateInfoNV* {.byref.} = object + VkPipelineCoverageModulationStateCreateInfoNV* = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineCoverageModulationStateCreateFlagsNV @@ -7804,7 +7804,7 @@ type coverageModulationTableCount*: uint32 pCoverageModulationTable*: ptr float32 - VkImageFormatListCreateInfo* {.byref.} = object + VkImageFormatListCreateInfo* = object sType*: VkStructureType pNext*: pointer viewFormatCount*: uint32 @@ -7812,19 +7812,19 @@ type VkImageFormatListCreateInfoKHR* = VkImageFormatListCreateInfo - VkValidationCacheCreateInfoEXT* {.byref.} = object + VkValidationCacheCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer flags*: VkValidationCacheCreateFlagsEXT initialDataSize*: uint pInitialData*: pointer - VkShaderModuleValidationCacheCreateInfoEXT* {.byref.} = object + VkShaderModuleValidationCacheCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer validationCache*: VkValidationCacheEXT - VkPhysicalDeviceMaintenance3Properties* {.byref.} = object + VkPhysicalDeviceMaintenance3Properties* = object sType*: VkStructureType pNext*: pointer maxPerSetDescriptors*: uint32 @@ -7832,26 +7832,26 @@ type VkPhysicalDeviceMaintenance3PropertiesKHR* = VkPhysicalDeviceMaintenance3Properties - VkPhysicalDeviceMaintenance4Features* {.byref.} = object + VkPhysicalDeviceMaintenance4Features* = object sType*: VkStructureType pNext*: pointer maintenance4*: VkBool32 VkPhysicalDeviceMaintenance4FeaturesKHR* = VkPhysicalDeviceMaintenance4Features - VkPhysicalDeviceMaintenance4Properties* {.byref.} = object + VkPhysicalDeviceMaintenance4Properties* = object sType*: VkStructureType pNext*: pointer maxBufferSize*: VkDeviceSize VkPhysicalDeviceMaintenance4PropertiesKHR* = VkPhysicalDeviceMaintenance4Properties - VkPhysicalDeviceMaintenance5FeaturesKHR* {.byref.} = object + VkPhysicalDeviceMaintenance5FeaturesKHR* = object sType*: VkStructureType pNext*: pointer maintenance5*: VkBool32 - VkPhysicalDeviceMaintenance5PropertiesKHR* {.byref.} = object + VkPhysicalDeviceMaintenance5PropertiesKHR* = object sType*: VkStructureType pNext*: pointer earlyFragmentMultisampleCoverageAfterSampleCounting*: VkBool32 @@ -7861,19 +7861,19 @@ type nonStrictSinglePixelWideLinesUseParallelogram*: VkBool32 nonStrictWideLinesUseParallelogram*: VkBool32 - VkPhysicalDeviceMaintenance6FeaturesKHR* {.byref.} = object + VkPhysicalDeviceMaintenance6FeaturesKHR* = object sType*: VkStructureType pNext*: pointer maintenance6*: VkBool32 - VkPhysicalDeviceMaintenance6PropertiesKHR* {.byref.} = object + VkPhysicalDeviceMaintenance6PropertiesKHR* = object sType*: VkStructureType pNext*: pointer blockTexelViewCompatibleMultipleLayers*: VkBool32 maxCombinedImageSamplerDescriptorCount*: uint32 fragmentShadingRateClampCombinerInputs*: VkBool32 - VkRenderingAreaInfoKHR* {.byref.} = object + VkRenderingAreaInfoKHR* = object sType*: VkStructureType pNext*: pointer viewMask*: uint32 @@ -7882,21 +7882,21 @@ type depthAttachmentFormat*: VkFormat stencilAttachmentFormat*: VkFormat - VkDescriptorSetLayoutSupport* {.byref.} = object + VkDescriptorSetLayoutSupport* = object sType*: VkStructureType pNext*: pointer supported*: VkBool32 VkDescriptorSetLayoutSupportKHR* = VkDescriptorSetLayoutSupport - VkPhysicalDeviceShaderDrawParametersFeatures* {.byref.} = object + VkPhysicalDeviceShaderDrawParametersFeatures* = object sType*: VkStructureType pNext*: pointer shaderDrawParameters*: VkBool32 VkPhysicalDeviceShaderDrawParameterFeatures* = VkPhysicalDeviceShaderDrawParametersFeatures - VkPhysicalDeviceShaderFloat16Int8Features* {.byref.} = object + VkPhysicalDeviceShaderFloat16Int8Features* = object sType*: VkStructureType pNext*: pointer shaderFloat16*: VkBool32 @@ -7906,7 +7906,7 @@ type VkPhysicalDeviceFloat16Int8FeaturesKHR* = VkPhysicalDeviceShaderFloat16Int8Features - VkPhysicalDeviceFloatControlsProperties* {.byref.} = object + VkPhysicalDeviceFloatControlsProperties* = object sType*: VkStructureType pNext*: pointer denormBehaviorIndependence*: VkShaderFloatControlsIndependence @@ -7929,18 +7929,18 @@ type VkPhysicalDeviceFloatControlsPropertiesKHR* = VkPhysicalDeviceFloatControlsProperties - VkPhysicalDeviceHostQueryResetFeatures* {.byref.} = object + VkPhysicalDeviceHostQueryResetFeatures* = object sType*: VkStructureType pNext*: pointer hostQueryReset*: VkBool32 VkPhysicalDeviceHostQueryResetFeaturesEXT* = VkPhysicalDeviceHostQueryResetFeatures - VkNativeBufferUsage2ANDROID* {.byref.} = object + VkNativeBufferUsage2ANDROID* = object consumer*: uint64 producer*: uint64 - VkNativeBufferANDROID* {.byref.} = object + VkNativeBufferANDROID* = object sType*: VkStructureType pNext*: pointer handle*: pointer @@ -7949,24 +7949,24 @@ type usage*: int usage2*: VkNativeBufferUsage2ANDROID - VkSwapchainImageCreateInfoANDROID* {.byref.} = object + VkSwapchainImageCreateInfoANDROID* = object sType*: VkStructureType pNext*: pointer usage*: VkSwapchainImageUsageFlagsANDROID - VkPhysicalDevicePresentationPropertiesANDROID* {.byref.} = object + VkPhysicalDevicePresentationPropertiesANDROID* = object sType*: VkStructureType pNext*: pointer sharedImage*: VkBool32 - VkShaderResourceUsageAMD* {.byref.} = object + VkShaderResourceUsageAMD* = object numUsedVgprs*: uint32 numUsedSgprs*: uint32 ldsSizePerLocalWorkGroup*: uint32 ldsUsageSizeInBytes*: uint scratchMemUsageInBytes*: uint - VkShaderStatisticsInfoAMD* {.byref.} = object + VkShaderStatisticsInfoAMD* = object shaderStageMask*: VkShaderStageFlags resourceUsage*: VkShaderResourceUsageAMD numPhysicalVgprs*: uint32 @@ -7975,21 +7975,21 @@ type numAvailableSgprs*: uint32 computeWorkGroupSize*: array[3, uint32] - VkDeviceQueueGlobalPriorityCreateInfoKHR* {.byref.} = object + VkDeviceQueueGlobalPriorityCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer globalPriority*: VkQueueGlobalPriorityKHR VkDeviceQueueGlobalPriorityCreateInfoEXT* = VkDeviceQueueGlobalPriorityCreateInfoKHR - VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR* {.byref.} = object + VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR* = object sType*: VkStructureType pNext*: pointer globalPriorityQuery*: VkBool32 VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT* = VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR - VkQueueFamilyGlobalPriorityPropertiesKHR* {.byref.} = object + VkQueueFamilyGlobalPriorityPropertiesKHR* = object sType*: VkStructureType pNext*: pointer priorityCount*: uint32 @@ -7997,14 +7997,14 @@ type VkQueueFamilyGlobalPriorityPropertiesEXT* = VkQueueFamilyGlobalPriorityPropertiesKHR - VkDebugUtilsObjectNameInfoEXT* {.byref.} = object + VkDebugUtilsObjectNameInfoEXT* = object sType*: VkStructureType pNext*: pointer objectType*: VkObjectType objectHandle*: uint64 pObjectName*: cstring - VkDebugUtilsObjectTagInfoEXT* {.byref.} = object + VkDebugUtilsObjectTagInfoEXT* = object sType*: VkStructureType pNext*: pointer objectType*: VkObjectType @@ -8013,13 +8013,13 @@ type tagSize*: uint pTag*: pointer - VkDebugUtilsLabelEXT* {.byref.} = object + VkDebugUtilsLabelEXT* = object sType*: VkStructureType pNext*: pointer pLabelName*: cstring color*: array[4, float32] - VkDebugUtilsMessengerCreateInfoEXT* {.byref.} = object + VkDebugUtilsMessengerCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer flags*: VkDebugUtilsMessengerCreateFlagsEXT @@ -8028,7 +8028,7 @@ type pfnUserCallback*: PFN_vkDebugUtilsMessengerCallbackEXT pUserData*: pointer - VkDebugUtilsMessengerCallbackDataEXT* {.byref.} = object + VkDebugUtilsMessengerCallbackDataEXT* = object sType*: VkStructureType pNext*: pointer flags*: VkDebugUtilsMessengerCallbackDataFlagsEXT @@ -8042,19 +8042,19 @@ type objectCount*: uint32 pObjects*: ptr VkDebugUtilsObjectNameInfoEXT - VkPhysicalDeviceDeviceMemoryReportFeaturesEXT* {.byref.} = object + VkPhysicalDeviceDeviceMemoryReportFeaturesEXT* = object sType*: VkStructureType pNext*: pointer deviceMemoryReport*: VkBool32 - VkDeviceDeviceMemoryReportCreateInfoEXT* {.byref.} = object + VkDeviceDeviceMemoryReportCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer flags*: VkDeviceMemoryReportFlagsEXT pfnUserCallback*: PFN_vkDeviceMemoryReportCallbackEXT pUserData*: pointer - VkDeviceMemoryReportCallbackDataEXT* {.byref.} = object + VkDeviceMemoryReportCallbackDataEXT* = object sType*: VkStructureType pNext*: pointer flags*: VkDeviceMemoryReportFlagsEXT @@ -8065,23 +8065,23 @@ type objectHandle*: uint64 heapIndex*: uint32 - VkImportMemoryHostPointerInfoEXT* {.byref.} = object + VkImportMemoryHostPointerInfoEXT* = object sType*: VkStructureType pNext*: pointer handleType*: VkExternalMemoryHandleTypeFlagBits pHostPointer*: pointer - VkMemoryHostPointerPropertiesEXT* {.byref.} = object + VkMemoryHostPointerPropertiesEXT* = object sType*: VkStructureType pNext*: pointer memoryTypeBits*: uint32 - VkPhysicalDeviceExternalMemoryHostPropertiesEXT* {.byref.} = object + VkPhysicalDeviceExternalMemoryHostPropertiesEXT* = object sType*: VkStructureType pNext*: pointer minImportedHostPointerAlignment*: VkDeviceSize - VkPhysicalDeviceConservativeRasterizationPropertiesEXT* {.byref.} = object + VkPhysicalDeviceConservativeRasterizationPropertiesEXT* = object sType*: VkStructureType pNext*: pointer primitiveOverestimationSize*: float32 @@ -8094,14 +8094,14 @@ type fullyCoveredFragmentShaderInputVariable*: VkBool32 conservativeRasterizationPostDepthCoverage*: VkBool32 - VkCalibratedTimestampInfoKHR* {.byref.} = object + VkCalibratedTimestampInfoKHR* = object sType*: VkStructureType pNext*: pointer timeDomain*: VkTimeDomainKHR VkCalibratedTimestampInfoEXT* = VkCalibratedTimestampInfoKHR - VkPhysicalDeviceShaderCorePropertiesAMD* {.byref.} = object + VkPhysicalDeviceShaderCorePropertiesAMD* = object sType*: VkStructureType pNext*: pointer shaderEngineCount*: uint32 @@ -8119,20 +8119,20 @@ type maxVgprAllocation*: uint32 vgprAllocationGranularity*: uint32 - VkPhysicalDeviceShaderCoreProperties2AMD* {.byref.} = object + VkPhysicalDeviceShaderCoreProperties2AMD* = object sType*: VkStructureType pNext*: pointer shaderCoreFeatures*: VkShaderCorePropertiesFlagsAMD activeComputeUnitCount*: uint32 - VkPipelineRasterizationConservativeStateCreateInfoEXT* {.byref.} = object + VkPipelineRasterizationConservativeStateCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineRasterizationConservativeStateCreateFlagsEXT conservativeRasterizationMode*: VkConservativeRasterizationModeEXT extraPrimitiveOverestimationSize*: float32 - VkPhysicalDeviceDescriptorIndexingFeatures* {.byref.} = object + VkPhysicalDeviceDescriptorIndexingFeatures* = object sType*: VkStructureType pNext*: pointer shaderInputAttachmentArrayDynamicIndexing*: VkBool32 @@ -8158,7 +8158,7 @@ type VkPhysicalDeviceDescriptorIndexingFeaturesEXT* = VkPhysicalDeviceDescriptorIndexingFeatures - VkPhysicalDeviceDescriptorIndexingProperties* {.byref.} = object + VkPhysicalDeviceDescriptorIndexingProperties* = object sType*: VkStructureType pNext*: pointer maxUpdateAfterBindDescriptorsInAllPools*: uint32 @@ -8187,7 +8187,7 @@ type VkPhysicalDeviceDescriptorIndexingPropertiesEXT* = VkPhysicalDeviceDescriptorIndexingProperties - VkDescriptorSetLayoutBindingFlagsCreateInfo* {.byref.} = object + VkDescriptorSetLayoutBindingFlagsCreateInfo* = object sType*: VkStructureType pNext*: pointer bindingCount*: uint32 @@ -8195,7 +8195,7 @@ type VkDescriptorSetLayoutBindingFlagsCreateInfoEXT* = VkDescriptorSetLayoutBindingFlagsCreateInfo - VkDescriptorSetVariableDescriptorCountAllocateInfo* {.byref.} = object + VkDescriptorSetVariableDescriptorCountAllocateInfo* = object sType*: VkStructureType pNext*: pointer descriptorSetCount*: uint32 @@ -8203,14 +8203,14 @@ type VkDescriptorSetVariableDescriptorCountAllocateInfoEXT* = VkDescriptorSetVariableDescriptorCountAllocateInfo - VkDescriptorSetVariableDescriptorCountLayoutSupport* {.byref.} = object + VkDescriptorSetVariableDescriptorCountLayoutSupport* = object sType*: VkStructureType pNext*: pointer maxVariableDescriptorCount*: uint32 VkDescriptorSetVariableDescriptorCountLayoutSupportEXT* = VkDescriptorSetVariableDescriptorCountLayoutSupport - VkAttachmentDescription2* {.byref.} = object + VkAttachmentDescription2* = object sType*: VkStructureType pNext*: pointer flags*: VkAttachmentDescriptionFlags @@ -8225,7 +8225,7 @@ type VkAttachmentDescription2KHR* = VkAttachmentDescription2 - VkAttachmentReference2* {.byref.} = object + VkAttachmentReference2* = object sType*: VkStructureType pNext*: pointer attachment*: uint32 @@ -8234,7 +8234,7 @@ type VkAttachmentReference2KHR* = VkAttachmentReference2 - VkSubpassDescription2* {.byref.} = object + VkSubpassDescription2* = object sType*: VkStructureType pNext*: pointer flags*: VkSubpassDescriptionFlags @@ -8251,7 +8251,7 @@ type VkSubpassDescription2KHR* = VkSubpassDescription2 - VkSubpassDependency2* {.byref.} = object + VkSubpassDependency2* = object sType*: VkStructureType pNext*: pointer srcSubpass*: uint32 @@ -8265,7 +8265,7 @@ type VkSubpassDependency2KHR* = VkSubpassDependency2 - VkRenderPassCreateInfo2* {.byref.} = object + VkRenderPassCreateInfo2* = object sType*: VkStructureType pNext*: pointer flags*: VkRenderPassCreateFlags @@ -8280,34 +8280,34 @@ type VkRenderPassCreateInfo2KHR* = VkRenderPassCreateInfo2 - VkSubpassBeginInfo* {.byref.} = object + VkSubpassBeginInfo* = object sType*: VkStructureType pNext*: pointer contents*: VkSubpassContents VkSubpassBeginInfoKHR* = VkSubpassBeginInfo - VkSubpassEndInfo* {.byref.} = object + VkSubpassEndInfo* = object sType*: VkStructureType pNext*: pointer VkSubpassEndInfoKHR* = VkSubpassEndInfo - VkPhysicalDeviceTimelineSemaphoreFeatures* {.byref.} = object + VkPhysicalDeviceTimelineSemaphoreFeatures* = object sType*: VkStructureType pNext*: pointer timelineSemaphore*: VkBool32 VkPhysicalDeviceTimelineSemaphoreFeaturesKHR* = VkPhysicalDeviceTimelineSemaphoreFeatures - VkPhysicalDeviceTimelineSemaphoreProperties* {.byref.} = object + VkPhysicalDeviceTimelineSemaphoreProperties* = object sType*: VkStructureType pNext*: pointer maxTimelineSemaphoreValueDifference*: uint64 VkPhysicalDeviceTimelineSemaphorePropertiesKHR* = VkPhysicalDeviceTimelineSemaphoreProperties - VkSemaphoreTypeCreateInfo* {.byref.} = object + VkSemaphoreTypeCreateInfo* = object sType*: VkStructureType pNext*: pointer semaphoreType*: VkSemaphoreType @@ -8315,7 +8315,7 @@ type VkSemaphoreTypeCreateInfoKHR* = VkSemaphoreTypeCreateInfo - VkTimelineSemaphoreSubmitInfo* {.byref.} = object + VkTimelineSemaphoreSubmitInfo* = object sType*: VkStructureType pNext*: pointer waitSemaphoreValueCount*: uint32 @@ -8325,7 +8325,7 @@ type VkTimelineSemaphoreSubmitInfoKHR* = VkTimelineSemaphoreSubmitInfo - VkSemaphoreWaitInfo* {.byref.} = object + VkSemaphoreWaitInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkSemaphoreWaitFlags @@ -8335,7 +8335,7 @@ type VkSemaphoreWaitInfoKHR* = VkSemaphoreWaitInfo - VkSemaphoreSignalInfo* {.byref.} = object + VkSemaphoreSignalInfo* = object sType*: VkStructureType pNext*: pointer semaphore*: VkSemaphore @@ -8343,13 +8343,13 @@ type VkSemaphoreSignalInfoKHR* = VkSemaphoreSignalInfo - VkVertexInputBindingDivisorDescriptionKHR* {.byref.} = object + VkVertexInputBindingDivisorDescriptionKHR* = object binding*: uint32 divisor*: uint32 VkVertexInputBindingDivisorDescriptionEXT* = VkVertexInputBindingDivisorDescriptionKHR - VkPipelineVertexInputDivisorStateCreateInfoKHR* {.byref.} = object + VkPipelineVertexInputDivisorStateCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer vertexBindingDivisorCount*: uint32 @@ -8357,18 +8357,18 @@ type VkPipelineVertexInputDivisorStateCreateInfoEXT* = VkPipelineVertexInputDivisorStateCreateInfoKHR - VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT* {.byref.} = object + VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT* = object sType*: VkStructureType pNext*: pointer maxVertexAttribDivisor*: uint32 - VkPhysicalDeviceVertexAttributeDivisorPropertiesKHR* {.byref.} = object + VkPhysicalDeviceVertexAttributeDivisorPropertiesKHR* = object sType*: VkStructureType pNext*: pointer maxVertexAttribDivisor*: uint32 supportsNonZeroFirstInstance*: VkBool32 - VkPhysicalDevicePCIBusInfoPropertiesEXT* {.byref.} = object + VkPhysicalDevicePCIBusInfoPropertiesEXT* = object sType*: VkStructureType pNext*: pointer pciDomain*: uint32 @@ -8376,28 +8376,28 @@ type pciDevice*: uint32 pciFunction*: uint32 - VkImportAndroidHardwareBufferInfoANDROID* {.byref.} = object + VkImportAndroidHardwareBufferInfoANDROID* = object sType*: VkStructureType pNext*: pointer buffer*: ptr AHardwareBuffer - VkAndroidHardwareBufferUsageANDROID* {.byref.} = object + VkAndroidHardwareBufferUsageANDROID* = object sType*: VkStructureType pNext*: pointer androidHardwareBufferUsage*: uint64 - VkAndroidHardwareBufferPropertiesANDROID* {.byref.} = object + VkAndroidHardwareBufferPropertiesANDROID* = object sType*: VkStructureType pNext*: pointer allocationSize*: VkDeviceSize memoryTypeBits*: uint32 - VkMemoryGetAndroidHardwareBufferInfoANDROID* {.byref.} = object + VkMemoryGetAndroidHardwareBufferInfoANDROID* = object sType*: VkStructureType pNext*: pointer memory*: VkDeviceMemory - VkAndroidHardwareBufferFormatPropertiesANDROID* {.byref.} = object + VkAndroidHardwareBufferFormatPropertiesANDROID* = object sType*: VkStructureType pNext*: pointer format*: VkFormat @@ -8409,17 +8409,17 @@ type suggestedXChromaOffset*: VkChromaLocation suggestedYChromaOffset*: VkChromaLocation - VkCommandBufferInheritanceConditionalRenderingInfoEXT* {.byref.} = object + VkCommandBufferInheritanceConditionalRenderingInfoEXT* = object sType*: VkStructureType pNext*: pointer conditionalRenderingEnable*: VkBool32 - VkExternalFormatANDROID* {.byref.} = object + VkExternalFormatANDROID* = object sType*: VkStructureType pNext*: pointer externalFormat*: uint64 - VkPhysicalDevice8BitStorageFeatures* {.byref.} = object + VkPhysicalDevice8BitStorageFeatures* = object sType*: VkStructureType pNext*: pointer storageBuffer8BitAccess*: VkBool32 @@ -8428,13 +8428,13 @@ type VkPhysicalDevice8BitStorageFeaturesKHR* = VkPhysicalDevice8BitStorageFeatures - VkPhysicalDeviceConditionalRenderingFeaturesEXT* {.byref.} = object + VkPhysicalDeviceConditionalRenderingFeaturesEXT* = object sType*: VkStructureType pNext*: pointer conditionalRendering*: VkBool32 inheritedConditionalRendering*: VkBool32 - VkPhysicalDeviceVulkanMemoryModelFeatures* {.byref.} = object + VkPhysicalDeviceVulkanMemoryModelFeatures* = object sType*: VkStructureType pNext*: pointer vulkanMemoryModel*: VkBool32 @@ -8443,7 +8443,7 @@ type VkPhysicalDeviceVulkanMemoryModelFeaturesKHR* = VkPhysicalDeviceVulkanMemoryModelFeatures - VkPhysicalDeviceShaderAtomicInt64Features* {.byref.} = object + VkPhysicalDeviceShaderAtomicInt64Features* = object sType*: VkStructureType pNext*: pointer shaderBufferInt64Atomics*: VkBool32 @@ -8451,7 +8451,7 @@ type VkPhysicalDeviceShaderAtomicInt64FeaturesKHR* = VkPhysicalDeviceShaderAtomicInt64Features - VkPhysicalDeviceShaderAtomicFloatFeaturesEXT* {.byref.} = object + VkPhysicalDeviceShaderAtomicFloatFeaturesEXT* = object sType*: VkStructureType pNext*: pointer shaderBufferFloat32Atomics*: VkBool32 @@ -8467,7 +8467,7 @@ type sparseImageFloat32Atomics*: VkBool32 sparseImageFloat32AtomicAdd*: VkBool32 - VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT* {.byref.} = object + VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT* = object sType*: VkStructureType pNext*: pointer shaderBufferFloat16Atomics*: VkBool32 @@ -8483,7 +8483,7 @@ type shaderImageFloat32AtomicMinMax*: VkBool32 sparseImageFloat32AtomicMinMax*: VkBool32 - VkPhysicalDeviceVertexAttributeDivisorFeaturesKHR* {.byref.} = object + VkPhysicalDeviceVertexAttributeDivisorFeaturesKHR* = object sType*: VkStructureType pNext*: pointer vertexAttributeInstanceRateDivisor*: VkBool32 @@ -8491,18 +8491,18 @@ type VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT* = VkPhysicalDeviceVertexAttributeDivisorFeaturesKHR - VkQueueFamilyCheckpointPropertiesNV* {.byref.} = object + VkQueueFamilyCheckpointPropertiesNV* = object sType*: VkStructureType pNext*: pointer checkpointExecutionStageMask*: VkPipelineStageFlags - VkCheckpointDataNV* {.byref.} = object + VkCheckpointDataNV* = object sType*: VkStructureType pNext*: pointer stage*: VkPipelineStageFlagBits pCheckpointMarker*: pointer - VkPhysicalDeviceDepthStencilResolveProperties* {.byref.} = object + VkPhysicalDeviceDepthStencilResolveProperties* = object sType*: VkStructureType pNext*: pointer supportedDepthResolveModes*: VkResolveModeFlags @@ -8512,7 +8512,7 @@ type VkPhysicalDeviceDepthStencilResolvePropertiesKHR* = VkPhysicalDeviceDepthStencilResolveProperties - VkSubpassDescriptionDepthStencilResolve* {.byref.} = object + VkSubpassDescriptionDepthStencilResolve* = object sType*: VkStructureType pNext*: pointer depthResolveMode*: VkResolveModeFlagBits @@ -8521,23 +8521,23 @@ type VkSubpassDescriptionDepthStencilResolveKHR* = VkSubpassDescriptionDepthStencilResolve - VkImageViewASTCDecodeModeEXT* {.byref.} = object + VkImageViewASTCDecodeModeEXT* = object sType*: VkStructureType pNext*: pointer decodeMode*: VkFormat - VkPhysicalDeviceASTCDecodeFeaturesEXT* {.byref.} = object + VkPhysicalDeviceASTCDecodeFeaturesEXT* = object sType*: VkStructureType pNext*: pointer decodeModeSharedExponent*: VkBool32 - VkPhysicalDeviceTransformFeedbackFeaturesEXT* {.byref.} = object + VkPhysicalDeviceTransformFeedbackFeaturesEXT* = object sType*: VkStructureType pNext*: pointer transformFeedback*: VkBool32 geometryStreams*: VkBool32 - VkPhysicalDeviceTransformFeedbackPropertiesEXT* {.byref.} = object + VkPhysicalDeviceTransformFeedbackPropertiesEXT* = object sType*: VkStructureType pNext*: pointer maxTransformFeedbackStreams*: uint32 @@ -8551,39 +8551,39 @@ type transformFeedbackRasterizationStreamSelect*: VkBool32 transformFeedbackDraw*: VkBool32 - VkPipelineRasterizationStateStreamCreateInfoEXT* {.byref.} = object + VkPipelineRasterizationStateStreamCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineRasterizationStateStreamCreateFlagsEXT rasterizationStream*: uint32 - VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV* {.byref.} = object + VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV* = object sType*: VkStructureType pNext*: pointer representativeFragmentTest*: VkBool32 - VkPipelineRepresentativeFragmentTestStateCreateInfoNV* {.byref.} = object + VkPipelineRepresentativeFragmentTestStateCreateInfoNV* = object sType*: VkStructureType pNext*: pointer representativeFragmentTestEnable*: VkBool32 - VkPhysicalDeviceExclusiveScissorFeaturesNV* {.byref.} = object + VkPhysicalDeviceExclusiveScissorFeaturesNV* = object sType*: VkStructureType pNext*: pointer exclusiveScissor*: VkBool32 - VkPipelineViewportExclusiveScissorStateCreateInfoNV* {.byref.} = object + VkPipelineViewportExclusiveScissorStateCreateInfoNV* = object sType*: VkStructureType pNext*: pointer exclusiveScissorCount*: uint32 pExclusiveScissors*: ptr VkRect2D - VkPhysicalDeviceCornerSampledImageFeaturesNV* {.byref.} = object + VkPhysicalDeviceCornerSampledImageFeaturesNV* = object sType*: VkStructureType pNext*: pointer cornerSampledImage*: VkBool32 - VkPhysicalDeviceComputeShaderDerivativesFeaturesNV* {.byref.} = object + VkPhysicalDeviceComputeShaderDerivativesFeaturesNV* = object sType*: VkStructureType pNext*: pointer computeDerivativeGroupQuads*: VkBool32 @@ -8591,91 +8591,91 @@ type VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV* = VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR - VkPhysicalDeviceShaderImageFootprintFeaturesNV* {.byref.} = object + VkPhysicalDeviceShaderImageFootprintFeaturesNV* = object sType*: VkStructureType pNext*: pointer imageFootprint*: VkBool32 - VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV* {.byref.} = object + VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV* = object sType*: VkStructureType pNext*: pointer dedicatedAllocationImageAliasing*: VkBool32 - VkPhysicalDeviceCopyMemoryIndirectFeaturesNV* {.byref.} = object + VkPhysicalDeviceCopyMemoryIndirectFeaturesNV* = object sType*: VkStructureType pNext*: pointer indirectCopy*: VkBool32 - VkPhysicalDeviceCopyMemoryIndirectPropertiesNV* {.byref.} = object + VkPhysicalDeviceCopyMemoryIndirectPropertiesNV* = object sType*: VkStructureType pNext*: pointer supportedQueues*: VkQueueFlags - VkPhysicalDeviceMemoryDecompressionFeaturesNV* {.byref.} = object + VkPhysicalDeviceMemoryDecompressionFeaturesNV* = object sType*: VkStructureType pNext*: pointer memoryDecompression*: VkBool32 - VkPhysicalDeviceMemoryDecompressionPropertiesNV* {.byref.} = object + VkPhysicalDeviceMemoryDecompressionPropertiesNV* = object sType*: VkStructureType pNext*: pointer decompressionMethods*: VkMemoryDecompressionMethodFlagsNV maxDecompressionIndirectCount*: uint64 - VkShadingRatePaletteNV* {.byref.} = object + VkShadingRatePaletteNV* = object shadingRatePaletteEntryCount*: uint32 pShadingRatePaletteEntries*: ptr VkShadingRatePaletteEntryNV - VkPipelineViewportShadingRateImageStateCreateInfoNV* {.byref.} = object + VkPipelineViewportShadingRateImageStateCreateInfoNV* = object sType*: VkStructureType pNext*: pointer shadingRateImageEnable*: VkBool32 viewportCount*: uint32 pShadingRatePalettes*: ptr VkShadingRatePaletteNV - VkPhysicalDeviceShadingRateImageFeaturesNV* {.byref.} = object + VkPhysicalDeviceShadingRateImageFeaturesNV* = object sType*: VkStructureType pNext*: pointer shadingRateImage*: VkBool32 shadingRateCoarseSampleOrder*: VkBool32 - VkPhysicalDeviceShadingRateImagePropertiesNV* {.byref.} = object + VkPhysicalDeviceShadingRateImagePropertiesNV* = object sType*: VkStructureType pNext*: pointer shadingRateTexelSize*: VkExtent2D shadingRatePaletteSize*: uint32 shadingRateMaxCoarseSamples*: uint32 - VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* {.byref.} = object + VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* = object sType*: VkStructureType pNext*: pointer invocationMask*: VkBool32 - VkCoarseSampleLocationNV* {.byref.} = object + VkCoarseSampleLocationNV* = object pixelX*: uint32 pixelY*: uint32 sample*: uint32 - VkCoarseSampleOrderCustomNV* {.byref.} = object + VkCoarseSampleOrderCustomNV* = object shadingRate*: VkShadingRatePaletteEntryNV sampleCount*: uint32 sampleLocationCount*: uint32 pSampleLocations*: ptr VkCoarseSampleLocationNV - VkPipelineViewportCoarseSampleOrderStateCreateInfoNV* {.byref.} = object + VkPipelineViewportCoarseSampleOrderStateCreateInfoNV* = object sType*: VkStructureType pNext*: pointer sampleOrderType*: VkCoarseSampleOrderTypeNV customSampleOrderCount*: uint32 pCustomSampleOrders*: ptr VkCoarseSampleOrderCustomNV - VkPhysicalDeviceMeshShaderFeaturesNV* {.byref.} = object + VkPhysicalDeviceMeshShaderFeaturesNV* = object sType*: VkStructureType pNext*: pointer taskShader*: VkBool32 meshShader*: VkBool32 - VkPhysicalDeviceMeshShaderPropertiesNV* {.byref.} = object + VkPhysicalDeviceMeshShaderPropertiesNV* = object sType*: VkStructureType pNext*: pointer maxDrawMeshTasksCount*: uint32 @@ -8692,11 +8692,11 @@ type meshOutputPerVertexGranularity*: uint32 meshOutputPerPrimitiveGranularity*: uint32 - VkDrawMeshTasksIndirectCommandNV* {.byref.} = object + VkDrawMeshTasksIndirectCommandNV* = object taskCount*: uint32 firstTask*: uint32 - VkPhysicalDeviceMeshShaderFeaturesEXT* {.byref.} = object + VkPhysicalDeviceMeshShaderFeaturesEXT* = object sType*: VkStructureType pNext*: pointer taskShader*: VkBool32 @@ -8705,7 +8705,7 @@ type primitiveFragmentShadingRateMeshShader*: VkBool32 meshShaderQueries*: VkBool32 - VkPhysicalDeviceMeshShaderPropertiesEXT* {.byref.} = object + VkPhysicalDeviceMeshShaderPropertiesEXT* = object sType*: VkStructureType pNext*: pointer maxTaskWorkGroupTotalCount*: uint32 @@ -8737,12 +8737,12 @@ type prefersCompactVertexOutput*: VkBool32 prefersCompactPrimitiveOutput*: VkBool32 - VkDrawMeshTasksIndirectCommandEXT* {.byref.} = object + VkDrawMeshTasksIndirectCommandEXT* = object groupCountX*: uint32 groupCountY*: uint32 groupCountZ*: uint32 - VkRayTracingShaderGroupCreateInfoNV* {.byref.} = object + VkRayTracingShaderGroupCreateInfoNV* = object sType*: VkStructureType pNext*: pointer `type`*: VkRayTracingShaderGroupTypeKHR @@ -8751,7 +8751,7 @@ type anyHitShader*: uint32 intersectionShader*: uint32 - VkRayTracingShaderGroupCreateInfoKHR* {.byref.} = object + VkRayTracingShaderGroupCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer `type`*: VkRayTracingShaderGroupTypeKHR @@ -8761,7 +8761,7 @@ type intersectionShader*: uint32 pShaderGroupCaptureReplayHandle*: pointer - VkRayTracingPipelineCreateInfoNV* {.byref.} = object + VkRayTracingPipelineCreateInfoNV* = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineCreateFlags @@ -8774,7 +8774,7 @@ type basePipelineHandle*: VkPipeline basePipelineIndex*: int32 - VkRayTracingPipelineCreateInfoKHR* {.byref.} = object + VkRayTracingPipelineCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineCreateFlags @@ -8790,7 +8790,7 @@ type basePipelineHandle*: VkPipeline basePipelineIndex*: int32 - VkGeometryTrianglesNV* {.byref.} = object + VkGeometryTrianglesNV* = object sType*: VkStructureType pNext*: pointer vertexData*: VkBuffer @@ -8805,7 +8805,7 @@ type transformData*: VkBuffer transformOffset*: VkDeviceSize - VkGeometryAABBNV* {.byref.} = object + VkGeometryAABBNV* = object sType*: VkStructureType pNext*: pointer aabbData*: VkBuffer @@ -8813,18 +8813,18 @@ type stride*: uint32 offset*: VkDeviceSize - VkGeometryDataNV* {.byref.} = object + VkGeometryDataNV* = object triangles*: VkGeometryTrianglesNV aabbs*: VkGeometryAABBNV - VkGeometryNV* {.byref.} = object + VkGeometryNV* = object sType*: VkStructureType pNext*: pointer geometryType*: VkGeometryTypeKHR geometry*: VkGeometryDataNV flags*: VkGeometryFlagsKHR - VkAccelerationStructureInfoNV* {.byref.} = object + VkAccelerationStructureInfoNV* = object sType*: VkStructureType pNext*: pointer `type`*: VkAccelerationStructureTypeNV @@ -8833,13 +8833,13 @@ type geometryCount*: uint32 pGeometries*: ptr VkGeometryNV - VkAccelerationStructureCreateInfoNV* {.byref.} = object + VkAccelerationStructureCreateInfoNV* = object sType*: VkStructureType pNext*: pointer compactedSize*: VkDeviceSize info*: VkAccelerationStructureInfoNV - VkBindAccelerationStructureMemoryInfoNV* {.byref.} = object + VkBindAccelerationStructureMemoryInfoNV* = object sType*: VkStructureType pNext*: pointer accelerationStructure*: VkAccelerationStructureNV @@ -8848,25 +8848,25 @@ type deviceIndexCount*: uint32 pDeviceIndices*: ptr uint32 - VkWriteDescriptorSetAccelerationStructureKHR* {.byref.} = object + VkWriteDescriptorSetAccelerationStructureKHR* = object sType*: VkStructureType pNext*: pointer accelerationStructureCount*: uint32 pAccelerationStructures*: ptr VkAccelerationStructureKHR - VkWriteDescriptorSetAccelerationStructureNV* {.byref.} = object + VkWriteDescriptorSetAccelerationStructureNV* = object sType*: VkStructureType pNext*: pointer accelerationStructureCount*: uint32 pAccelerationStructures*: ptr VkAccelerationStructureNV - VkAccelerationStructureMemoryRequirementsInfoNV* {.byref.} = object + VkAccelerationStructureMemoryRequirementsInfoNV* = object sType*: VkStructureType pNext*: pointer `type`*: VkAccelerationStructureMemoryRequirementsTypeNV accelerationStructure*: VkAccelerationStructureNV - VkPhysicalDeviceAccelerationStructureFeaturesKHR* {.byref.} = object + VkPhysicalDeviceAccelerationStructureFeaturesKHR* = object sType*: VkStructureType pNext*: pointer accelerationStructure*: VkBool32 @@ -8875,7 +8875,7 @@ type accelerationStructureHostCommands*: VkBool32 descriptorBindingAccelerationStructureUpdateAfterBind*: VkBool32 - VkPhysicalDeviceRayTracingPipelineFeaturesKHR* {.byref.} = object + VkPhysicalDeviceRayTracingPipelineFeaturesKHR* = object sType*: VkStructureType pNext*: pointer rayTracingPipeline*: VkBool32 @@ -8884,12 +8884,12 @@ type rayTracingPipelineTraceRaysIndirect*: VkBool32 rayTraversalPrimitiveCulling*: VkBool32 - VkPhysicalDeviceRayQueryFeaturesKHR* {.byref.} = object + VkPhysicalDeviceRayQueryFeaturesKHR* = object sType*: VkStructureType pNext*: pointer rayQuery*: VkBool32 - VkPhysicalDeviceAccelerationStructurePropertiesKHR* {.byref.} = object + VkPhysicalDeviceAccelerationStructurePropertiesKHR* = object sType*: VkStructureType pNext*: pointer maxGeometryCount*: uint64 @@ -8901,7 +8901,7 @@ type maxDescriptorSetUpdateAfterBindAccelerationStructures*: uint32 minAccelerationStructureScratchOffsetAlignment*: uint32 - VkPhysicalDeviceRayTracingPipelinePropertiesKHR* {.byref.} = object + VkPhysicalDeviceRayTracingPipelinePropertiesKHR* = object sType*: VkStructureType pNext*: pointer shaderGroupHandleSize*: uint32 @@ -8913,7 +8913,7 @@ type shaderGroupHandleAlignment*: uint32 maxRayHitAttributeSize*: uint32 - VkPhysicalDeviceRayTracingPropertiesNV* {.byref.} = object + VkPhysicalDeviceRayTracingPropertiesNV* = object sType*: VkStructureType pNext*: pointer shaderGroupHandleSize*: uint32 @@ -8925,17 +8925,17 @@ type maxTriangleCount*: uint64 maxDescriptorSetAccelerationStructures*: uint32 - VkStridedDeviceAddressRegionKHR* {.byref.} = object + VkStridedDeviceAddressRegionKHR* = object deviceAddress*: VkDeviceAddress stride*: VkDeviceSize size*: VkDeviceSize - VkTraceRaysIndirectCommandKHR* {.byref.} = object + VkTraceRaysIndirectCommandKHR* = object width*: uint32 height*: uint32 depth*: uint32 - VkTraceRaysIndirectCommand2KHR* {.byref.} = object + VkTraceRaysIndirectCommand2KHR* = object raygenShaderRecordAddress*: VkDeviceAddress raygenShaderRecordSize*: VkDeviceSize missShaderBindingTableAddress*: VkDeviceAddress @@ -8951,24 +8951,24 @@ type height*: uint32 depth*: uint32 - VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR* {.byref.} = object + VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR* = object sType*: VkStructureType pNext*: pointer rayTracingMaintenance1*: VkBool32 rayTracingPipelineTraceRaysIndirect2*: VkBool32 - VkDrmFormatModifierPropertiesListEXT* {.byref.} = object + VkDrmFormatModifierPropertiesListEXT* = object sType*: VkStructureType pNext*: pointer drmFormatModifierCount*: uint32 pDrmFormatModifierProperties*: ptr VkDrmFormatModifierPropertiesEXT - VkDrmFormatModifierPropertiesEXT* {.byref.} = object + VkDrmFormatModifierPropertiesEXT* = object drmFormatModifier*: uint64 drmFormatModifierPlaneCount*: uint32 drmFormatModifierTilingFeatures*: VkFormatFeatureFlags - VkPhysicalDeviceImageDrmFormatModifierInfoEXT* {.byref.} = object + VkPhysicalDeviceImageDrmFormatModifierInfoEXT* = object sType*: VkStructureType pNext*: pointer drmFormatModifier*: uint64 @@ -8976,61 +8976,61 @@ type queueFamilyIndexCount*: uint32 pQueueFamilyIndices*: ptr uint32 - VkImageDrmFormatModifierListCreateInfoEXT* {.byref.} = object + VkImageDrmFormatModifierListCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer drmFormatModifierCount*: uint32 pDrmFormatModifiers*: ptr uint64 - VkImageDrmFormatModifierExplicitCreateInfoEXT* {.byref.} = object + VkImageDrmFormatModifierExplicitCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer drmFormatModifier*: uint64 drmFormatModifierPlaneCount*: uint32 pPlaneLayouts*: ptr VkSubresourceLayout - VkImageDrmFormatModifierPropertiesEXT* {.byref.} = object + VkImageDrmFormatModifierPropertiesEXT* = object sType*: VkStructureType pNext*: pointer drmFormatModifier*: uint64 - VkImageStencilUsageCreateInfo* {.byref.} = object + VkImageStencilUsageCreateInfo* = object sType*: VkStructureType pNext*: pointer stencilUsage*: VkImageUsageFlags VkImageStencilUsageCreateInfoEXT* = VkImageStencilUsageCreateInfo - VkDeviceMemoryOverallocationCreateInfoAMD* {.byref.} = object + VkDeviceMemoryOverallocationCreateInfoAMD* = object sType*: VkStructureType pNext*: pointer overallocationBehavior*: VkMemoryOverallocationBehaviorAMD - VkPhysicalDeviceFragmentDensityMapFeaturesEXT* {.byref.} = object + VkPhysicalDeviceFragmentDensityMapFeaturesEXT* = object sType*: VkStructureType pNext*: pointer fragmentDensityMap*: VkBool32 fragmentDensityMapDynamic*: VkBool32 fragmentDensityMapNonSubsampledImages*: VkBool32 - VkPhysicalDeviceFragmentDensityMap2FeaturesEXT* {.byref.} = object + VkPhysicalDeviceFragmentDensityMap2FeaturesEXT* = object sType*: VkStructureType pNext*: pointer fragmentDensityMapDeferred*: VkBool32 - VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM* {.byref.} = object + VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM* = object sType*: VkStructureType pNext*: pointer fragmentDensityMapOffset*: VkBool32 - VkPhysicalDeviceFragmentDensityMapPropertiesEXT* {.byref.} = object + VkPhysicalDeviceFragmentDensityMapPropertiesEXT* = object sType*: VkStructureType pNext*: pointer minFragmentDensityTexelSize*: VkExtent2D maxFragmentDensityTexelSize*: VkExtent2D fragmentDensityInvocations*: VkBool32 - VkPhysicalDeviceFragmentDensityMap2PropertiesEXT* {.byref.} = object + VkPhysicalDeviceFragmentDensityMap2PropertiesEXT* = object sType*: VkStructureType pNext*: pointer subsampledLoads*: VkBool32 @@ -9038,74 +9038,74 @@ type maxSubsampledArrayLayers*: uint32 maxDescriptorSetSubsampledSamplers*: uint32 - VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM* {.byref.} = object + VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM* = object sType*: VkStructureType pNext*: pointer fragmentDensityOffsetGranularity*: VkExtent2D - VkRenderPassFragmentDensityMapCreateInfoEXT* {.byref.} = object + VkRenderPassFragmentDensityMapCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer fragmentDensityMapAttachment*: VkAttachmentReference - VkSubpassFragmentDensityMapOffsetEndInfoQCOM* {.byref.} = object + VkSubpassFragmentDensityMapOffsetEndInfoQCOM* = object sType*: VkStructureType pNext*: pointer fragmentDensityOffsetCount*: uint32 pFragmentDensityOffsets*: ptr VkOffset2D - VkPhysicalDeviceScalarBlockLayoutFeatures* {.byref.} = object + VkPhysicalDeviceScalarBlockLayoutFeatures* = object sType*: VkStructureType pNext*: pointer scalarBlockLayout*: VkBool32 VkPhysicalDeviceScalarBlockLayoutFeaturesEXT* = VkPhysicalDeviceScalarBlockLayoutFeatures - VkSurfaceProtectedCapabilitiesKHR* {.byref.} = object + VkSurfaceProtectedCapabilitiesKHR* = object sType*: VkStructureType pNext*: pointer supportsProtected*: VkBool32 - VkPhysicalDeviceUniformBufferStandardLayoutFeatures* {.byref.} = object + VkPhysicalDeviceUniformBufferStandardLayoutFeatures* = object sType*: VkStructureType pNext*: pointer uniformBufferStandardLayout*: VkBool32 VkPhysicalDeviceUniformBufferStandardLayoutFeaturesKHR* = VkPhysicalDeviceUniformBufferStandardLayoutFeatures - VkPhysicalDeviceDepthClipEnableFeaturesEXT* {.byref.} = object + VkPhysicalDeviceDepthClipEnableFeaturesEXT* = object sType*: VkStructureType pNext*: pointer depthClipEnable*: VkBool32 - VkPipelineRasterizationDepthClipStateCreateInfoEXT* {.byref.} = object + VkPipelineRasterizationDepthClipStateCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineRasterizationDepthClipStateCreateFlagsEXT depthClipEnable*: VkBool32 - VkPhysicalDeviceMemoryBudgetPropertiesEXT* {.byref.} = object + VkPhysicalDeviceMemoryBudgetPropertiesEXT* = object sType*: VkStructureType pNext*: pointer heapBudget*: array[VK_MAX_MEMORY_HEAPS, VkDeviceSize] heapUsage*: array[VK_MAX_MEMORY_HEAPS, VkDeviceSize] - VkPhysicalDeviceMemoryPriorityFeaturesEXT* {.byref.} = object + VkPhysicalDeviceMemoryPriorityFeaturesEXT* = object sType*: VkStructureType pNext*: pointer memoryPriority*: VkBool32 - VkMemoryPriorityAllocateInfoEXT* {.byref.} = object + VkMemoryPriorityAllocateInfoEXT* = object sType*: VkStructureType pNext*: pointer priority*: float32 - VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* {.byref.} = object + VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* = object sType*: VkStructureType pNext*: pointer pageableDeviceLocalMemory*: VkBool32 - VkPhysicalDeviceBufferDeviceAddressFeatures* {.byref.} = object + VkPhysicalDeviceBufferDeviceAddressFeatures* = object sType*: VkStructureType pNext*: pointer bufferDeviceAddress*: VkBool32 @@ -9114,7 +9114,7 @@ type VkPhysicalDeviceBufferDeviceAddressFeaturesKHR* = VkPhysicalDeviceBufferDeviceAddressFeatures - VkPhysicalDeviceBufferDeviceAddressFeaturesEXT* {.byref.} = object + VkPhysicalDeviceBufferDeviceAddressFeaturesEXT* = object sType*: VkStructureType pNext*: pointer bufferDeviceAddress*: VkBool32 @@ -9123,7 +9123,7 @@ type VkPhysicalDeviceBufferAddressFeaturesEXT* = VkPhysicalDeviceBufferDeviceAddressFeaturesEXT - VkBufferDeviceAddressInfo* {.byref.} = object + VkBufferDeviceAddressInfo* = object sType*: VkStructureType pNext*: pointer buffer*: VkBuffer @@ -9132,37 +9132,37 @@ type VkBufferDeviceAddressInfoEXT* = VkBufferDeviceAddressInfo - VkBufferOpaqueCaptureAddressCreateInfo* {.byref.} = object + VkBufferOpaqueCaptureAddressCreateInfo* = object sType*: VkStructureType pNext*: pointer opaqueCaptureAddress*: uint64 VkBufferOpaqueCaptureAddressCreateInfoKHR* = VkBufferOpaqueCaptureAddressCreateInfo - VkBufferDeviceAddressCreateInfoEXT* {.byref.} = object + VkBufferDeviceAddressCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer deviceAddress*: VkDeviceAddress - VkPhysicalDeviceImageViewImageFormatInfoEXT* {.byref.} = object + VkPhysicalDeviceImageViewImageFormatInfoEXT* = object sType*: VkStructureType pNext*: pointer imageViewType*: VkImageViewType - VkFilterCubicImageViewImageFormatPropertiesEXT* {.byref.} = object + VkFilterCubicImageViewImageFormatPropertiesEXT* = object sType*: VkStructureType pNext*: pointer filterCubic*: VkBool32 filterCubicMinmax*: VkBool32 - VkPhysicalDeviceImagelessFramebufferFeatures* {.byref.} = object + VkPhysicalDeviceImagelessFramebufferFeatures* = object sType*: VkStructureType pNext*: pointer imagelessFramebuffer*: VkBool32 VkPhysicalDeviceImagelessFramebufferFeaturesKHR* = VkPhysicalDeviceImagelessFramebufferFeatures - VkFramebufferAttachmentsCreateInfo* {.byref.} = object + VkFramebufferAttachmentsCreateInfo* = object sType*: VkStructureType pNext*: pointer attachmentImageInfoCount*: uint32 @@ -9170,7 +9170,7 @@ type VkFramebufferAttachmentsCreateInfoKHR* = VkFramebufferAttachmentsCreateInfo - VkFramebufferAttachmentImageInfo* {.byref.} = object + VkFramebufferAttachmentImageInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkImageCreateFlags @@ -9183,7 +9183,7 @@ type VkFramebufferAttachmentImageInfoKHR* = VkFramebufferAttachmentImageInfo - VkRenderPassAttachmentBeginInfo* {.byref.} = object + VkRenderPassAttachmentBeginInfo* = object sType*: VkStructureType pNext*: pointer attachmentCount*: uint32 @@ -9191,25 +9191,25 @@ type VkRenderPassAttachmentBeginInfoKHR* = VkRenderPassAttachmentBeginInfo - VkPhysicalDeviceTextureCompressionASTCHDRFeatures* {.byref.} = object + VkPhysicalDeviceTextureCompressionASTCHDRFeatures* = object sType*: VkStructureType pNext*: pointer textureCompressionASTC_HDR*: VkBool32 VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT* = VkPhysicalDeviceTextureCompressionASTCHDRFeatures - VkPhysicalDeviceCooperativeMatrixFeaturesNV* {.byref.} = object + VkPhysicalDeviceCooperativeMatrixFeaturesNV* = object sType*: VkStructureType pNext*: pointer cooperativeMatrix*: VkBool32 cooperativeMatrixRobustBufferAccess*: VkBool32 - VkPhysicalDeviceCooperativeMatrixPropertiesNV* {.byref.} = object + VkPhysicalDeviceCooperativeMatrixPropertiesNV* = object sType*: VkStructureType pNext*: pointer cooperativeMatrixSupportedStages*: VkShaderStageFlags - VkCooperativeMatrixPropertiesNV* {.byref.} = object + VkCooperativeMatrixPropertiesNV* = object sType*: VkStructureType pNext*: pointer MSize*: uint32 @@ -9221,36 +9221,36 @@ type DType*: VkComponentTypeNV scope*: VkScopeNV - VkPhysicalDeviceYcbcrImageArraysFeaturesEXT* {.byref.} = object + VkPhysicalDeviceYcbcrImageArraysFeaturesEXT* = object sType*: VkStructureType pNext*: pointer ycbcrImageArrays*: VkBool32 - VkImageViewHandleInfoNVX* {.byref.} = object + VkImageViewHandleInfoNVX* = object sType*: VkStructureType pNext*: pointer imageView*: VkImageView descriptorType*: VkDescriptorType sampler*: VkSampler - VkImageViewAddressPropertiesNVX* {.byref.} = object + VkImageViewAddressPropertiesNVX* = object sType*: VkStructureType pNext*: pointer deviceAddress*: VkDeviceAddress size*: VkDeviceSize - VkPresentFrameTokenGGP* {.byref.} = object + VkPresentFrameTokenGGP* = object sType*: VkStructureType pNext*: pointer frameToken*: GgpFrameToken - VkPipelineCreationFeedback* {.byref.} = object + VkPipelineCreationFeedback* = object flags*: VkPipelineCreationFeedbackFlags duration*: uint64 VkPipelineCreationFeedbackEXT* = VkPipelineCreationFeedback - VkPipelineCreationFeedbackCreateInfo* {.byref.} = object + VkPipelineCreationFeedbackCreateInfo* = object sType*: VkStructureType pNext*: pointer pPipelineCreationFeedback*: ptr VkPipelineCreationFeedback @@ -9259,48 +9259,48 @@ type VkPipelineCreationFeedbackCreateInfoEXT* = VkPipelineCreationFeedbackCreateInfo - VkSurfaceFullScreenExclusiveInfoEXT* {.byref.} = object + VkSurfaceFullScreenExclusiveInfoEXT* = object sType*: VkStructureType pNext*: pointer fullScreenExclusive*: VkFullScreenExclusiveEXT - VkSurfaceFullScreenExclusiveWin32InfoEXT* {.byref.} = object + VkSurfaceFullScreenExclusiveWin32InfoEXT* = object sType*: VkStructureType pNext*: pointer hmonitor*: HMONITOR - VkSurfaceCapabilitiesFullScreenExclusiveEXT* {.byref.} = object + VkSurfaceCapabilitiesFullScreenExclusiveEXT* = object sType*: VkStructureType pNext*: pointer fullScreenExclusiveSupported*: VkBool32 - VkPhysicalDevicePresentBarrierFeaturesNV* {.byref.} = object + VkPhysicalDevicePresentBarrierFeaturesNV* = object sType*: VkStructureType pNext*: pointer presentBarrier*: VkBool32 - VkSurfaceCapabilitiesPresentBarrierNV* {.byref.} = object + VkSurfaceCapabilitiesPresentBarrierNV* = object sType*: VkStructureType pNext*: pointer presentBarrierSupported*: VkBool32 - VkSwapchainPresentBarrierCreateInfoNV* {.byref.} = object + VkSwapchainPresentBarrierCreateInfoNV* = object sType*: VkStructureType pNext*: pointer presentBarrierEnable*: VkBool32 - VkPhysicalDevicePerformanceQueryFeaturesKHR* {.byref.} = object + VkPhysicalDevicePerformanceQueryFeaturesKHR* = object sType*: VkStructureType pNext*: pointer performanceCounterQueryPools*: VkBool32 performanceCounterMultipleQueryPools*: VkBool32 - VkPhysicalDevicePerformanceQueryPropertiesKHR* {.byref.} = object + VkPhysicalDevicePerformanceQueryPropertiesKHR* = object sType*: VkStructureType pNext*: pointer allowCommandBufferQueryCopies*: VkBool32 - VkPerformanceCounterKHR* {.byref.} = object + VkPerformanceCounterKHR* = object sType*: VkStructureType pNext*: pointer unit*: VkPerformanceCounterUnitKHR @@ -9308,7 +9308,7 @@ type storage*: VkPerformanceCounterStorageKHR uuid*: array[VK_UUID_SIZE, uint8] - VkPerformanceCounterDescriptionKHR* {.byref.} = object + VkPerformanceCounterDescriptionKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkPerformanceCounterDescriptionFlagsKHR @@ -9316,14 +9316,14 @@ type category*: array[VK_MAX_DESCRIPTION_SIZE, char] description*: array[VK_MAX_DESCRIPTION_SIZE, char] - VkQueryPoolPerformanceCreateInfoKHR* {.byref.} = object + VkQueryPoolPerformanceCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer queueFamilyIndex*: uint32 counterIndexCount*: uint32 pCounterIndices*: ptr uint32 - VkPerformanceCounterResultKHR* {.union, byref.} = object + VkPerformanceCounterResultKHR* {.union.} = object int32*: int32 int64*: int64 uint32*: uint32 @@ -9331,39 +9331,39 @@ type float32*: float32 float64*: float64 - VkAcquireProfilingLockInfoKHR* {.byref.} = object + VkAcquireProfilingLockInfoKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkAcquireProfilingLockFlagsKHR timeout*: uint64 - VkPerformanceQuerySubmitInfoKHR* {.byref.} = object + VkPerformanceQuerySubmitInfoKHR* = object sType*: VkStructureType pNext*: pointer counterPassIndex*: uint32 - VkPerformanceQueryReservationInfoKHR* {.byref.} = object + VkPerformanceQueryReservationInfoKHR* = object sType*: VkStructureType pNext*: pointer maxPerformanceQueriesPerPool*: uint32 - VkHeadlessSurfaceCreateInfoEXT* {.byref.} = object + VkHeadlessSurfaceCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer flags*: VkHeadlessSurfaceCreateFlagsEXT - VkPhysicalDeviceCoverageReductionModeFeaturesNV* {.byref.} = object + VkPhysicalDeviceCoverageReductionModeFeaturesNV* = object sType*: VkStructureType pNext*: pointer coverageReductionMode*: VkBool32 - VkPipelineCoverageReductionStateCreateInfoNV* {.byref.} = object + VkPipelineCoverageReductionStateCreateInfoNV* = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineCoverageReductionStateCreateFlagsNV coverageReductionMode*: VkCoverageReductionModeNV - VkFramebufferMixedSamplesCombinationNV* {.byref.} = object + VkFramebufferMixedSamplesCombinationNV* = object sType*: VkStructureType pNext*: pointer coverageReductionMode*: VkCoverageReductionModeNV @@ -9371,100 +9371,100 @@ type depthStencilSamples*: VkSampleCountFlags colorSamples*: VkSampleCountFlags - VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL* {.byref.} = object + VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL* = object sType*: VkStructureType pNext*: pointer shaderIntegerFunctions2*: VkBool32 - VkPerformanceValueDataINTEL* {.union, byref.} = object + VkPerformanceValueDataINTEL* {.union.} = object value32*: uint32 value64*: uint64 valueFloat*: float32 valueBool*: VkBool32 valueString*: cstring - VkPerformanceValueINTEL* {.byref.} = object + VkPerformanceValueINTEL* = object `type`*: VkPerformanceValueTypeINTEL data*: VkPerformanceValueDataINTEL - VkInitializePerformanceApiInfoINTEL* {.byref.} = object + VkInitializePerformanceApiInfoINTEL* = object sType*: VkStructureType pNext*: pointer pUserData*: pointer - VkQueryPoolPerformanceQueryCreateInfoINTEL* {.byref.} = object + VkQueryPoolPerformanceQueryCreateInfoINTEL* = object sType*: VkStructureType pNext*: pointer performanceCountersSampling*: VkQueryPoolSamplingModeINTEL VkQueryPoolCreateInfoINTEL* = VkQueryPoolPerformanceQueryCreateInfoINTEL - VkPerformanceMarkerInfoINTEL* {.byref.} = object + VkPerformanceMarkerInfoINTEL* = object sType*: VkStructureType pNext*: pointer marker*: uint64 - VkPerformanceStreamMarkerInfoINTEL* {.byref.} = object + VkPerformanceStreamMarkerInfoINTEL* = object sType*: VkStructureType pNext*: pointer marker*: uint32 - VkPerformanceOverrideInfoINTEL* {.byref.} = object + VkPerformanceOverrideInfoINTEL* = object sType*: VkStructureType pNext*: pointer `type`*: VkPerformanceOverrideTypeINTEL enable*: VkBool32 parameter*: uint64 - VkPerformanceConfigurationAcquireInfoINTEL* {.byref.} = object + VkPerformanceConfigurationAcquireInfoINTEL* = object sType*: VkStructureType pNext*: pointer `type`*: VkPerformanceConfigurationTypeINTEL - VkPhysicalDeviceShaderClockFeaturesKHR* {.byref.} = object + VkPhysicalDeviceShaderClockFeaturesKHR* = object sType*: VkStructureType pNext*: pointer shaderSubgroupClock*: VkBool32 shaderDeviceClock*: VkBool32 - VkPhysicalDeviceIndexTypeUint8FeaturesKHR* {.byref.} = object + VkPhysicalDeviceIndexTypeUint8FeaturesKHR* = object sType*: VkStructureType pNext*: pointer indexTypeUint8*: VkBool32 VkPhysicalDeviceIndexTypeUint8FeaturesEXT* = VkPhysicalDeviceIndexTypeUint8FeaturesKHR - VkPhysicalDeviceShaderSMBuiltinsPropertiesNV* {.byref.} = object + VkPhysicalDeviceShaderSMBuiltinsPropertiesNV* = object sType*: VkStructureType pNext*: pointer shaderSMCount*: uint32 shaderWarpsPerSM*: uint32 - VkPhysicalDeviceShaderSMBuiltinsFeaturesNV* {.byref.} = object + VkPhysicalDeviceShaderSMBuiltinsFeaturesNV* = object sType*: VkStructureType pNext*: pointer shaderSMBuiltins*: VkBool32 - VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT* {.byref.} = object + VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT* = object sType*: VkStructureType pNext*: pointer fragmentShaderSampleInterlock*: VkBool32 fragmentShaderPixelInterlock*: VkBool32 fragmentShaderShadingRateInterlock*: VkBool32 - VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures* {.byref.} = object + VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures* = object sType*: VkStructureType pNext*: pointer separateDepthStencilLayouts*: VkBool32 VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR* = VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures - VkAttachmentReferenceStencilLayout* {.byref.} = object + VkAttachmentReferenceStencilLayout* = object sType*: VkStructureType pNext*: pointer stencilLayout*: VkImageLayout - VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* {.byref.} = object + VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* = object sType*: VkStructureType pNext*: pointer primitiveTopologyListRestart*: VkBool32 @@ -9472,7 +9472,7 @@ type VkAttachmentReferenceStencilLayoutKHR* = VkAttachmentReferenceStencilLayout - VkAttachmentDescriptionStencilLayout* {.byref.} = object + VkAttachmentDescriptionStencilLayout* = object sType*: VkStructureType pNext*: pointer stencilInitialLayout*: VkImageLayout @@ -9480,19 +9480,19 @@ type VkAttachmentDescriptionStencilLayoutKHR* = VkAttachmentDescriptionStencilLayout - VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR* {.byref.} = object + VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR* = object sType*: VkStructureType pNext*: pointer pipelineExecutableInfo*: VkBool32 - VkPipelineInfoKHR* {.byref.} = object + VkPipelineInfoKHR* = object sType*: VkStructureType pNext*: pointer pipeline*: VkPipeline VkPipelineInfoEXT* = VkPipelineInfoKHR - VkPipelineExecutablePropertiesKHR* {.byref.} = object + VkPipelineExecutablePropertiesKHR* = object sType*: VkStructureType pNext*: pointer stages*: VkShaderStageFlags @@ -9500,19 +9500,19 @@ type description*: array[VK_MAX_DESCRIPTION_SIZE, char] subgroupSize*: uint32 - VkPipelineExecutableInfoKHR* {.byref.} = object + VkPipelineExecutableInfoKHR* = object sType*: VkStructureType pNext*: pointer pipeline*: VkPipeline executableIndex*: uint32 - VkPipelineExecutableStatisticValueKHR* {.union, byref.} = object + VkPipelineExecutableStatisticValueKHR* {.union.} = object b32*: VkBool32 i64*: int64 u64*: uint64 f64*: float64 - VkPipelineExecutableStatisticKHR* {.byref.} = object + VkPipelineExecutableStatisticKHR* = object sType*: VkStructureType pNext*: pointer name*: array[VK_MAX_DESCRIPTION_SIZE, char] @@ -9520,7 +9520,7 @@ type format*: VkPipelineExecutableStatisticFormatKHR value*: VkPipelineExecutableStatisticValueKHR - VkPipelineExecutableInternalRepresentationKHR* {.byref.} = object + VkPipelineExecutableInternalRepresentationKHR* = object sType*: VkStructureType pNext*: pointer name*: array[VK_MAX_DESCRIPTION_SIZE, char] @@ -9529,19 +9529,19 @@ type dataSize*: uint pData*: pointer - VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures* {.byref.} = object + VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures* = object sType*: VkStructureType pNext*: pointer shaderDemoteToHelperInvocation*: VkBool32 VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT* = VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures - VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT* {.byref.} = object + VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT* = object sType*: VkStructureType pNext*: pointer texelBufferAlignment*: VkBool32 - VkPhysicalDeviceTexelBufferAlignmentProperties* {.byref.} = object + VkPhysicalDeviceTexelBufferAlignmentProperties* = object sType*: VkStructureType pNext*: pointer storageTexelBufferOffsetAlignmentBytes*: VkDeviceSize @@ -9551,7 +9551,7 @@ type VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT* = VkPhysicalDeviceTexelBufferAlignmentProperties - VkPhysicalDeviceSubgroupSizeControlFeatures* {.byref.} = object + VkPhysicalDeviceSubgroupSizeControlFeatures* = object sType*: VkStructureType pNext*: pointer subgroupSizeControl*: VkBool32 @@ -9559,7 +9559,7 @@ type VkPhysicalDeviceSubgroupSizeControlFeaturesEXT* = VkPhysicalDeviceSubgroupSizeControlFeatures - VkPhysicalDeviceSubgroupSizeControlProperties* {.byref.} = object + VkPhysicalDeviceSubgroupSizeControlProperties* = object sType*: VkStructureType pNext*: pointer minSubgroupSize*: uint32 @@ -9569,7 +9569,7 @@ type VkPhysicalDeviceSubgroupSizeControlPropertiesEXT* = VkPhysicalDeviceSubgroupSizeControlProperties - VkPipelineShaderStageRequiredSubgroupSizeCreateInfo* {.byref.} = object + VkPipelineShaderStageRequiredSubgroupSizeCreateInfo* = object sType*: VkStructureType pNext*: pointer requiredSubgroupSize*: uint32 @@ -9578,18 +9578,18 @@ type VkShaderRequiredSubgroupSizeCreateInfoEXT* = VkPipelineShaderStageRequiredSubgroupSizeCreateInfo - VkSubpassShadingPipelineCreateInfoHUAWEI* {.byref.} = object + VkSubpassShadingPipelineCreateInfoHUAWEI* = object sType*: VkStructureType pNext*: pointer renderPass*: VkRenderPass subpass*: uint32 - VkPhysicalDeviceSubpassShadingPropertiesHUAWEI* {.byref.} = object + VkPhysicalDeviceSubpassShadingPropertiesHUAWEI* = object sType*: VkStructureType pNext*: pointer maxSubpassShadingWorkgroupSizeAspectRatio*: uint32 - VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI* {.byref.} = object + VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI* = object sType*: VkStructureType pNext*: pointer maxWorkGroupCount*: array[3, uint32] @@ -9597,21 +9597,21 @@ type maxOutputClusterCount*: uint32 indirectBufferOffsetAlignment*: VkDeviceSize - VkMemoryOpaqueCaptureAddressAllocateInfo* {.byref.} = object + VkMemoryOpaqueCaptureAddressAllocateInfo* = object sType*: VkStructureType pNext*: pointer opaqueCaptureAddress*: uint64 VkMemoryOpaqueCaptureAddressAllocateInfoKHR* = VkMemoryOpaqueCaptureAddressAllocateInfo - VkDeviceMemoryOpaqueCaptureAddressInfo* {.byref.} = object + VkDeviceMemoryOpaqueCaptureAddressInfo* = object sType*: VkStructureType pNext*: pointer memory*: VkDeviceMemory VkDeviceMemoryOpaqueCaptureAddressInfoKHR* = VkDeviceMemoryOpaqueCaptureAddressInfo - VkPhysicalDeviceLineRasterizationFeaturesKHR* {.byref.} = object + VkPhysicalDeviceLineRasterizationFeaturesKHR* = object sType*: VkStructureType pNext*: pointer rectangularLines*: VkBool32 @@ -9623,14 +9623,14 @@ type VkPhysicalDeviceLineRasterizationFeaturesEXT* = VkPhysicalDeviceLineRasterizationFeaturesKHR - VkPhysicalDeviceLineRasterizationPropertiesKHR* {.byref.} = object + VkPhysicalDeviceLineRasterizationPropertiesKHR* = object sType*: VkStructureType pNext*: pointer lineSubPixelPrecisionBits*: uint32 VkPhysicalDeviceLineRasterizationPropertiesEXT* = VkPhysicalDeviceLineRasterizationPropertiesKHR - VkPipelineRasterizationLineStateCreateInfoKHR* {.byref.} = object + VkPipelineRasterizationLineStateCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer lineRasterizationMode*: VkLineRasterizationModeKHR @@ -9640,14 +9640,14 @@ type VkPipelineRasterizationLineStateCreateInfoEXT* = VkPipelineRasterizationLineStateCreateInfoKHR - VkPhysicalDevicePipelineCreationCacheControlFeatures* {.byref.} = object + VkPhysicalDevicePipelineCreationCacheControlFeatures* = object sType*: VkStructureType pNext*: pointer pipelineCreationCacheControl*: VkBool32 VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT* = VkPhysicalDevicePipelineCreationCacheControlFeatures - VkPhysicalDeviceVulkan11Features* {.byref.} = object + VkPhysicalDeviceVulkan11Features* = object sType*: VkStructureType pNext*: pointer storageBuffer16BitAccess*: VkBool32 @@ -9663,7 +9663,7 @@ type samplerYcbcrConversion*: VkBool32 shaderDrawParameters*: VkBool32 - VkPhysicalDeviceVulkan11Properties* {.byref.} = object + VkPhysicalDeviceVulkan11Properties* = object sType*: VkStructureType pNext*: pointer deviceUUID*: array[VK_UUID_SIZE, uint8] @@ -9682,7 +9682,7 @@ type maxPerSetDescriptors*: uint32 maxMemoryAllocationSize*: VkDeviceSize - VkPhysicalDeviceVulkan12Features* {.byref.} = object + VkPhysicalDeviceVulkan12Features* = object sType*: VkStructureType pNext*: pointer samplerMirrorClampToEdge*: VkBool32 @@ -9733,7 +9733,7 @@ type shaderOutputLayer*: VkBool32 subgroupBroadcastDynamicId*: VkBool32 - VkPhysicalDeviceVulkan12Properties* {.byref.} = object + VkPhysicalDeviceVulkan12Properties* = object sType*: VkStructureType pNext*: pointer driverID*: VkDriverId @@ -9789,7 +9789,7 @@ type maxTimelineSemaphoreValueDifference*: uint64 framebufferIntegerColorSampleCounts*: VkSampleCountFlags - VkPhysicalDeviceVulkan13Features* {.byref.} = object + VkPhysicalDeviceVulkan13Features* = object sType*: VkStructureType pNext*: pointer robustImageAccess*: VkBool32 @@ -9808,7 +9808,7 @@ type shaderIntegerDotProduct*: VkBool32 maintenance4*: VkBool32 - VkPhysicalDeviceVulkan13Properties* {.byref.} = object + VkPhysicalDeviceVulkan13Properties* = object sType*: VkStructureType pNext*: pointer minSubgroupSize*: uint32 @@ -9857,30 +9857,30 @@ type uniformTexelBufferOffsetSingleTexelAlignment*: VkBool32 maxBufferSize*: VkDeviceSize - VkPipelineCompilerControlCreateInfoAMD* {.byref.} = object + VkPipelineCompilerControlCreateInfoAMD* = object sType*: VkStructureType pNext*: pointer compilerControlFlags*: VkPipelineCompilerControlFlagsAMD - VkPhysicalDeviceCoherentMemoryFeaturesAMD* {.byref.} = object + VkPhysicalDeviceCoherentMemoryFeaturesAMD* = object sType*: VkStructureType pNext*: pointer deviceCoherentMemory*: VkBool32 - VkFaultData* {.byref.} = object + VkFaultData* = object sType*: VkStructureType pNext*: pointer faultLevel*: VkFaultLevel faultType*: VkFaultType - VkFaultCallbackInfo* {.byref.} = object + VkFaultCallbackInfo* = object sType*: VkStructureType pNext*: pointer faultCount*: uint32 pFaults*: ptr VkFaultData pfnFaultCallback*: PFN_vkFaultCallbackFunction - VkPhysicalDeviceToolProperties* {.byref.} = object + VkPhysicalDeviceToolProperties* = object sType*: VkStructureType pNext*: pointer name*: array[VK_MAX_EXTENSION_NAME_SIZE, char] @@ -9891,48 +9891,48 @@ type VkPhysicalDeviceToolPropertiesEXT* = VkPhysicalDeviceToolProperties - VkSamplerCustomBorderColorCreateInfoEXT* {.byref.} = object + VkSamplerCustomBorderColorCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer customBorderColor*: VkClearColorValue format*: VkFormat - VkPhysicalDeviceCustomBorderColorPropertiesEXT* {.byref.} = object + VkPhysicalDeviceCustomBorderColorPropertiesEXT* = object sType*: VkStructureType pNext*: pointer maxCustomBorderColorSamplers*: uint32 - VkPhysicalDeviceCustomBorderColorFeaturesEXT* {.byref.} = object + VkPhysicalDeviceCustomBorderColorFeaturesEXT* = object sType*: VkStructureType pNext*: pointer customBorderColors*: VkBool32 customBorderColorWithoutFormat*: VkBool32 - VkSamplerBorderColorComponentMappingCreateInfoEXT* {.byref.} = object + VkSamplerBorderColorComponentMappingCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer components*: VkComponentMapping srgb*: VkBool32 - VkPhysicalDeviceBorderColorSwizzleFeaturesEXT* {.byref.} = object + VkPhysicalDeviceBorderColorSwizzleFeaturesEXT* = object sType*: VkStructureType pNext*: pointer borderColorSwizzle*: VkBool32 borderColorSwizzleFromImage*: VkBool32 - VkDeviceOrHostAddressKHR* {.union, byref.} = object + VkDeviceOrHostAddressKHR* {.union.} = object deviceAddress*: VkDeviceAddress hostAddress*: pointer - VkDeviceOrHostAddressConstKHR* {.union, byref.} = object + VkDeviceOrHostAddressConstKHR* {.union.} = object deviceAddress*: VkDeviceAddress hostAddress*: pointer - VkDeviceOrHostAddressConstAMDX* {.union, byref.} = object + VkDeviceOrHostAddressConstAMDX* {.union.} = object deviceAddress*: VkDeviceAddress hostAddress*: pointer - VkAccelerationStructureGeometryTrianglesDataKHR* {.byref.} = object + VkAccelerationStructureGeometryTrianglesDataKHR* = object sType*: VkStructureType pNext*: pointer vertexFormat*: VkFormat @@ -9943,31 +9943,31 @@ type indexData*: VkDeviceOrHostAddressConstKHR transformData*: VkDeviceOrHostAddressConstKHR - VkAccelerationStructureGeometryAabbsDataKHR* {.byref.} = object + VkAccelerationStructureGeometryAabbsDataKHR* = object sType*: VkStructureType pNext*: pointer data*: VkDeviceOrHostAddressConstKHR stride*: VkDeviceSize - VkAccelerationStructureGeometryInstancesDataKHR* {.byref.} = object + VkAccelerationStructureGeometryInstancesDataKHR* = object sType*: VkStructureType pNext*: pointer arrayOfPointers*: VkBool32 data*: VkDeviceOrHostAddressConstKHR - VkAccelerationStructureGeometryDataKHR* {.union, byref.} = object + VkAccelerationStructureGeometryDataKHR* {.union.} = object triangles*: VkAccelerationStructureGeometryTrianglesDataKHR aabbs*: VkAccelerationStructureGeometryAabbsDataKHR instances*: VkAccelerationStructureGeometryInstancesDataKHR - VkAccelerationStructureGeometryKHR* {.byref.} = object + VkAccelerationStructureGeometryKHR* = object sType*: VkStructureType pNext*: pointer geometryType*: VkGeometryTypeKHR geometry*: VkAccelerationStructureGeometryDataKHR flags*: VkGeometryFlagsKHR - VkAccelerationStructureBuildGeometryInfoKHR* {.byref.} = object + VkAccelerationStructureBuildGeometryInfoKHR* = object sType*: VkStructureType pNext*: pointer `type`*: VkAccelerationStructureTypeKHR @@ -9980,13 +9980,13 @@ type ppGeometries*: ptr ptr VkAccelerationStructureGeometryKHR scratchData*: VkDeviceOrHostAddressKHR - VkAccelerationStructureBuildRangeInfoKHR* {.byref.} = object + VkAccelerationStructureBuildRangeInfoKHR* = object primitiveCount*: uint32 primitiveOffset*: uint32 firstVertex*: uint32 transformOffset*: uint32 - VkAccelerationStructureCreateInfoKHR* {.byref.} = object + VkAccelerationStructureCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer createFlags*: VkAccelerationStructureCreateFlagsKHR @@ -9996,7 +9996,7 @@ type `type`*: VkAccelerationStructureTypeKHR deviceAddress*: VkDeviceAddress - VkAabbPositionsKHR* {.byref.} = object + VkAabbPositionsKHR* = object minX*: float32 minY*: float32 minZ*: float32 @@ -10006,12 +10006,12 @@ type VkAabbPositionsNV* = VkAabbPositionsKHR - VkTransformMatrixKHR* {.byref.} = object + VkTransformMatrixKHR* = object matrix*: array[3, float32] VkTransformMatrixNV* = VkTransformMatrixKHR - VkAccelerationStructureInstanceKHR* {.byref.} = object + VkAccelerationStructureInstanceKHR* = object transform*: VkTransformMatrixKHR instanceCustomIndex*: uint32 mask*: uint32 @@ -10021,73 +10021,73 @@ type VkAccelerationStructureInstanceNV* = VkAccelerationStructureInstanceKHR - VkAccelerationStructureDeviceAddressInfoKHR* {.byref.} = object + VkAccelerationStructureDeviceAddressInfoKHR* = object sType*: VkStructureType pNext*: pointer accelerationStructure*: VkAccelerationStructureKHR - VkAccelerationStructureVersionInfoKHR* {.byref.} = object + VkAccelerationStructureVersionInfoKHR* = object sType*: VkStructureType pNext*: pointer pVersionData*: ptr uint8 - VkCopyAccelerationStructureInfoKHR* {.byref.} = object + VkCopyAccelerationStructureInfoKHR* = object sType*: VkStructureType pNext*: pointer src*: VkAccelerationStructureKHR dst*: VkAccelerationStructureKHR mode*: VkCopyAccelerationStructureModeKHR - VkCopyAccelerationStructureToMemoryInfoKHR* {.byref.} = object + VkCopyAccelerationStructureToMemoryInfoKHR* = object sType*: VkStructureType pNext*: pointer src*: VkAccelerationStructureKHR dst*: VkDeviceOrHostAddressKHR mode*: VkCopyAccelerationStructureModeKHR - VkCopyMemoryToAccelerationStructureInfoKHR* {.byref.} = object + VkCopyMemoryToAccelerationStructureInfoKHR* = object sType*: VkStructureType pNext*: pointer src*: VkDeviceOrHostAddressConstKHR dst*: VkAccelerationStructureKHR mode*: VkCopyAccelerationStructureModeKHR - VkRayTracingPipelineInterfaceCreateInfoKHR* {.byref.} = object + VkRayTracingPipelineInterfaceCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer maxPipelineRayPayloadSize*: uint32 maxPipelineRayHitAttributeSize*: uint32 - VkPipelineLibraryCreateInfoKHR* {.byref.} = object + VkPipelineLibraryCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer libraryCount*: uint32 pLibraries*: ptr VkPipeline - VkRefreshObjectKHR* {.byref.} = object + VkRefreshObjectKHR* = object objectType*: VkObjectType objectHandle*: uint64 flags*: VkRefreshObjectFlagsKHR - VkRefreshObjectListKHR* {.byref.} = object + VkRefreshObjectListKHR* = object sType*: VkStructureType pNext*: pointer objectCount*: uint32 pObjects*: ptr VkRefreshObjectKHR - VkPhysicalDeviceExtendedDynamicStateFeaturesEXT* {.byref.} = object + VkPhysicalDeviceExtendedDynamicStateFeaturesEXT* = object sType*: VkStructureType pNext*: pointer extendedDynamicState*: VkBool32 - VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* {.byref.} = object + VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* = object sType*: VkStructureType pNext*: pointer extendedDynamicState2*: VkBool32 extendedDynamicState2LogicOp*: VkBool32 extendedDynamicState2PatchControlPoints*: VkBool32 - VkPhysicalDeviceExtendedDynamicState3FeaturesEXT* {.byref.} = object + VkPhysicalDeviceExtendedDynamicState3FeaturesEXT* = object sType*: VkStructureType pNext*: pointer extendedDynamicState3TessellationDomainOrigin*: VkBool32 @@ -10122,12 +10122,12 @@ type extendedDynamicState3RepresentativeFragmentTestEnable*: VkBool32 extendedDynamicState3ShadingRateImageEnable*: VkBool32 - VkPhysicalDeviceExtendedDynamicState3PropertiesEXT* {.byref.} = object + VkPhysicalDeviceExtendedDynamicState3PropertiesEXT* = object sType*: VkStructureType pNext*: pointer dynamicPrimitiveTopologyUnrestricted*: VkBool32 - VkColorBlendEquationEXT* {.byref.} = object + VkColorBlendEquationEXT* = object srcColorBlendFactor*: VkBlendFactor dstColorBlendFactor*: VkBlendFactor colorBlendOp*: VkBlendOp @@ -10135,79 +10135,79 @@ type dstAlphaBlendFactor*: VkBlendFactor alphaBlendOp*: VkBlendOp - VkColorBlendAdvancedEXT* {.byref.} = object + VkColorBlendAdvancedEXT* = object advancedBlendOp*: VkBlendOp srcPremultiplied*: VkBool32 dstPremultiplied*: VkBool32 blendOverlap*: VkBlendOverlapEXT clampResults*: VkBool32 - VkRenderPassTransformBeginInfoQCOM* {.byref.} = object + VkRenderPassTransformBeginInfoQCOM* = object sType*: VkStructureType pNext*: pointer transform*: VkSurfaceTransformFlagBitsKHR - VkCopyCommandTransformInfoQCOM* {.byref.} = object + VkCopyCommandTransformInfoQCOM* = object sType*: VkStructureType pNext*: pointer transform*: VkSurfaceTransformFlagBitsKHR - VkCommandBufferInheritanceRenderPassTransformInfoQCOM* {.byref.} = object + VkCommandBufferInheritanceRenderPassTransformInfoQCOM* = object sType*: VkStructureType pNext*: pointer transform*: VkSurfaceTransformFlagBitsKHR renderArea*: VkRect2D - VkPhysicalDeviceDiagnosticsConfigFeaturesNV* {.byref.} = object + VkPhysicalDeviceDiagnosticsConfigFeaturesNV* = object sType*: VkStructureType pNext*: pointer diagnosticsConfig*: VkBool32 - VkDeviceDiagnosticsConfigCreateInfoNV* {.byref.} = object + VkDeviceDiagnosticsConfigCreateInfoNV* = object sType*: VkStructureType pNext*: pointer flags*: VkDeviceDiagnosticsConfigFlagsNV - VkPipelineOfflineCreateInfo* {.byref.} = object + VkPipelineOfflineCreateInfo* = object sType*: VkStructureType pNext*: pointer pipelineIdentifier*: array[VK_UUID_SIZE, uint8] matchControl*: VkPipelineMatchControl poolEntrySize*: VkDeviceSize - VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures* {.byref.} = object + VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures* = object sType*: VkStructureType pNext*: pointer shaderZeroInitializeWorkgroupMemory*: VkBool32 VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR* = VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures - VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* {.byref.} = object + VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* = object sType*: VkStructureType pNext*: pointer shaderSubgroupUniformControlFlow*: VkBool32 - VkPhysicalDeviceRobustness2FeaturesEXT* {.byref.} = object + VkPhysicalDeviceRobustness2FeaturesEXT* = object sType*: VkStructureType pNext*: pointer robustBufferAccess2*: VkBool32 robustImageAccess2*: VkBool32 nullDescriptor*: VkBool32 - VkPhysicalDeviceRobustness2PropertiesEXT* {.byref.} = object + VkPhysicalDeviceRobustness2PropertiesEXT* = object sType*: VkStructureType pNext*: pointer robustStorageBufferAccessSizeAlignment*: VkDeviceSize robustUniformBufferAccessSizeAlignment*: VkDeviceSize - VkPhysicalDeviceImageRobustnessFeatures* {.byref.} = object + VkPhysicalDeviceImageRobustnessFeatures* = object sType*: VkStructureType pNext*: pointer robustImageAccess*: VkBool32 VkPhysicalDeviceImageRobustnessFeaturesEXT* = VkPhysicalDeviceImageRobustnessFeatures - VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* {.byref.} = object + VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* = object sType*: VkStructureType pNext*: pointer workgroupMemoryExplicitLayout*: VkBool32 @@ -10215,7 +10215,7 @@ type workgroupMemoryExplicitLayout8BitAccess*: VkBool32 workgroupMemoryExplicitLayout16BitAccess*: VkBool32 - VkPhysicalDevicePortabilitySubsetFeaturesKHR* {.byref.} = object + VkPhysicalDevicePortabilitySubsetFeaturesKHR* = object sType*: VkStructureType pNext*: pointer constantAlphaColorBlendFactors*: VkBool32 @@ -10234,34 +10234,34 @@ type triangleFans*: VkBool32 vertexAttributeAccessBeyondStride*: VkBool32 - VkPhysicalDevicePortabilitySubsetPropertiesKHR* {.byref.} = object + VkPhysicalDevicePortabilitySubsetPropertiesKHR* = object sType*: VkStructureType pNext*: pointer minVertexInputBindingStrideAlignment*: uint32 - VkPhysicalDevice4444FormatsFeaturesEXT* {.byref.} = object + VkPhysicalDevice4444FormatsFeaturesEXT* = object sType*: VkStructureType pNext*: pointer formatA4R4G4B4*: VkBool32 formatA4B4G4R4*: VkBool32 - VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* {.byref.} = object + VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* = object sType*: VkStructureType pNext*: pointer subpassShading*: VkBool32 - VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI* {.byref.} = object + VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI* = object sType*: VkStructureType pNext*: pointer clustercullingShader*: VkBool32 multiviewClusterCullingShader*: VkBool32 - VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI* {.byref.} = object + VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI* = object sType*: VkStructureType pNext*: pointer clusterShadingRate*: VkBool32 - VkBufferCopy2* {.byref.} = object + VkBufferCopy2* = object sType*: VkStructureType pNext*: pointer srcOffset*: VkDeviceSize @@ -10270,7 +10270,7 @@ type VkBufferCopy2KHR* = VkBufferCopy2 - VkImageCopy2* {.byref.} = object + VkImageCopy2* = object sType*: VkStructureType pNext*: pointer srcSubresource*: VkImageSubresourceLayers @@ -10281,7 +10281,7 @@ type VkImageCopy2KHR* = VkImageCopy2 - VkImageBlit2* {.byref.} = object + VkImageBlit2* = object sType*: VkStructureType pNext*: pointer srcSubresource*: VkImageSubresourceLayers @@ -10291,7 +10291,7 @@ type VkImageBlit2KHR* = VkImageBlit2 - VkBufferImageCopy2* {.byref.} = object + VkBufferImageCopy2* = object sType*: VkStructureType pNext*: pointer bufferOffset*: VkDeviceSize @@ -10303,7 +10303,7 @@ type VkBufferImageCopy2KHR* = VkBufferImageCopy2 - VkImageResolve2* {.byref.} = object + VkImageResolve2* = object sType*: VkStructureType pNext*: pointer srcSubresource*: VkImageSubresourceLayers @@ -10314,7 +10314,7 @@ type VkImageResolve2KHR* = VkImageResolve2 - VkCopyBufferInfo2* {.byref.} = object + VkCopyBufferInfo2* = object sType*: VkStructureType pNext*: pointer srcBuffer*: VkBuffer @@ -10324,7 +10324,7 @@ type VkCopyBufferInfo2KHR* = VkCopyBufferInfo2 - VkCopyImageInfo2* {.byref.} = object + VkCopyImageInfo2* = object sType*: VkStructureType pNext*: pointer srcImage*: VkImage @@ -10336,7 +10336,7 @@ type VkCopyImageInfo2KHR* = VkCopyImageInfo2 - VkBlitImageInfo2* {.byref.} = object + VkBlitImageInfo2* = object sType*: VkStructureType pNext*: pointer srcImage*: VkImage @@ -10349,7 +10349,7 @@ type VkBlitImageInfo2KHR* = VkBlitImageInfo2 - VkCopyBufferToImageInfo2* {.byref.} = object + VkCopyBufferToImageInfo2* = object sType*: VkStructureType pNext*: pointer srcBuffer*: VkBuffer @@ -10360,7 +10360,7 @@ type VkCopyBufferToImageInfo2KHR* = VkCopyBufferToImageInfo2 - VkCopyImageToBufferInfo2* {.byref.} = object + VkCopyImageToBufferInfo2* = object sType*: VkStructureType pNext*: pointer srcImage*: VkImage @@ -10371,7 +10371,7 @@ type VkCopyImageToBufferInfo2KHR* = VkCopyImageToBufferInfo2 - VkResolveImageInfo2* {.byref.} = object + VkResolveImageInfo2* = object sType*: VkStructureType pNext*: pointer srcImage*: VkImage @@ -10383,32 +10383,32 @@ type VkResolveImageInfo2KHR* = VkResolveImageInfo2 - VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT* {.byref.} = object + VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT* = object sType*: VkStructureType pNext*: pointer shaderImageInt64Atomics*: VkBool32 sparseImageInt64Atomics*: VkBool32 - VkFragmentShadingRateAttachmentInfoKHR* {.byref.} = object + VkFragmentShadingRateAttachmentInfoKHR* = object sType*: VkStructureType pNext*: pointer pFragmentShadingRateAttachment*: ptr VkAttachmentReference2 shadingRateAttachmentTexelSize*: VkExtent2D - VkPipelineFragmentShadingRateStateCreateInfoKHR* {.byref.} = object + VkPipelineFragmentShadingRateStateCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer fragmentSize*: VkExtent2D combinerOps*: array[2, VkFragmentShadingRateCombinerOpKHR] - VkPhysicalDeviceFragmentShadingRateFeaturesKHR* {.byref.} = object + VkPhysicalDeviceFragmentShadingRateFeaturesKHR* = object sType*: VkStructureType pNext*: pointer pipelineFragmentShadingRate*: VkBool32 primitiveFragmentShadingRate*: VkBool32 attachmentFragmentShadingRate*: VkBool32 - VkPhysicalDeviceFragmentShadingRatePropertiesKHR* {.byref.} = object + VkPhysicalDeviceFragmentShadingRatePropertiesKHR* = object sType*: VkStructureType pNext*: pointer minFragmentShadingRateAttachmentTexelSize*: VkExtent2D @@ -10429,75 +10429,75 @@ type fragmentShadingRateWithCustomSampleLocations*: VkBool32 fragmentShadingRateStrictMultiplyCombiner*: VkBool32 - VkPhysicalDeviceFragmentShadingRateKHR* {.byref.} = object + VkPhysicalDeviceFragmentShadingRateKHR* = object sType*: VkStructureType pNext*: pointer sampleCounts*: VkSampleCountFlags fragmentSize*: VkExtent2D - VkPhysicalDeviceShaderTerminateInvocationFeatures* {.byref.} = object + VkPhysicalDeviceShaderTerminateInvocationFeatures* = object sType*: VkStructureType pNext*: pointer shaderTerminateInvocation*: VkBool32 VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR* = VkPhysicalDeviceShaderTerminateInvocationFeatures - VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV* {.byref.} = object + VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV* = object sType*: VkStructureType pNext*: pointer fragmentShadingRateEnums*: VkBool32 supersampleFragmentShadingRates*: VkBool32 noInvocationFragmentShadingRates*: VkBool32 - VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV* {.byref.} = object + VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV* = object sType*: VkStructureType pNext*: pointer maxFragmentShadingRateInvocationCount*: VkSampleCountFlagBits - VkPipelineFragmentShadingRateEnumStateCreateInfoNV* {.byref.} = object + VkPipelineFragmentShadingRateEnumStateCreateInfoNV* = object sType*: VkStructureType pNext*: pointer shadingRateType*: VkFragmentShadingRateTypeNV shadingRate*: VkFragmentShadingRateNV combinerOps*: array[2, VkFragmentShadingRateCombinerOpKHR] - VkAccelerationStructureBuildSizesInfoKHR* {.byref.} = object + VkAccelerationStructureBuildSizesInfoKHR* = object sType*: VkStructureType pNext*: pointer accelerationStructureSize*: VkDeviceSize updateScratchSize*: VkDeviceSize buildScratchSize*: VkDeviceSize - VkPhysicalDeviceImage2DViewOf3DFeaturesEXT* {.byref.} = object + VkPhysicalDeviceImage2DViewOf3DFeaturesEXT* = object sType*: VkStructureType pNext*: pointer image2DViewOf3D*: VkBool32 sampler2DViewOf3D*: VkBool32 - VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT* {.byref.} = object + VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT* = object sType*: VkStructureType pNext*: pointer imageSlicedViewOf3D*: VkBool32 - VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT* {.byref.} = object + VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT* = object sType*: VkStructureType pNext*: pointer attachmentFeedbackLoopDynamicState*: VkBool32 - VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT* {.byref.} = object + VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT* = object sType*: VkStructureType pNext*: pointer mutableDescriptorType*: VkBool32 VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE* = VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT - VkMutableDescriptorTypeListEXT* {.byref.} = object + VkMutableDescriptorTypeListEXT* = object descriptorTypeCount*: uint32 pDescriptorTypes*: ptr VkDescriptorType VkMutableDescriptorTypeListVALVE* = VkMutableDescriptorTypeListEXT - VkMutableDescriptorTypeCreateInfoEXT* {.byref.} = object + VkMutableDescriptorTypeCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer mutableDescriptorTypeListCount*: uint32 @@ -10505,27 +10505,27 @@ type VkMutableDescriptorTypeCreateInfoVALVE* = VkMutableDescriptorTypeCreateInfoEXT - VkPhysicalDeviceDepthClipControlFeaturesEXT* {.byref.} = object + VkPhysicalDeviceDepthClipControlFeaturesEXT* = object sType*: VkStructureType pNext*: pointer depthClipControl*: VkBool32 - VkPipelineViewportDepthClipControlCreateInfoEXT* {.byref.} = object + VkPipelineViewportDepthClipControlCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer negativeOneToOne*: VkBool32 - VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* {.byref.} = object + VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* = object sType*: VkStructureType pNext*: pointer vertexInputDynamicState*: VkBool32 - VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* {.byref.} = object + VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* = object sType*: VkStructureType pNext*: pointer externalMemoryRDMA*: VkBool32 - VkVertexInputBindingDescription2EXT* {.byref.} = object + VkVertexInputBindingDescription2EXT* = object sType*: VkStructureType pNext*: pointer binding*: uint32 @@ -10533,7 +10533,7 @@ type inputRate*: VkVertexInputRate divisor*: uint32 - VkVertexInputAttributeDescription2EXT* {.byref.} = object + VkVertexInputAttributeDescription2EXT* = object sType*: VkStructureType pNext*: pointer location*: uint32 @@ -10541,18 +10541,18 @@ type format*: VkFormat offset*: uint32 - VkPhysicalDeviceColorWriteEnableFeaturesEXT* {.byref.} = object + VkPhysicalDeviceColorWriteEnableFeaturesEXT* = object sType*: VkStructureType pNext*: pointer colorWriteEnable*: VkBool32 - VkPipelineColorWriteCreateInfoEXT* {.byref.} = object + VkPipelineColorWriteCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer attachmentCount*: uint32 pColorWriteEnables*: ptr VkBool32 - VkMemoryBarrier2* {.byref.} = object + VkMemoryBarrier2* = object sType*: VkStructureType pNext*: pointer srcStageMask*: VkPipelineStageFlags2 @@ -10562,7 +10562,7 @@ type VkMemoryBarrier2KHR* = VkMemoryBarrier2 - VkImageMemoryBarrier2* {.byref.} = object + VkImageMemoryBarrier2* = object sType*: VkStructureType pNext*: pointer srcStageMask*: VkPipelineStageFlags2 @@ -10578,7 +10578,7 @@ type VkImageMemoryBarrier2KHR* = VkImageMemoryBarrier2 - VkBufferMemoryBarrier2* {.byref.} = object + VkBufferMemoryBarrier2* = object sType*: VkStructureType pNext*: pointer srcStageMask*: VkPipelineStageFlags2 @@ -10593,7 +10593,7 @@ type VkBufferMemoryBarrier2KHR* = VkBufferMemoryBarrier2 - VkDependencyInfo* {.byref.} = object + VkDependencyInfo* = object sType*: VkStructureType pNext*: pointer dependencyFlags*: VkDependencyFlags @@ -10606,7 +10606,7 @@ type VkDependencyInfoKHR* = VkDependencyInfo - VkSemaphoreSubmitInfo* {.byref.} = object + VkSemaphoreSubmitInfo* = object sType*: VkStructureType pNext*: pointer semaphore*: VkSemaphore @@ -10616,7 +10616,7 @@ type VkSemaphoreSubmitInfoKHR* = VkSemaphoreSubmitInfo - VkCommandBufferSubmitInfo* {.byref.} = object + VkCommandBufferSubmitInfo* = object sType*: VkStructureType pNext*: pointer commandBuffer*: VkCommandBuffer @@ -10624,7 +10624,7 @@ type VkCommandBufferSubmitInfoKHR* = VkCommandBufferSubmitInfo - VkSubmitInfo2* {.byref.} = object + VkSubmitInfo2* = object sType*: VkStructureType pNext*: pointer flags*: VkSubmitFlags @@ -10637,30 +10637,30 @@ type VkSubmitInfo2KHR* = VkSubmitInfo2 - VkQueueFamilyCheckpointProperties2NV* {.byref.} = object + VkQueueFamilyCheckpointProperties2NV* = object sType*: VkStructureType pNext*: pointer checkpointExecutionStageMask*: VkPipelineStageFlags2 - VkCheckpointData2NV* {.byref.} = object + VkCheckpointData2NV* = object sType*: VkStructureType pNext*: pointer stage*: VkPipelineStageFlags2 pCheckpointMarker*: pointer - VkPhysicalDeviceSynchronization2Features* {.byref.} = object + VkPhysicalDeviceSynchronization2Features* = object sType*: VkStructureType pNext*: pointer synchronization2*: VkBool32 VkPhysicalDeviceSynchronization2FeaturesKHR* = VkPhysicalDeviceSynchronization2Features - VkPhysicalDeviceHostImageCopyFeaturesEXT* {.byref.} = object + VkPhysicalDeviceHostImageCopyFeaturesEXT* = object sType*: VkStructureType pNext*: pointer hostImageCopy*: VkBool32 - VkPhysicalDeviceHostImageCopyPropertiesEXT* {.byref.} = object + VkPhysicalDeviceHostImageCopyPropertiesEXT* = object sType*: VkStructureType pNext*: pointer copySrcLayoutCount*: uint32 @@ -10670,7 +10670,7 @@ type optimalTilingLayoutUUID*: array[VK_UUID_SIZE, uint8] identicalMemoryTypeRequirements*: VkBool32 - VkMemoryToImageCopyEXT* {.byref.} = object + VkMemoryToImageCopyEXT* = object sType*: VkStructureType pNext*: pointer pHostPointer*: pointer @@ -10680,7 +10680,7 @@ type imageOffset*: VkOffset3D imageExtent*: VkExtent3D - VkImageToMemoryCopyEXT* {.byref.} = object + VkImageToMemoryCopyEXT* = object sType*: VkStructureType pNext*: pointer pHostPointer*: pointer @@ -10690,7 +10690,7 @@ type imageOffset*: VkOffset3D imageExtent*: VkExtent3D - VkCopyMemoryToImageInfoEXT* {.byref.} = object + VkCopyMemoryToImageInfoEXT* = object sType*: VkStructureType pNext*: pointer flags*: VkHostImageCopyFlagsEXT @@ -10699,7 +10699,7 @@ type regionCount*: uint32 pRegions*: ptr VkMemoryToImageCopyEXT - VkCopyImageToMemoryInfoEXT* {.byref.} = object + VkCopyImageToMemoryInfoEXT* = object sType*: VkStructureType pNext*: pointer flags*: VkHostImageCopyFlagsEXT @@ -10708,7 +10708,7 @@ type regionCount*: uint32 pRegions*: ptr VkImageToMemoryCopyEXT - VkCopyImageToImageInfoEXT* {.byref.} = object + VkCopyImageToImageInfoEXT* = object sType*: VkStructureType pNext*: pointer flags*: VkHostImageCopyFlagsEXT @@ -10719,7 +10719,7 @@ type regionCount*: uint32 pRegions*: ptr VkImageCopy2 - VkHostImageLayoutTransitionInfoEXT* {.byref.} = object + VkHostImageLayoutTransitionInfoEXT* = object sType*: VkStructureType pNext*: pointer image*: VkImage @@ -10727,18 +10727,18 @@ type newLayout*: VkImageLayout subresourceRange*: VkImageSubresourceRange - VkSubresourceHostMemcpySizeEXT* {.byref.} = object + VkSubresourceHostMemcpySizeEXT* = object sType*: VkStructureType pNext*: pointer size*: VkDeviceSize - VkHostImageCopyDevicePerformanceQueryEXT* {.byref.} = object + VkHostImageCopyDevicePerformanceQueryEXT* = object sType*: VkStructureType pNext*: pointer optimalDeviceAccess*: VkBool32 identicalMemoryLayout*: VkBool32 - VkPhysicalDeviceVulkanSC10Properties* {.byref.} = object + VkPhysicalDeviceVulkanSC10Properties* = object sType*: VkStructureType pNext*: pointer deviceNoDynamicHostAllocations*: VkBool32 @@ -10760,13 +10760,13 @@ type maxCommandPoolCommandBuffers*: uint32 maxCommandBufferSize*: VkDeviceSize - VkPipelinePoolSize* {.byref.} = object + VkPipelinePoolSize* = object sType*: VkStructureType pNext*: pointer poolEntrySize*: VkDeviceSize poolEntryCount*: uint32 - VkDeviceObjectReservationCreateInfo* {.byref.} = object + VkDeviceObjectReservationCreateInfo* = object sType*: VkStructureType pNext*: pointer pipelineCacheCreateInfoCount*: uint32 @@ -10811,79 +10811,79 @@ type maxTimestampQueriesPerPool*: uint32 maxImmutableSamplersPerDescriptorSetLayout*: uint32 - VkCommandPoolMemoryReservationCreateInfo* {.byref.} = object + VkCommandPoolMemoryReservationCreateInfo* = object sType*: VkStructureType pNext*: pointer commandPoolReservedSize*: VkDeviceSize commandPoolMaxCommandBuffers*: uint32 - VkCommandPoolMemoryConsumption* {.byref.} = object + VkCommandPoolMemoryConsumption* = object sType*: VkStructureType pNext*: pointer commandPoolAllocated*: VkDeviceSize commandPoolReservedSize*: VkDeviceSize commandBufferAllocated*: VkDeviceSize - VkPhysicalDeviceVulkanSC10Features* {.byref.} = object + VkPhysicalDeviceVulkanSC10Features* = object sType*: VkStructureType pNext*: pointer shaderAtomicInstructions*: VkBool32 - VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT* {.byref.} = object + VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT* = object sType*: VkStructureType pNext*: pointer primitivesGeneratedQuery*: VkBool32 primitivesGeneratedQueryWithRasterizerDiscard*: VkBool32 primitivesGeneratedQueryWithNonZeroStreams*: VkBool32 - VkPhysicalDeviceLegacyDitheringFeaturesEXT* {.byref.} = object + VkPhysicalDeviceLegacyDitheringFeaturesEXT* = object sType*: VkStructureType pNext*: pointer legacyDithering*: VkBool32 - VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT* {.byref.} = object + VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT* = object sType*: VkStructureType pNext*: pointer multisampledRenderToSingleSampled*: VkBool32 - VkSubpassResolvePerformanceQueryEXT* {.byref.} = object + VkSubpassResolvePerformanceQueryEXT* = object sType*: VkStructureType pNext*: pointer optimal*: VkBool32 - VkMultisampledRenderToSingleSampledInfoEXT* {.byref.} = object + VkMultisampledRenderToSingleSampledInfoEXT* = object sType*: VkStructureType pNext*: pointer multisampledRenderToSingleSampledEnable*: VkBool32 rasterizationSamples*: VkSampleCountFlagBits - VkPhysicalDevicePipelineProtectedAccessFeaturesEXT* {.byref.} = object + VkPhysicalDevicePipelineProtectedAccessFeaturesEXT* = object sType*: VkStructureType pNext*: pointer pipelineProtectedAccess*: VkBool32 - VkQueueFamilyVideoPropertiesKHR* {.byref.} = object + VkQueueFamilyVideoPropertiesKHR* = object sType*: VkStructureType pNext*: pointer videoCodecOperations*: VkVideoCodecOperationFlagsKHR - VkQueueFamilyQueryResultStatusPropertiesKHR* {.byref.} = object + VkQueueFamilyQueryResultStatusPropertiesKHR* = object sType*: VkStructureType pNext*: pointer queryResultStatusSupport*: VkBool32 - VkVideoProfileListInfoKHR* {.byref.} = object + VkVideoProfileListInfoKHR* = object sType*: VkStructureType pNext*: pointer profileCount*: uint32 pProfiles*: ptr VkVideoProfileInfoKHR - VkPhysicalDeviceVideoFormatInfoKHR* {.byref.} = object + VkPhysicalDeviceVideoFormatInfoKHR* = object sType*: VkStructureType pNext*: pointer imageUsage*: VkImageUsageFlags - VkVideoFormatPropertiesKHR* {.byref.} = object + VkVideoFormatPropertiesKHR* = object sType*: VkStructureType pNext*: pointer format*: VkFormat @@ -10893,7 +10893,7 @@ type imageTiling*: VkImageTiling imageUsageFlags*: VkImageUsageFlags - VkVideoProfileInfoKHR* {.byref.} = object + VkVideoProfileInfoKHR* = object sType*: VkStructureType pNext*: pointer videoCodecOperation*: VkVideoCodecOperationFlagBitsKHR @@ -10901,7 +10901,7 @@ type lumaBitDepth*: VkVideoComponentBitDepthFlagsKHR chromaBitDepth*: VkVideoComponentBitDepthFlagsKHR - VkVideoCapabilitiesKHR* {.byref.} = object + VkVideoCapabilitiesKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkVideoCapabilityFlagsKHR @@ -10914,13 +10914,13 @@ type maxActiveReferencePictures*: uint32 stdHeaderVersion*: VkExtensionProperties - VkVideoSessionMemoryRequirementsKHR* {.byref.} = object + VkVideoSessionMemoryRequirementsKHR* = object sType*: VkStructureType pNext*: pointer memoryBindIndex*: uint32 memoryRequirements*: VkMemoryRequirements - VkBindVideoSessionMemoryInfoKHR* {.byref.} = object + VkBindVideoSessionMemoryInfoKHR* = object sType*: VkStructureType pNext*: pointer memoryBindIndex*: uint32 @@ -10928,7 +10928,7 @@ type memoryOffset*: VkDeviceSize memorySize*: VkDeviceSize - VkVideoPictureResourceInfoKHR* {.byref.} = object + VkVideoPictureResourceInfoKHR* = object sType*: VkStructureType pNext*: pointer codedOffset*: VkOffset2D @@ -10936,23 +10936,23 @@ type baseArrayLayer*: uint32 imageViewBinding*: VkImageView - VkVideoReferenceSlotInfoKHR* {.byref.} = object + VkVideoReferenceSlotInfoKHR* = object sType*: VkStructureType pNext*: pointer slotIndex*: int32 pPictureResource*: ptr VkVideoPictureResourceInfoKHR - VkVideoDecodeCapabilitiesKHR* {.byref.} = object + VkVideoDecodeCapabilitiesKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkVideoDecodeCapabilityFlagsKHR - VkVideoDecodeUsageInfoKHR* {.byref.} = object + VkVideoDecodeUsageInfoKHR* = object sType*: VkStructureType pNext*: pointer videoUsageHints*: VkVideoDecodeUsageFlagsKHR - VkVideoDecodeInfoKHR* {.byref.} = object + VkVideoDecodeInfoKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkVideoDecodeFlagsKHR @@ -10964,12 +10964,12 @@ type referenceSlotCount*: uint32 pReferenceSlots*: ptr VkVideoReferenceSlotInfoKHR - VkPhysicalDeviceVideoMaintenance1FeaturesKHR* {.byref.} = object + VkPhysicalDeviceVideoMaintenance1FeaturesKHR* = object sType*: VkStructureType pNext*: pointer videoMaintenance1*: VkBool32 - VkVideoInlineQueryInfoKHR* {.byref.} = object + VkVideoInlineQueryInfoKHR* = object sType*: VkStructureType pNext*: pointer queryPool*: VkQueryPool @@ -10998,13 +10998,13 @@ type StdVideoDecodeH264PictureInfoFlags* {.nodecl.} = object StdVideoDecodeH264ReferenceInfoFlags* {.nodecl.} = object - VkVideoDecodeH264ProfileInfoKHR* {.byref.} = object + VkVideoDecodeH264ProfileInfoKHR* = object sType*: VkStructureType pNext*: pointer stdProfileIdc*: StdVideoH264ProfileIdc pictureLayout*: VkVideoDecodeH264PictureLayoutFlagBitsKHR - VkVideoDecodeH264CapabilitiesKHR* {.byref.} = object + VkVideoDecodeH264CapabilitiesKHR* = object sType*: VkStructureType pNext*: pointer maxLevelIdc*: StdVideoH264LevelIdc @@ -11012,7 +11012,7 @@ type StdVideoH264SequenceParameterSet* {.nodecl.} = object StdVideoH264PictureParameterSet* {.nodecl.} = object - VkVideoDecodeH264SessionParametersAddInfoKHR* {.byref.} = object + VkVideoDecodeH264SessionParametersAddInfoKHR* = object sType*: VkStructureType pNext*: pointer stdSPSCount*: uint32 @@ -11020,21 +11020,21 @@ type stdPPSCount*: uint32 pStdPPSs*: ptr StdVideoH264PictureParameterSet - VkVideoDecodeH264SessionParametersCreateInfoKHR* {.byref.} = object + VkVideoDecodeH264SessionParametersCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer maxStdSPSCount*: uint32 maxStdPPSCount*: uint32 pParametersAddInfo*: ptr VkVideoDecodeH264SessionParametersAddInfoKHR - VkVideoDecodeH264PictureInfoKHR* {.byref.} = object + VkVideoDecodeH264PictureInfoKHR* = object sType*: VkStructureType pNext*: pointer pStdPictureInfo*: ptr StdVideoDecodeH264PictureInfo sliceCount*: uint32 pSliceOffsets*: ptr uint32 - VkVideoDecodeH264DpbSlotInfoKHR* {.byref.} = object + VkVideoDecodeH264DpbSlotInfoKHR* = object sType*: VkStructureType pNext*: pointer pStdReferenceInfo*: ptr StdVideoDecodeH264ReferenceInfo @@ -11061,17 +11061,17 @@ type StdVideoDecodeH265PictureInfoFlags* {.nodecl.} = object StdVideoDecodeH265ReferenceInfoFlags* {.nodecl.} = object - VkVideoDecodeH265ProfileInfoKHR* {.byref.} = object + VkVideoDecodeH265ProfileInfoKHR* = object sType*: VkStructureType pNext*: pointer stdProfileIdc*: StdVideoH265ProfileIdc - VkVideoDecodeH265CapabilitiesKHR* {.byref.} = object + VkVideoDecodeH265CapabilitiesKHR* = object sType*: VkStructureType pNext*: pointer maxLevelIdc*: StdVideoH265LevelIdc - VkVideoDecodeH265SessionParametersAddInfoKHR* {.byref.} = object + VkVideoDecodeH265SessionParametersAddInfoKHR* = object sType*: VkStructureType pNext*: pointer stdVPSCount*: uint32 @@ -11081,7 +11081,7 @@ type stdPPSCount*: uint32 pStdPPSs*: ptr StdVideoH265PictureParameterSet - VkVideoDecodeH265SessionParametersCreateInfoKHR* {.byref.} = object + VkVideoDecodeH265SessionParametersCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer maxStdVPSCount*: uint32 @@ -11089,14 +11089,14 @@ type maxStdPPSCount*: uint32 pParametersAddInfo*: ptr VkVideoDecodeH265SessionParametersAddInfoKHR - VkVideoDecodeH265PictureInfoKHR* {.byref.} = object + VkVideoDecodeH265PictureInfoKHR* = object sType*: VkStructureType pNext*: pointer pStdPictureInfo*: ptr StdVideoDecodeH265PictureInfo sliceSegmentCount*: uint32 pSliceSegmentOffsets*: ptr uint32 - VkVideoDecodeH265DpbSlotInfoKHR* {.byref.} = object + VkVideoDecodeH265DpbSlotInfoKHR* = object sType*: VkStructureType pNext*: pointer pStdReferenceInfo*: ptr StdVideoDecodeH265ReferenceInfo @@ -11106,23 +11106,23 @@ type StdVideoDecodeAV1PictureInfo* {.nodecl.} = object StdVideoDecodeAV1ReferenceInfo* {.nodecl.} = object - VkVideoDecodeAV1ProfileInfoKHR* {.byref.} = object + VkVideoDecodeAV1ProfileInfoKHR* = object sType*: VkStructureType pNext*: pointer stdProfile*: StdVideoAV1Profile filmGrainSupport*: VkBool32 - VkVideoDecodeAV1CapabilitiesKHR* {.byref.} = object + VkVideoDecodeAV1CapabilitiesKHR* = object sType*: VkStructureType pNext*: pointer maxLevel*: StdVideoAV1Level - VkVideoDecodeAV1SessionParametersCreateInfoKHR* {.byref.} = object + VkVideoDecodeAV1SessionParametersCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer pStdSequenceHeader*: ptr StdVideoAV1SequenceHeader - VkVideoDecodeAV1PictureInfoKHR* {.byref.} = object + VkVideoDecodeAV1PictureInfoKHR* = object sType*: VkStructureType pNext*: pointer pStdPictureInfo*: ptr StdVideoDecodeAV1PictureInfo @@ -11132,12 +11132,12 @@ type pTileOffsets*: ptr uint32 pTileSizes*: ptr uint32 - VkVideoDecodeAV1DpbSlotInfoKHR* {.byref.} = object + VkVideoDecodeAV1DpbSlotInfoKHR* = object sType*: VkStructureType pNext*: pointer pStdReferenceInfo*: ptr StdVideoDecodeAV1ReferenceInfo - VkVideoSessionCreateInfoKHR* {.byref.} = object + VkVideoSessionCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer queueFamilyIndex*: uint32 @@ -11150,29 +11150,29 @@ type maxActiveReferencePictures*: uint32 pStdHeaderVersion*: ptr VkExtensionProperties - VkVideoSessionParametersCreateInfoKHR* {.byref.} = object + VkVideoSessionParametersCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkVideoSessionParametersCreateFlagsKHR videoSessionParametersTemplate*: VkVideoSessionParametersKHR videoSession*: VkVideoSessionKHR - VkVideoSessionParametersUpdateInfoKHR* {.byref.} = object + VkVideoSessionParametersUpdateInfoKHR* = object sType*: VkStructureType pNext*: pointer updateSequenceCount*: uint32 - VkVideoEncodeSessionParametersGetInfoKHR* {.byref.} = object + VkVideoEncodeSessionParametersGetInfoKHR* = object sType*: VkStructureType pNext*: pointer videoSessionParameters*: VkVideoSessionParametersKHR - VkVideoEncodeSessionParametersFeedbackInfoKHR* {.byref.} = object + VkVideoEncodeSessionParametersFeedbackInfoKHR* = object sType*: VkStructureType pNext*: pointer hasOverrides*: VkBool32 - VkVideoBeginCodingInfoKHR* {.byref.} = object + VkVideoBeginCodingInfoKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkVideoBeginCodingFlagsKHR @@ -11181,24 +11181,24 @@ type referenceSlotCount*: uint32 pReferenceSlots*: ptr VkVideoReferenceSlotInfoKHR - VkVideoEndCodingInfoKHR* {.byref.} = object + VkVideoEndCodingInfoKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkVideoEndCodingFlagsKHR - VkVideoCodingControlInfoKHR* {.byref.} = object + VkVideoCodingControlInfoKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkVideoCodingControlFlagsKHR - VkVideoEncodeUsageInfoKHR* {.byref.} = object + VkVideoEncodeUsageInfoKHR* = object sType*: VkStructureType pNext*: pointer videoUsageHints*: VkVideoEncodeUsageFlagsKHR videoContentHints*: VkVideoEncodeContentFlagsKHR tuningMode*: VkVideoEncodeTuningModeKHR - VkVideoEncodeInfoKHR* {.byref.} = object + VkVideoEncodeInfoKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkVideoEncodeFlagsKHR @@ -11211,29 +11211,29 @@ type pReferenceSlots*: ptr VkVideoReferenceSlotInfoKHR precedingExternallyEncodedBytes*: uint32 - VkQueryPoolVideoEncodeFeedbackCreateInfoKHR* {.byref.} = object + VkQueryPoolVideoEncodeFeedbackCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer encodeFeedbackFlags*: VkVideoEncodeFeedbackFlagsKHR - VkVideoEncodeQualityLevelInfoKHR* {.byref.} = object + VkVideoEncodeQualityLevelInfoKHR* = object sType*: VkStructureType pNext*: pointer qualityLevel*: uint32 - VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR* {.byref.} = object + VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR* = object sType*: VkStructureType pNext*: pointer pVideoProfile*: ptr VkVideoProfileInfoKHR qualityLevel*: uint32 - VkVideoEncodeQualityLevelPropertiesKHR* {.byref.} = object + VkVideoEncodeQualityLevelPropertiesKHR* = object sType*: VkStructureType pNext*: pointer preferredRateControlMode*: VkVideoEncodeRateControlModeFlagBitsKHR preferredRateControlLayerCount*: uint32 - VkVideoEncodeRateControlInfoKHR* {.byref.} = object + VkVideoEncodeRateControlInfoKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkVideoEncodeRateControlFlagsKHR @@ -11243,7 +11243,7 @@ type virtualBufferSizeInMs*: uint32 initialVirtualBufferSizeInMs*: uint32 - VkVideoEncodeRateControlLayerInfoKHR* {.byref.} = object + VkVideoEncodeRateControlLayerInfoKHR* = object sType*: VkStructureType pNext*: pointer averageBitrate*: uint64 @@ -11251,7 +11251,7 @@ type frameRateNumerator*: uint32 frameRateDenominator*: uint32 - VkVideoEncodeCapabilitiesKHR* {.byref.} = object + VkVideoEncodeCapabilitiesKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkVideoEncodeCapabilityFlagsKHR @@ -11262,7 +11262,7 @@ type encodeInputPictureGranularity*: VkExtent2D supportedEncodeFeedbackFlags*: VkVideoEncodeFeedbackFlagsKHR - VkVideoEncodeH264CapabilitiesKHR* {.byref.} = object + VkVideoEncodeH264CapabilitiesKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkVideoEncodeH264CapabilityFlagsKHR @@ -11279,7 +11279,7 @@ type requiresGopRemainingFrames*: VkBool32 stdSyntaxFlags*: VkVideoEncodeH264StdFlagsKHR - VkVideoEncodeH264QualityLevelPropertiesKHR* {.byref.} = object + VkVideoEncodeH264QualityLevelPropertiesKHR* = object sType*: VkStructureType pNext*: pointer preferredRateControlFlags*: VkVideoEncodeH264RateControlFlagsKHR @@ -11302,13 +11302,13 @@ type StdVideoEncodeH264RefListModEntry* {.nodecl.} = object StdVideoEncodeH264RefPicMarkingEntry* {.nodecl.} = object - VkVideoEncodeH264SessionCreateInfoKHR* {.byref.} = object + VkVideoEncodeH264SessionCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer useMaxLevelIdc*: VkBool32 maxLevelIdc*: StdVideoH264LevelIdc - VkVideoEncodeH264SessionParametersAddInfoKHR* {.byref.} = object + VkVideoEncodeH264SessionParametersAddInfoKHR* = object sType*: VkStructureType pNext*: pointer stdSPSCount*: uint32 @@ -11316,14 +11316,14 @@ type stdPPSCount*: uint32 pStdPPSs*: ptr StdVideoH264PictureParameterSet - VkVideoEncodeH264SessionParametersCreateInfoKHR* {.byref.} = object + VkVideoEncodeH264SessionParametersCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer maxStdSPSCount*: uint32 maxStdPPSCount*: uint32 pParametersAddInfo*: ptr VkVideoEncodeH264SessionParametersAddInfoKHR - VkVideoEncodeH264SessionParametersGetInfoKHR* {.byref.} = object + VkVideoEncodeH264SessionParametersGetInfoKHR* = object sType*: VkStructureType pNext*: pointer writeStdSPS*: VkBool32 @@ -11331,18 +11331,18 @@ type stdSPSId*: uint32 stdPPSId*: uint32 - VkVideoEncodeH264SessionParametersFeedbackInfoKHR* {.byref.} = object + VkVideoEncodeH264SessionParametersFeedbackInfoKHR* = object sType*: VkStructureType pNext*: pointer hasStdSPSOverrides*: VkBool32 hasStdPPSOverrides*: VkBool32 - VkVideoEncodeH264DpbSlotInfoKHR* {.byref.} = object + VkVideoEncodeH264DpbSlotInfoKHR* = object sType*: VkStructureType pNext*: pointer pStdReferenceInfo*: ptr StdVideoEncodeH264ReferenceInfo - VkVideoEncodeH264PictureInfoKHR* {.byref.} = object + VkVideoEncodeH264PictureInfoKHR* = object sType*: VkStructureType pNext*: pointer naluSliceEntryCount*: uint32 @@ -11350,18 +11350,18 @@ type pStdPictureInfo*: ptr StdVideoEncodeH264PictureInfo generatePrefixNalu*: VkBool32 - VkVideoEncodeH264ProfileInfoKHR* {.byref.} = object + VkVideoEncodeH264ProfileInfoKHR* = object sType*: VkStructureType pNext*: pointer stdProfileIdc*: StdVideoH264ProfileIdc - VkVideoEncodeH264NaluSliceInfoKHR* {.byref.} = object + VkVideoEncodeH264NaluSliceInfoKHR* = object sType*: VkStructureType pNext*: pointer constantQp*: int32 pStdSliceHeader*: ptr StdVideoEncodeH264SliceHeader - VkVideoEncodeH264RateControlInfoKHR* {.byref.} = object + VkVideoEncodeH264RateControlInfoKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkVideoEncodeH264RateControlFlagsKHR @@ -11370,17 +11370,17 @@ type consecutiveBFrameCount*: uint32 temporalLayerCount*: uint32 - VkVideoEncodeH264QpKHR* {.byref.} = object + VkVideoEncodeH264QpKHR* = object qpI*: int32 qpP*: int32 qpB*: int32 - VkVideoEncodeH264FrameSizeKHR* {.byref.} = object + VkVideoEncodeH264FrameSizeKHR* = object frameISize*: uint32 framePSize*: uint32 frameBSize*: uint32 - VkVideoEncodeH264GopRemainingFrameInfoKHR* {.byref.} = object + VkVideoEncodeH264GopRemainingFrameInfoKHR* = object sType*: VkStructureType pNext*: pointer useGopRemainingFrames*: VkBool32 @@ -11388,7 +11388,7 @@ type gopRemainingP*: uint32 gopRemainingB*: uint32 - VkVideoEncodeH264RateControlLayerInfoKHR* {.byref.} = object + VkVideoEncodeH264RateControlLayerInfoKHR* = object sType*: VkStructureType pNext*: pointer useMinQp*: VkBool32 @@ -11398,7 +11398,7 @@ type useMaxFrameSize*: VkBool32 maxFrameSize*: VkVideoEncodeH264FrameSizeKHR - VkVideoEncodeH265CapabilitiesKHR* {.byref.} = object + VkVideoEncodeH265CapabilitiesKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkVideoEncodeH265CapabilityFlagsKHR @@ -11418,7 +11418,7 @@ type requiresGopRemainingFrames*: VkBool32 stdSyntaxFlags*: VkVideoEncodeH265StdFlagsKHR - VkVideoEncodeH265QualityLevelPropertiesKHR* {.byref.} = object + VkVideoEncodeH265QualityLevelPropertiesKHR* = object sType*: VkStructureType pNext*: pointer preferredRateControlFlags*: VkVideoEncodeH265RateControlFlagsKHR @@ -11438,13 +11438,13 @@ type StdVideoEncodeH265ReferenceInfoFlags* {.nodecl.} = object StdVideoEncodeH265ReferenceModificationFlags* {.nodecl.} = object - VkVideoEncodeH265SessionCreateInfoKHR* {.byref.} = object + VkVideoEncodeH265SessionCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer useMaxLevelIdc*: VkBool32 maxLevelIdc*: StdVideoH265LevelIdc - VkVideoEncodeH265SessionParametersAddInfoKHR* {.byref.} = object + VkVideoEncodeH265SessionParametersAddInfoKHR* = object sType*: VkStructureType pNext*: pointer stdVPSCount*: uint32 @@ -11454,7 +11454,7 @@ type stdPPSCount*: uint32 pStdPPSs*: ptr StdVideoH265PictureParameterSet - VkVideoEncodeH265SessionParametersCreateInfoKHR* {.byref.} = object + VkVideoEncodeH265SessionParametersCreateInfoKHR* = object sType*: VkStructureType pNext*: pointer maxStdVPSCount*: uint32 @@ -11462,7 +11462,7 @@ type maxStdPPSCount*: uint32 pParametersAddInfo*: ptr VkVideoEncodeH265SessionParametersAddInfoKHR - VkVideoEncodeH265SessionParametersGetInfoKHR* {.byref.} = object + VkVideoEncodeH265SessionParametersGetInfoKHR* = object sType*: VkStructureType pNext*: pointer writeStdVPS*: VkBool32 @@ -11472,27 +11472,27 @@ type stdSPSId*: uint32 stdPPSId*: uint32 - VkVideoEncodeH265SessionParametersFeedbackInfoKHR* {.byref.} = object + VkVideoEncodeH265SessionParametersFeedbackInfoKHR* = object sType*: VkStructureType pNext*: pointer hasStdVPSOverrides*: VkBool32 hasStdSPSOverrides*: VkBool32 hasStdPPSOverrides*: VkBool32 - VkVideoEncodeH265PictureInfoKHR* {.byref.} = object + VkVideoEncodeH265PictureInfoKHR* = object sType*: VkStructureType pNext*: pointer naluSliceSegmentEntryCount*: uint32 pNaluSliceSegmentEntries*: ptr VkVideoEncodeH265NaluSliceSegmentInfoKHR pStdPictureInfo*: ptr StdVideoEncodeH265PictureInfo - VkVideoEncodeH265NaluSliceSegmentInfoKHR* {.byref.} = object + VkVideoEncodeH265NaluSliceSegmentInfoKHR* = object sType*: VkStructureType pNext*: pointer constantQp*: int32 pStdSliceSegmentHeader*: ptr StdVideoEncodeH265SliceSegmentHeader - VkVideoEncodeH265RateControlInfoKHR* {.byref.} = object + VkVideoEncodeH265RateControlInfoKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkVideoEncodeH265RateControlFlagsKHR @@ -11501,17 +11501,17 @@ type consecutiveBFrameCount*: uint32 subLayerCount*: uint32 - VkVideoEncodeH265QpKHR* {.byref.} = object + VkVideoEncodeH265QpKHR* = object qpI*: int32 qpP*: int32 qpB*: int32 - VkVideoEncodeH265FrameSizeKHR* {.byref.} = object + VkVideoEncodeH265FrameSizeKHR* = object frameISize*: uint32 framePSize*: uint32 frameBSize*: uint32 - VkVideoEncodeH265GopRemainingFrameInfoKHR* {.byref.} = object + VkVideoEncodeH265GopRemainingFrameInfoKHR* = object sType*: VkStructureType pNext*: pointer useGopRemainingFrames*: VkBool32 @@ -11519,7 +11519,7 @@ type gopRemainingP*: uint32 gopRemainingB*: uint32 - VkVideoEncodeH265RateControlLayerInfoKHR* {.byref.} = object + VkVideoEncodeH265RateControlLayerInfoKHR* = object sType*: VkStructureType pNext*: pointer useMinQp*: VkBool32 @@ -11529,63 +11529,63 @@ type useMaxFrameSize*: VkBool32 maxFrameSize*: VkVideoEncodeH265FrameSizeKHR - VkVideoEncodeH265ProfileInfoKHR* {.byref.} = object + VkVideoEncodeH265ProfileInfoKHR* = object sType*: VkStructureType pNext*: pointer stdProfileIdc*: StdVideoH265ProfileIdc - VkVideoEncodeH265DpbSlotInfoKHR* {.byref.} = object + VkVideoEncodeH265DpbSlotInfoKHR* = object sType*: VkStructureType pNext*: pointer pStdReferenceInfo*: ptr StdVideoEncodeH265ReferenceInfo - VkPhysicalDeviceInheritedViewportScissorFeaturesNV* {.byref.} = object + VkPhysicalDeviceInheritedViewportScissorFeaturesNV* = object sType*: VkStructureType pNext*: pointer inheritedViewportScissor2D*: VkBool32 - VkCommandBufferInheritanceViewportScissorInfoNV* {.byref.} = object + VkCommandBufferInheritanceViewportScissorInfoNV* = object sType*: VkStructureType pNext*: pointer viewportScissor2D*: VkBool32 viewportDepthCount*: uint32 pViewportDepths*: ptr VkViewport - VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* {.byref.} = object + VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* = object sType*: VkStructureType pNext*: pointer ycbcr2plane444Formats*: VkBool32 - VkPhysicalDeviceProvokingVertexFeaturesEXT* {.byref.} = object + VkPhysicalDeviceProvokingVertexFeaturesEXT* = object sType*: VkStructureType pNext*: pointer provokingVertexLast*: VkBool32 transformFeedbackPreservesProvokingVertex*: VkBool32 - VkPhysicalDeviceProvokingVertexPropertiesEXT* {.byref.} = object + VkPhysicalDeviceProvokingVertexPropertiesEXT* = object sType*: VkStructureType pNext*: pointer provokingVertexModePerPipeline*: VkBool32 transformFeedbackPreservesTriangleFanProvokingVertex*: VkBool32 - VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* {.byref.} = object + VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer provokingVertexMode*: VkProvokingVertexModeEXT - VkCuModuleCreateInfoNVX* {.byref.} = object + VkCuModuleCreateInfoNVX* = object sType*: VkStructureType pNext*: pointer dataSize*: uint pData*: pointer - VkCuFunctionCreateInfoNVX* {.byref.} = object + VkCuFunctionCreateInfoNVX* = object sType*: VkStructureType pNext*: pointer module*: VkCuModuleNVX pName*: cstring - VkCuLaunchInfoNVX* {.byref.} = object + VkCuLaunchInfoNVX* = object sType*: VkStructureType pNext*: pointer function*: VkCuFunctionNVX @@ -11601,7 +11601,7 @@ type extraCount*: uint pExtras*: ptr pointer - VkPhysicalDeviceDescriptorBufferFeaturesEXT* {.byref.} = object + VkPhysicalDeviceDescriptorBufferFeaturesEXT* = object sType*: VkStructureType pNext*: pointer descriptorBuffer*: VkBool32 @@ -11609,7 +11609,7 @@ type descriptorBufferImageLayoutIgnored*: VkBool32 descriptorBufferPushDescriptors*: VkBool32 - VkPhysicalDeviceDescriptorBufferPropertiesEXT* {.byref.} = object + VkPhysicalDeviceDescriptorBufferPropertiesEXT* = object sType*: VkStructureType pNext*: pointer combinedImageSamplerDescriptorSingleArray*: VkBool32 @@ -11646,30 +11646,30 @@ type resourceDescriptorBufferAddressSpaceSize*: VkDeviceSize descriptorBufferAddressSpaceSize*: VkDeviceSize - VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT* {.byref.} = object + VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT* = object sType*: VkStructureType pNext*: pointer combinedImageSamplerDensityMapDescriptorSize*: uint - VkDescriptorAddressInfoEXT* {.byref.} = object + VkDescriptorAddressInfoEXT* = object sType*: VkStructureType pNext*: pointer address*: VkDeviceAddress range*: VkDeviceSize format*: VkFormat - VkDescriptorBufferBindingInfoEXT* {.byref.} = object + VkDescriptorBufferBindingInfoEXT* = object sType*: VkStructureType pNext*: pointer address*: VkDeviceAddress usage*: VkBufferUsageFlags - VkDescriptorBufferBindingPushDescriptorBufferHandleEXT* {.byref.} = object + VkDescriptorBufferBindingPushDescriptorBufferHandleEXT* = object sType*: VkStructureType pNext*: pointer buffer*: VkBuffer - VkDescriptorDataEXT* {.union, byref.} = object + VkDescriptorDataEXT* {.union.} = object pSampler*: ptr VkSampler pCombinedImageSampler*: ptr VkDescriptorImageInfo pInputAttachmentImage*: ptr VkDescriptorImageInfo @@ -11681,51 +11681,51 @@ type pStorageBuffer*: ptr VkDescriptorAddressInfoEXT accelerationStructure*: VkDeviceAddress - VkDescriptorGetInfoEXT* {.byref.} = object + VkDescriptorGetInfoEXT* = object sType*: VkStructureType pNext*: pointer `type`*: VkDescriptorType data*: VkDescriptorDataEXT - VkBufferCaptureDescriptorDataInfoEXT* {.byref.} = object + VkBufferCaptureDescriptorDataInfoEXT* = object sType*: VkStructureType pNext*: pointer buffer*: VkBuffer - VkImageCaptureDescriptorDataInfoEXT* {.byref.} = object + VkImageCaptureDescriptorDataInfoEXT* = object sType*: VkStructureType pNext*: pointer image*: VkImage - VkImageViewCaptureDescriptorDataInfoEXT* {.byref.} = object + VkImageViewCaptureDescriptorDataInfoEXT* = object sType*: VkStructureType pNext*: pointer imageView*: VkImageView - VkSamplerCaptureDescriptorDataInfoEXT* {.byref.} = object + VkSamplerCaptureDescriptorDataInfoEXT* = object sType*: VkStructureType pNext*: pointer sampler*: VkSampler - VkAccelerationStructureCaptureDescriptorDataInfoEXT* {.byref.} = object + VkAccelerationStructureCaptureDescriptorDataInfoEXT* = object sType*: VkStructureType pNext*: pointer accelerationStructure*: VkAccelerationStructureKHR accelerationStructureNV*: VkAccelerationStructureNV - VkOpaqueCaptureDescriptorDataCreateInfoEXT* {.byref.} = object + VkOpaqueCaptureDescriptorDataCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer opaqueCaptureDescriptorData*: pointer - VkPhysicalDeviceShaderIntegerDotProductFeatures* {.byref.} = object + VkPhysicalDeviceShaderIntegerDotProductFeatures* = object sType*: VkStructureType pNext*: pointer shaderIntegerDotProduct*: VkBool32 VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR* = VkPhysicalDeviceShaderIntegerDotProductFeatures - VkPhysicalDeviceShaderIntegerDotProductProperties* {.byref.} = object + VkPhysicalDeviceShaderIntegerDotProductProperties* = object sType*: VkStructureType pNext*: pointer integerDotProduct8BitUnsignedAccelerated*: VkBool32 @@ -11761,7 +11761,7 @@ type VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR* = VkPhysicalDeviceShaderIntegerDotProductProperties - VkPhysicalDeviceDrmPropertiesEXT* {.byref.} = object + VkPhysicalDeviceDrmPropertiesEXT* = object sType*: VkStructureType pNext*: pointer hasPrimary*: VkBool32 @@ -11771,34 +11771,34 @@ type renderMajor*: int64 renderMinor*: int64 - VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR* {.byref.} = object + VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR* = object sType*: VkStructureType pNext*: pointer fragmentShaderBarycentric*: VkBool32 - VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR* {.byref.} = object + VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR* = object sType*: VkStructureType pNext*: pointer triStripVertexOrderIndependentOfProvokingVertex*: VkBool32 - VkPhysicalDeviceRayTracingMotionBlurFeaturesNV* {.byref.} = object + VkPhysicalDeviceRayTracingMotionBlurFeaturesNV* = object sType*: VkStructureType pNext*: pointer rayTracingMotionBlur*: VkBool32 rayTracingMotionBlurPipelineTraceRaysIndirect*: VkBool32 - VkAccelerationStructureGeometryMotionTrianglesDataNV* {.byref.} = object + VkAccelerationStructureGeometryMotionTrianglesDataNV* = object sType*: VkStructureType pNext*: pointer vertexData*: VkDeviceOrHostAddressConstKHR - VkAccelerationStructureMotionInfoNV* {.byref.} = object + VkAccelerationStructureMotionInfoNV* = object sType*: VkStructureType pNext*: pointer maxInstances*: uint32 flags*: VkAccelerationStructureMotionInfoFlagsNV - VkSRTDataNV* {.byref.} = object + VkSRTDataNV* = object sx*: float32 a*: float32 b*: float32 @@ -11816,7 +11816,7 @@ type ty*: float32 tz*: float32 - VkAccelerationStructureSRTMotionInstanceNV* {.byref.} = object + VkAccelerationStructureSRTMotionInstanceNV* = object transformT0*: VkSRTDataNV transformT1*: VkSRTDataNV instanceCustomIndex*: uint32 @@ -11825,7 +11825,7 @@ type flags*: VkGeometryInstanceFlagsKHR accelerationStructureReference*: uint64 - VkAccelerationStructureMatrixMotionInstanceNV* {.byref.} = object + VkAccelerationStructureMatrixMotionInstanceNV* = object transformT0*: VkTransformMatrixKHR transformT1*: VkTransformMatrixKHR instanceCustomIndex*: uint32 @@ -11834,47 +11834,47 @@ type flags*: VkGeometryInstanceFlagsKHR accelerationStructureReference*: uint64 - VkAccelerationStructureMotionInstanceDataNV* {.union, byref.} = object + VkAccelerationStructureMotionInstanceDataNV* {.union.} = object staticInstance*: VkAccelerationStructureInstanceKHR matrixMotionInstance*: VkAccelerationStructureMatrixMotionInstanceNV srtMotionInstance*: VkAccelerationStructureSRTMotionInstanceNV - VkAccelerationStructureMotionInstanceNV* {.byref.} = object + VkAccelerationStructureMotionInstanceNV* = object `type`*: VkAccelerationStructureMotionInstanceTypeNV flags*: VkAccelerationStructureMotionInstanceFlagsNV data*: VkAccelerationStructureMotionInstanceDataNV VkRemoteAddressNV* = distinct pointer - VkMemoryGetRemoteAddressInfoNV* {.byref.} = object + VkMemoryGetRemoteAddressInfoNV* = object sType*: VkStructureType pNext*: pointer memory*: VkDeviceMemory handleType*: VkExternalMemoryHandleTypeFlagBits - VkImportMemoryBufferCollectionFUCHSIA* {.byref.} = object + VkImportMemoryBufferCollectionFUCHSIA* = object sType*: VkStructureType pNext*: pointer collection*: VkBufferCollectionFUCHSIA index*: uint32 - VkBufferCollectionImageCreateInfoFUCHSIA* {.byref.} = object + VkBufferCollectionImageCreateInfoFUCHSIA* = object sType*: VkStructureType pNext*: pointer collection*: VkBufferCollectionFUCHSIA index*: uint32 - VkBufferCollectionBufferCreateInfoFUCHSIA* {.byref.} = object + VkBufferCollectionBufferCreateInfoFUCHSIA* = object sType*: VkStructureType pNext*: pointer collection*: VkBufferCollectionFUCHSIA index*: uint32 - VkBufferCollectionCreateInfoFUCHSIA* {.byref.} = object + VkBufferCollectionCreateInfoFUCHSIA* = object sType*: VkStructureType pNext*: pointer collectionToken*: zx_handle_t - VkBufferCollectionPropertiesFUCHSIA* {.byref.} = object + VkBufferCollectionPropertiesFUCHSIA* = object sType*: VkStructureType pNext*: pointer memoryTypeBits*: uint32 @@ -11889,19 +11889,19 @@ type suggestedXChromaOffset*: VkChromaLocation suggestedYChromaOffset*: VkChromaLocation - VkBufferConstraintsInfoFUCHSIA* {.byref.} = object + VkBufferConstraintsInfoFUCHSIA* = object sType*: VkStructureType pNext*: pointer createInfo*: VkBufferCreateInfo requiredFormatFeatures*: VkFormatFeatureFlags bufferCollectionConstraints*: VkBufferCollectionConstraintsInfoFUCHSIA - VkSysmemColorSpaceFUCHSIA* {.byref.} = object + VkSysmemColorSpaceFUCHSIA* = object sType*: VkStructureType pNext*: pointer colorSpace*: uint32 - VkImageFormatConstraintsInfoFUCHSIA* {.byref.} = object + VkImageFormatConstraintsInfoFUCHSIA* = object sType*: VkStructureType pNext*: pointer imageCreateInfo*: VkImageCreateInfo @@ -11911,7 +11911,7 @@ type colorSpaceCount*: uint32 pColorSpaces*: ptr VkSysmemColorSpaceFUCHSIA - VkImageConstraintsInfoFUCHSIA* {.byref.} = object + VkImageConstraintsInfoFUCHSIA* = object sType*: VkStructureType pNext*: pointer formatConstraintsCount*: uint32 @@ -11919,7 +11919,7 @@ type bufferCollectionConstraints*: VkBufferCollectionConstraintsInfoFUCHSIA flags*: VkImageConstraintsInfoFlagsFUCHSIA - VkBufferCollectionConstraintsInfoFUCHSIA* {.byref.} = object + VkBufferCollectionConstraintsInfoFUCHSIA* = object sType*: VkStructureType pNext*: pointer minBufferCount*: uint32 @@ -11930,19 +11930,19 @@ type VkCudaModuleNV* = distinct VkNonDispatchableHandle VkCudaFunctionNV* = distinct VkNonDispatchableHandle - VkCudaModuleCreateInfoNV* {.byref.} = object + VkCudaModuleCreateInfoNV* = object sType*: VkStructureType pNext*: pointer dataSize*: uint pData*: pointer - VkCudaFunctionCreateInfoNV* {.byref.} = object + VkCudaFunctionCreateInfoNV* = object sType*: VkStructureType pNext*: pointer module*: VkCudaModuleNV pName*: cstring - VkCudaLaunchInfoNV* {.byref.} = object + VkCudaLaunchInfoNV* = object sType*: VkStructureType pNext*: pointer function*: VkCudaFunctionNV @@ -11958,12 +11958,12 @@ type extraCount*: uint pExtras*: ptr pointer - VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* {.byref.} = object + VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* = object sType*: VkStructureType pNext*: pointer formatRgba10x6WithoutYCbCrSampler*: VkBool32 - VkFormatProperties3* {.byref.} = object + VkFormatProperties3* = object sType*: VkStructureType pNext*: pointer linearTilingFeatures*: VkFormatFeatureFlags2 @@ -11972,18 +11972,18 @@ type VkFormatProperties3KHR* = VkFormatProperties3 - VkDrmFormatModifierPropertiesList2EXT* {.byref.} = object + VkDrmFormatModifierPropertiesList2EXT* = object sType*: VkStructureType pNext*: pointer drmFormatModifierCount*: uint32 pDrmFormatModifierProperties*: ptr VkDrmFormatModifierProperties2EXT - VkDrmFormatModifierProperties2EXT* {.byref.} = object + VkDrmFormatModifierProperties2EXT* = object drmFormatModifier*: uint64 drmFormatModifierPlaneCount*: uint32 drmFormatModifierTilingFeatures*: VkFormatFeatureFlags2 - VkAndroidHardwareBufferFormatProperties2ANDROID* {.byref.} = object + VkAndroidHardwareBufferFormatProperties2ANDROID* = object sType*: VkStructureType pNext*: pointer format*: VkFormat @@ -11995,7 +11995,7 @@ type suggestedXChromaOffset*: VkChromaLocation suggestedYChromaOffset*: VkChromaLocation - VkPipelineRenderingCreateInfo* {.byref.} = object + VkPipelineRenderingCreateInfo* = object sType*: VkStructureType pNext*: pointer viewMask*: uint32 @@ -12006,7 +12006,7 @@ type VkPipelineRenderingCreateInfoKHR* = VkPipelineRenderingCreateInfo - VkRenderingInfo* {.byref.} = object + VkRenderingInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkRenderingFlags @@ -12020,7 +12020,7 @@ type VkRenderingInfoKHR* = VkRenderingInfo - VkRenderingAttachmentInfo* {.byref.} = object + VkRenderingAttachmentInfo* = object sType*: VkStructureType pNext*: pointer imageView*: VkImageView @@ -12034,27 +12034,27 @@ type VkRenderingAttachmentInfoKHR* = VkRenderingAttachmentInfo - VkRenderingFragmentShadingRateAttachmentInfoKHR* {.byref.} = object + VkRenderingFragmentShadingRateAttachmentInfoKHR* = object sType*: VkStructureType pNext*: pointer imageView*: VkImageView imageLayout*: VkImageLayout shadingRateAttachmentTexelSize*: VkExtent2D - VkRenderingFragmentDensityMapAttachmentInfoEXT* {.byref.} = object + VkRenderingFragmentDensityMapAttachmentInfoEXT* = object sType*: VkStructureType pNext*: pointer imageView*: VkImageView imageLayout*: VkImageLayout - VkPhysicalDeviceDynamicRenderingFeatures* {.byref.} = object + VkPhysicalDeviceDynamicRenderingFeatures* = object sType*: VkStructureType pNext*: pointer dynamicRendering*: VkBool32 VkPhysicalDeviceDynamicRenderingFeaturesKHR* = VkPhysicalDeviceDynamicRenderingFeatures - VkCommandBufferInheritanceRenderingInfo* {.byref.} = object + VkCommandBufferInheritanceRenderingInfo* = object sType*: VkStructureType pNext*: pointer flags*: VkRenderingFlags @@ -12067,7 +12067,7 @@ type VkCommandBufferInheritanceRenderingInfoKHR* = VkCommandBufferInheritanceRenderingInfo - VkAttachmentSampleCountInfoAMD* {.byref.} = object + VkAttachmentSampleCountInfoAMD* = object sType*: VkStructureType pNext*: pointer colorAttachmentCount*: uint32 @@ -12076,23 +12076,23 @@ type VkAttachmentSampleCountInfoNV* = VkAttachmentSampleCountInfoAMD - VkMultiviewPerViewAttributesInfoNVX* {.byref.} = object + VkMultiviewPerViewAttributesInfoNVX* = object sType*: VkStructureType pNext*: pointer perViewAttributes*: VkBool32 perViewAttributesPositionXOnly*: VkBool32 - VkPhysicalDeviceImageViewMinLodFeaturesEXT* {.byref.} = object + VkPhysicalDeviceImageViewMinLodFeaturesEXT* = object sType*: VkStructureType pNext*: pointer minLod*: VkBool32 - VkImageViewMinLodCreateInfoEXT* {.byref.} = object + VkImageViewMinLodCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer minLod*: float32 - VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT* {.byref.} = object + VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT* = object sType*: VkStructureType pNext*: pointer rasterizationOrderColorAttachmentAccess*: VkBool32 @@ -12101,144 +12101,144 @@ type VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM* = VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT - VkPhysicalDeviceLinearColorAttachmentFeaturesNV* {.byref.} = object + VkPhysicalDeviceLinearColorAttachmentFeaturesNV* = object sType*: VkStructureType pNext*: pointer linearColorAttachment*: VkBool32 - VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT* {.byref.} = object + VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT* = object sType*: VkStructureType pNext*: pointer graphicsPipelineLibrary*: VkBool32 - VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT* {.byref.} = object + VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT* = object sType*: VkStructureType pNext*: pointer graphicsPipelineLibraryFastLinking*: VkBool32 graphicsPipelineLibraryIndependentInterpolationDecoration*: VkBool32 - VkGraphicsPipelineLibraryCreateInfoEXT* {.byref.} = object + VkGraphicsPipelineLibraryCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer flags*: VkGraphicsPipelineLibraryFlagsEXT - VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE* {.byref.} = object + VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE* = object sType*: VkStructureType pNext*: pointer descriptorSetHostMapping*: VkBool32 - VkDescriptorSetBindingReferenceVALVE* {.byref.} = object + VkDescriptorSetBindingReferenceVALVE* = object sType*: VkStructureType pNext*: pointer descriptorSetLayout*: VkDescriptorSetLayout binding*: uint32 - VkDescriptorSetLayoutHostMappingInfoVALVE* {.byref.} = object + VkDescriptorSetLayoutHostMappingInfoVALVE* = object sType*: VkStructureType pNext*: pointer descriptorOffset*: uint descriptorSize*: uint32 - VkPhysicalDeviceNestedCommandBufferFeaturesEXT* {.byref.} = object + VkPhysicalDeviceNestedCommandBufferFeaturesEXT* = object sType*: VkStructureType pNext*: pointer nestedCommandBuffer*: VkBool32 nestedCommandBufferRendering*: VkBool32 nestedCommandBufferSimultaneousUse*: VkBool32 - VkPhysicalDeviceNestedCommandBufferPropertiesEXT* {.byref.} = object + VkPhysicalDeviceNestedCommandBufferPropertiesEXT* = object sType*: VkStructureType pNext*: pointer maxCommandBufferNestingLevel*: uint32 - VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT* {.byref.} = object + VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT* = object sType*: VkStructureType pNext*: pointer shaderModuleIdentifier*: VkBool32 - VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT* {.byref.} = object + VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT* = object sType*: VkStructureType pNext*: pointer shaderModuleIdentifierAlgorithmUUID*: array[VK_UUID_SIZE, uint8] - VkPipelineShaderStageModuleIdentifierCreateInfoEXT* {.byref.} = object + VkPipelineShaderStageModuleIdentifierCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer identifierSize*: uint32 pIdentifier*: ptr uint8 - VkShaderModuleIdentifierEXT* {.byref.} = object + VkShaderModuleIdentifierEXT* = object sType*: VkStructureType pNext*: pointer identifierSize*: uint32 identifier*: array[VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT, uint8] - VkImageCompressionControlEXT* {.byref.} = object + VkImageCompressionControlEXT* = object sType*: VkStructureType pNext*: pointer flags*: VkImageCompressionFlagsEXT compressionControlPlaneCount*: uint32 pFixedRateFlags*: ptr VkImageCompressionFixedRateFlagsEXT - VkPhysicalDeviceImageCompressionControlFeaturesEXT* {.byref.} = object + VkPhysicalDeviceImageCompressionControlFeaturesEXT* = object sType*: VkStructureType pNext*: pointer imageCompressionControl*: VkBool32 - VkImageCompressionPropertiesEXT* {.byref.} = object + VkImageCompressionPropertiesEXT* = object sType*: VkStructureType pNext*: pointer imageCompressionFlags*: VkImageCompressionFlagsEXT imageCompressionFixedRateFlags*: VkImageCompressionFixedRateFlagsEXT - VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT* {.byref.} = object + VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT* = object sType*: VkStructureType pNext*: pointer imageCompressionControlSwapchain*: VkBool32 - VkImageSubresource2KHR* {.byref.} = object + VkImageSubresource2KHR* = object sType*: VkStructureType pNext*: pointer imageSubresource*: VkImageSubresource VkImageSubresource2EXT* = VkImageSubresource2KHR - VkSubresourceLayout2KHR* {.byref.} = object + VkSubresourceLayout2KHR* = object sType*: VkStructureType pNext*: pointer subresourceLayout*: VkSubresourceLayout VkSubresourceLayout2EXT* = VkSubresourceLayout2KHR - VkRenderPassCreationControlEXT* {.byref.} = object + VkRenderPassCreationControlEXT* = object sType*: VkStructureType pNext*: pointer disallowMerging*: VkBool32 - VkRenderPassCreationFeedbackInfoEXT* {.byref.} = object + VkRenderPassCreationFeedbackInfoEXT* = object postMergeSubpassCount*: uint32 - VkRenderPassCreationFeedbackCreateInfoEXT* {.byref.} = object + VkRenderPassCreationFeedbackCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer pRenderPassFeedback*: ptr VkRenderPassCreationFeedbackInfoEXT - VkRenderPassSubpassFeedbackInfoEXT* {.byref.} = object + VkRenderPassSubpassFeedbackInfoEXT* = object subpassMergeStatus*: VkSubpassMergeStatusEXT description*: array[VK_MAX_DESCRIPTION_SIZE, char] postMergeIndex*: uint32 - VkRenderPassSubpassFeedbackCreateInfoEXT* {.byref.} = object + VkRenderPassSubpassFeedbackCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer pSubpassFeedback*: ptr VkRenderPassSubpassFeedbackInfoEXT - VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT* {.byref.} = object + VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT* = object sType*: VkStructureType pNext*: pointer subpassMergeFeedback*: VkBool32 - VkMicromapBuildInfoEXT* {.byref.} = object + VkMicromapBuildInfoEXT* = object sType*: VkStructureType pNext*: pointer `type`*: VkMicromapTypeEXT @@ -12253,7 +12253,7 @@ type triangleArray*: VkDeviceOrHostAddressConstKHR triangleArrayStride*: VkDeviceSize - VkMicromapCreateInfoEXT* {.byref.} = object + VkMicromapCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer createFlags*: VkMicromapCreateFlagsEXT @@ -12263,63 +12263,63 @@ type `type`*: VkMicromapTypeEXT deviceAddress*: VkDeviceAddress - VkMicromapVersionInfoEXT* {.byref.} = object + VkMicromapVersionInfoEXT* = object sType*: VkStructureType pNext*: pointer pVersionData*: ptr uint8 - VkCopyMicromapInfoEXT* {.byref.} = object + VkCopyMicromapInfoEXT* = object sType*: VkStructureType pNext*: pointer src*: VkMicromapEXT dst*: VkMicromapEXT mode*: VkCopyMicromapModeEXT - VkCopyMicromapToMemoryInfoEXT* {.byref.} = object + VkCopyMicromapToMemoryInfoEXT* = object sType*: VkStructureType pNext*: pointer src*: VkMicromapEXT dst*: VkDeviceOrHostAddressKHR mode*: VkCopyMicromapModeEXT - VkCopyMemoryToMicromapInfoEXT* {.byref.} = object + VkCopyMemoryToMicromapInfoEXT* = object sType*: VkStructureType pNext*: pointer src*: VkDeviceOrHostAddressConstKHR dst*: VkMicromapEXT mode*: VkCopyMicromapModeEXT - VkMicromapBuildSizesInfoEXT* {.byref.} = object + VkMicromapBuildSizesInfoEXT* = object sType*: VkStructureType pNext*: pointer micromapSize*: VkDeviceSize buildScratchSize*: VkDeviceSize discardable*: VkBool32 - VkMicromapUsageEXT* {.byref.} = object + VkMicromapUsageEXT* = object count*: uint32 subdivisionLevel*: uint32 format*: uint32 - VkMicromapTriangleEXT* {.byref.} = object + VkMicromapTriangleEXT* = object dataOffset*: uint32 subdivisionLevel*: uint16 format*: uint16 - VkPhysicalDeviceOpacityMicromapFeaturesEXT* {.byref.} = object + VkPhysicalDeviceOpacityMicromapFeaturesEXT* = object sType*: VkStructureType pNext*: pointer micromap*: VkBool32 micromapCaptureReplay*: VkBool32 micromapHostCommands*: VkBool32 - VkPhysicalDeviceOpacityMicromapPropertiesEXT* {.byref.} = object + VkPhysicalDeviceOpacityMicromapPropertiesEXT* = object sType*: VkStructureType pNext*: pointer maxOpacity2StateSubdivisionLevel*: uint32 maxOpacity4StateSubdivisionLevel*: uint32 - VkAccelerationStructureTrianglesOpacityMicromapEXT* {.byref.} = object + VkAccelerationStructureTrianglesOpacityMicromapEXT* = object sType*: VkStructureType pNext*: pointer indexType*: VkIndexType @@ -12331,17 +12331,17 @@ type ppUsageCounts*: ptr ptr VkMicromapUsageEXT micromap*: VkMicromapEXT - VkPhysicalDeviceDisplacementMicromapFeaturesNV* {.byref.} = object + VkPhysicalDeviceDisplacementMicromapFeaturesNV* = object sType*: VkStructureType pNext*: pointer displacementMicromap*: VkBool32 - VkPhysicalDeviceDisplacementMicromapPropertiesNV* {.byref.} = object + VkPhysicalDeviceDisplacementMicromapPropertiesNV* = object sType*: VkStructureType pNext*: pointer maxDisplacementMicromapSubdivisionLevel*: uint32 - VkAccelerationStructureTrianglesDisplacementMicromapNV* {.byref.} = object + VkAccelerationStructureTrianglesDisplacementMicromapNV* = object sType*: VkStructureType pNext*: pointer displacementBiasAndScaleFormat*: VkFormat @@ -12361,58 +12361,58 @@ type ppUsageCounts*: ptr ptr VkMicromapUsageEXT micromap*: VkMicromapEXT - VkPipelinePropertiesIdentifierEXT* {.byref.} = object + VkPipelinePropertiesIdentifierEXT* = object sType*: VkStructureType pNext*: pointer pipelineIdentifier*: array[VK_UUID_SIZE, uint8] - VkPhysicalDevicePipelinePropertiesFeaturesEXT* {.byref.} = object + VkPhysicalDevicePipelinePropertiesFeaturesEXT* = object sType*: VkStructureType pNext*: pointer pipelinePropertiesIdentifier*: VkBool32 - VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD* {.byref.} = object + VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD* = object sType*: VkStructureType pNext*: pointer shaderEarlyAndLateFragmentTests*: VkBool32 - VkExternalMemoryAcquireUnmodifiedEXT* {.byref.} = object + VkExternalMemoryAcquireUnmodifiedEXT* = object sType*: VkStructureType pNext*: pointer acquireUnmodifiedMemory*: VkBool32 - VkExportMetalObjectCreateInfoEXT* {.byref.} = object + VkExportMetalObjectCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer exportObjectType*: VkExportMetalObjectTypeFlagBitsEXT - VkExportMetalObjectsInfoEXT* {.byref.} = object + VkExportMetalObjectsInfoEXT* = object sType*: VkStructureType pNext*: pointer - VkExportMetalDeviceInfoEXT* {.byref.} = object + VkExportMetalDeviceInfoEXT* = object sType*: VkStructureType pNext*: pointer mtlDevice*: MTLDevice_id - VkExportMetalCommandQueueInfoEXT* {.byref.} = object + VkExportMetalCommandQueueInfoEXT* = object sType*: VkStructureType pNext*: pointer queue*: VkQueue mtlCommandQueue*: MTLCommandQueue_id - VkExportMetalBufferInfoEXT* {.byref.} = object + VkExportMetalBufferInfoEXT* = object sType*: VkStructureType pNext*: pointer memory*: VkDeviceMemory mtlBuffer*: MTLBuffer_id - VkImportMetalBufferInfoEXT* {.byref.} = object + VkImportMetalBufferInfoEXT* = object sType*: VkStructureType pNext*: pointer mtlBuffer*: MTLBuffer_id - VkExportMetalTextureInfoEXT* {.byref.} = object + VkExportMetalTextureInfoEXT* = object sType*: VkStructureType pNext*: pointer image*: VkImage @@ -12421,46 +12421,46 @@ type plane*: VkImageAspectFlagBits mtlTexture*: MTLTexture_id - VkImportMetalTextureInfoEXT* {.byref.} = object + VkImportMetalTextureInfoEXT* = object sType*: VkStructureType pNext*: pointer plane*: VkImageAspectFlagBits mtlTexture*: MTLTexture_id - VkExportMetalIOSurfaceInfoEXT* {.byref.} = object + VkExportMetalIOSurfaceInfoEXT* = object sType*: VkStructureType pNext*: pointer image*: VkImage ioSurface*: IOSurfaceRef - VkImportMetalIOSurfaceInfoEXT* {.byref.} = object + VkImportMetalIOSurfaceInfoEXT* = object sType*: VkStructureType pNext*: pointer ioSurface*: IOSurfaceRef - VkExportMetalSharedEventInfoEXT* {.byref.} = object + VkExportMetalSharedEventInfoEXT* = object sType*: VkStructureType pNext*: pointer semaphore*: VkSemaphore event*: VkEvent mtlSharedEvent*: MTLSharedEvent_id - VkImportMetalSharedEventInfoEXT* {.byref.} = object + VkImportMetalSharedEventInfoEXT* = object sType*: VkStructureType pNext*: pointer mtlSharedEvent*: MTLSharedEvent_id - VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT* {.byref.} = object + VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT* = object sType*: VkStructureType pNext*: pointer nonSeamlessCubeMap*: VkBool32 - VkPhysicalDevicePipelineRobustnessFeaturesEXT* {.byref.} = object + VkPhysicalDevicePipelineRobustnessFeaturesEXT* = object sType*: VkStructureType pNext*: pointer pipelineRobustness*: VkBool32 - VkPipelineRobustnessCreateInfoEXT* {.byref.} = object + VkPipelineRobustnessCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer storageBuffers*: VkPipelineRobustnessBufferBehaviorEXT @@ -12468,7 +12468,7 @@ type vertexInputs*: VkPipelineRobustnessBufferBehaviorEXT images*: VkPipelineRobustnessImageBehaviorEXT - VkPhysicalDevicePipelineRobustnessPropertiesEXT* {.byref.} = object + VkPhysicalDevicePipelineRobustnessPropertiesEXT* = object sType*: VkStructureType pNext*: pointer defaultRobustnessStorageBuffers*: VkPipelineRobustnessBufferBehaviorEXT @@ -12476,21 +12476,21 @@ type defaultRobustnessVertexInputs*: VkPipelineRobustnessBufferBehaviorEXT defaultRobustnessImages*: VkPipelineRobustnessImageBehaviorEXT - VkImageViewSampleWeightCreateInfoQCOM* {.byref.} = object + VkImageViewSampleWeightCreateInfoQCOM* = object sType*: VkStructureType pNext*: pointer filterCenter*: VkOffset2D filterSize*: VkExtent2D numPhases*: uint32 - VkPhysicalDeviceImageProcessingFeaturesQCOM* {.byref.} = object + VkPhysicalDeviceImageProcessingFeaturesQCOM* = object sType*: VkStructureType pNext*: pointer textureSampleWeighted*: VkBool32 textureBoxFilter*: VkBool32 textureBlockMatch*: VkBool32 - VkPhysicalDeviceImageProcessingPropertiesQCOM* {.byref.} = object + VkPhysicalDeviceImageProcessingPropertiesQCOM* = object sType*: VkStructureType pNext*: pointer maxWeightFilterPhases*: uint32 @@ -12498,45 +12498,45 @@ type maxBlockMatchRegion*: VkExtent2D maxBoxFilterBlockSize*: VkExtent2D - VkPhysicalDeviceTilePropertiesFeaturesQCOM* {.byref.} = object + VkPhysicalDeviceTilePropertiesFeaturesQCOM* = object sType*: VkStructureType pNext*: pointer tileProperties*: VkBool32 - VkTilePropertiesQCOM* {.byref.} = object + VkTilePropertiesQCOM* = object sType*: VkStructureType pNext*: pointer tileSize*: VkExtent3D apronSize*: VkExtent2D origin*: VkOffset2D - VkPhysicalDeviceAmigoProfilingFeaturesSEC* {.byref.} = object + VkPhysicalDeviceAmigoProfilingFeaturesSEC* = object sType*: VkStructureType pNext*: pointer amigoProfiling*: VkBool32 - VkAmigoProfilingSubmitInfoSEC* {.byref.} = object + VkAmigoProfilingSubmitInfoSEC* = object sType*: VkStructureType pNext*: pointer firstDrawTimestamp*: uint64 swapBufferTimestamp*: uint64 - VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT* {.byref.} = object + VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT* = object sType*: VkStructureType pNext*: pointer attachmentFeedbackLoopLayout*: VkBool32 - VkPhysicalDeviceDepthClampZeroOneFeaturesEXT* {.byref.} = object + VkPhysicalDeviceDepthClampZeroOneFeaturesEXT* = object sType*: VkStructureType pNext*: pointer depthClampZeroOne*: VkBool32 - VkPhysicalDeviceAddressBindingReportFeaturesEXT* {.byref.} = object + VkPhysicalDeviceAddressBindingReportFeaturesEXT* = object sType*: VkStructureType pNext*: pointer reportAddressBinding*: VkBool32 - VkDeviceAddressBindingCallbackDataEXT* {.byref.} = object + VkDeviceAddressBindingCallbackDataEXT* = object sType*: VkStructureType pNext*: pointer flags*: VkDeviceAddressBindingFlagsEXT @@ -12544,12 +12544,12 @@ type size*: VkDeviceSize bindingType*: VkDeviceAddressBindingTypeEXT - VkPhysicalDeviceOpticalFlowFeaturesNV* {.byref.} = object + VkPhysicalDeviceOpticalFlowFeaturesNV* = object sType*: VkStructureType pNext*: pointer opticalFlow*: VkBool32 - VkPhysicalDeviceOpticalFlowPropertiesNV* {.byref.} = object + VkPhysicalDeviceOpticalFlowPropertiesNV* = object sType*: VkStructureType pNext*: pointer supportedOutputGridSizes*: VkOpticalFlowGridSizeFlagsNV @@ -12564,17 +12564,17 @@ type maxHeight*: uint32 maxNumRegionsOfInterest*: uint32 - VkOpticalFlowImageFormatInfoNV* {.byref.} = object + VkOpticalFlowImageFormatInfoNV* = object sType*: VkStructureType pNext*: pointer usage*: VkOpticalFlowUsageFlagsNV - VkOpticalFlowImageFormatPropertiesNV* {.byref.} = object + VkOpticalFlowImageFormatPropertiesNV* = object sType*: VkStructureType pNext*: pointer format*: VkFormat - VkOpticalFlowSessionCreateInfoNV* {.byref.} = object + VkOpticalFlowSessionCreateInfoNV* = object sType*: VkStructureType pNext*: pointer width*: uint32 @@ -12587,44 +12587,44 @@ type performanceLevel*: VkOpticalFlowPerformanceLevelNV flags*: VkOpticalFlowSessionCreateFlagsNV - VkOpticalFlowSessionCreatePrivateDataInfoNV* {.byref.} = object + VkOpticalFlowSessionCreatePrivateDataInfoNV* = object sType*: VkStructureType pNext*: pointer id*: uint32 size*: uint32 pPrivateData*: pointer - VkOpticalFlowExecuteInfoNV* {.byref.} = object + VkOpticalFlowExecuteInfoNV* = object sType*: VkStructureType pNext*: pointer flags*: VkOpticalFlowExecuteFlagsNV regionCount*: uint32 pRegions*: ptr VkRect2D - VkPhysicalDeviceFaultFeaturesEXT* {.byref.} = object + VkPhysicalDeviceFaultFeaturesEXT* = object sType*: VkStructureType pNext*: pointer deviceFault*: VkBool32 deviceFaultVendorBinary*: VkBool32 - VkDeviceFaultAddressInfoEXT* {.byref.} = object + VkDeviceFaultAddressInfoEXT* = object addressType*: VkDeviceFaultAddressTypeEXT reportedAddress*: VkDeviceAddress addressPrecision*: VkDeviceSize - VkDeviceFaultVendorInfoEXT* {.byref.} = object + VkDeviceFaultVendorInfoEXT* = object description*: array[VK_MAX_DESCRIPTION_SIZE, char] vendorFaultCode*: uint64 vendorFaultData*: uint64 - VkDeviceFaultCountsEXT* {.byref.} = object + VkDeviceFaultCountsEXT* = object sType*: VkStructureType pNext*: pointer addressInfoCount*: uint32 vendorInfoCount*: uint32 vendorBinarySize*: VkDeviceSize - VkDeviceFaultInfoEXT* {.byref.} = object + VkDeviceFaultInfoEXT* = object sType*: VkStructureType pNext*: pointer description*: array[VK_MAX_DESCRIPTION_SIZE, char] @@ -12632,7 +12632,7 @@ type pVendorInfos*: ptr VkDeviceFaultVendorInfoEXT pVendorBinaryData*: pointer - VkDeviceFaultVendorBinaryHeaderVersionOneEXT* {.byref.} = object + VkDeviceFaultVendorBinaryHeaderVersionOneEXT* = object headerSize*: uint32 headerVersion*: VkDeviceFaultVendorBinaryHeaderVersionEXT vendorID*: uint32 @@ -12645,44 +12645,44 @@ type engineVersion*: uint32 apiVersion*: uint32 - VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT* {.byref.} = object + VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT* = object sType*: VkStructureType pNext*: pointer pipelineLibraryGroupHandles*: VkBool32 - VkDepthBiasInfoEXT* {.byref.} = object + VkDepthBiasInfoEXT* = object sType*: VkStructureType pNext*: pointer depthBiasConstantFactor*: float32 depthBiasClamp*: float32 depthBiasSlopeFactor*: float32 - VkDepthBiasRepresentationInfoEXT* {.byref.} = object + VkDepthBiasRepresentationInfoEXT* = object sType*: VkStructureType pNext*: pointer depthBiasRepresentation*: VkDepthBiasRepresentationEXT depthBiasExact*: VkBool32 - VkDecompressMemoryRegionNV* {.byref.} = object + VkDecompressMemoryRegionNV* = object srcAddress*: VkDeviceAddress dstAddress*: VkDeviceAddress compressedSize*: VkDeviceSize decompressedSize*: VkDeviceSize decompressionMethod*: VkMemoryDecompressionMethodFlagsNV - VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM* {.byref.} = object + VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM* = object sType*: VkStructureType pNext*: pointer shaderCoreMask*: uint64 shaderCoreCount*: uint32 shaderWarpsPerCore*: uint32 - VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM* {.byref.} = object + VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM* = object sType*: VkStructureType pNext*: pointer shaderCoreBuiltins*: VkBool32 - VkFrameBoundaryEXT* {.byref.} = object + VkFrameBoundaryEXT* = object sType*: VkStructureType pNext*: pointer flags*: VkFrameBoundaryFlagsEXT @@ -12695,22 +12695,22 @@ type tagSize*: uint pTag*: pointer - VkPhysicalDeviceFrameBoundaryFeaturesEXT* {.byref.} = object + VkPhysicalDeviceFrameBoundaryFeaturesEXT* = object sType*: VkStructureType pNext*: pointer frameBoundary*: VkBool32 - VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT* {.byref.} = object + VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT* = object sType*: VkStructureType pNext*: pointer dynamicRenderingUnusedAttachments*: VkBool32 - VkSurfacePresentModeEXT* {.byref.} = object + VkSurfacePresentModeEXT* = object sType*: VkStructureType pNext*: pointer presentMode*: VkPresentModeKHR - VkSurfacePresentScalingCapabilitiesEXT* {.byref.} = object + VkSurfacePresentScalingCapabilitiesEXT* = object sType*: VkStructureType pNext*: pointer supportedPresentScaling*: VkPresentScalingFlagsEXT @@ -12719,50 +12719,50 @@ type minScaledImageExtent*: VkExtent2D maxScaledImageExtent*: VkExtent2D - VkSurfacePresentModeCompatibilityEXT* {.byref.} = object + VkSurfacePresentModeCompatibilityEXT* = object sType*: VkStructureType pNext*: pointer presentModeCount*: uint32 pPresentModes*: ptr VkPresentModeKHR - VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT* {.byref.} = object + VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT* = object sType*: VkStructureType pNext*: pointer swapchainMaintenance1*: VkBool32 - VkSwapchainPresentFenceInfoEXT* {.byref.} = object + VkSwapchainPresentFenceInfoEXT* = object sType*: VkStructureType pNext*: pointer swapchainCount*: uint32 pFences*: ptr VkFence - VkSwapchainPresentModesCreateInfoEXT* {.byref.} = object + VkSwapchainPresentModesCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer presentModeCount*: uint32 pPresentModes*: ptr VkPresentModeKHR - VkSwapchainPresentModeInfoEXT* {.byref.} = object + VkSwapchainPresentModeInfoEXT* = object sType*: VkStructureType pNext*: pointer swapchainCount*: uint32 pPresentModes*: ptr VkPresentModeKHR - VkSwapchainPresentScalingCreateInfoEXT* {.byref.} = object + VkSwapchainPresentScalingCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer scalingBehavior*: VkPresentScalingFlagsEXT presentGravityX*: VkPresentGravityFlagsEXT presentGravityY*: VkPresentGravityFlagsEXT - VkReleaseSwapchainImagesInfoEXT* {.byref.} = object + VkReleaseSwapchainImagesInfoEXT* = object sType*: VkStructureType pNext*: pointer swapchain*: VkSwapchainKHR imageIndexCount*: uint32 pImageIndices*: ptr uint32 - VkPhysicalDeviceDepthBiasControlFeaturesEXT* {.byref.} = object + VkPhysicalDeviceDepthBiasControlFeaturesEXT* = object sType*: VkStructureType pNext*: pointer depthBiasControl*: VkBool32 @@ -12770,81 +12770,81 @@ type floatRepresentation*: VkBool32 depthBiasExact*: VkBool32 - VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV* {.byref.} = object + VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV* = object sType*: VkStructureType pNext*: pointer rayTracingInvocationReorder*: VkBool32 - VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV* {.byref.} = object + VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV* = object sType*: VkStructureType pNext*: pointer rayTracingInvocationReorderReorderingHint*: VkRayTracingInvocationReorderModeNV - VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV* {.byref.} = object + VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV* = object sType*: VkStructureType pNext*: pointer extendedSparseAddressSpace*: VkBool32 - VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV* {.byref.} = object + VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV* = object sType*: VkStructureType pNext*: pointer extendedSparseAddressSpaceSize*: VkDeviceSize extendedSparseImageUsageFlags*: VkImageUsageFlags extendedSparseBufferUsageFlags*: VkBufferUsageFlags - VkDirectDriverLoadingInfoLUNARG* {.byref.} = object + VkDirectDriverLoadingInfoLUNARG* = object sType*: VkStructureType pNext*: pointer flags*: VkDirectDriverLoadingFlagsLUNARG pfnGetInstanceProcAddr*: PFN_vkGetInstanceProcAddrLUNARG - VkDirectDriverLoadingListLUNARG* {.byref.} = object + VkDirectDriverLoadingListLUNARG* = object sType*: VkStructureType pNext*: pointer mode*: VkDirectDriverLoadingModeLUNARG driverCount*: uint32 pDrivers*: ptr VkDirectDriverLoadingInfoLUNARG - VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM* {.byref.} = object + VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM* = object sType*: VkStructureType pNext*: pointer multiviewPerViewViewports*: VkBool32 - VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR* {.byref.} = object + VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR* = object sType*: VkStructureType pNext*: pointer rayTracingPositionFetch*: VkBool32 - VkDeviceImageSubresourceInfoKHR* {.byref.} = object + VkDeviceImageSubresourceInfoKHR* = object sType*: VkStructureType pNext*: pointer pCreateInfo*: ptr VkImageCreateInfo pSubresource*: ptr VkImageSubresource2KHR - VkPhysicalDeviceShaderCorePropertiesARM* {.byref.} = object + VkPhysicalDeviceShaderCorePropertiesARM* = object sType*: VkStructureType pNext*: pointer pixelRate*: uint32 texelRate*: uint32 fmaRate*: uint32 - VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM* {.byref.} = object + VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM* = object sType*: VkStructureType pNext*: pointer multiviewPerViewRenderAreas*: VkBool32 - VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM* {.byref.} = object + VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM* = object sType*: VkStructureType pNext*: pointer perViewRenderAreaCount*: uint32 pPerViewRenderAreas*: ptr VkRect2D - VkQueryLowLatencySupportNV* {.byref.} = object + VkQueryLowLatencySupportNV* = object sType*: VkStructureType pNext*: pointer pQueriedLowLatencyData*: pointer - VkMemoryMapInfoKHR* {.byref.} = object + VkMemoryMapInfoKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkMemoryMapFlags @@ -12852,24 +12852,24 @@ type offset*: VkDeviceSize size*: VkDeviceSize - VkMemoryUnmapInfoKHR* {.byref.} = object + VkMemoryUnmapInfoKHR* = object sType*: VkStructureType pNext*: pointer flags*: VkMemoryUnmapFlagsKHR memory*: VkDeviceMemory - VkPhysicalDeviceShaderObjectFeaturesEXT* {.byref.} = object + VkPhysicalDeviceShaderObjectFeaturesEXT* = object sType*: VkStructureType pNext*: pointer shaderObject*: VkBool32 - VkPhysicalDeviceShaderObjectPropertiesEXT* {.byref.} = object + VkPhysicalDeviceShaderObjectPropertiesEXT* = object sType*: VkStructureType pNext*: pointer shaderBinaryUUID*: array[VK_UUID_SIZE, uint8] shaderBinaryVersion*: uint32 - VkShaderCreateInfoEXT* {.byref.} = object + VkShaderCreateInfoEXT* = object sType*: VkStructureType pNext*: pointer flags*: VkShaderCreateFlagsEXT @@ -12885,32 +12885,32 @@ type pPushConstantRanges*: ptr VkPushConstantRange pSpecializationInfo*: ptr VkSpecializationInfo - VkPhysicalDeviceShaderTileImageFeaturesEXT* {.byref.} = object + VkPhysicalDeviceShaderTileImageFeaturesEXT* = object sType*: VkStructureType pNext*: pointer shaderTileImageColorReadAccess*: VkBool32 shaderTileImageDepthReadAccess*: VkBool32 shaderTileImageStencilReadAccess*: VkBool32 - VkPhysicalDeviceShaderTileImagePropertiesEXT* {.byref.} = object + VkPhysicalDeviceShaderTileImagePropertiesEXT* = object sType*: VkStructureType pNext*: pointer shaderTileImageCoherentReadAccelerated*: VkBool32 shaderTileImageReadSampleFromPixelRateInvocation*: VkBool32 shaderTileImageReadFromHelperInvocation*: VkBool32 - VkImportScreenBufferInfoQNX* {.byref.} = object + VkImportScreenBufferInfoQNX* = object sType*: VkStructureType pNext*: pointer buffer*: ptr screen_buffer - VkScreenBufferPropertiesQNX* {.byref.} = object + VkScreenBufferPropertiesQNX* = object sType*: VkStructureType pNext*: pointer allocationSize*: VkDeviceSize memoryTypeBits*: uint32 - VkScreenBufferFormatPropertiesQNX* {.byref.} = object + VkScreenBufferFormatPropertiesQNX* = object sType*: VkStructureType pNext*: pointer format*: VkFormat @@ -12923,23 +12923,23 @@ type suggestedXChromaOffset*: VkChromaLocation suggestedYChromaOffset*: VkChromaLocation - VkExternalFormatQNX* {.byref.} = object + VkExternalFormatQNX* = object sType*: VkStructureType pNext*: pointer externalFormat*: uint64 - VkPhysicalDeviceExternalMemoryScreenBufferFeaturesQNX* {.byref.} = object + VkPhysicalDeviceExternalMemoryScreenBufferFeaturesQNX* = object sType*: VkStructureType pNext*: pointer screenBufferImport*: VkBool32 - VkPhysicalDeviceCooperativeMatrixFeaturesKHR* {.byref.} = object + VkPhysicalDeviceCooperativeMatrixFeaturesKHR* = object sType*: VkStructureType pNext*: pointer cooperativeMatrix*: VkBool32 cooperativeMatrixRobustBufferAccess*: VkBool32 - VkCooperativeMatrixPropertiesKHR* {.byref.} = object + VkCooperativeMatrixPropertiesKHR* = object sType*: VkStructureType pNext*: pointer MSize*: uint32 @@ -12952,12 +12952,12 @@ type saturatingAccumulation*: VkBool32 scope*: VkScopeKHR - VkPhysicalDeviceCooperativeMatrixPropertiesKHR* {.byref.} = object + VkPhysicalDeviceCooperativeMatrixPropertiesKHR* = object sType*: VkStructureType pNext*: pointer cooperativeMatrixSupportedStages*: VkShaderStageFlags - VkPhysicalDeviceShaderEnqueuePropertiesAMDX* {.byref.} = object + VkPhysicalDeviceShaderEnqueuePropertiesAMDX* = object sType*: VkStructureType pNext*: pointer maxExecutionGraphDepth*: uint32 @@ -12966,12 +12966,12 @@ type maxExecutionGraphShaderPayloadCount*: uint32 executionGraphDispatchAddressAlignment*: uint32 - VkPhysicalDeviceShaderEnqueueFeaturesAMDX* {.byref.} = object + VkPhysicalDeviceShaderEnqueueFeaturesAMDX* = object sType*: VkStructureType pNext*: pointer shaderEnqueue*: VkBool32 - VkExecutionGraphPipelineCreateInfoAMDX* {.byref.} = object + VkExecutionGraphPipelineCreateInfoAMDX* = object sType*: VkStructureType pNext*: pointer flags*: VkPipelineCreateFlags @@ -12982,34 +12982,34 @@ type basePipelineHandle*: VkPipeline basePipelineIndex*: int32 - VkPipelineShaderStageNodeCreateInfoAMDX* {.byref.} = object + VkPipelineShaderStageNodeCreateInfoAMDX* = object sType*: VkStructureType pNext*: pointer pName*: cstring index*: uint32 - VkExecutionGraphPipelineScratchSizeAMDX* {.byref.} = object + VkExecutionGraphPipelineScratchSizeAMDX* = object sType*: VkStructureType pNext*: pointer size*: VkDeviceSize - VkDispatchGraphInfoAMDX* {.byref.} = object + VkDispatchGraphInfoAMDX* = object nodeIndex*: uint32 payloadCount*: uint32 payloads*: VkDeviceOrHostAddressConstAMDX payloadStride*: uint64 - VkDispatchGraphCountInfoAMDX* {.byref.} = object + VkDispatchGraphCountInfoAMDX* = object count*: uint32 infos*: VkDeviceOrHostAddressConstAMDX stride*: uint64 - VkBindMemoryStatusKHR* {.byref.} = object + VkBindMemoryStatusKHR* = object sType*: VkStructureType pNext*: pointer pResult*: ptr VkResult - VkBindDescriptorSetsInfoKHR* {.byref.} = object + VkBindDescriptorSetsInfoKHR* = object sType*: VkStructureType pNext*: pointer stageFlags*: VkShaderStageFlags @@ -13020,7 +13020,7 @@ type dynamicOffsetCount*: uint32 pDynamicOffsets*: ptr uint32 - VkPushConstantsInfoKHR* {.byref.} = object + VkPushConstantsInfoKHR* = object sType*: VkStructureType pNext*: pointer layout*: VkPipelineLayout @@ -13029,7 +13029,7 @@ type size*: uint32 pValues*: pointer - VkPushDescriptorSetInfoKHR* {.byref.} = object + VkPushDescriptorSetInfoKHR* = object sType*: VkStructureType pNext*: pointer stageFlags*: VkShaderStageFlags @@ -13038,7 +13038,7 @@ type descriptorWriteCount*: uint32 pDescriptorWrites*: ptr VkWriteDescriptorSet - VkPushDescriptorSetWithTemplateInfoKHR* {.byref.} = object + VkPushDescriptorSetWithTemplateInfoKHR* = object sType*: VkStructureType pNext*: pointer descriptorUpdateTemplate*: VkDescriptorUpdateTemplate @@ -13046,7 +13046,7 @@ type set*: uint32 pData*: pointer - VkSetDescriptorBufferOffsetsInfoEXT* {.byref.} = object + VkSetDescriptorBufferOffsetsInfoEXT* = object sType*: VkStructureType pNext*: pointer stageFlags*: VkShaderStageFlags @@ -13056,119 +13056,119 @@ type pBufferIndices*: ptr uint32 pOffsets*: ptr VkDeviceSize - VkBindDescriptorBufferEmbeddedSamplersInfoEXT* {.byref.} = object + VkBindDescriptorBufferEmbeddedSamplersInfoEXT* = object sType*: VkStructureType pNext*: pointer stageFlags*: VkShaderStageFlags layout*: VkPipelineLayout set*: uint32 - VkPhysicalDeviceCubicClampFeaturesQCOM* {.byref.} = object + VkPhysicalDeviceCubicClampFeaturesQCOM* = object sType*: VkStructureType pNext*: pointer cubicRangeClamp*: VkBool32 - VkPhysicalDeviceYcbcrDegammaFeaturesQCOM* {.byref.} = object + VkPhysicalDeviceYcbcrDegammaFeaturesQCOM* = object sType*: VkStructureType pNext*: pointer ycbcrDegamma*: VkBool32 - VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM* {.byref.} = object + VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM* = object sType*: VkStructureType pNext*: pointer enableYDegamma*: VkBool32 enableCbCrDegamma*: VkBool32 - VkPhysicalDeviceCubicWeightsFeaturesQCOM* {.byref.} = object + VkPhysicalDeviceCubicWeightsFeaturesQCOM* = object sType*: VkStructureType pNext*: pointer selectableCubicWeights*: VkBool32 - VkSamplerCubicWeightsCreateInfoQCOM* {.byref.} = object + VkSamplerCubicWeightsCreateInfoQCOM* = object sType*: VkStructureType pNext*: pointer cubicWeights*: VkCubicFilterWeightsQCOM - VkBlitImageCubicWeightsInfoQCOM* {.byref.} = object + VkBlitImageCubicWeightsInfoQCOM* = object sType*: VkStructureType pNext*: pointer cubicWeights*: VkCubicFilterWeightsQCOM - VkPhysicalDeviceImageProcessing2FeaturesQCOM* {.byref.} = object + VkPhysicalDeviceImageProcessing2FeaturesQCOM* = object sType*: VkStructureType pNext*: pointer textureBlockMatch2*: VkBool32 - VkPhysicalDeviceImageProcessing2PropertiesQCOM* {.byref.} = object + VkPhysicalDeviceImageProcessing2PropertiesQCOM* = object sType*: VkStructureType pNext*: pointer maxBlockMatchWindow*: VkExtent2D - VkSamplerBlockMatchWindowCreateInfoQCOM* {.byref.} = object + VkSamplerBlockMatchWindowCreateInfoQCOM* = object sType*: VkStructureType pNext*: pointer windowExtent*: VkExtent2D windowCompareMode*: VkBlockMatchWindowCompareModeQCOM - VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV* {.byref.} = object + VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV* = object sType*: VkStructureType pNext*: pointer descriptorPoolOverallocation*: VkBool32 - VkPhysicalDeviceLayeredDriverPropertiesMSFT* {.byref.} = object + VkPhysicalDeviceLayeredDriverPropertiesMSFT* = object sType*: VkStructureType pNext*: pointer underlyingAPI*: VkLayeredDriverUnderlyingApiMSFT - VkPhysicalDevicePerStageDescriptorSetFeaturesNV* {.byref.} = object + VkPhysicalDevicePerStageDescriptorSetFeaturesNV* = object sType*: VkStructureType pNext*: pointer perStageDescriptorSet*: VkBool32 dynamicPipelineLayout*: VkBool32 - VkPhysicalDeviceExternalFormatResolveFeaturesANDROID* {.byref.} = object + VkPhysicalDeviceExternalFormatResolveFeaturesANDROID* = object sType*: VkStructureType pNext*: pointer externalFormatResolve*: VkBool32 - VkPhysicalDeviceExternalFormatResolvePropertiesANDROID* {.byref.} = object + VkPhysicalDeviceExternalFormatResolvePropertiesANDROID* = object sType*: VkStructureType pNext*: pointer nullColorAttachmentWithExternalFormatResolve*: VkBool32 externalFormatResolveChromaOffsetX*: VkChromaLocation externalFormatResolveChromaOffsetY*: VkChromaLocation - VkAndroidHardwareBufferFormatResolvePropertiesANDROID* {.byref.} = object + VkAndroidHardwareBufferFormatResolvePropertiesANDROID* = object sType*: VkStructureType pNext*: pointer colorAttachmentFormat*: VkFormat - VkLatencySleepModeInfoNV* {.byref.} = object + VkLatencySleepModeInfoNV* = object sType*: VkStructureType pNext*: pointer lowLatencyMode*: VkBool32 lowLatencyBoost*: VkBool32 minimumIntervalUs*: uint32 - VkLatencySleepInfoNV* {.byref.} = object + VkLatencySleepInfoNV* = object sType*: VkStructureType pNext*: pointer signalSemaphore*: VkSemaphore value*: uint64 - VkSetLatencyMarkerInfoNV* {.byref.} = object + VkSetLatencyMarkerInfoNV* = object sType*: VkStructureType pNext*: pointer presentID*: uint64 marker*: VkLatencyMarkerNV - VkGetLatencyMarkerInfoNV* {.byref.} = object + VkGetLatencyMarkerInfoNV* = object sType*: VkStructureType pNext*: pointer timingCount*: uint32 pTimings*: ptr VkLatencyTimingsFrameReportNV - VkLatencyTimingsFrameReportNV* {.byref.} = object + VkLatencyTimingsFrameReportNV* = object sType*: VkStructureType pNext*: pointer presentID*: uint64 @@ -13186,119 +13186,119 @@ type gpuRenderStartTimeUs*: uint64 gpuRenderEndTimeUs*: uint64 - VkOutOfBandQueueTypeInfoNV* {.byref.} = object + VkOutOfBandQueueTypeInfoNV* = object sType*: VkStructureType pNext*: pointer queueType*: VkOutOfBandQueueTypeNV - VkLatencySubmissionPresentIdNV* {.byref.} = object + VkLatencySubmissionPresentIdNV* = object sType*: VkStructureType pNext*: pointer presentID*: uint64 - VkSwapchainLatencyCreateInfoNV* {.byref.} = object + VkSwapchainLatencyCreateInfoNV* = object sType*: VkStructureType pNext*: pointer latencyModeEnable*: VkBool32 - VkLatencySurfaceCapabilitiesNV* {.byref.} = object + VkLatencySurfaceCapabilitiesNV* = object sType*: VkStructureType pNext*: pointer presentModeCount*: uint32 pPresentModes*: ptr VkPresentModeKHR - VkPhysicalDeviceCudaKernelLaunchFeaturesNV* {.byref.} = object + VkPhysicalDeviceCudaKernelLaunchFeaturesNV* = object sType*: VkStructureType pNext*: pointer cudaKernelLaunchFeatures*: VkBool32 - VkPhysicalDeviceCudaKernelLaunchPropertiesNV* {.byref.} = object + VkPhysicalDeviceCudaKernelLaunchPropertiesNV* = object sType*: VkStructureType pNext*: pointer computeCapabilityMinor*: uint32 computeCapabilityMajor*: uint32 - VkDeviceQueueShaderCoreControlCreateInfoARM* {.byref.} = object + VkDeviceQueueShaderCoreControlCreateInfoARM* = object sType*: VkStructureType pNext*: pointer shaderCoreCount*: uint32 - VkPhysicalDeviceSchedulingControlsFeaturesARM* {.byref.} = object + VkPhysicalDeviceSchedulingControlsFeaturesARM* = object sType*: VkStructureType pNext*: pointer schedulingControls*: VkBool32 - VkPhysicalDeviceSchedulingControlsPropertiesARM* {.byref.} = object + VkPhysicalDeviceSchedulingControlsPropertiesARM* = object sType*: VkStructureType pNext*: pointer schedulingControlsFlags*: VkPhysicalDeviceSchedulingControlsFlagsARM - VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG* {.byref.} = object + VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG* = object sType*: VkStructureType pNext*: pointer relaxedLineRasterization*: VkBool32 - VkPhysicalDeviceRenderPassStripedFeaturesARM* {.byref.} = object + VkPhysicalDeviceRenderPassStripedFeaturesARM* = object sType*: VkStructureType pNext*: pointer renderPassStriped*: VkBool32 - VkPhysicalDeviceRenderPassStripedPropertiesARM* {.byref.} = object + VkPhysicalDeviceRenderPassStripedPropertiesARM* = object sType*: VkStructureType pNext*: pointer renderPassStripeGranularity*: VkExtent2D maxRenderPassStripes*: uint32 - VkRenderPassStripeInfoARM* {.byref.} = object + VkRenderPassStripeInfoARM* = object sType*: VkStructureType pNext*: pointer stripeArea*: VkRect2D - VkRenderPassStripeBeginInfoARM* {.byref.} = object + VkRenderPassStripeBeginInfoARM* = object sType*: VkStructureType pNext*: pointer stripeInfoCount*: uint32 pStripeInfos*: ptr VkRenderPassStripeInfoARM - VkRenderPassStripeSubmitInfoARM* {.byref.} = object + VkRenderPassStripeSubmitInfoARM* = object sType*: VkStructureType pNext*: pointer stripeSemaphoreInfoCount*: uint32 pStripeSemaphoreInfos*: ptr VkSemaphoreSubmitInfo - VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR* {.byref.} = object + VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR* = object sType*: VkStructureType pNext*: pointer shaderMaximalReconvergence*: VkBool32 - VkPhysicalDeviceShaderSubgroupRotateFeaturesKHR* {.byref.} = object + VkPhysicalDeviceShaderSubgroupRotateFeaturesKHR* = object sType*: VkStructureType pNext*: pointer shaderSubgroupRotate*: VkBool32 shaderSubgroupRotateClustered*: VkBool32 - VkPhysicalDeviceShaderExpectAssumeFeaturesKHR* {.byref.} = object + VkPhysicalDeviceShaderExpectAssumeFeaturesKHR* = object sType*: VkStructureType pNext*: pointer shaderExpectAssume*: VkBool32 - VkPhysicalDeviceShaderFloatControls2FeaturesKHR* {.byref.} = object + VkPhysicalDeviceShaderFloatControls2FeaturesKHR* = object sType*: VkStructureType pNext*: pointer shaderFloatControls2*: VkBool32 - VkPhysicalDeviceDynamicRenderingLocalReadFeaturesKHR* {.byref.} = object + VkPhysicalDeviceDynamicRenderingLocalReadFeaturesKHR* = object sType*: VkStructureType pNext*: pointer dynamicRenderingLocalRead*: VkBool32 - VkRenderingAttachmentLocationInfoKHR* {.byref.} = object + VkRenderingAttachmentLocationInfoKHR* = object sType*: VkStructureType pNext*: pointer colorAttachmentCount*: uint32 pColorAttachmentLocations*: ptr uint32 - VkRenderingInputAttachmentIndexInfoKHR* {.byref.} = object + VkRenderingInputAttachmentIndexInfoKHR* = object sType*: VkStructureType pNext*: pointer colorAttachmentCount*: uint32 @@ -13306,34 +13306,34 @@ type pDepthInputAttachmentIndex*: ptr uint32 pStencilInputAttachmentIndex*: ptr uint32 - VkPhysicalDeviceShaderQuadControlFeaturesKHR* {.byref.} = object + VkPhysicalDeviceShaderQuadControlFeaturesKHR* = object sType*: VkStructureType pNext*: pointer shaderQuadControl*: VkBool32 - VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV* {.byref.} = object + VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV* = object sType*: VkStructureType pNext*: pointer shaderFloat16VectorAtomics*: VkBool32 - VkPhysicalDeviceMapMemoryPlacedFeaturesEXT* {.byref.} = object + VkPhysicalDeviceMapMemoryPlacedFeaturesEXT* = object sType*: VkStructureType pNext*: pointer memoryMapPlaced*: VkBool32 memoryMapRangePlaced*: VkBool32 memoryUnmapReserve*: VkBool32 - VkPhysicalDeviceMapMemoryPlacedPropertiesEXT* {.byref.} = object + VkPhysicalDeviceMapMemoryPlacedPropertiesEXT* = object sType*: VkStructureType pNext*: pointer minPlacedMemoryMapAlignment*: VkDeviceSize - VkMemoryMapPlacedInfoEXT* {.byref.} = object + VkMemoryMapPlacedInfoEXT* = object sType*: VkStructureType pNext*: pointer pPlacedAddress*: pointer - VkPhysicalDeviceRawAccessChainsFeaturesNV* {.byref.} = object + VkPhysicalDeviceRawAccessChainsFeaturesNV* = object sType*: VkStructureType pNext*: pointer shaderRawAccessChains*: VkBool32 diff --git a/tools/generator.nim b/tools/generator.nim index 2485475..93358f2 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -237,7 +237,7 @@ proc genTypes(node: XmlNode, output: var string) = let val = t.attr("alias") output.add(&"\n {name}* = {val}\n") continue - output.add(&"\n {name}* {{.byref.}} = object\n") + output.add(&"\n {name}* = object\n") for member in t.findAll("member"): if member.attr("api") == "vulkansc": continue @@ -284,7 +284,7 @@ proc genTypes(node: XmlNode, output: var string) = let name = t.attr("name") if name == "VkBaseOutStructure" or name == "VkBaseInStructure": continue - output.add(&"\n {name}* {{.union, byref.}} = object\n") + output.add(&"\n {name}* {{.union.}} = object\n") for member in t.findAll("member"): var memberName = member.child("name").innerText if isKeyword(memberName): From af6332b7184d782ca3477669eca7a6d40cd77c45 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Wed, 19 Jun 2024 12:29:45 +0300 Subject: [PATCH 44/57] handle special cases --- src/vulkan.nim | 52 ++++++++++++++++++++++----------------------- tools/generator.nim | 17 ++++++++++----- 2 files changed, 38 insertions(+), 31 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index e774a4b..856883d 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -13467,30 +13467,30 @@ proc newVkDeviceQueueCreateInfo*(sType: VkStructureType = VkStructureType.Device pQueuePriorities: if len(queuePriorities) == 0: nil else: cast[ptr float32](queuePriorities), ) -proc newVkDeviceCreateInfo*(sType: VkStructureType = VkStructureType.DeviceCreateInfo, pNext: pointer = nil, flags: VkDeviceCreateFlags = 0.VkDeviceCreateFlags, queueCreateInfos: openarray[VkDeviceQueueCreateInfo], enabledLayerNames: openarray[cstring], enabledExtensionNames: openarray[cstring], enabledFeatures: openarray[VkPhysicalDeviceFeatures]): VkDeviceCreateInfo = +proc newVkDeviceCreateInfo*(sType: VkStructureType = VkStructureType.DeviceCreateInfo, pNext: pointer = nil, flags: VkDeviceCreateFlags = 0.VkDeviceCreateFlags, queueCreateInfos: openarray[VkDeviceQueueCreateInfo], pEnabledLayerNames: openarray[cstring], pEnabledExtensionNames: openarray[cstring], enabledFeatures: openarray[VkPhysicalDeviceFeatures]): VkDeviceCreateInfo = result = VkDeviceCreateInfo( sType: sType, pNext: pNext, flags: flags, queueCreateInfoCount: len(queueCreateInfos).uint32, pQueueCreateInfos: if len(queueCreateInfos) == 0: nil else: cast[ptr VkDeviceQueueCreateInfo](queueCreateInfos), - enabledLayerCount: len(enabledLayerNames).uint32, - ppEnabledLayerNames: if len(enabledLayerNames) == 0: nil else: cast[cstringArray](enabledLayerNames), - enabledExtensionCount: len(enabledExtensionNames).uint32, - ppEnabledExtensionNames: if len(enabledExtensionNames) == 0: nil else: cast[cstringArray](enabledExtensionNames), + enabledLayerCount: len(pEnabledLayerNames).uint32, + ppEnabledLayerNames: if len(pEnabledLayerNames) == 0: nil else: cast[cstringArray](pEnabledLayerNames), + enabledExtensionCount: len(pEnabledExtensionNames).uint32, + ppEnabledExtensionNames: if len(pEnabledExtensionNames) == 0: nil else: cast[cstringArray](pEnabledExtensionNames), pEnabledFeatures: if len(enabledFeatures) == 0: nil else: cast[ptr VkPhysicalDeviceFeatures](enabledFeatures), ) -proc newVkInstanceCreateInfo*(sType: VkStructureType = VkStructureType.InstanceCreateInfo, pNext: pointer = nil, flags: VkInstanceCreateFlags = 0.VkInstanceCreateFlags, pApplicationInfo: ptr VkApplicationInfo, enabledLayerNames: openarray[cstring], enabledExtensionNames: openarray[cstring]): VkInstanceCreateInfo = +proc newVkInstanceCreateInfo*(sType: VkStructureType = VkStructureType.InstanceCreateInfo, pNext: pointer = nil, flags: VkInstanceCreateFlags = 0.VkInstanceCreateFlags, pApplicationInfo: ptr VkApplicationInfo, pEnabledLayerNames: openarray[cstring], pEnabledExtensionNames: openarray[cstring]): VkInstanceCreateInfo = result = VkInstanceCreateInfo( sType: sType, pNext: pNext, flags: flags, pApplicationInfo: pApplicationInfo, - enabledLayerCount: len(enabledLayerNames).uint32, - ppEnabledLayerNames: if len(enabledLayerNames) == 0: nil else: cast[cstringArray](enabledLayerNames), - enabledExtensionCount: len(enabledExtensionNames).uint32, - ppEnabledExtensionNames: if len(enabledExtensionNames) == 0: nil else: cast[cstringArray](enabledExtensionNames), + enabledLayerCount: len(pEnabledLayerNames).uint32, + ppEnabledLayerNames: if len(pEnabledLayerNames) == 0: nil else: cast[cstringArray](pEnabledLayerNames), + enabledExtensionCount: len(pEnabledExtensionNames).uint32, + ppEnabledExtensionNames: if len(pEnabledExtensionNames) == 0: nil else: cast[cstringArray](pEnabledExtensionNames), ) proc newVkQueueFamilyProperties*(queueFlags: VkQueueFlags, queueCount: uint32, timestampValidBits: uint32, minImageTransferGranularity: VkExtent3D): VkQueueFamilyProperties = @@ -19121,7 +19121,7 @@ proc newVkAccelerationStructureGeometryKHR*(sType: VkStructureType = VkStructure flags: flags, ) -proc newVkAccelerationStructureBuildGeometryInfoKHR*(sType: VkStructureType = VkStructureType.AccelerationStructureBuildGeometryInfoKHR, pNext: pointer = nil, `type`: VkAccelerationStructureTypeKHR, flags: VkBuildAccelerationStructureFlagsKHR = 0.VkBuildAccelerationStructureFlagsKHR, mode: VkBuildAccelerationStructureModeKHR, srcAccelerationStructure: VkAccelerationStructureKHR, dstAccelerationStructure: VkAccelerationStructureKHR, geometryCount: uint32, pGeometries: ptr VkAccelerationStructureGeometryKHR, ppGeometries: ptr ptr VkAccelerationStructureGeometryKHR, scratchData: VkDeviceOrHostAddressKHR): VkAccelerationStructureBuildGeometryInfoKHR = +proc newVkAccelerationStructureBuildGeometryInfoKHR*(sType: VkStructureType = VkStructureType.AccelerationStructureBuildGeometryInfoKHR, pNext: pointer = nil, `type`: VkAccelerationStructureTypeKHR, flags: VkBuildAccelerationStructureFlagsKHR = 0.VkBuildAccelerationStructureFlagsKHR, mode: VkBuildAccelerationStructureModeKHR, srcAccelerationStructure: VkAccelerationStructureKHR, dstAccelerationStructure: VkAccelerationStructureKHR, geometries: openarray[VkAccelerationStructureGeometryKHR], pGeometries: openarray[ptr VkAccelerationStructureGeometryKHR], scratchData: VkDeviceOrHostAddressKHR): VkAccelerationStructureBuildGeometryInfoKHR = result = VkAccelerationStructureBuildGeometryInfoKHR( sType: sType, pNext: pNext, @@ -19130,9 +19130,9 @@ proc newVkAccelerationStructureBuildGeometryInfoKHR*(sType: VkStructureType = Vk mode: mode, srcAccelerationStructure: srcAccelerationStructure, dstAccelerationStructure: dstAccelerationStructure, - geometryCount: geometryCount, - pGeometries: pGeometries, - ppGeometries: ppGeometries, + geometryCount: if len(geometries) == 0: len(pGeometries).uint32 else: len(geometries).uint32, + pGeometries: if len(geometries) == 0: nil else: cast[ptr VkAccelerationStructureGeometryKHR](geometries), + ppGeometries: if len(pGeometries) == 0: nil else: cast[ptr ptr VkAccelerationStructureGeometryKHR](pGeometries), scratchData: scratchData, ) @@ -21781,7 +21781,7 @@ proc newVkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT*(sType: VkStructureType subpassMergeFeedback: subpassMergeFeedback, ) -proc newVkMicromapBuildInfoEXT*(sType: VkStructureType = VkStructureType.MicromapBuildInfoEXT, pNext: pointer = nil, `type`: VkMicromapTypeEXT, flags: VkBuildMicromapFlagsEXT = 0.VkBuildMicromapFlagsEXT, mode: VkBuildMicromapModeEXT, dstMicromap: VkMicromapEXT, usageCountsCount: uint32, pUsageCounts: ptr VkMicromapUsageEXT, ppUsageCounts: ptr ptr VkMicromapUsageEXT, data: VkDeviceOrHostAddressConstKHR, scratchData: VkDeviceOrHostAddressKHR, triangleArray: VkDeviceOrHostAddressConstKHR, triangleArrayStride: VkDeviceSize): VkMicromapBuildInfoEXT = +proc newVkMicromapBuildInfoEXT*(sType: VkStructureType = VkStructureType.MicromapBuildInfoEXT, pNext: pointer = nil, `type`: VkMicromapTypeEXT, flags: VkBuildMicromapFlagsEXT = 0.VkBuildMicromapFlagsEXT, mode: VkBuildMicromapModeEXT, dstMicromap: VkMicromapEXT, usageCounts: openarray[VkMicromapUsageEXT], pUsageCounts: openarray[ptr VkMicromapUsageEXT], data: VkDeviceOrHostAddressConstKHR, scratchData: VkDeviceOrHostAddressKHR, triangleArray: VkDeviceOrHostAddressConstKHR, triangleArrayStride: VkDeviceSize): VkMicromapBuildInfoEXT = result = VkMicromapBuildInfoEXT( sType: sType, pNext: pNext, @@ -21789,9 +21789,9 @@ proc newVkMicromapBuildInfoEXT*(sType: VkStructureType = VkStructureType.Microma flags: flags, mode: mode, dstMicromap: dstMicromap, - usageCountsCount: usageCountsCount, - pUsageCounts: pUsageCounts, - ppUsageCounts: ppUsageCounts, + usageCountsCount: if len(usageCounts) == 0: len(pUsageCounts).uint32 else: len(usageCounts).uint32, + pUsageCounts: if len(usageCounts) == 0: nil else: cast[ptr VkMicromapUsageEXT](usageCounts), + ppUsageCounts: if len(pUsageCounts) == 0: nil else: cast[ptr ptr VkMicromapUsageEXT](pUsageCounts), data: data, scratchData: scratchData, triangleArray: triangleArray, @@ -21884,7 +21884,7 @@ proc newVkPhysicalDeviceOpacityMicromapPropertiesEXT*(sType: VkStructureType = V maxOpacity4StateSubdivisionLevel: maxOpacity4StateSubdivisionLevel, ) -proc newVkAccelerationStructureTrianglesOpacityMicromapEXT*(sType: VkStructureType = VkStructureType.AccelerationStructureTrianglesOpacityMicromapEXT, pNext: pointer = nil, indexType: VkIndexType, indexBuffer: VkDeviceOrHostAddressConstKHR, indexStride: VkDeviceSize, baseTriangle: uint32, usageCountsCount: uint32, pUsageCounts: ptr VkMicromapUsageEXT, ppUsageCounts: ptr ptr VkMicromapUsageEXT, micromap: VkMicromapEXT): VkAccelerationStructureTrianglesOpacityMicromapEXT = +proc newVkAccelerationStructureTrianglesOpacityMicromapEXT*(sType: VkStructureType = VkStructureType.AccelerationStructureTrianglesOpacityMicromapEXT, pNext: pointer = nil, indexType: VkIndexType, indexBuffer: VkDeviceOrHostAddressConstKHR, indexStride: VkDeviceSize, baseTriangle: uint32, usageCounts: openarray[VkMicromapUsageEXT], pUsageCounts: openarray[ptr VkMicromapUsageEXT], micromap: VkMicromapEXT): VkAccelerationStructureTrianglesOpacityMicromapEXT = result = VkAccelerationStructureTrianglesOpacityMicromapEXT( sType: sType, pNext: pNext, @@ -21892,9 +21892,9 @@ proc newVkAccelerationStructureTrianglesOpacityMicromapEXT*(sType: VkStructureTy indexBuffer: indexBuffer, indexStride: indexStride, baseTriangle: baseTriangle, - usageCountsCount: usageCountsCount, - pUsageCounts: pUsageCounts, - ppUsageCounts: ppUsageCounts, + usageCountsCount: if len(usageCounts) == 0: len(pUsageCounts).uint32 else: len(usageCounts).uint32, + pUsageCounts: if len(usageCounts) == 0: nil else: cast[ptr VkMicromapUsageEXT](usageCounts), + ppUsageCounts: if len(pUsageCounts) == 0: nil else: cast[ptr ptr VkMicromapUsageEXT](pUsageCounts), micromap: micromap, ) @@ -21912,7 +21912,7 @@ proc newVkPhysicalDeviceDisplacementMicromapPropertiesNV*(sType: VkStructureType maxDisplacementMicromapSubdivisionLevel: maxDisplacementMicromapSubdivisionLevel, ) -proc newVkAccelerationStructureTrianglesDisplacementMicromapNV*(sType: VkStructureType = VkStructureType.AccelerationStructureTrianglesDisplacementMicromapNV, pNext: pointer = nil, displacementBiasAndScaleFormat: VkFormat, displacementVectorFormat: VkFormat, displacementBiasAndScaleBuffer: VkDeviceOrHostAddressConstKHR, displacementBiasAndScaleStride: VkDeviceSize, displacementVectorBuffer: VkDeviceOrHostAddressConstKHR, displacementVectorStride: VkDeviceSize, displacedMicromapPrimitiveFlags: VkDeviceOrHostAddressConstKHR, displacedMicromapPrimitiveFlagsStride: VkDeviceSize, indexType: VkIndexType, indexBuffer: VkDeviceOrHostAddressConstKHR, indexStride: VkDeviceSize, baseTriangle: uint32, usageCountsCount: uint32, pUsageCounts: ptr VkMicromapUsageEXT, ppUsageCounts: ptr ptr VkMicromapUsageEXT, micromap: VkMicromapEXT): VkAccelerationStructureTrianglesDisplacementMicromapNV = +proc newVkAccelerationStructureTrianglesDisplacementMicromapNV*(sType: VkStructureType = VkStructureType.AccelerationStructureTrianglesDisplacementMicromapNV, pNext: pointer = nil, displacementBiasAndScaleFormat: VkFormat, displacementVectorFormat: VkFormat, displacementBiasAndScaleBuffer: VkDeviceOrHostAddressConstKHR, displacementBiasAndScaleStride: VkDeviceSize, displacementVectorBuffer: VkDeviceOrHostAddressConstKHR, displacementVectorStride: VkDeviceSize, displacedMicromapPrimitiveFlags: VkDeviceOrHostAddressConstKHR, displacedMicromapPrimitiveFlagsStride: VkDeviceSize, indexType: VkIndexType, indexBuffer: VkDeviceOrHostAddressConstKHR, indexStride: VkDeviceSize, baseTriangle: uint32, usageCounts: openarray[VkMicromapUsageEXT], pUsageCounts: openarray[ptr VkMicromapUsageEXT], micromap: VkMicromapEXT): VkAccelerationStructureTrianglesDisplacementMicromapNV = result = VkAccelerationStructureTrianglesDisplacementMicromapNV( sType: sType, pNext: pNext, @@ -21928,9 +21928,9 @@ proc newVkAccelerationStructureTrianglesDisplacementMicromapNV*(sType: VkStructu indexBuffer: indexBuffer, indexStride: indexStride, baseTriangle: baseTriangle, - usageCountsCount: usageCountsCount, - pUsageCounts: pUsageCounts, - ppUsageCounts: ppUsageCounts, + usageCountsCount: if len(usageCounts) == 0: len(pUsageCounts).uint32 else: len(usageCounts).uint32, + pUsageCounts: if len(usageCounts) == 0: nil else: cast[ptr VkMicromapUsageEXT](usageCounts), + ppUsageCounts: if len(pUsageCounts) == 0: nil else: cast[ptr ptr VkMicromapUsageEXT](pUsageCounts), micromap: micromap, ) diff --git a/tools/generator.nim b/tools/generator.nim index 93358f2..0c76955 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -600,10 +600,10 @@ proc uncapitalizeAscii*(s: string): string = proc toArgName(x: string): string = result = x - result.removePrefix('p') + result.removePrefix("p") result = uncapitalizeAscii(result) -proc isException(x: VkStruct): bool = +proc isSpecialCase(x: VkStruct): bool = x.name in ["VkAccelerationStructureBuildGeometryInfoKHR", "VkMicromapBuildInfoEXT", "VkAccelerationStructureTrianglesOpacityMicromapEXT", @@ -618,10 +618,11 @@ proc genConstructors(node: XmlNode, output: var string) = for s in vkStructs: if s.members.len == 0: continue + let isSpecialCase = isSpecialCase(s) output.add(&"\nproc new{s.name}*(") var foundMany = false for i, m in s.members: - if not isException(s) and m.name.isCounter() and + if m.name.isCounter() and i < s.members.high and s.members[i+1].isArray(): foundMany = true continue @@ -652,9 +653,15 @@ proc genConstructors(node: XmlNode, output: var string) = foundMany = false for i, m in s.members: output.add(" ") - if not isException(s) and m.name.isCounter and + if m.name.isCounter and i < s.members.high and s.members[i+1].isArray(): - output.add(&"{m.name}: len({s.members[i+1].name.toArgName}).{m.argType},\n") + output.add(&"{m.name}: ") + if isSpecialCase: + output.add(&"if len({s.members[i+1].name.toArgName}) == 0: ") + output.add(&"len({s.members[i+2].name.toArgName}).{m.argType} ") + output.add(&"else: len({s.members[i+1].name.toArgName}).{m.argType},\n") + else: + output.add(&"len({s.members[i+1].name.toArgName}).{m.argType},\n") foundMany = true continue if foundMany: From 54d906f0385fc7f541068f45dba634d488f321e7 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Wed, 19 Jun 2024 13:13:35 +0300 Subject: [PATCH 45/57] add set helpers --- src/vulkan.nim | 1048 +++++++++++++++++++++++++++++++++++++++++++ tools/generator.nim | 15 +- 2 files changed, 1062 insertions(+), 1 deletion(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 856883d..36dfcf4 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -24891,267 +24891,1315 @@ macro flagsImpl(base: typed, args: varargs[untyped]): untyped = template `{}`*(t: typedesc[VkFramebufferCreateFlags]; args: varargs[VkFramebufferCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkFramebufferCreateFlags; y: VkFramebufferCreateFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkFramebufferCreateFlags; y: VkFramebufferCreateFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkFramebufferCreateFlags; y: VkFramebufferCreateFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkRenderPassCreateFlags]; args: varargs[VkRenderPassCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkRenderPassCreateFlags; y: VkRenderPassCreateFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkRenderPassCreateFlags; y: VkRenderPassCreateFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkRenderPassCreateFlags; y: VkRenderPassCreateFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkSamplerCreateFlags]; args: varargs[VkSamplerCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkSamplerCreateFlags; y: VkSamplerCreateFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkSamplerCreateFlags; y: VkSamplerCreateFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkSamplerCreateFlags; y: VkSamplerCreateFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkPipelineLayoutCreateFlags]; args: varargs[VkPipelineLayoutCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkPipelineLayoutCreateFlags; y: VkPipelineLayoutCreateFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkPipelineLayoutCreateFlags; y: VkPipelineLayoutCreateFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkPipelineLayoutCreateFlags; y: VkPipelineLayoutCreateFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkPipelineCacheCreateFlags]; args: varargs[VkPipelineCacheCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkPipelineCacheCreateFlags; y: VkPipelineCacheCreateFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkPipelineCacheCreateFlags; y: VkPipelineCacheCreateFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkPipelineCacheCreateFlags; y: VkPipelineCacheCreateFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkPipelineDepthStencilStateCreateFlags]; args: varargs[VkPipelineDepthStencilStateCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkPipelineDepthStencilStateCreateFlags; y: VkPipelineDepthStencilStateCreateFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkPipelineDepthStencilStateCreateFlags; y: VkPipelineDepthStencilStateCreateFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkPipelineDepthStencilStateCreateFlags; y: VkPipelineDepthStencilStateCreateFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkPipelineColorBlendStateCreateFlags]; args: varargs[VkPipelineColorBlendStateCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkPipelineColorBlendStateCreateFlags; y: VkPipelineColorBlendStateCreateFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkPipelineColorBlendStateCreateFlags; y: VkPipelineColorBlendStateCreateFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkPipelineColorBlendStateCreateFlags; y: VkPipelineColorBlendStateCreateFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkPipelineShaderStageCreateFlags]; args: varargs[VkPipelineShaderStageCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkPipelineShaderStageCreateFlags; y: VkPipelineShaderStageCreateFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkPipelineShaderStageCreateFlags; y: VkPipelineShaderStageCreateFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkPipelineShaderStageCreateFlags; y: VkPipelineShaderStageCreateFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkDescriptorSetLayoutCreateFlags]; args: varargs[VkDescriptorSetLayoutCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkDescriptorSetLayoutCreateFlags; y: VkDescriptorSetLayoutCreateFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkDescriptorSetLayoutCreateFlags; y: VkDescriptorSetLayoutCreateFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkDescriptorSetLayoutCreateFlags; y: VkDescriptorSetLayoutCreateFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkInstanceCreateFlags]; args: varargs[VkInstanceCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkInstanceCreateFlags; y: VkInstanceCreateFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkInstanceCreateFlags; y: VkInstanceCreateFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkInstanceCreateFlags; y: VkInstanceCreateFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkDeviceQueueCreateFlags]; args: varargs[VkDeviceQueueCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkDeviceQueueCreateFlags; y: VkDeviceQueueCreateFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkDeviceQueueCreateFlags; y: VkDeviceQueueCreateFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkDeviceQueueCreateFlags; y: VkDeviceQueueCreateFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkQueueFlags]; args: varargs[VkQueueFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkQueueFlags; y: VkQueueFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkQueueFlags; y: VkQueueFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkQueueFlags; y: VkQueueFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkMemoryPropertyFlags]; args: varargs[VkMemoryPropertyFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkMemoryPropertyFlags; y: VkMemoryPropertyFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkMemoryPropertyFlags; y: VkMemoryPropertyFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkMemoryPropertyFlags; y: VkMemoryPropertyFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkMemoryHeapFlags]; args: varargs[VkMemoryHeapFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkMemoryHeapFlags; y: VkMemoryHeapFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkMemoryHeapFlags; y: VkMemoryHeapFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkMemoryHeapFlags; y: VkMemoryHeapFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkAccessFlags]; args: varargs[VkAccessFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkAccessFlags; y: VkAccessFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkAccessFlags; y: VkAccessFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkAccessFlags; y: VkAccessFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkBufferUsageFlags]; args: varargs[VkBufferUsageFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkBufferUsageFlags; y: VkBufferUsageFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkBufferUsageFlags; y: VkBufferUsageFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkBufferUsageFlags; y: VkBufferUsageFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkBufferCreateFlags]; args: varargs[VkBufferCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkBufferCreateFlags; y: VkBufferCreateFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkBufferCreateFlags; y: VkBufferCreateFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkBufferCreateFlags; y: VkBufferCreateFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkShaderStageFlags]; args: varargs[VkShaderStageFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkShaderStageFlags; y: VkShaderStageFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkShaderStageFlags; y: VkShaderStageFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkShaderStageFlags; y: VkShaderStageFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkImageUsageFlags]; args: varargs[VkImageUsageFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkImageUsageFlags; y: VkImageUsageFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkImageUsageFlags; y: VkImageUsageFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkImageUsageFlags; y: VkImageUsageFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkImageCreateFlags]; args: varargs[VkImageCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkImageCreateFlags; y: VkImageCreateFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkImageCreateFlags; y: VkImageCreateFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkImageCreateFlags; y: VkImageCreateFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkImageViewCreateFlags]; args: varargs[VkImageViewCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkImageViewCreateFlags; y: VkImageViewCreateFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkImageViewCreateFlags; y: VkImageViewCreateFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkImageViewCreateFlags; y: VkImageViewCreateFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkPipelineCreateFlags]; args: varargs[VkPipelineCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkPipelineCreateFlags; y: VkPipelineCreateFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkPipelineCreateFlags; y: VkPipelineCreateFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkPipelineCreateFlags; y: VkPipelineCreateFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkColorComponentFlags]; args: varargs[VkColorComponentFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkColorComponentFlags; y: VkColorComponentFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkColorComponentFlags; y: VkColorComponentFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkColorComponentFlags; y: VkColorComponentFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkFenceCreateFlags]; args: varargs[VkFenceCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkFenceCreateFlags; y: VkFenceCreateFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkFenceCreateFlags; y: VkFenceCreateFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkFenceCreateFlags; y: VkFenceCreateFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkFormatFeatureFlags]; args: varargs[VkFormatFeatureFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkFormatFeatureFlags; y: VkFormatFeatureFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkFormatFeatureFlags; y: VkFormatFeatureFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkFormatFeatureFlags; y: VkFormatFeatureFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkQueryControlFlags]; args: varargs[VkQueryControlFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkQueryControlFlags; y: VkQueryControlFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkQueryControlFlags; y: VkQueryControlFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkQueryControlFlags; y: VkQueryControlFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkQueryResultFlags]; args: varargs[VkQueryResultFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkQueryResultFlags; y: VkQueryResultFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkQueryResultFlags; y: VkQueryResultFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkQueryResultFlags; y: VkQueryResultFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkEventCreateFlags]; args: varargs[VkEventCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkEventCreateFlags; y: VkEventCreateFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkEventCreateFlags; y: VkEventCreateFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkEventCreateFlags; y: VkEventCreateFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkCommandPoolCreateFlags]; args: varargs[VkCommandPoolCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkCommandPoolCreateFlags; y: VkCommandPoolCreateFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkCommandPoolCreateFlags; y: VkCommandPoolCreateFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkCommandPoolCreateFlags; y: VkCommandPoolCreateFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkCommandPoolResetFlags]; args: varargs[VkCommandPoolResetFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkCommandPoolResetFlags; y: VkCommandPoolResetFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkCommandPoolResetFlags; y: VkCommandPoolResetFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkCommandPoolResetFlags; y: VkCommandPoolResetFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkCommandBufferResetFlags]; args: varargs[VkCommandBufferResetFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkCommandBufferResetFlags; y: VkCommandBufferResetFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkCommandBufferResetFlags; y: VkCommandBufferResetFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkCommandBufferResetFlags; y: VkCommandBufferResetFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkCommandBufferUsageFlags]; args: varargs[VkCommandBufferUsageFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkCommandBufferUsageFlags; y: VkCommandBufferUsageFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkCommandBufferUsageFlags; y: VkCommandBufferUsageFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkCommandBufferUsageFlags; y: VkCommandBufferUsageFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkQueryPipelineStatisticFlags]; args: varargs[VkQueryPipelineStatisticFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkQueryPipelineStatisticFlags; y: VkQueryPipelineStatisticFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkQueryPipelineStatisticFlags; y: VkQueryPipelineStatisticFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkQueryPipelineStatisticFlags; y: VkQueryPipelineStatisticFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkMemoryMapFlags]; args: varargs[VkMemoryMapFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkMemoryMapFlags; y: VkMemoryMapFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkMemoryMapFlags; y: VkMemoryMapFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkMemoryMapFlags; y: VkMemoryMapFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkMemoryUnmapFlagsKHR]; args: varargs[VkMemoryUnmapFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkMemoryUnmapFlagsKHR; y: VkMemoryUnmapFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkMemoryUnmapFlagsKHR; y: VkMemoryUnmapFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkMemoryUnmapFlagsKHR; y: VkMemoryUnmapFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkImageAspectFlags]; args: varargs[VkImageAspectFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkImageAspectFlags; y: VkImageAspectFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkImageAspectFlags; y: VkImageAspectFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkImageAspectFlags; y: VkImageAspectFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkSparseMemoryBindFlags]; args: varargs[VkSparseMemoryBindFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkSparseMemoryBindFlags; y: VkSparseMemoryBindFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkSparseMemoryBindFlags; y: VkSparseMemoryBindFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkSparseMemoryBindFlags; y: VkSparseMemoryBindFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkSparseImageFormatFlags]; args: varargs[VkSparseImageFormatFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkSparseImageFormatFlags; y: VkSparseImageFormatFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkSparseImageFormatFlags; y: VkSparseImageFormatFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkSparseImageFormatFlags; y: VkSparseImageFormatFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkSubpassDescriptionFlags]; args: varargs[VkSubpassDescriptionFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkSubpassDescriptionFlags; y: VkSubpassDescriptionFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkSubpassDescriptionFlags; y: VkSubpassDescriptionFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkSubpassDescriptionFlags; y: VkSubpassDescriptionFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkPipelineStageFlags]; args: varargs[VkPipelineStageFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkPipelineStageFlags; y: VkPipelineStageFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkPipelineStageFlags; y: VkPipelineStageFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkPipelineStageFlags; y: VkPipelineStageFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkSampleCountFlags]; args: varargs[VkSampleCountFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkSampleCountFlags; y: VkSampleCountFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkSampleCountFlags; y: VkSampleCountFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkSampleCountFlags; y: VkSampleCountFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkAttachmentDescriptionFlags]; args: varargs[VkAttachmentDescriptionFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkAttachmentDescriptionFlags; y: VkAttachmentDescriptionFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkAttachmentDescriptionFlags; y: VkAttachmentDescriptionFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkAttachmentDescriptionFlags; y: VkAttachmentDescriptionFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkStencilFaceFlags]; args: varargs[VkStencilFaceFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkStencilFaceFlags; y: VkStencilFaceFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkStencilFaceFlags; y: VkStencilFaceFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkStencilFaceFlags; y: VkStencilFaceFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkCullModeFlags]; args: varargs[VkCullModeFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkCullModeFlags; y: VkCullModeFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkCullModeFlags; y: VkCullModeFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkCullModeFlags; y: VkCullModeFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkDescriptorPoolCreateFlags]; args: varargs[VkDescriptorPoolCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkDescriptorPoolCreateFlags; y: VkDescriptorPoolCreateFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkDescriptorPoolCreateFlags; y: VkDescriptorPoolCreateFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkDescriptorPoolCreateFlags; y: VkDescriptorPoolCreateFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkDependencyFlags]; args: varargs[VkDependencyFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkDependencyFlags; y: VkDependencyFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkDependencyFlags; y: VkDependencyFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkDependencyFlags; y: VkDependencyFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkSubgroupFeatureFlags]; args: varargs[VkSubgroupFeatureFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkSubgroupFeatureFlags; y: VkSubgroupFeatureFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkSubgroupFeatureFlags; y: VkSubgroupFeatureFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkSubgroupFeatureFlags; y: VkSubgroupFeatureFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkIndirectCommandsLayoutUsageFlagsNV]; args: varargs[VkIndirectCommandsLayoutUsageFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkIndirectCommandsLayoutUsageFlagsNV; y: VkIndirectCommandsLayoutUsageFlagsNV): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkIndirectCommandsLayoutUsageFlagsNV; y: VkIndirectCommandsLayoutUsageFlagsNV): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkIndirectCommandsLayoutUsageFlagsNV; y: VkIndirectCommandsLayoutUsageFlagBitsNV): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkIndirectStateFlagsNV]; args: varargs[VkIndirectStateFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkIndirectStateFlagsNV; y: VkIndirectStateFlagsNV): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkIndirectStateFlagsNV; y: VkIndirectStateFlagsNV): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkIndirectStateFlagsNV; y: VkIndirectStateFlagBitsNV): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkGeometryFlagsKHR]; args: varargs[VkGeometryFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkGeometryFlagsKHR; y: VkGeometryFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkGeometryFlagsKHR; y: VkGeometryFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkGeometryFlagsKHR; y: VkGeometryFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkGeometryInstanceFlagsKHR]; args: varargs[VkGeometryInstanceFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkGeometryInstanceFlagsKHR; y: VkGeometryInstanceFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkGeometryInstanceFlagsKHR; y: VkGeometryInstanceFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkGeometryInstanceFlagsKHR; y: VkGeometryInstanceFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkBuildAccelerationStructureFlagsKHR]; args: varargs[VkBuildAccelerationStructureFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkBuildAccelerationStructureFlagsKHR; y: VkBuildAccelerationStructureFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkBuildAccelerationStructureFlagsKHR; y: VkBuildAccelerationStructureFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkBuildAccelerationStructureFlagsKHR; y: VkBuildAccelerationStructureFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkAccelerationStructureCreateFlagsKHR]; args: varargs[VkAccelerationStructureCreateFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkAccelerationStructureCreateFlagsKHR; y: VkAccelerationStructureCreateFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkAccelerationStructureCreateFlagsKHR; y: VkAccelerationStructureCreateFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkAccelerationStructureCreateFlagsKHR; y: VkAccelerationStructureCreateFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkPipelineCreationFeedbackFlags]; args: varargs[VkPipelineCreationFeedbackFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkPipelineCreationFeedbackFlags; y: VkPipelineCreationFeedbackFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkPipelineCreationFeedbackFlags; y: VkPipelineCreationFeedbackFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkPipelineCreationFeedbackFlags; y: VkPipelineCreationFeedbackFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkPerformanceCounterDescriptionFlagsKHR]; args: varargs[VkPerformanceCounterDescriptionFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkPerformanceCounterDescriptionFlagsKHR; y: VkPerformanceCounterDescriptionFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkPerformanceCounterDescriptionFlagsKHR; y: VkPerformanceCounterDescriptionFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkPerformanceCounterDescriptionFlagsKHR; y: VkPerformanceCounterDescriptionFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkSemaphoreWaitFlags]; args: varargs[VkSemaphoreWaitFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkSemaphoreWaitFlags; y: VkSemaphoreWaitFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkSemaphoreWaitFlags; y: VkSemaphoreWaitFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkSemaphoreWaitFlags; y: VkSemaphoreWaitFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkDeviceDiagnosticsConfigFlagsNV]; args: varargs[VkDeviceDiagnosticsConfigFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkDeviceDiagnosticsConfigFlagsNV; y: VkDeviceDiagnosticsConfigFlagsNV): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkDeviceDiagnosticsConfigFlagsNV; y: VkDeviceDiagnosticsConfigFlagsNV): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkDeviceDiagnosticsConfigFlagsNV; y: VkDeviceDiagnosticsConfigFlagBitsNV): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkAccessFlags2]; args: varargs[VkAccessFlagBits2]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkAccessFlags2; y: VkAccessFlags2): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkAccessFlags2; y: VkAccessFlags2): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkAccessFlags2; y: VkAccessFlagBits2): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkPipelineStageFlags2]; args: varargs[VkPipelineStageFlagBits2]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkPipelineStageFlags2; y: VkPipelineStageFlags2): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkPipelineStageFlags2; y: VkPipelineStageFlags2): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkPipelineStageFlags2; y: VkPipelineStageFlagBits2): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkFormatFeatureFlags2]; args: varargs[VkFormatFeatureFlagBits2]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkFormatFeatureFlags2; y: VkFormatFeatureFlags2): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkFormatFeatureFlags2; y: VkFormatFeatureFlags2): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkFormatFeatureFlags2; y: VkFormatFeatureFlagBits2): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkRenderingFlags]; args: varargs[VkRenderingFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkRenderingFlags; y: VkRenderingFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkRenderingFlags; y: VkRenderingFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkRenderingFlags; y: VkRenderingFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkMemoryDecompressionMethodFlagsNV]; args: varargs[VkMemoryDecompressionMethodFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkMemoryDecompressionMethodFlagsNV; y: VkMemoryDecompressionMethodFlagsNV): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkMemoryDecompressionMethodFlagsNV; y: VkMemoryDecompressionMethodFlagsNV): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkMemoryDecompressionMethodFlagsNV; y: VkMemoryDecompressionMethodFlagBitsNV): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkBuildMicromapFlagsEXT]; args: varargs[VkBuildMicromapFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkBuildMicromapFlagsEXT; y: VkBuildMicromapFlagsEXT): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkBuildMicromapFlagsEXT; y: VkBuildMicromapFlagsEXT): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkBuildMicromapFlagsEXT; y: VkBuildMicromapFlagBitsEXT): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkMicromapCreateFlagsEXT]; args: varargs[VkMicromapCreateFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkMicromapCreateFlagsEXT; y: VkMicromapCreateFlagsEXT): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkMicromapCreateFlagsEXT; y: VkMicromapCreateFlagsEXT): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkMicromapCreateFlagsEXT; y: VkMicromapCreateFlagBitsEXT): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkPipelineCreateFlags2KHR]; args: varargs[VkPipelineCreateFlagBits2KHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkPipelineCreateFlags2KHR; y: VkPipelineCreateFlags2KHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkPipelineCreateFlags2KHR; y: VkPipelineCreateFlags2KHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkPipelineCreateFlags2KHR; y: VkPipelineCreateFlagBits2KHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkBufferUsageFlags2KHR]; args: varargs[VkBufferUsageFlagBits2KHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkBufferUsageFlags2KHR; y: VkBufferUsageFlags2KHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkBufferUsageFlags2KHR; y: VkBufferUsageFlags2KHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkBufferUsageFlags2KHR; y: VkBufferUsageFlagBits2KHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkCompositeAlphaFlagsKHR]; args: varargs[VkCompositeAlphaFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkCompositeAlphaFlagsKHR; y: VkCompositeAlphaFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkCompositeAlphaFlagsKHR; y: VkCompositeAlphaFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkCompositeAlphaFlagsKHR; y: VkCompositeAlphaFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkDisplayPlaneAlphaFlagsKHR]; args: varargs[VkDisplayPlaneAlphaFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkDisplayPlaneAlphaFlagsKHR; y: VkDisplayPlaneAlphaFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkDisplayPlaneAlphaFlagsKHR; y: VkDisplayPlaneAlphaFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkDisplayPlaneAlphaFlagsKHR; y: VkDisplayPlaneAlphaFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkSurfaceTransformFlagsKHR]; args: varargs[VkSurfaceTransformFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkSurfaceTransformFlagsKHR; y: VkSurfaceTransformFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkSurfaceTransformFlagsKHR; y: VkSurfaceTransformFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkSurfaceTransformFlagsKHR; y: VkSurfaceTransformFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkSwapchainCreateFlagsKHR]; args: varargs[VkSwapchainCreateFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkSwapchainCreateFlagsKHR; y: VkSwapchainCreateFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkSwapchainCreateFlagsKHR; y: VkSwapchainCreateFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkSwapchainCreateFlagsKHR; y: VkSwapchainCreateFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkPeerMemoryFeatureFlags]; args: varargs[VkPeerMemoryFeatureFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkPeerMemoryFeatureFlags; y: VkPeerMemoryFeatureFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkPeerMemoryFeatureFlags; y: VkPeerMemoryFeatureFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkPeerMemoryFeatureFlags; y: VkPeerMemoryFeatureFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkMemoryAllocateFlags]; args: varargs[VkMemoryAllocateFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkMemoryAllocateFlags; y: VkMemoryAllocateFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkMemoryAllocateFlags; y: VkMemoryAllocateFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkMemoryAllocateFlags; y: VkMemoryAllocateFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkDeviceGroupPresentModeFlagsKHR]; args: varargs[VkDeviceGroupPresentModeFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkDeviceGroupPresentModeFlagsKHR; y: VkDeviceGroupPresentModeFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkDeviceGroupPresentModeFlagsKHR; y: VkDeviceGroupPresentModeFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkDeviceGroupPresentModeFlagsKHR; y: VkDeviceGroupPresentModeFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkDebugReportFlagsEXT]; args: varargs[VkDebugReportFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkDebugReportFlagsEXT; y: VkDebugReportFlagsEXT): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkDebugReportFlagsEXT; y: VkDebugReportFlagsEXT): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkDebugReportFlagsEXT; y: VkDebugReportFlagBitsEXT): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkExternalMemoryHandleTypeFlagsNV]; args: varargs[VkExternalMemoryHandleTypeFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkExternalMemoryHandleTypeFlagsNV; y: VkExternalMemoryHandleTypeFlagsNV): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkExternalMemoryHandleTypeFlagsNV; y: VkExternalMemoryHandleTypeFlagsNV): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkExternalMemoryHandleTypeFlagsNV; y: VkExternalMemoryHandleTypeFlagBitsNV): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkExternalMemoryFeatureFlagsNV]; args: varargs[VkExternalMemoryFeatureFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkExternalMemoryFeatureFlagsNV; y: VkExternalMemoryFeatureFlagsNV): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkExternalMemoryFeatureFlagsNV; y: VkExternalMemoryFeatureFlagsNV): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkExternalMemoryFeatureFlagsNV; y: VkExternalMemoryFeatureFlagBitsNV): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkExternalMemoryHandleTypeFlags]; args: varargs[VkExternalMemoryHandleTypeFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkExternalMemoryHandleTypeFlags; y: VkExternalMemoryHandleTypeFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkExternalMemoryHandleTypeFlags; y: VkExternalMemoryHandleTypeFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkExternalMemoryHandleTypeFlags; y: VkExternalMemoryHandleTypeFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkExternalMemoryFeatureFlags]; args: varargs[VkExternalMemoryFeatureFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkExternalMemoryFeatureFlags; y: VkExternalMemoryFeatureFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkExternalMemoryFeatureFlags; y: VkExternalMemoryFeatureFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkExternalMemoryFeatureFlags; y: VkExternalMemoryFeatureFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkExternalSemaphoreHandleTypeFlags]; args: varargs[VkExternalSemaphoreHandleTypeFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkExternalSemaphoreHandleTypeFlags; y: VkExternalSemaphoreHandleTypeFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkExternalSemaphoreHandleTypeFlags; y: VkExternalSemaphoreHandleTypeFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkExternalSemaphoreHandleTypeFlags; y: VkExternalSemaphoreHandleTypeFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkExternalSemaphoreFeatureFlags]; args: varargs[VkExternalSemaphoreFeatureFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkExternalSemaphoreFeatureFlags; y: VkExternalSemaphoreFeatureFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkExternalSemaphoreFeatureFlags; y: VkExternalSemaphoreFeatureFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkExternalSemaphoreFeatureFlags; y: VkExternalSemaphoreFeatureFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkSemaphoreImportFlags]; args: varargs[VkSemaphoreImportFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkSemaphoreImportFlags; y: VkSemaphoreImportFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkSemaphoreImportFlags; y: VkSemaphoreImportFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkSemaphoreImportFlags; y: VkSemaphoreImportFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkExternalFenceHandleTypeFlags]; args: varargs[VkExternalFenceHandleTypeFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkExternalFenceHandleTypeFlags; y: VkExternalFenceHandleTypeFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkExternalFenceHandleTypeFlags; y: VkExternalFenceHandleTypeFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkExternalFenceHandleTypeFlags; y: VkExternalFenceHandleTypeFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkExternalFenceFeatureFlags]; args: varargs[VkExternalFenceFeatureFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkExternalFenceFeatureFlags; y: VkExternalFenceFeatureFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkExternalFenceFeatureFlags; y: VkExternalFenceFeatureFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkExternalFenceFeatureFlags; y: VkExternalFenceFeatureFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkFenceImportFlags]; args: varargs[VkFenceImportFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkFenceImportFlags; y: VkFenceImportFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkFenceImportFlags; y: VkFenceImportFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkFenceImportFlags; y: VkFenceImportFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkSurfaceCounterFlagsEXT]; args: varargs[VkSurfaceCounterFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkSurfaceCounterFlagsEXT; y: VkSurfaceCounterFlagsEXT): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkSurfaceCounterFlagsEXT; y: VkSurfaceCounterFlagsEXT): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkSurfaceCounterFlagsEXT; y: VkSurfaceCounterFlagBitsEXT): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkDebugUtilsMessageSeverityFlagsEXT]; args: varargs[VkDebugUtilsMessageSeverityFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkDebugUtilsMessageSeverityFlagsEXT; y: VkDebugUtilsMessageSeverityFlagsEXT): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkDebugUtilsMessageSeverityFlagsEXT; y: VkDebugUtilsMessageSeverityFlagsEXT): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkDebugUtilsMessageSeverityFlagsEXT; y: VkDebugUtilsMessageSeverityFlagBitsEXT): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkDebugUtilsMessageTypeFlagsEXT]; args: varargs[VkDebugUtilsMessageTypeFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkDebugUtilsMessageTypeFlagsEXT; y: VkDebugUtilsMessageTypeFlagsEXT): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkDebugUtilsMessageTypeFlagsEXT; y: VkDebugUtilsMessageTypeFlagsEXT): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkDebugUtilsMessageTypeFlagsEXT; y: VkDebugUtilsMessageTypeFlagBitsEXT): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkDescriptorBindingFlags]; args: varargs[VkDescriptorBindingFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkDescriptorBindingFlags; y: VkDescriptorBindingFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkDescriptorBindingFlags; y: VkDescriptorBindingFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkDescriptorBindingFlags; y: VkDescriptorBindingFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkConditionalRenderingFlagsEXT]; args: varargs[VkConditionalRenderingFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkConditionalRenderingFlagsEXT; y: VkConditionalRenderingFlagsEXT): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkConditionalRenderingFlagsEXT; y: VkConditionalRenderingFlagsEXT): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkConditionalRenderingFlagsEXT; y: VkConditionalRenderingFlagBitsEXT): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkResolveModeFlags]; args: varargs[VkResolveModeFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkResolveModeFlags; y: VkResolveModeFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkResolveModeFlags; y: VkResolveModeFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkResolveModeFlags; y: VkResolveModeFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkSwapchainImageUsageFlagsANDROID]; args: varargs[VkSwapchainImageUsageFlagBitsANDROID]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkSwapchainImageUsageFlagsANDROID; y: VkSwapchainImageUsageFlagsANDROID): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkSwapchainImageUsageFlagsANDROID; y: VkSwapchainImageUsageFlagsANDROID): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkSwapchainImageUsageFlagsANDROID; y: VkSwapchainImageUsageFlagBitsANDROID): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkToolPurposeFlags]; args: varargs[VkToolPurposeFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkToolPurposeFlags; y: VkToolPurposeFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkToolPurposeFlags; y: VkToolPurposeFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkToolPurposeFlags; y: VkToolPurposeFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkSubmitFlags]; args: varargs[VkSubmitFlagBits]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkSubmitFlags; y: VkSubmitFlags): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkSubmitFlags; y: VkSubmitFlags): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkSubmitFlags; y: VkSubmitFlagBits): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkHostImageCopyFlagsEXT]; args: varargs[VkHostImageCopyFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkHostImageCopyFlagsEXT; y: VkHostImageCopyFlagsEXT): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkHostImageCopyFlagsEXT; y: VkHostImageCopyFlagsEXT): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkHostImageCopyFlagsEXT; y: VkHostImageCopyFlagBitsEXT): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkImageConstraintsInfoFlagsFUCHSIA]; args: varargs[VkImageConstraintsInfoFlagBitsFUCHSIA]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkImageConstraintsInfoFlagsFUCHSIA; y: VkImageConstraintsInfoFlagsFUCHSIA): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkImageConstraintsInfoFlagsFUCHSIA; y: VkImageConstraintsInfoFlagsFUCHSIA): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkImageConstraintsInfoFlagsFUCHSIA; y: VkImageConstraintsInfoFlagBitsFUCHSIA): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkGraphicsPipelineLibraryFlagsEXT]; args: varargs[VkGraphicsPipelineLibraryFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkGraphicsPipelineLibraryFlagsEXT; y: VkGraphicsPipelineLibraryFlagsEXT): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkGraphicsPipelineLibraryFlagsEXT; y: VkGraphicsPipelineLibraryFlagsEXT): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkGraphicsPipelineLibraryFlagsEXT; y: VkGraphicsPipelineLibraryFlagBitsEXT): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkImageCompressionFlagsEXT]; args: varargs[VkImageCompressionFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkImageCompressionFlagsEXT; y: VkImageCompressionFlagsEXT): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkImageCompressionFlagsEXT; y: VkImageCompressionFlagsEXT): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkImageCompressionFlagsEXT; y: VkImageCompressionFlagBitsEXT): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkImageCompressionFixedRateFlagsEXT]; args: varargs[VkImageCompressionFixedRateFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkImageCompressionFixedRateFlagsEXT; y: VkImageCompressionFixedRateFlagsEXT): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkImageCompressionFixedRateFlagsEXT; y: VkImageCompressionFixedRateFlagsEXT): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkImageCompressionFixedRateFlagsEXT; y: VkImageCompressionFixedRateFlagBitsEXT): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkExportMetalObjectTypeFlagsEXT]; args: varargs[VkExportMetalObjectTypeFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkExportMetalObjectTypeFlagsEXT; y: VkExportMetalObjectTypeFlagsEXT): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkExportMetalObjectTypeFlagsEXT; y: VkExportMetalObjectTypeFlagsEXT): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkExportMetalObjectTypeFlagsEXT; y: VkExportMetalObjectTypeFlagBitsEXT): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkDeviceAddressBindingFlagsEXT]; args: varargs[VkDeviceAddressBindingFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkDeviceAddressBindingFlagsEXT; y: VkDeviceAddressBindingFlagsEXT): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkDeviceAddressBindingFlagsEXT; y: VkDeviceAddressBindingFlagsEXT): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkDeviceAddressBindingFlagsEXT; y: VkDeviceAddressBindingFlagBitsEXT): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkOpticalFlowGridSizeFlagsNV]; args: varargs[VkOpticalFlowGridSizeFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkOpticalFlowGridSizeFlagsNV; y: VkOpticalFlowGridSizeFlagsNV): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkOpticalFlowGridSizeFlagsNV; y: VkOpticalFlowGridSizeFlagsNV): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkOpticalFlowGridSizeFlagsNV; y: VkOpticalFlowGridSizeFlagBitsNV): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkOpticalFlowUsageFlagsNV]; args: varargs[VkOpticalFlowUsageFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkOpticalFlowUsageFlagsNV; y: VkOpticalFlowUsageFlagsNV): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkOpticalFlowUsageFlagsNV; y: VkOpticalFlowUsageFlagsNV): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkOpticalFlowUsageFlagsNV; y: VkOpticalFlowUsageFlagBitsNV): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkOpticalFlowSessionCreateFlagsNV]; args: varargs[VkOpticalFlowSessionCreateFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkOpticalFlowSessionCreateFlagsNV; y: VkOpticalFlowSessionCreateFlagsNV): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkOpticalFlowSessionCreateFlagsNV; y: VkOpticalFlowSessionCreateFlagsNV): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkOpticalFlowSessionCreateFlagsNV; y: VkOpticalFlowSessionCreateFlagBitsNV): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkOpticalFlowExecuteFlagsNV]; args: varargs[VkOpticalFlowExecuteFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkOpticalFlowExecuteFlagsNV; y: VkOpticalFlowExecuteFlagsNV): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkOpticalFlowExecuteFlagsNV; y: VkOpticalFlowExecuteFlagsNV): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkOpticalFlowExecuteFlagsNV; y: VkOpticalFlowExecuteFlagBitsNV): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkFrameBoundaryFlagsEXT]; args: varargs[VkFrameBoundaryFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkFrameBoundaryFlagsEXT; y: VkFrameBoundaryFlagsEXT): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkFrameBoundaryFlagsEXT; y: VkFrameBoundaryFlagsEXT): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkFrameBoundaryFlagsEXT; y: VkFrameBoundaryFlagBitsEXT): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkPresentScalingFlagsEXT]; args: varargs[VkPresentScalingFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkPresentScalingFlagsEXT; y: VkPresentScalingFlagsEXT): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkPresentScalingFlagsEXT; y: VkPresentScalingFlagsEXT): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkPresentScalingFlagsEXT; y: VkPresentScalingFlagBitsEXT): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkPresentGravityFlagsEXT]; args: varargs[VkPresentGravityFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkPresentGravityFlagsEXT; y: VkPresentGravityFlagsEXT): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkPresentGravityFlagsEXT; y: VkPresentGravityFlagsEXT): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkPresentGravityFlagsEXT; y: VkPresentGravityFlagBitsEXT): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkShaderCreateFlagsEXT]; args: varargs[VkShaderCreateFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkShaderCreateFlagsEXT; y: VkShaderCreateFlagsEXT): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkShaderCreateFlagsEXT; y: VkShaderCreateFlagsEXT): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkShaderCreateFlagsEXT; y: VkShaderCreateFlagBitsEXT): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkPhysicalDeviceSchedulingControlsFlagsARM]; args: varargs[VkPhysicalDeviceSchedulingControlsFlagBitsARM]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkPhysicalDeviceSchedulingControlsFlagsARM; y: VkPhysicalDeviceSchedulingControlsFlagsARM): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkPhysicalDeviceSchedulingControlsFlagsARM; y: VkPhysicalDeviceSchedulingControlsFlagsARM): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkPhysicalDeviceSchedulingControlsFlagsARM; y: VkPhysicalDeviceSchedulingControlsFlagBitsARM): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkVideoCodecOperationFlagsKHR]; args: varargs[VkVideoCodecOperationFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkVideoCodecOperationFlagsKHR; y: VkVideoCodecOperationFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkVideoCodecOperationFlagsKHR; y: VkVideoCodecOperationFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkVideoCodecOperationFlagsKHR; y: VkVideoCodecOperationFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkVideoCapabilityFlagsKHR]; args: varargs[VkVideoCapabilityFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkVideoCapabilityFlagsKHR; y: VkVideoCapabilityFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkVideoCapabilityFlagsKHR; y: VkVideoCapabilityFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkVideoCapabilityFlagsKHR; y: VkVideoCapabilityFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkVideoSessionCreateFlagsKHR]; args: varargs[VkVideoSessionCreateFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkVideoSessionCreateFlagsKHR; y: VkVideoSessionCreateFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkVideoSessionCreateFlagsKHR; y: VkVideoSessionCreateFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkVideoSessionCreateFlagsKHR; y: VkVideoSessionCreateFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkVideoCodingControlFlagsKHR]; args: varargs[VkVideoCodingControlFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkVideoCodingControlFlagsKHR; y: VkVideoCodingControlFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkVideoCodingControlFlagsKHR; y: VkVideoCodingControlFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkVideoCodingControlFlagsKHR; y: VkVideoCodingControlFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkVideoDecodeUsageFlagsKHR]; args: varargs[VkVideoDecodeUsageFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkVideoDecodeUsageFlagsKHR; y: VkVideoDecodeUsageFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkVideoDecodeUsageFlagsKHR; y: VkVideoDecodeUsageFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkVideoDecodeUsageFlagsKHR; y: VkVideoDecodeUsageFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkVideoDecodeCapabilityFlagsKHR]; args: varargs[VkVideoDecodeCapabilityFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkVideoDecodeCapabilityFlagsKHR; y: VkVideoDecodeCapabilityFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkVideoDecodeCapabilityFlagsKHR; y: VkVideoDecodeCapabilityFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkVideoDecodeCapabilityFlagsKHR; y: VkVideoDecodeCapabilityFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkVideoDecodeH264PictureLayoutFlagsKHR]; args: varargs[VkVideoDecodeH264PictureLayoutFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkVideoDecodeH264PictureLayoutFlagsKHR; y: VkVideoDecodeH264PictureLayoutFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkVideoDecodeH264PictureLayoutFlagsKHR; y: VkVideoDecodeH264PictureLayoutFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkVideoDecodeH264PictureLayoutFlagsKHR; y: VkVideoDecodeH264PictureLayoutFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkVideoEncodeUsageFlagsKHR]; args: varargs[VkVideoEncodeUsageFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkVideoEncodeUsageFlagsKHR; y: VkVideoEncodeUsageFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkVideoEncodeUsageFlagsKHR; y: VkVideoEncodeUsageFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkVideoEncodeUsageFlagsKHR; y: VkVideoEncodeUsageFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkVideoEncodeContentFlagsKHR]; args: varargs[VkVideoEncodeContentFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkVideoEncodeContentFlagsKHR; y: VkVideoEncodeContentFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkVideoEncodeContentFlagsKHR; y: VkVideoEncodeContentFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkVideoEncodeContentFlagsKHR; y: VkVideoEncodeContentFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkVideoEncodeCapabilityFlagsKHR]; args: varargs[VkVideoEncodeCapabilityFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkVideoEncodeCapabilityFlagsKHR; y: VkVideoEncodeCapabilityFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkVideoEncodeCapabilityFlagsKHR; y: VkVideoEncodeCapabilityFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkVideoEncodeCapabilityFlagsKHR; y: VkVideoEncodeCapabilityFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkVideoEncodeFeedbackFlagsKHR]; args: varargs[VkVideoEncodeFeedbackFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkVideoEncodeFeedbackFlagsKHR; y: VkVideoEncodeFeedbackFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkVideoEncodeFeedbackFlagsKHR; y: VkVideoEncodeFeedbackFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkVideoEncodeFeedbackFlagsKHR; y: VkVideoEncodeFeedbackFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkVideoEncodeRateControlModeFlagsKHR]; args: varargs[VkVideoEncodeRateControlModeFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkVideoEncodeRateControlModeFlagsKHR; y: VkVideoEncodeRateControlModeFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkVideoEncodeRateControlModeFlagsKHR; y: VkVideoEncodeRateControlModeFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkVideoEncodeRateControlModeFlagsKHR; y: VkVideoEncodeRateControlModeFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkVideoChromaSubsamplingFlagsKHR]; args: varargs[VkVideoChromaSubsamplingFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkVideoChromaSubsamplingFlagsKHR; y: VkVideoChromaSubsamplingFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkVideoChromaSubsamplingFlagsKHR; y: VkVideoChromaSubsamplingFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkVideoChromaSubsamplingFlagsKHR; y: VkVideoChromaSubsamplingFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkVideoComponentBitDepthFlagsKHR]; args: varargs[VkVideoComponentBitDepthFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkVideoComponentBitDepthFlagsKHR; y: VkVideoComponentBitDepthFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkVideoComponentBitDepthFlagsKHR; y: VkVideoComponentBitDepthFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkVideoComponentBitDepthFlagsKHR; y: VkVideoComponentBitDepthFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkVideoEncodeH264CapabilityFlagsKHR]; args: varargs[VkVideoEncodeH264CapabilityFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkVideoEncodeH264CapabilityFlagsKHR; y: VkVideoEncodeH264CapabilityFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkVideoEncodeH264CapabilityFlagsKHR; y: VkVideoEncodeH264CapabilityFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkVideoEncodeH264CapabilityFlagsKHR; y: VkVideoEncodeH264CapabilityFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkVideoEncodeH264StdFlagsKHR]; args: varargs[VkVideoEncodeH264StdFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkVideoEncodeH264StdFlagsKHR; y: VkVideoEncodeH264StdFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkVideoEncodeH264StdFlagsKHR; y: VkVideoEncodeH264StdFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkVideoEncodeH264StdFlagsKHR; y: VkVideoEncodeH264StdFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkVideoEncodeH264RateControlFlagsKHR]; args: varargs[VkVideoEncodeH264RateControlFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkVideoEncodeH264RateControlFlagsKHR; y: VkVideoEncodeH264RateControlFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkVideoEncodeH264RateControlFlagsKHR; y: VkVideoEncodeH264RateControlFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkVideoEncodeH264RateControlFlagsKHR; y: VkVideoEncodeH264RateControlFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkVideoEncodeH265CapabilityFlagsKHR]; args: varargs[VkVideoEncodeH265CapabilityFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkVideoEncodeH265CapabilityFlagsKHR; y: VkVideoEncodeH265CapabilityFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkVideoEncodeH265CapabilityFlagsKHR; y: VkVideoEncodeH265CapabilityFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkVideoEncodeH265CapabilityFlagsKHR; y: VkVideoEncodeH265CapabilityFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkVideoEncodeH265StdFlagsKHR]; args: varargs[VkVideoEncodeH265StdFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkVideoEncodeH265StdFlagsKHR; y: VkVideoEncodeH265StdFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkVideoEncodeH265StdFlagsKHR; y: VkVideoEncodeH265StdFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkVideoEncodeH265StdFlagsKHR; y: VkVideoEncodeH265StdFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkVideoEncodeH265RateControlFlagsKHR]; args: varargs[VkVideoEncodeH265RateControlFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkVideoEncodeH265RateControlFlagsKHR; y: VkVideoEncodeH265RateControlFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkVideoEncodeH265RateControlFlagsKHR; y: VkVideoEncodeH265RateControlFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkVideoEncodeH265RateControlFlagsKHR; y: VkVideoEncodeH265RateControlFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkVideoEncodeH265CtbSizeFlagsKHR]; args: varargs[VkVideoEncodeH265CtbSizeFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) + +proc `==`(x: VkVideoEncodeH265CtbSizeFlagsKHR; y: VkVideoEncodeH265CtbSizeFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkVideoEncodeH265CtbSizeFlagsKHR; y: VkVideoEncodeH265CtbSizeFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkVideoEncodeH265CtbSizeFlagsKHR; y: VkVideoEncodeH265CtbSizeFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + template `{}`*(t: typedesc[VkVideoEncodeH265TransformBlockSizeFlagsKHR]; args: varargs[VkVideoEncodeH265TransformBlockSizeFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) +proc `==`(x: VkVideoEncodeH265TransformBlockSizeFlagsKHR; y: VkVideoEncodeH265TransformBlockSizeFlagsKHR): bool {.inline.} = + x.uint32 == y.uint32 +proc `<=`(x: VkVideoEncodeH265TransformBlockSizeFlagsKHR; y: VkVideoEncodeH265TransformBlockSizeFlagsKHR): bool {.inline.} = + (x.uint32 and not y.uint32) == 0 +proc contains(x: VkVideoEncodeH265TransformBlockSizeFlagsKHR; y: VkVideoEncodeH265TransformBlockSizeFlagBitsKHR): bool {.inline.} = + (x.uint32 and y.uint32) != 0 + + var vkCreateInstance*: proc (pCreateInfo: ptr VkInstanceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pInstance: ptr VkInstance): VkResult {.stdcall.} vkEnumerateInstanceExtensionProperties*: proc (pLayerName: cstring, pPropertyCount: ptr uint32, pProperties: ptr VkExtensionProperties): VkResult {.stdcall.} diff --git a/tools/generator.nim b/tools/generator.nim index 0c76955..84821ba 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -475,7 +475,19 @@ macro flagsImpl(base: typed, args: varargs[untyped]): untyped = output.add(&""" template `{{}}`*(t: typedesc[{flags.name}]; args: varargs[{flags.flagbits}]): untyped = t(flagsImpl({flags.bType}, args)) + +proc `==`(x: {flags.name}; y: {flags.name}): bool {{.inline.}} = + x.{flags.bType} == y.{flags.bType} +proc `<=`(x: {flags.name}; y: {flags.name}): bool {{.inline.}} = + (x.{flags.bType} and not y.{flags.bType}) == 0 +proc contains(x: {flags.name}; y: {flags.flagbits}): bool {{.inline.}} = + (x.{flags.bType} and y.{flags.bType}) != 0 + """) +# proc incl(x: var {flags.name}; y: {flags.flagbits}) {{.inline.}} = +# x = {flags.name}(x.{flags.bType} or y.{flags.bType}) +# proc excl(x: var {flags.name}; y: {flags.flagbits}) {{.inline.}} = +# x = {flags.name}(x.{flags.bType} and not y.{flags.bType}) proc genProcs(node: XmlNode, output: var string) = echo "Generating Procedures..." @@ -665,7 +677,8 @@ proc genConstructors(node: XmlNode, output: var string) = foundMany = true continue if foundMany: - output.add(&"{m.name}: if len({m.name.toArgName}) == 0: nil else: cast[{m.argType}]({m.name.toArgName}),\n") + output.add(&"{m.name}: if len({m.name.toArgName}) == 0: nil ") + output.add(&"else: cast[{m.argType}]({m.name.toArgName}),\n") else: output.add(&"{m.name}: {m.name},\n") if foundMany and (i >= s.members.high or not (s.members[i+1].isArray() or From 248aea8f58a024b9ce7fa88a75c24ab6eb9b7f77 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Wed, 19 Jun 2024 13:15:15 +0300 Subject: [PATCH 46/57] more helpful if exported --- src/vulkan.nim | 786 ++++++++++++++++++++++---------------------- tools/generator.nim | 10 +- 2 files changed, 398 insertions(+), 398 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index 36dfcf4..e3ce33b 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -24892,1311 +24892,1311 @@ macro flagsImpl(base: typed, args: varargs[untyped]): untyped = template `{}`*(t: typedesc[VkFramebufferCreateFlags]; args: varargs[VkFramebufferCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkFramebufferCreateFlags; y: VkFramebufferCreateFlags): bool {.inline.} = +proc `==`*(x: VkFramebufferCreateFlags; y: VkFramebufferCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkFramebufferCreateFlags; y: VkFramebufferCreateFlags): bool {.inline.} = +proc `<=`*(x: VkFramebufferCreateFlags; y: VkFramebufferCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkFramebufferCreateFlags; y: VkFramebufferCreateFlagBits): bool {.inline.} = +proc contains*(x: VkFramebufferCreateFlags; y: VkFramebufferCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkRenderPassCreateFlags]; args: varargs[VkRenderPassCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkRenderPassCreateFlags; y: VkRenderPassCreateFlags): bool {.inline.} = +proc `==`*(x: VkRenderPassCreateFlags; y: VkRenderPassCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkRenderPassCreateFlags; y: VkRenderPassCreateFlags): bool {.inline.} = +proc `<=`*(x: VkRenderPassCreateFlags; y: VkRenderPassCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkRenderPassCreateFlags; y: VkRenderPassCreateFlagBits): bool {.inline.} = +proc contains*(x: VkRenderPassCreateFlags; y: VkRenderPassCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkSamplerCreateFlags]; args: varargs[VkSamplerCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkSamplerCreateFlags; y: VkSamplerCreateFlags): bool {.inline.} = +proc `==`*(x: VkSamplerCreateFlags; y: VkSamplerCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkSamplerCreateFlags; y: VkSamplerCreateFlags): bool {.inline.} = +proc `<=`*(x: VkSamplerCreateFlags; y: VkSamplerCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkSamplerCreateFlags; y: VkSamplerCreateFlagBits): bool {.inline.} = +proc contains*(x: VkSamplerCreateFlags; y: VkSamplerCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkPipelineLayoutCreateFlags]; args: varargs[VkPipelineLayoutCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkPipelineLayoutCreateFlags; y: VkPipelineLayoutCreateFlags): bool {.inline.} = +proc `==`*(x: VkPipelineLayoutCreateFlags; y: VkPipelineLayoutCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkPipelineLayoutCreateFlags; y: VkPipelineLayoutCreateFlags): bool {.inline.} = +proc `<=`*(x: VkPipelineLayoutCreateFlags; y: VkPipelineLayoutCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkPipelineLayoutCreateFlags; y: VkPipelineLayoutCreateFlagBits): bool {.inline.} = +proc contains*(x: VkPipelineLayoutCreateFlags; y: VkPipelineLayoutCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkPipelineCacheCreateFlags]; args: varargs[VkPipelineCacheCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkPipelineCacheCreateFlags; y: VkPipelineCacheCreateFlags): bool {.inline.} = +proc `==`*(x: VkPipelineCacheCreateFlags; y: VkPipelineCacheCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkPipelineCacheCreateFlags; y: VkPipelineCacheCreateFlags): bool {.inline.} = +proc `<=`*(x: VkPipelineCacheCreateFlags; y: VkPipelineCacheCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkPipelineCacheCreateFlags; y: VkPipelineCacheCreateFlagBits): bool {.inline.} = +proc contains*(x: VkPipelineCacheCreateFlags; y: VkPipelineCacheCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkPipelineDepthStencilStateCreateFlags]; args: varargs[VkPipelineDepthStencilStateCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkPipelineDepthStencilStateCreateFlags; y: VkPipelineDepthStencilStateCreateFlags): bool {.inline.} = +proc `==`*(x: VkPipelineDepthStencilStateCreateFlags; y: VkPipelineDepthStencilStateCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkPipelineDepthStencilStateCreateFlags; y: VkPipelineDepthStencilStateCreateFlags): bool {.inline.} = +proc `<=`*(x: VkPipelineDepthStencilStateCreateFlags; y: VkPipelineDepthStencilStateCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkPipelineDepthStencilStateCreateFlags; y: VkPipelineDepthStencilStateCreateFlagBits): bool {.inline.} = +proc contains*(x: VkPipelineDepthStencilStateCreateFlags; y: VkPipelineDepthStencilStateCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkPipelineColorBlendStateCreateFlags]; args: varargs[VkPipelineColorBlendStateCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkPipelineColorBlendStateCreateFlags; y: VkPipelineColorBlendStateCreateFlags): bool {.inline.} = +proc `==`*(x: VkPipelineColorBlendStateCreateFlags; y: VkPipelineColorBlendStateCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkPipelineColorBlendStateCreateFlags; y: VkPipelineColorBlendStateCreateFlags): bool {.inline.} = +proc `<=`*(x: VkPipelineColorBlendStateCreateFlags; y: VkPipelineColorBlendStateCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkPipelineColorBlendStateCreateFlags; y: VkPipelineColorBlendStateCreateFlagBits): bool {.inline.} = +proc contains*(x: VkPipelineColorBlendStateCreateFlags; y: VkPipelineColorBlendStateCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkPipelineShaderStageCreateFlags]; args: varargs[VkPipelineShaderStageCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkPipelineShaderStageCreateFlags; y: VkPipelineShaderStageCreateFlags): bool {.inline.} = +proc `==`*(x: VkPipelineShaderStageCreateFlags; y: VkPipelineShaderStageCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkPipelineShaderStageCreateFlags; y: VkPipelineShaderStageCreateFlags): bool {.inline.} = +proc `<=`*(x: VkPipelineShaderStageCreateFlags; y: VkPipelineShaderStageCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkPipelineShaderStageCreateFlags; y: VkPipelineShaderStageCreateFlagBits): bool {.inline.} = +proc contains*(x: VkPipelineShaderStageCreateFlags; y: VkPipelineShaderStageCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkDescriptorSetLayoutCreateFlags]; args: varargs[VkDescriptorSetLayoutCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkDescriptorSetLayoutCreateFlags; y: VkDescriptorSetLayoutCreateFlags): bool {.inline.} = +proc `==`*(x: VkDescriptorSetLayoutCreateFlags; y: VkDescriptorSetLayoutCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkDescriptorSetLayoutCreateFlags; y: VkDescriptorSetLayoutCreateFlags): bool {.inline.} = +proc `<=`*(x: VkDescriptorSetLayoutCreateFlags; y: VkDescriptorSetLayoutCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkDescriptorSetLayoutCreateFlags; y: VkDescriptorSetLayoutCreateFlagBits): bool {.inline.} = +proc contains*(x: VkDescriptorSetLayoutCreateFlags; y: VkDescriptorSetLayoutCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkInstanceCreateFlags]; args: varargs[VkInstanceCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkInstanceCreateFlags; y: VkInstanceCreateFlags): bool {.inline.} = +proc `==`*(x: VkInstanceCreateFlags; y: VkInstanceCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkInstanceCreateFlags; y: VkInstanceCreateFlags): bool {.inline.} = +proc `<=`*(x: VkInstanceCreateFlags; y: VkInstanceCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkInstanceCreateFlags; y: VkInstanceCreateFlagBits): bool {.inline.} = +proc contains*(x: VkInstanceCreateFlags; y: VkInstanceCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkDeviceQueueCreateFlags]; args: varargs[VkDeviceQueueCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkDeviceQueueCreateFlags; y: VkDeviceQueueCreateFlags): bool {.inline.} = +proc `==`*(x: VkDeviceQueueCreateFlags; y: VkDeviceQueueCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkDeviceQueueCreateFlags; y: VkDeviceQueueCreateFlags): bool {.inline.} = +proc `<=`*(x: VkDeviceQueueCreateFlags; y: VkDeviceQueueCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkDeviceQueueCreateFlags; y: VkDeviceQueueCreateFlagBits): bool {.inline.} = +proc contains*(x: VkDeviceQueueCreateFlags; y: VkDeviceQueueCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkQueueFlags]; args: varargs[VkQueueFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkQueueFlags; y: VkQueueFlags): bool {.inline.} = +proc `==`*(x: VkQueueFlags; y: VkQueueFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkQueueFlags; y: VkQueueFlags): bool {.inline.} = +proc `<=`*(x: VkQueueFlags; y: VkQueueFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkQueueFlags; y: VkQueueFlagBits): bool {.inline.} = +proc contains*(x: VkQueueFlags; y: VkQueueFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkMemoryPropertyFlags]; args: varargs[VkMemoryPropertyFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkMemoryPropertyFlags; y: VkMemoryPropertyFlags): bool {.inline.} = +proc `==`*(x: VkMemoryPropertyFlags; y: VkMemoryPropertyFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkMemoryPropertyFlags; y: VkMemoryPropertyFlags): bool {.inline.} = +proc `<=`*(x: VkMemoryPropertyFlags; y: VkMemoryPropertyFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkMemoryPropertyFlags; y: VkMemoryPropertyFlagBits): bool {.inline.} = +proc contains*(x: VkMemoryPropertyFlags; y: VkMemoryPropertyFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkMemoryHeapFlags]; args: varargs[VkMemoryHeapFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkMemoryHeapFlags; y: VkMemoryHeapFlags): bool {.inline.} = +proc `==`*(x: VkMemoryHeapFlags; y: VkMemoryHeapFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkMemoryHeapFlags; y: VkMemoryHeapFlags): bool {.inline.} = +proc `<=`*(x: VkMemoryHeapFlags; y: VkMemoryHeapFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkMemoryHeapFlags; y: VkMemoryHeapFlagBits): bool {.inline.} = +proc contains*(x: VkMemoryHeapFlags; y: VkMemoryHeapFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkAccessFlags]; args: varargs[VkAccessFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkAccessFlags; y: VkAccessFlags): bool {.inline.} = +proc `==`*(x: VkAccessFlags; y: VkAccessFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkAccessFlags; y: VkAccessFlags): bool {.inline.} = +proc `<=`*(x: VkAccessFlags; y: VkAccessFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkAccessFlags; y: VkAccessFlagBits): bool {.inline.} = +proc contains*(x: VkAccessFlags; y: VkAccessFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkBufferUsageFlags]; args: varargs[VkBufferUsageFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkBufferUsageFlags; y: VkBufferUsageFlags): bool {.inline.} = +proc `==`*(x: VkBufferUsageFlags; y: VkBufferUsageFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkBufferUsageFlags; y: VkBufferUsageFlags): bool {.inline.} = +proc `<=`*(x: VkBufferUsageFlags; y: VkBufferUsageFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkBufferUsageFlags; y: VkBufferUsageFlagBits): bool {.inline.} = +proc contains*(x: VkBufferUsageFlags; y: VkBufferUsageFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkBufferCreateFlags]; args: varargs[VkBufferCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkBufferCreateFlags; y: VkBufferCreateFlags): bool {.inline.} = +proc `==`*(x: VkBufferCreateFlags; y: VkBufferCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkBufferCreateFlags; y: VkBufferCreateFlags): bool {.inline.} = +proc `<=`*(x: VkBufferCreateFlags; y: VkBufferCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkBufferCreateFlags; y: VkBufferCreateFlagBits): bool {.inline.} = +proc contains*(x: VkBufferCreateFlags; y: VkBufferCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkShaderStageFlags]; args: varargs[VkShaderStageFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkShaderStageFlags; y: VkShaderStageFlags): bool {.inline.} = +proc `==`*(x: VkShaderStageFlags; y: VkShaderStageFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkShaderStageFlags; y: VkShaderStageFlags): bool {.inline.} = +proc `<=`*(x: VkShaderStageFlags; y: VkShaderStageFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkShaderStageFlags; y: VkShaderStageFlagBits): bool {.inline.} = +proc contains*(x: VkShaderStageFlags; y: VkShaderStageFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkImageUsageFlags]; args: varargs[VkImageUsageFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkImageUsageFlags; y: VkImageUsageFlags): bool {.inline.} = +proc `==`*(x: VkImageUsageFlags; y: VkImageUsageFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkImageUsageFlags; y: VkImageUsageFlags): bool {.inline.} = +proc `<=`*(x: VkImageUsageFlags; y: VkImageUsageFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkImageUsageFlags; y: VkImageUsageFlagBits): bool {.inline.} = +proc contains*(x: VkImageUsageFlags; y: VkImageUsageFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkImageCreateFlags]; args: varargs[VkImageCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkImageCreateFlags; y: VkImageCreateFlags): bool {.inline.} = +proc `==`*(x: VkImageCreateFlags; y: VkImageCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkImageCreateFlags; y: VkImageCreateFlags): bool {.inline.} = +proc `<=`*(x: VkImageCreateFlags; y: VkImageCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkImageCreateFlags; y: VkImageCreateFlagBits): bool {.inline.} = +proc contains*(x: VkImageCreateFlags; y: VkImageCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkImageViewCreateFlags]; args: varargs[VkImageViewCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkImageViewCreateFlags; y: VkImageViewCreateFlags): bool {.inline.} = +proc `==`*(x: VkImageViewCreateFlags; y: VkImageViewCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkImageViewCreateFlags; y: VkImageViewCreateFlags): bool {.inline.} = +proc `<=`*(x: VkImageViewCreateFlags; y: VkImageViewCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkImageViewCreateFlags; y: VkImageViewCreateFlagBits): bool {.inline.} = +proc contains*(x: VkImageViewCreateFlags; y: VkImageViewCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkPipelineCreateFlags]; args: varargs[VkPipelineCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkPipelineCreateFlags; y: VkPipelineCreateFlags): bool {.inline.} = +proc `==`*(x: VkPipelineCreateFlags; y: VkPipelineCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkPipelineCreateFlags; y: VkPipelineCreateFlags): bool {.inline.} = +proc `<=`*(x: VkPipelineCreateFlags; y: VkPipelineCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkPipelineCreateFlags; y: VkPipelineCreateFlagBits): bool {.inline.} = +proc contains*(x: VkPipelineCreateFlags; y: VkPipelineCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkColorComponentFlags]; args: varargs[VkColorComponentFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkColorComponentFlags; y: VkColorComponentFlags): bool {.inline.} = +proc `==`*(x: VkColorComponentFlags; y: VkColorComponentFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkColorComponentFlags; y: VkColorComponentFlags): bool {.inline.} = +proc `<=`*(x: VkColorComponentFlags; y: VkColorComponentFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkColorComponentFlags; y: VkColorComponentFlagBits): bool {.inline.} = +proc contains*(x: VkColorComponentFlags; y: VkColorComponentFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkFenceCreateFlags]; args: varargs[VkFenceCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkFenceCreateFlags; y: VkFenceCreateFlags): bool {.inline.} = +proc `==`*(x: VkFenceCreateFlags; y: VkFenceCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkFenceCreateFlags; y: VkFenceCreateFlags): bool {.inline.} = +proc `<=`*(x: VkFenceCreateFlags; y: VkFenceCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkFenceCreateFlags; y: VkFenceCreateFlagBits): bool {.inline.} = +proc contains*(x: VkFenceCreateFlags; y: VkFenceCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkFormatFeatureFlags]; args: varargs[VkFormatFeatureFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkFormatFeatureFlags; y: VkFormatFeatureFlags): bool {.inline.} = +proc `==`*(x: VkFormatFeatureFlags; y: VkFormatFeatureFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkFormatFeatureFlags; y: VkFormatFeatureFlags): bool {.inline.} = +proc `<=`*(x: VkFormatFeatureFlags; y: VkFormatFeatureFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkFormatFeatureFlags; y: VkFormatFeatureFlagBits): bool {.inline.} = +proc contains*(x: VkFormatFeatureFlags; y: VkFormatFeatureFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkQueryControlFlags]; args: varargs[VkQueryControlFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkQueryControlFlags; y: VkQueryControlFlags): bool {.inline.} = +proc `==`*(x: VkQueryControlFlags; y: VkQueryControlFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkQueryControlFlags; y: VkQueryControlFlags): bool {.inline.} = +proc `<=`*(x: VkQueryControlFlags; y: VkQueryControlFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkQueryControlFlags; y: VkQueryControlFlagBits): bool {.inline.} = +proc contains*(x: VkQueryControlFlags; y: VkQueryControlFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkQueryResultFlags]; args: varargs[VkQueryResultFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkQueryResultFlags; y: VkQueryResultFlags): bool {.inline.} = +proc `==`*(x: VkQueryResultFlags; y: VkQueryResultFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkQueryResultFlags; y: VkQueryResultFlags): bool {.inline.} = +proc `<=`*(x: VkQueryResultFlags; y: VkQueryResultFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkQueryResultFlags; y: VkQueryResultFlagBits): bool {.inline.} = +proc contains*(x: VkQueryResultFlags; y: VkQueryResultFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkEventCreateFlags]; args: varargs[VkEventCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkEventCreateFlags; y: VkEventCreateFlags): bool {.inline.} = +proc `==`*(x: VkEventCreateFlags; y: VkEventCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkEventCreateFlags; y: VkEventCreateFlags): bool {.inline.} = +proc `<=`*(x: VkEventCreateFlags; y: VkEventCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkEventCreateFlags; y: VkEventCreateFlagBits): bool {.inline.} = +proc contains*(x: VkEventCreateFlags; y: VkEventCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkCommandPoolCreateFlags]; args: varargs[VkCommandPoolCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkCommandPoolCreateFlags; y: VkCommandPoolCreateFlags): bool {.inline.} = +proc `==`*(x: VkCommandPoolCreateFlags; y: VkCommandPoolCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkCommandPoolCreateFlags; y: VkCommandPoolCreateFlags): bool {.inline.} = +proc `<=`*(x: VkCommandPoolCreateFlags; y: VkCommandPoolCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkCommandPoolCreateFlags; y: VkCommandPoolCreateFlagBits): bool {.inline.} = +proc contains*(x: VkCommandPoolCreateFlags; y: VkCommandPoolCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkCommandPoolResetFlags]; args: varargs[VkCommandPoolResetFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkCommandPoolResetFlags; y: VkCommandPoolResetFlags): bool {.inline.} = +proc `==`*(x: VkCommandPoolResetFlags; y: VkCommandPoolResetFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkCommandPoolResetFlags; y: VkCommandPoolResetFlags): bool {.inline.} = +proc `<=`*(x: VkCommandPoolResetFlags; y: VkCommandPoolResetFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkCommandPoolResetFlags; y: VkCommandPoolResetFlagBits): bool {.inline.} = +proc contains*(x: VkCommandPoolResetFlags; y: VkCommandPoolResetFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkCommandBufferResetFlags]; args: varargs[VkCommandBufferResetFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkCommandBufferResetFlags; y: VkCommandBufferResetFlags): bool {.inline.} = +proc `==`*(x: VkCommandBufferResetFlags; y: VkCommandBufferResetFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkCommandBufferResetFlags; y: VkCommandBufferResetFlags): bool {.inline.} = +proc `<=`*(x: VkCommandBufferResetFlags; y: VkCommandBufferResetFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkCommandBufferResetFlags; y: VkCommandBufferResetFlagBits): bool {.inline.} = +proc contains*(x: VkCommandBufferResetFlags; y: VkCommandBufferResetFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkCommandBufferUsageFlags]; args: varargs[VkCommandBufferUsageFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkCommandBufferUsageFlags; y: VkCommandBufferUsageFlags): bool {.inline.} = +proc `==`*(x: VkCommandBufferUsageFlags; y: VkCommandBufferUsageFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkCommandBufferUsageFlags; y: VkCommandBufferUsageFlags): bool {.inline.} = +proc `<=`*(x: VkCommandBufferUsageFlags; y: VkCommandBufferUsageFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkCommandBufferUsageFlags; y: VkCommandBufferUsageFlagBits): bool {.inline.} = +proc contains*(x: VkCommandBufferUsageFlags; y: VkCommandBufferUsageFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkQueryPipelineStatisticFlags]; args: varargs[VkQueryPipelineStatisticFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkQueryPipelineStatisticFlags; y: VkQueryPipelineStatisticFlags): bool {.inline.} = +proc `==`*(x: VkQueryPipelineStatisticFlags; y: VkQueryPipelineStatisticFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkQueryPipelineStatisticFlags; y: VkQueryPipelineStatisticFlags): bool {.inline.} = +proc `<=`*(x: VkQueryPipelineStatisticFlags; y: VkQueryPipelineStatisticFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkQueryPipelineStatisticFlags; y: VkQueryPipelineStatisticFlagBits): bool {.inline.} = +proc contains*(x: VkQueryPipelineStatisticFlags; y: VkQueryPipelineStatisticFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkMemoryMapFlags]; args: varargs[VkMemoryMapFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkMemoryMapFlags; y: VkMemoryMapFlags): bool {.inline.} = +proc `==`*(x: VkMemoryMapFlags; y: VkMemoryMapFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkMemoryMapFlags; y: VkMemoryMapFlags): bool {.inline.} = +proc `<=`*(x: VkMemoryMapFlags; y: VkMemoryMapFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkMemoryMapFlags; y: VkMemoryMapFlagBits): bool {.inline.} = +proc contains*(x: VkMemoryMapFlags; y: VkMemoryMapFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkMemoryUnmapFlagsKHR]; args: varargs[VkMemoryUnmapFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkMemoryUnmapFlagsKHR; y: VkMemoryUnmapFlagsKHR): bool {.inline.} = +proc `==`*(x: VkMemoryUnmapFlagsKHR; y: VkMemoryUnmapFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkMemoryUnmapFlagsKHR; y: VkMemoryUnmapFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkMemoryUnmapFlagsKHR; y: VkMemoryUnmapFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkMemoryUnmapFlagsKHR; y: VkMemoryUnmapFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkMemoryUnmapFlagsKHR; y: VkMemoryUnmapFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkImageAspectFlags]; args: varargs[VkImageAspectFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkImageAspectFlags; y: VkImageAspectFlags): bool {.inline.} = +proc `==`*(x: VkImageAspectFlags; y: VkImageAspectFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkImageAspectFlags; y: VkImageAspectFlags): bool {.inline.} = +proc `<=`*(x: VkImageAspectFlags; y: VkImageAspectFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkImageAspectFlags; y: VkImageAspectFlagBits): bool {.inline.} = +proc contains*(x: VkImageAspectFlags; y: VkImageAspectFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkSparseMemoryBindFlags]; args: varargs[VkSparseMemoryBindFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkSparseMemoryBindFlags; y: VkSparseMemoryBindFlags): bool {.inline.} = +proc `==`*(x: VkSparseMemoryBindFlags; y: VkSparseMemoryBindFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkSparseMemoryBindFlags; y: VkSparseMemoryBindFlags): bool {.inline.} = +proc `<=`*(x: VkSparseMemoryBindFlags; y: VkSparseMemoryBindFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkSparseMemoryBindFlags; y: VkSparseMemoryBindFlagBits): bool {.inline.} = +proc contains*(x: VkSparseMemoryBindFlags; y: VkSparseMemoryBindFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkSparseImageFormatFlags]; args: varargs[VkSparseImageFormatFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkSparseImageFormatFlags; y: VkSparseImageFormatFlags): bool {.inline.} = +proc `==`*(x: VkSparseImageFormatFlags; y: VkSparseImageFormatFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkSparseImageFormatFlags; y: VkSparseImageFormatFlags): bool {.inline.} = +proc `<=`*(x: VkSparseImageFormatFlags; y: VkSparseImageFormatFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkSparseImageFormatFlags; y: VkSparseImageFormatFlagBits): bool {.inline.} = +proc contains*(x: VkSparseImageFormatFlags; y: VkSparseImageFormatFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkSubpassDescriptionFlags]; args: varargs[VkSubpassDescriptionFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkSubpassDescriptionFlags; y: VkSubpassDescriptionFlags): bool {.inline.} = +proc `==`*(x: VkSubpassDescriptionFlags; y: VkSubpassDescriptionFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkSubpassDescriptionFlags; y: VkSubpassDescriptionFlags): bool {.inline.} = +proc `<=`*(x: VkSubpassDescriptionFlags; y: VkSubpassDescriptionFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkSubpassDescriptionFlags; y: VkSubpassDescriptionFlagBits): bool {.inline.} = +proc contains*(x: VkSubpassDescriptionFlags; y: VkSubpassDescriptionFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkPipelineStageFlags]; args: varargs[VkPipelineStageFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkPipelineStageFlags; y: VkPipelineStageFlags): bool {.inline.} = +proc `==`*(x: VkPipelineStageFlags; y: VkPipelineStageFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkPipelineStageFlags; y: VkPipelineStageFlags): bool {.inline.} = +proc `<=`*(x: VkPipelineStageFlags; y: VkPipelineStageFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkPipelineStageFlags; y: VkPipelineStageFlagBits): bool {.inline.} = +proc contains*(x: VkPipelineStageFlags; y: VkPipelineStageFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkSampleCountFlags]; args: varargs[VkSampleCountFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkSampleCountFlags; y: VkSampleCountFlags): bool {.inline.} = +proc `==`*(x: VkSampleCountFlags; y: VkSampleCountFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkSampleCountFlags; y: VkSampleCountFlags): bool {.inline.} = +proc `<=`*(x: VkSampleCountFlags; y: VkSampleCountFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkSampleCountFlags; y: VkSampleCountFlagBits): bool {.inline.} = +proc contains*(x: VkSampleCountFlags; y: VkSampleCountFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkAttachmentDescriptionFlags]; args: varargs[VkAttachmentDescriptionFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkAttachmentDescriptionFlags; y: VkAttachmentDescriptionFlags): bool {.inline.} = +proc `==`*(x: VkAttachmentDescriptionFlags; y: VkAttachmentDescriptionFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkAttachmentDescriptionFlags; y: VkAttachmentDescriptionFlags): bool {.inline.} = +proc `<=`*(x: VkAttachmentDescriptionFlags; y: VkAttachmentDescriptionFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkAttachmentDescriptionFlags; y: VkAttachmentDescriptionFlagBits): bool {.inline.} = +proc contains*(x: VkAttachmentDescriptionFlags; y: VkAttachmentDescriptionFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkStencilFaceFlags]; args: varargs[VkStencilFaceFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkStencilFaceFlags; y: VkStencilFaceFlags): bool {.inline.} = +proc `==`*(x: VkStencilFaceFlags; y: VkStencilFaceFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkStencilFaceFlags; y: VkStencilFaceFlags): bool {.inline.} = +proc `<=`*(x: VkStencilFaceFlags; y: VkStencilFaceFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkStencilFaceFlags; y: VkStencilFaceFlagBits): bool {.inline.} = +proc contains*(x: VkStencilFaceFlags; y: VkStencilFaceFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkCullModeFlags]; args: varargs[VkCullModeFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkCullModeFlags; y: VkCullModeFlags): bool {.inline.} = +proc `==`*(x: VkCullModeFlags; y: VkCullModeFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkCullModeFlags; y: VkCullModeFlags): bool {.inline.} = +proc `<=`*(x: VkCullModeFlags; y: VkCullModeFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkCullModeFlags; y: VkCullModeFlagBits): bool {.inline.} = +proc contains*(x: VkCullModeFlags; y: VkCullModeFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkDescriptorPoolCreateFlags]; args: varargs[VkDescriptorPoolCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkDescriptorPoolCreateFlags; y: VkDescriptorPoolCreateFlags): bool {.inline.} = +proc `==`*(x: VkDescriptorPoolCreateFlags; y: VkDescriptorPoolCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkDescriptorPoolCreateFlags; y: VkDescriptorPoolCreateFlags): bool {.inline.} = +proc `<=`*(x: VkDescriptorPoolCreateFlags; y: VkDescriptorPoolCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkDescriptorPoolCreateFlags; y: VkDescriptorPoolCreateFlagBits): bool {.inline.} = +proc contains*(x: VkDescriptorPoolCreateFlags; y: VkDescriptorPoolCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkDependencyFlags]; args: varargs[VkDependencyFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkDependencyFlags; y: VkDependencyFlags): bool {.inline.} = +proc `==`*(x: VkDependencyFlags; y: VkDependencyFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkDependencyFlags; y: VkDependencyFlags): bool {.inline.} = +proc `<=`*(x: VkDependencyFlags; y: VkDependencyFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkDependencyFlags; y: VkDependencyFlagBits): bool {.inline.} = +proc contains*(x: VkDependencyFlags; y: VkDependencyFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkSubgroupFeatureFlags]; args: varargs[VkSubgroupFeatureFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkSubgroupFeatureFlags; y: VkSubgroupFeatureFlags): bool {.inline.} = +proc `==`*(x: VkSubgroupFeatureFlags; y: VkSubgroupFeatureFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkSubgroupFeatureFlags; y: VkSubgroupFeatureFlags): bool {.inline.} = +proc `<=`*(x: VkSubgroupFeatureFlags; y: VkSubgroupFeatureFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkSubgroupFeatureFlags; y: VkSubgroupFeatureFlagBits): bool {.inline.} = +proc contains*(x: VkSubgroupFeatureFlags; y: VkSubgroupFeatureFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkIndirectCommandsLayoutUsageFlagsNV]; args: varargs[VkIndirectCommandsLayoutUsageFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkIndirectCommandsLayoutUsageFlagsNV; y: VkIndirectCommandsLayoutUsageFlagsNV): bool {.inline.} = +proc `==`*(x: VkIndirectCommandsLayoutUsageFlagsNV; y: VkIndirectCommandsLayoutUsageFlagsNV): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkIndirectCommandsLayoutUsageFlagsNV; y: VkIndirectCommandsLayoutUsageFlagsNV): bool {.inline.} = +proc `<=`*(x: VkIndirectCommandsLayoutUsageFlagsNV; y: VkIndirectCommandsLayoutUsageFlagsNV): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkIndirectCommandsLayoutUsageFlagsNV; y: VkIndirectCommandsLayoutUsageFlagBitsNV): bool {.inline.} = +proc contains*(x: VkIndirectCommandsLayoutUsageFlagsNV; y: VkIndirectCommandsLayoutUsageFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkIndirectStateFlagsNV]; args: varargs[VkIndirectStateFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkIndirectStateFlagsNV; y: VkIndirectStateFlagsNV): bool {.inline.} = +proc `==`*(x: VkIndirectStateFlagsNV; y: VkIndirectStateFlagsNV): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkIndirectStateFlagsNV; y: VkIndirectStateFlagsNV): bool {.inline.} = +proc `<=`*(x: VkIndirectStateFlagsNV; y: VkIndirectStateFlagsNV): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkIndirectStateFlagsNV; y: VkIndirectStateFlagBitsNV): bool {.inline.} = +proc contains*(x: VkIndirectStateFlagsNV; y: VkIndirectStateFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkGeometryFlagsKHR]; args: varargs[VkGeometryFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkGeometryFlagsKHR; y: VkGeometryFlagsKHR): bool {.inline.} = +proc `==`*(x: VkGeometryFlagsKHR; y: VkGeometryFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkGeometryFlagsKHR; y: VkGeometryFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkGeometryFlagsKHR; y: VkGeometryFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkGeometryFlagsKHR; y: VkGeometryFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkGeometryFlagsKHR; y: VkGeometryFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkGeometryInstanceFlagsKHR]; args: varargs[VkGeometryInstanceFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkGeometryInstanceFlagsKHR; y: VkGeometryInstanceFlagsKHR): bool {.inline.} = +proc `==`*(x: VkGeometryInstanceFlagsKHR; y: VkGeometryInstanceFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkGeometryInstanceFlagsKHR; y: VkGeometryInstanceFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkGeometryInstanceFlagsKHR; y: VkGeometryInstanceFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkGeometryInstanceFlagsKHR; y: VkGeometryInstanceFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkGeometryInstanceFlagsKHR; y: VkGeometryInstanceFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkBuildAccelerationStructureFlagsKHR]; args: varargs[VkBuildAccelerationStructureFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkBuildAccelerationStructureFlagsKHR; y: VkBuildAccelerationStructureFlagsKHR): bool {.inline.} = +proc `==`*(x: VkBuildAccelerationStructureFlagsKHR; y: VkBuildAccelerationStructureFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkBuildAccelerationStructureFlagsKHR; y: VkBuildAccelerationStructureFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkBuildAccelerationStructureFlagsKHR; y: VkBuildAccelerationStructureFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkBuildAccelerationStructureFlagsKHR; y: VkBuildAccelerationStructureFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkBuildAccelerationStructureFlagsKHR; y: VkBuildAccelerationStructureFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkAccelerationStructureCreateFlagsKHR]; args: varargs[VkAccelerationStructureCreateFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkAccelerationStructureCreateFlagsKHR; y: VkAccelerationStructureCreateFlagsKHR): bool {.inline.} = +proc `==`*(x: VkAccelerationStructureCreateFlagsKHR; y: VkAccelerationStructureCreateFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkAccelerationStructureCreateFlagsKHR; y: VkAccelerationStructureCreateFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkAccelerationStructureCreateFlagsKHR; y: VkAccelerationStructureCreateFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkAccelerationStructureCreateFlagsKHR; y: VkAccelerationStructureCreateFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkAccelerationStructureCreateFlagsKHR; y: VkAccelerationStructureCreateFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkPipelineCreationFeedbackFlags]; args: varargs[VkPipelineCreationFeedbackFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkPipelineCreationFeedbackFlags; y: VkPipelineCreationFeedbackFlags): bool {.inline.} = +proc `==`*(x: VkPipelineCreationFeedbackFlags; y: VkPipelineCreationFeedbackFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkPipelineCreationFeedbackFlags; y: VkPipelineCreationFeedbackFlags): bool {.inline.} = +proc `<=`*(x: VkPipelineCreationFeedbackFlags; y: VkPipelineCreationFeedbackFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkPipelineCreationFeedbackFlags; y: VkPipelineCreationFeedbackFlagBits): bool {.inline.} = +proc contains*(x: VkPipelineCreationFeedbackFlags; y: VkPipelineCreationFeedbackFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkPerformanceCounterDescriptionFlagsKHR]; args: varargs[VkPerformanceCounterDescriptionFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkPerformanceCounterDescriptionFlagsKHR; y: VkPerformanceCounterDescriptionFlagsKHR): bool {.inline.} = +proc `==`*(x: VkPerformanceCounterDescriptionFlagsKHR; y: VkPerformanceCounterDescriptionFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkPerformanceCounterDescriptionFlagsKHR; y: VkPerformanceCounterDescriptionFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkPerformanceCounterDescriptionFlagsKHR; y: VkPerformanceCounterDescriptionFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkPerformanceCounterDescriptionFlagsKHR; y: VkPerformanceCounterDescriptionFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkPerformanceCounterDescriptionFlagsKHR; y: VkPerformanceCounterDescriptionFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkSemaphoreWaitFlags]; args: varargs[VkSemaphoreWaitFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkSemaphoreWaitFlags; y: VkSemaphoreWaitFlags): bool {.inline.} = +proc `==`*(x: VkSemaphoreWaitFlags; y: VkSemaphoreWaitFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkSemaphoreWaitFlags; y: VkSemaphoreWaitFlags): bool {.inline.} = +proc `<=`*(x: VkSemaphoreWaitFlags; y: VkSemaphoreWaitFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkSemaphoreWaitFlags; y: VkSemaphoreWaitFlagBits): bool {.inline.} = +proc contains*(x: VkSemaphoreWaitFlags; y: VkSemaphoreWaitFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkDeviceDiagnosticsConfigFlagsNV]; args: varargs[VkDeviceDiagnosticsConfigFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkDeviceDiagnosticsConfigFlagsNV; y: VkDeviceDiagnosticsConfigFlagsNV): bool {.inline.} = +proc `==`*(x: VkDeviceDiagnosticsConfigFlagsNV; y: VkDeviceDiagnosticsConfigFlagsNV): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkDeviceDiagnosticsConfigFlagsNV; y: VkDeviceDiagnosticsConfigFlagsNV): bool {.inline.} = +proc `<=`*(x: VkDeviceDiagnosticsConfigFlagsNV; y: VkDeviceDiagnosticsConfigFlagsNV): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkDeviceDiagnosticsConfigFlagsNV; y: VkDeviceDiagnosticsConfigFlagBitsNV): bool {.inline.} = +proc contains*(x: VkDeviceDiagnosticsConfigFlagsNV; y: VkDeviceDiagnosticsConfigFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkAccessFlags2]; args: varargs[VkAccessFlagBits2]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkAccessFlags2; y: VkAccessFlags2): bool {.inline.} = +proc `==`*(x: VkAccessFlags2; y: VkAccessFlags2): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkAccessFlags2; y: VkAccessFlags2): bool {.inline.} = +proc `<=`*(x: VkAccessFlags2; y: VkAccessFlags2): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkAccessFlags2; y: VkAccessFlagBits2): bool {.inline.} = +proc contains*(x: VkAccessFlags2; y: VkAccessFlagBits2): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkPipelineStageFlags2]; args: varargs[VkPipelineStageFlagBits2]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkPipelineStageFlags2; y: VkPipelineStageFlags2): bool {.inline.} = +proc `==`*(x: VkPipelineStageFlags2; y: VkPipelineStageFlags2): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkPipelineStageFlags2; y: VkPipelineStageFlags2): bool {.inline.} = +proc `<=`*(x: VkPipelineStageFlags2; y: VkPipelineStageFlags2): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkPipelineStageFlags2; y: VkPipelineStageFlagBits2): bool {.inline.} = +proc contains*(x: VkPipelineStageFlags2; y: VkPipelineStageFlagBits2): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkFormatFeatureFlags2]; args: varargs[VkFormatFeatureFlagBits2]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkFormatFeatureFlags2; y: VkFormatFeatureFlags2): bool {.inline.} = +proc `==`*(x: VkFormatFeatureFlags2; y: VkFormatFeatureFlags2): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkFormatFeatureFlags2; y: VkFormatFeatureFlags2): bool {.inline.} = +proc `<=`*(x: VkFormatFeatureFlags2; y: VkFormatFeatureFlags2): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkFormatFeatureFlags2; y: VkFormatFeatureFlagBits2): bool {.inline.} = +proc contains*(x: VkFormatFeatureFlags2; y: VkFormatFeatureFlagBits2): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkRenderingFlags]; args: varargs[VkRenderingFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkRenderingFlags; y: VkRenderingFlags): bool {.inline.} = +proc `==`*(x: VkRenderingFlags; y: VkRenderingFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkRenderingFlags; y: VkRenderingFlags): bool {.inline.} = +proc `<=`*(x: VkRenderingFlags; y: VkRenderingFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkRenderingFlags; y: VkRenderingFlagBits): bool {.inline.} = +proc contains*(x: VkRenderingFlags; y: VkRenderingFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkMemoryDecompressionMethodFlagsNV]; args: varargs[VkMemoryDecompressionMethodFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkMemoryDecompressionMethodFlagsNV; y: VkMemoryDecompressionMethodFlagsNV): bool {.inline.} = +proc `==`*(x: VkMemoryDecompressionMethodFlagsNV; y: VkMemoryDecompressionMethodFlagsNV): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkMemoryDecompressionMethodFlagsNV; y: VkMemoryDecompressionMethodFlagsNV): bool {.inline.} = +proc `<=`*(x: VkMemoryDecompressionMethodFlagsNV; y: VkMemoryDecompressionMethodFlagsNV): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkMemoryDecompressionMethodFlagsNV; y: VkMemoryDecompressionMethodFlagBitsNV): bool {.inline.} = +proc contains*(x: VkMemoryDecompressionMethodFlagsNV; y: VkMemoryDecompressionMethodFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkBuildMicromapFlagsEXT]; args: varargs[VkBuildMicromapFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkBuildMicromapFlagsEXT; y: VkBuildMicromapFlagsEXT): bool {.inline.} = +proc `==`*(x: VkBuildMicromapFlagsEXT; y: VkBuildMicromapFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkBuildMicromapFlagsEXT; y: VkBuildMicromapFlagsEXT): bool {.inline.} = +proc `<=`*(x: VkBuildMicromapFlagsEXT; y: VkBuildMicromapFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkBuildMicromapFlagsEXT; y: VkBuildMicromapFlagBitsEXT): bool {.inline.} = +proc contains*(x: VkBuildMicromapFlagsEXT; y: VkBuildMicromapFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkMicromapCreateFlagsEXT]; args: varargs[VkMicromapCreateFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkMicromapCreateFlagsEXT; y: VkMicromapCreateFlagsEXT): bool {.inline.} = +proc `==`*(x: VkMicromapCreateFlagsEXT; y: VkMicromapCreateFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkMicromapCreateFlagsEXT; y: VkMicromapCreateFlagsEXT): bool {.inline.} = +proc `<=`*(x: VkMicromapCreateFlagsEXT; y: VkMicromapCreateFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkMicromapCreateFlagsEXT; y: VkMicromapCreateFlagBitsEXT): bool {.inline.} = +proc contains*(x: VkMicromapCreateFlagsEXT; y: VkMicromapCreateFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkPipelineCreateFlags2KHR]; args: varargs[VkPipelineCreateFlagBits2KHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkPipelineCreateFlags2KHR; y: VkPipelineCreateFlags2KHR): bool {.inline.} = +proc `==`*(x: VkPipelineCreateFlags2KHR; y: VkPipelineCreateFlags2KHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkPipelineCreateFlags2KHR; y: VkPipelineCreateFlags2KHR): bool {.inline.} = +proc `<=`*(x: VkPipelineCreateFlags2KHR; y: VkPipelineCreateFlags2KHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkPipelineCreateFlags2KHR; y: VkPipelineCreateFlagBits2KHR): bool {.inline.} = +proc contains*(x: VkPipelineCreateFlags2KHR; y: VkPipelineCreateFlagBits2KHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkBufferUsageFlags2KHR]; args: varargs[VkBufferUsageFlagBits2KHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkBufferUsageFlags2KHR; y: VkBufferUsageFlags2KHR): bool {.inline.} = +proc `==`*(x: VkBufferUsageFlags2KHR; y: VkBufferUsageFlags2KHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkBufferUsageFlags2KHR; y: VkBufferUsageFlags2KHR): bool {.inline.} = +proc `<=`*(x: VkBufferUsageFlags2KHR; y: VkBufferUsageFlags2KHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkBufferUsageFlags2KHR; y: VkBufferUsageFlagBits2KHR): bool {.inline.} = +proc contains*(x: VkBufferUsageFlags2KHR; y: VkBufferUsageFlagBits2KHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkCompositeAlphaFlagsKHR]; args: varargs[VkCompositeAlphaFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkCompositeAlphaFlagsKHR; y: VkCompositeAlphaFlagsKHR): bool {.inline.} = +proc `==`*(x: VkCompositeAlphaFlagsKHR; y: VkCompositeAlphaFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkCompositeAlphaFlagsKHR; y: VkCompositeAlphaFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkCompositeAlphaFlagsKHR; y: VkCompositeAlphaFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkCompositeAlphaFlagsKHR; y: VkCompositeAlphaFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkCompositeAlphaFlagsKHR; y: VkCompositeAlphaFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkDisplayPlaneAlphaFlagsKHR]; args: varargs[VkDisplayPlaneAlphaFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkDisplayPlaneAlphaFlagsKHR; y: VkDisplayPlaneAlphaFlagsKHR): bool {.inline.} = +proc `==`*(x: VkDisplayPlaneAlphaFlagsKHR; y: VkDisplayPlaneAlphaFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkDisplayPlaneAlphaFlagsKHR; y: VkDisplayPlaneAlphaFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkDisplayPlaneAlphaFlagsKHR; y: VkDisplayPlaneAlphaFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkDisplayPlaneAlphaFlagsKHR; y: VkDisplayPlaneAlphaFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkDisplayPlaneAlphaFlagsKHR; y: VkDisplayPlaneAlphaFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkSurfaceTransformFlagsKHR]; args: varargs[VkSurfaceTransformFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkSurfaceTransformFlagsKHR; y: VkSurfaceTransformFlagsKHR): bool {.inline.} = +proc `==`*(x: VkSurfaceTransformFlagsKHR; y: VkSurfaceTransformFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkSurfaceTransformFlagsKHR; y: VkSurfaceTransformFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkSurfaceTransformFlagsKHR; y: VkSurfaceTransformFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkSurfaceTransformFlagsKHR; y: VkSurfaceTransformFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkSurfaceTransformFlagsKHR; y: VkSurfaceTransformFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkSwapchainCreateFlagsKHR]; args: varargs[VkSwapchainCreateFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkSwapchainCreateFlagsKHR; y: VkSwapchainCreateFlagsKHR): bool {.inline.} = +proc `==`*(x: VkSwapchainCreateFlagsKHR; y: VkSwapchainCreateFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkSwapchainCreateFlagsKHR; y: VkSwapchainCreateFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkSwapchainCreateFlagsKHR; y: VkSwapchainCreateFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkSwapchainCreateFlagsKHR; y: VkSwapchainCreateFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkSwapchainCreateFlagsKHR; y: VkSwapchainCreateFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkPeerMemoryFeatureFlags]; args: varargs[VkPeerMemoryFeatureFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkPeerMemoryFeatureFlags; y: VkPeerMemoryFeatureFlags): bool {.inline.} = +proc `==`*(x: VkPeerMemoryFeatureFlags; y: VkPeerMemoryFeatureFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkPeerMemoryFeatureFlags; y: VkPeerMemoryFeatureFlags): bool {.inline.} = +proc `<=`*(x: VkPeerMemoryFeatureFlags; y: VkPeerMemoryFeatureFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkPeerMemoryFeatureFlags; y: VkPeerMemoryFeatureFlagBits): bool {.inline.} = +proc contains*(x: VkPeerMemoryFeatureFlags; y: VkPeerMemoryFeatureFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkMemoryAllocateFlags]; args: varargs[VkMemoryAllocateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkMemoryAllocateFlags; y: VkMemoryAllocateFlags): bool {.inline.} = +proc `==`*(x: VkMemoryAllocateFlags; y: VkMemoryAllocateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkMemoryAllocateFlags; y: VkMemoryAllocateFlags): bool {.inline.} = +proc `<=`*(x: VkMemoryAllocateFlags; y: VkMemoryAllocateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkMemoryAllocateFlags; y: VkMemoryAllocateFlagBits): bool {.inline.} = +proc contains*(x: VkMemoryAllocateFlags; y: VkMemoryAllocateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkDeviceGroupPresentModeFlagsKHR]; args: varargs[VkDeviceGroupPresentModeFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkDeviceGroupPresentModeFlagsKHR; y: VkDeviceGroupPresentModeFlagsKHR): bool {.inline.} = +proc `==`*(x: VkDeviceGroupPresentModeFlagsKHR; y: VkDeviceGroupPresentModeFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkDeviceGroupPresentModeFlagsKHR; y: VkDeviceGroupPresentModeFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkDeviceGroupPresentModeFlagsKHR; y: VkDeviceGroupPresentModeFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkDeviceGroupPresentModeFlagsKHR; y: VkDeviceGroupPresentModeFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkDeviceGroupPresentModeFlagsKHR; y: VkDeviceGroupPresentModeFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkDebugReportFlagsEXT]; args: varargs[VkDebugReportFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkDebugReportFlagsEXT; y: VkDebugReportFlagsEXT): bool {.inline.} = +proc `==`*(x: VkDebugReportFlagsEXT; y: VkDebugReportFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkDebugReportFlagsEXT; y: VkDebugReportFlagsEXT): bool {.inline.} = +proc `<=`*(x: VkDebugReportFlagsEXT; y: VkDebugReportFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkDebugReportFlagsEXT; y: VkDebugReportFlagBitsEXT): bool {.inline.} = +proc contains*(x: VkDebugReportFlagsEXT; y: VkDebugReportFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkExternalMemoryHandleTypeFlagsNV]; args: varargs[VkExternalMemoryHandleTypeFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkExternalMemoryHandleTypeFlagsNV; y: VkExternalMemoryHandleTypeFlagsNV): bool {.inline.} = +proc `==`*(x: VkExternalMemoryHandleTypeFlagsNV; y: VkExternalMemoryHandleTypeFlagsNV): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkExternalMemoryHandleTypeFlagsNV; y: VkExternalMemoryHandleTypeFlagsNV): bool {.inline.} = +proc `<=`*(x: VkExternalMemoryHandleTypeFlagsNV; y: VkExternalMemoryHandleTypeFlagsNV): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkExternalMemoryHandleTypeFlagsNV; y: VkExternalMemoryHandleTypeFlagBitsNV): bool {.inline.} = +proc contains*(x: VkExternalMemoryHandleTypeFlagsNV; y: VkExternalMemoryHandleTypeFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkExternalMemoryFeatureFlagsNV]; args: varargs[VkExternalMemoryFeatureFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkExternalMemoryFeatureFlagsNV; y: VkExternalMemoryFeatureFlagsNV): bool {.inline.} = +proc `==`*(x: VkExternalMemoryFeatureFlagsNV; y: VkExternalMemoryFeatureFlagsNV): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkExternalMemoryFeatureFlagsNV; y: VkExternalMemoryFeatureFlagsNV): bool {.inline.} = +proc `<=`*(x: VkExternalMemoryFeatureFlagsNV; y: VkExternalMemoryFeatureFlagsNV): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkExternalMemoryFeatureFlagsNV; y: VkExternalMemoryFeatureFlagBitsNV): bool {.inline.} = +proc contains*(x: VkExternalMemoryFeatureFlagsNV; y: VkExternalMemoryFeatureFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkExternalMemoryHandleTypeFlags]; args: varargs[VkExternalMemoryHandleTypeFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkExternalMemoryHandleTypeFlags; y: VkExternalMemoryHandleTypeFlags): bool {.inline.} = +proc `==`*(x: VkExternalMemoryHandleTypeFlags; y: VkExternalMemoryHandleTypeFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkExternalMemoryHandleTypeFlags; y: VkExternalMemoryHandleTypeFlags): bool {.inline.} = +proc `<=`*(x: VkExternalMemoryHandleTypeFlags; y: VkExternalMemoryHandleTypeFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkExternalMemoryHandleTypeFlags; y: VkExternalMemoryHandleTypeFlagBits): bool {.inline.} = +proc contains*(x: VkExternalMemoryHandleTypeFlags; y: VkExternalMemoryHandleTypeFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkExternalMemoryFeatureFlags]; args: varargs[VkExternalMemoryFeatureFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkExternalMemoryFeatureFlags; y: VkExternalMemoryFeatureFlags): bool {.inline.} = +proc `==`*(x: VkExternalMemoryFeatureFlags; y: VkExternalMemoryFeatureFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkExternalMemoryFeatureFlags; y: VkExternalMemoryFeatureFlags): bool {.inline.} = +proc `<=`*(x: VkExternalMemoryFeatureFlags; y: VkExternalMemoryFeatureFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkExternalMemoryFeatureFlags; y: VkExternalMemoryFeatureFlagBits): bool {.inline.} = +proc contains*(x: VkExternalMemoryFeatureFlags; y: VkExternalMemoryFeatureFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkExternalSemaphoreHandleTypeFlags]; args: varargs[VkExternalSemaphoreHandleTypeFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkExternalSemaphoreHandleTypeFlags; y: VkExternalSemaphoreHandleTypeFlags): bool {.inline.} = +proc `==`*(x: VkExternalSemaphoreHandleTypeFlags; y: VkExternalSemaphoreHandleTypeFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkExternalSemaphoreHandleTypeFlags; y: VkExternalSemaphoreHandleTypeFlags): bool {.inline.} = +proc `<=`*(x: VkExternalSemaphoreHandleTypeFlags; y: VkExternalSemaphoreHandleTypeFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkExternalSemaphoreHandleTypeFlags; y: VkExternalSemaphoreHandleTypeFlagBits): bool {.inline.} = +proc contains*(x: VkExternalSemaphoreHandleTypeFlags; y: VkExternalSemaphoreHandleTypeFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkExternalSemaphoreFeatureFlags]; args: varargs[VkExternalSemaphoreFeatureFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkExternalSemaphoreFeatureFlags; y: VkExternalSemaphoreFeatureFlags): bool {.inline.} = +proc `==`*(x: VkExternalSemaphoreFeatureFlags; y: VkExternalSemaphoreFeatureFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkExternalSemaphoreFeatureFlags; y: VkExternalSemaphoreFeatureFlags): bool {.inline.} = +proc `<=`*(x: VkExternalSemaphoreFeatureFlags; y: VkExternalSemaphoreFeatureFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkExternalSemaphoreFeatureFlags; y: VkExternalSemaphoreFeatureFlagBits): bool {.inline.} = +proc contains*(x: VkExternalSemaphoreFeatureFlags; y: VkExternalSemaphoreFeatureFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkSemaphoreImportFlags]; args: varargs[VkSemaphoreImportFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkSemaphoreImportFlags; y: VkSemaphoreImportFlags): bool {.inline.} = +proc `==`*(x: VkSemaphoreImportFlags; y: VkSemaphoreImportFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkSemaphoreImportFlags; y: VkSemaphoreImportFlags): bool {.inline.} = +proc `<=`*(x: VkSemaphoreImportFlags; y: VkSemaphoreImportFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkSemaphoreImportFlags; y: VkSemaphoreImportFlagBits): bool {.inline.} = +proc contains*(x: VkSemaphoreImportFlags; y: VkSemaphoreImportFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkExternalFenceHandleTypeFlags]; args: varargs[VkExternalFenceHandleTypeFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkExternalFenceHandleTypeFlags; y: VkExternalFenceHandleTypeFlags): bool {.inline.} = +proc `==`*(x: VkExternalFenceHandleTypeFlags; y: VkExternalFenceHandleTypeFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkExternalFenceHandleTypeFlags; y: VkExternalFenceHandleTypeFlags): bool {.inline.} = +proc `<=`*(x: VkExternalFenceHandleTypeFlags; y: VkExternalFenceHandleTypeFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkExternalFenceHandleTypeFlags; y: VkExternalFenceHandleTypeFlagBits): bool {.inline.} = +proc contains*(x: VkExternalFenceHandleTypeFlags; y: VkExternalFenceHandleTypeFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkExternalFenceFeatureFlags]; args: varargs[VkExternalFenceFeatureFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkExternalFenceFeatureFlags; y: VkExternalFenceFeatureFlags): bool {.inline.} = +proc `==`*(x: VkExternalFenceFeatureFlags; y: VkExternalFenceFeatureFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkExternalFenceFeatureFlags; y: VkExternalFenceFeatureFlags): bool {.inline.} = +proc `<=`*(x: VkExternalFenceFeatureFlags; y: VkExternalFenceFeatureFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkExternalFenceFeatureFlags; y: VkExternalFenceFeatureFlagBits): bool {.inline.} = +proc contains*(x: VkExternalFenceFeatureFlags; y: VkExternalFenceFeatureFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkFenceImportFlags]; args: varargs[VkFenceImportFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkFenceImportFlags; y: VkFenceImportFlags): bool {.inline.} = +proc `==`*(x: VkFenceImportFlags; y: VkFenceImportFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkFenceImportFlags; y: VkFenceImportFlags): bool {.inline.} = +proc `<=`*(x: VkFenceImportFlags; y: VkFenceImportFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkFenceImportFlags; y: VkFenceImportFlagBits): bool {.inline.} = +proc contains*(x: VkFenceImportFlags; y: VkFenceImportFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkSurfaceCounterFlagsEXT]; args: varargs[VkSurfaceCounterFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkSurfaceCounterFlagsEXT; y: VkSurfaceCounterFlagsEXT): bool {.inline.} = +proc `==`*(x: VkSurfaceCounterFlagsEXT; y: VkSurfaceCounterFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkSurfaceCounterFlagsEXT; y: VkSurfaceCounterFlagsEXT): bool {.inline.} = +proc `<=`*(x: VkSurfaceCounterFlagsEXT; y: VkSurfaceCounterFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkSurfaceCounterFlagsEXT; y: VkSurfaceCounterFlagBitsEXT): bool {.inline.} = +proc contains*(x: VkSurfaceCounterFlagsEXT; y: VkSurfaceCounterFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkDebugUtilsMessageSeverityFlagsEXT]; args: varargs[VkDebugUtilsMessageSeverityFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkDebugUtilsMessageSeverityFlagsEXT; y: VkDebugUtilsMessageSeverityFlagsEXT): bool {.inline.} = +proc `==`*(x: VkDebugUtilsMessageSeverityFlagsEXT; y: VkDebugUtilsMessageSeverityFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkDebugUtilsMessageSeverityFlagsEXT; y: VkDebugUtilsMessageSeverityFlagsEXT): bool {.inline.} = +proc `<=`*(x: VkDebugUtilsMessageSeverityFlagsEXT; y: VkDebugUtilsMessageSeverityFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkDebugUtilsMessageSeverityFlagsEXT; y: VkDebugUtilsMessageSeverityFlagBitsEXT): bool {.inline.} = +proc contains*(x: VkDebugUtilsMessageSeverityFlagsEXT; y: VkDebugUtilsMessageSeverityFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkDebugUtilsMessageTypeFlagsEXT]; args: varargs[VkDebugUtilsMessageTypeFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkDebugUtilsMessageTypeFlagsEXT; y: VkDebugUtilsMessageTypeFlagsEXT): bool {.inline.} = +proc `==`*(x: VkDebugUtilsMessageTypeFlagsEXT; y: VkDebugUtilsMessageTypeFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkDebugUtilsMessageTypeFlagsEXT; y: VkDebugUtilsMessageTypeFlagsEXT): bool {.inline.} = +proc `<=`*(x: VkDebugUtilsMessageTypeFlagsEXT; y: VkDebugUtilsMessageTypeFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkDebugUtilsMessageTypeFlagsEXT; y: VkDebugUtilsMessageTypeFlagBitsEXT): bool {.inline.} = +proc contains*(x: VkDebugUtilsMessageTypeFlagsEXT; y: VkDebugUtilsMessageTypeFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkDescriptorBindingFlags]; args: varargs[VkDescriptorBindingFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkDescriptorBindingFlags; y: VkDescriptorBindingFlags): bool {.inline.} = +proc `==`*(x: VkDescriptorBindingFlags; y: VkDescriptorBindingFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkDescriptorBindingFlags; y: VkDescriptorBindingFlags): bool {.inline.} = +proc `<=`*(x: VkDescriptorBindingFlags; y: VkDescriptorBindingFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkDescriptorBindingFlags; y: VkDescriptorBindingFlagBits): bool {.inline.} = +proc contains*(x: VkDescriptorBindingFlags; y: VkDescriptorBindingFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkConditionalRenderingFlagsEXT]; args: varargs[VkConditionalRenderingFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkConditionalRenderingFlagsEXT; y: VkConditionalRenderingFlagsEXT): bool {.inline.} = +proc `==`*(x: VkConditionalRenderingFlagsEXT; y: VkConditionalRenderingFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkConditionalRenderingFlagsEXT; y: VkConditionalRenderingFlagsEXT): bool {.inline.} = +proc `<=`*(x: VkConditionalRenderingFlagsEXT; y: VkConditionalRenderingFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkConditionalRenderingFlagsEXT; y: VkConditionalRenderingFlagBitsEXT): bool {.inline.} = +proc contains*(x: VkConditionalRenderingFlagsEXT; y: VkConditionalRenderingFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkResolveModeFlags]; args: varargs[VkResolveModeFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkResolveModeFlags; y: VkResolveModeFlags): bool {.inline.} = +proc `==`*(x: VkResolveModeFlags; y: VkResolveModeFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkResolveModeFlags; y: VkResolveModeFlags): bool {.inline.} = +proc `<=`*(x: VkResolveModeFlags; y: VkResolveModeFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkResolveModeFlags; y: VkResolveModeFlagBits): bool {.inline.} = +proc contains*(x: VkResolveModeFlags; y: VkResolveModeFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkSwapchainImageUsageFlagsANDROID]; args: varargs[VkSwapchainImageUsageFlagBitsANDROID]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkSwapchainImageUsageFlagsANDROID; y: VkSwapchainImageUsageFlagsANDROID): bool {.inline.} = +proc `==`*(x: VkSwapchainImageUsageFlagsANDROID; y: VkSwapchainImageUsageFlagsANDROID): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkSwapchainImageUsageFlagsANDROID; y: VkSwapchainImageUsageFlagsANDROID): bool {.inline.} = +proc `<=`*(x: VkSwapchainImageUsageFlagsANDROID; y: VkSwapchainImageUsageFlagsANDROID): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkSwapchainImageUsageFlagsANDROID; y: VkSwapchainImageUsageFlagBitsANDROID): bool {.inline.} = +proc contains*(x: VkSwapchainImageUsageFlagsANDROID; y: VkSwapchainImageUsageFlagBitsANDROID): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkToolPurposeFlags]; args: varargs[VkToolPurposeFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkToolPurposeFlags; y: VkToolPurposeFlags): bool {.inline.} = +proc `==`*(x: VkToolPurposeFlags; y: VkToolPurposeFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkToolPurposeFlags; y: VkToolPurposeFlags): bool {.inline.} = +proc `<=`*(x: VkToolPurposeFlags; y: VkToolPurposeFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkToolPurposeFlags; y: VkToolPurposeFlagBits): bool {.inline.} = +proc contains*(x: VkToolPurposeFlags; y: VkToolPurposeFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkSubmitFlags]; args: varargs[VkSubmitFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkSubmitFlags; y: VkSubmitFlags): bool {.inline.} = +proc `==`*(x: VkSubmitFlags; y: VkSubmitFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkSubmitFlags; y: VkSubmitFlags): bool {.inline.} = +proc `<=`*(x: VkSubmitFlags; y: VkSubmitFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkSubmitFlags; y: VkSubmitFlagBits): bool {.inline.} = +proc contains*(x: VkSubmitFlags; y: VkSubmitFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkHostImageCopyFlagsEXT]; args: varargs[VkHostImageCopyFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkHostImageCopyFlagsEXT; y: VkHostImageCopyFlagsEXT): bool {.inline.} = +proc `==`*(x: VkHostImageCopyFlagsEXT; y: VkHostImageCopyFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkHostImageCopyFlagsEXT; y: VkHostImageCopyFlagsEXT): bool {.inline.} = +proc `<=`*(x: VkHostImageCopyFlagsEXT; y: VkHostImageCopyFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkHostImageCopyFlagsEXT; y: VkHostImageCopyFlagBitsEXT): bool {.inline.} = +proc contains*(x: VkHostImageCopyFlagsEXT; y: VkHostImageCopyFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkImageConstraintsInfoFlagsFUCHSIA]; args: varargs[VkImageConstraintsInfoFlagBitsFUCHSIA]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkImageConstraintsInfoFlagsFUCHSIA; y: VkImageConstraintsInfoFlagsFUCHSIA): bool {.inline.} = +proc `==`*(x: VkImageConstraintsInfoFlagsFUCHSIA; y: VkImageConstraintsInfoFlagsFUCHSIA): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkImageConstraintsInfoFlagsFUCHSIA; y: VkImageConstraintsInfoFlagsFUCHSIA): bool {.inline.} = +proc `<=`*(x: VkImageConstraintsInfoFlagsFUCHSIA; y: VkImageConstraintsInfoFlagsFUCHSIA): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkImageConstraintsInfoFlagsFUCHSIA; y: VkImageConstraintsInfoFlagBitsFUCHSIA): bool {.inline.} = +proc contains*(x: VkImageConstraintsInfoFlagsFUCHSIA; y: VkImageConstraintsInfoFlagBitsFUCHSIA): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkGraphicsPipelineLibraryFlagsEXT]; args: varargs[VkGraphicsPipelineLibraryFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkGraphicsPipelineLibraryFlagsEXT; y: VkGraphicsPipelineLibraryFlagsEXT): bool {.inline.} = +proc `==`*(x: VkGraphicsPipelineLibraryFlagsEXT; y: VkGraphicsPipelineLibraryFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkGraphicsPipelineLibraryFlagsEXT; y: VkGraphicsPipelineLibraryFlagsEXT): bool {.inline.} = +proc `<=`*(x: VkGraphicsPipelineLibraryFlagsEXT; y: VkGraphicsPipelineLibraryFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkGraphicsPipelineLibraryFlagsEXT; y: VkGraphicsPipelineLibraryFlagBitsEXT): bool {.inline.} = +proc contains*(x: VkGraphicsPipelineLibraryFlagsEXT; y: VkGraphicsPipelineLibraryFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkImageCompressionFlagsEXT]; args: varargs[VkImageCompressionFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkImageCompressionFlagsEXT; y: VkImageCompressionFlagsEXT): bool {.inline.} = +proc `==`*(x: VkImageCompressionFlagsEXT; y: VkImageCompressionFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkImageCompressionFlagsEXT; y: VkImageCompressionFlagsEXT): bool {.inline.} = +proc `<=`*(x: VkImageCompressionFlagsEXT; y: VkImageCompressionFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkImageCompressionFlagsEXT; y: VkImageCompressionFlagBitsEXT): bool {.inline.} = +proc contains*(x: VkImageCompressionFlagsEXT; y: VkImageCompressionFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkImageCompressionFixedRateFlagsEXT]; args: varargs[VkImageCompressionFixedRateFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkImageCompressionFixedRateFlagsEXT; y: VkImageCompressionFixedRateFlagsEXT): bool {.inline.} = +proc `==`*(x: VkImageCompressionFixedRateFlagsEXT; y: VkImageCompressionFixedRateFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkImageCompressionFixedRateFlagsEXT; y: VkImageCompressionFixedRateFlagsEXT): bool {.inline.} = +proc `<=`*(x: VkImageCompressionFixedRateFlagsEXT; y: VkImageCompressionFixedRateFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkImageCompressionFixedRateFlagsEXT; y: VkImageCompressionFixedRateFlagBitsEXT): bool {.inline.} = +proc contains*(x: VkImageCompressionFixedRateFlagsEXT; y: VkImageCompressionFixedRateFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkExportMetalObjectTypeFlagsEXT]; args: varargs[VkExportMetalObjectTypeFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkExportMetalObjectTypeFlagsEXT; y: VkExportMetalObjectTypeFlagsEXT): bool {.inline.} = +proc `==`*(x: VkExportMetalObjectTypeFlagsEXT; y: VkExportMetalObjectTypeFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkExportMetalObjectTypeFlagsEXT; y: VkExportMetalObjectTypeFlagsEXT): bool {.inline.} = +proc `<=`*(x: VkExportMetalObjectTypeFlagsEXT; y: VkExportMetalObjectTypeFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkExportMetalObjectTypeFlagsEXT; y: VkExportMetalObjectTypeFlagBitsEXT): bool {.inline.} = +proc contains*(x: VkExportMetalObjectTypeFlagsEXT; y: VkExportMetalObjectTypeFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkDeviceAddressBindingFlagsEXT]; args: varargs[VkDeviceAddressBindingFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkDeviceAddressBindingFlagsEXT; y: VkDeviceAddressBindingFlagsEXT): bool {.inline.} = +proc `==`*(x: VkDeviceAddressBindingFlagsEXT; y: VkDeviceAddressBindingFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkDeviceAddressBindingFlagsEXT; y: VkDeviceAddressBindingFlagsEXT): bool {.inline.} = +proc `<=`*(x: VkDeviceAddressBindingFlagsEXT; y: VkDeviceAddressBindingFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkDeviceAddressBindingFlagsEXT; y: VkDeviceAddressBindingFlagBitsEXT): bool {.inline.} = +proc contains*(x: VkDeviceAddressBindingFlagsEXT; y: VkDeviceAddressBindingFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkOpticalFlowGridSizeFlagsNV]; args: varargs[VkOpticalFlowGridSizeFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkOpticalFlowGridSizeFlagsNV; y: VkOpticalFlowGridSizeFlagsNV): bool {.inline.} = +proc `==`*(x: VkOpticalFlowGridSizeFlagsNV; y: VkOpticalFlowGridSizeFlagsNV): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkOpticalFlowGridSizeFlagsNV; y: VkOpticalFlowGridSizeFlagsNV): bool {.inline.} = +proc `<=`*(x: VkOpticalFlowGridSizeFlagsNV; y: VkOpticalFlowGridSizeFlagsNV): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkOpticalFlowGridSizeFlagsNV; y: VkOpticalFlowGridSizeFlagBitsNV): bool {.inline.} = +proc contains*(x: VkOpticalFlowGridSizeFlagsNV; y: VkOpticalFlowGridSizeFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkOpticalFlowUsageFlagsNV]; args: varargs[VkOpticalFlowUsageFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkOpticalFlowUsageFlagsNV; y: VkOpticalFlowUsageFlagsNV): bool {.inline.} = +proc `==`*(x: VkOpticalFlowUsageFlagsNV; y: VkOpticalFlowUsageFlagsNV): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkOpticalFlowUsageFlagsNV; y: VkOpticalFlowUsageFlagsNV): bool {.inline.} = +proc `<=`*(x: VkOpticalFlowUsageFlagsNV; y: VkOpticalFlowUsageFlagsNV): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkOpticalFlowUsageFlagsNV; y: VkOpticalFlowUsageFlagBitsNV): bool {.inline.} = +proc contains*(x: VkOpticalFlowUsageFlagsNV; y: VkOpticalFlowUsageFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkOpticalFlowSessionCreateFlagsNV]; args: varargs[VkOpticalFlowSessionCreateFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkOpticalFlowSessionCreateFlagsNV; y: VkOpticalFlowSessionCreateFlagsNV): bool {.inline.} = +proc `==`*(x: VkOpticalFlowSessionCreateFlagsNV; y: VkOpticalFlowSessionCreateFlagsNV): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkOpticalFlowSessionCreateFlagsNV; y: VkOpticalFlowSessionCreateFlagsNV): bool {.inline.} = +proc `<=`*(x: VkOpticalFlowSessionCreateFlagsNV; y: VkOpticalFlowSessionCreateFlagsNV): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkOpticalFlowSessionCreateFlagsNV; y: VkOpticalFlowSessionCreateFlagBitsNV): bool {.inline.} = +proc contains*(x: VkOpticalFlowSessionCreateFlagsNV; y: VkOpticalFlowSessionCreateFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkOpticalFlowExecuteFlagsNV]; args: varargs[VkOpticalFlowExecuteFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkOpticalFlowExecuteFlagsNV; y: VkOpticalFlowExecuteFlagsNV): bool {.inline.} = +proc `==`*(x: VkOpticalFlowExecuteFlagsNV; y: VkOpticalFlowExecuteFlagsNV): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkOpticalFlowExecuteFlagsNV; y: VkOpticalFlowExecuteFlagsNV): bool {.inline.} = +proc `<=`*(x: VkOpticalFlowExecuteFlagsNV; y: VkOpticalFlowExecuteFlagsNV): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkOpticalFlowExecuteFlagsNV; y: VkOpticalFlowExecuteFlagBitsNV): bool {.inline.} = +proc contains*(x: VkOpticalFlowExecuteFlagsNV; y: VkOpticalFlowExecuteFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkFrameBoundaryFlagsEXT]; args: varargs[VkFrameBoundaryFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkFrameBoundaryFlagsEXT; y: VkFrameBoundaryFlagsEXT): bool {.inline.} = +proc `==`*(x: VkFrameBoundaryFlagsEXT; y: VkFrameBoundaryFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkFrameBoundaryFlagsEXT; y: VkFrameBoundaryFlagsEXT): bool {.inline.} = +proc `<=`*(x: VkFrameBoundaryFlagsEXT; y: VkFrameBoundaryFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkFrameBoundaryFlagsEXT; y: VkFrameBoundaryFlagBitsEXT): bool {.inline.} = +proc contains*(x: VkFrameBoundaryFlagsEXT; y: VkFrameBoundaryFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkPresentScalingFlagsEXT]; args: varargs[VkPresentScalingFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkPresentScalingFlagsEXT; y: VkPresentScalingFlagsEXT): bool {.inline.} = +proc `==`*(x: VkPresentScalingFlagsEXT; y: VkPresentScalingFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkPresentScalingFlagsEXT; y: VkPresentScalingFlagsEXT): bool {.inline.} = +proc `<=`*(x: VkPresentScalingFlagsEXT; y: VkPresentScalingFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkPresentScalingFlagsEXT; y: VkPresentScalingFlagBitsEXT): bool {.inline.} = +proc contains*(x: VkPresentScalingFlagsEXT; y: VkPresentScalingFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkPresentGravityFlagsEXT]; args: varargs[VkPresentGravityFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkPresentGravityFlagsEXT; y: VkPresentGravityFlagsEXT): bool {.inline.} = +proc `==`*(x: VkPresentGravityFlagsEXT; y: VkPresentGravityFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkPresentGravityFlagsEXT; y: VkPresentGravityFlagsEXT): bool {.inline.} = +proc `<=`*(x: VkPresentGravityFlagsEXT; y: VkPresentGravityFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkPresentGravityFlagsEXT; y: VkPresentGravityFlagBitsEXT): bool {.inline.} = +proc contains*(x: VkPresentGravityFlagsEXT; y: VkPresentGravityFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkShaderCreateFlagsEXT]; args: varargs[VkShaderCreateFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkShaderCreateFlagsEXT; y: VkShaderCreateFlagsEXT): bool {.inline.} = +proc `==`*(x: VkShaderCreateFlagsEXT; y: VkShaderCreateFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkShaderCreateFlagsEXT; y: VkShaderCreateFlagsEXT): bool {.inline.} = +proc `<=`*(x: VkShaderCreateFlagsEXT; y: VkShaderCreateFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkShaderCreateFlagsEXT; y: VkShaderCreateFlagBitsEXT): bool {.inline.} = +proc contains*(x: VkShaderCreateFlagsEXT; y: VkShaderCreateFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkPhysicalDeviceSchedulingControlsFlagsARM]; args: varargs[VkPhysicalDeviceSchedulingControlsFlagBitsARM]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkPhysicalDeviceSchedulingControlsFlagsARM; y: VkPhysicalDeviceSchedulingControlsFlagsARM): bool {.inline.} = +proc `==`*(x: VkPhysicalDeviceSchedulingControlsFlagsARM; y: VkPhysicalDeviceSchedulingControlsFlagsARM): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkPhysicalDeviceSchedulingControlsFlagsARM; y: VkPhysicalDeviceSchedulingControlsFlagsARM): bool {.inline.} = +proc `<=`*(x: VkPhysicalDeviceSchedulingControlsFlagsARM; y: VkPhysicalDeviceSchedulingControlsFlagsARM): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkPhysicalDeviceSchedulingControlsFlagsARM; y: VkPhysicalDeviceSchedulingControlsFlagBitsARM): bool {.inline.} = +proc contains*(x: VkPhysicalDeviceSchedulingControlsFlagsARM; y: VkPhysicalDeviceSchedulingControlsFlagBitsARM): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkVideoCodecOperationFlagsKHR]; args: varargs[VkVideoCodecOperationFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkVideoCodecOperationFlagsKHR; y: VkVideoCodecOperationFlagsKHR): bool {.inline.} = +proc `==`*(x: VkVideoCodecOperationFlagsKHR; y: VkVideoCodecOperationFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkVideoCodecOperationFlagsKHR; y: VkVideoCodecOperationFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkVideoCodecOperationFlagsKHR; y: VkVideoCodecOperationFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkVideoCodecOperationFlagsKHR; y: VkVideoCodecOperationFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkVideoCodecOperationFlagsKHR; y: VkVideoCodecOperationFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkVideoCapabilityFlagsKHR]; args: varargs[VkVideoCapabilityFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkVideoCapabilityFlagsKHR; y: VkVideoCapabilityFlagsKHR): bool {.inline.} = +proc `==`*(x: VkVideoCapabilityFlagsKHR; y: VkVideoCapabilityFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkVideoCapabilityFlagsKHR; y: VkVideoCapabilityFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkVideoCapabilityFlagsKHR; y: VkVideoCapabilityFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkVideoCapabilityFlagsKHR; y: VkVideoCapabilityFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkVideoCapabilityFlagsKHR; y: VkVideoCapabilityFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkVideoSessionCreateFlagsKHR]; args: varargs[VkVideoSessionCreateFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkVideoSessionCreateFlagsKHR; y: VkVideoSessionCreateFlagsKHR): bool {.inline.} = +proc `==`*(x: VkVideoSessionCreateFlagsKHR; y: VkVideoSessionCreateFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkVideoSessionCreateFlagsKHR; y: VkVideoSessionCreateFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkVideoSessionCreateFlagsKHR; y: VkVideoSessionCreateFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkVideoSessionCreateFlagsKHR; y: VkVideoSessionCreateFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkVideoSessionCreateFlagsKHR; y: VkVideoSessionCreateFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkVideoCodingControlFlagsKHR]; args: varargs[VkVideoCodingControlFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkVideoCodingControlFlagsKHR; y: VkVideoCodingControlFlagsKHR): bool {.inline.} = +proc `==`*(x: VkVideoCodingControlFlagsKHR; y: VkVideoCodingControlFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkVideoCodingControlFlagsKHR; y: VkVideoCodingControlFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkVideoCodingControlFlagsKHR; y: VkVideoCodingControlFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkVideoCodingControlFlagsKHR; y: VkVideoCodingControlFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkVideoCodingControlFlagsKHR; y: VkVideoCodingControlFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkVideoDecodeUsageFlagsKHR]; args: varargs[VkVideoDecodeUsageFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkVideoDecodeUsageFlagsKHR; y: VkVideoDecodeUsageFlagsKHR): bool {.inline.} = +proc `==`*(x: VkVideoDecodeUsageFlagsKHR; y: VkVideoDecodeUsageFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkVideoDecodeUsageFlagsKHR; y: VkVideoDecodeUsageFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkVideoDecodeUsageFlagsKHR; y: VkVideoDecodeUsageFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkVideoDecodeUsageFlagsKHR; y: VkVideoDecodeUsageFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkVideoDecodeUsageFlagsKHR; y: VkVideoDecodeUsageFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkVideoDecodeCapabilityFlagsKHR]; args: varargs[VkVideoDecodeCapabilityFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkVideoDecodeCapabilityFlagsKHR; y: VkVideoDecodeCapabilityFlagsKHR): bool {.inline.} = +proc `==`*(x: VkVideoDecodeCapabilityFlagsKHR; y: VkVideoDecodeCapabilityFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkVideoDecodeCapabilityFlagsKHR; y: VkVideoDecodeCapabilityFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkVideoDecodeCapabilityFlagsKHR; y: VkVideoDecodeCapabilityFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkVideoDecodeCapabilityFlagsKHR; y: VkVideoDecodeCapabilityFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkVideoDecodeCapabilityFlagsKHR; y: VkVideoDecodeCapabilityFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkVideoDecodeH264PictureLayoutFlagsKHR]; args: varargs[VkVideoDecodeH264PictureLayoutFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkVideoDecodeH264PictureLayoutFlagsKHR; y: VkVideoDecodeH264PictureLayoutFlagsKHR): bool {.inline.} = +proc `==`*(x: VkVideoDecodeH264PictureLayoutFlagsKHR; y: VkVideoDecodeH264PictureLayoutFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkVideoDecodeH264PictureLayoutFlagsKHR; y: VkVideoDecodeH264PictureLayoutFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkVideoDecodeH264PictureLayoutFlagsKHR; y: VkVideoDecodeH264PictureLayoutFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkVideoDecodeH264PictureLayoutFlagsKHR; y: VkVideoDecodeH264PictureLayoutFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkVideoDecodeH264PictureLayoutFlagsKHR; y: VkVideoDecodeH264PictureLayoutFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkVideoEncodeUsageFlagsKHR]; args: varargs[VkVideoEncodeUsageFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkVideoEncodeUsageFlagsKHR; y: VkVideoEncodeUsageFlagsKHR): bool {.inline.} = +proc `==`*(x: VkVideoEncodeUsageFlagsKHR; y: VkVideoEncodeUsageFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkVideoEncodeUsageFlagsKHR; y: VkVideoEncodeUsageFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkVideoEncodeUsageFlagsKHR; y: VkVideoEncodeUsageFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkVideoEncodeUsageFlagsKHR; y: VkVideoEncodeUsageFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkVideoEncodeUsageFlagsKHR; y: VkVideoEncodeUsageFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkVideoEncodeContentFlagsKHR]; args: varargs[VkVideoEncodeContentFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkVideoEncodeContentFlagsKHR; y: VkVideoEncodeContentFlagsKHR): bool {.inline.} = +proc `==`*(x: VkVideoEncodeContentFlagsKHR; y: VkVideoEncodeContentFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkVideoEncodeContentFlagsKHR; y: VkVideoEncodeContentFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkVideoEncodeContentFlagsKHR; y: VkVideoEncodeContentFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkVideoEncodeContentFlagsKHR; y: VkVideoEncodeContentFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkVideoEncodeContentFlagsKHR; y: VkVideoEncodeContentFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkVideoEncodeCapabilityFlagsKHR]; args: varargs[VkVideoEncodeCapabilityFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkVideoEncodeCapabilityFlagsKHR; y: VkVideoEncodeCapabilityFlagsKHR): bool {.inline.} = +proc `==`*(x: VkVideoEncodeCapabilityFlagsKHR; y: VkVideoEncodeCapabilityFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkVideoEncodeCapabilityFlagsKHR; y: VkVideoEncodeCapabilityFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkVideoEncodeCapabilityFlagsKHR; y: VkVideoEncodeCapabilityFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkVideoEncodeCapabilityFlagsKHR; y: VkVideoEncodeCapabilityFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkVideoEncodeCapabilityFlagsKHR; y: VkVideoEncodeCapabilityFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkVideoEncodeFeedbackFlagsKHR]; args: varargs[VkVideoEncodeFeedbackFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkVideoEncodeFeedbackFlagsKHR; y: VkVideoEncodeFeedbackFlagsKHR): bool {.inline.} = +proc `==`*(x: VkVideoEncodeFeedbackFlagsKHR; y: VkVideoEncodeFeedbackFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkVideoEncodeFeedbackFlagsKHR; y: VkVideoEncodeFeedbackFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkVideoEncodeFeedbackFlagsKHR; y: VkVideoEncodeFeedbackFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkVideoEncodeFeedbackFlagsKHR; y: VkVideoEncodeFeedbackFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkVideoEncodeFeedbackFlagsKHR; y: VkVideoEncodeFeedbackFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkVideoEncodeRateControlModeFlagsKHR]; args: varargs[VkVideoEncodeRateControlModeFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkVideoEncodeRateControlModeFlagsKHR; y: VkVideoEncodeRateControlModeFlagsKHR): bool {.inline.} = +proc `==`*(x: VkVideoEncodeRateControlModeFlagsKHR; y: VkVideoEncodeRateControlModeFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkVideoEncodeRateControlModeFlagsKHR; y: VkVideoEncodeRateControlModeFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkVideoEncodeRateControlModeFlagsKHR; y: VkVideoEncodeRateControlModeFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkVideoEncodeRateControlModeFlagsKHR; y: VkVideoEncodeRateControlModeFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkVideoEncodeRateControlModeFlagsKHR; y: VkVideoEncodeRateControlModeFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkVideoChromaSubsamplingFlagsKHR]; args: varargs[VkVideoChromaSubsamplingFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkVideoChromaSubsamplingFlagsKHR; y: VkVideoChromaSubsamplingFlagsKHR): bool {.inline.} = +proc `==`*(x: VkVideoChromaSubsamplingFlagsKHR; y: VkVideoChromaSubsamplingFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkVideoChromaSubsamplingFlagsKHR; y: VkVideoChromaSubsamplingFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkVideoChromaSubsamplingFlagsKHR; y: VkVideoChromaSubsamplingFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkVideoChromaSubsamplingFlagsKHR; y: VkVideoChromaSubsamplingFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkVideoChromaSubsamplingFlagsKHR; y: VkVideoChromaSubsamplingFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkVideoComponentBitDepthFlagsKHR]; args: varargs[VkVideoComponentBitDepthFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkVideoComponentBitDepthFlagsKHR; y: VkVideoComponentBitDepthFlagsKHR): bool {.inline.} = +proc `==`*(x: VkVideoComponentBitDepthFlagsKHR; y: VkVideoComponentBitDepthFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkVideoComponentBitDepthFlagsKHR; y: VkVideoComponentBitDepthFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkVideoComponentBitDepthFlagsKHR; y: VkVideoComponentBitDepthFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkVideoComponentBitDepthFlagsKHR; y: VkVideoComponentBitDepthFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkVideoComponentBitDepthFlagsKHR; y: VkVideoComponentBitDepthFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkVideoEncodeH264CapabilityFlagsKHR]; args: varargs[VkVideoEncodeH264CapabilityFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkVideoEncodeH264CapabilityFlagsKHR; y: VkVideoEncodeH264CapabilityFlagsKHR): bool {.inline.} = +proc `==`*(x: VkVideoEncodeH264CapabilityFlagsKHR; y: VkVideoEncodeH264CapabilityFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkVideoEncodeH264CapabilityFlagsKHR; y: VkVideoEncodeH264CapabilityFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkVideoEncodeH264CapabilityFlagsKHR; y: VkVideoEncodeH264CapabilityFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkVideoEncodeH264CapabilityFlagsKHR; y: VkVideoEncodeH264CapabilityFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkVideoEncodeH264CapabilityFlagsKHR; y: VkVideoEncodeH264CapabilityFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkVideoEncodeH264StdFlagsKHR]; args: varargs[VkVideoEncodeH264StdFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkVideoEncodeH264StdFlagsKHR; y: VkVideoEncodeH264StdFlagsKHR): bool {.inline.} = +proc `==`*(x: VkVideoEncodeH264StdFlagsKHR; y: VkVideoEncodeH264StdFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkVideoEncodeH264StdFlagsKHR; y: VkVideoEncodeH264StdFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkVideoEncodeH264StdFlagsKHR; y: VkVideoEncodeH264StdFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkVideoEncodeH264StdFlagsKHR; y: VkVideoEncodeH264StdFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkVideoEncodeH264StdFlagsKHR; y: VkVideoEncodeH264StdFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkVideoEncodeH264RateControlFlagsKHR]; args: varargs[VkVideoEncodeH264RateControlFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkVideoEncodeH264RateControlFlagsKHR; y: VkVideoEncodeH264RateControlFlagsKHR): bool {.inline.} = +proc `==`*(x: VkVideoEncodeH264RateControlFlagsKHR; y: VkVideoEncodeH264RateControlFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkVideoEncodeH264RateControlFlagsKHR; y: VkVideoEncodeH264RateControlFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkVideoEncodeH264RateControlFlagsKHR; y: VkVideoEncodeH264RateControlFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkVideoEncodeH264RateControlFlagsKHR; y: VkVideoEncodeH264RateControlFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkVideoEncodeH264RateControlFlagsKHR; y: VkVideoEncodeH264RateControlFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkVideoEncodeH265CapabilityFlagsKHR]; args: varargs[VkVideoEncodeH265CapabilityFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkVideoEncodeH265CapabilityFlagsKHR; y: VkVideoEncodeH265CapabilityFlagsKHR): bool {.inline.} = +proc `==`*(x: VkVideoEncodeH265CapabilityFlagsKHR; y: VkVideoEncodeH265CapabilityFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkVideoEncodeH265CapabilityFlagsKHR; y: VkVideoEncodeH265CapabilityFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkVideoEncodeH265CapabilityFlagsKHR; y: VkVideoEncodeH265CapabilityFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkVideoEncodeH265CapabilityFlagsKHR; y: VkVideoEncodeH265CapabilityFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkVideoEncodeH265CapabilityFlagsKHR; y: VkVideoEncodeH265CapabilityFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkVideoEncodeH265StdFlagsKHR]; args: varargs[VkVideoEncodeH265StdFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkVideoEncodeH265StdFlagsKHR; y: VkVideoEncodeH265StdFlagsKHR): bool {.inline.} = +proc `==`*(x: VkVideoEncodeH265StdFlagsKHR; y: VkVideoEncodeH265StdFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkVideoEncodeH265StdFlagsKHR; y: VkVideoEncodeH265StdFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkVideoEncodeH265StdFlagsKHR; y: VkVideoEncodeH265StdFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkVideoEncodeH265StdFlagsKHR; y: VkVideoEncodeH265StdFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkVideoEncodeH265StdFlagsKHR; y: VkVideoEncodeH265StdFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkVideoEncodeH265RateControlFlagsKHR]; args: varargs[VkVideoEncodeH265RateControlFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkVideoEncodeH265RateControlFlagsKHR; y: VkVideoEncodeH265RateControlFlagsKHR): bool {.inline.} = +proc `==`*(x: VkVideoEncodeH265RateControlFlagsKHR; y: VkVideoEncodeH265RateControlFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkVideoEncodeH265RateControlFlagsKHR; y: VkVideoEncodeH265RateControlFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkVideoEncodeH265RateControlFlagsKHR; y: VkVideoEncodeH265RateControlFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkVideoEncodeH265RateControlFlagsKHR; y: VkVideoEncodeH265RateControlFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkVideoEncodeH265RateControlFlagsKHR; y: VkVideoEncodeH265RateControlFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkVideoEncodeH265CtbSizeFlagsKHR]; args: varargs[VkVideoEncodeH265CtbSizeFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkVideoEncodeH265CtbSizeFlagsKHR; y: VkVideoEncodeH265CtbSizeFlagsKHR): bool {.inline.} = +proc `==`*(x: VkVideoEncodeH265CtbSizeFlagsKHR; y: VkVideoEncodeH265CtbSizeFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkVideoEncodeH265CtbSizeFlagsKHR; y: VkVideoEncodeH265CtbSizeFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkVideoEncodeH265CtbSizeFlagsKHR; y: VkVideoEncodeH265CtbSizeFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkVideoEncodeH265CtbSizeFlagsKHR; y: VkVideoEncodeH265CtbSizeFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkVideoEncodeH265CtbSizeFlagsKHR; y: VkVideoEncodeH265CtbSizeFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 template `{}`*(t: typedesc[VkVideoEncodeH265TransformBlockSizeFlagsKHR]; args: varargs[VkVideoEncodeH265TransformBlockSizeFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`(x: VkVideoEncodeH265TransformBlockSizeFlagsKHR; y: VkVideoEncodeH265TransformBlockSizeFlagsKHR): bool {.inline.} = +proc `==`*(x: VkVideoEncodeH265TransformBlockSizeFlagsKHR; y: VkVideoEncodeH265TransformBlockSizeFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`(x: VkVideoEncodeH265TransformBlockSizeFlagsKHR; y: VkVideoEncodeH265TransformBlockSizeFlagsKHR): bool {.inline.} = +proc `<=`*(x: VkVideoEncodeH265TransformBlockSizeFlagsKHR; y: VkVideoEncodeH265TransformBlockSizeFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 -proc contains(x: VkVideoEncodeH265TransformBlockSizeFlagsKHR; y: VkVideoEncodeH265TransformBlockSizeFlagBitsKHR): bool {.inline.} = +proc contains*(x: VkVideoEncodeH265TransformBlockSizeFlagsKHR; y: VkVideoEncodeH265TransformBlockSizeFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 diff --git a/tools/generator.nim b/tools/generator.nim index 84821ba..d2a8ef3 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -476,17 +476,17 @@ macro flagsImpl(base: typed, args: varargs[untyped]): untyped = template `{{}}`*(t: typedesc[{flags.name}]; args: varargs[{flags.flagbits}]): untyped = t(flagsImpl({flags.bType}, args)) -proc `==`(x: {flags.name}; y: {flags.name}): bool {{.inline.}} = +proc `==`*(x: {flags.name}; y: {flags.name}): bool {{.inline.}} = x.{flags.bType} == y.{flags.bType} -proc `<=`(x: {flags.name}; y: {flags.name}): bool {{.inline.}} = +proc `<=`*(x: {flags.name}; y: {flags.name}): bool {{.inline.}} = (x.{flags.bType} and not y.{flags.bType}) == 0 -proc contains(x: {flags.name}; y: {flags.flagbits}): bool {{.inline.}} = +proc contains*(x: {flags.name}; y: {flags.flagbits}): bool {{.inline.}} = (x.{flags.bType} and y.{flags.bType}) != 0 """) -# proc incl(x: var {flags.name}; y: {flags.flagbits}) {{.inline.}} = +# proc incl*(x: var {flags.name}; y: {flags.flagbits}) {{.inline.}} = # x = {flags.name}(x.{flags.bType} or y.{flags.bType}) -# proc excl(x: var {flags.name}; y: {flags.flagbits}) {{.inline.}} = +# proc excl*(x: var {flags.name}; y: {flags.flagbits}) {{.inline.}} = # x = {flags.name}(x.{flags.bType} and not y.{flags.bType}) proc genProcs(node: XmlNode, output: var string) = From eddefc363564bdbd0ac705a7a1926cb16ac26853 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Wed, 19 Jun 2024 13:57:44 +0300 Subject: [PATCH 47/57] add `==`, necessary for destructors --- src/vulkan.nim | 577 ++++++++++++++++++++++++-------------------- tools/generator.nim | 18 +- 2 files changed, 328 insertions(+), 267 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index e3ce33b..ee0bfe0 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -24881,6 +24881,59 @@ proc loadVK_KHR_maintenance6*() = vkCmdSetDescriptorBufferOffsets2EXT = cast[proc (commandBuffer: VkCommandBuffer, pSetDescriptorBufferOffsetsInfo: ptr VkSetDescriptorBufferOffsetsInfoEXT) {.stdcall.}](vkGetProc("vkCmdSetDescriptorBufferOffsets2EXT")) vkCmdBindDescriptorBufferEmbeddedSamplers2EXT = cast[proc (commandBuffer: VkCommandBuffer, pBindDescriptorBufferEmbeddedSamplersInfo: ptr VkBindDescriptorBufferEmbeddedSamplersInfoEXT) {.stdcall.}](vkGetProc("vkCmdBindDescriptorBufferEmbeddedSamplers2EXT")) +# Handle helpers +proc `==`*(x, y: VkInstance): bool {.borrow.} +proc `==`*(x, y: VkPhysicalDevice): bool {.borrow.} +proc `==`*(x, y: VkDevice): bool {.borrow.} +proc `==`*(x, y: VkQueue): bool {.borrow.} +proc `==`*(x, y: VkCommandBuffer): bool {.borrow.} +proc `==`*(x, y: VkDeviceMemory): bool {.borrow.} +proc `==`*(x, y: VkCommandPool): bool {.borrow.} +proc `==`*(x, y: VkBuffer): bool {.borrow.} +proc `==`*(x, y: VkBufferView): bool {.borrow.} +proc `==`*(x, y: VkImage): bool {.borrow.} +proc `==`*(x, y: VkImageView): bool {.borrow.} +proc `==`*(x, y: VkShaderModule): bool {.borrow.} +proc `==`*(x, y: VkPipeline): bool {.borrow.} +proc `==`*(x, y: VkPipelineLayout): bool {.borrow.} +proc `==`*(x, y: VkSampler): bool {.borrow.} +proc `==`*(x, y: VkDescriptorSet): bool {.borrow.} +proc `==`*(x, y: VkDescriptorSetLayout): bool {.borrow.} +proc `==`*(x, y: VkDescriptorPool): bool {.borrow.} +proc `==`*(x, y: VkFence): bool {.borrow.} +proc `==`*(x, y: VkSemaphore): bool {.borrow.} +proc `==`*(x, y: VkEvent): bool {.borrow.} +proc `==`*(x, y: VkQueryPool): bool {.borrow.} +proc `==`*(x, y: VkFramebuffer): bool {.borrow.} +proc `==`*(x, y: VkRenderPass): bool {.borrow.} +proc `==`*(x, y: VkPipelineCache): bool {.borrow.} +proc `==`*(x, y: VkIndirectCommandsLayoutNV): bool {.borrow.} +proc `==`*(x, y: VkDescriptorUpdateTemplate): bool {.borrow.} +proc `==`*(x, y: VkSamplerYcbcrConversion): bool {.borrow.} +proc `==`*(x, y: VkValidationCacheEXT): bool {.borrow.} +proc `==`*(x, y: VkAccelerationStructureKHR): bool {.borrow.} +proc `==`*(x, y: VkAccelerationStructureNV): bool {.borrow.} +proc `==`*(x, y: VkPerformanceConfigurationINTEL): bool {.borrow.} +proc `==`*(x, y: VkBufferCollectionFUCHSIA): bool {.borrow.} +proc `==`*(x, y: VkDeferredOperationKHR): bool {.borrow.} +proc `==`*(x, y: VkPrivateDataSlot): bool {.borrow.} +proc `==`*(x, y: VkCuModuleNVX): bool {.borrow.} +proc `==`*(x, y: VkCuFunctionNVX): bool {.borrow.} +proc `==`*(x, y: VkOpticalFlowSessionNV): bool {.borrow.} +proc `==`*(x, y: VkMicromapEXT): bool {.borrow.} +proc `==`*(x, y: VkShaderEXT): bool {.borrow.} +proc `==`*(x, y: VkDisplayKHR): bool {.borrow.} +proc `==`*(x, y: VkDisplayModeKHR): bool {.borrow.} +proc `==`*(x, y: VkSurfaceKHR): bool {.borrow.} +proc `==`*(x, y: VkSwapchainKHR): bool {.borrow.} +proc `==`*(x, y: VkDebugReportCallbackEXT): bool {.borrow.} +proc `==`*(x, y: VkDebugUtilsMessengerEXT): bool {.borrow.} +proc `==`*(x, y: VkVideoSessionKHR): bool {.borrow.} +proc `==`*(x, y: VkVideoSessionParametersKHR): bool {.borrow.} +proc `==`*(x, y: VkSemaphoreSciSyncPoolNV): bool {.borrow.} +proc `==`*(x, y: VkCudaModuleNV): bool {.borrow.} +proc `==`*(x, y: VkCudaFunctionNV): bool {.borrow.} + # Flags helpers import std/macros @@ -24892,9 +24945,9 @@ macro flagsImpl(base: typed, args: varargs[untyped]): untyped = template `{}`*(t: typedesc[VkFramebufferCreateFlags]; args: varargs[VkFramebufferCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkFramebufferCreateFlags; y: VkFramebufferCreateFlags): bool {.inline.} = +proc `==`*(x, y: VkFramebufferCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkFramebufferCreateFlags; y: VkFramebufferCreateFlags): bool {.inline.} = +proc `<=`*(x, y: VkFramebufferCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkFramebufferCreateFlags; y: VkFramebufferCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -24902,9 +24955,9 @@ proc contains*(x: VkFramebufferCreateFlags; y: VkFramebufferCreateFlagBits): boo template `{}`*(t: typedesc[VkRenderPassCreateFlags]; args: varargs[VkRenderPassCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkRenderPassCreateFlags; y: VkRenderPassCreateFlags): bool {.inline.} = +proc `==`*(x, y: VkRenderPassCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkRenderPassCreateFlags; y: VkRenderPassCreateFlags): bool {.inline.} = +proc `<=`*(x, y: VkRenderPassCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkRenderPassCreateFlags; y: VkRenderPassCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -24912,9 +24965,9 @@ proc contains*(x: VkRenderPassCreateFlags; y: VkRenderPassCreateFlagBits): bool template `{}`*(t: typedesc[VkSamplerCreateFlags]; args: varargs[VkSamplerCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkSamplerCreateFlags; y: VkSamplerCreateFlags): bool {.inline.} = +proc `==`*(x, y: VkSamplerCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkSamplerCreateFlags; y: VkSamplerCreateFlags): bool {.inline.} = +proc `<=`*(x, y: VkSamplerCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkSamplerCreateFlags; y: VkSamplerCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -24922,9 +24975,9 @@ proc contains*(x: VkSamplerCreateFlags; y: VkSamplerCreateFlagBits): bool {.inli template `{}`*(t: typedesc[VkPipelineLayoutCreateFlags]; args: varargs[VkPipelineLayoutCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkPipelineLayoutCreateFlags; y: VkPipelineLayoutCreateFlags): bool {.inline.} = +proc `==`*(x, y: VkPipelineLayoutCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkPipelineLayoutCreateFlags; y: VkPipelineLayoutCreateFlags): bool {.inline.} = +proc `<=`*(x, y: VkPipelineLayoutCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkPipelineLayoutCreateFlags; y: VkPipelineLayoutCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -24932,9 +24985,9 @@ proc contains*(x: VkPipelineLayoutCreateFlags; y: VkPipelineLayoutCreateFlagBits template `{}`*(t: typedesc[VkPipelineCacheCreateFlags]; args: varargs[VkPipelineCacheCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkPipelineCacheCreateFlags; y: VkPipelineCacheCreateFlags): bool {.inline.} = +proc `==`*(x, y: VkPipelineCacheCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkPipelineCacheCreateFlags; y: VkPipelineCacheCreateFlags): bool {.inline.} = +proc `<=`*(x, y: VkPipelineCacheCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkPipelineCacheCreateFlags; y: VkPipelineCacheCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -24942,9 +24995,9 @@ proc contains*(x: VkPipelineCacheCreateFlags; y: VkPipelineCacheCreateFlagBits): template `{}`*(t: typedesc[VkPipelineDepthStencilStateCreateFlags]; args: varargs[VkPipelineDepthStencilStateCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkPipelineDepthStencilStateCreateFlags; y: VkPipelineDepthStencilStateCreateFlags): bool {.inline.} = +proc `==`*(x, y: VkPipelineDepthStencilStateCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkPipelineDepthStencilStateCreateFlags; y: VkPipelineDepthStencilStateCreateFlags): bool {.inline.} = +proc `<=`*(x, y: VkPipelineDepthStencilStateCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkPipelineDepthStencilStateCreateFlags; y: VkPipelineDepthStencilStateCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -24952,9 +25005,9 @@ proc contains*(x: VkPipelineDepthStencilStateCreateFlags; y: VkPipelineDepthSten template `{}`*(t: typedesc[VkPipelineColorBlendStateCreateFlags]; args: varargs[VkPipelineColorBlendStateCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkPipelineColorBlendStateCreateFlags; y: VkPipelineColorBlendStateCreateFlags): bool {.inline.} = +proc `==`*(x, y: VkPipelineColorBlendStateCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkPipelineColorBlendStateCreateFlags; y: VkPipelineColorBlendStateCreateFlags): bool {.inline.} = +proc `<=`*(x, y: VkPipelineColorBlendStateCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkPipelineColorBlendStateCreateFlags; y: VkPipelineColorBlendStateCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -24962,9 +25015,9 @@ proc contains*(x: VkPipelineColorBlendStateCreateFlags; y: VkPipelineColorBlendS template `{}`*(t: typedesc[VkPipelineShaderStageCreateFlags]; args: varargs[VkPipelineShaderStageCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkPipelineShaderStageCreateFlags; y: VkPipelineShaderStageCreateFlags): bool {.inline.} = +proc `==`*(x, y: VkPipelineShaderStageCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkPipelineShaderStageCreateFlags; y: VkPipelineShaderStageCreateFlags): bool {.inline.} = +proc `<=`*(x, y: VkPipelineShaderStageCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkPipelineShaderStageCreateFlags; y: VkPipelineShaderStageCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -24972,9 +25025,9 @@ proc contains*(x: VkPipelineShaderStageCreateFlags; y: VkPipelineShaderStageCrea template `{}`*(t: typedesc[VkDescriptorSetLayoutCreateFlags]; args: varargs[VkDescriptorSetLayoutCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkDescriptorSetLayoutCreateFlags; y: VkDescriptorSetLayoutCreateFlags): bool {.inline.} = +proc `==`*(x, y: VkDescriptorSetLayoutCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkDescriptorSetLayoutCreateFlags; y: VkDescriptorSetLayoutCreateFlags): bool {.inline.} = +proc `<=`*(x, y: VkDescriptorSetLayoutCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkDescriptorSetLayoutCreateFlags; y: VkDescriptorSetLayoutCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -24982,9 +25035,9 @@ proc contains*(x: VkDescriptorSetLayoutCreateFlags; y: VkDescriptorSetLayoutCrea template `{}`*(t: typedesc[VkInstanceCreateFlags]; args: varargs[VkInstanceCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkInstanceCreateFlags; y: VkInstanceCreateFlags): bool {.inline.} = +proc `==`*(x, y: VkInstanceCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkInstanceCreateFlags; y: VkInstanceCreateFlags): bool {.inline.} = +proc `<=`*(x, y: VkInstanceCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkInstanceCreateFlags; y: VkInstanceCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -24992,9 +25045,9 @@ proc contains*(x: VkInstanceCreateFlags; y: VkInstanceCreateFlagBits): bool {.in template `{}`*(t: typedesc[VkDeviceQueueCreateFlags]; args: varargs[VkDeviceQueueCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkDeviceQueueCreateFlags; y: VkDeviceQueueCreateFlags): bool {.inline.} = +proc `==`*(x, y: VkDeviceQueueCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkDeviceQueueCreateFlags; y: VkDeviceQueueCreateFlags): bool {.inline.} = +proc `<=`*(x, y: VkDeviceQueueCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkDeviceQueueCreateFlags; y: VkDeviceQueueCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25002,9 +25055,9 @@ proc contains*(x: VkDeviceQueueCreateFlags; y: VkDeviceQueueCreateFlagBits): boo template `{}`*(t: typedesc[VkQueueFlags]; args: varargs[VkQueueFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkQueueFlags; y: VkQueueFlags): bool {.inline.} = +proc `==`*(x, y: VkQueueFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkQueueFlags; y: VkQueueFlags): bool {.inline.} = +proc `<=`*(x, y: VkQueueFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkQueueFlags; y: VkQueueFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25012,9 +25065,9 @@ proc contains*(x: VkQueueFlags; y: VkQueueFlagBits): bool {.inline.} = template `{}`*(t: typedesc[VkMemoryPropertyFlags]; args: varargs[VkMemoryPropertyFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkMemoryPropertyFlags; y: VkMemoryPropertyFlags): bool {.inline.} = +proc `==`*(x, y: VkMemoryPropertyFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkMemoryPropertyFlags; y: VkMemoryPropertyFlags): bool {.inline.} = +proc `<=`*(x, y: VkMemoryPropertyFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkMemoryPropertyFlags; y: VkMemoryPropertyFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25022,9 +25075,9 @@ proc contains*(x: VkMemoryPropertyFlags; y: VkMemoryPropertyFlagBits): bool {.in template `{}`*(t: typedesc[VkMemoryHeapFlags]; args: varargs[VkMemoryHeapFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkMemoryHeapFlags; y: VkMemoryHeapFlags): bool {.inline.} = +proc `==`*(x, y: VkMemoryHeapFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkMemoryHeapFlags; y: VkMemoryHeapFlags): bool {.inline.} = +proc `<=`*(x, y: VkMemoryHeapFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkMemoryHeapFlags; y: VkMemoryHeapFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25032,9 +25085,9 @@ proc contains*(x: VkMemoryHeapFlags; y: VkMemoryHeapFlagBits): bool {.inline.} = template `{}`*(t: typedesc[VkAccessFlags]; args: varargs[VkAccessFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkAccessFlags; y: VkAccessFlags): bool {.inline.} = +proc `==`*(x, y: VkAccessFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkAccessFlags; y: VkAccessFlags): bool {.inline.} = +proc `<=`*(x, y: VkAccessFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkAccessFlags; y: VkAccessFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25042,9 +25095,9 @@ proc contains*(x: VkAccessFlags; y: VkAccessFlagBits): bool {.inline.} = template `{}`*(t: typedesc[VkBufferUsageFlags]; args: varargs[VkBufferUsageFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkBufferUsageFlags; y: VkBufferUsageFlags): bool {.inline.} = +proc `==`*(x, y: VkBufferUsageFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkBufferUsageFlags; y: VkBufferUsageFlags): bool {.inline.} = +proc `<=`*(x, y: VkBufferUsageFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkBufferUsageFlags; y: VkBufferUsageFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25052,9 +25105,9 @@ proc contains*(x: VkBufferUsageFlags; y: VkBufferUsageFlagBits): bool {.inline.} template `{}`*(t: typedesc[VkBufferCreateFlags]; args: varargs[VkBufferCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkBufferCreateFlags; y: VkBufferCreateFlags): bool {.inline.} = +proc `==`*(x, y: VkBufferCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkBufferCreateFlags; y: VkBufferCreateFlags): bool {.inline.} = +proc `<=`*(x, y: VkBufferCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkBufferCreateFlags; y: VkBufferCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25062,9 +25115,9 @@ proc contains*(x: VkBufferCreateFlags; y: VkBufferCreateFlagBits): bool {.inline template `{}`*(t: typedesc[VkShaderStageFlags]; args: varargs[VkShaderStageFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkShaderStageFlags; y: VkShaderStageFlags): bool {.inline.} = +proc `==`*(x, y: VkShaderStageFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkShaderStageFlags; y: VkShaderStageFlags): bool {.inline.} = +proc `<=`*(x, y: VkShaderStageFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkShaderStageFlags; y: VkShaderStageFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25072,9 +25125,9 @@ proc contains*(x: VkShaderStageFlags; y: VkShaderStageFlagBits): bool {.inline.} template `{}`*(t: typedesc[VkImageUsageFlags]; args: varargs[VkImageUsageFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkImageUsageFlags; y: VkImageUsageFlags): bool {.inline.} = +proc `==`*(x, y: VkImageUsageFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkImageUsageFlags; y: VkImageUsageFlags): bool {.inline.} = +proc `<=`*(x, y: VkImageUsageFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkImageUsageFlags; y: VkImageUsageFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25082,9 +25135,9 @@ proc contains*(x: VkImageUsageFlags; y: VkImageUsageFlagBits): bool {.inline.} = template `{}`*(t: typedesc[VkImageCreateFlags]; args: varargs[VkImageCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkImageCreateFlags; y: VkImageCreateFlags): bool {.inline.} = +proc `==`*(x, y: VkImageCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkImageCreateFlags; y: VkImageCreateFlags): bool {.inline.} = +proc `<=`*(x, y: VkImageCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkImageCreateFlags; y: VkImageCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25092,9 +25145,9 @@ proc contains*(x: VkImageCreateFlags; y: VkImageCreateFlagBits): bool {.inline.} template `{}`*(t: typedesc[VkImageViewCreateFlags]; args: varargs[VkImageViewCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkImageViewCreateFlags; y: VkImageViewCreateFlags): bool {.inline.} = +proc `==`*(x, y: VkImageViewCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkImageViewCreateFlags; y: VkImageViewCreateFlags): bool {.inline.} = +proc `<=`*(x, y: VkImageViewCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkImageViewCreateFlags; y: VkImageViewCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25102,9 +25155,9 @@ proc contains*(x: VkImageViewCreateFlags; y: VkImageViewCreateFlagBits): bool {. template `{}`*(t: typedesc[VkPipelineCreateFlags]; args: varargs[VkPipelineCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkPipelineCreateFlags; y: VkPipelineCreateFlags): bool {.inline.} = +proc `==`*(x, y: VkPipelineCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkPipelineCreateFlags; y: VkPipelineCreateFlags): bool {.inline.} = +proc `<=`*(x, y: VkPipelineCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkPipelineCreateFlags; y: VkPipelineCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25112,9 +25165,9 @@ proc contains*(x: VkPipelineCreateFlags; y: VkPipelineCreateFlagBits): bool {.in template `{}`*(t: typedesc[VkColorComponentFlags]; args: varargs[VkColorComponentFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkColorComponentFlags; y: VkColorComponentFlags): bool {.inline.} = +proc `==`*(x, y: VkColorComponentFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkColorComponentFlags; y: VkColorComponentFlags): bool {.inline.} = +proc `<=`*(x, y: VkColorComponentFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkColorComponentFlags; y: VkColorComponentFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25122,9 +25175,9 @@ proc contains*(x: VkColorComponentFlags; y: VkColorComponentFlagBits): bool {.in template `{}`*(t: typedesc[VkFenceCreateFlags]; args: varargs[VkFenceCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkFenceCreateFlags; y: VkFenceCreateFlags): bool {.inline.} = +proc `==`*(x, y: VkFenceCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkFenceCreateFlags; y: VkFenceCreateFlags): bool {.inline.} = +proc `<=`*(x, y: VkFenceCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkFenceCreateFlags; y: VkFenceCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25132,9 +25185,9 @@ proc contains*(x: VkFenceCreateFlags; y: VkFenceCreateFlagBits): bool {.inline.} template `{}`*(t: typedesc[VkFormatFeatureFlags]; args: varargs[VkFormatFeatureFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkFormatFeatureFlags; y: VkFormatFeatureFlags): bool {.inline.} = +proc `==`*(x, y: VkFormatFeatureFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkFormatFeatureFlags; y: VkFormatFeatureFlags): bool {.inline.} = +proc `<=`*(x, y: VkFormatFeatureFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkFormatFeatureFlags; y: VkFormatFeatureFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25142,9 +25195,9 @@ proc contains*(x: VkFormatFeatureFlags; y: VkFormatFeatureFlagBits): bool {.inli template `{}`*(t: typedesc[VkQueryControlFlags]; args: varargs[VkQueryControlFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkQueryControlFlags; y: VkQueryControlFlags): bool {.inline.} = +proc `==`*(x, y: VkQueryControlFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkQueryControlFlags; y: VkQueryControlFlags): bool {.inline.} = +proc `<=`*(x, y: VkQueryControlFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkQueryControlFlags; y: VkQueryControlFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25152,9 +25205,9 @@ proc contains*(x: VkQueryControlFlags; y: VkQueryControlFlagBits): bool {.inline template `{}`*(t: typedesc[VkQueryResultFlags]; args: varargs[VkQueryResultFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkQueryResultFlags; y: VkQueryResultFlags): bool {.inline.} = +proc `==`*(x, y: VkQueryResultFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkQueryResultFlags; y: VkQueryResultFlags): bool {.inline.} = +proc `<=`*(x, y: VkQueryResultFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkQueryResultFlags; y: VkQueryResultFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25162,9 +25215,9 @@ proc contains*(x: VkQueryResultFlags; y: VkQueryResultFlagBits): bool {.inline.} template `{}`*(t: typedesc[VkEventCreateFlags]; args: varargs[VkEventCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkEventCreateFlags; y: VkEventCreateFlags): bool {.inline.} = +proc `==`*(x, y: VkEventCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkEventCreateFlags; y: VkEventCreateFlags): bool {.inline.} = +proc `<=`*(x, y: VkEventCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkEventCreateFlags; y: VkEventCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25172,9 +25225,9 @@ proc contains*(x: VkEventCreateFlags; y: VkEventCreateFlagBits): bool {.inline.} template `{}`*(t: typedesc[VkCommandPoolCreateFlags]; args: varargs[VkCommandPoolCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkCommandPoolCreateFlags; y: VkCommandPoolCreateFlags): bool {.inline.} = +proc `==`*(x, y: VkCommandPoolCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkCommandPoolCreateFlags; y: VkCommandPoolCreateFlags): bool {.inline.} = +proc `<=`*(x, y: VkCommandPoolCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkCommandPoolCreateFlags; y: VkCommandPoolCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25182,9 +25235,9 @@ proc contains*(x: VkCommandPoolCreateFlags; y: VkCommandPoolCreateFlagBits): boo template `{}`*(t: typedesc[VkCommandPoolResetFlags]; args: varargs[VkCommandPoolResetFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkCommandPoolResetFlags; y: VkCommandPoolResetFlags): bool {.inline.} = +proc `==`*(x, y: VkCommandPoolResetFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkCommandPoolResetFlags; y: VkCommandPoolResetFlags): bool {.inline.} = +proc `<=`*(x, y: VkCommandPoolResetFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkCommandPoolResetFlags; y: VkCommandPoolResetFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25192,9 +25245,9 @@ proc contains*(x: VkCommandPoolResetFlags; y: VkCommandPoolResetFlagBits): bool template `{}`*(t: typedesc[VkCommandBufferResetFlags]; args: varargs[VkCommandBufferResetFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkCommandBufferResetFlags; y: VkCommandBufferResetFlags): bool {.inline.} = +proc `==`*(x, y: VkCommandBufferResetFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkCommandBufferResetFlags; y: VkCommandBufferResetFlags): bool {.inline.} = +proc `<=`*(x, y: VkCommandBufferResetFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkCommandBufferResetFlags; y: VkCommandBufferResetFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25202,9 +25255,9 @@ proc contains*(x: VkCommandBufferResetFlags; y: VkCommandBufferResetFlagBits): b template `{}`*(t: typedesc[VkCommandBufferUsageFlags]; args: varargs[VkCommandBufferUsageFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkCommandBufferUsageFlags; y: VkCommandBufferUsageFlags): bool {.inline.} = +proc `==`*(x, y: VkCommandBufferUsageFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkCommandBufferUsageFlags; y: VkCommandBufferUsageFlags): bool {.inline.} = +proc `<=`*(x, y: VkCommandBufferUsageFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkCommandBufferUsageFlags; y: VkCommandBufferUsageFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25212,9 +25265,9 @@ proc contains*(x: VkCommandBufferUsageFlags; y: VkCommandBufferUsageFlagBits): b template `{}`*(t: typedesc[VkQueryPipelineStatisticFlags]; args: varargs[VkQueryPipelineStatisticFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkQueryPipelineStatisticFlags; y: VkQueryPipelineStatisticFlags): bool {.inline.} = +proc `==`*(x, y: VkQueryPipelineStatisticFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkQueryPipelineStatisticFlags; y: VkQueryPipelineStatisticFlags): bool {.inline.} = +proc `<=`*(x, y: VkQueryPipelineStatisticFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkQueryPipelineStatisticFlags; y: VkQueryPipelineStatisticFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25222,9 +25275,9 @@ proc contains*(x: VkQueryPipelineStatisticFlags; y: VkQueryPipelineStatisticFlag template `{}`*(t: typedesc[VkMemoryMapFlags]; args: varargs[VkMemoryMapFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkMemoryMapFlags; y: VkMemoryMapFlags): bool {.inline.} = +proc `==`*(x, y: VkMemoryMapFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkMemoryMapFlags; y: VkMemoryMapFlags): bool {.inline.} = +proc `<=`*(x, y: VkMemoryMapFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkMemoryMapFlags; y: VkMemoryMapFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25232,9 +25285,9 @@ proc contains*(x: VkMemoryMapFlags; y: VkMemoryMapFlagBits): bool {.inline.} = template `{}`*(t: typedesc[VkMemoryUnmapFlagsKHR]; args: varargs[VkMemoryUnmapFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkMemoryUnmapFlagsKHR; y: VkMemoryUnmapFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkMemoryUnmapFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkMemoryUnmapFlagsKHR; y: VkMemoryUnmapFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkMemoryUnmapFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkMemoryUnmapFlagsKHR; y: VkMemoryUnmapFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25242,9 +25295,9 @@ proc contains*(x: VkMemoryUnmapFlagsKHR; y: VkMemoryUnmapFlagBitsKHR): bool {.in template `{}`*(t: typedesc[VkImageAspectFlags]; args: varargs[VkImageAspectFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkImageAspectFlags; y: VkImageAspectFlags): bool {.inline.} = +proc `==`*(x, y: VkImageAspectFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkImageAspectFlags; y: VkImageAspectFlags): bool {.inline.} = +proc `<=`*(x, y: VkImageAspectFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkImageAspectFlags; y: VkImageAspectFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25252,9 +25305,9 @@ proc contains*(x: VkImageAspectFlags; y: VkImageAspectFlagBits): bool {.inline.} template `{}`*(t: typedesc[VkSparseMemoryBindFlags]; args: varargs[VkSparseMemoryBindFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkSparseMemoryBindFlags; y: VkSparseMemoryBindFlags): bool {.inline.} = +proc `==`*(x, y: VkSparseMemoryBindFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkSparseMemoryBindFlags; y: VkSparseMemoryBindFlags): bool {.inline.} = +proc `<=`*(x, y: VkSparseMemoryBindFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkSparseMemoryBindFlags; y: VkSparseMemoryBindFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25262,9 +25315,9 @@ proc contains*(x: VkSparseMemoryBindFlags; y: VkSparseMemoryBindFlagBits): bool template `{}`*(t: typedesc[VkSparseImageFormatFlags]; args: varargs[VkSparseImageFormatFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkSparseImageFormatFlags; y: VkSparseImageFormatFlags): bool {.inline.} = +proc `==`*(x, y: VkSparseImageFormatFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkSparseImageFormatFlags; y: VkSparseImageFormatFlags): bool {.inline.} = +proc `<=`*(x, y: VkSparseImageFormatFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkSparseImageFormatFlags; y: VkSparseImageFormatFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25272,9 +25325,9 @@ proc contains*(x: VkSparseImageFormatFlags; y: VkSparseImageFormatFlagBits): boo template `{}`*(t: typedesc[VkSubpassDescriptionFlags]; args: varargs[VkSubpassDescriptionFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkSubpassDescriptionFlags; y: VkSubpassDescriptionFlags): bool {.inline.} = +proc `==`*(x, y: VkSubpassDescriptionFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkSubpassDescriptionFlags; y: VkSubpassDescriptionFlags): bool {.inline.} = +proc `<=`*(x, y: VkSubpassDescriptionFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkSubpassDescriptionFlags; y: VkSubpassDescriptionFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25282,9 +25335,9 @@ proc contains*(x: VkSubpassDescriptionFlags; y: VkSubpassDescriptionFlagBits): b template `{}`*(t: typedesc[VkPipelineStageFlags]; args: varargs[VkPipelineStageFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkPipelineStageFlags; y: VkPipelineStageFlags): bool {.inline.} = +proc `==`*(x, y: VkPipelineStageFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkPipelineStageFlags; y: VkPipelineStageFlags): bool {.inline.} = +proc `<=`*(x, y: VkPipelineStageFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkPipelineStageFlags; y: VkPipelineStageFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25292,9 +25345,9 @@ proc contains*(x: VkPipelineStageFlags; y: VkPipelineStageFlagBits): bool {.inli template `{}`*(t: typedesc[VkSampleCountFlags]; args: varargs[VkSampleCountFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkSampleCountFlags; y: VkSampleCountFlags): bool {.inline.} = +proc `==`*(x, y: VkSampleCountFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkSampleCountFlags; y: VkSampleCountFlags): bool {.inline.} = +proc `<=`*(x, y: VkSampleCountFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkSampleCountFlags; y: VkSampleCountFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25302,9 +25355,9 @@ proc contains*(x: VkSampleCountFlags; y: VkSampleCountFlagBits): bool {.inline.} template `{}`*(t: typedesc[VkAttachmentDescriptionFlags]; args: varargs[VkAttachmentDescriptionFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkAttachmentDescriptionFlags; y: VkAttachmentDescriptionFlags): bool {.inline.} = +proc `==`*(x, y: VkAttachmentDescriptionFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkAttachmentDescriptionFlags; y: VkAttachmentDescriptionFlags): bool {.inline.} = +proc `<=`*(x, y: VkAttachmentDescriptionFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkAttachmentDescriptionFlags; y: VkAttachmentDescriptionFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25312,9 +25365,9 @@ proc contains*(x: VkAttachmentDescriptionFlags; y: VkAttachmentDescriptionFlagBi template `{}`*(t: typedesc[VkStencilFaceFlags]; args: varargs[VkStencilFaceFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkStencilFaceFlags; y: VkStencilFaceFlags): bool {.inline.} = +proc `==`*(x, y: VkStencilFaceFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkStencilFaceFlags; y: VkStencilFaceFlags): bool {.inline.} = +proc `<=`*(x, y: VkStencilFaceFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkStencilFaceFlags; y: VkStencilFaceFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25322,9 +25375,9 @@ proc contains*(x: VkStencilFaceFlags; y: VkStencilFaceFlagBits): bool {.inline.} template `{}`*(t: typedesc[VkCullModeFlags]; args: varargs[VkCullModeFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkCullModeFlags; y: VkCullModeFlags): bool {.inline.} = +proc `==`*(x, y: VkCullModeFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkCullModeFlags; y: VkCullModeFlags): bool {.inline.} = +proc `<=`*(x, y: VkCullModeFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkCullModeFlags; y: VkCullModeFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25332,9 +25385,9 @@ proc contains*(x: VkCullModeFlags; y: VkCullModeFlagBits): bool {.inline.} = template `{}`*(t: typedesc[VkDescriptorPoolCreateFlags]; args: varargs[VkDescriptorPoolCreateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkDescriptorPoolCreateFlags; y: VkDescriptorPoolCreateFlags): bool {.inline.} = +proc `==`*(x, y: VkDescriptorPoolCreateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkDescriptorPoolCreateFlags; y: VkDescriptorPoolCreateFlags): bool {.inline.} = +proc `<=`*(x, y: VkDescriptorPoolCreateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkDescriptorPoolCreateFlags; y: VkDescriptorPoolCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25342,9 +25395,9 @@ proc contains*(x: VkDescriptorPoolCreateFlags; y: VkDescriptorPoolCreateFlagBits template `{}`*(t: typedesc[VkDependencyFlags]; args: varargs[VkDependencyFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkDependencyFlags; y: VkDependencyFlags): bool {.inline.} = +proc `==`*(x, y: VkDependencyFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkDependencyFlags; y: VkDependencyFlags): bool {.inline.} = +proc `<=`*(x, y: VkDependencyFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkDependencyFlags; y: VkDependencyFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25352,9 +25405,9 @@ proc contains*(x: VkDependencyFlags; y: VkDependencyFlagBits): bool {.inline.} = template `{}`*(t: typedesc[VkSubgroupFeatureFlags]; args: varargs[VkSubgroupFeatureFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkSubgroupFeatureFlags; y: VkSubgroupFeatureFlags): bool {.inline.} = +proc `==`*(x, y: VkSubgroupFeatureFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkSubgroupFeatureFlags; y: VkSubgroupFeatureFlags): bool {.inline.} = +proc `<=`*(x, y: VkSubgroupFeatureFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkSubgroupFeatureFlags; y: VkSubgroupFeatureFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25362,9 +25415,9 @@ proc contains*(x: VkSubgroupFeatureFlags; y: VkSubgroupFeatureFlagBits): bool {. template `{}`*(t: typedesc[VkIndirectCommandsLayoutUsageFlagsNV]; args: varargs[VkIndirectCommandsLayoutUsageFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkIndirectCommandsLayoutUsageFlagsNV; y: VkIndirectCommandsLayoutUsageFlagsNV): bool {.inline.} = +proc `==`*(x, y: VkIndirectCommandsLayoutUsageFlagsNV): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkIndirectCommandsLayoutUsageFlagsNV; y: VkIndirectCommandsLayoutUsageFlagsNV): bool {.inline.} = +proc `<=`*(x, y: VkIndirectCommandsLayoutUsageFlagsNV): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkIndirectCommandsLayoutUsageFlagsNV; y: VkIndirectCommandsLayoutUsageFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25372,9 +25425,9 @@ proc contains*(x: VkIndirectCommandsLayoutUsageFlagsNV; y: VkIndirectCommandsLay template `{}`*(t: typedesc[VkIndirectStateFlagsNV]; args: varargs[VkIndirectStateFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkIndirectStateFlagsNV; y: VkIndirectStateFlagsNV): bool {.inline.} = +proc `==`*(x, y: VkIndirectStateFlagsNV): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkIndirectStateFlagsNV; y: VkIndirectStateFlagsNV): bool {.inline.} = +proc `<=`*(x, y: VkIndirectStateFlagsNV): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkIndirectStateFlagsNV; y: VkIndirectStateFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25382,9 +25435,9 @@ proc contains*(x: VkIndirectStateFlagsNV; y: VkIndirectStateFlagBitsNV): bool {. template `{}`*(t: typedesc[VkGeometryFlagsKHR]; args: varargs[VkGeometryFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkGeometryFlagsKHR; y: VkGeometryFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkGeometryFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkGeometryFlagsKHR; y: VkGeometryFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkGeometryFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkGeometryFlagsKHR; y: VkGeometryFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25392,9 +25445,9 @@ proc contains*(x: VkGeometryFlagsKHR; y: VkGeometryFlagBitsKHR): bool {.inline.} template `{}`*(t: typedesc[VkGeometryInstanceFlagsKHR]; args: varargs[VkGeometryInstanceFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkGeometryInstanceFlagsKHR; y: VkGeometryInstanceFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkGeometryInstanceFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkGeometryInstanceFlagsKHR; y: VkGeometryInstanceFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkGeometryInstanceFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkGeometryInstanceFlagsKHR; y: VkGeometryInstanceFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25402,9 +25455,9 @@ proc contains*(x: VkGeometryInstanceFlagsKHR; y: VkGeometryInstanceFlagBitsKHR): template `{}`*(t: typedesc[VkBuildAccelerationStructureFlagsKHR]; args: varargs[VkBuildAccelerationStructureFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkBuildAccelerationStructureFlagsKHR; y: VkBuildAccelerationStructureFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkBuildAccelerationStructureFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkBuildAccelerationStructureFlagsKHR; y: VkBuildAccelerationStructureFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkBuildAccelerationStructureFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkBuildAccelerationStructureFlagsKHR; y: VkBuildAccelerationStructureFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25412,9 +25465,9 @@ proc contains*(x: VkBuildAccelerationStructureFlagsKHR; y: VkBuildAccelerationSt template `{}`*(t: typedesc[VkAccelerationStructureCreateFlagsKHR]; args: varargs[VkAccelerationStructureCreateFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkAccelerationStructureCreateFlagsKHR; y: VkAccelerationStructureCreateFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkAccelerationStructureCreateFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkAccelerationStructureCreateFlagsKHR; y: VkAccelerationStructureCreateFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkAccelerationStructureCreateFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkAccelerationStructureCreateFlagsKHR; y: VkAccelerationStructureCreateFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25422,9 +25475,9 @@ proc contains*(x: VkAccelerationStructureCreateFlagsKHR; y: VkAccelerationStruct template `{}`*(t: typedesc[VkPipelineCreationFeedbackFlags]; args: varargs[VkPipelineCreationFeedbackFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkPipelineCreationFeedbackFlags; y: VkPipelineCreationFeedbackFlags): bool {.inline.} = +proc `==`*(x, y: VkPipelineCreationFeedbackFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkPipelineCreationFeedbackFlags; y: VkPipelineCreationFeedbackFlags): bool {.inline.} = +proc `<=`*(x, y: VkPipelineCreationFeedbackFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkPipelineCreationFeedbackFlags; y: VkPipelineCreationFeedbackFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25432,9 +25485,9 @@ proc contains*(x: VkPipelineCreationFeedbackFlags; y: VkPipelineCreationFeedback template `{}`*(t: typedesc[VkPerformanceCounterDescriptionFlagsKHR]; args: varargs[VkPerformanceCounterDescriptionFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkPerformanceCounterDescriptionFlagsKHR; y: VkPerformanceCounterDescriptionFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkPerformanceCounterDescriptionFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkPerformanceCounterDescriptionFlagsKHR; y: VkPerformanceCounterDescriptionFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkPerformanceCounterDescriptionFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkPerformanceCounterDescriptionFlagsKHR; y: VkPerformanceCounterDescriptionFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25442,9 +25495,9 @@ proc contains*(x: VkPerformanceCounterDescriptionFlagsKHR; y: VkPerformanceCount template `{}`*(t: typedesc[VkSemaphoreWaitFlags]; args: varargs[VkSemaphoreWaitFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkSemaphoreWaitFlags; y: VkSemaphoreWaitFlags): bool {.inline.} = +proc `==`*(x, y: VkSemaphoreWaitFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkSemaphoreWaitFlags; y: VkSemaphoreWaitFlags): bool {.inline.} = +proc `<=`*(x, y: VkSemaphoreWaitFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkSemaphoreWaitFlags; y: VkSemaphoreWaitFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25452,9 +25505,9 @@ proc contains*(x: VkSemaphoreWaitFlags; y: VkSemaphoreWaitFlagBits): bool {.inli template `{}`*(t: typedesc[VkDeviceDiagnosticsConfigFlagsNV]; args: varargs[VkDeviceDiagnosticsConfigFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkDeviceDiagnosticsConfigFlagsNV; y: VkDeviceDiagnosticsConfigFlagsNV): bool {.inline.} = +proc `==`*(x, y: VkDeviceDiagnosticsConfigFlagsNV): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkDeviceDiagnosticsConfigFlagsNV; y: VkDeviceDiagnosticsConfigFlagsNV): bool {.inline.} = +proc `<=`*(x, y: VkDeviceDiagnosticsConfigFlagsNV): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkDeviceDiagnosticsConfigFlagsNV; y: VkDeviceDiagnosticsConfigFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25462,9 +25515,9 @@ proc contains*(x: VkDeviceDiagnosticsConfigFlagsNV; y: VkDeviceDiagnosticsConfig template `{}`*(t: typedesc[VkAccessFlags2]; args: varargs[VkAccessFlagBits2]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkAccessFlags2; y: VkAccessFlags2): bool {.inline.} = +proc `==`*(x, y: VkAccessFlags2): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkAccessFlags2; y: VkAccessFlags2): bool {.inline.} = +proc `<=`*(x, y: VkAccessFlags2): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkAccessFlags2; y: VkAccessFlagBits2): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25472,9 +25525,9 @@ proc contains*(x: VkAccessFlags2; y: VkAccessFlagBits2): bool {.inline.} = template `{}`*(t: typedesc[VkPipelineStageFlags2]; args: varargs[VkPipelineStageFlagBits2]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkPipelineStageFlags2; y: VkPipelineStageFlags2): bool {.inline.} = +proc `==`*(x, y: VkPipelineStageFlags2): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkPipelineStageFlags2; y: VkPipelineStageFlags2): bool {.inline.} = +proc `<=`*(x, y: VkPipelineStageFlags2): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkPipelineStageFlags2; y: VkPipelineStageFlagBits2): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25482,9 +25535,9 @@ proc contains*(x: VkPipelineStageFlags2; y: VkPipelineStageFlagBits2): bool {.in template `{}`*(t: typedesc[VkFormatFeatureFlags2]; args: varargs[VkFormatFeatureFlagBits2]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkFormatFeatureFlags2; y: VkFormatFeatureFlags2): bool {.inline.} = +proc `==`*(x, y: VkFormatFeatureFlags2): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkFormatFeatureFlags2; y: VkFormatFeatureFlags2): bool {.inline.} = +proc `<=`*(x, y: VkFormatFeatureFlags2): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkFormatFeatureFlags2; y: VkFormatFeatureFlagBits2): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25492,9 +25545,9 @@ proc contains*(x: VkFormatFeatureFlags2; y: VkFormatFeatureFlagBits2): bool {.in template `{}`*(t: typedesc[VkRenderingFlags]; args: varargs[VkRenderingFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkRenderingFlags; y: VkRenderingFlags): bool {.inline.} = +proc `==`*(x, y: VkRenderingFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkRenderingFlags; y: VkRenderingFlags): bool {.inline.} = +proc `<=`*(x, y: VkRenderingFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkRenderingFlags; y: VkRenderingFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25502,9 +25555,9 @@ proc contains*(x: VkRenderingFlags; y: VkRenderingFlagBits): bool {.inline.} = template `{}`*(t: typedesc[VkMemoryDecompressionMethodFlagsNV]; args: varargs[VkMemoryDecompressionMethodFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkMemoryDecompressionMethodFlagsNV; y: VkMemoryDecompressionMethodFlagsNV): bool {.inline.} = +proc `==`*(x, y: VkMemoryDecompressionMethodFlagsNV): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkMemoryDecompressionMethodFlagsNV; y: VkMemoryDecompressionMethodFlagsNV): bool {.inline.} = +proc `<=`*(x, y: VkMemoryDecompressionMethodFlagsNV): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkMemoryDecompressionMethodFlagsNV; y: VkMemoryDecompressionMethodFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25512,9 +25565,9 @@ proc contains*(x: VkMemoryDecompressionMethodFlagsNV; y: VkMemoryDecompressionMe template `{}`*(t: typedesc[VkBuildMicromapFlagsEXT]; args: varargs[VkBuildMicromapFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkBuildMicromapFlagsEXT; y: VkBuildMicromapFlagsEXT): bool {.inline.} = +proc `==`*(x, y: VkBuildMicromapFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkBuildMicromapFlagsEXT; y: VkBuildMicromapFlagsEXT): bool {.inline.} = +proc `<=`*(x, y: VkBuildMicromapFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkBuildMicromapFlagsEXT; y: VkBuildMicromapFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25522,9 +25575,9 @@ proc contains*(x: VkBuildMicromapFlagsEXT; y: VkBuildMicromapFlagBitsEXT): bool template `{}`*(t: typedesc[VkMicromapCreateFlagsEXT]; args: varargs[VkMicromapCreateFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkMicromapCreateFlagsEXT; y: VkMicromapCreateFlagsEXT): bool {.inline.} = +proc `==`*(x, y: VkMicromapCreateFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkMicromapCreateFlagsEXT; y: VkMicromapCreateFlagsEXT): bool {.inline.} = +proc `<=`*(x, y: VkMicromapCreateFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkMicromapCreateFlagsEXT; y: VkMicromapCreateFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25532,9 +25585,9 @@ proc contains*(x: VkMicromapCreateFlagsEXT; y: VkMicromapCreateFlagBitsEXT): boo template `{}`*(t: typedesc[VkPipelineCreateFlags2KHR]; args: varargs[VkPipelineCreateFlagBits2KHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkPipelineCreateFlags2KHR; y: VkPipelineCreateFlags2KHR): bool {.inline.} = +proc `==`*(x, y: VkPipelineCreateFlags2KHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkPipelineCreateFlags2KHR; y: VkPipelineCreateFlags2KHR): bool {.inline.} = +proc `<=`*(x, y: VkPipelineCreateFlags2KHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkPipelineCreateFlags2KHR; y: VkPipelineCreateFlagBits2KHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25542,9 +25595,9 @@ proc contains*(x: VkPipelineCreateFlags2KHR; y: VkPipelineCreateFlagBits2KHR): b template `{}`*(t: typedesc[VkBufferUsageFlags2KHR]; args: varargs[VkBufferUsageFlagBits2KHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkBufferUsageFlags2KHR; y: VkBufferUsageFlags2KHR): bool {.inline.} = +proc `==`*(x, y: VkBufferUsageFlags2KHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkBufferUsageFlags2KHR; y: VkBufferUsageFlags2KHR): bool {.inline.} = +proc `<=`*(x, y: VkBufferUsageFlags2KHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkBufferUsageFlags2KHR; y: VkBufferUsageFlagBits2KHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25552,9 +25605,9 @@ proc contains*(x: VkBufferUsageFlags2KHR; y: VkBufferUsageFlagBits2KHR): bool {. template `{}`*(t: typedesc[VkCompositeAlphaFlagsKHR]; args: varargs[VkCompositeAlphaFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkCompositeAlphaFlagsKHR; y: VkCompositeAlphaFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkCompositeAlphaFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkCompositeAlphaFlagsKHR; y: VkCompositeAlphaFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkCompositeAlphaFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkCompositeAlphaFlagsKHR; y: VkCompositeAlphaFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25562,9 +25615,9 @@ proc contains*(x: VkCompositeAlphaFlagsKHR; y: VkCompositeAlphaFlagBitsKHR): boo template `{}`*(t: typedesc[VkDisplayPlaneAlphaFlagsKHR]; args: varargs[VkDisplayPlaneAlphaFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkDisplayPlaneAlphaFlagsKHR; y: VkDisplayPlaneAlphaFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkDisplayPlaneAlphaFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkDisplayPlaneAlphaFlagsKHR; y: VkDisplayPlaneAlphaFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkDisplayPlaneAlphaFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkDisplayPlaneAlphaFlagsKHR; y: VkDisplayPlaneAlphaFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25572,9 +25625,9 @@ proc contains*(x: VkDisplayPlaneAlphaFlagsKHR; y: VkDisplayPlaneAlphaFlagBitsKHR template `{}`*(t: typedesc[VkSurfaceTransformFlagsKHR]; args: varargs[VkSurfaceTransformFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkSurfaceTransformFlagsKHR; y: VkSurfaceTransformFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkSurfaceTransformFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkSurfaceTransformFlagsKHR; y: VkSurfaceTransformFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkSurfaceTransformFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkSurfaceTransformFlagsKHR; y: VkSurfaceTransformFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25582,9 +25635,9 @@ proc contains*(x: VkSurfaceTransformFlagsKHR; y: VkSurfaceTransformFlagBitsKHR): template `{}`*(t: typedesc[VkSwapchainCreateFlagsKHR]; args: varargs[VkSwapchainCreateFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkSwapchainCreateFlagsKHR; y: VkSwapchainCreateFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkSwapchainCreateFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkSwapchainCreateFlagsKHR; y: VkSwapchainCreateFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkSwapchainCreateFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkSwapchainCreateFlagsKHR; y: VkSwapchainCreateFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25592,9 +25645,9 @@ proc contains*(x: VkSwapchainCreateFlagsKHR; y: VkSwapchainCreateFlagBitsKHR): b template `{}`*(t: typedesc[VkPeerMemoryFeatureFlags]; args: varargs[VkPeerMemoryFeatureFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkPeerMemoryFeatureFlags; y: VkPeerMemoryFeatureFlags): bool {.inline.} = +proc `==`*(x, y: VkPeerMemoryFeatureFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkPeerMemoryFeatureFlags; y: VkPeerMemoryFeatureFlags): bool {.inline.} = +proc `<=`*(x, y: VkPeerMemoryFeatureFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkPeerMemoryFeatureFlags; y: VkPeerMemoryFeatureFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25602,9 +25655,9 @@ proc contains*(x: VkPeerMemoryFeatureFlags; y: VkPeerMemoryFeatureFlagBits): boo template `{}`*(t: typedesc[VkMemoryAllocateFlags]; args: varargs[VkMemoryAllocateFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkMemoryAllocateFlags; y: VkMemoryAllocateFlags): bool {.inline.} = +proc `==`*(x, y: VkMemoryAllocateFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkMemoryAllocateFlags; y: VkMemoryAllocateFlags): bool {.inline.} = +proc `<=`*(x, y: VkMemoryAllocateFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkMemoryAllocateFlags; y: VkMemoryAllocateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25612,9 +25665,9 @@ proc contains*(x: VkMemoryAllocateFlags; y: VkMemoryAllocateFlagBits): bool {.in template `{}`*(t: typedesc[VkDeviceGroupPresentModeFlagsKHR]; args: varargs[VkDeviceGroupPresentModeFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkDeviceGroupPresentModeFlagsKHR; y: VkDeviceGroupPresentModeFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkDeviceGroupPresentModeFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkDeviceGroupPresentModeFlagsKHR; y: VkDeviceGroupPresentModeFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkDeviceGroupPresentModeFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkDeviceGroupPresentModeFlagsKHR; y: VkDeviceGroupPresentModeFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25622,9 +25675,9 @@ proc contains*(x: VkDeviceGroupPresentModeFlagsKHR; y: VkDeviceGroupPresentModeF template `{}`*(t: typedesc[VkDebugReportFlagsEXT]; args: varargs[VkDebugReportFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkDebugReportFlagsEXT; y: VkDebugReportFlagsEXT): bool {.inline.} = +proc `==`*(x, y: VkDebugReportFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkDebugReportFlagsEXT; y: VkDebugReportFlagsEXT): bool {.inline.} = +proc `<=`*(x, y: VkDebugReportFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkDebugReportFlagsEXT; y: VkDebugReportFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25632,9 +25685,9 @@ proc contains*(x: VkDebugReportFlagsEXT; y: VkDebugReportFlagBitsEXT): bool {.in template `{}`*(t: typedesc[VkExternalMemoryHandleTypeFlagsNV]; args: varargs[VkExternalMemoryHandleTypeFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkExternalMemoryHandleTypeFlagsNV; y: VkExternalMemoryHandleTypeFlagsNV): bool {.inline.} = +proc `==`*(x, y: VkExternalMemoryHandleTypeFlagsNV): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkExternalMemoryHandleTypeFlagsNV; y: VkExternalMemoryHandleTypeFlagsNV): bool {.inline.} = +proc `<=`*(x, y: VkExternalMemoryHandleTypeFlagsNV): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkExternalMemoryHandleTypeFlagsNV; y: VkExternalMemoryHandleTypeFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25642,9 +25695,9 @@ proc contains*(x: VkExternalMemoryHandleTypeFlagsNV; y: VkExternalMemoryHandleTy template `{}`*(t: typedesc[VkExternalMemoryFeatureFlagsNV]; args: varargs[VkExternalMemoryFeatureFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkExternalMemoryFeatureFlagsNV; y: VkExternalMemoryFeatureFlagsNV): bool {.inline.} = +proc `==`*(x, y: VkExternalMemoryFeatureFlagsNV): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkExternalMemoryFeatureFlagsNV; y: VkExternalMemoryFeatureFlagsNV): bool {.inline.} = +proc `<=`*(x, y: VkExternalMemoryFeatureFlagsNV): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkExternalMemoryFeatureFlagsNV; y: VkExternalMemoryFeatureFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25652,9 +25705,9 @@ proc contains*(x: VkExternalMemoryFeatureFlagsNV; y: VkExternalMemoryFeatureFlag template `{}`*(t: typedesc[VkExternalMemoryHandleTypeFlags]; args: varargs[VkExternalMemoryHandleTypeFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkExternalMemoryHandleTypeFlags; y: VkExternalMemoryHandleTypeFlags): bool {.inline.} = +proc `==`*(x, y: VkExternalMemoryHandleTypeFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkExternalMemoryHandleTypeFlags; y: VkExternalMemoryHandleTypeFlags): bool {.inline.} = +proc `<=`*(x, y: VkExternalMemoryHandleTypeFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkExternalMemoryHandleTypeFlags; y: VkExternalMemoryHandleTypeFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25662,9 +25715,9 @@ proc contains*(x: VkExternalMemoryHandleTypeFlags; y: VkExternalMemoryHandleType template `{}`*(t: typedesc[VkExternalMemoryFeatureFlags]; args: varargs[VkExternalMemoryFeatureFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkExternalMemoryFeatureFlags; y: VkExternalMemoryFeatureFlags): bool {.inline.} = +proc `==`*(x, y: VkExternalMemoryFeatureFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkExternalMemoryFeatureFlags; y: VkExternalMemoryFeatureFlags): bool {.inline.} = +proc `<=`*(x, y: VkExternalMemoryFeatureFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkExternalMemoryFeatureFlags; y: VkExternalMemoryFeatureFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25672,9 +25725,9 @@ proc contains*(x: VkExternalMemoryFeatureFlags; y: VkExternalMemoryFeatureFlagBi template `{}`*(t: typedesc[VkExternalSemaphoreHandleTypeFlags]; args: varargs[VkExternalSemaphoreHandleTypeFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkExternalSemaphoreHandleTypeFlags; y: VkExternalSemaphoreHandleTypeFlags): bool {.inline.} = +proc `==`*(x, y: VkExternalSemaphoreHandleTypeFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkExternalSemaphoreHandleTypeFlags; y: VkExternalSemaphoreHandleTypeFlags): bool {.inline.} = +proc `<=`*(x, y: VkExternalSemaphoreHandleTypeFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkExternalSemaphoreHandleTypeFlags; y: VkExternalSemaphoreHandleTypeFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25682,9 +25735,9 @@ proc contains*(x: VkExternalSemaphoreHandleTypeFlags; y: VkExternalSemaphoreHand template `{}`*(t: typedesc[VkExternalSemaphoreFeatureFlags]; args: varargs[VkExternalSemaphoreFeatureFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkExternalSemaphoreFeatureFlags; y: VkExternalSemaphoreFeatureFlags): bool {.inline.} = +proc `==`*(x, y: VkExternalSemaphoreFeatureFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkExternalSemaphoreFeatureFlags; y: VkExternalSemaphoreFeatureFlags): bool {.inline.} = +proc `<=`*(x, y: VkExternalSemaphoreFeatureFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkExternalSemaphoreFeatureFlags; y: VkExternalSemaphoreFeatureFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25692,9 +25745,9 @@ proc contains*(x: VkExternalSemaphoreFeatureFlags; y: VkExternalSemaphoreFeature template `{}`*(t: typedesc[VkSemaphoreImportFlags]; args: varargs[VkSemaphoreImportFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkSemaphoreImportFlags; y: VkSemaphoreImportFlags): bool {.inline.} = +proc `==`*(x, y: VkSemaphoreImportFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkSemaphoreImportFlags; y: VkSemaphoreImportFlags): bool {.inline.} = +proc `<=`*(x, y: VkSemaphoreImportFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkSemaphoreImportFlags; y: VkSemaphoreImportFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25702,9 +25755,9 @@ proc contains*(x: VkSemaphoreImportFlags; y: VkSemaphoreImportFlagBits): bool {. template `{}`*(t: typedesc[VkExternalFenceHandleTypeFlags]; args: varargs[VkExternalFenceHandleTypeFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkExternalFenceHandleTypeFlags; y: VkExternalFenceHandleTypeFlags): bool {.inline.} = +proc `==`*(x, y: VkExternalFenceHandleTypeFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkExternalFenceHandleTypeFlags; y: VkExternalFenceHandleTypeFlags): bool {.inline.} = +proc `<=`*(x, y: VkExternalFenceHandleTypeFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkExternalFenceHandleTypeFlags; y: VkExternalFenceHandleTypeFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25712,9 +25765,9 @@ proc contains*(x: VkExternalFenceHandleTypeFlags; y: VkExternalFenceHandleTypeFl template `{}`*(t: typedesc[VkExternalFenceFeatureFlags]; args: varargs[VkExternalFenceFeatureFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkExternalFenceFeatureFlags; y: VkExternalFenceFeatureFlags): bool {.inline.} = +proc `==`*(x, y: VkExternalFenceFeatureFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkExternalFenceFeatureFlags; y: VkExternalFenceFeatureFlags): bool {.inline.} = +proc `<=`*(x, y: VkExternalFenceFeatureFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkExternalFenceFeatureFlags; y: VkExternalFenceFeatureFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25722,9 +25775,9 @@ proc contains*(x: VkExternalFenceFeatureFlags; y: VkExternalFenceFeatureFlagBits template `{}`*(t: typedesc[VkFenceImportFlags]; args: varargs[VkFenceImportFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkFenceImportFlags; y: VkFenceImportFlags): bool {.inline.} = +proc `==`*(x, y: VkFenceImportFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkFenceImportFlags; y: VkFenceImportFlags): bool {.inline.} = +proc `<=`*(x, y: VkFenceImportFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkFenceImportFlags; y: VkFenceImportFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25732,9 +25785,9 @@ proc contains*(x: VkFenceImportFlags; y: VkFenceImportFlagBits): bool {.inline.} template `{}`*(t: typedesc[VkSurfaceCounterFlagsEXT]; args: varargs[VkSurfaceCounterFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkSurfaceCounterFlagsEXT; y: VkSurfaceCounterFlagsEXT): bool {.inline.} = +proc `==`*(x, y: VkSurfaceCounterFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkSurfaceCounterFlagsEXT; y: VkSurfaceCounterFlagsEXT): bool {.inline.} = +proc `<=`*(x, y: VkSurfaceCounterFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkSurfaceCounterFlagsEXT; y: VkSurfaceCounterFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25742,9 +25795,9 @@ proc contains*(x: VkSurfaceCounterFlagsEXT; y: VkSurfaceCounterFlagBitsEXT): boo template `{}`*(t: typedesc[VkDebugUtilsMessageSeverityFlagsEXT]; args: varargs[VkDebugUtilsMessageSeverityFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkDebugUtilsMessageSeverityFlagsEXT; y: VkDebugUtilsMessageSeverityFlagsEXT): bool {.inline.} = +proc `==`*(x, y: VkDebugUtilsMessageSeverityFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkDebugUtilsMessageSeverityFlagsEXT; y: VkDebugUtilsMessageSeverityFlagsEXT): bool {.inline.} = +proc `<=`*(x, y: VkDebugUtilsMessageSeverityFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkDebugUtilsMessageSeverityFlagsEXT; y: VkDebugUtilsMessageSeverityFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25752,9 +25805,9 @@ proc contains*(x: VkDebugUtilsMessageSeverityFlagsEXT; y: VkDebugUtilsMessageSev template `{}`*(t: typedesc[VkDebugUtilsMessageTypeFlagsEXT]; args: varargs[VkDebugUtilsMessageTypeFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkDebugUtilsMessageTypeFlagsEXT; y: VkDebugUtilsMessageTypeFlagsEXT): bool {.inline.} = +proc `==`*(x, y: VkDebugUtilsMessageTypeFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkDebugUtilsMessageTypeFlagsEXT; y: VkDebugUtilsMessageTypeFlagsEXT): bool {.inline.} = +proc `<=`*(x, y: VkDebugUtilsMessageTypeFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkDebugUtilsMessageTypeFlagsEXT; y: VkDebugUtilsMessageTypeFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25762,9 +25815,9 @@ proc contains*(x: VkDebugUtilsMessageTypeFlagsEXT; y: VkDebugUtilsMessageTypeFla template `{}`*(t: typedesc[VkDescriptorBindingFlags]; args: varargs[VkDescriptorBindingFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkDescriptorBindingFlags; y: VkDescriptorBindingFlags): bool {.inline.} = +proc `==`*(x, y: VkDescriptorBindingFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkDescriptorBindingFlags; y: VkDescriptorBindingFlags): bool {.inline.} = +proc `<=`*(x, y: VkDescriptorBindingFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkDescriptorBindingFlags; y: VkDescriptorBindingFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25772,9 +25825,9 @@ proc contains*(x: VkDescriptorBindingFlags; y: VkDescriptorBindingFlagBits): boo template `{}`*(t: typedesc[VkConditionalRenderingFlagsEXT]; args: varargs[VkConditionalRenderingFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkConditionalRenderingFlagsEXT; y: VkConditionalRenderingFlagsEXT): bool {.inline.} = +proc `==`*(x, y: VkConditionalRenderingFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkConditionalRenderingFlagsEXT; y: VkConditionalRenderingFlagsEXT): bool {.inline.} = +proc `<=`*(x, y: VkConditionalRenderingFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkConditionalRenderingFlagsEXT; y: VkConditionalRenderingFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25782,9 +25835,9 @@ proc contains*(x: VkConditionalRenderingFlagsEXT; y: VkConditionalRenderingFlagB template `{}`*(t: typedesc[VkResolveModeFlags]; args: varargs[VkResolveModeFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkResolveModeFlags; y: VkResolveModeFlags): bool {.inline.} = +proc `==`*(x, y: VkResolveModeFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkResolveModeFlags; y: VkResolveModeFlags): bool {.inline.} = +proc `<=`*(x, y: VkResolveModeFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkResolveModeFlags; y: VkResolveModeFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25792,9 +25845,9 @@ proc contains*(x: VkResolveModeFlags; y: VkResolveModeFlagBits): bool {.inline.} template `{}`*(t: typedesc[VkSwapchainImageUsageFlagsANDROID]; args: varargs[VkSwapchainImageUsageFlagBitsANDROID]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkSwapchainImageUsageFlagsANDROID; y: VkSwapchainImageUsageFlagsANDROID): bool {.inline.} = +proc `==`*(x, y: VkSwapchainImageUsageFlagsANDROID): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkSwapchainImageUsageFlagsANDROID; y: VkSwapchainImageUsageFlagsANDROID): bool {.inline.} = +proc `<=`*(x, y: VkSwapchainImageUsageFlagsANDROID): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkSwapchainImageUsageFlagsANDROID; y: VkSwapchainImageUsageFlagBitsANDROID): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25802,9 +25855,9 @@ proc contains*(x: VkSwapchainImageUsageFlagsANDROID; y: VkSwapchainImageUsageFla template `{}`*(t: typedesc[VkToolPurposeFlags]; args: varargs[VkToolPurposeFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkToolPurposeFlags; y: VkToolPurposeFlags): bool {.inline.} = +proc `==`*(x, y: VkToolPurposeFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkToolPurposeFlags; y: VkToolPurposeFlags): bool {.inline.} = +proc `<=`*(x, y: VkToolPurposeFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkToolPurposeFlags; y: VkToolPurposeFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25812,9 +25865,9 @@ proc contains*(x: VkToolPurposeFlags; y: VkToolPurposeFlagBits): bool {.inline.} template `{}`*(t: typedesc[VkSubmitFlags]; args: varargs[VkSubmitFlagBits]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkSubmitFlags; y: VkSubmitFlags): bool {.inline.} = +proc `==`*(x, y: VkSubmitFlags): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkSubmitFlags; y: VkSubmitFlags): bool {.inline.} = +proc `<=`*(x, y: VkSubmitFlags): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkSubmitFlags; y: VkSubmitFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25822,9 +25875,9 @@ proc contains*(x: VkSubmitFlags; y: VkSubmitFlagBits): bool {.inline.} = template `{}`*(t: typedesc[VkHostImageCopyFlagsEXT]; args: varargs[VkHostImageCopyFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkHostImageCopyFlagsEXT; y: VkHostImageCopyFlagsEXT): bool {.inline.} = +proc `==`*(x, y: VkHostImageCopyFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkHostImageCopyFlagsEXT; y: VkHostImageCopyFlagsEXT): bool {.inline.} = +proc `<=`*(x, y: VkHostImageCopyFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkHostImageCopyFlagsEXT; y: VkHostImageCopyFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25832,9 +25885,9 @@ proc contains*(x: VkHostImageCopyFlagsEXT; y: VkHostImageCopyFlagBitsEXT): bool template `{}`*(t: typedesc[VkImageConstraintsInfoFlagsFUCHSIA]; args: varargs[VkImageConstraintsInfoFlagBitsFUCHSIA]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkImageConstraintsInfoFlagsFUCHSIA; y: VkImageConstraintsInfoFlagsFUCHSIA): bool {.inline.} = +proc `==`*(x, y: VkImageConstraintsInfoFlagsFUCHSIA): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkImageConstraintsInfoFlagsFUCHSIA; y: VkImageConstraintsInfoFlagsFUCHSIA): bool {.inline.} = +proc `<=`*(x, y: VkImageConstraintsInfoFlagsFUCHSIA): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkImageConstraintsInfoFlagsFUCHSIA; y: VkImageConstraintsInfoFlagBitsFUCHSIA): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25842,9 +25895,9 @@ proc contains*(x: VkImageConstraintsInfoFlagsFUCHSIA; y: VkImageConstraintsInfoF template `{}`*(t: typedesc[VkGraphicsPipelineLibraryFlagsEXT]; args: varargs[VkGraphicsPipelineLibraryFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkGraphicsPipelineLibraryFlagsEXT; y: VkGraphicsPipelineLibraryFlagsEXT): bool {.inline.} = +proc `==`*(x, y: VkGraphicsPipelineLibraryFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkGraphicsPipelineLibraryFlagsEXT; y: VkGraphicsPipelineLibraryFlagsEXT): bool {.inline.} = +proc `<=`*(x, y: VkGraphicsPipelineLibraryFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkGraphicsPipelineLibraryFlagsEXT; y: VkGraphicsPipelineLibraryFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25852,9 +25905,9 @@ proc contains*(x: VkGraphicsPipelineLibraryFlagsEXT; y: VkGraphicsPipelineLibrar template `{}`*(t: typedesc[VkImageCompressionFlagsEXT]; args: varargs[VkImageCompressionFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkImageCompressionFlagsEXT; y: VkImageCompressionFlagsEXT): bool {.inline.} = +proc `==`*(x, y: VkImageCompressionFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkImageCompressionFlagsEXT; y: VkImageCompressionFlagsEXT): bool {.inline.} = +proc `<=`*(x, y: VkImageCompressionFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkImageCompressionFlagsEXT; y: VkImageCompressionFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25862,9 +25915,9 @@ proc contains*(x: VkImageCompressionFlagsEXT; y: VkImageCompressionFlagBitsEXT): template `{}`*(t: typedesc[VkImageCompressionFixedRateFlagsEXT]; args: varargs[VkImageCompressionFixedRateFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkImageCompressionFixedRateFlagsEXT; y: VkImageCompressionFixedRateFlagsEXT): bool {.inline.} = +proc `==`*(x, y: VkImageCompressionFixedRateFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkImageCompressionFixedRateFlagsEXT; y: VkImageCompressionFixedRateFlagsEXT): bool {.inline.} = +proc `<=`*(x, y: VkImageCompressionFixedRateFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkImageCompressionFixedRateFlagsEXT; y: VkImageCompressionFixedRateFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25872,9 +25925,9 @@ proc contains*(x: VkImageCompressionFixedRateFlagsEXT; y: VkImageCompressionFixe template `{}`*(t: typedesc[VkExportMetalObjectTypeFlagsEXT]; args: varargs[VkExportMetalObjectTypeFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkExportMetalObjectTypeFlagsEXT; y: VkExportMetalObjectTypeFlagsEXT): bool {.inline.} = +proc `==`*(x, y: VkExportMetalObjectTypeFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkExportMetalObjectTypeFlagsEXT; y: VkExportMetalObjectTypeFlagsEXT): bool {.inline.} = +proc `<=`*(x, y: VkExportMetalObjectTypeFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkExportMetalObjectTypeFlagsEXT; y: VkExportMetalObjectTypeFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25882,9 +25935,9 @@ proc contains*(x: VkExportMetalObjectTypeFlagsEXT; y: VkExportMetalObjectTypeFla template `{}`*(t: typedesc[VkDeviceAddressBindingFlagsEXT]; args: varargs[VkDeviceAddressBindingFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkDeviceAddressBindingFlagsEXT; y: VkDeviceAddressBindingFlagsEXT): bool {.inline.} = +proc `==`*(x, y: VkDeviceAddressBindingFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkDeviceAddressBindingFlagsEXT; y: VkDeviceAddressBindingFlagsEXT): bool {.inline.} = +proc `<=`*(x, y: VkDeviceAddressBindingFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkDeviceAddressBindingFlagsEXT; y: VkDeviceAddressBindingFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25892,9 +25945,9 @@ proc contains*(x: VkDeviceAddressBindingFlagsEXT; y: VkDeviceAddressBindingFlagB template `{}`*(t: typedesc[VkOpticalFlowGridSizeFlagsNV]; args: varargs[VkOpticalFlowGridSizeFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkOpticalFlowGridSizeFlagsNV; y: VkOpticalFlowGridSizeFlagsNV): bool {.inline.} = +proc `==`*(x, y: VkOpticalFlowGridSizeFlagsNV): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkOpticalFlowGridSizeFlagsNV; y: VkOpticalFlowGridSizeFlagsNV): bool {.inline.} = +proc `<=`*(x, y: VkOpticalFlowGridSizeFlagsNV): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkOpticalFlowGridSizeFlagsNV; y: VkOpticalFlowGridSizeFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25902,9 +25955,9 @@ proc contains*(x: VkOpticalFlowGridSizeFlagsNV; y: VkOpticalFlowGridSizeFlagBits template `{}`*(t: typedesc[VkOpticalFlowUsageFlagsNV]; args: varargs[VkOpticalFlowUsageFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkOpticalFlowUsageFlagsNV; y: VkOpticalFlowUsageFlagsNV): bool {.inline.} = +proc `==`*(x, y: VkOpticalFlowUsageFlagsNV): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkOpticalFlowUsageFlagsNV; y: VkOpticalFlowUsageFlagsNV): bool {.inline.} = +proc `<=`*(x, y: VkOpticalFlowUsageFlagsNV): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkOpticalFlowUsageFlagsNV; y: VkOpticalFlowUsageFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25912,9 +25965,9 @@ proc contains*(x: VkOpticalFlowUsageFlagsNV; y: VkOpticalFlowUsageFlagBitsNV): b template `{}`*(t: typedesc[VkOpticalFlowSessionCreateFlagsNV]; args: varargs[VkOpticalFlowSessionCreateFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkOpticalFlowSessionCreateFlagsNV; y: VkOpticalFlowSessionCreateFlagsNV): bool {.inline.} = +proc `==`*(x, y: VkOpticalFlowSessionCreateFlagsNV): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkOpticalFlowSessionCreateFlagsNV; y: VkOpticalFlowSessionCreateFlagsNV): bool {.inline.} = +proc `<=`*(x, y: VkOpticalFlowSessionCreateFlagsNV): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkOpticalFlowSessionCreateFlagsNV; y: VkOpticalFlowSessionCreateFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25922,9 +25975,9 @@ proc contains*(x: VkOpticalFlowSessionCreateFlagsNV; y: VkOpticalFlowSessionCrea template `{}`*(t: typedesc[VkOpticalFlowExecuteFlagsNV]; args: varargs[VkOpticalFlowExecuteFlagBitsNV]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkOpticalFlowExecuteFlagsNV; y: VkOpticalFlowExecuteFlagsNV): bool {.inline.} = +proc `==`*(x, y: VkOpticalFlowExecuteFlagsNV): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkOpticalFlowExecuteFlagsNV; y: VkOpticalFlowExecuteFlagsNV): bool {.inline.} = +proc `<=`*(x, y: VkOpticalFlowExecuteFlagsNV): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkOpticalFlowExecuteFlagsNV; y: VkOpticalFlowExecuteFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25932,9 +25985,9 @@ proc contains*(x: VkOpticalFlowExecuteFlagsNV; y: VkOpticalFlowExecuteFlagBitsNV template `{}`*(t: typedesc[VkFrameBoundaryFlagsEXT]; args: varargs[VkFrameBoundaryFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkFrameBoundaryFlagsEXT; y: VkFrameBoundaryFlagsEXT): bool {.inline.} = +proc `==`*(x, y: VkFrameBoundaryFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkFrameBoundaryFlagsEXT; y: VkFrameBoundaryFlagsEXT): bool {.inline.} = +proc `<=`*(x, y: VkFrameBoundaryFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkFrameBoundaryFlagsEXT; y: VkFrameBoundaryFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25942,9 +25995,9 @@ proc contains*(x: VkFrameBoundaryFlagsEXT; y: VkFrameBoundaryFlagBitsEXT): bool template `{}`*(t: typedesc[VkPresentScalingFlagsEXT]; args: varargs[VkPresentScalingFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkPresentScalingFlagsEXT; y: VkPresentScalingFlagsEXT): bool {.inline.} = +proc `==`*(x, y: VkPresentScalingFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkPresentScalingFlagsEXT; y: VkPresentScalingFlagsEXT): bool {.inline.} = +proc `<=`*(x, y: VkPresentScalingFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkPresentScalingFlagsEXT; y: VkPresentScalingFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25952,9 +26005,9 @@ proc contains*(x: VkPresentScalingFlagsEXT; y: VkPresentScalingFlagBitsEXT): boo template `{}`*(t: typedesc[VkPresentGravityFlagsEXT]; args: varargs[VkPresentGravityFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkPresentGravityFlagsEXT; y: VkPresentGravityFlagsEXT): bool {.inline.} = +proc `==`*(x, y: VkPresentGravityFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkPresentGravityFlagsEXT; y: VkPresentGravityFlagsEXT): bool {.inline.} = +proc `<=`*(x, y: VkPresentGravityFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkPresentGravityFlagsEXT; y: VkPresentGravityFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25962,9 +26015,9 @@ proc contains*(x: VkPresentGravityFlagsEXT; y: VkPresentGravityFlagBitsEXT): boo template `{}`*(t: typedesc[VkShaderCreateFlagsEXT]; args: varargs[VkShaderCreateFlagBitsEXT]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkShaderCreateFlagsEXT; y: VkShaderCreateFlagsEXT): bool {.inline.} = +proc `==`*(x, y: VkShaderCreateFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkShaderCreateFlagsEXT; y: VkShaderCreateFlagsEXT): bool {.inline.} = +proc `<=`*(x, y: VkShaderCreateFlagsEXT): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkShaderCreateFlagsEXT; y: VkShaderCreateFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25972,9 +26025,9 @@ proc contains*(x: VkShaderCreateFlagsEXT; y: VkShaderCreateFlagBitsEXT): bool {. template `{}`*(t: typedesc[VkPhysicalDeviceSchedulingControlsFlagsARM]; args: varargs[VkPhysicalDeviceSchedulingControlsFlagBitsARM]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkPhysicalDeviceSchedulingControlsFlagsARM; y: VkPhysicalDeviceSchedulingControlsFlagsARM): bool {.inline.} = +proc `==`*(x, y: VkPhysicalDeviceSchedulingControlsFlagsARM): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkPhysicalDeviceSchedulingControlsFlagsARM; y: VkPhysicalDeviceSchedulingControlsFlagsARM): bool {.inline.} = +proc `<=`*(x, y: VkPhysicalDeviceSchedulingControlsFlagsARM): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkPhysicalDeviceSchedulingControlsFlagsARM; y: VkPhysicalDeviceSchedulingControlsFlagBitsARM): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25982,9 +26035,9 @@ proc contains*(x: VkPhysicalDeviceSchedulingControlsFlagsARM; y: VkPhysicalDevic template `{}`*(t: typedesc[VkVideoCodecOperationFlagsKHR]; args: varargs[VkVideoCodecOperationFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkVideoCodecOperationFlagsKHR; y: VkVideoCodecOperationFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkVideoCodecOperationFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkVideoCodecOperationFlagsKHR; y: VkVideoCodecOperationFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkVideoCodecOperationFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkVideoCodecOperationFlagsKHR; y: VkVideoCodecOperationFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -25992,9 +26045,9 @@ proc contains*(x: VkVideoCodecOperationFlagsKHR; y: VkVideoCodecOperationFlagBit template `{}`*(t: typedesc[VkVideoCapabilityFlagsKHR]; args: varargs[VkVideoCapabilityFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkVideoCapabilityFlagsKHR; y: VkVideoCapabilityFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkVideoCapabilityFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkVideoCapabilityFlagsKHR; y: VkVideoCapabilityFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkVideoCapabilityFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkVideoCapabilityFlagsKHR; y: VkVideoCapabilityFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -26002,9 +26055,9 @@ proc contains*(x: VkVideoCapabilityFlagsKHR; y: VkVideoCapabilityFlagBitsKHR): b template `{}`*(t: typedesc[VkVideoSessionCreateFlagsKHR]; args: varargs[VkVideoSessionCreateFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkVideoSessionCreateFlagsKHR; y: VkVideoSessionCreateFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkVideoSessionCreateFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkVideoSessionCreateFlagsKHR; y: VkVideoSessionCreateFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkVideoSessionCreateFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkVideoSessionCreateFlagsKHR; y: VkVideoSessionCreateFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -26012,9 +26065,9 @@ proc contains*(x: VkVideoSessionCreateFlagsKHR; y: VkVideoSessionCreateFlagBitsK template `{}`*(t: typedesc[VkVideoCodingControlFlagsKHR]; args: varargs[VkVideoCodingControlFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkVideoCodingControlFlagsKHR; y: VkVideoCodingControlFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkVideoCodingControlFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkVideoCodingControlFlagsKHR; y: VkVideoCodingControlFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkVideoCodingControlFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkVideoCodingControlFlagsKHR; y: VkVideoCodingControlFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -26022,9 +26075,9 @@ proc contains*(x: VkVideoCodingControlFlagsKHR; y: VkVideoCodingControlFlagBitsK template `{}`*(t: typedesc[VkVideoDecodeUsageFlagsKHR]; args: varargs[VkVideoDecodeUsageFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkVideoDecodeUsageFlagsKHR; y: VkVideoDecodeUsageFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkVideoDecodeUsageFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkVideoDecodeUsageFlagsKHR; y: VkVideoDecodeUsageFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkVideoDecodeUsageFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkVideoDecodeUsageFlagsKHR; y: VkVideoDecodeUsageFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -26032,9 +26085,9 @@ proc contains*(x: VkVideoDecodeUsageFlagsKHR; y: VkVideoDecodeUsageFlagBitsKHR): template `{}`*(t: typedesc[VkVideoDecodeCapabilityFlagsKHR]; args: varargs[VkVideoDecodeCapabilityFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkVideoDecodeCapabilityFlagsKHR; y: VkVideoDecodeCapabilityFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkVideoDecodeCapabilityFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkVideoDecodeCapabilityFlagsKHR; y: VkVideoDecodeCapabilityFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkVideoDecodeCapabilityFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkVideoDecodeCapabilityFlagsKHR; y: VkVideoDecodeCapabilityFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -26042,9 +26095,9 @@ proc contains*(x: VkVideoDecodeCapabilityFlagsKHR; y: VkVideoDecodeCapabilityFla template `{}`*(t: typedesc[VkVideoDecodeH264PictureLayoutFlagsKHR]; args: varargs[VkVideoDecodeH264PictureLayoutFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkVideoDecodeH264PictureLayoutFlagsKHR; y: VkVideoDecodeH264PictureLayoutFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkVideoDecodeH264PictureLayoutFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkVideoDecodeH264PictureLayoutFlagsKHR; y: VkVideoDecodeH264PictureLayoutFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkVideoDecodeH264PictureLayoutFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkVideoDecodeH264PictureLayoutFlagsKHR; y: VkVideoDecodeH264PictureLayoutFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -26052,9 +26105,9 @@ proc contains*(x: VkVideoDecodeH264PictureLayoutFlagsKHR; y: VkVideoDecodeH264Pi template `{}`*(t: typedesc[VkVideoEncodeUsageFlagsKHR]; args: varargs[VkVideoEncodeUsageFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkVideoEncodeUsageFlagsKHR; y: VkVideoEncodeUsageFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkVideoEncodeUsageFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkVideoEncodeUsageFlagsKHR; y: VkVideoEncodeUsageFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkVideoEncodeUsageFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkVideoEncodeUsageFlagsKHR; y: VkVideoEncodeUsageFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -26062,9 +26115,9 @@ proc contains*(x: VkVideoEncodeUsageFlagsKHR; y: VkVideoEncodeUsageFlagBitsKHR): template `{}`*(t: typedesc[VkVideoEncodeContentFlagsKHR]; args: varargs[VkVideoEncodeContentFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkVideoEncodeContentFlagsKHR; y: VkVideoEncodeContentFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkVideoEncodeContentFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkVideoEncodeContentFlagsKHR; y: VkVideoEncodeContentFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkVideoEncodeContentFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkVideoEncodeContentFlagsKHR; y: VkVideoEncodeContentFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -26072,9 +26125,9 @@ proc contains*(x: VkVideoEncodeContentFlagsKHR; y: VkVideoEncodeContentFlagBitsK template `{}`*(t: typedesc[VkVideoEncodeCapabilityFlagsKHR]; args: varargs[VkVideoEncodeCapabilityFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkVideoEncodeCapabilityFlagsKHR; y: VkVideoEncodeCapabilityFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkVideoEncodeCapabilityFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkVideoEncodeCapabilityFlagsKHR; y: VkVideoEncodeCapabilityFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkVideoEncodeCapabilityFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkVideoEncodeCapabilityFlagsKHR; y: VkVideoEncodeCapabilityFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -26082,9 +26135,9 @@ proc contains*(x: VkVideoEncodeCapabilityFlagsKHR; y: VkVideoEncodeCapabilityFla template `{}`*(t: typedesc[VkVideoEncodeFeedbackFlagsKHR]; args: varargs[VkVideoEncodeFeedbackFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkVideoEncodeFeedbackFlagsKHR; y: VkVideoEncodeFeedbackFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkVideoEncodeFeedbackFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkVideoEncodeFeedbackFlagsKHR; y: VkVideoEncodeFeedbackFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkVideoEncodeFeedbackFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkVideoEncodeFeedbackFlagsKHR; y: VkVideoEncodeFeedbackFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -26092,9 +26145,9 @@ proc contains*(x: VkVideoEncodeFeedbackFlagsKHR; y: VkVideoEncodeFeedbackFlagBit template `{}`*(t: typedesc[VkVideoEncodeRateControlModeFlagsKHR]; args: varargs[VkVideoEncodeRateControlModeFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkVideoEncodeRateControlModeFlagsKHR; y: VkVideoEncodeRateControlModeFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkVideoEncodeRateControlModeFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkVideoEncodeRateControlModeFlagsKHR; y: VkVideoEncodeRateControlModeFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkVideoEncodeRateControlModeFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkVideoEncodeRateControlModeFlagsKHR; y: VkVideoEncodeRateControlModeFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -26102,9 +26155,9 @@ proc contains*(x: VkVideoEncodeRateControlModeFlagsKHR; y: VkVideoEncodeRateCont template `{}`*(t: typedesc[VkVideoChromaSubsamplingFlagsKHR]; args: varargs[VkVideoChromaSubsamplingFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkVideoChromaSubsamplingFlagsKHR; y: VkVideoChromaSubsamplingFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkVideoChromaSubsamplingFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkVideoChromaSubsamplingFlagsKHR; y: VkVideoChromaSubsamplingFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkVideoChromaSubsamplingFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkVideoChromaSubsamplingFlagsKHR; y: VkVideoChromaSubsamplingFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -26112,9 +26165,9 @@ proc contains*(x: VkVideoChromaSubsamplingFlagsKHR; y: VkVideoChromaSubsamplingF template `{}`*(t: typedesc[VkVideoComponentBitDepthFlagsKHR]; args: varargs[VkVideoComponentBitDepthFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkVideoComponentBitDepthFlagsKHR; y: VkVideoComponentBitDepthFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkVideoComponentBitDepthFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkVideoComponentBitDepthFlagsKHR; y: VkVideoComponentBitDepthFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkVideoComponentBitDepthFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkVideoComponentBitDepthFlagsKHR; y: VkVideoComponentBitDepthFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -26122,9 +26175,9 @@ proc contains*(x: VkVideoComponentBitDepthFlagsKHR; y: VkVideoComponentBitDepthF template `{}`*(t: typedesc[VkVideoEncodeH264CapabilityFlagsKHR]; args: varargs[VkVideoEncodeH264CapabilityFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkVideoEncodeH264CapabilityFlagsKHR; y: VkVideoEncodeH264CapabilityFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkVideoEncodeH264CapabilityFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkVideoEncodeH264CapabilityFlagsKHR; y: VkVideoEncodeH264CapabilityFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkVideoEncodeH264CapabilityFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkVideoEncodeH264CapabilityFlagsKHR; y: VkVideoEncodeH264CapabilityFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -26132,9 +26185,9 @@ proc contains*(x: VkVideoEncodeH264CapabilityFlagsKHR; y: VkVideoEncodeH264Capab template `{}`*(t: typedesc[VkVideoEncodeH264StdFlagsKHR]; args: varargs[VkVideoEncodeH264StdFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkVideoEncodeH264StdFlagsKHR; y: VkVideoEncodeH264StdFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkVideoEncodeH264StdFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkVideoEncodeH264StdFlagsKHR; y: VkVideoEncodeH264StdFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkVideoEncodeH264StdFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkVideoEncodeH264StdFlagsKHR; y: VkVideoEncodeH264StdFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -26142,9 +26195,9 @@ proc contains*(x: VkVideoEncodeH264StdFlagsKHR; y: VkVideoEncodeH264StdFlagBitsK template `{}`*(t: typedesc[VkVideoEncodeH264RateControlFlagsKHR]; args: varargs[VkVideoEncodeH264RateControlFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkVideoEncodeH264RateControlFlagsKHR; y: VkVideoEncodeH264RateControlFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkVideoEncodeH264RateControlFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkVideoEncodeH264RateControlFlagsKHR; y: VkVideoEncodeH264RateControlFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkVideoEncodeH264RateControlFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkVideoEncodeH264RateControlFlagsKHR; y: VkVideoEncodeH264RateControlFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -26152,9 +26205,9 @@ proc contains*(x: VkVideoEncodeH264RateControlFlagsKHR; y: VkVideoEncodeH264Rate template `{}`*(t: typedesc[VkVideoEncodeH265CapabilityFlagsKHR]; args: varargs[VkVideoEncodeH265CapabilityFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkVideoEncodeH265CapabilityFlagsKHR; y: VkVideoEncodeH265CapabilityFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkVideoEncodeH265CapabilityFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkVideoEncodeH265CapabilityFlagsKHR; y: VkVideoEncodeH265CapabilityFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkVideoEncodeH265CapabilityFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkVideoEncodeH265CapabilityFlagsKHR; y: VkVideoEncodeH265CapabilityFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -26162,9 +26215,9 @@ proc contains*(x: VkVideoEncodeH265CapabilityFlagsKHR; y: VkVideoEncodeH265Capab template `{}`*(t: typedesc[VkVideoEncodeH265StdFlagsKHR]; args: varargs[VkVideoEncodeH265StdFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkVideoEncodeH265StdFlagsKHR; y: VkVideoEncodeH265StdFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkVideoEncodeH265StdFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkVideoEncodeH265StdFlagsKHR; y: VkVideoEncodeH265StdFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkVideoEncodeH265StdFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkVideoEncodeH265StdFlagsKHR; y: VkVideoEncodeH265StdFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -26172,9 +26225,9 @@ proc contains*(x: VkVideoEncodeH265StdFlagsKHR; y: VkVideoEncodeH265StdFlagBitsK template `{}`*(t: typedesc[VkVideoEncodeH265RateControlFlagsKHR]; args: varargs[VkVideoEncodeH265RateControlFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkVideoEncodeH265RateControlFlagsKHR; y: VkVideoEncodeH265RateControlFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkVideoEncodeH265RateControlFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkVideoEncodeH265RateControlFlagsKHR; y: VkVideoEncodeH265RateControlFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkVideoEncodeH265RateControlFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkVideoEncodeH265RateControlFlagsKHR; y: VkVideoEncodeH265RateControlFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -26182,9 +26235,9 @@ proc contains*(x: VkVideoEncodeH265RateControlFlagsKHR; y: VkVideoEncodeH265Rate template `{}`*(t: typedesc[VkVideoEncodeH265CtbSizeFlagsKHR]; args: varargs[VkVideoEncodeH265CtbSizeFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkVideoEncodeH265CtbSizeFlagsKHR; y: VkVideoEncodeH265CtbSizeFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkVideoEncodeH265CtbSizeFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkVideoEncodeH265CtbSizeFlagsKHR; y: VkVideoEncodeH265CtbSizeFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkVideoEncodeH265CtbSizeFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkVideoEncodeH265CtbSizeFlagsKHR; y: VkVideoEncodeH265CtbSizeFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 @@ -26192,9 +26245,9 @@ proc contains*(x: VkVideoEncodeH265CtbSizeFlagsKHR; y: VkVideoEncodeH265CtbSizeF template `{}`*(t: typedesc[VkVideoEncodeH265TransformBlockSizeFlagsKHR]; args: varargs[VkVideoEncodeH265TransformBlockSizeFlagBitsKHR]): untyped = t(flagsImpl(uint32, args)) -proc `==`*(x: VkVideoEncodeH265TransformBlockSizeFlagsKHR; y: VkVideoEncodeH265TransformBlockSizeFlagsKHR): bool {.inline.} = +proc `==`*(x, y: VkVideoEncodeH265TransformBlockSizeFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 -proc `<=`*(x: VkVideoEncodeH265TransformBlockSizeFlagsKHR; y: VkVideoEncodeH265TransformBlockSizeFlagsKHR): bool {.inline.} = +proc `<=`*(x, y: VkVideoEncodeH265TransformBlockSizeFlagsKHR): bool {.inline.} = (x.uint32 and not y.uint32) == 0 proc contains*(x: VkVideoEncodeH265TransformBlockSizeFlagsKHR; y: VkVideoEncodeH265TransformBlockSizeFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 diff --git a/tools/generator.nim b/tools/generator.nim index d2a8ef3..53de4cd 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -24,6 +24,7 @@ var vkStructs: seq[VkStruct] var vkStructureTypes: seq[string] var vkFlagsTypes: seq[VkFlags] var vkFlagBitsTypes: seq[string] +var vkHandleTypes: seq[VkFlags] proc camelCaseAscii*(s: string): string = ## Converts snake_case to CamelCase @@ -184,6 +185,7 @@ proc genTypes(node: XmlNode, output: var string) = bType = t.child("type").innerText bType = bType.translateType() if not alias: + vkHandleTypes.add(VkFlags(name: name, bType: bType)) bType = "distinct " & bType output.add(&" {name}* = {bType}\n") continue @@ -458,8 +460,14 @@ proc genEnums(node: XmlNode, output: var string) = prev = enumValue output.add("\n") -proc genFlags(output: var string) = - echo "Generating Flags helpers..." +proc genHelpers(output: var string) = + echo "Generating Handle helpers..." + output.add("\n# Handle helpers\n") + for handle in vkHandleTypes.items: + output.add(&""" +proc `==`*(x, y: {handle.name}): bool {{.borrow.}} +""") + echo "Generating Flag helpers..." output.add("\n# Flags helpers\n") output.add(""" import std/macros @@ -476,9 +484,9 @@ macro flagsImpl(base: typed, args: varargs[untyped]): untyped = template `{{}}`*(t: typedesc[{flags.name}]; args: varargs[{flags.flagbits}]): untyped = t(flagsImpl({flags.bType}, args)) -proc `==`*(x: {flags.name}; y: {flags.name}): bool {{.inline.}} = +proc `==`*(x, y: {flags.name}): bool {{.inline.}} = x.{flags.bType} == y.{flags.bType} -proc `<=`*(x: {flags.name}; y: {flags.name}): bool {{.inline.}} = +proc `<=`*(x, y: {flags.name}): bool {{.inline.}} = (x.{flags.bType} and not y.{flags.bType}) == 0 proc contains*(x: {flags.name}; y: {flags.flagbits}): bool {{.inline.}} = (x.{flags.bType} and y.{flags.bType}) != 0 @@ -701,7 +709,7 @@ proc main() = xml.genProcs(output) xml.genFeatures(output) xml.genExtensions(output) - genFlags(output) + genHelpers(output) output.add("\n" & vkInit) From 31f69fa744bd6741b7659d4a3cf5aeb42bf69692 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Wed, 19 Jun 2024 15:18:24 +0300 Subject: [PATCH 48/57] add helpers for VkDeviceSize --- src/vulkan.nim | 13 +++++++++++++ tools/generator.nim | 15 +++++++++++++++ 2 files changed, 28 insertions(+) diff --git a/src/vulkan.nim b/src/vulkan.nim index ee0bfe0..b5e9596 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -24881,6 +24881,19 @@ proc loadVK_KHR_maintenance6*() = vkCmdSetDescriptorBufferOffsets2EXT = cast[proc (commandBuffer: VkCommandBuffer, pSetDescriptorBufferOffsetsInfo: ptr VkSetDescriptorBufferOffsetsInfoEXT) {.stdcall.}](vkGetProc("vkCmdSetDescriptorBufferOffsets2EXT")) vkCmdBindDescriptorBufferEmbeddedSamplers2EXT = cast[proc (commandBuffer: VkCommandBuffer, pBindDescriptorBufferEmbeddedSamplersInfo: ptr VkBindDescriptorBufferEmbeddedSamplersInfoEXT) {.stdcall.}](vkGetProc("vkCmdBindDescriptorBufferEmbeddedSamplers2EXT")) +# VkDeviceSize helpers +proc `==`*(x, y: VkDeviceSize): bool {.borrow.} +proc `<=`*(x, y: VkDeviceSize): bool {.borrow.} +proc `< `*(x, y: VkDeviceSize): bool {.borrow.} +proc `+`*(x, y: VkDeviceSize): VkDeviceSize {.borrow.} +proc `-`*(x, y: VkDeviceSize): VkDeviceSize {.borrow.} +proc `*`*(x, y: VkDeviceSize): VkDeviceSize {.borrow.} +proc `not`*(x: VkDeviceSize): VkDeviceSize {.borrow.} +proc `div`*(x, y: VkDeviceSize): VkDeviceSize {.borrow.} +proc `and`*(x, y: VkDeviceSize): VkDeviceSize {.borrow.} +# proc `shl`*(x: VkDeviceSize; y: SomeInteger): VkDeviceSize {.borrow.} +# proc `shr`*(x: VkDeviceSize; y: SomeInteger): VkDeviceSize {.borrow.} + # Handle helpers proc `==`*(x, y: VkInstance): bool {.borrow.} proc `==`*(x, y: VkPhysicalDevice): bool {.borrow.} diff --git a/tools/generator.nim b/tools/generator.nim index 53de4cd..f3be2ba 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -461,6 +461,21 @@ proc genEnums(node: XmlNode, output: var string) = output.add("\n") proc genHelpers(output: var string) = + output.add("\n# VkDeviceSize helpers\n") + output.add(""" +proc `==`*(x, y: VkDeviceSize): bool {.borrow.} +proc `<=`*(x, y: VkDeviceSize): bool {.borrow.} +proc `< `*(x, y: VkDeviceSize): bool {.borrow.} +proc `+`*(x, y: VkDeviceSize): VkDeviceSize {.borrow.} +proc `-`*(x, y: VkDeviceSize): VkDeviceSize {.borrow.} +proc `*`*(x, y: VkDeviceSize): VkDeviceSize {.borrow.} +proc `not`*(x: VkDeviceSize): VkDeviceSize {.borrow.} +proc `div`*(x, y: VkDeviceSize): VkDeviceSize {.borrow.} +proc `and`*(x, y: VkDeviceSize): VkDeviceSize {.borrow.} +#proc `shl`*(x: VkDeviceSize; y: SomeInteger): VkDeviceSize {.borrow.} +#proc `shr`*(x: VkDeviceSize; y: SomeInteger): VkDeviceSize {.borrow.} + +""") echo "Generating Handle helpers..." output.add("\n# Handle helpers\n") for handle in vkHandleTypes.items: From 632ccfad83b302e9ad131a8ee2194820a6d79c57 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Mon, 8 Jul 2024 17:54:33 +0300 Subject: [PATCH 49/57] fix flag helpers types throwing type errors --- src/vulkan.nim | 533 ++++++++++++++++++++++---------------------- tools/generator.nim | 12 +- 2 files changed, 273 insertions(+), 272 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index b5e9596..fe6902d 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -24891,8 +24891,9 @@ proc `*`*(x, y: VkDeviceSize): VkDeviceSize {.borrow.} proc `not`*(x: VkDeviceSize): VkDeviceSize {.borrow.} proc `div`*(x, y: VkDeviceSize): VkDeviceSize {.borrow.} proc `and`*(x, y: VkDeviceSize): VkDeviceSize {.borrow.} -# proc `shl`*(x: VkDeviceSize; y: SomeInteger): VkDeviceSize {.borrow.} -# proc `shr`*(x: VkDeviceSize; y: SomeInteger): VkDeviceSize {.borrow.} +proc `shl`*(x: VkDeviceSize; y: uint64): VkDeviceSize {.borrow.} +proc `shr`*(x: VkDeviceSize; y: uint64): VkDeviceSize {.borrow.} + # Handle helpers proc `==`*(x, y: VkInstance): bool {.borrow.} @@ -24950,13 +24951,13 @@ proc `==`*(x, y: VkCudaFunctionNV): bool {.borrow.} # Flags helpers import std/macros -macro flagsImpl(base: typed, args: varargs[untyped]): untyped = +macro flagsImpl(base, bits: typed, args: varargs[untyped]): untyped = let arr = newNimNode(nnkBracketExpr) - for n in args: arr.add newCall(base, n) + for n in args: arr.add newCall(base, newDotExpr(bits, n)) result = nestList(bindSym"or", arr) -template `{}`*(t: typedesc[VkFramebufferCreateFlags]; args: varargs[VkFramebufferCreateFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkFramebufferCreateFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkFramebufferCreateFlagBits, args)) proc `==`*(x, y: VkFramebufferCreateFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -24965,8 +24966,8 @@ proc `<=`*(x, y: VkFramebufferCreateFlags): bool {.inline.} = proc contains*(x: VkFramebufferCreateFlags; y: VkFramebufferCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkRenderPassCreateFlags]; args: varargs[VkRenderPassCreateFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkRenderPassCreateFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkRenderPassCreateFlagBits, args)) proc `==`*(x, y: VkRenderPassCreateFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -24975,8 +24976,8 @@ proc `<=`*(x, y: VkRenderPassCreateFlags): bool {.inline.} = proc contains*(x: VkRenderPassCreateFlags; y: VkRenderPassCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkSamplerCreateFlags]; args: varargs[VkSamplerCreateFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkSamplerCreateFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkSamplerCreateFlagBits, args)) proc `==`*(x, y: VkSamplerCreateFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -24985,8 +24986,8 @@ proc `<=`*(x, y: VkSamplerCreateFlags): bool {.inline.} = proc contains*(x: VkSamplerCreateFlags; y: VkSamplerCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkPipelineLayoutCreateFlags]; args: varargs[VkPipelineLayoutCreateFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPipelineLayoutCreateFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkPipelineLayoutCreateFlagBits, args)) proc `==`*(x, y: VkPipelineLayoutCreateFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -24995,8 +24996,8 @@ proc `<=`*(x, y: VkPipelineLayoutCreateFlags): bool {.inline.} = proc contains*(x: VkPipelineLayoutCreateFlags; y: VkPipelineLayoutCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkPipelineCacheCreateFlags]; args: varargs[VkPipelineCacheCreateFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPipelineCacheCreateFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkPipelineCacheCreateFlagBits, args)) proc `==`*(x, y: VkPipelineCacheCreateFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25005,8 +25006,8 @@ proc `<=`*(x, y: VkPipelineCacheCreateFlags): bool {.inline.} = proc contains*(x: VkPipelineCacheCreateFlags; y: VkPipelineCacheCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkPipelineDepthStencilStateCreateFlags]; args: varargs[VkPipelineDepthStencilStateCreateFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPipelineDepthStencilStateCreateFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkPipelineDepthStencilStateCreateFlagBits, args)) proc `==`*(x, y: VkPipelineDepthStencilStateCreateFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25015,8 +25016,8 @@ proc `<=`*(x, y: VkPipelineDepthStencilStateCreateFlags): bool {.inline.} = proc contains*(x: VkPipelineDepthStencilStateCreateFlags; y: VkPipelineDepthStencilStateCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkPipelineColorBlendStateCreateFlags]; args: varargs[VkPipelineColorBlendStateCreateFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPipelineColorBlendStateCreateFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkPipelineColorBlendStateCreateFlagBits, args)) proc `==`*(x, y: VkPipelineColorBlendStateCreateFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25025,8 +25026,8 @@ proc `<=`*(x, y: VkPipelineColorBlendStateCreateFlags): bool {.inline.} = proc contains*(x: VkPipelineColorBlendStateCreateFlags; y: VkPipelineColorBlendStateCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkPipelineShaderStageCreateFlags]; args: varargs[VkPipelineShaderStageCreateFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPipelineShaderStageCreateFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkPipelineShaderStageCreateFlagBits, args)) proc `==`*(x, y: VkPipelineShaderStageCreateFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25035,8 +25036,8 @@ proc `<=`*(x, y: VkPipelineShaderStageCreateFlags): bool {.inline.} = proc contains*(x: VkPipelineShaderStageCreateFlags; y: VkPipelineShaderStageCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkDescriptorSetLayoutCreateFlags]; args: varargs[VkDescriptorSetLayoutCreateFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkDescriptorSetLayoutCreateFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkDescriptorSetLayoutCreateFlagBits, args)) proc `==`*(x, y: VkDescriptorSetLayoutCreateFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25045,8 +25046,8 @@ proc `<=`*(x, y: VkDescriptorSetLayoutCreateFlags): bool {.inline.} = proc contains*(x: VkDescriptorSetLayoutCreateFlags; y: VkDescriptorSetLayoutCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkInstanceCreateFlags]; args: varargs[VkInstanceCreateFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkInstanceCreateFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkInstanceCreateFlagBits, args)) proc `==`*(x, y: VkInstanceCreateFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25055,8 +25056,8 @@ proc `<=`*(x, y: VkInstanceCreateFlags): bool {.inline.} = proc contains*(x: VkInstanceCreateFlags; y: VkInstanceCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkDeviceQueueCreateFlags]; args: varargs[VkDeviceQueueCreateFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkDeviceQueueCreateFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkDeviceQueueCreateFlagBits, args)) proc `==`*(x, y: VkDeviceQueueCreateFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25065,8 +25066,8 @@ proc `<=`*(x, y: VkDeviceQueueCreateFlags): bool {.inline.} = proc contains*(x: VkDeviceQueueCreateFlags; y: VkDeviceQueueCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkQueueFlags]; args: varargs[VkQueueFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkQueueFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkQueueFlagBits, args)) proc `==`*(x, y: VkQueueFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25075,8 +25076,8 @@ proc `<=`*(x, y: VkQueueFlags): bool {.inline.} = proc contains*(x: VkQueueFlags; y: VkQueueFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkMemoryPropertyFlags]; args: varargs[VkMemoryPropertyFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkMemoryPropertyFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkMemoryPropertyFlagBits, args)) proc `==`*(x, y: VkMemoryPropertyFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25085,8 +25086,8 @@ proc `<=`*(x, y: VkMemoryPropertyFlags): bool {.inline.} = proc contains*(x: VkMemoryPropertyFlags; y: VkMemoryPropertyFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkMemoryHeapFlags]; args: varargs[VkMemoryHeapFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkMemoryHeapFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkMemoryHeapFlagBits, args)) proc `==`*(x, y: VkMemoryHeapFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25095,8 +25096,8 @@ proc `<=`*(x, y: VkMemoryHeapFlags): bool {.inline.} = proc contains*(x: VkMemoryHeapFlags; y: VkMemoryHeapFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkAccessFlags]; args: varargs[VkAccessFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkAccessFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkAccessFlagBits, args)) proc `==`*(x, y: VkAccessFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25105,8 +25106,8 @@ proc `<=`*(x, y: VkAccessFlags): bool {.inline.} = proc contains*(x: VkAccessFlags; y: VkAccessFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkBufferUsageFlags]; args: varargs[VkBufferUsageFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkBufferUsageFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkBufferUsageFlagBits, args)) proc `==`*(x, y: VkBufferUsageFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25115,8 +25116,8 @@ proc `<=`*(x, y: VkBufferUsageFlags): bool {.inline.} = proc contains*(x: VkBufferUsageFlags; y: VkBufferUsageFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkBufferCreateFlags]; args: varargs[VkBufferCreateFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkBufferCreateFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkBufferCreateFlagBits, args)) proc `==`*(x, y: VkBufferCreateFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25125,8 +25126,8 @@ proc `<=`*(x, y: VkBufferCreateFlags): bool {.inline.} = proc contains*(x: VkBufferCreateFlags; y: VkBufferCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkShaderStageFlags]; args: varargs[VkShaderStageFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkShaderStageFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkShaderStageFlagBits, args)) proc `==`*(x, y: VkShaderStageFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25135,8 +25136,8 @@ proc `<=`*(x, y: VkShaderStageFlags): bool {.inline.} = proc contains*(x: VkShaderStageFlags; y: VkShaderStageFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkImageUsageFlags]; args: varargs[VkImageUsageFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkImageUsageFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkImageUsageFlagBits, args)) proc `==`*(x, y: VkImageUsageFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25145,8 +25146,8 @@ proc `<=`*(x, y: VkImageUsageFlags): bool {.inline.} = proc contains*(x: VkImageUsageFlags; y: VkImageUsageFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkImageCreateFlags]; args: varargs[VkImageCreateFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkImageCreateFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkImageCreateFlagBits, args)) proc `==`*(x, y: VkImageCreateFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25155,8 +25156,8 @@ proc `<=`*(x, y: VkImageCreateFlags): bool {.inline.} = proc contains*(x: VkImageCreateFlags; y: VkImageCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkImageViewCreateFlags]; args: varargs[VkImageViewCreateFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkImageViewCreateFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkImageViewCreateFlagBits, args)) proc `==`*(x, y: VkImageViewCreateFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25165,8 +25166,8 @@ proc `<=`*(x, y: VkImageViewCreateFlags): bool {.inline.} = proc contains*(x: VkImageViewCreateFlags; y: VkImageViewCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkPipelineCreateFlags]; args: varargs[VkPipelineCreateFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPipelineCreateFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkPipelineCreateFlagBits, args)) proc `==`*(x, y: VkPipelineCreateFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25175,8 +25176,8 @@ proc `<=`*(x, y: VkPipelineCreateFlags): bool {.inline.} = proc contains*(x: VkPipelineCreateFlags; y: VkPipelineCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkColorComponentFlags]; args: varargs[VkColorComponentFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkColorComponentFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkColorComponentFlagBits, args)) proc `==`*(x, y: VkColorComponentFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25185,8 +25186,8 @@ proc `<=`*(x, y: VkColorComponentFlags): bool {.inline.} = proc contains*(x: VkColorComponentFlags; y: VkColorComponentFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkFenceCreateFlags]; args: varargs[VkFenceCreateFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkFenceCreateFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkFenceCreateFlagBits, args)) proc `==`*(x, y: VkFenceCreateFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25195,8 +25196,8 @@ proc `<=`*(x, y: VkFenceCreateFlags): bool {.inline.} = proc contains*(x: VkFenceCreateFlags; y: VkFenceCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkFormatFeatureFlags]; args: varargs[VkFormatFeatureFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkFormatFeatureFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkFormatFeatureFlagBits, args)) proc `==`*(x, y: VkFormatFeatureFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25205,8 +25206,8 @@ proc `<=`*(x, y: VkFormatFeatureFlags): bool {.inline.} = proc contains*(x: VkFormatFeatureFlags; y: VkFormatFeatureFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkQueryControlFlags]; args: varargs[VkQueryControlFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkQueryControlFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkQueryControlFlagBits, args)) proc `==`*(x, y: VkQueryControlFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25215,8 +25216,8 @@ proc `<=`*(x, y: VkQueryControlFlags): bool {.inline.} = proc contains*(x: VkQueryControlFlags; y: VkQueryControlFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkQueryResultFlags]; args: varargs[VkQueryResultFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkQueryResultFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkQueryResultFlagBits, args)) proc `==`*(x, y: VkQueryResultFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25225,8 +25226,8 @@ proc `<=`*(x, y: VkQueryResultFlags): bool {.inline.} = proc contains*(x: VkQueryResultFlags; y: VkQueryResultFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkEventCreateFlags]; args: varargs[VkEventCreateFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkEventCreateFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkEventCreateFlagBits, args)) proc `==`*(x, y: VkEventCreateFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25235,8 +25236,8 @@ proc `<=`*(x, y: VkEventCreateFlags): bool {.inline.} = proc contains*(x: VkEventCreateFlags; y: VkEventCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkCommandPoolCreateFlags]; args: varargs[VkCommandPoolCreateFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkCommandPoolCreateFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkCommandPoolCreateFlagBits, args)) proc `==`*(x, y: VkCommandPoolCreateFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25245,8 +25246,8 @@ proc `<=`*(x, y: VkCommandPoolCreateFlags): bool {.inline.} = proc contains*(x: VkCommandPoolCreateFlags; y: VkCommandPoolCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkCommandPoolResetFlags]; args: varargs[VkCommandPoolResetFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkCommandPoolResetFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkCommandPoolResetFlagBits, args)) proc `==`*(x, y: VkCommandPoolResetFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25255,8 +25256,8 @@ proc `<=`*(x, y: VkCommandPoolResetFlags): bool {.inline.} = proc contains*(x: VkCommandPoolResetFlags; y: VkCommandPoolResetFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkCommandBufferResetFlags]; args: varargs[VkCommandBufferResetFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkCommandBufferResetFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkCommandBufferResetFlagBits, args)) proc `==`*(x, y: VkCommandBufferResetFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25265,8 +25266,8 @@ proc `<=`*(x, y: VkCommandBufferResetFlags): bool {.inline.} = proc contains*(x: VkCommandBufferResetFlags; y: VkCommandBufferResetFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkCommandBufferUsageFlags]; args: varargs[VkCommandBufferUsageFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkCommandBufferUsageFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkCommandBufferUsageFlagBits, args)) proc `==`*(x, y: VkCommandBufferUsageFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25275,8 +25276,8 @@ proc `<=`*(x, y: VkCommandBufferUsageFlags): bool {.inline.} = proc contains*(x: VkCommandBufferUsageFlags; y: VkCommandBufferUsageFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkQueryPipelineStatisticFlags]; args: varargs[VkQueryPipelineStatisticFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkQueryPipelineStatisticFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkQueryPipelineStatisticFlagBits, args)) proc `==`*(x, y: VkQueryPipelineStatisticFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25285,8 +25286,8 @@ proc `<=`*(x, y: VkQueryPipelineStatisticFlags): bool {.inline.} = proc contains*(x: VkQueryPipelineStatisticFlags; y: VkQueryPipelineStatisticFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkMemoryMapFlags]; args: varargs[VkMemoryMapFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkMemoryMapFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkMemoryMapFlagBits, args)) proc `==`*(x, y: VkMemoryMapFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25295,8 +25296,8 @@ proc `<=`*(x, y: VkMemoryMapFlags): bool {.inline.} = proc contains*(x: VkMemoryMapFlags; y: VkMemoryMapFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkMemoryUnmapFlagsKHR]; args: varargs[VkMemoryUnmapFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkMemoryUnmapFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkMemoryUnmapFlagBitsKHR, args)) proc `==`*(x, y: VkMemoryUnmapFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -25305,8 +25306,8 @@ proc `<=`*(x, y: VkMemoryUnmapFlagsKHR): bool {.inline.} = proc contains*(x: VkMemoryUnmapFlagsKHR; y: VkMemoryUnmapFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkImageAspectFlags]; args: varargs[VkImageAspectFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkImageAspectFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkImageAspectFlagBits, args)) proc `==`*(x, y: VkImageAspectFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25315,8 +25316,8 @@ proc `<=`*(x, y: VkImageAspectFlags): bool {.inline.} = proc contains*(x: VkImageAspectFlags; y: VkImageAspectFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkSparseMemoryBindFlags]; args: varargs[VkSparseMemoryBindFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkSparseMemoryBindFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkSparseMemoryBindFlagBits, args)) proc `==`*(x, y: VkSparseMemoryBindFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25325,8 +25326,8 @@ proc `<=`*(x, y: VkSparseMemoryBindFlags): bool {.inline.} = proc contains*(x: VkSparseMemoryBindFlags; y: VkSparseMemoryBindFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkSparseImageFormatFlags]; args: varargs[VkSparseImageFormatFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkSparseImageFormatFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkSparseImageFormatFlagBits, args)) proc `==`*(x, y: VkSparseImageFormatFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25335,8 +25336,8 @@ proc `<=`*(x, y: VkSparseImageFormatFlags): bool {.inline.} = proc contains*(x: VkSparseImageFormatFlags; y: VkSparseImageFormatFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkSubpassDescriptionFlags]; args: varargs[VkSubpassDescriptionFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkSubpassDescriptionFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkSubpassDescriptionFlagBits, args)) proc `==`*(x, y: VkSubpassDescriptionFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25345,8 +25346,8 @@ proc `<=`*(x, y: VkSubpassDescriptionFlags): bool {.inline.} = proc contains*(x: VkSubpassDescriptionFlags; y: VkSubpassDescriptionFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkPipelineStageFlags]; args: varargs[VkPipelineStageFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPipelineStageFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkPipelineStageFlagBits, args)) proc `==`*(x, y: VkPipelineStageFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25355,8 +25356,8 @@ proc `<=`*(x, y: VkPipelineStageFlags): bool {.inline.} = proc contains*(x: VkPipelineStageFlags; y: VkPipelineStageFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkSampleCountFlags]; args: varargs[VkSampleCountFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkSampleCountFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkSampleCountFlagBits, args)) proc `==`*(x, y: VkSampleCountFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25365,8 +25366,8 @@ proc `<=`*(x, y: VkSampleCountFlags): bool {.inline.} = proc contains*(x: VkSampleCountFlags; y: VkSampleCountFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkAttachmentDescriptionFlags]; args: varargs[VkAttachmentDescriptionFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkAttachmentDescriptionFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkAttachmentDescriptionFlagBits, args)) proc `==`*(x, y: VkAttachmentDescriptionFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25375,8 +25376,8 @@ proc `<=`*(x, y: VkAttachmentDescriptionFlags): bool {.inline.} = proc contains*(x: VkAttachmentDescriptionFlags; y: VkAttachmentDescriptionFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkStencilFaceFlags]; args: varargs[VkStencilFaceFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkStencilFaceFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkStencilFaceFlagBits, args)) proc `==`*(x, y: VkStencilFaceFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25385,8 +25386,8 @@ proc `<=`*(x, y: VkStencilFaceFlags): bool {.inline.} = proc contains*(x: VkStencilFaceFlags; y: VkStencilFaceFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkCullModeFlags]; args: varargs[VkCullModeFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkCullModeFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkCullModeFlagBits, args)) proc `==`*(x, y: VkCullModeFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25395,8 +25396,8 @@ proc `<=`*(x, y: VkCullModeFlags): bool {.inline.} = proc contains*(x: VkCullModeFlags; y: VkCullModeFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkDescriptorPoolCreateFlags]; args: varargs[VkDescriptorPoolCreateFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkDescriptorPoolCreateFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkDescriptorPoolCreateFlagBits, args)) proc `==`*(x, y: VkDescriptorPoolCreateFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25405,8 +25406,8 @@ proc `<=`*(x, y: VkDescriptorPoolCreateFlags): bool {.inline.} = proc contains*(x: VkDescriptorPoolCreateFlags; y: VkDescriptorPoolCreateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkDependencyFlags]; args: varargs[VkDependencyFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkDependencyFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkDependencyFlagBits, args)) proc `==`*(x, y: VkDependencyFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25415,8 +25416,8 @@ proc `<=`*(x, y: VkDependencyFlags): bool {.inline.} = proc contains*(x: VkDependencyFlags; y: VkDependencyFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkSubgroupFeatureFlags]; args: varargs[VkSubgroupFeatureFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkSubgroupFeatureFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkSubgroupFeatureFlagBits, args)) proc `==`*(x, y: VkSubgroupFeatureFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25425,8 +25426,8 @@ proc `<=`*(x, y: VkSubgroupFeatureFlags): bool {.inline.} = proc contains*(x: VkSubgroupFeatureFlags; y: VkSubgroupFeatureFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkIndirectCommandsLayoutUsageFlagsNV]; args: varargs[VkIndirectCommandsLayoutUsageFlagBitsNV]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkIndirectCommandsLayoutUsageFlagsNV]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkIndirectCommandsLayoutUsageFlagBitsNV, args)) proc `==`*(x, y: VkIndirectCommandsLayoutUsageFlagsNV): bool {.inline.} = x.uint32 == y.uint32 @@ -25435,8 +25436,8 @@ proc `<=`*(x, y: VkIndirectCommandsLayoutUsageFlagsNV): bool {.inline.} = proc contains*(x: VkIndirectCommandsLayoutUsageFlagsNV; y: VkIndirectCommandsLayoutUsageFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkIndirectStateFlagsNV]; args: varargs[VkIndirectStateFlagBitsNV]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkIndirectStateFlagsNV]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkIndirectStateFlagBitsNV, args)) proc `==`*(x, y: VkIndirectStateFlagsNV): bool {.inline.} = x.uint32 == y.uint32 @@ -25445,8 +25446,8 @@ proc `<=`*(x, y: VkIndirectStateFlagsNV): bool {.inline.} = proc contains*(x: VkIndirectStateFlagsNV; y: VkIndirectStateFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkGeometryFlagsKHR]; args: varargs[VkGeometryFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkGeometryFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkGeometryFlagBitsKHR, args)) proc `==`*(x, y: VkGeometryFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -25455,8 +25456,8 @@ proc `<=`*(x, y: VkGeometryFlagsKHR): bool {.inline.} = proc contains*(x: VkGeometryFlagsKHR; y: VkGeometryFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkGeometryInstanceFlagsKHR]; args: varargs[VkGeometryInstanceFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkGeometryInstanceFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkGeometryInstanceFlagBitsKHR, args)) proc `==`*(x, y: VkGeometryInstanceFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -25465,8 +25466,8 @@ proc `<=`*(x, y: VkGeometryInstanceFlagsKHR): bool {.inline.} = proc contains*(x: VkGeometryInstanceFlagsKHR; y: VkGeometryInstanceFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkBuildAccelerationStructureFlagsKHR]; args: varargs[VkBuildAccelerationStructureFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkBuildAccelerationStructureFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkBuildAccelerationStructureFlagBitsKHR, args)) proc `==`*(x, y: VkBuildAccelerationStructureFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -25475,8 +25476,8 @@ proc `<=`*(x, y: VkBuildAccelerationStructureFlagsKHR): bool {.inline.} = proc contains*(x: VkBuildAccelerationStructureFlagsKHR; y: VkBuildAccelerationStructureFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkAccelerationStructureCreateFlagsKHR]; args: varargs[VkAccelerationStructureCreateFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkAccelerationStructureCreateFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkAccelerationStructureCreateFlagBitsKHR, args)) proc `==`*(x, y: VkAccelerationStructureCreateFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -25485,8 +25486,8 @@ proc `<=`*(x, y: VkAccelerationStructureCreateFlagsKHR): bool {.inline.} = proc contains*(x: VkAccelerationStructureCreateFlagsKHR; y: VkAccelerationStructureCreateFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkPipelineCreationFeedbackFlags]; args: varargs[VkPipelineCreationFeedbackFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPipelineCreationFeedbackFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkPipelineCreationFeedbackFlagBits, args)) proc `==`*(x, y: VkPipelineCreationFeedbackFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25495,8 +25496,8 @@ proc `<=`*(x, y: VkPipelineCreationFeedbackFlags): bool {.inline.} = proc contains*(x: VkPipelineCreationFeedbackFlags; y: VkPipelineCreationFeedbackFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkPerformanceCounterDescriptionFlagsKHR]; args: varargs[VkPerformanceCounterDescriptionFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPerformanceCounterDescriptionFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkPerformanceCounterDescriptionFlagBitsKHR, args)) proc `==`*(x, y: VkPerformanceCounterDescriptionFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -25505,8 +25506,8 @@ proc `<=`*(x, y: VkPerformanceCounterDescriptionFlagsKHR): bool {.inline.} = proc contains*(x: VkPerformanceCounterDescriptionFlagsKHR; y: VkPerformanceCounterDescriptionFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkSemaphoreWaitFlags]; args: varargs[VkSemaphoreWaitFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkSemaphoreWaitFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkSemaphoreWaitFlagBits, args)) proc `==`*(x, y: VkSemaphoreWaitFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25515,8 +25516,8 @@ proc `<=`*(x, y: VkSemaphoreWaitFlags): bool {.inline.} = proc contains*(x: VkSemaphoreWaitFlags; y: VkSemaphoreWaitFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkDeviceDiagnosticsConfigFlagsNV]; args: varargs[VkDeviceDiagnosticsConfigFlagBitsNV]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkDeviceDiagnosticsConfigFlagsNV]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkDeviceDiagnosticsConfigFlagBitsNV, args)) proc `==`*(x, y: VkDeviceDiagnosticsConfigFlagsNV): bool {.inline.} = x.uint32 == y.uint32 @@ -25525,8 +25526,8 @@ proc `<=`*(x, y: VkDeviceDiagnosticsConfigFlagsNV): bool {.inline.} = proc contains*(x: VkDeviceDiagnosticsConfigFlagsNV; y: VkDeviceDiagnosticsConfigFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkAccessFlags2]; args: varargs[VkAccessFlagBits2]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkAccessFlags2]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkAccessFlagBits2, args)) proc `==`*(x, y: VkAccessFlags2): bool {.inline.} = x.uint32 == y.uint32 @@ -25535,8 +25536,8 @@ proc `<=`*(x, y: VkAccessFlags2): bool {.inline.} = proc contains*(x: VkAccessFlags2; y: VkAccessFlagBits2): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkPipelineStageFlags2]; args: varargs[VkPipelineStageFlagBits2]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPipelineStageFlags2]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkPipelineStageFlagBits2, args)) proc `==`*(x, y: VkPipelineStageFlags2): bool {.inline.} = x.uint32 == y.uint32 @@ -25545,8 +25546,8 @@ proc `<=`*(x, y: VkPipelineStageFlags2): bool {.inline.} = proc contains*(x: VkPipelineStageFlags2; y: VkPipelineStageFlagBits2): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkFormatFeatureFlags2]; args: varargs[VkFormatFeatureFlagBits2]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkFormatFeatureFlags2]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkFormatFeatureFlagBits2, args)) proc `==`*(x, y: VkFormatFeatureFlags2): bool {.inline.} = x.uint32 == y.uint32 @@ -25555,8 +25556,8 @@ proc `<=`*(x, y: VkFormatFeatureFlags2): bool {.inline.} = proc contains*(x: VkFormatFeatureFlags2; y: VkFormatFeatureFlagBits2): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkRenderingFlags]; args: varargs[VkRenderingFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkRenderingFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkRenderingFlagBits, args)) proc `==`*(x, y: VkRenderingFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25565,8 +25566,8 @@ proc `<=`*(x, y: VkRenderingFlags): bool {.inline.} = proc contains*(x: VkRenderingFlags; y: VkRenderingFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkMemoryDecompressionMethodFlagsNV]; args: varargs[VkMemoryDecompressionMethodFlagBitsNV]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkMemoryDecompressionMethodFlagsNV]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkMemoryDecompressionMethodFlagBitsNV, args)) proc `==`*(x, y: VkMemoryDecompressionMethodFlagsNV): bool {.inline.} = x.uint32 == y.uint32 @@ -25575,8 +25576,8 @@ proc `<=`*(x, y: VkMemoryDecompressionMethodFlagsNV): bool {.inline.} = proc contains*(x: VkMemoryDecompressionMethodFlagsNV; y: VkMemoryDecompressionMethodFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkBuildMicromapFlagsEXT]; args: varargs[VkBuildMicromapFlagBitsEXT]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkBuildMicromapFlagsEXT]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkBuildMicromapFlagBitsEXT, args)) proc `==`*(x, y: VkBuildMicromapFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 @@ -25585,8 +25586,8 @@ proc `<=`*(x, y: VkBuildMicromapFlagsEXT): bool {.inline.} = proc contains*(x: VkBuildMicromapFlagsEXT; y: VkBuildMicromapFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkMicromapCreateFlagsEXT]; args: varargs[VkMicromapCreateFlagBitsEXT]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkMicromapCreateFlagsEXT]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkMicromapCreateFlagBitsEXT, args)) proc `==`*(x, y: VkMicromapCreateFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 @@ -25595,8 +25596,8 @@ proc `<=`*(x, y: VkMicromapCreateFlagsEXT): bool {.inline.} = proc contains*(x: VkMicromapCreateFlagsEXT; y: VkMicromapCreateFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkPipelineCreateFlags2KHR]; args: varargs[VkPipelineCreateFlagBits2KHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPipelineCreateFlags2KHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkPipelineCreateFlagBits2KHR, args)) proc `==`*(x, y: VkPipelineCreateFlags2KHR): bool {.inline.} = x.uint32 == y.uint32 @@ -25605,8 +25606,8 @@ proc `<=`*(x, y: VkPipelineCreateFlags2KHR): bool {.inline.} = proc contains*(x: VkPipelineCreateFlags2KHR; y: VkPipelineCreateFlagBits2KHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkBufferUsageFlags2KHR]; args: varargs[VkBufferUsageFlagBits2KHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkBufferUsageFlags2KHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkBufferUsageFlagBits2KHR, args)) proc `==`*(x, y: VkBufferUsageFlags2KHR): bool {.inline.} = x.uint32 == y.uint32 @@ -25615,8 +25616,8 @@ proc `<=`*(x, y: VkBufferUsageFlags2KHR): bool {.inline.} = proc contains*(x: VkBufferUsageFlags2KHR; y: VkBufferUsageFlagBits2KHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkCompositeAlphaFlagsKHR]; args: varargs[VkCompositeAlphaFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkCompositeAlphaFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkCompositeAlphaFlagBitsKHR, args)) proc `==`*(x, y: VkCompositeAlphaFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -25625,8 +25626,8 @@ proc `<=`*(x, y: VkCompositeAlphaFlagsKHR): bool {.inline.} = proc contains*(x: VkCompositeAlphaFlagsKHR; y: VkCompositeAlphaFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkDisplayPlaneAlphaFlagsKHR]; args: varargs[VkDisplayPlaneAlphaFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkDisplayPlaneAlphaFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkDisplayPlaneAlphaFlagBitsKHR, args)) proc `==`*(x, y: VkDisplayPlaneAlphaFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -25635,8 +25636,8 @@ proc `<=`*(x, y: VkDisplayPlaneAlphaFlagsKHR): bool {.inline.} = proc contains*(x: VkDisplayPlaneAlphaFlagsKHR; y: VkDisplayPlaneAlphaFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkSurfaceTransformFlagsKHR]; args: varargs[VkSurfaceTransformFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkSurfaceTransformFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkSurfaceTransformFlagBitsKHR, args)) proc `==`*(x, y: VkSurfaceTransformFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -25645,8 +25646,8 @@ proc `<=`*(x, y: VkSurfaceTransformFlagsKHR): bool {.inline.} = proc contains*(x: VkSurfaceTransformFlagsKHR; y: VkSurfaceTransformFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkSwapchainCreateFlagsKHR]; args: varargs[VkSwapchainCreateFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkSwapchainCreateFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkSwapchainCreateFlagBitsKHR, args)) proc `==`*(x, y: VkSwapchainCreateFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -25655,8 +25656,8 @@ proc `<=`*(x, y: VkSwapchainCreateFlagsKHR): bool {.inline.} = proc contains*(x: VkSwapchainCreateFlagsKHR; y: VkSwapchainCreateFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkPeerMemoryFeatureFlags]; args: varargs[VkPeerMemoryFeatureFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPeerMemoryFeatureFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkPeerMemoryFeatureFlagBits, args)) proc `==`*(x, y: VkPeerMemoryFeatureFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25665,8 +25666,8 @@ proc `<=`*(x, y: VkPeerMemoryFeatureFlags): bool {.inline.} = proc contains*(x: VkPeerMemoryFeatureFlags; y: VkPeerMemoryFeatureFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkMemoryAllocateFlags]; args: varargs[VkMemoryAllocateFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkMemoryAllocateFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkMemoryAllocateFlagBits, args)) proc `==`*(x, y: VkMemoryAllocateFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25675,8 +25676,8 @@ proc `<=`*(x, y: VkMemoryAllocateFlags): bool {.inline.} = proc contains*(x: VkMemoryAllocateFlags; y: VkMemoryAllocateFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkDeviceGroupPresentModeFlagsKHR]; args: varargs[VkDeviceGroupPresentModeFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkDeviceGroupPresentModeFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkDeviceGroupPresentModeFlagBitsKHR, args)) proc `==`*(x, y: VkDeviceGroupPresentModeFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -25685,8 +25686,8 @@ proc `<=`*(x, y: VkDeviceGroupPresentModeFlagsKHR): bool {.inline.} = proc contains*(x: VkDeviceGroupPresentModeFlagsKHR; y: VkDeviceGroupPresentModeFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkDebugReportFlagsEXT]; args: varargs[VkDebugReportFlagBitsEXT]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkDebugReportFlagsEXT]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkDebugReportFlagBitsEXT, args)) proc `==`*(x, y: VkDebugReportFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 @@ -25695,8 +25696,8 @@ proc `<=`*(x, y: VkDebugReportFlagsEXT): bool {.inline.} = proc contains*(x: VkDebugReportFlagsEXT; y: VkDebugReportFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkExternalMemoryHandleTypeFlagsNV]; args: varargs[VkExternalMemoryHandleTypeFlagBitsNV]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkExternalMemoryHandleTypeFlagsNV]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkExternalMemoryHandleTypeFlagBitsNV, args)) proc `==`*(x, y: VkExternalMemoryHandleTypeFlagsNV): bool {.inline.} = x.uint32 == y.uint32 @@ -25705,8 +25706,8 @@ proc `<=`*(x, y: VkExternalMemoryHandleTypeFlagsNV): bool {.inline.} = proc contains*(x: VkExternalMemoryHandleTypeFlagsNV; y: VkExternalMemoryHandleTypeFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkExternalMemoryFeatureFlagsNV]; args: varargs[VkExternalMemoryFeatureFlagBitsNV]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkExternalMemoryFeatureFlagsNV]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkExternalMemoryFeatureFlagBitsNV, args)) proc `==`*(x, y: VkExternalMemoryFeatureFlagsNV): bool {.inline.} = x.uint32 == y.uint32 @@ -25715,8 +25716,8 @@ proc `<=`*(x, y: VkExternalMemoryFeatureFlagsNV): bool {.inline.} = proc contains*(x: VkExternalMemoryFeatureFlagsNV; y: VkExternalMemoryFeatureFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkExternalMemoryHandleTypeFlags]; args: varargs[VkExternalMemoryHandleTypeFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkExternalMemoryHandleTypeFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkExternalMemoryHandleTypeFlagBits, args)) proc `==`*(x, y: VkExternalMemoryHandleTypeFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25725,8 +25726,8 @@ proc `<=`*(x, y: VkExternalMemoryHandleTypeFlags): bool {.inline.} = proc contains*(x: VkExternalMemoryHandleTypeFlags; y: VkExternalMemoryHandleTypeFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkExternalMemoryFeatureFlags]; args: varargs[VkExternalMemoryFeatureFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkExternalMemoryFeatureFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkExternalMemoryFeatureFlagBits, args)) proc `==`*(x, y: VkExternalMemoryFeatureFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25735,8 +25736,8 @@ proc `<=`*(x, y: VkExternalMemoryFeatureFlags): bool {.inline.} = proc contains*(x: VkExternalMemoryFeatureFlags; y: VkExternalMemoryFeatureFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkExternalSemaphoreHandleTypeFlags]; args: varargs[VkExternalSemaphoreHandleTypeFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkExternalSemaphoreHandleTypeFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkExternalSemaphoreHandleTypeFlagBits, args)) proc `==`*(x, y: VkExternalSemaphoreHandleTypeFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25745,8 +25746,8 @@ proc `<=`*(x, y: VkExternalSemaphoreHandleTypeFlags): bool {.inline.} = proc contains*(x: VkExternalSemaphoreHandleTypeFlags; y: VkExternalSemaphoreHandleTypeFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkExternalSemaphoreFeatureFlags]; args: varargs[VkExternalSemaphoreFeatureFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkExternalSemaphoreFeatureFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkExternalSemaphoreFeatureFlagBits, args)) proc `==`*(x, y: VkExternalSemaphoreFeatureFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25755,8 +25756,8 @@ proc `<=`*(x, y: VkExternalSemaphoreFeatureFlags): bool {.inline.} = proc contains*(x: VkExternalSemaphoreFeatureFlags; y: VkExternalSemaphoreFeatureFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkSemaphoreImportFlags]; args: varargs[VkSemaphoreImportFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkSemaphoreImportFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkSemaphoreImportFlagBits, args)) proc `==`*(x, y: VkSemaphoreImportFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25765,8 +25766,8 @@ proc `<=`*(x, y: VkSemaphoreImportFlags): bool {.inline.} = proc contains*(x: VkSemaphoreImportFlags; y: VkSemaphoreImportFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkExternalFenceHandleTypeFlags]; args: varargs[VkExternalFenceHandleTypeFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkExternalFenceHandleTypeFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkExternalFenceHandleTypeFlagBits, args)) proc `==`*(x, y: VkExternalFenceHandleTypeFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25775,8 +25776,8 @@ proc `<=`*(x, y: VkExternalFenceHandleTypeFlags): bool {.inline.} = proc contains*(x: VkExternalFenceHandleTypeFlags; y: VkExternalFenceHandleTypeFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkExternalFenceFeatureFlags]; args: varargs[VkExternalFenceFeatureFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkExternalFenceFeatureFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkExternalFenceFeatureFlagBits, args)) proc `==`*(x, y: VkExternalFenceFeatureFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25785,8 +25786,8 @@ proc `<=`*(x, y: VkExternalFenceFeatureFlags): bool {.inline.} = proc contains*(x: VkExternalFenceFeatureFlags; y: VkExternalFenceFeatureFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkFenceImportFlags]; args: varargs[VkFenceImportFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkFenceImportFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkFenceImportFlagBits, args)) proc `==`*(x, y: VkFenceImportFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25795,8 +25796,8 @@ proc `<=`*(x, y: VkFenceImportFlags): bool {.inline.} = proc contains*(x: VkFenceImportFlags; y: VkFenceImportFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkSurfaceCounterFlagsEXT]; args: varargs[VkSurfaceCounterFlagBitsEXT]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkSurfaceCounterFlagsEXT]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkSurfaceCounterFlagBitsEXT, args)) proc `==`*(x, y: VkSurfaceCounterFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 @@ -25805,8 +25806,8 @@ proc `<=`*(x, y: VkSurfaceCounterFlagsEXT): bool {.inline.} = proc contains*(x: VkSurfaceCounterFlagsEXT; y: VkSurfaceCounterFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkDebugUtilsMessageSeverityFlagsEXT]; args: varargs[VkDebugUtilsMessageSeverityFlagBitsEXT]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkDebugUtilsMessageSeverityFlagsEXT]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkDebugUtilsMessageSeverityFlagBitsEXT, args)) proc `==`*(x, y: VkDebugUtilsMessageSeverityFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 @@ -25815,8 +25816,8 @@ proc `<=`*(x, y: VkDebugUtilsMessageSeverityFlagsEXT): bool {.inline.} = proc contains*(x: VkDebugUtilsMessageSeverityFlagsEXT; y: VkDebugUtilsMessageSeverityFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkDebugUtilsMessageTypeFlagsEXT]; args: varargs[VkDebugUtilsMessageTypeFlagBitsEXT]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkDebugUtilsMessageTypeFlagsEXT]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkDebugUtilsMessageTypeFlagBitsEXT, args)) proc `==`*(x, y: VkDebugUtilsMessageTypeFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 @@ -25825,8 +25826,8 @@ proc `<=`*(x, y: VkDebugUtilsMessageTypeFlagsEXT): bool {.inline.} = proc contains*(x: VkDebugUtilsMessageTypeFlagsEXT; y: VkDebugUtilsMessageTypeFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkDescriptorBindingFlags]; args: varargs[VkDescriptorBindingFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkDescriptorBindingFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkDescriptorBindingFlagBits, args)) proc `==`*(x, y: VkDescriptorBindingFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25835,8 +25836,8 @@ proc `<=`*(x, y: VkDescriptorBindingFlags): bool {.inline.} = proc contains*(x: VkDescriptorBindingFlags; y: VkDescriptorBindingFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkConditionalRenderingFlagsEXT]; args: varargs[VkConditionalRenderingFlagBitsEXT]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkConditionalRenderingFlagsEXT]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkConditionalRenderingFlagBitsEXT, args)) proc `==`*(x, y: VkConditionalRenderingFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 @@ -25845,8 +25846,8 @@ proc `<=`*(x, y: VkConditionalRenderingFlagsEXT): bool {.inline.} = proc contains*(x: VkConditionalRenderingFlagsEXT; y: VkConditionalRenderingFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkResolveModeFlags]; args: varargs[VkResolveModeFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkResolveModeFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkResolveModeFlagBits, args)) proc `==`*(x, y: VkResolveModeFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25855,8 +25856,8 @@ proc `<=`*(x, y: VkResolveModeFlags): bool {.inline.} = proc contains*(x: VkResolveModeFlags; y: VkResolveModeFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkSwapchainImageUsageFlagsANDROID]; args: varargs[VkSwapchainImageUsageFlagBitsANDROID]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkSwapchainImageUsageFlagsANDROID]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkSwapchainImageUsageFlagBitsANDROID, args)) proc `==`*(x, y: VkSwapchainImageUsageFlagsANDROID): bool {.inline.} = x.uint32 == y.uint32 @@ -25865,8 +25866,8 @@ proc `<=`*(x, y: VkSwapchainImageUsageFlagsANDROID): bool {.inline.} = proc contains*(x: VkSwapchainImageUsageFlagsANDROID; y: VkSwapchainImageUsageFlagBitsANDROID): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkToolPurposeFlags]; args: varargs[VkToolPurposeFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkToolPurposeFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkToolPurposeFlagBits, args)) proc `==`*(x, y: VkToolPurposeFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25875,8 +25876,8 @@ proc `<=`*(x, y: VkToolPurposeFlags): bool {.inline.} = proc contains*(x: VkToolPurposeFlags; y: VkToolPurposeFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkSubmitFlags]; args: varargs[VkSubmitFlagBits]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkSubmitFlags]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkSubmitFlagBits, args)) proc `==`*(x, y: VkSubmitFlags): bool {.inline.} = x.uint32 == y.uint32 @@ -25885,8 +25886,8 @@ proc `<=`*(x, y: VkSubmitFlags): bool {.inline.} = proc contains*(x: VkSubmitFlags; y: VkSubmitFlagBits): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkHostImageCopyFlagsEXT]; args: varargs[VkHostImageCopyFlagBitsEXT]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkHostImageCopyFlagsEXT]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkHostImageCopyFlagBitsEXT, args)) proc `==`*(x, y: VkHostImageCopyFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 @@ -25895,8 +25896,8 @@ proc `<=`*(x, y: VkHostImageCopyFlagsEXT): bool {.inline.} = proc contains*(x: VkHostImageCopyFlagsEXT; y: VkHostImageCopyFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkImageConstraintsInfoFlagsFUCHSIA]; args: varargs[VkImageConstraintsInfoFlagBitsFUCHSIA]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkImageConstraintsInfoFlagsFUCHSIA]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkImageConstraintsInfoFlagBitsFUCHSIA, args)) proc `==`*(x, y: VkImageConstraintsInfoFlagsFUCHSIA): bool {.inline.} = x.uint32 == y.uint32 @@ -25905,8 +25906,8 @@ proc `<=`*(x, y: VkImageConstraintsInfoFlagsFUCHSIA): bool {.inline.} = proc contains*(x: VkImageConstraintsInfoFlagsFUCHSIA; y: VkImageConstraintsInfoFlagBitsFUCHSIA): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkGraphicsPipelineLibraryFlagsEXT]; args: varargs[VkGraphicsPipelineLibraryFlagBitsEXT]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkGraphicsPipelineLibraryFlagsEXT]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkGraphicsPipelineLibraryFlagBitsEXT, args)) proc `==`*(x, y: VkGraphicsPipelineLibraryFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 @@ -25915,8 +25916,8 @@ proc `<=`*(x, y: VkGraphicsPipelineLibraryFlagsEXT): bool {.inline.} = proc contains*(x: VkGraphicsPipelineLibraryFlagsEXT; y: VkGraphicsPipelineLibraryFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkImageCompressionFlagsEXT]; args: varargs[VkImageCompressionFlagBitsEXT]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkImageCompressionFlagsEXT]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkImageCompressionFlagBitsEXT, args)) proc `==`*(x, y: VkImageCompressionFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 @@ -25925,8 +25926,8 @@ proc `<=`*(x, y: VkImageCompressionFlagsEXT): bool {.inline.} = proc contains*(x: VkImageCompressionFlagsEXT; y: VkImageCompressionFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkImageCompressionFixedRateFlagsEXT]; args: varargs[VkImageCompressionFixedRateFlagBitsEXT]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkImageCompressionFixedRateFlagsEXT]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkImageCompressionFixedRateFlagBitsEXT, args)) proc `==`*(x, y: VkImageCompressionFixedRateFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 @@ -25935,8 +25936,8 @@ proc `<=`*(x, y: VkImageCompressionFixedRateFlagsEXT): bool {.inline.} = proc contains*(x: VkImageCompressionFixedRateFlagsEXT; y: VkImageCompressionFixedRateFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkExportMetalObjectTypeFlagsEXT]; args: varargs[VkExportMetalObjectTypeFlagBitsEXT]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkExportMetalObjectTypeFlagsEXT]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkExportMetalObjectTypeFlagBitsEXT, args)) proc `==`*(x, y: VkExportMetalObjectTypeFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 @@ -25945,8 +25946,8 @@ proc `<=`*(x, y: VkExportMetalObjectTypeFlagsEXT): bool {.inline.} = proc contains*(x: VkExportMetalObjectTypeFlagsEXT; y: VkExportMetalObjectTypeFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkDeviceAddressBindingFlagsEXT]; args: varargs[VkDeviceAddressBindingFlagBitsEXT]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkDeviceAddressBindingFlagsEXT]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkDeviceAddressBindingFlagBitsEXT, args)) proc `==`*(x, y: VkDeviceAddressBindingFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 @@ -25955,8 +25956,8 @@ proc `<=`*(x, y: VkDeviceAddressBindingFlagsEXT): bool {.inline.} = proc contains*(x: VkDeviceAddressBindingFlagsEXT; y: VkDeviceAddressBindingFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkOpticalFlowGridSizeFlagsNV]; args: varargs[VkOpticalFlowGridSizeFlagBitsNV]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkOpticalFlowGridSizeFlagsNV]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkOpticalFlowGridSizeFlagBitsNV, args)) proc `==`*(x, y: VkOpticalFlowGridSizeFlagsNV): bool {.inline.} = x.uint32 == y.uint32 @@ -25965,8 +25966,8 @@ proc `<=`*(x, y: VkOpticalFlowGridSizeFlagsNV): bool {.inline.} = proc contains*(x: VkOpticalFlowGridSizeFlagsNV; y: VkOpticalFlowGridSizeFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkOpticalFlowUsageFlagsNV]; args: varargs[VkOpticalFlowUsageFlagBitsNV]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkOpticalFlowUsageFlagsNV]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkOpticalFlowUsageFlagBitsNV, args)) proc `==`*(x, y: VkOpticalFlowUsageFlagsNV): bool {.inline.} = x.uint32 == y.uint32 @@ -25975,8 +25976,8 @@ proc `<=`*(x, y: VkOpticalFlowUsageFlagsNV): bool {.inline.} = proc contains*(x: VkOpticalFlowUsageFlagsNV; y: VkOpticalFlowUsageFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkOpticalFlowSessionCreateFlagsNV]; args: varargs[VkOpticalFlowSessionCreateFlagBitsNV]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkOpticalFlowSessionCreateFlagsNV]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkOpticalFlowSessionCreateFlagBitsNV, args)) proc `==`*(x, y: VkOpticalFlowSessionCreateFlagsNV): bool {.inline.} = x.uint32 == y.uint32 @@ -25985,8 +25986,8 @@ proc `<=`*(x, y: VkOpticalFlowSessionCreateFlagsNV): bool {.inline.} = proc contains*(x: VkOpticalFlowSessionCreateFlagsNV; y: VkOpticalFlowSessionCreateFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkOpticalFlowExecuteFlagsNV]; args: varargs[VkOpticalFlowExecuteFlagBitsNV]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkOpticalFlowExecuteFlagsNV]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkOpticalFlowExecuteFlagBitsNV, args)) proc `==`*(x, y: VkOpticalFlowExecuteFlagsNV): bool {.inline.} = x.uint32 == y.uint32 @@ -25995,8 +25996,8 @@ proc `<=`*(x, y: VkOpticalFlowExecuteFlagsNV): bool {.inline.} = proc contains*(x: VkOpticalFlowExecuteFlagsNV; y: VkOpticalFlowExecuteFlagBitsNV): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkFrameBoundaryFlagsEXT]; args: varargs[VkFrameBoundaryFlagBitsEXT]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkFrameBoundaryFlagsEXT]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkFrameBoundaryFlagBitsEXT, args)) proc `==`*(x, y: VkFrameBoundaryFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 @@ -26005,8 +26006,8 @@ proc `<=`*(x, y: VkFrameBoundaryFlagsEXT): bool {.inline.} = proc contains*(x: VkFrameBoundaryFlagsEXT; y: VkFrameBoundaryFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkPresentScalingFlagsEXT]; args: varargs[VkPresentScalingFlagBitsEXT]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPresentScalingFlagsEXT]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkPresentScalingFlagBitsEXT, args)) proc `==`*(x, y: VkPresentScalingFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 @@ -26015,8 +26016,8 @@ proc `<=`*(x, y: VkPresentScalingFlagsEXT): bool {.inline.} = proc contains*(x: VkPresentScalingFlagsEXT; y: VkPresentScalingFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkPresentGravityFlagsEXT]; args: varargs[VkPresentGravityFlagBitsEXT]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPresentGravityFlagsEXT]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkPresentGravityFlagBitsEXT, args)) proc `==`*(x, y: VkPresentGravityFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 @@ -26025,8 +26026,8 @@ proc `<=`*(x, y: VkPresentGravityFlagsEXT): bool {.inline.} = proc contains*(x: VkPresentGravityFlagsEXT; y: VkPresentGravityFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkShaderCreateFlagsEXT]; args: varargs[VkShaderCreateFlagBitsEXT]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkShaderCreateFlagsEXT]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkShaderCreateFlagBitsEXT, args)) proc `==`*(x, y: VkShaderCreateFlagsEXT): bool {.inline.} = x.uint32 == y.uint32 @@ -26035,8 +26036,8 @@ proc `<=`*(x, y: VkShaderCreateFlagsEXT): bool {.inline.} = proc contains*(x: VkShaderCreateFlagsEXT; y: VkShaderCreateFlagBitsEXT): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkPhysicalDeviceSchedulingControlsFlagsARM]; args: varargs[VkPhysicalDeviceSchedulingControlsFlagBitsARM]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkPhysicalDeviceSchedulingControlsFlagsARM]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkPhysicalDeviceSchedulingControlsFlagBitsARM, args)) proc `==`*(x, y: VkPhysicalDeviceSchedulingControlsFlagsARM): bool {.inline.} = x.uint32 == y.uint32 @@ -26045,8 +26046,8 @@ proc `<=`*(x, y: VkPhysicalDeviceSchedulingControlsFlagsARM): bool {.inline.} = proc contains*(x: VkPhysicalDeviceSchedulingControlsFlagsARM; y: VkPhysicalDeviceSchedulingControlsFlagBitsARM): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkVideoCodecOperationFlagsKHR]; args: varargs[VkVideoCodecOperationFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoCodecOperationFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkVideoCodecOperationFlagBitsKHR, args)) proc `==`*(x, y: VkVideoCodecOperationFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -26055,8 +26056,8 @@ proc `<=`*(x, y: VkVideoCodecOperationFlagsKHR): bool {.inline.} = proc contains*(x: VkVideoCodecOperationFlagsKHR; y: VkVideoCodecOperationFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkVideoCapabilityFlagsKHR]; args: varargs[VkVideoCapabilityFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoCapabilityFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkVideoCapabilityFlagBitsKHR, args)) proc `==`*(x, y: VkVideoCapabilityFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -26065,8 +26066,8 @@ proc `<=`*(x, y: VkVideoCapabilityFlagsKHR): bool {.inline.} = proc contains*(x: VkVideoCapabilityFlagsKHR; y: VkVideoCapabilityFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkVideoSessionCreateFlagsKHR]; args: varargs[VkVideoSessionCreateFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoSessionCreateFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkVideoSessionCreateFlagBitsKHR, args)) proc `==`*(x, y: VkVideoSessionCreateFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -26075,8 +26076,8 @@ proc `<=`*(x, y: VkVideoSessionCreateFlagsKHR): bool {.inline.} = proc contains*(x: VkVideoSessionCreateFlagsKHR; y: VkVideoSessionCreateFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkVideoCodingControlFlagsKHR]; args: varargs[VkVideoCodingControlFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoCodingControlFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkVideoCodingControlFlagBitsKHR, args)) proc `==`*(x, y: VkVideoCodingControlFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -26085,8 +26086,8 @@ proc `<=`*(x, y: VkVideoCodingControlFlagsKHR): bool {.inline.} = proc contains*(x: VkVideoCodingControlFlagsKHR; y: VkVideoCodingControlFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkVideoDecodeUsageFlagsKHR]; args: varargs[VkVideoDecodeUsageFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoDecodeUsageFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkVideoDecodeUsageFlagBitsKHR, args)) proc `==`*(x, y: VkVideoDecodeUsageFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -26095,8 +26096,8 @@ proc `<=`*(x, y: VkVideoDecodeUsageFlagsKHR): bool {.inline.} = proc contains*(x: VkVideoDecodeUsageFlagsKHR; y: VkVideoDecodeUsageFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkVideoDecodeCapabilityFlagsKHR]; args: varargs[VkVideoDecodeCapabilityFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoDecodeCapabilityFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkVideoDecodeCapabilityFlagBitsKHR, args)) proc `==`*(x, y: VkVideoDecodeCapabilityFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -26105,8 +26106,8 @@ proc `<=`*(x, y: VkVideoDecodeCapabilityFlagsKHR): bool {.inline.} = proc contains*(x: VkVideoDecodeCapabilityFlagsKHR; y: VkVideoDecodeCapabilityFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkVideoDecodeH264PictureLayoutFlagsKHR]; args: varargs[VkVideoDecodeH264PictureLayoutFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoDecodeH264PictureLayoutFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkVideoDecodeH264PictureLayoutFlagBitsKHR, args)) proc `==`*(x, y: VkVideoDecodeH264PictureLayoutFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -26115,8 +26116,8 @@ proc `<=`*(x, y: VkVideoDecodeH264PictureLayoutFlagsKHR): bool {.inline.} = proc contains*(x: VkVideoDecodeH264PictureLayoutFlagsKHR; y: VkVideoDecodeH264PictureLayoutFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkVideoEncodeUsageFlagsKHR]; args: varargs[VkVideoEncodeUsageFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoEncodeUsageFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkVideoEncodeUsageFlagBitsKHR, args)) proc `==`*(x, y: VkVideoEncodeUsageFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -26125,8 +26126,8 @@ proc `<=`*(x, y: VkVideoEncodeUsageFlagsKHR): bool {.inline.} = proc contains*(x: VkVideoEncodeUsageFlagsKHR; y: VkVideoEncodeUsageFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkVideoEncodeContentFlagsKHR]; args: varargs[VkVideoEncodeContentFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoEncodeContentFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkVideoEncodeContentFlagBitsKHR, args)) proc `==`*(x, y: VkVideoEncodeContentFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -26135,8 +26136,8 @@ proc `<=`*(x, y: VkVideoEncodeContentFlagsKHR): bool {.inline.} = proc contains*(x: VkVideoEncodeContentFlagsKHR; y: VkVideoEncodeContentFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkVideoEncodeCapabilityFlagsKHR]; args: varargs[VkVideoEncodeCapabilityFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoEncodeCapabilityFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkVideoEncodeCapabilityFlagBitsKHR, args)) proc `==`*(x, y: VkVideoEncodeCapabilityFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -26145,8 +26146,8 @@ proc `<=`*(x, y: VkVideoEncodeCapabilityFlagsKHR): bool {.inline.} = proc contains*(x: VkVideoEncodeCapabilityFlagsKHR; y: VkVideoEncodeCapabilityFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkVideoEncodeFeedbackFlagsKHR]; args: varargs[VkVideoEncodeFeedbackFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoEncodeFeedbackFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkVideoEncodeFeedbackFlagBitsKHR, args)) proc `==`*(x, y: VkVideoEncodeFeedbackFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -26155,8 +26156,8 @@ proc `<=`*(x, y: VkVideoEncodeFeedbackFlagsKHR): bool {.inline.} = proc contains*(x: VkVideoEncodeFeedbackFlagsKHR; y: VkVideoEncodeFeedbackFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkVideoEncodeRateControlModeFlagsKHR]; args: varargs[VkVideoEncodeRateControlModeFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoEncodeRateControlModeFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkVideoEncodeRateControlModeFlagBitsKHR, args)) proc `==`*(x, y: VkVideoEncodeRateControlModeFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -26165,8 +26166,8 @@ proc `<=`*(x, y: VkVideoEncodeRateControlModeFlagsKHR): bool {.inline.} = proc contains*(x: VkVideoEncodeRateControlModeFlagsKHR; y: VkVideoEncodeRateControlModeFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkVideoChromaSubsamplingFlagsKHR]; args: varargs[VkVideoChromaSubsamplingFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoChromaSubsamplingFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkVideoChromaSubsamplingFlagBitsKHR, args)) proc `==`*(x, y: VkVideoChromaSubsamplingFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -26175,8 +26176,8 @@ proc `<=`*(x, y: VkVideoChromaSubsamplingFlagsKHR): bool {.inline.} = proc contains*(x: VkVideoChromaSubsamplingFlagsKHR; y: VkVideoChromaSubsamplingFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkVideoComponentBitDepthFlagsKHR]; args: varargs[VkVideoComponentBitDepthFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoComponentBitDepthFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkVideoComponentBitDepthFlagBitsKHR, args)) proc `==`*(x, y: VkVideoComponentBitDepthFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -26185,8 +26186,8 @@ proc `<=`*(x, y: VkVideoComponentBitDepthFlagsKHR): bool {.inline.} = proc contains*(x: VkVideoComponentBitDepthFlagsKHR; y: VkVideoComponentBitDepthFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkVideoEncodeH264CapabilityFlagsKHR]; args: varargs[VkVideoEncodeH264CapabilityFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoEncodeH264CapabilityFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkVideoEncodeH264CapabilityFlagBitsKHR, args)) proc `==`*(x, y: VkVideoEncodeH264CapabilityFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -26195,8 +26196,8 @@ proc `<=`*(x, y: VkVideoEncodeH264CapabilityFlagsKHR): bool {.inline.} = proc contains*(x: VkVideoEncodeH264CapabilityFlagsKHR; y: VkVideoEncodeH264CapabilityFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkVideoEncodeH264StdFlagsKHR]; args: varargs[VkVideoEncodeH264StdFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoEncodeH264StdFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkVideoEncodeH264StdFlagBitsKHR, args)) proc `==`*(x, y: VkVideoEncodeH264StdFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -26205,8 +26206,8 @@ proc `<=`*(x, y: VkVideoEncodeH264StdFlagsKHR): bool {.inline.} = proc contains*(x: VkVideoEncodeH264StdFlagsKHR; y: VkVideoEncodeH264StdFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkVideoEncodeH264RateControlFlagsKHR]; args: varargs[VkVideoEncodeH264RateControlFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoEncodeH264RateControlFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkVideoEncodeH264RateControlFlagBitsKHR, args)) proc `==`*(x, y: VkVideoEncodeH264RateControlFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -26215,8 +26216,8 @@ proc `<=`*(x, y: VkVideoEncodeH264RateControlFlagsKHR): bool {.inline.} = proc contains*(x: VkVideoEncodeH264RateControlFlagsKHR; y: VkVideoEncodeH264RateControlFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkVideoEncodeH265CapabilityFlagsKHR]; args: varargs[VkVideoEncodeH265CapabilityFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoEncodeH265CapabilityFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkVideoEncodeH265CapabilityFlagBitsKHR, args)) proc `==`*(x, y: VkVideoEncodeH265CapabilityFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -26225,8 +26226,8 @@ proc `<=`*(x, y: VkVideoEncodeH265CapabilityFlagsKHR): bool {.inline.} = proc contains*(x: VkVideoEncodeH265CapabilityFlagsKHR; y: VkVideoEncodeH265CapabilityFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkVideoEncodeH265StdFlagsKHR]; args: varargs[VkVideoEncodeH265StdFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoEncodeH265StdFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkVideoEncodeH265StdFlagBitsKHR, args)) proc `==`*(x, y: VkVideoEncodeH265StdFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -26235,8 +26236,8 @@ proc `<=`*(x, y: VkVideoEncodeH265StdFlagsKHR): bool {.inline.} = proc contains*(x: VkVideoEncodeH265StdFlagsKHR; y: VkVideoEncodeH265StdFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkVideoEncodeH265RateControlFlagsKHR]; args: varargs[VkVideoEncodeH265RateControlFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoEncodeH265RateControlFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkVideoEncodeH265RateControlFlagBitsKHR, args)) proc `==`*(x, y: VkVideoEncodeH265RateControlFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -26245,8 +26246,8 @@ proc `<=`*(x, y: VkVideoEncodeH265RateControlFlagsKHR): bool {.inline.} = proc contains*(x: VkVideoEncodeH265RateControlFlagsKHR; y: VkVideoEncodeH265RateControlFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkVideoEncodeH265CtbSizeFlagsKHR]; args: varargs[VkVideoEncodeH265CtbSizeFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoEncodeH265CtbSizeFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkVideoEncodeH265CtbSizeFlagBitsKHR, args)) proc `==`*(x, y: VkVideoEncodeH265CtbSizeFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 @@ -26255,8 +26256,8 @@ proc `<=`*(x, y: VkVideoEncodeH265CtbSizeFlagsKHR): bool {.inline.} = proc contains*(x: VkVideoEncodeH265CtbSizeFlagsKHR; y: VkVideoEncodeH265CtbSizeFlagBitsKHR): bool {.inline.} = (x.uint32 and y.uint32) != 0 -template `{}`*(t: typedesc[VkVideoEncodeH265TransformBlockSizeFlagsKHR]; args: varargs[VkVideoEncodeH265TransformBlockSizeFlagBitsKHR]): untyped = - t(flagsImpl(uint32, args)) +template `{}`*(t: typedesc[VkVideoEncodeH265TransformBlockSizeFlagsKHR]; args: varargs[untyped]): untyped = + t(flagsImpl(uint32, VkVideoEncodeH265TransformBlockSizeFlagBitsKHR, args)) proc `==`*(x, y: VkVideoEncodeH265TransformBlockSizeFlagsKHR): bool {.inline.} = x.uint32 == y.uint32 diff --git a/tools/generator.nim b/tools/generator.nim index f3be2ba..c0a4398 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -472,8 +472,8 @@ proc `*`*(x, y: VkDeviceSize): VkDeviceSize {.borrow.} proc `not`*(x: VkDeviceSize): VkDeviceSize {.borrow.} proc `div`*(x, y: VkDeviceSize): VkDeviceSize {.borrow.} proc `and`*(x, y: VkDeviceSize): VkDeviceSize {.borrow.} -#proc `shl`*(x: VkDeviceSize; y: SomeInteger): VkDeviceSize {.borrow.} -#proc `shr`*(x: VkDeviceSize; y: SomeInteger): VkDeviceSize {.borrow.} +proc `shl`*(x: VkDeviceSize; y: uint64): VkDeviceSize {.borrow.} +proc `shr`*(x: VkDeviceSize; y: uint64): VkDeviceSize {.borrow.} """) echo "Generating Handle helpers..." @@ -487,17 +487,17 @@ proc `==`*(x, y: {handle.name}): bool {{.borrow.}} output.add(""" import std/macros -macro flagsImpl(base: typed, args: varargs[untyped]): untyped = +macro flagsImpl(base, bits: typed, args: varargs[untyped]): untyped = let arr = newNimNode(nnkBracketExpr) - for n in args: arr.add newCall(base, n) + for n in args: arr.add newCall(base, newDotExpr(bits, n)) result = nestList(bindSym"or", arr) """) for flags in vkFlagsTypes.items: if not vkFlagBitsTypes.anyIt(it == flags.flagbits): continue output.add(&""" -template `{{}}`*(t: typedesc[{flags.name}]; args: varargs[{flags.flagbits}]): untyped = - t(flagsImpl({flags.bType}, args)) +template `{{}}`*(t: typedesc[{flags.name}]; args: varargs[untyped]): untyped = + t(flagsImpl({flags.bType}, {flags.flagbits}, args)) proc `==`*(x, y: {flags.name}): bool {{.inline.}} = x.{flags.bType} == y.{flags.bType} From 0814b2d87574720b0397e7b8340a419575b0d4ab Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Mon, 8 Jul 2024 17:59:02 +0300 Subject: [PATCH 50/57] {} macro improvement --- src/vulkan.nim | 2 +- tools/generator.nim | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index fe6902d..a7f214c 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -24953,7 +24953,7 @@ import std/macros macro flagsImpl(base, bits: typed, args: varargs[untyped]): untyped = let arr = newNimNode(nnkBracketExpr) - for n in args: arr.add newCall(base, newDotExpr(bits, n)) + for n in args: arr.add newCall(base, if n.kind == nnkDotExpr: n else: newDotExpr(bits, n)) result = nestList(bindSym"or", arr) template `{}`*(t: typedesc[VkFramebufferCreateFlags]; args: varargs[untyped]): untyped = diff --git a/tools/generator.nim b/tools/generator.nim index c0a4398..4425f68 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -489,7 +489,7 @@ import std/macros macro flagsImpl(base, bits: typed, args: varargs[untyped]): untyped = let arr = newNimNode(nnkBracketExpr) - for n in args: arr.add newCall(base, newDotExpr(bits, n)) + for n in args: arr.add newCall(base, if n.kind == nnkDotExpr: n else: newDotExpr(bits, n)) result = nestList(bindSym"or", arr) """) From 06ff7bc34687c05b30a614db50aec0e1cdbf9b80 Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Tue, 3 Dec 2024 14:27:00 +0200 Subject: [PATCH 51/57] update to vulkan 1.3.295 --- src/vulkan.nim | 2148 ++++++++++++++++++++++++++----------------- tools/generator.nim | 11 +- 2 files changed, 1311 insertions(+), 848 deletions(-) diff --git a/src/vulkan.nim b/src/vulkan.nim index a7f214c..5fd974c 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -47,1165 +47,1196 @@ type # Enums const - VK_MAX_PHYSICAL_DEVICE_NAME_SIZE* = 256 - VK_UUID_SIZE* = 16 - VK_LUID_SIZE* = 8 - VK_LUID_SIZE_KHR* = VK_LUID_SIZE - VK_MAX_EXTENSION_NAME_SIZE* = 256 - VK_MAX_DESCRIPTION_SIZE* = 256 - VK_MAX_MEMORY_TYPES* = 32 - VK_MAX_MEMORY_HEAPS* = 16 - VK_LOD_CLAMP_NONE* = 1000.0F - VK_REMAINING_MIP_LEVELS* = (not 0'u32) - VK_REMAINING_ARRAY_LAYERS* = (not 0'u32) - VK_REMAINING_3D_SLICES_EXT* = (not 0'u32) - VK_WHOLE_SIZE* = (not 0'u64) - VK_ATTACHMENT_UNUSED* = (not 0'u32) - VK_TRUE* = 1 - VK_FALSE* = 0 - VK_QUEUE_FAMILY_IGNORED* = (not 0'u32) - VK_QUEUE_FAMILY_EXTERNAL* = (not 1'u32) - VK_QUEUE_FAMILY_EXTERNAL_KHR* = VK_QUEUE_FAMILY_EXTERNAL - VK_QUEUE_FAMILY_FOREIGN_EXT* = (not 2'u32) - VK_SUBPASS_EXTERNAL* = (not 0'u32) - VK_MAX_DEVICE_GROUP_SIZE* = 32 - VK_MAX_DEVICE_GROUP_SIZE_KHR* = VK_MAX_DEVICE_GROUP_SIZE - VK_MAX_DRIVER_NAME_SIZE* = 256 - VK_MAX_DRIVER_NAME_SIZE_KHR* = VK_MAX_DRIVER_NAME_SIZE - VK_MAX_DRIVER_INFO_SIZE* = 256 - VK_MAX_DRIVER_INFO_SIZE_KHR* = VK_MAX_DRIVER_INFO_SIZE - VK_SHADER_UNUSED_KHR* = (not 0'u32) - VK_SHADER_UNUSED_NV* = VK_SHADER_UNUSED_KHR - VK_MAX_GLOBAL_PRIORITY_SIZE_KHR* = 16 - VK_MAX_GLOBAL_PRIORITY_SIZE_EXT* = VK_MAX_GLOBAL_PRIORITY_SIZE_KHR - VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT* = 32 - VK_MAX_VIDEO_AV1_REFERENCES_PER_FRAME_KHR* = 7 - VK_SHADER_INDEX_UNUSED_AMDX* = (not 0'u32) + VkMaxPhysicalDeviceNameSize* = 256 + VkUuidSize* = 16 + VkLuidSize* = 8 + VkLuidSizeKhr* = VkLuidSize + VkMaxExtensionNameSize* = 256 + VkMaxDescriptionSize* = 256 + VkMaxMemoryTypes* = 32 + VkMaxMemoryHeaps* = 16 + VkLodClampNone* = 1000.0f + VkRemainingMipLevels* = (not 0'u32) + VkRemainingArrayLayers* = (not 0'u32) + VkRemaining3dSlicesExt* = (not 0'u32) + VkWholeSize* = (not 0'u64) + VkAttachmentUnused* = (not 0'u32) + VkTrue* = 1 + VkFalse* = 0 + VkQueueFamilyIgnored* = (not 0'u32) + VkQueueFamilyExternal* = (not 1'u32) + VkQueueFamilyExternalKhr* = VkQueueFamilyExternal + VkQueueFamilyForeignExt* = (not 2'u32) + VkSubpassExternal* = (not 0'u32) + VkMaxDeviceGroupSize* = 32 + VkMaxDeviceGroupSizeKhr* = VkMaxDeviceGroupSize + VkMaxDriverNameSize* = 256 + VkMaxDriverNameSizeKhr* = VkMaxDriverNameSize + VkMaxDriverInfoSize* = 256 + VkMaxDriverInfoSizeKhr* = VkMaxDriverInfoSize + VkShaderUnusedKhr* = (not 0'u32) + VkShaderUnusedNv* = VkShaderUnusedKhr + VkMaxGlobalPrioritySizeKhr* = 16 + VkMaxGlobalPrioritySizeExt* = VkMaxGlobalPrioritySizeKhr + VkMaxShaderModuleIdentifierSizeExt* = 32 + VkMaxPipelineBinaryKeySizeKhr* = 32 + VkMaxVideoAv1ReferencesPerFrameKhr* = 7 + VkShaderIndexUnusedAmdx* = (not 0'u32) # Extension: VK_KHR_surface - VK_KHR_SURFACE_SPEC_VERSION* = 25 - VK_KHR_SURFACE_EXTENSION_NAME* = "VK_KHR_surface" + VkKhrSurfaceSpecVersion* = 25 + VkKhrSurfaceExtensionName* = "VK_KHR_surface" # Extension: VK_KHR_swapchain - VK_KHR_SWAPCHAIN_SPEC_VERSION* = 70 - VK_KHR_SWAPCHAIN_EXTENSION_NAME* = "VK_KHR_swapchain" + VkKhrSwapchainSpecVersion* = 70 + VkKhrSwapchainExtensionName* = "VK_KHR_swapchain" # Extension: VK_KHR_display - VK_KHR_DISPLAY_SPEC_VERSION* = 23 - VK_KHR_DISPLAY_EXTENSION_NAME* = "VK_KHR_display" + VkKhrDisplaySpecVersion* = 23 + VkKhrDisplayExtensionName* = "VK_KHR_display" # Extension: VK_KHR_display_swapchain - VK_KHR_DISPLAY_SWAPCHAIN_SPEC_VERSION* = 10 - VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME* = "VK_KHR_display_swapchain" + VkKhrDisplaySwapchainSpecVersion* = 10 + VkKhrDisplaySwapchainExtensionName* = "VK_KHR_display_swapchain" # Extension: VK_KHR_xlib_surface - VK_KHR_XLIB_SURFACE_SPEC_VERSION* = 6 - VK_KHR_XLIB_SURFACE_EXTENSION_NAME* = "VK_KHR_xlib_surface" + VkKhrXlibSurfaceSpecVersion* = 6 + VkKhrXlibSurfaceExtensionName* = "VK_KHR_xlib_surface" # Extension: VK_KHR_xcb_surface - VK_KHR_XCB_SURFACE_SPEC_VERSION* = 6 - VK_KHR_XCB_SURFACE_EXTENSION_NAME* = "VK_KHR_xcb_surface" + VkKhrXcbSurfaceSpecVersion* = 6 + VkKhrXcbSurfaceExtensionName* = "VK_KHR_xcb_surface" # Extension: VK_KHR_wayland_surface - VK_KHR_WAYLAND_SURFACE_SPEC_VERSION* = 6 - VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME* = "VK_KHR_wayland_surface" + VkKhrWaylandSurfaceSpecVersion* = 6 + VkKhrWaylandSurfaceExtensionName* = "VK_KHR_wayland_surface" # Extension: VK_KHR_android_surface - VK_KHR_ANDROID_SURFACE_SPEC_VERSION* = 6 - VK_KHR_ANDROID_SURFACE_EXTENSION_NAME* = "VK_KHR_android_surface" + VkKhrAndroidSurfaceSpecVersion* = 6 + VkKhrAndroidSurfaceExtensionName* = "VK_KHR_android_surface" # Extension: VK_KHR_win32_surface - VK_KHR_WIN32_SURFACE_SPEC_VERSION* = 6 - VK_KHR_WIN32_SURFACE_EXTENSION_NAME* = "VK_KHR_win32_surface" + VkKhrWin32SurfaceSpecVersion* = 6 + VkKhrWin32SurfaceExtensionName* = "VK_KHR_win32_surface" # Extension: VK_EXT_debug_report - VK_EXT_DEBUG_REPORT_SPEC_VERSION* = 10 - VK_EXT_DEBUG_REPORT_EXTENSION_NAME* = "VK_EXT_debug_report" + VkExtDebugReportSpecVersion* = 10 + VkExtDebugReportExtensionName* = "VK_EXT_debug_report" # Extension: VK_NV_glsl_shader - VK_NV_GLSL_SHADER_SPEC_VERSION* = 1 - VK_NV_GLSL_SHADER_EXTENSION_NAME* = "VK_NV_glsl_shader" + VkNvGlslShaderSpecVersion* = 1 + VkNvGlslShaderExtensionName* = "VK_NV_glsl_shader" # Extension: VK_EXT_depth_range_unrestricted - VK_EXT_DEPTH_RANGE_UNRESTRICTED_SPEC_VERSION* = 1 - VK_EXT_DEPTH_RANGE_UNRESTRICTED_EXTENSION_NAME* = "VK_EXT_depth_range_unrestricted" + VkExtDepthRangeUnrestrictedSpecVersion* = 1 + VkExtDepthRangeUnrestrictedExtensionName* = "VK_EXT_depth_range_unrestricted" # Extension: VK_KHR_sampler_mirror_clamp_to_edge - VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_SPEC_VERSION* = 3 - VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_EXTENSION_NAME* = "VK_KHR_sampler_mirror_clamp_to_edge" + VkKhrSamplerMirrorClampToEdgeSpecVersion* = 3 + VkKhrSamplerMirrorClampToEdgeExtensionName* = "VK_KHR_sampler_mirror_clamp_to_edge" # Extension: VK_IMG_filter_cubic - VK_IMG_FILTER_CUBIC_SPEC_VERSION* = 1 - VK_IMG_FILTER_CUBIC_EXTENSION_NAME* = "VK_IMG_filter_cubic" + VkImgFilterCubicSpecVersion* = 1 + VkImgFilterCubicExtensionName* = "VK_IMG_filter_cubic" # Extension: VK_AMD_rasterization_order - VK_AMD_RASTERIZATION_ORDER_SPEC_VERSION* = 1 - VK_AMD_RASTERIZATION_ORDER_EXTENSION_NAME* = "VK_AMD_rasterization_order" + VkAmdRasterizationOrderSpecVersion* = 1 + VkAmdRasterizationOrderExtensionName* = "VK_AMD_rasterization_order" # Extension: VK_AMD_shader_trinary_minmax - VK_AMD_SHADER_TRINARY_MINMAX_SPEC_VERSION* = 1 - VK_AMD_SHADER_TRINARY_MINMAX_EXTENSION_NAME* = "VK_AMD_shader_trinary_minmax" + VkAmdShaderTrinaryMinmaxSpecVersion* = 1 + VkAmdShaderTrinaryMinmaxExtensionName* = "VK_AMD_shader_trinary_minmax" # Extension: VK_AMD_shader_explicit_vertex_parameter - VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_SPEC_VERSION* = 1 - VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_EXTENSION_NAME* = "VK_AMD_shader_explicit_vertex_parameter" + VkAmdShaderExplicitVertexParameterSpecVersion* = 1 + VkAmdShaderExplicitVertexParameterExtensionName* = "VK_AMD_shader_explicit_vertex_parameter" # Extension: VK_EXT_debug_marker - VK_EXT_DEBUG_MARKER_SPEC_VERSION* = 4 - VK_EXT_DEBUG_MARKER_EXTENSION_NAME* = "VK_EXT_debug_marker" + VkExtDebugMarkerSpecVersion* = 4 + VkExtDebugMarkerExtensionName* = "VK_EXT_debug_marker" # Extension: VK_KHR_video_queue - VK_KHR_VIDEO_QUEUE_SPEC_VERSION* = 8 - VK_KHR_VIDEO_QUEUE_EXTENSION_NAME* = "VK_KHR_video_queue" + VkKhrVideoQueueSpecVersion* = 8 + VkKhrVideoQueueExtensionName* = "VK_KHR_video_queue" # Extension: VK_KHR_video_decode_queue - VK_KHR_VIDEO_DECODE_QUEUE_SPEC_VERSION* = 8 - VK_KHR_VIDEO_DECODE_QUEUE_EXTENSION_NAME* = "VK_KHR_video_decode_queue" + VkKhrVideoDecodeQueueSpecVersion* = 8 + VkKhrVideoDecodeQueueExtensionName* = "VK_KHR_video_decode_queue" # Extension: VK_AMD_gcn_shader - VK_AMD_GCN_SHADER_SPEC_VERSION* = 1 - VK_AMD_GCN_SHADER_EXTENSION_NAME* = "VK_AMD_gcn_shader" + VkAmdGcnShaderSpecVersion* = 1 + VkAmdGcnShaderExtensionName* = "VK_AMD_gcn_shader" # Extension: VK_NV_dedicated_allocation - VK_NV_DEDICATED_ALLOCATION_SPEC_VERSION* = 1 - VK_NV_DEDICATED_ALLOCATION_EXTENSION_NAME* = "VK_NV_dedicated_allocation" + VkNvDedicatedAllocationSpecVersion* = 1 + VkNvDedicatedAllocationExtensionName* = "VK_NV_dedicated_allocation" # Extension: VK_EXT_transform_feedback - VK_EXT_TRANSFORM_FEEDBACK_SPEC_VERSION* = 1 - VK_EXT_TRANSFORM_FEEDBACK_EXTENSION_NAME* = "VK_EXT_transform_feedback" + VkExtTransformFeedbackSpecVersion* = 1 + VkExtTransformFeedbackExtensionName* = "VK_EXT_transform_feedback" # Extension: VK_NVX_binary_import - VK_NVX_BINARY_IMPORT_SPEC_VERSION* = 1 - VK_NVX_BINARY_IMPORT_EXTENSION_NAME* = "VK_NVX_binary_import" + VkNvxBinaryImportSpecVersion* = 1 + VkNvxBinaryImportExtensionName* = "VK_NVX_binary_import" # Extension: VK_NVX_image_view_handle - VK_NVX_IMAGE_VIEW_HANDLE_SPEC_VERSION* = 2 - VK_NVX_IMAGE_VIEW_HANDLE_EXTENSION_NAME* = "VK_NVX_image_view_handle" + VkNvxImageViewHandleSpecVersion* = 2 + VkNvxImageViewHandleExtensionName* = "VK_NVX_image_view_handle" # Extension: VK_AMD_draw_indirect_count - VK_AMD_DRAW_INDIRECT_COUNT_SPEC_VERSION* = 2 - VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME* = "VK_AMD_draw_indirect_count" + VkAmdDrawIndirectCountSpecVersion* = 2 + VkAmdDrawIndirectCountExtensionName* = "VK_AMD_draw_indirect_count" # Extension: VK_AMD_negative_viewport_height - VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_SPEC_VERSION* = 1 - VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_EXTENSION_NAME* = "VK_AMD_negative_viewport_height" + VkAmdNegativeViewportHeightSpecVersion* = 1 + VkAmdNegativeViewportHeightExtensionName* = "VK_AMD_negative_viewport_height" # Extension: VK_AMD_gpu_shader_half_float - VK_AMD_GPU_SHADER_HALF_FLOAT_SPEC_VERSION* = 2 - VK_AMD_GPU_SHADER_HALF_FLOAT_EXTENSION_NAME* = "VK_AMD_gpu_shader_half_float" + VkAmdGpuShaderHalfFloatSpecVersion* = 2 + VkAmdGpuShaderHalfFloatExtensionName* = "VK_AMD_gpu_shader_half_float" # Extension: VK_AMD_shader_ballot - VK_AMD_SHADER_BALLOT_SPEC_VERSION* = 1 - VK_AMD_SHADER_BALLOT_EXTENSION_NAME* = "VK_AMD_shader_ballot" + VkAmdShaderBallotSpecVersion* = 1 + VkAmdShaderBallotExtensionName* = "VK_AMD_shader_ballot" # Extension: VK_KHR_video_encode_h264 - VK_KHR_VIDEO_ENCODE_H264_SPEC_VERSION* = 14 - VK_KHR_VIDEO_ENCODE_H264_EXTENSION_NAME* = "VK_KHR_video_encode_h264" + VkKhrVideoEncodeH264SpecVersion* = 14 + VkKhrVideoEncodeH264ExtensionName* = "VK_KHR_video_encode_h264" # Extension: VK_KHR_video_encode_h265 - VK_KHR_VIDEO_ENCODE_H265_SPEC_VERSION* = 14 - VK_KHR_VIDEO_ENCODE_H265_EXTENSION_NAME* = "VK_KHR_video_encode_h265" + VkKhrVideoEncodeH265SpecVersion* = 14 + VkKhrVideoEncodeH265ExtensionName* = "VK_KHR_video_encode_h265" # Extension: VK_KHR_video_decode_h264 - VK_KHR_VIDEO_DECODE_H264_SPEC_VERSION* = 9 - VK_KHR_VIDEO_DECODE_H264_EXTENSION_NAME* = "VK_KHR_video_decode_h264" + VkKhrVideoDecodeH264SpecVersion* = 9 + VkKhrVideoDecodeH264ExtensionName* = "VK_KHR_video_decode_h264" # Extension: VK_AMD_texture_gather_bias_lod - VK_AMD_TEXTURE_GATHER_BIAS_LOD_SPEC_VERSION* = 1 - VK_AMD_TEXTURE_GATHER_BIAS_LOD_EXTENSION_NAME* = "VK_AMD_texture_gather_bias_lod" + VkAmdTextureGatherBiasLodSpecVersion* = 1 + VkAmdTextureGatherBiasLodExtensionName* = "VK_AMD_texture_gather_bias_lod" # Extension: VK_AMD_shader_info - VK_AMD_SHADER_INFO_SPEC_VERSION* = 1 - VK_AMD_SHADER_INFO_EXTENSION_NAME* = "VK_AMD_shader_info" + VkAmdShaderInfoSpecVersion* = 1 + VkAmdShaderInfoExtensionName* = "VK_AMD_shader_info" # Extension: VK_KHR_dynamic_rendering - VK_KHR_DYNAMIC_RENDERING_SPEC_VERSION* = 1 - VK_KHR_DYNAMIC_RENDERING_EXTENSION_NAME* = "VK_KHR_dynamic_rendering" + VkKhrDynamicRenderingSpecVersion* = 1 + VkKhrDynamicRenderingExtensionName* = "VK_KHR_dynamic_rendering" # Extension: VK_AMD_shader_image_load_store_lod - VK_AMD_SHADER_IMAGE_LOAD_STORE_LOD_SPEC_VERSION* = 1 - VK_AMD_SHADER_IMAGE_LOAD_STORE_LOD_EXTENSION_NAME* = "VK_AMD_shader_image_load_store_lod" + VkAmdShaderImageLoadStoreLodSpecVersion* = 1 + VkAmdShaderImageLoadStoreLodExtensionName* = "VK_AMD_shader_image_load_store_lod" # Extension: VK_GGP_stream_descriptor_surface - VK_GGP_STREAM_DESCRIPTOR_SURFACE_SPEC_VERSION* = 1 - VK_GGP_STREAM_DESCRIPTOR_SURFACE_EXTENSION_NAME* = "VK_GGP_stream_descriptor_surface" + VkGgpStreamDescriptorSurfaceSpecVersion* = 1 + VkGgpStreamDescriptorSurfaceExtensionName* = "VK_GGP_stream_descriptor_surface" # Extension: VK_NV_corner_sampled_image - VK_NV_CORNER_SAMPLED_IMAGE_SPEC_VERSION* = 2 - VK_NV_CORNER_SAMPLED_IMAGE_EXTENSION_NAME* = "VK_NV_corner_sampled_image" + VkNvCornerSampledImageSpecVersion* = 2 + VkNvCornerSampledImageExtensionName* = "VK_NV_corner_sampled_image" # Extension: VK_NV_private_vendor_info - VK_NV_PRIVATE_VENDOR_INFO_SPEC_VERSION* = 2 - VK_NV_PRIVATE_VENDOR_INFO_EXTENSION_NAME* = "VK_NV_private_vendor_info" + VkNvPrivateVendorInfoSpecVersion* = 2 + VkNvPrivateVendorInfoExtensionName* = "VK_NV_private_vendor_info" # Extension: VK_KHR_multiview - VK_KHR_MULTIVIEW_SPEC_VERSION* = 1 - VK_KHR_MULTIVIEW_EXTENSION_NAME* = "VK_KHR_multiview" + VkKhrMultiviewSpecVersion* = 1 + VkKhrMultiviewExtensionName* = "VK_KHR_multiview" # Extension: VK_IMG_format_pvrtc - VK_IMG_FORMAT_PVRTC_SPEC_VERSION* = 1 - VK_IMG_FORMAT_PVRTC_EXTENSION_NAME* = "VK_IMG_format_pvrtc" + VkImgFormatPvrtcSpecVersion* = 1 + VkImgFormatPvrtcExtensionName* = "VK_IMG_format_pvrtc" # Extension: VK_NV_external_memory_capabilities - VK_NV_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION* = 1 - VK_NV_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME* = "VK_NV_external_memory_capabilities" + VkNvExternalMemoryCapabilitiesSpecVersion* = 1 + VkNvExternalMemoryCapabilitiesExtensionName* = "VK_NV_external_memory_capabilities" # Extension: VK_NV_external_memory - VK_NV_EXTERNAL_MEMORY_SPEC_VERSION* = 1 - VK_NV_EXTERNAL_MEMORY_EXTENSION_NAME* = "VK_NV_external_memory" + VkNvExternalMemorySpecVersion* = 1 + VkNvExternalMemoryExtensionName* = "VK_NV_external_memory" # Extension: VK_NV_external_memory_win32 - VK_NV_EXTERNAL_MEMORY_WIN32_SPEC_VERSION* = 1 - VK_NV_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME* = "VK_NV_external_memory_win32" + VkNvExternalMemoryWin32SpecVersion* = 1 + VkNvExternalMemoryWin32ExtensionName* = "VK_NV_external_memory_win32" # Extension: VK_NV_win32_keyed_mutex - VK_NV_WIN32_KEYED_MUTEX_SPEC_VERSION* = 2 - VK_NV_WIN32_KEYED_MUTEX_EXTENSION_NAME* = "VK_NV_win32_keyed_mutex" + VkNvWin32KeyedMutexSpecVersion* = 2 + VkNvWin32KeyedMutexExtensionName* = "VK_NV_win32_keyed_mutex" # Extension: VK_KHR_get_physical_device_properties2 - VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_SPEC_VERSION* = 2 - VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME* = "VK_KHR_get_physical_device_properties2" + VkKhrGetPhysicalDeviceProperties2SpecVersion* = 2 + VkKhrGetPhysicalDeviceProperties2ExtensionName* = "VK_KHR_get_physical_device_properties2" # Extension: VK_KHR_device_group - VK_KHR_DEVICE_GROUP_SPEC_VERSION* = 4 - VK_KHR_DEVICE_GROUP_EXTENSION_NAME* = "VK_KHR_device_group" + VkKhrDeviceGroupSpecVersion* = 4 + VkKhrDeviceGroupExtensionName* = "VK_KHR_device_group" # Extension: VK_EXT_validation_flags - VK_EXT_VALIDATION_FLAGS_SPEC_VERSION* = 3 - VK_EXT_VALIDATION_FLAGS_EXTENSION_NAME* = "VK_EXT_validation_flags" + VkExtValidationFlagsSpecVersion* = 3 + VkExtValidationFlagsExtensionName* = "VK_EXT_validation_flags" # Extension: VK_NN_vi_surface - VK_NN_VI_SURFACE_SPEC_VERSION* = 1 - VK_NN_VI_SURFACE_EXTENSION_NAME* = "VK_NN_vi_surface" + VkNnViSurfaceSpecVersion* = 1 + VkNnViSurfaceExtensionName* = "VK_NN_vi_surface" # Extension: VK_KHR_shader_draw_parameters - VK_KHR_SHADER_DRAW_PARAMETERS_SPEC_VERSION* = 1 - VK_KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME* = "VK_KHR_shader_draw_parameters" + VkKhrShaderDrawParametersSpecVersion* = 1 + VkKhrShaderDrawParametersExtensionName* = "VK_KHR_shader_draw_parameters" # Extension: VK_EXT_shader_subgroup_ballot - VK_EXT_SHADER_SUBGROUP_BALLOT_SPEC_VERSION* = 1 - VK_EXT_SHADER_SUBGROUP_BALLOT_EXTENSION_NAME* = "VK_EXT_shader_subgroup_ballot" + VkExtShaderSubgroupBallotSpecVersion* = 1 + VkExtShaderSubgroupBallotExtensionName* = "VK_EXT_shader_subgroup_ballot" # Extension: VK_EXT_shader_subgroup_vote - VK_EXT_SHADER_SUBGROUP_VOTE_SPEC_VERSION* = 1 - VK_EXT_SHADER_SUBGROUP_VOTE_EXTENSION_NAME* = "VK_EXT_shader_subgroup_vote" + VkExtShaderSubgroupVoteSpecVersion* = 1 + VkExtShaderSubgroupVoteExtensionName* = "VK_EXT_shader_subgroup_vote" # Extension: VK_EXT_texture_compression_astc_hdr - VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_SPEC_VERSION* = 1 - VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_EXTENSION_NAME* = "VK_EXT_texture_compression_astc_hdr" + VkExtTextureCompressionAstcHdrSpecVersion* = 1 + VkExtTextureCompressionAstcHdrExtensionName* = "VK_EXT_texture_compression_astc_hdr" # Extension: VK_EXT_astc_decode_mode - VK_EXT_ASTC_DECODE_MODE_SPEC_VERSION* = 1 - VK_EXT_ASTC_DECODE_MODE_EXTENSION_NAME* = "VK_EXT_astc_decode_mode" + VkExtAstcDecodeModeSpecVersion* = 1 + VkExtAstcDecodeModeExtensionName* = "VK_EXT_astc_decode_mode" # Extension: VK_EXT_pipeline_robustness - VK_EXT_PIPELINE_ROBUSTNESS_SPEC_VERSION* = 1 - VK_EXT_PIPELINE_ROBUSTNESS_EXTENSION_NAME* = "VK_EXT_pipeline_robustness" + VkExtPipelineRobustnessSpecVersion* = 1 + VkExtPipelineRobustnessExtensionName* = "VK_EXT_pipeline_robustness" # Extension: VK_KHR_maintenance1 - VK_KHR_MAINTENANCE_1_SPEC_VERSION* = 2 - VK_KHR_MAINTENANCE_1_EXTENSION_NAME* = "VK_KHR_maintenance1" + VkKhrMaintenance1SpecVersion* = 2 + VkKhrMaintenance1ExtensionName* = "VK_KHR_maintenance1" # Extension: VK_KHR_device_group_creation - VK_KHR_DEVICE_GROUP_CREATION_SPEC_VERSION* = 1 - VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME* = "VK_KHR_device_group_creation" + VkKhrDeviceGroupCreationSpecVersion* = 1 + VkKhrDeviceGroupCreationExtensionName* = "VK_KHR_device_group_creation" # Extension: VK_KHR_external_memory_capabilities - VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION* = 1 - VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME* = "VK_KHR_external_memory_capabilities" + VkKhrExternalMemoryCapabilitiesSpecVersion* = 1 + VkKhrExternalMemoryCapabilitiesExtensionName* = "VK_KHR_external_memory_capabilities" # Extension: VK_KHR_external_memory - VK_KHR_EXTERNAL_MEMORY_SPEC_VERSION* = 1 - VK_KHR_EXTERNAL_MEMORY_EXTENSION_NAME* = "VK_KHR_external_memory" + VkKhrExternalMemorySpecVersion* = 1 + VkKhrExternalMemoryExtensionName* = "VK_KHR_external_memory" # Extension: VK_KHR_external_memory_win32 - VK_KHR_EXTERNAL_MEMORY_WIN32_SPEC_VERSION* = 1 - VK_KHR_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME* = "VK_KHR_external_memory_win32" + VkKhrExternalMemoryWin32SpecVersion* = 1 + VkKhrExternalMemoryWin32ExtensionName* = "VK_KHR_external_memory_win32" # Extension: VK_KHR_external_memory_fd - VK_KHR_EXTERNAL_MEMORY_FD_SPEC_VERSION* = 1 - VK_KHR_EXTERNAL_MEMORY_FD_EXTENSION_NAME* = "VK_KHR_external_memory_fd" + VkKhrExternalMemoryFdSpecVersion* = 1 + VkKhrExternalMemoryFdExtensionName* = "VK_KHR_external_memory_fd" # Extension: VK_KHR_win32_keyed_mutex - VK_KHR_WIN32_KEYED_MUTEX_SPEC_VERSION* = 1 - VK_KHR_WIN32_KEYED_MUTEX_EXTENSION_NAME* = "VK_KHR_win32_keyed_mutex" + VkKhrWin32KeyedMutexSpecVersion* = 1 + VkKhrWin32KeyedMutexExtensionName* = "VK_KHR_win32_keyed_mutex" # Extension: VK_KHR_external_semaphore_capabilities - VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_SPEC_VERSION* = 1 - VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_EXTENSION_NAME* = "VK_KHR_external_semaphore_capabilities" + VkKhrExternalSemaphoreCapabilitiesSpecVersion* = 1 + VkKhrExternalSemaphoreCapabilitiesExtensionName* = "VK_KHR_external_semaphore_capabilities" # Extension: VK_KHR_external_semaphore - VK_KHR_EXTERNAL_SEMAPHORE_SPEC_VERSION* = 1 - VK_KHR_EXTERNAL_SEMAPHORE_EXTENSION_NAME* = "VK_KHR_external_semaphore" + VkKhrExternalSemaphoreSpecVersion* = 1 + VkKhrExternalSemaphoreExtensionName* = "VK_KHR_external_semaphore" # Extension: VK_KHR_external_semaphore_win32 - VK_KHR_EXTERNAL_SEMAPHORE_WIN32_SPEC_VERSION* = 1 - VK_KHR_EXTERNAL_SEMAPHORE_WIN32_EXTENSION_NAME* = "VK_KHR_external_semaphore_win32" + VkKhrExternalSemaphoreWin32SpecVersion* = 1 + VkKhrExternalSemaphoreWin32ExtensionName* = "VK_KHR_external_semaphore_win32" # Extension: VK_KHR_external_semaphore_fd - VK_KHR_EXTERNAL_SEMAPHORE_FD_SPEC_VERSION* = 1 - VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME* = "VK_KHR_external_semaphore_fd" + VkKhrExternalSemaphoreFdSpecVersion* = 1 + VkKhrExternalSemaphoreFdExtensionName* = "VK_KHR_external_semaphore_fd" # Extension: VK_KHR_push_descriptor - VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION* = 2 - VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME* = "VK_KHR_push_descriptor" + VkKhrPushDescriptorSpecVersion* = 2 + VkKhrPushDescriptorExtensionName* = "VK_KHR_push_descriptor" # Extension: VK_EXT_conditional_rendering - VK_EXT_CONDITIONAL_RENDERING_SPEC_VERSION* = 2 - VK_EXT_CONDITIONAL_RENDERING_EXTENSION_NAME* = "VK_EXT_conditional_rendering" + VkExtConditionalRenderingSpecVersion* = 2 + VkExtConditionalRenderingExtensionName* = "VK_EXT_conditional_rendering" # Extension: VK_KHR_shader_float16_int8 - VK_KHR_SHADER_FLOAT16_INT8_SPEC_VERSION* = 1 - VK_KHR_SHADER_FLOAT16_INT8_EXTENSION_NAME* = "VK_KHR_shader_float16_int8" + VkKhrShaderFloat16Int8SpecVersion* = 1 + VkKhrShaderFloat16Int8ExtensionName* = "VK_KHR_shader_float16_int8" # Extension: VK_KHR_16bit_storage - VK_KHR_16BIT_STORAGE_SPEC_VERSION* = 1 - VK_KHR_16BIT_STORAGE_EXTENSION_NAME* = "VK_KHR_16bit_storage" + VkKhr16bitStorageSpecVersion* = 1 + VkKhr16bitStorageExtensionName* = "VK_KHR_16bit_storage" # Extension: VK_KHR_incremental_present - VK_KHR_INCREMENTAL_PRESENT_SPEC_VERSION* = 2 - VK_KHR_INCREMENTAL_PRESENT_EXTENSION_NAME* = "VK_KHR_incremental_present" + VkKhrIncrementalPresentSpecVersion* = 2 + VkKhrIncrementalPresentExtensionName* = "VK_KHR_incremental_present" # Extension: VK_KHR_descriptor_update_template - VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_SPEC_VERSION* = 1 - VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME* = "VK_KHR_descriptor_update_template" + VkKhrDescriptorUpdateTemplateSpecVersion* = 1 + VkKhrDescriptorUpdateTemplateExtensionName* = "VK_KHR_descriptor_update_template" # Extension: VK_NV_clip_space_w_scaling - VK_NV_CLIP_SPACE_W_SCALING_SPEC_VERSION* = 1 - VK_NV_CLIP_SPACE_W_SCALING_EXTENSION_NAME* = "VK_NV_clip_space_w_scaling" + VkNvClipSpaceWScalingSpecVersion* = 1 + VkNvClipSpaceWScalingExtensionName* = "VK_NV_clip_space_w_scaling" # Extension: VK_EXT_direct_mode_display - VK_EXT_DIRECT_MODE_DISPLAY_SPEC_VERSION* = 1 - VK_EXT_DIRECT_MODE_DISPLAY_EXTENSION_NAME* = "VK_EXT_direct_mode_display" + VkExtDirectModeDisplaySpecVersion* = 1 + VkExtDirectModeDisplayExtensionName* = "VK_EXT_direct_mode_display" # Extension: VK_EXT_acquire_xlib_display - VK_EXT_ACQUIRE_XLIB_DISPLAY_SPEC_VERSION* = 1 - VK_EXT_ACQUIRE_XLIB_DISPLAY_EXTENSION_NAME* = "VK_EXT_acquire_xlib_display" + VkExtAcquireXlibDisplaySpecVersion* = 1 + VkExtAcquireXlibDisplayExtensionName* = "VK_EXT_acquire_xlib_display" # Extension: VK_EXT_display_surface_counter - VK_EXT_DISPLAY_SURFACE_COUNTER_SPEC_VERSION* = 1 - VK_EXT_DISPLAY_SURFACE_COUNTER_EXTENSION_NAME* = "VK_EXT_display_surface_counter" + VkExtDisplaySurfaceCounterSpecVersion* = 1 + VkExtDisplaySurfaceCounterExtensionName* = "VK_EXT_display_surface_counter" # Extension: VK_EXT_display_control - VK_EXT_DISPLAY_CONTROL_SPEC_VERSION* = 1 - VK_EXT_DISPLAY_CONTROL_EXTENSION_NAME* = "VK_EXT_display_control" + VkExtDisplayControlSpecVersion* = 1 + VkExtDisplayControlExtensionName* = "VK_EXT_display_control" # Extension: VK_GOOGLE_display_timing - VK_GOOGLE_DISPLAY_TIMING_SPEC_VERSION* = 1 - VK_GOOGLE_DISPLAY_TIMING_EXTENSION_NAME* = "VK_GOOGLE_display_timing" + VkGoogleDisplayTimingSpecVersion* = 1 + VkGoogleDisplayTimingExtensionName* = "VK_GOOGLE_display_timing" # Extension: VK_NV_sample_mask_override_coverage - VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_SPEC_VERSION* = 1 - VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_EXTENSION_NAME* = "VK_NV_sample_mask_override_coverage" + VkNvSampleMaskOverrideCoverageSpecVersion* = 1 + VkNvSampleMaskOverrideCoverageExtensionName* = "VK_NV_sample_mask_override_coverage" # Extension: VK_NV_geometry_shader_passthrough - VK_NV_GEOMETRY_SHADER_PASSTHROUGH_SPEC_VERSION* = 1 - VK_NV_GEOMETRY_SHADER_PASSTHROUGH_EXTENSION_NAME* = "VK_NV_geometry_shader_passthrough" + VkNvGeometryShaderPassthroughSpecVersion* = 1 + VkNvGeometryShaderPassthroughExtensionName* = "VK_NV_geometry_shader_passthrough" # Extension: VK_NV_viewport_array2 - VK_NV_VIEWPORT_ARRAY_2_SPEC_VERSION* = 1 - VK_NV_VIEWPORT_ARRAY_2_EXTENSION_NAME* = "VK_NV_viewport_array2" + VkNvViewportArray2SpecVersion* = 1 + VkNvViewportArray2ExtensionName* = "VK_NV_viewport_array2" # Extension: VK_NVX_multiview_per_view_attributes - VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_SPEC_VERSION* = 1 - VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME* = "VK_NVX_multiview_per_view_attributes" + VkNvxMultiviewPerViewAttributesSpecVersion* = 1 + VkNvxMultiviewPerViewAttributesExtensionName* = "VK_NVX_multiview_per_view_attributes" # Extension: VK_NV_viewport_swizzle - VK_NV_VIEWPORT_SWIZZLE_SPEC_VERSION* = 1 - VK_NV_VIEWPORT_SWIZZLE_EXTENSION_NAME* = "VK_NV_viewport_swizzle" + VkNvViewportSwizzleSpecVersion* = 1 + VkNvViewportSwizzleExtensionName* = "VK_NV_viewport_swizzle" # Extension: VK_EXT_discard_rectangles - VK_EXT_DISCARD_RECTANGLES_SPEC_VERSION* = 2 - VK_EXT_DISCARD_RECTANGLES_EXTENSION_NAME* = "VK_EXT_discard_rectangles" + VkExtDiscardRectanglesSpecVersion* = 2 + VkExtDiscardRectanglesExtensionName* = "VK_EXT_discard_rectangles" # Extension: VK_EXT_conservative_rasterization - VK_EXT_CONSERVATIVE_RASTERIZATION_SPEC_VERSION* = 1 - VK_EXT_CONSERVATIVE_RASTERIZATION_EXTENSION_NAME* = "VK_EXT_conservative_rasterization" + VkExtConservativeRasterizationSpecVersion* = 1 + VkExtConservativeRasterizationExtensionName* = "VK_EXT_conservative_rasterization" # Extension: VK_EXT_depth_clip_enable - VK_EXT_DEPTH_CLIP_ENABLE_SPEC_VERSION* = 1 - VK_EXT_DEPTH_CLIP_ENABLE_EXTENSION_NAME* = "VK_EXT_depth_clip_enable" + VkExtDepthClipEnableSpecVersion* = 1 + VkExtDepthClipEnableExtensionName* = "VK_EXT_depth_clip_enable" # Extension: VK_EXT_swapchain_colorspace - VK_EXT_SWAPCHAIN_COLOR_SPACE_SPEC_VERSION* = 4 - VK_EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME* = "VK_EXT_swapchain_colorspace" + VkExtSwapchainColorSpaceSpecVersion* = 5 + VkExtSwapchainColorSpaceExtensionName* = "VK_EXT_swapchain_colorspace" # Extension: VK_EXT_hdr_metadata - VK_EXT_HDR_METADATA_SPEC_VERSION* = 2 - VK_EXT_HDR_METADATA_EXTENSION_NAME* = "VK_EXT_hdr_metadata" + VkExtHdrMetadataSpecVersion* = 3 + VkExtHdrMetadataExtensionName* = "VK_EXT_hdr_metadata" # Extension: VK_KHR_imageless_framebuffer - VK_KHR_IMAGELESS_FRAMEBUFFER_SPEC_VERSION* = 1 - VK_KHR_IMAGELESS_FRAMEBUFFER_EXTENSION_NAME* = "VK_KHR_imageless_framebuffer" + VkKhrImagelessFramebufferSpecVersion* = 1 + VkKhrImagelessFramebufferExtensionName* = "VK_KHR_imageless_framebuffer" # Extension: VK_KHR_create_renderpass2 - VK_KHR_CREATE_RENDERPASS_2_SPEC_VERSION* = 1 - VK_KHR_CREATE_RENDERPASS_2_EXTENSION_NAME* = "VK_KHR_create_renderpass2" + VkKhrCreateRenderpass2SpecVersion* = 1 + VkKhrCreateRenderpass2ExtensionName* = "VK_KHR_create_renderpass2" # Extension: VK_IMG_relaxed_line_rasterization - VK_IMG_RELAXED_LINE_RASTERIZATION_SPEC_VERSION* = 1 - VK_IMG_RELAXED_LINE_RASTERIZATION_EXTENSION_NAME* = "VK_IMG_relaxed_line_rasterization" + VkImgRelaxedLineRasterizationSpecVersion* = 1 + VkImgRelaxedLineRasterizationExtensionName* = "VK_IMG_relaxed_line_rasterization" # Extension: VK_KHR_shared_presentable_image - VK_KHR_SHARED_PRESENTABLE_IMAGE_SPEC_VERSION* = 1 - VK_KHR_SHARED_PRESENTABLE_IMAGE_EXTENSION_NAME* = "VK_KHR_shared_presentable_image" + VkKhrSharedPresentableImageSpecVersion* = 1 + VkKhrSharedPresentableImageExtensionName* = "VK_KHR_shared_presentable_image" # Extension: VK_KHR_external_fence_capabilities - VK_KHR_EXTERNAL_FENCE_CAPABILITIES_SPEC_VERSION* = 1 - VK_KHR_EXTERNAL_FENCE_CAPABILITIES_EXTENSION_NAME* = "VK_KHR_external_fence_capabilities" + VkKhrExternalFenceCapabilitiesSpecVersion* = 1 + VkKhrExternalFenceCapabilitiesExtensionName* = "VK_KHR_external_fence_capabilities" # Extension: VK_KHR_external_fence - VK_KHR_EXTERNAL_FENCE_SPEC_VERSION* = 1 - VK_KHR_EXTERNAL_FENCE_EXTENSION_NAME* = "VK_KHR_external_fence" + VkKhrExternalFenceSpecVersion* = 1 + VkKhrExternalFenceExtensionName* = "VK_KHR_external_fence" # Extension: VK_KHR_external_fence_win32 - VK_KHR_EXTERNAL_FENCE_WIN32_SPEC_VERSION* = 1 - VK_KHR_EXTERNAL_FENCE_WIN32_EXTENSION_NAME* = "VK_KHR_external_fence_win32" + VkKhrExternalFenceWin32SpecVersion* = 1 + VkKhrExternalFenceWin32ExtensionName* = "VK_KHR_external_fence_win32" # Extension: VK_KHR_external_fence_fd - VK_KHR_EXTERNAL_FENCE_FD_SPEC_VERSION* = 1 - VK_KHR_EXTERNAL_FENCE_FD_EXTENSION_NAME* = "VK_KHR_external_fence_fd" + VkKhrExternalFenceFdSpecVersion* = 1 + VkKhrExternalFenceFdExtensionName* = "VK_KHR_external_fence_fd" # Extension: VK_KHR_performance_query - VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION* = 1 - VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME* = "VK_KHR_performance_query" + VkKhrPerformanceQuerySpecVersion* = 1 + VkKhrPerformanceQueryExtensionName* = "VK_KHR_performance_query" # Extension: VK_KHR_maintenance2 - VK_KHR_MAINTENANCE_2_SPEC_VERSION* = 1 - VK_KHR_MAINTENANCE_2_EXTENSION_NAME* = "VK_KHR_maintenance2" + VkKhrMaintenance2SpecVersion* = 1 + VkKhrMaintenance2ExtensionName* = "VK_KHR_maintenance2" # Extension: VK_KHR_get_surface_capabilities2 - VK_KHR_GET_SURFACE_CAPABILITIES_2_SPEC_VERSION* = 1 - VK_KHR_GET_SURFACE_CAPABILITIES_2_EXTENSION_NAME* = "VK_KHR_get_surface_capabilities2" + VkKhrGetSurfaceCapabilities2SpecVersion* = 1 + VkKhrGetSurfaceCapabilities2ExtensionName* = "VK_KHR_get_surface_capabilities2" # Extension: VK_KHR_variable_pointers - VK_KHR_VARIABLE_POINTERS_SPEC_VERSION* = 1 - VK_KHR_VARIABLE_POINTERS_EXTENSION_NAME* = "VK_KHR_variable_pointers" + VkKhrVariablePointersSpecVersion* = 1 + VkKhrVariablePointersExtensionName* = "VK_KHR_variable_pointers" # Extension: VK_KHR_get_display_properties2 - VK_KHR_GET_DISPLAY_PROPERTIES_2_SPEC_VERSION* = 1 - VK_KHR_GET_DISPLAY_PROPERTIES_2_EXTENSION_NAME* = "VK_KHR_get_display_properties2" + VkKhrGetDisplayProperties2SpecVersion* = 1 + VkKhrGetDisplayProperties2ExtensionName* = "VK_KHR_get_display_properties2" # Extension: VK_MVK_ios_surface - VK_MVK_IOS_SURFACE_SPEC_VERSION* = 3 - VK_MVK_IOS_SURFACE_EXTENSION_NAME* = "VK_MVK_ios_surface" + VkMvkIosSurfaceSpecVersion* = 3 + VkMvkIosSurfaceExtensionName* = "VK_MVK_ios_surface" # Extension: VK_MVK_macos_surface - VK_MVK_MACOS_SURFACE_SPEC_VERSION* = 3 - VK_MVK_MACOS_SURFACE_EXTENSION_NAME* = "VK_MVK_macos_surface" + VkMvkMacosSurfaceSpecVersion* = 3 + VkMvkMacosSurfaceExtensionName* = "VK_MVK_macos_surface" # Extension: VK_EXT_external_memory_dma_buf - VK_EXT_EXTERNAL_MEMORY_DMA_BUF_SPEC_VERSION* = 1 - VK_EXT_EXTERNAL_MEMORY_DMA_BUF_EXTENSION_NAME* = "VK_EXT_external_memory_dma_buf" + VkExtExternalMemoryDmaBufSpecVersion* = 1 + VkExtExternalMemoryDmaBufExtensionName* = "VK_EXT_external_memory_dma_buf" # Extension: VK_EXT_queue_family_foreign - VK_EXT_QUEUE_FAMILY_FOREIGN_SPEC_VERSION* = 1 - VK_EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME* = "VK_EXT_queue_family_foreign" + VkExtQueueFamilyForeignSpecVersion* = 1 + VkExtQueueFamilyForeignExtensionName* = "VK_EXT_queue_family_foreign" # Extension: VK_KHR_dedicated_allocation - VK_KHR_DEDICATED_ALLOCATION_SPEC_VERSION* = 3 - VK_KHR_DEDICATED_ALLOCATION_EXTENSION_NAME* = "VK_KHR_dedicated_allocation" + VkKhrDedicatedAllocationSpecVersion* = 3 + VkKhrDedicatedAllocationExtensionName* = "VK_KHR_dedicated_allocation" # Extension: VK_EXT_debug_utils - VK_EXT_DEBUG_UTILS_SPEC_VERSION* = 2 - VK_EXT_DEBUG_UTILS_EXTENSION_NAME* = "VK_EXT_debug_utils" + VkExtDebugUtilsSpecVersion* = 2 + VkExtDebugUtilsExtensionName* = "VK_EXT_debug_utils" # Extension: VK_ANDROID_external_memory_android_hardware_buffer - VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_SPEC_VERSION* = 5 - VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME* = "VK_ANDROID_external_memory_android_hardware_buffer" + VkAndroidExternalMemoryAndroidHardwareBufferSpecVersion* = 5 + VkAndroidExternalMemoryAndroidHardwareBufferExtensionName* = "VK_ANDROID_external_memory_android_hardware_buffer" # Extension: VK_EXT_sampler_filter_minmax - VK_EXT_SAMPLER_FILTER_MINMAX_SPEC_VERSION* = 2 - VK_EXT_SAMPLER_FILTER_MINMAX_EXTENSION_NAME* = "VK_EXT_sampler_filter_minmax" + VkExtSamplerFilterMinmaxSpecVersion* = 2 + VkExtSamplerFilterMinmaxExtensionName* = "VK_EXT_sampler_filter_minmax" # Extension: VK_KHR_storage_buffer_storage_class - VK_KHR_STORAGE_BUFFER_STORAGE_CLASS_SPEC_VERSION* = 1 - VK_KHR_STORAGE_BUFFER_STORAGE_CLASS_EXTENSION_NAME* = "VK_KHR_storage_buffer_storage_class" + VkKhrStorageBufferStorageClassSpecVersion* = 1 + VkKhrStorageBufferStorageClassExtensionName* = "VK_KHR_storage_buffer_storage_class" # Extension: VK_AMD_gpu_shader_int16 - VK_AMD_GPU_SHADER_INT16_SPEC_VERSION* = 2 - VK_AMD_GPU_SHADER_INT16_EXTENSION_NAME* = "VK_AMD_gpu_shader_int16" + VkAmdGpuShaderInt16SpecVersion* = 2 + VkAmdGpuShaderInt16ExtensionName* = "VK_AMD_gpu_shader_int16" # Extension: VK_AMDX_shader_enqueue - VK_AMDX_SHADER_ENQUEUE_SPEC_VERSION* = 1 - VK_AMDX_SHADER_ENQUEUE_EXTENSION_NAME* = "VK_AMDX_shader_enqueue" + VkAmdxShaderEnqueueSpecVersion* = 1 + VkAmdxShaderEnqueueExtensionName* = "VK_AMDX_shader_enqueue" # Extension: VK_AMD_mixed_attachment_samples - VK_AMD_MIXED_ATTACHMENT_SAMPLES_SPEC_VERSION* = 1 - VK_AMD_MIXED_ATTACHMENT_SAMPLES_EXTENSION_NAME* = "VK_AMD_mixed_attachment_samples" + VkAmdMixedAttachmentSamplesSpecVersion* = 1 + VkAmdMixedAttachmentSamplesExtensionName* = "VK_AMD_mixed_attachment_samples" # Extension: VK_AMD_shader_fragment_mask - VK_AMD_SHADER_FRAGMENT_MASK_SPEC_VERSION* = 1 - VK_AMD_SHADER_FRAGMENT_MASK_EXTENSION_NAME* = "VK_AMD_shader_fragment_mask" + VkAmdShaderFragmentMaskSpecVersion* = 1 + VkAmdShaderFragmentMaskExtensionName* = "VK_AMD_shader_fragment_mask" # Extension: VK_EXT_inline_uniform_block - VK_EXT_INLINE_UNIFORM_BLOCK_SPEC_VERSION* = 1 - VK_EXT_INLINE_UNIFORM_BLOCK_EXTENSION_NAME* = "VK_EXT_inline_uniform_block" + VkExtInlineUniformBlockSpecVersion* = 1 + VkExtInlineUniformBlockExtensionName* = "VK_EXT_inline_uniform_block" # Extension: VK_EXT_shader_stencil_export - VK_EXT_SHADER_STENCIL_EXPORT_SPEC_VERSION* = 1 - VK_EXT_SHADER_STENCIL_EXPORT_EXTENSION_NAME* = "VK_EXT_shader_stencil_export" + VkExtShaderStencilExportSpecVersion* = 1 + VkExtShaderStencilExportExtensionName* = "VK_EXT_shader_stencil_export" # Extension: VK_EXT_sample_locations - VK_EXT_SAMPLE_LOCATIONS_SPEC_VERSION* = 1 - VK_EXT_SAMPLE_LOCATIONS_EXTENSION_NAME* = "VK_EXT_sample_locations" + VkExtSampleLocationsSpecVersion* = 1 + VkExtSampleLocationsExtensionName* = "VK_EXT_sample_locations" # Extension: VK_KHR_relaxed_block_layout - VK_KHR_RELAXED_BLOCK_LAYOUT_SPEC_VERSION* = 1 - VK_KHR_RELAXED_BLOCK_LAYOUT_EXTENSION_NAME* = "VK_KHR_relaxed_block_layout" + VkKhrRelaxedBlockLayoutSpecVersion* = 1 + VkKhrRelaxedBlockLayoutExtensionName* = "VK_KHR_relaxed_block_layout" # Extension: VK_KHR_get_memory_requirements2 - VK_KHR_GET_MEMORY_REQUIREMENTS_2_SPEC_VERSION* = 1 - VK_KHR_GET_MEMORY_REQUIREMENTS_2_EXTENSION_NAME* = "VK_KHR_get_memory_requirements2" + VkKhrGetMemoryRequirements2SpecVersion* = 1 + VkKhrGetMemoryRequirements2ExtensionName* = "VK_KHR_get_memory_requirements2" # Extension: VK_KHR_image_format_list - VK_KHR_IMAGE_FORMAT_LIST_SPEC_VERSION* = 1 - VK_KHR_IMAGE_FORMAT_LIST_EXTENSION_NAME* = "VK_KHR_image_format_list" + VkKhrImageFormatListSpecVersion* = 1 + VkKhrImageFormatListExtensionName* = "VK_KHR_image_format_list" # Extension: VK_EXT_blend_operation_advanced - VK_EXT_BLEND_OPERATION_ADVANCED_SPEC_VERSION* = 2 - VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME* = "VK_EXT_blend_operation_advanced" + VkExtBlendOperationAdvancedSpecVersion* = 2 + VkExtBlendOperationAdvancedExtensionName* = "VK_EXT_blend_operation_advanced" # Extension: VK_NV_fragment_coverage_to_color - VK_NV_FRAGMENT_COVERAGE_TO_COLOR_SPEC_VERSION* = 1 - VK_NV_FRAGMENT_COVERAGE_TO_COLOR_EXTENSION_NAME* = "VK_NV_fragment_coverage_to_color" + VkNvFragmentCoverageToColorSpecVersion* = 1 + VkNvFragmentCoverageToColorExtensionName* = "VK_NV_fragment_coverage_to_color" # Extension: VK_KHR_acceleration_structure - VK_KHR_ACCELERATION_STRUCTURE_SPEC_VERSION* = 13 - VK_KHR_ACCELERATION_STRUCTURE_EXTENSION_NAME* = "VK_KHR_acceleration_structure" + VkKhrAccelerationStructureSpecVersion* = 13 + VkKhrAccelerationStructureExtensionName* = "VK_KHR_acceleration_structure" # Extension: VK_KHR_ray_tracing_pipeline - VK_KHR_RAY_TRACING_PIPELINE_SPEC_VERSION* = 1 - VK_KHR_RAY_TRACING_PIPELINE_EXTENSION_NAME* = "VK_KHR_ray_tracing_pipeline" + VkKhrRayTracingPipelineSpecVersion* = 1 + VkKhrRayTracingPipelineExtensionName* = "VK_KHR_ray_tracing_pipeline" # Extension: VK_KHR_ray_query - VK_KHR_RAY_QUERY_SPEC_VERSION* = 1 - VK_KHR_RAY_QUERY_EXTENSION_NAME* = "VK_KHR_ray_query" + VkKhrRayQuerySpecVersion* = 1 + VkKhrRayQueryExtensionName* = "VK_KHR_ray_query" # Extension: VK_NV_framebuffer_mixed_samples - VK_NV_FRAMEBUFFER_MIXED_SAMPLES_SPEC_VERSION* = 1 - VK_NV_FRAMEBUFFER_MIXED_SAMPLES_EXTENSION_NAME* = "VK_NV_framebuffer_mixed_samples" + VkNvFramebufferMixedSamplesSpecVersion* = 1 + VkNvFramebufferMixedSamplesExtensionName* = "VK_NV_framebuffer_mixed_samples" # Extension: VK_NV_fill_rectangle - VK_NV_FILL_RECTANGLE_SPEC_VERSION* = 1 - VK_NV_FILL_RECTANGLE_EXTENSION_NAME* = "VK_NV_fill_rectangle" + VkNvFillRectangleSpecVersion* = 1 + VkNvFillRectangleExtensionName* = "VK_NV_fill_rectangle" # Extension: VK_NV_shader_sm_builtins - VK_NV_SHADER_SM_BUILTINS_SPEC_VERSION* = 1 - VK_NV_SHADER_SM_BUILTINS_EXTENSION_NAME* = "VK_NV_shader_sm_builtins" + VkNvShaderSmBuiltinsSpecVersion* = 1 + VkNvShaderSmBuiltinsExtensionName* = "VK_NV_shader_sm_builtins" # Extension: VK_EXT_post_depth_coverage - VK_EXT_POST_DEPTH_COVERAGE_SPEC_VERSION* = 1 - VK_EXT_POST_DEPTH_COVERAGE_EXTENSION_NAME* = "VK_EXT_post_depth_coverage" + VkExtPostDepthCoverageSpecVersion* = 1 + VkExtPostDepthCoverageExtensionName* = "VK_EXT_post_depth_coverage" # Extension: VK_KHR_sampler_ycbcr_conversion - VK_KHR_SAMPLER_YCBCR_CONVERSION_SPEC_VERSION* = 14 - VK_KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME* = "VK_KHR_sampler_ycbcr_conversion" + VkKhrSamplerYcbcrConversionSpecVersion* = 14 + VkKhrSamplerYcbcrConversionExtensionName* = "VK_KHR_sampler_ycbcr_conversion" # Extension: VK_KHR_bind_memory2 - VK_KHR_BIND_MEMORY_2_SPEC_VERSION* = 1 - VK_KHR_BIND_MEMORY_2_EXTENSION_NAME* = "VK_KHR_bind_memory2" + VkKhrBindMemory2SpecVersion* = 1 + VkKhrBindMemory2ExtensionName* = "VK_KHR_bind_memory2" # Extension: VK_EXT_image_drm_format_modifier - VK_EXT_IMAGE_DRM_FORMAT_MODIFIER_SPEC_VERSION* = 2 - VK_EXT_IMAGE_DRM_FORMAT_MODIFIER_EXTENSION_NAME* = "VK_EXT_image_drm_format_modifier" + VkExtImageDrmFormatModifierSpecVersion* = 2 + VkExtImageDrmFormatModifierExtensionName* = "VK_EXT_image_drm_format_modifier" # Extension: VK_EXT_validation_cache - VK_EXT_VALIDATION_CACHE_SPEC_VERSION* = 1 - VK_EXT_VALIDATION_CACHE_EXTENSION_NAME* = "VK_EXT_validation_cache" + VkExtValidationCacheSpecVersion* = 1 + VkExtValidationCacheExtensionName* = "VK_EXT_validation_cache" # Extension: VK_EXT_descriptor_indexing - VK_EXT_DESCRIPTOR_INDEXING_SPEC_VERSION* = 2 - VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME* = "VK_EXT_descriptor_indexing" + VkExtDescriptorIndexingSpecVersion* = 2 + VkExtDescriptorIndexingExtensionName* = "VK_EXT_descriptor_indexing" # Extension: VK_EXT_shader_viewport_index_layer - VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_SPEC_VERSION* = 1 - VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_EXTENSION_NAME* = "VK_EXT_shader_viewport_index_layer" + VkExtShaderViewportIndexLayerSpecVersion* = 1 + VkExtShaderViewportIndexLayerExtensionName* = "VK_EXT_shader_viewport_index_layer" # Extension: VK_KHR_portability_subset - VK_KHR_PORTABILITY_SUBSET_SPEC_VERSION* = 1 - VK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME* = "VK_KHR_portability_subset" + VkKhrPortabilitySubsetSpecVersion* = 1 + VkKhrPortabilitySubsetExtensionName* = "VK_KHR_portability_subset" # Extension: VK_NV_shading_rate_image - VK_NV_SHADING_RATE_IMAGE_SPEC_VERSION* = 3 - VK_NV_SHADING_RATE_IMAGE_EXTENSION_NAME* = "VK_NV_shading_rate_image" + VkNvShadingRateImageSpecVersion* = 3 + VkNvShadingRateImageExtensionName* = "VK_NV_shading_rate_image" # Extension: VK_NV_ray_tracing - VK_NV_RAY_TRACING_SPEC_VERSION* = 3 - VK_NV_RAY_TRACING_EXTENSION_NAME* = "VK_NV_ray_tracing" + VkNvRayTracingSpecVersion* = 3 + VkNvRayTracingExtensionName* = "VK_NV_ray_tracing" # Extension: VK_NV_representative_fragment_test - VK_NV_REPRESENTATIVE_FRAGMENT_TEST_SPEC_VERSION* = 2 - VK_NV_REPRESENTATIVE_FRAGMENT_TEST_EXTENSION_NAME* = "VK_NV_representative_fragment_test" + VkNvRepresentativeFragmentTestSpecVersion* = 2 + VkNvRepresentativeFragmentTestExtensionName* = "VK_NV_representative_fragment_test" # Extension: VK_KHR_maintenance3 - VK_KHR_MAINTENANCE_3_SPEC_VERSION* = 1 - VK_KHR_MAINTENANCE_3_EXTENSION_NAME* = "VK_KHR_maintenance3" + VkKhrMaintenance3SpecVersion* = 1 + VkKhrMaintenance3ExtensionName* = "VK_KHR_maintenance3" # Extension: VK_KHR_draw_indirect_count - VK_KHR_DRAW_INDIRECT_COUNT_SPEC_VERSION* = 1 - VK_KHR_DRAW_INDIRECT_COUNT_EXTENSION_NAME* = "VK_KHR_draw_indirect_count" + VkKhrDrawIndirectCountSpecVersion* = 1 + VkKhrDrawIndirectCountExtensionName* = "VK_KHR_draw_indirect_count" # Extension: VK_EXT_filter_cubic - VK_EXT_FILTER_CUBIC_SPEC_VERSION* = 3 - VK_EXT_FILTER_CUBIC_EXTENSION_NAME* = "VK_EXT_filter_cubic" + VkExtFilterCubicSpecVersion* = 3 + VkExtFilterCubicExtensionName* = "VK_EXT_filter_cubic" # Extension: VK_QCOM_render_pass_shader_resolve - VK_QCOM_RENDER_PASS_SHADER_RESOLVE_SPEC_VERSION* = 4 - VK_QCOM_RENDER_PASS_SHADER_RESOLVE_EXTENSION_NAME* = "VK_QCOM_render_pass_shader_resolve" + VkQcomRenderPassShaderResolveSpecVersion* = 4 + VkQcomRenderPassShaderResolveExtensionName* = "VK_QCOM_render_pass_shader_resolve" # Extension: VK_EXT_global_priority - VK_EXT_GLOBAL_PRIORITY_SPEC_VERSION* = 2 - VK_EXT_GLOBAL_PRIORITY_EXTENSION_NAME* = "VK_EXT_global_priority" + VkExtGlobalPrioritySpecVersion* = 2 + VkExtGlobalPriorityExtensionName* = "VK_EXT_global_priority" # Extension: VK_KHR_shader_subgroup_extended_types - VK_KHR_SHADER_SUBGROUP_EXTENDED_TYPES_SPEC_VERSION* = 1 - VK_KHR_SHADER_SUBGROUP_EXTENDED_TYPES_EXTENSION_NAME* = "VK_KHR_shader_subgroup_extended_types" + VkKhrShaderSubgroupExtendedTypesSpecVersion* = 1 + VkKhrShaderSubgroupExtendedTypesExtensionName* = "VK_KHR_shader_subgroup_extended_types" # Extension: VK_KHR_8bit_storage - VK_KHR_8BIT_STORAGE_SPEC_VERSION* = 1 - VK_KHR_8BIT_STORAGE_EXTENSION_NAME* = "VK_KHR_8bit_storage" + VkKhr8bitStorageSpecVersion* = 1 + VkKhr8bitStorageExtensionName* = "VK_KHR_8bit_storage" # Extension: VK_EXT_external_memory_host - VK_EXT_EXTERNAL_MEMORY_HOST_SPEC_VERSION* = 1 - VK_EXT_EXTERNAL_MEMORY_HOST_EXTENSION_NAME* = "VK_EXT_external_memory_host" + VkExtExternalMemoryHostSpecVersion* = 1 + VkExtExternalMemoryHostExtensionName* = "VK_EXT_external_memory_host" # Extension: VK_AMD_buffer_marker - VK_AMD_BUFFER_MARKER_SPEC_VERSION* = 1 - VK_AMD_BUFFER_MARKER_EXTENSION_NAME* = "VK_AMD_buffer_marker" + VkAmdBufferMarkerSpecVersion* = 1 + VkAmdBufferMarkerExtensionName* = "VK_AMD_buffer_marker" # Extension: VK_KHR_shader_atomic_int64 - VK_KHR_SHADER_ATOMIC_INT64_SPEC_VERSION* = 1 - VK_KHR_SHADER_ATOMIC_INT64_EXTENSION_NAME* = "VK_KHR_shader_atomic_int64" + VkKhrShaderAtomicInt64SpecVersion* = 1 + VkKhrShaderAtomicInt64ExtensionName* = "VK_KHR_shader_atomic_int64" # Extension: VK_KHR_shader_clock - VK_KHR_SHADER_CLOCK_SPEC_VERSION* = 1 - VK_KHR_SHADER_CLOCK_EXTENSION_NAME* = "VK_KHR_shader_clock" + VkKhrShaderClockSpecVersion* = 1 + VkKhrShaderClockExtensionName* = "VK_KHR_shader_clock" # Extension: VK_AMD_pipeline_compiler_control - VK_AMD_PIPELINE_COMPILER_CONTROL_SPEC_VERSION* = 1 - VK_AMD_PIPELINE_COMPILER_CONTROL_EXTENSION_NAME* = "VK_AMD_pipeline_compiler_control" + VkAmdPipelineCompilerControlSpecVersion* = 1 + VkAmdPipelineCompilerControlExtensionName* = "VK_AMD_pipeline_compiler_control" # Extension: VK_EXT_calibrated_timestamps - VK_EXT_CALIBRATED_TIMESTAMPS_SPEC_VERSION* = 2 - VK_EXT_CALIBRATED_TIMESTAMPS_EXTENSION_NAME* = "VK_EXT_calibrated_timestamps" + VkExtCalibratedTimestampsSpecVersion* = 2 + VkExtCalibratedTimestampsExtensionName* = "VK_EXT_calibrated_timestamps" # Extension: VK_AMD_shader_core_properties - VK_AMD_SHADER_CORE_PROPERTIES_SPEC_VERSION* = 2 - VK_AMD_SHADER_CORE_PROPERTIES_EXTENSION_NAME* = "VK_AMD_shader_core_properties" + VkAmdShaderCorePropertiesSpecVersion* = 2 + VkAmdShaderCorePropertiesExtensionName* = "VK_AMD_shader_core_properties" # Extension: VK_KHR_video_decode_h265 - VK_KHR_VIDEO_DECODE_H265_SPEC_VERSION* = 8 - VK_KHR_VIDEO_DECODE_H265_EXTENSION_NAME* = "VK_KHR_video_decode_h265" + VkKhrVideoDecodeH265SpecVersion* = 8 + VkKhrVideoDecodeH265ExtensionName* = "VK_KHR_video_decode_h265" # Extension: VK_KHR_global_priority - VK_KHR_GLOBAL_PRIORITY_SPEC_VERSION* = 1 - VK_KHR_GLOBAL_PRIORITY_EXTENSION_NAME* = "VK_KHR_global_priority" + VkKhrGlobalPrioritySpecVersion* = 1 + VkKhrGlobalPriorityExtensionName* = "VK_KHR_global_priority" # Extension: VK_AMD_memory_overallocation_behavior - VK_AMD_MEMORY_OVERALLOCATION_BEHAVIOR_SPEC_VERSION* = 1 - VK_AMD_MEMORY_OVERALLOCATION_BEHAVIOR_EXTENSION_NAME* = "VK_AMD_memory_overallocation_behavior" + VkAmdMemoryOverallocationBehaviorSpecVersion* = 1 + VkAmdMemoryOverallocationBehaviorExtensionName* = "VK_AMD_memory_overallocation_behavior" # Extension: VK_EXT_vertex_attribute_divisor - VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_SPEC_VERSION* = 3 - VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME* = "VK_EXT_vertex_attribute_divisor" + VkExtVertexAttributeDivisorSpecVersion* = 3 + VkExtVertexAttributeDivisorExtensionName* = "VK_EXT_vertex_attribute_divisor" # Extension: VK_GGP_frame_token - VK_GGP_FRAME_TOKEN_SPEC_VERSION* = 1 - VK_GGP_FRAME_TOKEN_EXTENSION_NAME* = "VK_GGP_frame_token" + VkGgpFrameTokenSpecVersion* = 1 + VkGgpFrameTokenExtensionName* = "VK_GGP_frame_token" # Extension: VK_EXT_pipeline_creation_feedback - VK_EXT_PIPELINE_CREATION_FEEDBACK_SPEC_VERSION* = 1 - VK_EXT_PIPELINE_CREATION_FEEDBACK_EXTENSION_NAME* = "VK_EXT_pipeline_creation_feedback" + VkExtPipelineCreationFeedbackSpecVersion* = 1 + VkExtPipelineCreationFeedbackExtensionName* = "VK_EXT_pipeline_creation_feedback" # Extension: VK_KHR_driver_properties - VK_KHR_DRIVER_PROPERTIES_SPEC_VERSION* = 1 - VK_KHR_DRIVER_PROPERTIES_EXTENSION_NAME* = "VK_KHR_driver_properties" + VkKhrDriverPropertiesSpecVersion* = 1 + VkKhrDriverPropertiesExtensionName* = "VK_KHR_driver_properties" # Extension: VK_KHR_shader_float_controls - VK_KHR_SHADER_FLOAT_CONTROLS_SPEC_VERSION* = 4 - VK_KHR_SHADER_FLOAT_CONTROLS_EXTENSION_NAME* = "VK_KHR_shader_float_controls" + VkKhrShaderFloatControlsSpecVersion* = 4 + VkKhrShaderFloatControlsExtensionName* = "VK_KHR_shader_float_controls" # Extension: VK_NV_shader_subgroup_partitioned - VK_NV_SHADER_SUBGROUP_PARTITIONED_SPEC_VERSION* = 1 - VK_NV_SHADER_SUBGROUP_PARTITIONED_EXTENSION_NAME* = "VK_NV_shader_subgroup_partitioned" + VkNvShaderSubgroupPartitionedSpecVersion* = 1 + VkNvShaderSubgroupPartitionedExtensionName* = "VK_NV_shader_subgroup_partitioned" # Extension: VK_KHR_depth_stencil_resolve - VK_KHR_DEPTH_STENCIL_RESOLVE_SPEC_VERSION* = 1 - VK_KHR_DEPTH_STENCIL_RESOLVE_EXTENSION_NAME* = "VK_KHR_depth_stencil_resolve" + VkKhrDepthStencilResolveSpecVersion* = 1 + VkKhrDepthStencilResolveExtensionName* = "VK_KHR_depth_stencil_resolve" # Extension: VK_KHR_swapchain_mutable_format - VK_KHR_SWAPCHAIN_MUTABLE_FORMAT_SPEC_VERSION* = 1 - VK_KHR_SWAPCHAIN_MUTABLE_FORMAT_EXTENSION_NAME* = "VK_KHR_swapchain_mutable_format" + VkKhrSwapchainMutableFormatSpecVersion* = 1 + VkKhrSwapchainMutableFormatExtensionName* = "VK_KHR_swapchain_mutable_format" # Extension: VK_NV_compute_shader_derivatives - VK_NV_COMPUTE_SHADER_DERIVATIVES_SPEC_VERSION* = 1 - VK_NV_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME* = "VK_NV_compute_shader_derivatives" + VkNvComputeShaderDerivativesSpecVersion* = 1 + VkNvComputeShaderDerivativesExtensionName* = "VK_NV_compute_shader_derivatives" # Extension: VK_NV_mesh_shader - VK_NV_MESH_SHADER_SPEC_VERSION* = 1 - VK_NV_MESH_SHADER_EXTENSION_NAME* = "VK_NV_mesh_shader" + VkNvMeshShaderSpecVersion* = 1 + VkNvMeshShaderExtensionName* = "VK_NV_mesh_shader" # Extension: VK_NV_fragment_shader_barycentric - VK_NV_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION* = 1 - VK_NV_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME* = "VK_NV_fragment_shader_barycentric" + VkNvFragmentShaderBarycentricSpecVersion* = 1 + VkNvFragmentShaderBarycentricExtensionName* = "VK_NV_fragment_shader_barycentric" # Extension: VK_NV_shader_image_footprint - VK_NV_SHADER_IMAGE_FOOTPRINT_SPEC_VERSION* = 2 - VK_NV_SHADER_IMAGE_FOOTPRINT_EXTENSION_NAME* = "VK_NV_shader_image_footprint" + VkNvShaderImageFootprintSpecVersion* = 2 + VkNvShaderImageFootprintExtensionName* = "VK_NV_shader_image_footprint" # Extension: VK_NV_scissor_exclusive - VK_NV_SCISSOR_EXCLUSIVE_SPEC_VERSION* = 2 - VK_NV_SCISSOR_EXCLUSIVE_EXTENSION_NAME* = "VK_NV_scissor_exclusive" + VkNvScissorExclusiveSpecVersion* = 2 + VkNvScissorExclusiveExtensionName* = "VK_NV_scissor_exclusive" # Extension: VK_NV_device_diagnostic_checkpoints - VK_NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_SPEC_VERSION* = 2 - VK_NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_EXTENSION_NAME* = "VK_NV_device_diagnostic_checkpoints" + VkNvDeviceDiagnosticCheckpointsSpecVersion* = 2 + VkNvDeviceDiagnosticCheckpointsExtensionName* = "VK_NV_device_diagnostic_checkpoints" # Extension: VK_KHR_timeline_semaphore - VK_KHR_TIMELINE_SEMAPHORE_SPEC_VERSION* = 2 - VK_KHR_TIMELINE_SEMAPHORE_EXTENSION_NAME* = "VK_KHR_timeline_semaphore" + VkKhrTimelineSemaphoreSpecVersion* = 2 + VkKhrTimelineSemaphoreExtensionName* = "VK_KHR_timeline_semaphore" # Extension: VK_INTEL_shader_integer_functions2 - VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_SPEC_VERSION* = 1 - VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_EXTENSION_NAME* = "VK_INTEL_shader_integer_functions2" + VkIntelShaderIntegerFunctions2SpecVersion* = 1 + VkIntelShaderIntegerFunctions2ExtensionName* = "VK_INTEL_shader_integer_functions2" # Extension: VK_INTEL_performance_query - VK_INTEL_PERFORMANCE_QUERY_SPEC_VERSION* = 2 - VK_INTEL_PERFORMANCE_QUERY_EXTENSION_NAME* = "VK_INTEL_performance_query" + VkIntelPerformanceQuerySpecVersion* = 2 + VkIntelPerformanceQueryExtensionName* = "VK_INTEL_performance_query" # Extension: VK_KHR_vulkan_memory_model - VK_KHR_VULKAN_MEMORY_MODEL_SPEC_VERSION* = 3 - VK_KHR_VULKAN_MEMORY_MODEL_EXTENSION_NAME* = "VK_KHR_vulkan_memory_model" + VkKhrVulkanMemoryModelSpecVersion* = 3 + VkKhrVulkanMemoryModelExtensionName* = "VK_KHR_vulkan_memory_model" # Extension: VK_EXT_pci_bus_info - VK_EXT_PCI_BUS_INFO_SPEC_VERSION* = 2 - VK_EXT_PCI_BUS_INFO_EXTENSION_NAME* = "VK_EXT_pci_bus_info" + VkExtPciBusInfoSpecVersion* = 2 + VkExtPciBusInfoExtensionName* = "VK_EXT_pci_bus_info" # Extension: VK_AMD_display_native_hdr - VK_AMD_DISPLAY_NATIVE_HDR_SPEC_VERSION* = 1 - VK_AMD_DISPLAY_NATIVE_HDR_EXTENSION_NAME* = "VK_AMD_display_native_hdr" + VkAmdDisplayNativeHdrSpecVersion* = 1 + VkAmdDisplayNativeHdrExtensionName* = "VK_AMD_display_native_hdr" # Extension: VK_FUCHSIA_imagepipe_surface - VK_FUCHSIA_IMAGEPIPE_SURFACE_SPEC_VERSION* = 1 - VK_FUCHSIA_IMAGEPIPE_SURFACE_EXTENSION_NAME* = "VK_FUCHSIA_imagepipe_surface" + VkFuchsiaImagepipeSurfaceSpecVersion* = 1 + VkFuchsiaImagepipeSurfaceExtensionName* = "VK_FUCHSIA_imagepipe_surface" # Extension: VK_KHR_shader_terminate_invocation - VK_KHR_SHADER_TERMINATE_INVOCATION_SPEC_VERSION* = 1 - VK_KHR_SHADER_TERMINATE_INVOCATION_EXTENSION_NAME* = "VK_KHR_shader_terminate_invocation" + VkKhrShaderTerminateInvocationSpecVersion* = 1 + VkKhrShaderTerminateInvocationExtensionName* = "VK_KHR_shader_terminate_invocation" # Extension: VK_EXT_metal_surface - VK_EXT_METAL_SURFACE_SPEC_VERSION* = 1 - VK_EXT_METAL_SURFACE_EXTENSION_NAME* = "VK_EXT_metal_surface" + VkExtMetalSurfaceSpecVersion* = 1 + VkExtMetalSurfaceExtensionName* = "VK_EXT_metal_surface" # Extension: VK_EXT_fragment_density_map - VK_EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION* = 2 - VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME* = "VK_EXT_fragment_density_map" + VkExtFragmentDensityMapSpecVersion* = 2 + VkExtFragmentDensityMapExtensionName* = "VK_EXT_fragment_density_map" # Extension: VK_EXT_scalar_block_layout - VK_EXT_SCALAR_BLOCK_LAYOUT_SPEC_VERSION* = 1 - VK_EXT_SCALAR_BLOCK_LAYOUT_EXTENSION_NAME* = "VK_EXT_scalar_block_layout" + VkExtScalarBlockLayoutSpecVersion* = 1 + VkExtScalarBlockLayoutExtensionName* = "VK_EXT_scalar_block_layout" # Extension: VK_GOOGLE_hlsl_functionality1 - VK_GOOGLE_HLSL_FUNCTIONALITY_1_SPEC_VERSION* = 1 - VK_GOOGLE_HLSL_FUNCTIONALITY_1_EXTENSION_NAME* = "VK_GOOGLE_hlsl_functionality1" + VkGoogleHlslFunctionality1SpecVersion* = 1 + VkGoogleHlslFunctionality1ExtensionName* = "VK_GOOGLE_hlsl_functionality1" # Extension: VK_GOOGLE_decorate_string - VK_GOOGLE_DECORATE_STRING_SPEC_VERSION* = 1 - VK_GOOGLE_DECORATE_STRING_EXTENSION_NAME* = "VK_GOOGLE_decorate_string" + VkGoogleDecorateStringSpecVersion* = 1 + VkGoogleDecorateStringExtensionName* = "VK_GOOGLE_decorate_string" # Extension: VK_EXT_subgroup_size_control - VK_EXT_SUBGROUP_SIZE_CONTROL_SPEC_VERSION* = 2 - VK_EXT_SUBGROUP_SIZE_CONTROL_EXTENSION_NAME* = "VK_EXT_subgroup_size_control" + VkExtSubgroupSizeControlSpecVersion* = 2 + VkExtSubgroupSizeControlExtensionName* = "VK_EXT_subgroup_size_control" # Extension: VK_KHR_fragment_shading_rate - VK_KHR_FRAGMENT_SHADING_RATE_SPEC_VERSION* = 2 - VK_KHR_FRAGMENT_SHADING_RATE_EXTENSION_NAME* = "VK_KHR_fragment_shading_rate" + VkKhrFragmentShadingRateSpecVersion* = 2 + VkKhrFragmentShadingRateExtensionName* = "VK_KHR_fragment_shading_rate" # Extension: VK_AMD_shader_core_properties2 - VK_AMD_SHADER_CORE_PROPERTIES_2_SPEC_VERSION* = 1 - VK_AMD_SHADER_CORE_PROPERTIES_2_EXTENSION_NAME* = "VK_AMD_shader_core_properties2" + VkAmdShaderCoreProperties2SpecVersion* = 1 + VkAmdShaderCoreProperties2ExtensionName* = "VK_AMD_shader_core_properties2" # Extension: VK_AMD_device_coherent_memory - VK_AMD_DEVICE_COHERENT_MEMORY_SPEC_VERSION* = 1 - VK_AMD_DEVICE_COHERENT_MEMORY_EXTENSION_NAME* = "VK_AMD_device_coherent_memory" + VkAmdDeviceCoherentMemorySpecVersion* = 1 + VkAmdDeviceCoherentMemoryExtensionName* = "VK_AMD_device_coherent_memory" # Extension: VK_KHR_dynamic_rendering_local_read - VK_KHR_DYNAMIC_RENDERING_LOCAL_READ_SPEC_VERSION* = 1 - VK_KHR_DYNAMIC_RENDERING_LOCAL_READ_EXTENSION_NAME* = "VK_KHR_dynamic_rendering_local_read" + VkKhrDynamicRenderingLocalReadSpecVersion* = 1 + VkKhrDynamicRenderingLocalReadExtensionName* = "VK_KHR_dynamic_rendering_local_read" # Extension: VK_EXT_shader_image_atomic_int64 - VK_EXT_SHADER_IMAGE_ATOMIC_INT64_SPEC_VERSION* = 1 - VK_EXT_SHADER_IMAGE_ATOMIC_INT64_EXTENSION_NAME* = "VK_EXT_shader_image_atomic_int64" + VkExtShaderImageAtomicInt64SpecVersion* = 1 + VkExtShaderImageAtomicInt64ExtensionName* = "VK_EXT_shader_image_atomic_int64" # Extension: VK_KHR_shader_quad_control - VK_KHR_SHADER_QUAD_CONTROL_SPEC_VERSION* = 1 - VK_KHR_SHADER_QUAD_CONTROL_EXTENSION_NAME* = "VK_KHR_shader_quad_control" + VkKhrShaderQuadControlSpecVersion* = 1 + VkKhrShaderQuadControlExtensionName* = "VK_KHR_shader_quad_control" # Extension: VK_KHR_spirv_1_4 - VK_KHR_SPIRV_1_4_SPEC_VERSION* = 1 - VK_KHR_SPIRV_1_4_EXTENSION_NAME* = "VK_KHR_spirv_1_4" + VkKhrSpirv14SpecVersion* = 1 + VkKhrSpirv14ExtensionName* = "VK_KHR_spirv_1_4" # Extension: VK_EXT_memory_budget - VK_EXT_MEMORY_BUDGET_SPEC_VERSION* = 1 - VK_EXT_MEMORY_BUDGET_EXTENSION_NAME* = "VK_EXT_memory_budget" + VkExtMemoryBudgetSpecVersion* = 1 + VkExtMemoryBudgetExtensionName* = "VK_EXT_memory_budget" # Extension: VK_EXT_memory_priority - VK_EXT_MEMORY_PRIORITY_SPEC_VERSION* = 1 - VK_EXT_MEMORY_PRIORITY_EXTENSION_NAME* = "VK_EXT_memory_priority" + VkExtMemoryPrioritySpecVersion* = 1 + VkExtMemoryPriorityExtensionName* = "VK_EXT_memory_priority" # Extension: VK_KHR_surface_protected_capabilities - VK_KHR_SURFACE_PROTECTED_CAPABILITIES_SPEC_VERSION* = 1 - VK_KHR_SURFACE_PROTECTED_CAPABILITIES_EXTENSION_NAME* = "VK_KHR_surface_protected_capabilities" + VkKhrSurfaceProtectedCapabilitiesSpecVersion* = 1 + VkKhrSurfaceProtectedCapabilitiesExtensionName* = "VK_KHR_surface_protected_capabilities" # Extension: VK_NV_dedicated_allocation_image_aliasing - VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_SPEC_VERSION* = 1 - VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_EXTENSION_NAME* = "VK_NV_dedicated_allocation_image_aliasing" + VkNvDedicatedAllocationImageAliasingSpecVersion* = 1 + VkNvDedicatedAllocationImageAliasingExtensionName* = "VK_NV_dedicated_allocation_image_aliasing" # Extension: VK_KHR_separate_depth_stencil_layouts - VK_KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_SPEC_VERSION* = 1 - VK_KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_EXTENSION_NAME* = "VK_KHR_separate_depth_stencil_layouts" + VkKhrSeparateDepthStencilLayoutsSpecVersion* = 1 + VkKhrSeparateDepthStencilLayoutsExtensionName* = "VK_KHR_separate_depth_stencil_layouts" # Extension: VK_EXT_buffer_device_address - VK_EXT_BUFFER_DEVICE_ADDRESS_SPEC_VERSION* = 2 - VK_EXT_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME* = "VK_EXT_buffer_device_address" + VkExtBufferDeviceAddressSpecVersion* = 2 + VkExtBufferDeviceAddressExtensionName* = "VK_EXT_buffer_device_address" # Extension: VK_EXT_tooling_info - VK_EXT_TOOLING_INFO_SPEC_VERSION* = 1 - VK_EXT_TOOLING_INFO_EXTENSION_NAME* = "VK_EXT_tooling_info" + VkExtToolingInfoSpecVersion* = 1 + VkExtToolingInfoExtensionName* = "VK_EXT_tooling_info" # Extension: VK_EXT_separate_stencil_usage - VK_EXT_SEPARATE_STENCIL_USAGE_SPEC_VERSION* = 1 - VK_EXT_SEPARATE_STENCIL_USAGE_EXTENSION_NAME* = "VK_EXT_separate_stencil_usage" + VkExtSeparateStencilUsageSpecVersion* = 1 + VkExtSeparateStencilUsageExtensionName* = "VK_EXT_separate_stencil_usage" # Extension: VK_EXT_validation_features - VK_EXT_VALIDATION_FEATURES_SPEC_VERSION* = 6 - VK_EXT_VALIDATION_FEATURES_EXTENSION_NAME* = "VK_EXT_validation_features" + VkExtValidationFeaturesSpecVersion* = 6 + VkExtValidationFeaturesExtensionName* = "VK_EXT_validation_features" # Extension: VK_KHR_present_wait - VK_KHR_PRESENT_WAIT_SPEC_VERSION* = 1 - VK_KHR_PRESENT_WAIT_EXTENSION_NAME* = "VK_KHR_present_wait" + VkKhrPresentWaitSpecVersion* = 1 + VkKhrPresentWaitExtensionName* = "VK_KHR_present_wait" # Extension: VK_NV_cooperative_matrix - VK_NV_COOPERATIVE_MATRIX_SPEC_VERSION* = 1 - VK_NV_COOPERATIVE_MATRIX_EXTENSION_NAME* = "VK_NV_cooperative_matrix" + VkNvCooperativeMatrixSpecVersion* = 1 + VkNvCooperativeMatrixExtensionName* = "VK_NV_cooperative_matrix" # Extension: VK_NV_coverage_reduction_mode - VK_NV_COVERAGE_REDUCTION_MODE_SPEC_VERSION* = 1 - VK_NV_COVERAGE_REDUCTION_MODE_EXTENSION_NAME* = "VK_NV_coverage_reduction_mode" + VkNvCoverageReductionModeSpecVersion* = 1 + VkNvCoverageReductionModeExtensionName* = "VK_NV_coverage_reduction_mode" # Extension: VK_EXT_fragment_shader_interlock - VK_EXT_FRAGMENT_SHADER_INTERLOCK_SPEC_VERSION* = 1 - VK_EXT_FRAGMENT_SHADER_INTERLOCK_EXTENSION_NAME* = "VK_EXT_fragment_shader_interlock" + VkExtFragmentShaderInterlockSpecVersion* = 1 + VkExtFragmentShaderInterlockExtensionName* = "VK_EXT_fragment_shader_interlock" # Extension: VK_EXT_ycbcr_image_arrays - VK_EXT_YCBCR_IMAGE_ARRAYS_SPEC_VERSION* = 1 - VK_EXT_YCBCR_IMAGE_ARRAYS_EXTENSION_NAME* = "VK_EXT_ycbcr_image_arrays" + VkExtYcbcrImageArraysSpecVersion* = 1 + VkExtYcbcrImageArraysExtensionName* = "VK_EXT_ycbcr_image_arrays" # Extension: VK_KHR_uniform_buffer_standard_layout - VK_KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_SPEC_VERSION* = 1 - VK_KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_EXTENSION_NAME* = "VK_KHR_uniform_buffer_standard_layout" + VkKhrUniformBufferStandardLayoutSpecVersion* = 1 + VkKhrUniformBufferStandardLayoutExtensionName* = "VK_KHR_uniform_buffer_standard_layout" # Extension: VK_EXT_provoking_vertex - VK_EXT_PROVOKING_VERTEX_SPEC_VERSION* = 1 - VK_EXT_PROVOKING_VERTEX_EXTENSION_NAME* = "VK_EXT_provoking_vertex" + VkExtProvokingVertexSpecVersion* = 1 + VkExtProvokingVertexExtensionName* = "VK_EXT_provoking_vertex" # Extension: VK_EXT_full_screen_exclusive - VK_EXT_FULL_SCREEN_EXCLUSIVE_SPEC_VERSION* = 4 - VK_EXT_FULL_SCREEN_EXCLUSIVE_EXTENSION_NAME* = "VK_EXT_full_screen_exclusive" + VkExtFullScreenExclusiveSpecVersion* = 4 + VkExtFullScreenExclusiveExtensionName* = "VK_EXT_full_screen_exclusive" # Extension: VK_EXT_headless_surface - VK_EXT_HEADLESS_SURFACE_SPEC_VERSION* = 1 - VK_EXT_HEADLESS_SURFACE_EXTENSION_NAME* = "VK_EXT_headless_surface" + VkExtHeadlessSurfaceSpecVersion* = 1 + VkExtHeadlessSurfaceExtensionName* = "VK_EXT_headless_surface" # Extension: VK_KHR_buffer_device_address - VK_KHR_BUFFER_DEVICE_ADDRESS_SPEC_VERSION* = 1 - VK_KHR_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME* = "VK_KHR_buffer_device_address" + VkKhrBufferDeviceAddressSpecVersion* = 1 + VkKhrBufferDeviceAddressExtensionName* = "VK_KHR_buffer_device_address" # Extension: VK_EXT_line_rasterization - VK_EXT_LINE_RASTERIZATION_SPEC_VERSION* = 1 - VK_EXT_LINE_RASTERIZATION_EXTENSION_NAME* = "VK_EXT_line_rasterization" + VkExtLineRasterizationSpecVersion* = 1 + VkExtLineRasterizationExtensionName* = "VK_EXT_line_rasterization" # Extension: VK_EXT_shader_atomic_float - VK_EXT_SHADER_ATOMIC_FLOAT_SPEC_VERSION* = 1 - VK_EXT_SHADER_ATOMIC_FLOAT_EXTENSION_NAME* = "VK_EXT_shader_atomic_float" + VkExtShaderAtomicFloatSpecVersion* = 1 + VkExtShaderAtomicFloatExtensionName* = "VK_EXT_shader_atomic_float" # Extension: VK_EXT_host_query_reset - VK_EXT_HOST_QUERY_RESET_SPEC_VERSION* = 1 - VK_EXT_HOST_QUERY_RESET_EXTENSION_NAME* = "VK_EXT_host_query_reset" + VkExtHostQueryResetSpecVersion* = 1 + VkExtHostQueryResetExtensionName* = "VK_EXT_host_query_reset" # Extension: VK_EXT_index_type_uint8 - VK_EXT_INDEX_TYPE_UINT8_SPEC_VERSION* = 1 - VK_EXT_INDEX_TYPE_UINT8_EXTENSION_NAME* = "VK_EXT_index_type_uint8" + VkExtIndexTypeUint8SpecVersion* = 1 + VkExtIndexTypeUint8ExtensionName* = "VK_EXT_index_type_uint8" # Extension: VK_EXT_extended_dynamic_state - VK_EXT_EXTENDED_DYNAMIC_STATE_SPEC_VERSION* = 1 - VK_EXT_EXTENDED_DYNAMIC_STATE_EXTENSION_NAME* = "VK_EXT_extended_dynamic_state" + VkExtExtendedDynamicStateSpecVersion* = 1 + VkExtExtendedDynamicStateExtensionName* = "VK_EXT_extended_dynamic_state" # Extension: VK_KHR_deferred_host_operations - VK_KHR_DEFERRED_HOST_OPERATIONS_SPEC_VERSION* = 4 - VK_KHR_DEFERRED_HOST_OPERATIONS_EXTENSION_NAME* = "VK_KHR_deferred_host_operations" + VkKhrDeferredHostOperationsSpecVersion* = 4 + VkKhrDeferredHostOperationsExtensionName* = "VK_KHR_deferred_host_operations" # Extension: VK_KHR_pipeline_executable_properties - VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_SPEC_VERSION* = 1 - VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_EXTENSION_NAME* = "VK_KHR_pipeline_executable_properties" + VkKhrPipelineExecutablePropertiesSpecVersion* = 1 + VkKhrPipelineExecutablePropertiesExtensionName* = "VK_KHR_pipeline_executable_properties" # Extension: VK_EXT_host_image_copy - VK_EXT_HOST_IMAGE_COPY_SPEC_VERSION* = 1 - VK_EXT_HOST_IMAGE_COPY_EXTENSION_NAME* = "VK_EXT_host_image_copy" + VkExtHostImageCopySpecVersion* = 1 + VkExtHostImageCopyExtensionName* = "VK_EXT_host_image_copy" # Extension: VK_KHR_map_memory2 - VK_KHR_MAP_MEMORY_2_SPEC_VERSION* = 1 - VK_KHR_MAP_MEMORY_2_EXTENSION_NAME* = "VK_KHR_map_memory2" + VkKhrMapMemory2SpecVersion* = 1 + VkKhrMapMemory2ExtensionName* = "VK_KHR_map_memory2" # Extension: VK_EXT_map_memory_placed - VK_EXT_MAP_MEMORY_PLACED_SPEC_VERSION* = 1 - VK_EXT_MAP_MEMORY_PLACED_EXTENSION_NAME* = "VK_EXT_map_memory_placed" + VkExtMapMemoryPlacedSpecVersion* = 1 + VkExtMapMemoryPlacedExtensionName* = "VK_EXT_map_memory_placed" # Extension: VK_EXT_shader_atomic_float2 - VK_EXT_SHADER_ATOMIC_FLOAT_2_SPEC_VERSION* = 1 - VK_EXT_SHADER_ATOMIC_FLOAT_2_EXTENSION_NAME* = "VK_EXT_shader_atomic_float2" + VkExtShaderAtomicFloat2SpecVersion* = 1 + VkExtShaderAtomicFloat2ExtensionName* = "VK_EXT_shader_atomic_float2" # Extension: VK_EXT_surface_maintenance1 - VK_EXT_SURFACE_MAINTENANCE_1_SPEC_VERSION* = 1 - VK_EXT_SURFACE_MAINTENANCE_1_EXTENSION_NAME* = "VK_EXT_surface_maintenance1" + VkExtSurfaceMaintenance1SpecVersion* = 1 + VkExtSurfaceMaintenance1ExtensionName* = "VK_EXT_surface_maintenance1" # Extension: VK_EXT_swapchain_maintenance1 - VK_EXT_SWAPCHAIN_MAINTENANCE_1_SPEC_VERSION* = 1 - VK_EXT_SWAPCHAIN_MAINTENANCE_1_EXTENSION_NAME* = "VK_EXT_swapchain_maintenance1" + VkExtSwapchainMaintenance1SpecVersion* = 1 + VkExtSwapchainMaintenance1ExtensionName* = "VK_EXT_swapchain_maintenance1" # Extension: VK_EXT_shader_demote_to_helper_invocation - VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_SPEC_VERSION* = 1 - VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_EXTENSION_NAME* = "VK_EXT_shader_demote_to_helper_invocation" + VkExtShaderDemoteToHelperInvocationSpecVersion* = 1 + VkExtShaderDemoteToHelperInvocationExtensionName* = "VK_EXT_shader_demote_to_helper_invocation" # Extension: VK_NV_device_generated_commands - VK_NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION* = 3 - VK_NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME* = "VK_NV_device_generated_commands" + VkNvDeviceGeneratedCommandsSpecVersion* = 3 + VkNvDeviceGeneratedCommandsExtensionName* = "VK_NV_device_generated_commands" # Extension: VK_NV_inherited_viewport_scissor - VK_NV_INHERITED_VIEWPORT_SCISSOR_SPEC_VERSION* = 1 - VK_NV_INHERITED_VIEWPORT_SCISSOR_EXTENSION_NAME* = "VK_NV_inherited_viewport_scissor" + VkNvInheritedViewportScissorSpecVersion* = 1 + VkNvInheritedViewportScissorExtensionName* = "VK_NV_inherited_viewport_scissor" # Extension: VK_KHR_shader_integer_dot_product - VK_KHR_SHADER_INTEGER_DOT_PRODUCT_SPEC_VERSION* = 1 - VK_KHR_SHADER_INTEGER_DOT_PRODUCT_EXTENSION_NAME* = "VK_KHR_shader_integer_dot_product" + VkKhrShaderIntegerDotProductSpecVersion* = 1 + VkKhrShaderIntegerDotProductExtensionName* = "VK_KHR_shader_integer_dot_product" # Extension: VK_EXT_texel_buffer_alignment - VK_EXT_TEXEL_BUFFER_ALIGNMENT_SPEC_VERSION* = 1 - VK_EXT_TEXEL_BUFFER_ALIGNMENT_EXTENSION_NAME* = "VK_EXT_texel_buffer_alignment" + VkExtTexelBufferAlignmentSpecVersion* = 1 + VkExtTexelBufferAlignmentExtensionName* = "VK_EXT_texel_buffer_alignment" # Extension: VK_QCOM_render_pass_transform - VK_QCOM_RENDER_PASS_TRANSFORM_SPEC_VERSION* = 4 - VK_QCOM_RENDER_PASS_TRANSFORM_EXTENSION_NAME* = "VK_QCOM_render_pass_transform" + VkQcomRenderPassTransformSpecVersion* = 4 + VkQcomRenderPassTransformExtensionName* = "VK_QCOM_render_pass_transform" # Extension: VK_EXT_depth_bias_control - VK_EXT_DEPTH_BIAS_CONTROL_SPEC_VERSION* = 1 - VK_EXT_DEPTH_BIAS_CONTROL_EXTENSION_NAME* = "VK_EXT_depth_bias_control" + VkExtDepthBiasControlSpecVersion* = 1 + VkExtDepthBiasControlExtensionName* = "VK_EXT_depth_bias_control" # Extension: VK_EXT_device_memory_report - VK_EXT_DEVICE_MEMORY_REPORT_SPEC_VERSION* = 2 - VK_EXT_DEVICE_MEMORY_REPORT_EXTENSION_NAME* = "VK_EXT_device_memory_report" + VkExtDeviceMemoryReportSpecVersion* = 2 + VkExtDeviceMemoryReportExtensionName* = "VK_EXT_device_memory_report" # Extension: VK_EXT_acquire_drm_display - VK_EXT_ACQUIRE_DRM_DISPLAY_SPEC_VERSION* = 1 - VK_EXT_ACQUIRE_DRM_DISPLAY_EXTENSION_NAME* = "VK_EXT_acquire_drm_display" + VkExtAcquireDrmDisplaySpecVersion* = 1 + VkExtAcquireDrmDisplayExtensionName* = "VK_EXT_acquire_drm_display" # Extension: VK_EXT_robustness2 - VK_EXT_ROBUSTNESS_2_SPEC_VERSION* = 1 - VK_EXT_ROBUSTNESS_2_EXTENSION_NAME* = "VK_EXT_robustness2" + VkExtRobustness2SpecVersion* = 1 + VkExtRobustness2ExtensionName* = "VK_EXT_robustness2" # Extension: VK_EXT_custom_border_color - VK_EXT_CUSTOM_BORDER_COLOR_SPEC_VERSION* = 12 - VK_EXT_CUSTOM_BORDER_COLOR_EXTENSION_NAME* = "VK_EXT_custom_border_color" + VkExtCustomBorderColorSpecVersion* = 12 + VkExtCustomBorderColorExtensionName* = "VK_EXT_custom_border_color" # Extension: VK_GOOGLE_user_type - VK_GOOGLE_USER_TYPE_SPEC_VERSION* = 1 - VK_GOOGLE_USER_TYPE_EXTENSION_NAME* = "VK_GOOGLE_user_type" + VkGoogleUserTypeSpecVersion* = 1 + VkGoogleUserTypeExtensionName* = "VK_GOOGLE_user_type" # Extension: VK_KHR_pipeline_library - VK_KHR_PIPELINE_LIBRARY_SPEC_VERSION* = 1 - VK_KHR_PIPELINE_LIBRARY_EXTENSION_NAME* = "VK_KHR_pipeline_library" + VkKhrPipelineLibrarySpecVersion* = 1 + VkKhrPipelineLibraryExtensionName* = "VK_KHR_pipeline_library" # Extension: VK_NV_present_barrier - VK_NV_PRESENT_BARRIER_SPEC_VERSION* = 1 - VK_NV_PRESENT_BARRIER_EXTENSION_NAME* = "VK_NV_present_barrier" + VkNvPresentBarrierSpecVersion* = 1 + VkNvPresentBarrierExtensionName* = "VK_NV_present_barrier" # Extension: VK_KHR_shader_non_semantic_info - VK_KHR_SHADER_NON_SEMANTIC_INFO_SPEC_VERSION* = 1 - VK_KHR_SHADER_NON_SEMANTIC_INFO_EXTENSION_NAME* = "VK_KHR_shader_non_semantic_info" + VkKhrShaderNonSemanticInfoSpecVersion* = 1 + VkKhrShaderNonSemanticInfoExtensionName* = "VK_KHR_shader_non_semantic_info" # Extension: VK_KHR_present_id - VK_KHR_PRESENT_ID_SPEC_VERSION* = 1 - VK_KHR_PRESENT_ID_EXTENSION_NAME* = "VK_KHR_present_id" + VkKhrPresentIdSpecVersion* = 1 + VkKhrPresentIdExtensionName* = "VK_KHR_present_id" # Extension: VK_EXT_private_data - VK_EXT_PRIVATE_DATA_SPEC_VERSION* = 1 - VK_EXT_PRIVATE_DATA_EXTENSION_NAME* = "VK_EXT_private_data" + VkExtPrivateDataSpecVersion* = 1 + VkExtPrivateDataExtensionName* = "VK_EXT_private_data" # Extension: VK_EXT_pipeline_creation_cache_control - VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_SPEC_VERSION* = 3 - VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_EXTENSION_NAME* = "VK_EXT_pipeline_creation_cache_control" + VkExtPipelineCreationCacheControlSpecVersion* = 3 + VkExtPipelineCreationCacheControlExtensionName* = "VK_EXT_pipeline_creation_cache_control" # Extension: VK_KHR_video_encode_queue - VK_KHR_VIDEO_ENCODE_QUEUE_SPEC_VERSION* = 12 - VK_KHR_VIDEO_ENCODE_QUEUE_EXTENSION_NAME* = "VK_KHR_video_encode_queue" + VkKhrVideoEncodeQueueSpecVersion* = 12 + VkKhrVideoEncodeQueueExtensionName* = "VK_KHR_video_encode_queue" # Extension: VK_NV_device_diagnostics_config - VK_NV_DEVICE_DIAGNOSTICS_CONFIG_SPEC_VERSION* = 2 - VK_NV_DEVICE_DIAGNOSTICS_CONFIG_EXTENSION_NAME* = "VK_NV_device_diagnostics_config" + VkNvDeviceDiagnosticsConfigSpecVersion* = 2 + VkNvDeviceDiagnosticsConfigExtensionName* = "VK_NV_device_diagnostics_config" # Extension: VK_QCOM_render_pass_store_ops - VK_QCOM_RENDER_PASS_STORE_OPS_SPEC_VERSION* = 2 - VK_QCOM_RENDER_PASS_STORE_OPS_EXTENSION_NAME* = "VK_QCOM_render_pass_store_ops" + VkQcomRenderPassStoreOpsSpecVersion* = 2 + VkQcomRenderPassStoreOpsExtensionName* = "VK_QCOM_render_pass_store_ops" # Extension: VK_NV_cuda_kernel_launch - VK_NV_CUDA_KERNEL_LAUNCH_SPEC_VERSION* = 2 - VK_NV_CUDA_KERNEL_LAUNCH_EXTENSION_NAME* = "VK_NV_cuda_kernel_launch" + VkNvCudaKernelLaunchSpecVersion* = 2 + VkNvCudaKernelLaunchExtensionName* = "VK_NV_cuda_kernel_launch" # Extension: VK_KHR_object_refresh - VK_KHR_OBJECT_REFRESH_SPEC_VERSION* = 1 - VK_KHR_OBJECT_REFRESH_EXTENSION_NAME* = "VK_KHR_object_refresh" + VkKhrObjectRefreshSpecVersion* = 1 + VkKhrObjectRefreshExtensionName* = "VK_KHR_object_refresh" # Extension: VK_NV_low_latency - VK_NV_LOW_LATENCY_SPEC_VERSION* = 1 - VK_NV_LOW_LATENCY_EXTENSION_NAME* = "VK_NV_low_latency" + VkNvLowLatencySpecVersion* = 1 + VkNvLowLatencyExtensionName* = "VK_NV_low_latency" # Extension: VK_EXT_metal_objects - VK_EXT_METAL_OBJECTS_SPEC_VERSION* = 1 - VK_EXT_METAL_OBJECTS_EXTENSION_NAME* = "VK_EXT_metal_objects" + VkExtMetalObjectsSpecVersion* = 2 + VkExtMetalObjectsExtensionName* = "VK_EXT_metal_objects" # Extension: VK_KHR_synchronization2 - VK_KHR_SYNCHRONIZATION_2_SPEC_VERSION* = 1 - VK_KHR_SYNCHRONIZATION_2_EXTENSION_NAME* = "VK_KHR_synchronization2" + VkKhrSynchronization2SpecVersion* = 1 + VkKhrSynchronization2ExtensionName* = "VK_KHR_synchronization2" # Extension: VK_EXT_descriptor_buffer - VK_EXT_DESCRIPTOR_BUFFER_SPEC_VERSION* = 1 - VK_EXT_DESCRIPTOR_BUFFER_EXTENSION_NAME* = "VK_EXT_descriptor_buffer" + VkExtDescriptorBufferSpecVersion* = 1 + VkExtDescriptorBufferExtensionName* = "VK_EXT_descriptor_buffer" # Extension: VK_EXT_graphics_pipeline_library - VK_EXT_GRAPHICS_PIPELINE_LIBRARY_SPEC_VERSION* = 1 - VK_EXT_GRAPHICS_PIPELINE_LIBRARY_EXTENSION_NAME* = "VK_EXT_graphics_pipeline_library" + VkExtGraphicsPipelineLibrarySpecVersion* = 1 + VkExtGraphicsPipelineLibraryExtensionName* = "VK_EXT_graphics_pipeline_library" # Extension: VK_AMD_shader_early_and_late_fragment_tests - VK_AMD_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_SPEC_VERSION* = 1 - VK_AMD_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_EXTENSION_NAME* = "VK_AMD_shader_early_and_late_fragment_tests" + VkAmdShaderEarlyAndLateFragmentTestsSpecVersion* = 1 + VkAmdShaderEarlyAndLateFragmentTestsExtensionName* = "VK_AMD_shader_early_and_late_fragment_tests" # Extension: VK_KHR_fragment_shader_barycentric - VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION* = 1 - VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME* = "VK_KHR_fragment_shader_barycentric" + VkKhrFragmentShaderBarycentricSpecVersion* = 1 + VkKhrFragmentShaderBarycentricExtensionName* = "VK_KHR_fragment_shader_barycentric" # Extension: VK_KHR_shader_subgroup_uniform_control_flow - VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_SPEC_VERSION* = 1 - VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME* = "VK_KHR_shader_subgroup_uniform_control_flow" + VkKhrShaderSubgroupUniformControlFlowSpecVersion* = 1 + VkKhrShaderSubgroupUniformControlFlowExtensionName* = "VK_KHR_shader_subgroup_uniform_control_flow" # Extension: VK_KHR_zero_initialize_workgroup_memory - VK_KHR_ZERO_INITIALIZE_WORKGROUP_MEMORY_SPEC_VERSION* = 1 - VK_KHR_ZERO_INITIALIZE_WORKGROUP_MEMORY_EXTENSION_NAME* = "VK_KHR_zero_initialize_workgroup_memory" + VkKhrZeroInitializeWorkgroupMemorySpecVersion* = 1 + VkKhrZeroInitializeWorkgroupMemoryExtensionName* = "VK_KHR_zero_initialize_workgroup_memory" # Extension: VK_NV_fragment_shading_rate_enums - VK_NV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION* = 1 - VK_NV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME* = "VK_NV_fragment_shading_rate_enums" + VkNvFragmentShadingRateEnumsSpecVersion* = 1 + VkNvFragmentShadingRateEnumsExtensionName* = "VK_NV_fragment_shading_rate_enums" # Extension: VK_NV_ray_tracing_motion_blur - VK_NV_RAY_TRACING_MOTION_BLUR_SPEC_VERSION* = 1 - VK_NV_RAY_TRACING_MOTION_BLUR_EXTENSION_NAME* = "VK_NV_ray_tracing_motion_blur" + VkNvRayTracingMotionBlurSpecVersion* = 1 + VkNvRayTracingMotionBlurExtensionName* = "VK_NV_ray_tracing_motion_blur" # Extension: VK_EXT_mesh_shader - VK_EXT_MESH_SHADER_SPEC_VERSION* = 1 - VK_EXT_MESH_SHADER_EXTENSION_NAME* = "VK_EXT_mesh_shader" + VkExtMeshShaderSpecVersion* = 1 + VkExtMeshShaderExtensionName* = "VK_EXT_mesh_shader" # Extension: VK_EXT_ycbcr_2plane_444_formats - VK_EXT_YCBCR_2PLANE_444_FORMATS_SPEC_VERSION* = 1 - VK_EXT_YCBCR_2PLANE_444_FORMATS_EXTENSION_NAME* = "VK_EXT_ycbcr_2plane_444_formats" + VkExtYcbcr2plane444FormatsSpecVersion* = 1 + VkExtYcbcr2plane444FormatsExtensionName* = "VK_EXT_ycbcr_2plane_444_formats" # Extension: VK_EXT_fragment_density_map2 - VK_EXT_FRAGMENT_DENSITY_MAP_2_SPEC_VERSION* = 1 - VK_EXT_FRAGMENT_DENSITY_MAP_2_EXTENSION_NAME* = "VK_EXT_fragment_density_map2" + VkExtFragmentDensityMap2SpecVersion* = 1 + VkExtFragmentDensityMap2ExtensionName* = "VK_EXT_fragment_density_map2" # Extension: VK_QCOM_rotated_copy_commands - VK_QCOM_ROTATED_COPY_COMMANDS_SPEC_VERSION* = 2 - VK_QCOM_ROTATED_COPY_COMMANDS_EXTENSION_NAME* = "VK_QCOM_rotated_copy_commands" + VkQcomRotatedCopyCommandsSpecVersion* = 2 + VkQcomRotatedCopyCommandsExtensionName* = "VK_QCOM_rotated_copy_commands" # Extension: VK_EXT_image_robustness - VK_EXT_IMAGE_ROBUSTNESS_SPEC_VERSION* = 1 - VK_EXT_IMAGE_ROBUSTNESS_EXTENSION_NAME* = "VK_EXT_image_robustness" + VkExtImageRobustnessSpecVersion* = 1 + VkExtImageRobustnessExtensionName* = "VK_EXT_image_robustness" # Extension: VK_KHR_workgroup_memory_explicit_layout - VK_KHR_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_SPEC_VERSION* = 1 - VK_KHR_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_EXTENSION_NAME* = "VK_KHR_workgroup_memory_explicit_layout" + VkKhrWorkgroupMemoryExplicitLayoutSpecVersion* = 1 + VkKhrWorkgroupMemoryExplicitLayoutExtensionName* = "VK_KHR_workgroup_memory_explicit_layout" # Extension: VK_KHR_copy_commands2 - VK_KHR_COPY_COMMANDS_2_SPEC_VERSION* = 1 - VK_KHR_COPY_COMMANDS_2_EXTENSION_NAME* = "VK_KHR_copy_commands2" + VkKhrCopyCommands2SpecVersion* = 1 + VkKhrCopyCommands2ExtensionName* = "VK_KHR_copy_commands2" # Extension: VK_EXT_image_compression_control - VK_EXT_IMAGE_COMPRESSION_CONTROL_SPEC_VERSION* = 1 - VK_EXT_IMAGE_COMPRESSION_CONTROL_EXTENSION_NAME* = "VK_EXT_image_compression_control" + VkExtImageCompressionControlSpecVersion* = 1 + VkExtImageCompressionControlExtensionName* = "VK_EXT_image_compression_control" # Extension: VK_EXT_attachment_feedback_loop_layout - VK_EXT_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_SPEC_VERSION* = 2 - VK_EXT_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_EXTENSION_NAME* = "VK_EXT_attachment_feedback_loop_layout" + VkExtAttachmentFeedbackLoopLayoutSpecVersion* = 2 + VkExtAttachmentFeedbackLoopLayoutExtensionName* = "VK_EXT_attachment_feedback_loop_layout" # Extension: VK_EXT_4444_formats - VK_EXT_4444_FORMATS_SPEC_VERSION* = 1 - VK_EXT_4444_FORMATS_EXTENSION_NAME* = "VK_EXT_4444_formats" + VkExt4444FormatsSpecVersion* = 1 + VkExt4444FormatsExtensionName* = "VK_EXT_4444_formats" # Extension: VK_EXT_device_fault - VK_EXT_DEVICE_FAULT_SPEC_VERSION* = 2 - VK_EXT_DEVICE_FAULT_EXTENSION_NAME* = "VK_EXT_device_fault" + VkExtDeviceFaultSpecVersion* = 2 + VkExtDeviceFaultExtensionName* = "VK_EXT_device_fault" # Extension: VK_ARM_rasterization_order_attachment_access - VK_ARM_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_SPEC_VERSION* = 1 - VK_ARM_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_EXTENSION_NAME* = "VK_ARM_rasterization_order_attachment_access" + VkArmRasterizationOrderAttachmentAccessSpecVersion* = 1 + VkArmRasterizationOrderAttachmentAccessExtensionName* = "VK_ARM_rasterization_order_attachment_access" # Extension: VK_EXT_rgba10x6_formats - VK_EXT_RGBA10X6_FORMATS_SPEC_VERSION* = 1 - VK_EXT_RGBA10X6_FORMATS_EXTENSION_NAME* = "VK_EXT_rgba10x6_formats" + VkExtRgba10x6FormatsSpecVersion* = 1 + VkExtRgba10x6FormatsExtensionName* = "VK_EXT_rgba10x6_formats" # Extension: VK_NV_acquire_winrt_display - VK_NV_ACQUIRE_WINRT_DISPLAY_SPEC_VERSION* = 1 - VK_NV_ACQUIRE_WINRT_DISPLAY_EXTENSION_NAME* = "VK_NV_acquire_winrt_display" + VkNvAcquireWinrtDisplaySpecVersion* = 1 + VkNvAcquireWinrtDisplayExtensionName* = "VK_NV_acquire_winrt_display" # Extension: VK_EXT_directfb_surface - VK_EXT_DIRECTFB_SURFACE_SPEC_VERSION* = 1 - VK_EXT_DIRECTFB_SURFACE_EXTENSION_NAME* = "VK_EXT_directfb_surface" + VkExtDirectfbSurfaceSpecVersion* = 1 + VkExtDirectfbSurfaceExtensionName* = "VK_EXT_directfb_surface" # Extension: VK_VALVE_mutable_descriptor_type - VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION* = 1 - VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME* = "VK_VALVE_mutable_descriptor_type" + VkValveMutableDescriptorTypeSpecVersion* = 1 + VkValveMutableDescriptorTypeExtensionName* = "VK_VALVE_mutable_descriptor_type" # Extension: VK_EXT_vertex_input_dynamic_state - VK_EXT_VERTEX_INPUT_DYNAMIC_STATE_SPEC_VERSION* = 2 - VK_EXT_VERTEX_INPUT_DYNAMIC_STATE_EXTENSION_NAME* = "VK_EXT_vertex_input_dynamic_state" + VkExtVertexInputDynamicStateSpecVersion* = 2 + VkExtVertexInputDynamicStateExtensionName* = "VK_EXT_vertex_input_dynamic_state" # Extension: VK_EXT_physical_device_drm - VK_EXT_PHYSICAL_DEVICE_DRM_SPEC_VERSION* = 1 - VK_EXT_PHYSICAL_DEVICE_DRM_EXTENSION_NAME* = "VK_EXT_physical_device_drm" + VkExtPhysicalDeviceDrmSpecVersion* = 1 + VkExtPhysicalDeviceDrmExtensionName* = "VK_EXT_physical_device_drm" # Extension: VK_EXT_device_address_binding_report - VK_EXT_DEVICE_ADDRESS_BINDING_REPORT_SPEC_VERSION* = 1 - VK_EXT_DEVICE_ADDRESS_BINDING_REPORT_EXTENSION_NAME* = "VK_EXT_device_address_binding_report" + VkExtDeviceAddressBindingReportSpecVersion* = 1 + VkExtDeviceAddressBindingReportExtensionName* = "VK_EXT_device_address_binding_report" # Extension: VK_EXT_depth_clip_control - VK_EXT_DEPTH_CLIP_CONTROL_SPEC_VERSION* = 1 - VK_EXT_DEPTH_CLIP_CONTROL_EXTENSION_NAME* = "VK_EXT_depth_clip_control" + VkExtDepthClipControlSpecVersion* = 1 + VkExtDepthClipControlExtensionName* = "VK_EXT_depth_clip_control" # Extension: VK_EXT_primitive_topology_list_restart - VK_EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_SPEC_VERSION* = 1 - VK_EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_EXTENSION_NAME* = "VK_EXT_primitive_topology_list_restart" + VkExtPrimitiveTopologyListRestartSpecVersion* = 1 + VkExtPrimitiveTopologyListRestartExtensionName* = "VK_EXT_primitive_topology_list_restart" # Extension: VK_KHR_format_feature_flags2 - VK_KHR_FORMAT_FEATURE_FLAGS_2_SPEC_VERSION* = 2 - VK_KHR_FORMAT_FEATURE_FLAGS_2_EXTENSION_NAME* = "VK_KHR_format_feature_flags2" + VkKhrFormatFeatureFlags2SpecVersion* = 2 + VkKhrFormatFeatureFlags2ExtensionName* = "VK_KHR_format_feature_flags2" # Extension: VK_FUCHSIA_external_memory - VK_FUCHSIA_EXTERNAL_MEMORY_SPEC_VERSION* = 1 - VK_FUCHSIA_EXTERNAL_MEMORY_EXTENSION_NAME* = "VK_FUCHSIA_external_memory" + VkFuchsiaExternalMemorySpecVersion* = 1 + VkFuchsiaExternalMemoryExtensionName* = "VK_FUCHSIA_external_memory" # Extension: VK_FUCHSIA_external_semaphore - VK_FUCHSIA_EXTERNAL_SEMAPHORE_SPEC_VERSION* = 1 - VK_FUCHSIA_EXTERNAL_SEMAPHORE_EXTENSION_NAME* = "VK_FUCHSIA_external_semaphore" + VkFuchsiaExternalSemaphoreSpecVersion* = 1 + VkFuchsiaExternalSemaphoreExtensionName* = "VK_FUCHSIA_external_semaphore" # Extension: VK_FUCHSIA_buffer_collection - VK_FUCHSIA_BUFFER_COLLECTION_SPEC_VERSION* = 2 - VK_FUCHSIA_BUFFER_COLLECTION_EXTENSION_NAME* = "VK_FUCHSIA_buffer_collection" + VkFuchsiaBufferCollectionSpecVersion* = 2 + VkFuchsiaBufferCollectionExtensionName* = "VK_FUCHSIA_buffer_collection" # Extension: VK_HUAWEI_subpass_shading - VK_HUAWEI_SUBPASS_SHADING_SPEC_VERSION* = 3 - VK_HUAWEI_SUBPASS_SHADING_EXTENSION_NAME* = "VK_HUAWEI_subpass_shading" + VkHuaweiSubpassShadingSpecVersion* = 3 + VkHuaweiSubpassShadingExtensionName* = "VK_HUAWEI_subpass_shading" # Extension: VK_HUAWEI_invocation_mask - VK_HUAWEI_INVOCATION_MASK_SPEC_VERSION* = 1 - VK_HUAWEI_INVOCATION_MASK_EXTENSION_NAME* = "VK_HUAWEI_invocation_mask" + VkHuaweiInvocationMaskSpecVersion* = 1 + VkHuaweiInvocationMaskExtensionName* = "VK_HUAWEI_invocation_mask" # Extension: VK_NV_external_memory_rdma - VK_NV_EXTERNAL_MEMORY_RDMA_SPEC_VERSION* = 1 - VK_NV_EXTERNAL_MEMORY_RDMA_EXTENSION_NAME* = "VK_NV_external_memory_rdma" + VkNvExternalMemoryRdmaSpecVersion* = 1 + VkNvExternalMemoryRdmaExtensionName* = "VK_NV_external_memory_rdma" # Extension: VK_EXT_pipeline_properties - VK_EXT_PIPELINE_PROPERTIES_SPEC_VERSION* = 1 - VK_EXT_PIPELINE_PROPERTIES_EXTENSION_NAME* = "VK_EXT_pipeline_properties" + VkExtPipelinePropertiesSpecVersion* = 1 + VkExtPipelinePropertiesExtensionName* = "VK_EXT_pipeline_properties" # Extension: VK_NV_external_sci_sync - VK_NV_EXTERNAL_SCI_SYNC_SPEC_VERSION* = 2 - VK_NV_EXTERNAL_SCI_SYNC_EXTENSION_NAME* = "VK_NV_external_sci_sync" + VkNvExternalSciSyncSpecVersion* = 2 + VkNvExternalSciSyncExtensionName* = "VK_NV_external_sci_sync" # Extension: VK_NV_external_memory_sci_buf - VK_NV_EXTERNAL_MEMORY_SCI_BUF_SPEC_VERSION* = 2 - VK_NV_EXTERNAL_MEMORY_SCI_BUF_EXTENSION_NAME* = "VK_NV_external_memory_sci_buf" + VkNvExternalMemorySciBufSpecVersion* = 2 + VkNvExternalMemorySciBufExtensionName* = "VK_NV_external_memory_sci_buf" # Extension: VK_EXT_frame_boundary - VK_EXT_FRAME_BOUNDARY_SPEC_VERSION* = 1 - VK_EXT_FRAME_BOUNDARY_EXTENSION_NAME* = "VK_EXT_frame_boundary" + VkExtFrameBoundarySpecVersion* = 1 + VkExtFrameBoundaryExtensionName* = "VK_EXT_frame_boundary" # Extension: VK_EXT_multisampled_render_to_single_sampled - VK_EXT_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_SPEC_VERSION* = 1 - VK_EXT_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_EXTENSION_NAME* = "VK_EXT_multisampled_render_to_single_sampled" + VkExtMultisampledRenderToSingleSampledSpecVersion* = 1 + VkExtMultisampledRenderToSingleSampledExtensionName* = "VK_EXT_multisampled_render_to_single_sampled" # Extension: VK_EXT_extended_dynamic_state2 - VK_EXT_EXTENDED_DYNAMIC_STATE_2_SPEC_VERSION* = 1 - VK_EXT_EXTENDED_DYNAMIC_STATE_2_EXTENSION_NAME* = "VK_EXT_extended_dynamic_state2" + VkExtExtendedDynamicState2SpecVersion* = 1 + VkExtExtendedDynamicState2ExtensionName* = "VK_EXT_extended_dynamic_state2" # Extension: VK_QNX_screen_surface - VK_QNX_SCREEN_SURFACE_SPEC_VERSION* = 1 - VK_QNX_SCREEN_SURFACE_EXTENSION_NAME* = "VK_QNX_screen_surface" + VkQnxScreenSurfaceSpecVersion* = 1 + VkQnxScreenSurfaceExtensionName* = "VK_QNX_screen_surface" # Extension: VK_EXT_color_write_enable - VK_EXT_COLOR_WRITE_ENABLE_SPEC_VERSION* = 1 - VK_EXT_COLOR_WRITE_ENABLE_EXTENSION_NAME* = "VK_EXT_color_write_enable" + VkExtColorWriteEnableSpecVersion* = 1 + VkExtColorWriteEnableExtensionName* = "VK_EXT_color_write_enable" # Extension: VK_EXT_primitives_generated_query - VK_EXT_PRIMITIVES_GENERATED_QUERY_SPEC_VERSION* = 1 - VK_EXT_PRIMITIVES_GENERATED_QUERY_EXTENSION_NAME* = "VK_EXT_primitives_generated_query" + VkExtPrimitivesGeneratedQuerySpecVersion* = 1 + VkExtPrimitivesGeneratedQueryExtensionName* = "VK_EXT_primitives_generated_query" # Extension: VK_KHR_ray_tracing_maintenance1 - VK_KHR_RAY_TRACING_MAINTENANCE_1_SPEC_VERSION* = 1 - VK_KHR_RAY_TRACING_MAINTENANCE_1_EXTENSION_NAME* = "VK_KHR_ray_tracing_maintenance1" + VkKhrRayTracingMaintenance1SpecVersion* = 1 + VkKhrRayTracingMaintenance1ExtensionName* = "VK_KHR_ray_tracing_maintenance1" # Extension: VK_EXT_global_priority_query - VK_EXT_GLOBAL_PRIORITY_QUERY_SPEC_VERSION* = 1 - VK_EXT_GLOBAL_PRIORITY_QUERY_EXTENSION_NAME* = "VK_EXT_global_priority_query" + VkExtGlobalPriorityQuerySpecVersion* = 1 + VkExtGlobalPriorityQueryExtensionName* = "VK_EXT_global_priority_query" # Extension: VK_EXT_image_view_min_lod - VK_EXT_IMAGE_VIEW_MIN_LOD_SPEC_VERSION* = 1 - VK_EXT_IMAGE_VIEW_MIN_LOD_EXTENSION_NAME* = "VK_EXT_image_view_min_lod" + VkExtImageViewMinLodSpecVersion* = 1 + VkExtImageViewMinLodExtensionName* = "VK_EXT_image_view_min_lod" # Extension: VK_EXT_multi_draw - VK_EXT_MULTI_DRAW_SPEC_VERSION* = 1 - VK_EXT_MULTI_DRAW_EXTENSION_NAME* = "VK_EXT_multi_draw" + VkExtMultiDrawSpecVersion* = 1 + VkExtMultiDrawExtensionName* = "VK_EXT_multi_draw" # Extension: VK_EXT_image_2d_view_of_3d - VK_EXT_IMAGE_2D_VIEW_OF_3D_SPEC_VERSION* = 1 - VK_EXT_IMAGE_2D_VIEW_OF_3D_EXTENSION_NAME* = "VK_EXT_image_2d_view_of_3d" + VkExtImage2dViewOf3dSpecVersion* = 1 + VkExtImage2dViewOf3dExtensionName* = "VK_EXT_image_2d_view_of_3d" # Extension: VK_KHR_portability_enumeration - VK_KHR_PORTABILITY_ENUMERATION_SPEC_VERSION* = 1 - VK_KHR_PORTABILITY_ENUMERATION_EXTENSION_NAME* = "VK_KHR_portability_enumeration" + VkKhrPortabilityEnumerationSpecVersion* = 1 + VkKhrPortabilityEnumerationExtensionName* = "VK_KHR_portability_enumeration" # Extension: VK_EXT_shader_tile_image - VK_EXT_SHADER_TILE_IMAGE_SPEC_VERSION* = 1 - VK_EXT_SHADER_TILE_IMAGE_EXTENSION_NAME* = "VK_EXT_shader_tile_image" + VkExtShaderTileImageSpecVersion* = 1 + VkExtShaderTileImageExtensionName* = "VK_EXT_shader_tile_image" # Extension: VK_EXT_opacity_micromap - VK_EXT_OPACITY_MICROMAP_SPEC_VERSION* = 2 - VK_EXT_OPACITY_MICROMAP_EXTENSION_NAME* = "VK_EXT_opacity_micromap" + VkExtOpacityMicromapSpecVersion* = 2 + VkExtOpacityMicromapExtensionName* = "VK_EXT_opacity_micromap" # Extension: VK_NV_displacement_micromap - VK_NV_DISPLACEMENT_MICROMAP_SPEC_VERSION* = 2 - VK_NV_DISPLACEMENT_MICROMAP_EXTENSION_NAME* = "VK_NV_displacement_micromap" + VkNvDisplacementMicromapSpecVersion* = 2 + VkNvDisplacementMicromapExtensionName* = "VK_NV_displacement_micromap" # Extension: VK_EXT_load_store_op_none - VK_EXT_LOAD_STORE_OP_NONE_SPEC_VERSION* = 1 - VK_EXT_LOAD_STORE_OP_NONE_EXTENSION_NAME* = "VK_EXT_load_store_op_none" + VkExtLoadStoreOpNoneSpecVersion* = 1 + VkExtLoadStoreOpNoneExtensionName* = "VK_EXT_load_store_op_none" # Extension: VK_HUAWEI_cluster_culling_shader - VK_HUAWEI_CLUSTER_CULLING_SHADER_SPEC_VERSION* = 3 - VK_HUAWEI_CLUSTER_CULLING_SHADER_EXTENSION_NAME* = "VK_HUAWEI_cluster_culling_shader" + VkHuaweiClusterCullingShaderSpecVersion* = 3 + VkHuaweiClusterCullingShaderExtensionName* = "VK_HUAWEI_cluster_culling_shader" # Extension: VK_EXT_border_color_swizzle - VK_EXT_BORDER_COLOR_SWIZZLE_SPEC_VERSION* = 1 - VK_EXT_BORDER_COLOR_SWIZZLE_EXTENSION_NAME* = "VK_EXT_border_color_swizzle" + VkExtBorderColorSwizzleSpecVersion* = 1 + VkExtBorderColorSwizzleExtensionName* = "VK_EXT_border_color_swizzle" # Extension: VK_EXT_pageable_device_local_memory - VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_SPEC_VERSION* = 1 - VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_EXTENSION_NAME* = "VK_EXT_pageable_device_local_memory" + VkExtPageableDeviceLocalMemorySpecVersion* = 1 + VkExtPageableDeviceLocalMemoryExtensionName* = "VK_EXT_pageable_device_local_memory" # Extension: VK_KHR_maintenance4 - VK_KHR_MAINTENANCE_4_SPEC_VERSION* = 2 - VK_KHR_MAINTENANCE_4_EXTENSION_NAME* = "VK_KHR_maintenance4" + VkKhrMaintenance4SpecVersion* = 2 + VkKhrMaintenance4ExtensionName* = "VK_KHR_maintenance4" # Extension: VK_ARM_shader_core_properties - VK_ARM_SHADER_CORE_PROPERTIES_SPEC_VERSION* = 1 - VK_ARM_SHADER_CORE_PROPERTIES_EXTENSION_NAME* = "VK_ARM_shader_core_properties" + VkArmShaderCorePropertiesSpecVersion* = 1 + VkArmShaderCorePropertiesExtensionName* = "VK_ARM_shader_core_properties" # Extension: VK_KHR_shader_subgroup_rotate - VK_KHR_SHADER_SUBGROUP_ROTATE_SPEC_VERSION* = 2 - VK_KHR_SHADER_SUBGROUP_ROTATE_EXTENSION_NAME* = "VK_KHR_shader_subgroup_rotate" + VkKhrShaderSubgroupRotateSpecVersion* = 2 + VkKhrShaderSubgroupRotateExtensionName* = "VK_KHR_shader_subgroup_rotate" # Extension: VK_ARM_scheduling_controls - VK_ARM_SCHEDULING_CONTROLS_SPEC_VERSION* = 1 - VK_ARM_SCHEDULING_CONTROLS_EXTENSION_NAME* = "VK_ARM_scheduling_controls" + VkArmSchedulingControlsSpecVersion* = 1 + VkArmSchedulingControlsExtensionName* = "VK_ARM_scheduling_controls" # Extension: VK_EXT_image_sliced_view_of_3d - VK_EXT_IMAGE_SLICED_VIEW_OF_3D_SPEC_VERSION* = 1 - VK_EXT_IMAGE_SLICED_VIEW_OF_3D_EXTENSION_NAME* = "VK_EXT_image_sliced_view_of_3d" + VkExtImageSlicedViewOf3dSpecVersion* = 1 + VkExtImageSlicedViewOf3dExtensionName* = "VK_EXT_image_sliced_view_of_3d" # Extension: VK_VALVE_descriptor_set_host_mapping - VK_VALVE_DESCRIPTOR_SET_HOST_MAPPING_SPEC_VERSION* = 1 - VK_VALVE_DESCRIPTOR_SET_HOST_MAPPING_EXTENSION_NAME* = "VK_VALVE_descriptor_set_host_mapping" + VkValveDescriptorSetHostMappingSpecVersion* = 1 + VkValveDescriptorSetHostMappingExtensionName* = "VK_VALVE_descriptor_set_host_mapping" # Extension: VK_EXT_depth_clamp_zero_one - VK_EXT_DEPTH_CLAMP_ZERO_ONE_SPEC_VERSION* = 1 - VK_EXT_DEPTH_CLAMP_ZERO_ONE_EXTENSION_NAME* = "VK_EXT_depth_clamp_zero_one" + VkExtDepthClampZeroOneSpecVersion* = 1 + VkExtDepthClampZeroOneExtensionName* = "VK_EXT_depth_clamp_zero_one" # Extension: VK_EXT_non_seamless_cube_map - VK_EXT_NON_SEAMLESS_CUBE_MAP_SPEC_VERSION* = 1 - VK_EXT_NON_SEAMLESS_CUBE_MAP_EXTENSION_NAME* = "VK_EXT_non_seamless_cube_map" + VkExtNonSeamlessCubeMapSpecVersion* = 1 + VkExtNonSeamlessCubeMapExtensionName* = "VK_EXT_non_seamless_cube_map" # Extension: VK_ARM_render_pass_striped - VK_ARM_RENDER_PASS_STRIPED_SPEC_VERSION* = 1 - VK_ARM_RENDER_PASS_STRIPED_EXTENSION_NAME* = "VK_ARM_render_pass_striped" + VkArmRenderPassStripedSpecVersion* = 1 + VkArmRenderPassStripedExtensionName* = "VK_ARM_render_pass_striped" # Extension: VK_QCOM_fragment_density_map_offset - VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_SPEC_VERSION* = 1 - VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_EXTENSION_NAME* = "VK_QCOM_fragment_density_map_offset" + VkQcomFragmentDensityMapOffsetSpecVersion* = 2 + VkQcomFragmentDensityMapOffsetExtensionName* = "VK_QCOM_fragment_density_map_offset" # Extension: VK_NV_copy_memory_indirect - VK_NV_COPY_MEMORY_INDIRECT_SPEC_VERSION* = 1 - VK_NV_COPY_MEMORY_INDIRECT_EXTENSION_NAME* = "VK_NV_copy_memory_indirect" + VkNvCopyMemoryIndirectSpecVersion* = 1 + VkNvCopyMemoryIndirectExtensionName* = "VK_NV_copy_memory_indirect" # Extension: VK_NV_memory_decompression - VK_NV_MEMORY_DECOMPRESSION_SPEC_VERSION* = 1 - VK_NV_MEMORY_DECOMPRESSION_EXTENSION_NAME* = "VK_NV_memory_decompression" + VkNvMemoryDecompressionSpecVersion* = 1 + VkNvMemoryDecompressionExtensionName* = "VK_NV_memory_decompression" # Extension: VK_NV_device_generated_commands_compute - VK_NV_DEVICE_GENERATED_COMMANDS_COMPUTE_SPEC_VERSION* = 2 - VK_NV_DEVICE_GENERATED_COMMANDS_COMPUTE_EXTENSION_NAME* = "VK_NV_device_generated_commands_compute" + VkNvDeviceGeneratedCommandsComputeSpecVersion* = 2 + VkNvDeviceGeneratedCommandsComputeExtensionName* = "VK_NV_device_generated_commands_compute" # Extension: VK_NV_linear_color_attachment - VK_NV_LINEAR_COLOR_ATTACHMENT_SPEC_VERSION* = 1 - VK_NV_LINEAR_COLOR_ATTACHMENT_EXTENSION_NAME* = "VK_NV_linear_color_attachment" + VkNvLinearColorAttachmentSpecVersion* = 1 + VkNvLinearColorAttachmentExtensionName* = "VK_NV_linear_color_attachment" # Extension: VK_GOOGLE_surfaceless_query - VK_GOOGLE_SURFACELESS_QUERY_SPEC_VERSION* = 2 - VK_GOOGLE_SURFACELESS_QUERY_EXTENSION_NAME* = "VK_GOOGLE_surfaceless_query" + VkGoogleSurfacelessQuerySpecVersion* = 2 + VkGoogleSurfacelessQueryExtensionName* = "VK_GOOGLE_surfaceless_query" # Extension: VK_KHR_shader_maximal_reconvergence - VK_KHR_SHADER_MAXIMAL_RECONVERGENCE_SPEC_VERSION* = 1 - VK_KHR_SHADER_MAXIMAL_RECONVERGENCE_EXTENSION_NAME* = "VK_KHR_shader_maximal_reconvergence" + VkKhrShaderMaximalReconvergenceSpecVersion* = 1 + VkKhrShaderMaximalReconvergenceExtensionName* = "VK_KHR_shader_maximal_reconvergence" # Extension: VK_EXT_application_parameters - VK_EXT_APPLICATION_PARAMETERS_SPEC_VERSION* = 1 - VK_EXT_APPLICATION_PARAMETERS_EXTENSION_NAME* = "VK_EXT_application_parameters" + VkExtApplicationParametersSpecVersion* = 1 + VkExtApplicationParametersExtensionName* = "VK_EXT_application_parameters" # Extension: VK_EXT_image_compression_control_swapchain - VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_SPEC_VERSION* = 1 - VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_EXTENSION_NAME* = "VK_EXT_image_compression_control_swapchain" + VkExtImageCompressionControlSwapchainSpecVersion* = 1 + VkExtImageCompressionControlSwapchainExtensionName* = "VK_EXT_image_compression_control_swapchain" # Extension: VK_QCOM_image_processing - VK_QCOM_IMAGE_PROCESSING_SPEC_VERSION* = 1 - VK_QCOM_IMAGE_PROCESSING_EXTENSION_NAME* = "VK_QCOM_image_processing" + VkQcomImageProcessingSpecVersion* = 1 + VkQcomImageProcessingExtensionName* = "VK_QCOM_image_processing" # Extension: VK_EXT_nested_command_buffer - VK_EXT_NESTED_COMMAND_BUFFER_SPEC_VERSION* = 1 - VK_EXT_NESTED_COMMAND_BUFFER_EXTENSION_NAME* = "VK_EXT_nested_command_buffer" + VkExtNestedCommandBufferSpecVersion* = 1 + VkExtNestedCommandBufferExtensionName* = "VK_EXT_nested_command_buffer" # Extension: VK_EXT_external_memory_acquire_unmodified - VK_EXT_EXTERNAL_MEMORY_ACQUIRE_UNMODIFIED_SPEC_VERSION* = 1 - VK_EXT_EXTERNAL_MEMORY_ACQUIRE_UNMODIFIED_EXTENSION_NAME* = "VK_EXT_external_memory_acquire_unmodified" + VkExtExternalMemoryAcquireUnmodifiedSpecVersion* = 1 + VkExtExternalMemoryAcquireUnmodifiedExtensionName* = "VK_EXT_external_memory_acquire_unmodified" # Extension: VK_EXT_extended_dynamic_state3 - VK_EXT_EXTENDED_DYNAMIC_STATE_3_SPEC_VERSION* = 2 - VK_EXT_EXTENDED_DYNAMIC_STATE_3_EXTENSION_NAME* = "VK_EXT_extended_dynamic_state3" + VkExtExtendedDynamicState3SpecVersion* = 2 + VkExtExtendedDynamicState3ExtensionName* = "VK_EXT_extended_dynamic_state3" # Extension: VK_EXT_subpass_merge_feedback - VK_EXT_SUBPASS_MERGE_FEEDBACK_SPEC_VERSION* = 2 - VK_EXT_SUBPASS_MERGE_FEEDBACK_EXTENSION_NAME* = "VK_EXT_subpass_merge_feedback" + VkExtSubpassMergeFeedbackSpecVersion* = 2 + VkExtSubpassMergeFeedbackExtensionName* = "VK_EXT_subpass_merge_feedback" # Extension: VK_LUNARG_direct_driver_loading - VK_LUNARG_DIRECT_DRIVER_LOADING_SPEC_VERSION* = 1 - VK_LUNARG_DIRECT_DRIVER_LOADING_EXTENSION_NAME* = "VK_LUNARG_direct_driver_loading" + VkLunargDirectDriverLoadingSpecVersion* = 1 + VkLunargDirectDriverLoadingExtensionName* = "VK_LUNARG_direct_driver_loading" # Extension: VK_EXT_shader_module_identifier - VK_EXT_SHADER_MODULE_IDENTIFIER_SPEC_VERSION* = 1 - VK_EXT_SHADER_MODULE_IDENTIFIER_EXTENSION_NAME* = "VK_EXT_shader_module_identifier" + VkExtShaderModuleIdentifierSpecVersion* = 1 + VkExtShaderModuleIdentifierExtensionName* = "VK_EXT_shader_module_identifier" # Extension: VK_EXT_rasterization_order_attachment_access - VK_EXT_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_SPEC_VERSION* = 1 - VK_EXT_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_EXTENSION_NAME* = "VK_EXT_rasterization_order_attachment_access" + VkExtRasterizationOrderAttachmentAccessSpecVersion* = 1 + VkExtRasterizationOrderAttachmentAccessExtensionName* = "VK_EXT_rasterization_order_attachment_access" # Extension: VK_NV_optical_flow - VK_NV_OPTICAL_FLOW_SPEC_VERSION* = 1 - VK_NV_OPTICAL_FLOW_EXTENSION_NAME* = "VK_NV_optical_flow" + VkNvOpticalFlowSpecVersion* = 1 + VkNvOpticalFlowExtensionName* = "VK_NV_optical_flow" # Extension: VK_EXT_legacy_dithering - VK_EXT_LEGACY_DITHERING_SPEC_VERSION* = 1 - VK_EXT_LEGACY_DITHERING_EXTENSION_NAME* = "VK_EXT_legacy_dithering" + VkExtLegacyDitheringSpecVersion* = 2 + VkExtLegacyDitheringExtensionName* = "VK_EXT_legacy_dithering" # Extension: VK_EXT_pipeline_protected_access - VK_EXT_PIPELINE_PROTECTED_ACCESS_SPEC_VERSION* = 1 - VK_EXT_PIPELINE_PROTECTED_ACCESS_EXTENSION_NAME* = "VK_EXT_pipeline_protected_access" + VkExtPipelineProtectedAccessSpecVersion* = 1 + VkExtPipelineProtectedAccessExtensionName* = "VK_EXT_pipeline_protected_access" # Extension: VK_ANDROID_external_format_resolve - VK_ANDROID_EXTERNAL_FORMAT_RESOLVE_SPEC_VERSION* = 1 - VK_ANDROID_EXTERNAL_FORMAT_RESOLVE_EXTENSION_NAME* = "VK_ANDROID_external_format_resolve" + VkAndroidExternalFormatResolveSpecVersion* = 1 + VkAndroidExternalFormatResolveExtensionName* = "VK_ANDROID_external_format_resolve" # Extension: VK_KHR_maintenance5 - VK_KHR_MAINTENANCE_5_SPEC_VERSION* = 1 - VK_KHR_MAINTENANCE_5_EXTENSION_NAME* = "VK_KHR_maintenance5" + VkKhrMaintenance5SpecVersion* = 1 + VkKhrMaintenance5ExtensionName* = "VK_KHR_maintenance5" + # Extension: VK_AMD_anti_lag + VkAmdAntiLagSpecVersion* = 1 + VkAmdAntiLagExtensionName* = "VK_AMD_anti_lag" # Extension: VK_KHR_ray_tracing_position_fetch - VK_KHR_RAY_TRACING_POSITION_FETCH_SPEC_VERSION* = 1 - VK_KHR_RAY_TRACING_POSITION_FETCH_EXTENSION_NAME* = "VK_KHR_ray_tracing_position_fetch" + VkKhrRayTracingPositionFetchSpecVersion* = 1 + VkKhrRayTracingPositionFetchExtensionName* = "VK_KHR_ray_tracing_position_fetch" # Extension: VK_EXT_shader_object - VK_EXT_SHADER_OBJECT_SPEC_VERSION* = 1 - VK_EXT_SHADER_OBJECT_EXTENSION_NAME* = "VK_EXT_shader_object" + VkExtShaderObjectSpecVersion* = 1 + VkExtShaderObjectExtensionName* = "VK_EXT_shader_object" + # Extension: VK_KHR_pipeline_binary + VkKhrPipelineBinarySpecVersion* = 1 + VkKhrPipelineBinaryExtensionName* = "VK_KHR_pipeline_binary" # Extension: VK_QCOM_tile_properties - VK_QCOM_TILE_PROPERTIES_SPEC_VERSION* = 1 - VK_QCOM_TILE_PROPERTIES_EXTENSION_NAME* = "VK_QCOM_tile_properties" + VkQcomTilePropertiesSpecVersion* = 1 + VkQcomTilePropertiesExtensionName* = "VK_QCOM_tile_properties" # Extension: VK_SEC_amigo_profiling - VK_SEC_AMIGO_PROFILING_SPEC_VERSION* = 1 - VK_SEC_AMIGO_PROFILING_EXTENSION_NAME* = "VK_SEC_amigo_profiling" + VkSecAmigoProfilingSpecVersion* = 1 + VkSecAmigoProfilingExtensionName* = "VK_SEC_amigo_profiling" # Extension: VK_QCOM_multiview_per_view_viewports - VK_QCOM_MULTIVIEW_PER_VIEW_VIEWPORTS_SPEC_VERSION* = 1 - VK_QCOM_MULTIVIEW_PER_VIEW_VIEWPORTS_EXTENSION_NAME* = "VK_QCOM_multiview_per_view_viewports" + VkQcomMultiviewPerViewViewportsSpecVersion* = 1 + VkQcomMultiviewPerViewViewportsExtensionName* = "VK_QCOM_multiview_per_view_viewports" # Extension: VK_NV_external_sci_sync2 - VK_NV_EXTERNAL_SCI_SYNC_2_SPEC_VERSION* = 1 - VK_NV_EXTERNAL_SCI_SYNC_2_EXTENSION_NAME* = "VK_NV_external_sci_sync2" + VkNvExternalSciSync2SpecVersion* = 1 + VkNvExternalSciSync2ExtensionName* = "VK_NV_external_sci_sync2" # Extension: VK_NV_ray_tracing_invocation_reorder - VK_NV_RAY_TRACING_INVOCATION_REORDER_SPEC_VERSION* = 1 - VK_NV_RAY_TRACING_INVOCATION_REORDER_EXTENSION_NAME* = "VK_NV_ray_tracing_invocation_reorder" + VkNvRayTracingInvocationReorderSpecVersion* = 1 + VkNvRayTracingInvocationReorderExtensionName* = "VK_NV_ray_tracing_invocation_reorder" # Extension: VK_NV_extended_sparse_address_space - VK_NV_EXTENDED_SPARSE_ADDRESS_SPACE_SPEC_VERSION* = 1 - VK_NV_EXTENDED_SPARSE_ADDRESS_SPACE_EXTENSION_NAME* = "VK_NV_extended_sparse_address_space" + VkNvExtendedSparseAddressSpaceSpecVersion* = 1 + VkNvExtendedSparseAddressSpaceExtensionName* = "VK_NV_extended_sparse_address_space" # Extension: VK_EXT_mutable_descriptor_type - VK_EXT_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION* = 1 - VK_EXT_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME* = "VK_EXT_mutable_descriptor_type" + VkExtMutableDescriptorTypeSpecVersion* = 1 + VkExtMutableDescriptorTypeExtensionName* = "VK_EXT_mutable_descriptor_type" + # Extension: VK_EXT_legacy_vertex_attributes + VkExtLegacyVertexAttributesSpecVersion* = 1 + VkExtLegacyVertexAttributesExtensionName* = "VK_EXT_legacy_vertex_attributes" # Extension: VK_EXT_layer_settings - VK_EXT_LAYER_SETTINGS_SPEC_VERSION* = 2 - VK_EXT_LAYER_SETTINGS_EXTENSION_NAME* = "VK_EXT_layer_settings" + VkExtLayerSettingsSpecVersion* = 2 + VkExtLayerSettingsExtensionName* = "VK_EXT_layer_settings" # Extension: VK_ARM_shader_core_builtins - VK_ARM_SHADER_CORE_BUILTINS_SPEC_VERSION* = 2 - VK_ARM_SHADER_CORE_BUILTINS_EXTENSION_NAME* = "VK_ARM_shader_core_builtins" + VkArmShaderCoreBuiltinsSpecVersion* = 2 + VkArmShaderCoreBuiltinsExtensionName* = "VK_ARM_shader_core_builtins" # Extension: VK_EXT_pipeline_library_group_handles - VK_EXT_PIPELINE_LIBRARY_GROUP_HANDLES_SPEC_VERSION* = 1 - VK_EXT_PIPELINE_LIBRARY_GROUP_HANDLES_EXTENSION_NAME* = "VK_EXT_pipeline_library_group_handles" + VkExtPipelineLibraryGroupHandlesSpecVersion* = 1 + VkExtPipelineLibraryGroupHandlesExtensionName* = "VK_EXT_pipeline_library_group_handles" # Extension: VK_EXT_dynamic_rendering_unused_attachments - VK_EXT_DYNAMIC_RENDERING_UNUSED_ATTACHMENTS_SPEC_VERSION* = 1 - VK_EXT_DYNAMIC_RENDERING_UNUSED_ATTACHMENTS_EXTENSION_NAME* = "VK_EXT_dynamic_rendering_unused_attachments" + VkExtDynamicRenderingUnusedAttachmentsSpecVersion* = 1 + VkExtDynamicRenderingUnusedAttachmentsExtensionName* = "VK_EXT_dynamic_rendering_unused_attachments" # Extension: VK_NV_low_latency2 - VK_NV_LOW_LATENCY_2_SPEC_VERSION* = 2 - VK_NV_LOW_LATENCY_2_EXTENSION_NAME* = "VK_NV_low_latency2" + VkNvLowLatency2SpecVersion* = 2 + VkNvLowLatency2ExtensionName* = "VK_NV_low_latency2" # Extension: VK_KHR_cooperative_matrix - VK_KHR_COOPERATIVE_MATRIX_SPEC_VERSION* = 2 - VK_KHR_COOPERATIVE_MATRIX_EXTENSION_NAME* = "VK_KHR_cooperative_matrix" + VkKhrCooperativeMatrixSpecVersion* = 2 + VkKhrCooperativeMatrixExtensionName* = "VK_KHR_cooperative_matrix" # Extension: VK_QCOM_multiview_per_view_render_areas - VK_QCOM_MULTIVIEW_PER_VIEW_RENDER_AREAS_SPEC_VERSION* = 1 - VK_QCOM_MULTIVIEW_PER_VIEW_RENDER_AREAS_EXTENSION_NAME* = "VK_QCOM_multiview_per_view_render_areas" + VkQcomMultiviewPerViewRenderAreasSpecVersion* = 1 + VkQcomMultiviewPerViewRenderAreasExtensionName* = "VK_QCOM_multiview_per_view_render_areas" + # Extension: VK_KHR_compute_shader_derivatives + VkKhrComputeShaderDerivativesSpecVersion* = 1 + VkKhrComputeShaderDerivativesExtensionName* = "VK_KHR_compute_shader_derivatives" # Extension: VK_KHR_video_decode_av1 - VK_KHR_VIDEO_DECODE_AV1_SPEC_VERSION* = 1 - VK_KHR_VIDEO_DECODE_AV1_EXTENSION_NAME* = "VK_KHR_video_decode_av1" + VkKhrVideoDecodeAv1SpecVersion* = 1 + VkKhrVideoDecodeAv1ExtensionName* = "VK_KHR_video_decode_av1" # Extension: VK_KHR_video_maintenance1 - VK_KHR_VIDEO_MAINTENANCE_1_SPEC_VERSION* = 1 - VK_KHR_VIDEO_MAINTENANCE_1_EXTENSION_NAME* = "VK_KHR_video_maintenance1" + VkKhrVideoMaintenance1SpecVersion* = 1 + VkKhrVideoMaintenance1ExtensionName* = "VK_KHR_video_maintenance1" # Extension: VK_NV_per_stage_descriptor_set - VK_NV_PER_STAGE_DESCRIPTOR_SET_SPEC_VERSION* = 1 - VK_NV_PER_STAGE_DESCRIPTOR_SET_EXTENSION_NAME* = "VK_NV_per_stage_descriptor_set" + VkNvPerStageDescriptorSetSpecVersion* = 1 + VkNvPerStageDescriptorSetExtensionName* = "VK_NV_per_stage_descriptor_set" # Extension: VK_QCOM_image_processing2 - VK_QCOM_IMAGE_PROCESSING_2_SPEC_VERSION* = 1 - VK_QCOM_IMAGE_PROCESSING_2_EXTENSION_NAME* = "VK_QCOM_image_processing2" + VkQcomImageProcessing2SpecVersion* = 1 + VkQcomImageProcessing2ExtensionName* = "VK_QCOM_image_processing2" # Extension: VK_QCOM_filter_cubic_weights - VK_QCOM_FILTER_CUBIC_WEIGHTS_SPEC_VERSION* = 1 - VK_QCOM_FILTER_CUBIC_WEIGHTS_EXTENSION_NAME* = "VK_QCOM_filter_cubic_weights" + VkQcomFilterCubicWeightsSpecVersion* = 1 + VkQcomFilterCubicWeightsExtensionName* = "VK_QCOM_filter_cubic_weights" # Extension: VK_QCOM_ycbcr_degamma - VK_QCOM_YCBCR_DEGAMMA_SPEC_VERSION* = 1 - VK_QCOM_YCBCR_DEGAMMA_EXTENSION_NAME* = "VK_QCOM_ycbcr_degamma" + VkQcomYcbcrDegammaSpecVersion* = 1 + VkQcomYcbcrDegammaExtensionName* = "VK_QCOM_ycbcr_degamma" # Extension: VK_QCOM_filter_cubic_clamp - VK_QCOM_FILTER_CUBIC_CLAMP_SPEC_VERSION* = 1 - VK_QCOM_FILTER_CUBIC_CLAMP_EXTENSION_NAME* = "VK_QCOM_filter_cubic_clamp" + VkQcomFilterCubicClampSpecVersion* = 1 + VkQcomFilterCubicClampExtensionName* = "VK_QCOM_filter_cubic_clamp" # Extension: VK_EXT_attachment_feedback_loop_dynamic_state - VK_EXT_ATTACHMENT_FEEDBACK_LOOP_DYNAMIC_STATE_SPEC_VERSION* = 1 - VK_EXT_ATTACHMENT_FEEDBACK_LOOP_DYNAMIC_STATE_EXTENSION_NAME* = "VK_EXT_attachment_feedback_loop_dynamic_state" + VkExtAttachmentFeedbackLoopDynamicStateSpecVersion* = 1 + VkExtAttachmentFeedbackLoopDynamicStateExtensionName* = "VK_EXT_attachment_feedback_loop_dynamic_state" # Extension: VK_KHR_vertex_attribute_divisor - VK_KHR_VERTEX_ATTRIBUTE_DIVISOR_SPEC_VERSION* = 1 - VK_KHR_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME* = "VK_KHR_vertex_attribute_divisor" + VkKhrVertexAttributeDivisorSpecVersion* = 1 + VkKhrVertexAttributeDivisorExtensionName* = "VK_KHR_vertex_attribute_divisor" # Extension: VK_KHR_load_store_op_none - VK_KHR_LOAD_STORE_OP_NONE_SPEC_VERSION* = 1 - VK_KHR_LOAD_STORE_OP_NONE_EXTENSION_NAME* = "VK_KHR_load_store_op_none" + VkKhrLoadStoreOpNoneSpecVersion* = 1 + VkKhrLoadStoreOpNoneExtensionName* = "VK_KHR_load_store_op_none" # Extension: VK_KHR_shader_float_controls2 - VK_KHR_SHADER_FLOAT_CONTROLS_2_SPEC_VERSION* = 1 - VK_KHR_SHADER_FLOAT_CONTROLS_2_EXTENSION_NAME* = "VK_KHR_shader_float_controls2" + VkKhrShaderFloatControls2SpecVersion* = 1 + VkKhrShaderFloatControls2ExtensionName* = "VK_KHR_shader_float_controls2" # Extension: VK_QNX_external_memory_screen_buffer - VK_QNX_EXTERNAL_MEMORY_SCREEN_BUFFER_SPEC_VERSION* = 1 - VK_QNX_EXTERNAL_MEMORY_SCREEN_BUFFER_EXTENSION_NAME* = "VK_QNX_external_memory_screen_buffer" + VkQnxExternalMemoryScreenBufferSpecVersion* = 1 + VkQnxExternalMemoryScreenBufferExtensionName* = "VK_QNX_external_memory_screen_buffer" # Extension: VK_MSFT_layered_driver - VK_MSFT_LAYERED_DRIVER_SPEC_VERSION* = 1 - VK_MSFT_LAYERED_DRIVER_EXTENSION_NAME* = "VK_MSFT_layered_driver" + VkMsftLayeredDriverSpecVersion* = 1 + VkMsftLayeredDriverExtensionName* = "VK_MSFT_layered_driver" # Extension: VK_KHR_index_type_uint8 - VK_KHR_INDEX_TYPE_UINT8_SPEC_VERSION* = 1 - VK_KHR_INDEX_TYPE_UINT8_EXTENSION_NAME* = "VK_KHR_index_type_uint8" + VkKhrIndexTypeUint8SpecVersion* = 1 + VkKhrIndexTypeUint8ExtensionName* = "VK_KHR_index_type_uint8" # Extension: VK_KHR_line_rasterization - VK_KHR_LINE_RASTERIZATION_SPEC_VERSION* = 1 - VK_KHR_LINE_RASTERIZATION_EXTENSION_NAME* = "VK_KHR_line_rasterization" + VkKhrLineRasterizationSpecVersion* = 1 + VkKhrLineRasterizationExtensionName* = "VK_KHR_line_rasterization" # Extension: VK_KHR_calibrated_timestamps - VK_KHR_CALIBRATED_TIMESTAMPS_SPEC_VERSION* = 1 - VK_KHR_CALIBRATED_TIMESTAMPS_EXTENSION_NAME* = "VK_KHR_calibrated_timestamps" + VkKhrCalibratedTimestampsSpecVersion* = 1 + VkKhrCalibratedTimestampsExtensionName* = "VK_KHR_calibrated_timestamps" # Extension: VK_KHR_shader_expect_assume - VK_KHR_SHADER_EXPECT_ASSUME_SPEC_VERSION* = 1 - VK_KHR_SHADER_EXPECT_ASSUME_EXTENSION_NAME* = "VK_KHR_shader_expect_assume" + VkKhrShaderExpectAssumeSpecVersion* = 1 + VkKhrShaderExpectAssumeExtensionName* = "VK_KHR_shader_expect_assume" # Extension: VK_KHR_maintenance6 - VK_KHR_MAINTENANCE_6_SPEC_VERSION* = 1 - VK_KHR_MAINTENANCE_6_EXTENSION_NAME* = "VK_KHR_maintenance6" + VkKhrMaintenance6SpecVersion* = 1 + VkKhrMaintenance6ExtensionName* = "VK_KHR_maintenance6" # Extension: VK_NV_descriptor_pool_overallocation - VK_NV_DESCRIPTOR_POOL_OVERALLOCATION_SPEC_VERSION* = 1 - VK_NV_DESCRIPTOR_POOL_OVERALLOCATION_EXTENSION_NAME* = "VK_NV_descriptor_pool_overallocation" + VkNvDescriptorPoolOverallocationSpecVersion* = 1 + VkNvDescriptorPoolOverallocationExtensionName* = "VK_NV_descriptor_pool_overallocation" # Extension: VK_NV_raw_access_chains - VK_NV_RAW_ACCESS_CHAINS_SPEC_VERSION* = 1 - VK_NV_RAW_ACCESS_CHAINS_EXTENSION_NAME* = "VK_NV_raw_access_chains" + VkNvRawAccessChainsSpecVersion* = 1 + VkNvRawAccessChainsExtensionName* = "VK_NV_raw_access_chains" + # Extension: VK_KHR_shader_relaxed_extended_instruction + VkKhrShaderRelaxedExtendedInstructionSpecVersion* = 1 + VkKhrShaderRelaxedExtendedInstructionExtensionName* = "VK_KHR_shader_relaxed_extended_instruction" + # Extension: VK_NV_command_buffer_inheritance + VkNvCommandBufferInheritanceSpecVersion* = 1 + VkNvCommandBufferInheritanceExtensionName* = "VK_NV_command_buffer_inheritance" + # Extension: VK_KHR_maintenance7 + VkKhrMaintenance7SpecVersion* = 1 + VkKhrMaintenance7ExtensionName* = "VK_KHR_maintenance7" # Extension: VK_NV_shader_atomic_float16_vector - VK_NV_SHADER_ATOMIC_FLOAT16_VECTOR_SPEC_VERSION* = 1 - VK_NV_SHADER_ATOMIC_FLOAT16_VECTOR_EXTENSION_NAME* = "VK_NV_shader_atomic_float16_vector" + VkNvShaderAtomicFloat16VectorSpecVersion* = 1 + VkNvShaderAtomicFloat16VectorExtensionName* = "VK_NV_shader_atomic_float16_vector" + # Extension: VK_EXT_shader_replicated_composites + VkExtShaderReplicatedCompositesSpecVersion* = 1 + VkExtShaderReplicatedCompositesExtensionName* = "VK_EXT_shader_replicated_composites" + # Extension: VK_NV_ray_tracing_validation + VkNvRayTracingValidationSpecVersion* = 1 + VkNvRayTracingValidationExtensionName* = "VK_NV_ray_tracing_validation" + # Extension: VK_MESA_image_alignment_control + VkMesaImageAlignmentControlSpecVersion* = 1 + VkMesaImageAlignmentControlExtensionName* = "VK_MESA_image_alignment_control" type VkImageLayout* {.size: sizeof(int32).} = enum @@ -1776,7 +1807,7 @@ type G16B16r162plane444Unorm A4r4g4b4UnormPack16 = 1000340000 A4b4g4r4UnormPack16 - R16g16S105Nv = 1000464000 + R16g16Sfixed5Nv = 1000464000 A1b5g5r5UnormPack16Khr = 1000470000 A8UnormKhr @@ -2200,7 +2231,7 @@ type PhysicalDeviceFloatControlsProperties = 1000197000 PhysicalDeviceDepthStencilResolveProperties = 1000199000 SubpassDescriptionDepthStencilResolve - PhysicalDeviceComputeShaderDerivativesFeaturesNv = 1000201000 + PhysicalDeviceComputeShaderDerivativesFeaturesKhr = 1000201000 PhysicalDeviceMeshShaderFeaturesNv = 1000202000 PhysicalDeviceMeshShaderPropertiesNv PhysicalDeviceFragmentShaderBarycentricFeaturesKhr = 1000203000 @@ -2629,10 +2660,23 @@ type DeviceImageSubresourceInfoKhr PipelineCreateFlags2CreateInfoKhr BufferUsageFlags2CreateInfoKhr + PhysicalDeviceAntiLagFeaturesAmd = 1000476000 + AntiLagDataAmd + AntiLagPresentationInfoAmd PhysicalDeviceRayTracingPositionFetchFeaturesKhr = 1000481000 PhysicalDeviceShaderObjectFeaturesExt = 1000482000 PhysicalDeviceShaderObjectPropertiesExt ShaderCreateInfoExt + PhysicalDevicePipelineBinaryFeaturesKhr = 1000483000 + PipelineBinaryCreateInfoKhr + PipelineBinaryInfoKhr + PipelineBinaryKeyKhr + PhysicalDevicePipelineBinaryPropertiesKhr + ReleaseCapturedPipelineDataInfoKhr + PipelineBinaryDataInfoKhr + PipelineCreateInfoKhr + DevicePipelineBinaryInternalCacheControlKhr + PipelineBinaryHandlesInfoKhr PhysicalDeviceTilePropertiesFeaturesQcom = 1000484000 TilePropertiesQcom PhysicalDeviceAmigoProfilingFeaturesSec = 1000485000 @@ -2646,6 +2690,8 @@ type PhysicalDeviceRayTracingInvocationReorderPropertiesNv PhysicalDeviceExtendedSparseAddressSpaceFeaturesNv = 1000492000 PhysicalDeviceExtendedSparseAddressSpacePropertiesNv + PhysicalDeviceLegacyVertexAttributesFeaturesExt = 1000495000 + PhysicalDeviceLegacyVertexAttributesPropertiesExt LayerSettingsCreateInfoExt = 1000496000 PhysicalDeviceShaderCoreBuiltinsFeaturesArm = 1000497000 PhysicalDeviceShaderCoreBuiltinsPropertiesArm @@ -2665,6 +2711,7 @@ type PhysicalDeviceCooperativeMatrixPropertiesKhr PhysicalDeviceMultiviewPerViewRenderAreasFeaturesQcom = 1000510000 MultiviewPerViewRenderAreasRenderPassBeginInfoQcom + PhysicalDeviceComputeShaderDerivativesPropertiesKhr = 1000511000 VideoDecodeAv1CapabilitiesKhr = 1000512000 VideoDecodeAv1PictureInfoKhr VideoDecodeAv1ProfileInfoKhr = 1000512003 @@ -2703,14 +2750,27 @@ type BindDescriptorBufferEmbeddedSamplersInfoExt PhysicalDeviceDescriptorPoolOverallocationFeaturesNv = 1000546000 PhysicalDeviceRawAccessChainsFeaturesNv = 1000555000 + PhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKhr = 1000558000 + PhysicalDeviceCommandBufferInheritanceFeaturesNv = 1000559000 + PhysicalDeviceMaintenance7FeaturesKhr = 1000562000 + PhysicalDeviceMaintenance7PropertiesKhr + PhysicalDeviceLayeredApiPropertiesListKhr + PhysicalDeviceLayeredApiPropertiesKhr + PhysicalDeviceLayeredApiVulkanPropertiesKhr PhysicalDeviceShaderAtomicFloat16VectorFeaturesNv = 1000563000 + PhysicalDeviceShaderReplicatedCompositesFeaturesExt = 1000564000 + PhysicalDeviceRayTracingValidationFeaturesNv = 1000568000 + PhysicalDeviceImageAlignmentControlFeaturesMesa = 1000575000 + PhysicalDeviceImageAlignmentControlPropertiesMesa + ImageAlignmentControlCreateInfoMesa VkSubpassContents* {.size: sizeof(int32).} = enum Inline SecondaryCommandBuffers - InlineAndSecondaryCommandBuffersExt = 1000451000 + InlineAndSecondaryCommandBuffersKhr = 1000451000 VkResult* {.size: sizeof(int32).} = enum + VkErrorNotEnoughSpaceKhr = -1000483000 VkErrorCompressionExhaustedExt = -1000338000 VkErrorInvalidVideoStdParametersKhr = -1000299000 VkErrorNoPipelineMatch = -1000298001 @@ -2760,6 +2820,7 @@ type VkOperationNotDeferredKhr VkPipelineCompileRequired = 1000297000 VkIncompatibleShaderBinaryExt = 1000482000 + VkPipelineBinaryMissingKhr = 1000483000 VkDynamicState* {.size: sizeof(int32).} = enum Viewport @@ -2891,6 +2952,7 @@ type MicromapExt = 1000396000 OpticalFlowSessionNv = 1000464000 ShaderExt = 1000482000 + PipelineBinaryKhr = 1000483000 SemaphoreSciSyncPoolNv = 1000489000 VkRayTracingInvocationReorderModeNV* {.size: sizeof(int32).} = enum @@ -2901,6 +2963,15 @@ type Exclusive Inclusive + VkAntiLagModeAMD* {.size: sizeof(int32).} = enum + DriverControl + On + Off + + VkAntiLagStageAMD* {.size: sizeof(int32).} = enum + Input + Present + VkQueueFlagBits* {.size: sizeof(int32).} = enum GraphicsBit = 1 ComputeBit @@ -3177,6 +3248,8 @@ type RayTracingDisplacementMicromapBitNv = 268435456 DescriptorBufferBitExt = 536870912 ProtectedAccessOnlyBitExt = 1073741824 + CaptureDataBit = 2147483648 + EnableLegacyDitheringBitExt = 17179869184 VkPipelineShaderStageCreateFlagBits* {.size: sizeof(int32).} = enum AllowVaryingSubgroupSizeBit = 1 @@ -3375,8 +3448,7 @@ type Bt709NonlinearExt Bt2020LinearExt Hdr10St2084Ext - DolbyvisionExt - Hdr10HlgExt + Hdr10HlgExt = 1000104010 AdobergbLinearExt AdobergbNonlinearExt PassThroughExt @@ -3757,7 +3829,8 @@ type VariableDescriptorCountBit = 8 VkVendorId* {.size: sizeof(int32).} = enum - Viv = 65537 + Khronos = 65536 + Viv Vsi Kazan Codeplay @@ -3791,7 +3864,8 @@ type MesaDozen MesaNvk ImaginationOpenSourceMesa - MesaAgxv + MesaHoneykrisp + Reserved27 VkConditionalRenderingFlagBitsEXT* {.size: sizeof(int32).} = enum InvertedBit = 1 @@ -4412,7 +4486,7 @@ type SuspendingBit ResumingBit = 4 EnableLegacyDitheringBitExt = 8 - ContentsInlineBitExt = 16 + ContentsInlineBitKhr = 16 VkVideoEncodeH265CapabilityFlagBitsKHR* {.size: sizeof(int32).} = enum HrdComplianceBit = 1 @@ -4660,6 +4734,13 @@ type Min Max + VkPhysicalDeviceLayeredApiKHR* {.size: sizeof(int32).} = enum + Vulkan + D3d12 + Metal + Opengl + Opengles + VkLayeredDriverUnderlyingApiMSFT* {.size: sizeof(int32).} = enum None D3d12 @@ -4738,7 +4819,7 @@ const vkApiVersion1_0* = vkMakeVersion(0, 1, 0, 0) const vkApiVersion1_1* = vkMakeVersion(0, 1, 1, 0) const vkApiVersion1_2* = vkMakeVersion(0, 1, 2, 0) const vkApiVersion1_3* = vkMakeVersion(0, 1, 3, 0) -const vkHeaderVersion* = 279 +const vkHeaderVersion* = 295 const vkHeaderVersionComplete* = vkMakeVersion(0, 1, 3, vkHeaderVersion) type @@ -4988,6 +5069,7 @@ type VkFramebuffer* = distinct VkNonDispatchableHandle VkRenderPass* = distinct VkNonDispatchableHandle VkPipelineCache* = distinct VkNonDispatchableHandle + VkPipelineBinaryKHR* = distinct VkNonDispatchableHandle VkIndirectCommandsLayoutNV* = distinct VkNonDispatchableHandle VkDescriptorUpdateTemplate* = distinct VkNonDispatchableHandle VkDescriptorUpdateTemplateKHR* = VkDescriptorUpdateTemplate @@ -5736,6 +5818,54 @@ type offset*: uint32 size*: uint32 + VkPipelineBinaryCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + pKeysAndDataInfo*: ptr VkPipelineBinaryKeysAndDataKHR + pipeline*: VkPipeline + pPipelineCreateInfo*: ptr VkPipelineCreateInfoKHR + + VkPipelineBinaryHandlesInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + pipelineBinaryCount*: uint32 + pPipelineBinaries*: ptr VkPipelineBinaryKHR + + VkPipelineBinaryDataKHR* = object + dataSize*: uint + pData*: pointer + + VkPipelineBinaryKeysAndDataKHR* = object + binaryCount*: uint32 + pPipelineBinaryKeys*: ptr VkPipelineBinaryKeyKHR + pPipelineBinaryData*: ptr VkPipelineBinaryDataKHR + + VkPipelineBinaryKeyKHR* = object + sType*: VkStructureType + pNext*: pointer + keySize*: uint32 + key*: array[VK_MAX_PIPELINE_BINARY_KEY_SIZE_KHR, uint8] + + VkPipelineBinaryInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + binaryCount*: uint32 + pPipelineBinaries*: ptr VkPipelineBinaryKHR + + VkReleaseCapturedPipelineDataInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + pipeline*: VkPipeline + + VkPipelineBinaryDataInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + pipelineBinary*: VkPipelineBinaryKHR + + VkPipelineCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + VkPipelineLayoutCreateInfo* = object sType*: VkStructureType pNext*: pointer @@ -7873,6 +8003,42 @@ type maxCombinedImageSamplerDescriptorCount*: uint32 fragmentShadingRateClampCombinerInputs*: VkBool32 + VkPhysicalDeviceMaintenance7FeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + maintenance7*: VkBool32 + + VkPhysicalDeviceMaintenance7PropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + robustFragmentShadingRateAttachmentAccess*: VkBool32 + separateDepthStencilAttachmentAccess*: VkBool32 + maxDescriptorSetTotalUniformBuffersDynamic*: uint32 + maxDescriptorSetTotalStorageBuffersDynamic*: uint32 + maxDescriptorSetTotalBuffersDynamic*: uint32 + maxDescriptorSetUpdateAfterBindTotalUniformBuffersDynamic*: uint32 + maxDescriptorSetUpdateAfterBindTotalStorageBuffersDynamic*: uint32 + maxDescriptorSetUpdateAfterBindTotalBuffersDynamic*: uint32 + + VkPhysicalDeviceLayeredApiPropertiesListKHR* = object + sType*: VkStructureType + pNext*: pointer + layeredApiCount*: uint32 + pLayeredApis*: ptr VkPhysicalDeviceLayeredApiPropertiesKHR + + VkPhysicalDeviceLayeredApiPropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + vendorID*: uint32 + deviceID*: uint32 + layeredAPI*: VkPhysicalDeviceLayeredApiKHR + deviceName*: array[VK_MAX_PHYSICAL_DEVICE_NAME_SIZE, char] + + VkPhysicalDeviceLayeredApiVulkanPropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + properties*: VkPhysicalDeviceProperties2 + VkRenderingAreaInfoKHR* = object sType*: VkStructureType pNext*: pointer @@ -8583,12 +8749,19 @@ type pNext*: pointer cornerSampledImage*: VkBool32 - VkPhysicalDeviceComputeShaderDerivativesFeaturesNV* = object + VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR* = object sType*: VkStructureType pNext*: pointer computeDerivativeGroupQuads*: VkBool32 computeDerivativeGroupLinear*: VkBool32 + VkPhysicalDeviceComputeShaderDerivativesFeaturesNV* = VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR + + VkPhysicalDeviceComputeShaderDerivativesPropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + meshAndTaskShaderDerivatives*: VkBool32 + VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV* = VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR VkPhysicalDeviceShaderImageFootprintFeaturesNV* = object @@ -10484,6 +10657,16 @@ type pNext*: pointer attachmentFeedbackLoopDynamicState*: VkBool32 + VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + legacyVertexAttributes*: VkBool32 + + VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + nativeUnalignedPerformance*: VkBool32 + VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT* = object sType*: VkStructureType pNext*: pointer @@ -10525,6 +10708,11 @@ type pNext*: pointer externalMemoryRDMA*: VkBool32 + VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + shaderRelaxedExtendedInstruction*: VkBool32 + VkVertexInputBindingDescription2EXT* = object sType*: VkStructureType pNext*: pointer @@ -10977,26 +11165,8 @@ type queryCount*: uint32 StdVideoH264ProfileIdc* {.nodecl.} = object StdVideoH264LevelIdc* {.nodecl.} = object - StdVideoH264ChromaFormatIdc* {.nodecl.} = object - StdVideoH264PocType* {.nodecl.} = object - StdVideoH264SpsFlags* {.nodecl.} = object - StdVideoH264ScalingLists* {.nodecl.} = object - StdVideoH264SequenceParameterSetVui* {.nodecl.} = object - StdVideoH264AspectRatioIdc* {.nodecl.} = object - StdVideoH264HrdParameters* {.nodecl.} = object - StdVideoH264SpsVuiFlags* {.nodecl.} = object - StdVideoH264WeightedBipredIdc* {.nodecl.} = object - StdVideoH264PpsFlags* {.nodecl.} = object - StdVideoH264SliceType* {.nodecl.} = object - StdVideoH264CabacInitIdc* {.nodecl.} = object - StdVideoH264DisableDeblockingFilterIdc* {.nodecl.} = object - StdVideoH264PictureType* {.nodecl.} = object - StdVideoH264ModificationOfPicNumsIdc* {.nodecl.} = object - StdVideoH264MemMgmtControlOp* {.nodecl.} = object StdVideoDecodeH264PictureInfo* {.nodecl.} = object StdVideoDecodeH264ReferenceInfo* {.nodecl.} = object - StdVideoDecodeH264PictureInfoFlags* {.nodecl.} = object - StdVideoDecodeH264ReferenceInfoFlags* {.nodecl.} = object VkVideoDecodeH264ProfileInfoKHR* = object sType*: VkStructureType @@ -11042,24 +11212,9 @@ type StdVideoH265VideoParameterSet* {.nodecl.} = object StdVideoH265SequenceParameterSet* {.nodecl.} = object StdVideoH265PictureParameterSet* {.nodecl.} = object - StdVideoH265DecPicBufMgr* {.nodecl.} = object - StdVideoH265HrdParameters* {.nodecl.} = object - StdVideoH265VpsFlags* {.nodecl.} = object StdVideoH265LevelIdc* {.nodecl.} = object - StdVideoH265SpsFlags* {.nodecl.} = object - StdVideoH265ScalingLists* {.nodecl.} = object - StdVideoH265SequenceParameterSetVui* {.nodecl.} = object - StdVideoH265PredictorPaletteEntries* {.nodecl.} = object - StdVideoH265PpsFlags* {.nodecl.} = object - StdVideoH265SubLayerHrdParameters* {.nodecl.} = object - StdVideoH265HrdFlags* {.nodecl.} = object - StdVideoH265SpsVuiFlags* {.nodecl.} = object - StdVideoH265SliceType* {.nodecl.} = object - StdVideoH265PictureType* {.nodecl.} = object StdVideoDecodeH265PictureInfo* {.nodecl.} = object StdVideoDecodeH265ReferenceInfo* {.nodecl.} = object - StdVideoDecodeH265PictureInfoFlags* {.nodecl.} = object - StdVideoDecodeH265ReferenceInfoFlags* {.nodecl.} = object VkVideoDecodeH265ProfileInfoKHR* = object sType*: VkStructureType @@ -11294,13 +11449,6 @@ type StdVideoEncodeH264SliceHeader* {.nodecl.} = object StdVideoEncodeH264PictureInfo* {.nodecl.} = object StdVideoEncodeH264ReferenceInfo* {.nodecl.} = object - StdVideoEncodeH264SliceHeaderFlags* {.nodecl.} = object - StdVideoEncodeH264ReferenceListsInfo* {.nodecl.} = object - StdVideoEncodeH264PictureInfoFlags* {.nodecl.} = object - StdVideoEncodeH264ReferenceInfoFlags* {.nodecl.} = object - StdVideoEncodeH264RefMgmtFlags* {.nodecl.} = object - StdVideoEncodeH264RefListModEntry* {.nodecl.} = object - StdVideoEncodeH264RefPicMarkingEntry* {.nodecl.} = object VkVideoEncodeH264SessionCreateInfoKHR* = object sType*: VkStructureType @@ -11429,14 +11577,9 @@ type preferredConstantQp*: VkVideoEncodeH265QpKHR preferredMaxL0ReferenceCount*: uint32 preferredMaxL1ReferenceCount*: uint32 - StdVideoEncodeH265PictureInfoFlags* {.nodecl.} = object StdVideoEncodeH265PictureInfo* {.nodecl.} = object StdVideoEncodeH265SliceSegmentHeader* {.nodecl.} = object StdVideoEncodeH265ReferenceInfo* {.nodecl.} = object - StdVideoEncodeH265ReferenceListsInfo* {.nodecl.} = object - StdVideoEncodeH265SliceSegmentHeaderFlags* {.nodecl.} = object - StdVideoEncodeH265ReferenceInfoFlags* {.nodecl.} = object - StdVideoEncodeH265ReferenceModificationFlags* {.nodecl.} = object VkVideoEncodeH265SessionCreateInfoKHR* = object sType*: VkStructureType @@ -11787,6 +11930,11 @@ type rayTracingMotionBlur*: VkBool32 rayTracingMotionBlurPipelineTraceRaysIndirect*: VkBool32 + VkPhysicalDeviceRayTracingValidationFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + rayTracingValidation*: VkBool32 + VkAccelerationStructureGeometryMotionTrianglesDataNV* = object sType*: VkStructureType pNext*: pointer @@ -12111,6 +12259,25 @@ type pNext*: pointer graphicsPipelineLibrary*: VkBool32 + VkPhysicalDevicePipelineBinaryFeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + pipelineBinaries*: VkBool32 + + VkDevicePipelineBinaryInternalCacheControlKHR* = object + sType*: VkStructureType + pNext*: pointer + disableInternalCache*: VkBool32 + + VkPhysicalDevicePipelineBinaryPropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + pipelineBinaryInternalCache*: VkBool32 + pipelineBinaryInternalCacheControl*: VkBool32 + pipelineBinaryPrefersInternalCache*: VkBool32 + pipelineBinaryPrecompiledInternalCache*: VkBool32 + pipelineBinaryCompressedData*: VkBool32 + VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT* = object sType*: VkStructureType pNext*: pointer @@ -13004,6 +13171,24 @@ type infos*: VkDeviceOrHostAddressConstAMDX stride*: uint64 + VkPhysicalDeviceAntiLagFeaturesAMD* = object + sType*: VkStructureType + pNext*: pointer + antiLag*: VkBool32 + + VkAntiLagDataAMD* = object + sType*: VkStructureType + pNext*: pointer + mode*: VkAntiLagModeAMD + maxFPS*: uint32 + pPresentationInfo*: ptr VkAntiLagPresentationInfoAMD + + VkAntiLagPresentationInfoAMD* = object + sType*: VkStructureType + pNext*: pointer + stage*: VkAntiLagStageAMD + frameIndex*: uint64 + VkBindMemoryStatusKHR* = object sType*: VkStructureType pNext*: pointer @@ -13338,6 +13523,31 @@ type pNext*: pointer shaderRawAccessChains*: VkBool32 + VkPhysicalDeviceCommandBufferInheritanceFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + commandBufferInheritance*: VkBool32 + + VkPhysicalDeviceImageAlignmentControlFeaturesMESA* = object + sType*: VkStructureType + pNext*: pointer + imageAlignmentControl*: VkBool32 + + VkPhysicalDeviceImageAlignmentControlPropertiesMESA* = object + sType*: VkStructureType + pNext*: pointer + supportedImageAlignmentMask*: uint32 + + VkImageAlignmentControlCreateInfoMESA* = object + sType*: VkStructureType + pNext*: pointer + maximumRequestedAlignment*: uint32 + + VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + shaderReplicatedComposites*: VkBool32 + # Constructors proc newVkBaseOutStructure*(sType: VkStructureType, pNext: ptr VkBaseOutStructure): VkBaseOutStructure = @@ -14187,6 +14397,72 @@ proc newVkPushConstantRange*(stageFlags: VkShaderStageFlags, offset: uint32, siz size: size, ) +proc newVkPipelineBinaryCreateInfoKHR*(sType: VkStructureType = VkStructureType.PipelineBinaryCreateInfoKHR, pNext: pointer = nil, pKeysAndDataInfo: ptr VkPipelineBinaryKeysAndDataKHR, pipeline: VkPipeline, pPipelineCreateInfo: ptr VkPipelineCreateInfoKHR): VkPipelineBinaryCreateInfoKHR = + result = VkPipelineBinaryCreateInfoKHR( + sType: sType, + pNext: pNext, + pKeysAndDataInfo: pKeysAndDataInfo, + pipeline: pipeline, + pPipelineCreateInfo: pPipelineCreateInfo, + ) + +proc newVkPipelineBinaryHandlesInfoKHR*(sType: VkStructureType = VkStructureType.PipelineBinaryHandlesInfoKHR, pNext: pointer = nil, pipelineBinaries: openarray[VkPipelineBinaryKHR]): VkPipelineBinaryHandlesInfoKHR = + result = VkPipelineBinaryHandlesInfoKHR( + sType: sType, + pNext: pNext, + pipelineBinaryCount: len(pipelineBinaries).uint32, + pPipelineBinaries: if len(pipelineBinaries) == 0: nil else: cast[ptr VkPipelineBinaryKHR](pipelineBinaries), + ) + +proc newVkPipelineBinaryDataKHR*(dataSize: uint, pData: pointer = nil): VkPipelineBinaryDataKHR = + result = VkPipelineBinaryDataKHR( + dataSize: dataSize, + pData: pData, + ) + +proc newVkPipelineBinaryKeysAndDataKHR*(pipelineBinaryKeys: openarray[VkPipelineBinaryKeyKHR], pipelineBinaryData: openarray[VkPipelineBinaryDataKHR]): VkPipelineBinaryKeysAndDataKHR = + result = VkPipelineBinaryKeysAndDataKHR( + binaryCount: len(pipelineBinaryKeys).uint32, + pPipelineBinaryKeys: if len(pipelineBinaryKeys) == 0: nil else: cast[ptr VkPipelineBinaryKeyKHR](pipelineBinaryKeys), + pPipelineBinaryData: if len(pipelineBinaryData) == 0: nil else: cast[ptr VkPipelineBinaryDataKHR](pipelineBinaryData), + ) + +proc newVkPipelineBinaryKeyKHR*(sType: VkStructureType = VkStructureType.PipelineBinaryKeyKHR, pNext: pointer = nil, keySize: uint32, key: array[VK_MAX_PIPELINE_BINARY_KEY_SIZE_KHR, uint8]): VkPipelineBinaryKeyKHR = + result = VkPipelineBinaryKeyKHR( + sType: sType, + pNext: pNext, + keySize: keySize, + key: key, + ) + +proc newVkPipelineBinaryInfoKHR*(sType: VkStructureType = VkStructureType.PipelineBinaryInfoKHR, pNext: pointer = nil, pipelineBinaries: openarray[VkPipelineBinaryKHR]): VkPipelineBinaryInfoKHR = + result = VkPipelineBinaryInfoKHR( + sType: sType, + pNext: pNext, + binaryCount: len(pipelineBinaries).uint32, + pPipelineBinaries: if len(pipelineBinaries) == 0: nil else: cast[ptr VkPipelineBinaryKHR](pipelineBinaries), + ) + +proc newVkReleaseCapturedPipelineDataInfoKHR*(sType: VkStructureType = VkStructureType.ReleaseCapturedPipelineDataInfoKHR, pNext: pointer = nil, pipeline: VkPipeline): VkReleaseCapturedPipelineDataInfoKHR = + result = VkReleaseCapturedPipelineDataInfoKHR( + sType: sType, + pNext: pNext, + pipeline: pipeline, + ) + +proc newVkPipelineBinaryDataInfoKHR*(sType: VkStructureType = VkStructureType.PipelineBinaryDataInfoKHR, pNext: pointer = nil, pipelineBinary: VkPipelineBinaryKHR): VkPipelineBinaryDataInfoKHR = + result = VkPipelineBinaryDataInfoKHR( + sType: sType, + pNext: pNext, + pipelineBinary: pipelineBinary, + ) + +proc newVkPipelineCreateInfoKHR*(sType: VkStructureType = VkStructureType.PipelineCreateInfoKHR, pNext: pointer = nil): VkPipelineCreateInfoKHR = + result = VkPipelineCreateInfoKHR( + sType: sType, + pNext: pNext, + ) + proc newVkPipelineLayoutCreateInfo*(sType: VkStructureType = VkStructureType.PipelineLayoutCreateInfo, pNext: pointer = nil, flags: VkPipelineLayoutCreateFlags = 0.VkPipelineLayoutCreateFlags, setLayouts: openarray[VkDescriptorSetLayout], pushConstantRanges: openarray[VkPushConstantRange]): VkPipelineLayoutCreateInfo = result = VkPipelineLayoutCreateInfo( sType: sType, @@ -16709,6 +16985,52 @@ proc newVkPhysicalDeviceMaintenance6PropertiesKHR*(sType: VkStructureType = VkSt fragmentShadingRateClampCombinerInputs: fragmentShadingRateClampCombinerInputs, ) +proc newVkPhysicalDeviceMaintenance7FeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceMaintenance7FeaturesKHR, pNext: pointer = nil, maintenance7: VkBool32): VkPhysicalDeviceMaintenance7FeaturesKHR = + result = VkPhysicalDeviceMaintenance7FeaturesKHR( + sType: sType, + pNext: pNext, + maintenance7: maintenance7, + ) + +proc newVkPhysicalDeviceMaintenance7PropertiesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceMaintenance7PropertiesKHR, pNext: pointer = nil, robustFragmentShadingRateAttachmentAccess: VkBool32, separateDepthStencilAttachmentAccess: VkBool32, maxDescriptorSetTotalUniformBuffersDynamic: uint32, maxDescriptorSetTotalStorageBuffersDynamic: uint32, maxDescriptorSetTotalBuffersDynamic: uint32, maxDescriptorSetUpdateAfterBindTotalUniformBuffersDynamic: uint32, maxDescriptorSetUpdateAfterBindTotalStorageBuffersDynamic: uint32, maxDescriptorSetUpdateAfterBindTotalBuffersDynamic: uint32): VkPhysicalDeviceMaintenance7PropertiesKHR = + result = VkPhysicalDeviceMaintenance7PropertiesKHR( + sType: sType, + pNext: pNext, + robustFragmentShadingRateAttachmentAccess: robustFragmentShadingRateAttachmentAccess, + separateDepthStencilAttachmentAccess: separateDepthStencilAttachmentAccess, + maxDescriptorSetTotalUniformBuffersDynamic: maxDescriptorSetTotalUniformBuffersDynamic, + maxDescriptorSetTotalStorageBuffersDynamic: maxDescriptorSetTotalStorageBuffersDynamic, + maxDescriptorSetTotalBuffersDynamic: maxDescriptorSetTotalBuffersDynamic, + maxDescriptorSetUpdateAfterBindTotalUniformBuffersDynamic: maxDescriptorSetUpdateAfterBindTotalUniformBuffersDynamic, + maxDescriptorSetUpdateAfterBindTotalStorageBuffersDynamic: maxDescriptorSetUpdateAfterBindTotalStorageBuffersDynamic, + maxDescriptorSetUpdateAfterBindTotalBuffersDynamic: maxDescriptorSetUpdateAfterBindTotalBuffersDynamic, + ) + +proc newVkPhysicalDeviceLayeredApiPropertiesListKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceLayeredApiPropertiesListKHR, pNext: pointer = nil, layeredApis: openarray[VkPhysicalDeviceLayeredApiPropertiesKHR]): VkPhysicalDeviceLayeredApiPropertiesListKHR = + result = VkPhysicalDeviceLayeredApiPropertiesListKHR( + sType: sType, + pNext: pNext, + layeredApiCount: len(layeredApis).uint32, + pLayeredApis: if len(layeredApis) == 0: nil else: cast[ptr VkPhysicalDeviceLayeredApiPropertiesKHR](layeredApis), + ) + +proc newVkPhysicalDeviceLayeredApiPropertiesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceLayeredApiPropertiesKHR, pNext: pointer = nil, vendorID: uint32, deviceID: uint32, layeredAPI: VkPhysicalDeviceLayeredApiKHR, deviceName: array[VK_MAX_PHYSICAL_DEVICE_NAME_SIZE, char]): VkPhysicalDeviceLayeredApiPropertiesKHR = + result = VkPhysicalDeviceLayeredApiPropertiesKHR( + sType: sType, + pNext: pNext, + vendorID: vendorID, + deviceID: deviceID, + layeredAPI: layeredAPI, + deviceName: deviceName, + ) + +proc newVkPhysicalDeviceLayeredApiVulkanPropertiesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceLayeredApiVulkanPropertiesKHR, pNext: pointer = nil, properties: VkPhysicalDeviceProperties2): VkPhysicalDeviceLayeredApiVulkanPropertiesKHR = + result = VkPhysicalDeviceLayeredApiVulkanPropertiesKHR( + sType: sType, + pNext: pNext, + properties: properties, + ) + proc newVkRenderingAreaInfoKHR*(sType: VkStructureType = VkStructureType.RenderingAreaInfoKHR, pNext: pointer = nil, viewMask: uint32, colorAttachmentFormats: openarray[VkFormat], depthAttachmentFormat: VkFormat, stencilAttachmentFormat: VkFormat): VkRenderingAreaInfoKHR = result = VkRenderingAreaInfoKHR( sType: sType, @@ -17511,14 +17833,21 @@ proc newVkPhysicalDeviceCornerSampledImageFeaturesNV*(sType: VkStructureType = V cornerSampledImage: cornerSampledImage, ) -proc newVkPhysicalDeviceComputeShaderDerivativesFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceComputeShaderDerivativesFeaturesNV, pNext: pointer = nil, computeDerivativeGroupQuads: VkBool32, computeDerivativeGroupLinear: VkBool32): VkPhysicalDeviceComputeShaderDerivativesFeaturesNV = - result = VkPhysicalDeviceComputeShaderDerivativesFeaturesNV( +proc newVkPhysicalDeviceComputeShaderDerivativesFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceComputeShaderDerivativesFeaturesKHR, pNext: pointer = nil, computeDerivativeGroupQuads: VkBool32, computeDerivativeGroupLinear: VkBool32): VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR = + result = VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR( sType: sType, pNext: pNext, computeDerivativeGroupQuads: computeDerivativeGroupQuads, computeDerivativeGroupLinear: computeDerivativeGroupLinear, ) +proc newVkPhysicalDeviceComputeShaderDerivativesPropertiesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceComputeShaderDerivativesPropertiesKHR, pNext: pointer = nil, meshAndTaskShaderDerivatives: VkBool32): VkPhysicalDeviceComputeShaderDerivativesPropertiesKHR = + result = VkPhysicalDeviceComputeShaderDerivativesPropertiesKHR( + sType: sType, + pNext: pNext, + meshAndTaskShaderDerivatives: meshAndTaskShaderDerivatives, + ) + proc newVkPhysicalDeviceShaderImageFootprintFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderImageFootprintFeaturesNV, pNext: pointer = nil, imageFootprint: VkBool32): VkPhysicalDeviceShaderImageFootprintFeaturesNV = result = VkPhysicalDeviceShaderImageFootprintFeaturesNV( sType: sType, @@ -19732,6 +20061,20 @@ proc newVkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT*(sType: Vk attachmentFeedbackLoopDynamicState: attachmentFeedbackLoopDynamicState, ) +proc newVkPhysicalDeviceLegacyVertexAttributesFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceLegacyVertexAttributesFeaturesEXT, pNext: pointer = nil, legacyVertexAttributes: VkBool32): VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT = + result = VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT( + sType: sType, + pNext: pNext, + legacyVertexAttributes: legacyVertexAttributes, + ) + +proc newVkPhysicalDeviceLegacyVertexAttributesPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceLegacyVertexAttributesPropertiesEXT, pNext: pointer = nil, nativeUnalignedPerformance: VkBool32): VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT = + result = VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT( + sType: sType, + pNext: pNext, + nativeUnalignedPerformance: nativeUnalignedPerformance, + ) + proc newVkPhysicalDeviceMutableDescriptorTypeFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceMutableDescriptorTypeFeaturesEXT, pNext: pointer = nil, mutableDescriptorType: VkBool32): VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT = result = VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT( sType: sType, @@ -19781,6 +20124,13 @@ proc newVkPhysicalDeviceExternalMemoryRDMAFeaturesNV*(sType: VkStructureType = V externalMemoryRDMA: externalMemoryRDMA, ) +proc newVkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR, pNext: pointer = nil, shaderRelaxedExtendedInstruction: VkBool32): VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR = + result = VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR( + sType: sType, + pNext: pNext, + shaderRelaxedExtendedInstruction: shaderRelaxedExtendedInstruction, + ) + proc newVkVertexInputBindingDescription2EXT*(sType: VkStructureType = VkStructureType.VertexInputBindingDescription2EXT, pNext: pointer = nil, binding: uint32, stride: uint32, inputRate: VkVertexInputRate, divisor: uint32): VkVertexInputBindingDescription2EXT = result = VkVertexInputBindingDescription2EXT( sType: sType, @@ -21234,6 +21584,13 @@ proc newVkPhysicalDeviceRayTracingMotionBlurFeaturesNV*(sType: VkStructureType = rayTracingMotionBlurPipelineTraceRaysIndirect: rayTracingMotionBlurPipelineTraceRaysIndirect, ) +proc newVkPhysicalDeviceRayTracingValidationFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceRayTracingValidationFeaturesNV, pNext: pointer = nil, rayTracingValidation: VkBool32): VkPhysicalDeviceRayTracingValidationFeaturesNV = + result = VkPhysicalDeviceRayTracingValidationFeaturesNV( + sType: sType, + pNext: pNext, + rayTracingValidation: rayTracingValidation, + ) + proc newVkAccelerationStructureGeometryMotionTrianglesDataNV*(sType: VkStructureType = VkStructureType.AccelerationStructureGeometryMotionTrianglesDataNV, pNext: pointer = nil, vertexData: VkDeviceOrHostAddressConstKHR): VkAccelerationStructureGeometryMotionTrianglesDataNV = result = VkAccelerationStructureGeometryMotionTrianglesDataNV( sType: sType, @@ -21612,6 +21969,31 @@ proc newVkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT*(sType: VkStructureTy graphicsPipelineLibrary: graphicsPipelineLibrary, ) +proc newVkPhysicalDevicePipelineBinaryFeaturesKHR*(sType: VkStructureType = VkStructureType.PhysicalDevicePipelineBinaryFeaturesKHR, pNext: pointer = nil, pipelineBinaries: VkBool32): VkPhysicalDevicePipelineBinaryFeaturesKHR = + result = VkPhysicalDevicePipelineBinaryFeaturesKHR( + sType: sType, + pNext: pNext, + pipelineBinaries: pipelineBinaries, + ) + +proc newVkDevicePipelineBinaryInternalCacheControlKHR*(sType: VkStructureType = VkStructureType.DevicePipelineBinaryInternalCacheControlKHR, pNext: pointer = nil, disableInternalCache: VkBool32): VkDevicePipelineBinaryInternalCacheControlKHR = + result = VkDevicePipelineBinaryInternalCacheControlKHR( + sType: sType, + pNext: pNext, + disableInternalCache: disableInternalCache, + ) + +proc newVkPhysicalDevicePipelineBinaryPropertiesKHR*(sType: VkStructureType = VkStructureType.PhysicalDevicePipelineBinaryPropertiesKHR, pNext: pointer = nil, pipelineBinaryInternalCache: VkBool32, pipelineBinaryInternalCacheControl: VkBool32, pipelineBinaryPrefersInternalCache: VkBool32, pipelineBinaryPrecompiledInternalCache: VkBool32, pipelineBinaryCompressedData: VkBool32): VkPhysicalDevicePipelineBinaryPropertiesKHR = + result = VkPhysicalDevicePipelineBinaryPropertiesKHR( + sType: sType, + pNext: pNext, + pipelineBinaryInternalCache: pipelineBinaryInternalCache, + pipelineBinaryInternalCacheControl: pipelineBinaryInternalCacheControl, + pipelineBinaryPrefersInternalCache: pipelineBinaryPrefersInternalCache, + pipelineBinaryPrecompiledInternalCache: pipelineBinaryPrecompiledInternalCache, + pipelineBinaryCompressedData: pipelineBinaryCompressedData, + ) + proc newVkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT, pNext: pointer = nil, graphicsPipelineLibraryFastLinking: VkBool32, graphicsPipelineLibraryIndependentInterpolationDecoration: VkBool32): VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT = result = VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT( sType: sType, @@ -22773,6 +23155,30 @@ proc newVkDispatchGraphCountInfoAMDX*(count: uint32, infos: VkDeviceOrHostAddres stride: stride, ) +proc newVkPhysicalDeviceAntiLagFeaturesAMD*(sType: VkStructureType = VkStructureType.PhysicalDeviceAntiLagFeaturesAMD, pNext: pointer = nil, antiLag: VkBool32): VkPhysicalDeviceAntiLagFeaturesAMD = + result = VkPhysicalDeviceAntiLagFeaturesAMD( + sType: sType, + pNext: pNext, + antiLag: antiLag, + ) + +proc newVkAntiLagDataAMD*(sType: VkStructureType = VkStructureType.AntiLagDataAMD, pNext: pointer = nil, mode: VkAntiLagModeAMD, maxFPS: uint32, pPresentationInfo: ptr VkAntiLagPresentationInfoAMD): VkAntiLagDataAMD = + result = VkAntiLagDataAMD( + sType: sType, + pNext: pNext, + mode: mode, + maxFPS: maxFPS, + pPresentationInfo: pPresentationInfo, + ) + +proc newVkAntiLagPresentationInfoAMD*(sType: VkStructureType = VkStructureType.AntiLagPresentationInfoAMD, pNext: pointer = nil, stage: VkAntiLagStageAMD, frameIndex: uint64): VkAntiLagPresentationInfoAMD = + result = VkAntiLagPresentationInfoAMD( + sType: sType, + pNext: pNext, + stage: stage, + frameIndex: frameIndex, + ) + proc newVkBindMemoryStatusKHR*(sType: VkStructureType = VkStructureType.BindMemoryStatusKHR, pNext: pointer = nil, pResult: ptr VkResult): VkBindMemoryStatusKHR = result = VkBindMemoryStatusKHR( sType: sType, @@ -23217,6 +23623,41 @@ proc newVkPhysicalDeviceRawAccessChainsFeaturesNV*(sType: VkStructureType = VkSt shaderRawAccessChains: shaderRawAccessChains, ) +proc newVkPhysicalDeviceCommandBufferInheritanceFeaturesNV*(sType: VkStructureType = VkStructureType.PhysicalDeviceCommandBufferInheritanceFeaturesNV, pNext: pointer = nil, commandBufferInheritance: VkBool32): VkPhysicalDeviceCommandBufferInheritanceFeaturesNV = + result = VkPhysicalDeviceCommandBufferInheritanceFeaturesNV( + sType: sType, + pNext: pNext, + commandBufferInheritance: commandBufferInheritance, + ) + +proc newVkPhysicalDeviceImageAlignmentControlFeaturesMESA*(sType: VkStructureType = VkStructureType.PhysicalDeviceImageAlignmentControlFeaturesMESA, pNext: pointer = nil, imageAlignmentControl: VkBool32): VkPhysicalDeviceImageAlignmentControlFeaturesMESA = + result = VkPhysicalDeviceImageAlignmentControlFeaturesMESA( + sType: sType, + pNext: pNext, + imageAlignmentControl: imageAlignmentControl, + ) + +proc newVkPhysicalDeviceImageAlignmentControlPropertiesMESA*(sType: VkStructureType = VkStructureType.PhysicalDeviceImageAlignmentControlPropertiesMESA, pNext: pointer = nil, supportedImageAlignmentMask: uint32): VkPhysicalDeviceImageAlignmentControlPropertiesMESA = + result = VkPhysicalDeviceImageAlignmentControlPropertiesMESA( + sType: sType, + pNext: pNext, + supportedImageAlignmentMask: supportedImageAlignmentMask, + ) + +proc newVkImageAlignmentControlCreateInfoMESA*(sType: VkStructureType = VkStructureType.ImageAlignmentControlCreateInfoMESA, pNext: pointer = nil, maximumRequestedAlignment: uint32): VkImageAlignmentControlCreateInfoMESA = + result = VkImageAlignmentControlCreateInfoMESA( + sType: sType, + pNext: pNext, + maximumRequestedAlignment: maximumRequestedAlignment, + ) + +proc newVkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT*(sType: VkStructureType = VkStructureType.PhysicalDeviceShaderReplicatedCompositesFeaturesEXT, pNext: pointer = nil, shaderReplicatedComposites: VkBool32): VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT = + result = VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT( + sType: sType, + pNext: pNext, + shaderReplicatedComposites: shaderReplicatedComposites, + ) + # Procs var vkDestroyInstance*: proc (instance: VkInstance, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} @@ -23282,6 +23723,11 @@ var vkDestroyPipelineCache*: proc (device: VkDevice, pipelineCache: VkPipelineCache, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} vkGetPipelineCacheData*: proc (device: VkDevice, pipelineCache: VkPipelineCache, pDataSize: ptr uint, pData: pointer): VkResult {.stdcall.} vkMergePipelineCaches*: proc (device: VkDevice, dstCache: VkPipelineCache, srcCacheCount: uint32, pSrcCaches: ptr VkPipelineCache): VkResult {.stdcall.} + vkCreatePipelineBinariesKHR*: proc (device: VkDevice, pCreateInfo: ptr VkPipelineBinaryCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pBinaries: ptr VkPipelineBinaryHandlesInfoKHR): VkResult {.stdcall.} + vkDestroyPipelineBinaryKHR*: proc (device: VkDevice, pipelineBinary: VkPipelineBinaryKHR, pAllocator: ptr VkAllocationCallbacks) {.stdcall.} + vkGetPipelineKeyKHR*: proc (device: VkDevice, pPipelineCreateInfo: ptr VkPipelineCreateInfoKHR, pPipelineKey: ptr VkPipelineBinaryKeyKHR): VkResult {.stdcall.} + vkGetPipelineBinaryDataKHR*: proc (device: VkDevice, pInfo: ptr VkPipelineBinaryDataInfoKHR, pPipelineBinaryKey: ptr VkPipelineBinaryKeyKHR, pPipelineBinaryDataSize: ptr uint, pPipelineBinaryData: pointer): VkResult {.stdcall.} + vkReleaseCapturedPipelineDataKHR*: proc (device: VkDevice, pInfo: ptr VkReleaseCapturedPipelineDataInfoKHR, pAllocator: ptr VkAllocationCallbacks): VkResult {.stdcall.} vkCreateGraphicsPipelines*: proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkGraphicsPipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} vkCreateComputePipelines*: proc (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkComputePipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.stdcall.} vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI*: proc (device: VkDevice, renderpass: VkRenderPass, pMaxWorkgroupSize: ptr VkExtent2D): VkResult {.stdcall.} @@ -23640,6 +24086,7 @@ var vkDeferredOperationJoinKHR*: proc (device: VkDevice, operation: VkDeferredOperationKHR): VkResult {.stdcall.} vkGetPipelineIndirectMemoryRequirementsNV*: proc (device: VkDevice, pCreateInfo: ptr VkComputePipelineCreateInfo, pMemoryRequirements: ptr VkMemoryRequirements2) {.stdcall.} vkGetPipelineIndirectDeviceAddressNV*: proc (device: VkDevice, pInfo: ptr VkPipelineIndirectDeviceAddressInfoNV): VkDeviceAddress {.stdcall.} + vkAntiLagUpdateAMD*: proc (device: VkDevice, pData: ptr VkAntiLagDataAMD) {.stdcall.} vkCmdSetCullMode*: proc (commandBuffer: VkCommandBuffer, cullMode: VkCullModeFlags) {.stdcall.} vkCmdSetFrontFace*: proc (commandBuffer: VkCommandBuffer, frontFace: VkFrontFace) {.stdcall.} vkCmdSetPrimitiveTopology*: proc (commandBuffer: VkCommandBuffer, primitiveTopology: VkPrimitiveTopology) {.stdcall.} @@ -23830,7 +24277,7 @@ var vkGetLatencyTimingsNV*: proc (device: VkDevice, swapchain: VkSwapchainKHR, pLatencyMarkerInfo: ptr VkGetLatencyMarkerInfoNV) {.stdcall.} vkQueueNotifyOutOfBandNV*: proc (queue: VkQueue, pQueueTypeInfo: ptr VkOutOfBandQueueTypeInfoNV) {.stdcall.} vkCmdSetRenderingAttachmentLocationsKHR*: proc (commandBuffer: VkCommandBuffer, pLocationInfo: ptr VkRenderingAttachmentLocationInfoKHR) {.stdcall.} - vkCmdSetRenderingInputAttachmentIndicesKHR*: proc (commandBuffer: VkCommandBuffer, pLocationInfo: ptr VkRenderingInputAttachmentIndexInfoKHR) {.stdcall.} + vkCmdSetRenderingInputAttachmentIndicesKHR*: proc (commandBuffer: VkCommandBuffer, pInputAttachmentIndexInfo: ptr VkRenderingInputAttachmentIndexInfoKHR) {.stdcall.} # Vulkan 1_0 proc vkLoad1_0*() = @@ -24226,7 +24673,6 @@ proc loadVK_KHR_external_semaphore_fd*() = proc loadVK_KHR_push_descriptor*() = vkCmdPushDescriptorSetKHR = cast[proc (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, set: uint32, descriptorWriteCount: uint32, pDescriptorWrites: ptr VkWriteDescriptorSet) {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetKHR")) vkCmdPushDescriptorSetWithTemplateKHR = cast[proc (commandBuffer: VkCommandBuffer, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: uint32, pData: pointer) {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplateKHR")) - vkCmdPushDescriptorSetWithTemplateKHR = cast[proc (commandBuffer: VkCommandBuffer, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: uint32, pData: pointer) {.stdcall.}](vkGetProc("vkCmdPushDescriptorSetWithTemplateKHR")) # Load VK_EXT_conditional_rendering proc loadVK_EXT_conditional_rendering*() = @@ -24467,7 +24913,7 @@ proc loadVK_KHR_fragment_shading_rate*() = # Load VK_KHR_dynamic_rendering_local_read proc loadVK_KHR_dynamic_rendering_local_read*() = vkCmdSetRenderingAttachmentLocationsKHR = cast[proc (commandBuffer: VkCommandBuffer, pLocationInfo: ptr VkRenderingAttachmentLocationInfoKHR) {.stdcall.}](vkGetProc("vkCmdSetRenderingAttachmentLocationsKHR")) - vkCmdSetRenderingInputAttachmentIndicesKHR = cast[proc (commandBuffer: VkCommandBuffer, pLocationInfo: ptr VkRenderingInputAttachmentIndexInfoKHR) {.stdcall.}](vkGetProc("vkCmdSetRenderingInputAttachmentIndicesKHR")) + vkCmdSetRenderingInputAttachmentIndicesKHR = cast[proc (commandBuffer: VkCommandBuffer, pInputAttachmentIndexInfo: ptr VkRenderingInputAttachmentIndexInfoKHR) {.stdcall.}](vkGetProc("vkCmdSetRenderingInputAttachmentIndicesKHR")) # Load VK_KHR_present_wait proc loadVK_KHR_present_wait*() = @@ -24487,7 +24933,6 @@ proc loadVK_EXT_full_screen_exclusive*() = vkAcquireFullScreenExclusiveModeEXT = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR): VkResult {.stdcall.}](vkGetProc("vkAcquireFullScreenExclusiveModeEXT")) vkReleaseFullScreenExclusiveModeEXT = cast[proc (device: VkDevice, swapchain: VkSwapchainKHR): VkResult {.stdcall.}](vkGetProc("vkReleaseFullScreenExclusiveModeEXT")) vkGetDeviceGroupSurfacePresentModes2EXT = cast[proc (device: VkDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pModes: ptr VkDeviceGroupPresentModeFlagsKHR): VkResult {.stdcall.}](vkGetProc("vkGetDeviceGroupSurfacePresentModes2EXT")) - vkGetDeviceGroupSurfacePresentModes2EXT = cast[proc (device: VkDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pModes: ptr VkDeviceGroupPresentModeFlagsKHR): VkResult {.stdcall.}](vkGetProc("vkGetDeviceGroupSurfacePresentModes2EXT")) # Load VK_EXT_headless_surface proc loadVK_EXT_headless_surface*() = @@ -24787,6 +25232,10 @@ proc loadVK_KHR_maintenance5*() = vkGetDeviceImageSubresourceLayoutKHR = cast[proc (device: VkDevice, pInfo: ptr VkDeviceImageSubresourceInfoKHR, pLayout: ptr VkSubresourceLayout2KHR) {.stdcall.}](vkGetProc("vkGetDeviceImageSubresourceLayoutKHR")) vkGetImageSubresourceLayout2KHR = cast[proc (device: VkDevice, image: VkImage, pSubresource: ptr VkImageSubresource2KHR, pLayout: ptr VkSubresourceLayout2KHR) {.stdcall.}](vkGetProc("vkGetImageSubresourceLayout2KHR")) +# Load VK_AMD_anti_lag +proc loadVK_AMD_anti_lag*() = + vkAntiLagUpdateAMD = cast[proc (device: VkDevice, pData: ptr VkAntiLagDataAMD) {.stdcall.}](vkGetProc("vkAntiLagUpdateAMD")) + # Load VK_EXT_shader_object proc loadVK_EXT_shader_object*() = vkCreateShadersEXT = cast[proc (device: VkDevice, createInfoCount: uint32, pCreateInfos: ptr VkShaderCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pShaders: ptr VkShaderEXT): VkResult {.stdcall.}](vkGetProc("vkCreateShadersEXT")) @@ -24828,6 +25277,14 @@ proc loadVK_EXT_shader_object*() = vkCmdSetRepresentativeFragmentTestEnableNV = cast[proc (commandBuffer: VkCommandBuffer, representativeFragmentTestEnable: VkBool32) {.stdcall.}](vkGetProc("vkCmdSetRepresentativeFragmentTestEnableNV")) vkCmdSetCoverageReductionModeNV = cast[proc (commandBuffer: VkCommandBuffer, coverageReductionMode: VkCoverageReductionModeNV) {.stdcall.}](vkGetProc("vkCmdSetCoverageReductionModeNV")) +# Load VK_KHR_pipeline_binary +proc loadVK_KHR_pipeline_binary*() = + vkCreatePipelineBinariesKHR = cast[proc (device: VkDevice, pCreateInfo: ptr VkPipelineBinaryCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pBinaries: ptr VkPipelineBinaryHandlesInfoKHR): VkResult {.stdcall.}](vkGetProc("vkCreatePipelineBinariesKHR")) + vkDestroyPipelineBinaryKHR = cast[proc (device: VkDevice, pipelineBinary: VkPipelineBinaryKHR, pAllocator: ptr VkAllocationCallbacks) {.stdcall.}](vkGetProc("vkDestroyPipelineBinaryKHR")) + vkGetPipelineKeyKHR = cast[proc (device: VkDevice, pPipelineCreateInfo: ptr VkPipelineCreateInfoKHR, pPipelineKey: ptr VkPipelineBinaryKeyKHR): VkResult {.stdcall.}](vkGetProc("vkGetPipelineKeyKHR")) + vkGetPipelineBinaryDataKHR = cast[proc (device: VkDevice, pInfo: ptr VkPipelineBinaryDataInfoKHR, pPipelineBinaryKey: ptr VkPipelineBinaryKeyKHR, pPipelineBinaryDataSize: ptr uint, pPipelineBinaryData: pointer): VkResult {.stdcall.}](vkGetProc("vkGetPipelineBinaryDataKHR")) + vkReleaseCapturedPipelineDataKHR = cast[proc (device: VkDevice, pInfo: ptr VkReleaseCapturedPipelineDataInfoKHR, pAllocator: ptr VkAllocationCallbacks): VkResult {.stdcall.}](vkGetProc("vkReleaseCapturedPipelineDataKHR")) + # Load VK_QCOM_tile_properties proc loadVK_QCOM_tile_properties*() = vkGetFramebufferTilePropertiesQCOM = cast[proc (device: VkDevice, framebuffer: VkFramebuffer, pPropertiesCount: ptr uint32, pProperties: ptr VkTilePropertiesQCOM): VkResult {.stdcall.}](vkGetProc("vkGetFramebufferTilePropertiesQCOM")) @@ -24921,6 +25378,7 @@ proc `==`*(x, y: VkQueryPool): bool {.borrow.} proc `==`*(x, y: VkFramebuffer): bool {.borrow.} proc `==`*(x, y: VkRenderPass): bool {.borrow.} proc `==`*(x, y: VkPipelineCache): bool {.borrow.} +proc `==`*(x, y: VkPipelineBinaryKHR): bool {.borrow.} proc `==`*(x, y: VkIndirectCommandsLayoutNV): bool {.borrow.} proc `==`*(x, y: VkDescriptorUpdateTemplate): bool {.borrow.} proc `==`*(x, y: VkSamplerYcbcrConversion): bool {.borrow.} diff --git a/tools/generator.nim b/tools/generator.nim index 4425f68..9977ee1 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -130,7 +130,7 @@ proc genTypes(node: XmlNode, output: var string) = elif name == "VK_API_VERSION_1_3": output.add("const vkApiVersion1_3* = vkMakeVersion(0, 1, 3, 0)\n") elif name == "VK_HEADER_VERSION": - output.add("const vkHeaderVersion* = 279\n") + output.add("const vkHeaderVersion* = 295\n") elif name == "VK_HEADER_VERSION_COMPLETE": output.add("const vkHeaderVersionComplete* = vkMakeVersion(0, 1, 3, vkHeaderVersion)\n") else: @@ -390,7 +390,11 @@ proc genEnums(node: XmlNode, output: var string) = enumValue = "VK_QUEUE_FAMILY_EXTERNAL" elif enumName == "VK_MAX_DEVICE_GROUP_SIZE_KHR": enumValue = "VK_MAX_DEVICE_GROUP_SIZE" - output.add(&" {enumName}* = {enumValue}\n") + # elif enumName == "VK_TRUE": + # enumValue = "VK_BOOL32(1)" + # elif enumName == "VK_FALSE": + # enumValue = "VK_BOOL32(0)" + output.add(&" {enumName.camelCaseAscii()}* = {enumValue.camelCaseAscii()}\n") for extOrFeat in extOrFeature.items: if extOrFeat.tag == "feature": continue let name = extOrFeat.attr("name") @@ -406,7 +410,7 @@ proc genEnums(node: XmlNode, output: var string) = let enumName = e.attr("name") if not enumName.endsWith("EXTENSION_NAME") and not enumName.endsWith("SPEC_VERSION"): continue var enumValue = e.attr("value") - output.add(&" {enumName}* = {enumValue}\n") + output.add(&" {enumName.camelCaseAscii()}* = {enumValue}\n") for enums in node.findAll("enums"): let name = enums.attr("name") if name == "API Constants": continue @@ -570,6 +574,7 @@ proc genFeatures(node: XmlNode, output: var string) = # if feature.attr("supported") == "disabled": continue if feature.attr("api") == "vulkansc": continue let number = feature.attr("number").replace(".", "_") + if feature.attr("api") == "": continue output.add(&"\n# Vulkan {number}\n") output.add(&"proc vkLoad{number}*() =\n") for command in feature.findAll("command"): From 15005010ebf79667e1eb6506bbff8647262be7ef Mon Sep 17 00:00:00 2001 From: Antonis Geralis Date: Mon, 19 Jan 2026 10:40:24 +0200 Subject: [PATCH 52/57] v1.3.295 --- vulkan.nimble | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vulkan.nimble b/vulkan.nimble index aa5b648..8adfaaf 100644 --- a/vulkan.nimble +++ b/vulkan.nimble @@ -1,6 +1,6 @@ # Package -version = "1.2.1" +version = "1.3.295" author = "Leonardo Mariscal" description = "Vulkan bindings for Nim" license = "MIT" From dc09582af0abbae7e877f92a4a09254a8533e659 Mon Sep 17 00:00:00 2001 From: Jaremy Creechley Date: Tue, 20 Jan 2026 01:17:51 -0700 Subject: [PATCH 53/57] update and modernize --- .gitignore | 185 +-- config.nims | 19 + examples/config.nims | 4 + examples/mandelbrot/LICENSE.md | 4 + examples/mandelbrot/mandelbrot.nim | 436 ++++++ examples/mandelbrot/mandelbrot.nimble | 12 + .../mandelbrot/shaders/mandelbrot.comp.glsl | 62 + examples/run_mandelbrot.nim | 489 ++++++ examples/run_triangle.nim | 38 + src/vulkan.nim | 3 + src/vulkan/headers.nim | 1382 +++++++++++++++++ src/vulkan/wrapper.nim | 222 +++ tests/test.nim | 44 +- tests/test_wrapper.nim | 12 + tests/triangle.nim | 51 +- vulkan.nimble | 13 +- 16 files changed, 2742 insertions(+), 234 deletions(-) create mode 100644 config.nims create mode 100644 examples/config.nims create mode 100644 examples/mandelbrot/LICENSE.md create mode 100644 examples/mandelbrot/mandelbrot.nim create mode 100644 examples/mandelbrot/mandelbrot.nimble create mode 100644 examples/mandelbrot/shaders/mandelbrot.comp.glsl create mode 100644 examples/run_mandelbrot.nim create mode 100644 examples/run_triangle.nim create mode 100644 src/vulkan/headers.nim create mode 100644 src/vulkan/wrapper.nim create mode 100644 tests/test_wrapper.nim diff --git a/.gitignore b/.gitignore index 8a70a52..ca20992 100644 --- a/.gitignore +++ b/.gitignore @@ -1,171 +1,20 @@ -### C ### -# Prerequisites -*.d - -# Object files -*.o -*.ko -*.obj -*.elf - -# Linker output -*.ilk -*.map -*.exp - -# Precompiled Headers -*.gch -*.pch - -# Executables -*.exe +* +!*/ +!*.* +nim.cfg +vendor/*/ +nimcache *.out -*.app -*.i*86 -*.x86_64 -*.hex -# Debug files +.tool-versions *.dSYM/ -*.su -*.idb -*.pdb - -# Kernel Module Compile Results -*.mod* -*.cmd -.tmp_versions/ -modules.order -Module.symvers -Mkfile.old -dkms.conf - -### C++ ### -# Prerequisites - -# Compiled Object files -*.slo - -# Precompiled Headers - -# Compiled Dynamic libraries - -# Fortran module files -*.mod -*.smod - -# Compiled Static libraries -*.lai - -# Executables - -### Linux ### -*~ - -# temporary files which can be created if a process still has a handle open of a deleted file -.fuse_hidden* - -# KDE directory preferences -.directory - -# Linux trash folder which might appear on any partition or disk -.Trash-* - -# .nfs files are created when an open file is removed but is still being accessed -.nfs* - -### macOS ### -*.DS_Store -.AppleDouble -.LSOverride - -# Icon must end with two \r -Icon - -# Thumbnails -._* - -# Files that might appear in the root of a volume -.DocumentRevisions-V100 -.fseventsd -.Spotlight-V100 -.TemporaryItems -.Trashes -.VolumeIcon.icns -.com.apple.timemachine.donotpresent - -# Directories potentially created on remote AFP share -.AppleDB -.AppleDesktop -Network Trash Folder -Temporary Items -.apdisk - -### Nim ### -nimcache/ - -### OSX ### - -# Icon must end with two \r - -# Thumbnails - -# Files that might appear in the root of a volume - -# Directories potentially created on remote AFP share - -### VisualStudioCode ### -.vscode/* -!.vscode/settings.json -!.vscode/tasks.json -!.vscode/launch.json -!.vscode/extensions.json -.history - -### Windows ### -# Windows thumbnail cache files -Thumbs.db -ehthumbs.db -ehthumbs_vista.db - -# Folder config file -Desktop.ini - -# Recycle Bin used on file shares -$RECYCLE.BIN/ - -# Binaries -[Bb]in/ - -# Windows Installer files -*.cab -*.msi -*.msm -*.msp - -# Windows shortcuts -*.lnk - -# Dynamic Libraries -*.dll -*.so -*.dylib - -### NimGL ### - -# Tests -tests/general -tests/tgeneral -tests/tglfw -tests/tmath -tests/topengl -tests/test -tests/triangle -tools/generator -imgui.ini -docs/ - -# End of https://www.gitignore.io/api/c,osx,nim,c++,linux,macos,windows,visualstudiocode - -vk.xml -vk_layer_settings.txt +/*.png +nimble.develop +nimble.paths +.nimcache +deps/ +/examples/mandelbrot/build/ +.nimcache +nimbledeps +*.qoi +*.xml diff --git a/config.nims b/config.nims new file mode 100644 index 0000000..c946035 --- /dev/null +++ b/config.nims @@ -0,0 +1,19 @@ +import std/[strutils, os] + +task test, "Run tests/test.nim": + exec("nim c -r tests/test.nim") + exec("nim c -r tests/test_wrapper.nim") + exec("nim c examples/run_triangle.nim") + exec("nim c examples/run_mandelbrot.nim") + +task gen, "Generate bindings from source": + exec("nim c -d:ssl -r tools/generator.nim") + +task shaders, "Compile GLSL shaders to SPIR-V format": + let + shaderDir = "examples/mandelbrot/shaders" + outputDir = "examples/mandelbrot/build/shaders" + mkDir(outputDir) + for f in listFiles(shaderDir): + if f.endsWith(".glsl"): + exec "glslc -g -fshader-stage=comp " & f & " -o " & outputDir / splitFile(f).name & ".spv" diff --git a/examples/config.nims b/examples/config.nims new file mode 100644 index 0000000..dc86cf2 --- /dev/null +++ b/examples/config.nims @@ -0,0 +1,4 @@ +--path:"../src" +--define:vulkan +--path:"../deps/mandelbrot/src" +--path:"../deps/glfw" diff --git a/examples/mandelbrot/LICENSE.md b/examples/mandelbrot/LICENSE.md new file mode 100644 index 0000000..3d03943 --- /dev/null +++ b/examples/mandelbrot/LICENSE.md @@ -0,0 +1,4 @@ +Public Domain - Antonis Geralis + +see: https://github.com/planetis-m/mandelbrot/tree/master + diff --git a/examples/mandelbrot/mandelbrot.nim b/examples/mandelbrot/mandelbrot.nim new file mode 100644 index 0000000..cdaff95 --- /dev/null +++ b/examples/mandelbrot/mandelbrot.nim @@ -0,0 +1,436 @@ +# https://youtu.be/1BMGTyIF5dI +import std/[sequtils, math, strutils], chroma +import vulkan +import vulkan/wrapper + +## Ported from https://github.com/planetis-m/mandelbrot/tree/master +## + +type + MandelbrotGenerator* = object + width, height: int32 + workgroupSize: WorkgroupSize + instance: VkInstance + physicalDevice: VkPhysicalDevice + device: VkDevice + queue: VkQueue + queueFamilyIndex: uint32 + storageBuffer: VkBuffer + storageBufferMemory: VkDeviceMemory + uniformBuffer: VkBuffer + uniformBufferMemory: VkDeviceMemory + descriptorSetLayout: VkDescriptorSetLayout + descriptorPool: VkDescriptorPool + descriptorSets: seq[VkDescriptorSet] + pipelineLayout: VkPipelineLayout + pipeline: VkPipeline + commandPool: VkCommandPool + commandBuffer: VkCommandBuffer + when defined(vkDebug): + debugUtilsMessenger: VkDebugUtilsMessengerEXT + + WorkgroupSize = object + x, y: uint32 + +proc cleanup(x: MandelbrotGenerator) = + # Clean up + freeMemory(x.device, x.uniformBufferMemory) + destroyBuffer(x.device, x.uniformBuffer) + freeMemory(x.device, x.storageBufferMemory) + destroyBuffer(x.device, x.storageBuffer) + destroyPipeline(x.device, x.pipeline) + destroyPipelineLayout(x.device, x.pipelineLayout) + destroyDescriptorPool(x.device, x.descriptorPool) + destroyDescriptorSetLayout(x.device, x.descriptorSetLayout) + destroyCommandPool(x.device, x.commandPool) + destroyDevice(x.device) + when defined(vkDebug): + destroyDebugUtilsMessenger(x.instance, x.debugUtilsMessenger) + destroyInstance(x.instance) + +proc newMandelbrotGenerator*(width, height: int32): MandelbrotGenerator = + ## Create a generator with the width and the height of the image. + result = MandelbrotGenerator( + width: width, + height: height, + workgroupSize: WorkgroupSize(x: 32, y: 32) + ) + +proc fetchRenderedImage(x: MandelbrotGenerator): seq[ColorRGBA] = + let count = x.width*x.height + let mappedMemory = mapMemory(x.device, x.storageBufferMemory, 0.VkDeviceSize, + VkDeviceSize(sizeof(Color)*count), 0.VkMemoryMapFlags) + let data = cast[ptr UncheckedArray[Color]](mappedMemory) + result = newSeq[ColorRGBA](count) + # Transform data from [0.0f, 1.0f] (float) to [0, 255] (uint8). + for i in 0..result.high: + result[i] = rgba(data[i]) + unmapMemory(x.device, x.storageBufferMemory) + +proc getLayers(): seq[cstring] = + result = @[] + when defined(vkDebug): + result.add("VK_LAYER_KHRONOS_validation") + +proc getExtensions(): seq[cstring] = + result = @[] + when defined(vkDebug): + result.add(VK_EXT_DEBUG_UTILS_EXTENSION_NAME) + +proc createInstance(x: var MandelbrotGenerator) = + # Create an ApplicationInfo struct + let applicationInfo = newVkApplicationInfo( + pApplicationName = "Mandelbrot", + applicationVersion = vkMakeVersion(0, 1, 0, 0), + pEngineName = "No Engine", + engineVersion = vkMakeVersion(0, 1, 0, 0), + apiVersion = vkApiVersion1_3 + ) + when defined(vkDebug): + # Enable the Khronos validation layer + let layerProperties = enumerateInstanceLayerProperties() + let foundValidationLayer = layerProperties.anyIt( + "VK_LAYER_KHRONOS_validation" == cast[cstring](it.layerName.addr)) + assert foundValidationLayer, "Validation layer required, but not available" + # Shader printf is a feature of the validation layers that needs to be enabled + let features = newVkValidationFeaturesEXT( + enabledValidationFeatures = [VkValidationFeatureEnableEXT.DebugPrintf], + disabledValidationFeatures = [] + ) + # Create a Vulkan instance + let layers = getLayers() + let extensions = getExtensions() + let instanceCreateInfo = newVkInstanceCreateInfo( + pNext = when defined(vkDebug): addr features else: nil, + pApplicationInfo = applicationInfo.addr, + pEnabledLayerNames = layers, + pEnabledExtensionNames = extensions + ) + x.instance = createInstance(instanceCreateInfo) + +proc findPhysicalDevice(x: var MandelbrotGenerator) = + # Enumerate physical devices + let physicalDevices = enumeratePhysicalDevices(x.instance) + assert physicalDevices.len > 0, "Cannot find any physical devices." + # We simply choose the first available physical device. + x.physicalDevice = physicalDevices[0] + +proc getComputeQueueFamilyIndex(physicalDevice: VkPhysicalDevice): uint32 = + # Find a compute queue family + let queueFamilyProperties = getQueueFamilyProperties(physicalDevice) + for i in 0 ..< queueFamilyProperties.len: + let property = queueFamilyProperties[i] + if property.queueCount > 0 and + VkQueueFlagBits.ComputeBit in property.queueFlags: + return i.uint32 + assert false, "Could not find a queue family that supports operations" + +proc createDevice(x: var MandelbrotGenerator) = + x.queueFamilyIndex = getComputeQueueFamilyIndex(x.physicalDevice) + let queuePriority: array[1, float32] = [1.0] + let queueCreateInfo = newVkDeviceQueueCreateInfo( + queueFamilyIndex = x.queueFamilyIndex, + queuePriorities = queuePriority + ) + let layers = getLayers() + # let features = VkPhysicalDeviceFeatures( + # robustBufferAccess: true.VkBool32, + # fragmentStoresAndAtomics: true.VkBool32, + # vertexPipelineStoresAndAtomics: true.VkBool32 + # ) + let deviceCreateInfo = newVkDeviceCreateInfo( + queueCreateInfos = [queueCreateInfo], + pEnabledLayerNames = layers, + pEnabledExtensionNames = [], + enabledFeatures = [] + ) + # Create a logical device + x.device = createDevice(x.physicalDevice, deviceCreateInfo) + # Get the compute queue + x.queue = getDeviceQueue(x.device, x.queueFamilyIndex, 0) + +proc findMemoryType(physicalDevice: VkPhysicalDevice, typeFilter: uint32, + size: VkDeviceSize, properties: VkMemoryPropertyFlags): uint32 = + # Find a suitable memory type for a Vulkan physical device + let memoryProperties = getPhysicalDeviceMemoryProperties(physicalDevice) + for i in 0 ..< memoryProperties.memoryTypeCount.int: + let memoryType = memoryProperties.memoryTypes[i] + if (typeFilter and (1'u32 shl i.uint32)) != 0 and + memoryType.propertyFlags >= properties and + size <= memoryProperties.memoryHeaps[memoryType.heapIndex].size: + return i.uint32 + assert false, "Failed to find suitable memory type" + +proc createBuffer(x: MandelbrotGenerator, size: VkDeviceSize, usage: VkBufferUsageFlags, + properties: VkMemoryPropertyFlags): tuple[buffer: VkBuffer, memory: VkDeviceMemory] = + let bufferCreateInfo = newVkBufferCreateInfo( + size = size, + usage = usage, + sharingMode = VkSharingMode.Exclusive, + queueFamilyIndices = [] + ) + let buffer = createBuffer(x.device, bufferCreateInfo) + # Memory requirements + let bufferMemoryRequirements = getBufferMemoryRequirements(x.device, buffer) + # Allocate memory for the buffer + let allocInfo = newVkMemoryAllocateInfo( + allocationSize = bufferMemoryRequirements.size, + memoryTypeIndex = findMemoryType(x.physicalDevice, + bufferMemoryRequirements.memoryTypeBits, + bufferMemoryRequirements.size, properties) + ) + let bufferMemory = allocateMemory(x.device, allocInfo) + # Bind the memory to the buffer + bindBufferMemory(x.device, buffer, bufferMemory, 0.VkDeviceSize) + result = (buffer, bufferMemory) + +proc createBuffers(x: var MandelbrotGenerator) = + # Allocate memory for both buffers + (x.storageBuffer, x.storageBufferMemory) = x.createBuffer( + VkDeviceSize(sizeof(float32)*4*x.width*x.height), + VkBufferUsageFlags{StorageBufferBit}, + VkMemoryPropertyFlags{HostCoherentBit, HostVisibleBit}) + (x.uniformBuffer, x.uniformBufferMemory) = x.createBuffer( + VkDeviceSize(sizeof(int32)*2), + VkBufferUsageFlags{UniformBufferBit}, + VkMemoryPropertyFlags{HostCoherentBit, HostVisibleBit}) + # Map the memory and write to the uniform buffer + let mappedMemory = mapMemory(x.device, x.uniformBufferMemory, 0.VkDeviceSize, + VkDeviceSize(sizeof(int32)*2), 0.VkMemoryMapFlags) + let ubo = [x.width.int32, x.height.int32] + copyMem(mappedMemory, ubo.addr, sizeof(int32)*2) + unmapMemory(x.device, x.uniformBufferMemory) + +proc createDescriptorSetLayout(x: var MandelbrotGenerator) = + # Define the descriptor set layout bindings + let bindings = [ + newVkDescriptorSetLayoutBinding( + binding = 0, + descriptorType = VkDescriptorType.StorageBuffer, + descriptorCount = 1, + stageFlags = VkShaderStageFlags{ComputeBit}, + pImmutableSamplers = nil + ), + newVkDescriptorSetLayoutBinding( + binding = 1, + descriptorType = VkDescriptorType.UniformBuffer, + descriptorCount = 1, + stageFlags = VkShaderStageFlags{ComputeBit}, + pImmutableSamplers = nil + ) + ] + # Create a descriptor set layout + let createInfo = newVkDescriptorSetLayoutCreateInfo( + bindings = bindings + ) + x.descriptorSetLayout = createDescriptorSetLayout(x.device, createInfo) + +proc createDescriptorSets(x: var MandelbrotGenerator) = + # Create a descriptor pool + let descriptorPoolSizes = [ + newVkDescriptorPoolSize( + `type` = VkDescriptorType.StorageBuffer, + descriptorCount = 1 + ), + newVkDescriptorPoolSize( + `type` = VkDescriptorType.UniformBuffer, + descriptorCount = 1 + ) + ] + let descriptorPoolCreateInfo = newVkDescriptorPoolCreateInfo( + maxSets = 2, + poolSizes = descriptorPoolSizes + ) + x.descriptorPool = createDescriptorPool(x.device, descriptorPoolCreateInfo) + # Allocate a descriptor set + let descriptorSetAllocateInfo = newVkDescriptorSetAllocateInfo( + descriptorPool = x.descriptorPool, + setLayouts = [x.descriptorSetLayout] + ) + let descriptorSet = allocateDescriptorSets(x.device, descriptorSetAllocateInfo) + x.descriptorSets = @[descriptorSet] + # Update the descriptor set with the buffer information + let descriptorStorageBufferInfo = newVkDescriptorBufferInfo( + buffer = x.storageBuffer, + offset = 0.VkDeviceSize, + range = VkDeviceSize(sizeof(float32)*4*x.width*x.height) + ) + let descriptorUniformBufferInfo = newVkDescriptorBufferInfo( + buffer = x.uniformBuffer, + offset = 0.VkDeviceSize, + range = VkDeviceSize(sizeof(int32)*2) + ) + let writeDescriptorSets = [ + newVkWriteDescriptorSet( + dstSet = x.descriptorSets[0], + dstBinding = 0, + dstArrayElement = 0, + descriptorCount = 1, + descriptorType = VkDescriptorType.StorageBuffer, + pImageInfo = nil, + pBufferInfo = descriptorStorageBufferInfo.addr, + pTexelBufferView = nil + ), + newVkWriteDescriptorSet( + dstSet = x.descriptorSets[0], + dstBinding = 1, + dstArrayElement = 0, + descriptorCount = 1, + descriptorType = VkDescriptorType.UniformBuffer, + pImageInfo = nil, + pBufferInfo = descriptorUniformBufferInfo.addr, + pTexelBufferView = nil + ) + ] + updateDescriptorSets(x.device, writeDescriptorSets, []) + +proc createComputePipeline(x: var MandelbrotGenerator) = + # Create the shader module + let shaderModuleCreateInfo = newVkShaderModuleCreateInfo( + code = readFile("examples/mandelbrot/build/shaders/mandelbrot.comp.spv") + ) + let computeShaderModule = createShaderModule(x.device, shaderModuleCreateInfo) + let specializationMapEntries = [ + newVkSpecializationMapEntry( + constantID = 0, + offset = offsetOf(WorkgroupSize, x).uint32, + size = sizeof(uint32).uint + ), + newVkSpecializationMapEntry( + constantID = 1, + offset = offsetOf(WorkgroupSize, y).uint32, + size = sizeof(uint32).uint + ) + ] + let specializationInfo = newVkSpecializationInfo( + mapEntries = specializationMapEntries, + dataSize = sizeof(WorkgroupSize).uint, + pData = x.workgroupSize.addr + ) + let shaderStageCreateInfo = newVkPipelineShaderStageCreateInfo( + stage = VkShaderStageFlagBits.ComputeBit, + module = computeShaderModule, + pName = "main", + pSpecializationInfo = specializationInfo.addr + ) + # Create a pipeline layout with the descriptor set layout + let pipelineLayoutCreateInfo = newVkPipelineLayoutCreateInfo( + setLayouts = [x.descriptorSetLayout], + pushConstantRanges = [] + ) + x.pipelineLayout = createPipelineLayout(x.device, pipelineLayoutCreateInfo) + # Create the compute pipeline + let createInfos = [ + newVkComputePipelineCreateInfo( + stage = shaderStageCreateInfo, + layout = x.pipelineLayout, + basePipelineHandle = 0.VkPipeline, + basePipelineIndex = -1 + ) + ] + x.pipeline = createComputePipelines(x.device, 0.VkPipelineCache, createInfos) + destroyShaderModule(x.device, computeShaderModule) + +proc createCommandBuffer(x: var MandelbrotGenerator) = + # Create a command pool + let commandPoolCreateInfo = newVkCommandPoolCreateInfo( + queueFamilyIndex = x.queueFamilyIndex + ) + x.commandPool = createCommandPool(x.device, commandPoolCreateInfo) + # Allocate a command buffer from the command pool + let commandBufferAllocateInfo = newVkCommandBufferAllocateInfo( + commandPool = x.commandPool, + level = VkCommandBufferLevel.Primary, + commandBufferCount = 1 + ) + x.commandBuffer = allocateCommandBuffers(x.device, commandBufferAllocateInfo) + # Begin recording the command buffer + let commandBufferBeginInfo = newVkCommandBufferBeginInfo( + flags = VkCommandBufferUsageFlags{OneTimeSubmitBit}, + pInheritanceInfo = nil + ) + beginCommandBuffer(x.commandBuffer, commandBufferBeginInfo) + # Bind the compute pipeline + cmdBindPipeline(x.commandBuffer, VkPipelineBindPoint.Compute, x.pipeline) + # Bind the descriptor set + cmdBindDescriptorSets(x.commandBuffer, VkPipelineBindPoint.Compute, + x.pipelineLayout, 0, x.descriptorSets, []) + # Dispatch the compute work + let numWorkgroupX = ceilDiv(x.width.uint32, x.workgroupSize.x) + let numWorkgroupY = ceilDiv(x.height.uint32, x.workgroupSize.y) + cmdDispatch(x.commandBuffer, numWorkgroupX, numWorkgroupY, 1) + # End recording the command buffer + endCommandBuffer(x.commandBuffer) + +proc submitCommandBuffer(x: MandelbrotGenerator) = + let submitInfos = [ + newVkSubmitInfo( + waitSemaphores = [], + waitDstStageMask = [], + commandBuffers = [x.commandBuffer], + signalSemaphores = [] + ) + ] + # Create a fence + let fenceCreateInfo = newVkFenceCreateInfo() + let fence = createFence(x.device, fenceCreateInfo) + when defined(useRenderDoc): startFrameCapture(x.instance) + # Submit the command buffer + queueSubmit(x.queue, submitInfos, fence) + when defined(useRenderDoc): endFrameCapture(x.instance) + # Wait for the fence to be signaled, indicating completion of the command buffer execution + waitForFence(x.device, fence, true.VkBool32, high(uint64)) + destroyFence(x.device, fence) + +when defined(vkDebug): + proc debugCallback(messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEXT, + messageTypes: VkDebugUtilsMessageTypeFlagsEXT, + pCallbackData: ptr VkDebugUtilsMessengerCallbackDataEXT, + pUserData: pointer): VkBool32 {.cdecl.} = + var message = $pCallbackData.pMessage + if "WARNING-DEBUG-PRINTF" == pCallbackData.pMessageIdName: + # Validation messages are a bit verbose. + let delimiter = "| vkQueueSubmit(): " + if (let pos = message.find(delimiter); pos >= 0): + # Extract the part of the message after the delimiter + message = message.substr(pos + len(delimiter)) + stderr.writeLine(message) + return false.VkBool32 + + proc setupDebugUtilsMessenger(x: var MandelbrotGenerator) = + let severityFlags = VkDebugUtilsMessageSeverityFlagsEXT{ + VerboseBit, InfoBit, WarningBit, ErrorBit} + let messageTypeFlags = VkDebugUtilsMessageTypeFlagsEXT{ + GeneralBit, ValidationBit, PerformanceBit} + let createInfo = newVkDebugUtilsMessengerCreateInfoEXT( + messageSeverity = severityFlags, + messageType = messageTypeFlags, + pfnUserCallback = debugCallback + ) + x.debugUtilsMessenger = createDebugUtilsMessengerEXT(x.instance, createInfo) + +proc generate*(x: var MandelbrotGenerator): seq[ColorRGBA] = + ## Return the raw data of a mandelbrot image. + try: + vkPreload() + # Hardware Setup Stage + createInstance(x) + vkInit(x.instance, load1_2 = false, load1_3 = false) + when defined(vkDebug): + loadVkExtDebugUtils() + setupDebugUtilsMessenger(x) + findPhysicalDevice(x) + createDevice(x) + # Resource Setup Stage + createBuffers(x) + # Pipeline Setup Stage + createDescriptorSetLayout(x) + createDescriptorSets(x) + createComputePipeline(x) + # Command Execution Stage + createCommandBuffer(x) + submitCommandBuffer(x) + # Fetch data from VRAM to RAM. + result = fetchRenderedImage(x) + finally: + cleanup(x) diff --git a/examples/mandelbrot/mandelbrot.nimble b/examples/mandelbrot/mandelbrot.nimble new file mode 100644 index 0000000..dcdac4e --- /dev/null +++ b/examples/mandelbrot/mandelbrot.nimble @@ -0,0 +1,12 @@ +# Package +version = "0.1.0" +author = "Antonis Geralis" +description = "Vulkan compute example" +license = "Public Domain" + +# Dependencies +requires "nim >= 2.1.0" +requires "pixie >= 5.0.7" +requires "https://github.com/planetis-m/vulkan.git >= 1.3.279" + +include "build_shaders.nims" diff --git a/examples/mandelbrot/shaders/mandelbrot.comp.glsl b/examples/mandelbrot/shaders/mandelbrot.comp.glsl new file mode 100644 index 0000000..8c9649c --- /dev/null +++ b/examples/mandelbrot/shaders/mandelbrot.comp.glsl @@ -0,0 +1,62 @@ +#version 450 +#extension GL_EXT_debug_printf : require + +// We set local workgroup size via Specialization Constants. +layout (local_size_x_id = 0, local_size_y_id = 1) in; + +// Otherwise, we have to hard code the workgroup size in compute shader like +// below: +// layout (local_size_x = 32, local_size_y = 32) in; + +// We access image data via storage buffer. +layout (std140, binding = 0) buffer buf { + vec4 image[]; +}; + +// The size of image is accessed via uniform buffer. +layout (binding = 1) uniform UBO { + int width; + int height; +} ubo; + +vec3 palette(float t) { + vec3 d = vec3(0.3f, 0.3f, 0.5f); + vec3 e = vec3(-0.2f, -0.3f, -0.5f); + vec3 f = vec3(2.1f, 2.0f, 3.0f); + vec3 g = vec3(0.0f, 0.1f, 0.0f); + + return d + e * cos(6.28318f * (f * t + g)); +} + +void main() { + // In order to fit the work into workgroups, some unnecessary invocations are + // launched. We terminate those invocations here. + if (gl_GlobalInvocationID.x >= ubo.width || + gl_GlobalInvocationID.y >= ubo.height) { return; } + + float x = float(gl_GlobalInvocationID.x) / float(ubo.width); + float y = float(gl_GlobalInvocationID.y) / float(ubo.height); + + // Code for computing mandelbrot set. + const vec2 uv = vec2(x, y - 0.5f) * + vec2(1.0f, float(ubo.height) / float(ubo.width)); + const vec2 c = uv * 3.0f + vec2(-2.1f, 0.0f); + vec2 z = vec2(0.0f); + const int m = 128; + int n = 0; + for (int i = 0; i < m; ++i) { + z = vec2(z.x * z.x - z.y * z.y, 2.0 * z.x * z.y) + c; + if (dot(z, z) > 4) { break; } + ++n; + } + + // We use a cosine palette to determine the color of pixels. + vec4 color = vec4(palette(float(n) / float(m)), 1.0f); + + // Debug printf output + if (gl_GlobalInvocationID == uvec3(0)) { + debugPrintfEXT("Invocation ID: %u", 0); + } + // Store the color data into the storage buffer. + image[ubo.width * gl_GlobalInvocationID.y + gl_GlobalInvocationID.x] = color; +} diff --git a/examples/run_mandelbrot.nim b/examples/run_mandelbrot.nim new file mode 100644 index 0000000..2750706 --- /dev/null +++ b/examples/run_mandelbrot.nim @@ -0,0 +1,489 @@ +import std/[strutils, os] +import sets +import chroma +import glfw +import glfw/wrapper as glfww +import vulkan +import vulkan/wrapper +import ./mandelbrot/mandelbrot + +{.pragma: glfwImport, dynlib: "libglfw.so.3".} +proc glfwCreateWindowSurface*(instance: VkInstance, window: glfww.Window, + allocator: ptr VkAllocationCallbacks, + surface: ptr VkSurfaceKHR): VkResult + {.glfwImport, importc: "glfwCreateWindowSurface".} + +const + deviceExtensions = ["VK_KHR_swapchain"] + + +type + QueueFamilyIndices = object + graphicsFamily: uint32 + graphicsFamilyFound: bool + presentFamily: uint32 + presentFamilyFound: bool + + SwapChainSupportDetails = object + capabilities: VkSurfaceCapabilitiesKHR + formats: seq[VkSurfaceFormatKHR] + presentModes: seq[VkPresentModeKHR] + + SwapChain = object + handle: VkSwapchainKHR + images: seq[VkImage] + format: VkFormat + extent: VkExtent2D + +proc isComplete(indices: QueueFamilyIndices): bool = + indices.graphicsFamilyFound and indices.presentFamilyFound + +proc findQueueFamilies(pDevice: VkPhysicalDevice, surface: VkSurfaceKHR): QueueFamilyIndices = + var queueFamilyCount: uint32 = 0 + vkGetPhysicalDeviceQueueFamilyProperties(pDevice, queueFamilyCount.addr, nil) + if queueFamilyCount == 0: + return + var queueFamilies = newSeq[VkQueueFamilyProperties](queueFamilyCount) + vkGetPhysicalDeviceQueueFamilyProperties(pDevice, queueFamilyCount.addr, queueFamilies[0].addr) + + var index: uint32 = 0 + for queueFamily in queueFamilies: + if (queueFamily.queueFlags.uint32 and VkQueueGraphicsBit.uint32) > 0'u32: + result.graphicsFamily = index + result.graphicsFamilyFound = true + var presentSupport: VkBool32 + discard vkGetPhysicalDeviceSurfaceSupportKHR(pDevice, index, surface, presentSupport.addr) + if presentSupport.ord == 1: + result.presentFamily = index + result.presentFamilyFound = true + if result.isComplete: + break + index.inc + +proc checkDeviceExtensionSupport(pDevice: VkPhysicalDevice): bool = + var extCount: uint32 + discard vkEnumerateDeviceExtensionProperties(pDevice, nil, extCount.addr, nil) + var availableExts = newSeq[VkExtensionProperties](extCount) + discard vkEnumerateDeviceExtensionProperties(pDevice, nil, extCount.addr, availableExts[0].addr) + + var requiredExts = deviceExtensions.toHashSet + for ext in availableExts.mitems: + requiredExts.excl($cast[cstring](ext.extensionName.addr)) + requiredExts.len == 0 + +proc querySwapChainSupport(pDevice: VkPhysicalDevice, surface: VkSurfaceKHR): SwapChainSupportDetails = + discard vkGetPhysicalDeviceSurfaceCapabilitiesKHR(pDevice, surface, result.capabilities.addr) + var formatCount: uint32 + discard vkGetPhysicalDeviceSurfaceFormatsKHR(pDevice, surface, formatCount.addr, nil) + if formatCount != 0: + result.formats.setLen(formatCount) + discard vkGetPhysicalDeviceSurfaceFormatsKHR(pDevice, surface, formatCount.addr, result.formats[0].addr) + var presentModeCount: uint32 + discard vkGetPhysicalDeviceSurfacePresentModesKHR(pDevice, surface, presentModeCount.addr, nil) + if presentModeCount != 0: + result.presentModes.setLen(presentModeCount) + discard vkGetPhysicalDeviceSurfacePresentModesKHR(pDevice, surface, presentModeCount.addr, result.presentModes[0].addr) + +proc isDeviceSuitable(pDevice: VkPhysicalDevice, surface: VkSurfaceKHR): bool = + let indices: QueueFamilyIndices = findQueueFamilies(pDevice, surface) + let extsSupported = pDevice.checkDeviceExtensionSupport + var swapChainAdequate = false + if extsSupported: + let swapChainSupport = querySwapChainSupport(pDevice, surface) + swapChainAdequate = + swapChainSupport.formats.len != 0 and + swapChainSupport.presentModes.len != 0 + indices.isComplete and extsSupported and swapChainAdequate + +proc chooseSwapSurfaceFormat(availableFormats: seq[VkSurfaceFormatKHR]): VkSurfaceFormatKHR = + for availableFormat in availableFormats: + if availableFormat.format == VK_FORMAT_R8G8B8A8_UNORM and + availableFormat.colorSpace == VK_COLOR_SPACE_SRGB_NONLINEAR_KHR: + return availableFormat + for availableFormat in availableFormats: + if availableFormat.format == VK_FORMAT_B8G8R8A8_UNORM and + availableFormat.colorSpace == VK_COLOR_SPACE_SRGB_NONLINEAR_KHR: + return availableFormat + availableFormats[0] + +proc chooseSwapPresentMode(availablePresentModes: seq[VkPresentModeKHR]): VkPresentModeKHR = + for presentMode in availablePresentModes: + if presentMode == VK_PRESENT_MODE_MAILBOX_KHR: + return presentMode + VK_PRESENT_MODE_FIFO_KHR + +proc chooseSwapExtent(capabilities: VkSurfaceCapabilitiesKHR, width, height: int32): VkExtent2D = + if capabilities.currentExtent.width != 0xFFFFFFFF'u32: + return capabilities.currentExtent + result.width = width.uint32 + result.height = height.uint32 + result.width = max(capabilities.minImageExtent.width, min(capabilities.maxImageExtent.width, result.width)) + result.height = max(capabilities.minImageExtent.height, min(capabilities.maxImageExtent.height, result.height)) + +proc createSwapChain(device: VkDevice, physicalDevice: VkPhysicalDevice, + surface: VkSurfaceKHR, width, height: int32): SwapChain = + let + swapChainSupport = querySwapChainSupport(physicalDevice, surface) + surfaceFormat = chooseSwapSurfaceFormat(swapChainSupport.formats) + presentMode = chooseSwapPresentMode(swapChainSupport.presentModes) + extent = chooseSwapExtent(swapChainSupport.capabilities, width, height) + var imageCount = swapChainSupport.capabilities.minImageCount + 1 + if swapChainSupport.capabilities.maxImageCount > 0 and + imageCount > swapChainSupport.capabilities.maxImageCount: + imageCount = swapChainSupport.capabilities.maxImageCount + + let indices = findQueueFamilies(physicalDevice, surface) + let queueFamilyIndices = + if indices.graphicsFamily != indices.presentFamily: + @[indices.graphicsFamily, indices.presentFamily] + else: + @[] + + var createInfo = newVkSwapchainCreateInfoKHR( + surface = surface, + minImageCount = imageCount, + imageFormat = surfaceFormat.format, + imageColorSpace = surfaceFormat.colorSpace, + imageExtent = extent, + imageArrayLayers = 1, + imageUsage = VkImageUsageFlags{TransferDstBit}, + imageSharingMode = if queueFamilyIndices.len > 0: + VK_SHARING_MODE_CONCURRENT else: VK_SHARING_MODE_EXCLUSIVE, + queueFamilyIndices = queueFamilyIndices, + preTransform = swapChainSupport.capabilities.currentTransform, + compositeAlpha = VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR, + presentMode = presentMode, + clipped = VkBool32(VK_TRUE), + oldSwapchain = VkSwapchainKHR(0) + ) + + checkVkResult vkCreateSwapchainKHR(device, createInfo.addr, nil, result.handle.addr) + discard vkGetSwapchainImagesKHR(device, result.handle, imageCount.addr, nil) + result.images.setLen(imageCount) + discard vkGetSwapchainImagesKHR(device, result.handle, imageCount.addr, result.images[0].addr) + result.format = surfaceFormat.format + result.extent = extent + +proc findMemoryType(physicalDevice: VkPhysicalDevice, typeFilter: uint32, + properties: VkMemoryPropertyFlags): uint32 = + let memoryProperties = getPhysicalDeviceMemoryProperties(physicalDevice) + for i in 0 ..< memoryProperties.memoryTypeCount.int: + let memoryType = memoryProperties.memoryTypes[i] + if (typeFilter and (1'u32 shl i.uint32)) != 0 and + memoryType.propertyFlags >= properties: + return i.uint32 + raise newException(Exception, "Failed to find suitable memory type") + +proc createBuffer(device: VkDevice, physicalDevice: VkPhysicalDevice, + size: VkDeviceSize, usage: VkBufferUsageFlags, + properties: VkMemoryPropertyFlags): tuple[buffer: VkBuffer, memory: VkDeviceMemory] = + let bufferCreateInfo = newVkBufferCreateInfo( + size = size, + usage = usage, + sharingMode = VkSharingMode.Exclusive, + queueFamilyIndices = [] + ) + let buffer = createBuffer(device, bufferCreateInfo) + let bufferMemoryRequirements = getBufferMemoryRequirements(device, buffer) + let allocInfo = newVkMemoryAllocateInfo( + allocationSize = bufferMemoryRequirements.size, + memoryTypeIndex = findMemoryType(physicalDevice, + bufferMemoryRequirements.memoryTypeBits, + properties) + ) + let bufferMemory = allocateMemory(device, allocInfo) + bindBufferMemory(device, buffer, bufferMemory, 0.VkDeviceSize) + result = (buffer, bufferMemory) + +proc toPixelBytes(pixels: seq[ColorRGBA], format: VkFormat): seq[uint8] = + result = newSeq[uint8](pixels.len * 4) + let useBgra = format == VK_FORMAT_B8G8R8A8_UNORM + for i, p in pixels: + let base = i * 4 + if useBgra: + result[base] = p.b + result[base + 1] = p.g + result[base + 2] = p.r + result[base + 3] = p.a + else: + result[base] = p.r + result[base + 1] = p.g + result[base + 2] = p.b + result[base + 3] = p.a + +proc recordCopy(cmd: VkCommandBuffer, image: VkImage, extent: VkExtent2D, + buffer: VkBuffer) = + let beginInfo = newVkCommandBufferBeginInfo(pInheritanceInfo = nil) + checkVkResult vkBeginCommandBuffer(cmd, beginInfo.addr) + + var barrierToTransfer = VkImageMemoryBarrier( + sType: VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER, + srcAccessMask: 0.VkAccessFlags, + dstAccessMask: VkAccessFlags{TransferWriteBit}, + oldLayout: VK_IMAGE_LAYOUT_UNDEFINED, + newLayout: VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, + srcQueueFamilyIndex: VK_QUEUE_FAMILY_IGNORED, + dstQueueFamilyIndex: VK_QUEUE_FAMILY_IGNORED, + image: image, + subresourceRange: VkImageSubresourceRange( + aspectMask: VkImageAspectFlags{ColorBit}, + baseMipLevel: 0, + levelCount: 1, + baseArrayLayer: 0, + layerCount: 1 + ) + ) + + vkCmdPipelineBarrier( + cmd, + VkPipelineStageFlags{TopOfPipeBit}, + VkPipelineStageFlags{TransferBit}, + 0.VkDependencyFlags, + 0, nil, + 0, nil, + 1, barrierToTransfer.addr + ) + + var region = VkBufferImageCopy( + bufferOffset: 0.VkDeviceSize, + bufferRowLength: 0, + bufferImageHeight: 0, + imageSubresource: VkImageSubresourceLayers( + aspectMask: VkImageAspectFlags{ColorBit}, + mipLevel: 0, + baseArrayLayer: 0, + layerCount: 1 + ), + imageOffset: VkOffset3D(x: 0, y: 0, z: 0), + imageExtent: VkExtent3D(width: extent.width, height: extent.height, depth: 1) + ) + + vkCmdCopyBufferToImage( + cmd, + buffer, + image, + VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, + 1, + region.addr + ) + + var barrierToPresent = VkImageMemoryBarrier( + sType: VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER, + srcAccessMask: VkAccessFlags{TransferWriteBit}, + dstAccessMask: VkAccessFlags{MemoryReadBit}, + oldLayout: VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, + newLayout: VkImageLayout.PresentSrcKhr, + srcQueueFamilyIndex: VK_QUEUE_FAMILY_IGNORED, + dstQueueFamilyIndex: VK_QUEUE_FAMILY_IGNORED, + image: image, + subresourceRange: VkImageSubresourceRange( + aspectMask: VkImageAspectFlags{ColorBit}, + baseMipLevel: 0, + levelCount: 1, + baseArrayLayer: 0, + layerCount: 1 + ) + ) + + vkCmdPipelineBarrier( + cmd, + VkPipelineStageFlags{TransferBit}, + VkPipelineStageFlags{BottomOfPipeBit}, + 0.VkDependencyFlags, + 0, nil, + 0, nil, + 1, barrierToPresent.addr + ) + + checkVkResult vkEndCommandBuffer(cmd) + +proc main(params: seq[string]) = + if params.len notin [0, 2]: + quit("Usage: mandelbrot ") + + let width = if params.len == 0: 800 else: params[0].parseInt + let height = if params.len == 0: 600 else: params[1].parseInt + + var generator = newMandelbrotGenerator(width.int32, height.int32) + let pixels = generator.generate() + doAssert pixels.len == width * height + + glfw.initialize() + glfww.windowHint(glfww.hClientApi.int32, glfww.oaNoApi.int32) + glfww.windowHint(glfww.hResizable.int32, 0) + + let handle = glfww.createWindow(width.int32, height.int32, "Mandelbrot", nil, nil) + if handle.isNil: + glfw.terminate() + quit("failed to create window") + + let window = newWindow(handle) + + vkPreload() + let + glfwExtensionCount = block: + var count: uint32 = 0 + discard glfww.getRequiredInstanceExtensions(count.addr) + count + glfwExtensions = glfww.getRequiredInstanceExtensions(glfwExtensionCount.addr) + + let instance = block: + let appInfo = newVkApplicationInfo( + pApplicationName = "Mandelbrot", + applicationVersion = vkMakeVersion(0, 1, 0, 0), + pEngineName = "No Engine", + engineVersion = vkMakeVersion(0, 1, 0, 0), + apiVersion = vkApiVersion1_1 + ) + var extensionNames = newSeq[cstring](glfwExtensionCount.int) + for i in 0.. 0: + result.setLen(layerCount) + res = vkEnumerateInstanceLayerProperties(layerCount.addr, result[0].addr) + if res == VkSuccess and layerCount < uint32(result.len): + result.setLen(layerCount) + elif res == VkSuccess: + break + checkVkResult res + +proc createInstance*(instanceCreateInfo: VkInstanceCreateInfo, allocator: ptr VkAllocationCallbacks = nil): VkInstance = + checkVkResult vkCreateInstance(instanceCreateInfo.addr, allocator, result.addr) + +proc enumeratePhysicalDevices*(instance: VkInstance): seq[VkPhysicalDevice] = + result = @[] + var physicalDeviceCount: uint32 = 0 + var res = VkIncomplete + while res == VkIncomplete: + res = vkEnumeratePhysicalDevices(instance, physicalDeviceCount.addr, nil) + if res == VkSuccess and physicalDeviceCount > 0: + result.setLen(physicalDeviceCount) + res = vkEnumeratePhysicalDevices(instance, physicalDeviceCount.addr, result[0].addr) + if res == VkSuccess and physicalDeviceCount < uint32(result.len): + result.setLen(physicalDeviceCount) + elif res == VkSuccess: + break + checkVkResult res + +proc getQueueFamilyProperties*(physicalDevice: VkPhysicalDevice): seq[VkQueueFamilyProperties] = + result = @[] + var queueFamilyCount: uint32 = 0 + vkGetPhysicalDeviceQueueFamilyProperties(physicalDevice, queueFamilyCount.addr, nil) + result.setLen(queueFamilyCount) + vkGetPhysicalDeviceQueueFamilyProperties(physicalDevice, queueFamilyCount.addr, result[0].addr) + +proc getPhysicalDeviceFeatures*(physicalDevice: VkPhysicalDevice): VkPhysicalDeviceFeatures = + vkGetPhysicalDeviceFeatures(physicalDevice, result.addr) + +proc getPhysicalDeviceMemoryProperties*(physicalDevice: VkPhysicalDevice): VkPhysicalDeviceMemoryProperties = + vkGetPhysicalDeviceMemoryProperties(physicalDevice, result.addr) + +proc getPhysicalDeviceProperties*(physicalDevice: VkPhysicalDevice): VkPhysicalDeviceProperties = + vkGetPhysicalDeviceProperties(physicalDevice, result.addr) + +proc createDevice*(physicalDevice: VkPhysicalDevice, deviceCreateInfo: VkDeviceCreateInfo, + allocator: ptr VkAllocationCallbacks = nil): VkDevice = + checkVkResult vkCreateDevice(physicalDevice, deviceCreateInfo.addr, allocator, result.addr) + +proc getDeviceQueue*(device: VkDevice, queueFamilyIndex: uint32, queueIndex: uint32): VkQueue = + vkGetDeviceQueue(device, queueFamilyIndex, queueIndex, result.addr) + +proc createBuffer*(device: VkDevice, bufferCreateInfo: VkBufferCreateInfo, allocator: ptr VkAllocationCallbacks = nil): VkBuffer = + checkVkResult vkCreateBuffer(device, bufferCreateInfo.addr, allocator, result.addr) + +proc getBufferMemoryRequirements*(device: VkDevice, buffer: VkBuffer): VkMemoryRequirements = + vkGetBufferMemoryRequirements(device, buffer, result.addr) + +proc allocateMemory*(device: VkDevice, allocateInfo: VkMemoryAllocateInfo, allocator: ptr VkAllocationCallbacks = nil): VkDeviceMemory = + checkVkResult vkAllocateMemory(device, allocateInfo.addr, allocator, result.addr) + +proc bindBufferMemory*(device: VkDevice, buffer: VkBuffer, memory: VkDeviceMemory, memoryOffset: VkDeviceSize) = + checkVkResult vkBindBufferMemory(device, buffer, memory, memoryOffset) + +proc createDescriptorSetLayout*(device: VkDevice, createInfo: VkDescriptorSetLayoutCreateInfo, + allocator: ptr VkAllocationCallbacks = nil): VkDescriptorSetLayout = + checkVkResult vkCreateDescriptorSetLayout(device, createInfo.addr, allocator, result.addr) + +proc createDescriptorPool*(device: VkDevice, createInfo: VkDescriptorPoolCreateInfo, + allocator: ptr VkAllocationCallbacks = nil): VkDescriptorPool = + checkVkResult vkCreateDescriptorPool(device, createInfo.addr, allocator, result.addr) + +proc allocateDescriptorSets*(device: VkDevice, allocateInfo: VkDescriptorSetAllocateInfo): VkDescriptorSet = + var descriptorSet: VkDescriptorSet + checkVkResult vkAllocateDescriptorSets(device, allocateInfo.addr, descriptorSet.addr) + result = descriptorSet + +proc updateDescriptorSets*(device: VkDevice, descriptorWrites: openarray[VkWriteDescriptorSet], + descriptorCopies: openarray[VkCopyDescriptorSet]) = + vkUpdateDescriptorSets(device, descriptorWrites.len.uint32, if descriptorWrites.len == 0: nil else: cast[ptr VkWriteDescriptorSet](descriptorWrites), descriptorCopies.len.uint32, if descriptorWrites.len == 0: nil else: cast[ptr VkCopyDescriptorSet](descriptorCopies)) + +proc createShaderModule*(device: VkDevice, createInfo: VkShaderModuleCreateInfo, + allocator: ptr VkAllocationCallbacks = nil): VkShaderModule = + checkVkResult vkCreateShaderModule(device, createInfo.addr, allocator, result.addr) + +proc createPipelineLayout*(device: VkDevice, createInfo: VkPipelineLayoutCreateInfo, allocator: ptr VkAllocationCallbacks = nil): VkPipelineLayout = + checkVkResult vkCreatePipelineLayout(device, createInfo.addr, allocator, result.addr) + +proc createComputePipelines*(device: VkDevice, pipelineCache: VkPipelineCache, + createInfos: openarray[VkComputePipelineCreateInfo], + allocator: ptr VkAllocationCallbacks = nil): VkPipeline = + checkVkResult vkCreateComputePipelines(device, pipelineCache, createInfos.len.uint32, if createInfos.len == 0: nil else: cast[ptr VkComputePipelineCreateInfo](createInfos), allocator, result.addr) + +proc createFence*(device: VkDevice, createInfo: VkFenceCreateInfo, allocator: ptr VkAllocationCallbacks = nil): VkFence = + checkVkResult vkCreateFence(device, createInfo.addr, allocator, result.addr) + +proc queueSubmit*(queue: VkQueue, submits: openarray[VkSubmitInfo], fence: VkFence) = + checkVkResult vkQueueSubmit(queue, submits.len.uint32, if submits.len == 0: nil else: cast[ptr VkSubmitInfo](submits), fence) + +proc waitForFences*(device: VkDevice, fences: openarray[VkFence], waitAll: VkBool32, timeout: uint64) = + checkVkResult vkWaitForFences(device, fences.len.uint32, if fences.len == 0: nil else: cast[ptr VkFence](fences), waitAll, timeout) + +proc waitForFence*(device: VkDevice, fence: VkFence, waitAll: VkBool32, timeout: uint64) = + checkVkResult vkWaitForFences(device, 1, fence.addr, waitAll, timeout) + +proc createDebugUtilsMessengerEXT*(instance: VkInstance, createInfo: VkDebugUtilsMessengerCreateInfoEXT, + allocator: ptr VkAllocationCallbacks = nil): VkDebugUtilsMessengerEXT = + checkVkResult vkCreateDebugUtilsMessengerEXT(instance, createInfo.addr, allocator, result.addr) + +proc createCommandPool*(device: VkDevice, createInfo: VkCommandPoolCreateInfo, + allocator: ptr VkAllocationCallbacks = nil): VkCommandPool = + checkVkResult vkCreateCommandPool(device, createInfo.addr, allocator, result.addr) + +proc allocateCommandBuffers*(device: VkDevice, allocateInfo: VkCommandBufferAllocateInfo): VkCommandBuffer = + checkVkResult vkAllocateCommandBuffers(device, allocateInfo.addr, result.addr) + +proc beginCommandBuffer*(commandBuffer: VkCommandBuffer, beginInfo: VkCommandBufferBeginInfo) = + checkVkResult vkBeginCommandBuffer(commandBuffer, beginInfo.addr) + +proc cmdBindDescriptorSets*(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, + layout: VkPipelineLayout, firstSet: uint32, descriptorSets: openarray[VkDescriptorSet], + dynamicOffsets: openarray[uint32]) = + vkCmdBindDescriptorSets(commandBuffer, pipelineBindPoint, layout, firstSet, descriptorSets.len.uint32, if descriptorSets.len == 0: nil else: cast[ptr VkDescriptorSet](descriptorSets), dynamicOffsets.len.uint32, if dynamicOffsets.len == 0: nil else: cast[ptr uint32](dynamicOffsets)) + +proc endCommandBuffer*(commandBuffer: VkCommandBuffer) = + checkVkResult vkEndCommandBuffer(commandBuffer) + +proc deviceWaitIdle*(device: VkDevice) = + checkVkResult vkDeviceWaitIdle(device) + +proc unmapMemory*(device: VkDevice, memory: VkDeviceMemory) = + vkUnmapMemory(device, memory) + +proc cmdDispatch*(commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, + groupCountZ: uint32) = + vkCmdDispatch(commandBuffer, groupCountX, groupCountY, groupCountZ) + +proc cmdBindPipeline*(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, + pipeline: VkPipeline) = + vkCmdBindPipeline(commandBuffer, pipelineBindPoint, pipeline) + +proc freeMemory*(device: VkDevice, memory: VkDeviceMemory, allocator: ptr VkAllocationCallbacks = nil) = + if memory != 0.VkDeviceMemory: + vkFreeMemory(device, memory, allocator) + +proc destroyBuffer*(device: VkDevice, buffer: VkBuffer, allocator: ptr VkAllocationCallbacks = nil) = + if buffer != 0.VkBuffer: + vkDestroyBuffer(device, buffer, allocator) + +proc destroyPipeline*(device: VkDevice, pipeline: VkPipeline, allocator: ptr VkAllocationCallbacks = nil) = + if pipeline != 0.VkPipeline: + vkDestroyPipeline(device, pipeline, allocator) + +proc destroyPipelineLayout*(device: VkDevice, pipelineLayout: VkPipelineLayout, allocator: ptr VkAllocationCallbacks = nil) = + if pipelineLayout != 0.VkPipelineLayout: + vkDestroyPipelineLayout(device, pipelineLayout, allocator) + +proc freeDescriptorSets*(device: VkDevice, descriptorPool: VkDescriptorPool, + descriptorSets: openarray[VkDescriptorSet]) = + if descriptorSets.len > 0: + discard vkFreeDescriptorSets(device, descriptorPool, descriptorSets.len.uint32, cast[ptr VkDescriptorSet](descriptorSets)) + +proc destroyDescriptorPool*(device: VkDevice, descriptorPool: VkDescriptorPool, allocator: ptr VkAllocationCallbacks = nil) = + if descriptorPool != 0.VkDescriptorPool: + vkDestroyDescriptorPool(device, descriptorPool, allocator) + +proc destroyDescriptorSetLayout*(device: VkDevice, descriptorSetLayout: VkDescriptorSetLayout, + allocator: ptr VkAllocationCallbacks = nil) = + if descriptorSetLayout != 0.VkDescriptorSetLayout: + vkDestroyDescriptorSetLayout(device, descriptorSetLayout, allocator) + +proc destroyCommandPool*(device: VkDevice, commandPool: VkCommandPool, allocator: ptr VkAllocationCallbacks = nil) = + if commandPool != 0.VkCommandPool: + vkDestroyCommandPool(device, commandPool, allocator) + +proc destroyDevice*(device: VkDevice, allocator: ptr VkAllocationCallbacks = nil) = + if device != 0.VkDevice: + vkDestroyDevice(device, allocator) + +proc destroyDebugUtilsMessenger*(instance: VkInstance, debugUtilsMessenger: VkDebugUtilsMessengerEXT, allocator: ptr VkAllocationCallbacks = nil) = + if debugUtilsMessenger != 0.VkDebugUtilsMessengerEXT: + vkDestroyDebugUtilsMessengerEXT(instance, debugUtilsMessenger, allocator) + +proc destroyInstance*(instance: VkInstance, allocator: ptr VkAllocationCallbacks = nil) = + if instance != 0.VkInstance: + vkDestroyInstance(instance, allocator) + +proc destroyShaderModule*(device: VkDevice, shaderModule: VkShaderModule, + allocator: ptr VkAllocationCallbacks = nil) = + if shaderModule != 0.VkShaderModule: + vkDestroyShaderModule(device, shaderModule, allocator) + +proc destroyFence*(device: VkDevice, fence: VkFence, allocator: ptr VkAllocationCallbacks = nil) = + if fence != 0.VkFence: + vkDestroyFence(device, fence, allocator) diff --git a/tests/test.nim b/tests/test.nim index 3caf3bd..24eb621 100644 --- a/tests/test.nim +++ b/tests/test.nim @@ -1,36 +1,8 @@ -import nimgl/glfw -from nimgl/vulkan import nil -from triangle import nil - -proc keyCallback(window: GLFWWindow, key: int32, scancode: int32, action: int32, mods: int32) {.cdecl.} = - if action == GLFW_PRESS and key == GLFWKey.Escape: - window.setWindowShouldClose(true) - -if isMainModule: - doAssert glfwInit() - - glfwWindowHint(GLFWClientApi, GLFWNoApi) - glfwWindowHint(GLFWResizable, GLFWFalse) - - var w = glfwCreateWindow(triangle.WIDTH, triangle.HEIGHT, "Vulkan Triangle") - if w == nil: - quit(-1) - - discard w.setKeyCallback(keyCallback) - - proc createSurface(instance: vulkan.VkInstance): vulkan.VkSurfaceKHR = - if glfwCreateWindowSurface(instance, w, nil, result.addr) != vulkan.VKSuccess: - quit("failed to create surface") - - var glfwExtensionCount: uint32 = 0 - var glfwExtensions: cstringArray - glfwExtensions = glfwGetRequiredInstanceExtensions(glfwExtensionCount.addr) - triangle.init(glfwExtensions, glfwExtensionCount, createSurface) - - while not w.windowShouldClose(): - glfwPollEvents() - triangle.tick() - - triangle.deinit() - w.destroyWindow() - glfwTerminate() +import vulkan + +when isMainModule: + doAssert VK_SUCCESS == VkSuccess + doAssert VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO == VkStructureType.InstanceCreateInfo + doAssert VK_IMAGE_LAYOUT_GENERAL == VkImageLayout.General + doAssert VK_TRUE == 1 + echo "ok" diff --git a/tests/test_wrapper.nim b/tests/test_wrapper.nim new file mode 100644 index 0000000..325ffef --- /dev/null +++ b/tests/test_wrapper.nim @@ -0,0 +1,12 @@ +import vulkan +import vulkan/wrapper + +when isMainModule: + var err: ref VulkanError + doAssert err.isNil + try: + raiseVkError("boom", VkSuccess) + doAssert false + except VulkanError as e: + doAssert e.res == VkSuccess + echo "ok" diff --git a/tests/triangle.nim b/tests/triangle.nim index 8e80e63..c596e4b 100644 --- a/tests/triangle.nim +++ b/tests/triangle.nim @@ -1,4 +1,4 @@ -import nimgl/vulkan +import vulkan import sets import bitops @@ -32,8 +32,6 @@ const HEIGHT* = 600 VK_NULL_HANDLE = 0 -loadVK_KHR_surface() -loadVK_KHR_swapchain() proc checkValidationLayers() = var layerCount: uint32 = 0 @@ -44,7 +42,7 @@ proc checkValidationLayers() = for validate in validationLayers: var found = false for layer in layers: - if cstring(layer.layerName.unsafeAddr) == validate: + if cast[cstring](layer.layerName.addr) == validate.cstring: found = true break if not found: @@ -87,28 +85,27 @@ proc createLogicalDevice(physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR let deviceQueueCreateInfo = newVkDeviceQueueCreateInfo( sType = VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO, queueFamilyIndex = queueFamily, - queueCount = 1, - pQueuePriorities = queuePriority.addr + queuePriorities = [queuePriority] ) queueCreateInfos.add(deviceQueueCreateInfo) var deviceFeatures = newSeq[VkPhysicalDeviceFeatures](1) - deviceExts = allocCStringArray(deviceExtensions) - deviceCreateInfo = newVkDeviceCreateInfo( - pQueueCreateInfos = queueCreateInfos[0].addr, - queueCreateInfoCount = queueCreateInfos.len.uint32, - pEnabledFeatures = deviceFeatures[0].addr, - enabledExtensionCount = deviceExtensions.len.uint32, - enabledLayerCount = 0, - ppEnabledLayerNames = nil, - ppEnabledExtensionNames = deviceExts - ) + deviceExts = newSeq[cstring](deviceExtensions.len) + + for i, ext in deviceExtensions: + deviceExts[i] = ext.cstring + + let deviceCreateInfo = newVkDeviceCreateInfo( + queueCreateInfos = queueCreateInfos, + enabledFeatures = deviceFeatures, + pEnabledLayerNames = [], + pEnabledExtensionNames = deviceExts + ) if vkCreateDevice(physicalDevice, deviceCreateInfo.addr, nil, result.addr) != VKSuccess: echo "failed to create logical device" - deallocCStringArray(deviceExts) vkGetDeviceQueue(result, indices.graphicsFamily, 0, graphicsQueue.addr) vkGetDeviceQueue(result, indices.presentFamily, 0, presentQueue.addr) @@ -121,7 +118,7 @@ proc checkDeviceExtensionSupport(pDevice: VkPhysicalDevice): bool = var requiredExts = deviceExtensions.toHashSet for ext in availableExts.mitems: - requiredExts.excl($ ext.extensionName.addr) + requiredExts.excl($cast[cstring](ext.extensionName.addr)) requiredExts.len == 0 proc querySwapChainSupport(pDevice: VkPhysicalDevice, surface: VkSurfaceKHR): SwapChainSupportDetails = @@ -159,18 +156,20 @@ proc isDeviceSuitable(pDevice: VkPhysicalDevice, surface: VkSurfaceKHR): bool = proc createInstance(glfwExtensions: cstringArray, glfwExtensionCount: uint32): VkInstance = var appInfo = newVkApplicationInfo( pApplicationName = "NimGL Vulkan Example", - applicationVersion = vkMakeVersion(1, 0, 0), + applicationVersion = vkMakeVersion(0, 1, 0, 0), pEngineName = "No Engine", - engineVersion = vkMakeVersion(1, 0, 0), + engineVersion = vkMakeVersion(0, 1, 0, 0), apiVersion = vkApiVersion1_1 ) + var extensionNames = newSeq[cstring](glfwExtensionCount.int) + for i in 0..>>>>>> planetis/master author = "Leonardo Mariscal" description = "Vulkan bindings for Nim" license = "MIT" @@ -11,9 +15,8 @@ skipDirs = @["tests"] requires "nim >= 1.0.0" -task gen, "Generate bindings from source": - exec("nim c -d:ssl -r tools/generator.nim") +feature "examples": + requires "glfw" + requires "chroma" + requires "sdl2" -task test, "Create basic triangle with Vulkan and GLFW": - requires "nimgl@#1.0" # Please https://github.com/nim-lang/nimble/issues/482 - exec("nim c -r tests/test.nim") From a485223c9572a701f39c85dedb66a39d76678329 Mon Sep 17 00:00:00 2001 From: Jaremy Creechley Date: Tue, 20 Jan 2026 01:22:40 -0700 Subject: [PATCH 54/57] fix merge --- vulkan.nimble | 4 ---- 1 file changed, 4 deletions(-) diff --git a/vulkan.nimble b/vulkan.nimble index 176b93e..2771fa3 100644 --- a/vulkan.nimble +++ b/vulkan.nimble @@ -1,10 +1,6 @@ # Package -<<<<<<< HEAD -version = "1.4.336" -======= version = "1.3.295" ->>>>>>> planetis/master author = "Leonardo Mariscal" description = "Vulkan bindings for Nim" license = "MIT" From 838e01d4cbdaf054f59436f5047b36afbaf95df6 Mon Sep 17 00:00:00 2001 From: Jaremy Creechley Date: Tue, 20 Jan 2026 01:25:37 -0700 Subject: [PATCH 55/57] add ci --- .github/workflows/build-full.yml | 70 ++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 .github/workflows/build-full.yml diff --git a/.github/workflows/build-full.yml b/.github/workflows/build-full.yml new file mode 100644 index 0000000..fcb037f --- /dev/null +++ b/.github/workflows/build-full.yml @@ -0,0 +1,70 @@ +on: + push: + branches: + - "main" + pull_request: + branches: + - "*" + +jobs: + tests: + runs-on: ${{ matrix.os }} + strategy: + matrix: + nimversion: + - '2.2.6' + os: + - ubuntu-24.04 + steps: + - uses: actions/checkout@v1 + - name: Setup software OpenGL (Mesa) + Xvfb + if: runner.os == 'Linux' + run: | + sudo apt-get update + sudo apt-get install -y --no-install-recommends \ + xvfb \ + xauth \ + mesa-utils \ + libgl1-mesa-dri \ + libglx-mesa0 \ + libegl-mesa0 \ + libgles2 \ + vulkan-tools libvulkan1 libvulkan-dev \ + mesa-vulkan-drivers \ + vulkan-validationlayers \ + + + - uses: iffy/install-nim@v4 + with: + version: ${{ matrix.nimversion }} + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Cache packages + uses: actions/cache@v3 + with: + path: deps/ + key: ${{ runner.os }}-${{ hashFiles('figdraw.nimble') }} + + - name: Install Atlas + run: | + nimble install 'https://github.com/nim-lang/atlas@#head' + echo "Nim:: " + nim -v + echo "Nimble:: " + atlas -v + + - name: Install Deps + run: | + # sync deps + atlas install --feature:examples + + - name: Build Tests + env: + LIBGL_ALWAYS_SOFTWARE: "1" + MESA_GL_VERSION_OVERRIDE: "3.3" + MESA_GLSL_VERSION_OVERRIDE: "330" + VK_ICD_FILENAMES: "/usr/share/vulkan/icd.d/lvp_icd.x86_64.json" + run: | + xvfb-run -a -s "-screen 0 1280x1024x24" nim test + From 0fd800a705d3d9e8e20a26570d87e3630873ddb3 Mon Sep 17 00:00:00 2001 From: Jaremy Creechley Date: Tue, 20 Jan 2026 01:26:46 -0700 Subject: [PATCH 56/57] add ci --- vulkan.nimble | 1 - 1 file changed, 1 deletion(-) diff --git a/vulkan.nimble b/vulkan.nimble index 2771fa3..4c0095e 100644 --- a/vulkan.nimble +++ b/vulkan.nimble @@ -8,7 +8,6 @@ srcDir = "src" skipDirs = @["tests"] # Dependencies - requires "nim >= 1.0.0" feature "examples": From 0e91fc045be7e5c91f6e84a33b7b47b4387bd9e3 Mon Sep 17 00:00:00 2001 From: Jaremy Creechley Date: Tue, 20 Jan 2026 01:28:06 -0700 Subject: [PATCH 57/57] add ci --- .github/workflows/build-full.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-full.yml b/.github/workflows/build-full.yml index fcb037f..3e13d69 100644 --- a/.github/workflows/build-full.yml +++ b/.github/workflows/build-full.yml @@ -1,7 +1,7 @@ on: push: branches: - - "main" + - "master" pull_request: branches: - "*"