diff --git a/src/vulkan.nim b/src/vulkan.nim index 0691259..c5f38fd 100644 --- a/src/vulkan.nim +++ b/src/vulkan.nim @@ -1,4 +1,3 @@ -{.experimental: "codeReordering".} # Written by Leonardo Mariscal , 2019 ## Vulkan Bindings @@ -6,7 +5,6 @@ ## WARNING: This is a generated file. Do not edit ## Any edits will be overwritten by the generator. - when not defined(vkCustomLoader): import dynlib @@ -37,46 +35,6 @@ type MTLSharedEvent_id = ptr object IOSurfaceRef = ptr object -type Display* = ptr object -type VisualID* = ptr object -type Window* = ptr object -type RROutput* = ptr object -type wl_display* = ptr object -type wl_surface* = ptr object -type HINSTANCE* = ptr object -type HWND* = ptr object -type HMONITOR* = ptr object -type HANDLE* = ptr object -type SECURITY_ATTRIBUTES* = ptr object -type DWORD* = ptr object -type LPCWSTR* = ptr object -type xcb_connection_t* = ptr object -type xcb_visualid_t* = ptr object -type xcb_window_t* = ptr object -type IDirectFB* = ptr object -type IDirectFBSurface* = ptr object -type zx_handle_t* = ptr object -type GgpStreamDescriptor* = ptr object -type GgpFrameToken* = ptr object -type screen_context* = ptr object -type screen_window* = ptr object -type NvSciSyncAttrList* = ptr object -type NvSciSyncObj* = ptr object -type NvSciSyncFence* = ptr object -type NvSciBufAttrList* = ptr object -type NvSciBufObj* = ptr object - -template vkMakeVersion*(major, minor, patch: untyped): untyped = - (((major) shl 22) or ((minor) shl 12) or (patch)) - -template vkVersionMajor*(version: untyped): untyped = - ((uint32)(version) shr 22) - -template vkVersionMinor*(version: untyped): untyped = - (((uint32)(version) shr 12) and 0x000003FF) - -template vkVersionPatch*(version: untyped): untyped = - ((uint32)(version) and 0x00000FFF) template vkMakeApiVersion*(variant, major, minor, patch: untyped): untyped = (((variant) shl 29) or ((major) shl 22) or ((minor) shl 12) or (patch)) @@ -94,13 +52,13 @@ template vkApiVersionPatch*(version: untyped): untyped = ((uint32)(version) and 0x00000FFF) const VKSC_API_VARIANT* = 1 -const VK_API_VERSION_1_0* = vkMakeVersion(1, 0, 0) -const VK_API_VERSION_1_1* = vkMakeVersion(1, 1, 0) -const VK_API_VERSION_1_2* = vkMakeVersion(1, 2, 0) +const VK_API_VERSION_1_0* = vkMakeApiVersion(0, 1, 0, 0) +const VK_API_VERSION_1_1* = vkMakeApiVersion(0, 1, 1, 0) +const VK_API_VERSION_1_2* = vkMakeApiVersion(0, 1, 2, 0) const VK_API_VERSION_1_3* = vkMakeApiVersion(0, 1, 3, 0) const VKSC_API_VERSION_1_0* = vkMakeApiVersion(VKSC_API_VARIANT, 1, 0, 0) const VK_HEADER_VERSION* = 152 -const VK_HEADER_VERSION_COMPLETE* = vkMakeVersion(1, 2, VK_HEADER_VERSION) +const VK_HEADER_VERSION_COMPLETE* = vkMakeApiVersion(0, 1, 2, VK_HEADER_VERSION) const VK_NULL_HANDLE* = 0 type VkSampleMask* = distinct uint32 type VkBool32* = distinct uint32 @@ -108,6 +66,33 @@ type VkFlags* = distinct uint32 type VkFlags64* = distinct uint64 type VkDeviceSize* = distinct uint64 type VkDeviceAddress* = distinct uint64 +type VkRemoteAddressNV* = distinct void +const VK_MAX_PHYSICAL_DEVICE_NAME_SIZE*: uint32 = 256 +const VK_UUID_SIZE*: uint32 = 16 +const VK_LUID_SIZE*: uint32 = 8 +const VK_MAX_EXTENSION_NAME_SIZE*: uint32 = 256 +const VK_MAX_DESCRIPTION_SIZE*: uint32 = 256 +const VK_MAX_MEMORY_TYPES*: uint32 = 32 +const VK_MAX_MEMORY_HEAPS*: uint32 = 16 +const VK_LOD_CLAMP_NONE*: float32 = 1000.0F +const VK_REMAINING_MIP_LEVELS*: uint32 = (not 0'u32) +const VK_REMAINING_ARRAY_LAYERS*: uint32 = (not 0'u32) +const VK_REMAINING_3D_SLICES_EXT*: uint32 = (not 0'u32) +const VK_WHOLE_SIZE*: uint64 = (not 0'u64) +const VK_ATTACHMENT_UNUSED*: uint32 = (not 0'u32) +const VK_TRUE*: uint32 = 1 +const VK_FALSE*: uint32 = 0 +const VK_QUEUE_FAMILY_IGNORED*: uint32 = (not 0'u32) +const VK_QUEUE_FAMILY_EXTERNAL*: uint32 = (not 1'u32) +const VK_QUEUE_FAMILY_FOREIGN_EXT*: uint32 = (not 1'u32) +const VK_SUBPASS_EXTERNAL*: uint32 = (not 0'u32) +const VK_MAX_DEVICE_GROUP_SIZE*: uint32 = 32 +const VK_MAX_DRIVER_NAME_SIZE*: uint32 = 256 +const VK_MAX_DRIVER_INFO_SIZE*: uint32 = 256 +const VK_SHADER_UNUSED_KHR*: uint32 = (not 0'u32) +const VK_MAX_GLOBAL_PRIORITY_SIZE_KHR*: uint32 = 16 +const VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT*: uint32 = 32 +const VK_SHADER_INDEX_UNUSED_AMDX*: uint32 = (not 0'u32) type VkFramebufferCreateFlags* = distinct VkFlags type VkQueryPoolCreateFlags* = distinct VkFlags type VkRenderPassCreateFlags* = distinct VkFlags @@ -154,6 +139,7 @@ type VkCommandBufferResetFlags* = distinct VkFlags type VkCommandBufferUsageFlags* = distinct VkFlags type VkQueryPipelineStatisticFlags* = distinct VkFlags type VkMemoryMapFlags* = distinct VkFlags +type VkMemoryUnmapFlagsKHR* = distinct VkFlags type VkImageAspectFlags* = distinct VkFlags type VkSparseMemoryBindFlags* = distinct VkFlags type VkSparseImageFormatFlags* = distinct VkFlags @@ -170,40 +156,31 @@ type VkSubgroupFeatureFlags* = distinct VkFlags type VkIndirectCommandsLayoutUsageFlagsNV* = distinct VkFlags type VkIndirectStateFlagsNV* = distinct VkFlags type VkGeometryFlagsKHR* = distinct VkFlags -type VkGeometryFlagsNV* = VkGeometryFlagsKHR type VkGeometryInstanceFlagsKHR* = distinct VkFlags -type VkGeometryInstanceFlagsNV* = VkGeometryInstanceFlagsKHR type VkBuildAccelerationStructureFlagsKHR* = distinct VkFlags -type VkBuildAccelerationStructureFlagsNV* = VkBuildAccelerationStructureFlagsKHR type VkPrivateDataSlotCreateFlags* = distinct VkFlags -type VkPrivateDataSlotCreateFlagsEXT* = VkPrivateDataSlotCreateFlags type VkAccelerationStructureCreateFlagsKHR* = distinct VkFlags type VkDescriptorUpdateTemplateCreateFlags* = distinct VkFlags -type VkDescriptorUpdateTemplateCreateFlagsKHR* = VkDescriptorUpdateTemplateCreateFlags type VkPipelineCreationFeedbackFlags* = distinct VkFlags -type VkPipelineCreationFeedbackFlagsEXT* = VkPipelineCreationFeedbackFlags type VkPerformanceCounterDescriptionFlagsKHR* = distinct VkFlags type VkAcquireProfilingLockFlagsKHR* = distinct VkFlags type VkSemaphoreWaitFlags* = distinct VkFlags -type VkSemaphoreWaitFlagsKHR* = VkSemaphoreWaitFlags type VkPipelineCompilerControlFlagsAMD* = distinct VkFlags type VkShaderCorePropertiesFlagsAMD* = distinct VkFlags type VkDeviceDiagnosticsConfigFlagsNV* = distinct VkFlags type VkRefreshObjectFlagsKHR* = distinct VkFlags type VkAccessFlags2* = distinct VkFlags64 -type VkAccessFlags2KHR* = VkAccessFlags2 type VkPipelineStageFlags2* = distinct VkFlags64 -type VkPipelineStageFlags2KHR* = VkPipelineStageFlags2 type VkAccelerationStructureMotionInfoFlagsNV* = distinct VkFlags type VkAccelerationStructureMotionInstanceFlagsNV* = distinct VkFlags type VkFormatFeatureFlags2* = distinct VkFlags64 -type VkFormatFeatureFlags2KHR* = VkFormatFeatureFlags2 type VkRenderingFlags* = distinct VkFlags type VkMemoryDecompressionMethodFlagsNV* = distinct VkFlags64 -type VkRenderingFlagsKHR* = VkRenderingFlags type VkBuildMicromapFlagsEXT* = distinct VkFlags type VkMicromapCreateFlagsEXT* = distinct VkFlags type VkDirectDriverLoadingFlagsLUNARG* = distinct VkFlags +type VkPipelineCreateFlags2KHR* = distinct VkFlags64 +type VkBufferUsageFlags2KHR* = distinct VkFlags64 type VkCompositeAlphaFlagsKHR* = distinct VkFlags type VkDisplayPlaneAlphaFlagsKHR* = distinct VkFlags type VkSurfaceTransformFlagsKHR* = distinct VkFlags @@ -225,31 +202,20 @@ type VkStreamDescriptorSurfaceCreateFlagsGGP* = distinct VkFlags type VkHeadlessSurfaceCreateFlagsEXT* = distinct VkFlags type VkScreenSurfaceCreateFlagsQNX* = distinct VkFlags type VkPeerMemoryFeatureFlags* = distinct VkFlags -type VkPeerMemoryFeatureFlagsKHR* = VkPeerMemoryFeatureFlags type VkMemoryAllocateFlags* = distinct VkFlags -type VkMemoryAllocateFlagsKHR* = VkMemoryAllocateFlags type VkDeviceGroupPresentModeFlagsKHR* = distinct VkFlags type VkDebugReportFlagsEXT* = distinct VkFlags type VkCommandPoolTrimFlags* = distinct VkFlags -type VkCommandPoolTrimFlagsKHR* = VkCommandPoolTrimFlags type VkExternalMemoryHandleTypeFlagsNV* = distinct VkFlags type VkExternalMemoryFeatureFlagsNV* = distinct VkFlags type VkExternalMemoryHandleTypeFlags* = distinct VkFlags -type VkExternalMemoryHandleTypeFlagsKHR* = VkExternalMemoryHandleTypeFlags type VkExternalMemoryFeatureFlags* = distinct VkFlags -type VkExternalMemoryFeatureFlagsKHR* = VkExternalMemoryFeatureFlags type VkExternalSemaphoreHandleTypeFlags* = distinct VkFlags -type VkExternalSemaphoreHandleTypeFlagsKHR* = VkExternalSemaphoreHandleTypeFlags type VkExternalSemaphoreFeatureFlags* = distinct VkFlags -type VkExternalSemaphoreFeatureFlagsKHR* = VkExternalSemaphoreFeatureFlags type VkSemaphoreImportFlags* = distinct VkFlags -type VkSemaphoreImportFlagsKHR* = VkSemaphoreImportFlags type VkExternalFenceHandleTypeFlags* = distinct VkFlags -type VkExternalFenceHandleTypeFlagsKHR* = VkExternalFenceHandleTypeFlags type VkExternalFenceFeatureFlags* = distinct VkFlags -type VkExternalFenceFeatureFlagsKHR* = VkExternalFenceFeatureFlags type VkFenceImportFlags* = distinct VkFlags -type VkFenceImportFlagsKHR* = VkFenceImportFlags type VkSurfaceCounterFlagsEXT* = distinct VkFlags type VkPipelineViewportSwizzleStateCreateFlagsNV* = distinct VkFlags type VkPipelineDiscardRectangleStateCreateFlagsEXT* = distinct VkFlags @@ -264,18 +230,15 @@ type VkDebugUtilsMessengerCallbackDataFlagsEXT* = distinct VkFlags type VkDeviceMemoryReportFlagsEXT* = distinct VkFlags type VkPipelineRasterizationConservativeStateCreateFlagsEXT* = distinct VkFlags type VkDescriptorBindingFlags* = distinct VkFlags -type VkDescriptorBindingFlagsEXT* = VkDescriptorBindingFlags type VkConditionalRenderingFlagsEXT* = distinct VkFlags type VkResolveModeFlags* = distinct VkFlags -type VkResolveModeFlagsKHR* = VkResolveModeFlags type VkPipelineRasterizationStateStreamCreateFlagsEXT* = distinct VkFlags type VkPipelineRasterizationDepthClipStateCreateFlagsEXT* = distinct VkFlags type VkSwapchainImageUsageFlagsANDROID* = distinct VkFlags type VkToolPurposeFlags* = distinct VkFlags -type VkToolPurposeFlagsEXT* = VkToolPurposeFlags type VkSubmitFlags* = distinct VkFlags -type VkSubmitFlagsKHR* = VkSubmitFlags type VkImageFormatConstraintsFlagsFUCHSIA* = distinct VkFlags +type VkHostImageCopyFlagsEXT* = distinct VkFlags type VkImageConstraintsInfoFlagsFUCHSIA* = distinct VkFlags type VkGraphicsPipelineLibraryFlagsEXT* = distinct VkFlags type VkImageCompressionFlagsEXT* = distinct VkFlags @@ -310,10 +273,13 @@ type VkVideoEncodeRateControlModeFlagsKHR* = distinct VkFlags type VkVideoChromaSubsamplingFlagsKHR* = distinct VkFlags type VkVideoComponentBitDepthFlagsKHR* = distinct VkFlags type VkVideoEncodeH264CapabilityFlagsEXT* = distinct VkFlags +type VkVideoEncodeH264StdFlagsEXT* = distinct VkFlags +type VkVideoEncodeH264RateControlFlagsEXT* = distinct VkFlags type VkVideoEncodeH265CapabilityFlagsEXT* = distinct VkFlags +type VkVideoEncodeH265StdFlagsEXT* = distinct VkFlags +type VkVideoEncodeH265RateControlFlagsEXT* = distinct VkFlags type VkVideoEncodeH265CtbSizeFlagsEXT* = distinct VkFlags type VkVideoEncodeH265TransformBlockSizeFlagsEXT* = distinct VkFlags -type VkMemoryUnmapFlagsKHR* = distinct VkFlags type VkInstance* = distinct VkHandle type VkPhysicalDevice* = distinct VkHandle type VkDevice* = distinct VkHandle @@ -341,9 +307,7 @@ type VkRenderPass* = distinct VkNonDispatchableHandle type VkPipelineCache* = distinct VkNonDispatchableHandle type VkIndirectCommandsLayoutNV* = distinct VkNonDispatchableHandle type VkDescriptorUpdateTemplate* = distinct VkNonDispatchableHandle -type VkDescriptorUpdateTemplateKHR* = VkDescriptorUpdateTemplate type VkSamplerYcbcrConversion* = distinct VkNonDispatchableHandle -type VkSamplerYcbcrConversionKHR* = VkSamplerYcbcrConversion type VkValidationCacheEXT* = distinct VkNonDispatchableHandle type VkAccelerationStructureKHR* = distinct VkNonDispatchableHandle type VkAccelerationStructureNV* = distinct VkNonDispatchableHandle @@ -351,7 +315,6 @@ type VkPerformanceConfigurationINTEL* = distinct VkNonDispatchableHandle type VkBufferCollectionFUCHSIA* = distinct VkNonDispatchableHandle type VkDeferredOperationKHR* = distinct VkNonDispatchableHandle type VkPrivateDataSlot* = distinct VkNonDispatchableHandle -type VkPrivateDataSlotEXT* = VkPrivateDataSlot type VkCuModuleNVX* = distinct VkNonDispatchableHandle type VkCuFunctionNVX* = distinct VkNonDispatchableHandle type VkOpticalFlowSessionNV* = distinct VkNonDispatchableHandle @@ -451,62 +414,44 @@ type VkIndirectCommandsLayoutUsageFlagBitsNV* = cint type VkIndirectCommandsTokenTypeNV* = cint type VkIndirectStateFlagBitsNV* = cint type VkPrivateDataSlotCreateFlagBits* = cint -type VkPrivateDataSlotCreateFlagBitsEXT* = VkPrivateDataSlotCreateFlagBits type VkDescriptorUpdateTemplateType* = cint -type VkDescriptorUpdateTemplateTypeKHR* = VkDescriptorUpdateTemplateType type VkViewportCoordinateSwizzleNV* = cint type VkDiscardRectangleModeEXT* = cint type VkSubpassDescriptionFlagBits* = cint type VkPointClippingBehavior* = cint -type VkPointClippingBehaviorKHR* = VkPointClippingBehavior type VkCoverageModulationModeNV* = cint type VkCoverageReductionModeNV* = cint type VkValidationCacheHeaderVersionEXT* = cint type VkShaderInfoTypeAMD* = cint type VkQueueGlobalPriorityKHR* = cint -type VkQueueGlobalPriorityEXT* = VkQueueGlobalPriorityKHR type VkTimeDomainEXT* = cint type VkConservativeRasterizationModeEXT* = cint type VkResolveModeFlagBits* = cint -type VkResolveModeFlagBitsKHR* = VkResolveModeFlagBits type VkDescriptorBindingFlagBits* = cint -type VkDescriptorBindingFlagBitsEXT* = VkDescriptorBindingFlagBits type VkConditionalRenderingFlagBitsEXT* = cint type VkSemaphoreType* = cint -type VkSemaphoreTypeKHR* = VkSemaphoreType type VkGeometryFlagBitsKHR* = cint -type VkGeometryFlagBitsNV* = VkGeometryFlagBitsKHR type VkGeometryInstanceFlagBitsKHR* = cint -type VkGeometryInstanceFlagBitsNV* = VkGeometryInstanceFlagBitsKHR type VkBuildAccelerationStructureFlagBitsKHR* = cint -type VkBuildAccelerationStructureFlagBitsNV* = VkBuildAccelerationStructureFlagBitsKHR type VkAccelerationStructureCreateFlagBitsKHR* = cint type VkBuildAccelerationStructureModeKHR* = cint type VkCopyAccelerationStructureModeKHR* = cint -type VkCopyAccelerationStructureModeNV* = VkCopyAccelerationStructureModeKHR type VkAccelerationStructureTypeKHR* = cint -type VkAccelerationStructureTypeNV* = VkAccelerationStructureTypeKHR type VkGeometryTypeKHR* = cint -type VkGeometryTypeNV* = VkGeometryTypeKHR type VkRayTracingShaderGroupTypeKHR* = cint -type VkRayTracingShaderGroupTypeNV* = VkRayTracingShaderGroupTypeKHR type VkAccelerationStructureMemoryRequirementsTypeNV* = cint type VkAccelerationStructureBuildTypeKHR* = cint type VkAccelerationStructureCompatibilityKHR* = cint type VkShaderGroupShaderKHR* = cint type VkMemoryOverallocationBehaviorAMD* = cint -type VkScopeNV* = cint -type VkComponentTypeNV* = cint type VkDeviceDiagnosticsConfigFlagBitsNV* = cint type VkPipelineCreationFeedbackFlagBits* = cint -type VkPipelineCreationFeedbackFlagBitsEXT* = VkPipelineCreationFeedbackFlagBits type VkPerformanceCounterScopeKHR* = cint type VkPerformanceCounterUnitKHR* = cint type VkPerformanceCounterStorageKHR* = cint type VkPerformanceCounterDescriptionFlagBitsKHR* = cint type VkAcquireProfilingLockFlagBitsKHR* = cint type VkSemaphoreWaitFlagBits* = cint -type VkSemaphoreWaitFlagBitsKHR* = VkSemaphoreWaitFlagBits type VkPerformanceConfigurationTypeINTEL* = cint type VkQueryPoolSamplingModeINTEL* = cint type VkPerformanceOverrideTypeINTEL* = cint @@ -524,22 +469,18 @@ type VkPipelineMatchControl* = cint type VkSciSyncClientTypeNV* = cint type VkSciSyncPrimitiveTypeNV* = cint type VkToolPurposeFlagBits* = cint -type VkToolPurposeFlagBitsEXT* = VkToolPurposeFlagBits type VkFragmentShadingRateNV* = cint type VkFragmentShadingRateTypeNV* = cint type VkSubpassMergeStatusEXT* = cint type VkAccessFlagBits2* = clonglong -type VkAccessFlagBits2KHR* = VkAccessFlagBits2 type VkPipelineStageFlagBits2* = clonglong -type VkPipelineStageFlagBits2KHR* = VkPipelineStageFlagBits2 type VkProvokingVertexModeEXT* = cint type VkPipelineCacheValidationVersion* = cint type VkImageFormatConstraintsFlagBitsFUCHSIA* = cint +type VkHostImageCopyFlagBitsEXT* = cint type VkImageConstraintsInfoFlagBitsFUCHSIA* = cint type VkFormatFeatureFlagBits2* = clonglong -type VkFormatFeatureFlagBits2KHR* = VkFormatFeatureFlagBits2 type VkRenderingFlagBits* = cint -type VkRenderingFlagBitsKHR* = VkRenderingFlagBits type VkPipelineDepthStencilStateCreateFlagBits* = cint type VkPipelineColorBlendStateCreateFlagBits* = cint type VkImageCompressionFlagBitsEXT* = cint @@ -558,10 +499,15 @@ type VkOpacityMicromapFormatEXT* = cint type VkOpacityMicromapSpecialIndexEXT* = cint type VkDeviceFaultVendorBinaryHeaderVersionEXT* = cint type VkMemoryDecompressionMethodFlagBitsNV* = cint +type VkDepthBiasRepresentationEXT* = cint type VkDirectDriverLoadingModeLUNARG* = cint +type VkPipelineCreateFlagBits2KHR* = cint +type VkBufferUsageFlagBits2KHR* = cint type VkDisplacementMicromapFormatNV* = cint type VkShaderCreateFlagBitsEXT* = cint type VkShaderCodeTypeEXT* = cint +type VkScopeKHR* = cint +type VkComponentTypeKHR* = cint type VkColorSpaceKHR* = cint type VkCompositeAlphaFlagBitsKHR* = cint type VkDisplayPlaneAlphaFlagBitsKHR* = cint @@ -577,52 +523,35 @@ type VkValidationCheckEXT* = cint type VkValidationFeatureEnableEXT* = cint type VkValidationFeatureDisableEXT* = cint type VkExternalMemoryHandleTypeFlagBits* = cint -type VkExternalMemoryHandleTypeFlagBitsKHR* = VkExternalMemoryHandleTypeFlagBits type VkExternalMemoryFeatureFlagBits* = cint -type VkExternalMemoryFeatureFlagBitsKHR* = VkExternalMemoryFeatureFlagBits type VkExternalSemaphoreHandleTypeFlagBits* = cint -type VkExternalSemaphoreHandleTypeFlagBitsKHR* = VkExternalSemaphoreHandleTypeFlagBits type VkExternalSemaphoreFeatureFlagBits* = cint -type VkExternalSemaphoreFeatureFlagBitsKHR* = VkExternalSemaphoreFeatureFlagBits type VkSemaphoreImportFlagBits* = cint -type VkSemaphoreImportFlagBitsKHR* = VkSemaphoreImportFlagBits type VkExternalFenceHandleTypeFlagBits* = cint -type VkExternalFenceHandleTypeFlagBitsKHR* = VkExternalFenceHandleTypeFlagBits type VkExternalFenceFeatureFlagBits* = cint -type VkExternalFenceFeatureFlagBitsKHR* = VkExternalFenceFeatureFlagBits type VkFenceImportFlagBits* = cint -type VkFenceImportFlagBitsKHR* = VkFenceImportFlagBits type VkSurfaceCounterFlagBitsEXT* = cint type VkDisplayPowerStateEXT* = cint type VkDeviceEventTypeEXT* = cint type VkDisplayEventTypeEXT* = cint type VkPeerMemoryFeatureFlagBits* = cint -type VkPeerMemoryFeatureFlagBitsKHR* = VkPeerMemoryFeatureFlagBits type VkMemoryAllocateFlagBits* = cint -type VkMemoryAllocateFlagBitsKHR* = VkMemoryAllocateFlagBits type VkDeviceGroupPresentModeFlagBitsKHR* = cint type VkSwapchainCreateFlagBitsKHR* = cint type VkSubgroupFeatureFlagBits* = cint type VkTessellationDomainOrigin* = cint -type VkTessellationDomainOriginKHR* = VkTessellationDomainOrigin type VkSamplerYcbcrModelConversion* = cint -type VkSamplerYcbcrModelConversionKHR* = VkSamplerYcbcrModelConversion type VkSamplerYcbcrRange* = cint -type VkSamplerYcbcrRangeKHR* = VkSamplerYcbcrRange type VkChromaLocation* = cint -type VkChromaLocationKHR* = VkChromaLocation type VkSamplerReductionMode* = cint -type VkSamplerReductionModeEXT* = VkSamplerReductionMode type VkBlendOverlapEXT* = cint type VkDebugUtilsMessageSeverityFlagBitsEXT* = cint type VkDebugUtilsMessageTypeFlagBitsEXT* = cint type VkFullScreenExclusiveEXT* = cint type VkShaderFloatControlsIndependence* = cint -type VkShaderFloatControlsIndependenceKHR* = VkShaderFloatControlsIndependence type VkSwapchainImageUsageFlagBitsANDROID* = cint type VkFragmentShadingRateCombinerOpKHR* = cint type VkSubmitFlagBits* = cint -type VkSubmitFlagBitsKHR* = VkSubmitFlagBits type VkGraphicsPipelineLibraryFlagBitsEXT* = cint type VkOpticalFlowGridSizeFlagBitsNV* = cint type VkOpticalFlowUsageFlagBitsNV* = cint @@ -635,7 +564,6 @@ type VkPresentScalingFlagBitsEXT* = cint type VkPresentGravityFlagBitsEXT* = cint type VkVendorId* = cint type VkDriverId* = cint -type VkDriverIdKHR* = VkDriverId type VkShadingRatePaletteEntryNV* = cint type VkCoarseSampleOrderTypeNV* = cint type VkPipelineExecutableStatisticFormatKHR* = cint @@ -656,14165 +584,14 @@ type VkVideoEncodeCapabilityFlagBitsKHR* = cint type VkVideoEncodeFeedbackFlagBitsKHR* = cint type VkVideoEncodeRateControlModeFlagBitsKHR* = cint type VkVideoEncodeH264CapabilityFlagBitsEXT* = cint -type VkVideoEncodeH264RateControlStructureEXT* = cint +type VkVideoEncodeH264StdFlagBitsEXT* = cint +type VkVideoEncodeH264RateControlFlagBitsEXT* = cint type VkVideoEncodeH265CapabilityFlagBitsEXT* = cint -type VkVideoEncodeH265RateControlStructureEXT* = cint +type VkVideoEncodeH265StdFlagBitsEXT* = cint +type VkVideoEncodeH265RateControlFlagBitsEXT* = cint type VkVideoEncodeH265CtbSizeFlagBitsEXT* = cint type VkVideoEncodeH265TransformBlockSizeFlagBitsEXT* = cint -type PFN_vkInternalAllocationNotification* = proc(pUserData: pointer; size: csize_t; allocationType: VkInternalAllocationType; allocationScope: VkSystemAllocationScope) {.cdecl.} -type PFN_vkInternalFreeNotification* = proc(pUserData: pointer; size: csize_t; allocationType: VkInternalAllocationType; allocationScope: VkSystemAllocationScope) {.cdecl.} -type PFN_vkReallocationFunction* = proc(pUserData: pointer; pOriginal: pointer; size: csize_t; alignment: csize_t; allocationScope: VkSystemAllocationScope): pointer {.cdecl.} -type PFN_vkAllocationFunction* = proc(pUserData: pointer; size: csize_t; alignment: csize_t; allocationScope: VkSystemAllocationScope): pointer {.cdecl.} -type PFN_vkFreeFunction* = proc(pUserData: pointer; pMemory: pointer) {.cdecl.} -type PFN_vkVoidFunction* = proc() {.cdecl.} -type PFN_vkDebugReportCallbackEXT* = proc(flags: VkDebugReportFlagsEXT; objectType: VkDebugReportObjectTypeEXT; cbObject: uint64; location: csize_t; messageCode: int32; pLayerPrefix: cstring; pMessage: cstring; pUserData: pointer): VkBool32 {.cdecl.} -type PFN_vkDebugUtilsMessengerCallbackEXT* = proc(messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEXT, messageTypes: VkDebugUtilsMessageTypeFlagsEXT, pCallbackData: VkDebugUtilsMessengerCallbackDataEXT, userData: pointer): VkBool32 {.cdecl.} -type PFN_vkFaultCallbackFunction* = proc(unrecordedFaults: VkBool32, faultCount: uint32, pFaults: pointer) {.cdecl.} -type PFN_vkDeviceMemoryReportCallbackEXT* = proc(pCallbackData: VkDeviceMemoryReportCallbackDataEXT, pUserData: pointer) {.cdecl.} -type PFN_vkGetInstanceProcAddrLUNARG* = proc(instance: VkInstance, pName: cstring) {.cdecl.} -type VkBaseOutStructure* = object - sType*: VkStructureType - pNext*: ptr VkBaseOutStructure - -proc newVkBaseOutStructure*(sType: VkStructureType, pNext: ptr VkBaseOutStructure): VkBaseOutStructure = - result.sType = sType - result.pNext = pNext - -type VkBaseInStructure* = object - sType*: VkStructureType - pNext*: ptr VkBaseInStructure - -proc newVkBaseInStructure*(sType: VkStructureType, pNext: ptr VkBaseInStructure): VkBaseInStructure = - result.sType = sType - result.pNext = pNext - -type VkOffset2D* = object - x*: int32 - y*: int32 - -proc newVkOffset2D*(x: int32, y: int32): VkOffset2D = - result.x = x - result.y = y - -type VkOffset3D* = object - x*: int32 - y*: int32 - z*: int32 - -proc newVkOffset3D*(x: int32, y: int32, z: int32): VkOffset3D = - result.x = x - result.y = y - result.z = z - -type VkExtent2D* = object - width*: uint32 - height*: uint32 - -proc newVkExtent2D*(width: uint32, height: uint32): VkExtent2D = - result.width = width - result.height = height - -type VkExtent3D* = object - width*: uint32 - height*: uint32 - depth*: uint32 - -proc newVkExtent3D*(width: uint32, height: uint32, depth: uint32): VkExtent3D = - result.width = width - result.height = height - result.depth = depth - -type VkViewport* = object - x*: float32 - y*: float32 - width*: float32 - height*: float32 - minDepth*: float32 - maxDepth*: float32 - -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 - -type VkRect2D* = object - offset*: VkOffset2D - extent*: VkExtent2D - -proc newVkRect2D*(offset: VkOffset2D, extent: VkExtent2D): VkRect2D = - result.offset = offset - result.extent = extent - -type VkClearRect* = object - rect*: VkRect2D - baseArrayLayer*: uint32 - layerCount*: uint32 - -proc newVkClearRect*(rect: VkRect2D, baseArrayLayer: uint32, layerCount: uint32): VkClearRect = - result.rect = rect - result.baseArrayLayer = baseArrayLayer - result.layerCount = layerCount - -type VkComponentMapping* = object - r*: VkComponentSwizzle - g*: VkComponentSwizzle - b*: VkComponentSwizzle - a*: VkComponentSwizzle - -proc newVkComponentMapping*(r: VkComponentSwizzle, g: VkComponentSwizzle, b: VkComponentSwizzle, a: VkComponentSwizzle): VkComponentMapping = - result.r = r - result.g = g - result.b = b - result.a = a - -type VkPhysicalDeviceProperties* = object - 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 - -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 - -type VkExtensionProperties* = object - extensionName*: array[VK_MAX_EXTENSION_NAME_SIZE, char] - specVersion*: uint32 - -proc newVkExtensionProperties*(extensionName: array[VK_MAX_EXTENSION_NAME_SIZE, char], specVersion: uint32): VkExtensionProperties = - result.extensionName = extensionName - result.specVersion = specVersion - -type VkLayerProperties* = object - layerName*: array[VK_MAX_EXTENSION_NAME_SIZE, char] - specVersion*: uint32 - implementationVersion*: uint32 - description*: array[VK_MAX_DESCRIPTION_SIZE, char] - -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 - -type VkApplicationInfo* = object - sType*: VkStructureType - pNext*: pointer - pApplicationName*: cstring - applicationVersion*: uint32 - pEngineName*: cstring - engineVersion*: uint32 - apiVersion*: uint32 - -proc newVkApplicationInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_APPLICATION_INFO, 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 - -type VkAllocationCallbacks* = object - pUserData*: pointer - pfnAllocation*: PFN_vkAllocationFunction - pfnReallocation*: PFN_vkReallocationFunction - pfnFree*: PFN_vkFreeFunction - pfnInternalAllocation*: PFN_vkInternalAllocationNotification - pfnInternalFree*: PFN_vkInternalFreeNotification - -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 - -type VkDeviceQueueCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkDeviceQueueCreateFlags - queueFamilyIndex*: uint32 - queueCount*: uint32 - pQueuePriorities*: ptr float32 - -proc newVkDeviceQueueCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO, 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 - -type VkDeviceCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkDeviceCreateFlags - queueCreateInfoCount*: uint32 - pQueueCreateInfos*: ptr VkDeviceQueueCreateInfo - enabledLayerCount*: uint32 - ppEnabledLayerNames*: cstringArray - enabledExtensionCount*: uint32 - ppEnabledExtensionNames*: cstringArray - pEnabledFeatures*: ptr VkPhysicalDeviceFeatures - -proc newVkDeviceCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO, 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 - -type VkInstanceCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkInstanceCreateFlags - pApplicationInfo*: ptr VkApplicationInfo - enabledLayerCount*: uint32 - ppEnabledLayerNames*: cstringArray - enabledExtensionCount*: uint32 - ppEnabledExtensionNames*: cstringArray - -proc newVkInstanceCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO, 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 - -type VkQueueFamilyProperties* = object - queueFlags*: VkQueueFlags - queueCount*: uint32 - timestampValidBits*: uint32 - minImageTransferGranularity*: VkExtent3D - -proc newVkQueueFamilyProperties*(queueFlags: VkQueueFlags, queueCount: uint32, timestampValidBits: uint32, minImageTransferGranularity: VkExtent3D): VkQueueFamilyProperties = - result.queueFlags = queueFlags - result.queueCount = queueCount - result.timestampValidBits = timestampValidBits - result.minImageTransferGranularity = minImageTransferGranularity - -type VkPhysicalDeviceMemoryProperties* = object - memoryTypeCount*: uint32 - memoryTypes*: array[VK_MAX_MEMORY_TYPES, VkMemoryType] - memoryHeapCount*: uint32 - memoryHeaps*: array[VK_MAX_MEMORY_HEAPS, VkMemoryHeap] - -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 - -type VkMemoryAllocateInfo* = object - sType*: VkStructureType - pNext*: pointer - allocationSize*: VkDeviceSize - memoryTypeIndex*: uint32 - -proc newVkMemoryAllocateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO, pNext: pointer = nil, allocationSize: VkDeviceSize, memoryTypeIndex: uint32): VkMemoryAllocateInfo = - result.sType = sType - result.pNext = pNext - result.allocationSize = allocationSize - result.memoryTypeIndex = memoryTypeIndex - -type VkMemoryRequirements* = object - size*: VkDeviceSize - alignment*: VkDeviceSize - memoryTypeBits*: uint32 - -proc newVkMemoryRequirements*(size: VkDeviceSize, alignment: VkDeviceSize, memoryTypeBits: uint32): VkMemoryRequirements = - result.size = size - result.alignment = alignment - result.memoryTypeBits = memoryTypeBits - -type VkSparseImageFormatProperties* = object - aspectMask*: VkImageAspectFlags - imageGranularity*: VkExtent3D - flags*: VkSparseImageFormatFlags - -proc newVkSparseImageFormatProperties*(aspectMask: VkImageAspectFlags, imageGranularity: VkExtent3D, flags: VkSparseImageFormatFlags = 0.VkSparseImageFormatFlags): VkSparseImageFormatProperties = - result.aspectMask = aspectMask - result.imageGranularity = imageGranularity - result.flags = flags - -type VkSparseImageMemoryRequirements* = object - formatProperties*: VkSparseImageFormatProperties - imageMipTailFirstLod*: uint32 - imageMipTailSize*: VkDeviceSize - imageMipTailOffset*: VkDeviceSize - imageMipTailStride*: VkDeviceSize - -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 - -type VkMemoryType* = object - propertyFlags*: VkMemoryPropertyFlags - heapIndex*: uint32 - -proc newVkMemoryType*(propertyFlags: VkMemoryPropertyFlags, heapIndex: uint32): VkMemoryType = - result.propertyFlags = propertyFlags - result.heapIndex = heapIndex - -type VkMemoryHeap* = object - size*: VkDeviceSize - flags*: VkMemoryHeapFlags - -proc newVkMemoryHeap*(size: VkDeviceSize, flags: VkMemoryHeapFlags = 0.VkMemoryHeapFlags): VkMemoryHeap = - result.size = size - result.flags = flags - -type VkMappedMemoryRange* = object - sType*: VkStructureType - pNext*: pointer - memory*: VkDeviceMemory - offset*: VkDeviceSize - size*: VkDeviceSize - -proc newVkMappedMemoryRange*(sType: VkStructureType = VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE, 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 - -type VkFormatProperties* = object - linearTilingFeatures*: VkFormatFeatureFlags - optimalTilingFeatures*: VkFormatFeatureFlags - bufferFeatures*: VkFormatFeatureFlags - -proc newVkFormatProperties*(linearTilingFeatures: VkFormatFeatureFlags, optimalTilingFeatures: VkFormatFeatureFlags, bufferFeatures: VkFormatFeatureFlags): VkFormatProperties = - result.linearTilingFeatures = linearTilingFeatures - result.optimalTilingFeatures = optimalTilingFeatures - result.bufferFeatures = bufferFeatures - -type VkImageFormatProperties* = object - maxExtent*: VkExtent3D - maxMipLevels*: uint32 - maxArrayLayers*: uint32 - sampleCounts*: VkSampleCountFlags - maxResourceSize*: VkDeviceSize - -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 - -type VkDescriptorBufferInfo* = object - buffer*: VkBuffer - offset*: VkDeviceSize - range*: VkDeviceSize - -proc newVkDescriptorBufferInfo*(buffer: VkBuffer, offset: VkDeviceSize, range: VkDeviceSize): VkDescriptorBufferInfo = - result.buffer = buffer - result.offset = offset - result.range = range - -type VkDescriptorImageInfo* = object - sampler*: VkSampler - imageView*: VkImageView - imageLayout*: VkImageLayout - -proc newVkDescriptorImageInfo*(sampler: VkSampler, imageView: VkImageView, imageLayout: VkImageLayout): VkDescriptorImageInfo = - result.sampler = sampler - result.imageView = imageView - result.imageLayout = imageLayout - -type VkWriteDescriptorSet* = object - sType*: VkStructureType - pNext*: pointer - dstSet*: VkDescriptorSet - dstBinding*: uint32 - dstArrayElement*: uint32 - descriptorCount*: uint32 - descriptorType*: VkDescriptorType - pImageInfo*: ptr VkDescriptorImageInfo - pBufferInfo*: ptr VkDescriptorBufferInfo - pTexelBufferView*: ptr VkBufferView - -proc newVkWriteDescriptorSet*(sType: VkStructureType = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET, pNext: pointer = nil, dstSet: VkDescriptorSet, dstBinding: uint32, dstArrayElement: uint32, descriptorCount: uint32, descriptorType: VkDescriptorType, pImageInfo: ptr VkDescriptorImageInfo, pBufferInfo: 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 - -type VkCopyDescriptorSet* = object - sType*: VkStructureType - pNext*: pointer - srcSet*: VkDescriptorSet - srcBinding*: uint32 - srcArrayElement*: uint32 - dstSet*: VkDescriptorSet - dstBinding*: uint32 - dstArrayElement*: uint32 - descriptorCount*: uint32 - -proc newVkCopyDescriptorSet*(sType: VkStructureType = VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET, 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 - -type VkBufferCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkBufferCreateFlags - size*: VkDeviceSize - usage*: VkBufferUsageFlags - sharingMode*: VkSharingMode - queueFamilyIndexCount*: uint32 - pQueueFamilyIndices*: ptr uint32 - -proc newVkBufferCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO, 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 - -type VkBufferViewCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkBufferViewCreateFlags - buffer*: VkBuffer - format*: VkFormat - offset*: VkDeviceSize - range*: VkDeviceSize - -proc newVkBufferViewCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO, 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 - -type VkImageSubresource* = object - aspectMask*: VkImageAspectFlags - mipLevel*: uint32 - arrayLayer*: uint32 - -proc newVkImageSubresource*(aspectMask: VkImageAspectFlags, mipLevel: uint32, arrayLayer: uint32): VkImageSubresource = - result.aspectMask = aspectMask - result.mipLevel = mipLevel - result.arrayLayer = arrayLayer - -type VkImageSubresourceLayers* = object - aspectMask*: VkImageAspectFlags - mipLevel*: uint32 - baseArrayLayer*: uint32 - layerCount*: uint32 - -proc newVkImageSubresourceLayers*(aspectMask: VkImageAspectFlags, mipLevel: uint32, baseArrayLayer: uint32, layerCount: uint32): VkImageSubresourceLayers = - result.aspectMask = aspectMask - result.mipLevel = mipLevel - result.baseArrayLayer = baseArrayLayer - result.layerCount = layerCount - -type VkImageSubresourceRange* = object - aspectMask*: VkImageAspectFlags - baseMipLevel*: uint32 - levelCount*: uint32 - baseArrayLayer*: uint32 - layerCount*: uint32 - -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 - -type VkMemoryBarrier* = object - sType*: VkStructureType - pNext*: pointer - srcAccessMask*: VkAccessFlags - dstAccessMask*: VkAccessFlags - -proc newVkMemoryBarrier*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_BARRIER, pNext: pointer = nil, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags): VkMemoryBarrier = - result.sType = sType - result.pNext = pNext - result.srcAccessMask = srcAccessMask - result.dstAccessMask = dstAccessMask - -type VkBufferMemoryBarrier* = object - sType*: VkStructureType - pNext*: pointer - srcAccessMask*: VkAccessFlags - dstAccessMask*: VkAccessFlags - srcQueueFamilyIndex*: uint32 - dstQueueFamilyIndex*: uint32 - buffer*: VkBuffer - offset*: VkDeviceSize - size*: VkDeviceSize - -proc newVkBufferMemoryBarrier*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER, 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 - -type VkImageMemoryBarrier* = object - sType*: VkStructureType - pNext*: pointer - srcAccessMask*: VkAccessFlags - dstAccessMask*: VkAccessFlags - oldLayout*: VkImageLayout - newLayout*: VkImageLayout - srcQueueFamilyIndex*: uint32 - dstQueueFamilyIndex*: uint32 - image*: VkImage - subresourceRange*: VkImageSubresourceRange - -proc newVkImageMemoryBarrier*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER, 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 - -type VkImageCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: 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 - -proc newVkImageCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO, 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 - -type VkSubresourceLayout* = object - offset*: VkDeviceSize - size*: VkDeviceSize - rowPitch*: VkDeviceSize - arrayPitch*: VkDeviceSize - depthPitch*: VkDeviceSize - -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 - -type VkImageViewCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkImageViewCreateFlags - image*: VkImage - viewType*: VkImageViewType - format*: VkFormat - components*: VkComponentMapping - subresourceRange*: VkImageSubresourceRange - -proc newVkImageViewCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO, 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 - -type VkBufferCopy* = object - srcOffset*: VkDeviceSize - dstOffset*: VkDeviceSize - size*: VkDeviceSize - -proc newVkBufferCopy*(srcOffset: VkDeviceSize, dstOffset: VkDeviceSize, size: VkDeviceSize): VkBufferCopy = - result.srcOffset = srcOffset - result.dstOffset = dstOffset - result.size = size - -type VkSparseMemoryBind* = object - resourceOffset*: VkDeviceSize - size*: VkDeviceSize - memory*: VkDeviceMemory - memoryOffset*: VkDeviceSize - flags*: VkSparseMemoryBindFlags - -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 - -type VkSparseImageMemoryBind* = object - subresource*: VkImageSubresource - offset*: VkOffset3D - extent*: VkExtent3D - memory*: VkDeviceMemory - memoryOffset*: VkDeviceSize - flags*: VkSparseMemoryBindFlags - -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 - -type VkSparseBufferMemoryBindInfo* = object - buffer*: VkBuffer - bindCount*: uint32 - pBinds*: ptr VkSparseMemoryBind - -proc newVkSparseBufferMemoryBindInfo*(buffer: VkBuffer, bindCount: uint32, pBinds: ptr VkSparseMemoryBind): VkSparseBufferMemoryBindInfo = - result.buffer = buffer - result.bindCount = bindCount - result.pBinds = pBinds - -type VkSparseImageOpaqueMemoryBindInfo* = object - image*: VkImage - bindCount*: uint32 - pBinds*: ptr VkSparseMemoryBind - -proc newVkSparseImageOpaqueMemoryBindInfo*(image: VkImage, bindCount: uint32, pBinds: ptr VkSparseMemoryBind): VkSparseImageOpaqueMemoryBindInfo = - result.image = image - result.bindCount = bindCount - result.pBinds = pBinds - -type VkSparseImageMemoryBindInfo* = object - image*: VkImage - bindCount*: uint32 - pBinds*: ptr VkSparseImageMemoryBind - -proc newVkSparseImageMemoryBindInfo*(image: VkImage, bindCount: uint32, pBinds: ptr VkSparseImageMemoryBind): VkSparseImageMemoryBindInfo = - result.image = image - result.bindCount = bindCount - result.pBinds = pBinds - -type VkBindSparseInfo* = object - sType*: VkStructureType - pNext*: pointer - 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 - -proc newVkBindSparseInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_BIND_SPARSE_INFO, 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 - -type VkImageCopy* = object - srcSubresource*: VkImageSubresourceLayers - srcOffset*: VkOffset3D - dstSubresource*: VkImageSubresourceLayers - dstOffset*: VkOffset3D - extent*: VkExtent3D - -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 - -type VkImageBlit* = object - srcSubresource*: VkImageSubresourceLayers - srcOffsets*: array[2, VkOffset3D] - dstSubresource*: VkImageSubresourceLayers - dstOffsets*: array[2, VkOffset3D] - -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 - -type VkBufferImageCopy* = object - bufferOffset*: VkDeviceSize - bufferRowLength*: uint32 - bufferImageHeight*: uint32 - imageSubresource*: VkImageSubresourceLayers - imageOffset*: VkOffset3D - imageExtent*: VkExtent3D - -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 - -type VkCopyMemoryIndirectCommandNV* = object - srcAddress*: VkDeviceAddress - dstAddress*: VkDeviceAddress - size*: VkDeviceSize - -proc newVkCopyMemoryIndirectCommandNV*(srcAddress: VkDeviceAddress, dstAddress: VkDeviceAddress, size: VkDeviceSize): VkCopyMemoryIndirectCommandNV = - result.srcAddress = srcAddress - result.dstAddress = dstAddress - result.size = size - -type VkCopyMemoryToImageIndirectCommandNV* = object - srcAddress*: VkDeviceAddress - bufferRowLength*: uint32 - bufferImageHeight*: uint32 - imageSubresource*: VkImageSubresourceLayers - imageOffset*: VkOffset3D - imageExtent*: VkExtent3D - -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 - -type VkImageResolve* = object - srcSubresource*: VkImageSubresourceLayers - srcOffset*: VkOffset3D - dstSubresource*: VkImageSubresourceLayers - dstOffset*: VkOffset3D - extent*: VkExtent3D - -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 - -type VkShaderModuleCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkShaderModuleCreateFlags - codeSize*: uint - pCode*: ptr uint32 - -proc newVkShaderModuleCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO, 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 - -type VkDescriptorSetLayoutBinding* = object - binding*: uint32 - descriptorType*: VkDescriptorType - descriptorCount*: uint32 - stageFlags*: VkShaderStageFlags - pImmutableSamplers*: ptr VkSampler - -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 - -type VkDescriptorSetLayoutCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkDescriptorSetLayoutCreateFlags - bindingCount*: uint32 - pBindings*: ptr VkDescriptorSetLayoutBinding - -proc newVkDescriptorSetLayoutCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO, 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 - -type VkDescriptorPoolSize* = object - `type`*: VkDescriptorType - descriptorCount*: uint32 - -proc newVkDescriptorPoolSize*(`type`: VkDescriptorType, descriptorCount: uint32): VkDescriptorPoolSize = - result.`type` = `type` - result.descriptorCount = descriptorCount - -type VkDescriptorPoolCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkDescriptorPoolCreateFlags - maxSets*: uint32 - poolSizeCount*: uint32 - pPoolSizes*: ptr VkDescriptorPoolSize - -proc newVkDescriptorPoolCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO, 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 - -type VkDescriptorSetAllocateInfo* = object - sType*: VkStructureType - pNext*: pointer - descriptorPool*: VkDescriptorPool - descriptorSetCount*: uint32 - pSetLayouts*: ptr VkDescriptorSetLayout - -proc newVkDescriptorSetAllocateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO, 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 - -type VkSpecializationMapEntry* = object - constantID*: uint32 - offset*: uint32 - size*: uint - -proc newVkSpecializationMapEntry*(constantID: uint32, offset: uint32, size: uint): VkSpecializationMapEntry = - result.constantID = constantID - result.offset = offset - result.size = size - -type VkSpecializationInfo* = object - mapEntryCount*: uint32 - pMapEntries*: ptr VkSpecializationMapEntry - dataSize*: uint - pData*: pointer - -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 - -type VkPipelineShaderStageCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkPipelineShaderStageCreateFlags - stage*: VkShaderStageFlagBits - module*: VkShaderModule - pName*: cstring - pSpecializationInfo*: ptr VkSpecializationInfo - -proc newVkPipelineShaderStageCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO, 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 - -type VkComputePipelineCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkPipelineCreateFlags - stage*: VkPipelineShaderStageCreateInfo - layout*: VkPipelineLayout - basePipelineHandle*: VkPipeline - basePipelineIndex*: int32 - -proc newVkComputePipelineCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO, 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 - -type VkVertexInputBindingDescription* = object - binding*: uint32 - stride*: uint32 - inputRate*: VkVertexInputRate - -proc newVkVertexInputBindingDescription*(binding: uint32, stride: uint32, inputRate: VkVertexInputRate): VkVertexInputBindingDescription = - result.binding = binding - result.stride = stride - result.inputRate = inputRate - -type VkVertexInputAttributeDescription* = object - location*: uint32 - binding*: uint32 - format*: VkFormat - offset*: uint32 - -proc newVkVertexInputAttributeDescription*(location: uint32, binding: uint32, format: VkFormat, offset: uint32): VkVertexInputAttributeDescription = - result.location = location - result.binding = binding - result.format = format - result.offset = offset - -type VkPipelineVertexInputStateCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkPipelineVertexInputStateCreateFlags - vertexBindingDescriptionCount*: uint32 - pVertexBindingDescriptions*: ptr VkVertexInputBindingDescription - vertexAttributeDescriptionCount*: uint32 - pVertexAttributeDescriptions*: ptr VkVertexInputAttributeDescription - -proc newVkPipelineVertexInputStateCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO, 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 - -type VkPipelineInputAssemblyStateCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkPipelineInputAssemblyStateCreateFlags - topology*: VkPrimitiveTopology - primitiveRestartEnable*: VkBool32 - -proc newVkPipelineInputAssemblyStateCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO, 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 - -type VkPipelineTessellationStateCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkPipelineTessellationStateCreateFlags - patchControlPoints*: uint32 - -proc newVkPipelineTessellationStateCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO, pNext: pointer = nil, flags: VkPipelineTessellationStateCreateFlags = 0.VkPipelineTessellationStateCreateFlags, patchControlPoints: uint32): VkPipelineTessellationStateCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.patchControlPoints = patchControlPoints - -type VkPipelineViewportStateCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkPipelineViewportStateCreateFlags - viewportCount*: uint32 - pViewports*: ptr VkViewport - scissorCount*: uint32 - pScissors*: ptr VkRect2D - -proc newVkPipelineViewportStateCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO, 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 - -type VkPipelineRasterizationStateCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkPipelineRasterizationStateCreateFlags - depthClampEnable*: VkBool32 - rasterizerDiscardEnable*: VkBool32 - polygonMode*: VkPolygonMode - cullMode*: VkCullModeFlags - frontFace*: VkFrontFace - depthBiasEnable*: VkBool32 - depthBiasConstantFactor*: float32 - depthBiasClamp*: float32 - depthBiasSlopeFactor*: float32 - lineWidth*: float32 - -proc newVkPipelineRasterizationStateCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO, 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 - -type VkPipelineMultisampleStateCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkPipelineMultisampleStateCreateFlags - rasterizationSamples*: VkSampleCountFlagBits - sampleShadingEnable*: VkBool32 - minSampleShading*: float32 - pSampleMask*: ptr VkSampleMask - alphaToCoverageEnable*: VkBool32 - alphaToOneEnable*: VkBool32 - -proc newVkPipelineMultisampleStateCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO, 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 - -type VkPipelineColorBlendAttachmentState* = object - blendEnable*: VkBool32 - srcColorBlendFactor*: VkBlendFactor - dstColorBlendFactor*: VkBlendFactor - colorBlendOp*: VkBlendOp - srcAlphaBlendFactor*: VkBlendFactor - dstAlphaBlendFactor*: VkBlendFactor - alphaBlendOp*: VkBlendOp - colorWriteMask*: VkColorComponentFlags - -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 - -type VkPipelineColorBlendStateCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkPipelineColorBlendStateCreateFlags - logicOpEnable*: VkBool32 - logicOp*: VkLogicOp - attachmentCount*: uint32 - pAttachments*: ptr VkPipelineColorBlendAttachmentState - blendConstants*: array[4, float32] - -proc newVkPipelineColorBlendStateCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO, 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 - -type VkPipelineDynamicStateCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkPipelineDynamicStateCreateFlags - dynamicStateCount*: uint32 - pDynamicStates*: ptr VkDynamicState - -proc newVkPipelineDynamicStateCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO, 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 - -type VkStencilOpState* = object - failOp*: VkStencilOp - passOp*: VkStencilOp - depthFailOp*: VkStencilOp - compareOp*: VkCompareOp - compareMask*: uint32 - writeMask*: uint32 - reference*: uint32 - -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 - -type VkPipelineDepthStencilStateCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkPipelineDepthStencilStateCreateFlags - depthTestEnable*: VkBool32 - depthWriteEnable*: VkBool32 - depthCompareOp*: VkCompareOp - depthBoundsTestEnable*: VkBool32 - stencilTestEnable*: VkBool32 - front*: VkStencilOpState - back*: VkStencilOpState - minDepthBounds*: float32 - maxDepthBounds*: float32 - -proc newVkPipelineDepthStencilStateCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO, 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 - -type VkGraphicsPipelineCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: 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 - -proc newVkGraphicsPipelineCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO, 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 - -type VkPipelineCacheCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkPipelineCacheCreateFlags - initialDataSize*: uint - pInitialData*: pointer - -proc newVkPipelineCacheCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO, 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 - -type VkPipelineCacheHeaderVersionOne_s* = object - headerSize*: uint32 - headerVersion*: VkPipelineCacheHeaderVersion - vendorID*: uint32 - deviceID*: uint32 - pipelineCacheUUID*: array[VK_UUID_SIZE, uint8] - -proc newVkPipelineCacheHeaderVersionOne_s*(headerSize: uint32, headerVersion: VkPipelineCacheHeaderVersion, vendorID: uint32, deviceID: uint32, pipelineCacheUUID: array[VK_UUID_SIZE, uint8]): VkPipelineCacheHeaderVersionOne_s = - result.headerSize = headerSize - result.headerVersion = headerVersion - result.vendorID = vendorID - result.deviceID = deviceID - result.pipelineCacheUUID = pipelineCacheUUID - -type VkPipelineCacheStageValidationIndexEntry* = object - codeSize*: uint64 - codeOffset*: uint64 - -proc newVkPipelineCacheStageValidationIndexEntry*(codeSize: uint64, codeOffset: uint64): VkPipelineCacheStageValidationIndexEntry = - result.codeSize = codeSize - result.codeOffset = codeOffset - -type VkPipelineCacheSafetyCriticalIndexEntry* = object - pipelineIdentifier*: array[VK_UUID_SIZE, uint8] - pipelineMemorySize*: uint64 - jsonSize*: uint64 - jsonOffset*: uint64 - stageIndexCount*: uint32 - stageIndexStride*: uint32 - stageIndexOffset*: uint64 - -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 - -type VkPipelineCacheHeaderVersionSafetyCriticalOne_s* = object - headerVersionOne*: VkPipelineCacheHeaderVersionOne_s - validationVersion*: VkPipelineCacheValidationVersion - implementationData*: uint32 - pipelineIndexCount*: uint32 - pipelineIndexStride*: uint32 - pipelineIndexOffset*: uint64 - -proc newVkPipelineCacheHeaderVersionSafetyCriticalOne_s*(headerVersionOne: VkPipelineCacheHeaderVersionOne_s, validationVersion: VkPipelineCacheValidationVersion, implementationData: uint32, pipelineIndexCount: uint32, pipelineIndexStride: uint32, pipelineIndexOffset: uint64): VkPipelineCacheHeaderVersionSafetyCriticalOne_s = - result.headerVersionOne = headerVersionOne - result.validationVersion = validationVersion - result.implementationData = implementationData - result.pipelineIndexCount = pipelineIndexCount - result.pipelineIndexStride = pipelineIndexStride - result.pipelineIndexOffset = pipelineIndexOffset - -type VkPushConstantRange* = object - stageFlags*: VkShaderStageFlags - offset*: uint32 - size*: uint32 - -proc newVkPushConstantRange*(stageFlags: VkShaderStageFlags, offset: uint32, size: uint32): VkPushConstantRange = - result.stageFlags = stageFlags - result.offset = offset - result.size = size - -type VkPipelineLayoutCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkPipelineLayoutCreateFlags - setLayoutCount*: uint32 - pSetLayouts*: ptr VkDescriptorSetLayout - pushConstantRangeCount*: uint32 - pPushConstantRanges*: ptr VkPushConstantRange - -proc newVkPipelineLayoutCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO, 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 - -type VkSamplerCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: 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 - -proc newVkSamplerCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO, 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 - -type VkCommandPoolCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkCommandPoolCreateFlags - queueFamilyIndex*: uint32 - -proc newVkCommandPoolCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO, pNext: pointer = nil, flags: VkCommandPoolCreateFlags = 0.VkCommandPoolCreateFlags, queueFamilyIndex: uint32): VkCommandPoolCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.queueFamilyIndex = queueFamilyIndex - -type VkCommandBufferAllocateInfo* = object - sType*: VkStructureType - pNext*: pointer - commandPool*: VkCommandPool - level*: VkCommandBufferLevel - commandBufferCount*: uint32 - -proc newVkCommandBufferAllocateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO, 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 - -type VkCommandBufferInheritanceInfo* = object - sType*: VkStructureType - pNext*: pointer - renderPass*: VkRenderPass - subpass*: uint32 - framebuffer*: VkFramebuffer - occlusionQueryEnable*: VkBool32 - queryFlags*: VkQueryControlFlags - pipelineStatistics*: VkQueryPipelineStatisticFlags - -proc newVkCommandBufferInheritanceInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO, 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 - -type VkCommandBufferBeginInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkCommandBufferUsageFlags - pInheritanceInfo*: ptr VkCommandBufferInheritanceInfo - -proc newVkCommandBufferBeginInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO, pNext: pointer = nil, flags: VkCommandBufferUsageFlags = 0.VkCommandBufferUsageFlags, pInheritanceInfo: ptr VkCommandBufferInheritanceInfo): VkCommandBufferBeginInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.pInheritanceInfo = pInheritanceInfo - -type VkRenderPassBeginInfo* = object - sType*: VkStructureType - pNext*: pointer - renderPass*: VkRenderPass - framebuffer*: VkFramebuffer - renderArea*: VkRect2D - clearValueCount*: uint32 - pClearValues*: ptr VkClearValue - -proc newVkRenderPassBeginInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO, 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 - -type VkClearColorValue* {.union.} = object - float32*: array[4, float32] - int32*: array[4, int32] - uint32*: array[4, uint32] - -proc newVkClearColorValue*(float32: array[4, float32], int32: array[4, int32], uint32: array[4, uint32]): VkClearColorValue = - result.float32 = float32 - result.int32 = int32 - result.uint32 = uint32 - -type VkClearDepthStencilValue* = object - depth*: float32 - stencil*: uint32 - -proc newVkClearDepthStencilValue*(depth: float32, stencil: uint32): VkClearDepthStencilValue = - result.depth = depth - result.stencil = stencil - -type VkClearValue* {.union.} = object - color*: VkClearColorValue - depthStencil*: VkClearDepthStencilValue - -proc newVkClearValue*(color: VkClearColorValue, depthStencil: VkClearDepthStencilValue): VkClearValue = - result.color = color - result.depthStencil = depthStencil - -type VkClearAttachment* = object - aspectMask*: VkImageAspectFlags - colorAttachment*: uint32 - clearValue*: VkClearValue - -proc newVkClearAttachment*(aspectMask: VkImageAspectFlags, colorAttachment: uint32, clearValue: VkClearValue): VkClearAttachment = - result.aspectMask = aspectMask - result.colorAttachment = colorAttachment - result.clearValue = clearValue - -type VkAttachmentDescription* = object - flags*: VkAttachmentDescriptionFlags - format*: VkFormat - samples*: VkSampleCountFlagBits - loadOp*: VkAttachmentLoadOp - storeOp*: VkAttachmentStoreOp - stencilLoadOp*: VkAttachmentLoadOp - stencilStoreOp*: VkAttachmentStoreOp - initialLayout*: VkImageLayout - finalLayout*: VkImageLayout - -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 - -type VkAttachmentReference* = object - attachment*: uint32 - layout*: VkImageLayout - -proc newVkAttachmentReference*(attachment: uint32, layout: VkImageLayout): VkAttachmentReference = - result.attachment = attachment - result.layout = layout - -type VkSubpassDescription* = object - flags*: VkSubpassDescriptionFlags - pipelineBindPoint*: VkPipelineBindPoint - inputAttachmentCount*: uint32 - pInputAttachments*: ptr VkAttachmentReference - colorAttachmentCount*: uint32 - pColorAttachments*: ptr VkAttachmentReference - pResolveAttachments*: ptr VkAttachmentReference - pDepthStencilAttachment*: ptr VkAttachmentReference - preserveAttachmentCount*: uint32 - pPreserveAttachments*: ptr uint32 - -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 - -type VkSubpassDependency* = object - srcSubpass*: uint32 - dstSubpass*: uint32 - srcStageMask*: VkPipelineStageFlags - dstStageMask*: VkPipelineStageFlags - srcAccessMask*: VkAccessFlags - dstAccessMask*: VkAccessFlags - dependencyFlags*: VkDependencyFlags - -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 - -type VkRenderPassCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkRenderPassCreateFlags - attachmentCount*: uint32 - pAttachments*: ptr VkAttachmentDescription - subpassCount*: uint32 - pSubpasses*: ptr VkSubpassDescription - dependencyCount*: uint32 - pDependencies*: ptr VkSubpassDependency - -proc newVkRenderPassCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO, 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 - -type VkEventCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkEventCreateFlags - -proc newVkEventCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_EVENT_CREATE_INFO, pNext: pointer = nil, flags: VkEventCreateFlags = 0.VkEventCreateFlags): VkEventCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - -type VkFenceCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkFenceCreateFlags - -proc newVkFenceCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_FENCE_CREATE_INFO, pNext: pointer = nil, flags: VkFenceCreateFlags = 0.VkFenceCreateFlags): VkFenceCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - -type VkPhysicalDeviceFeatures* = object - 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 - -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 - -type VkPhysicalDeviceSparseProperties* = object - residencyStandard2DBlockShape*: VkBool32 - residencyStandard2DMultisampleBlockShape*: VkBool32 - residencyStandard3DBlockShape*: VkBool32 - residencyAlignedMipSize*: VkBool32 - residencyNonResidentStrict*: VkBool32 - -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 - -type VkPhysicalDeviceLimits* = object - 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 - -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 - -type VkSemaphoreCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkSemaphoreCreateFlags - -proc newVkSemaphoreCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO, pNext: pointer = nil, flags: VkSemaphoreCreateFlags = 0.VkSemaphoreCreateFlags): VkSemaphoreCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - -type VkQueryPoolCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkQueryPoolCreateFlags - queryType*: VkQueryType - queryCount*: uint32 - pipelineStatistics*: VkQueryPipelineStatisticFlags - -proc newVkQueryPoolCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO, 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 - -type VkFramebufferCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkFramebufferCreateFlags - renderPass*: VkRenderPass - attachmentCount*: uint32 - pAttachments*: ptr VkImageView - width*: uint32 - height*: uint32 - layers*: uint32 - -proc newVkFramebufferCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO, 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 - -type VkDrawIndirectCommand* = object - vertexCount*: uint32 - instanceCount*: uint32 - firstVertex*: uint32 - firstInstance*: uint32 - -proc newVkDrawIndirectCommand*(vertexCount: uint32, instanceCount: uint32, firstVertex: uint32, firstInstance: uint32): VkDrawIndirectCommand = - result.vertexCount = vertexCount - result.instanceCount = instanceCount - result.firstVertex = firstVertex - result.firstInstance = firstInstance - -type VkDrawIndexedIndirectCommand* = object - indexCount*: uint32 - instanceCount*: uint32 - firstIndex*: uint32 - vertexOffset*: int32 - firstInstance*: uint32 - -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 - -type VkDispatchIndirectCommand* = object - x*: uint32 - y*: uint32 - z*: uint32 - -proc newVkDispatchIndirectCommand*(x: uint32, y: uint32, z: uint32): VkDispatchIndirectCommand = - result.x = x - result.y = y - result.z = z - -type VkMultiDrawInfoEXT* = object - firstVertex*: uint32 - vertexCount*: uint32 - -proc newVkMultiDrawInfoEXT*(firstVertex: uint32, vertexCount: uint32): VkMultiDrawInfoEXT = - result.firstVertex = firstVertex - result.vertexCount = vertexCount - -type VkMultiDrawIndexedInfoEXT* = object - firstIndex*: uint32 - indexCount*: uint32 - vertexOffset*: int32 - -proc newVkMultiDrawIndexedInfoEXT*(firstIndex: uint32, indexCount: uint32, vertexOffset: int32): VkMultiDrawIndexedInfoEXT = - result.firstIndex = firstIndex - result.indexCount = indexCount - result.vertexOffset = vertexOffset - -type VkSubmitInfo* = object - sType*: VkStructureType - pNext*: pointer - waitSemaphoreCount*: uint32 - pWaitSemaphores*: ptr VkSemaphore - pWaitDstStageMask*: ptr VkPipelineStageFlags - commandBufferCount*: uint32 - pCommandBuffers*: ptr VkCommandBuffer - signalSemaphoreCount*: uint32 - pSignalSemaphores*: ptr VkSemaphore - -proc newVkSubmitInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_SUBMIT_INFO, 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 - -type VkDisplayPropertiesKHR* = object - display*: VkDisplayKHR - displayName*: cstring - physicalDimensions*: VkExtent2D - physicalResolution*: VkExtent2D - supportedTransforms*: VkSurfaceTransformFlagsKHR - planeReorderPossible*: VkBool32 - persistentContent*: VkBool32 - -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 - -type VkDisplayPlanePropertiesKHR* = object - currentDisplay*: VkDisplayKHR - currentStackIndex*: uint32 - -proc newVkDisplayPlanePropertiesKHR*(currentDisplay: VkDisplayKHR, currentStackIndex: uint32): VkDisplayPlanePropertiesKHR = - result.currentDisplay = currentDisplay - result.currentStackIndex = currentStackIndex - -type VkDisplayModeParametersKHR* = object - visibleRegion*: VkExtent2D - refreshRate*: uint32 - -proc newVkDisplayModeParametersKHR*(visibleRegion: VkExtent2D, refreshRate: uint32): VkDisplayModeParametersKHR = - result.visibleRegion = visibleRegion - result.refreshRate = refreshRate - -type VkDisplayModePropertiesKHR* = object - displayMode*: VkDisplayModeKHR - parameters*: VkDisplayModeParametersKHR - -proc newVkDisplayModePropertiesKHR*(displayMode: VkDisplayModeKHR, parameters: VkDisplayModeParametersKHR): VkDisplayModePropertiesKHR = - result.displayMode = displayMode - result.parameters = parameters - -type VkDisplayModeCreateInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkDisplayModeCreateFlagsKHR - parameters*: VkDisplayModeParametersKHR - -proc newVkDisplayModeCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR, pNext: pointer = nil, flags: VkDisplayModeCreateFlagsKHR = 0.VkDisplayModeCreateFlagsKHR, parameters: VkDisplayModeParametersKHR): VkDisplayModeCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.parameters = parameters - -type VkDisplayPlaneCapabilitiesKHR* = object - supportedAlpha*: VkDisplayPlaneAlphaFlagsKHR - minSrcPosition*: VkOffset2D - maxSrcPosition*: VkOffset2D - minSrcExtent*: VkExtent2D - maxSrcExtent*: VkExtent2D - minDstPosition*: VkOffset2D - maxDstPosition*: VkOffset2D - minDstExtent*: VkExtent2D - maxDstExtent*: VkExtent2D - -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 - -type VkDisplaySurfaceCreateInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkDisplaySurfaceCreateFlagsKHR - displayMode*: VkDisplayModeKHR - planeIndex*: uint32 - planeStackIndex*: uint32 - transform*: VkSurfaceTransformFlagBitsKHR - globalAlpha*: float32 - alphaMode*: VkDisplayPlaneAlphaFlagBitsKHR - imageExtent*: VkExtent2D - -proc newVkDisplaySurfaceCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR, 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 - -type VkDisplayPresentInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - srcRect*: VkRect2D - dstRect*: VkRect2D - persistent*: VkBool32 - -proc newVkDisplayPresentInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR, 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 - -type VkSurfaceCapabilitiesKHR* = object - minImageCount*: uint32 - maxImageCount*: uint32 - currentExtent*: VkExtent2D - minImageExtent*: VkExtent2D - maxImageExtent*: VkExtent2D - maxImageArrayLayers*: uint32 - supportedTransforms*: VkSurfaceTransformFlagsKHR - currentTransform*: VkSurfaceTransformFlagBitsKHR - supportedCompositeAlpha*: VkCompositeAlphaFlagsKHR - supportedUsageFlags*: VkImageUsageFlags - -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 - -type VkAndroidSurfaceCreateInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkAndroidSurfaceCreateFlagsKHR - window*: ptr ANativeWindow - -proc newVkAndroidSurfaceCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR, pNext: pointer = nil, flags: VkAndroidSurfaceCreateFlagsKHR = 0.VkAndroidSurfaceCreateFlagsKHR, window: ptr ANativeWindow): VkAndroidSurfaceCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.window = window - -type VkViSurfaceCreateInfoNN* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkViSurfaceCreateFlagsNN - window*: pointer - -proc newVkViSurfaceCreateInfoNN*(sType: VkStructureType = VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN, pNext: pointer = nil, flags: VkViSurfaceCreateFlagsNN = 0.VkViSurfaceCreateFlagsNN, window: pointer = nil): VkViSurfaceCreateInfoNN = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.window = window - -type VkWaylandSurfaceCreateInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkWaylandSurfaceCreateFlagsKHR - display*: ptr wl_display - surface*: ptr wl_surface - -proc newVkWaylandSurfaceCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR, 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 - -type VkWin32SurfaceCreateInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkWin32SurfaceCreateFlagsKHR - hinstance*: HINSTANCE - hwnd*: HWND - -proc newVkWin32SurfaceCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR, 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 - -type VkXlibSurfaceCreateInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkXlibSurfaceCreateFlagsKHR - dpy*: ptr Display - window*: Window - -proc newVkXlibSurfaceCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR, 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 - -type VkXcbSurfaceCreateInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkXcbSurfaceCreateFlagsKHR - connection*: ptr xcb_connection_t - window*: xcb_window_t - -proc newVkXcbSurfaceCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR, 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 - -type VkDirectFBSurfaceCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkDirectFBSurfaceCreateFlagsEXT - dfb*: ptr IDirectFB - surface*: ptr IDirectFBSurface - -proc newVkDirectFBSurfaceCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT, 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 - -type VkImagePipeSurfaceCreateInfoFUCHSIA* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkImagePipeSurfaceCreateFlagsFUCHSIA - imagePipeHandle*: zx_handle_t - -proc newVkImagePipeSurfaceCreateInfoFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA, pNext: pointer = nil, flags: VkImagePipeSurfaceCreateFlagsFUCHSIA = 0.VkImagePipeSurfaceCreateFlagsFUCHSIA, imagePipeHandle: zx_handle_t): VkImagePipeSurfaceCreateInfoFUCHSIA = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.imagePipeHandle = imagePipeHandle - -type VkStreamDescriptorSurfaceCreateInfoGGP* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkStreamDescriptorSurfaceCreateFlagsGGP - streamDescriptor*: GgpStreamDescriptor - -proc newVkStreamDescriptorSurfaceCreateInfoGGP*(sType: VkStructureType = VK_STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP, pNext: pointer = nil, flags: VkStreamDescriptorSurfaceCreateFlagsGGP = 0.VkStreamDescriptorSurfaceCreateFlagsGGP, streamDescriptor: GgpStreamDescriptor): VkStreamDescriptorSurfaceCreateInfoGGP = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.streamDescriptor = streamDescriptor - -type VkScreenSurfaceCreateInfoQNX* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkScreenSurfaceCreateFlagsQNX - context*: ptr screen_context - window*: ptr screen_window - -proc newVkScreenSurfaceCreateInfoQNX*(sType: VkStructureType = VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX, 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 - -type VkSurfaceFormatKHR* = object - format*: VkFormat - colorSpace*: VkColorSpaceKHR - -proc newVkSurfaceFormatKHR*(format: VkFormat, colorSpace: VkColorSpaceKHR): VkSurfaceFormatKHR = - result.format = format - result.colorSpace = colorSpace - -type VkSwapchainCreateInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - flags*: 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 - -proc newVkSwapchainCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR, 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 - -type VkPresentInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - waitSemaphoreCount*: uint32 - pWaitSemaphores*: ptr VkSemaphore - swapchainCount*: uint32 - pSwapchains*: ptr VkSwapchainKHR - pImageIndices*: ptr uint32 - pResults*: ptr VkResult - -proc newVkPresentInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PRESENT_INFO_KHR, 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 - -type VkDebugReportCallbackCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkDebugReportFlagsEXT - pfnCallback*: PFN_vkDebugReportCallbackEXT - pUserData*: pointer - -proc newVkDebugReportCallbackCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT, 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 - -type VkValidationFlagsEXT* = object - sType*: VkStructureType - pNext*: pointer - disabledValidationCheckCount*: uint32 - pDisabledValidationChecks*: ptr VkValidationCheckEXT - -proc newVkValidationFlagsEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT, pNext: pointer = nil, disabledValidationCheckCount: uint32, pDisabledValidationChecks: ptr VkValidationCheckEXT): VkValidationFlagsEXT = - result.sType = sType - result.pNext = pNext - result.disabledValidationCheckCount = disabledValidationCheckCount - result.pDisabledValidationChecks = pDisabledValidationChecks - -type VkValidationFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - enabledValidationFeatureCount*: uint32 - pEnabledValidationFeatures*: ptr VkValidationFeatureEnableEXT - disabledValidationFeatureCount*: uint32 - pDisabledValidationFeatures*: ptr VkValidationFeatureDisableEXT - -proc newVkValidationFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT, 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 - -type VkApplicationParametersEXT* = object - sType*: VkStructureType - pNext*: pointer - vendorID*: uint32 - deviceID*: uint32 - key*: uint32 - value*: uint64 - -proc newVkApplicationParametersEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_APPLICATION_PARAMETERS_EXT, 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 - -type VkPipelineRasterizationStateRasterizationOrderAMD* = object - sType*: VkStructureType - pNext*: pointer - rasterizationOrder*: VkRasterizationOrderAMD - -proc newVkPipelineRasterizationStateRasterizationOrderAMD*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD, pNext: pointer = nil, rasterizationOrder: VkRasterizationOrderAMD): VkPipelineRasterizationStateRasterizationOrderAMD = - result.sType = sType - result.pNext = pNext - result.rasterizationOrder = rasterizationOrder - -type VkDebugMarkerObjectNameInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - objectType*: VkDebugReportObjectTypeEXT - `object`*: uint64 - pObjectName*: cstring - -proc newVkDebugMarkerObjectNameInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT, 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 - -type VkDebugMarkerObjectTagInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - objectType*: VkDebugReportObjectTypeEXT - `object`*: uint64 - tagName*: uint64 - tagSize*: uint - pTag*: pointer - -proc newVkDebugMarkerObjectTagInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT, 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 - -type VkDebugMarkerMarkerInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - pMarkerName*: cstring - color*: array[4, float32] - -proc newVkDebugMarkerMarkerInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT, pNext: pointer = nil, pMarkerName: cstring, color: array[4, float32]): VkDebugMarkerMarkerInfoEXT = - result.sType = sType - result.pNext = pNext - result.pMarkerName = pMarkerName - result.color = color - -type VkDedicatedAllocationImageCreateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - dedicatedAllocation*: VkBool32 - -proc newVkDedicatedAllocationImageCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV, pNext: pointer = nil, dedicatedAllocation: VkBool32): VkDedicatedAllocationImageCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.dedicatedAllocation = dedicatedAllocation - -type VkDedicatedAllocationBufferCreateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - dedicatedAllocation*: VkBool32 - -proc newVkDedicatedAllocationBufferCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV, pNext: pointer = nil, dedicatedAllocation: VkBool32): VkDedicatedAllocationBufferCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.dedicatedAllocation = dedicatedAllocation - -type VkDedicatedAllocationMemoryAllocateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - image*: VkImage - buffer*: VkBuffer - -proc newVkDedicatedAllocationMemoryAllocateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV, pNext: pointer = nil, image: VkImage, buffer: VkBuffer): VkDedicatedAllocationMemoryAllocateInfoNV = - result.sType = sType - result.pNext = pNext - result.image = image - result.buffer = buffer - -type VkExternalImageFormatPropertiesNV* = object - imageFormatProperties*: VkImageFormatProperties - externalMemoryFeatures*: VkExternalMemoryFeatureFlagsNV - exportFromImportedHandleTypes*: VkExternalMemoryHandleTypeFlagsNV - compatibleHandleTypes*: VkExternalMemoryHandleTypeFlagsNV - -proc newVkExternalImageFormatPropertiesNV*(imageFormatProperties: VkImageFormatProperties, externalMemoryFeatures: VkExternalMemoryFeatureFlagsNV, exportFromImportedHandleTypes: VkExternalMemoryHandleTypeFlagsNV, compatibleHandleTypes: VkExternalMemoryHandleTypeFlagsNV): VkExternalImageFormatPropertiesNV = - result.imageFormatProperties = imageFormatProperties - result.externalMemoryFeatures = externalMemoryFeatures - result.exportFromImportedHandleTypes = exportFromImportedHandleTypes - result.compatibleHandleTypes = compatibleHandleTypes - -type VkExternalMemoryImageCreateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - handleTypes*: VkExternalMemoryHandleTypeFlagsNV - -proc newVkExternalMemoryImageCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlagsNV): VkExternalMemoryImageCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.handleTypes = handleTypes - -type VkExportMemoryAllocateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - handleTypes*: VkExternalMemoryHandleTypeFlagsNV - -proc newVkExportMemoryAllocateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlagsNV): VkExportMemoryAllocateInfoNV = - result.sType = sType - result.pNext = pNext - result.handleTypes = handleTypes - -type VkImportMemoryWin32HandleInfoNV* = object - sType*: VkStructureType - pNext*: pointer - handleType*: VkExternalMemoryHandleTypeFlagsNV - handle*: HANDLE - -proc newVkImportMemoryWin32HandleInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagsNV, handle: HANDLE): VkImportMemoryWin32HandleInfoNV = - result.sType = sType - result.pNext = pNext - result.handleType = handleType - result.handle = handle - -type VkExportMemoryWin32HandleInfoNV* = object - sType*: VkStructureType - pNext*: pointer - pAttributes*: ptr SECURITY_ATTRIBUTES - dwAccess*: DWORD - -proc newVkExportMemoryWin32HandleInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV, pNext: pointer = nil, pAttributes: ptr SECURITY_ATTRIBUTES, dwAccess: DWORD): VkExportMemoryWin32HandleInfoNV = - result.sType = sType - result.pNext = pNext - result.pAttributes = pAttributes - result.dwAccess = dwAccess - -type VkExportMemorySciBufInfoNV* = object - sType*: VkStructureType - pNext*: pointer - pAttributes*: NvSciBufAttrList - -proc newVkExportMemorySciBufInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_MEMORY_SCI_BUF_INFO_NV, pNext: pointer = nil, pAttributes: NvSciBufAttrList): VkExportMemorySciBufInfoNV = - result.sType = sType - result.pNext = pNext - result.pAttributes = pAttributes - -type VkImportMemorySciBufInfoNV* = object - sType*: VkStructureType - pNext*: pointer - handleType*: VkExternalMemoryHandleTypeFlagBits - handle*: NvSciBufObj - -proc newVkImportMemorySciBufInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_MEMORY_SCI_BUF_INFO_NV, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, handle: NvSciBufObj): VkImportMemorySciBufInfoNV = - result.sType = sType - result.pNext = pNext - result.handleType = handleType - result.handle = handle - -type VkMemoryGetSciBufInfoNV* = object - sType*: VkStructureType - pNext*: pointer - memory*: VkDeviceMemory - handleType*: VkExternalMemoryHandleTypeFlagBits - -proc newVkMemoryGetSciBufInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_GET_SCI_BUF_INFO_NV, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetSciBufInfoNV = - result.sType = sType - result.pNext = pNext - result.memory = memory - result.handleType = handleType - -type VkMemorySciBufPropertiesNV* = object - sType*: VkStructureType - pNext*: pointer - memoryTypeBits*: uint32 - -proc newVkMemorySciBufPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_SCI_BUF_PROPERTIES_NV, pNext: pointer = nil, memoryTypeBits: uint32): VkMemorySciBufPropertiesNV = - result.sType = sType - result.pNext = pNext - result.memoryTypeBits = memoryTypeBits - -type VkPhysicalDeviceExternalMemorySciBufFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - sciBufImport*: VkBool32 - sciBufExport*: VkBool32 - -proc newVkPhysicalDeviceExternalMemorySciBufFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_SCI_BUF_FEATURES_NV, pNext: pointer = nil, sciBufImport: VkBool32, sciBufExport: VkBool32): VkPhysicalDeviceExternalMemorySciBufFeaturesNV = - result.sType = sType - result.pNext = pNext - result.sciBufImport = sciBufImport - result.sciBufExport = sciBufExport - -type VkPhysicalDeviceExternalSciBufFeaturesNV* = VkPhysicalDeviceExternalMemorySciBufFeaturesNV -type VkWin32KeyedMutexAcquireReleaseInfoNV* = object - sType*: VkStructureType - pNext*: pointer - acquireCount*: uint32 - pAcquireSyncs*: ptr VkDeviceMemory - pAcquireKeys*: ptr uint64 - pAcquireTimeoutMilliseconds*: ptr uint32 - releaseCount*: uint32 - pReleaseSyncs*: ptr VkDeviceMemory - pReleaseKeys*: ptr uint64 - -proc newVkWin32KeyedMutexAcquireReleaseInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV, 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 - -type VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - deviceGeneratedCommands*: VkBool32 - -proc newVkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV, pNext: pointer = nil, deviceGeneratedCommands: VkBool32): VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV = - result.sType = sType - result.pNext = pNext - result.deviceGeneratedCommands = deviceGeneratedCommands - -type VkDevicePrivateDataCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - privateDataSlotRequestCount*: uint32 - -proc newVkDevicePrivateDataCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO, pNext: pointer = nil, privateDataSlotRequestCount: uint32): VkDevicePrivateDataCreateInfo = - result.sType = sType - result.pNext = pNext - result.privateDataSlotRequestCount = privateDataSlotRequestCount - -type VkDevicePrivateDataCreateInfoEXT* = VkDevicePrivateDataCreateInfo -type VkPrivateDataSlotCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkPrivateDataSlotCreateFlags - -proc newVkPrivateDataSlotCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO, pNext: pointer = nil, flags: VkPrivateDataSlotCreateFlags = 0.VkPrivateDataSlotCreateFlags): VkPrivateDataSlotCreateInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - -type VkPrivateDataSlotCreateInfoEXT* = VkPrivateDataSlotCreateInfo -type VkPhysicalDevicePrivateDataFeatures* = object - sType*: VkStructureType - pNext*: pointer - privateData*: VkBool32 - -proc newVkPhysicalDevicePrivateDataFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES, pNext: pointer = nil, privateData: VkBool32): VkPhysicalDevicePrivateDataFeatures = - result.sType = sType - result.pNext = pNext - result.privateData = privateData - -type VkPhysicalDevicePrivateDataFeaturesEXT* = VkPhysicalDevicePrivateDataFeatures -type VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV* = object - sType*: VkStructureType - pNext*: pointer - maxGraphicsShaderGroupCount*: uint32 - maxIndirectSequenceCount*: uint32 - maxIndirectCommandsTokenCount*: uint32 - maxIndirectCommandsStreamCount*: uint32 - maxIndirectCommandsTokenOffset*: uint32 - maxIndirectCommandsStreamStride*: uint32 - minSequencesCountBufferOffsetAlignment*: uint32 - minSequencesIndexBufferOffsetAlignment*: uint32 - minIndirectCommandsBufferOffsetAlignment*: uint32 - -proc newVkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV, 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 - -type VkPhysicalDeviceMultiDrawPropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - maxMultiDrawCount*: uint32 - -proc newVkPhysicalDeviceMultiDrawPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT, pNext: pointer = nil, maxMultiDrawCount: uint32): VkPhysicalDeviceMultiDrawPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.maxMultiDrawCount = maxMultiDrawCount - -type VkGraphicsShaderGroupCreateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - stageCount*: uint32 - pStages*: ptr VkPipelineShaderStageCreateInfo - pVertexInputState*: ptr VkPipelineVertexInputStateCreateInfo - pTessellationState*: ptr VkPipelineTessellationStateCreateInfo - -proc newVkGraphicsShaderGroupCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV, 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 - -type VkGraphicsPipelineShaderGroupsCreateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - groupCount*: uint32 - pGroups*: ptr VkGraphicsShaderGroupCreateInfoNV - pipelineCount*: uint32 - pPipelines*: ptr VkPipeline - -proc newVkGraphicsPipelineShaderGroupsCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV, 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 - -type VkBindShaderGroupIndirectCommandNV* = object - groupIndex*: uint32 - -proc newVkBindShaderGroupIndirectCommandNV*(groupIndex: uint32): VkBindShaderGroupIndirectCommandNV = - result.groupIndex = groupIndex - -type VkBindIndexBufferIndirectCommandNV* = object - bufferAddress*: VkDeviceAddress - size*: uint32 - indexType*: VkIndexType - -proc newVkBindIndexBufferIndirectCommandNV*(bufferAddress: VkDeviceAddress, size: uint32, indexType: VkIndexType): VkBindIndexBufferIndirectCommandNV = - result.bufferAddress = bufferAddress - result.size = size - result.indexType = indexType - -type VkBindVertexBufferIndirectCommandNV* = object - bufferAddress*: VkDeviceAddress - size*: uint32 - stride*: uint32 - -proc newVkBindVertexBufferIndirectCommandNV*(bufferAddress: VkDeviceAddress, size: uint32, stride: uint32): VkBindVertexBufferIndirectCommandNV = - result.bufferAddress = bufferAddress - result.size = size - result.stride = stride - -type VkSetStateFlagsIndirectCommandNV* = object - data*: uint32 - -proc newVkSetStateFlagsIndirectCommandNV*(data: uint32): VkSetStateFlagsIndirectCommandNV = - result.data = data - -type VkIndirectCommandsStreamNV* = object - buffer*: VkBuffer - offset*: VkDeviceSize - -proc newVkIndirectCommandsStreamNV*(buffer: VkBuffer, offset: VkDeviceSize): VkIndirectCommandsStreamNV = - result.buffer = buffer - result.offset = offset - -type VkIndirectCommandsLayoutTokenNV* = object - sType*: VkStructureType - pNext*: pointer - 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 - -proc newVkIndirectCommandsLayoutTokenNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV, 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 - -type VkIndirectCommandsLayoutCreateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkIndirectCommandsLayoutUsageFlagsNV - pipelineBindPoint*: VkPipelineBindPoint - tokenCount*: uint32 - pTokens*: ptr VkIndirectCommandsLayoutTokenNV - streamCount*: uint32 - pStreamStrides*: ptr uint32 - -proc newVkIndirectCommandsLayoutCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV, 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 - -type VkGeneratedCommandsInfoNV* = object - sType*: VkStructureType - pNext*: pointer - 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 - -proc newVkGeneratedCommandsInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV, 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 - -type VkGeneratedCommandsMemoryRequirementsInfoNV* = object - sType*: VkStructureType - pNext*: pointer - pipelineBindPoint*: VkPipelineBindPoint - pipeline*: VkPipeline - indirectCommandsLayout*: VkIndirectCommandsLayoutNV - maxSequencesCount*: uint32 - -proc newVkGeneratedCommandsMemoryRequirementsInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV, 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 - -type VkPhysicalDeviceFeatures2* = object - sType*: VkStructureType - pNext*: pointer - features*: VkPhysicalDeviceFeatures - -proc newVkPhysicalDeviceFeatures2*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2, pNext: pointer = nil, features: VkPhysicalDeviceFeatures): VkPhysicalDeviceFeatures2 = - result.sType = sType - result.pNext = pNext - result.features = features - -type VkPhysicalDeviceFeatures2KHR* = VkPhysicalDeviceFeatures2 -type VkPhysicalDeviceProperties2* = object - sType*: VkStructureType - pNext*: pointer - properties*: VkPhysicalDeviceProperties - -proc newVkPhysicalDeviceProperties2*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2, pNext: pointer = nil, properties: VkPhysicalDeviceProperties): VkPhysicalDeviceProperties2 = - result.sType = sType - result.pNext = pNext - result.properties = properties - -type VkPhysicalDeviceProperties2KHR* = VkPhysicalDeviceProperties2 -type VkFormatProperties2* = object - sType*: VkStructureType - pNext*: pointer - formatProperties*: VkFormatProperties - -proc newVkFormatProperties2*(sType: VkStructureType = VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2, pNext: pointer = nil, formatProperties: VkFormatProperties): VkFormatProperties2 = - result.sType = sType - result.pNext = pNext - result.formatProperties = formatProperties - -type VkFormatProperties2KHR* = VkFormatProperties2 -type VkImageFormatProperties2* = object - sType*: VkStructureType - pNext*: pointer - imageFormatProperties*: VkImageFormatProperties - -proc newVkImageFormatProperties2*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2, pNext: pointer = nil, imageFormatProperties: VkImageFormatProperties): VkImageFormatProperties2 = - result.sType = sType - result.pNext = pNext - result.imageFormatProperties = imageFormatProperties - -type VkImageFormatProperties2KHR* = VkImageFormatProperties2 -type VkPhysicalDeviceImageFormatInfo2* = object - sType*: VkStructureType - pNext*: pointer - format*: VkFormat - `type`*: VkImageType - tiling*: VkImageTiling - usage*: VkImageUsageFlags - flags*: VkImageCreateFlags - -proc newVkPhysicalDeviceImageFormatInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2, 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 - -type VkPhysicalDeviceImageFormatInfo2KHR* = VkPhysicalDeviceImageFormatInfo2 -type VkQueueFamilyProperties2* = object - sType*: VkStructureType - pNext*: pointer - queueFamilyProperties*: VkQueueFamilyProperties - -proc newVkQueueFamilyProperties2*(sType: VkStructureType = VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2, pNext: pointer = nil, queueFamilyProperties: VkQueueFamilyProperties): VkQueueFamilyProperties2 = - result.sType = sType - result.pNext = pNext - result.queueFamilyProperties = queueFamilyProperties - -type VkQueueFamilyProperties2KHR* = VkQueueFamilyProperties2 -type VkPhysicalDeviceMemoryProperties2* = object - sType*: VkStructureType - pNext*: pointer - memoryProperties*: VkPhysicalDeviceMemoryProperties - -proc newVkPhysicalDeviceMemoryProperties2*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2, pNext: pointer = nil, memoryProperties: VkPhysicalDeviceMemoryProperties): VkPhysicalDeviceMemoryProperties2 = - result.sType = sType - result.pNext = pNext - result.memoryProperties = memoryProperties - -type VkPhysicalDeviceMemoryProperties2KHR* = VkPhysicalDeviceMemoryProperties2 -type VkSparseImageFormatProperties2* = object - sType*: VkStructureType - pNext*: pointer - properties*: VkSparseImageFormatProperties - -proc newVkSparseImageFormatProperties2*(sType: VkStructureType = VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2, pNext: pointer = nil, properties: VkSparseImageFormatProperties): VkSparseImageFormatProperties2 = - result.sType = sType - result.pNext = pNext - result.properties = properties - -type VkSparseImageFormatProperties2KHR* = VkSparseImageFormatProperties2 -type VkPhysicalDeviceSparseImageFormatInfo2* = object - sType*: VkStructureType - pNext*: pointer - format*: VkFormat - `type`*: VkImageType - samples*: VkSampleCountFlagBits - usage*: VkImageUsageFlags - tiling*: VkImageTiling - -proc newVkPhysicalDeviceSparseImageFormatInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2, 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 - -type VkPhysicalDeviceSparseImageFormatInfo2KHR* = VkPhysicalDeviceSparseImageFormatInfo2 -type VkPhysicalDevicePushDescriptorPropertiesKHR* = object - sType*: VkStructureType - pNext*: pointer - maxPushDescriptors*: uint32 - -proc newVkPhysicalDevicePushDescriptorPropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR, pNext: pointer = nil, maxPushDescriptors: uint32): VkPhysicalDevicePushDescriptorPropertiesKHR = - result.sType = sType - result.pNext = pNext - result.maxPushDescriptors = maxPushDescriptors - -type VkConformanceVersion* = object - major*: uint8 - minor*: uint8 - subminor*: uint8 - patch*: uint8 - -proc newVkConformanceVersion*(major: uint8, minor: uint8, subminor: uint8, patch: uint8): VkConformanceVersion = - result.major = major - result.minor = minor - result.subminor = subminor - result.patch = patch - -type VkConformanceVersionKHR* = VkConformanceVersion -type VkPhysicalDeviceDriverProperties* = object - sType*: VkStructureType - pNext*: pointer - driverID*: VkDriverId - driverName*: array[VK_MAX_DRIVER_NAME_SIZE, char] - driverInfo*: array[VK_MAX_DRIVER_INFO_SIZE, char] - conformanceVersion*: VkConformanceVersion - -proc newVkPhysicalDeviceDriverProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES, 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 - -type VkPhysicalDeviceDriverPropertiesKHR* = VkPhysicalDeviceDriverProperties -type VkPresentRegionsKHR* = object - sType*: VkStructureType - pNext*: pointer - swapchainCount*: uint32 - pRegions*: ptr VkPresentRegionKHR - -proc newVkPresentRegionsKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR, pNext: pointer = nil, swapchainCount: uint32, pRegions: ptr VkPresentRegionKHR): VkPresentRegionsKHR = - result.sType = sType - result.pNext = pNext - result.swapchainCount = swapchainCount - result.pRegions = pRegions - -type VkPresentRegionKHR* = object - rectangleCount*: uint32 - pRectangles*: ptr VkRectLayerKHR - -proc newVkPresentRegionKHR*(rectangleCount: uint32, pRectangles: ptr VkRectLayerKHR): VkPresentRegionKHR = - result.rectangleCount = rectangleCount - result.pRectangles = pRectangles - -type VkRectLayerKHR* = object - offset*: VkOffset2D - extent*: VkExtent2D - layer*: uint32 - -proc newVkRectLayerKHR*(offset: VkOffset2D, extent: VkExtent2D, layer: uint32): VkRectLayerKHR = - result.offset = offset - result.extent = extent - result.layer = layer - -type VkPhysicalDeviceVariablePointersFeatures* = object - sType*: VkStructureType - pNext*: pointer - variablePointersStorageBuffer*: VkBool32 - variablePointers*: VkBool32 - -proc newVkPhysicalDeviceVariablePointersFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES, pNext: pointer = nil, variablePointersStorageBuffer: VkBool32, variablePointers: VkBool32): VkPhysicalDeviceVariablePointersFeatures = - result.sType = sType - result.pNext = pNext - result.variablePointersStorageBuffer = variablePointersStorageBuffer - result.variablePointers = variablePointers - -type VkPhysicalDeviceVariablePointersFeaturesKHR* = VkPhysicalDeviceVariablePointersFeatures -type VkPhysicalDeviceVariablePointerFeaturesKHR* = VkPhysicalDeviceVariablePointersFeatures -type VkPhysicalDeviceVariablePointerFeatures* = VkPhysicalDeviceVariablePointersFeatures -type VkExternalMemoryProperties* = object - externalMemoryFeatures*: VkExternalMemoryFeatureFlags - exportFromImportedHandleTypes*: VkExternalMemoryHandleTypeFlags - compatibleHandleTypes*: VkExternalMemoryHandleTypeFlags - -proc newVkExternalMemoryProperties*(externalMemoryFeatures: VkExternalMemoryFeatureFlags, exportFromImportedHandleTypes: VkExternalMemoryHandleTypeFlags, compatibleHandleTypes: VkExternalMemoryHandleTypeFlags): VkExternalMemoryProperties = - result.externalMemoryFeatures = externalMemoryFeatures - result.exportFromImportedHandleTypes = exportFromImportedHandleTypes - result.compatibleHandleTypes = compatibleHandleTypes - -type VkExternalMemoryPropertiesKHR* = VkExternalMemoryProperties -type VkPhysicalDeviceExternalImageFormatInfo* = object - sType*: VkStructureType - pNext*: pointer - handleType*: VkExternalMemoryHandleTypeFlagBits - -proc newVkPhysicalDeviceExternalImageFormatInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits): VkPhysicalDeviceExternalImageFormatInfo = - result.sType = sType - result.pNext = pNext - result.handleType = handleType - -type VkPhysicalDeviceExternalImageFormatInfoKHR* = VkPhysicalDeviceExternalImageFormatInfo -type VkExternalImageFormatProperties* = object - sType*: VkStructureType - pNext*: pointer - externalMemoryProperties*: VkExternalMemoryProperties - -proc newVkExternalImageFormatProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES, pNext: pointer = nil, externalMemoryProperties: VkExternalMemoryProperties): VkExternalImageFormatProperties = - result.sType = sType - result.pNext = pNext - result.externalMemoryProperties = externalMemoryProperties - -type VkExternalImageFormatPropertiesKHR* = VkExternalImageFormatProperties -type VkPhysicalDeviceExternalBufferInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkBufferCreateFlags - usage*: VkBufferUsageFlags - handleType*: VkExternalMemoryHandleTypeFlagBits - -proc newVkPhysicalDeviceExternalBufferInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO, 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 - -type VkPhysicalDeviceExternalBufferInfoKHR* = VkPhysicalDeviceExternalBufferInfo -type VkExternalBufferProperties* = object - sType*: VkStructureType - pNext*: pointer - externalMemoryProperties*: VkExternalMemoryProperties - -proc newVkExternalBufferProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES, pNext: pointer = nil, externalMemoryProperties: VkExternalMemoryProperties): VkExternalBufferProperties = - result.sType = sType - result.pNext = pNext - result.externalMemoryProperties = externalMemoryProperties - -type VkExternalBufferPropertiesKHR* = VkExternalBufferProperties -type VkPhysicalDeviceIDProperties* = object - sType*: VkStructureType - pNext*: pointer - deviceUUID*: array[VK_UUID_SIZE, uint8] - driverUUID*: array[VK_UUID_SIZE, uint8] - deviceLUID*: array[VK_LUID_SIZE, uint8] - deviceNodeMask*: uint32 - deviceLUIDValid*: VkBool32 - -proc newVkPhysicalDeviceIDProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES, 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 - -type VkPhysicalDeviceIDPropertiesKHR* = VkPhysicalDeviceIDProperties -type VkExternalMemoryImageCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - handleTypes*: VkExternalMemoryHandleTypeFlags - -proc newVkExternalMemoryImageCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlags): VkExternalMemoryImageCreateInfo = - result.sType = sType - result.pNext = pNext - result.handleTypes = handleTypes - -type VkExternalMemoryImageCreateInfoKHR* = VkExternalMemoryImageCreateInfo -type VkExternalMemoryBufferCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - handleTypes*: VkExternalMemoryHandleTypeFlags - -proc newVkExternalMemoryBufferCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlags): VkExternalMemoryBufferCreateInfo = - result.sType = sType - result.pNext = pNext - result.handleTypes = handleTypes - -type VkExternalMemoryBufferCreateInfoKHR* = VkExternalMemoryBufferCreateInfo -type VkExportMemoryAllocateInfo* = object - sType*: VkStructureType - pNext*: pointer - handleTypes*: VkExternalMemoryHandleTypeFlags - -proc newVkExportMemoryAllocateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlags): VkExportMemoryAllocateInfo = - result.sType = sType - result.pNext = pNext - result.handleTypes = handleTypes - -type VkExportMemoryAllocateInfoKHR* = VkExportMemoryAllocateInfo -type VkImportMemoryWin32HandleInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - handleType*: VkExternalMemoryHandleTypeFlagBits - handle*: HANDLE - name*: LPCWSTR - -proc newVkImportMemoryWin32HandleInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR, 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 - -type VkExportMemoryWin32HandleInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - pAttributes*: ptr SECURITY_ATTRIBUTES - dwAccess*: DWORD - name*: LPCWSTR - -proc newVkExportMemoryWin32HandleInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR, 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 - -type VkImportMemoryZirconHandleInfoFUCHSIA* = object - sType*: VkStructureType - pNext*: pointer - handleType*: VkExternalMemoryHandleTypeFlagBits - handle*: zx_handle_t - -proc newVkImportMemoryZirconHandleInfoFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, handle: zx_handle_t): VkImportMemoryZirconHandleInfoFUCHSIA = - result.sType = sType - result.pNext = pNext - result.handleType = handleType - result.handle = handle - -type VkMemoryZirconHandlePropertiesFUCHSIA* = object - sType*: VkStructureType - pNext*: pointer - memoryTypeBits*: uint32 - -proc newVkMemoryZirconHandlePropertiesFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_ZIRCON_HANDLE_PROPERTIES_FUCHSIA, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryZirconHandlePropertiesFUCHSIA = - result.sType = sType - result.pNext = pNext - result.memoryTypeBits = memoryTypeBits - -type VkMemoryGetZirconHandleInfoFUCHSIA* = object - sType*: VkStructureType - pNext*: pointer - memory*: VkDeviceMemory - handleType*: VkExternalMemoryHandleTypeFlagBits - -proc newVkMemoryGetZirconHandleInfoFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetZirconHandleInfoFUCHSIA = - result.sType = sType - result.pNext = pNext - result.memory = memory - result.handleType = handleType - -type VkMemoryWin32HandlePropertiesKHR* = object - sType*: VkStructureType - pNext*: pointer - memoryTypeBits*: uint32 - -proc newVkMemoryWin32HandlePropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryWin32HandlePropertiesKHR = - result.sType = sType - result.pNext = pNext - result.memoryTypeBits = memoryTypeBits - -type VkMemoryGetWin32HandleInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - memory*: VkDeviceMemory - handleType*: VkExternalMemoryHandleTypeFlagBits - -proc newVkMemoryGetWin32HandleInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetWin32HandleInfoKHR = - result.sType = sType - result.pNext = pNext - result.memory = memory - result.handleType = handleType - -type VkImportMemoryFdInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - handleType*: VkExternalMemoryHandleTypeFlagBits - fd*: int - -proc newVkImportMemoryFdInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, fd: int): VkImportMemoryFdInfoKHR = - result.sType = sType - result.pNext = pNext - result.handleType = handleType - result.fd = fd - -type VkMemoryFdPropertiesKHR* = object - sType*: VkStructureType - pNext*: pointer - memoryTypeBits*: uint32 - -proc newVkMemoryFdPropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryFdPropertiesKHR = - result.sType = sType - result.pNext = pNext - result.memoryTypeBits = memoryTypeBits - -type VkMemoryGetFdInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - memory*: VkDeviceMemory - handleType*: VkExternalMemoryHandleTypeFlagBits - -proc newVkMemoryGetFdInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetFdInfoKHR = - result.sType = sType - result.pNext = pNext - result.memory = memory - result.handleType = handleType - -type VkWin32KeyedMutexAcquireReleaseInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - acquireCount*: uint32 - pAcquireSyncs*: ptr VkDeviceMemory - pAcquireKeys*: ptr uint64 - pAcquireTimeouts*: ptr uint32 - releaseCount*: uint32 - pReleaseSyncs*: ptr VkDeviceMemory - pReleaseKeys*: ptr uint64 - -proc newVkWin32KeyedMutexAcquireReleaseInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR, 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 - -type VkPhysicalDeviceExternalSemaphoreInfo* = object - sType*: VkStructureType - pNext*: pointer - handleType*: VkExternalSemaphoreHandleTypeFlagBits - -proc newVkPhysicalDeviceExternalSemaphoreInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO, pNext: pointer = nil, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkPhysicalDeviceExternalSemaphoreInfo = - result.sType = sType - result.pNext = pNext - result.handleType = handleType - -type VkPhysicalDeviceExternalSemaphoreInfoKHR* = VkPhysicalDeviceExternalSemaphoreInfo -type VkExternalSemaphoreProperties* = object - sType*: VkStructureType - pNext*: pointer - exportFromImportedHandleTypes*: VkExternalSemaphoreHandleTypeFlags - compatibleHandleTypes*: VkExternalSemaphoreHandleTypeFlags - externalSemaphoreFeatures*: VkExternalSemaphoreFeatureFlags - -proc newVkExternalSemaphoreProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES, 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 - -type VkExternalSemaphorePropertiesKHR* = VkExternalSemaphoreProperties -type VkExportSemaphoreCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - handleTypes*: VkExternalSemaphoreHandleTypeFlags - -proc newVkExportSemaphoreCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO, pNext: pointer = nil, handleTypes: VkExternalSemaphoreHandleTypeFlags): VkExportSemaphoreCreateInfo = - result.sType = sType - result.pNext = pNext - result.handleTypes = handleTypes - -type VkExportSemaphoreCreateInfoKHR* = VkExportSemaphoreCreateInfo -type VkImportSemaphoreWin32HandleInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - semaphore*: VkSemaphore - flags*: VkSemaphoreImportFlags - handleType*: VkExternalSemaphoreHandleTypeFlagBits - handle*: HANDLE - name*: LPCWSTR - -proc newVkImportSemaphoreWin32HandleInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR, 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 - -type VkExportSemaphoreWin32HandleInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - pAttributes*: ptr SECURITY_ATTRIBUTES - dwAccess*: DWORD - name*: LPCWSTR - -proc newVkExportSemaphoreWin32HandleInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR, 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 - -type VkD3D12FenceSubmitInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - waitSemaphoreValuesCount*: uint32 - pWaitSemaphoreValues*: ptr uint64 - signalSemaphoreValuesCount*: uint32 - pSignalSemaphoreValues*: ptr uint64 - -proc newVkD3D12FenceSubmitInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR, 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 - -type VkSemaphoreGetWin32HandleInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - semaphore*: VkSemaphore - handleType*: VkExternalSemaphoreHandleTypeFlagBits - -proc newVkSemaphoreGetWin32HandleInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetWin32HandleInfoKHR = - result.sType = sType - result.pNext = pNext - result.semaphore = semaphore - result.handleType = handleType - -type VkImportSemaphoreFdInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - semaphore*: VkSemaphore - flags*: VkSemaphoreImportFlags - handleType*: VkExternalSemaphoreHandleTypeFlagBits - fd*: int - -proc newVkImportSemaphoreFdInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR, 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 - -type VkSemaphoreGetFdInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - semaphore*: VkSemaphore - handleType*: VkExternalSemaphoreHandleTypeFlagBits - -proc newVkSemaphoreGetFdInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetFdInfoKHR = - result.sType = sType - result.pNext = pNext - result.semaphore = semaphore - result.handleType = handleType - -type VkImportSemaphoreZirconHandleInfoFUCHSIA* = object - sType*: VkStructureType - pNext*: pointer - semaphore*: VkSemaphore - flags*: VkSemaphoreImportFlags - handleType*: VkExternalSemaphoreHandleTypeFlagBits - zirconHandle*: zx_handle_t - -proc newVkImportSemaphoreZirconHandleInfoFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA, 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 - -type VkSemaphoreGetZirconHandleInfoFUCHSIA* = object - sType*: VkStructureType - pNext*: pointer - semaphore*: VkSemaphore - handleType*: VkExternalSemaphoreHandleTypeFlagBits - -proc newVkSemaphoreGetZirconHandleInfoFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetZirconHandleInfoFUCHSIA = - result.sType = sType - result.pNext = pNext - result.semaphore = semaphore - result.handleType = handleType - -type VkPhysicalDeviceExternalFenceInfo* = object - sType*: VkStructureType - pNext*: pointer - handleType*: VkExternalFenceHandleTypeFlagBits - -proc newVkPhysicalDeviceExternalFenceInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO, pNext: pointer = nil, handleType: VkExternalFenceHandleTypeFlagBits): VkPhysicalDeviceExternalFenceInfo = - result.sType = sType - result.pNext = pNext - result.handleType = handleType - -type VkPhysicalDeviceExternalFenceInfoKHR* = VkPhysicalDeviceExternalFenceInfo -type VkExternalFenceProperties* = object - sType*: VkStructureType - pNext*: pointer - exportFromImportedHandleTypes*: VkExternalFenceHandleTypeFlags - compatibleHandleTypes*: VkExternalFenceHandleTypeFlags - externalFenceFeatures*: VkExternalFenceFeatureFlags - -proc newVkExternalFenceProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES, 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 - -type VkExternalFencePropertiesKHR* = VkExternalFenceProperties -type VkExportFenceCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - handleTypes*: VkExternalFenceHandleTypeFlags - -proc newVkExportFenceCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO, pNext: pointer = nil, handleTypes: VkExternalFenceHandleTypeFlags): VkExportFenceCreateInfo = - result.sType = sType - result.pNext = pNext - result.handleTypes = handleTypes - -type VkExportFenceCreateInfoKHR* = VkExportFenceCreateInfo -type VkImportFenceWin32HandleInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - fence*: VkFence - flags*: VkFenceImportFlags - handleType*: VkExternalFenceHandleTypeFlagBits - handle*: HANDLE - name*: LPCWSTR - -proc newVkImportFenceWin32HandleInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR, 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 - -type VkExportFenceWin32HandleInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - pAttributes*: ptr SECURITY_ATTRIBUTES - dwAccess*: DWORD - name*: LPCWSTR - -proc newVkExportFenceWin32HandleInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR, 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 - -type VkFenceGetWin32HandleInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - fence*: VkFence - handleType*: VkExternalFenceHandleTypeFlagBits - -proc newVkFenceGetWin32HandleInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR, pNext: pointer = nil, fence: VkFence, handleType: VkExternalFenceHandleTypeFlagBits): VkFenceGetWin32HandleInfoKHR = - result.sType = sType - result.pNext = pNext - result.fence = fence - result.handleType = handleType - -type VkImportFenceFdInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - fence*: VkFence - flags*: VkFenceImportFlags - handleType*: VkExternalFenceHandleTypeFlagBits - fd*: int - -proc newVkImportFenceFdInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR, 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 - -type VkFenceGetFdInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - fence*: VkFence - handleType*: VkExternalFenceHandleTypeFlagBits - -proc newVkFenceGetFdInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR, pNext: pointer = nil, fence: VkFence, handleType: VkExternalFenceHandleTypeFlagBits): VkFenceGetFdInfoKHR = - result.sType = sType - result.pNext = pNext - result.fence = fence - result.handleType = handleType - -type VkExportFenceSciSyncInfoNV_s* = object - sType*: VkStructureType - pNext*: pointer - pAttributes*: NvSciSyncAttrList - -proc newVkExportFenceSciSyncInfoNV_s*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_FENCE_SCI_SYNC_INFO_NV, pNext: pointer = nil, pAttributes: NvSciSyncAttrList): VkExportFenceSciSyncInfoNV_s = - result.sType = sType - result.pNext = pNext - result.pAttributes = pAttributes - -type VkImportFenceSciSyncInfoNV* = object - sType*: VkStructureType - pNext*: pointer - fence*: VkFence - handleType*: VkExternalFenceHandleTypeFlagBits - handle*: pointer - -proc newVkImportFenceSciSyncInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_FENCE_SCI_SYNC_INFO_NV, 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 - -type VkFenceGetSciSyncInfoNV* = object - sType*: VkStructureType - pNext*: pointer - fence*: VkFence - handleType*: VkExternalFenceHandleTypeFlagBits - -proc newVkFenceGetSciSyncInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_FENCE_GET_SCI_SYNC_INFO_NV, pNext: pointer = nil, fence: VkFence, handleType: VkExternalFenceHandleTypeFlagBits): VkFenceGetSciSyncInfoNV = - result.sType = sType - result.pNext = pNext - result.fence = fence - result.handleType = handleType - -type VkExportSemaphoreSciSyncInfoNV* = object - sType*: VkStructureType - pNext*: pointer - pAttributes*: NvSciSyncAttrList - -proc newVkExportSemaphoreSciSyncInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_SCI_SYNC_INFO_NV, pNext: pointer = nil, pAttributes: NvSciSyncAttrList): VkExportSemaphoreSciSyncInfoNV = - result.sType = sType - result.pNext = pNext - result.pAttributes = pAttributes - -type VkImportSemaphoreSciSyncInfoNV* = object - sType*: VkStructureType - pNext*: pointer - semaphore*: VkSemaphore - handleType*: VkExternalSemaphoreHandleTypeFlagBits - handle*: pointer - -proc newVkImportSemaphoreSciSyncInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_SCI_SYNC_INFO_NV, 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 - -type VkSemaphoreGetSciSyncInfoNV* = object - sType*: VkStructureType - pNext*: pointer - semaphore*: VkSemaphore - handleType*: VkExternalSemaphoreHandleTypeFlagBits - -proc newVkSemaphoreGetSciSyncInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_SEMAPHORE_GET_SCI_SYNC_INFO_NV, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetSciSyncInfoNV = - result.sType = sType - result.pNext = pNext - result.semaphore = semaphore - result.handleType = handleType - -type VkSciSyncAttributesInfoNV* = object - sType*: VkStructureType - pNext*: pointer - clientType*: VkSciSyncClientTypeNV - primitiveType*: VkSciSyncPrimitiveTypeNV - -proc newVkSciSyncAttributesInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_SCI_SYNC_ATTRIBUTES_INFO_NV, pNext: pointer = nil, clientType: VkSciSyncClientTypeNV, primitiveType: VkSciSyncPrimitiveTypeNV): VkSciSyncAttributesInfoNV = - result.sType = sType - result.pNext = pNext - result.clientType = clientType - result.primitiveType = primitiveType - -type VkPhysicalDeviceExternalSciSyncFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - sciSyncFence*: VkBool32 - sciSyncSemaphore*: VkBool32 - sciSyncImport*: VkBool32 - sciSyncExport*: VkBool32 - -proc newVkPhysicalDeviceExternalSciSyncFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SCI_SYNC_FEATURES_NV, 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 - -type VkPhysicalDeviceExternalSciSync2FeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - sciSyncFence*: VkBool32 - sciSyncSemaphore2*: VkBool32 - sciSyncImport*: VkBool32 - sciSyncExport*: VkBool32 - -proc newVkPhysicalDeviceExternalSciSync2FeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SCI_SYNC_2_FEATURES_NV, 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 - -type VkSemaphoreSciSyncPoolCreateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - handle*: NvSciSyncObj - -proc newVkSemaphoreSciSyncPoolCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_SEMAPHORE_SCI_SYNC_POOL_CREATE_INFO_NV, pNext: pointer = nil, handle: NvSciSyncObj): VkSemaphoreSciSyncPoolCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.handle = handle - -type VkSemaphoreSciSyncCreateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - semaphorePool*: VkSemaphoreSciSyncPoolNV - pFence*: ptr NvSciSyncFence - -proc newVkSemaphoreSciSyncCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_SEMAPHORE_SCI_SYNC_CREATE_INFO_NV, pNext: pointer = nil, semaphorePool: VkSemaphoreSciSyncPoolNV, pFence: ptr NvSciSyncFence): VkSemaphoreSciSyncCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.semaphorePool = semaphorePool - result.pFence = pFence - -type VkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - semaphoreSciSyncPoolRequestCount*: uint32 - -proc newVkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_SEMAPHORE_SCI_SYNC_POOL_RESERVATION_CREATE_INFO_NV, pNext: pointer = nil, semaphoreSciSyncPoolRequestCount: uint32): VkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.semaphoreSciSyncPoolRequestCount = semaphoreSciSyncPoolRequestCount - -type VkPhysicalDeviceMultiviewFeatures* = object - sType*: VkStructureType - pNext*: pointer - multiview*: VkBool32 - multiviewGeometryShader*: VkBool32 - multiviewTessellationShader*: VkBool32 - -proc newVkPhysicalDeviceMultiviewFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES, 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 - -type VkPhysicalDeviceMultiviewFeaturesKHR* = VkPhysicalDeviceMultiviewFeatures -type VkPhysicalDeviceMultiviewProperties* = object - sType*: VkStructureType - pNext*: pointer - maxMultiviewViewCount*: uint32 - maxMultiviewInstanceIndex*: uint32 - -proc newVkPhysicalDeviceMultiviewProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES, pNext: pointer = nil, maxMultiviewViewCount: uint32, maxMultiviewInstanceIndex: uint32): VkPhysicalDeviceMultiviewProperties = - result.sType = sType - result.pNext = pNext - result.maxMultiviewViewCount = maxMultiviewViewCount - result.maxMultiviewInstanceIndex = maxMultiviewInstanceIndex - -type VkPhysicalDeviceMultiviewPropertiesKHR* = VkPhysicalDeviceMultiviewProperties -type VkRenderPassMultiviewCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - subpassCount*: uint32 - pViewMasks*: ptr uint32 - dependencyCount*: uint32 - pViewOffsets*: ptr int32 - correlationMaskCount*: uint32 - pCorrelationMasks*: ptr uint32 - -proc newVkRenderPassMultiviewCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO, 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 - -type VkRenderPassMultiviewCreateInfoKHR* = VkRenderPassMultiviewCreateInfo -type VkSurfaceCapabilities2EXT* = object - sType*: VkStructureType - pNext*: pointer - minImageCount*: uint32 - maxImageCount*: uint32 - currentExtent*: VkExtent2D - minImageExtent*: VkExtent2D - maxImageExtent*: VkExtent2D - maxImageArrayLayers*: uint32 - supportedTransforms*: VkSurfaceTransformFlagsKHR - currentTransform*: VkSurfaceTransformFlagBitsKHR - supportedCompositeAlpha*: VkCompositeAlphaFlagsKHR - supportedUsageFlags*: VkImageUsageFlags - supportedSurfaceCounters*: VkSurfaceCounterFlagsEXT - -proc newVkSurfaceCapabilities2EXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT, 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 - -type VkDisplayPowerInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - powerState*: VkDisplayPowerStateEXT - -proc newVkDisplayPowerInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT, pNext: pointer = nil, powerState: VkDisplayPowerStateEXT): VkDisplayPowerInfoEXT = - result.sType = sType - result.pNext = pNext - result.powerState = powerState - -type VkDeviceEventInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - deviceEvent*: VkDeviceEventTypeEXT - -proc newVkDeviceEventInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT, pNext: pointer = nil, deviceEvent: VkDeviceEventTypeEXT): VkDeviceEventInfoEXT = - result.sType = sType - result.pNext = pNext - result.deviceEvent = deviceEvent - -type VkDisplayEventInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - displayEvent*: VkDisplayEventTypeEXT - -proc newVkDisplayEventInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT, pNext: pointer = nil, displayEvent: VkDisplayEventTypeEXT): VkDisplayEventInfoEXT = - result.sType = sType - result.pNext = pNext - result.displayEvent = displayEvent - -type VkSwapchainCounterCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - surfaceCounters*: VkSurfaceCounterFlagsEXT - -proc newVkSwapchainCounterCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT, pNext: pointer = nil, surfaceCounters: VkSurfaceCounterFlagsEXT): VkSwapchainCounterCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.surfaceCounters = surfaceCounters - -type VkPhysicalDeviceGroupProperties* = object - sType*: VkStructureType - pNext*: pointer - physicalDeviceCount*: uint32 - physicalDevices*: array[VK_MAX_DEVICE_GROUP_SIZE, VkPhysicalDevice] - subsetAllocation*: VkBool32 - -proc newVkPhysicalDeviceGroupProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES, 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 - -type VkPhysicalDeviceGroupPropertiesKHR* = VkPhysicalDeviceGroupProperties -type VkMemoryAllocateFlagsInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkMemoryAllocateFlags - deviceMask*: uint32 - -proc newVkMemoryAllocateFlagsInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO, pNext: pointer = nil, flags: VkMemoryAllocateFlags = 0.VkMemoryAllocateFlags, deviceMask: uint32): VkMemoryAllocateFlagsInfo = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.deviceMask = deviceMask - -type VkMemoryAllocateFlagsInfoKHR* = VkMemoryAllocateFlagsInfo -type VkBindBufferMemoryInfo* = object - sType*: VkStructureType - pNext*: pointer - buffer*: VkBuffer - memory*: VkDeviceMemory - memoryOffset*: VkDeviceSize - -proc newVkBindBufferMemoryInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO, 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 - -type VkBindBufferMemoryInfoKHR* = VkBindBufferMemoryInfo -type VkBindBufferMemoryDeviceGroupInfo* = object - sType*: VkStructureType - pNext*: pointer - deviceIndexCount*: uint32 - pDeviceIndices*: ptr uint32 - -proc newVkBindBufferMemoryDeviceGroupInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO, pNext: pointer = nil, deviceIndexCount: uint32, pDeviceIndices: ptr uint32): VkBindBufferMemoryDeviceGroupInfo = - result.sType = sType - result.pNext = pNext - result.deviceIndexCount = deviceIndexCount - result.pDeviceIndices = pDeviceIndices - -type VkBindBufferMemoryDeviceGroupInfoKHR* = VkBindBufferMemoryDeviceGroupInfo -type VkBindImageMemoryInfo* = object - sType*: VkStructureType - pNext*: pointer - image*: VkImage - memory*: VkDeviceMemory - memoryOffset*: VkDeviceSize - -proc newVkBindImageMemoryInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO, 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 - -type VkBindImageMemoryInfoKHR* = VkBindImageMemoryInfo -type VkBindImageMemoryDeviceGroupInfo* = object - sType*: VkStructureType - pNext*: pointer - deviceIndexCount*: uint32 - pDeviceIndices*: ptr uint32 - splitInstanceBindRegionCount*: uint32 - pSplitInstanceBindRegions*: ptr VkRect2D - -proc newVkBindImageMemoryDeviceGroupInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO, 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 - -type VkBindImageMemoryDeviceGroupInfoKHR* = VkBindImageMemoryDeviceGroupInfo -type VkDeviceGroupRenderPassBeginInfo* = object - sType*: VkStructureType - pNext*: pointer - deviceMask*: uint32 - deviceRenderAreaCount*: uint32 - pDeviceRenderAreas*: ptr VkRect2D - -proc newVkDeviceGroupRenderPassBeginInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO, 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 - -type VkDeviceGroupRenderPassBeginInfoKHR* = VkDeviceGroupRenderPassBeginInfo -type VkDeviceGroupCommandBufferBeginInfo* = object - sType*: VkStructureType - pNext*: pointer - deviceMask*: uint32 - -proc newVkDeviceGroupCommandBufferBeginInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO, pNext: pointer = nil, deviceMask: uint32): VkDeviceGroupCommandBufferBeginInfo = - result.sType = sType - result.pNext = pNext - result.deviceMask = deviceMask - -type VkDeviceGroupCommandBufferBeginInfoKHR* = VkDeviceGroupCommandBufferBeginInfo -type VkDeviceGroupSubmitInfo* = object - sType*: VkStructureType - pNext*: pointer - waitSemaphoreCount*: uint32 - pWaitSemaphoreDeviceIndices*: ptr uint32 - commandBufferCount*: uint32 - pCommandBufferDeviceMasks*: ptr uint32 - signalSemaphoreCount*: uint32 - pSignalSemaphoreDeviceIndices*: ptr uint32 - -proc newVkDeviceGroupSubmitInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO, 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 - -type VkDeviceGroupSubmitInfoKHR* = VkDeviceGroupSubmitInfo -type VkDeviceGroupBindSparseInfo* = object - sType*: VkStructureType - pNext*: pointer - resourceDeviceIndex*: uint32 - memoryDeviceIndex*: uint32 - -proc newVkDeviceGroupBindSparseInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO, pNext: pointer = nil, resourceDeviceIndex: uint32, memoryDeviceIndex: uint32): VkDeviceGroupBindSparseInfo = - result.sType = sType - result.pNext = pNext - result.resourceDeviceIndex = resourceDeviceIndex - result.memoryDeviceIndex = memoryDeviceIndex - -type VkDeviceGroupBindSparseInfoKHR* = VkDeviceGroupBindSparseInfo -type VkDeviceGroupPresentCapabilitiesKHR* = object - sType*: VkStructureType - pNext*: pointer - presentMask*: array[VK_MAX_DEVICE_GROUP_SIZE, uint32] - modes*: VkDeviceGroupPresentModeFlagsKHR - -proc newVkDeviceGroupPresentCapabilitiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR, 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 - -type VkImageSwapchainCreateInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - swapchain*: VkSwapchainKHR - -proc newVkImageSwapchainCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR, pNext: pointer = nil, swapchain: VkSwapchainKHR): VkImageSwapchainCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.swapchain = swapchain - -type VkBindImageMemorySwapchainInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - swapchain*: VkSwapchainKHR - imageIndex*: uint32 - -proc newVkBindImageMemorySwapchainInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR, pNext: pointer = nil, swapchain: VkSwapchainKHR, imageIndex: uint32): VkBindImageMemorySwapchainInfoKHR = - result.sType = sType - result.pNext = pNext - result.swapchain = swapchain - result.imageIndex = imageIndex - -type VkAcquireNextImageInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - swapchain*: VkSwapchainKHR - timeout*: uint64 - semaphore*: VkSemaphore - fence*: VkFence - deviceMask*: uint32 - -proc newVkAcquireNextImageInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR, 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 - -type VkDeviceGroupPresentInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - swapchainCount*: uint32 - pDeviceMasks*: ptr uint32 - mode*: VkDeviceGroupPresentModeFlagBitsKHR - -proc newVkDeviceGroupPresentInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR, 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 - -type VkDeviceGroupDeviceCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - physicalDeviceCount*: uint32 - pPhysicalDevices*: ptr VkPhysicalDevice - -proc newVkDeviceGroupDeviceCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO, pNext: pointer = nil, physicalDeviceCount: uint32, pPhysicalDevices: ptr VkPhysicalDevice): VkDeviceGroupDeviceCreateInfo = - result.sType = sType - result.pNext = pNext - result.physicalDeviceCount = physicalDeviceCount - result.pPhysicalDevices = pPhysicalDevices - -type VkDeviceGroupDeviceCreateInfoKHR* = VkDeviceGroupDeviceCreateInfo -type VkDeviceGroupSwapchainCreateInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - modes*: VkDeviceGroupPresentModeFlagsKHR - -proc newVkDeviceGroupSwapchainCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR, pNext: pointer = nil, modes: VkDeviceGroupPresentModeFlagsKHR): VkDeviceGroupSwapchainCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.modes = modes - -type VkDescriptorUpdateTemplateEntry* = object - dstBinding*: uint32 - dstArrayElement*: uint32 - descriptorCount*: uint32 - descriptorType*: VkDescriptorType - offset*: uint - stride*: uint - -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 - -type VkDescriptorUpdateTemplateEntryKHR* = VkDescriptorUpdateTemplateEntry -type VkDescriptorUpdateTemplateCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkDescriptorUpdateTemplateCreateFlags - descriptorUpdateEntryCount*: uint32 - pDescriptorUpdateEntries*: ptr VkDescriptorUpdateTemplateEntry - templateType*: VkDescriptorUpdateTemplateType - descriptorSetLayout*: VkDescriptorSetLayout - pipelineBindPoint*: VkPipelineBindPoint - pipelineLayout*: VkPipelineLayout - set*: uint32 - -proc newVkDescriptorUpdateTemplateCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO, 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 - -type VkDescriptorUpdateTemplateCreateInfoKHR* = VkDescriptorUpdateTemplateCreateInfo -type VkXYColorEXT* = object - x*: float32 - y*: float32 - -proc newVkXYColorEXT*(x: float32, y: float32): VkXYColorEXT = - result.x = x - result.y = y - -type VkPhysicalDevicePresentIdFeaturesKHR* = object - sType*: VkStructureType - pNext*: pointer - presentId*: VkBool32 - -proc newVkPhysicalDevicePresentIdFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR, pNext: pointer = nil, presentId: VkBool32): VkPhysicalDevicePresentIdFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.presentId = presentId - -type VkPresentIdKHR* = object - sType*: VkStructureType - pNext*: pointer - swapchainCount*: uint32 - pPresentIds*: ptr uint64 - -proc newVkPresentIdKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PRESENT_ID_KHR, pNext: pointer = nil, swapchainCount: uint32, pPresentIds: ptr uint64): VkPresentIdKHR = - result.sType = sType - result.pNext = pNext - result.swapchainCount = swapchainCount - result.pPresentIds = pPresentIds - -type VkPhysicalDevicePresentWaitFeaturesKHR* = object - sType*: VkStructureType - pNext*: pointer - presentWait*: VkBool32 - -proc newVkPhysicalDevicePresentWaitFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR, pNext: pointer = nil, presentWait: VkBool32): VkPhysicalDevicePresentWaitFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.presentWait = presentWait - -type VkHdrMetadataEXT* = object - sType*: VkStructureType - pNext*: pointer - displayPrimaryRed*: VkXYColorEXT - displayPrimaryGreen*: VkXYColorEXT - displayPrimaryBlue*: VkXYColorEXT - whitePoint*: VkXYColorEXT - maxLuminance*: float32 - minLuminance*: float32 - maxContentLightLevel*: float32 - maxFrameAverageLightLevel*: float32 - -proc newVkHdrMetadataEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_HDR_METADATA_EXT, 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 - -type VkDisplayNativeHdrSurfaceCapabilitiesAMD* = object - sType*: VkStructureType - pNext*: pointer - localDimmingSupport*: VkBool32 - -proc newVkDisplayNativeHdrSurfaceCapabilitiesAMD*(sType: VkStructureType = VK_STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD, pNext: pointer = nil, localDimmingSupport: VkBool32): VkDisplayNativeHdrSurfaceCapabilitiesAMD = - result.sType = sType - result.pNext = pNext - result.localDimmingSupport = localDimmingSupport - -type VkSwapchainDisplayNativeHdrCreateInfoAMD* = object - sType*: VkStructureType - pNext*: pointer - localDimmingEnable*: VkBool32 - -proc newVkSwapchainDisplayNativeHdrCreateInfoAMD*(sType: VkStructureType = VK_STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD, pNext: pointer = nil, localDimmingEnable: VkBool32): VkSwapchainDisplayNativeHdrCreateInfoAMD = - result.sType = sType - result.pNext = pNext - result.localDimmingEnable = localDimmingEnable - -type VkRefreshCycleDurationGOOGLE* = object - refreshDuration*: uint64 - -proc newVkRefreshCycleDurationGOOGLE*(refreshDuration: uint64): VkRefreshCycleDurationGOOGLE = - result.refreshDuration = refreshDuration - -type VkPastPresentationTimingGOOGLE* = object - presentID*: uint32 - desiredPresentTime*: uint64 - actualPresentTime*: uint64 - earliestPresentTime*: uint64 - presentMargin*: uint64 - -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 - -type VkPresentTimesInfoGOOGLE* = object - sType*: VkStructureType - pNext*: pointer - swapchainCount*: uint32 - pTimes*: ptr VkPresentTimeGOOGLE - -proc newVkPresentTimesInfoGOOGLE*(sType: VkStructureType = VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE, pNext: pointer = nil, swapchainCount: uint32, pTimes: ptr VkPresentTimeGOOGLE): VkPresentTimesInfoGOOGLE = - result.sType = sType - result.pNext = pNext - result.swapchainCount = swapchainCount - result.pTimes = pTimes - -type VkPresentTimeGOOGLE* = object - presentID*: uint32 - desiredPresentTime*: uint64 - -proc newVkPresentTimeGOOGLE*(presentID: uint32, desiredPresentTime: uint64): VkPresentTimeGOOGLE = - result.presentID = presentID - result.desiredPresentTime = desiredPresentTime - -type VkIOSSurfaceCreateInfoMVK* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkIOSSurfaceCreateFlagsMVK - pView*: pointer - -proc newVkIOSSurfaceCreateInfoMVK*(sType: VkStructureType = VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK, pNext: pointer = nil, flags: VkIOSSurfaceCreateFlagsMVK = 0.VkIOSSurfaceCreateFlagsMVK, pView: pointer = nil): VkIOSSurfaceCreateInfoMVK = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.pView = pView - -type VkMacOSSurfaceCreateInfoMVK* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkMacOSSurfaceCreateFlagsMVK - pView*: pointer - -proc newVkMacOSSurfaceCreateInfoMVK*(sType: VkStructureType = VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK, pNext: pointer = nil, flags: VkMacOSSurfaceCreateFlagsMVK = 0.VkMacOSSurfaceCreateFlagsMVK, pView: pointer = nil): VkMacOSSurfaceCreateInfoMVK = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.pView = pView - -type VkMetalSurfaceCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkMetalSurfaceCreateFlagsEXT - pLayer*: ptr CAMetalLayer - -proc newVkMetalSurfaceCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT, pNext: pointer = nil, flags: VkMetalSurfaceCreateFlagsEXT = 0.VkMetalSurfaceCreateFlagsEXT, pLayer: ptr CAMetalLayer): VkMetalSurfaceCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.pLayer = pLayer - -type VkViewportWScalingNV* = object - xcoeff*: float32 - ycoeff*: float32 - -proc newVkViewportWScalingNV*(xcoeff: float32, ycoeff: float32): VkViewportWScalingNV = - result.xcoeff = xcoeff - result.ycoeff = ycoeff - -type VkPipelineViewportWScalingStateCreateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - viewportWScalingEnable*: VkBool32 - viewportCount*: uint32 - pViewportWScalings*: ptr VkViewportWScalingNV - -proc newVkPipelineViewportWScalingStateCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV, 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 - -type VkViewportSwizzleNV* = object - x*: VkViewportCoordinateSwizzleNV - y*: VkViewportCoordinateSwizzleNV - z*: VkViewportCoordinateSwizzleNV - w*: VkViewportCoordinateSwizzleNV - -proc newVkViewportSwizzleNV*(x: VkViewportCoordinateSwizzleNV, y: VkViewportCoordinateSwizzleNV, z: VkViewportCoordinateSwizzleNV, w: VkViewportCoordinateSwizzleNV): VkViewportSwizzleNV = - result.x = x - result.y = y - result.z = z - result.w = w - -type VkPipelineViewportSwizzleStateCreateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkPipelineViewportSwizzleStateCreateFlagsNV - viewportCount*: uint32 - pViewportSwizzles*: ptr VkViewportSwizzleNV - -proc newVkPipelineViewportSwizzleStateCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV, 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 - -type VkPhysicalDeviceDiscardRectanglePropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - maxDiscardRectangles*: uint32 - -proc newVkPhysicalDeviceDiscardRectanglePropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT, pNext: pointer = nil, maxDiscardRectangles: uint32): VkPhysicalDeviceDiscardRectanglePropertiesEXT = - result.sType = sType - result.pNext = pNext - result.maxDiscardRectangles = maxDiscardRectangles - -type VkPipelineDiscardRectangleStateCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkPipelineDiscardRectangleStateCreateFlagsEXT - discardRectangleMode*: VkDiscardRectangleModeEXT - discardRectangleCount*: uint32 - pDiscardRectangles*: ptr VkRect2D - -proc newVkPipelineDiscardRectangleStateCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT, 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 - -type VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX* = object - sType*: VkStructureType - pNext*: pointer - perViewPositionAllComponents*: VkBool32 - -proc newVkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX, pNext: pointer = nil, perViewPositionAllComponents: VkBool32): VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX = - result.sType = sType - result.pNext = pNext - result.perViewPositionAllComponents = perViewPositionAllComponents - -type VkInputAttachmentAspectReference* = object - subpass*: uint32 - inputAttachmentIndex*: uint32 - aspectMask*: VkImageAspectFlags - -proc newVkInputAttachmentAspectReference*(subpass: uint32, inputAttachmentIndex: uint32, aspectMask: VkImageAspectFlags): VkInputAttachmentAspectReference = - result.subpass = subpass - result.inputAttachmentIndex = inputAttachmentIndex - result.aspectMask = aspectMask - -type VkInputAttachmentAspectReferenceKHR* = VkInputAttachmentAspectReference -type VkRenderPassInputAttachmentAspectCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - aspectReferenceCount*: uint32 - pAspectReferences*: ptr VkInputAttachmentAspectReference - -proc newVkRenderPassInputAttachmentAspectCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO, pNext: pointer = nil, aspectReferenceCount: uint32, pAspectReferences: ptr VkInputAttachmentAspectReference): VkRenderPassInputAttachmentAspectCreateInfo = - result.sType = sType - result.pNext = pNext - result.aspectReferenceCount = aspectReferenceCount - result.pAspectReferences = pAspectReferences - -type VkRenderPassInputAttachmentAspectCreateInfoKHR* = VkRenderPassInputAttachmentAspectCreateInfo -type VkPhysicalDeviceSurfaceInfo2KHR* = object - sType*: VkStructureType - pNext*: pointer - surface*: VkSurfaceKHR - -proc newVkPhysicalDeviceSurfaceInfo2KHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR, pNext: pointer = nil, surface: VkSurfaceKHR): VkPhysicalDeviceSurfaceInfo2KHR = - result.sType = sType - result.pNext = pNext - result.surface = surface - -type VkSurfaceCapabilities2KHR* = object - sType*: VkStructureType - pNext*: pointer - surfaceCapabilities*: VkSurfaceCapabilitiesKHR - -proc newVkSurfaceCapabilities2KHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR, pNext: pointer = nil, surfaceCapabilities: VkSurfaceCapabilitiesKHR): VkSurfaceCapabilities2KHR = - result.sType = sType - result.pNext = pNext - result.surfaceCapabilities = surfaceCapabilities - -type VkSurfaceFormat2KHR* = object - sType*: VkStructureType - pNext*: pointer - surfaceFormat*: VkSurfaceFormatKHR - -proc newVkSurfaceFormat2KHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR, pNext: pointer = nil, surfaceFormat: VkSurfaceFormatKHR): VkSurfaceFormat2KHR = - result.sType = sType - result.pNext = pNext - result.surfaceFormat = surfaceFormat - -type VkDisplayProperties2KHR* = object - sType*: VkStructureType - pNext*: pointer - displayProperties*: VkDisplayPropertiesKHR - -proc newVkDisplayProperties2KHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR, pNext: pointer = nil, displayProperties: VkDisplayPropertiesKHR): VkDisplayProperties2KHR = - result.sType = sType - result.pNext = pNext - result.displayProperties = displayProperties - -type VkDisplayPlaneProperties2KHR* = object - sType*: VkStructureType - pNext*: pointer - displayPlaneProperties*: VkDisplayPlanePropertiesKHR - -proc newVkDisplayPlaneProperties2KHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR, pNext: pointer = nil, displayPlaneProperties: VkDisplayPlanePropertiesKHR): VkDisplayPlaneProperties2KHR = - result.sType = sType - result.pNext = pNext - result.displayPlaneProperties = displayPlaneProperties - -type VkDisplayModeProperties2KHR* = object - sType*: VkStructureType - pNext*: pointer - displayModeProperties*: VkDisplayModePropertiesKHR - -proc newVkDisplayModeProperties2KHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR, pNext: pointer = nil, displayModeProperties: VkDisplayModePropertiesKHR): VkDisplayModeProperties2KHR = - result.sType = sType - result.pNext = pNext - result.displayModeProperties = displayModeProperties - -type VkDisplayPlaneInfo2KHR* = object - sType*: VkStructureType - pNext*: pointer - mode*: VkDisplayModeKHR - planeIndex*: uint32 - -proc newVkDisplayPlaneInfo2KHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR, pNext: pointer = nil, mode: VkDisplayModeKHR, planeIndex: uint32): VkDisplayPlaneInfo2KHR = - result.sType = sType - result.pNext = pNext - result.mode = mode - result.planeIndex = planeIndex - -type VkDisplayPlaneCapabilities2KHR* = object - sType*: VkStructureType - pNext*: pointer - capabilities*: VkDisplayPlaneCapabilitiesKHR - -proc newVkDisplayPlaneCapabilities2KHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR, pNext: pointer = nil, capabilities: VkDisplayPlaneCapabilitiesKHR): VkDisplayPlaneCapabilities2KHR = - result.sType = sType - result.pNext = pNext - result.capabilities = capabilities - -type VkSharedPresentSurfaceCapabilitiesKHR* = object - sType*: VkStructureType - pNext*: pointer - sharedPresentSupportedUsageFlags*: VkImageUsageFlags - -proc newVkSharedPresentSurfaceCapabilitiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR, pNext: pointer = nil, sharedPresentSupportedUsageFlags: VkImageUsageFlags): VkSharedPresentSurfaceCapabilitiesKHR = - result.sType = sType - result.pNext = pNext - result.sharedPresentSupportedUsageFlags = sharedPresentSupportedUsageFlags - -type VkPhysicalDevice16BitStorageFeatures* = object - sType*: VkStructureType - pNext*: pointer - storageBuffer16BitAccess*: VkBool32 - uniformAndStorageBuffer16BitAccess*: VkBool32 - storagePushConstant16*: VkBool32 - storageInputOutput16*: VkBool32 - -proc newVkPhysicalDevice16BitStorageFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES, 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 - -type VkPhysicalDevice16BitStorageFeaturesKHR* = VkPhysicalDevice16BitStorageFeatures -type VkPhysicalDeviceSubgroupProperties* = object - sType*: VkStructureType - pNext*: pointer - subgroupSize*: uint32 - supportedStages*: VkShaderStageFlags - supportedOperations*: VkSubgroupFeatureFlags - quadOperationsInAllStages*: VkBool32 - -proc newVkPhysicalDeviceSubgroupProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES, 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 - -type VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures* = object - sType*: VkStructureType - pNext*: pointer - shaderSubgroupExtendedTypes*: VkBool32 - -proc newVkPhysicalDeviceShaderSubgroupExtendedTypesFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES, pNext: pointer = nil, shaderSubgroupExtendedTypes: VkBool32): VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures = - result.sType = sType - result.pNext = pNext - result.shaderSubgroupExtendedTypes = shaderSubgroupExtendedTypes - -type VkPhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR* = VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures -type VkBufferMemoryRequirementsInfo2* = object - sType*: VkStructureType - pNext*: pointer - buffer*: VkBuffer - -proc newVkBufferMemoryRequirementsInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2, pNext: pointer = nil, buffer: VkBuffer): VkBufferMemoryRequirementsInfo2 = - result.sType = sType - result.pNext = pNext - result.buffer = buffer - -type VkBufferMemoryRequirementsInfo2KHR* = VkBufferMemoryRequirementsInfo2 -type VkDeviceBufferMemoryRequirements* = object - sType*: VkStructureType - pNext*: pointer - pCreateInfo*: ptr VkBufferCreateInfo - -proc newVkDeviceBufferMemoryRequirements*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS, pNext: pointer = nil, pCreateInfo: ptr VkBufferCreateInfo): VkDeviceBufferMemoryRequirements = - result.sType = sType - result.pNext = pNext - result.pCreateInfo = pCreateInfo - -type VkDeviceBufferMemoryRequirementsKHR* = VkDeviceBufferMemoryRequirements -type VkImageMemoryRequirementsInfo2* = object - sType*: VkStructureType - pNext*: pointer - image*: VkImage - -proc newVkImageMemoryRequirementsInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2, pNext: pointer = nil, image: VkImage): VkImageMemoryRequirementsInfo2 = - result.sType = sType - result.pNext = pNext - result.image = image - -type VkImageMemoryRequirementsInfo2KHR* = VkImageMemoryRequirementsInfo2 -type VkImageSparseMemoryRequirementsInfo2* = object - sType*: VkStructureType - pNext*: pointer - image*: VkImage - -proc newVkImageSparseMemoryRequirementsInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2, pNext: pointer = nil, image: VkImage): VkImageSparseMemoryRequirementsInfo2 = - result.sType = sType - result.pNext = pNext - result.image = image - -type VkImageSparseMemoryRequirementsInfo2KHR* = VkImageSparseMemoryRequirementsInfo2 -type VkDeviceImageMemoryRequirements* = object - sType*: VkStructureType - pNext*: pointer - pCreateInfo*: ptr VkImageCreateInfo - planeAspect*: VkImageAspectFlagBits - -proc newVkDeviceImageMemoryRequirements*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS, pNext: pointer = nil, pCreateInfo: ptr VkImageCreateInfo, planeAspect: VkImageAspectFlagBits): VkDeviceImageMemoryRequirements = - result.sType = sType - result.pNext = pNext - result.pCreateInfo = pCreateInfo - result.planeAspect = planeAspect - -type VkDeviceImageMemoryRequirementsKHR* = VkDeviceImageMemoryRequirements -type VkMemoryRequirements2* = object - sType*: VkStructureType - pNext*: pointer - memoryRequirements*: VkMemoryRequirements - -proc newVkMemoryRequirements2*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2, pNext: pointer = nil, memoryRequirements: VkMemoryRequirements): VkMemoryRequirements2 = - result.sType = sType - result.pNext = pNext - result.memoryRequirements = memoryRequirements - -type VkMemoryRequirements2KHR* = VkMemoryRequirements2 -type VkSparseImageMemoryRequirements2* = object - sType*: VkStructureType - pNext*: pointer - memoryRequirements*: VkSparseImageMemoryRequirements - -proc newVkSparseImageMemoryRequirements2*(sType: VkStructureType = VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2, pNext: pointer = nil, memoryRequirements: VkSparseImageMemoryRequirements): VkSparseImageMemoryRequirements2 = - result.sType = sType - result.pNext = pNext - result.memoryRequirements = memoryRequirements - -type VkSparseImageMemoryRequirements2KHR* = VkSparseImageMemoryRequirements2 -type VkPhysicalDevicePointClippingProperties* = object - sType*: VkStructureType - pNext*: pointer - pointClippingBehavior*: VkPointClippingBehavior - -proc newVkPhysicalDevicePointClippingProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES, pNext: pointer = nil, pointClippingBehavior: VkPointClippingBehavior): VkPhysicalDevicePointClippingProperties = - result.sType = sType - result.pNext = pNext - result.pointClippingBehavior = pointClippingBehavior - -type VkPhysicalDevicePointClippingPropertiesKHR* = VkPhysicalDevicePointClippingProperties -type VkMemoryDedicatedRequirements* = object - sType*: VkStructureType - pNext*: pointer - prefersDedicatedAllocation*: VkBool32 - requiresDedicatedAllocation*: VkBool32 - -proc newVkMemoryDedicatedRequirements*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS, pNext: pointer = nil, prefersDedicatedAllocation: VkBool32, requiresDedicatedAllocation: VkBool32): VkMemoryDedicatedRequirements = - result.sType = sType - result.pNext = pNext - result.prefersDedicatedAllocation = prefersDedicatedAllocation - result.requiresDedicatedAllocation = requiresDedicatedAllocation - -type VkMemoryDedicatedRequirementsKHR* = VkMemoryDedicatedRequirements -type VkMemoryDedicatedAllocateInfo* = object - sType*: VkStructureType - pNext*: pointer - image*: VkImage - buffer*: VkBuffer - -proc newVkMemoryDedicatedAllocateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO, pNext: pointer = nil, image: VkImage, buffer: VkBuffer): VkMemoryDedicatedAllocateInfo = - result.sType = sType - result.pNext = pNext - result.image = image - result.buffer = buffer - -type VkMemoryDedicatedAllocateInfoKHR* = VkMemoryDedicatedAllocateInfo -type VkImageViewUsageCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - usage*: VkImageUsageFlags - -proc newVkImageViewUsageCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO, pNext: pointer = nil, usage: VkImageUsageFlags): VkImageViewUsageCreateInfo = - result.sType = sType - result.pNext = pNext - result.usage = usage - -type VkImageViewSlicedCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - sliceOffset*: uint32 - sliceCount*: uint32 - -proc newVkImageViewSlicedCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_VIEW_SLICED_CREATE_INFO_EXT, pNext: pointer = nil, sliceOffset: uint32, sliceCount: uint32): VkImageViewSlicedCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.sliceOffset = sliceOffset - result.sliceCount = sliceCount - -type VkImageViewUsageCreateInfoKHR* = VkImageViewUsageCreateInfo -type VkPipelineTessellationDomainOriginStateCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - domainOrigin*: VkTessellationDomainOrigin - -proc newVkPipelineTessellationDomainOriginStateCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO, pNext: pointer = nil, domainOrigin: VkTessellationDomainOrigin): VkPipelineTessellationDomainOriginStateCreateInfo = - result.sType = sType - result.pNext = pNext - result.domainOrigin = domainOrigin - -type VkPipelineTessellationDomainOriginStateCreateInfoKHR* = VkPipelineTessellationDomainOriginStateCreateInfo -type VkSamplerYcbcrConversionInfo* = object - sType*: VkStructureType - pNext*: pointer - conversion*: VkSamplerYcbcrConversion - -proc newVkSamplerYcbcrConversionInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO, pNext: pointer = nil, conversion: VkSamplerYcbcrConversion): VkSamplerYcbcrConversionInfo = - result.sType = sType - result.pNext = pNext - result.conversion = conversion - -type VkSamplerYcbcrConversionInfoKHR* = VkSamplerYcbcrConversionInfo -type VkSamplerYcbcrConversionCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - format*: VkFormat - ycbcrModel*: VkSamplerYcbcrModelConversion - ycbcrRange*: VkSamplerYcbcrRange - components*: VkComponentMapping - xChromaOffset*: VkChromaLocation - yChromaOffset*: VkChromaLocation - chromaFilter*: VkFilter - forceExplicitReconstruction*: VkBool32 - -proc newVkSamplerYcbcrConversionCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO, 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 - -type VkSamplerYcbcrConversionCreateInfoKHR* = VkSamplerYcbcrConversionCreateInfo -type VkBindImagePlaneMemoryInfo* = object - sType*: VkStructureType - pNext*: pointer - planeAspect*: VkImageAspectFlagBits - -proc newVkBindImagePlaneMemoryInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO, pNext: pointer = nil, planeAspect: VkImageAspectFlagBits): VkBindImagePlaneMemoryInfo = - result.sType = sType - result.pNext = pNext - result.planeAspect = planeAspect - -type VkBindImagePlaneMemoryInfoKHR* = VkBindImagePlaneMemoryInfo -type VkImagePlaneMemoryRequirementsInfo* = object - sType*: VkStructureType - pNext*: pointer - planeAspect*: VkImageAspectFlagBits - -proc newVkImagePlaneMemoryRequirementsInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO, pNext: pointer = nil, planeAspect: VkImageAspectFlagBits): VkImagePlaneMemoryRequirementsInfo = - result.sType = sType - result.pNext = pNext - result.planeAspect = planeAspect - -type VkImagePlaneMemoryRequirementsInfoKHR* = VkImagePlaneMemoryRequirementsInfo -type VkPhysicalDeviceSamplerYcbcrConversionFeatures* = object - sType*: VkStructureType - pNext*: pointer - samplerYcbcrConversion*: VkBool32 - -proc newVkPhysicalDeviceSamplerYcbcrConversionFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES, pNext: pointer = nil, samplerYcbcrConversion: VkBool32): VkPhysicalDeviceSamplerYcbcrConversionFeatures = - result.sType = sType - result.pNext = pNext - result.samplerYcbcrConversion = samplerYcbcrConversion - -type VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR* = VkPhysicalDeviceSamplerYcbcrConversionFeatures -type VkSamplerYcbcrConversionImageFormatProperties* = object - sType*: VkStructureType - pNext*: pointer - combinedImageSamplerDescriptorCount*: uint32 - -proc newVkSamplerYcbcrConversionImageFormatProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES, pNext: pointer = nil, combinedImageSamplerDescriptorCount: uint32): VkSamplerYcbcrConversionImageFormatProperties = - result.sType = sType - result.pNext = pNext - result.combinedImageSamplerDescriptorCount = combinedImageSamplerDescriptorCount - -type VkSamplerYcbcrConversionImageFormatPropertiesKHR* = VkSamplerYcbcrConversionImageFormatProperties -type VkTextureLODGatherFormatPropertiesAMD* = object - sType*: VkStructureType - pNext*: pointer - supportsTextureGatherLODBiasAMD*: VkBool32 - -proc newVkTextureLODGatherFormatPropertiesAMD*(sType: VkStructureType = VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD, pNext: pointer = nil, supportsTextureGatherLODBiasAMD: VkBool32): VkTextureLODGatherFormatPropertiesAMD = - result.sType = sType - result.pNext = pNext - result.supportsTextureGatherLODBiasAMD = supportsTextureGatherLODBiasAMD - -type VkConditionalRenderingBeginInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - buffer*: VkBuffer - offset*: VkDeviceSize - flags*: VkConditionalRenderingFlagsEXT - -proc newVkConditionalRenderingBeginInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT, 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 - -type VkProtectedSubmitInfo* = object - sType*: VkStructureType - pNext*: pointer - protectedSubmit*: VkBool32 - -proc newVkProtectedSubmitInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO, pNext: pointer = nil, protectedSubmit: VkBool32): VkProtectedSubmitInfo = - result.sType = sType - result.pNext = pNext - result.protectedSubmit = protectedSubmit - -type VkPhysicalDeviceProtectedMemoryFeatures* = object - sType*: VkStructureType - pNext*: pointer - protectedMemory*: VkBool32 - -proc newVkPhysicalDeviceProtectedMemoryFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES, pNext: pointer = nil, protectedMemory: VkBool32): VkPhysicalDeviceProtectedMemoryFeatures = - result.sType = sType - result.pNext = pNext - result.protectedMemory = protectedMemory - -type VkPhysicalDeviceProtectedMemoryProperties* = object - sType*: VkStructureType - pNext*: pointer - protectedNoFault*: VkBool32 - -proc newVkPhysicalDeviceProtectedMemoryProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES, pNext: pointer = nil, protectedNoFault: VkBool32): VkPhysicalDeviceProtectedMemoryProperties = - result.sType = sType - result.pNext = pNext - result.protectedNoFault = protectedNoFault - -type VkDeviceQueueInfo2* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkDeviceQueueCreateFlags - queueFamilyIndex*: uint32 - queueIndex*: uint32 - -proc newVkDeviceQueueInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2, 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 - -type VkPipelineCoverageToColorStateCreateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkPipelineCoverageToColorStateCreateFlagsNV - coverageToColorEnable*: VkBool32 - coverageToColorLocation*: uint32 - -proc newVkPipelineCoverageToColorStateCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV, 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 - -type VkPhysicalDeviceSamplerFilterMinmaxProperties* = object - sType*: VkStructureType - pNext*: pointer - filterMinmaxSingleComponentFormats*: VkBool32 - filterMinmaxImageComponentMapping*: VkBool32 - -proc newVkPhysicalDeviceSamplerFilterMinmaxProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES, pNext: pointer = nil, filterMinmaxSingleComponentFormats: VkBool32, filterMinmaxImageComponentMapping: VkBool32): VkPhysicalDeviceSamplerFilterMinmaxProperties = - result.sType = sType - result.pNext = pNext - result.filterMinmaxSingleComponentFormats = filterMinmaxSingleComponentFormats - result.filterMinmaxImageComponentMapping = filterMinmaxImageComponentMapping - -type VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT* = VkPhysicalDeviceSamplerFilterMinmaxProperties -type VkSampleLocationEXT* = object - x*: float32 - y*: float32 - -proc newVkSampleLocationEXT*(x: float32, y: float32): VkSampleLocationEXT = - result.x = x - result.y = y - -type VkSampleLocationsInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - sampleLocationsPerPixel*: VkSampleCountFlagBits - sampleLocationGridSize*: VkExtent2D - sampleLocationsCount*: uint32 - pSampleLocations*: ptr VkSampleLocationEXT - -proc newVkSampleLocationsInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT, 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 - -type VkAttachmentSampleLocationsEXT* = object - attachmentIndex*: uint32 - sampleLocationsInfo*: VkSampleLocationsInfoEXT - -proc newVkAttachmentSampleLocationsEXT*(attachmentIndex: uint32, sampleLocationsInfo: VkSampleLocationsInfoEXT): VkAttachmentSampleLocationsEXT = - result.attachmentIndex = attachmentIndex - result.sampleLocationsInfo = sampleLocationsInfo - -type VkSubpassSampleLocationsEXT* = object - subpassIndex*: uint32 - sampleLocationsInfo*: VkSampleLocationsInfoEXT - -proc newVkSubpassSampleLocationsEXT*(subpassIndex: uint32, sampleLocationsInfo: VkSampleLocationsInfoEXT): VkSubpassSampleLocationsEXT = - result.subpassIndex = subpassIndex - result.sampleLocationsInfo = sampleLocationsInfo - -type VkRenderPassSampleLocationsBeginInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - attachmentInitialSampleLocationsCount*: uint32 - pAttachmentInitialSampleLocations*: ptr VkAttachmentSampleLocationsEXT - postSubpassSampleLocationsCount*: uint32 - pPostSubpassSampleLocations*: ptr VkSubpassSampleLocationsEXT - -proc newVkRenderPassSampleLocationsBeginInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT, 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 - -type VkPipelineSampleLocationsStateCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - sampleLocationsEnable*: VkBool32 - sampleLocationsInfo*: VkSampleLocationsInfoEXT - -proc newVkPipelineSampleLocationsStateCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT, pNext: pointer = nil, sampleLocationsEnable: VkBool32, sampleLocationsInfo: VkSampleLocationsInfoEXT): VkPipelineSampleLocationsStateCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.sampleLocationsEnable = sampleLocationsEnable - result.sampleLocationsInfo = sampleLocationsInfo - -type VkPhysicalDeviceSampleLocationsPropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - sampleLocationSampleCounts*: VkSampleCountFlags - maxSampleLocationGridSize*: VkExtent2D - sampleLocationCoordinateRange*: array[2, float32] - sampleLocationSubPixelBits*: uint32 - variableSampleLocations*: VkBool32 - -proc newVkPhysicalDeviceSampleLocationsPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT, 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 - -type VkMultisamplePropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - maxSampleLocationGridSize*: VkExtent2D - -proc newVkMultisamplePropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT, pNext: pointer = nil, maxSampleLocationGridSize: VkExtent2D): VkMultisamplePropertiesEXT = - result.sType = sType - result.pNext = pNext - result.maxSampleLocationGridSize = maxSampleLocationGridSize - -type VkSamplerReductionModeCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - reductionMode*: VkSamplerReductionMode - -proc newVkSamplerReductionModeCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO, pNext: pointer = nil, reductionMode: VkSamplerReductionMode): VkSamplerReductionModeCreateInfo = - result.sType = sType - result.pNext = pNext - result.reductionMode = reductionMode - -type VkSamplerReductionModeCreateInfoEXT* = VkSamplerReductionModeCreateInfo -type VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - advancedBlendCoherentOperations*: VkBool32 - -proc newVkPhysicalDeviceBlendOperationAdvancedFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT, pNext: pointer = nil, advancedBlendCoherentOperations: VkBool32): VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.advancedBlendCoherentOperations = advancedBlendCoherentOperations - -type VkPhysicalDeviceMultiDrawFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - multiDraw*: VkBool32 - -proc newVkPhysicalDeviceMultiDrawFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT, pNext: pointer = nil, multiDraw: VkBool32): VkPhysicalDeviceMultiDrawFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.multiDraw = multiDraw - -type VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - advancedBlendMaxColorAttachments*: uint32 - advancedBlendIndependentBlend*: VkBool32 - advancedBlendNonPremultipliedSrcColor*: VkBool32 - advancedBlendNonPremultipliedDstColor*: VkBool32 - advancedBlendCorrelatedOverlap*: VkBool32 - advancedBlendAllOperations*: VkBool32 - -proc newVkPhysicalDeviceBlendOperationAdvancedPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT, 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 - -type VkPipelineColorBlendAdvancedStateCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - srcPremultiplied*: VkBool32 - dstPremultiplied*: VkBool32 - blendOverlap*: VkBlendOverlapEXT - -proc newVkPipelineColorBlendAdvancedStateCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT, 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 - -type VkPhysicalDeviceInlineUniformBlockFeatures* = object - sType*: VkStructureType - pNext*: pointer - inlineUniformBlock*: VkBool32 - descriptorBindingInlineUniformBlockUpdateAfterBind*: VkBool32 - -proc newVkPhysicalDeviceInlineUniformBlockFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES, pNext: pointer = nil, inlineUniformBlock: VkBool32, descriptorBindingInlineUniformBlockUpdateAfterBind: VkBool32): VkPhysicalDeviceInlineUniformBlockFeatures = - result.sType = sType - result.pNext = pNext - result.inlineUniformBlock = inlineUniformBlock - result.descriptorBindingInlineUniformBlockUpdateAfterBind = descriptorBindingInlineUniformBlockUpdateAfterBind - -type VkPhysicalDeviceInlineUniformBlockFeaturesEXT* = VkPhysicalDeviceInlineUniformBlockFeatures -type VkPhysicalDeviceInlineUniformBlockProperties* = object - sType*: VkStructureType - pNext*: pointer - maxInlineUniformBlockSize*: uint32 - maxPerStageDescriptorInlineUniformBlocks*: uint32 - maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks*: uint32 - maxDescriptorSetInlineUniformBlocks*: uint32 - maxDescriptorSetUpdateAfterBindInlineUniformBlocks*: uint32 - -proc newVkPhysicalDeviceInlineUniformBlockProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES, 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 - -type VkPhysicalDeviceInlineUniformBlockPropertiesEXT* = VkPhysicalDeviceInlineUniformBlockProperties -type VkWriteDescriptorSetInlineUniformBlock* = object - sType*: VkStructureType - pNext*: pointer - dataSize*: uint32 - pData*: pointer - -proc newVkWriteDescriptorSetInlineUniformBlock*(sType: VkStructureType = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK, pNext: pointer = nil, dataSize: uint32, pData: pointer = nil): VkWriteDescriptorSetInlineUniformBlock = - result.sType = sType - result.pNext = pNext - result.dataSize = dataSize - result.pData = pData - -type VkWriteDescriptorSetInlineUniformBlockEXT* = VkWriteDescriptorSetInlineUniformBlock -type VkDescriptorPoolInlineUniformBlockCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - maxInlineUniformBlockBindings*: uint32 - -proc newVkDescriptorPoolInlineUniformBlockCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO, pNext: pointer = nil, maxInlineUniformBlockBindings: uint32): VkDescriptorPoolInlineUniformBlockCreateInfo = - result.sType = sType - result.pNext = pNext - result.maxInlineUniformBlockBindings = maxInlineUniformBlockBindings - -type VkDescriptorPoolInlineUniformBlockCreateInfoEXT* = VkDescriptorPoolInlineUniformBlockCreateInfo -type VkPipelineCoverageModulationStateCreateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkPipelineCoverageModulationStateCreateFlagsNV - coverageModulationMode*: VkCoverageModulationModeNV - coverageModulationTableEnable*: VkBool32 - coverageModulationTableCount*: uint32 - pCoverageModulationTable*: ptr float32 - -proc newVkPipelineCoverageModulationStateCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV, 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 - -type VkImageFormatListCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - viewFormatCount*: uint32 - pViewFormats*: ptr VkFormat - -proc newVkImageFormatListCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO, pNext: pointer = nil, viewFormatCount: uint32, pViewFormats: ptr VkFormat): VkImageFormatListCreateInfo = - result.sType = sType - result.pNext = pNext - result.viewFormatCount = viewFormatCount - result.pViewFormats = pViewFormats - -type VkImageFormatListCreateInfoKHR* = VkImageFormatListCreateInfo -type VkValidationCacheCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkValidationCacheCreateFlagsEXT - initialDataSize*: uint - pInitialData*: pointer - -proc newVkValidationCacheCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT, 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 - -type VkShaderModuleValidationCacheCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - validationCache*: VkValidationCacheEXT - -proc newVkShaderModuleValidationCacheCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT, pNext: pointer = nil, validationCache: VkValidationCacheEXT): VkShaderModuleValidationCacheCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.validationCache = validationCache - -type VkPhysicalDeviceMaintenance3Properties* = object - sType*: VkStructureType - pNext*: pointer - maxPerSetDescriptors*: uint32 - maxMemoryAllocationSize*: VkDeviceSize - -proc newVkPhysicalDeviceMaintenance3Properties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES, pNext: pointer = nil, maxPerSetDescriptors: uint32, maxMemoryAllocationSize: VkDeviceSize): VkPhysicalDeviceMaintenance3Properties = - result.sType = sType - result.pNext = pNext - result.maxPerSetDescriptors = maxPerSetDescriptors - result.maxMemoryAllocationSize = maxMemoryAllocationSize - -type VkPhysicalDeviceMaintenance3PropertiesKHR* = VkPhysicalDeviceMaintenance3Properties -type VkPhysicalDeviceMaintenance4Features* = object - sType*: VkStructureType - pNext*: pointer - maintenance4*: VkBool32 - -proc newVkPhysicalDeviceMaintenance4Features*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES, pNext: pointer = nil, maintenance4: VkBool32): VkPhysicalDeviceMaintenance4Features = - result.sType = sType - result.pNext = pNext - result.maintenance4 = maintenance4 - -type VkPhysicalDeviceMaintenance4FeaturesKHR* = VkPhysicalDeviceMaintenance4Features -type VkPhysicalDeviceMaintenance4Properties* = object - sType*: VkStructureType - pNext*: pointer - maxBufferSize*: VkDeviceSize - -proc newVkPhysicalDeviceMaintenance4Properties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES, pNext: pointer = nil, maxBufferSize: VkDeviceSize): VkPhysicalDeviceMaintenance4Properties = - result.sType = sType - result.pNext = pNext - result.maxBufferSize = maxBufferSize - -type VkPhysicalDeviceMaintenance4PropertiesKHR* = VkPhysicalDeviceMaintenance4Properties -type VkDescriptorSetLayoutSupport* = object - sType*: VkStructureType - pNext*: pointer - supported*: VkBool32 - -proc newVkDescriptorSetLayoutSupport*(sType: VkStructureType = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT, pNext: pointer = nil, supported: VkBool32): VkDescriptorSetLayoutSupport = - result.sType = sType - result.pNext = pNext - result.supported = supported - -type VkDescriptorSetLayoutSupportKHR* = VkDescriptorSetLayoutSupport -type VkPhysicalDeviceShaderDrawParametersFeatures* = object - sType*: VkStructureType - pNext*: pointer - shaderDrawParameters*: VkBool32 - -proc newVkPhysicalDeviceShaderDrawParametersFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES, pNext: pointer = nil, shaderDrawParameters: VkBool32): VkPhysicalDeviceShaderDrawParametersFeatures = - result.sType = sType - result.pNext = pNext - result.shaderDrawParameters = shaderDrawParameters - -type VkPhysicalDeviceShaderDrawParameterFeatures* = VkPhysicalDeviceShaderDrawParametersFeatures -type VkPhysicalDeviceShaderFloat16Int8Features* = object - sType*: VkStructureType - pNext*: pointer - shaderFloat16*: VkBool32 - shaderInt8*: VkBool32 - -proc newVkPhysicalDeviceShaderFloat16Int8Features*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES, pNext: pointer = nil, shaderFloat16: VkBool32, shaderInt8: VkBool32): VkPhysicalDeviceShaderFloat16Int8Features = - result.sType = sType - result.pNext = pNext - result.shaderFloat16 = shaderFloat16 - result.shaderInt8 = shaderInt8 - -type VkPhysicalDeviceShaderFloat16Int8FeaturesKHR* = VkPhysicalDeviceShaderFloat16Int8Features -type VkPhysicalDeviceFloat16Int8FeaturesKHR* = VkPhysicalDeviceShaderFloat16Int8Features -type VkPhysicalDeviceFloatControlsProperties* = object - sType*: VkStructureType - pNext*: pointer - 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 - -proc newVkPhysicalDeviceFloatControlsProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES, 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 - -type VkPhysicalDeviceFloatControlsPropertiesKHR* = VkPhysicalDeviceFloatControlsProperties -type VkPhysicalDeviceHostQueryResetFeatures* = object - sType*: VkStructureType - pNext*: pointer - hostQueryReset*: VkBool32 - -proc newVkPhysicalDeviceHostQueryResetFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES, pNext: pointer = nil, hostQueryReset: VkBool32): VkPhysicalDeviceHostQueryResetFeatures = - result.sType = sType - result.pNext = pNext - result.hostQueryReset = hostQueryReset - -type VkPhysicalDeviceHostQueryResetFeaturesEXT* = VkPhysicalDeviceHostQueryResetFeatures -type VkNativeBufferUsage2ANDROID* = object - consumer*: uint64 - producer*: uint64 - -proc newVkNativeBufferUsage2ANDROID*(consumer: uint64, producer: uint64): VkNativeBufferUsage2ANDROID = - result.consumer = consumer - result.producer = producer - -type VkNativeBufferANDROID* = object - sType*: VkStructureType - pNext*: pointer - handle*: pointer - stride*: int - format*: int - usage*: int - usage2*: VkNativeBufferUsage2ANDROID - -proc newVkNativeBufferANDROID*(sType: VkStructureType = VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID, 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 - -type VkSwapchainImageCreateInfoANDROID* = object - sType*: VkStructureType - pNext*: pointer - usage*: VkSwapchainImageUsageFlagsANDROID - -proc newVkSwapchainImageCreateInfoANDROID*(sType: VkStructureType = VK_STRUCTURE_TYPE_SWAPCHAIN_IMAGE_CREATE_INFO_ANDROID, pNext: pointer = nil, usage: VkSwapchainImageUsageFlagsANDROID): VkSwapchainImageCreateInfoANDROID = - result.sType = sType - result.pNext = pNext - result.usage = usage - -type VkPhysicalDevicePresentationPropertiesANDROID* = object - sType*: VkStructureType - pNext*: pointer - sharedImage*: VkBool32 - -proc newVkPhysicalDevicePresentationPropertiesANDROID*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENTATION_PROPERTIES_ANDROID, pNext: pointer = nil, sharedImage: VkBool32): VkPhysicalDevicePresentationPropertiesANDROID = - result.sType = sType - result.pNext = pNext - result.sharedImage = sharedImage - -type VkShaderResourceUsageAMD* = object - numUsedVgprs*: uint32 - numUsedSgprs*: uint32 - ldsSizePerLocalWorkGroup*: uint32 - ldsUsageSizeInBytes*: uint - scratchMemUsageInBytes*: uint - -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 - -type VkShaderStatisticsInfoAMD* = object - shaderStageMask*: VkShaderStageFlags - resourceUsage*: VkShaderResourceUsageAMD - numPhysicalVgprs*: uint32 - numPhysicalSgprs*: uint32 - numAvailableVgprs*: uint32 - numAvailableSgprs*: uint32 - computeWorkGroupSize*: array[3, uint32] - -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 - -type VkDeviceQueueGlobalPriorityCreateInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - globalPriority*: VkQueueGlobalPriorityKHR - -proc newVkDeviceQueueGlobalPriorityCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR, pNext: pointer = nil, globalPriority: VkQueueGlobalPriorityKHR): VkDeviceQueueGlobalPriorityCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.globalPriority = globalPriority - -type VkDeviceQueueGlobalPriorityCreateInfoEXT* = VkDeviceQueueGlobalPriorityCreateInfoKHR -type VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR* = object - sType*: VkStructureType - pNext*: pointer - globalPriorityQuery*: VkBool32 - -proc newVkPhysicalDeviceGlobalPriorityQueryFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR, pNext: pointer = nil, globalPriorityQuery: VkBool32): VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.globalPriorityQuery = globalPriorityQuery - -type VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT* = VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR -type VkQueueFamilyGlobalPriorityPropertiesKHR* = object - sType*: VkStructureType - pNext*: pointer - priorityCount*: uint32 - priorities*: array[VK_MAX_GLOBAL_PRIORITY_SIZE_KHR, VkQueueGlobalPriorityKHR] - -proc newVkQueueFamilyGlobalPriorityPropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR, 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 - -type VkQueueFamilyGlobalPriorityPropertiesEXT* = VkQueueFamilyGlobalPriorityPropertiesKHR -type VkDebugUtilsObjectNameInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - objectType*: VkObjectType - objectHandle*: uint64 - pObjectName*: cstring - -proc newVkDebugUtilsObjectNameInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT, 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 - -type VkDebugUtilsObjectTagInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - objectType*: VkObjectType - objectHandle*: uint64 - tagName*: uint64 - tagSize*: uint - pTag*: pointer - -proc newVkDebugUtilsObjectTagInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT, 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 - -type VkDebugUtilsLabelEXT* = object - sType*: VkStructureType - pNext*: pointer - pLabelName*: cstring - color*: array[4, float32] - -proc newVkDebugUtilsLabelEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT, pNext: pointer = nil, pLabelName: cstring, color: array[4, float32]): VkDebugUtilsLabelEXT = - result.sType = sType - result.pNext = pNext - result.pLabelName = pLabelName - result.color = color - -type VkDebugUtilsMessengerCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkDebugUtilsMessengerCreateFlagsEXT - messageSeverity*: VkDebugUtilsMessageSeverityFlagsEXT - messageType*: VkDebugUtilsMessageTypeFlagsEXT - pfnUserCallback*: PFN_vkDebugUtilsMessengerCallbackEXT - pUserData*: pointer - -proc newVkDebugUtilsMessengerCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT, 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 - -type VkDebugUtilsMessengerCallbackDataEXT* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkDebugUtilsMessengerCallbackDataFlagsEXT - pMessageIdName*: cstring - messageIdNumber*: int32 - pMessage*: cstring - queueLabelCount*: uint32 - pQueueLabels*: ptr VkDebugUtilsLabelEXT - cmdBufLabelCount*: uint32 - pCmdBufLabels*: ptr VkDebugUtilsLabelEXT - objectCount*: uint32 - pObjects*: ptr VkDebugUtilsObjectNameInfoEXT - -proc newVkDebugUtilsMessengerCallbackDataEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT, 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 - -type VkPhysicalDeviceDeviceMemoryReportFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - deviceMemoryReport*: VkBool32 - -proc newVkPhysicalDeviceDeviceMemoryReportFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT, pNext: pointer = nil, deviceMemoryReport: VkBool32): VkPhysicalDeviceDeviceMemoryReportFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.deviceMemoryReport = deviceMemoryReport - -type VkDeviceDeviceMemoryReportCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkDeviceMemoryReportFlagsEXT - pfnUserCallback*: PFN_vkDeviceMemoryReportCallbackEXT - pUserData*: pointer - -proc newVkDeviceDeviceMemoryReportCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT, 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 - -type VkDeviceMemoryReportCallbackDataEXT* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkDeviceMemoryReportFlagsEXT - `type`*: VkDeviceMemoryReportEventTypeEXT - memoryObjectId*: uint64 - size*: VkDeviceSize - objectType*: VkObjectType - objectHandle*: uint64 - heapIndex*: uint32 - -proc newVkDeviceMemoryReportCallbackDataEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_MEMORY_REPORT_CALLBACK_DATA_EXT, 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 - -type VkImportMemoryHostPointerInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - handleType*: VkExternalMemoryHandleTypeFlagBits - pHostPointer*: pointer - -proc newVkImportMemoryHostPointerInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, pHostPointer: pointer = nil): VkImportMemoryHostPointerInfoEXT = - result.sType = sType - result.pNext = pNext - result.handleType = handleType - result.pHostPointer = pHostPointer - -type VkMemoryHostPointerPropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - memoryTypeBits*: uint32 - -proc newVkMemoryHostPointerPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryHostPointerPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.memoryTypeBits = memoryTypeBits - -type VkPhysicalDeviceExternalMemoryHostPropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - minImportedHostPointerAlignment*: VkDeviceSize - -proc newVkPhysicalDeviceExternalMemoryHostPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT, pNext: pointer = nil, minImportedHostPointerAlignment: VkDeviceSize): VkPhysicalDeviceExternalMemoryHostPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.minImportedHostPointerAlignment = minImportedHostPointerAlignment - -type VkPhysicalDeviceConservativeRasterizationPropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - primitiveOverestimationSize*: float32 - maxExtraPrimitiveOverestimationSize*: float32 - extraPrimitiveOverestimationSizeGranularity*: float32 - primitiveUnderestimation*: VkBool32 - conservativePointAndLineRasterization*: VkBool32 - degenerateTrianglesRasterized*: VkBool32 - degenerateLinesRasterized*: VkBool32 - fullyCoveredFragmentShaderInputVariable*: VkBool32 - conservativeRasterizationPostDepthCoverage*: VkBool32 - -proc newVkPhysicalDeviceConservativeRasterizationPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT, 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 - -type VkCalibratedTimestampInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - timeDomain*: VkTimeDomainEXT - -proc newVkCalibratedTimestampInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT, pNext: pointer = nil, timeDomain: VkTimeDomainEXT): VkCalibratedTimestampInfoEXT = - result.sType = sType - result.pNext = pNext - result.timeDomain = timeDomain - -type VkPhysicalDeviceShaderCorePropertiesAMD* = object - sType*: VkStructureType - pNext*: pointer - 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 - -proc newVkPhysicalDeviceShaderCorePropertiesAMD*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD, 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 - -type VkPhysicalDeviceShaderCoreProperties2AMD* = object - sType*: VkStructureType - pNext*: pointer - shaderCoreFeatures*: VkShaderCorePropertiesFlagsAMD - activeComputeUnitCount*: uint32 - -proc newVkPhysicalDeviceShaderCoreProperties2AMD*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD, pNext: pointer = nil, shaderCoreFeatures: VkShaderCorePropertiesFlagsAMD, activeComputeUnitCount: uint32): VkPhysicalDeviceShaderCoreProperties2AMD = - result.sType = sType - result.pNext = pNext - result.shaderCoreFeatures = shaderCoreFeatures - result.activeComputeUnitCount = activeComputeUnitCount - -type VkPipelineRasterizationConservativeStateCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkPipelineRasterizationConservativeStateCreateFlagsEXT - conservativeRasterizationMode*: VkConservativeRasterizationModeEXT - extraPrimitiveOverestimationSize*: float32 - -proc newVkPipelineRasterizationConservativeStateCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT, 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 - -type VkPhysicalDeviceDescriptorIndexingFeatures* = object - sType*: VkStructureType - pNext*: pointer - 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 - -proc newVkPhysicalDeviceDescriptorIndexingFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES, 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 - -type VkPhysicalDeviceDescriptorIndexingFeaturesEXT* = VkPhysicalDeviceDescriptorIndexingFeatures -type VkPhysicalDeviceDescriptorIndexingProperties* = object - sType*: VkStructureType - pNext*: pointer - 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 - -proc newVkPhysicalDeviceDescriptorIndexingProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES, 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 - -type VkPhysicalDeviceDescriptorIndexingPropertiesEXT* = VkPhysicalDeviceDescriptorIndexingProperties -type VkDescriptorSetLayoutBindingFlagsCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - bindingCount*: uint32 - pBindingFlags*: ptr VkDescriptorBindingFlags - -proc newVkDescriptorSetLayoutBindingFlagsCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO, pNext: pointer = nil, bindingCount: uint32, pBindingFlags: ptr VkDescriptorBindingFlags): VkDescriptorSetLayoutBindingFlagsCreateInfo = - result.sType = sType - result.pNext = pNext - result.bindingCount = bindingCount - result.pBindingFlags = pBindingFlags - -type VkDescriptorSetLayoutBindingFlagsCreateInfoEXT* = VkDescriptorSetLayoutBindingFlagsCreateInfo -type VkDescriptorSetVariableDescriptorCountAllocateInfo* = object - sType*: VkStructureType - pNext*: pointer - descriptorSetCount*: uint32 - pDescriptorCounts*: ptr uint32 - -proc newVkDescriptorSetVariableDescriptorCountAllocateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO, pNext: pointer = nil, descriptorSetCount: uint32, pDescriptorCounts: ptr uint32): VkDescriptorSetVariableDescriptorCountAllocateInfo = - result.sType = sType - result.pNext = pNext - result.descriptorSetCount = descriptorSetCount - result.pDescriptorCounts = pDescriptorCounts - -type VkDescriptorSetVariableDescriptorCountAllocateInfoEXT* = VkDescriptorSetVariableDescriptorCountAllocateInfo -type VkDescriptorSetVariableDescriptorCountLayoutSupport* = object - sType*: VkStructureType - pNext*: pointer - maxVariableDescriptorCount*: uint32 - -proc newVkDescriptorSetVariableDescriptorCountLayoutSupport*(sType: VkStructureType = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT, pNext: pointer = nil, maxVariableDescriptorCount: uint32): VkDescriptorSetVariableDescriptorCountLayoutSupport = - result.sType = sType - result.pNext = pNext - result.maxVariableDescriptorCount = maxVariableDescriptorCount - -type VkDescriptorSetVariableDescriptorCountLayoutSupportEXT* = VkDescriptorSetVariableDescriptorCountLayoutSupport -type VkAttachmentDescription2* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkAttachmentDescriptionFlags - format*: VkFormat - samples*: VkSampleCountFlagBits - loadOp*: VkAttachmentLoadOp - storeOp*: VkAttachmentStoreOp - stencilLoadOp*: VkAttachmentLoadOp - stencilStoreOp*: VkAttachmentStoreOp - initialLayout*: VkImageLayout - finalLayout*: VkImageLayout - -proc newVkAttachmentDescription2*(sType: VkStructureType = VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2, 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 - -type VkAttachmentDescription2KHR* = VkAttachmentDescription2 -type VkAttachmentReference2* = object - sType*: VkStructureType - pNext*: pointer - attachment*: uint32 - layout*: VkImageLayout - aspectMask*: VkImageAspectFlags - -proc newVkAttachmentReference2*(sType: VkStructureType = VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2, 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 - -type VkAttachmentReference2KHR* = VkAttachmentReference2 -type VkSubpassDescription2* = object - sType*: VkStructureType - pNext*: pointer - flags*: 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 - -proc newVkSubpassDescription2*(sType: VkStructureType = VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2, 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 - -type VkSubpassDescription2KHR* = VkSubpassDescription2 -type VkSubpassDependency2* = object - sType*: VkStructureType - pNext*: pointer - srcSubpass*: uint32 - dstSubpass*: uint32 - srcStageMask*: VkPipelineStageFlags - dstStageMask*: VkPipelineStageFlags - srcAccessMask*: VkAccessFlags - dstAccessMask*: VkAccessFlags - dependencyFlags*: VkDependencyFlags - viewOffset*: int32 - -proc newVkSubpassDependency2*(sType: VkStructureType = VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2, 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 - -type VkSubpassDependency2KHR* = VkSubpassDependency2 -type VkRenderPassCreateInfo2* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkRenderPassCreateFlags - attachmentCount*: uint32 - pAttachments*: ptr VkAttachmentDescription2 - subpassCount*: uint32 - pSubpasses*: ptr VkSubpassDescription2 - dependencyCount*: uint32 - pDependencies*: ptr VkSubpassDependency2 - correlatedViewMaskCount*: uint32 - pCorrelatedViewMasks*: ptr uint32 - -proc newVkRenderPassCreateInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2, 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 - -type VkRenderPassCreateInfo2KHR* = VkRenderPassCreateInfo2 -type VkSubpassBeginInfo* = object - sType*: VkStructureType - pNext*: pointer - contents*: VkSubpassContents - -proc newVkSubpassBeginInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO, pNext: pointer = nil, contents: VkSubpassContents): VkSubpassBeginInfo = - result.sType = sType - result.pNext = pNext - result.contents = contents - -type VkSubpassBeginInfoKHR* = VkSubpassBeginInfo -type VkSubpassEndInfo* = object - sType*: VkStructureType - pNext*: pointer - -proc newVkSubpassEndInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_SUBPASS_END_INFO, pNext: pointer = nil): VkSubpassEndInfo = - result.sType = sType - result.pNext = pNext - -type VkSubpassEndInfoKHR* = VkSubpassEndInfo -type VkPhysicalDeviceTimelineSemaphoreFeatures* = object - sType*: VkStructureType - pNext*: pointer - timelineSemaphore*: VkBool32 - -proc newVkPhysicalDeviceTimelineSemaphoreFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES, pNext: pointer = nil, timelineSemaphore: VkBool32): VkPhysicalDeviceTimelineSemaphoreFeatures = - result.sType = sType - result.pNext = pNext - result.timelineSemaphore = timelineSemaphore - -type VkPhysicalDeviceTimelineSemaphoreFeaturesKHR* = VkPhysicalDeviceTimelineSemaphoreFeatures -type VkPhysicalDeviceTimelineSemaphoreProperties* = object - sType*: VkStructureType - pNext*: pointer - maxTimelineSemaphoreValueDifference*: uint64 - -proc newVkPhysicalDeviceTimelineSemaphoreProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES, pNext: pointer = nil, maxTimelineSemaphoreValueDifference: uint64): VkPhysicalDeviceTimelineSemaphoreProperties = - result.sType = sType - result.pNext = pNext - result.maxTimelineSemaphoreValueDifference = maxTimelineSemaphoreValueDifference - -type VkPhysicalDeviceTimelineSemaphorePropertiesKHR* = VkPhysicalDeviceTimelineSemaphoreProperties -type VkSemaphoreTypeCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - semaphoreType*: VkSemaphoreType - initialValue*: uint64 - -proc newVkSemaphoreTypeCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO, pNext: pointer = nil, semaphoreType: VkSemaphoreType, initialValue: uint64): VkSemaphoreTypeCreateInfo = - result.sType = sType - result.pNext = pNext - result.semaphoreType = semaphoreType - result.initialValue = initialValue - -type VkSemaphoreTypeCreateInfoKHR* = VkSemaphoreTypeCreateInfo -type VkTimelineSemaphoreSubmitInfo* = object - sType*: VkStructureType - pNext*: pointer - waitSemaphoreValueCount*: uint32 - pWaitSemaphoreValues*: ptr uint64 - signalSemaphoreValueCount*: uint32 - pSignalSemaphoreValues*: ptr uint64 - -proc newVkTimelineSemaphoreSubmitInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO, 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 - -type VkTimelineSemaphoreSubmitInfoKHR* = VkTimelineSemaphoreSubmitInfo -type VkSemaphoreWaitInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkSemaphoreWaitFlags - semaphoreCount*: uint32 - pSemaphores*: ptr VkSemaphore - pValues*: ptr uint64 - -proc newVkSemaphoreWaitInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO, 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 - -type VkSemaphoreWaitInfoKHR* = VkSemaphoreWaitInfo -type VkSemaphoreSignalInfo* = object - sType*: VkStructureType - pNext*: pointer - semaphore*: VkSemaphore - value*: uint64 - -proc newVkSemaphoreSignalInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO, pNext: pointer = nil, semaphore: VkSemaphore, value: uint64): VkSemaphoreSignalInfo = - result.sType = sType - result.pNext = pNext - result.semaphore = semaphore - result.value = value - -type VkSemaphoreSignalInfoKHR* = VkSemaphoreSignalInfo -type VkVertexInputBindingDivisorDescriptionEXT* = object - binding*: uint32 - divisor*: uint32 - -proc newVkVertexInputBindingDivisorDescriptionEXT*(binding: uint32, divisor: uint32): VkVertexInputBindingDivisorDescriptionEXT = - result.binding = binding - result.divisor = divisor - -type VkPipelineVertexInputDivisorStateCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - vertexBindingDivisorCount*: uint32 - pVertexBindingDivisors*: ptr VkVertexInputBindingDivisorDescriptionEXT - -proc newVkPipelineVertexInputDivisorStateCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT, pNext: pointer = nil, vertexBindingDivisorCount: uint32, pVertexBindingDivisors: ptr VkVertexInputBindingDivisorDescriptionEXT): VkPipelineVertexInputDivisorStateCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.vertexBindingDivisorCount = vertexBindingDivisorCount - result.pVertexBindingDivisors = pVertexBindingDivisors - -type VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - maxVertexAttribDivisor*: uint32 - -proc newVkPhysicalDeviceVertexAttributeDivisorPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT, pNext: pointer = nil, maxVertexAttribDivisor: uint32): VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.maxVertexAttribDivisor = maxVertexAttribDivisor - -type VkPhysicalDevicePCIBusInfoPropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - pciDomain*: uint32 - pciBus*: uint32 - pciDevice*: uint32 - pciFunction*: uint32 - -proc newVkPhysicalDevicePCIBusInfoPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT, 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 - -type VkImportAndroidHardwareBufferInfoANDROID* = object - sType*: VkStructureType - pNext*: pointer - buffer*: ptr AHardwareBuffer - -proc newVkImportAndroidHardwareBufferInfoANDROID*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID, pNext: pointer = nil, buffer: ptr AHardwareBuffer): VkImportAndroidHardwareBufferInfoANDROID = - result.sType = sType - result.pNext = pNext - result.buffer = buffer - -type VkAndroidHardwareBufferUsageANDROID* = object - sType*: VkStructureType - pNext*: pointer - androidHardwareBufferUsage*: uint64 - -proc newVkAndroidHardwareBufferUsageANDROID*(sType: VkStructureType = VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID, pNext: pointer = nil, androidHardwareBufferUsage: uint64): VkAndroidHardwareBufferUsageANDROID = - result.sType = sType - result.pNext = pNext - result.androidHardwareBufferUsage = androidHardwareBufferUsage - -type VkAndroidHardwareBufferPropertiesANDROID* = object - sType*: VkStructureType - pNext*: pointer - allocationSize*: VkDeviceSize - memoryTypeBits*: uint32 - -proc newVkAndroidHardwareBufferPropertiesANDROID*(sType: VkStructureType = VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID, pNext: pointer = nil, allocationSize: VkDeviceSize, memoryTypeBits: uint32): VkAndroidHardwareBufferPropertiesANDROID = - result.sType = sType - result.pNext = pNext - result.allocationSize = allocationSize - result.memoryTypeBits = memoryTypeBits - -type VkMemoryGetAndroidHardwareBufferInfoANDROID* = object - sType*: VkStructureType - pNext*: pointer - memory*: VkDeviceMemory - -proc newVkMemoryGetAndroidHardwareBufferInfoANDROID*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID, pNext: pointer = nil, memory: VkDeviceMemory): VkMemoryGetAndroidHardwareBufferInfoANDROID = - result.sType = sType - result.pNext = pNext - result.memory = memory - -type VkAndroidHardwareBufferFormatPropertiesANDROID* = object - sType*: VkStructureType - pNext*: pointer - format*: VkFormat - externalFormat*: uint64 - formatFeatures*: VkFormatFeatureFlags - samplerYcbcrConversionComponents*: VkComponentMapping - suggestedYcbcrModel*: VkSamplerYcbcrModelConversion - suggestedYcbcrRange*: VkSamplerYcbcrRange - suggestedXChromaOffset*: VkChromaLocation - suggestedYChromaOffset*: VkChromaLocation - -proc newVkAndroidHardwareBufferFormatPropertiesANDROID*(sType: VkStructureType = VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID, 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 - -type VkCommandBufferInheritanceConditionalRenderingInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - conditionalRenderingEnable*: VkBool32 - -proc newVkCommandBufferInheritanceConditionalRenderingInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT, pNext: pointer = nil, conditionalRenderingEnable: VkBool32): VkCommandBufferInheritanceConditionalRenderingInfoEXT = - result.sType = sType - result.pNext = pNext - result.conditionalRenderingEnable = conditionalRenderingEnable - -type VkExternalFormatANDROID* = object - sType*: VkStructureType - pNext*: pointer - externalFormat*: uint64 - -proc newVkExternalFormatANDROID*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID, pNext: pointer = nil, externalFormat: uint64): VkExternalFormatANDROID = - result.sType = sType - result.pNext = pNext - result.externalFormat = externalFormat - -type VkPhysicalDevice8BitStorageFeatures* = object - sType*: VkStructureType - pNext*: pointer - storageBuffer8BitAccess*: VkBool32 - uniformAndStorageBuffer8BitAccess*: VkBool32 - storagePushConstant8*: VkBool32 - -proc newVkPhysicalDevice8BitStorageFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES, 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 - -type VkPhysicalDevice8BitStorageFeaturesKHR* = VkPhysicalDevice8BitStorageFeatures -type VkPhysicalDeviceConditionalRenderingFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - conditionalRendering*: VkBool32 - inheritedConditionalRendering*: VkBool32 - -proc newVkPhysicalDeviceConditionalRenderingFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT, pNext: pointer = nil, conditionalRendering: VkBool32, inheritedConditionalRendering: VkBool32): VkPhysicalDeviceConditionalRenderingFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.conditionalRendering = conditionalRendering - result.inheritedConditionalRendering = inheritedConditionalRendering - -type VkPhysicalDeviceVulkanMemoryModelFeatures* = object - sType*: VkStructureType - pNext*: pointer - vulkanMemoryModel*: VkBool32 - vulkanMemoryModelDeviceScope*: VkBool32 - vulkanMemoryModelAvailabilityVisibilityChains*: VkBool32 - -proc newVkPhysicalDeviceVulkanMemoryModelFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES, 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 - -type VkPhysicalDeviceVulkanMemoryModelFeaturesKHR* = VkPhysicalDeviceVulkanMemoryModelFeatures -type VkPhysicalDeviceShaderAtomicInt64Features* = object - sType*: VkStructureType - pNext*: pointer - shaderBufferInt64Atomics*: VkBool32 - shaderSharedInt64Atomics*: VkBool32 - -proc newVkPhysicalDeviceShaderAtomicInt64Features*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES, pNext: pointer = nil, shaderBufferInt64Atomics: VkBool32, shaderSharedInt64Atomics: VkBool32): VkPhysicalDeviceShaderAtomicInt64Features = - result.sType = sType - result.pNext = pNext - result.shaderBufferInt64Atomics = shaderBufferInt64Atomics - result.shaderSharedInt64Atomics = shaderSharedInt64Atomics - -type VkPhysicalDeviceShaderAtomicInt64FeaturesKHR* = VkPhysicalDeviceShaderAtomicInt64Features -type VkPhysicalDeviceShaderAtomicFloatFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - shaderBufferFloat32Atomics*: VkBool32 - shaderBufferFloat32AtomicAdd*: VkBool32 - shaderBufferFloat64Atomics*: VkBool32 - shaderBufferFloat64AtomicAdd*: VkBool32 - shaderSharedFloat32Atomics*: VkBool32 - shaderSharedFloat32AtomicAdd*: VkBool32 - shaderSharedFloat64Atomics*: VkBool32 - shaderSharedFloat64AtomicAdd*: VkBool32 - shaderImageFloat32Atomics*: VkBool32 - shaderImageFloat32AtomicAdd*: VkBool32 - sparseImageFloat32Atomics*: VkBool32 - sparseImageFloat32AtomicAdd*: VkBool32 - -proc newVkPhysicalDeviceShaderAtomicFloatFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT, 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 - -type 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 - -proc newVkPhysicalDeviceShaderAtomicFloat2FeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT, 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 - -type VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - vertexAttributeInstanceRateDivisor*: VkBool32 - vertexAttributeInstanceRateZeroDivisor*: VkBool32 - -proc newVkPhysicalDeviceVertexAttributeDivisorFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT, pNext: pointer = nil, vertexAttributeInstanceRateDivisor: VkBool32, vertexAttributeInstanceRateZeroDivisor: VkBool32): VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.vertexAttributeInstanceRateDivisor = vertexAttributeInstanceRateDivisor - result.vertexAttributeInstanceRateZeroDivisor = vertexAttributeInstanceRateZeroDivisor - -type VkQueueFamilyCheckpointPropertiesNV* = object - sType*: VkStructureType - pNext*: pointer - checkpointExecutionStageMask*: VkPipelineStageFlags - -proc newVkQueueFamilyCheckpointPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV, pNext: pointer = nil, checkpointExecutionStageMask: VkPipelineStageFlags): VkQueueFamilyCheckpointPropertiesNV = - result.sType = sType - result.pNext = pNext - result.checkpointExecutionStageMask = checkpointExecutionStageMask - -type VkCheckpointDataNV* = object - sType*: VkStructureType - pNext*: pointer - stage*: VkPipelineStageFlagBits - pCheckpointMarker*: pointer - -proc newVkCheckpointDataNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV, pNext: pointer = nil, stage: VkPipelineStageFlagBits, pCheckpointMarker: pointer = nil): VkCheckpointDataNV = - result.sType = sType - result.pNext = pNext - result.stage = stage - result.pCheckpointMarker = pCheckpointMarker - -type VkPhysicalDeviceDepthStencilResolveProperties* = object - sType*: VkStructureType - pNext*: pointer - supportedDepthResolveModes*: VkResolveModeFlags - supportedStencilResolveModes*: VkResolveModeFlags - independentResolveNone*: VkBool32 - independentResolve*: VkBool32 - -proc newVkPhysicalDeviceDepthStencilResolveProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES, 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 - -type VkPhysicalDeviceDepthStencilResolvePropertiesKHR* = VkPhysicalDeviceDepthStencilResolveProperties -type VkSubpassDescriptionDepthStencilResolve* = object - sType*: VkStructureType - pNext*: pointer - depthResolveMode*: VkResolveModeFlagBits - stencilResolveMode*: VkResolveModeFlagBits - pDepthStencilResolveAttachment*: ptr VkAttachmentReference2 - -proc newVkSubpassDescriptionDepthStencilResolve*(sType: VkStructureType = VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE, 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 - -type VkSubpassDescriptionDepthStencilResolveKHR* = VkSubpassDescriptionDepthStencilResolve -type VkImageViewASTCDecodeModeEXT* = object - sType*: VkStructureType - pNext*: pointer - decodeMode*: VkFormat - -proc newVkImageViewASTCDecodeModeEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT, pNext: pointer = nil, decodeMode: VkFormat): VkImageViewASTCDecodeModeEXT = - result.sType = sType - result.pNext = pNext - result.decodeMode = decodeMode - -type VkPhysicalDeviceASTCDecodeFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - decodeModeSharedExponent*: VkBool32 - -proc newVkPhysicalDeviceASTCDecodeFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT, pNext: pointer = nil, decodeModeSharedExponent: VkBool32): VkPhysicalDeviceASTCDecodeFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.decodeModeSharedExponent = decodeModeSharedExponent - -type VkPhysicalDeviceTransformFeedbackFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - transformFeedback*: VkBool32 - geometryStreams*: VkBool32 - -proc newVkPhysicalDeviceTransformFeedbackFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT, pNext: pointer = nil, transformFeedback: VkBool32, geometryStreams: VkBool32): VkPhysicalDeviceTransformFeedbackFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.transformFeedback = transformFeedback - result.geometryStreams = geometryStreams - -type VkPhysicalDeviceTransformFeedbackPropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - maxTransformFeedbackStreams*: uint32 - maxTransformFeedbackBuffers*: uint32 - maxTransformFeedbackBufferSize*: VkDeviceSize - maxTransformFeedbackStreamDataSize*: uint32 - maxTransformFeedbackBufferDataSize*: uint32 - maxTransformFeedbackBufferDataStride*: uint32 - transformFeedbackQueries*: VkBool32 - transformFeedbackStreamsLinesTriangles*: VkBool32 - transformFeedbackRasterizationStreamSelect*: VkBool32 - transformFeedbackDraw*: VkBool32 - -proc newVkPhysicalDeviceTransformFeedbackPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT, 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 - -type VkPipelineRasterizationStateStreamCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkPipelineRasterizationStateStreamCreateFlagsEXT - rasterizationStream*: uint32 - -proc newVkPipelineRasterizationStateStreamCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT, pNext: pointer = nil, flags: VkPipelineRasterizationStateStreamCreateFlagsEXT = 0.VkPipelineRasterizationStateStreamCreateFlagsEXT, rasterizationStream: uint32): VkPipelineRasterizationStateStreamCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.rasterizationStream = rasterizationStream - -type VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - representativeFragmentTest*: VkBool32 - -proc newVkPhysicalDeviceRepresentativeFragmentTestFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV, pNext: pointer = nil, representativeFragmentTest: VkBool32): VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV = - result.sType = sType - result.pNext = pNext - result.representativeFragmentTest = representativeFragmentTest - -type VkPipelineRepresentativeFragmentTestStateCreateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - representativeFragmentTestEnable*: VkBool32 - -proc newVkPipelineRepresentativeFragmentTestStateCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV, pNext: pointer = nil, representativeFragmentTestEnable: VkBool32): VkPipelineRepresentativeFragmentTestStateCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.representativeFragmentTestEnable = representativeFragmentTestEnable - -type VkPhysicalDeviceExclusiveScissorFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - exclusiveScissor*: VkBool32 - -proc newVkPhysicalDeviceExclusiveScissorFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV, pNext: pointer = nil, exclusiveScissor: VkBool32): VkPhysicalDeviceExclusiveScissorFeaturesNV = - result.sType = sType - result.pNext = pNext - result.exclusiveScissor = exclusiveScissor - -type VkPipelineViewportExclusiveScissorStateCreateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - exclusiveScissorCount*: uint32 - pExclusiveScissors*: ptr VkRect2D - -proc newVkPipelineViewportExclusiveScissorStateCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV, pNext: pointer = nil, exclusiveScissorCount: uint32, pExclusiveScissors: ptr VkRect2D): VkPipelineViewportExclusiveScissorStateCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.exclusiveScissorCount = exclusiveScissorCount - result.pExclusiveScissors = pExclusiveScissors - -type VkPhysicalDeviceCornerSampledImageFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - cornerSampledImage*: VkBool32 - -proc newVkPhysicalDeviceCornerSampledImageFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV, pNext: pointer = nil, cornerSampledImage: VkBool32): VkPhysicalDeviceCornerSampledImageFeaturesNV = - result.sType = sType - result.pNext = pNext - result.cornerSampledImage = cornerSampledImage - -type VkPhysicalDeviceComputeShaderDerivativesFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - computeDerivativeGroupQuads*: VkBool32 - computeDerivativeGroupLinear*: VkBool32 - -proc newVkPhysicalDeviceComputeShaderDerivativesFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV, pNext: pointer = nil, computeDerivativeGroupQuads: VkBool32, computeDerivativeGroupLinear: VkBool32): VkPhysicalDeviceComputeShaderDerivativesFeaturesNV = - result.sType = sType - result.pNext = pNext - result.computeDerivativeGroupQuads = computeDerivativeGroupQuads - result.computeDerivativeGroupLinear = computeDerivativeGroupLinear - -type VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV* = VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR -type VkPhysicalDeviceShaderImageFootprintFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - imageFootprint*: VkBool32 - -proc newVkPhysicalDeviceShaderImageFootprintFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV, pNext: pointer = nil, imageFootprint: VkBool32): VkPhysicalDeviceShaderImageFootprintFeaturesNV = - result.sType = sType - result.pNext = pNext - result.imageFootprint = imageFootprint - -type VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - dedicatedAllocationImageAliasing*: VkBool32 - -proc newVkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV, pNext: pointer = nil, dedicatedAllocationImageAliasing: VkBool32): VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV = - result.sType = sType - result.pNext = pNext - result.dedicatedAllocationImageAliasing = dedicatedAllocationImageAliasing - -type VkPhysicalDeviceCopyMemoryIndirectFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - indirectCopy*: VkBool32 - -proc newVkPhysicalDeviceCopyMemoryIndirectFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_FEATURES_NV, pNext: pointer = nil, indirectCopy: VkBool32): VkPhysicalDeviceCopyMemoryIndirectFeaturesNV = - result.sType = sType - result.pNext = pNext - result.indirectCopy = indirectCopy - -type VkPhysicalDeviceCopyMemoryIndirectPropertiesNV* = object - sType*: VkStructureType - pNext*: pointer - supportedQueues*: VkQueueFlags - -proc newVkPhysicalDeviceCopyMemoryIndirectPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_PROPERTIES_NV, pNext: pointer = nil, supportedQueues: VkQueueFlags): VkPhysicalDeviceCopyMemoryIndirectPropertiesNV = - result.sType = sType - result.pNext = pNext - result.supportedQueues = supportedQueues - -type VkPhysicalDeviceMemoryDecompressionFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - memoryDecompression*: VkBool32 - -proc newVkPhysicalDeviceMemoryDecompressionFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_FEATURES_NV, pNext: pointer = nil, memoryDecompression: VkBool32): VkPhysicalDeviceMemoryDecompressionFeaturesNV = - result.sType = sType - result.pNext = pNext - result.memoryDecompression = memoryDecompression - -type VkPhysicalDeviceMemoryDecompressionPropertiesNV* = object - sType*: VkStructureType - pNext*: pointer - decompressionMethods*: VkMemoryDecompressionMethodFlagsNV - maxDecompressionIndirectCount*: uint64 - -proc newVkPhysicalDeviceMemoryDecompressionPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_PROPERTIES_NV, pNext: pointer = nil, decompressionMethods: VkMemoryDecompressionMethodFlagsNV, maxDecompressionIndirectCount: uint64): VkPhysicalDeviceMemoryDecompressionPropertiesNV = - result.sType = sType - result.pNext = pNext - result.decompressionMethods = decompressionMethods - result.maxDecompressionIndirectCount = maxDecompressionIndirectCount - -type VkShadingRatePaletteNV* = object - shadingRatePaletteEntryCount*: uint32 - pShadingRatePaletteEntries*: ptr VkShadingRatePaletteEntryNV - -proc newVkShadingRatePaletteNV*(shadingRatePaletteEntryCount: uint32, pShadingRatePaletteEntries: ptr VkShadingRatePaletteEntryNV): VkShadingRatePaletteNV = - result.shadingRatePaletteEntryCount = shadingRatePaletteEntryCount - result.pShadingRatePaletteEntries = pShadingRatePaletteEntries - -type VkPipelineViewportShadingRateImageStateCreateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - shadingRateImageEnable*: VkBool32 - viewportCount*: uint32 - pShadingRatePalettes*: ptr VkShadingRatePaletteNV - -proc newVkPipelineViewportShadingRateImageStateCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV, 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 - -type VkPhysicalDeviceShadingRateImageFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - shadingRateImage*: VkBool32 - shadingRateCoarseSampleOrder*: VkBool32 - -proc newVkPhysicalDeviceShadingRateImageFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV, pNext: pointer = nil, shadingRateImage: VkBool32, shadingRateCoarseSampleOrder: VkBool32): VkPhysicalDeviceShadingRateImageFeaturesNV = - result.sType = sType - result.pNext = pNext - result.shadingRateImage = shadingRateImage - result.shadingRateCoarseSampleOrder = shadingRateCoarseSampleOrder - -type VkPhysicalDeviceShadingRateImagePropertiesNV* = object - sType*: VkStructureType - pNext*: pointer - shadingRateTexelSize*: VkExtent2D - shadingRatePaletteSize*: uint32 - shadingRateMaxCoarseSamples*: uint32 - -proc newVkPhysicalDeviceShadingRateImagePropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV, 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 - -type VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* = object - sType*: VkStructureType - pNext*: pointer - invocationMask*: VkBool32 - -proc newVkPhysicalDeviceInvocationMaskFeaturesHUAWEI*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI, pNext: pointer = nil, invocationMask: VkBool32): VkPhysicalDeviceInvocationMaskFeaturesHUAWEI = - result.sType = sType - result.pNext = pNext - result.invocationMask = invocationMask - -type VkCoarseSampleLocationNV* = object - pixelX*: uint32 - pixelY*: uint32 - sample*: uint32 - -proc newVkCoarseSampleLocationNV*(pixelX: uint32, pixelY: uint32, sample: uint32): VkCoarseSampleLocationNV = - result.pixelX = pixelX - result.pixelY = pixelY - result.sample = sample - -type VkCoarseSampleOrderCustomNV* = object - shadingRate*: VkShadingRatePaletteEntryNV - sampleCount*: uint32 - sampleLocationCount*: uint32 - pSampleLocations*: ptr VkCoarseSampleLocationNV - -proc newVkCoarseSampleOrderCustomNV*(shadingRate: VkShadingRatePaletteEntryNV, sampleCount: uint32, sampleLocationCount: uint32, pSampleLocations: ptr VkCoarseSampleLocationNV): VkCoarseSampleOrderCustomNV = - result.shadingRate = shadingRate - result.sampleCount = sampleCount - result.sampleLocationCount = sampleLocationCount - result.pSampleLocations = pSampleLocations - -type VkPipelineViewportCoarseSampleOrderStateCreateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - sampleOrderType*: VkCoarseSampleOrderTypeNV - customSampleOrderCount*: uint32 - pCustomSampleOrders*: ptr VkCoarseSampleOrderCustomNV - -proc newVkPipelineViewportCoarseSampleOrderStateCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV, 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 - -type VkPhysicalDeviceMeshShaderFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - taskShader*: VkBool32 - meshShader*: VkBool32 - -proc newVkPhysicalDeviceMeshShaderFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV, pNext: pointer = nil, taskShader: VkBool32, meshShader: VkBool32): VkPhysicalDeviceMeshShaderFeaturesNV = - result.sType = sType - result.pNext = pNext - result.taskShader = taskShader - result.meshShader = meshShader - -type VkPhysicalDeviceMeshShaderPropertiesNV* = object - sType*: VkStructureType - pNext*: pointer - 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 - -proc newVkPhysicalDeviceMeshShaderPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV, 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 - -type VkDrawMeshTasksIndirectCommandNV* = object - taskCount*: uint32 - firstTask*: uint32 - -proc newVkDrawMeshTasksIndirectCommandNV*(taskCount: uint32, firstTask: uint32): VkDrawMeshTasksIndirectCommandNV = - result.taskCount = taskCount - result.firstTask = firstTask - -type VkPhysicalDeviceMeshShaderFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - taskShader*: VkBool32 - meshShader*: VkBool32 - multiviewMeshShader*: VkBool32 - primitiveFragmentShadingRateMeshShader*: VkBool32 - meshShaderQueries*: VkBool32 - -proc newVkPhysicalDeviceMeshShaderFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_EXT, 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 - -type 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 - -proc newVkPhysicalDeviceMeshShaderPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_EXT, 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 - -type VkDrawMeshTasksIndirectCommandEXT* = object - groupCountX*: uint32 - groupCountY*: uint32 - groupCountZ*: uint32 - -proc newVkDrawMeshTasksIndirectCommandEXT*(groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): VkDrawMeshTasksIndirectCommandEXT = - result.groupCountX = groupCountX - result.groupCountY = groupCountY - result.groupCountZ = groupCountZ - -type VkRayTracingShaderGroupCreateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - `type`*: VkRayTracingShaderGroupTypeKHR - generalShader*: uint32 - closestHitShader*: uint32 - anyHitShader*: uint32 - intersectionShader*: uint32 - -proc newVkRayTracingShaderGroupCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV, 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 - -type VkRayTracingShaderGroupCreateInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - `type`*: VkRayTracingShaderGroupTypeKHR - generalShader*: uint32 - closestHitShader*: uint32 - anyHitShader*: uint32 - intersectionShader*: uint32 - pShaderGroupCaptureReplayHandle*: pointer - -proc newVkRayTracingShaderGroupCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR, 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 - -type VkRayTracingPipelineCreateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkPipelineCreateFlags - stageCount*: uint32 - pStages*: ptr VkPipelineShaderStageCreateInfo - groupCount*: uint32 - pGroups*: ptr VkRayTracingShaderGroupCreateInfoNV - maxRecursionDepth*: uint32 - layout*: VkPipelineLayout - basePipelineHandle*: VkPipeline - basePipelineIndex*: int32 - -proc newVkRayTracingPipelineCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV, 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 - -type VkRayTracingPipelineCreateInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - flags*: 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 - -proc newVkRayTracingPipelineCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR, 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 - -type VkGeometryTrianglesNV* = object - sType*: VkStructureType - pNext*: pointer - vertexData*: VkBuffer - vertexOffset*: VkDeviceSize - vertexCount*: uint32 - vertexStride*: VkDeviceSize - vertexFormat*: VkFormat - indexData*: VkBuffer - indexOffset*: VkDeviceSize - indexCount*: uint32 - indexType*: VkIndexType - transformData*: VkBuffer - transformOffset*: VkDeviceSize - -proc newVkGeometryTrianglesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV, 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 - -type VkGeometryAABBNV* = object - sType*: VkStructureType - pNext*: pointer - aabbData*: VkBuffer - numAABBs*: uint32 - stride*: uint32 - offset*: VkDeviceSize - -proc newVkGeometryAABBNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV, 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 - -type VkGeometryDataNV* = object - triangles*: VkGeometryTrianglesNV - aabbs*: VkGeometryAABBNV - -proc newVkGeometryDataNV*(triangles: VkGeometryTrianglesNV, aabbs: VkGeometryAABBNV): VkGeometryDataNV = - result.triangles = triangles - result.aabbs = aabbs - -type VkGeometryNV* = object - sType*: VkStructureType - pNext*: pointer - geometryType*: VkGeometryTypeKHR - geometry*: VkGeometryDataNV - flags*: VkGeometryFlagsKHR - -proc newVkGeometryNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_GEOMETRY_NV, 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 - -type VkAccelerationStructureInfoNV* = object - sType*: VkStructureType - pNext*: pointer - `type`*: VkAccelerationStructureTypeNV - flags*: VkBuildAccelerationStructureFlagsNV - instanceCount*: uint32 - geometryCount*: uint32 - pGeometries*: ptr VkGeometryNV - -proc newVkAccelerationStructureInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV, 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 - -type VkAccelerationStructureCreateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - compactedSize*: VkDeviceSize - info*: VkAccelerationStructureInfoNV - -proc newVkAccelerationStructureCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV, pNext: pointer = nil, compactedSize: VkDeviceSize, info: VkAccelerationStructureInfoNV): VkAccelerationStructureCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.compactedSize = compactedSize - result.info = info - -type VkBindAccelerationStructureMemoryInfoNV* = object - sType*: VkStructureType - pNext*: pointer - accelerationStructure*: VkAccelerationStructureNV - memory*: VkDeviceMemory - memoryOffset*: VkDeviceSize - deviceIndexCount*: uint32 - pDeviceIndices*: ptr uint32 - -proc newVkBindAccelerationStructureMemoryInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV, 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 - -type VkWriteDescriptorSetAccelerationStructureKHR* = object - sType*: VkStructureType - pNext*: pointer - accelerationStructureCount*: uint32 - pAccelerationStructures*: ptr VkAccelerationStructureKHR - -proc newVkWriteDescriptorSetAccelerationStructureKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR, pNext: pointer = nil, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR): VkWriteDescriptorSetAccelerationStructureKHR = - result.sType = sType - result.pNext = pNext - result.accelerationStructureCount = accelerationStructureCount - result.pAccelerationStructures = pAccelerationStructures - -type VkWriteDescriptorSetAccelerationStructureNV* = object - sType*: VkStructureType - pNext*: pointer - accelerationStructureCount*: uint32 - pAccelerationStructures*: ptr VkAccelerationStructureNV - -proc newVkWriteDescriptorSetAccelerationStructureNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV, pNext: pointer = nil, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureNV): VkWriteDescriptorSetAccelerationStructureNV = - result.sType = sType - result.pNext = pNext - result.accelerationStructureCount = accelerationStructureCount - result.pAccelerationStructures = pAccelerationStructures - -type VkAccelerationStructureMemoryRequirementsInfoNV* = object - sType*: VkStructureType - pNext*: pointer - `type`*: VkAccelerationStructureMemoryRequirementsTypeNV - accelerationStructure*: VkAccelerationStructureNV - -proc newVkAccelerationStructureMemoryRequirementsInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV, pNext: pointer = nil, `type`: VkAccelerationStructureMemoryRequirementsTypeNV, accelerationStructure: VkAccelerationStructureNV): VkAccelerationStructureMemoryRequirementsInfoNV = - result.sType = sType - result.pNext = pNext - result.`type` = `type` - result.accelerationStructure = accelerationStructure - -type VkPhysicalDeviceAccelerationStructureFeaturesKHR* = object - sType*: VkStructureType - pNext*: pointer - accelerationStructure*: VkBool32 - accelerationStructureCaptureReplay*: VkBool32 - accelerationStructureIndirectBuild*: VkBool32 - accelerationStructureHostCommands*: VkBool32 - descriptorBindingAccelerationStructureUpdateAfterBind*: VkBool32 - -proc newVkPhysicalDeviceAccelerationStructureFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR, 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 - -type VkPhysicalDeviceRayTracingPipelineFeaturesKHR* = object - sType*: VkStructureType - pNext*: pointer - rayTracingPipeline*: VkBool32 - rayTracingPipelineShaderGroupHandleCaptureReplay*: VkBool32 - rayTracingPipelineShaderGroupHandleCaptureReplayMixed*: VkBool32 - rayTracingPipelineTraceRaysIndirect*: VkBool32 - rayTraversalPrimitiveCulling*: VkBool32 - -proc newVkPhysicalDeviceRayTracingPipelineFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR, 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 - -type VkPhysicalDeviceRayQueryFeaturesKHR* = object - sType*: VkStructureType - pNext*: pointer - rayQuery*: VkBool32 - -proc newVkPhysicalDeviceRayQueryFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR, pNext: pointer = nil, rayQuery: VkBool32): VkPhysicalDeviceRayQueryFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.rayQuery = rayQuery - -type VkPhysicalDeviceAccelerationStructurePropertiesKHR* = object - sType*: VkStructureType - pNext*: pointer - maxGeometryCount*: uint64 - maxInstanceCount*: uint64 - maxPrimitiveCount*: uint64 - maxPerStageDescriptorAccelerationStructures*: uint32 - maxPerStageDescriptorUpdateAfterBindAccelerationStructures*: uint32 - maxDescriptorSetAccelerationStructures*: uint32 - maxDescriptorSetUpdateAfterBindAccelerationStructures*: uint32 - minAccelerationStructureScratchOffsetAlignment*: uint32 - -proc newVkPhysicalDeviceAccelerationStructurePropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR, 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 - -type VkPhysicalDeviceRayTracingPipelinePropertiesKHR* = object - sType*: VkStructureType - pNext*: pointer - shaderGroupHandleSize*: uint32 - maxRayRecursionDepth*: uint32 - maxShaderGroupStride*: uint32 - shaderGroupBaseAlignment*: uint32 - shaderGroupHandleCaptureReplaySize*: uint32 - maxRayDispatchInvocationCount*: uint32 - shaderGroupHandleAlignment*: uint32 - maxRayHitAttributeSize*: uint32 - -proc newVkPhysicalDeviceRayTracingPipelinePropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR, 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 - -type VkPhysicalDeviceRayTracingPropertiesNV* = object - sType*: VkStructureType - pNext*: pointer - shaderGroupHandleSize*: uint32 - maxRecursionDepth*: uint32 - maxShaderGroupStride*: uint32 - shaderGroupBaseAlignment*: uint32 - maxGeometryCount*: uint64 - maxInstanceCount*: uint64 - maxTriangleCount*: uint64 - maxDescriptorSetAccelerationStructures*: uint32 - -proc newVkPhysicalDeviceRayTracingPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV, 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 - -type VkStridedDeviceAddressRegionKHR* = object - deviceAddress*: VkDeviceAddress - stride*: VkDeviceSize - size*: VkDeviceSize - -proc newVkStridedDeviceAddressRegionKHR*(deviceAddress: VkDeviceAddress, stride: VkDeviceSize, size: VkDeviceSize): VkStridedDeviceAddressRegionKHR = - result.deviceAddress = deviceAddress - result.stride = stride - result.size = size - -type VkTraceRaysIndirectCommandKHR* = object - width*: uint32 - height*: uint32 - depth*: uint32 - -proc newVkTraceRaysIndirectCommandKHR*(width: uint32, height: uint32, depth: uint32): VkTraceRaysIndirectCommandKHR = - result.width = width - result.height = height - result.depth = depth - -type 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 - -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 - -type VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR* = object - sType*: VkStructureType - pNext*: pointer - rayTracingMaintenance1*: VkBool32 - rayTracingPipelineTraceRaysIndirect2*: VkBool32 - -proc newVkPhysicalDeviceRayTracingMaintenance1FeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR, pNext: pointer = nil, rayTracingMaintenance1: VkBool32, rayTracingPipelineTraceRaysIndirect2: VkBool32): VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR = - result.sType = sType - result.pNext = pNext - result.rayTracingMaintenance1 = rayTracingMaintenance1 - result.rayTracingPipelineTraceRaysIndirect2 = rayTracingPipelineTraceRaysIndirect2 - -type VkDrmFormatModifierPropertiesListEXT* = object - sType*: VkStructureType - pNext*: pointer - drmFormatModifierCount*: uint32 - pDrmFormatModifierProperties*: ptr VkDrmFormatModifierPropertiesEXT - -proc newVkDrmFormatModifierPropertiesListEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT, pNext: pointer = nil, drmFormatModifierCount: uint32, pDrmFormatModifierProperties: ptr VkDrmFormatModifierPropertiesEXT): VkDrmFormatModifierPropertiesListEXT = - result.sType = sType - result.pNext = pNext - result.drmFormatModifierCount = drmFormatModifierCount - result.pDrmFormatModifierProperties = pDrmFormatModifierProperties - -type VkDrmFormatModifierPropertiesEXT* = object - drmFormatModifier*: uint64 - drmFormatModifierPlaneCount*: uint32 - drmFormatModifierTilingFeatures*: VkFormatFeatureFlags - -proc newVkDrmFormatModifierPropertiesEXT*(drmFormatModifier: uint64, drmFormatModifierPlaneCount: uint32, drmFormatModifierTilingFeatures: VkFormatFeatureFlags): VkDrmFormatModifierPropertiesEXT = - result.drmFormatModifier = drmFormatModifier - result.drmFormatModifierPlaneCount = drmFormatModifierPlaneCount - result.drmFormatModifierTilingFeatures = drmFormatModifierTilingFeatures - -type VkPhysicalDeviceImageDrmFormatModifierInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - drmFormatModifier*: uint64 - sharingMode*: VkSharingMode - queueFamilyIndexCount*: uint32 - pQueueFamilyIndices*: ptr uint32 - -proc newVkPhysicalDeviceImageDrmFormatModifierInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT, 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 - -type VkImageDrmFormatModifierListCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - drmFormatModifierCount*: uint32 - pDrmFormatModifiers*: ptr uint64 - -proc newVkImageDrmFormatModifierListCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT, pNext: pointer = nil, drmFormatModifierCount: uint32, pDrmFormatModifiers: ptr uint64): VkImageDrmFormatModifierListCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.drmFormatModifierCount = drmFormatModifierCount - result.pDrmFormatModifiers = pDrmFormatModifiers - -type VkImageDrmFormatModifierExplicitCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - drmFormatModifier*: uint64 - drmFormatModifierPlaneCount*: uint32 - pPlaneLayouts*: ptr VkSubresourceLayout - -proc newVkImageDrmFormatModifierExplicitCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT, 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 - -type VkImageDrmFormatModifierPropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - drmFormatModifier*: uint64 - -proc newVkImageDrmFormatModifierPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT, pNext: pointer = nil, drmFormatModifier: uint64): VkImageDrmFormatModifierPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.drmFormatModifier = drmFormatModifier - -type VkImageStencilUsageCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - stencilUsage*: VkImageUsageFlags - -proc newVkImageStencilUsageCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO, pNext: pointer = nil, stencilUsage: VkImageUsageFlags): VkImageStencilUsageCreateInfo = - result.sType = sType - result.pNext = pNext - result.stencilUsage = stencilUsage - -type VkImageStencilUsageCreateInfoEXT* = VkImageStencilUsageCreateInfo -type VkDeviceMemoryOverallocationCreateInfoAMD* = object - sType*: VkStructureType - pNext*: pointer - overallocationBehavior*: VkMemoryOverallocationBehaviorAMD - -proc newVkDeviceMemoryOverallocationCreateInfoAMD*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD, pNext: pointer = nil, overallocationBehavior: VkMemoryOverallocationBehaviorAMD): VkDeviceMemoryOverallocationCreateInfoAMD = - result.sType = sType - result.pNext = pNext - result.overallocationBehavior = overallocationBehavior - -type VkPhysicalDeviceFragmentDensityMapFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - fragmentDensityMap*: VkBool32 - fragmentDensityMapDynamic*: VkBool32 - fragmentDensityMapNonSubsampledImages*: VkBool32 - -proc newVkPhysicalDeviceFragmentDensityMapFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT, 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 - -type VkPhysicalDeviceFragmentDensityMap2FeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - fragmentDensityMapDeferred*: VkBool32 - -proc newVkPhysicalDeviceFragmentDensityMap2FeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT, pNext: pointer = nil, fragmentDensityMapDeferred: VkBool32): VkPhysicalDeviceFragmentDensityMap2FeaturesEXT = - result.sType = sType - result.pNext = pNext - result.fragmentDensityMapDeferred = fragmentDensityMapDeferred - -type VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM* = object - sType*: VkStructureType - pNext*: pointer - fragmentDensityMapOffset*: VkBool32 - -proc newVkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM, pNext: pointer = nil, fragmentDensityMapOffset: VkBool32): VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM = - result.sType = sType - result.pNext = pNext - result.fragmentDensityMapOffset = fragmentDensityMapOffset - -type VkPhysicalDeviceFragmentDensityMapPropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - minFragmentDensityTexelSize*: VkExtent2D - maxFragmentDensityTexelSize*: VkExtent2D - fragmentDensityInvocations*: VkBool32 - -proc newVkPhysicalDeviceFragmentDensityMapPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT, 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 - -type VkPhysicalDeviceFragmentDensityMap2PropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - subsampledLoads*: VkBool32 - subsampledCoarseReconstructionEarlyAccess*: VkBool32 - maxSubsampledArrayLayers*: uint32 - maxDescriptorSetSubsampledSamplers*: uint32 - -proc newVkPhysicalDeviceFragmentDensityMap2PropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT, 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 - -type VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM* = object - sType*: VkStructureType - pNext*: pointer - fragmentDensityOffsetGranularity*: VkExtent2D - -proc newVkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM, pNext: pointer = nil, fragmentDensityOffsetGranularity: VkExtent2D): VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM = - result.sType = sType - result.pNext = pNext - result.fragmentDensityOffsetGranularity = fragmentDensityOffsetGranularity - -type VkRenderPassFragmentDensityMapCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - fragmentDensityMapAttachment*: VkAttachmentReference - -proc newVkRenderPassFragmentDensityMapCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT, pNext: pointer = nil, fragmentDensityMapAttachment: VkAttachmentReference): VkRenderPassFragmentDensityMapCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.fragmentDensityMapAttachment = fragmentDensityMapAttachment - -type VkSubpassFragmentDensityMapOffsetEndInfoQCOM* = object - sType*: VkStructureType - pNext*: pointer - fragmentDensityOffsetCount*: uint32 - pFragmentDensityOffsets*: ptr VkOffset2D - -proc newVkSubpassFragmentDensityMapOffsetEndInfoQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_SUBPASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_QCOM, pNext: pointer = nil, fragmentDensityOffsetCount: uint32, pFragmentDensityOffsets: ptr VkOffset2D): VkSubpassFragmentDensityMapOffsetEndInfoQCOM = - result.sType = sType - result.pNext = pNext - result.fragmentDensityOffsetCount = fragmentDensityOffsetCount - result.pFragmentDensityOffsets = pFragmentDensityOffsets - -type VkPhysicalDeviceScalarBlockLayoutFeatures* = object - sType*: VkStructureType - pNext*: pointer - scalarBlockLayout*: VkBool32 - -proc newVkPhysicalDeviceScalarBlockLayoutFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES, pNext: pointer = nil, scalarBlockLayout: VkBool32): VkPhysicalDeviceScalarBlockLayoutFeatures = - result.sType = sType - result.pNext = pNext - result.scalarBlockLayout = scalarBlockLayout - -type VkPhysicalDeviceScalarBlockLayoutFeaturesEXT* = VkPhysicalDeviceScalarBlockLayoutFeatures -type VkSurfaceProtectedCapabilitiesKHR* = object - sType*: VkStructureType - pNext*: pointer - supportsProtected*: VkBool32 - -proc newVkSurfaceProtectedCapabilitiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR, pNext: pointer = nil, supportsProtected: VkBool32): VkSurfaceProtectedCapabilitiesKHR = - result.sType = sType - result.pNext = pNext - result.supportsProtected = supportsProtected - -type VkPhysicalDeviceUniformBufferStandardLayoutFeatures* = object - sType*: VkStructureType - pNext*: pointer - uniformBufferStandardLayout*: VkBool32 - -proc newVkPhysicalDeviceUniformBufferStandardLayoutFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES, pNext: pointer = nil, uniformBufferStandardLayout: VkBool32): VkPhysicalDeviceUniformBufferStandardLayoutFeatures = - result.sType = sType - result.pNext = pNext - result.uniformBufferStandardLayout = uniformBufferStandardLayout - -type VkPhysicalDeviceUniformBufferStandardLayoutFeaturesKHR* = VkPhysicalDeviceUniformBufferStandardLayoutFeatures -type VkPhysicalDeviceDepthClipEnableFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - depthClipEnable*: VkBool32 - -proc newVkPhysicalDeviceDepthClipEnableFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT, pNext: pointer = nil, depthClipEnable: VkBool32): VkPhysicalDeviceDepthClipEnableFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.depthClipEnable = depthClipEnable - -type VkPipelineRasterizationDepthClipStateCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkPipelineRasterizationDepthClipStateCreateFlagsEXT - depthClipEnable*: VkBool32 - -proc newVkPipelineRasterizationDepthClipStateCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT, pNext: pointer = nil, flags: VkPipelineRasterizationDepthClipStateCreateFlagsEXT = 0.VkPipelineRasterizationDepthClipStateCreateFlagsEXT, depthClipEnable: VkBool32): VkPipelineRasterizationDepthClipStateCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.depthClipEnable = depthClipEnable - -type VkPhysicalDeviceMemoryBudgetPropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - heapBudget*: array[VK_MAX_MEMORY_HEAPS, VkDeviceSize] - heapUsage*: array[VK_MAX_MEMORY_HEAPS, VkDeviceSize] - -proc newVkPhysicalDeviceMemoryBudgetPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT, 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 - -type VkPhysicalDeviceMemoryPriorityFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - memoryPriority*: VkBool32 - -proc newVkPhysicalDeviceMemoryPriorityFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT, pNext: pointer = nil, memoryPriority: VkBool32): VkPhysicalDeviceMemoryPriorityFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.memoryPriority = memoryPriority - -type VkMemoryPriorityAllocateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - priority*: float32 - -proc newVkMemoryPriorityAllocateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT, pNext: pointer = nil, priority: float32): VkMemoryPriorityAllocateInfoEXT = - result.sType = sType - result.pNext = pNext - result.priority = priority - -type VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - pageableDeviceLocalMemory*: VkBool32 - -proc newVkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT, pNext: pointer = nil, pageableDeviceLocalMemory: VkBool32): VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.pageableDeviceLocalMemory = pageableDeviceLocalMemory - -type VkPhysicalDeviceBufferDeviceAddressFeatures* = object - sType*: VkStructureType - pNext*: pointer - bufferDeviceAddress*: VkBool32 - bufferDeviceAddressCaptureReplay*: VkBool32 - bufferDeviceAddressMultiDevice*: VkBool32 - -proc newVkPhysicalDeviceBufferDeviceAddressFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES, 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 - -type VkPhysicalDeviceBufferDeviceAddressFeaturesKHR* = VkPhysicalDeviceBufferDeviceAddressFeatures -type VkPhysicalDeviceBufferDeviceAddressFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - bufferDeviceAddress*: VkBool32 - bufferDeviceAddressCaptureReplay*: VkBool32 - bufferDeviceAddressMultiDevice*: VkBool32 - -proc newVkPhysicalDeviceBufferDeviceAddressFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT, 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 - -type VkPhysicalDeviceBufferAddressFeaturesEXT* = VkPhysicalDeviceBufferDeviceAddressFeaturesEXT -type VkBufferDeviceAddressInfo* = object - sType*: VkStructureType - pNext*: pointer - buffer*: VkBuffer - -proc newVkBufferDeviceAddressInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO, pNext: pointer = nil, buffer: VkBuffer): VkBufferDeviceAddressInfo = - result.sType = sType - result.pNext = pNext - result.buffer = buffer - -type VkBufferDeviceAddressInfoKHR* = VkBufferDeviceAddressInfo -type VkBufferDeviceAddressInfoEXT* = VkBufferDeviceAddressInfo -type VkBufferOpaqueCaptureAddressCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - opaqueCaptureAddress*: uint64 - -proc newVkBufferOpaqueCaptureAddressCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO, pNext: pointer = nil, opaqueCaptureAddress: uint64): VkBufferOpaqueCaptureAddressCreateInfo = - result.sType = sType - result.pNext = pNext - result.opaqueCaptureAddress = opaqueCaptureAddress - -type VkBufferOpaqueCaptureAddressCreateInfoKHR* = VkBufferOpaqueCaptureAddressCreateInfo -type VkBufferDeviceAddressCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - deviceAddress*: VkDeviceAddress - -proc newVkBufferDeviceAddressCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT, pNext: pointer = nil, deviceAddress: VkDeviceAddress): VkBufferDeviceAddressCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.deviceAddress = deviceAddress - -type VkPhysicalDeviceImageViewImageFormatInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - imageViewType*: VkImageViewType - -proc newVkPhysicalDeviceImageViewImageFormatInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT, pNext: pointer = nil, imageViewType: VkImageViewType): VkPhysicalDeviceImageViewImageFormatInfoEXT = - result.sType = sType - result.pNext = pNext - result.imageViewType = imageViewType - -type VkFilterCubicImageViewImageFormatPropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - filterCubic*: VkBool32 - filterCubicMinmax*: VkBool32 - -proc newVkFilterCubicImageViewImageFormatPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT, pNext: pointer = nil, filterCubic: VkBool32, filterCubicMinmax: VkBool32): VkFilterCubicImageViewImageFormatPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.filterCubic = filterCubic - result.filterCubicMinmax = filterCubicMinmax - -type VkPhysicalDeviceImagelessFramebufferFeatures* = object - sType*: VkStructureType - pNext*: pointer - imagelessFramebuffer*: VkBool32 - -proc newVkPhysicalDeviceImagelessFramebufferFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES, pNext: pointer = nil, imagelessFramebuffer: VkBool32): VkPhysicalDeviceImagelessFramebufferFeatures = - result.sType = sType - result.pNext = pNext - result.imagelessFramebuffer = imagelessFramebuffer - -type VkPhysicalDeviceImagelessFramebufferFeaturesKHR* = VkPhysicalDeviceImagelessFramebufferFeatures -type VkFramebufferAttachmentsCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - attachmentImageInfoCount*: uint32 - pAttachmentImageInfos*: ptr VkFramebufferAttachmentImageInfo - -proc newVkFramebufferAttachmentsCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO, pNext: pointer = nil, attachmentImageInfoCount: uint32, pAttachmentImageInfos: ptr VkFramebufferAttachmentImageInfo): VkFramebufferAttachmentsCreateInfo = - result.sType = sType - result.pNext = pNext - result.attachmentImageInfoCount = attachmentImageInfoCount - result.pAttachmentImageInfos = pAttachmentImageInfos - -type VkFramebufferAttachmentsCreateInfoKHR* = VkFramebufferAttachmentsCreateInfo -type VkFramebufferAttachmentImageInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkImageCreateFlags - usage*: VkImageUsageFlags - width*: uint32 - height*: uint32 - layerCount*: uint32 - viewFormatCount*: uint32 - pViewFormats*: ptr VkFormat - -proc newVkFramebufferAttachmentImageInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO, 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 - -type VkFramebufferAttachmentImageInfoKHR* = VkFramebufferAttachmentImageInfo -type VkRenderPassAttachmentBeginInfo* = object - sType*: VkStructureType - pNext*: pointer - attachmentCount*: uint32 - pAttachments*: ptr VkImageView - -proc newVkRenderPassAttachmentBeginInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO, pNext: pointer = nil, attachmentCount: uint32, pAttachments: ptr VkImageView): VkRenderPassAttachmentBeginInfo = - result.sType = sType - result.pNext = pNext - result.attachmentCount = attachmentCount - result.pAttachments = pAttachments - -type VkRenderPassAttachmentBeginInfoKHR* = VkRenderPassAttachmentBeginInfo -type VkPhysicalDeviceTextureCompressionASTCHDRFeatures* = object - sType*: VkStructureType - pNext*: pointer - textureCompressionASTC_HDR*: VkBool32 - -proc newVkPhysicalDeviceTextureCompressionASTCHDRFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES, pNext: pointer = nil, textureCompressionASTC_HDR: VkBool32): VkPhysicalDeviceTextureCompressionASTCHDRFeatures = - result.sType = sType - result.pNext = pNext - result.textureCompressionASTC_HDR = textureCompressionASTC_HDR - -type VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT* = VkPhysicalDeviceTextureCompressionASTCHDRFeatures -type VkPhysicalDeviceCooperativeMatrixFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - cooperativeMatrix*: VkBool32 - cooperativeMatrixRobustBufferAccess*: VkBool32 - -proc newVkPhysicalDeviceCooperativeMatrixFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV, pNext: pointer = nil, cooperativeMatrix: VkBool32, cooperativeMatrixRobustBufferAccess: VkBool32): VkPhysicalDeviceCooperativeMatrixFeaturesNV = - result.sType = sType - result.pNext = pNext - result.cooperativeMatrix = cooperativeMatrix - result.cooperativeMatrixRobustBufferAccess = cooperativeMatrixRobustBufferAccess - -type VkPhysicalDeviceCooperativeMatrixPropertiesNV* = object - sType*: VkStructureType - pNext*: pointer - cooperativeMatrixSupportedStages*: VkShaderStageFlags - -proc newVkPhysicalDeviceCooperativeMatrixPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV, pNext: pointer = nil, cooperativeMatrixSupportedStages: VkShaderStageFlags): VkPhysicalDeviceCooperativeMatrixPropertiesNV = - result.sType = sType - result.pNext = pNext - result.cooperativeMatrixSupportedStages = cooperativeMatrixSupportedStages - -type VkCooperativeMatrixPropertiesNV* = object - sType*: VkStructureType - pNext*: pointer - MSize*: uint32 - NSize*: uint32 - KSize*: uint32 - AType*: VkComponentTypeNV - BType*: VkComponentTypeNV - CType*: VkComponentTypeNV - DType*: VkComponentTypeNV - scope*: VkScopeNV - -proc newVkCooperativeMatrixPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV, 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 - -type VkPhysicalDeviceYcbcrImageArraysFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - ycbcrImageArrays*: VkBool32 - -proc newVkPhysicalDeviceYcbcrImageArraysFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT, pNext: pointer = nil, ycbcrImageArrays: VkBool32): VkPhysicalDeviceYcbcrImageArraysFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.ycbcrImageArrays = ycbcrImageArrays - -type VkImageViewHandleInfoNVX* = object - sType*: VkStructureType - pNext*: pointer - imageView*: VkImageView - descriptorType*: VkDescriptorType - sampler*: VkSampler - -proc newVkImageViewHandleInfoNVX*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX, 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 - -type VkImageViewAddressPropertiesNVX* = object - sType*: VkStructureType - pNext*: pointer - deviceAddress*: VkDeviceAddress - size*: VkDeviceSize - -proc newVkImageViewAddressPropertiesNVX*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX, pNext: pointer = nil, deviceAddress: VkDeviceAddress, size: VkDeviceSize): VkImageViewAddressPropertiesNVX = - result.sType = sType - result.pNext = pNext - result.deviceAddress = deviceAddress - result.size = size - -type VkPresentFrameTokenGGP* = object - sType*: VkStructureType - pNext*: pointer - frameToken*: GgpFrameToken - -proc newVkPresentFrameTokenGGP*(sType: VkStructureType = VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP, pNext: pointer = nil, frameToken: GgpFrameToken): VkPresentFrameTokenGGP = - result.sType = sType - result.pNext = pNext - result.frameToken = frameToken - -type VkPipelineCreationFeedback* = object - flags*: VkPipelineCreationFeedbackFlags - duration*: uint64 - -proc newVkPipelineCreationFeedback*(flags: VkPipelineCreationFeedbackFlags = 0.VkPipelineCreationFeedbackFlags, duration: uint64): VkPipelineCreationFeedback = - result.flags = flags - result.duration = duration - -type VkPipelineCreationFeedbackEXT* = VkPipelineCreationFeedback -type VkPipelineCreationFeedbackCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - pPipelineCreationFeedback*: ptr VkPipelineCreationFeedback - pipelineStageCreationFeedbackCount*: uint32 - pPipelineStageCreationFeedbacks*: ptr ptr VkPipelineCreationFeedback - -proc newVkPipelineCreationFeedbackCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO, 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 - -type VkPipelineCreationFeedbackCreateInfoEXT* = VkPipelineCreationFeedbackCreateInfo -type VkSurfaceFullScreenExclusiveInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - fullScreenExclusive*: VkFullScreenExclusiveEXT - -proc newVkSurfaceFullScreenExclusiveInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT, pNext: pointer = nil, fullScreenExclusive: VkFullScreenExclusiveEXT): VkSurfaceFullScreenExclusiveInfoEXT = - result.sType = sType - result.pNext = pNext - result.fullScreenExclusive = fullScreenExclusive - -type VkSurfaceFullScreenExclusiveWin32InfoEXT* = object - sType*: VkStructureType - pNext*: pointer - hmonitor*: HMONITOR - -proc newVkSurfaceFullScreenExclusiveWin32InfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT, pNext: pointer = nil, hmonitor: HMONITOR): VkSurfaceFullScreenExclusiveWin32InfoEXT = - result.sType = sType - result.pNext = pNext - result.hmonitor = hmonitor - -type VkSurfaceCapabilitiesFullScreenExclusiveEXT* = object - sType*: VkStructureType - pNext*: pointer - fullScreenExclusiveSupported*: VkBool32 - -proc newVkSurfaceCapabilitiesFullScreenExclusiveEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT, pNext: pointer = nil, fullScreenExclusiveSupported: VkBool32): VkSurfaceCapabilitiesFullScreenExclusiveEXT = - result.sType = sType - result.pNext = pNext - result.fullScreenExclusiveSupported = fullScreenExclusiveSupported - -type VkPhysicalDevicePresentBarrierFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - presentBarrier*: VkBool32 - -proc newVkPhysicalDevicePresentBarrierFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_BARRIER_FEATURES_NV, pNext: pointer = nil, presentBarrier: VkBool32): VkPhysicalDevicePresentBarrierFeaturesNV = - result.sType = sType - result.pNext = pNext - result.presentBarrier = presentBarrier - -type VkSurfaceCapabilitiesPresentBarrierNV* = object - sType*: VkStructureType - pNext*: pointer - presentBarrierSupported*: VkBool32 - -proc newVkSurfaceCapabilitiesPresentBarrierNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_PRESENT_BARRIER_NV, pNext: pointer = nil, presentBarrierSupported: VkBool32): VkSurfaceCapabilitiesPresentBarrierNV = - result.sType = sType - result.pNext = pNext - result.presentBarrierSupported = presentBarrierSupported - -type VkSwapchainPresentBarrierCreateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - presentBarrierEnable*: VkBool32 - -proc newVkSwapchainPresentBarrierCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_BARRIER_CREATE_INFO_NV, pNext: pointer = nil, presentBarrierEnable: VkBool32): VkSwapchainPresentBarrierCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.presentBarrierEnable = presentBarrierEnable - -type VkPhysicalDevicePerformanceQueryFeaturesKHR* = object - sType*: VkStructureType - pNext*: pointer - performanceCounterQueryPools*: VkBool32 - performanceCounterMultipleQueryPools*: VkBool32 - -proc newVkPhysicalDevicePerformanceQueryFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR, pNext: pointer = nil, performanceCounterQueryPools: VkBool32, performanceCounterMultipleQueryPools: VkBool32): VkPhysicalDevicePerformanceQueryFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.performanceCounterQueryPools = performanceCounterQueryPools - result.performanceCounterMultipleQueryPools = performanceCounterMultipleQueryPools - -type VkPhysicalDevicePerformanceQueryPropertiesKHR* = object - sType*: VkStructureType - pNext*: pointer - allowCommandBufferQueryCopies*: VkBool32 - -proc newVkPhysicalDevicePerformanceQueryPropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR, pNext: pointer = nil, allowCommandBufferQueryCopies: VkBool32): VkPhysicalDevicePerformanceQueryPropertiesKHR = - result.sType = sType - result.pNext = pNext - result.allowCommandBufferQueryCopies = allowCommandBufferQueryCopies - -type VkPerformanceCounterKHR* = object - sType*: VkStructureType - pNext*: pointer - unit*: VkPerformanceCounterUnitKHR - scope*: VkPerformanceCounterScopeKHR - storage*: VkPerformanceCounterStorageKHR - uuid*: array[VK_UUID_SIZE, uint8] - -proc newVkPerformanceCounterKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR, 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 - -type VkPerformanceCounterDescriptionKHR* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkPerformanceCounterDescriptionFlagsKHR - name*: array[VK_MAX_DESCRIPTION_SIZE, char] - category*: array[VK_MAX_DESCRIPTION_SIZE, char] - description*: array[VK_MAX_DESCRIPTION_SIZE, char] - -proc newVkPerformanceCounterDescriptionKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR, 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 - -type VkQueryPoolPerformanceCreateInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - queueFamilyIndex*: uint32 - counterIndexCount*: uint32 - pCounterIndices*: ptr uint32 - -proc newVkQueryPoolPerformanceCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR, 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 - -type VkPerformanceCounterResultKHR* {.union.} = object - int32*: int32 - int64*: int64 - uint32*: uint32 - uint64*: uint64 - float32*: float32 - float64*: float64 - -proc newVkPerformanceCounterResultKHR*(int32: int32, int64: int64, uint32: uint32, uint64: uint64, float32: float32, float64: float64): VkPerformanceCounterResultKHR = - result.int32 = int32 - result.int64 = int64 - result.uint32 = uint32 - result.uint64 = uint64 - result.float32 = float32 - result.float64 = float64 - -type VkAcquireProfilingLockInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkAcquireProfilingLockFlagsKHR - timeout*: uint64 - -proc newVkAcquireProfilingLockInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR, pNext: pointer = nil, flags: VkAcquireProfilingLockFlagsKHR = 0.VkAcquireProfilingLockFlagsKHR, timeout: uint64): VkAcquireProfilingLockInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.timeout = timeout - -type VkPerformanceQuerySubmitInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - counterPassIndex*: uint32 - -proc newVkPerformanceQuerySubmitInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR, pNext: pointer = nil, counterPassIndex: uint32): VkPerformanceQuerySubmitInfoKHR = - result.sType = sType - result.pNext = pNext - result.counterPassIndex = counterPassIndex - -type VkPerformanceQueryReservationInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - maxPerformanceQueriesPerPool*: uint32 - -proc newVkPerformanceQueryReservationInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_RESERVATION_INFO_KHR, pNext: pointer = nil, maxPerformanceQueriesPerPool: uint32): VkPerformanceQueryReservationInfoKHR = - result.sType = sType - result.pNext = pNext - result.maxPerformanceQueriesPerPool = maxPerformanceQueriesPerPool - -type VkHeadlessSurfaceCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkHeadlessSurfaceCreateFlagsEXT - -proc newVkHeadlessSurfaceCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT, pNext: pointer = nil, flags: VkHeadlessSurfaceCreateFlagsEXT = 0.VkHeadlessSurfaceCreateFlagsEXT): VkHeadlessSurfaceCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags - -type VkPhysicalDeviceCoverageReductionModeFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - coverageReductionMode*: VkBool32 - -proc newVkPhysicalDeviceCoverageReductionModeFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV, pNext: pointer = nil, coverageReductionMode: VkBool32): VkPhysicalDeviceCoverageReductionModeFeaturesNV = - result.sType = sType - result.pNext = pNext - result.coverageReductionMode = coverageReductionMode - -type VkPipelineCoverageReductionStateCreateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkPipelineCoverageReductionStateCreateFlagsNV - coverageReductionMode*: VkCoverageReductionModeNV - -proc newVkPipelineCoverageReductionStateCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV, pNext: pointer = nil, flags: VkPipelineCoverageReductionStateCreateFlagsNV = 0.VkPipelineCoverageReductionStateCreateFlagsNV, coverageReductionMode: VkCoverageReductionModeNV): VkPipelineCoverageReductionStateCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.coverageReductionMode = coverageReductionMode - -type VkFramebufferMixedSamplesCombinationNV* = object - sType*: VkStructureType - pNext*: pointer - coverageReductionMode*: VkCoverageReductionModeNV - rasterizationSamples*: VkSampleCountFlagBits - depthStencilSamples*: VkSampleCountFlags - colorSamples*: VkSampleCountFlags - -proc newVkFramebufferMixedSamplesCombinationNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV, 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 - -type VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL* = object - sType*: VkStructureType - pNext*: pointer - shaderIntegerFunctions2*: VkBool32 - -proc newVkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL, pNext: pointer = nil, shaderIntegerFunctions2: VkBool32): VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL = - result.sType = sType - result.pNext = pNext - result.shaderIntegerFunctions2 = shaderIntegerFunctions2 - -type VkPerformanceValueDataINTEL* {.union.} = object - value32*: uint32 - value64*: uint64 - valueFloat*: float32 - valueBool*: VkBool32 - valueString*: cstring - -proc newVkPerformanceValueDataINTEL*(value32: uint32, value64: uint64, valueFloat: float32, valueBool: VkBool32, valueString: cstring): VkPerformanceValueDataINTEL = - result.value32 = value32 - result.value64 = value64 - result.valueFloat = valueFloat - result.valueBool = valueBool - result.valueString = valueString - -type VkPerformanceValueINTEL* = object - `type`*: VkPerformanceValueTypeINTEL - data*: VkPerformanceValueDataINTEL - -proc newVkPerformanceValueINTEL*(`type`: VkPerformanceValueTypeINTEL, data: VkPerformanceValueDataINTEL): VkPerformanceValueINTEL = - result.`type` = `type` - result.data = data - -type VkInitializePerformanceApiInfoINTEL* = object - sType*: VkStructureType - pNext*: pointer - pUserData*: pointer - -proc newVkInitializePerformanceApiInfoINTEL*(sType: VkStructureType = VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL, pNext: pointer = nil, pUserData: pointer = nil): VkInitializePerformanceApiInfoINTEL = - result.sType = sType - result.pNext = pNext - result.pUserData = pUserData - -type VkQueryPoolPerformanceQueryCreateInfoINTEL* = object - sType*: VkStructureType - pNext*: pointer - performanceCountersSampling*: VkQueryPoolSamplingModeINTEL - -proc newVkQueryPoolPerformanceQueryCreateInfoINTEL*(sType: VkStructureType = VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL, pNext: pointer = nil, performanceCountersSampling: VkQueryPoolSamplingModeINTEL): VkQueryPoolPerformanceQueryCreateInfoINTEL = - result.sType = sType - result.pNext = pNext - result.performanceCountersSampling = performanceCountersSampling - -type VkQueryPoolCreateInfoINTEL* = VkQueryPoolPerformanceQueryCreateInfoINTEL -type VkPerformanceMarkerInfoINTEL* = object - sType*: VkStructureType - pNext*: pointer - marker*: uint64 - -proc newVkPerformanceMarkerInfoINTEL*(sType: VkStructureType = VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL, pNext: pointer = nil, marker: uint64): VkPerformanceMarkerInfoINTEL = - result.sType = sType - result.pNext = pNext - result.marker = marker - -type VkPerformanceStreamMarkerInfoINTEL* = object - sType*: VkStructureType - pNext*: pointer - marker*: uint32 - -proc newVkPerformanceStreamMarkerInfoINTEL*(sType: VkStructureType = VK_STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL, pNext: pointer = nil, marker: uint32): VkPerformanceStreamMarkerInfoINTEL = - result.sType = sType - result.pNext = pNext - result.marker = marker - -type VkPerformanceOverrideInfoINTEL* = object - sType*: VkStructureType - pNext*: pointer - `type`*: VkPerformanceOverrideTypeINTEL - enable*: VkBool32 - parameter*: uint64 - -proc newVkPerformanceOverrideInfoINTEL*(sType: VkStructureType = VK_STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL, 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 - -type VkPerformanceConfigurationAcquireInfoINTEL* = object - sType*: VkStructureType - pNext*: pointer - `type`*: VkPerformanceConfigurationTypeINTEL - -proc newVkPerformanceConfigurationAcquireInfoINTEL*(sType: VkStructureType = VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL, pNext: pointer = nil, `type`: VkPerformanceConfigurationTypeINTEL): VkPerformanceConfigurationAcquireInfoINTEL = - result.sType = sType - result.pNext = pNext - result.`type` = `type` - -type VkPhysicalDeviceShaderClockFeaturesKHR* = object - sType*: VkStructureType - pNext*: pointer - shaderSubgroupClock*: VkBool32 - shaderDeviceClock*: VkBool32 - -proc newVkPhysicalDeviceShaderClockFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR, pNext: pointer = nil, shaderSubgroupClock: VkBool32, shaderDeviceClock: VkBool32): VkPhysicalDeviceShaderClockFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.shaderSubgroupClock = shaderSubgroupClock - result.shaderDeviceClock = shaderDeviceClock - -type VkPhysicalDeviceIndexTypeUint8FeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - indexTypeUint8*: VkBool32 - -proc newVkPhysicalDeviceIndexTypeUint8FeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT, pNext: pointer = nil, indexTypeUint8: VkBool32): VkPhysicalDeviceIndexTypeUint8FeaturesEXT = - result.sType = sType - result.pNext = pNext - result.indexTypeUint8 = indexTypeUint8 - -type VkPhysicalDeviceShaderSMBuiltinsPropertiesNV* = object - sType*: VkStructureType - pNext*: pointer - shaderSMCount*: uint32 - shaderWarpsPerSM*: uint32 - -proc newVkPhysicalDeviceShaderSMBuiltinsPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV, pNext: pointer = nil, shaderSMCount: uint32, shaderWarpsPerSM: uint32): VkPhysicalDeviceShaderSMBuiltinsPropertiesNV = - result.sType = sType - result.pNext = pNext - result.shaderSMCount = shaderSMCount - result.shaderWarpsPerSM = shaderWarpsPerSM - -type VkPhysicalDeviceShaderSMBuiltinsFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - shaderSMBuiltins*: VkBool32 - -proc newVkPhysicalDeviceShaderSMBuiltinsFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV, pNext: pointer = nil, shaderSMBuiltins: VkBool32): VkPhysicalDeviceShaderSMBuiltinsFeaturesNV = - result.sType = sType - result.pNext = pNext - result.shaderSMBuiltins = shaderSMBuiltins - -type VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - fragmentShaderSampleInterlock*: VkBool32 - fragmentShaderPixelInterlock*: VkBool32 - fragmentShaderShadingRateInterlock*: VkBool32 - -proc newVkPhysicalDeviceFragmentShaderInterlockFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT, 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 - -type VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures* = object - sType*: VkStructureType - pNext*: pointer - separateDepthStencilLayouts*: VkBool32 - -proc newVkPhysicalDeviceSeparateDepthStencilLayoutsFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES, pNext: pointer = nil, separateDepthStencilLayouts: VkBool32): VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures = - result.sType = sType - result.pNext = pNext - result.separateDepthStencilLayouts = separateDepthStencilLayouts - -type VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR* = VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures -type VkAttachmentReferenceStencilLayout* = object - sType*: VkStructureType - pNext*: pointer - stencilLayout*: VkImageLayout - -proc newVkAttachmentReferenceStencilLayout*(sType: VkStructureType = VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT, pNext: pointer = nil, stencilLayout: VkImageLayout): VkAttachmentReferenceStencilLayout = - result.sType = sType - result.pNext = pNext - result.stencilLayout = stencilLayout - -type VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - primitiveTopologyListRestart*: VkBool32 - primitiveTopologyPatchListRestart*: VkBool32 - -proc newVkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT, pNext: pointer = nil, primitiveTopologyListRestart: VkBool32, primitiveTopologyPatchListRestart: VkBool32): VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.primitiveTopologyListRestart = primitiveTopologyListRestart - result.primitiveTopologyPatchListRestart = primitiveTopologyPatchListRestart - -type VkAttachmentReferenceStencilLayoutKHR* = VkAttachmentReferenceStencilLayout -type VkAttachmentDescriptionStencilLayout* = object - sType*: VkStructureType - pNext*: pointer - stencilInitialLayout*: VkImageLayout - stencilFinalLayout*: VkImageLayout - -proc newVkAttachmentDescriptionStencilLayout*(sType: VkStructureType = VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT, pNext: pointer = nil, stencilInitialLayout: VkImageLayout, stencilFinalLayout: VkImageLayout): VkAttachmentDescriptionStencilLayout = - result.sType = sType - result.pNext = pNext - result.stencilInitialLayout = stencilInitialLayout - result.stencilFinalLayout = stencilFinalLayout - -type VkAttachmentDescriptionStencilLayoutKHR* = VkAttachmentDescriptionStencilLayout -type VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR* = object - sType*: VkStructureType - pNext*: pointer - pipelineExecutableInfo*: VkBool32 - -proc newVkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR, pNext: pointer = nil, pipelineExecutableInfo: VkBool32): VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.pipelineExecutableInfo = pipelineExecutableInfo - -type VkPipelineInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - pipeline*: VkPipeline - -proc newVkPipelineInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR, pNext: pointer = nil, pipeline: VkPipeline): VkPipelineInfoKHR = - result.sType = sType - result.pNext = pNext - result.pipeline = pipeline - -type VkPipelineInfoEXT* = VkPipelineInfoKHR -type VkPipelineExecutablePropertiesKHR* = object - sType*: VkStructureType - pNext*: pointer - stages*: VkShaderStageFlags - name*: array[VK_MAX_DESCRIPTION_SIZE, char] - description*: array[VK_MAX_DESCRIPTION_SIZE, char] - subgroupSize*: uint32 - -proc newVkPipelineExecutablePropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR, 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 - -type VkPipelineExecutableInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - pipeline*: VkPipeline - executableIndex*: uint32 - -proc newVkPipelineExecutableInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR, pNext: pointer = nil, pipeline: VkPipeline, executableIndex: uint32): VkPipelineExecutableInfoKHR = - result.sType = sType - result.pNext = pNext - result.pipeline = pipeline - result.executableIndex = executableIndex - -type VkPipelineExecutableStatisticValueKHR* {.union.} = object - b32*: VkBool32 - i64*: int64 - u64*: uint64 - f64*: float64 - -proc newVkPipelineExecutableStatisticValueKHR*(b32: VkBool32, i64: int64, u64: uint64, f64: float64): VkPipelineExecutableStatisticValueKHR = - result.b32 = b32 - result.i64 = i64 - result.u64 = u64 - result.f64 = f64 - -type VkPipelineExecutableStatisticKHR* = object - sType*: VkStructureType - pNext*: pointer - name*: array[VK_MAX_DESCRIPTION_SIZE, char] - description*: array[VK_MAX_DESCRIPTION_SIZE, char] - format*: VkPipelineExecutableStatisticFormatKHR - value*: VkPipelineExecutableStatisticValueKHR - -proc newVkPipelineExecutableStatisticKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR, 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 - -type VkPipelineExecutableInternalRepresentationKHR* = object - sType*: VkStructureType - pNext*: pointer - name*: array[VK_MAX_DESCRIPTION_SIZE, char] - description*: array[VK_MAX_DESCRIPTION_SIZE, char] - isText*: VkBool32 - dataSize*: uint - pData*: pointer - -proc newVkPipelineExecutableInternalRepresentationKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR, 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 - -type VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures* = object - sType*: VkStructureType - pNext*: pointer - shaderDemoteToHelperInvocation*: VkBool32 - -proc newVkPhysicalDeviceShaderDemoteToHelperInvocationFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES, pNext: pointer = nil, shaderDemoteToHelperInvocation: VkBool32): VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures = - result.sType = sType - result.pNext = pNext - result.shaderDemoteToHelperInvocation = shaderDemoteToHelperInvocation - -type VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT* = VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures -type VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - texelBufferAlignment*: VkBool32 - -proc newVkPhysicalDeviceTexelBufferAlignmentFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT, pNext: pointer = nil, texelBufferAlignment: VkBool32): VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.texelBufferAlignment = texelBufferAlignment - -type VkPhysicalDeviceTexelBufferAlignmentProperties* = object - sType*: VkStructureType - pNext*: pointer - storageTexelBufferOffsetAlignmentBytes*: VkDeviceSize - storageTexelBufferOffsetSingleTexelAlignment*: VkBool32 - uniformTexelBufferOffsetAlignmentBytes*: VkDeviceSize - uniformTexelBufferOffsetSingleTexelAlignment*: VkBool32 - -proc newVkPhysicalDeviceTexelBufferAlignmentProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES, 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 - -type VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT* = VkPhysicalDeviceTexelBufferAlignmentProperties -type VkPhysicalDeviceSubgroupSizeControlFeatures* = object - sType*: VkStructureType - pNext*: pointer - subgroupSizeControl*: VkBool32 - computeFullSubgroups*: VkBool32 - -proc newVkPhysicalDeviceSubgroupSizeControlFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES, pNext: pointer = nil, subgroupSizeControl: VkBool32, computeFullSubgroups: VkBool32): VkPhysicalDeviceSubgroupSizeControlFeatures = - result.sType = sType - result.pNext = pNext - result.subgroupSizeControl = subgroupSizeControl - result.computeFullSubgroups = computeFullSubgroups - -type VkPhysicalDeviceSubgroupSizeControlFeaturesEXT* = VkPhysicalDeviceSubgroupSizeControlFeatures -type VkPhysicalDeviceSubgroupSizeControlProperties* = object - sType*: VkStructureType - pNext*: pointer - minSubgroupSize*: uint32 - maxSubgroupSize*: uint32 - maxComputeWorkgroupSubgroups*: uint32 - requiredSubgroupSizeStages*: VkShaderStageFlags - -proc newVkPhysicalDeviceSubgroupSizeControlProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES, 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 - -type VkPhysicalDeviceSubgroupSizeControlPropertiesEXT* = VkPhysicalDeviceSubgroupSizeControlProperties -type VkPipelineShaderStageRequiredSubgroupSizeCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - requiredSubgroupSize*: uint32 - -proc newVkPipelineShaderStageRequiredSubgroupSizeCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO, pNext: pointer = nil, requiredSubgroupSize: uint32): VkPipelineShaderStageRequiredSubgroupSizeCreateInfo = - result.sType = sType - result.pNext = pNext - result.requiredSubgroupSize = requiredSubgroupSize - -type VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT* = VkPipelineShaderStageRequiredSubgroupSizeCreateInfo -type VkShaderRequiredSubgroupSizeCreateInfoEXT* = VkPipelineShaderStageRequiredSubgroupSizeCreateInfo -type VkSubpassShadingPipelineCreateInfoHUAWEI* = object - sType*: VkStructureType - pNext*: pointer - renderPass*: VkRenderPass - subpass*: uint32 - -proc newVkSubpassShadingPipelineCreateInfoHUAWEI*(sType: VkStructureType = VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI, pNext: pointer = nil, renderPass: VkRenderPass, subpass: uint32): VkSubpassShadingPipelineCreateInfoHUAWEI = - result.sType = sType - result.pNext = pNext - result.renderPass = renderPass - result.subpass = subpass - -type VkPhysicalDeviceSubpassShadingPropertiesHUAWEI* = object - sType*: VkStructureType - pNext*: pointer - maxSubpassShadingWorkgroupSizeAspectRatio*: uint32 - -proc newVkPhysicalDeviceSubpassShadingPropertiesHUAWEI*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI, pNext: pointer = nil, maxSubpassShadingWorkgroupSizeAspectRatio: uint32): VkPhysicalDeviceSubpassShadingPropertiesHUAWEI = - result.sType = sType - result.pNext = pNext - result.maxSubpassShadingWorkgroupSizeAspectRatio = maxSubpassShadingWorkgroupSizeAspectRatio - -type VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI* = object - sType*: VkStructureType - pNext*: pointer - maxWorkGroupCount*: array[3, uint32] - maxWorkGroupSize*: array[3, uint32] - maxOutputClusterCount*: uint32 - indirectBufferOffsetAlignment*: VkDeviceSize - -proc newVkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_PROPERTIES_HUAWEI, 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 - -type VkMemoryOpaqueCaptureAddressAllocateInfo* = object - sType*: VkStructureType - pNext*: pointer - opaqueCaptureAddress*: uint64 - -proc newVkMemoryOpaqueCaptureAddressAllocateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO, pNext: pointer = nil, opaqueCaptureAddress: uint64): VkMemoryOpaqueCaptureAddressAllocateInfo = - result.sType = sType - result.pNext = pNext - result.opaqueCaptureAddress = opaqueCaptureAddress - -type VkMemoryOpaqueCaptureAddressAllocateInfoKHR* = VkMemoryOpaqueCaptureAddressAllocateInfo -type VkDeviceMemoryOpaqueCaptureAddressInfo* = object - sType*: VkStructureType - pNext*: pointer - memory*: VkDeviceMemory - -proc newVkDeviceMemoryOpaqueCaptureAddressInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO, pNext: pointer = nil, memory: VkDeviceMemory): VkDeviceMemoryOpaqueCaptureAddressInfo = - result.sType = sType - result.pNext = pNext - result.memory = memory - -type VkDeviceMemoryOpaqueCaptureAddressInfoKHR* = VkDeviceMemoryOpaqueCaptureAddressInfo -type VkPhysicalDeviceLineRasterizationFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - rectangularLines*: VkBool32 - bresenhamLines*: VkBool32 - smoothLines*: VkBool32 - stippledRectangularLines*: VkBool32 - stippledBresenhamLines*: VkBool32 - stippledSmoothLines*: VkBool32 - -proc newVkPhysicalDeviceLineRasterizationFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT, pNext: pointer = nil, rectangularLines: VkBool32, bresenhamLines: VkBool32, smoothLines: VkBool32, stippledRectangularLines: VkBool32, stippledBresenhamLines: VkBool32, stippledSmoothLines: VkBool32): VkPhysicalDeviceLineRasterizationFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.rectangularLines = rectangularLines - result.bresenhamLines = bresenhamLines - result.smoothLines = smoothLines - result.stippledRectangularLines = stippledRectangularLines - result.stippledBresenhamLines = stippledBresenhamLines - result.stippledSmoothLines = stippledSmoothLines - -type VkPhysicalDeviceLineRasterizationPropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - lineSubPixelPrecisionBits*: uint32 - -proc newVkPhysicalDeviceLineRasterizationPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT, pNext: pointer = nil, lineSubPixelPrecisionBits: uint32): VkPhysicalDeviceLineRasterizationPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.lineSubPixelPrecisionBits = lineSubPixelPrecisionBits - -type VkPipelineRasterizationLineStateCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - lineRasterizationMode*: VkLineRasterizationModeEXT - stippledLineEnable*: VkBool32 - lineStippleFactor*: uint32 - lineStipplePattern*: uint16 - -proc newVkPipelineRasterizationLineStateCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT, pNext: pointer = nil, lineRasterizationMode: VkLineRasterizationModeEXT, stippledLineEnable: VkBool32, lineStippleFactor: uint32, lineStipplePattern: uint16): VkPipelineRasterizationLineStateCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.lineRasterizationMode = lineRasterizationMode - result.stippledLineEnable = stippledLineEnable - result.lineStippleFactor = lineStippleFactor - result.lineStipplePattern = lineStipplePattern - -type VkPhysicalDevicePipelineCreationCacheControlFeatures* = object - sType*: VkStructureType - pNext*: pointer - pipelineCreationCacheControl*: VkBool32 - -proc newVkPhysicalDevicePipelineCreationCacheControlFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES, pNext: pointer = nil, pipelineCreationCacheControl: VkBool32): VkPhysicalDevicePipelineCreationCacheControlFeatures = - result.sType = sType - result.pNext = pNext - result.pipelineCreationCacheControl = pipelineCreationCacheControl - -type VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT* = VkPhysicalDevicePipelineCreationCacheControlFeatures -type VkPhysicalDeviceVulkan11Features* = object - sType*: VkStructureType - pNext*: pointer - storageBuffer16BitAccess*: VkBool32 - uniformAndStorageBuffer16BitAccess*: VkBool32 - storagePushConstant16*: VkBool32 - storageInputOutput16*: VkBool32 - multiview*: VkBool32 - multiviewGeometryShader*: VkBool32 - multiviewTessellationShader*: VkBool32 - variablePointersStorageBuffer*: VkBool32 - variablePointers*: VkBool32 - protectedMemory*: VkBool32 - samplerYcbcrConversion*: VkBool32 - shaderDrawParameters*: VkBool32 - -proc newVkPhysicalDeviceVulkan11Features*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES, 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 - -type VkPhysicalDeviceVulkan11Properties* = object - sType*: VkStructureType - pNext*: pointer - 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 - -proc newVkPhysicalDeviceVulkan11Properties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES, 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 - -type VkPhysicalDeviceVulkan12Features* = object - sType*: VkStructureType - pNext*: pointer - 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 - -proc newVkPhysicalDeviceVulkan12Features*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES, 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 - -type VkPhysicalDeviceVulkan12Properties* = object - sType*: VkStructureType - pNext*: pointer - 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 - -proc newVkPhysicalDeviceVulkan12Properties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES, 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 - -type 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 - -proc newVkPhysicalDeviceVulkan13Features*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_FEATURES, 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 - -type 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 - -proc newVkPhysicalDeviceVulkan13Properties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_PROPERTIES, 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 - -type VkPipelineCompilerControlCreateInfoAMD* = object - sType*: VkStructureType - pNext*: pointer - compilerControlFlags*: VkPipelineCompilerControlFlagsAMD - -proc newVkPipelineCompilerControlCreateInfoAMD*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD, pNext: pointer = nil, compilerControlFlags: VkPipelineCompilerControlFlagsAMD): VkPipelineCompilerControlCreateInfoAMD = - result.sType = sType - result.pNext = pNext - result.compilerControlFlags = compilerControlFlags - -type VkPhysicalDeviceCoherentMemoryFeaturesAMD* = object - sType*: VkStructureType - pNext*: pointer - deviceCoherentMemory*: VkBool32 - -proc newVkPhysicalDeviceCoherentMemoryFeaturesAMD*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD, pNext: pointer = nil, deviceCoherentMemory: VkBool32): VkPhysicalDeviceCoherentMemoryFeaturesAMD = - result.sType = sType - result.pNext = pNext - result.deviceCoherentMemory = deviceCoherentMemory - -type VkFaultData* = object - sType*: VkStructureType - pNext*: pointer - faultLevel*: VkFaultLevel - faultType*: VkFaultType - -proc newVkFaultData*(sType: VkStructureType = VK_STRUCTURE_TYPE_FAULT_DATA, pNext: pointer = nil, faultLevel: VkFaultLevel, faultType: VkFaultType): VkFaultData = - result.sType = sType - result.pNext = pNext - result.faultLevel = faultLevel - result.faultType = faultType - -type VkFaultCallbackInfo* = object - sType*: VkStructureType - pNext*: pointer - faultCount*: uint32 - pFaults*: ptr VkFaultData - pfnFaultCallback*: PFN_vkFaultCallbackFunction - -proc newVkFaultCallbackInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_FAULT_CALLBACK_INFO, 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 - -type VkPhysicalDeviceToolProperties* = object - sType*: VkStructureType - pNext*: pointer - 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] - -proc newVkPhysicalDeviceToolProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES, 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 - -type VkPhysicalDeviceToolPropertiesEXT* = VkPhysicalDeviceToolProperties -type VkSamplerCustomBorderColorCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - customBorderColor*: VkClearColorValue - format*: VkFormat - -proc newVkSamplerCustomBorderColorCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT, pNext: pointer = nil, customBorderColor: VkClearColorValue, format: VkFormat): VkSamplerCustomBorderColorCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.customBorderColor = customBorderColor - result.format = format - -type VkPhysicalDeviceCustomBorderColorPropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - maxCustomBorderColorSamplers*: uint32 - -proc newVkPhysicalDeviceCustomBorderColorPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT, pNext: pointer = nil, maxCustomBorderColorSamplers: uint32): VkPhysicalDeviceCustomBorderColorPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.maxCustomBorderColorSamplers = maxCustomBorderColorSamplers - -type VkPhysicalDeviceCustomBorderColorFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - customBorderColors*: VkBool32 - customBorderColorWithoutFormat*: VkBool32 - -proc newVkPhysicalDeviceCustomBorderColorFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT, pNext: pointer = nil, customBorderColors: VkBool32, customBorderColorWithoutFormat: VkBool32): VkPhysicalDeviceCustomBorderColorFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.customBorderColors = customBorderColors - result.customBorderColorWithoutFormat = customBorderColorWithoutFormat - -type VkSamplerBorderColorComponentMappingCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - components*: VkComponentMapping - srgb*: VkBool32 - -proc newVkSamplerBorderColorComponentMappingCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT, pNext: pointer = nil, components: VkComponentMapping, srgb: VkBool32): VkSamplerBorderColorComponentMappingCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.components = components - result.srgb = srgb - -type VkPhysicalDeviceBorderColorSwizzleFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - borderColorSwizzle*: VkBool32 - borderColorSwizzleFromImage*: VkBool32 - -proc newVkPhysicalDeviceBorderColorSwizzleFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT, pNext: pointer = nil, borderColorSwizzle: VkBool32, borderColorSwizzleFromImage: VkBool32): VkPhysicalDeviceBorderColorSwizzleFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.borderColorSwizzle = borderColorSwizzle - result.borderColorSwizzleFromImage = borderColorSwizzleFromImage - -type VkDeviceOrHostAddressKHR* {.union.} = object - deviceAddress*: VkDeviceAddress - hostAddress*: pointer - -proc newVkDeviceOrHostAddressKHR*(deviceAddress: VkDeviceAddress, hostAddress: pointer = nil): VkDeviceOrHostAddressKHR = - result.deviceAddress = deviceAddress - result.hostAddress = hostAddress - -type VkDeviceOrHostAddressConstKHR* {.union.} = object - deviceAddress*: VkDeviceAddress - hostAddress*: pointer - -proc newVkDeviceOrHostAddressConstKHR*(deviceAddress: VkDeviceAddress, hostAddress: pointer = nil): VkDeviceOrHostAddressConstKHR = - result.deviceAddress = deviceAddress - result.hostAddress = hostAddress - -type VkAccelerationStructureGeometryTrianglesDataKHR* = object - sType*: VkStructureType - pNext*: pointer - vertexFormat*: VkFormat - vertexData*: VkDeviceOrHostAddressConstKHR - vertexStride*: VkDeviceSize - maxVertex*: uint32 - indexType*: VkIndexType - indexData*: VkDeviceOrHostAddressConstKHR - transformData*: VkDeviceOrHostAddressConstKHR - -proc newVkAccelerationStructureGeometryTrianglesDataKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR, 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 - -type VkAccelerationStructureGeometryAabbsDataKHR* = object - sType*: VkStructureType - pNext*: pointer - data*: VkDeviceOrHostAddressConstKHR - stride*: VkDeviceSize - -proc newVkAccelerationStructureGeometryAabbsDataKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR, pNext: pointer = nil, data: VkDeviceOrHostAddressConstKHR, stride: VkDeviceSize): VkAccelerationStructureGeometryAabbsDataKHR = - result.sType = sType - result.pNext = pNext - result.data = data - result.stride = stride - -type VkAccelerationStructureGeometryInstancesDataKHR* = object - sType*: VkStructureType - pNext*: pointer - arrayOfPointers*: VkBool32 - data*: VkDeviceOrHostAddressConstKHR - -proc newVkAccelerationStructureGeometryInstancesDataKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR, pNext: pointer = nil, arrayOfPointers: VkBool32, data: VkDeviceOrHostAddressConstKHR): VkAccelerationStructureGeometryInstancesDataKHR = - result.sType = sType - result.pNext = pNext - result.arrayOfPointers = arrayOfPointers - result.data = data - -type VkAccelerationStructureGeometryDataKHR* {.union.} = object - triangles*: VkAccelerationStructureGeometryTrianglesDataKHR - aabbs*: VkAccelerationStructureGeometryAabbsDataKHR - instances*: VkAccelerationStructureGeometryInstancesDataKHR - -proc newVkAccelerationStructureGeometryDataKHR*(triangles: VkAccelerationStructureGeometryTrianglesDataKHR, aabbs: VkAccelerationStructureGeometryAabbsDataKHR, instances: VkAccelerationStructureGeometryInstancesDataKHR): VkAccelerationStructureGeometryDataKHR = - result.triangles = triangles - result.aabbs = aabbs - result.instances = instances - -type VkAccelerationStructureGeometryKHR* = object - sType*: VkStructureType - pNext*: pointer - geometryType*: VkGeometryTypeKHR - geometry*: VkAccelerationStructureGeometryDataKHR - flags*: VkGeometryFlagsKHR - -proc newVkAccelerationStructureGeometryKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR, 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 - -type VkAccelerationStructureBuildGeometryInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - `type`*: VkAccelerationStructureTypeKHR - flags*: VkBuildAccelerationStructureFlagsKHR - mode*: VkBuildAccelerationStructureModeKHR - srcAccelerationStructure*: VkAccelerationStructureKHR - dstAccelerationStructure*: VkAccelerationStructureKHR - geometryCount*: uint32 - pGeometries*: ptr VkAccelerationStructureGeometryKHR - ppGeometries*: ptr ptr VkAccelerationStructureGeometryKHR - scratchData*: VkDeviceOrHostAddressKHR - -proc newVkAccelerationStructureBuildGeometryInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR, 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 - -type VkAccelerationStructureBuildRangeInfoKHR* = object - primitiveCount*: uint32 - primitiveOffset*: uint32 - firstVertex*: uint32 - transformOffset*: uint32 - -proc newVkAccelerationStructureBuildRangeInfoKHR*(primitiveCount: uint32, primitiveOffset: uint32, firstVertex: uint32, transformOffset: uint32): VkAccelerationStructureBuildRangeInfoKHR = - result.primitiveCount = primitiveCount - result.primitiveOffset = primitiveOffset - result.firstVertex = firstVertex - result.transformOffset = transformOffset - -type VkAccelerationStructureCreateInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - createFlags*: VkAccelerationStructureCreateFlagsKHR - buffer*: VkBuffer - offset*: VkDeviceSize - size*: VkDeviceSize - `type`*: VkAccelerationStructureTypeKHR - deviceAddress*: VkDeviceAddress - -proc newVkAccelerationStructureCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR, 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 - -type VkAabbPositionsKHR* = object - minX*: float32 - minY*: float32 - minZ*: float32 - maxX*: float32 - maxY*: float32 - maxZ*: float32 - -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 - -type VkAabbPositionsNV* = VkAabbPositionsKHR -type VkTransformMatrixKHR* = object - matrix*: array[3, float32] - -proc newVkTransformMatrixKHR*(matrix: array[3, float32]): VkTransformMatrixKHR = - result.matrix = matrix - -type VkTransformMatrixNV* = VkTransformMatrixKHR -type VkAccelerationStructureInstanceKHR* = object - transform*: VkTransformMatrixKHR - instanceCustomIndex*: uint32 - mask*: uint32 - instanceShaderBindingTableRecordOffset*: uint32 - flags*: VkGeometryInstanceFlagsKHR - accelerationStructureReference*: uint64 - -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 - -type VkAccelerationStructureInstanceNV* = VkAccelerationStructureInstanceKHR -type VkAccelerationStructureDeviceAddressInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - accelerationStructure*: VkAccelerationStructureKHR - -proc newVkAccelerationStructureDeviceAddressInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR, pNext: pointer = nil, accelerationStructure: VkAccelerationStructureKHR): VkAccelerationStructureDeviceAddressInfoKHR = - result.sType = sType - result.pNext = pNext - result.accelerationStructure = accelerationStructure - -type VkAccelerationStructureVersionInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - pVersionData*: ptr uint8 - -proc newVkAccelerationStructureVersionInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_INFO_KHR, pNext: pointer = nil, pVersionData: ptr uint8): VkAccelerationStructureVersionInfoKHR = - result.sType = sType - result.pNext = pNext - result.pVersionData = pVersionData - -type VkCopyAccelerationStructureInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - src*: VkAccelerationStructureKHR - dst*: VkAccelerationStructureKHR - mode*: VkCopyAccelerationStructureModeKHR - -proc newVkCopyAccelerationStructureInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR, 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 - -type VkCopyAccelerationStructureToMemoryInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - src*: VkAccelerationStructureKHR - dst*: VkDeviceOrHostAddressKHR - mode*: VkCopyAccelerationStructureModeKHR - -proc newVkCopyAccelerationStructureToMemoryInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR, 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 - -type VkCopyMemoryToAccelerationStructureInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - src*: VkDeviceOrHostAddressConstKHR - dst*: VkAccelerationStructureKHR - mode*: VkCopyAccelerationStructureModeKHR - -proc newVkCopyMemoryToAccelerationStructureInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR, 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 - -type VkRayTracingPipelineInterfaceCreateInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - maxPipelineRayPayloadSize*: uint32 - maxPipelineRayHitAttributeSize*: uint32 - -proc newVkRayTracingPipelineInterfaceCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR, pNext: pointer = nil, maxPipelineRayPayloadSize: uint32, maxPipelineRayHitAttributeSize: uint32): VkRayTracingPipelineInterfaceCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.maxPipelineRayPayloadSize = maxPipelineRayPayloadSize - result.maxPipelineRayHitAttributeSize = maxPipelineRayHitAttributeSize - -type VkPipelineLibraryCreateInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - libraryCount*: uint32 - pLibraries*: ptr VkPipeline - -proc newVkPipelineLibraryCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR, pNext: pointer = nil, libraryCount: uint32, pLibraries: ptr VkPipeline): VkPipelineLibraryCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.libraryCount = libraryCount - result.pLibraries = pLibraries - -type VkRefreshObjectKHR* = object - objectType*: VkObjectType - objectHandle*: uint64 - flags*: VkRefreshObjectFlagsKHR - -proc newVkRefreshObjectKHR*(objectType: VkObjectType, objectHandle: uint64, flags: VkRefreshObjectFlagsKHR = 0.VkRefreshObjectFlagsKHR): VkRefreshObjectKHR = - result.objectType = objectType - result.objectHandle = objectHandle - result.flags = flags - -type VkRefreshObjectListKHR* = object - sType*: VkStructureType - pNext*: pointer - objectCount*: uint32 - pObjects*: ptr VkRefreshObjectKHR - -proc newVkRefreshObjectListKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_REFRESH_OBJECT_LIST_KHR, pNext: pointer = nil, objectCount: uint32, pObjects: ptr VkRefreshObjectKHR): VkRefreshObjectListKHR = - result.sType = sType - result.pNext = pNext - result.objectCount = objectCount - result.pObjects = pObjects - -type VkPhysicalDeviceExtendedDynamicStateFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - extendedDynamicState*: VkBool32 - -proc newVkPhysicalDeviceExtendedDynamicStateFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT, pNext: pointer = nil, extendedDynamicState: VkBool32): VkPhysicalDeviceExtendedDynamicStateFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.extendedDynamicState = extendedDynamicState - -type VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - extendedDynamicState2*: VkBool32 - extendedDynamicState2LogicOp*: VkBool32 - extendedDynamicState2PatchControlPoints*: VkBool32 - -proc newVkPhysicalDeviceExtendedDynamicState2FeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT, 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 - -type 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 - -proc newVkPhysicalDeviceExtendedDynamicState3FeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_FEATURES_EXT, 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 - -type VkPhysicalDeviceExtendedDynamicState3PropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - dynamicPrimitiveTopologyUnrestricted*: VkBool32 - -proc newVkPhysicalDeviceExtendedDynamicState3PropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_PROPERTIES_EXT, pNext: pointer = nil, dynamicPrimitiveTopologyUnrestricted: VkBool32): VkPhysicalDeviceExtendedDynamicState3PropertiesEXT = - result.sType = sType - result.pNext = pNext - result.dynamicPrimitiveTopologyUnrestricted = dynamicPrimitiveTopologyUnrestricted - -type VkColorBlendEquationEXT* = object - srcColorBlendFactor*: VkBlendFactor - dstColorBlendFactor*: VkBlendFactor - colorBlendOp*: VkBlendOp - srcAlphaBlendFactor*: VkBlendFactor - dstAlphaBlendFactor*: VkBlendFactor - alphaBlendOp*: VkBlendOp - -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 - -type VkColorBlendAdvancedEXT* = object - advancedBlendOp*: VkBlendOp - srcPremultiplied*: VkBool32 - dstPremultiplied*: VkBool32 - blendOverlap*: VkBlendOverlapEXT - clampResults*: VkBool32 - -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 - -type VkRenderPassTransformBeginInfoQCOM* = object - sType*: VkStructureType - pNext*: pointer - transform*: VkSurfaceTransformFlagBitsKHR - -proc newVkRenderPassTransformBeginInfoQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM, pNext: pointer = nil, transform: VkSurfaceTransformFlagBitsKHR): VkRenderPassTransformBeginInfoQCOM = - result.sType = sType - result.pNext = pNext - result.transform = transform - -type VkCopyCommandTransformInfoQCOM* = object - sType*: VkStructureType - pNext*: pointer - transform*: VkSurfaceTransformFlagBitsKHR - -proc newVkCopyCommandTransformInfoQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM, pNext: pointer = nil, transform: VkSurfaceTransformFlagBitsKHR): VkCopyCommandTransformInfoQCOM = - result.sType = sType - result.pNext = pNext - result.transform = transform - -type VkCommandBufferInheritanceRenderPassTransformInfoQCOM* = object - sType*: VkStructureType - pNext*: pointer - transform*: VkSurfaceTransformFlagBitsKHR - renderArea*: VkRect2D - -proc newVkCommandBufferInheritanceRenderPassTransformInfoQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM, pNext: pointer = nil, transform: VkSurfaceTransformFlagBitsKHR, renderArea: VkRect2D): VkCommandBufferInheritanceRenderPassTransformInfoQCOM = - result.sType = sType - result.pNext = pNext - result.transform = transform - result.renderArea = renderArea - -type VkPhysicalDeviceDiagnosticsConfigFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - diagnosticsConfig*: VkBool32 - -proc newVkPhysicalDeviceDiagnosticsConfigFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV, pNext: pointer = nil, diagnosticsConfig: VkBool32): VkPhysicalDeviceDiagnosticsConfigFeaturesNV = - result.sType = sType - result.pNext = pNext - result.diagnosticsConfig = diagnosticsConfig - -type VkDeviceDiagnosticsConfigCreateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkDeviceDiagnosticsConfigFlagsNV - -proc newVkDeviceDiagnosticsConfigCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV, pNext: pointer = nil, flags: VkDeviceDiagnosticsConfigFlagsNV = 0.VkDeviceDiagnosticsConfigFlagsNV): VkDeviceDiagnosticsConfigCreateInfoNV = - result.sType = sType - result.pNext = pNext - result.flags = flags - -type VkPipelineOfflineCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - pipelineIdentifier*: array[VK_UUID_SIZE, uint8] - matchControl*: VkPipelineMatchControl - poolEntrySize*: VkDeviceSize - -proc newVkPipelineOfflineCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_OFFLINE_CREATE_INFO, 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 - -type VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures* = object - sType*: VkStructureType - pNext*: pointer - shaderZeroInitializeWorkgroupMemory*: VkBool32 - -proc newVkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES, pNext: pointer = nil, shaderZeroInitializeWorkgroupMemory: VkBool32): VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures = - result.sType = sType - result.pNext = pNext - result.shaderZeroInitializeWorkgroupMemory = shaderZeroInitializeWorkgroupMemory - -type VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR* = VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures -type VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* = object - sType*: VkStructureType - pNext*: pointer - shaderSubgroupUniformControlFlow*: VkBool32 - -proc newVkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR, pNext: pointer = nil, shaderSubgroupUniformControlFlow: VkBool32): VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.shaderSubgroupUniformControlFlow = shaderSubgroupUniformControlFlow - -type VkPhysicalDeviceRobustness2FeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - robustBufferAccess2*: VkBool32 - robustImageAccess2*: VkBool32 - nullDescriptor*: VkBool32 - -proc newVkPhysicalDeviceRobustness2FeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT, 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 - -type VkPhysicalDeviceRobustness2PropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - robustStorageBufferAccessSizeAlignment*: VkDeviceSize - robustUniformBufferAccessSizeAlignment*: VkDeviceSize - -proc newVkPhysicalDeviceRobustness2PropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT, pNext: pointer = nil, robustStorageBufferAccessSizeAlignment: VkDeviceSize, robustUniformBufferAccessSizeAlignment: VkDeviceSize): VkPhysicalDeviceRobustness2PropertiesEXT = - result.sType = sType - result.pNext = pNext - result.robustStorageBufferAccessSizeAlignment = robustStorageBufferAccessSizeAlignment - result.robustUniformBufferAccessSizeAlignment = robustUniformBufferAccessSizeAlignment - -type VkPhysicalDeviceImageRobustnessFeatures* = object - sType*: VkStructureType - pNext*: pointer - robustImageAccess*: VkBool32 - -proc newVkPhysicalDeviceImageRobustnessFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES, pNext: pointer = nil, robustImageAccess: VkBool32): VkPhysicalDeviceImageRobustnessFeatures = - result.sType = sType - result.pNext = pNext - result.robustImageAccess = robustImageAccess - -type VkPhysicalDeviceImageRobustnessFeaturesEXT* = VkPhysicalDeviceImageRobustnessFeatures -type VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* = object - sType*: VkStructureType - pNext*: pointer - workgroupMemoryExplicitLayout*: VkBool32 - workgroupMemoryExplicitLayoutScalarBlockLayout*: VkBool32 - workgroupMemoryExplicitLayout8BitAccess*: VkBool32 - workgroupMemoryExplicitLayout16BitAccess*: VkBool32 - -proc newVkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR, 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 - -type 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 - -proc newVkPhysicalDevicePortabilitySubsetFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR, 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 - -type VkPhysicalDevicePortabilitySubsetPropertiesKHR* = object - sType*: VkStructureType - pNext*: pointer - minVertexInputBindingStrideAlignment*: uint32 - -proc newVkPhysicalDevicePortabilitySubsetPropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR, pNext: pointer = nil, minVertexInputBindingStrideAlignment: uint32): VkPhysicalDevicePortabilitySubsetPropertiesKHR = - result.sType = sType - result.pNext = pNext - result.minVertexInputBindingStrideAlignment = minVertexInputBindingStrideAlignment - -type VkPhysicalDevice4444FormatsFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - formatA4R4G4B4*: VkBool32 - formatA4B4G4R4*: VkBool32 - -proc newVkPhysicalDevice4444FormatsFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT, pNext: pointer = nil, formatA4R4G4B4: VkBool32, formatA4B4G4R4: VkBool32): VkPhysicalDevice4444FormatsFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.formatA4R4G4B4 = formatA4R4G4B4 - result.formatA4B4G4R4 = formatA4B4G4R4 - -type VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* = object - sType*: VkStructureType - pNext*: pointer - subpassShading*: VkBool32 - -proc newVkPhysicalDeviceSubpassShadingFeaturesHUAWEI*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI, pNext: pointer = nil, subpassShading: VkBool32): VkPhysicalDeviceSubpassShadingFeaturesHUAWEI = - result.sType = sType - result.pNext = pNext - result.subpassShading = subpassShading - -type VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI* = object - sType*: VkStructureType - pNext*: pointer - clustercullingShader*: VkBool32 - multiviewClusterCullingShader*: VkBool32 - -proc newVkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_FEATURES_HUAWEI, pNext: pointer = nil, clustercullingShader: VkBool32, multiviewClusterCullingShader: VkBool32): VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI = - result.sType = sType - result.pNext = pNext - result.clustercullingShader = clustercullingShader - result.multiviewClusterCullingShader = multiviewClusterCullingShader - -type VkBufferCopy2* = object - sType*: VkStructureType - pNext*: pointer - srcOffset*: VkDeviceSize - dstOffset*: VkDeviceSize - size*: VkDeviceSize - -proc newVkBufferCopy2*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_COPY_2, 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 - -type VkBufferCopy2KHR* = VkBufferCopy2 -type VkImageCopy2* = object - sType*: VkStructureType - pNext*: pointer - srcSubresource*: VkImageSubresourceLayers - srcOffset*: VkOffset3D - dstSubresource*: VkImageSubresourceLayers - dstOffset*: VkOffset3D - extent*: VkExtent3D - -proc newVkImageCopy2*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_COPY_2, 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 - -type VkImageCopy2KHR* = VkImageCopy2 -type VkImageBlit2* = object - sType*: VkStructureType - pNext*: pointer - srcSubresource*: VkImageSubresourceLayers - srcOffsets*: array[2, VkOffset3D] - dstSubresource*: VkImageSubresourceLayers - dstOffsets*: array[2, VkOffset3D] - -proc newVkImageBlit2*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_BLIT_2, 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 - -type VkImageBlit2KHR* = VkImageBlit2 -type VkBufferImageCopy2* = object - sType*: VkStructureType - pNext*: pointer - bufferOffset*: VkDeviceSize - bufferRowLength*: uint32 - bufferImageHeight*: uint32 - imageSubresource*: VkImageSubresourceLayers - imageOffset*: VkOffset3D - imageExtent*: VkExtent3D - -proc newVkBufferImageCopy2*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2, 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 - -type VkBufferImageCopy2KHR* = VkBufferImageCopy2 -type VkImageResolve2* = object - sType*: VkStructureType - pNext*: pointer - srcSubresource*: VkImageSubresourceLayers - srcOffset*: VkOffset3D - dstSubresource*: VkImageSubresourceLayers - dstOffset*: VkOffset3D - extent*: VkExtent3D - -proc newVkImageResolve2*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2, 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 - -type VkImageResolve2KHR* = VkImageResolve2 -type VkCopyBufferInfo2* = object - sType*: VkStructureType - pNext*: pointer - srcBuffer*: VkBuffer - dstBuffer*: VkBuffer - regionCount*: uint32 - pRegions*: ptr VkBufferCopy2 - -proc newVkCopyBufferInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2, 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 - -type VkCopyBufferInfo2KHR* = VkCopyBufferInfo2 -type VkCopyImageInfo2* = object - sType*: VkStructureType - pNext*: pointer - srcImage*: VkImage - srcImageLayout*: VkImageLayout - dstImage*: VkImage - dstImageLayout*: VkImageLayout - regionCount*: uint32 - pRegions*: ptr VkImageCopy2 - -proc newVkCopyImageInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2, 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 - -type VkCopyImageInfo2KHR* = VkCopyImageInfo2 -type VkBlitImageInfo2* = object - sType*: VkStructureType - pNext*: pointer - srcImage*: VkImage - srcImageLayout*: VkImageLayout - dstImage*: VkImage - dstImageLayout*: VkImageLayout - regionCount*: uint32 - pRegions*: ptr VkImageBlit2 - filter*: VkFilter - -proc newVkBlitImageInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2, 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 - -type VkBlitImageInfo2KHR* = VkBlitImageInfo2 -type VkCopyBufferToImageInfo2* = object - sType*: VkStructureType - pNext*: pointer - srcBuffer*: VkBuffer - dstImage*: VkImage - dstImageLayout*: VkImageLayout - regionCount*: uint32 - pRegions*: ptr VkBufferImageCopy2 - -proc newVkCopyBufferToImageInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2, 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 - -type VkCopyBufferToImageInfo2KHR* = VkCopyBufferToImageInfo2 -type VkCopyImageToBufferInfo2* = object - sType*: VkStructureType - pNext*: pointer - srcImage*: VkImage - srcImageLayout*: VkImageLayout - dstBuffer*: VkBuffer - regionCount*: uint32 - pRegions*: ptr VkBufferImageCopy2 - -proc newVkCopyImageToBufferInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2, 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 - -type VkCopyImageToBufferInfo2KHR* = VkCopyImageToBufferInfo2 -type VkResolveImageInfo2* = object - sType*: VkStructureType - pNext*: pointer - srcImage*: VkImage - srcImageLayout*: VkImageLayout - dstImage*: VkImage - dstImageLayout*: VkImageLayout - regionCount*: uint32 - pRegions*: ptr VkImageResolve2 - -proc newVkResolveImageInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2, 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 - -type VkResolveImageInfo2KHR* = VkResolveImageInfo2 -type VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - shaderImageInt64Atomics*: VkBool32 - sparseImageInt64Atomics*: VkBool32 - -proc newVkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT, pNext: pointer = nil, shaderImageInt64Atomics: VkBool32, sparseImageInt64Atomics: VkBool32): VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT = - result.sType = sType - result.pNext = pNext - result.shaderImageInt64Atomics = shaderImageInt64Atomics - result.sparseImageInt64Atomics = sparseImageInt64Atomics - -type VkFragmentShadingRateAttachmentInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - pFragmentShadingRateAttachment*: ptr VkAttachmentReference2 - shadingRateAttachmentTexelSize*: VkExtent2D - -proc newVkFragmentShadingRateAttachmentInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR, pNext: pointer = nil, pFragmentShadingRateAttachment: ptr VkAttachmentReference2, shadingRateAttachmentTexelSize: VkExtent2D): VkFragmentShadingRateAttachmentInfoKHR = - result.sType = sType - result.pNext = pNext - result.pFragmentShadingRateAttachment = pFragmentShadingRateAttachment - result.shadingRateAttachmentTexelSize = shadingRateAttachmentTexelSize - -type VkPipelineFragmentShadingRateStateCreateInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - fragmentSize*: VkExtent2D - combinerOps*: array[2, VkFragmentShadingRateCombinerOpKHR] - -proc newVkPipelineFragmentShadingRateStateCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR, pNext: pointer = nil, fragmentSize: VkExtent2D, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): VkPipelineFragmentShadingRateStateCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.fragmentSize = fragmentSize - result.combinerOps = combinerOps - -type VkPhysicalDeviceFragmentShadingRateFeaturesKHR* = object - sType*: VkStructureType - pNext*: pointer - pipelineFragmentShadingRate*: VkBool32 - primitiveFragmentShadingRate*: VkBool32 - attachmentFragmentShadingRate*: VkBool32 - -proc newVkPhysicalDeviceFragmentShadingRateFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR, 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 - -type 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 newVkPhysicalDeviceFragmentShadingRatePropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR, 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 - -type VkPhysicalDeviceFragmentShadingRateKHR* = object - sType*: VkStructureType - pNext*: pointer - sampleCounts*: VkSampleCountFlags - fragmentSize*: VkExtent2D - -proc newVkPhysicalDeviceFragmentShadingRateKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_KHR, pNext: pointer = nil, sampleCounts: VkSampleCountFlags, fragmentSize: VkExtent2D): VkPhysicalDeviceFragmentShadingRateKHR = - result.sType = sType - result.pNext = pNext - result.sampleCounts = sampleCounts - result.fragmentSize = fragmentSize - -type VkPhysicalDeviceShaderTerminateInvocationFeatures* = object - sType*: VkStructureType - pNext*: pointer - shaderTerminateInvocation*: VkBool32 - -proc newVkPhysicalDeviceShaderTerminateInvocationFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES, pNext: pointer = nil, shaderTerminateInvocation: VkBool32): VkPhysicalDeviceShaderTerminateInvocationFeatures = - result.sType = sType - result.pNext = pNext - result.shaderTerminateInvocation = shaderTerminateInvocation - -type VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR* = VkPhysicalDeviceShaderTerminateInvocationFeatures -type VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - fragmentShadingRateEnums*: VkBool32 - supersampleFragmentShadingRates*: VkBool32 - noInvocationFragmentShadingRates*: VkBool32 - -proc newVkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV, 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 - -type VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV* = object - sType*: VkStructureType - pNext*: pointer - maxFragmentShadingRateInvocationCount*: VkSampleCountFlagBits - -proc newVkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV, pNext: pointer = nil, maxFragmentShadingRateInvocationCount: VkSampleCountFlagBits): VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV = - result.sType = sType - result.pNext = pNext - result.maxFragmentShadingRateInvocationCount = maxFragmentShadingRateInvocationCount - -type VkPipelineFragmentShadingRateEnumStateCreateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - shadingRateType*: VkFragmentShadingRateTypeNV - shadingRate*: VkFragmentShadingRateNV - combinerOps*: array[2, VkFragmentShadingRateCombinerOpKHR] - -proc newVkPipelineFragmentShadingRateEnumStateCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV, 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 - -type VkAccelerationStructureBuildSizesInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - accelerationStructureSize*: VkDeviceSize - updateScratchSize*: VkDeviceSize - buildScratchSize*: VkDeviceSize - -proc newVkAccelerationStructureBuildSizesInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR, 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 - -type VkPhysicalDeviceImage2DViewOf3DFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - image2DViewOf3D*: VkBool32 - sampler2DViewOf3D*: VkBool32 - -proc newVkPhysicalDeviceImage2DViewOf3DFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT, pNext: pointer = nil, image2DViewOf3D: VkBool32, sampler2DViewOf3D: VkBool32): VkPhysicalDeviceImage2DViewOf3DFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.image2DViewOf3D = image2DViewOf3D - result.sampler2DViewOf3D = sampler2DViewOf3D - -type VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - imageSlicedViewOf3D*: VkBool32 - -proc newVkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_SLICED_VIEW_OF_3D_FEATURES_EXT, pNext: pointer = nil, imageSlicedViewOf3D: VkBool32): VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.imageSlicedViewOf3D = imageSlicedViewOf3D - -type VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - mutableDescriptorType*: VkBool32 - -proc newVkPhysicalDeviceMutableDescriptorTypeFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT, pNext: pointer = nil, mutableDescriptorType: VkBool32): VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.mutableDescriptorType = mutableDescriptorType - -type VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE* = VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT -type VkMutableDescriptorTypeListEXT* = object - descriptorTypeCount*: uint32 - pDescriptorTypes*: ptr VkDescriptorType - -proc newVkMutableDescriptorTypeListEXT*(descriptorTypeCount: uint32, pDescriptorTypes: ptr VkDescriptorType): VkMutableDescriptorTypeListEXT = - result.descriptorTypeCount = descriptorTypeCount - result.pDescriptorTypes = pDescriptorTypes - -type VkMutableDescriptorTypeListVALVE* = VkMutableDescriptorTypeListEXT -type VkMutableDescriptorTypeCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - mutableDescriptorTypeListCount*: uint32 - pMutableDescriptorTypeLists*: ptr VkMutableDescriptorTypeListEXT - -proc newVkMutableDescriptorTypeCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT, pNext: pointer = nil, mutableDescriptorTypeListCount: uint32, pMutableDescriptorTypeLists: ptr VkMutableDescriptorTypeListEXT): VkMutableDescriptorTypeCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.mutableDescriptorTypeListCount = mutableDescriptorTypeListCount - result.pMutableDescriptorTypeLists = pMutableDescriptorTypeLists - -type VkMutableDescriptorTypeCreateInfoVALVE* = VkMutableDescriptorTypeCreateInfoEXT -type VkPhysicalDeviceDepthClipControlFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - depthClipControl*: VkBool32 - -proc newVkPhysicalDeviceDepthClipControlFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT, pNext: pointer = nil, depthClipControl: VkBool32): VkPhysicalDeviceDepthClipControlFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.depthClipControl = depthClipControl - -type VkPipelineViewportDepthClipControlCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - negativeOneToOne*: VkBool32 - -proc newVkPipelineViewportDepthClipControlCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT, pNext: pointer = nil, negativeOneToOne: VkBool32): VkPipelineViewportDepthClipControlCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.negativeOneToOne = negativeOneToOne - -type VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - vertexInputDynamicState*: VkBool32 - -proc newVkPhysicalDeviceVertexInputDynamicStateFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT, pNext: pointer = nil, vertexInputDynamicState: VkBool32): VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.vertexInputDynamicState = vertexInputDynamicState - -type VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - externalMemoryRDMA*: VkBool32 - -proc newVkPhysicalDeviceExternalMemoryRDMAFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV, pNext: pointer = nil, externalMemoryRDMA: VkBool32): VkPhysicalDeviceExternalMemoryRDMAFeaturesNV = - result.sType = sType - result.pNext = pNext - result.externalMemoryRDMA = externalMemoryRDMA - -type VkVertexInputBindingDescription2EXT* = object - sType*: VkStructureType - pNext*: pointer - binding*: uint32 - stride*: uint32 - inputRate*: VkVertexInputRate - divisor*: uint32 - -proc newVkVertexInputBindingDescription2EXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT, 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 - -type VkVertexInputAttributeDescription2EXT* = object - sType*: VkStructureType - pNext*: pointer - location*: uint32 - binding*: uint32 - format*: VkFormat - offset*: uint32 - -proc newVkVertexInputAttributeDescription2EXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT, 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 - -type VkPhysicalDeviceColorWriteEnableFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - colorWriteEnable*: VkBool32 - -proc newVkPhysicalDeviceColorWriteEnableFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT, pNext: pointer = nil, colorWriteEnable: VkBool32): VkPhysicalDeviceColorWriteEnableFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.colorWriteEnable = colorWriteEnable - -type VkPipelineColorWriteCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - attachmentCount*: uint32 - pColorWriteEnables*: ptr VkBool32 - -proc newVkPipelineColorWriteCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT, pNext: pointer = nil, attachmentCount: uint32, pColorWriteEnables: ptr VkBool32): VkPipelineColorWriteCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.attachmentCount = attachmentCount - result.pColorWriteEnables = pColorWriteEnables - -type VkMemoryBarrier2* = object - sType*: VkStructureType - pNext*: pointer - srcStageMask*: VkPipelineStageFlags2 - srcAccessMask*: VkAccessFlags2 - dstStageMask*: VkPipelineStageFlags2 - dstAccessMask*: VkAccessFlags2 - -proc newVkMemoryBarrier2*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_BARRIER_2, 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 - -type VkMemoryBarrier2KHR* = VkMemoryBarrier2 -type 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 newVkImageMemoryBarrier2*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2, 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 - -type VkImageMemoryBarrier2KHR* = VkImageMemoryBarrier2 -type 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 newVkBufferMemoryBarrier2*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2, 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 - -type VkBufferMemoryBarrier2KHR* = VkBufferMemoryBarrier2 -type VkDependencyInfo* = object - sType*: VkStructureType - pNext*: pointer - dependencyFlags*: VkDependencyFlags - memoryBarrierCount*: uint32 - pMemoryBarriers*: ptr VkMemoryBarrier2 - bufferMemoryBarrierCount*: uint32 - pBufferMemoryBarriers*: ptr VkBufferMemoryBarrier2 - imageMemoryBarrierCount*: uint32 - pImageMemoryBarriers*: ptr VkImageMemoryBarrier2 - -proc newVkDependencyInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEPENDENCY_INFO, 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 - -type VkDependencyInfoKHR* = VkDependencyInfo -type VkSemaphoreSubmitInfo* = object - sType*: VkStructureType - pNext*: pointer - semaphore*: VkSemaphore - value*: uint64 - stageMask*: VkPipelineStageFlags2 - deviceIndex*: uint32 - -proc newVkSemaphoreSubmitInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO, 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 - -type VkSemaphoreSubmitInfoKHR* = VkSemaphoreSubmitInfo -type VkCommandBufferSubmitInfo* = object - sType*: VkStructureType - pNext*: pointer - commandBuffer*: VkCommandBuffer - deviceMask*: uint32 - -proc newVkCommandBufferSubmitInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO, pNext: pointer = nil, commandBuffer: VkCommandBuffer, deviceMask: uint32): VkCommandBufferSubmitInfo = - result.sType = sType - result.pNext = pNext - result.commandBuffer = commandBuffer - result.deviceMask = deviceMask - -type VkCommandBufferSubmitInfoKHR* = VkCommandBufferSubmitInfo -type VkSubmitInfo2* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkSubmitFlags - waitSemaphoreInfoCount*: uint32 - pWaitSemaphoreInfos*: ptr VkSemaphoreSubmitInfo - commandBufferInfoCount*: uint32 - pCommandBufferInfos*: ptr VkCommandBufferSubmitInfo - signalSemaphoreInfoCount*: uint32 - pSignalSemaphoreInfos*: ptr VkSemaphoreSubmitInfo - -proc newVkSubmitInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_SUBMIT_INFO_2, 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 - -type VkSubmitInfo2KHR* = VkSubmitInfo2 -type VkQueueFamilyCheckpointProperties2NV* = object - sType*: VkStructureType - pNext*: pointer - checkpointExecutionStageMask*: VkPipelineStageFlags2 - -proc newVkQueueFamilyCheckpointProperties2NV*(sType: VkStructureType = VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV, pNext: pointer = nil, checkpointExecutionStageMask: VkPipelineStageFlags2): VkQueueFamilyCheckpointProperties2NV = - result.sType = sType - result.pNext = pNext - result.checkpointExecutionStageMask = checkpointExecutionStageMask - -type VkCheckpointData2NV* = object - sType*: VkStructureType - pNext*: pointer - stage*: VkPipelineStageFlags2 - pCheckpointMarker*: pointer - -proc newVkCheckpointData2NV*(sType: VkStructureType = VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV, pNext: pointer = nil, stage: VkPipelineStageFlags2, pCheckpointMarker: pointer = nil): VkCheckpointData2NV = - result.sType = sType - result.pNext = pNext - result.stage = stage - result.pCheckpointMarker = pCheckpointMarker - -type VkPhysicalDeviceSynchronization2Features* = object - sType*: VkStructureType - pNext*: pointer - synchronization2*: VkBool32 - -proc newVkPhysicalDeviceSynchronization2Features*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES, pNext: pointer = nil, synchronization2: VkBool32): VkPhysicalDeviceSynchronization2Features = - result.sType = sType - result.pNext = pNext - result.synchronization2 = synchronization2 - -type VkPhysicalDeviceSynchronization2FeaturesKHR* = VkPhysicalDeviceSynchronization2Features -type 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 newVkPhysicalDeviceVulkanSC10Properties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_SC_1_0_PROPERTIES, 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 - -type VkPipelinePoolSize* = object - sType*: VkStructureType - pNext*: pointer - poolEntrySize*: VkDeviceSize - poolEntryCount*: uint32 - -proc newVkPipelinePoolSize*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_POOL_SIZE, pNext: pointer = nil, poolEntrySize: VkDeviceSize, poolEntryCount: uint32): VkPipelinePoolSize = - result.sType = sType - result.pNext = pNext - result.poolEntrySize = poolEntrySize - result.poolEntryCount = poolEntryCount - -type 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 newVkDeviceObjectReservationCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_OBJECT_RESERVATION_CREATE_INFO, 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 - -type VkCommandPoolMemoryReservationCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - commandPoolReservedSize*: VkDeviceSize - commandPoolMaxCommandBuffers*: uint32 - -proc newVkCommandPoolMemoryReservationCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_COMMAND_POOL_MEMORY_RESERVATION_CREATE_INFO, pNext: pointer = nil, commandPoolReservedSize: VkDeviceSize, commandPoolMaxCommandBuffers: uint32): VkCommandPoolMemoryReservationCreateInfo = - result.sType = sType - result.pNext = pNext - result.commandPoolReservedSize = commandPoolReservedSize - result.commandPoolMaxCommandBuffers = commandPoolMaxCommandBuffers - -type VkCommandPoolMemoryConsumption* = object - sType*: VkStructureType - pNext*: pointer - commandPoolAllocated*: VkDeviceSize - commandPoolReservedSize*: VkDeviceSize - commandBufferAllocated*: VkDeviceSize - -proc newVkCommandPoolMemoryConsumption*(sType: VkStructureType = VK_STRUCTURE_TYPE_COMMAND_POOL_MEMORY_CONSUMPTION, 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 - -type VkPhysicalDeviceVulkanSC10Features* = object - sType*: VkStructureType - pNext*: pointer - shaderAtomicInstructions*: VkBool32 - -proc newVkPhysicalDeviceVulkanSC10Features*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_SC_1_0_FEATURES, pNext: pointer = nil, shaderAtomicInstructions: VkBool32): VkPhysicalDeviceVulkanSC10Features = - result.sType = sType - result.pNext = pNext - result.shaderAtomicInstructions = shaderAtomicInstructions - -type VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - primitivesGeneratedQuery*: VkBool32 - primitivesGeneratedQueryWithRasterizerDiscard*: VkBool32 - primitivesGeneratedQueryWithNonZeroStreams*: VkBool32 - -proc newVkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT, 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 - -type VkPhysicalDeviceLegacyDitheringFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - legacyDithering*: VkBool32 - -proc newVkPhysicalDeviceLegacyDitheringFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_DITHERING_FEATURES_EXT, pNext: pointer = nil, legacyDithering: VkBool32): VkPhysicalDeviceLegacyDitheringFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.legacyDithering = legacyDithering - -type VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - multisampledRenderToSingleSampled*: VkBool32 - -proc newVkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT, pNext: pointer = nil, multisampledRenderToSingleSampled: VkBool32): VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.multisampledRenderToSingleSampled = multisampledRenderToSingleSampled - -type VkSubpassResolvePerformanceQueryEXT* = object - sType*: VkStructureType - pNext*: pointer - optimal*: VkBool32 - -proc newVkSubpassResolvePerformanceQueryEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SUBPASS_RESOLVE_PERFORMANCE_QUERY_EXT, pNext: pointer = nil, optimal: VkBool32): VkSubpassResolvePerformanceQueryEXT = - result.sType = sType - result.pNext = pNext - result.optimal = optimal - -type VkMultisampledRenderToSingleSampledInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - multisampledRenderToSingleSampledEnable*: VkBool32 - rasterizationSamples*: VkSampleCountFlagBits - -proc newVkMultisampledRenderToSingleSampledInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_EXT, pNext: pointer = nil, multisampledRenderToSingleSampledEnable: VkBool32, rasterizationSamples: VkSampleCountFlagBits): VkMultisampledRenderToSingleSampledInfoEXT = - result.sType = sType - result.pNext = pNext - result.multisampledRenderToSingleSampledEnable = multisampledRenderToSingleSampledEnable - result.rasterizationSamples = rasterizationSamples - -type VkPhysicalDevicePipelineProtectedAccessFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - pipelineProtectedAccess*: VkBool32 - -proc newVkPhysicalDevicePipelineProtectedAccessFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES_EXT, pNext: pointer = nil, pipelineProtectedAccess: VkBool32): VkPhysicalDevicePipelineProtectedAccessFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.pipelineProtectedAccess = pipelineProtectedAccess - -type VkQueueFamilyVideoPropertiesKHR* = object - sType*: VkStructureType - pNext*: pointer - videoCodecOperations*: VkVideoCodecOperationFlagsKHR - -proc newVkQueueFamilyVideoPropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_QUEUE_FAMILY_VIDEO_PROPERTIES_KHR, pNext: pointer = nil, videoCodecOperations: VkVideoCodecOperationFlagsKHR): VkQueueFamilyVideoPropertiesKHR = - result.sType = sType - result.pNext = pNext - result.videoCodecOperations = videoCodecOperations - -type VkQueueFamilyQueryResultStatusPropertiesKHR* = object - sType*: VkStructureType - pNext*: pointer - queryResultStatusSupport*: VkBool32 - -proc newVkQueueFamilyQueryResultStatusPropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_QUEUE_FAMILY_QUERY_RESULT_STATUS_PROPERTIES_KHR, pNext: pointer = nil, queryResultStatusSupport: VkBool32): VkQueueFamilyQueryResultStatusPropertiesKHR = - result.sType = sType - result.pNext = pNext - result.queryResultStatusSupport = queryResultStatusSupport - -type VkVideoProfileListInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - profileCount*: uint32 - pProfiles*: ptr VkVideoProfileInfoKHR - -proc newVkVideoProfileListInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_PROFILE_LIST_INFO_KHR, pNext: pointer = nil, profileCount: uint32, pProfiles: ptr VkVideoProfileInfoKHR): VkVideoProfileListInfoKHR = - result.sType = sType - result.pNext = pNext - result.profileCount = profileCount - result.pProfiles = pProfiles - -type VkPhysicalDeviceVideoFormatInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - imageUsage*: VkImageUsageFlags - -proc newVkPhysicalDeviceVideoFormatInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_FORMAT_INFO_KHR, pNext: pointer = nil, imageUsage: VkImageUsageFlags): VkPhysicalDeviceVideoFormatInfoKHR = - result.sType = sType - result.pNext = pNext - result.imageUsage = imageUsage - -type VkVideoFormatPropertiesKHR* = object - sType*: VkStructureType - pNext*: pointer - format*: VkFormat - componentMapping*: VkComponentMapping - imageCreateFlags*: VkImageCreateFlags - imageType*: VkImageType - imageTiling*: VkImageTiling - imageUsageFlags*: VkImageUsageFlags - -proc newVkVideoFormatPropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_FORMAT_PROPERTIES_KHR, 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 - -type VkVideoProfileInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - videoCodecOperation*: VkVideoCodecOperationFlagBitsKHR - chromaSubsampling*: VkVideoChromaSubsamplingFlagsKHR - lumaBitDepth*: VkVideoComponentBitDepthFlagsKHR - chromaBitDepth*: VkVideoComponentBitDepthFlagsKHR - -proc newVkVideoProfileInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_PROFILE_INFO_KHR, 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 - -type VkVideoCapabilitiesKHR* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkVideoCapabilityFlagsKHR - minBitstreamBufferOffsetAlignment*: VkDeviceSize - minBitstreamBufferSizeAlignment*: VkDeviceSize - pictureAccessGranularity*: VkExtent2D - minCodedExtent*: VkExtent2D - maxCodedExtent*: VkExtent2D - maxDpbSlots*: uint32 - maxActiveReferencePictures*: uint32 - stdHeaderVersion*: VkExtensionProperties - -proc newVkVideoCapabilitiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR, 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 - -type VkVideoSessionMemoryRequirementsKHR* = object - sType*: VkStructureType - pNext*: pointer - memoryBindIndex*: uint32 - memoryRequirements*: VkMemoryRequirements - -proc newVkVideoSessionMemoryRequirementsKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_SESSION_MEMORY_REQUIREMENTS_KHR, pNext: pointer = nil, memoryBindIndex: uint32, memoryRequirements: VkMemoryRequirements): VkVideoSessionMemoryRequirementsKHR = - result.sType = sType - result.pNext = pNext - result.memoryBindIndex = memoryBindIndex - result.memoryRequirements = memoryRequirements - -type VkBindVideoSessionMemoryInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - memoryBindIndex*: uint32 - memory*: VkDeviceMemory - memoryOffset*: VkDeviceSize - memorySize*: VkDeviceSize - -proc newVkBindVideoSessionMemoryInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_BIND_VIDEO_SESSION_MEMORY_INFO_KHR, 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 - -type VkVideoPictureResourceInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - codedOffset*: VkOffset2D - codedExtent*: VkExtent2D - baseArrayLayer*: uint32 - imageViewBinding*: VkImageView - -proc newVkVideoPictureResourceInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_PICTURE_RESOURCE_INFO_KHR, 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 - -type VkVideoReferenceSlotInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - slotIndex*: int32 - pPictureResource*: ptr VkVideoPictureResourceInfoKHR - -proc newVkVideoReferenceSlotInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_INFO_KHR, pNext: pointer = nil, slotIndex: int32, pPictureResource: ptr VkVideoPictureResourceInfoKHR): VkVideoReferenceSlotInfoKHR = - result.sType = sType - result.pNext = pNext - result.slotIndex = slotIndex - result.pPictureResource = pPictureResource - -type VkVideoDecodeCapabilitiesKHR* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkVideoDecodeCapabilityFlagsKHR - -proc newVkVideoDecodeCapabilitiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_CAPABILITIES_KHR, pNext: pointer = nil, flags: VkVideoDecodeCapabilityFlagsKHR = 0.VkVideoDecodeCapabilityFlagsKHR): VkVideoDecodeCapabilitiesKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - -type VkVideoDecodeUsageInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - videoUsageHints*: VkVideoDecodeUsageFlagsKHR - -proc newVkVideoDecodeUsageInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_USAGE_INFO_KHR, pNext: pointer = nil, videoUsageHints: VkVideoDecodeUsageFlagsKHR): VkVideoDecodeUsageInfoKHR = - result.sType = sType - result.pNext = pNext - result.videoUsageHints = videoUsageHints - -type VkVideoDecodeInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkVideoDecodeFlagsKHR - srcBuffer*: VkBuffer - srcBufferOffset*: VkDeviceSize - srcBufferRange*: VkDeviceSize - dstPictureResource*: VkVideoPictureResourceInfoKHR - pSetupReferenceSlot*: ptr VkVideoReferenceSlotInfoKHR - referenceSlotCount*: uint32 - pReferenceSlots*: ptr VkVideoReferenceSlotInfoKHR - -proc newVkVideoDecodeInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR, 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 - -type StdVideoH264ProfileIdc* = ptr object -type StdVideoH264LevelIdc* = ptr object -type StdVideoH264ChromaFormatIdc* = ptr object -type StdVideoH264PocType* = ptr object -type StdVideoH264SpsFlags* = ptr object -type StdVideoH264ScalingLists* = ptr object -type StdVideoH264SequenceParameterSetVui* = ptr object -type StdVideoH264AspectRatioIdc* = ptr object -type StdVideoH264HrdParameters* = ptr object -type StdVideoH264SpsVuiFlags* = ptr object -type StdVideoH264WeightedBipredIdc* = ptr object -type StdVideoH264PpsFlags* = ptr object -type StdVideoH264SliceType* = ptr object -type StdVideoH264CabacInitIdc* = ptr object -type StdVideoH264DisableDeblockingFilterIdc* = ptr object -type StdVideoH264PictureType* = ptr object -type StdVideoH264ModificationOfPicNumsIdc* = ptr object -type StdVideoH264MemMgmtControlOp* = ptr object -type StdVideoDecodeH264PictureInfo* = ptr object -type StdVideoDecodeH264ReferenceInfo* = ptr object -type StdVideoDecodeH264PictureInfoFlags* = ptr object -type StdVideoDecodeH264ReferenceInfoFlags* = ptr object -type VkVideoDecodeH264ProfileInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - stdProfileIdc*: StdVideoH264ProfileIdc - pictureLayout*: VkVideoDecodeH264PictureLayoutFlagBitsKHR - -proc newVkVideoDecodeH264ProfileInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_KHR, pNext: pointer = nil, stdProfileIdc: StdVideoH264ProfileIdc, pictureLayout: VkVideoDecodeH264PictureLayoutFlagBitsKHR): VkVideoDecodeH264ProfileInfoKHR = - result.sType = sType - result.pNext = pNext - result.stdProfileIdc = stdProfileIdc - result.pictureLayout = pictureLayout - -type VkVideoDecodeH264CapabilitiesKHR* = object - sType*: VkStructureType - pNext*: pointer - maxLevelIdc*: StdVideoH264LevelIdc - fieldOffsetGranularity*: VkOffset2D - -proc newVkVideoDecodeH264CapabilitiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_KHR, pNext: pointer = nil, maxLevelIdc: StdVideoH264LevelIdc, fieldOffsetGranularity: VkOffset2D): VkVideoDecodeH264CapabilitiesKHR = - result.sType = sType - result.pNext = pNext - result.maxLevelIdc = maxLevelIdc - result.fieldOffsetGranularity = fieldOffsetGranularity - -type StdVideoH264SequenceParameterSet* = ptr object -type StdVideoH264PictureParameterSet* = ptr object -type VkVideoDecodeH264SessionParametersAddInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - stdSPSCount*: uint32 - pStdSPSs*: ptr StdVideoH264SequenceParameterSet - stdPPSCount*: uint32 - pStdPPSs*: ptr StdVideoH264PictureParameterSet - -proc newVkVideoDecodeH264SessionParametersAddInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_KHR, 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 - -type VkVideoDecodeH264SessionParametersCreateInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - maxStdSPSCount*: uint32 - maxStdPPSCount*: uint32 - pParametersAddInfo*: ptr VkVideoDecodeH264SessionParametersAddInfoKHR - -proc newVkVideoDecodeH264SessionParametersCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_KHR, 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 - -type VkVideoDecodeH264PictureInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - pStdPictureInfo*: ptr StdVideoDecodeH264PictureInfo - sliceCount*: uint32 - pSliceOffsets*: ptr uint32 - -proc newVkVideoDecodeH264PictureInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_KHR, 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 - -type VkVideoDecodeH264DpbSlotInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - pStdReferenceInfo*: ptr StdVideoDecodeH264ReferenceInfo - -proc newVkVideoDecodeH264DpbSlotInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_KHR, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoDecodeH264ReferenceInfo): VkVideoDecodeH264DpbSlotInfoKHR = - result.sType = sType - result.pNext = pNext - result.pStdReferenceInfo = pStdReferenceInfo - -type StdVideoH265ProfileIdc* = ptr object -type StdVideoH265VideoParameterSet* = ptr object -type StdVideoH265SequenceParameterSet* = ptr object -type StdVideoH265PictureParameterSet* = ptr object -type StdVideoH265DecPicBufMgr* = ptr object -type StdVideoH265HrdParameters* = ptr object -type StdVideoH265VpsFlags* = ptr object -type StdVideoH265LevelIdc* = ptr object -type StdVideoH265SpsFlags* = ptr object -type StdVideoH265ScalingLists* = ptr object -type StdVideoH265SequenceParameterSetVui* = ptr object -type StdVideoH265PredictorPaletteEntries* = ptr object -type StdVideoH265PpsFlags* = ptr object -type StdVideoH265SubLayerHrdParameters* = ptr object -type StdVideoH265HrdFlags* = ptr object -type StdVideoH265SpsVuiFlags* = ptr object -type StdVideoH265SliceType* = ptr object -type StdVideoH265PictureType* = ptr object -type StdVideoDecodeH265PictureInfo* = ptr object -type StdVideoDecodeH265ReferenceInfo* = ptr object -type StdVideoDecodeH265PictureInfoFlags* = ptr object -type StdVideoDecodeH265ReferenceInfoFlags* = ptr object -type VkVideoDecodeH265ProfileInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - stdProfileIdc*: StdVideoH265ProfileIdc - -proc newVkVideoDecodeH265ProfileInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_INFO_KHR, pNext: pointer = nil, stdProfileIdc: StdVideoH265ProfileIdc): VkVideoDecodeH265ProfileInfoKHR = - result.sType = sType - result.pNext = pNext - result.stdProfileIdc = stdProfileIdc - -type VkVideoDecodeH265CapabilitiesKHR* = object - sType*: VkStructureType - pNext*: pointer - maxLevelIdc*: StdVideoH265LevelIdc - -proc newVkVideoDecodeH265CapabilitiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_KHR, pNext: pointer = nil, maxLevelIdc: StdVideoH265LevelIdc): VkVideoDecodeH265CapabilitiesKHR = - result.sType = sType - result.pNext = pNext - result.maxLevelIdc = maxLevelIdc - -type VkVideoDecodeH265SessionParametersAddInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - stdVPSCount*: uint32 - pStdVPSs*: ptr StdVideoH265VideoParameterSet - stdSPSCount*: uint32 - pStdSPSs*: ptr StdVideoH265SequenceParameterSet - stdPPSCount*: uint32 - pStdPPSs*: ptr StdVideoH265PictureParameterSet - -proc newVkVideoDecodeH265SessionParametersAddInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_KHR, 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 - -type VkVideoDecodeH265SessionParametersCreateInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - maxStdVPSCount*: uint32 - maxStdSPSCount*: uint32 - maxStdPPSCount*: uint32 - pParametersAddInfo*: ptr VkVideoDecodeH265SessionParametersAddInfoKHR - -proc newVkVideoDecodeH265SessionParametersCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_KHR, 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 - -type VkVideoDecodeH265PictureInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - pStdPictureInfo*: ptr StdVideoDecodeH265PictureInfo - sliceSegmentCount*: uint32 - pSliceSegmentOffsets*: ptr uint32 - -proc newVkVideoDecodeH265PictureInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_KHR, 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 - -type VkVideoDecodeH265DpbSlotInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - pStdReferenceInfo*: ptr StdVideoDecodeH265ReferenceInfo - -proc newVkVideoDecodeH265DpbSlotInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_KHR, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoDecodeH265ReferenceInfo): VkVideoDecodeH265DpbSlotInfoKHR = - result.sType = sType - result.pNext = pNext - result.pStdReferenceInfo = pStdReferenceInfo - -type 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 - -proc newVkVideoSessionCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHR, 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 - -type VkVideoSessionParametersCreateInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkVideoSessionParametersCreateFlagsKHR - videoSessionParametersTemplate*: VkVideoSessionParametersKHR - videoSession*: VkVideoSessionKHR - -proc newVkVideoSessionParametersCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR, 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 - -type VkVideoSessionParametersUpdateInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - updateSequenceCount*: uint32 - -proc newVkVideoSessionParametersUpdateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_UPDATE_INFO_KHR, pNext: pointer = nil, updateSequenceCount: uint32): VkVideoSessionParametersUpdateInfoKHR = - result.sType = sType - result.pNext = pNext - result.updateSequenceCount = updateSequenceCount - -type VkVideoBeginCodingInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkVideoBeginCodingFlagsKHR - videoSession*: VkVideoSessionKHR - videoSessionParameters*: VkVideoSessionParametersKHR - referenceSlotCount*: uint32 - pReferenceSlots*: ptr VkVideoReferenceSlotInfoKHR - -proc newVkVideoBeginCodingInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_BEGIN_CODING_INFO_KHR, 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 - -type VkVideoEndCodingInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkVideoEndCodingFlagsKHR - -proc newVkVideoEndCodingInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_END_CODING_INFO_KHR, pNext: pointer = nil, flags: VkVideoEndCodingFlagsKHR = 0.VkVideoEndCodingFlagsKHR): VkVideoEndCodingInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - -type VkVideoCodingControlInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkVideoCodingControlFlagsKHR - -proc newVkVideoCodingControlInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_CODING_CONTROL_INFO_KHR, pNext: pointer = nil, flags: VkVideoCodingControlFlagsKHR = 0.VkVideoCodingControlFlagsKHR): VkVideoCodingControlInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - -type VkVideoEncodeUsageInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - videoUsageHints*: VkVideoEncodeUsageFlagsKHR - videoContentHints*: VkVideoEncodeContentFlagsKHR - tuningMode*: VkVideoEncodeTuningModeKHR - -proc newVkVideoEncodeUsageInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_USAGE_INFO_KHR, 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 - -type VkVideoEncodeInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkVideoEncodeFlagsKHR - qualityLevel*: uint32 - dstBuffer*: VkBuffer - dstBufferOffset*: VkDeviceSize - dstBufferRange*: VkDeviceSize - srcPictureResource*: VkVideoPictureResourceInfoKHR - pSetupReferenceSlot*: ptr VkVideoReferenceSlotInfoKHR - referenceSlotCount*: uint32 - pReferenceSlots*: ptr VkVideoReferenceSlotInfoKHR - precedingExternallyEncodedBytes*: uint32 - -proc newVkVideoEncodeInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR, pNext: pointer = nil, flags: VkVideoEncodeFlagsKHR = 0.VkVideoEncodeFlagsKHR, qualityLevel: uint32, 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.qualityLevel = qualityLevel - result.dstBuffer = dstBuffer - result.dstBufferOffset = dstBufferOffset - result.dstBufferRange = dstBufferRange - result.srcPictureResource = srcPictureResource - result.pSetupReferenceSlot = pSetupReferenceSlot - result.referenceSlotCount = referenceSlotCount - result.pReferenceSlots = pReferenceSlots - result.precedingExternallyEncodedBytes = precedingExternallyEncodedBytes - -type VkQueryPoolVideoEncodeFeedbackCreateInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - encodeFeedbackFlags*: VkVideoEncodeFeedbackFlagsKHR - -proc newVkQueryPoolVideoEncodeFeedbackCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_QUERY_POOL_VIDEO_ENCODE_FEEDBACK_CREATE_INFO_KHR, pNext: pointer = nil, encodeFeedbackFlags: VkVideoEncodeFeedbackFlagsKHR): VkQueryPoolVideoEncodeFeedbackCreateInfoKHR = - result.sType = sType - result.pNext = pNext - result.encodeFeedbackFlags = encodeFeedbackFlags - -type VkVideoEncodeRateControlInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkVideoEncodeRateControlFlagsKHR - rateControlMode*: VkVideoEncodeRateControlModeFlagBitsKHR - layerCount*: uint32 - pLayers*: ptr VkVideoEncodeRateControlLayerInfoKHR - -proc newVkVideoEncodeRateControlInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR, pNext: pointer = nil, flags: VkVideoEncodeRateControlFlagsKHR = 0.VkVideoEncodeRateControlFlagsKHR, rateControlMode: VkVideoEncodeRateControlModeFlagBitsKHR, layerCount: uint32, pLayers: ptr VkVideoEncodeRateControlLayerInfoKHR): VkVideoEncodeRateControlInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.rateControlMode = rateControlMode - result.layerCount = layerCount - result.pLayers = pLayers - -type VkVideoEncodeRateControlLayerInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - averageBitrate*: uint64 - maxBitrate*: uint64 - frameRateNumerator*: uint32 - frameRateDenominator*: uint32 - virtualBufferSizeInMs*: uint32 - initialVirtualBufferSizeInMs*: uint32 - -proc newVkVideoEncodeRateControlLayerInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR, pNext: pointer = nil, averageBitrate: uint64, maxBitrate: uint64, frameRateNumerator: uint32, frameRateDenominator: uint32, virtualBufferSizeInMs: uint32, initialVirtualBufferSizeInMs: uint32): VkVideoEncodeRateControlLayerInfoKHR = - result.sType = sType - result.pNext = pNext - result.averageBitrate = averageBitrate - result.maxBitrate = maxBitrate - result.frameRateNumerator = frameRateNumerator - result.frameRateDenominator = frameRateDenominator - result.virtualBufferSizeInMs = virtualBufferSizeInMs - result.initialVirtualBufferSizeInMs = initialVirtualBufferSizeInMs - -type VkVideoEncodeCapabilitiesKHR* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkVideoEncodeCapabilityFlagsKHR - rateControlModes*: VkVideoEncodeRateControlModeFlagsKHR - maxRateControlLayers*: uint32 - maxQualityLevels*: uint32 - inputImageDataFillAlignment*: VkExtent2D - supportedEncodeFeedbackFlags*: VkVideoEncodeFeedbackFlagsKHR - -proc newVkVideoEncodeCapabilitiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_CAPABILITIES_KHR, pNext: pointer = nil, flags: VkVideoEncodeCapabilityFlagsKHR = 0.VkVideoEncodeCapabilityFlagsKHR, rateControlModes: VkVideoEncodeRateControlModeFlagsKHR, maxRateControlLayers: uint32, maxQualityLevels: uint32, inputImageDataFillAlignment: VkExtent2D, supportedEncodeFeedbackFlags: VkVideoEncodeFeedbackFlagsKHR): VkVideoEncodeCapabilitiesKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.rateControlModes = rateControlModes - result.maxRateControlLayers = maxRateControlLayers - result.maxQualityLevels = maxQualityLevels - result.inputImageDataFillAlignment = inputImageDataFillAlignment - result.supportedEncodeFeedbackFlags = supportedEncodeFeedbackFlags - -type VkVideoEncodeH264CapabilitiesEXT* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkVideoEncodeH264CapabilityFlagsEXT - maxPPictureL0ReferenceCount*: uint32 - maxBPictureL0ReferenceCount*: uint32 - maxL1ReferenceCount*: uint32 - motionVectorsOverPicBoundariesFlag*: VkBool32 - maxBytesPerPicDenom*: uint32 - maxBitsPerMbDenom*: uint32 - log2MaxMvLengthHorizontal*: uint32 - log2MaxMvLengthVertical*: uint32 - -proc newVkVideoEncodeH264CapabilitiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT, pNext: pointer = nil, flags: VkVideoEncodeH264CapabilityFlagsEXT = 0.VkVideoEncodeH264CapabilityFlagsEXT, maxPPictureL0ReferenceCount: uint32, maxBPictureL0ReferenceCount: uint32, maxL1ReferenceCount: uint32, motionVectorsOverPicBoundariesFlag: VkBool32, maxBytesPerPicDenom: uint32, maxBitsPerMbDenom: uint32, log2MaxMvLengthHorizontal: uint32, log2MaxMvLengthVertical: uint32): VkVideoEncodeH264CapabilitiesEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.maxPPictureL0ReferenceCount = maxPPictureL0ReferenceCount - result.maxBPictureL0ReferenceCount = maxBPictureL0ReferenceCount - result.maxL1ReferenceCount = maxL1ReferenceCount - result.motionVectorsOverPicBoundariesFlag = motionVectorsOverPicBoundariesFlag - result.maxBytesPerPicDenom = maxBytesPerPicDenom - result.maxBitsPerMbDenom = maxBitsPerMbDenom - result.log2MaxMvLengthHorizontal = log2MaxMvLengthHorizontal - result.log2MaxMvLengthVertical = log2MaxMvLengthVertical - -type StdVideoEncodeH264SliceHeader* = ptr object -type StdVideoEncodeH264PictureInfo* = ptr object -type StdVideoEncodeH264ReferenceInfo* = ptr object -type StdVideoEncodeH264SliceHeaderFlags* = ptr object -type StdVideoEncodeH264ReferenceListsInfo* = ptr object -type StdVideoEncodeH264PictureInfoFlags* = ptr object -type StdVideoEncodeH264ReferenceInfoFlags* = ptr object -type StdVideoEncodeH264RefMgmtFlags* = ptr object -type StdVideoEncodeH264RefListModEntry* = ptr object -type StdVideoEncodeH264RefPicMarkingEntry* = ptr object -type VkVideoEncodeH264SessionParametersAddInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - stdSPSCount*: uint32 - pStdSPSs*: ptr StdVideoH264SequenceParameterSet - stdPPSCount*: uint32 - pStdPPSs*: ptr StdVideoH264PictureParameterSet - -proc newVkVideoEncodeH264SessionParametersAddInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT, pNext: pointer = nil, stdSPSCount: uint32, pStdSPSs: ptr StdVideoH264SequenceParameterSet, stdPPSCount: uint32, pStdPPSs: ptr StdVideoH264PictureParameterSet): VkVideoEncodeH264SessionParametersAddInfoEXT = - result.sType = sType - result.pNext = pNext - result.stdSPSCount = stdSPSCount - result.pStdSPSs = pStdSPSs - result.stdPPSCount = stdPPSCount - result.pStdPPSs = pStdPPSs - -type VkVideoEncodeH264SessionParametersCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - maxStdSPSCount*: uint32 - maxStdPPSCount*: uint32 - pParametersAddInfo*: ptr VkVideoEncodeH264SessionParametersAddInfoEXT - -proc newVkVideoEncodeH264SessionParametersCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT, pNext: pointer = nil, maxStdSPSCount: uint32, maxStdPPSCount: uint32, pParametersAddInfo: ptr VkVideoEncodeH264SessionParametersAddInfoEXT): VkVideoEncodeH264SessionParametersCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.maxStdSPSCount = maxStdSPSCount - result.maxStdPPSCount = maxStdPPSCount - result.pParametersAddInfo = pParametersAddInfo - -type VkVideoEncodeH264DpbSlotInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - pStdReferenceInfo*: ptr StdVideoEncodeH264ReferenceInfo - -proc newVkVideoEncodeH264DpbSlotInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_EXT, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoEncodeH264ReferenceInfo): VkVideoEncodeH264DpbSlotInfoEXT = - result.sType = sType - result.pNext = pNext - result.pStdReferenceInfo = pStdReferenceInfo - -type VkVideoEncodeH264VclFrameInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - pStdReferenceFinalLists*: ptr StdVideoEncodeH264ReferenceListsInfo - naluSliceEntryCount*: uint32 - pNaluSliceEntries*: ptr VkVideoEncodeH264NaluSliceInfoEXT - pStdPictureInfo*: ptr StdVideoEncodeH264PictureInfo - -proc newVkVideoEncodeH264VclFrameInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT, pNext: pointer = nil, pStdReferenceFinalLists: ptr StdVideoEncodeH264ReferenceListsInfo, naluSliceEntryCount: uint32, pNaluSliceEntries: ptr VkVideoEncodeH264NaluSliceInfoEXT, pStdPictureInfo: ptr StdVideoEncodeH264PictureInfo): VkVideoEncodeH264VclFrameInfoEXT = - result.sType = sType - result.pNext = pNext - result.pStdReferenceFinalLists = pStdReferenceFinalLists - result.naluSliceEntryCount = naluSliceEntryCount - result.pNaluSliceEntries = pNaluSliceEntries - result.pStdPictureInfo = pStdPictureInfo - -type VkVideoEncodeH264ProfileInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - stdProfileIdc*: StdVideoH264ProfileIdc - -proc newVkVideoEncodeH264ProfileInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_INFO_EXT, pNext: pointer = nil, stdProfileIdc: StdVideoH264ProfileIdc): VkVideoEncodeH264ProfileInfoEXT = - result.sType = sType - result.pNext = pNext - result.stdProfileIdc = stdProfileIdc - -type VkVideoEncodeH264NaluSliceInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - mbCount*: uint32 - pStdReferenceFinalLists*: ptr StdVideoEncodeH264ReferenceListsInfo - pStdSliceHeader*: ptr StdVideoEncodeH264SliceHeader - -proc newVkVideoEncodeH264NaluSliceInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_INFO_EXT, pNext: pointer = nil, mbCount: uint32, pStdReferenceFinalLists: ptr StdVideoEncodeH264ReferenceListsInfo, pStdSliceHeader: ptr StdVideoEncodeH264SliceHeader): VkVideoEncodeH264NaluSliceInfoEXT = - result.sType = sType - result.pNext = pNext - result.mbCount = mbCount - result.pStdReferenceFinalLists = pStdReferenceFinalLists - result.pStdSliceHeader = pStdSliceHeader - -type VkVideoEncodeH264RateControlInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - gopFrameCount*: uint32 - idrPeriod*: uint32 - consecutiveBFrameCount*: uint32 - rateControlStructure*: VkVideoEncodeH264RateControlStructureEXT - temporalLayerCount*: uint32 - -proc newVkVideoEncodeH264RateControlInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_INFO_EXT, pNext: pointer = nil, gopFrameCount: uint32, idrPeriod: uint32, consecutiveBFrameCount: uint32, rateControlStructure: VkVideoEncodeH264RateControlStructureEXT, temporalLayerCount: uint32): VkVideoEncodeH264RateControlInfoEXT = - result.sType = sType - result.pNext = pNext - result.gopFrameCount = gopFrameCount - result.idrPeriod = idrPeriod - result.consecutiveBFrameCount = consecutiveBFrameCount - result.rateControlStructure = rateControlStructure - result.temporalLayerCount = temporalLayerCount - -type VkVideoEncodeH264QpEXT* = object - qpI*: int32 - qpP*: int32 - qpB*: int32 - -proc newVkVideoEncodeH264QpEXT*(qpI: int32, qpP: int32, qpB: int32): VkVideoEncodeH264QpEXT = - result.qpI = qpI - result.qpP = qpP - result.qpB = qpB - -type VkVideoEncodeH264FrameSizeEXT* = object - frameISize*: uint32 - framePSize*: uint32 - frameBSize*: uint32 - -proc newVkVideoEncodeH264FrameSizeEXT*(frameISize: uint32, framePSize: uint32, frameBSize: uint32): VkVideoEncodeH264FrameSizeEXT = - result.frameISize = frameISize - result.framePSize = framePSize - result.frameBSize = frameBSize - -type VkVideoEncodeH264RateControlLayerInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - temporalLayerId*: uint32 - useInitialRcQp*: VkBool32 - initialRcQp*: VkVideoEncodeH264QpEXT - useMinQp*: VkBool32 - minQp*: VkVideoEncodeH264QpEXT - useMaxQp*: VkBool32 - maxQp*: VkVideoEncodeH264QpEXT - useMaxFrameSize*: VkBool32 - maxFrameSize*: VkVideoEncodeH264FrameSizeEXT - -proc newVkVideoEncodeH264RateControlLayerInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_EXT, pNext: pointer = nil, temporalLayerId: uint32, useInitialRcQp: VkBool32, initialRcQp: VkVideoEncodeH264QpEXT, useMinQp: VkBool32, minQp: VkVideoEncodeH264QpEXT, useMaxQp: VkBool32, maxQp: VkVideoEncodeH264QpEXT, useMaxFrameSize: VkBool32, maxFrameSize: VkVideoEncodeH264FrameSizeEXT): VkVideoEncodeH264RateControlLayerInfoEXT = - result.sType = sType - result.pNext = pNext - result.temporalLayerId = temporalLayerId - result.useInitialRcQp = useInitialRcQp - result.initialRcQp = initialRcQp - result.useMinQp = useMinQp - result.minQp = minQp - result.useMaxQp = useMaxQp - result.maxQp = maxQp - result.useMaxFrameSize = useMaxFrameSize - result.maxFrameSize = maxFrameSize - -type VkVideoEncodeH265CapabilitiesEXT* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkVideoEncodeH265CapabilityFlagsEXT - ctbSizes*: VkVideoEncodeH265CtbSizeFlagsEXT - transformBlockSizes*: VkVideoEncodeH265TransformBlockSizeFlagsEXT - maxPPictureL0ReferenceCount*: uint32 - maxBPictureL0ReferenceCount*: uint32 - maxL1ReferenceCount*: uint32 - maxSubLayersCount*: uint32 - minLog2MinLumaCodingBlockSizeMinus3*: uint32 - maxLog2MinLumaCodingBlockSizeMinus3*: uint32 - minLog2MinLumaTransformBlockSizeMinus2*: uint32 - maxLog2MinLumaTransformBlockSizeMinus2*: uint32 - minMaxTransformHierarchyDepthInter*: uint32 - maxMaxTransformHierarchyDepthInter*: uint32 - minMaxTransformHierarchyDepthIntra*: uint32 - maxMaxTransformHierarchyDepthIntra*: uint32 - maxDiffCuQpDeltaDepth*: uint32 - minMaxNumMergeCand*: uint32 - maxMaxNumMergeCand*: uint32 - -proc newVkVideoEncodeH265CapabilitiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT, pNext: pointer = nil, flags: VkVideoEncodeH265CapabilityFlagsEXT = 0.VkVideoEncodeH265CapabilityFlagsEXT, ctbSizes: VkVideoEncodeH265CtbSizeFlagsEXT, transformBlockSizes: VkVideoEncodeH265TransformBlockSizeFlagsEXT, maxPPictureL0ReferenceCount: uint32, maxBPictureL0ReferenceCount: uint32, maxL1ReferenceCount: uint32, maxSubLayersCount: uint32, minLog2MinLumaCodingBlockSizeMinus3: uint32, maxLog2MinLumaCodingBlockSizeMinus3: uint32, minLog2MinLumaTransformBlockSizeMinus2: uint32, maxLog2MinLumaTransformBlockSizeMinus2: uint32, minMaxTransformHierarchyDepthInter: uint32, maxMaxTransformHierarchyDepthInter: uint32, minMaxTransformHierarchyDepthIntra: uint32, maxMaxTransformHierarchyDepthIntra: uint32, maxDiffCuQpDeltaDepth: uint32, minMaxNumMergeCand: uint32, maxMaxNumMergeCand: uint32): VkVideoEncodeH265CapabilitiesEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.ctbSizes = ctbSizes - result.transformBlockSizes = transformBlockSizes - result.maxPPictureL0ReferenceCount = maxPPictureL0ReferenceCount - result.maxBPictureL0ReferenceCount = maxBPictureL0ReferenceCount - result.maxL1ReferenceCount = maxL1ReferenceCount - result.maxSubLayersCount = maxSubLayersCount - result.minLog2MinLumaCodingBlockSizeMinus3 = minLog2MinLumaCodingBlockSizeMinus3 - result.maxLog2MinLumaCodingBlockSizeMinus3 = maxLog2MinLumaCodingBlockSizeMinus3 - result.minLog2MinLumaTransformBlockSizeMinus2 = minLog2MinLumaTransformBlockSizeMinus2 - result.maxLog2MinLumaTransformBlockSizeMinus2 = maxLog2MinLumaTransformBlockSizeMinus2 - result.minMaxTransformHierarchyDepthInter = minMaxTransformHierarchyDepthInter - result.maxMaxTransformHierarchyDepthInter = maxMaxTransformHierarchyDepthInter - result.minMaxTransformHierarchyDepthIntra = minMaxTransformHierarchyDepthIntra - result.maxMaxTransformHierarchyDepthIntra = maxMaxTransformHierarchyDepthIntra - result.maxDiffCuQpDeltaDepth = maxDiffCuQpDeltaDepth - result.minMaxNumMergeCand = minMaxNumMergeCand - result.maxMaxNumMergeCand = maxMaxNumMergeCand - -type StdVideoEncodeH265PictureInfoFlags* = ptr object -type StdVideoEncodeH265PictureInfo* = ptr object -type StdVideoEncodeH265SliceSegmentHeader* = ptr object -type StdVideoEncodeH265ReferenceInfo* = ptr object -type StdVideoEncodeH265ReferenceListsInfo* = ptr object -type StdVideoEncodeH265SliceSegmentHeaderFlags* = ptr object -type StdVideoEncodeH265ReferenceInfoFlags* = ptr object -type StdVideoEncodeH265ReferenceModificationFlags* = ptr object -type VkVideoEncodeH265SessionParametersAddInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - stdVPSCount*: uint32 - pStdVPSs*: ptr StdVideoH265VideoParameterSet - stdSPSCount*: uint32 - pStdSPSs*: ptr StdVideoH265SequenceParameterSet - stdPPSCount*: uint32 - pStdPPSs*: ptr StdVideoH265PictureParameterSet - -proc newVkVideoEncodeH265SessionParametersAddInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT, pNext: pointer = nil, stdVPSCount: uint32, pStdVPSs: ptr StdVideoH265VideoParameterSet, stdSPSCount: uint32, pStdSPSs: ptr StdVideoH265SequenceParameterSet, stdPPSCount: uint32, pStdPPSs: ptr StdVideoH265PictureParameterSet): VkVideoEncodeH265SessionParametersAddInfoEXT = - result.sType = sType - result.pNext = pNext - result.stdVPSCount = stdVPSCount - result.pStdVPSs = pStdVPSs - result.stdSPSCount = stdSPSCount - result.pStdSPSs = pStdSPSs - result.stdPPSCount = stdPPSCount - result.pStdPPSs = pStdPPSs - -type VkVideoEncodeH265SessionParametersCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - maxStdVPSCount*: uint32 - maxStdSPSCount*: uint32 - maxStdPPSCount*: uint32 - pParametersAddInfo*: ptr VkVideoEncodeH265SessionParametersAddInfoEXT - -proc newVkVideoEncodeH265SessionParametersCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT, pNext: pointer = nil, maxStdVPSCount: uint32, maxStdSPSCount: uint32, maxStdPPSCount: uint32, pParametersAddInfo: ptr VkVideoEncodeH265SessionParametersAddInfoEXT): VkVideoEncodeH265SessionParametersCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.maxStdVPSCount = maxStdVPSCount - result.maxStdSPSCount = maxStdSPSCount - result.maxStdPPSCount = maxStdPPSCount - result.pParametersAddInfo = pParametersAddInfo - -type VkVideoEncodeH265VclFrameInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - pStdReferenceFinalLists*: ptr StdVideoEncodeH265ReferenceListsInfo - naluSliceSegmentEntryCount*: uint32 - pNaluSliceSegmentEntries*: ptr VkVideoEncodeH265NaluSliceSegmentInfoEXT - pStdPictureInfo*: ptr StdVideoEncodeH265PictureInfo - -proc newVkVideoEncodeH265VclFrameInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_VCL_FRAME_INFO_EXT, pNext: pointer = nil, pStdReferenceFinalLists: ptr StdVideoEncodeH265ReferenceListsInfo, naluSliceSegmentEntryCount: uint32, pNaluSliceSegmentEntries: ptr VkVideoEncodeH265NaluSliceSegmentInfoEXT, pStdPictureInfo: ptr StdVideoEncodeH265PictureInfo): VkVideoEncodeH265VclFrameInfoEXT = - result.sType = sType - result.pNext = pNext - result.pStdReferenceFinalLists = pStdReferenceFinalLists - result.naluSliceSegmentEntryCount = naluSliceSegmentEntryCount - result.pNaluSliceSegmentEntries = pNaluSliceSegmentEntries - result.pStdPictureInfo = pStdPictureInfo - -type VkVideoEncodeH265NaluSliceSegmentInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - ctbCount*: uint32 - pStdReferenceFinalLists*: ptr StdVideoEncodeH265ReferenceListsInfo - pStdSliceSegmentHeader*: ptr StdVideoEncodeH265SliceSegmentHeader - -proc newVkVideoEncodeH265NaluSliceSegmentInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_NALU_SLICE_SEGMENT_INFO_EXT, pNext: pointer = nil, ctbCount: uint32, pStdReferenceFinalLists: ptr StdVideoEncodeH265ReferenceListsInfo, pStdSliceSegmentHeader: ptr StdVideoEncodeH265SliceSegmentHeader): VkVideoEncodeH265NaluSliceSegmentInfoEXT = - result.sType = sType - result.pNext = pNext - result.ctbCount = ctbCount - result.pStdReferenceFinalLists = pStdReferenceFinalLists - result.pStdSliceSegmentHeader = pStdSliceSegmentHeader - -type VkVideoEncodeH265RateControlInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - gopFrameCount*: uint32 - idrPeriod*: uint32 - consecutiveBFrameCount*: uint32 - rateControlStructure*: VkVideoEncodeH265RateControlStructureEXT - subLayerCount*: uint32 - -proc newVkVideoEncodeH265RateControlInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_INFO_EXT, pNext: pointer = nil, gopFrameCount: uint32, idrPeriod: uint32, consecutiveBFrameCount: uint32, rateControlStructure: VkVideoEncodeH265RateControlStructureEXT, subLayerCount: uint32): VkVideoEncodeH265RateControlInfoEXT = - result.sType = sType - result.pNext = pNext - result.gopFrameCount = gopFrameCount - result.idrPeriod = idrPeriod - result.consecutiveBFrameCount = consecutiveBFrameCount - result.rateControlStructure = rateControlStructure - result.subLayerCount = subLayerCount - -type VkVideoEncodeH265QpEXT* = object - qpI*: int32 - qpP*: int32 - qpB*: int32 - -proc newVkVideoEncodeH265QpEXT*(qpI: int32, qpP: int32, qpB: int32): VkVideoEncodeH265QpEXT = - result.qpI = qpI - result.qpP = qpP - result.qpB = qpB - -type VkVideoEncodeH265FrameSizeEXT* = object - frameISize*: uint32 - framePSize*: uint32 - frameBSize*: uint32 - -proc newVkVideoEncodeH265FrameSizeEXT*(frameISize: uint32, framePSize: uint32, frameBSize: uint32): VkVideoEncodeH265FrameSizeEXT = - result.frameISize = frameISize - result.framePSize = framePSize - result.frameBSize = frameBSize - -type VkVideoEncodeH265RateControlLayerInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - temporalId*: uint32 - useInitialRcQp*: VkBool32 - initialRcQp*: VkVideoEncodeH265QpEXT - useMinQp*: VkBool32 - minQp*: VkVideoEncodeH265QpEXT - useMaxQp*: VkBool32 - maxQp*: VkVideoEncodeH265QpEXT - useMaxFrameSize*: VkBool32 - maxFrameSize*: VkVideoEncodeH265FrameSizeEXT - -proc newVkVideoEncodeH265RateControlLayerInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_EXT, pNext: pointer = nil, temporalId: uint32, useInitialRcQp: VkBool32, initialRcQp: VkVideoEncodeH265QpEXT, useMinQp: VkBool32, minQp: VkVideoEncodeH265QpEXT, useMaxQp: VkBool32, maxQp: VkVideoEncodeH265QpEXT, useMaxFrameSize: VkBool32, maxFrameSize: VkVideoEncodeH265FrameSizeEXT): VkVideoEncodeH265RateControlLayerInfoEXT = - result.sType = sType - result.pNext = pNext - result.temporalId = temporalId - result.useInitialRcQp = useInitialRcQp - result.initialRcQp = initialRcQp - result.useMinQp = useMinQp - result.minQp = minQp - result.useMaxQp = useMaxQp - result.maxQp = maxQp - result.useMaxFrameSize = useMaxFrameSize - result.maxFrameSize = maxFrameSize - -type VkVideoEncodeH265ProfileInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - stdProfileIdc*: StdVideoH265ProfileIdc - -proc newVkVideoEncodeH265ProfileInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_INFO_EXT, pNext: pointer = nil, stdProfileIdc: StdVideoH265ProfileIdc): VkVideoEncodeH265ProfileInfoEXT = - result.sType = sType - result.pNext = pNext - result.stdProfileIdc = stdProfileIdc - -type VkVideoEncodeH265DpbSlotInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - pStdReferenceInfo*: ptr StdVideoEncodeH265ReferenceInfo - -proc newVkVideoEncodeH265DpbSlotInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_DPB_SLOT_INFO_EXT, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoEncodeH265ReferenceInfo): VkVideoEncodeH265DpbSlotInfoEXT = - result.sType = sType - result.pNext = pNext - result.pStdReferenceInfo = pStdReferenceInfo - -type VkPhysicalDeviceInheritedViewportScissorFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - inheritedViewportScissor2D*: VkBool32 - -proc newVkPhysicalDeviceInheritedViewportScissorFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV, pNext: pointer = nil, inheritedViewportScissor2D: VkBool32): VkPhysicalDeviceInheritedViewportScissorFeaturesNV = - result.sType = sType - result.pNext = pNext - result.inheritedViewportScissor2D = inheritedViewportScissor2D - -type VkCommandBufferInheritanceViewportScissorInfoNV* = object - sType*: VkStructureType - pNext*: pointer - viewportScissor2D*: VkBool32 - viewportDepthCount*: uint32 - pViewportDepths*: ptr VkViewport - -proc newVkCommandBufferInheritanceViewportScissorInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV, 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 - -type VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - ycbcr2plane444Formats*: VkBool32 - -proc newVkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT, pNext: pointer = nil, ycbcr2plane444Formats: VkBool32): VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.ycbcr2plane444Formats = ycbcr2plane444Formats - -type VkPhysicalDeviceProvokingVertexFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - provokingVertexLast*: VkBool32 - transformFeedbackPreservesProvokingVertex*: VkBool32 - -proc newVkPhysicalDeviceProvokingVertexFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT, pNext: pointer = nil, provokingVertexLast: VkBool32, transformFeedbackPreservesProvokingVertex: VkBool32): VkPhysicalDeviceProvokingVertexFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.provokingVertexLast = provokingVertexLast - result.transformFeedbackPreservesProvokingVertex = transformFeedbackPreservesProvokingVertex - -type VkPhysicalDeviceProvokingVertexPropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - provokingVertexModePerPipeline*: VkBool32 - transformFeedbackPreservesTriangleFanProvokingVertex*: VkBool32 - -proc newVkPhysicalDeviceProvokingVertexPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT, pNext: pointer = nil, provokingVertexModePerPipeline: VkBool32, transformFeedbackPreservesTriangleFanProvokingVertex: VkBool32): VkPhysicalDeviceProvokingVertexPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.provokingVertexModePerPipeline = provokingVertexModePerPipeline - result.transformFeedbackPreservesTriangleFanProvokingVertex = transformFeedbackPreservesTriangleFanProvokingVertex - -type VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - provokingVertexMode*: VkProvokingVertexModeEXT - -proc newVkPipelineRasterizationProvokingVertexStateCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT, pNext: pointer = nil, provokingVertexMode: VkProvokingVertexModeEXT): VkPipelineRasterizationProvokingVertexStateCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.provokingVertexMode = provokingVertexMode - -type VkCuModuleCreateInfoNVX* = object - sType*: VkStructureType - pNext*: pointer - dataSize*: uint - pData*: pointer - -proc newVkCuModuleCreateInfoNVX*(sType: VkStructureType = VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX, pNext: pointer = nil, dataSize: uint, pData: pointer = nil): VkCuModuleCreateInfoNVX = - result.sType = sType - result.pNext = pNext - result.dataSize = dataSize - result.pData = pData - -type VkCuFunctionCreateInfoNVX* = object - sType*: VkStructureType - pNext*: pointer - module*: VkCuModuleNVX - pName*: cstring - -proc newVkCuFunctionCreateInfoNVX*(sType: VkStructureType = VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX, pNext: pointer = nil, module: VkCuModuleNVX, pName: cstring): VkCuFunctionCreateInfoNVX = - result.sType = sType - result.pNext = pNext - result.module = module - result.pName = pName - -type 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 - -proc newVkCuLaunchInfoNVX*(sType: VkStructureType = VK_STRUCTURE_TYPE_CU_LAUNCH_INFO_NVX, 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 - -type VkPhysicalDeviceDescriptorBufferFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - descriptorBuffer*: VkBool32 - descriptorBufferCaptureReplay*: VkBool32 - descriptorBufferImageLayoutIgnored*: VkBool32 - descriptorBufferPushDescriptors*: VkBool32 - -proc newVkPhysicalDeviceDescriptorBufferFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_FEATURES_EXT, 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 - -type 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 - -proc newVkPhysicalDeviceDescriptorBufferPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_PROPERTIES_EXT, 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 - -type VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - combinedImageSamplerDensityMapDescriptorSize*: uint - -proc newVkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_DENSITY_MAP_PROPERTIES_EXT, pNext: pointer = nil, combinedImageSamplerDensityMapDescriptorSize: uint): VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.combinedImageSamplerDensityMapDescriptorSize = combinedImageSamplerDensityMapDescriptorSize - -type VkDescriptorAddressInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - address*: VkDeviceAddress - range*: VkDeviceSize - format*: VkFormat - -proc newVkDescriptorAddressInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DESCRIPTOR_ADDRESS_INFO_EXT, 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 - -type VkDescriptorBufferBindingInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - address*: VkDeviceAddress - usage*: VkBufferUsageFlags - -proc newVkDescriptorBufferBindingInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DESCRIPTOR_BUFFER_BINDING_INFO_EXT, pNext: pointer = nil, address: VkDeviceAddress, usage: VkBufferUsageFlags): VkDescriptorBufferBindingInfoEXT = - result.sType = sType - result.pNext = pNext - result.address = address - result.usage = usage - -type VkDescriptorBufferBindingPushDescriptorBufferHandleEXT* = object - sType*: VkStructureType - pNext*: pointer - buffer*: VkBuffer - -proc newVkDescriptorBufferBindingPushDescriptorBufferHandleEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DESCRIPTOR_BUFFER_BINDING_PUSH_DESCRIPTOR_BUFFER_HANDLE_EXT, pNext: pointer = nil, buffer: VkBuffer): VkDescriptorBufferBindingPushDescriptorBufferHandleEXT = - result.sType = sType - result.pNext = pNext - result.buffer = buffer - -type 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 - -proc newVkDescriptorDataEXT*(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): VkDescriptorDataEXT = - result.pSampler = pSampler - result.pCombinedImageSampler = pCombinedImageSampler - result.pInputAttachmentImage = pInputAttachmentImage - result.pSampledImage = pSampledImage - result.pStorageImage = pStorageImage - result.pUniformTexelBuffer = pUniformTexelBuffer - result.pStorageTexelBuffer = pStorageTexelBuffer - result.pUniformBuffer = pUniformBuffer - result.pStorageBuffer = pStorageBuffer - result.accelerationStructure = accelerationStructure - -type VkDescriptorGetInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - `type`*: VkDescriptorType - data*: VkDescriptorDataEXT - -proc newVkDescriptorGetInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DESCRIPTOR_GET_INFO_EXT, pNext: pointer = nil, `type`: VkDescriptorType, data: VkDescriptorDataEXT): VkDescriptorGetInfoEXT = - result.sType = sType - result.pNext = pNext - result.`type` = `type` - result.data = data - -type VkBufferCaptureDescriptorDataInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - buffer*: VkBuffer - -proc newVkBufferCaptureDescriptorDataInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_CAPTURE_DESCRIPTOR_DATA_INFO_EXT, pNext: pointer = nil, buffer: VkBuffer): VkBufferCaptureDescriptorDataInfoEXT = - result.sType = sType - result.pNext = pNext - result.buffer = buffer - -type VkImageCaptureDescriptorDataInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - image*: VkImage - -proc newVkImageCaptureDescriptorDataInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_CAPTURE_DESCRIPTOR_DATA_INFO_EXT, pNext: pointer = nil, image: VkImage): VkImageCaptureDescriptorDataInfoEXT = - result.sType = sType - result.pNext = pNext - result.image = image - -type VkImageViewCaptureDescriptorDataInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - imageView*: VkImageView - -proc newVkImageViewCaptureDescriptorDataInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_VIEW_CAPTURE_DESCRIPTOR_DATA_INFO_EXT, pNext: pointer = nil, imageView: VkImageView): VkImageViewCaptureDescriptorDataInfoEXT = - result.sType = sType - result.pNext = pNext - result.imageView = imageView - -type VkSamplerCaptureDescriptorDataInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - sampler*: VkSampler - -proc newVkSamplerCaptureDescriptorDataInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SAMPLER_CAPTURE_DESCRIPTOR_DATA_INFO_EXT, pNext: pointer = nil, sampler: VkSampler): VkSamplerCaptureDescriptorDataInfoEXT = - result.sType = sType - result.pNext = pNext - result.sampler = sampler - -type VkAccelerationStructureCaptureDescriptorDataInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - accelerationStructure*: VkAccelerationStructureKHR - accelerationStructureNV*: VkAccelerationStructureNV - -proc newVkAccelerationStructureCaptureDescriptorDataInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CAPTURE_DESCRIPTOR_DATA_INFO_EXT, pNext: pointer = nil, accelerationStructure: VkAccelerationStructureKHR, accelerationStructureNV: VkAccelerationStructureNV): VkAccelerationStructureCaptureDescriptorDataInfoEXT = - result.sType = sType - result.pNext = pNext - result.accelerationStructure = accelerationStructure - result.accelerationStructureNV = accelerationStructureNV - -type VkOpaqueCaptureDescriptorDataCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - opaqueCaptureDescriptorData*: pointer - -proc newVkOpaqueCaptureDescriptorDataCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_OPAQUE_CAPTURE_DESCRIPTOR_DATA_CREATE_INFO_EXT, pNext: pointer = nil, opaqueCaptureDescriptorData: pointer = nil): VkOpaqueCaptureDescriptorDataCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.opaqueCaptureDescriptorData = opaqueCaptureDescriptorData - -type VkPhysicalDeviceShaderIntegerDotProductFeatures* = object - sType*: VkStructureType - pNext*: pointer - shaderIntegerDotProduct*: VkBool32 - -proc newVkPhysicalDeviceShaderIntegerDotProductFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES, pNext: pointer = nil, shaderIntegerDotProduct: VkBool32): VkPhysicalDeviceShaderIntegerDotProductFeatures = - result.sType = sType - result.pNext = pNext - result.shaderIntegerDotProduct = shaderIntegerDotProduct - -type VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR* = VkPhysicalDeviceShaderIntegerDotProductFeatures -type 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 - -proc newVkPhysicalDeviceShaderIntegerDotProductProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES, 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 - -type VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR* = VkPhysicalDeviceShaderIntegerDotProductProperties -type VkPhysicalDeviceDrmPropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - hasPrimary*: VkBool32 - hasRender*: VkBool32 - primaryMajor*: int64 - primaryMinor*: int64 - renderMajor*: int64 - renderMinor*: int64 - -proc newVkPhysicalDeviceDrmPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT, 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 - -type VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR* = object - sType*: VkStructureType - pNext*: pointer - fragmentShaderBarycentric*: VkBool32 - -proc newVkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR, pNext: pointer = nil, fragmentShaderBarycentric: VkBool32): VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR = - result.sType = sType - result.pNext = pNext - result.fragmentShaderBarycentric = fragmentShaderBarycentric - -type VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR* = object - sType*: VkStructureType - pNext*: pointer - triStripVertexOrderIndependentOfProvokingVertex*: VkBool32 - -proc newVkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR, pNext: pointer = nil, triStripVertexOrderIndependentOfProvokingVertex: VkBool32): VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR = - result.sType = sType - result.pNext = pNext - result.triStripVertexOrderIndependentOfProvokingVertex = triStripVertexOrderIndependentOfProvokingVertex - -type VkPhysicalDeviceRayTracingMotionBlurFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - rayTracingMotionBlur*: VkBool32 - rayTracingMotionBlurPipelineTraceRaysIndirect*: VkBool32 - -proc newVkPhysicalDeviceRayTracingMotionBlurFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV, pNext: pointer = nil, rayTracingMotionBlur: VkBool32, rayTracingMotionBlurPipelineTraceRaysIndirect: VkBool32): VkPhysicalDeviceRayTracingMotionBlurFeaturesNV = - result.sType = sType - result.pNext = pNext - result.rayTracingMotionBlur = rayTracingMotionBlur - result.rayTracingMotionBlurPipelineTraceRaysIndirect = rayTracingMotionBlurPipelineTraceRaysIndirect - -type VkAccelerationStructureMotionInstanceTypeNV* = cint -type VkAccelerationStructureGeometryMotionTrianglesDataNV* = object - sType*: VkStructureType - pNext*: pointer - vertexData*: VkDeviceOrHostAddressConstKHR - -proc newVkAccelerationStructureGeometryMotionTrianglesDataNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV, pNext: pointer = nil, vertexData: VkDeviceOrHostAddressConstKHR): VkAccelerationStructureGeometryMotionTrianglesDataNV = - result.sType = sType - result.pNext = pNext - result.vertexData = vertexData - -type VkAccelerationStructureMotionInfoNV* = object - sType*: VkStructureType - pNext*: pointer - maxInstances*: uint32 - flags*: VkAccelerationStructureMotionInfoFlagsNV - -proc newVkAccelerationStructureMotionInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV, pNext: pointer = nil, maxInstances: uint32, flags: VkAccelerationStructureMotionInfoFlagsNV = 0.VkAccelerationStructureMotionInfoFlagsNV): VkAccelerationStructureMotionInfoNV = - result.sType = sType - result.pNext = pNext - result.maxInstances = maxInstances - result.flags = flags - -type 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 - -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 - -type VkAccelerationStructureSRTMotionInstanceNV* = object - transformT0*: VkSRTDataNV - transformT1*: VkSRTDataNV - instanceCustomIndex*: uint32 - mask*: uint32 - instanceShaderBindingTableRecordOffset*: uint32 - flags*: VkGeometryInstanceFlagsKHR - accelerationStructureReference*: uint64 - -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 - -type VkAccelerationStructureMatrixMotionInstanceNV* = object - transformT0*: VkTransformMatrixKHR - transformT1*: VkTransformMatrixKHR - instanceCustomIndex*: uint32 - mask*: uint32 - instanceShaderBindingTableRecordOffset*: uint32 - flags*: VkGeometryInstanceFlagsKHR - accelerationStructureReference*: uint64 - -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 - -type VkAccelerationStructureMotionInstanceDataNV* {.union.} = object - staticInstance*: VkAccelerationStructureInstanceKHR - matrixMotionInstance*: VkAccelerationStructureMatrixMotionInstanceNV - srtMotionInstance*: VkAccelerationStructureSRTMotionInstanceNV - -proc newVkAccelerationStructureMotionInstanceDataNV*(staticInstance: VkAccelerationStructureInstanceKHR, matrixMotionInstance: VkAccelerationStructureMatrixMotionInstanceNV, srtMotionInstance: VkAccelerationStructureSRTMotionInstanceNV): VkAccelerationStructureMotionInstanceDataNV = - result.staticInstance = staticInstance - result.matrixMotionInstance = matrixMotionInstance - result.srtMotionInstance = srtMotionInstance - -type VkAccelerationStructureMotionInstanceNV* = object - `type`*: VkAccelerationStructureMotionInstanceTypeNV - flags*: VkAccelerationStructureMotionInstanceFlagsNV - data*: VkAccelerationStructureMotionInstanceDataNV - -proc newVkAccelerationStructureMotionInstanceNV*(`type`: VkAccelerationStructureMotionInstanceTypeNV, flags: VkAccelerationStructureMotionInstanceFlagsNV = 0.VkAccelerationStructureMotionInstanceFlagsNV, data: VkAccelerationStructureMotionInstanceDataNV): VkAccelerationStructureMotionInstanceNV = - result.`type` = `type` - result.flags = flags - result.data = data - -type VkRemoteAddressNV* = distinct void -type VkMemoryGetRemoteAddressInfoNV* = object - sType*: VkStructureType - pNext*: pointer - memory*: VkDeviceMemory - handleType*: VkExternalMemoryHandleTypeFlagBits - -proc newVkMemoryGetRemoteAddressInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_GET_REMOTE_ADDRESS_INFO_NV, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetRemoteAddressInfoNV = - result.sType = sType - result.pNext = pNext - result.memory = memory - result.handleType = handleType - -type VkImportMemoryBufferCollectionFUCHSIA* = object - sType*: VkStructureType - pNext*: pointer - collection*: VkBufferCollectionFUCHSIA - index*: uint32 - -proc newVkImportMemoryBufferCollectionFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA, pNext: pointer = nil, collection: VkBufferCollectionFUCHSIA, index: uint32): VkImportMemoryBufferCollectionFUCHSIA = - result.sType = sType - result.pNext = pNext - result.collection = collection - result.index = index - -type VkBufferCollectionImageCreateInfoFUCHSIA* = object - sType*: VkStructureType - pNext*: pointer - collection*: VkBufferCollectionFUCHSIA - index*: uint32 - -proc newVkBufferCollectionImageCreateInfoFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA, pNext: pointer = nil, collection: VkBufferCollectionFUCHSIA, index: uint32): VkBufferCollectionImageCreateInfoFUCHSIA = - result.sType = sType - result.pNext = pNext - result.collection = collection - result.index = index - -type VkBufferCollectionBufferCreateInfoFUCHSIA* = object - sType*: VkStructureType - pNext*: pointer - collection*: VkBufferCollectionFUCHSIA - index*: uint32 - -proc newVkBufferCollectionBufferCreateInfoFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA, pNext: pointer = nil, collection: VkBufferCollectionFUCHSIA, index: uint32): VkBufferCollectionBufferCreateInfoFUCHSIA = - result.sType = sType - result.pNext = pNext - result.collection = collection - result.index = index - -type VkBufferCollectionCreateInfoFUCHSIA* = object - sType*: VkStructureType - pNext*: pointer - collectionToken*: zx_handle_t - -proc newVkBufferCollectionCreateInfoFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CREATE_INFO_FUCHSIA, pNext: pointer = nil, collectionToken: zx_handle_t): VkBufferCollectionCreateInfoFUCHSIA = - result.sType = sType - result.pNext = pNext - result.collectionToken = collectionToken - -type 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 - -proc newVkBufferCollectionPropertiesFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_COLLECTION_PROPERTIES_FUCHSIA, 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 - -type VkBufferConstraintsInfoFUCHSIA* = object - sType*: VkStructureType - pNext*: pointer - createInfo*: VkBufferCreateInfo - requiredFormatFeatures*: VkFormatFeatureFlags - bufferCollectionConstraints*: VkBufferCollectionConstraintsInfoFUCHSIA - -proc newVkBufferConstraintsInfoFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_CONSTRAINTS_INFO_FUCHSIA, 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 - -type VkSysmemColorSpaceFUCHSIA* = object - sType*: VkStructureType - pNext*: pointer - colorSpace*: uint32 - -proc newVkSysmemColorSpaceFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_SYSMEM_COLOR_SPACE_FUCHSIA, pNext: pointer = nil, colorSpace: uint32): VkSysmemColorSpaceFUCHSIA = - result.sType = sType - result.pNext = pNext - result.colorSpace = colorSpace - -type VkImageFormatConstraintsInfoFUCHSIA* = object - sType*: VkStructureType - pNext*: pointer - imageCreateInfo*: VkImageCreateInfo - requiredFormatFeatures*: VkFormatFeatureFlags - flags*: VkImageFormatConstraintsFlagsFUCHSIA - sysmemPixelFormat*: uint64 - colorSpaceCount*: uint32 - pColorSpaces*: ptr VkSysmemColorSpaceFUCHSIA - -proc newVkImageFormatConstraintsInfoFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_FORMAT_CONSTRAINTS_INFO_FUCHSIA, 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 - -type VkImageConstraintsInfoFUCHSIA* = object - sType*: VkStructureType - pNext*: pointer - formatConstraintsCount*: uint32 - pFormatConstraints*: ptr VkImageFormatConstraintsInfoFUCHSIA - bufferCollectionConstraints*: VkBufferCollectionConstraintsInfoFUCHSIA - flags*: VkImageConstraintsInfoFlagsFUCHSIA - -proc newVkImageConstraintsInfoFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_CONSTRAINTS_INFO_FUCHSIA, 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 - -type VkBufferCollectionConstraintsInfoFUCHSIA* = object - sType*: VkStructureType - pNext*: pointer - minBufferCount*: uint32 - maxBufferCount*: uint32 - minBufferCountForCamping*: uint32 - minBufferCountForDedicatedSlack*: uint32 - minBufferCountForSharedSlack*: uint32 - -proc newVkBufferCollectionConstraintsInfoFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CONSTRAINTS_INFO_FUCHSIA, 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 - -type VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - formatRgba10x6WithoutYCbCrSampler*: VkBool32 - -proc newVkPhysicalDeviceRGBA10X6FormatsFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT, pNext: pointer = nil, formatRgba10x6WithoutYCbCrSampler: VkBool32): VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.formatRgba10x6WithoutYCbCrSampler = formatRgba10x6WithoutYCbCrSampler - -type VkFormatProperties3* = object - sType*: VkStructureType - pNext*: pointer - linearTilingFeatures*: VkFormatFeatureFlags2 - optimalTilingFeatures*: VkFormatFeatureFlags2 - bufferFeatures*: VkFormatFeatureFlags2 - -proc newVkFormatProperties3*(sType: VkStructureType = VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3, 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 - -type VkFormatProperties3KHR* = VkFormatProperties3 -type VkDrmFormatModifierPropertiesList2EXT* = object - sType*: VkStructureType - pNext*: pointer - drmFormatModifierCount*: uint32 - pDrmFormatModifierProperties*: ptr VkDrmFormatModifierProperties2EXT - -proc newVkDrmFormatModifierPropertiesList2EXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT, pNext: pointer = nil, drmFormatModifierCount: uint32, pDrmFormatModifierProperties: ptr VkDrmFormatModifierProperties2EXT): VkDrmFormatModifierPropertiesList2EXT = - result.sType = sType - result.pNext = pNext - result.drmFormatModifierCount = drmFormatModifierCount - result.pDrmFormatModifierProperties = pDrmFormatModifierProperties - -type VkDrmFormatModifierProperties2EXT* = object - drmFormatModifier*: uint64 - drmFormatModifierPlaneCount*: uint32 - drmFormatModifierTilingFeatures*: VkFormatFeatureFlags2 - -proc newVkDrmFormatModifierProperties2EXT*(drmFormatModifier: uint64, drmFormatModifierPlaneCount: uint32, drmFormatModifierTilingFeatures: VkFormatFeatureFlags2): VkDrmFormatModifierProperties2EXT = - result.drmFormatModifier = drmFormatModifier - result.drmFormatModifierPlaneCount = drmFormatModifierPlaneCount - result.drmFormatModifierTilingFeatures = drmFormatModifierTilingFeatures - -type VkAndroidHardwareBufferFormatProperties2ANDROID* = object - sType*: VkStructureType - pNext*: pointer - format*: VkFormat - externalFormat*: uint64 - formatFeatures*: VkFormatFeatureFlags2 - samplerYcbcrConversionComponents*: VkComponentMapping - suggestedYcbcrModel*: VkSamplerYcbcrModelConversion - suggestedYcbcrRange*: VkSamplerYcbcrRange - suggestedXChromaOffset*: VkChromaLocation - suggestedYChromaOffset*: VkChromaLocation - -proc newVkAndroidHardwareBufferFormatProperties2ANDROID*(sType: VkStructureType = VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID, 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 - -type VkPipelineRenderingCreateInfo* = object - sType*: VkStructureType - pNext*: pointer - viewMask*: uint32 - colorAttachmentCount*: uint32 - pColorAttachmentFormats*: ptr VkFormat - depthAttachmentFormat*: VkFormat - stencilAttachmentFormat*: VkFormat - -proc newVkPipelineRenderingCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO, 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 - -type VkPipelineRenderingCreateInfoKHR* = VkPipelineRenderingCreateInfo -type 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 - -proc newVkRenderingInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDERING_INFO, 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 - -type VkRenderingInfoKHR* = VkRenderingInfo -type VkRenderingAttachmentInfo* = object - sType*: VkStructureType - pNext*: pointer - imageView*: VkImageView - imageLayout*: VkImageLayout - resolveMode*: VkResolveModeFlagBits - resolveImageView*: VkImageView - resolveImageLayout*: VkImageLayout - loadOp*: VkAttachmentLoadOp - storeOp*: VkAttachmentStoreOp - clearValue*: VkClearValue - -proc newVkRenderingAttachmentInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO, 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 - -type VkRenderingAttachmentInfoKHR* = VkRenderingAttachmentInfo -type VkRenderingFragmentShadingRateAttachmentInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - imageView*: VkImageView - imageLayout*: VkImageLayout - shadingRateAttachmentTexelSize*: VkExtent2D - -proc newVkRenderingFragmentShadingRateAttachmentInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR, 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 - -type VkRenderingFragmentDensityMapAttachmentInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - imageView*: VkImageView - imageLayout*: VkImageLayout - -proc newVkRenderingFragmentDensityMapAttachmentInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT, pNext: pointer = nil, imageView: VkImageView, imageLayout: VkImageLayout): VkRenderingFragmentDensityMapAttachmentInfoEXT = - result.sType = sType - result.pNext = pNext - result.imageView = imageView - result.imageLayout = imageLayout - -type VkPhysicalDeviceDynamicRenderingFeatures* = object - sType*: VkStructureType - pNext*: pointer - dynamicRendering*: VkBool32 - -proc newVkPhysicalDeviceDynamicRenderingFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES, pNext: pointer = nil, dynamicRendering: VkBool32): VkPhysicalDeviceDynamicRenderingFeatures = - result.sType = sType - result.pNext = pNext - result.dynamicRendering = dynamicRendering - -type VkPhysicalDeviceDynamicRenderingFeaturesKHR* = VkPhysicalDeviceDynamicRenderingFeatures -type VkCommandBufferInheritanceRenderingInfo* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkRenderingFlags - viewMask*: uint32 - colorAttachmentCount*: uint32 - pColorAttachmentFormats*: ptr VkFormat - depthAttachmentFormat*: VkFormat - stencilAttachmentFormat*: VkFormat - rasterizationSamples*: VkSampleCountFlagBits - -proc newVkCommandBufferInheritanceRenderingInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO, pNext: pointer = nil, flags: 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 - -type VkCommandBufferInheritanceRenderingInfoKHR* = VkCommandBufferInheritanceRenderingInfo -type VkAttachmentSampleCountInfoAMD* = object - sType*: VkStructureType - pNext*: pointer - colorAttachmentCount*: uint32 - pColorAttachmentSamples*: ptr VkSampleCountFlagBits - depthStencilAttachmentSamples*: VkSampleCountFlagBits - -proc newVkAttachmentSampleCountInfoAMD*(sType: VkStructureType = VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD, 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 - -type VkAttachmentSampleCountInfoNV* = VkAttachmentSampleCountInfoAMD -type VkMultiviewPerViewAttributesInfoNVX* = object - sType*: VkStructureType - pNext*: pointer - perViewAttributes*: VkBool32 - perViewAttributesPositionXOnly*: VkBool32 - -proc newVkMultiviewPerViewAttributesInfoNVX*(sType: VkStructureType = VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX, pNext: pointer = nil, perViewAttributes: VkBool32, perViewAttributesPositionXOnly: VkBool32): VkMultiviewPerViewAttributesInfoNVX = - result.sType = sType - result.pNext = pNext - result.perViewAttributes = perViewAttributes - result.perViewAttributesPositionXOnly = perViewAttributesPositionXOnly - -type VkPhysicalDeviceImageViewMinLodFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - minLod*: VkBool32 - -proc newVkPhysicalDeviceImageViewMinLodFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT, pNext: pointer = nil, minLod: VkBool32): VkPhysicalDeviceImageViewMinLodFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.minLod = minLod - -type VkImageViewMinLodCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - minLod*: float32 - -proc newVkImageViewMinLodCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT, pNext: pointer = nil, minLod: float32): VkImageViewMinLodCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.minLod = minLod - -type VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - rasterizationOrderColorAttachmentAccess*: VkBool32 - rasterizationOrderDepthAttachmentAccess*: VkBool32 - rasterizationOrderStencilAttachmentAccess*: VkBool32 - -proc newVkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT, 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 - -type VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM* = VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT -type VkPhysicalDeviceLinearColorAttachmentFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - linearColorAttachment*: VkBool32 - -proc newVkPhysicalDeviceLinearColorAttachmentFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV, pNext: pointer = nil, linearColorAttachment: VkBool32): VkPhysicalDeviceLinearColorAttachmentFeaturesNV = - result.sType = sType - result.pNext = pNext - result.linearColorAttachment = linearColorAttachment - -type VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - graphicsPipelineLibrary*: VkBool32 - -proc newVkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT, pNext: pointer = nil, graphicsPipelineLibrary: VkBool32): VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.graphicsPipelineLibrary = graphicsPipelineLibrary - -type VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - graphicsPipelineLibraryFastLinking*: VkBool32 - graphicsPipelineLibraryIndependentInterpolationDecoration*: VkBool32 - -proc newVkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT, pNext: pointer = nil, graphicsPipelineLibraryFastLinking: VkBool32, graphicsPipelineLibraryIndependentInterpolationDecoration: VkBool32): VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.graphicsPipelineLibraryFastLinking = graphicsPipelineLibraryFastLinking - result.graphicsPipelineLibraryIndependentInterpolationDecoration = graphicsPipelineLibraryIndependentInterpolationDecoration - -type VkGraphicsPipelineLibraryCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkGraphicsPipelineLibraryFlagsEXT - -proc newVkGraphicsPipelineLibraryCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT, pNext: pointer = nil, flags: VkGraphicsPipelineLibraryFlagsEXT = 0.VkGraphicsPipelineLibraryFlagsEXT): VkGraphicsPipelineLibraryCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.flags = flags - -type VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE* = object - sType*: VkStructureType - pNext*: pointer - descriptorSetHostMapping*: VkBool32 - -proc newVkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE, pNext: pointer = nil, descriptorSetHostMapping: VkBool32): VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE = - result.sType = sType - result.pNext = pNext - result.descriptorSetHostMapping = descriptorSetHostMapping - -type VkDescriptorSetBindingReferenceVALVE* = object - sType*: VkStructureType - pNext*: pointer - descriptorSetLayout*: VkDescriptorSetLayout - binding*: uint32 - -proc newVkDescriptorSetBindingReferenceVALVE*(sType: VkStructureType = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_BINDING_REFERENCE_VALVE, pNext: pointer = nil, descriptorSetLayout: VkDescriptorSetLayout, binding: uint32): VkDescriptorSetBindingReferenceVALVE = - result.sType = sType - result.pNext = pNext - result.descriptorSetLayout = descriptorSetLayout - result.binding = binding - -type VkDescriptorSetLayoutHostMappingInfoVALVE* = object - sType*: VkStructureType - pNext*: pointer - descriptorOffset*: uint - descriptorSize*: uint32 - -proc newVkDescriptorSetLayoutHostMappingInfoVALVE*(sType: VkStructureType = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_HOST_MAPPING_INFO_VALVE, pNext: pointer = nil, descriptorOffset: uint, descriptorSize: uint32): VkDescriptorSetLayoutHostMappingInfoVALVE = - result.sType = sType - result.pNext = pNext - result.descriptorOffset = descriptorOffset - result.descriptorSize = descriptorSize - -type VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - shaderModuleIdentifier*: VkBool32 - -proc newVkPhysicalDeviceShaderModuleIdentifierFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT, pNext: pointer = nil, shaderModuleIdentifier: VkBool32): VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.shaderModuleIdentifier = shaderModuleIdentifier - -type VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - shaderModuleIdentifierAlgorithmUUID*: array[VK_UUID_SIZE, uint8] - -proc newVkPhysicalDeviceShaderModuleIdentifierPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT, pNext: pointer = nil, shaderModuleIdentifierAlgorithmUUID: array[VK_UUID_SIZE, uint8]): VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.shaderModuleIdentifierAlgorithmUUID = shaderModuleIdentifierAlgorithmUUID - -type VkPipelineShaderStageModuleIdentifierCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - identifierSize*: uint32 - pIdentifier*: ptr uint8 - -proc newVkPipelineShaderStageModuleIdentifierCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT, pNext: pointer = nil, identifierSize: uint32, pIdentifier: ptr uint8): VkPipelineShaderStageModuleIdentifierCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.identifierSize = identifierSize - result.pIdentifier = pIdentifier - -type VkShaderModuleIdentifierEXT* = object - sType*: VkStructureType - pNext*: pointer - identifierSize*: uint32 - identifier*: array[VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT, uint8] - -proc newVkShaderModuleIdentifierEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SHADER_MODULE_IDENTIFIER_EXT, 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 - -type VkImageCompressionControlEXT* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkImageCompressionFlagsEXT - compressionControlPlaneCount*: uint32 - pFixedRateFlags*: ptr VkImageCompressionFixedRateFlagsEXT - -proc newVkImageCompressionControlEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT, 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 - -type VkPhysicalDeviceImageCompressionControlFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - imageCompressionControl*: VkBool32 - -proc newVkPhysicalDeviceImageCompressionControlFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT, pNext: pointer = nil, imageCompressionControl: VkBool32): VkPhysicalDeviceImageCompressionControlFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.imageCompressionControl = imageCompressionControl - -type VkImageCompressionPropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - imageCompressionFlags*: VkImageCompressionFlagsEXT - imageCompressionFixedRateFlags*: VkImageCompressionFixedRateFlagsEXT - -proc newVkImageCompressionPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT, pNext: pointer = nil, imageCompressionFlags: VkImageCompressionFlagsEXT, imageCompressionFixedRateFlags: VkImageCompressionFixedRateFlagsEXT): VkImageCompressionPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.imageCompressionFlags = imageCompressionFlags - result.imageCompressionFixedRateFlags = imageCompressionFixedRateFlags - -type VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - imageCompressionControlSwapchain*: VkBool32 - -proc newVkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT, pNext: pointer = nil, imageCompressionControlSwapchain: VkBool32): VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.imageCompressionControlSwapchain = imageCompressionControlSwapchain - -type VkImageSubresource2EXT* = object - sType*: VkStructureType - pNext*: pointer - imageSubresource*: VkImageSubresource - -proc newVkImageSubresource2EXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT, pNext: pointer = nil, imageSubresource: VkImageSubresource): VkImageSubresource2EXT = - result.sType = sType - result.pNext = pNext - result.imageSubresource = imageSubresource - -type VkSubresourceLayout2EXT* = object - sType*: VkStructureType - pNext*: pointer - subresourceLayout*: VkSubresourceLayout - -proc newVkSubresourceLayout2EXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT, pNext: pointer = nil, subresourceLayout: VkSubresourceLayout): VkSubresourceLayout2EXT = - result.sType = sType - result.pNext = pNext - result.subresourceLayout = subresourceLayout - -type VkRenderPassCreationControlEXT* = object - sType*: VkStructureType - pNext*: pointer - disallowMerging*: VkBool32 - -proc newVkRenderPassCreationControlEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT, pNext: pointer = nil, disallowMerging: VkBool32): VkRenderPassCreationControlEXT = - result.sType = sType - result.pNext = pNext - result.disallowMerging = disallowMerging - -type VkRenderPassCreationFeedbackInfoEXT* = object - postMergeSubpassCount*: uint32 - -proc newVkRenderPassCreationFeedbackInfoEXT*(postMergeSubpassCount: uint32): VkRenderPassCreationFeedbackInfoEXT = - result.postMergeSubpassCount = postMergeSubpassCount - -type VkRenderPassCreationFeedbackCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - pRenderPassFeedback*: ptr VkRenderPassCreationFeedbackInfoEXT - -proc newVkRenderPassCreationFeedbackCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT, pNext: pointer = nil, pRenderPassFeedback: ptr VkRenderPassCreationFeedbackInfoEXT): VkRenderPassCreationFeedbackCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.pRenderPassFeedback = pRenderPassFeedback - -type VkRenderPassSubpassFeedbackInfoEXT* = object - subpassMergeStatus*: VkSubpassMergeStatusEXT - description*: array[VK_MAX_DESCRIPTION_SIZE, char] - postMergeIndex*: uint32 - -proc newVkRenderPassSubpassFeedbackInfoEXT*(subpassMergeStatus: VkSubpassMergeStatusEXT, description: array[VK_MAX_DESCRIPTION_SIZE, char], postMergeIndex: uint32): VkRenderPassSubpassFeedbackInfoEXT = - result.subpassMergeStatus = subpassMergeStatus - result.description = description - result.postMergeIndex = postMergeIndex - -type VkRenderPassSubpassFeedbackCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - pSubpassFeedback*: ptr VkRenderPassSubpassFeedbackInfoEXT - -proc newVkRenderPassSubpassFeedbackCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT, pNext: pointer = nil, pSubpassFeedback: ptr VkRenderPassSubpassFeedbackInfoEXT): VkRenderPassSubpassFeedbackCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.pSubpassFeedback = pSubpassFeedback - -type VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - subpassMergeFeedback*: VkBool32 - -proc newVkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT, pNext: pointer = nil, subpassMergeFeedback: VkBool32): VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.subpassMergeFeedback = subpassMergeFeedback - -type 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 - -proc newVkMicromapBuildInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_MICROMAP_BUILD_INFO_EXT, 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 - -type VkMicromapCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - createFlags*: VkMicromapCreateFlagsEXT - buffer*: VkBuffer - offset*: VkDeviceSize - size*: VkDeviceSize - `type`*: VkMicromapTypeEXT - deviceAddress*: VkDeviceAddress - -proc newVkMicromapCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_MICROMAP_CREATE_INFO_EXT, 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 - -type VkMicromapVersionInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - pVersionData*: ptr uint8 - -proc newVkMicromapVersionInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_MICROMAP_VERSION_INFO_EXT, pNext: pointer = nil, pVersionData: ptr uint8): VkMicromapVersionInfoEXT = - result.sType = sType - result.pNext = pNext - result.pVersionData = pVersionData - -type VkCopyMicromapInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - src*: VkMicromapEXT - dst*: VkMicromapEXT - mode*: VkCopyMicromapModeEXT - -proc newVkCopyMicromapInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_COPY_MICROMAP_INFO_EXT, 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 - -type VkCopyMicromapToMemoryInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - src*: VkMicromapEXT - dst*: VkDeviceOrHostAddressKHR - mode*: VkCopyMicromapModeEXT - -proc newVkCopyMicromapToMemoryInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_COPY_MICROMAP_TO_MEMORY_INFO_EXT, 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 - -type VkCopyMemoryToMicromapInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - src*: VkDeviceOrHostAddressConstKHR - dst*: VkMicromapEXT - mode*: VkCopyMicromapModeEXT - -proc newVkCopyMemoryToMicromapInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_COPY_MEMORY_TO_MICROMAP_INFO_EXT, 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 - -type VkMicromapBuildSizesInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - micromapSize*: VkDeviceSize - buildScratchSize*: VkDeviceSize - discardable*: VkBool32 - -proc newVkMicromapBuildSizesInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_MICROMAP_BUILD_SIZES_INFO_EXT, 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 - -type VkMicromapUsageEXT* = object - count*: uint32 - subdivisionLevel*: uint32 - format*: uint32 - -proc newVkMicromapUsageEXT*(count: uint32, subdivisionLevel: uint32, format: uint32): VkMicromapUsageEXT = - result.count = count - result.subdivisionLevel = subdivisionLevel - result.format = format - -type VkMicromapTriangleEXT* = object - dataOffset*: uint32 - subdivisionLevel*: uint16 - format*: uint16 - -proc newVkMicromapTriangleEXT*(dataOffset: uint32, subdivisionLevel: uint16, format: uint16): VkMicromapTriangleEXT = - result.dataOffset = dataOffset - result.subdivisionLevel = subdivisionLevel - result.format = format - -type VkPhysicalDeviceOpacityMicromapFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - micromap*: VkBool32 - micromapCaptureReplay*: VkBool32 - micromapHostCommands*: VkBool32 - -proc newVkPhysicalDeviceOpacityMicromapFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_FEATURES_EXT, 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 - -type VkPhysicalDeviceOpacityMicromapPropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - maxOpacity2StateSubdivisionLevel*: uint32 - maxOpacity4StateSubdivisionLevel*: uint32 - -proc newVkPhysicalDeviceOpacityMicromapPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_PROPERTIES_EXT, pNext: pointer = nil, maxOpacity2StateSubdivisionLevel: uint32, maxOpacity4StateSubdivisionLevel: uint32): VkPhysicalDeviceOpacityMicromapPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.maxOpacity2StateSubdivisionLevel = maxOpacity2StateSubdivisionLevel - result.maxOpacity4StateSubdivisionLevel = maxOpacity4StateSubdivisionLevel - -type 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 - -proc newVkAccelerationStructureTrianglesOpacityMicromapEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_OPACITY_MICROMAP_EXT, 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 - -type VkPhysicalDeviceDisplacementMicromapFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - displacementMicromap*: VkBool32 - -proc newVkPhysicalDeviceDisplacementMicromapFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISPLACEMENT_MICROMAP_FEATURES_NV, pNext: pointer = nil, displacementMicromap: VkBool32): VkPhysicalDeviceDisplacementMicromapFeaturesNV = - result.sType = sType - result.pNext = pNext - result.displacementMicromap = displacementMicromap - -type VkPhysicalDeviceDisplacementMicromapPropertiesNV* = object - sType*: VkStructureType - pNext*: pointer - maxDisplacementMicromapSubdivisionLevel*: uint32 - -proc newVkPhysicalDeviceDisplacementMicromapPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISPLACEMENT_MICROMAP_PROPERTIES_NV, pNext: pointer = nil, maxDisplacementMicromapSubdivisionLevel: uint32): VkPhysicalDeviceDisplacementMicromapPropertiesNV = - result.sType = sType - result.pNext = pNext - result.maxDisplacementMicromapSubdivisionLevel = maxDisplacementMicromapSubdivisionLevel - -type 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 - -proc newVkAccelerationStructureTrianglesDisplacementMicromapNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_DISPLACEMENT_MICROMAP_NV, 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 - -type VkPipelinePropertiesIdentifierEXT* = object - sType*: VkStructureType - pNext*: pointer - pipelineIdentifier*: array[VK_UUID_SIZE, uint8] - -proc newVkPipelinePropertiesIdentifierEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT, pNext: pointer = nil, pipelineIdentifier: array[VK_UUID_SIZE, uint8]): VkPipelinePropertiesIdentifierEXT = - result.sType = sType - result.pNext = pNext - result.pipelineIdentifier = pipelineIdentifier - -type VkPhysicalDevicePipelinePropertiesFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - pipelinePropertiesIdentifier*: VkBool32 - -proc newVkPhysicalDevicePipelinePropertiesFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT, pNext: pointer = nil, pipelinePropertiesIdentifier: VkBool32): VkPhysicalDevicePipelinePropertiesFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.pipelinePropertiesIdentifier = pipelinePropertiesIdentifier - -type VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD* = object - sType*: VkStructureType - pNext*: pointer - shaderEarlyAndLateFragmentTests*: VkBool32 - -proc newVkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD, pNext: pointer = nil, shaderEarlyAndLateFragmentTests: VkBool32): VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD = - result.sType = sType - result.pNext = pNext - result.shaderEarlyAndLateFragmentTests = shaderEarlyAndLateFragmentTests - -type VkExportMetalObjectCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - exportObjectType*: VkExportMetalObjectTypeFlagBitsEXT - -proc newVkExportMetalObjectCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECT_CREATE_INFO_EXT, pNext: pointer = nil, exportObjectType: VkExportMetalObjectTypeFlagBitsEXT): VkExportMetalObjectCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.exportObjectType = exportObjectType - -type VkExportMetalObjectsInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - -proc newVkExportMetalObjectsInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECTS_INFO_EXT, pNext: pointer = nil): VkExportMetalObjectsInfoEXT = - result.sType = sType - result.pNext = pNext - -type VkExportMetalDeviceInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - mtlDevice*: MTLDevice_id - -proc newVkExportMetalDeviceInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_METAL_DEVICE_INFO_EXT, pNext: pointer = nil, mtlDevice: MTLDevice_id): VkExportMetalDeviceInfoEXT = - result.sType = sType - result.pNext = pNext - result.mtlDevice = mtlDevice - -type VkExportMetalCommandQueueInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - queue*: VkQueue - mtlCommandQueue*: MTLCommandQueue_id - -proc newVkExportMetalCommandQueueInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_METAL_COMMAND_QUEUE_INFO_EXT, pNext: pointer = nil, queue: VkQueue, mtlCommandQueue: MTLCommandQueue_id): VkExportMetalCommandQueueInfoEXT = - result.sType = sType - result.pNext = pNext - result.queue = queue - result.mtlCommandQueue = mtlCommandQueue - -type VkExportMetalBufferInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - memory*: VkDeviceMemory - mtlBuffer*: MTLBuffer_id - -proc newVkExportMetalBufferInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_METAL_BUFFER_INFO_EXT, pNext: pointer = nil, memory: VkDeviceMemory, mtlBuffer: MTLBuffer_id): VkExportMetalBufferInfoEXT = - result.sType = sType - result.pNext = pNext - result.memory = memory - result.mtlBuffer = mtlBuffer - -type VkImportMetalBufferInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - mtlBuffer*: MTLBuffer_id - -proc newVkImportMetalBufferInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_METAL_BUFFER_INFO_EXT, pNext: pointer = nil, mtlBuffer: MTLBuffer_id): VkImportMetalBufferInfoEXT = - result.sType = sType - result.pNext = pNext - result.mtlBuffer = mtlBuffer - -type VkExportMetalTextureInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - image*: VkImage - imageView*: VkImageView - bufferView*: VkBufferView - plane*: VkImageAspectFlagBits - mtlTexture*: MTLTexture_id - -proc newVkExportMetalTextureInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_METAL_TEXTURE_INFO_EXT, 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 - -type VkImportMetalTextureInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - plane*: VkImageAspectFlagBits - mtlTexture*: MTLTexture_id - -proc newVkImportMetalTextureInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_METAL_TEXTURE_INFO_EXT, pNext: pointer = nil, plane: VkImageAspectFlagBits, mtlTexture: MTLTexture_id): VkImportMetalTextureInfoEXT = - result.sType = sType - result.pNext = pNext - result.plane = plane - result.mtlTexture = mtlTexture - -type VkExportMetalIOSurfaceInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - image*: VkImage - ioSurface*: IOSurfaceRef - -proc newVkExportMetalIOSurfaceInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_METAL_IO_SURFACE_INFO_EXT, pNext: pointer = nil, image: VkImage, ioSurface: IOSurfaceRef): VkExportMetalIOSurfaceInfoEXT = - result.sType = sType - result.pNext = pNext - result.image = image - result.ioSurface = ioSurface - -type VkImportMetalIOSurfaceInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - ioSurface*: IOSurfaceRef - -proc newVkImportMetalIOSurfaceInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_METAL_IO_SURFACE_INFO_EXT, pNext: pointer = nil, ioSurface: IOSurfaceRef): VkImportMetalIOSurfaceInfoEXT = - result.sType = sType - result.pNext = pNext - result.ioSurface = ioSurface - -type VkExportMetalSharedEventInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - semaphore*: VkSemaphore - event*: VkEvent - mtlSharedEvent*: MTLSharedEvent_id - -proc newVkExportMetalSharedEventInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_METAL_SHARED_EVENT_INFO_EXT, 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 - -type VkImportMetalSharedEventInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - mtlSharedEvent*: MTLSharedEvent_id - -proc newVkImportMetalSharedEventInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_METAL_SHARED_EVENT_INFO_EXT, pNext: pointer = nil, mtlSharedEvent: MTLSharedEvent_id): VkImportMetalSharedEventInfoEXT = - result.sType = sType - result.pNext = pNext - result.mtlSharedEvent = mtlSharedEvent - -type VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - nonSeamlessCubeMap*: VkBool32 - -proc newVkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT, pNext: pointer = nil, nonSeamlessCubeMap: VkBool32): VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.nonSeamlessCubeMap = nonSeamlessCubeMap - -type VkPhysicalDevicePipelineRobustnessFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - pipelineRobustness*: VkBool32 - -proc newVkPhysicalDevicePipelineRobustnessFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES_EXT, pNext: pointer = nil, pipelineRobustness: VkBool32): VkPhysicalDevicePipelineRobustnessFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.pipelineRobustness = pipelineRobustness - -type VkPipelineRobustnessCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - storageBuffers*: VkPipelineRobustnessBufferBehaviorEXT - uniformBuffers*: VkPipelineRobustnessBufferBehaviorEXT - vertexInputs*: VkPipelineRobustnessBufferBehaviorEXT - images*: VkPipelineRobustnessImageBehaviorEXT - -proc newVkPipelineRobustnessCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO_EXT, 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 - -type VkPhysicalDevicePipelineRobustnessPropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - defaultRobustnessStorageBuffers*: VkPipelineRobustnessBufferBehaviorEXT - defaultRobustnessUniformBuffers*: VkPipelineRobustnessBufferBehaviorEXT - defaultRobustnessVertexInputs*: VkPipelineRobustnessBufferBehaviorEXT - defaultRobustnessImages*: VkPipelineRobustnessImageBehaviorEXT - -proc newVkPhysicalDevicePipelineRobustnessPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES_EXT, 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 - -type VkImageViewSampleWeightCreateInfoQCOM* = object - sType*: VkStructureType - pNext*: pointer - filterCenter*: VkOffset2D - filterSize*: VkExtent2D - numPhases*: uint32 - -proc newVkImageViewSampleWeightCreateInfoQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_VIEW_SAMPLE_WEIGHT_CREATE_INFO_QCOM, 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 - -type VkPhysicalDeviceImageProcessingFeaturesQCOM* = object - sType*: VkStructureType - pNext*: pointer - textureSampleWeighted*: VkBool32 - textureBoxFilter*: VkBool32 - textureBlockMatch*: VkBool32 - -proc newVkPhysicalDeviceImageProcessingFeaturesQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM, 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 - -type VkPhysicalDeviceImageProcessingPropertiesQCOM* = object - sType*: VkStructureType - pNext*: pointer - maxWeightFilterPhases*: uint32 - maxWeightFilterDimension*: VkExtent2D - maxBlockMatchRegion*: VkExtent2D - maxBoxFilterBlockSize*: VkExtent2D - -proc newVkPhysicalDeviceImageProcessingPropertiesQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM, 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 - -type VkPhysicalDeviceTilePropertiesFeaturesQCOM* = object - sType*: VkStructureType - pNext*: pointer - tileProperties*: VkBool32 - -proc newVkPhysicalDeviceTilePropertiesFeaturesQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM, pNext: pointer = nil, tileProperties: VkBool32): VkPhysicalDeviceTilePropertiesFeaturesQCOM = - result.sType = sType - result.pNext = pNext - result.tileProperties = tileProperties - -type VkTilePropertiesQCOM* = object - sType*: VkStructureType - pNext*: pointer - tileSize*: VkExtent3D - apronSize*: VkExtent2D - origin*: VkOffset2D - -proc newVkTilePropertiesQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_TILE_PROPERTIES_QCOM, 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 - -type VkPhysicalDeviceAmigoProfilingFeaturesSEC* = object - sType*: VkStructureType - pNext*: pointer - amigoProfiling*: VkBool32 - -proc newVkPhysicalDeviceAmigoProfilingFeaturesSEC*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC, pNext: pointer = nil, amigoProfiling: VkBool32): VkPhysicalDeviceAmigoProfilingFeaturesSEC = - result.sType = sType - result.pNext = pNext - result.amigoProfiling = amigoProfiling - -type VkAmigoProfilingSubmitInfoSEC* = object - sType*: VkStructureType - pNext*: pointer - firstDrawTimestamp*: uint64 - swapBufferTimestamp*: uint64 - -proc newVkAmigoProfilingSubmitInfoSEC*(sType: VkStructureType = VK_STRUCTURE_TYPE_AMIGO_PROFILING_SUBMIT_INFO_SEC, pNext: pointer = nil, firstDrawTimestamp: uint64, swapBufferTimestamp: uint64): VkAmigoProfilingSubmitInfoSEC = - result.sType = sType - result.pNext = pNext - result.firstDrawTimestamp = firstDrawTimestamp - result.swapBufferTimestamp = swapBufferTimestamp - -type VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - attachmentFeedbackLoopLayout*: VkBool32 - -proc newVkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT, pNext: pointer = nil, attachmentFeedbackLoopLayout: VkBool32): VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.attachmentFeedbackLoopLayout = attachmentFeedbackLoopLayout - -type VkPhysicalDeviceDepthClampZeroOneFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - depthClampZeroOne*: VkBool32 - -proc newVkPhysicalDeviceDepthClampZeroOneFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_EXT, pNext: pointer = nil, depthClampZeroOne: VkBool32): VkPhysicalDeviceDepthClampZeroOneFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.depthClampZeroOne = depthClampZeroOne - -type VkPhysicalDeviceAddressBindingReportFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - reportAddressBinding*: VkBool32 - -proc newVkPhysicalDeviceAddressBindingReportFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ADDRESS_BINDING_REPORT_FEATURES_EXT, pNext: pointer = nil, reportAddressBinding: VkBool32): VkPhysicalDeviceAddressBindingReportFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.reportAddressBinding = reportAddressBinding - -type VkDeviceAddressBindingCallbackDataEXT* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkDeviceAddressBindingFlagsEXT - baseAddress*: VkDeviceAddress - size*: VkDeviceSize - bindingType*: VkDeviceAddressBindingTypeEXT - -proc newVkDeviceAddressBindingCallbackDataEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_ADDRESS_BINDING_CALLBACK_DATA_EXT, 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 - -type VkPhysicalDeviceOpticalFlowFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - opticalFlow*: VkBool32 - -proc newVkPhysicalDeviceOpticalFlowFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_FEATURES_NV, pNext: pointer = nil, opticalFlow: VkBool32): VkPhysicalDeviceOpticalFlowFeaturesNV = - result.sType = sType - result.pNext = pNext - result.opticalFlow = opticalFlow - -type 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 - -proc newVkPhysicalDeviceOpticalFlowPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_PROPERTIES_NV, 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 - -type VkOpticalFlowImageFormatInfoNV* = object - sType*: VkStructureType - pNext*: pointer - usage*: VkOpticalFlowUsageFlagsNV - -proc newVkOpticalFlowImageFormatInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_INFO_NV, pNext: pointer = nil, usage: VkOpticalFlowUsageFlagsNV): VkOpticalFlowImageFormatInfoNV = - result.sType = sType - result.pNext = pNext - result.usage = usage - -type VkOpticalFlowImageFormatPropertiesNV* = object - sType*: VkStructureType - pNext*: pointer - format*: VkFormat - -proc newVkOpticalFlowImageFormatPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_PROPERTIES_NV, pNext: pointer = nil, format: VkFormat): VkOpticalFlowImageFormatPropertiesNV = - result.sType = sType - result.pNext = pNext - result.format = format - -type VkOpticalFlowSessionCreateInfoNV* = object - sType*: VkStructureType - pNext*: pointer - width*: uint32 - height*: uint32 - imageFormat*: VkFormat - flowVectorFormat*: VkFormat - costFormat*: VkFormat - outputGridSize*: VkOpticalFlowGridSizeFlagsNV - hintGridSize*: VkOpticalFlowGridSizeFlagsNV - performanceLevel*: VkOpticalFlowPerformanceLevelNV - flags*: VkOpticalFlowSessionCreateFlagsNV - -proc newVkOpticalFlowSessionCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_INFO_NV, 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 - -type VkOpticalFlowSessionCreatePrivateDataInfoNV* = object - sType*: VkStructureType - pNext*: pointer - id*: uint32 - size*: uint32 - pPrivateData*: pointer - -proc newVkOpticalFlowSessionCreatePrivateDataInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_PRIVATE_DATA_INFO_NV, 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 - -type VkOpticalFlowExecuteInfoNV* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkOpticalFlowExecuteFlagsNV - regionCount*: uint32 - pRegions*: ptr VkRect2D - -proc newVkOpticalFlowExecuteInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_OPTICAL_FLOW_EXECUTE_INFO_NV, 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 - -type VkPhysicalDeviceFaultFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - deviceFault*: VkBool32 - deviceFaultVendorBinary*: VkBool32 - -proc newVkPhysicalDeviceFaultFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FAULT_FEATURES_EXT, pNext: pointer = nil, deviceFault: VkBool32, deviceFaultVendorBinary: VkBool32): VkPhysicalDeviceFaultFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.deviceFault = deviceFault - result.deviceFaultVendorBinary = deviceFaultVendorBinary - -type VkDeviceFaultAddressInfoEXT* = object - addressType*: VkDeviceFaultAddressTypeEXT - reportedAddress*: VkDeviceAddress - addressPrecision*: VkDeviceSize - -proc newVkDeviceFaultAddressInfoEXT*(addressType: VkDeviceFaultAddressTypeEXT, reportedAddress: VkDeviceAddress, addressPrecision: VkDeviceSize): VkDeviceFaultAddressInfoEXT = - result.addressType = addressType - result.reportedAddress = reportedAddress - result.addressPrecision = addressPrecision - -type VkDeviceFaultVendorInfoEXT* = object - description*: array[VK_MAX_DESCRIPTION_SIZE, char] - vendorFaultCode*: uint64 - vendorFaultData*: uint64 - -proc newVkDeviceFaultVendorInfoEXT*(description: array[VK_MAX_DESCRIPTION_SIZE, char], vendorFaultCode: uint64, vendorFaultData: uint64): VkDeviceFaultVendorInfoEXT = - result.description = description - result.vendorFaultCode = vendorFaultCode - result.vendorFaultData = vendorFaultData - -type VkDeviceFaultCountsEXT* = object - sType*: VkStructureType - pNext*: pointer - addressInfoCount*: uint32 - vendorInfoCount*: uint32 - vendorBinarySize*: VkDeviceSize - -proc newVkDeviceFaultCountsEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_FAULT_COUNTS_EXT, 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 - -type VkDeviceFaultInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - description*: array[VK_MAX_DESCRIPTION_SIZE, char] - pAddressInfos*: ptr VkDeviceFaultAddressInfoEXT - pVendorInfos*: ptr VkDeviceFaultVendorInfoEXT - pVendorBinaryData*: pointer - -proc newVkDeviceFaultInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_FAULT_INFO_EXT, 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 - -type VkDeviceFaultVendorBinaryHeaderVersionOneEXT_s* = object - headerSize*: uint32 - headerVersion*: VkDeviceFaultVendorBinaryHeaderVersionEXT - vendorID*: uint32 - deviceID*: uint32 - driverVersion*: uint32 - pipelineCacheUUID*: array[VK_UUID_SIZE, uint8] - applicationNameOffset*: uint32 - applicationVersion*: uint32 - engineNameOffset*: uint32 - -proc newVkDeviceFaultVendorBinaryHeaderVersionOneEXT_s*(headerSize: uint32, headerVersion: VkDeviceFaultVendorBinaryHeaderVersionEXT, vendorID: uint32, deviceID: uint32, driverVersion: uint32, pipelineCacheUUID: array[VK_UUID_SIZE, uint8], applicationNameOffset: uint32, applicationVersion: uint32, engineNameOffset: uint32): VkDeviceFaultVendorBinaryHeaderVersionOneEXT_s = - 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 - -type VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - pipelineLibraryGroupHandles*: VkBool32 - -proc newVkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_LIBRARY_GROUP_HANDLES_FEATURES_EXT, pNext: pointer = nil, pipelineLibraryGroupHandles: VkBool32): VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.pipelineLibraryGroupHandles = pipelineLibraryGroupHandles - -type VkDecompressMemoryRegionNV* = object - srcAddress*: VkDeviceAddress - dstAddress*: VkDeviceAddress - compressedSize*: VkDeviceSize - decompressedSize*: VkDeviceSize - decompressionMethod*: VkMemoryDecompressionMethodFlagsNV - -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 - -type VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM* = object - sType*: VkStructureType - pNext*: pointer - shaderCoreMask*: uint64 - shaderCoreCount*: uint32 - shaderWarpsPerCore*: uint32 - -proc newVkPhysicalDeviceShaderCoreBuiltinsPropertiesARM*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_PROPERTIES_ARM, 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 - -type VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM* = object - sType*: VkStructureType - pNext*: pointer - shaderCoreBuiltins*: VkBool32 - -proc newVkPhysicalDeviceShaderCoreBuiltinsFeaturesARM*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM, pNext: pointer = nil, shaderCoreBuiltins: VkBool32): VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM = - result.sType = sType - result.pNext = pNext - result.shaderCoreBuiltins = shaderCoreBuiltins - -type VkSurfacePresentModeEXT* = object - sType*: VkStructureType - pNext*: pointer - presentMode*: VkPresentModeKHR - -proc newVkSurfacePresentModeEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SURFACE_PRESENT_MODE_EXT, pNext: pointer = nil, presentMode: VkPresentModeKHR): VkSurfacePresentModeEXT = - result.sType = sType - result.pNext = pNext - result.presentMode = presentMode - -type VkSurfacePresentScalingCapabilitiesEXT* = object - sType*: VkStructureType - pNext*: pointer - supportedPresentScaling*: VkPresentScalingFlagsEXT - supportedPresentGravityX*: VkPresentGravityFlagsEXT - supportedPresentGravityY*: VkPresentGravityFlagsEXT - minScaledImageExtent*: VkExtent2D - maxScaledImageExtent*: VkExtent2D - -proc newVkSurfacePresentScalingCapabilitiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SURFACE_PRESENT_SCALING_CAPABILITIES_EXT, 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 - -type VkSurfacePresentModeCompatibilityEXT* = object - sType*: VkStructureType - pNext*: pointer - presentModeCount*: uint32 - pPresentModes*: ptr VkPresentModeKHR - -proc newVkSurfacePresentModeCompatibilityEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SURFACE_PRESENT_MODE_COMPATIBILITY_EXT, pNext: pointer = nil, presentModeCount: uint32, pPresentModes: ptr VkPresentModeKHR): VkSurfacePresentModeCompatibilityEXT = - result.sType = sType - result.pNext = pNext - result.presentModeCount = presentModeCount - result.pPresentModes = pPresentModes - -type VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - swapchainMaintenance1*: VkBool32 - -proc newVkPhysicalDeviceSwapchainMaintenance1FeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SWAPCHAIN_MAINTENANCE_1_FEATURES_EXT, pNext: pointer = nil, swapchainMaintenance1: VkBool32): VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT = - result.sType = sType - result.pNext = pNext - result.swapchainMaintenance1 = swapchainMaintenance1 - -type VkSwapchainPresentFenceInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - swapchainCount*: uint32 - pFences*: ptr VkFence - -proc newVkSwapchainPresentFenceInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_FENCE_INFO_EXT, pNext: pointer = nil, swapchainCount: uint32, pFences: ptr VkFence): VkSwapchainPresentFenceInfoEXT = - result.sType = sType - result.pNext = pNext - result.swapchainCount = swapchainCount - result.pFences = pFences - -type VkSwapchainPresentModesCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - presentModeCount*: uint32 - pPresentModes*: ptr VkPresentModeKHR - -proc newVkSwapchainPresentModesCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODES_CREATE_INFO_EXT, pNext: pointer = nil, presentModeCount: uint32, pPresentModes: ptr VkPresentModeKHR): VkSwapchainPresentModesCreateInfoEXT = - result.sType = sType - result.pNext = pNext - result.presentModeCount = presentModeCount - result.pPresentModes = pPresentModes - -type VkSwapchainPresentModeInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - swapchainCount*: uint32 - pPresentModes*: ptr VkPresentModeKHR - -proc newVkSwapchainPresentModeInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODE_INFO_EXT, pNext: pointer = nil, swapchainCount: uint32, pPresentModes: ptr VkPresentModeKHR): VkSwapchainPresentModeInfoEXT = - result.sType = sType - result.pNext = pNext - result.swapchainCount = swapchainCount - result.pPresentModes = pPresentModes - -type VkSwapchainPresentScalingCreateInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - scalingBehavior*: VkPresentScalingFlagsEXT - presentGravityX*: VkPresentGravityFlagsEXT - presentGravityY*: VkPresentGravityFlagsEXT - -proc newVkSwapchainPresentScalingCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_SCALING_CREATE_INFO_EXT, 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 - -type VkReleaseSwapchainImagesInfoEXT* = object - sType*: VkStructureType - pNext*: pointer - swapchain*: VkSwapchainKHR - imageIndexCount*: uint32 - pImageIndices*: ptr uint32 - -proc newVkReleaseSwapchainImagesInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_RELEASE_SWAPCHAIN_IMAGES_INFO_EXT, 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 - -type VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV* = object - sType*: VkStructureType - pNext*: pointer - rayTracingInvocationReorder*: VkBool32 - -proc newVkPhysicalDeviceRayTracingInvocationReorderFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_FEATURES_NV, pNext: pointer = nil, rayTracingInvocationReorder: VkBool32): VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV = - result.sType = sType - result.pNext = pNext - result.rayTracingInvocationReorder = rayTracingInvocationReorder - -type VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV* = object - sType*: VkStructureType - pNext*: pointer - rayTracingInvocationReorderReorderingHint*: VkRayTracingInvocationReorderModeNV - -proc newVkPhysicalDeviceRayTracingInvocationReorderPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_PROPERTIES_NV, pNext: pointer = nil, rayTracingInvocationReorderReorderingHint: VkRayTracingInvocationReorderModeNV): VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV = - result.sType = sType - result.pNext = pNext - result.rayTracingInvocationReorderReorderingHint = rayTracingInvocationReorderReorderingHint - -type VkDirectDriverLoadingInfoLUNARG* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkDirectDriverLoadingFlagsLUNARG - pfnGetInstanceProcAddr*: PFN_vkGetInstanceProcAddrLUNARG - -proc newVkDirectDriverLoadingInfoLUNARG*(sType: VkStructureType = VK_STRUCTURE_TYPE_DIRECT_DRIVER_LOADING_INFO_LUNARG, pNext: pointer = nil, flags: VkDirectDriverLoadingFlagsLUNARG = 0.VkDirectDriverLoadingFlagsLUNARG, pfnGetInstanceProcAddr: PFN_vkGetInstanceProcAddrLUNARG): VkDirectDriverLoadingInfoLUNARG = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.pfnGetInstanceProcAddr = pfnGetInstanceProcAddr - -type VkDirectDriverLoadingListLUNARG* = object - sType*: VkStructureType - pNext*: pointer - mode*: VkDirectDriverLoadingModeLUNARG - driverCount*: uint32 - pDrivers*: ptr VkDirectDriverLoadingInfoLUNARG - -proc newVkDirectDriverLoadingListLUNARG*(sType: VkStructureType = VK_STRUCTURE_TYPE_DIRECT_DRIVER_LOADING_LIST_LUNARG, 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 - -type VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM* = object - sType*: VkStructureType - pNext*: pointer - multiviewPerViewViewports*: VkBool32 - -proc newVkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_VIEWPORTS_FEATURES_QCOM, pNext: pointer = nil, multiviewPerViewViewports: VkBool32): VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM = - result.sType = sType - result.pNext = pNext - result.multiviewPerViewViewports = multiviewPerViewViewports - -type VkPhysicalDeviceShaderCorePropertiesARM* = object - sType*: VkStructureType - pNext*: pointer - pixelRate*: uint32 - texelRate*: uint32 - fmaRate*: uint32 - -proc newVkPhysicalDeviceShaderCorePropertiesARM*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_ARM, 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 - -type VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM* = object - sType*: VkStructureType - pNext*: pointer - multiviewPerViewRenderAreas*: VkBool32 - -proc newVkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_RENDER_AREAS_FEATURES_QCOM, pNext: pointer = nil, multiviewPerViewRenderAreas: VkBool32): VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM = - result.sType = sType - result.pNext = pNext - result.multiviewPerViewRenderAreas = multiviewPerViewRenderAreas - -type VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM* = object - sType*: VkStructureType - pNext*: pointer - perViewRenderAreaCount*: uint32 - pPerViewRenderAreas*: ptr VkRect2D - -proc newVkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_RENDER_AREAS_RENDER_PASS_BEGIN_INFO_QCOM, pNext: pointer = nil, perViewRenderAreaCount: uint32, pPerViewRenderAreas: ptr VkRect2D): VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM = - result.sType = sType - result.pNext = pNext - result.perViewRenderAreaCount = perViewRenderAreaCount - result.pPerViewRenderAreas = pPerViewRenderAreas - -type VkQueryLowLatencySupportNV* = object - sType*: VkStructureType - pNext*: pointer - pQueriedLowLatencyData*: pointer - -proc newVkQueryLowLatencySupportNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_QUERY_LOW_LATENCY_SUPPORT_NV, pNext: pointer = nil, pQueriedLowLatencyData: pointer = nil): VkQueryLowLatencySupportNV = - result.sType = sType - result.pNext = pNext - result.pQueriedLowLatencyData = pQueriedLowLatencyData - -type VkMemoryMapInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkMemoryMapFlags - memory*: VkDeviceMemory - offset*: VkDeviceSize - size*: VkDeviceSize - -proc newVkMemoryMapInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_MAP_INFO_KHR, 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 - -type VkMemoryUnmapInfoKHR* = object - sType*: VkStructureType - pNext*: pointer - flags*: VkMemoryUnmapFlagsKHR - memory*: VkDeviceMemory - -proc newVkMemoryUnmapInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_UNMAP_INFO_KHR, pNext: pointer = nil, flags: VkMemoryUnmapFlagsKHR = 0.VkMemoryUnmapFlagsKHR, memory: VkDeviceMemory): VkMemoryUnmapInfoKHR = - result.sType = sType - result.pNext = pNext - result.flags = flags - result.memory = memory - -type VkPhysicalDeviceShaderObjectFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - shaderObject*: VkBool32 - -proc newVkPhysicalDeviceShaderObjectFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT, pNext: pointer = nil, shaderObject: VkBool32): VkPhysicalDeviceShaderObjectFeaturesEXT = - result.sType = sType - result.pNext = pNext - result.shaderObject = shaderObject - -type VkPhysicalDeviceShaderObjectPropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - shaderBinaryUUID*: array[VK_UUID_SIZE, uint8] - shaderBinaryVersion*: uint32 - -proc newVkPhysicalDeviceShaderObjectPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_PROPERTIES_EXT, pNext: pointer = nil, shaderBinaryUUID: array[VK_UUID_SIZE, uint8], shaderBinaryVersion: uint32): VkPhysicalDeviceShaderObjectPropertiesEXT = - result.sType = sType - result.pNext = pNext - result.shaderBinaryUUID = shaderBinaryUUID - result.shaderBinaryVersion = shaderBinaryVersion - -type 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 - -proc newVkShaderCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SHADER_CREATE_INFO_EXT, 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 - -type VkPhysicalDeviceShaderTileImageFeaturesEXT* = object - sType*: VkStructureType - pNext*: pointer - shaderTileImageColorReadAccess*: VkBool32 - shaderTileImageDepthReadAccess*: VkBool32 - shaderTileImageStencilReadAccess*: VkBool32 - -proc newVkPhysicalDeviceShaderTileImageFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_FEATURES_EXT, 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 - -type VkPhysicalDeviceShaderTileImagePropertiesEXT* = object - sType*: VkStructureType - pNext*: pointer - shaderTileImageCoherentReadAccelerated*: VkBool32 - shaderTileImageReadSampleFromPixelRateInvocation*: VkBool32 - shaderTileImageReadFromHelperInvocation*: VkBool32 - -proc newVkPhysicalDeviceShaderTileImagePropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_PROPERTIES_EXT, 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 - -const VK_MAX_PHYSICAL_DEVICE_NAME_SIZE*: uint32 = 256 -const VK_UUID_SIZE*: uint32 = 16 -const VK_LUID_SIZE*: uint32 = 8 -template VK_LUID_SIZE_KHR* = - VK_LUID_SIZE -const VK_MAX_EXTENSION_NAME_SIZE*: uint32 = 256 -const VK_MAX_DESCRIPTION_SIZE*: uint32 = 256 -const VK_MAX_MEMORY_TYPES*: uint32 = 32 -const VK_MAX_MEMORY_HEAPS*: uint32 = 16 -const VK_LOD_CLAMP_NONE*: float32 = 1000.0F -const VK_REMAINING_MIP_LEVELS*: uint32 = (not 0'u32) -const VK_REMAINING_ARRAY_LAYERS*: uint32 = (not 0'u32) -const VK_REMAINING_3D_SLICES_EXT*: uint32 = (not 0'u32) -const VK_WHOLE_SIZE*: uint64 = (not 0'u64) -const VK_ATTACHMENT_UNUSED*: uint32 = (not 0'u32) -const VK_TRUE*: uint32 = 1 -const VK_FALSE*: uint32 = 0 -const VK_QUEUE_FAMILY_IGNORED*: uint32 = (not 0'u32) -const VK_QUEUE_FAMILY_EXTERNAL*: uint32 = (not 1'u32) -template VK_QUEUE_FAMILY_EXTERNAL_KHR* = - VK_QUEUE_FAMILY_EXTERNAL -const VK_QUEUE_FAMILY_FOREIGN_EXT*: uint32 = (not 1'u32) -const VK_SUBPASS_EXTERNAL*: uint32 = (not 0'u32) -const VK_MAX_DEVICE_GROUP_SIZE*: uint32 = 32 -template VK_MAX_DEVICE_GROUP_SIZE_KHR* = - VK_MAX_DEVICE_GROUP_SIZE -const VK_MAX_DRIVER_NAME_SIZE*: uint32 = 256 -template VK_MAX_DRIVER_NAME_SIZE_KHR* = - VK_MAX_DRIVER_NAME_SIZE -const VK_MAX_DRIVER_INFO_SIZE*: uint32 = 256 -template VK_MAX_DRIVER_INFO_SIZE_KHR* = - VK_MAX_DRIVER_INFO_SIZE -const VK_SHADER_UNUSED_KHR*: uint32 = (not 0'u32) -template VK_SHADER_UNUSED_NV* = - VK_SHADER_UNUSED_KHR -const VK_MAX_GLOBAL_PRIORITY_SIZE_KHR*: uint32 = 16 -template VK_MAX_GLOBAL_PRIORITY_SIZE_EXT* = - VK_MAX_GLOBAL_PRIORITY_SIZE_KHR -const VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT*: uint32 = 32 +type VkAccelerationStructureMotionInstanceTypeNV* = cint const VK_IMAGE_LAYOUT_UNDEFINED*: VkImageLayout = VkImageLayout(0) VK_IMAGE_LAYOUT_GENERAL*: VkImageLayout = VkImageLayout(1) @@ -14897,7 +674,7 @@ const VK_PIPELINE_BIND_POINT_COMPUTE*: VkPipelineBindPoint = VkPipelineBindPoint(1) VK_PIPELINE_BIND_MAX_ENUM_POINT*: VkPipelineBindPoint = VkPipelineBindPoint(0x7FFFFFFF) const - VK_PIPELINE_CACHE_HEADER_VERSION_ONE*: VkPipelineCacheHeaderVersion = VkPipelineCacheHeaderVersion(1) + VK_PIPELINE_CACHE_HEADER_VER_ONE*: VkPipelineCacheHeaderVersion = VkPipelineCacheHeaderVersion(1) VK_PIPELINE_CACHE_HEADER_MAX_ENUM_VERSION*: VkPipelineCacheHeaderVersion = VkPipelineCacheHeaderVersion(0x7FFFFFFF) const VK_PRIMITIVE_TOPOLOGY_POINT_LIST*: VkPrimitiveTopology = VkPrimitiveTopology(0) @@ -15389,6 +1166,16 @@ const VK_BUFFER_USAGE_INDEX_BUFFER_BIT*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(64) VK_BUFFER_USAGE_VERTEX_BUFFER_BIT*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(128) VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(256) +const + VK_BUFFER_USAGE_2_TRANSFER_SRC_BIT_KHR*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(1) + VK_BUFFER_USAGE_2_TRANSFER_DST_BIT_KHR*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(2) + VK_BUFFER_USAGE_2_UNIFORM_TEXEL_BUFFER_BIT_KHR*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(4) + VK_BUFFER_USAGE_2_STORAGE_TEXEL_BUFFER_BIT_KHR*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(8) + VK_BUFFER_USAGE_2_UNIFORM_BUFFER_BIT_KHR*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(16) + VK_BUFFER_USAGE_2_STORAGE_BUFFER_BIT_KHR*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(32) + VK_BUFFER_USAGE_2_INDEX_BUFFER_BIT_KHR*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(64) + VK_BUFFER_USAGE_2_VERTEX_BUFFER_BIT_KHR*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(128) + VK_BUFFER_USAGE_2_INDIRECT_BUFFER_BIT_KHR*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(256) const VK_BUFFER_CREATE_SPARSE_BINDING_BIT*: VkBufferCreateFlagBits = VkBufferCreateFlagBits(1) VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT*: VkBufferCreateFlagBits = VkBufferCreateFlagBits(2) @@ -15421,6 +1208,10 @@ const VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(1) VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(2) VK_PIPELINE_CREATE_DERIVATIVE_BIT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(4) +const + VK_PIPELINE_CREATE_2_DISABLE_OPTIMIZATION_BIT_KHR*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(1) + VK_PIPELINE_CREATE_2_ALLOW_DERIVATIVES_BIT_KHR*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(2) + VK_PIPELINE_CREATE_2_DERIVATIVE_BIT_KHR*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(4) const VK_COLOR_COMPONENT_R_BIT*: VkColorComponentFlagBits = VkColorComponentFlagBits(1) VK_COLOR_COMPONENT_G_BIT*: VkColorComponentFlagBits = VkColorComponentFlagBits(2) @@ -15946,25 +1737,6 @@ const VK_MEMORY_OVERALLOCATION_BEHAVIOR_ALLOWED_AMD*: VkMemoryOverallocationBehaviorAMD = VkMemoryOverallocationBehaviorAMD(1) VK_MEMORY_OVERALLOCATION_BEHAVIOR_DISALLOWED_AMD*: VkMemoryOverallocationBehaviorAMD = VkMemoryOverallocationBehaviorAMD(2) VK_MEMORY_OVERALLOCATION_BEHAVIOR_MAX_ENUM_AMD*: VkMemoryOverallocationBehaviorAMD = VkMemoryOverallocationBehaviorAMD(0x7FFFFFFF) -const - VK_SCOPE_DEVICE_NV*: VkScopeNV = VkScopeNV(1) - VK_SCOPE_WORKGROUP_NV*: VkScopeNV = VkScopeNV(2) - VK_SCOPE_SUBGROUP_NV*: VkScopeNV = VkScopeNV(3) - VK_SCOPE_QUEUE_FAMILY_NV*: VkScopeNV = VkScopeNV(5) - VK_SCOPE_MAX_ENUM_NV*: VkScopeNV = VkScopeNV(0x7FFFFFFF) -const - VK_COMPONENT_TYPE_FLOAT16_NV*: VkComponentTypeNV = VkComponentTypeNV(0) - VK_COMPONENT_TYPE_FLOAT32_NV*: VkComponentTypeNV = VkComponentTypeNV(1) - VK_COMPONENT_TYPE_FLOAT64_NV*: VkComponentTypeNV = VkComponentTypeNV(2) - VK_COMPONENT_TYPE_SINT8_NV*: VkComponentTypeNV = VkComponentTypeNV(3) - VK_COMPONENT_TYPE_SINT16_NV*: VkComponentTypeNV = VkComponentTypeNV(4) - VK_COMPONENT_TYPE_SINT32_NV*: VkComponentTypeNV = VkComponentTypeNV(5) - VK_COMPONENT_TYPE_SINT64_NV*: VkComponentTypeNV = VkComponentTypeNV(6) - VK_COMPONENT_TYPE_UINT8_NV*: VkComponentTypeNV = VkComponentTypeNV(7) - VK_COMPONENT_TYPE_UINT16_NV*: VkComponentTypeNV = VkComponentTypeNV(8) - VK_COMPONENT_TYPE_UINT32_NV*: VkComponentTypeNV = VkComponentTypeNV(9) - VK_COMPONENT_TYPE_UINT64_NV*: VkComponentTypeNV = VkComponentTypeNV(10) - VK_COMPONENT_TYPE_MAX_ENUM_NV*: VkComponentTypeNV = VkComponentTypeNV(0x7FFFFFFF) const VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV*: VkDeviceDiagnosticsConfigFlagBitsNV = VkDeviceDiagnosticsConfigFlagBitsNV(1) VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV*: VkDeviceDiagnosticsConfigFlagBitsNV = VkDeviceDiagnosticsConfigFlagBitsNV(2) @@ -16267,43 +2039,49 @@ const const VK_VIDEO_ENCODE_FEEDBACK_BITSTREAM_BUFFER_OFFSET_BIT_KHR*: VkVideoEncodeFeedbackFlagBitsKHR = VkVideoEncodeFeedbackFlagBitsKHR(1) VK_VIDEO_ENCODE_FEEDBACK_BITSTREAM_BYTES_WRITTEN_BIT_KHR*: VkVideoEncodeFeedbackFlagBitsKHR = VkVideoEncodeFeedbackFlagBitsKHR(2) + VK_VIDEO_ENCODE_FEEDBACK_BITSTREAM_HAS_OVERRIDES_BIT_KHR*: VkVideoEncodeFeedbackFlagBitsKHR = VkVideoEncodeFeedbackFlagBitsKHR(4) const VK_VIDEO_ENCODE_RATE_CONTROL_MODE_DEFAULT_KHR*: VkVideoEncodeRateControlModeFlagBitsKHR = VkVideoEncodeRateControlModeFlagBitsKHR(0) VK_VIDEO_ENCODE_RATE_CONTROL_MODE_DISABLED_BIT_KHR*: VkVideoEncodeRateControlModeFlagBitsKHR = VkVideoEncodeRateControlModeFlagBitsKHR(1) VK_VIDEO_ENCODE_RATE_CONTROL_MODE_CBR_BIT_KHR*: VkVideoEncodeRateControlModeFlagBitsKHR = VkVideoEncodeRateControlModeFlagBitsKHR(2) VK_VIDEO_ENCODE_RATE_CONTROL_MODE_VBR_BIT_KHR*: VkVideoEncodeRateControlModeFlagBitsKHR = VkVideoEncodeRateControlModeFlagBitsKHR(4) const - VK_VIDEO_ENCODE_H264_CAPABILITY_DIRECT_8X8_INFERENCE_ENABLED_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(1) - VK_VIDEO_ENCODE_H264_CAPABILITY_DIRECT_8X8_INFERENCE_DISABLED_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(2) - VK_VIDEO_ENCODE_H264_CAPABILITY_SEPARATE_COLOUR_PLANE_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(4) - VK_VIDEO_ENCODE_H264_CAPABILITY_QPPRIME_Y_ZERO_TRANSFORM_BYPASS_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(8) - VK_VIDEO_ENCODE_H264_CAPABILITY_SCALING_LISTS_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(16) - VK_VIDEO_ENCODE_H264_CAPABILITY_HRD_COMPLIANCE_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(32) - VK_VIDEO_ENCODE_H264_CAPABILITY_CHROMA_QP_OFFSET_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(64) - VK_VIDEO_ENCODE_H264_CAPABILITY_SECOND_CHROMA_QP_OFFSET_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(128) - VK_VIDEO_ENCODE_H264_CAPABILITY_PIC_INIT_QP_MINUS26_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(256) - VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_PRED_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(512) - VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_BIPRED_EXPLICIT_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(1024) - VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_BIPRED_IMPLICIT_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(2048) - VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_PRED_NO_TABLE_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(4096) - VK_VIDEO_ENCODE_H264_CAPABILITY_TRANSFORM_8X8_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(8192) - VK_VIDEO_ENCODE_H264_CAPABILITY_CABAC_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(16384) - VK_VIDEO_ENCODE_H264_CAPABILITY_CAVLC_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(32768) - VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_DISABLED_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(65536) - VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_ENABLED_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(131072) - VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_PARTIAL_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(262144) - VK_VIDEO_ENCODE_H264_CAPABILITY_DISABLE_DIRECT_SPATIAL_MV_PRED_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(524288) - VK_VIDEO_ENCODE_H264_CAPABILITY_MULTIPLE_SLICE_PER_FRAME_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(1048576) - VK_VIDEO_ENCODE_H264_CAPABILITY_SLICE_MB_COUNT_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(2097152) - VK_VIDEO_ENCODE_H264_CAPABILITY_ROW_UNALIGNED_SLICE_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(4194304) - VK_VIDEO_ENCODE_H264_CAPABILITY_DIFFERENT_SLICE_TYPE_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(8388608) - VK_VIDEO_ENCODE_H264_CAPABILITY_B_FRAME_IN_L1_LIST_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(16777216) - VK_VIDEO_ENCODE_H264_CAPABILITY_DIFFERENT_REFERENCE_FINAL_LISTS_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(33554432) + VK_VIDEO_ENCODE_H264_CAPABILITY_HRD_COMPLIANCE_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(1) + VK_VIDEO_ENCODE_H264_CAPABILITY_PREDICTION_WEIGHT_TABLE_GENERATED_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(2) + VK_VIDEO_ENCODE_H264_CAPABILITY_ROW_UNALIGNED_SLICE_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(4) + VK_VIDEO_ENCODE_H264_CAPABILITY_DIFFERENT_SLICE_TYPE_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(8) + VK_VIDEO_ENCODE_H264_CAPABILITY_B_FRAME_IN_L0_LIST_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(16) + VK_VIDEO_ENCODE_H264_CAPABILITY_B_FRAME_IN_L1_LIST_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(32) + VK_VIDEO_ENCODE_H264_CAPABILITY_PER_PICTURE_TYPE_MIN_MAX_QP_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(64) + VK_VIDEO_ENCODE_H264_CAPABILITY_PER_SLICE_CONSTANT_QP_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(128) + VK_VIDEO_ENCODE_H264_CAPABILITY_GENERATE_PREFIX_NALU_BIT_EXT*: VkVideoEncodeH264CapabilityFlagBitsEXT = VkVideoEncodeH264CapabilityFlagBitsEXT(256) +const + VK_VIDEO_ENCODE_H264_STD_SEPARATE_COLOR_PLANE_FLAG_SET_BIT_EXT*: VkVideoEncodeH264StdFlagBitsEXT = VkVideoEncodeH264StdFlagBitsEXT(1) + VK_VIDEO_ENCODE_H264_STD_QPPRIME_Y_ZERO_TRANSFORM_BYPASS_FLAG_SET_BIT_EXT*: VkVideoEncodeH264StdFlagBitsEXT = VkVideoEncodeH264StdFlagBitsEXT(2) + VK_VIDEO_ENCODE_H264_STD_SCALING_MATRIX_PRESENT_FLAG_SET_BIT_EXT*: VkVideoEncodeH264StdFlagBitsEXT = VkVideoEncodeH264StdFlagBitsEXT(4) + VK_VIDEO_ENCODE_H264_STD_CHROMA_QP_INDEX_OFFSET_BIT_EXT*: VkVideoEncodeH264StdFlagBitsEXT = VkVideoEncodeH264StdFlagBitsEXT(8) + VK_VIDEO_ENCODE_H264_STD_SECOND_CHROMA_QP_INDEX_OFFSET_BIT_EXT*: VkVideoEncodeH264StdFlagBitsEXT = VkVideoEncodeH264StdFlagBitsEXT(16) + VK_VIDEO_ENCODE_H264_STD_PIC_INIT_QP_MINUS26_BIT_EXT*: VkVideoEncodeH264StdFlagBitsEXT = VkVideoEncodeH264StdFlagBitsEXT(32) + VK_VIDEO_ENCODE_H264_STD_WEIGHTED_PRED_FLAG_SET_BIT_EXT*: VkVideoEncodeH264StdFlagBitsEXT = VkVideoEncodeH264StdFlagBitsEXT(64) + VK_VIDEO_ENCODE_H264_STD_WEIGHTED_BIPRED_IDC_EXPLICIT_BIT_EXT*: VkVideoEncodeH264StdFlagBitsEXT = VkVideoEncodeH264StdFlagBitsEXT(128) + VK_VIDEO_ENCODE_H264_STD_WEIGHTED_BIPRED_IDC_IMPLICIT_BIT_EXT*: VkVideoEncodeH264StdFlagBitsEXT = VkVideoEncodeH264StdFlagBitsEXT(256) + VK_VIDEO_ENCODE_H264_STD_TRANSFORM_8X8_MODE_FLAG_SET_BIT_EXT*: VkVideoEncodeH264StdFlagBitsEXT = VkVideoEncodeH264StdFlagBitsEXT(512) + VK_VIDEO_ENCODE_H264_STD_DIRECT_SPATIAL_MV_PRED_FLAG_UNSET_BIT_EXT*: VkVideoEncodeH264StdFlagBitsEXT = VkVideoEncodeH264StdFlagBitsEXT(1024) + VK_VIDEO_ENCODE_H264_STD_ENTROPY_CODING_MODE_FLAG_UNSET_BIT_EXT*: VkVideoEncodeH264StdFlagBitsEXT = VkVideoEncodeH264StdFlagBitsEXT(2048) + VK_VIDEO_ENCODE_H264_STD_ENTROPY_CODING_MODE_FLAG_SET_BIT_EXT*: VkVideoEncodeH264StdFlagBitsEXT = VkVideoEncodeH264StdFlagBitsEXT(4096) + VK_VIDEO_ENCODE_H264_STD_DIRECT_8X8_INFERENCE_FLAG_UNSET_BIT_EXT*: VkVideoEncodeH264StdFlagBitsEXT = VkVideoEncodeH264StdFlagBitsEXT(8192) + VK_VIDEO_ENCODE_H264_STD_CONSTRAINED_INTRA_PRED_FLAG_SET_BIT_EXT*: VkVideoEncodeH264StdFlagBitsEXT = VkVideoEncodeH264StdFlagBitsEXT(16384) + VK_VIDEO_ENCODE_H264_STD_DEBLOCKING_FILTER_DISABLED_BIT_EXT*: VkVideoEncodeH264StdFlagBitsEXT = VkVideoEncodeH264StdFlagBitsEXT(32768) + VK_VIDEO_ENCODE_H264_STD_DEBLOCKING_FILTER_ENABLED_BIT_EXT*: VkVideoEncodeH264StdFlagBitsEXT = VkVideoEncodeH264StdFlagBitsEXT(65536) + VK_VIDEO_ENCODE_H264_STD_DEBLOCKING_FILTER_PARTIAL_BIT_EXT*: VkVideoEncodeH264StdFlagBitsEXT = VkVideoEncodeH264StdFlagBitsEXT(131072) +const + VK_VIDEO_ENCODE_H264_RATE_CONTROL_ATTEMPT_HRD_COMPLIANCE_BIT_EXT*: VkVideoEncodeH264RateControlFlagBitsEXT = VkVideoEncodeH264RateControlFlagBitsEXT(1) + VK_VIDEO_ENCODE_H264_RATE_CONTROL_REGULAR_GOP_BIT_EXT*: VkVideoEncodeH264RateControlFlagBitsEXT = VkVideoEncodeH264RateControlFlagBitsEXT(2) + VK_VIDEO_ENCODE_H264_RATE_CONTROL_REFERENCE_PATTERN_FLAT_BIT_EXT*: VkVideoEncodeH264RateControlFlagBitsEXT = VkVideoEncodeH264RateControlFlagBitsEXT(4) + VK_VIDEO_ENCODE_H264_RATE_CONTROL_REFERENCE_PATTERN_DYADIC_BIT_EXT*: VkVideoEncodeH264RateControlFlagBitsEXT = VkVideoEncodeH264RateControlFlagBitsEXT(8) + VK_VIDEO_ENCODE_H264_RATE_CONTROL_TEMPORAL_LAYER_PATTERN_DYADIC_BIT_EXT*: VkVideoEncodeH264RateControlFlagBitsEXT = VkVideoEncodeH264RateControlFlagBitsEXT(16) const - VK_VIDEO_ENCODE_H264_RATE_CONTROL_STRUCTURE_UNKNOWN_EXT*: VkVideoEncodeH264RateControlStructureEXT = VkVideoEncodeH264RateControlStructureEXT(0) - VK_VIDEO_ENCODE_H264_RATE_CONTROL_STRUCTURE_FLAT_EXT*: VkVideoEncodeH264RateControlStructureEXT = VkVideoEncodeH264RateControlStructureEXT(1) - VK_VIDEO_ENCODE_H264_RATE_CONTROL_STRUCTURE_DYADIC_EXT*: VkVideoEncodeH264RateControlStructureEXT = VkVideoEncodeH264RateControlStructureEXT(2) - VK_VIDEO_ENCODE_H264_RATE_CONTROL_STRUCTURE_MAX_ENUM_EXT*: VkVideoEncodeH264RateControlStructureEXT = VkVideoEncodeH264RateControlStructureEXT(0x7FFFFFFF) + VK_HOST_IMAGE_COPY_MEMCPY_EXT*: VkHostImageCopyFlagBitsEXT = VkHostImageCopyFlagBitsEXT(1) const VK_IMAGE_CONSTRAINTS_INFO_CPU_READ_RARELY_FUCHSIA*: VkImageConstraintsInfoFlagBitsFUCHSIA = VkImageConstraintsInfoFlagBitsFUCHSIA(1) VK_IMAGE_CONSTRAINTS_INFO_CPU_READ_OFTEN_FUCHSIA*: VkImageConstraintsInfoFlagBitsFUCHSIA = VkImageConstraintsInfoFlagBitsFUCHSIA(2) @@ -16343,38 +2121,42 @@ const VK_RENDERING_SUSPENDING_BIT*: VkRenderingFlagBits = VkRenderingFlagBits(2) VK_RENDERING_RESUMING_BIT*: VkRenderingFlagBits = VkRenderingFlagBits(4) const - VK_VIDEO_ENCODE_H265_CAPABILITY_SEPARATE_COLOUR_PLANE_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(1) - VK_VIDEO_ENCODE_H265_CAPABILITY_SCALING_LISTS_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(2) - VK_VIDEO_ENCODE_H265_CAPABILITY_SAMPLE_ADAPTIVE_OFFSET_ENABLED_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(4) - VK_VIDEO_ENCODE_H265_CAPABILITY_PCM_ENABLE_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(8) - VK_VIDEO_ENCODE_H265_CAPABILITY_SPS_TEMPORAL_MVP_ENABLED_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(16) - VK_VIDEO_ENCODE_H265_CAPABILITY_HRD_COMPLIANCE_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(32) - VK_VIDEO_ENCODE_H265_CAPABILITY_INIT_QP_MINUS26_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(64) - VK_VIDEO_ENCODE_H265_CAPABILITY_LOG2_PARALLEL_MERGE_LEVEL_MINUS2_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(128) - VK_VIDEO_ENCODE_H265_CAPABILITY_SIGN_DATA_HIDING_ENABLED_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(256) - VK_VIDEO_ENCODE_H265_CAPABILITY_TRANSFORM_SKIP_ENABLED_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(512) - VK_VIDEO_ENCODE_H265_CAPABILITY_TRANSFORM_SKIP_DISABLED_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(1024) - VK_VIDEO_ENCODE_H265_CAPABILITY_PPS_SLICE_CHROMA_QP_OFFSETS_PRESENT_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(2048) - VK_VIDEO_ENCODE_H265_CAPABILITY_WEIGHTED_PRED_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(4096) - VK_VIDEO_ENCODE_H265_CAPABILITY_WEIGHTED_BIPRED_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(8192) - VK_VIDEO_ENCODE_H265_CAPABILITY_WEIGHTED_PRED_NO_TABLE_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(16384) - VK_VIDEO_ENCODE_H265_CAPABILITY_TRANSQUANT_BYPASS_ENABLED_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(32768) - VK_VIDEO_ENCODE_H265_CAPABILITY_ENTROPY_CODING_SYNC_ENABLED_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(65536) - VK_VIDEO_ENCODE_H265_CAPABILITY_DEBLOCKING_FILTER_OVERRIDE_ENABLED_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(131072) - VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_TILE_PER_FRAME_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(262144) - VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_SLICE_PER_TILE_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(524288) - VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_TILE_PER_SLICE_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(1048576) - VK_VIDEO_ENCODE_H265_CAPABILITY_SLICE_SEGMENT_CTB_COUNT_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(2097152) - VK_VIDEO_ENCODE_H265_CAPABILITY_ROW_UNALIGNED_SLICE_SEGMENT_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(4194304) - VK_VIDEO_ENCODE_H265_CAPABILITY_DEPENDENT_SLICE_SEGMENT_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(8388608) - VK_VIDEO_ENCODE_H265_CAPABILITY_DIFFERENT_SLICE_TYPE_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(16777216) - VK_VIDEO_ENCODE_H265_CAPABILITY_B_FRAME_IN_L1_LIST_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(33554432) - VK_VIDEO_ENCODE_H265_CAPABILITY_DIFFERENT_REFERENCE_FINAL_LISTS_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(67108864) + VK_VIDEO_ENCODE_H265_CAPABILITY_HRD_COMPLIANCE_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(1) + VK_VIDEO_ENCODE_H265_CAPABILITY_PREDICTION_WEIGHT_TABLE_GENERATED_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(2) + VK_VIDEO_ENCODE_H265_CAPABILITY_ROW_UNALIGNED_SLICE_SEGMENT_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(4) + VK_VIDEO_ENCODE_H265_CAPABILITY_DIFFERENT_SLICE_SEGMENT_TYPE_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(8) + VK_VIDEO_ENCODE_H265_CAPABILITY_B_FRAME_IN_L0_LIST_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(16) + VK_VIDEO_ENCODE_H265_CAPABILITY_B_FRAME_IN_L1_LIST_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(32) + VK_VIDEO_ENCODE_H265_CAPABILITY_PER_PICTURE_TYPE_MIN_MAX_QP_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(64) + VK_VIDEO_ENCODE_H265_CAPABILITY_PER_SLICE_SEGMENT_CONSTANT_QP_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(128) + VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_TILES_PER_SLICE_SEGMENT_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(256) + VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_SLICE_SEGMENTS_PER_TILE_BIT_EXT*: VkVideoEncodeH265CapabilityFlagBitsEXT = VkVideoEncodeH265CapabilityFlagBitsEXT(512) const - VK_VIDEO_ENCODE_H265_RATE_CONTROL_STRUCTURE_UNKNOWN_EXT*: VkVideoEncodeH265RateControlStructureEXT = VkVideoEncodeH265RateControlStructureEXT(0) - VK_VIDEO_ENCODE_H265_RATE_CONTROL_STRUCTURE_FLAT_EXT*: VkVideoEncodeH265RateControlStructureEXT = VkVideoEncodeH265RateControlStructureEXT(1) - VK_VIDEO_ENCODE_H265_RATE_CONTROL_STRUCTURE_DYADIC_EXT*: VkVideoEncodeH265RateControlStructureEXT = VkVideoEncodeH265RateControlStructureEXT(2) - VK_VIDEO_ENCODE_H265_RATE_CONTROL_STRUCTURE_MAX_ENUM_EXT*: VkVideoEncodeH265RateControlStructureEXT = VkVideoEncodeH265RateControlStructureEXT(0x7FFFFFFF) + VK_VIDEO_ENCODE_H265_STD_SEPARATE_COLOR_PLANE_FLAG_SET_BIT_EXT*: VkVideoEncodeH265StdFlagBitsEXT = VkVideoEncodeH265StdFlagBitsEXT(1) + VK_VIDEO_ENCODE_H265_STD_SAMPLE_ADAPTIVE_OFFSET_ENABLED_FLAG_SET_BIT_EXT*: VkVideoEncodeH265StdFlagBitsEXT = VkVideoEncodeH265StdFlagBitsEXT(2) + VK_VIDEO_ENCODE_H265_STD_SCALING_LIST_DATA_PRESENT_FLAG_SET_BIT_EXT*: VkVideoEncodeH265StdFlagBitsEXT = VkVideoEncodeH265StdFlagBitsEXT(4) + VK_VIDEO_ENCODE_H265_STD_PCM_ENABLED_FLAG_SET_BIT_EXT*: VkVideoEncodeH265StdFlagBitsEXT = VkVideoEncodeH265StdFlagBitsEXT(8) + VK_VIDEO_ENCODE_H265_STD_SPS_TEMPORAL_MVP_ENABLED_FLAG_SET_BIT_EXT*: VkVideoEncodeH265StdFlagBitsEXT = VkVideoEncodeH265StdFlagBitsEXT(16) + VK_VIDEO_ENCODE_H265_STD_INIT_QP_MINUS26_BIT_EXT*: VkVideoEncodeH265StdFlagBitsEXT = VkVideoEncodeH265StdFlagBitsEXT(32) + VK_VIDEO_ENCODE_H265_STD_WEIGHTED_PRED_FLAG_SET_BIT_EXT*: VkVideoEncodeH265StdFlagBitsEXT = VkVideoEncodeH265StdFlagBitsEXT(64) + VK_VIDEO_ENCODE_H265_STD_WEIGHTED_BIPRED_FLAG_SET_BIT_EXT*: VkVideoEncodeH265StdFlagBitsEXT = VkVideoEncodeH265StdFlagBitsEXT(128) + VK_VIDEO_ENCODE_H265_STD_LOG2_PARALLEL_MERGE_LEVEL_MINUS2_BIT_EXT*: VkVideoEncodeH265StdFlagBitsEXT = VkVideoEncodeH265StdFlagBitsEXT(256) + VK_VIDEO_ENCODE_H265_STD_SIGN_DATA_HIDING_ENABLED_FLAG_SET_BIT_EXT*: VkVideoEncodeH265StdFlagBitsEXT = VkVideoEncodeH265StdFlagBitsEXT(512) + VK_VIDEO_ENCODE_H265_STD_TRANSFORM_SKIP_ENABLED_FLAG_SET_BIT_EXT*: VkVideoEncodeH265StdFlagBitsEXT = VkVideoEncodeH265StdFlagBitsEXT(1024) + VK_VIDEO_ENCODE_H265_STD_TRANSFORM_SKIP_ENABLED_FLAG_UNSET_BIT_EXT*: VkVideoEncodeH265StdFlagBitsEXT = VkVideoEncodeH265StdFlagBitsEXT(2048) + VK_VIDEO_ENCODE_H265_STD_PPS_SLICE_CHROMA_QP_OFFSETS_PRESENT_FLAG_SET_BIT_EXT*: VkVideoEncodeH265StdFlagBitsEXT = VkVideoEncodeH265StdFlagBitsEXT(4096) + VK_VIDEO_ENCODE_H265_STD_TRANSQUANT_BYPASS_ENABLED_FLAG_SET_BIT_EXT*: VkVideoEncodeH265StdFlagBitsEXT = VkVideoEncodeH265StdFlagBitsEXT(8192) + VK_VIDEO_ENCODE_H265_STD_CONSTRAINED_INTRA_PRED_FLAG_SET_BIT_EXT*: VkVideoEncodeH265StdFlagBitsEXT = VkVideoEncodeH265StdFlagBitsEXT(16384) + VK_VIDEO_ENCODE_H265_STD_ENTROPY_CODING_SYNC_ENABLED_FLAG_SET_BIT_EXT*: VkVideoEncodeH265StdFlagBitsEXT = VkVideoEncodeH265StdFlagBitsEXT(32768) + VK_VIDEO_ENCODE_H265_STD_DEBLOCKING_FILTER_OVERRIDE_ENABLED_FLAG_SET_BIT_EXT*: VkVideoEncodeH265StdFlagBitsEXT = VkVideoEncodeH265StdFlagBitsEXT(65536) + VK_VIDEO_ENCODE_H265_STD_DEPENDENT_SLICE_SEGMENTS_ENABLED_FLAG_SET_BIT_EXT*: VkVideoEncodeH265StdFlagBitsEXT = VkVideoEncodeH265StdFlagBitsEXT(131072) + VK_VIDEO_ENCODE_H265_STD_DEPENDENT_SLICE_SEGMENT_FLAG_SET_BIT_EXT*: VkVideoEncodeH265StdFlagBitsEXT = VkVideoEncodeH265StdFlagBitsEXT(262144) +const + VK_VIDEO_ENCODE_H265_RATE_CONTROL_ATTEMPT_HRD_COMPLIANCE_BIT_EXT*: VkVideoEncodeH265RateControlFlagBitsEXT = VkVideoEncodeH265RateControlFlagBitsEXT(1) + VK_VIDEO_ENCODE_H265_RATE_CONTROL_REGULAR_GOP_BIT_EXT*: VkVideoEncodeH265RateControlFlagBitsEXT = VkVideoEncodeH265RateControlFlagBitsEXT(2) + VK_VIDEO_ENCODE_H265_RATE_CONTROL_REFERENCE_PATTERN_FLAT_BIT_EXT*: VkVideoEncodeH265RateControlFlagBitsEXT = VkVideoEncodeH265RateControlFlagBitsEXT(4) + VK_VIDEO_ENCODE_H265_RATE_CONTROL_REFERENCE_PATTERN_DYADIC_BIT_EXT*: VkVideoEncodeH265RateControlFlagBitsEXT = VkVideoEncodeH265RateControlFlagBitsEXT(8) + VK_VIDEO_ENCODE_H265_RATE_CONTROL_TEMPORAL_SUB_LAYER_PATTERN_DYADIC_BIT_EXT*: VkVideoEncodeH265RateControlFlagBitsEXT = VkVideoEncodeH265RateControlFlagBitsEXT(16) const VK_VIDEO_ENCODE_H265_CTB_SIZE_16_BIT_EXT*: VkVideoEncodeH265CtbSizeFlagBitsEXT = VkVideoEncodeH265CtbSizeFlagBitsEXT(1) VK_VIDEO_ENCODE_H265_CTB_SIZE_32_BIT_EXT*: VkVideoEncodeH265CtbSizeFlagBitsEXT = VkVideoEncodeH265CtbSizeFlagBitsEXT(2) @@ -16500,6 +2282,11 @@ const VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_TRANSPARENT_EXT*: VkOpacityMicromapSpecialIndexEXT = VkOpacityMicromapSpecialIndexEXT(-3) VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_OPAQUE_EXT*: VkOpacityMicromapSpecialIndexEXT = VkOpacityMicromapSpecialIndexEXT(-4) VK_OPACITY_MICROMAP_SPECIAL_INDEX_MAX_ENUM_EXT*: VkOpacityMicromapSpecialIndexEXT = VkOpacityMicromapSpecialIndexEXT(0x7FFFFFFF) +const + VK_DEPTH_BIAS_REPRESENTATION_LEAST_REPRESENTABLE_VALUE_FORMAT_EXT*: VkDepthBiasRepresentationEXT = VkDepthBiasRepresentationEXT(0) + VK_DEPTH_BIAS_REPRESENTATION_LEAST_REPRESENTABLE_VALUE_FORCE_UNORM_EXT*: VkDepthBiasRepresentationEXT = VkDepthBiasRepresentationEXT(1) + VK_DEPTH_BIAS_REPRESENTATION_FLOAT_EXT*: VkDepthBiasRepresentationEXT = VkDepthBiasRepresentationEXT(2) + VK_DEPTH_BIAS_REPRESENTATION_MAX_ENUM_EXT*: VkDepthBiasRepresentationEXT = VkDepthBiasRepresentationEXT(0x7FFFFFFF) const VK_DEVICE_FAULT_ADDRESS_TYPE_NONE_EXT*: VkDeviceFaultAddressTypeEXT = VkDeviceFaultAddressTypeEXT(0) VK_DEVICE_FAULT_ADDRESS_TYPE_READ_INVALID_EXT*: VkDeviceFaultAddressTypeEXT = VkDeviceFaultAddressTypeEXT(1) @@ -16510,7 +2297,7 @@ const VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_FAULT_EXT*: VkDeviceFaultAddressTypeEXT = VkDeviceFaultAddressTypeEXT(6) VK_DEVICE_FAULT_ADDRESS_TYPE_MAX_ENUM_EXT*: VkDeviceFaultAddressTypeEXT = VkDeviceFaultAddressTypeEXT(0x7FFFFFFF) const - VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VERSION_ONE_EXT*: VkDeviceFaultVendorBinaryHeaderVersionEXT = VkDeviceFaultVendorBinaryHeaderVersionEXT(1) + VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VER_ONE_EXT*: VkDeviceFaultVendorBinaryHeaderVersionEXT = VkDeviceFaultVendorBinaryHeaderVersionEXT(1) VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VERSION_MAX_ENUM_EXT*: VkDeviceFaultVendorBinaryHeaderVersionEXT = VkDeviceFaultVendorBinaryHeaderVersionEXT(0x7FFFFFFF) const VK_DISPLACEMENT_MICROMAP_FORMAT_64_TRIANGLES_64_BYTES_NV*: VkDisplacementMicromapFormatNV = VkDisplacementMicromapFormatNV(1) @@ -16519,115 +2306,12480 @@ const VK_DISPLACEMENT_MICROMAP_FORMAT_MAX_ENUM_NV*: VkDisplacementMicromapFormatNV = VkDisplacementMicromapFormatNV(0x7FFFFFFF) const VK_SHADER_CREATE_LINK_STAGE_BIT_EXT*: VkShaderCreateFlagBitsEXT = VkShaderCreateFlagBitsEXT(1) - VK_SHADER_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT*: VkShaderCreateFlagBitsEXT = VkShaderCreateFlagBitsEXT(2) - VK_SHADER_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT*: VkShaderCreateFlagBitsEXT = VkShaderCreateFlagBitsEXT(4) - VK_SHADER_CREATE_NO_TASK_SHADER_BIT_EXT*: VkShaderCreateFlagBitsEXT = VkShaderCreateFlagBitsEXT(8) - VK_SHADER_CREATE_DISPATCH_BASE_BIT_EXT*: VkShaderCreateFlagBitsEXT = VkShaderCreateFlagBitsEXT(16) - VK_SHADER_CREATE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_EXT*: VkShaderCreateFlagBitsEXT = VkShaderCreateFlagBitsEXT(32) - VK_SHADER_CREATE_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT*: VkShaderCreateFlagBitsEXT = VkShaderCreateFlagBitsEXT(64) const VK_SHADER_CODE_TYPE_BINARY_EXT*: VkShaderCodeTypeEXT = VkShaderCodeTypeEXT(0) VK_SHADER_CODE_TYPE_SPIRV_EXT*: VkShaderCodeTypeEXT = VkShaderCodeTypeEXT(1) VK_SHADER_CODE_TYPE_MAX_ENUM_EXT*: VkShaderCodeTypeEXT = VkShaderCodeTypeEXT(0x7FFFFFFF) -proc vkCreateInstance*(pCreateInfo: ptr VkInstanceCreateInfo , pAllocator: ptr VkAllocationCallbacks , pInstance: ptr VkInstance ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyInstance*(instance: VkInstance, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkEnumeratePhysicalDevices*(instance: VkInstance, pPhysicalDeviceCount: ptr uint32 , pPhysicalDevices: ptr VkPhysicalDevice ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDeviceProcAddr*(device: VkDevice, pName: cstring ): PFN_vkVoidFunction {.cdecl, importc, dynlib: vkDLL.} -proc vkGetInstanceProcAddr*(instance: VkInstance, pName: cstring ): PFN_vkVoidFunction {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceProperties*(physicalDevice: VkPhysicalDevice, pProperties: ptr VkPhysicalDeviceProperties ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceQueueFamilyProperties*(physicalDevice: VkPhysicalDevice, pQueueFamilyPropertyCount: ptr uint32 , pQueueFamilyProperties: ptr VkQueueFamilyProperties ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceMemoryProperties*(physicalDevice: VkPhysicalDevice, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceFeatures*(physicalDevice: VkPhysicalDevice, pFeatures: ptr VkPhysicalDeviceFeatures ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceFormatProperties*(physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: ptr VkFormatProperties ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceImageFormatProperties*(physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, tiling: VkImageTiling, usage: VkImageUsageFlags, flags: VkImageCreateFlags, pImageFormatProperties: ptr VkImageFormatProperties ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateDevice*(physicalDevice: VkPhysicalDevice, pCreateInfo: ptr VkDeviceCreateInfo , pAllocator: ptr VkAllocationCallbacks , pDevice: ptr VkDevice ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyDevice*(device: VkDevice, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkEnumerateInstanceVersion*(pApiVersion: ptr uint32 ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkEnumerateInstanceLayerProperties*(pPropertyCount: ptr uint32 , pProperties: ptr VkLayerProperties ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkEnumerateInstanceExtensionProperties*(pLayerName: cstring , pPropertyCount: ptr uint32 , pProperties: ptr VkExtensionProperties ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkEnumerateDeviceLayerProperties*(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkLayerProperties ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkEnumerateDeviceExtensionProperties*(physicalDevice: VkPhysicalDevice, pLayerName: cstring , pPropertyCount: ptr uint32 , pProperties: ptr VkExtensionProperties ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDeviceQueue*(device: VkDevice, queueFamilyIndex: uint32, queueIndex: uint32, pQueue: ptr VkQueue ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkQueueSubmit*(queue: VkQueue, submitCount: uint32, pSubmits: ptr VkSubmitInfo , fence: VkFence): VkResult {.cdecl, importc, dynlib: vkDLL.} +const + VK_SCOPE_DEVICE_KHR*: VkScopeKHR = VkScopeKHR(1) + VK_SCOPE_WORKGROUP_KHR*: VkScopeKHR = VkScopeKHR(2) + VK_SCOPE_SUBGROUP_KHR*: VkScopeKHR = VkScopeKHR(3) + VK_SCOPE_QUEUE_FAMILY_KHR*: VkScopeKHR = VkScopeKHR(5) + VK_SCOPE_MAX_ENUM_KHR*: VkScopeKHR = VkScopeKHR(0x7FFFFFFF) +const + VK_COMPONENT_TYPE_FLOAT16_KHR*: VkComponentTypeKHR = VkComponentTypeKHR(0) + VK_COMPONENT_TYPE_FLOAT32_KHR*: VkComponentTypeKHR = VkComponentTypeKHR(1) + VK_COMPONENT_TYPE_FLOAT64_KHR*: VkComponentTypeKHR = VkComponentTypeKHR(2) + VK_COMPONENT_TYPE_SINT8_KHR*: VkComponentTypeKHR = VkComponentTypeKHR(3) + VK_COMPONENT_TYPE_SINT16_KHR*: VkComponentTypeKHR = VkComponentTypeKHR(4) + VK_COMPONENT_TYPE_SINT32_KHR*: VkComponentTypeKHR = VkComponentTypeKHR(5) + VK_COMPONENT_TYPE_SINT64_KHR*: VkComponentTypeKHR = VkComponentTypeKHR(6) + VK_COMPONENT_TYPE_UINT8_KHR*: VkComponentTypeKHR = VkComponentTypeKHR(7) + VK_COMPONENT_TYPE_UINT16_KHR*: VkComponentTypeKHR = VkComponentTypeKHR(8) + VK_COMPONENT_TYPE_UINT32_KHR*: VkComponentTypeKHR = VkComponentTypeKHR(9) + VK_COMPONENT_TYPE_UINT64_KHR*: VkComponentTypeKHR = VkComponentTypeKHR(10) + VK_COMPONENT_TYPE_MAX_ENUM_KHR*: VkComponentTypeKHR = VkComponentTypeKHR(0x7FFFFFFF) + +# Extension: VK_VERSION_1_0 + +# Extension: VK_VERSION_1_1 +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES*: VkStructureType = VkStructureType(1000094000) +const VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO*: VkStructureType = VkStructureType(1000157000) +const VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO*: VkStructureType = VkStructureType(1000157001) +const VK_IMAGE_CREATE_ALIAS_BIT*: VkImageCreateFlagBits = VkImageCreateFlagBits(1024) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES*: VkStructureType = VkStructureType(1000083000) +const VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS*: VkStructureType = VkStructureType(1000127000) +const VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO*: VkStructureType = VkStructureType(1000127001) +const VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO*: VkStructureType = VkStructureType(1000060000) +const VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO*: VkStructureType = VkStructureType(1000060003) +const VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO*: VkStructureType = VkStructureType(1000060004) +const VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO*: VkStructureType = VkStructureType(1000060005) +const VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO*: VkStructureType = VkStructureType(1000060006) +const VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(8) +const VK_PIPELINE_CREATE_DISPATCH_BASE_BIT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(16) +template VK_PIPELINE_CREATE_DISPATCH_BASE* = + VK_PIPELINE_CREATE_DISPATCH_BASE_BIT +const VK_DEPENDENCY_DEVICE_GROUP_BIT*: VkDependencyFlagBits = VkDependencyFlagBits(4) +const VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO*: VkStructureType = VkStructureType(1000060013) +const VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO*: VkStructureType = VkStructureType(1000060014) +const VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT*: VkImageCreateFlagBits = VkImageCreateFlagBits(64) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES*: VkStructureType = VkStructureType(1000070000) +const VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO*: VkStructureType = VkStructureType(1000070001) +const VK_MEMORY_HEAP_MULTI_INSTANCE_BIT*: VkMemoryHeapFlagBits = VkMemoryHeapFlagBits(2) +const VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2*: VkStructureType = VkStructureType(1000146000) +const VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2*: VkStructureType = VkStructureType(1000146001) +const VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2*: VkStructureType = VkStructureType(1000146002) +const VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2*: VkStructureType = VkStructureType(1000146003) +const VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2*: VkStructureType = VkStructureType(1000146004) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2*: VkStructureType = VkStructureType(1000059000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2*: VkStructureType = VkStructureType(1000059001) +const VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2*: VkStructureType = VkStructureType(1000059002) +const VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2*: VkStructureType = VkStructureType(1000059003) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2*: VkStructureType = VkStructureType(1000059004) +const VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2*: VkStructureType = VkStructureType(1000059005) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2*: VkStructureType = VkStructureType(1000059006) +const VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2*: VkStructureType = VkStructureType(1000059007) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2*: VkStructureType = VkStructureType(1000059008) +const VK_ERROR_OUT_OF_POOL_MEMORY*: VkResult = VkResult(-1000069000) +const VK_FORMAT_FEATURE_TRANSFER_SRC_BIT*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(16384) +const VK_FORMAT_FEATURE_TRANSFER_DST_BIT*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(32768) +const VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT*: VkImageCreateFlagBits = VkImageCreateFlagBits(32) +const VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT*: VkImageCreateFlagBits = VkImageCreateFlagBits(128) +const VK_IMAGE_CREATE_EXTENDED_USAGE_BIT*: VkImageCreateFlagBits = VkImageCreateFlagBits(256) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES*: VkStructureType = VkStructureType(1000117000) +const VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO*: VkStructureType = VkStructureType(1000117001) +const VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO*: VkStructureType = VkStructureType(1000117002) +const VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO*: VkStructureType = VkStructureType(1000117003) +const VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL*: VkImageLayout = VkImageLayout(1000117000) +const VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL*: VkImageLayout = VkImageLayout(1000117001) +const VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO*: VkStructureType = VkStructureType(1000053000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES*: VkStructureType = VkStructureType(1000053001) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES*: VkStructureType = VkStructureType(1000053002) +const VK_DEPENDENCY_VIEW_LOCAL_BIT*: VkDependencyFlagBits = VkDependencyFlagBits(2) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES*: VkStructureType = VkStructureType(1000120000) +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES +const VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO*: VkStructureType = VkStructureType(1000145000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES*: VkStructureType = VkStructureType(1000145001) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES*: VkStructureType = VkStructureType(1000145002) +const VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2*: VkStructureType = VkStructureType(1000145003) +const VK_QUEUE_PROTECTED_BIT*: VkQueueFlagBits = VkQueueFlagBits(16) +const VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT*: VkDeviceQueueCreateFlagBits = VkDeviceQueueCreateFlagBits(1) +const VK_MEMORY_PROPERTY_PROTECTED_BIT*: VkMemoryPropertyFlagBits = VkMemoryPropertyFlagBits(32) +const VK_BUFFER_CREATE_PROTECTED_BIT*: VkBufferCreateFlagBits = VkBufferCreateFlagBits(8) +const VK_IMAGE_CREATE_PROTECTED_BIT*: VkImageCreateFlagBits = VkImageCreateFlagBits(2048) +const VK_COMMAND_POOL_CREATE_PROTECTED_BIT*: VkCommandPoolCreateFlagBits = VkCommandPoolCreateFlagBits(4) +const VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO*: VkStructureType = VkStructureType(1000156000) +const VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO*: VkStructureType = VkStructureType(1000156001) +const VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO*: VkStructureType = VkStructureType(1000156002) +const VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO*: VkStructureType = VkStructureType(1000156003) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES*: VkStructureType = VkStructureType(1000156004) +const VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES*: VkStructureType = VkStructureType(1000156005) +const VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION*: VkObjectType = VkObjectType(1000156000) +const VK_FORMAT_G8B8G8R8_422_UNORM*: VkFormat = VkFormat(1000156000) +const VK_FORMAT_B8G8R8G8_422_UNORM*: VkFormat = VkFormat(1000156001) +const VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM*: VkFormat = VkFormat(1000156002) +const VK_FORMAT_G8_B8R8_2PLANE_420_UNORM*: VkFormat = VkFormat(1000156003) +const VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM*: VkFormat = VkFormat(1000156004) +const VK_FORMAT_G8_B8R8_2PLANE_422_UNORM*: VkFormat = VkFormat(1000156005) +const VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM*: VkFormat = VkFormat(1000156006) +const VK_FORMAT_R10X6_UNORM_PACK16*: VkFormat = VkFormat(1000156007) +const VK_FORMAT_R10X6G10X6_UNORM_2PACK16*: VkFormat = VkFormat(1000156008) +const VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16*: VkFormat = VkFormat(1000156009) +const VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16*: VkFormat = VkFormat(1000156010) +const VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16*: VkFormat = VkFormat(1000156011) +const VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16*: VkFormat = VkFormat(1000156012) +const VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16*: VkFormat = VkFormat(1000156013) +const VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16*: VkFormat = VkFormat(1000156014) +const VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16*: VkFormat = VkFormat(1000156015) +const VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16*: VkFormat = VkFormat(1000156016) +const VK_FORMAT_R12X4_UNORM_PACK16*: VkFormat = VkFormat(1000156017) +const VK_FORMAT_R12X4G12X4_UNORM_2PACK16*: VkFormat = VkFormat(1000156018) +const VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16*: VkFormat = VkFormat(1000156019) +const VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16*: VkFormat = VkFormat(1000156020) +const VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16*: VkFormat = VkFormat(1000156021) +const VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16*: VkFormat = VkFormat(1000156022) +const VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16*: VkFormat = VkFormat(1000156023) +const VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16*: VkFormat = VkFormat(1000156024) +const VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16*: VkFormat = VkFormat(1000156025) +const VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16*: VkFormat = VkFormat(1000156026) +const VK_FORMAT_G16B16G16R16_422_UNORM*: VkFormat = VkFormat(1000156027) +const VK_FORMAT_B16G16R16G16_422_UNORM*: VkFormat = VkFormat(1000156028) +const VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM*: VkFormat = VkFormat(1000156029) +const VK_FORMAT_G16_B16R16_2PLANE_420_UNORM*: VkFormat = VkFormat(1000156030) +const VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM*: VkFormat = VkFormat(1000156031) +const VK_FORMAT_G16_B16R16_2PLANE_422_UNORM*: VkFormat = VkFormat(1000156032) +const VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM*: VkFormat = VkFormat(1000156033) +const VK_IMAGE_ASPECT_PLANE_0_BIT*: VkImageAspectFlagBits = VkImageAspectFlagBits(16) +const VK_IMAGE_ASPECT_PLANE_1_BIT*: VkImageAspectFlagBits = VkImageAspectFlagBits(32) +const VK_IMAGE_ASPECT_PLANE_2_BIT*: VkImageAspectFlagBits = VkImageAspectFlagBits(64) +const VK_IMAGE_CREATE_DISJOINT_BIT*: VkImageCreateFlagBits = VkImageCreateFlagBits(512) +const VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(131072) +const VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(262144) +const VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(524288) +const VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(1048576) +const VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(2097152) +const VK_FORMAT_FEATURE_DISJOINT_BIT*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(4194304) +const VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(8388608) +const VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO*: VkStructureType = VkStructureType(1000085000) +const VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE*: VkObjectType = VkObjectType(1000085000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO*: VkStructureType = VkStructureType(1000071000) +const VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES*: VkStructureType = VkStructureType(1000071001) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO*: VkStructureType = VkStructureType(1000071002) +const VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES*: VkStructureType = VkStructureType(1000071003) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES*: VkStructureType = VkStructureType(1000071004) +const VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO*: VkStructureType = VkStructureType(1000072000) +const VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO*: VkStructureType = VkStructureType(1000072001) +const VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO*: VkStructureType = VkStructureType(1000072002) +const VK_ERROR_INVALID_EXTERNAL_HANDLE*: VkResult = VkResult(-1000072003) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO*: VkStructureType = VkStructureType(1000112000) +const VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES*: VkStructureType = VkStructureType(1000112001) +const VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO*: VkStructureType = VkStructureType(1000113000) +const VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO*: VkStructureType = VkStructureType(1000077000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO*: VkStructureType = VkStructureType(1000076000) +const VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES*: VkStructureType = VkStructureType(1000076001) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES*: VkStructureType = VkStructureType(1000168000) +const VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT*: VkStructureType = VkStructureType(1000168001) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES*: VkStructureType = VkStructureType(1000063000) +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES + +# Extension: VK_VERSION_1_2 +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES*: VkStructureType = VkStructureType(49) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES*: VkStructureType = VkStructureType(50) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES*: VkStructureType = VkStructureType(51) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES*: VkStructureType = VkStructureType(52) +const VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO*: VkStructureType = VkStructureType(1000147000) +const VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE*: VkSamplerAddressMode = VkSamplerAddressMode(4) +const VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2*: VkStructureType = VkStructureType(1000109000) +const VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2*: VkStructureType = VkStructureType(1000109001) +const VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2*: VkStructureType = VkStructureType(1000109002) +const VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2*: VkStructureType = VkStructureType(1000109003) +const VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2*: VkStructureType = VkStructureType(1000109004) +const VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO*: VkStructureType = VkStructureType(1000109005) +const VK_STRUCTURE_TYPE_SUBPASS_END_INFO*: VkStructureType = VkStructureType(1000109006) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES*: VkStructureType = VkStructureType(1000177000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES*: VkStructureType = VkStructureType(1000196000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES*: VkStructureType = VkStructureType(1000180000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES*: VkStructureType = VkStructureType(1000082000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES*: VkStructureType = VkStructureType(1000197000) +const VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO*: VkStructureType = VkStructureType(1000161000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES*: VkStructureType = VkStructureType(1000161001) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES*: VkStructureType = VkStructureType(1000161002) +const VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO*: VkStructureType = VkStructureType(1000161003) +const VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT*: VkStructureType = VkStructureType(1000161004) +const VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT*: VkDescriptorPoolCreateFlagBits = VkDescriptorPoolCreateFlagBits(2) +const VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT*: VkDescriptorSetLayoutCreateFlagBits = VkDescriptorSetLayoutCreateFlagBits(2) +const VK_ERROR_FRAGMENTATION*: VkResult = VkResult(-1000161000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES*: VkStructureType = VkStructureType(1000199000) +const VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE*: VkStructureType = VkStructureType(1000199001) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES*: VkStructureType = VkStructureType(1000221000) +const VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO*: VkStructureType = VkStructureType(1000246000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES*: VkStructureType = VkStructureType(1000130000) +const VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO*: VkStructureType = VkStructureType(1000130001) +const VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(65536) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES*: VkStructureType = VkStructureType(1000211000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES*: VkStructureType = VkStructureType(1000108000) +const VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO*: VkStructureType = VkStructureType(1000108001) +const VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO*: VkStructureType = VkStructureType(1000108002) +const VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO*: VkStructureType = VkStructureType(1000108003) +const VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT*: VkFramebufferCreateFlagBits = VkFramebufferCreateFlagBits(1) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES*: VkStructureType = VkStructureType(1000253000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES*: VkStructureType = VkStructureType(1000175000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES*: VkStructureType = VkStructureType(1000241000) +const VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT*: VkStructureType = VkStructureType(1000241001) +const VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT*: VkStructureType = VkStructureType(1000241002) +const VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL*: VkImageLayout = VkImageLayout(1000241000) +const VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL*: VkImageLayout = VkImageLayout(1000241001) +const VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL*: VkImageLayout = VkImageLayout(1000241002) +const VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL*: VkImageLayout = VkImageLayout(1000241003) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES*: VkStructureType = VkStructureType(1000261000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES*: VkStructureType = VkStructureType(1000207000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES*: VkStructureType = VkStructureType(1000207001) +const VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO*: VkStructureType = VkStructureType(1000207002) +const VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO*: VkStructureType = VkStructureType(1000207003) +const VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO*: VkStructureType = VkStructureType(1000207004) +const VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO*: VkStructureType = VkStructureType(1000207005) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES*: VkStructureType = VkStructureType(1000257000) +const VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO*: VkStructureType = VkStructureType(1000244001) +const VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO*: VkStructureType = VkStructureType(1000257002) +const VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO*: VkStructureType = VkStructureType(1000257003) +const VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO*: VkStructureType = VkStructureType(1000257004) +const VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(131072) +const VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT*: VkBufferCreateFlagBits = VkBufferCreateFlagBits(16) +const VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT*: VkMemoryAllocateFlagBits = VkMemoryAllocateFlagBits(2) +const VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT*: VkMemoryAllocateFlagBits = VkMemoryAllocateFlagBits(4) +const VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS*: VkResult = VkResult(-1000257000) + +# Extension: VK_VERSION_1_3 +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_FEATURES*: VkStructureType = VkStructureType(53) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_PROPERTIES*: VkStructureType = VkStructureType(54) +const VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO*: VkStructureType = VkStructureType(1000192000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES*: VkStructureType = VkStructureType(1000215000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES*: VkStructureType = VkStructureType(1000245000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES*: VkStructureType = VkStructureType(1000276000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES*: VkStructureType = VkStructureType(1000295000) +const VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO*: VkStructureType = VkStructureType(1000295001) +const VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO*: VkStructureType = VkStructureType(1000295002) +const VK_OBJECT_TYPE_PRIVATE_DATA_SLOT*: VkObjectType = VkObjectType(1000295000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES*: VkStructureType = VkStructureType(1000297000) +const VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(256) +const VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(512) +const VK_PIPELINE_COMPILE_REQUIRED*: VkResult = VkResult(1000297000) +const VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT*: VkPipelineCacheCreateFlagBits = VkPipelineCacheCreateFlagBits(1) +const VK_STRUCTURE_TYPE_MEMORY_BARRIER_2*: VkStructureType = VkStructureType(1000314000) +const VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2*: VkStructureType = VkStructureType(1000314001) +const VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2*: VkStructureType = VkStructureType(1000314002) +const VK_STRUCTURE_TYPE_DEPENDENCY_INFO*: VkStructureType = VkStructureType(1000314003) +const VK_STRUCTURE_TYPE_SUBMIT_INFO_2*: VkStructureType = VkStructureType(1000314004) +const VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO*: VkStructureType = VkStructureType(1000314005) +const VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO*: VkStructureType = VkStructureType(1000314006) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES*: VkStructureType = VkStructureType(1000314007) +const VK_EVENT_CREATE_DEVICE_ONLY_BIT*: VkEventCreateFlagBits = VkEventCreateFlagBits(1) +const VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL*: VkImageLayout = VkImageLayout(1000314000) +const VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL*: VkImageLayout = VkImageLayout(1000314001) +const VK_PIPELINE_STAGE_NONE*: VkPipelineStageFlagBits = VkPipelineStageFlagBits(0) +const VK_ACCESS_NONE*: VkAccessFlagBits = VkAccessFlagBits(0) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES*: VkStructureType = VkStructureType(1000325000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES*: VkStructureType = VkStructureType(1000335000) +const VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2*: VkStructureType = VkStructureType(1000337000) +const VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2*: VkStructureType = VkStructureType(1000337001) +const VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2*: VkStructureType = VkStructureType(1000337002) +const VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2*: VkStructureType = VkStructureType(1000337003) +const VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2*: VkStructureType = VkStructureType(1000337004) +const VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2*: VkStructureType = VkStructureType(1000337005) +const VK_STRUCTURE_TYPE_BUFFER_COPY_2*: VkStructureType = VkStructureType(1000337006) +const VK_STRUCTURE_TYPE_IMAGE_COPY_2*: VkStructureType = VkStructureType(1000337007) +const VK_STRUCTURE_TYPE_IMAGE_BLIT_2*: VkStructureType = VkStructureType(1000337008) +const VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2*: VkStructureType = VkStructureType(1000337009) +const VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2*: VkStructureType = VkStructureType(1000337010) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES*: VkStructureType = VkStructureType(1000225000) +const VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO*: VkStructureType = VkStructureType(1000225001) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES*: VkStructureType = VkStructureType(1000225002) +const VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT*: VkPipelineShaderStageCreateFlagBits = VkPipelineShaderStageCreateFlagBits(1) +const VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT*: VkPipelineShaderStageCreateFlagBits = VkPipelineShaderStageCreateFlagBits(2) +const VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK*: VkDescriptorType = VkDescriptorType(1000138000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES*: VkStructureType = VkStructureType(1000138000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES*: VkStructureType = VkStructureType(1000138001) +const VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK*: VkStructureType = VkStructureType(1000138002) +const VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO*: VkStructureType = VkStructureType(1000138003) +const VK_FORMAT_G8_B8R8_2PLANE_444_UNORM*: VkFormat = VkFormat(1000330000) +const VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16*: VkFormat = VkFormat(1000330001) +const VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16*: VkFormat = VkFormat(1000330002) +const VK_FORMAT_G16_B16R16_2PLANE_444_UNORM*: VkFormat = VkFormat(1000330003) +const VK_FORMAT_A4R4G4B4_UNORM_PACK16*: VkFormat = VkFormat(1000340000) +const VK_FORMAT_A4B4G4R4_UNORM_PACK16*: VkFormat = VkFormat(1000340001) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES*: VkStructureType = VkStructureType(1000066000) +const VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066000) +const VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066001) +const VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066002) +const VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066003) +const VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066004) +const VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066005) +const VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066006) +const VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066007) +const VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066008) +const VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066009) +const VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066010) +const VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066011) +const VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066012) +const VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066013) +const VK_STRUCTURE_TYPE_RENDERING_INFO*: VkStructureType = VkStructureType(1000044000) +const VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO*: VkStructureType = VkStructureType(1000044001) +const VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO*: VkStructureType = VkStructureType(1000044002) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES*: VkStructureType = VkStructureType(1000044003) +const VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO*: VkStructureType = VkStructureType(1000044004) +const VK_ATTACHMENT_STORE_OP_NONE*: VkAttachmentStoreOp = VkAttachmentStoreOp(1000301000) +const VK_DYNAMIC_STATE_CULL_MODE*: VkDynamicState = VkDynamicState(1000267000) +const VK_DYNAMIC_STATE_FRONT_FACE*: VkDynamicState = VkDynamicState(1000267001) +const VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY*: VkDynamicState = VkDynamicState(1000267002) +const VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT*: VkDynamicState = VkDynamicState(1000267003) +const VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT*: VkDynamicState = VkDynamicState(1000267004) +const VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE*: VkDynamicState = VkDynamicState(1000267005) +const VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE*: VkDynamicState = VkDynamicState(1000267006) +const VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE*: VkDynamicState = VkDynamicState(1000267007) +const VK_DYNAMIC_STATE_DEPTH_COMPARE_OP*: VkDynamicState = VkDynamicState(1000267008) +const VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE*: VkDynamicState = VkDynamicState(1000267009) +const VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE*: VkDynamicState = VkDynamicState(1000267010) +const VK_DYNAMIC_STATE_STENCIL_OP*: VkDynamicState = VkDynamicState(1000267011) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES*: VkStructureType = VkStructureType(1000280000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES*: VkStructureType = VkStructureType(1000280001) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES*: VkStructureType = VkStructureType(1000281001) +const VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3*: VkStructureType = VkStructureType(1000360000) +const VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE*: VkDynamicState = VkDynamicState(1000377001) +const VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE*: VkDynamicState = VkDynamicState(1000377002) +const VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE*: VkDynamicState = VkDynamicState(1000377004) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES*: VkStructureType = VkStructureType(1000413000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES*: VkStructureType = VkStructureType(1000413001) +const VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS*: VkStructureType = VkStructureType(1000413002) +const VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS*: VkStructureType = VkStructureType(1000413003) +const VK_IMAGE_ASPECT_NONE*: VkImageAspectFlagBits = VkImageAspectFlagBits(0) + +# Extension: VKSC_VERSION_1_0 +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_SC_1_0_FEATURES*: VkStructureType = VkStructureType(1000298000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_SC_1_0_PROPERTIES*: VkStructureType = VkStructureType(1000298001) +const VK_ERROR_VALIDATION_FAILED*: VkResult = VkResult(-1000011001) +const VK_STRUCTURE_TYPE_DEVICE_OBJECT_RESERVATION_CREATE_INFO*: VkStructureType = VkStructureType(1000298002) +const VK_STRUCTURE_TYPE_COMMAND_POOL_MEMORY_RESERVATION_CREATE_INFO*: VkStructureType = VkStructureType(1000298003) +const VK_STRUCTURE_TYPE_COMMAND_POOL_MEMORY_CONSUMPTION*: VkStructureType = VkStructureType(1000298004) +const VK_STRUCTURE_TYPE_PIPELINE_POOL_SIZE*: VkStructureType = VkStructureType(1000298005) +const VK_STRUCTURE_TYPE_FAULT_DATA*: VkStructureType = VkStructureType(1000298007) +const VK_STRUCTURE_TYPE_FAULT_CALLBACK_INFO*: VkStructureType = VkStructureType(1000298008) +const VK_STRUCTURE_TYPE_PIPELINE_OFFLINE_CREATE_INFO*: VkStructureType = VkStructureType(1000298010) +const VK_ERROR_INVALID_PIPELINE_CACHE_DATA*: VkResult = VkResult(-1000298000) +const VK_ERROR_NO_PIPELINE_MATCH*: VkResult = VkResult(-1000298001) +const VK_PIPELINE_CACHE_CREATE_READ_ONLY_BIT*: VkPipelineCacheCreateFlagBits = VkPipelineCacheCreateFlagBits(2) +const VK_PIPELINE_CACHE_CREATE_USE_APPLICATION_STORAGE_BIT*: VkPipelineCacheCreateFlagBits = VkPipelineCacheCreateFlagBits(4) +const VK_MEMORY_HEAP_SEU_SAFE_BIT*: VkMemoryHeapFlagBits = VkMemoryHeapFlagBits(4) +const VK_PIPELINE_CACHE_HEADER_VER_SAFETY_CRITICAL_ONE*: VkPipelineCacheHeaderVersion = VkPipelineCacheHeaderVersion(1000298001) + +# Extension: VK_KHR_surface +const VK_KHR_SURFACE_SPEC_VERSION* = 25 +const VK_KHR_SURFACE_EXTENSION_NAME* = "VK_KHR_surface" +const VK_ERROR_SURFACE_LOST_KHR*: VkResult = VkResult(-1000000000) +const VK_ERROR_NATIVE_WINDOW_IN_USE_KHR*: VkResult = VkResult(-1000000001) +const VK_OBJECT_TYPE_SURFACE_KHR*: VkObjectType = VkObjectType(1000000000) + +# Extension: VK_KHR_swapchain +const VK_KHR_SWAPCHAIN_SPEC_VERSION* = 70 +const VK_KHR_SWAPCHAIN_EXTENSION_NAME* = "VK_KHR_swapchain" +const VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000001000) +const VK_STRUCTURE_TYPE_PRESENT_INFO_KHR*: VkStructureType = VkStructureType(1000001001) +const VK_IMAGE_LAYOUT_PRESENT_SRC_KHR*: VkImageLayout = VkImageLayout(1000001002) +const VK_SUBOPTIMAL_KHR*: VkResult = VkResult(1000001003) +const VK_ERROR_OUT_OF_DATE_KHR*: VkResult = VkResult(-1000001004) +const VK_OBJECT_TYPE_SWAPCHAIN_KHR*: VkObjectType = VkObjectType(1000001000) +const VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR*: VkStructureType = VkStructureType(1000060007) +const VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000060008) +const VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR*: VkStructureType = VkStructureType(1000060009) +const VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR*: VkStructureType = VkStructureType(1000060010) +const VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR*: VkStructureType = VkStructureType(1000060011) +const VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000060012) +const VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR*: VkSwapchainCreateFlagBitsKHR = VkSwapchainCreateFlagBitsKHR(1) +const VK_SWAPCHAIN_CREATE_PROTECTED_BIT_KHR*: VkSwapchainCreateFlagBitsKHR = VkSwapchainCreateFlagBitsKHR(2) + +# Extension: VK_KHR_display +const VK_KHR_DISPLAY_SPEC_VERSION* = 23 +const VK_KHR_DISPLAY_EXTENSION_NAME* = "VK_KHR_display" +const VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000002000) +const VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000002001) +const VK_OBJECT_TYPE_DISPLAY_KHR*: VkObjectType = VkObjectType(1000002000) +const VK_OBJECT_TYPE_DISPLAY_MODE_KHR*: VkObjectType = VkObjectType(1000002001) + +# Extension: VK_KHR_display_swapchain +const VK_KHR_DISPLAY_SWAPCHAIN_SPEC_VERSION* = 10 +const VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME* = "VK_KHR_display_swapchain" +const VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR*: VkStructureType = VkStructureType(1000003000) +const VK_ERROR_INCOMPATIBLE_DISPLAY_KHR*: VkResult = VkResult(-1000003001) + +# Extension: VK_KHR_xlib_surface +const VK_KHR_XLIB_SURFACE_SPEC_VERSION* = 6 +const VK_KHR_XLIB_SURFACE_EXTENSION_NAME* = "VK_KHR_xlib_surface" +const VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000004000) + +# Extension: VK_KHR_xcb_surface +const VK_KHR_XCB_SURFACE_SPEC_VERSION* = 6 +const VK_KHR_XCB_SURFACE_EXTENSION_NAME* = "VK_KHR_xcb_surface" +const VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000005000) + +# Extension: VK_KHR_wayland_surface +const VK_KHR_WAYLAND_SURFACE_SPEC_VERSION* = 6 +const VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME* = "VK_KHR_wayland_surface" +const VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000006000) + +# Extension: VK_KHR_mir_surface +const VK_KHR_MIR_SURFACE_SPEC_VERSION* = 4 +const VK_KHR_MIR_SURFACE_EXTENSION_NAME* = "VK_KHR_mir_surface" + +# Extension: VK_KHR_android_surface +const VK_KHR_ANDROID_SURFACE_SPEC_VERSION* = 6 +const VK_KHR_ANDROID_SURFACE_EXTENSION_NAME* = "VK_KHR_android_surface" +const VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000008000) + +# Extension: VK_KHR_win32_surface +const VK_KHR_WIN32_SURFACE_SPEC_VERSION* = 6 +const VK_KHR_WIN32_SURFACE_EXTENSION_NAME* = "VK_KHR_win32_surface" +const VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000009000) + +# Extension: VK_ANDROID_native_buffer +const VK_ANDROID_NATIVE_BUFFER_SPEC_VERSION* = 8 +const VK_ANDROID_NATIVE_BUFFER_NUMBER* = 11 +const VK_ANDROID_NATIVE_BUFFER_EXTENSION_NAME* = "VK_ANDROID_native_buffer" +template VK_ANDROID_NATIVE_BUFFER_NAME* = + VK_ANDROID_NATIVE_BUFFER_EXTENSION_NAME +const VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID*: VkStructureType = VkStructureType(1000010000) +const VK_STRUCTURE_TYPE_SWAPCHAIN_IMAGE_CREATE_INFO_ANDROID*: VkStructureType = VkStructureType(1000010001) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENTATION_PROPERTIES_ANDROID*: VkStructureType = VkStructureType(1000010002) + +# Extension: VK_EXT_debug_report +const VK_EXT_DEBUG_REPORT_SPEC_VERSION* = 10 +const VK_EXT_DEBUG_REPORT_EXTENSION_NAME* = "VK_EXT_debug_report" +const VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000011000) +template VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT* = + VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT +const VK_ERROR_VALIDATION_FAILED_EXT*: VkResult = VkResult(-1000011001) +const VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT*: VkObjectType = VkObjectType(1000011000) +const VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT*: VkDebugReportObjectTypeEXT = VkDebugReportObjectTypeEXT(1000156000) +const VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT*: VkDebugReportObjectTypeEXT = VkDebugReportObjectTypeEXT(1000085000) + +# Extension: VK_NV_glsl_shader +const VK_NV_GLSL_SHADER_SPEC_VERSION* = 1 +const VK_NV_GLSL_SHADER_EXTENSION_NAME* = "VK_NV_glsl_shader" +const VK_ERROR_INVALID_SHADER_NV*: VkResult = VkResult(-1000012000) + +# Extension: VK_EXT_depth_range_unrestricted +const VK_EXT_DEPTH_RANGE_UNRESTRICTED_SPEC_VERSION* = 1 +const VK_EXT_DEPTH_RANGE_UNRESTRICTED_EXTENSION_NAME* = "VK_EXT_depth_range_unrestricted" + +# Extension: VK_KHR_sampler_mirror_clamp_to_edge +const VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_SPEC_VERSION* = 3 +const VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_EXTENSION_NAME* = "VK_KHR_sampler_mirror_clamp_to_edge" + +# Extension: VK_IMG_filter_cubic +const VK_IMG_FILTER_CUBIC_SPEC_VERSION* = 1 +const VK_IMG_FILTER_CUBIC_EXTENSION_NAME* = "VK_IMG_filter_cubic" +template VK_FILTER_CUBIC_IMG* = + VK_FILTER_CUBIC_EXT +template VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG* = + VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT + +# Extension: VK_AMD_extension_17 +const VK_AMD_EXTENSION_17_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_17_EXTENSION_NAME* = "VK_AMD_extension_17" + +# Extension: VK_AMD_extension_18 +const VK_AMD_EXTENSION_18_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_18_EXTENSION_NAME* = "VK_AMD_extension_18" + +# Extension: VK_AMD_rasterization_order +const VK_AMD_RASTERIZATION_ORDER_SPEC_VERSION* = 1 +const VK_AMD_RASTERIZATION_ORDER_EXTENSION_NAME* = "VK_AMD_rasterization_order" +const VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD*: VkStructureType = VkStructureType(1000018000) + +# Extension: VK_AMD_extension_20 +const VK_AMD_EXTENSION_20_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_20_EXTENSION_NAME* = "VK_AMD_extension_20" + +# Extension: VK_AMD_shader_trinary_minmax +const VK_AMD_SHADER_TRINARY_MINMAX_SPEC_VERSION* = 1 +const VK_AMD_SHADER_TRINARY_MINMAX_EXTENSION_NAME* = "VK_AMD_shader_trinary_minmax" + +# Extension: VK_AMD_shader_explicit_vertex_parameter +const VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_SPEC_VERSION* = 1 +const VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_EXTENSION_NAME* = "VK_AMD_shader_explicit_vertex_parameter" + +# Extension: VK_EXT_debug_marker +const VK_EXT_DEBUG_MARKER_SPEC_VERSION* = 4 +const VK_EXT_DEBUG_MARKER_EXTENSION_NAME* = "VK_EXT_debug_marker" +const VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT*: VkStructureType = VkStructureType(1000022000) +const VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT*: VkStructureType = VkStructureType(1000022001) +const VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT*: VkStructureType = VkStructureType(1000022002) + +# Extension: VK_KHR_video_queue +const VK_KHR_VIDEO_QUEUE_SPEC_VERSION* = 8 +const VK_KHR_VIDEO_QUEUE_EXTENSION_NAME* = "VK_KHR_video_queue" +const VK_STRUCTURE_TYPE_VIDEO_PROFILE_INFO_KHR*: VkStructureType = VkStructureType(1000023000) +const VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR*: VkStructureType = VkStructureType(1000023001) +const VK_STRUCTURE_TYPE_VIDEO_PICTURE_RESOURCE_INFO_KHR*: VkStructureType = VkStructureType(1000023002) +const VK_STRUCTURE_TYPE_VIDEO_SESSION_MEMORY_REQUIREMENTS_KHR*: VkStructureType = VkStructureType(1000023003) +const VK_STRUCTURE_TYPE_BIND_VIDEO_SESSION_MEMORY_INFO_KHR*: VkStructureType = VkStructureType(1000023004) +const VK_STRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000023005) +const VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000023006) +const VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_UPDATE_INFO_KHR*: VkStructureType = VkStructureType(1000023007) +const VK_STRUCTURE_TYPE_VIDEO_BEGIN_CODING_INFO_KHR*: VkStructureType = VkStructureType(1000023008) +const VK_STRUCTURE_TYPE_VIDEO_END_CODING_INFO_KHR*: VkStructureType = VkStructureType(1000023009) +const VK_STRUCTURE_TYPE_VIDEO_CODING_CONTROL_INFO_KHR*: VkStructureType = VkStructureType(1000023010) +const VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_INFO_KHR*: VkStructureType = VkStructureType(1000023011) +const VK_STRUCTURE_TYPE_QUEUE_FAMILY_VIDEO_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000023012) +const VK_STRUCTURE_TYPE_VIDEO_PROFILE_LIST_INFO_KHR*: VkStructureType = VkStructureType(1000023013) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_FORMAT_INFO_KHR*: VkStructureType = VkStructureType(1000023014) +const VK_STRUCTURE_TYPE_VIDEO_FORMAT_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000023015) +const VK_STRUCTURE_TYPE_QUEUE_FAMILY_QUERY_RESULT_STATUS_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000023016) +const VK_OBJECT_TYPE_VIDEO_SESSION_KHR*: VkObjectType = VkObjectType(1000023000) +const VK_OBJECT_TYPE_VIDEO_SESSION_PARAMETERS_KHR*: VkObjectType = VkObjectType(1000023001) +const VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR*: VkQueryType = VkQueryType(1000023000) +const VK_QUERY_RESULT_WITH_STATUS_BIT_KHR*: VkQueryResultFlagBits = VkQueryResultFlagBits(16) +const VK_ERROR_IMAGE_USAGE_NOT_SUPPORTED_KHR*: VkResult = VkResult(-1000023000) +const VK_ERROR_VIDEO_PICTURE_LAYOUT_NOT_SUPPORTED_KHR*: VkResult = VkResult(-1000023001) +const VK_ERROR_VIDEO_PROFILE_OPERATION_NOT_SUPPORTED_KHR*: VkResult = VkResult(-1000023002) +const VK_ERROR_VIDEO_PROFILE_FORMAT_NOT_SUPPORTED_KHR*: VkResult = VkResult(-1000023003) +const VK_ERROR_VIDEO_PROFILE_CODEC_NOT_SUPPORTED_KHR*: VkResult = VkResult(-1000023004) +const VK_ERROR_VIDEO_STD_VERSION_NOT_SUPPORTED_KHR*: VkResult = VkResult(-1000023005) + +# Extension: VK_KHR_video_decode_queue +const VK_KHR_VIDEO_DECODE_QUEUE_SPEC_VERSION* = 7 +const VK_KHR_VIDEO_DECODE_QUEUE_EXTENSION_NAME* = "VK_KHR_video_decode_queue" +const VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR*: VkStructureType = VkStructureType(1000024000) +const VK_STRUCTURE_TYPE_VIDEO_DECODE_CAPABILITIES_KHR*: VkStructureType = VkStructureType(1000024001) +const VK_STRUCTURE_TYPE_VIDEO_DECODE_USAGE_INFO_KHR*: VkStructureType = VkStructureType(1000024002) +const VK_QUEUE_VIDEO_DECODE_BIT_KHR*: VkQueueFlagBits = VkQueueFlagBits(32) +const VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(67108864) +const VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR*: VkAccessFlagBits2 = VkAccessFlagBits2(34359738368) +const VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR*: VkAccessFlagBits2 = VkAccessFlagBits2(68719476736) +const VK_BUFFER_USAGE_VIDEO_DECODE_SRC_BIT_KHR*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(8192) +const VK_BUFFER_USAGE_VIDEO_DECODE_DST_BIT_KHR*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(16384) +const VK_IMAGE_USAGE_VIDEO_DECODE_DST_BIT_KHR*: VkImageUsageFlagBits = VkImageUsageFlagBits(1024) +const VK_IMAGE_USAGE_VIDEO_DECODE_SRC_BIT_KHR*: VkImageUsageFlagBits = VkImageUsageFlagBits(2048) +const VK_IMAGE_USAGE_VIDEO_DECODE_DPB_BIT_KHR*: VkImageUsageFlagBits = VkImageUsageFlagBits(4096) +const VK_FORMAT_FEATURE_VIDEO_DECODE_OUTPUT_BIT_KHR*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(33554432) +const VK_FORMAT_FEATURE_VIDEO_DECODE_DPB_BIT_KHR*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(67108864) +const VK_IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR*: VkImageLayout = VkImageLayout(1000024000) +const VK_IMAGE_LAYOUT_VIDEO_DECODE_SRC_KHR*: VkImageLayout = VkImageLayout(1000024001) +const VK_IMAGE_LAYOUT_VIDEO_DECODE_DPB_KHR*: VkImageLayout = VkImageLayout(1000024002) +const VK_FORMAT_FEATURE_2_VIDEO_DECODE_OUTPUT_BIT_KHR*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(33554432) +const VK_FORMAT_FEATURE_2_VIDEO_DECODE_DPB_BIT_KHR*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(67108864) + +# Extension: VK_AMD_gcn_shader +const VK_AMD_GCN_SHADER_SPEC_VERSION* = 1 +const VK_AMD_GCN_SHADER_EXTENSION_NAME* = "VK_AMD_gcn_shader" + +# Extension: VK_NV_dedicated_allocation +const VK_NV_DEDICATED_ALLOCATION_SPEC_VERSION* = 1 +const VK_NV_DEDICATED_ALLOCATION_EXTENSION_NAME* = "VK_NV_dedicated_allocation" +const VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000026000) +const VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000026001) +const VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV*: VkStructureType = VkStructureType(1000026002) + +# Extension: VK_EXT_extension_28 +const VK_EXT_EXTENSION_28_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_28_EXTENSION_NAME* = "VK_EXT_extension_28" + +# Extension: VK_EXT_transform_feedback +const VK_EXT_TRANSFORM_FEEDBACK_SPEC_VERSION* = 1 +const VK_EXT_TRANSFORM_FEEDBACK_EXTENSION_NAME* = "VK_EXT_transform_feedback" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT*: VkStructureType = VkStructureType(1000028000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000028001) +const VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000028002) +const VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT*: VkQueryType = VkQueryType(1000028004) +const VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(2048) +const VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(4096) +const VK_ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT*: VkAccessFlagBits = VkAccessFlagBits(33554432) +const VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT*: VkAccessFlagBits = VkAccessFlagBits(67108864) +const VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT*: VkAccessFlagBits = VkAccessFlagBits(134217728) +const VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT*: VkPipelineStageFlagBits = VkPipelineStageFlagBits(16777216) + +# Extension: VK_NVX_binary_import +const VK_NVX_BINARY_IMPORT_SPEC_VERSION* = 1 +const VK_NVX_BINARY_IMPORT_EXTENSION_NAME* = "VK_NVX_binary_import" +const VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX*: VkStructureType = VkStructureType(1000029000) +const VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX*: VkStructureType = VkStructureType(1000029001) +const VK_STRUCTURE_TYPE_CU_LAUNCH_INFO_NVX*: VkStructureType = VkStructureType(1000029002) +const VK_OBJECT_TYPE_CU_MODULE_NVX*: VkObjectType = VkObjectType(1000029000) +const VK_OBJECT_TYPE_CU_FUNCTION_NVX*: VkObjectType = VkObjectType(1000029001) +const VK_DEBUG_REPORT_OBJECT_TYPE_CU_MODULE_NVX_EXT*: VkDebugReportObjectTypeEXT = VkDebugReportObjectTypeEXT(1000029000) +const VK_DEBUG_REPORT_OBJECT_TYPE_CU_FUNCTION_NVX_EXT*: VkDebugReportObjectTypeEXT = VkDebugReportObjectTypeEXT(1000029001) + +# Extension: VK_NVX_image_view_handle +const VK_NVX_IMAGE_VIEW_HANDLE_SPEC_VERSION* = 2 +const VK_NVX_IMAGE_VIEW_HANDLE_EXTENSION_NAME* = "VK_NVX_image_view_handle" +const VK_STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX*: VkStructureType = VkStructureType(1000030000) +const VK_STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX*: VkStructureType = VkStructureType(1000030001) + +# Extension: VK_AMD_extension_32 +const VK_AMD_EXTENSION_32_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_32_EXTENSION_NAME* = "VK_AMD_extension_32" + +# Extension: VK_AMD_extension_33 +const VK_AMD_EXTENSION_33_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_33_EXTENSION_NAME* = "VK_AMD_extension_33" + +# Extension: VK_AMD_draw_indirect_count +const VK_AMD_DRAW_INDIRECT_COUNT_SPEC_VERSION* = 2 +const VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME* = "VK_AMD_draw_indirect_count" + +# Extension: VK_AMD_extension_35 +const VK_AMD_EXTENSION_35_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_35_EXTENSION_NAME* = "VK_AMD_extension_35" + +# Extension: VK_AMD_negative_viewport_height +const VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_SPEC_VERSION* = 1 +const VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_EXTENSION_NAME* = "VK_AMD_negative_viewport_height" + +# Extension: VK_AMD_gpu_shader_half_float +const VK_AMD_GPU_SHADER_HALF_FLOAT_SPEC_VERSION* = 2 +const VK_AMD_GPU_SHADER_HALF_FLOAT_EXTENSION_NAME* = "VK_AMD_gpu_shader_half_float" + +# Extension: VK_AMD_shader_ballot +const VK_AMD_SHADER_BALLOT_SPEC_VERSION* = 1 +const VK_AMD_SHADER_BALLOT_EXTENSION_NAME* = "VK_AMD_shader_ballot" + +# Extension: VK_EXT_video_encode_h264 +const VK_EXT_VIDEO_ENCODE_H264_SPEC_VERSION* = 11 +const VK_EXT_VIDEO_ENCODE_H264_EXTENSION_NAME* = "VK_EXT_video_encode_h264" +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT*: VkStructureType = VkStructureType(1000038000) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000038001) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT*: VkStructureType = VkStructureType(1000038002) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PICTURE_INFO_EXT*: VkStructureType = VkStructureType(1000038003) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_EXT*: VkStructureType = VkStructureType(1000038004) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_INFO_EXT*: VkStructureType = VkStructureType(1000038005) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_GOP_REMAINING_FRAME_INFO_EXT*: VkStructureType = VkStructureType(1000038006) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_INFO_EXT*: VkStructureType = VkStructureType(1000038007) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_INFO_EXT*: VkStructureType = VkStructureType(1000038008) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_EXT*: VkStructureType = VkStructureType(1000038009) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000038010) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_QUALITY_LEVEL_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000038011) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_GET_INFO_EXT*: VkStructureType = VkStructureType(1000038012) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_FEEDBACK_INFO_EXT*: VkStructureType = VkStructureType(1000038013) +const VK_VIDEO_CODEC_OPERATION_ENCODE_H264_BIT_EXT*: VkVideoCodecOperationFlagBitsKHR = VkVideoCodecOperationFlagBitsKHR(65536) + +# Extension: VK_EXT_video_encode_h265 +const VK_EXT_VIDEO_ENCODE_H265_SPEC_VERSION* = 11 +const VK_EXT_VIDEO_ENCODE_H265_EXTENSION_NAME* = "VK_EXT_video_encode_h265" +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT*: VkStructureType = VkStructureType(1000039000) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000039001) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT*: VkStructureType = VkStructureType(1000039002) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PICTURE_INFO_EXT*: VkStructureType = VkStructureType(1000039003) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_DPB_SLOT_INFO_EXT*: VkStructureType = VkStructureType(1000039004) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_NALU_SLICE_SEGMENT_INFO_EXT*: VkStructureType = VkStructureType(1000039005) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_GOP_REMAINING_FRAME_INFO_EXT*: VkStructureType = VkStructureType(1000039006) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_INFO_EXT*: VkStructureType = VkStructureType(1000039007) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_INFO_EXT*: VkStructureType = VkStructureType(1000039009) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_EXT*: VkStructureType = VkStructureType(1000039010) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000039011) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_QUALITY_LEVEL_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000039012) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_GET_INFO_EXT*: VkStructureType = VkStructureType(1000039013) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_FEEDBACK_INFO_EXT*: VkStructureType = VkStructureType(1000039014) +const VK_VIDEO_CODEC_OPERATION_ENCODE_H265_BIT_EXT*: VkVideoCodecOperationFlagBitsKHR = VkVideoCodecOperationFlagBitsKHR(131072) + +# Extension: VK_KHR_video_decode_h264 +const VK_KHR_VIDEO_DECODE_H264_SPEC_VERSION* = 8 +const VK_KHR_VIDEO_DECODE_H264_EXTENSION_NAME* = "VK_KHR_video_decode_h264" +const VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_KHR*: VkStructureType = VkStructureType(1000040000) +const VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_KHR*: VkStructureType = VkStructureType(1000040001) +const VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_KHR*: VkStructureType = VkStructureType(1000040003) +const VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000040004) +const VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_KHR*: VkStructureType = VkStructureType(1000040005) +const VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_KHR*: VkStructureType = VkStructureType(1000040006) +const VK_VIDEO_CODEC_OPERATION_DECODE_H264_BIT_KHR*: VkVideoCodecOperationFlagBitsKHR = VkVideoCodecOperationFlagBitsKHR(1) + +# Extension: VK_AMD_texture_gather_bias_lod +const VK_AMD_TEXTURE_GATHER_BIAS_LOD_SPEC_VERSION* = 1 +const VK_AMD_TEXTURE_GATHER_BIAS_LOD_EXTENSION_NAME* = "VK_AMD_texture_gather_bias_lod" +const VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD*: VkStructureType = VkStructureType(1000041000) + +# Extension: VK_AMD_shader_info +const VK_AMD_SHADER_INFO_SPEC_VERSION* = 1 +const VK_AMD_SHADER_INFO_EXTENSION_NAME* = "VK_AMD_shader_info" + +# Extension: VK_AMD_extension_44 +const VK_AMD_EXTENSION_44_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_44_EXTENSION_NAME* = "VK_AMD_extension_44" + +# Extension: VK_KHR_dynamic_rendering +const VK_KHR_DYNAMIC_RENDERING_SPEC_VERSION* = 1 +const VK_KHR_DYNAMIC_RENDERING_EXTENSION_NAME* = "VK_KHR_dynamic_rendering" +template VK_STRUCTURE_TYPE_RENDERING_INFO_KHR* = + VK_STRUCTURE_TYPE_RENDERING_INFO +template VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO_KHR* = + VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO +template VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO_KHR* = + VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES +template VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO_KHR* = + VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO +template VK_ATTACHMENT_STORE_OP_NONE_KHR* = + VK_ATTACHMENT_STORE_OP_NONE +const VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(2097152) +template VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR* = + VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR +const VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR*: VkStructureType = VkStructureType(1000044006) +const VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(4194304) +template VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT* = + VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT +const VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT*: VkStructureType = VkStructureType(1000044007) +const VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD*: VkStructureType = VkStructureType(1000044008) +template VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_NV* = + VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD +const VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX*: VkStructureType = VkStructureType(1000044009) + +# Extension: VK_AMD_extension_46 +const VK_AMD_EXTENSION_46_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_46_EXTENSION_NAME* = "VK_AMD_extension_46" + +# Extension: VK_AMD_shader_image_load_store_lod +const VK_AMD_SHADER_IMAGE_LOAD_STORE_LOD_SPEC_VERSION* = 1 +const VK_AMD_SHADER_IMAGE_LOAD_STORE_LOD_EXTENSION_NAME* = "VK_AMD_shader_image_load_store_lod" + +# Extension: VK_NVX_extension_48 +const VK_NVX_EXTENSION_48_SPEC_VERSION* = 0 +const VK_NVX_EXTENSION_48_EXTENSION_NAME* = "VK_NVX_extension_48" + +# Extension: VK_GOOGLE_extension_49 +const VK_GOOGLE_EXTENSION_49_SPEC_VERSION* = 0 +const VK_GOOGLE_EXTENSION_49_EXTENSION_NAME* = "VK_GOOGLE_extension_49" + +# Extension: VK_GGP_stream_descriptor_surface +const VK_GGP_STREAM_DESCRIPTOR_SURFACE_SPEC_VERSION* = 1 +const VK_GGP_STREAM_DESCRIPTOR_SURFACE_EXTENSION_NAME* = "VK_GGP_stream_descriptor_surface" +const VK_STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP*: VkStructureType = VkStructureType(1000049000) + +# Extension: VK_NV_corner_sampled_image +const VK_NV_CORNER_SAMPLED_IMAGE_SPEC_VERSION* = 2 +const VK_NV_CORNER_SAMPLED_IMAGE_EXTENSION_NAME* = "VK_NV_corner_sampled_image" +const VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV*: VkImageCreateFlagBits = VkImageCreateFlagBits(8192) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV*: VkStructureType = VkStructureType(1000050000) + +# Extension: VK_NV_private_vendor_info +const VK_NV_PRIVATE_VENDOR_INFO_SPEC_VERSION* = 2 +const VK_NV_PRIVATE_VENDOR_INFO_EXTENSION_NAME* = "VK_NV_private_vendor_info" +const VK_STRUCTURE_TYPE_PRIVATE_VENDOR_INFO_RESERVED_OFFSET_0_NV*: VkStructureType = VkStructureType(1000051000) + +# Extension: VK_NV_extension_53 +const VK_NV_EXTENSION_53_SPEC_VERSION* = 0 +const VK_NV_EXTENSION_53_EXTENSION_NAME* = "VK_NV_extension_53" + +# Extension: VK_KHR_multiview +const VK_KHR_MULTIVIEW_SPEC_VERSION* = 1 +const VK_KHR_MULTIVIEW_EXTENSION_NAME* = "VK_KHR_multiview" +template VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHR* = + VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES +template VK_DEPENDENCY_VIEW_LOCAL_BIT_KHR* = + VK_DEPENDENCY_VIEW_LOCAL_BIT + +# Extension: VK_IMG_format_pvrtc +const VK_IMG_FORMAT_PVRTC_SPEC_VERSION* = 1 +const VK_IMG_FORMAT_PVRTC_EXTENSION_NAME* = "VK_IMG_format_pvrtc" +const VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG*: VkFormat = VkFormat(1000054000) +const VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG*: VkFormat = VkFormat(1000054001) +const VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG*: VkFormat = VkFormat(1000054002) +const VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG*: VkFormat = VkFormat(1000054003) +const VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG*: VkFormat = VkFormat(1000054004) +const VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG*: VkFormat = VkFormat(1000054005) +const VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG*: VkFormat = VkFormat(1000054006) +const VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG*: VkFormat = VkFormat(1000054007) + +# Extension: VK_NV_external_memory_capabilities +const VK_NV_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION* = 1 +const VK_NV_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME* = "VK_NV_external_memory_capabilities" + +# Extension: VK_NV_external_memory +const VK_NV_EXTERNAL_MEMORY_SPEC_VERSION* = 1 +const VK_NV_EXTERNAL_MEMORY_EXTENSION_NAME* = "VK_NV_external_memory" +const VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000056000) +const VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV*: VkStructureType = VkStructureType(1000056001) + +# Extension: VK_NV_external_memory_win32 +const VK_NV_EXTERNAL_MEMORY_WIN32_SPEC_VERSION* = 1 +const VK_NV_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME* = "VK_NV_external_memory_win32" +const VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV*: VkStructureType = VkStructureType(1000057000) +const VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV*: VkStructureType = VkStructureType(1000057001) + +# Extension: VK_NV_win32_keyed_mutex +const VK_NV_WIN32_KEYED_MUTEX_SPEC_VERSION* = 2 +const VK_NV_WIN32_KEYED_MUTEX_EXTENSION_NAME* = "VK_NV_win32_keyed_mutex" +const VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV*: VkStructureType = VkStructureType(1000058000) + +# Extension: VK_KHR_get_physical_device_properties2 +const VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_SPEC_VERSION* = 2 +const VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME* = "VK_KHR_get_physical_device_properties2" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 +template VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR* = + VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2 +template VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR* = + VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 +template VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR* = + VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 +template VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR* = + VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 + +# Extension: VK_KHR_device_group +const VK_KHR_DEVICE_GROUP_SPEC_VERSION* = 4 +const VK_KHR_DEVICE_GROUP_EXTENSION_NAME* = "VK_KHR_device_group" +template VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO_KHR* = + VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO +template VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO_KHR* = + VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO +template VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO_KHR* = + VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO +template VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO_KHR* = + VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO +template VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO_KHR* = + VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO +template VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT_KHR* = + VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT +template VK_PEER_MEMORY_FEATURE_COPY_DST_BIT_KHR* = + VK_PEER_MEMORY_FEATURE_COPY_DST_BIT +template VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT_KHR* = + VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT +template VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT_KHR* = + VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT +template VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT_KHR* = + VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT +template VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR* = + VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT +template VK_PIPELINE_CREATE_DISPATCH_BASE_KHR* = + VK_PIPELINE_CREATE_DISPATCH_BASE +template VK_DEPENDENCY_DEVICE_GROUP_BIT_KHR* = + VK_DEPENDENCY_DEVICE_GROUP_BIT +template VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO_KHR* = + VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO +template VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO_KHR* = + VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO +template VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR* = + VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT + +# Extension: VK_EXT_validation_flags +const VK_EXT_VALIDATION_FLAGS_SPEC_VERSION* = 2 +const VK_EXT_VALIDATION_FLAGS_EXTENSION_NAME* = "VK_EXT_validation_flags" +const VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT*: VkStructureType = VkStructureType(1000061000) + +# Extension: VK_NN_vi_surface +const VK_NN_VI_SURFACE_SPEC_VERSION* = 1 +const VK_NN_VI_SURFACE_EXTENSION_NAME* = "VK_NN_vi_surface" +const VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN*: VkStructureType = VkStructureType(1000062000) + +# Extension: VK_KHR_shader_draw_parameters +const VK_KHR_SHADER_DRAW_PARAMETERS_SPEC_VERSION* = 1 +const VK_KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME* = "VK_KHR_shader_draw_parameters" + +# Extension: VK_EXT_shader_subgroup_ballot +const VK_EXT_SHADER_SUBGROUP_BALLOT_SPEC_VERSION* = 1 +const VK_EXT_SHADER_SUBGROUP_BALLOT_EXTENSION_NAME* = "VK_EXT_shader_subgroup_ballot" + +# Extension: VK_EXT_shader_subgroup_vote +const VK_EXT_SHADER_SUBGROUP_VOTE_SPEC_VERSION* = 1 +const VK_EXT_SHADER_SUBGROUP_VOTE_EXTENSION_NAME* = "VK_EXT_shader_subgroup_vote" + +# Extension: VK_EXT_texture_compression_astc_hdr +const VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_SPEC_VERSION* = 1 +const VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_EXTENSION_NAME* = "VK_EXT_texture_compression_astc_hdr" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES +template VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK_EXT* = + VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK +template VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK_EXT* = + VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK +template VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK_EXT* = + VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK +template VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK_EXT* = + VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK +template VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK_EXT* = + VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK +template VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK_EXT* = + VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK +template VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK_EXT* = + VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK +template VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK_EXT* = + VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK +template VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK_EXT* = + VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK +template VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK_EXT* = + VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK +template VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK_EXT* = + VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK +template VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK_EXT* = + VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK +template VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK_EXT* = + VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK +template VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK_EXT* = + VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK + +# Extension: VK_EXT_astc_decode_mode +const VK_EXT_ASTC_DECODE_MODE_SPEC_VERSION* = 1 +const VK_EXT_ASTC_DECODE_MODE_EXTENSION_NAME* = "VK_EXT_astc_decode_mode" +const VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT*: VkStructureType = VkStructureType(1000067000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT*: VkStructureType = VkStructureType(1000067001) + +# Extension: VK_EXT_pipeline_robustness +const VK_EXT_PIPELINE_ROBUSTNESS_SPEC_VERSION* = 1 +const VK_EXT_PIPELINE_ROBUSTNESS_EXTENSION_NAME* = "VK_EXT_pipeline_robustness" +const VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000068000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES_EXT*: VkStructureType = VkStructureType(1000068001) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000068002) + +# Extension: VK_KHR_maintenance1 +const VK_KHR_MAINTENANCE_1_SPEC_VERSION* = 2 +const VK_KHR_MAINTENANCE_1_EXTENSION_NAME* = "VK_KHR_maintenance1" +template VK_ERROR_OUT_OF_POOL_MEMORY_KHR* = + VK_ERROR_OUT_OF_POOL_MEMORY +template VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR* = + VK_FORMAT_FEATURE_TRANSFER_SRC_BIT +template VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR* = + VK_FORMAT_FEATURE_TRANSFER_DST_BIT +template VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR* = + VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT + +# Extension: VK_KHR_device_group_creation +const VK_KHR_DEVICE_GROUP_CREATION_SPEC_VERSION* = 1 +const VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME* = "VK_KHR_device_group_creation" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES +template VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO_KHR* = + VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO +template VK_MEMORY_HEAP_MULTI_INSTANCE_BIT_KHR* = + VK_MEMORY_HEAP_MULTI_INSTANCE_BIT + +# Extension: VK_KHR_external_memory_capabilities +const VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION* = 1 +const VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME* = "VK_KHR_external_memory_capabilities" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO +template VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHR* = + VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO +template VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHR* = + VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES +template VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR* = + VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT +template VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR* = + VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT +template VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR* = + VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT +template VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR* = + VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT +template VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR* = + VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT +template VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR* = + VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT +template VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR* = + VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT +template VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_KHR* = + VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT +template VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_KHR* = + VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT +template VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_KHR* = + VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT + +# Extension: VK_KHR_external_memory +const VK_KHR_EXTERNAL_MEMORY_SPEC_VERSION* = 1 +const VK_KHR_EXTERNAL_MEMORY_EXTENSION_NAME* = "VK_KHR_external_memory" +template VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHR* = + VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO +template VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHR* = + VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO +template VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHR* = + VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO +template VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR* = + VK_ERROR_INVALID_EXTERNAL_HANDLE + +# Extension: VK_KHR_external_memory_win32 +const VK_KHR_EXTERNAL_MEMORY_WIN32_SPEC_VERSION* = 1 +const VK_KHR_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME* = "VK_KHR_external_memory_win32" +const VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR*: VkStructureType = VkStructureType(1000073000) +const VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR*: VkStructureType = VkStructureType(1000073001) +const VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000073002) +const VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR*: VkStructureType = VkStructureType(1000073003) + +# Extension: VK_KHR_external_memory_fd +const VK_KHR_EXTERNAL_MEMORY_FD_SPEC_VERSION* = 1 +const VK_KHR_EXTERNAL_MEMORY_FD_EXTENSION_NAME* = "VK_KHR_external_memory_fd" +const VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR*: VkStructureType = VkStructureType(1000074000) +const VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000074001) +const VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR*: VkStructureType = VkStructureType(1000074002) + +# Extension: VK_KHR_win32_keyed_mutex +const VK_KHR_WIN32_KEYED_MUTEX_SPEC_VERSION* = 1 +const VK_KHR_WIN32_KEYED_MUTEX_EXTENSION_NAME* = "VK_KHR_win32_keyed_mutex" +const VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR*: VkStructureType = VkStructureType(1000075000) + +# Extension: VK_KHR_external_semaphore_capabilities +const VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_SPEC_VERSION* = 1 +const VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_EXTENSION_NAME* = "VK_KHR_external_semaphore_capabilities" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO +template VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHR* = + VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES +template VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR* = + VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT +template VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR* = + VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT +template VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR* = + VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT +template VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR* = + VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT +template VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT_KHR* = + VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT +template VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT_KHR* = + VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT +template VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT_KHR* = + VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT + +# Extension: VK_KHR_external_semaphore +const VK_KHR_EXTERNAL_SEMAPHORE_SPEC_VERSION* = 1 +const VK_KHR_EXTERNAL_SEMAPHORE_EXTENSION_NAME* = "VK_KHR_external_semaphore" +template VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHR* = + VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO +template VK_SEMAPHORE_IMPORT_TEMPORARY_BIT_KHR* = + VK_SEMAPHORE_IMPORT_TEMPORARY_BIT + +# Extension: VK_KHR_external_semaphore_win32 +const VK_KHR_EXTERNAL_SEMAPHORE_WIN32_SPEC_VERSION* = 1 +const VK_KHR_EXTERNAL_SEMAPHORE_WIN32_EXTENSION_NAME* = "VK_KHR_external_semaphore_win32" +const VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR*: VkStructureType = VkStructureType(1000078000) +const VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR*: VkStructureType = VkStructureType(1000078001) +const VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR*: VkStructureType = VkStructureType(1000078002) +const VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR*: VkStructureType = VkStructureType(1000078003) + +# Extension: VK_KHR_external_semaphore_fd +const VK_KHR_EXTERNAL_SEMAPHORE_FD_SPEC_VERSION* = 1 +const VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME* = "VK_KHR_external_semaphore_fd" +const VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR*: VkStructureType = VkStructureType(1000079000) +const VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR*: VkStructureType = VkStructureType(1000079001) + +# Extension: VK_KHR_push_descriptor +const VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION* = 2 +const VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME* = "VK_KHR_push_descriptor" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000080000) +const VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR*: VkDescriptorSetLayoutCreateFlagBits = VkDescriptorSetLayoutCreateFlagBits(1) +const VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR*: VkDescriptorUpdateTemplateType = VkDescriptorUpdateTemplateType(1) + +# Extension: VK_EXT_conditional_rendering +const VK_EXT_CONDITIONAL_RENDERING_SPEC_VERSION* = 2 +const VK_EXT_CONDITIONAL_RENDERING_EXTENSION_NAME* = "VK_EXT_conditional_rendering" +const VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT*: VkStructureType = VkStructureType(1000081000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT*: VkStructureType = VkStructureType(1000081001) +const VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT*: VkStructureType = VkStructureType(1000081002) +const VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT*: VkAccessFlagBits = VkAccessFlagBits(1048576) +const VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(512) +const VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT*: VkPipelineStageFlagBits = VkPipelineStageFlagBits(262144) + +# Extension: VK_KHR_shader_float16_int8 +const VK_KHR_SHADER_FLOAT16_INT8_SPEC_VERSION* = 1 +const VK_KHR_SHADER_FLOAT16_INT8_EXTENSION_NAME* = "VK_KHR_shader_float16_int8" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT16_INT8_FEATURES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES + +# Extension: VK_KHR_16bit_storage +const VK_KHR_16BIT_STORAGE_SPEC_VERSION* = 1 +const VK_KHR_16BIT_STORAGE_EXTENSION_NAME* = "VK_KHR_16bit_storage" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES + +# Extension: VK_KHR_incremental_present +const VK_KHR_INCREMENTAL_PRESENT_SPEC_VERSION* = 2 +const VK_KHR_INCREMENTAL_PRESENT_EXTENSION_NAME* = "VK_KHR_incremental_present" +const VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR*: VkStructureType = VkStructureType(1000084000) + +# Extension: VK_KHR_descriptor_update_template +const VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_SPEC_VERSION* = 1 +const VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME* = "VK_KHR_descriptor_update_template" +template VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR* = + VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO +template VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR* = + VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE +template VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR* = + VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET +template VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT* = + VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT + +# Extension: VK_NVX_device_generated_commands +const VK_NVX_DEVICE_GENERATED_COMMANDS_SPEC_VERSION* = 3 +const VK_NVX_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME* = "VK_NVX_device_generated_commands" + +# Extension: VK_NV_clip_space_w_scaling +const VK_NV_CLIP_SPACE_W_SCALING_SPEC_VERSION* = 1 +const VK_NV_CLIP_SPACE_W_SCALING_EXTENSION_NAME* = "VK_NV_clip_space_w_scaling" +const VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000087000) +const VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV*: VkDynamicState = VkDynamicState(1000087000) + +# Extension: VK_EXT_direct_mode_display +const VK_EXT_DIRECT_MODE_DISPLAY_SPEC_VERSION* = 1 +const VK_EXT_DIRECT_MODE_DISPLAY_EXTENSION_NAME* = "VK_EXT_direct_mode_display" + +# Extension: VK_EXT_acquire_xlib_display +const VK_EXT_ACQUIRE_XLIB_DISPLAY_SPEC_VERSION* = 1 +const VK_EXT_ACQUIRE_XLIB_DISPLAY_EXTENSION_NAME* = "VK_EXT_acquire_xlib_display" + +# Extension: VK_EXT_display_surface_counter +const VK_EXT_DISPLAY_SURFACE_COUNTER_SPEC_VERSION* = 1 +const VK_EXT_DISPLAY_SURFACE_COUNTER_EXTENSION_NAME* = "VK_EXT_display_surface_counter" +const VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT*: VkStructureType = VkStructureType(1000090000) + +# Extension: VK_EXT_display_control +const VK_EXT_DISPLAY_CONTROL_SPEC_VERSION* = 1 +const VK_EXT_DISPLAY_CONTROL_EXTENSION_NAME* = "VK_EXT_display_control" +const VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT*: VkStructureType = VkStructureType(1000091000) +const VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT*: VkStructureType = VkStructureType(1000091001) +const VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT*: VkStructureType = VkStructureType(1000091002) +const VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000091003) + +# Extension: VK_GOOGLE_display_timing +const VK_GOOGLE_DISPLAY_TIMING_SPEC_VERSION* = 1 +const VK_GOOGLE_DISPLAY_TIMING_EXTENSION_NAME* = "VK_GOOGLE_display_timing" +const VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE*: VkStructureType = VkStructureType(1000092000) + +# Extension: VK_RESERVED_do_not_use_94 +const VK_RESERVED_DO_NOT_USE_94_SPEC_VERSION* = 1 +const VK_RESERVED_DO_NOT_USE_94_EXTENSION_NAME* = "VK_RESERVED_do_not_use_94" + +# Extension: VK_NV_sample_mask_override_coverage +const VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_SPEC_VERSION* = 1 +const VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_EXTENSION_NAME* = "VK_NV_sample_mask_override_coverage" + +# Extension: VK_NV_geometry_shader_passthrough +const VK_NV_GEOMETRY_SHADER_PASSTHROUGH_SPEC_VERSION* = 1 +const VK_NV_GEOMETRY_SHADER_PASSTHROUGH_EXTENSION_NAME* = "VK_NV_geometry_shader_passthrough" + +# Extension: VK_NV_viewport_array2 +const VK_NV_VIEWPORT_ARRAY_2_SPEC_VERSION* = 1 +const VK_NV_VIEWPORT_ARRAY_2_EXTENSION_NAME* = "VK_NV_viewport_array2" + +# Extension: VK_NVX_multiview_per_view_attributes +const VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_SPEC_VERSION* = 1 +const VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME* = "VK_NVX_multiview_per_view_attributes" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX*: VkStructureType = VkStructureType(1000097000) +const VK_SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX*: VkSubpassDescriptionFlagBits = VkSubpassDescriptionFlagBits(1) +const VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX*: VkSubpassDescriptionFlagBits = VkSubpassDescriptionFlagBits(2) + +# Extension: VK_NV_viewport_swizzle +const VK_NV_VIEWPORT_SWIZZLE_SPEC_VERSION* = 1 +const VK_NV_VIEWPORT_SWIZZLE_EXTENSION_NAME* = "VK_NV_viewport_swizzle" +const VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000098000) + +# Extension: VK_EXT_discard_rectangles +const VK_EXT_DISCARD_RECTANGLES_SPEC_VERSION* = 2 +const VK_EXT_DISCARD_RECTANGLES_EXTENSION_NAME* = "VK_EXT_discard_rectangles" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000099000) +const VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000099001) +const VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT*: VkDynamicState = VkDynamicState(1000099000) +const VK_DYNAMIC_STATE_DISCARD_RECTANGLE_ENABLE_EXT*: VkDynamicState = VkDynamicState(1000099001) +const VK_DYNAMIC_STATE_DISCARD_RECTANGLE_MODE_EXT*: VkDynamicState = VkDynamicState(1000099002) + +# Extension: VK_NV_extension_101 +const VK_NV_EXTENSION_101_SPEC_VERSION* = 0 +const VK_NV_EXTENSION_101_EXTENSION_NAME* = "VK_NV_extension_101" + +# Extension: VK_EXT_conservative_rasterization +const VK_EXT_CONSERVATIVE_RASTERIZATION_SPEC_VERSION* = 1 +const VK_EXT_CONSERVATIVE_RASTERIZATION_EXTENSION_NAME* = "VK_EXT_conservative_rasterization" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000101000) +const VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000101001) + +# Extension: VK_EXT_depth_clip_enable +const VK_EXT_DEPTH_CLIP_ENABLE_SPEC_VERSION* = 1 +const VK_EXT_DEPTH_CLIP_ENABLE_EXTENSION_NAME* = "VK_EXT_depth_clip_enable" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT*: VkStructureType = VkStructureType(1000102000) +const VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000102001) + +# Extension: VK_NV_extension_104 +const VK_NV_EXTENSION_104_SPEC_VERSION* = 0 +const VK_NV_EXTENSION_104_EXTENSION_NAME* = "VK_NV_extension_104" +const VK_PRIVATE_DATA_SLOT_CREATE_RESERVED_0_BIT_NV*: VkPrivateDataSlotCreateFlagBits = VkPrivateDataSlotCreateFlagBits(1) + +# Extension: VK_EXT_swapchain_colorspace +const VK_EXT_SWAPCHAIN_COLOR_SPACE_SPEC_VERSION* = 4 +const VK_EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME* = "VK_EXT_swapchain_colorspace" +const VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104001) +const VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104002) +const VK_COLOR_SPACE_DISPLAY_P3_LINEAR_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104003) +const VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104004) +const VK_COLOR_SPACE_BT709_LINEAR_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104005) +const VK_COLOR_SPACE_BT709_NONLINEAR_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104006) +const VK_COLOR_SPACE_BT2020_LINEAR_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104007) +const VK_COLOR_SPACE_HDR10_ST2084_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104008) +const VK_COLOR_SPACE_DOLBYVISION_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104009) +const VK_COLOR_SPACE_HDR10_HLG_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104010) +const VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104011) +const VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104012) +const VK_COLOR_SPACE_PASS_THROUGH_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104013) +const VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104014) +template VK_COLOR_SPACE_DCI_P3_LINEAR_EXT* = + VK_COLOR_SPACE_DISPLAY_P3_LINEAR_EXT + +# Extension: VK_EXT_hdr_metadata +const VK_EXT_HDR_METADATA_SPEC_VERSION* = 2 +const VK_EXT_HDR_METADATA_EXTENSION_NAME* = "VK_EXT_hdr_metadata" +const VK_STRUCTURE_TYPE_HDR_METADATA_EXT*: VkStructureType = VkStructureType(1000105000) + +# Extension: VK_IMG_extension_107 +const VK_IMG_EXTENSION_107_SPEC_VERSION* = 0 +const VK_IMG_EXTENSION_107_EXTENSION_NAME* = "VK_IMG_extension_107" + +# Extension: VK_IMG_extension_108 +const VK_IMG_EXTENSION_108_SPEC_VERSION* = 0 +const VK_IMG_EXTENSION_108_EXTENSION_NAME* = "VK_IMG_extension_108" + +# Extension: VK_KHR_imageless_framebuffer +const VK_KHR_IMAGELESS_FRAMEBUFFER_SPEC_VERSION* = 1 +const VK_KHR_IMAGELESS_FRAMEBUFFER_EXTENSION_NAME* = "VK_KHR_imageless_framebuffer" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES +template VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO_KHR* = + VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO +template VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO_KHR* = + VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO +template VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO_KHR* = + VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO +template VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT_KHR* = + VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT + +# Extension: VK_KHR_create_renderpass2 +const VK_KHR_CREATE_RENDERPASS_2_SPEC_VERSION* = 1 +const VK_KHR_CREATE_RENDERPASS_2_EXTENSION_NAME* = "VK_KHR_create_renderpass2" +template VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2_KHR* = + VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 +template VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2_KHR* = + VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 +template VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2_KHR* = + VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 +template VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2_KHR* = + VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 +template VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2_KHR* = + VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 +template VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO_KHR* = + VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO +template VK_STRUCTURE_TYPE_SUBPASS_END_INFO_KHR* = + VK_STRUCTURE_TYPE_SUBPASS_END_INFO + +# Extension: VK_IMG_extension_111 +const VK_IMG_EXTENSION_111_SPEC_VERSION* = 0 +const VK_IMG_EXTENSION_111_EXTENSION_NAME* = "VK_IMG_extension_111" + +# Extension: VK_KHR_shared_presentable_image +const VK_KHR_SHARED_PRESENTABLE_IMAGE_SPEC_VERSION* = 1 +const VK_KHR_SHARED_PRESENTABLE_IMAGE_EXTENSION_NAME* = "VK_KHR_shared_presentable_image" +const VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR*: VkStructureType = VkStructureType(1000111000) +const VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR*: VkPresentModeKHR = VkPresentModeKHR(1000111000) +const VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR*: VkPresentModeKHR = VkPresentModeKHR(1000111001) +const VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR*: VkImageLayout = VkImageLayout(1000111000) + +# Extension: VK_KHR_external_fence_capabilities +const VK_KHR_EXTERNAL_FENCE_CAPABILITIES_SPEC_VERSION* = 1 +const VK_KHR_EXTERNAL_FENCE_CAPABILITIES_EXTENSION_NAME* = "VK_KHR_external_fence_capabilities" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO +template VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES_KHR* = + VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES +template VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR* = + VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT +template VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR* = + VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT +template VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR* = + VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT +template VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT_KHR* = + VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT +template VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT_KHR* = + VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT +template VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT_KHR* = + VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT + +# Extension: VK_KHR_external_fence +const VK_KHR_EXTERNAL_FENCE_SPEC_VERSION* = 1 +const VK_KHR_EXTERNAL_FENCE_EXTENSION_NAME* = "VK_KHR_external_fence" +template VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO_KHR* = + VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO +template VK_FENCE_IMPORT_TEMPORARY_BIT_KHR* = + VK_FENCE_IMPORT_TEMPORARY_BIT + +# Extension: VK_KHR_external_fence_win32 +const VK_KHR_EXTERNAL_FENCE_WIN32_SPEC_VERSION* = 1 +const VK_KHR_EXTERNAL_FENCE_WIN32_EXTENSION_NAME* = "VK_KHR_external_fence_win32" +const VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR*: VkStructureType = VkStructureType(1000114000) +const VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR*: VkStructureType = VkStructureType(1000114001) +const VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR*: VkStructureType = VkStructureType(1000114002) + +# Extension: VK_KHR_external_fence_fd +const VK_KHR_EXTERNAL_FENCE_FD_SPEC_VERSION* = 1 +const VK_KHR_EXTERNAL_FENCE_FD_EXTENSION_NAME* = "VK_KHR_external_fence_fd" +const VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR*: VkStructureType = VkStructureType(1000115000) +const VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR*: VkStructureType = VkStructureType(1000115001) + +# Extension: VK_KHR_performance_query +const VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION* = 1 +const VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME* = "VK_KHR_performance_query" +const VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR*: VkQueryType = VkQueryType(1000116000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR*: VkStructureType = VkStructureType(1000116000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000116001) +const VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000116002) +const VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR*: VkStructureType = VkStructureType(1000116003) +const VK_STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR*: VkStructureType = VkStructureType(1000116004) +const VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR*: VkStructureType = VkStructureType(1000116005) +const VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR*: VkStructureType = VkStructureType(1000116006) +const VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_RESERVATION_INFO_KHR*: VkStructureType = VkStructureType(1000116007) + +# Extension: VK_KHR_maintenance2 +const VK_KHR_MAINTENANCE_2_SPEC_VERSION* = 1 +const VK_KHR_MAINTENANCE_2_EXTENSION_NAME* = "VK_KHR_maintenance2" +template VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR* = + VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT +template VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR* = + VK_IMAGE_CREATE_EXTENDED_USAGE_BIT +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES +template VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO_KHR* = + VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO +template VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO_KHR* = + VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO +template VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO_KHR* = + VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO +template VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR* = + VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL +template VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR* = + VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL +template VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES_KHR* = + VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES +template VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY_KHR* = + VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY +template VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT_KHR* = + VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT +template VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT_KHR* = + VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT + +# Extension: VK_KHR_extension_119 +const VK_KHR_EXTENSION_119_SPEC_VERSION* = 0 +const VK_KHR_EXTENSION_119_EXTENSION_NAME* = "VK_KHR_extension_119" + +# Extension: VK_KHR_get_surface_capabilities2 +const VK_KHR_GET_SURFACE_CAPABILITIES_2_SPEC_VERSION* = 1 +const VK_KHR_GET_SURFACE_CAPABILITIES_2_EXTENSION_NAME* = "VK_KHR_get_surface_capabilities2" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR*: VkStructureType = VkStructureType(1000119000) +const VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR*: VkStructureType = VkStructureType(1000119001) +const VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR*: VkStructureType = VkStructureType(1000119002) + +# Extension: VK_KHR_variable_pointers +const VK_KHR_VARIABLE_POINTERS_SPEC_VERSION* = 1 +const VK_KHR_VARIABLE_POINTERS_EXTENSION_NAME* = "VK_KHR_variable_pointers" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES_KHR + +# Extension: VK_KHR_get_display_properties2 +const VK_KHR_GET_DISPLAY_PROPERTIES_2_SPEC_VERSION* = 1 +const VK_KHR_GET_DISPLAY_PROPERTIES_2_EXTENSION_NAME* = "VK_KHR_get_display_properties2" +const VK_STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR*: VkStructureType = VkStructureType(1000121000) +const VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR*: VkStructureType = VkStructureType(1000121001) +const VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR*: VkStructureType = VkStructureType(1000121002) +const VK_STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR*: VkStructureType = VkStructureType(1000121003) +const VK_STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR*: VkStructureType = VkStructureType(1000121004) + +# Extension: VK_MVK_ios_surface +const VK_MVK_IOS_SURFACE_SPEC_VERSION* = 3 +const VK_MVK_IOS_SURFACE_EXTENSION_NAME* = "VK_MVK_ios_surface" +const VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK*: VkStructureType = VkStructureType(1000122000) + +# Extension: VK_MVK_macos_surface +const VK_MVK_MACOS_SURFACE_SPEC_VERSION* = 3 +const VK_MVK_MACOS_SURFACE_EXTENSION_NAME* = "VK_MVK_macos_surface" +const VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK*: VkStructureType = VkStructureType(1000123000) + +# Extension: VK_MVK_moltenvk +const VK_MVK_MOLTENVK_SPEC_VERSION* = 0 +const VK_MVK_MOLTENVK_EXTENSION_NAME* = "VK_MVK_moltenvk" + +# Extension: VK_EXT_external_memory_dma_buf +const VK_EXT_EXTERNAL_MEMORY_DMA_BUF_SPEC_VERSION* = 1 +const VK_EXT_EXTERNAL_MEMORY_DMA_BUF_EXTENSION_NAME* = "VK_EXT_external_memory_dma_buf" +const VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT*: VkExternalMemoryHandleTypeFlagBits = VkExternalMemoryHandleTypeFlagBits(512) + +# Extension: VK_EXT_queue_family_foreign +const VK_EXT_QUEUE_FAMILY_FOREIGN_SPEC_VERSION* = 1 +const VK_EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME* = "VK_EXT_queue_family_foreign" + +# Extension: VK_KHR_dedicated_allocation +const VK_KHR_DEDICATED_ALLOCATION_SPEC_VERSION* = 3 +const VK_KHR_DEDICATED_ALLOCATION_EXTENSION_NAME* = "VK_KHR_dedicated_allocation" +template VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS_KHR* = + VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS +template VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO_KHR* = + VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO + +# Extension: VK_EXT_debug_utils +const VK_EXT_DEBUG_UTILS_SPEC_VERSION* = 2 +const VK_EXT_DEBUG_UTILS_EXTENSION_NAME* = "VK_EXT_debug_utils" +const VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT*: VkStructureType = VkStructureType(1000128000) +const VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT*: VkStructureType = VkStructureType(1000128001) +const VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT*: VkStructureType = VkStructureType(1000128002) +const VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT*: VkStructureType = VkStructureType(1000128003) +const VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000128004) +const VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT*: VkObjectType = VkObjectType(1000128000) + +# Extension: VK_ANDROID_external_memory_android_hardware_buffer +const VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_SPEC_VERSION* = 5 +const VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME* = "VK_ANDROID_external_memory_android_hardware_buffer" +const VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID*: VkExternalMemoryHandleTypeFlagBits = VkExternalMemoryHandleTypeFlagBits(1024) +const VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID*: VkStructureType = VkStructureType(1000129000) +const VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID*: VkStructureType = VkStructureType(1000129001) +const VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID*: VkStructureType = VkStructureType(1000129002) +const VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID*: VkStructureType = VkStructureType(1000129003) +const VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID*: VkStructureType = VkStructureType(1000129004) +const VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID*: VkStructureType = VkStructureType(1000129005) +const VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID*: VkStructureType = VkStructureType(1000129006) + +# Extension: VK_EXT_sampler_filter_minmax +const VK_EXT_SAMPLER_FILTER_MINMAX_SPEC_VERSION* = 2 +const VK_EXT_SAMPLER_FILTER_MINMAX_EXTENSION_NAME* = "VK_EXT_sampler_filter_minmax" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES_EXT* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES +template VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT* = + VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO +template VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT* = + VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT +template VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE_EXT* = + VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE +template VK_SAMPLER_REDUCTION_MODE_MIN_EXT* = + VK_SAMPLER_REDUCTION_MODE_MIN +template VK_SAMPLER_REDUCTION_MODE_MAX_EXT* = + VK_SAMPLER_REDUCTION_MODE_MAX + +# Extension: VK_KHR_storage_buffer_storage_class +const VK_KHR_STORAGE_BUFFER_STORAGE_CLASS_SPEC_VERSION* = 1 +const VK_KHR_STORAGE_BUFFER_STORAGE_CLASS_EXTENSION_NAME* = "VK_KHR_storage_buffer_storage_class" + +# Extension: VK_AMD_gpu_shader_int16 +const VK_AMD_GPU_SHADER_INT16_SPEC_VERSION* = 2 +const VK_AMD_GPU_SHADER_INT16_EXTENSION_NAME* = "VK_AMD_gpu_shader_int16" + +# Extension: VK_AMD_extension_134 +const VK_AMD_EXTENSION_134_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_134_EXTENSION_NAME* = "VK_AMD_extension_134" + +# Extension: VK_AMDX_shader_enqueue +const VK_AMDX_SHADER_ENQUEUE_SPEC_VERSION* = 1 +const VK_AMDX_SHADER_ENQUEUE_EXTENSION_NAME* = "VK_AMDX_shader_enqueue" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ENQUEUE_FEATURES_AMDX*: VkStructureType = VkStructureType(1000134000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ENQUEUE_PROPERTIES_AMDX*: VkStructureType = VkStructureType(1000134001) +const VK_STRUCTURE_TYPE_EXECUTION_GRAPH_PIPELINE_SCRATCH_SIZE_AMDX*: VkStructureType = VkStructureType(1000134002) +const VK_STRUCTURE_TYPE_EXECUTION_GRAPH_PIPELINE_CREATE_INFO_AMDX*: VkStructureType = VkStructureType(1000134003) +const VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_NODE_CREATE_INFO_AMDX*: VkStructureType = VkStructureType(1000134004) +const VK_BUFFER_USAGE_EXECUTION_GRAPH_SCRATCH_BIT_AMDX*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(33554432) +const VK_PIPELINE_BIND_POINT_EXECUTION_GRAPH_AMDX*: VkPipelineBindPoint = VkPipelineBindPoint(1000134000) +const VK_BUFFER_USAGE_2_EXECUTION_GRAPH_SCRATCH_BIT_AMDX*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(33554432) + +# Extension: VK_AMD_extension_136 +const VK_AMD_EXTENSION_136_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_136_EXTENSION_NAME* = "VK_AMD_extension_136" + +# Extension: VK_AMD_mixed_attachment_samples +const VK_AMD_MIXED_ATTACHMENT_SAMPLES_SPEC_VERSION* = 1 +const VK_AMD_MIXED_ATTACHMENT_SAMPLES_EXTENSION_NAME* = "VK_AMD_mixed_attachment_samples" + +# Extension: VK_AMD_shader_fragment_mask +const VK_AMD_SHADER_FRAGMENT_MASK_SPEC_VERSION* = 1 +const VK_AMD_SHADER_FRAGMENT_MASK_EXTENSION_NAME* = "VK_AMD_shader_fragment_mask" + +# Extension: VK_EXT_inline_uniform_block +const VK_EXT_INLINE_UNIFORM_BLOCK_SPEC_VERSION* = 1 +const VK_EXT_INLINE_UNIFORM_BLOCK_EXTENSION_NAME* = "VK_EXT_inline_uniform_block" +template VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT* = + VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES +template VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT* = + VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK +template VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT* = + VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO + +# Extension: VK_AMD_extension_140 +const VK_AMD_EXTENSION_140_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_140_EXTENSION_NAME* = "VK_AMD_extension_140" + +# Extension: VK_EXT_shader_stencil_export +const VK_EXT_SHADER_STENCIL_EXPORT_SPEC_VERSION* = 1 +const VK_EXT_SHADER_STENCIL_EXPORT_EXTENSION_NAME* = "VK_EXT_shader_stencil_export" + +# Extension: VK_AMD_extension_142 +const VK_AMD_EXTENSION_142_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_142_EXTENSION_NAME* = "VK_AMD_extension_142" + +# Extension: VK_AMD_extension_143 +const VK_AMD_EXTENSION_143_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_143_EXTENSION_NAME* = "VK_AMD_extension_143" + +# Extension: VK_EXT_sample_locations +const VK_EXT_SAMPLE_LOCATIONS_SPEC_VERSION* = 1 +const VK_EXT_SAMPLE_LOCATIONS_EXTENSION_NAME* = "VK_EXT_sample_locations" +const VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT*: VkImageCreateFlagBits = VkImageCreateFlagBits(4096) +const VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT*: VkStructureType = VkStructureType(1000143000) +const VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT*: VkStructureType = VkStructureType(1000143001) +const VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000143002) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000143003) +const VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000143004) +const VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT*: VkDynamicState = VkDynamicState(1000143000) + +# Extension: VK_KHR_relaxed_block_layout +const VK_KHR_RELAXED_BLOCK_LAYOUT_SPEC_VERSION* = 1 +const VK_KHR_RELAXED_BLOCK_LAYOUT_EXTENSION_NAME* = "VK_KHR_relaxed_block_layout" + +# Extension: VK_RESERVED_do_not_use_146 +const VK_RESERVED_DO_NOT_USE_146_SPEC_VERSION* = 1 +const VK_RESERVED_DO_NOT_USE_146_EXTENSION_NAME* = "VK_RESERVED_do_not_use_146" + +# Extension: VK_KHR_get_memory_requirements2 +const VK_KHR_GET_MEMORY_REQUIREMENTS_2_SPEC_VERSION* = 1 +const VK_KHR_GET_MEMORY_REQUIREMENTS_2_EXTENSION_NAME* = "VK_KHR_get_memory_requirements2" +template VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2_KHR* = + VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 +template VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2_KHR* = + VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 +template VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2_KHR* = + VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 +template VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2_KHR* = + VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 +template VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2_KHR* = + VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 + +# Extension: VK_KHR_image_format_list +const VK_KHR_IMAGE_FORMAT_LIST_SPEC_VERSION* = 1 +const VK_KHR_IMAGE_FORMAT_LIST_EXTENSION_NAME* = "VK_KHR_image_format_list" +template VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO_KHR* = + VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO + +# Extension: VK_EXT_blend_operation_advanced +const VK_EXT_BLEND_OPERATION_ADVANCED_SPEC_VERSION* = 2 +const VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME* = "VK_EXT_blend_operation_advanced" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT*: VkStructureType = VkStructureType(1000148000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000148001) +const VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000148002) +const VK_BLEND_OP_ZERO_EXT*: VkBlendOp = VkBlendOp(1000148000) +const VK_BLEND_OP_SRC_EXT*: VkBlendOp = VkBlendOp(1000148001) +const VK_BLEND_OP_DST_EXT*: VkBlendOp = VkBlendOp(1000148002) +const VK_BLEND_OP_SRC_OVER_EXT*: VkBlendOp = VkBlendOp(1000148003) +const VK_BLEND_OP_DST_OVER_EXT*: VkBlendOp = VkBlendOp(1000148004) +const VK_BLEND_OP_SRC_IN_EXT*: VkBlendOp = VkBlendOp(1000148005) +const VK_BLEND_OP_DST_IN_EXT*: VkBlendOp = VkBlendOp(1000148006) +const VK_BLEND_OP_SRC_OUT_EXT*: VkBlendOp = VkBlendOp(1000148007) +const VK_BLEND_OP_DST_OUT_EXT*: VkBlendOp = VkBlendOp(1000148008) +const VK_BLEND_OP_SRC_ATOP_EXT*: VkBlendOp = VkBlendOp(1000148009) +const VK_BLEND_OP_DST_ATOP_EXT*: VkBlendOp = VkBlendOp(1000148010) +const VK_BLEND_OP_XOR_EXT*: VkBlendOp = VkBlendOp(1000148011) +const VK_BLEND_OP_MULTIPLY_EXT*: VkBlendOp = VkBlendOp(1000148012) +const VK_BLEND_OP_SCREEN_EXT*: VkBlendOp = VkBlendOp(1000148013) +const VK_BLEND_OP_OVERLAY_EXT*: VkBlendOp = VkBlendOp(1000148014) +const VK_BLEND_OP_DARKEN_EXT*: VkBlendOp = VkBlendOp(1000148015) +const VK_BLEND_OP_LIGHTEN_EXT*: VkBlendOp = VkBlendOp(1000148016) +const VK_BLEND_OP_COLORDODGE_EXT*: VkBlendOp = VkBlendOp(1000148017) +const VK_BLEND_OP_COLORBURN_EXT*: VkBlendOp = VkBlendOp(1000148018) +const VK_BLEND_OP_HARDLIGHT_EXT*: VkBlendOp = VkBlendOp(1000148019) +const VK_BLEND_OP_SOFTLIGHT_EXT*: VkBlendOp = VkBlendOp(1000148020) +const VK_BLEND_OP_DIFFERENCE_EXT*: VkBlendOp = VkBlendOp(1000148021) +const VK_BLEND_OP_EXCLUSION_EXT*: VkBlendOp = VkBlendOp(1000148022) +const VK_BLEND_OP_INVERT_EXT*: VkBlendOp = VkBlendOp(1000148023) +const VK_BLEND_OP_INVERT_RGB_EXT*: VkBlendOp = VkBlendOp(1000148024) +const VK_BLEND_OP_LINEARDODGE_EXT*: VkBlendOp = VkBlendOp(1000148025) +const VK_BLEND_OP_LINEARBURN_EXT*: VkBlendOp = VkBlendOp(1000148026) +const VK_BLEND_OP_VIVIDLIGHT_EXT*: VkBlendOp = VkBlendOp(1000148027) +const VK_BLEND_OP_LINEARLIGHT_EXT*: VkBlendOp = VkBlendOp(1000148028) +const VK_BLEND_OP_PINLIGHT_EXT*: VkBlendOp = VkBlendOp(1000148029) +const VK_BLEND_OP_HARDMIX_EXT*: VkBlendOp = VkBlendOp(1000148030) +const VK_BLEND_OP_HSL_HUE_EXT*: VkBlendOp = VkBlendOp(1000148031) +const VK_BLEND_OP_HSL_SATURATION_EXT*: VkBlendOp = VkBlendOp(1000148032) +const VK_BLEND_OP_HSL_COLOR_EXT*: VkBlendOp = VkBlendOp(1000148033) +const VK_BLEND_OP_HSL_LUMINOSITY_EXT*: VkBlendOp = VkBlendOp(1000148034) +const VK_BLEND_OP_PLUS_EXT*: VkBlendOp = VkBlendOp(1000148035) +const VK_BLEND_OP_PLUS_CLAMPED_EXT*: VkBlendOp = VkBlendOp(1000148036) +const VK_BLEND_OP_PLUS_CLAMPED_ALPHA_EXT*: VkBlendOp = VkBlendOp(1000148037) +const VK_BLEND_OP_PLUS_DARKER_EXT*: VkBlendOp = VkBlendOp(1000148038) +const VK_BLEND_OP_MINUS_EXT*: VkBlendOp = VkBlendOp(1000148039) +const VK_BLEND_OP_MINUS_CLAMPED_EXT*: VkBlendOp = VkBlendOp(1000148040) +const VK_BLEND_OP_CONTRAST_EXT*: VkBlendOp = VkBlendOp(1000148041) +const VK_BLEND_OP_INVERT_OVG_EXT*: VkBlendOp = VkBlendOp(1000148042) +const VK_BLEND_OP_RED_EXT*: VkBlendOp = VkBlendOp(1000148043) +const VK_BLEND_OP_GREEN_EXT*: VkBlendOp = VkBlendOp(1000148044) +const VK_BLEND_OP_BLUE_EXT*: VkBlendOp = VkBlendOp(1000148045) +const VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT*: VkAccessFlagBits = VkAccessFlagBits(524288) + +# Extension: VK_NV_fragment_coverage_to_color +const VK_NV_FRAGMENT_COVERAGE_TO_COLOR_SPEC_VERSION* = 1 +const VK_NV_FRAGMENT_COVERAGE_TO_COLOR_EXTENSION_NAME* = "VK_NV_fragment_coverage_to_color" +const VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000149000) + +# Extension: VK_KHR_acceleration_structure +const VK_KHR_ACCELERATION_STRUCTURE_SPEC_VERSION* = 13 +const VK_KHR_ACCELERATION_STRUCTURE_EXTENSION_NAME* = "VK_KHR_acceleration_structure" +const VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR*: VkStructureType = VkStructureType(1000150007) +const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR*: VkStructureType = VkStructureType(1000150000) +const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR*: VkStructureType = VkStructureType(1000150002) +const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR*: VkStructureType = VkStructureType(1000150003) +const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR*: VkStructureType = VkStructureType(1000150004) +const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR*: VkStructureType = VkStructureType(1000150005) +const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR*: VkStructureType = VkStructureType(1000150006) +const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_INFO_KHR*: VkStructureType = VkStructureType(1000150009) +const VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR*: VkStructureType = VkStructureType(1000150010) +const VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR*: VkStructureType = VkStructureType(1000150011) +const VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR*: VkStructureType = VkStructureType(1000150012) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR*: VkStructureType = VkStructureType(1000150013) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000150014) +const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000150017) +const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR*: VkStructureType = VkStructureType(1000150020) +const VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR*: VkPipelineStageFlagBits = VkPipelineStageFlagBits(33554432) +const VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR*: VkDescriptorType = VkDescriptorType(1000150000) +const VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR*: VkAccessFlagBits = VkAccessFlagBits(2097152) +const VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR*: VkAccessFlagBits = VkAccessFlagBits(4194304) +const VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR*: VkQueryType = VkQueryType(1000150000) +const VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR*: VkQueryType = VkQueryType(1000150001) +const VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR*: VkObjectType = VkObjectType(1000150000) +const VK_INDEX_TYPE_NONE_KHR*: VkIndexType = VkIndexType(1000165000) +const VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(536870912) +const VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(524288) +const VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(1048576) +const VK_FORMAT_FEATURE_2_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(536870912) +const VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT*: VkDebugReportObjectTypeEXT = VkDebugReportObjectTypeEXT(1000150000) + +# Extension: VK_KHR_ray_tracing_pipeline +const VK_KHR_RAY_TRACING_PIPELINE_SPEC_VERSION* = 1 +const VK_KHR_RAY_TRACING_PIPELINE_EXTENSION_NAME* = "VK_KHR_ray_tracing_pipeline" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR*: VkStructureType = VkStructureType(1000347000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000347001) +const VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000150015) +const VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000150016) +const VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000150018) +const VK_SHADER_STAGE_RAYGEN_BIT_KHR*: VkShaderStageFlagBits = VkShaderStageFlagBits(256) +const VK_SHADER_STAGE_ANY_HIT_BIT_KHR*: VkShaderStageFlagBits = VkShaderStageFlagBits(512) +const VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR*: VkShaderStageFlagBits = VkShaderStageFlagBits(1024) +const VK_SHADER_STAGE_MISS_BIT_KHR*: VkShaderStageFlagBits = VkShaderStageFlagBits(2048) +const VK_SHADER_STAGE_INTERSECTION_BIT_KHR*: VkShaderStageFlagBits = VkShaderStageFlagBits(4096) +const VK_SHADER_STAGE_CALLABLE_BIT_KHR*: VkShaderStageFlagBits = VkShaderStageFlagBits(8192) +const VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR*: VkPipelineStageFlagBits = VkPipelineStageFlagBits(2097152) +const VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(1024) +const VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR*: VkPipelineBindPoint = VkPipelineBindPoint(1000165000) +const VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(16384) +const VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(32768) +const VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(65536) +const VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(131072) +const VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(4096) +const VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(8192) +const VK_PIPELINE_CREATE_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(524288) +const VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR*: VkDynamicState = VkDynamicState(1000347000) + +# Extension: VK_KHR_ray_query +const VK_KHR_RAY_QUERY_SPEC_VERSION* = 1 +const VK_KHR_RAY_QUERY_EXTENSION_NAME* = "VK_KHR_ray_query" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR*: VkStructureType = VkStructureType(1000348013) + +# Extension: VK_NV_extension_152 +const VK_NV_EXTENSION_152_SPEC_VERSION* = 0 +const VK_NV_EXTENSION_152_EXTENSION_NAME* = "VK_NV_extension_152" + +# Extension: VK_NV_framebuffer_mixed_samples +const VK_NV_FRAMEBUFFER_MIXED_SAMPLES_SPEC_VERSION* = 1 +const VK_NV_FRAMEBUFFER_MIXED_SAMPLES_EXTENSION_NAME* = "VK_NV_framebuffer_mixed_samples" +const VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000152000) + +# Extension: VK_NV_fill_rectangle +const VK_NV_FILL_RECTANGLE_SPEC_VERSION* = 1 +const VK_NV_FILL_RECTANGLE_EXTENSION_NAME* = "VK_NV_fill_rectangle" +const VK_POLYGON_MODE_FILL_RECTANGLE_NV*: VkPolygonMode = VkPolygonMode(1000153000) + +# Extension: VK_NV_shader_sm_builtins +const VK_NV_SHADER_SM_BUILTINS_SPEC_VERSION* = 1 +const VK_NV_SHADER_SM_BUILTINS_EXTENSION_NAME* = "VK_NV_shader_sm_builtins" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV*: VkStructureType = VkStructureType(1000154000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV*: VkStructureType = VkStructureType(1000154001) + +# Extension: VK_EXT_post_depth_coverage +const VK_EXT_POST_DEPTH_COVERAGE_SPEC_VERSION* = 1 +const VK_EXT_POST_DEPTH_COVERAGE_EXTENSION_NAME* = "VK_EXT_post_depth_coverage" + +# Extension: VK_KHR_sampler_ycbcr_conversion +const VK_KHR_SAMPLER_YCBCR_CONVERSION_SPEC_VERSION* = 14 +const VK_KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME* = "VK_KHR_sampler_ycbcr_conversion" +template VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO_KHR* = + VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO +template VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO_KHR* = + VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO +template VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO_KHR* = + VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO +template VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO_KHR* = + VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES +template VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES_KHR* = + VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES +template VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR* = + VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION +template VK_FORMAT_G8B8G8R8_422_UNORM_KHR* = + VK_FORMAT_G8B8G8R8_422_UNORM +template VK_FORMAT_B8G8R8G8_422_UNORM_KHR* = + VK_FORMAT_B8G8R8G8_422_UNORM +template VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM_KHR* = + VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM +template VK_FORMAT_G8_B8R8_2PLANE_420_UNORM_KHR* = + VK_FORMAT_G8_B8R8_2PLANE_420_UNORM +template VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM_KHR* = + VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM +template VK_FORMAT_G8_B8R8_2PLANE_422_UNORM_KHR* = + VK_FORMAT_G8_B8R8_2PLANE_422_UNORM +template VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM_KHR* = + VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM +template VK_FORMAT_R10X6_UNORM_PACK16_KHR* = + VK_FORMAT_R10X6_UNORM_PACK16 +template VK_FORMAT_R10X6G10X6_UNORM_2PACK16_KHR* = + VK_FORMAT_R10X6G10X6_UNORM_2PACK16 +template VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16_KHR* = + VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16 +template VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16_KHR* = + VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16 +template VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16_KHR* = + VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16 +template VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16_KHR* = + VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16 +template VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16_KHR* = + VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16 +template VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16_KHR* = + VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16 +template VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16_KHR* = + VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16 +template VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16_KHR* = + VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16 +template VK_FORMAT_R12X4_UNORM_PACK16_KHR* = + VK_FORMAT_R12X4_UNORM_PACK16 +template VK_FORMAT_R12X4G12X4_UNORM_2PACK16_KHR* = + VK_FORMAT_R12X4G12X4_UNORM_2PACK16 +template VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16_KHR* = + VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16 +template VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16_KHR* = + VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16 +template VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16_KHR* = + VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16 +template VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16_KHR* = + VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16 +template VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16_KHR* = + VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16 +template VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16_KHR* = + VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16 +template VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16_KHR* = + VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16 +template VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16_KHR* = + VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16 +template VK_FORMAT_G16B16G16R16_422_UNORM_KHR* = + VK_FORMAT_G16B16G16R16_422_UNORM +template VK_FORMAT_B16G16R16G16_422_UNORM_KHR* = + VK_FORMAT_B16G16R16G16_422_UNORM +template VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM_KHR* = + VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM +template VK_FORMAT_G16_B16R16_2PLANE_420_UNORM_KHR* = + VK_FORMAT_G16_B16R16_2PLANE_420_UNORM +template VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM_KHR* = + VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM +template VK_FORMAT_G16_B16R16_2PLANE_422_UNORM_KHR* = + VK_FORMAT_G16_B16R16_2PLANE_422_UNORM +template VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM_KHR* = + VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM +template VK_IMAGE_ASPECT_PLANE_0_BIT_KHR* = + VK_IMAGE_ASPECT_PLANE_0_BIT +template VK_IMAGE_ASPECT_PLANE_1_BIT_KHR* = + VK_IMAGE_ASPECT_PLANE_1_BIT +template VK_IMAGE_ASPECT_PLANE_2_BIT_KHR* = + VK_IMAGE_ASPECT_PLANE_2_BIT +template VK_IMAGE_CREATE_DISJOINT_BIT_KHR* = + VK_IMAGE_CREATE_DISJOINT_BIT +template VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT_KHR* = + VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT +template VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT_KHR* = + VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT +template VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT_KHR* = + VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT +template VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR* = + VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT +template VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR* = + VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT +template VK_FORMAT_FEATURE_DISJOINT_BIT_KHR* = + VK_FORMAT_FEATURE_DISJOINT_BIT +template VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR* = + VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT +template VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY_KHR* = + VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY +template VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY_KHR* = + VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY +template VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709_KHR* = + VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709 +template VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601_KHR* = + VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601 +template VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020_KHR* = + VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020 +template VK_SAMPLER_YCBCR_RANGE_ITU_FULL_KHR* = + VK_SAMPLER_YCBCR_RANGE_ITU_FULL +template VK_SAMPLER_YCBCR_RANGE_ITU_NARROW_KHR* = + VK_SAMPLER_YCBCR_RANGE_ITU_NARROW +template VK_CHROMA_LOCATION_COSITED_EVEN_KHR* = + VK_CHROMA_LOCATION_COSITED_EVEN +template VK_CHROMA_LOCATION_MIDPOINT_KHR* = + VK_CHROMA_LOCATION_MIDPOINT + +# Extension: VK_KHR_bind_memory2 +const VK_KHR_BIND_MEMORY_2_SPEC_VERSION* = 1 +const VK_KHR_BIND_MEMORY_2_EXTENSION_NAME* = "VK_KHR_bind_memory2" +template VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO_KHR* = + VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO +template VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO_KHR* = + VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO +template VK_IMAGE_CREATE_ALIAS_BIT_KHR* = + VK_IMAGE_CREATE_ALIAS_BIT + +# Extension: VK_EXT_image_drm_format_modifier +const VK_EXT_IMAGE_DRM_FORMAT_MODIFIER_SPEC_VERSION* = 2 +const VK_EXT_IMAGE_DRM_FORMAT_MODIFIER_EXTENSION_NAME* = "VK_EXT_image_drm_format_modifier" +const VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT*: VkResult = VkResult(-1000158000) +const VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT*: VkStructureType = VkStructureType(1000158000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT*: VkStructureType = VkStructureType(1000158002) +const VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000158003) +const VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000158004) +const VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000158005) +const VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT*: VkImageTiling = VkImageTiling(1000158000) +const VK_IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT*: VkImageAspectFlagBits = VkImageAspectFlagBits(128) +const VK_IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT*: VkImageAspectFlagBits = VkImageAspectFlagBits(256) +const VK_IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT*: VkImageAspectFlagBits = VkImageAspectFlagBits(512) +const VK_IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT*: VkImageAspectFlagBits = VkImageAspectFlagBits(1024) +const VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT*: VkStructureType = VkStructureType(1000158006) + +# Extension: VK_EXT_extension_160 +const VK_EXT_EXTENSION_160_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_160_EXTENSION_NAME* = "VK_EXT_extension_160" + +# Extension: VK_EXT_validation_cache +const VK_EXT_VALIDATION_CACHE_SPEC_VERSION* = 1 +const VK_EXT_VALIDATION_CACHE_EXTENSION_NAME* = "VK_EXT_validation_cache" +const VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000160000) +const VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000160001) +const VK_OBJECT_TYPE_VALIDATION_CACHE_EXT*: VkObjectType = VkObjectType(1000160000) + +# Extension: VK_EXT_descriptor_indexing +const VK_EXT_DESCRIPTOR_INDEXING_SPEC_VERSION* = 2 +const VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME* = "VK_EXT_descriptor_indexing" +template VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT* = + VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES +template VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT* = + VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO +template VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT* = + VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT +template VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT* = + VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT +template VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT* = + VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT +template VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT* = + VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT +template VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT* = + VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT +template VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT* = + VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT +template VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT* = + VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT +template VK_ERROR_FRAGMENTATION_EXT* = + VK_ERROR_FRAGMENTATION + +# Extension: VK_EXT_shader_viewport_index_layer +const VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_SPEC_VERSION* = 1 +const VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_EXTENSION_NAME* = "VK_EXT_shader_viewport_index_layer" + +# Extension: VK_KHR_portability_subset +const VK_KHR_PORTABILITY_SUBSET_SPEC_VERSION* = 1 +const VK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME* = "VK_KHR_portability_subset" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR*: VkStructureType = VkStructureType(1000163000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000163001) + +# Extension: VK_NV_shading_rate_image +const VK_NV_SHADING_RATE_IMAGE_SPEC_VERSION* = 3 +const VK_NV_SHADING_RATE_IMAGE_EXTENSION_NAME* = "VK_NV_shading_rate_image" +const VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000164000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV*: VkStructureType = VkStructureType(1000164001) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV*: VkStructureType = VkStructureType(1000164002) +template VK_IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV* = + VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR +const VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV*: VkDynamicState = VkDynamicState(1000164004) +template VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV* = + VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR +template VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV* = + VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR +template VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV* = + VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR +const VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000164005) +const VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV*: VkDynamicState = VkDynamicState(1000164006) + +# Extension: VK_NV_ray_tracing +const VK_NV_RAY_TRACING_SPEC_VERSION* = 3 +const VK_NV_RAY_TRACING_EXTENSION_NAME* = "VK_NV_ray_tracing" +const VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000165000) +const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000165001) +const VK_STRUCTURE_TYPE_GEOMETRY_NV*: VkStructureType = VkStructureType(1000165003) +const VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV*: VkStructureType = VkStructureType(1000165004) +const VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV*: VkStructureType = VkStructureType(1000165005) +const VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV*: VkStructureType = VkStructureType(1000165006) +const VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV*: VkStructureType = VkStructureType(1000165007) +const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV*: VkStructureType = VkStructureType(1000165008) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV*: VkStructureType = VkStructureType(1000165009) +const VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000165011) +const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV*: VkStructureType = VkStructureType(1000165012) +template VK_SHADER_STAGE_RAYGEN_BIT_NV* = + VK_SHADER_STAGE_RAYGEN_BIT_KHR +template VK_SHADER_STAGE_ANY_HIT_BIT_NV* = + VK_SHADER_STAGE_ANY_HIT_BIT_KHR +template VK_SHADER_STAGE_CLOSEST_HIT_BIT_NV* = + VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR +template VK_SHADER_STAGE_MISS_BIT_NV* = + VK_SHADER_STAGE_MISS_BIT_KHR +template VK_SHADER_STAGE_INTERSECTION_BIT_NV* = + VK_SHADER_STAGE_INTERSECTION_BIT_KHR +template VK_SHADER_STAGE_CALLABLE_BIT_NV* = + VK_SHADER_STAGE_CALLABLE_BIT_KHR +template VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV* = + VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR +template VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV* = + VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR +template VK_BUFFER_USAGE_RAY_TRACING_BIT_NV* = + VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR +template VK_PIPELINE_BIND_POINT_RAY_TRACING_NV* = + VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR +const VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV*: VkDescriptorType = VkDescriptorType(1000165000) +template VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_NV* = + VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR +template VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_NV* = + VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR +const VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV*: VkQueryType = VkQueryType(1000165000) +const VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(32) +const VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV*: VkObjectType = VkObjectType(1000165000) +template VK_INDEX_TYPE_NONE_NV* = + VK_INDEX_TYPE_NONE_KHR +template VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_NV* = + VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR +template VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_NV* = + VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR +template VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV* = + VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR +template VK_GEOMETRY_TYPE_TRIANGLES_NV* = + VK_GEOMETRY_TYPE_TRIANGLES_KHR +template VK_GEOMETRY_TYPE_AABBS_NV* = + VK_GEOMETRY_TYPE_AABBS_KHR +template VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV* = + VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR +template VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NV* = + VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR +template VK_GEOMETRY_OPAQUE_BIT_NV* = + VK_GEOMETRY_OPAQUE_BIT_KHR +template VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_NV* = + VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR +template VK_GEOMETRY_INSTANCE_TRIANGLE_CULL_DISABLE_BIT_NV* = + VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR +template VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_NV* = + VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR +template VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_NV* = + VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR +template VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_NV* = + VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR +template VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NV* = + VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR +template VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_NV* = + VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR +template VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_NV* = + VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR +template VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_NV* = + VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR +template VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_NV* = + VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR +template VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NV* = + VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR +template VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NV* = + VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR +const VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT*: VkDebugReportObjectTypeEXT = VkDebugReportObjectTypeEXT(1000165000) + +# Extension: VK_NV_representative_fragment_test +const VK_NV_REPRESENTATIVE_FRAGMENT_TEST_SPEC_VERSION* = 2 +const VK_NV_REPRESENTATIVE_FRAGMENT_TEST_EXTENSION_NAME* = "VK_NV_representative_fragment_test" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV*: VkStructureType = VkStructureType(1000166000) +const VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000166001) + +# Extension: VK_NV_extension_168 +const VK_NV_EXTENSION_168_SPEC_VERSION* = 0 +const VK_NV_EXTENSION_168_EXTENSION_NAME* = "VK_NV_extension_168" + +# Extension: VK_KHR_maintenance3 +const VK_KHR_MAINTENANCE_3_SPEC_VERSION* = 1 +const VK_KHR_MAINTENANCE_3_EXTENSION_NAME* = "VK_KHR_maintenance3" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES +template VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT_KHR* = + VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT + +# Extension: VK_KHR_draw_indirect_count +const VK_KHR_DRAW_INDIRECT_COUNT_SPEC_VERSION* = 1 +const VK_KHR_DRAW_INDIRECT_COUNT_EXTENSION_NAME* = "VK_KHR_draw_indirect_count" + +# Extension: VK_EXT_filter_cubic +const VK_EXT_FILTER_CUBIC_SPEC_VERSION* = 3 +const VK_EXT_FILTER_CUBIC_EXTENSION_NAME* = "VK_EXT_filter_cubic" +const VK_FILTER_CUBIC_EXT*: VkFilter = VkFilter(1000015000) +const VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(8192) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT*: VkStructureType = VkStructureType(1000170000) +const VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000170001) + +# Extension: VK_QCOM_render_pass_shader_resolve +const VK_QCOM_RENDER_PASS_SHADER_RESOLVE_SPEC_VERSION* = 4 +const VK_QCOM_RENDER_PASS_SHADER_RESOLVE_EXTENSION_NAME* = "VK_QCOM_render_pass_shader_resolve" +const VK_SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM*: VkSubpassDescriptionFlagBits = VkSubpassDescriptionFlagBits(4) +const VK_SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM*: VkSubpassDescriptionFlagBits = VkSubpassDescriptionFlagBits(8) + +# Extension: VK_QCOM_extension_173 +const VK_QCOM_EXTENSION_173_SPEC_VERSION* = 0 +const VK_QCOM_EXTENSION_173_EXTENSION_NAME* = "VK_QCOM_extension_173" +const VK_BUFFER_USAGE_RESERVED_18_BIT_QCOM*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(262144) +const VK_IMAGE_USAGE_RESERVED_16_BIT_QCOM*: VkImageUsageFlagBits = VkImageUsageFlagBits(65536) +const VK_IMAGE_USAGE_RESERVED_17_BIT_QCOM*: VkImageUsageFlagBits = VkImageUsageFlagBits(131072) +const VK_BUFFER_USAGE_2_RESERVED_18_BIT_QCOM*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(262144) + +# Extension: VK_QCOM_extension_174 +const VK_QCOM_EXTENSION_174_SPEC_VERSION* = 0 +const VK_QCOM_EXTENSION_174_EXTENSION_NAME* = "VK_QCOM_extension_174" + +# Extension: VK_EXT_global_priority +const VK_EXT_GLOBAL_PRIORITY_SPEC_VERSION* = 2 +const VK_EXT_GLOBAL_PRIORITY_EXTENSION_NAME* = "VK_EXT_global_priority" +template VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT* = + VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR +template VK_ERROR_NOT_PERMITTED_EXT* = + VK_ERROR_NOT_PERMITTED_KHR + +# Extension: VK_KHR_shader_subgroup_extended_types +const VK_KHR_SHADER_SUBGROUP_EXTENDED_TYPES_SPEC_VERSION* = 1 +const VK_KHR_SHADER_SUBGROUP_EXTENDED_TYPES_EXTENSION_NAME* = "VK_KHR_shader_subgroup_extended_types" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES + +# Extension: VK_EXT_extension_177 +const VK_EXT_EXTENSION_177_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_177_EXTENSION_NAME* = "VK_EXT_extension_177" + +# Extension: VK_KHR_8bit_storage +const VK_KHR_8BIT_STORAGE_SPEC_VERSION* = 1 +const VK_KHR_8BIT_STORAGE_EXTENSION_NAME* = "VK_KHR_8bit_storage" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES + +# Extension: VK_EXT_external_memory_host +const VK_EXT_EXTERNAL_MEMORY_HOST_SPEC_VERSION* = 1 +const VK_EXT_EXTERNAL_MEMORY_HOST_EXTENSION_NAME* = "VK_EXT_external_memory_host" +const VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT*: VkStructureType = VkStructureType(1000178000) +const VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000178001) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000178002) +const VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT*: VkExternalMemoryHandleTypeFlagBits = VkExternalMemoryHandleTypeFlagBits(128) +const VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT*: VkExternalMemoryHandleTypeFlagBits = VkExternalMemoryHandleTypeFlagBits(256) + +# Extension: VK_AMD_buffer_marker +const VK_AMD_BUFFER_MARKER_SPEC_VERSION* = 1 +const VK_AMD_BUFFER_MARKER_EXTENSION_NAME* = "VK_AMD_buffer_marker" + +# Extension: VK_KHR_shader_atomic_int64 +const VK_KHR_SHADER_ATOMIC_INT64_SPEC_VERSION* = 1 +const VK_KHR_SHADER_ATOMIC_INT64_EXTENSION_NAME* = "VK_KHR_shader_atomic_int64" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES + +# Extension: VK_KHR_shader_clock +const VK_KHR_SHADER_CLOCK_SPEC_VERSION* = 1 +const VK_KHR_SHADER_CLOCK_EXTENSION_NAME* = "VK_KHR_shader_clock" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR*: VkStructureType = VkStructureType(1000181000) + +# Extension: VK_AMD_extension_183 +const VK_AMD_EXTENSION_183_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_183_EXTENSION_NAME* = "VK_AMD_extension_183" + +# Extension: VK_AMD_pipeline_compiler_control +const VK_AMD_PIPELINE_COMPILER_CONTROL_SPEC_VERSION* = 1 +const VK_AMD_PIPELINE_COMPILER_CONTROL_EXTENSION_NAME* = "VK_AMD_pipeline_compiler_control" +const VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD*: VkStructureType = VkStructureType(1000183000) + +# Extension: VK_EXT_calibrated_timestamps +const VK_EXT_CALIBRATED_TIMESTAMPS_SPEC_VERSION* = 2 +const VK_EXT_CALIBRATED_TIMESTAMPS_EXTENSION_NAME* = "VK_EXT_calibrated_timestamps" +const VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT*: VkStructureType = VkStructureType(1000184000) + +# Extension: VK_AMD_shader_core_properties +const VK_AMD_SHADER_CORE_PROPERTIES_SPEC_VERSION* = 2 +const VK_AMD_SHADER_CORE_PROPERTIES_EXTENSION_NAME* = "VK_AMD_shader_core_properties" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD*: VkStructureType = VkStructureType(1000185000) + +# Extension: VK_AMD_extension_187 +const VK_AMD_EXTENSION_187_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_187_EXTENSION_NAME* = "VK_AMD_extension_187" + +# Extension: VK_KHR_video_decode_h265 +const VK_KHR_VIDEO_DECODE_H265_SPEC_VERSION* = 7 +const VK_KHR_VIDEO_DECODE_H265_EXTENSION_NAME* = "VK_KHR_video_decode_h265" +const VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_KHR*: VkStructureType = VkStructureType(1000187000) +const VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000187001) +const VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_KHR*: VkStructureType = VkStructureType(1000187002) +const VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_INFO_KHR*: VkStructureType = VkStructureType(1000187003) +const VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_KHR*: VkStructureType = VkStructureType(1000187004) +const VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_KHR*: VkStructureType = VkStructureType(1000187005) +const VK_VIDEO_CODEC_OPERATION_DECODE_H265_BIT_KHR*: VkVideoCodecOperationFlagBitsKHR = VkVideoCodecOperationFlagBitsKHR(2) + +# Extension: VK_KHR_global_priority +const VK_KHR_GLOBAL_PRIORITY_SPEC_VERSION* = 1 +const VK_KHR_GLOBAL_PRIORITY_EXTENSION_NAME* = "VK_KHR_global_priority" +const VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000174000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR*: VkStructureType = VkStructureType(1000388000) +const VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000388001) +const VK_ERROR_NOT_PERMITTED_KHR*: VkResult = VkResult(-1000174001) + +# Extension: VK_AMD_memory_overallocation_behavior +const VK_AMD_MEMORY_OVERALLOCATION_BEHAVIOR_SPEC_VERSION* = 1 +const VK_AMD_MEMORY_OVERALLOCATION_BEHAVIOR_EXTENSION_NAME* = "VK_AMD_memory_overallocation_behavior" +const VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD*: VkStructureType = VkStructureType(1000189000) + +# Extension: VK_EXT_vertex_attribute_divisor +const VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_SPEC_VERSION* = 3 +const VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME* = "VK_EXT_vertex_attribute_divisor" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000190000) +const VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000190001) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT*: VkStructureType = VkStructureType(1000190002) + +# Extension: VK_GGP_frame_token +const VK_GGP_FRAME_TOKEN_SPEC_VERSION* = 1 +const VK_GGP_FRAME_TOKEN_EXTENSION_NAME* = "VK_GGP_frame_token" +const VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP*: VkStructureType = VkStructureType(1000191000) + +# Extension: VK_EXT_pipeline_creation_feedback +const VK_EXT_PIPELINE_CREATION_FEEDBACK_SPEC_VERSION* = 1 +const VK_EXT_PIPELINE_CREATION_FEEDBACK_EXTENSION_NAME* = "VK_EXT_pipeline_creation_feedback" +template VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT* = + VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO + +# Extension: VK_GOOGLE_extension_194 +const VK_GOOGLE_EXTENSION_194_SPEC_VERSION* = 0 +const VK_GOOGLE_EXTENSION_194_EXTENSION_NAME* = "VK_GOOGLE_extension_194" + +# Extension: VK_GOOGLE_extension_195 +const VK_GOOGLE_EXTENSION_195_SPEC_VERSION* = 0 +const VK_GOOGLE_EXTENSION_195_EXTENSION_NAME* = "VK_GOOGLE_extension_195" + +# Extension: VK_GOOGLE_extension_196 +const VK_GOOGLE_EXTENSION_196_SPEC_VERSION* = 0 +const VK_GOOGLE_EXTENSION_196_EXTENSION_NAME* = "VK_GOOGLE_extension_196" +template VK_PIPELINE_CACHE_CREATE_READ_ONLY_BIT_EXT* = + VK_PIPELINE_CACHE_CREATE_READ_ONLY_BIT + +# Extension: VK_KHR_driver_properties +const VK_KHR_DRIVER_PROPERTIES_SPEC_VERSION* = 1 +const VK_KHR_DRIVER_PROPERTIES_EXTENSION_NAME* = "VK_KHR_driver_properties" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES +template VK_DRIVER_ID_AMD_PROPRIETARY_KHR* = + VK_DRIVER_ID_AMD_PROPRIETARY +template VK_DRIVER_ID_AMD_OPEN_SOURCE_KHR* = + VK_DRIVER_ID_AMD_OPEN_SOURCE +template VK_DRIVER_ID_MESA_RADV_KHR* = + VK_DRIVER_ID_MESA_RADV +template VK_DRIVER_ID_NVIDIA_PROPRIETARY_KHR* = + VK_DRIVER_ID_NVIDIA_PROPRIETARY +template VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS_KHR* = + VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS +template VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA_KHR* = + VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA +template VK_DRIVER_ID_IMAGINATION_PROPRIETARY_KHR* = + VK_DRIVER_ID_IMAGINATION_PROPRIETARY +template VK_DRIVER_ID_QUALCOMM_PROPRIETARY_KHR* = + VK_DRIVER_ID_QUALCOMM_PROPRIETARY +template VK_DRIVER_ID_ARM_PROPRIETARY_KHR* = + VK_DRIVER_ID_ARM_PROPRIETARY +template VK_DRIVER_ID_GOOGLE_SWIFTSHADER_KHR* = + VK_DRIVER_ID_GOOGLE_SWIFTSHADER +template VK_DRIVER_ID_GGP_PROPRIETARY_KHR* = + VK_DRIVER_ID_GGP_PROPRIETARY +template VK_DRIVER_ID_BROADCOM_PROPRIETARY_KHR* = + VK_DRIVER_ID_BROADCOM_PROPRIETARY + +# Extension: VK_KHR_shader_float_controls +const VK_KHR_SHADER_FLOAT_CONTROLS_SPEC_VERSION* = 4 +const VK_KHR_SHADER_FLOAT_CONTROLS_EXTENSION_NAME* = "VK_KHR_shader_float_controls" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES +template VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY_KHR* = + VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY +template VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL_KHR* = + VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL +template VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE_KHR* = + VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE + +# Extension: VK_NV_shader_subgroup_partitioned +const VK_NV_SHADER_SUBGROUP_PARTITIONED_SPEC_VERSION* = 1 +const VK_NV_SHADER_SUBGROUP_PARTITIONED_EXTENSION_NAME* = "VK_NV_shader_subgroup_partitioned" +const VK_SUBGROUP_FEATURE_PARTITIONED_BIT_NV*: VkSubgroupFeatureFlagBits = VkSubgroupFeatureFlagBits(256) + +# Extension: VK_KHR_depth_stencil_resolve +const VK_KHR_DEPTH_STENCIL_RESOLVE_SPEC_VERSION* = 1 +const VK_KHR_DEPTH_STENCIL_RESOLVE_EXTENSION_NAME* = "VK_KHR_depth_stencil_resolve" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES +template VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE_KHR* = + VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE +template VK_RESOLVE_MODE_NONE_KHR* = + VK_RESOLVE_MODE_NONE +template VK_RESOLVE_MODE_SAMPLE_ZERO_BIT_KHR* = + VK_RESOLVE_MODE_SAMPLE_ZERO_BIT +template VK_RESOLVE_MODE_AVERAGE_BIT_KHR* = + VK_RESOLVE_MODE_AVERAGE_BIT +template VK_RESOLVE_MODE_MIN_BIT_KHR* = + VK_RESOLVE_MODE_MIN_BIT +template VK_RESOLVE_MODE_MAX_BIT_KHR* = + VK_RESOLVE_MODE_MAX_BIT + +# Extension: VK_KHR_swapchain_mutable_format +const VK_KHR_SWAPCHAIN_MUTABLE_FORMAT_SPEC_VERSION* = 1 +const VK_KHR_SWAPCHAIN_MUTABLE_FORMAT_EXTENSION_NAME* = "VK_KHR_swapchain_mutable_format" +const VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR*: VkSwapchainCreateFlagBitsKHR = VkSwapchainCreateFlagBitsKHR(4) + +# Extension: VK_NV_compute_shader_derivatives +const VK_NV_COMPUTE_SHADER_DERIVATIVES_SPEC_VERSION* = 1 +const VK_NV_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME* = "VK_NV_compute_shader_derivatives" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV*: VkStructureType = VkStructureType(1000201000) + +# Extension: VK_NV_mesh_shader +const VK_NV_MESH_SHADER_SPEC_VERSION* = 1 +const VK_NV_MESH_SHADER_EXTENSION_NAME* = "VK_NV_mesh_shader" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV*: VkStructureType = VkStructureType(1000202000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV*: VkStructureType = VkStructureType(1000202001) +template VK_SHADER_STAGE_TASK_BIT_NV* = + VK_SHADER_STAGE_TASK_BIT_EXT +template VK_SHADER_STAGE_MESH_BIT_NV* = + VK_SHADER_STAGE_MESH_BIT_EXT +template VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV* = + VK_PIPELINE_STAGE_TASK_SHADER_BIT_EXT +template VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV* = + VK_PIPELINE_STAGE_MESH_SHADER_BIT_EXT + +# Extension: VK_NV_fragment_shader_barycentric +const VK_NV_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION* = 1 +const VK_NV_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME* = "VK_NV_fragment_shader_barycentric" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR + +# Extension: VK_NV_shader_image_footprint +const VK_NV_SHADER_IMAGE_FOOTPRINT_SPEC_VERSION* = 2 +const VK_NV_SHADER_IMAGE_FOOTPRINT_EXTENSION_NAME* = "VK_NV_shader_image_footprint" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV*: VkStructureType = VkStructureType(1000204000) + +# Extension: VK_NV_scissor_exclusive +const VK_NV_SCISSOR_EXCLUSIVE_SPEC_VERSION* = 2 +const VK_NV_SCISSOR_EXCLUSIVE_EXTENSION_NAME* = "VK_NV_scissor_exclusive" +const VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000205000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV*: VkStructureType = VkStructureType(1000205002) +const VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_ENABLE_NV*: VkDynamicState = VkDynamicState(1000205000) +const VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV*: VkDynamicState = VkDynamicState(1000205001) + +# Extension: VK_NV_device_diagnostic_checkpoints +const VK_NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_SPEC_VERSION* = 2 +const VK_NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_EXTENSION_NAME* = "VK_NV_device_diagnostic_checkpoints" +const VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV*: VkStructureType = VkStructureType(1000206000) +const VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV*: VkStructureType = VkStructureType(1000206001) + +# Extension: VK_KHR_timeline_semaphore +const VK_KHR_TIMELINE_SEMAPHORE_SPEC_VERSION* = 2 +const VK_KHR_TIMELINE_SEMAPHORE_EXTENSION_NAME* = "VK_KHR_timeline_semaphore" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES +template VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO_KHR* = + VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO +template VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO_KHR* = + VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO +template VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO_KHR* = + VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO +template VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO_KHR* = + VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO +template VK_SEMAPHORE_TYPE_BINARY_KHR* = + VK_SEMAPHORE_TYPE_BINARY +template VK_SEMAPHORE_TYPE_TIMELINE_KHR* = + VK_SEMAPHORE_TYPE_TIMELINE +template VK_SEMAPHORE_WAIT_ANY_BIT_KHR* = + VK_SEMAPHORE_WAIT_ANY_BIT + +# Extension: VK_KHR_extension_209 +const VK_KHR_EXTENSION_209_SPEC_VERSION* = 0 +const VK_KHR_EXTENSION_209_EXTENSION_NAME* = "VK_KHR_extension_209" + +# Extension: VK_INTEL_shader_integer_functions2 +const VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_SPEC_VERSION* = 1 +const VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_EXTENSION_NAME* = "VK_INTEL_shader_integer_functions2" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL*: VkStructureType = VkStructureType(1000209000) + +# Extension: VK_INTEL_performance_query +const VK_INTEL_PERFORMANCE_QUERY_SPEC_VERSION* = 2 +const VK_INTEL_PERFORMANCE_QUERY_EXTENSION_NAME* = "VK_INTEL_performance_query" +const VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL*: VkStructureType = VkStructureType(1000210000) +template VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTEL* = + VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL +const VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL*: VkStructureType = VkStructureType(1000210001) +const VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL*: VkStructureType = VkStructureType(1000210002) +const VK_STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL*: VkStructureType = VkStructureType(1000210003) +const VK_STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL*: VkStructureType = VkStructureType(1000210004) +const VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL*: VkStructureType = VkStructureType(1000210005) +const VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL*: VkQueryType = VkQueryType(1000210000) +const VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL*: VkObjectType = VkObjectType(1000210000) + +# Extension: VK_KHR_vulkan_memory_model +const VK_KHR_VULKAN_MEMORY_MODEL_SPEC_VERSION* = 3 +const VK_KHR_VULKAN_MEMORY_MODEL_EXTENSION_NAME* = "VK_KHR_vulkan_memory_model" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES + +# Extension: VK_EXT_pci_bus_info +const VK_EXT_PCI_BUS_INFO_SPEC_VERSION* = 2 +const VK_EXT_PCI_BUS_INFO_EXTENSION_NAME* = "VK_EXT_pci_bus_info" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000212000) + +# Extension: VK_AMD_display_native_hdr +const VK_AMD_DISPLAY_NATIVE_HDR_SPEC_VERSION* = 1 +const VK_AMD_DISPLAY_NATIVE_HDR_EXTENSION_NAME* = "VK_AMD_display_native_hdr" +const VK_STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD*: VkStructureType = VkStructureType(1000213000) +const VK_STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD*: VkStructureType = VkStructureType(1000213001) +const VK_COLOR_SPACE_DISPLAY_NATIVE_AMD*: VkColorSpaceKHR = VkColorSpaceKHR(1000213000) + +# Extension: VK_FUCHSIA_imagepipe_surface +const VK_FUCHSIA_IMAGEPIPE_SURFACE_SPEC_VERSION* = 1 +const VK_FUCHSIA_IMAGEPIPE_SURFACE_EXTENSION_NAME* = "VK_FUCHSIA_imagepipe_surface" +const VK_STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA*: VkStructureType = VkStructureType(1000214000) + +# Extension: VK_KHR_shader_terminate_invocation +const VK_KHR_SHADER_TERMINATE_INVOCATION_SPEC_VERSION* = 1 +const VK_KHR_SHADER_TERMINATE_INVOCATION_EXTENSION_NAME* = "VK_KHR_shader_terminate_invocation" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES + +# Extension: VK_GOOGLE_extension_217 +const VK_GOOGLE_EXTENSION_217_SPEC_VERSION* = 0 +const VK_GOOGLE_EXTENSION_217_EXTENSION_NAME* = "VK_GOOGLE_extension_217" + +# Extension: VK_EXT_metal_surface +const VK_EXT_METAL_SURFACE_SPEC_VERSION* = 1 +const VK_EXT_METAL_SURFACE_EXTENSION_NAME* = "VK_EXT_metal_surface" +const VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000217000) + +# Extension: VK_EXT_fragment_density_map +const VK_EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION* = 2 +const VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME* = "VK_EXT_fragment_density_map" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT*: VkStructureType = VkStructureType(1000218000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000218001) +const VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000218002) +const VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT*: VkImageCreateFlagBits = VkImageCreateFlagBits(16384) +const VK_IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT*: VkImageLayout = VkImageLayout(1000218000) +const VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT*: VkAccessFlagBits = VkAccessFlagBits(16777216) +const VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(16777216) +const VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT*: VkImageUsageFlagBits = VkImageUsageFlagBits(512) +const VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT*: VkImageViewCreateFlagBits = VkImageViewCreateFlagBits(1) +const VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT*: VkPipelineStageFlagBits = VkPipelineStageFlagBits(8388608) +const VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT*: VkSamplerCreateFlagBits = VkSamplerCreateFlagBits(1) +const VK_SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT*: VkSamplerCreateFlagBits = VkSamplerCreateFlagBits(2) +const VK_FORMAT_FEATURE_2_FRAGMENT_DENSITY_MAP_BIT_EXT*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(16777216) + +# Extension: VK_EXT_extension_220 +const VK_EXT_EXTENSION_220_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_220_EXTENSION_NAME* = "VK_EXT_extension_220" + +# Extension: VK_KHR_extension_221 +const VK_KHR_EXTENSION_221_SPEC_VERSION* = 0 +const VK_KHR_EXTENSION_221_EXTENSION_NAME* = "VK_KHR_extension_221" +const VK_RENDER_PASS_CREATE_RESERVED_0_BIT_KHR*: VkRenderPassCreateFlagBits = VkRenderPassCreateFlagBits(1) + +# Extension: VK_EXT_scalar_block_layout +const VK_EXT_SCALAR_BLOCK_LAYOUT_SPEC_VERSION* = 1 +const VK_EXT_SCALAR_BLOCK_LAYOUT_EXTENSION_NAME* = "VK_EXT_scalar_block_layout" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES_EXT* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES + +# Extension: VK_EXT_extension_223 +const VK_EXT_EXTENSION_223_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_223_EXTENSION_NAME* = "VK_EXT_extension_223" + +# Extension: VK_GOOGLE_hlsl_functionality1 +const VK_GOOGLE_HLSL_FUNCTIONALITY_1_SPEC_VERSION* = 1 +const VK_GOOGLE_HLSL_FUNCTIONALITY_1_EXTENSION_NAME* = "VK_GOOGLE_hlsl_functionality1" + +# Extension: VK_GOOGLE_decorate_string +const VK_GOOGLE_DECORATE_STRING_SPEC_VERSION* = 1 +const VK_GOOGLE_DECORATE_STRING_EXTENSION_NAME* = "VK_GOOGLE_decorate_string" + +# Extension: VK_EXT_subgroup_size_control +const VK_EXT_SUBGROUP_SIZE_CONTROL_SPEC_VERSION* = 2 +const VK_EXT_SUBGROUP_SIZE_CONTROL_EXTENSION_NAME* = "VK_EXT_subgroup_size_control" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES +template VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT* = + VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES +template VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT* = + VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT +template VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT* = + VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT + +# Extension: VK_KHR_fragment_shading_rate +const VK_KHR_FRAGMENT_SHADING_RATE_SPEC_VERSION* = 2 +const VK_KHR_FRAGMENT_SHADING_RATE_EXTENSION_NAME* = "VK_KHR_fragment_shading_rate" +const VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR*: VkImageLayout = VkImageLayout(1000164003) +const VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR*: VkDynamicState = VkDynamicState(1000226000) +const VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR*: VkStructureType = VkStructureType(1000226000) +const VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000226001) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000226002) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR*: VkStructureType = VkStructureType(1000226003) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_KHR*: VkStructureType = VkStructureType(1000226004) +const VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR*: VkAccessFlagBits = VkAccessFlagBits(8388608) +const VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR*: VkImageUsageFlagBits = VkImageUsageFlagBits(256) +const VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR*: VkPipelineStageFlagBits = VkPipelineStageFlagBits(4194304) +const VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(1073741824) +const VK_FORMAT_FEATURE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(1073741824) + +# Extension: VK_AMD_shader_core_properties2 +const VK_AMD_SHADER_CORE_PROPERTIES_2_SPEC_VERSION* = 1 +const VK_AMD_SHADER_CORE_PROPERTIES_2_EXTENSION_NAME* = "VK_AMD_shader_core_properties2" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD*: VkStructureType = VkStructureType(1000227000) + +# Extension: VK_AMD_extension_229 +const VK_AMD_EXTENSION_229_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_229_EXTENSION_NAME* = "VK_AMD_extension_229" + +# Extension: VK_AMD_device_coherent_memory +const VK_AMD_DEVICE_COHERENT_MEMORY_SPEC_VERSION* = 1 +const VK_AMD_DEVICE_COHERENT_MEMORY_EXTENSION_NAME* = "VK_AMD_device_coherent_memory" +const VK_MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD*: VkMemoryPropertyFlagBits = VkMemoryPropertyFlagBits(64) +const VK_MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD*: VkMemoryPropertyFlagBits = VkMemoryPropertyFlagBits(128) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD*: VkStructureType = VkStructureType(1000229000) + +# Extension: VK_AMD_extension_231 +const VK_AMD_EXTENSION_231_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_231_EXTENSION_NAME* = "VK_AMD_extension_231" + +# Extension: VK_AMD_extension_232 +const VK_AMD_EXTENSION_232_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_232_EXTENSION_NAME* = "VK_AMD_extension_232" + +# Extension: VK_AMD_extension_233 +const VK_AMD_EXTENSION_233_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_233_EXTENSION_NAME* = "VK_AMD_extension_233" + +# Extension: VK_AMD_extension_234 +const VK_AMD_EXTENSION_234_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_234_EXTENSION_NAME* = "VK_AMD_extension_234" + +# Extension: VK_EXT_shader_image_atomic_int64 +const VK_EXT_SHADER_IMAGE_ATOMIC_INT64_SPEC_VERSION* = 1 +const VK_EXT_SHADER_IMAGE_ATOMIC_INT64_EXTENSION_NAME* = "VK_EXT_shader_image_atomic_int64" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT*: VkStructureType = VkStructureType(1000234000) + +# Extension: VK_AMD_extension_236 +const VK_AMD_EXTENSION_236_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_236_EXTENSION_NAME* = "VK_AMD_extension_236" + +# Extension: VK_KHR_spirv_1_4 +const VK_KHR_SPIRV_1_4_SPEC_VERSION* = 1 +const VK_KHR_SPIRV_1_4_EXTENSION_NAME* = "VK_KHR_spirv_1_4" + +# Extension: VK_EXT_memory_budget +const VK_EXT_MEMORY_BUDGET_SPEC_VERSION* = 1 +const VK_EXT_MEMORY_BUDGET_EXTENSION_NAME* = "VK_EXT_memory_budget" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000237000) + +# Extension: VK_EXT_memory_priority +const VK_EXT_MEMORY_PRIORITY_SPEC_VERSION* = 1 +const VK_EXT_MEMORY_PRIORITY_EXTENSION_NAME* = "VK_EXT_memory_priority" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT*: VkStructureType = VkStructureType(1000238000) +const VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT*: VkStructureType = VkStructureType(1000238001) + +# Extension: VK_KHR_surface_protected_capabilities +const VK_KHR_SURFACE_PROTECTED_CAPABILITIES_SPEC_VERSION* = 1 +const VK_KHR_SURFACE_PROTECTED_CAPABILITIES_EXTENSION_NAME* = "VK_KHR_surface_protected_capabilities" +const VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR*: VkStructureType = VkStructureType(1000239000) + +# Extension: VK_NV_dedicated_allocation_image_aliasing +const VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_SPEC_VERSION* = 1 +const VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_EXTENSION_NAME* = "VK_NV_dedicated_allocation_image_aliasing" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV*: VkStructureType = VkStructureType(1000240000) + +# Extension: VK_KHR_separate_depth_stencil_layouts +const VK_KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_SPEC_VERSION* = 1 +const VK_KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_EXTENSION_NAME* = "VK_KHR_separate_depth_stencil_layouts" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES +template VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT_KHR* = + VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT +template VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT_KHR* = + VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT +template VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR* = + VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL +template VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR* = + VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL +template VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR* = + VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL +template VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR* = + VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL + +# Extension: VK_INTEL_extension_243 +const VK_INTEL_EXTENSION_243_SPEC_VERSION* = 0 +const VK_INTEL_EXTENSION_243_EXTENSION_NAME* = "VK_INTEL_extension_243" +const VK_ACCESS_2_RESERVED_46_BIT_INTEL*: VkAccessFlagBits2 = VkAccessFlagBits2(70368744177664) + +# Extension: VK_MESA_extension_244 +const VK_MESA_EXTENSION_244_SPEC_VERSION* = 0 +const VK_MESA_EXTENSION_244_EXTENSION_NAME* = "VK_MESA_extension_244" + +# Extension: VK_EXT_buffer_device_address +const VK_EXT_BUFFER_DEVICE_ADDRESS_SPEC_VERSION* = 2 +const VK_EXT_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME* = "VK_EXT_buffer_device_address" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT*: VkStructureType = VkStructureType(1000244000) +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_ADDRESS_FEATURES_EXT* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT +template VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO_EXT* = + VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO +const VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000244002) +template VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_EXT* = + VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT +template VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT* = + VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT +template VK_ERROR_INVALID_DEVICE_ADDRESS_EXT* = + VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS + +# Extension: VK_EXT_tooling_info +const VK_EXT_TOOLING_INFO_SPEC_VERSION* = 1 +const VK_EXT_TOOLING_INFO_EXTENSION_NAME* = "VK_EXT_tooling_info" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES +const VK_TOOL_PURPOSE_DEBUG_REPORTING_BIT_EXT*: VkToolPurposeFlagBits = VkToolPurposeFlagBits(32) +const VK_TOOL_PURPOSE_DEBUG_MARKERS_BIT_EXT*: VkToolPurposeFlagBits = VkToolPurposeFlagBits(64) + +# Extension: VK_EXT_separate_stencil_usage +const VK_EXT_SEPARATE_STENCIL_USAGE_SPEC_VERSION* = 1 +const VK_EXT_SEPARATE_STENCIL_USAGE_EXTENSION_NAME* = "VK_EXT_separate_stencil_usage" +template VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO_EXT* = + VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO + +# Extension: VK_EXT_validation_features +const VK_EXT_VALIDATION_FEATURES_SPEC_VERSION* = 5 +const VK_EXT_VALIDATION_FEATURES_EXTENSION_NAME* = "VK_EXT_validation_features" +const VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT*: VkStructureType = VkStructureType(1000247000) + +# Extension: VK_KHR_present_wait +const VK_KHR_PRESENT_WAIT_SPEC_VERSION* = 1 +const VK_KHR_PRESENT_WAIT_EXTENSION_NAME* = "VK_KHR_present_wait" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR*: VkStructureType = VkStructureType(1000248000) + +# Extension: VK_NV_cooperative_matrix +const VK_NV_COOPERATIVE_MATRIX_SPEC_VERSION* = 1 +const VK_NV_COOPERATIVE_MATRIX_EXTENSION_NAME* = "VK_NV_cooperative_matrix" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV*: VkStructureType = VkStructureType(1000249000) +const VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV*: VkStructureType = VkStructureType(1000249001) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV*: VkStructureType = VkStructureType(1000249002) +template VK_SCOPE_DEVICE_NV* = + VK_SCOPE_DEVICE_KHR +template VK_SCOPE_WORKGROUP_NV* = + VK_SCOPE_WORKGROUP_KHR +template VK_SCOPE_SUBGROUP_NV* = + VK_SCOPE_SUBGROUP_KHR +template VK_SCOPE_QUEUE_FAMILY_NV* = + VK_SCOPE_QUEUE_FAMILY_KHR +template VK_COMPONENT_TYPE_FLOAT16_NV* = + VK_COMPONENT_TYPE_FLOAT16_KHR +template VK_COMPONENT_TYPE_FLOAT32_NV* = + VK_COMPONENT_TYPE_FLOAT32_KHR +template VK_COMPONENT_TYPE_FLOAT64_NV* = + VK_COMPONENT_TYPE_FLOAT64_KHR +template VK_COMPONENT_TYPE_SINT8_NV* = + VK_COMPONENT_TYPE_SINT8_KHR +template VK_COMPONENT_TYPE_SINT16_NV* = + VK_COMPONENT_TYPE_SINT16_KHR +template VK_COMPONENT_TYPE_SINT32_NV* = + VK_COMPONENT_TYPE_SINT32_KHR +template VK_COMPONENT_TYPE_SINT64_NV* = + VK_COMPONENT_TYPE_SINT64_KHR +template VK_COMPONENT_TYPE_UINT8_NV* = + VK_COMPONENT_TYPE_UINT8_KHR +template VK_COMPONENT_TYPE_UINT16_NV* = + VK_COMPONENT_TYPE_UINT16_KHR +template VK_COMPONENT_TYPE_UINT32_NV* = + VK_COMPONENT_TYPE_UINT32_KHR +template VK_COMPONENT_TYPE_UINT64_NV* = + VK_COMPONENT_TYPE_UINT64_KHR + +# Extension: VK_NV_coverage_reduction_mode +const VK_NV_COVERAGE_REDUCTION_MODE_SPEC_VERSION* = 1 +const VK_NV_COVERAGE_REDUCTION_MODE_EXTENSION_NAME* = "VK_NV_coverage_reduction_mode" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV*: VkStructureType = VkStructureType(1000250000) +const VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000250001) +const VK_STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV*: VkStructureType = VkStructureType(1000250002) + +# Extension: VK_EXT_fragment_shader_interlock +const VK_EXT_FRAGMENT_SHADER_INTERLOCK_SPEC_VERSION* = 1 +const VK_EXT_FRAGMENT_SHADER_INTERLOCK_EXTENSION_NAME* = "VK_EXT_fragment_shader_interlock" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT*: VkStructureType = VkStructureType(1000251000) + +# Extension: VK_EXT_ycbcr_image_arrays +const VK_EXT_YCBCR_IMAGE_ARRAYS_SPEC_VERSION* = 1 +const VK_EXT_YCBCR_IMAGE_ARRAYS_EXTENSION_NAME* = "VK_EXT_ycbcr_image_arrays" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT*: VkStructureType = VkStructureType(1000252000) + +# Extension: VK_KHR_uniform_buffer_standard_layout +const VK_KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_SPEC_VERSION* = 1 +const VK_KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_EXTENSION_NAME* = "VK_KHR_uniform_buffer_standard_layout" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES + +# Extension: VK_EXT_provoking_vertex +const VK_EXT_PROVOKING_VERTEX_SPEC_VERSION* = 1 +const VK_EXT_PROVOKING_VERTEX_EXTENSION_NAME* = "VK_EXT_provoking_vertex" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT*: VkStructureType = VkStructureType(1000254000) +const VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000254001) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000254002) + +# Extension: VK_EXT_full_screen_exclusive +const VK_EXT_FULL_SCREEN_EXCLUSIVE_SPEC_VERSION* = 4 +const VK_EXT_FULL_SCREEN_EXCLUSIVE_EXTENSION_NAME* = "VK_EXT_full_screen_exclusive" +const VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT*: VkStructureType = VkStructureType(1000255000) +const VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT*: VkStructureType = VkStructureType(1000255002) +const VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT*: VkResult = VkResult(-1000255000) +const VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT*: VkStructureType = VkStructureType(1000255001) + +# Extension: VK_EXT_headless_surface +const VK_EXT_HEADLESS_SURFACE_SPEC_VERSION* = 1 +const VK_EXT_HEADLESS_SURFACE_EXTENSION_NAME* = "VK_EXT_headless_surface" +const VK_STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000256000) + +# Extension: VK_KHR_buffer_device_address +const VK_KHR_BUFFER_DEVICE_ADDRESS_SPEC_VERSION* = 1 +const VK_KHR_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME* = "VK_KHR_buffer_device_address" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES +template VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO_KHR* = + VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO +template VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO_KHR* = + VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO +template VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO_KHR* = + VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO +template VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO_KHR* = + VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO +template VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_KHR* = + VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT +template VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR* = + VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT +template VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT_KHR* = + VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT +template VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR* = + VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT +template VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS_KHR* = + VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS + +# Extension: VK_EXT_extension_259 +const VK_EXT_EXTENSION_259_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_259_EXTENSION_NAME* = "VK_EXT_extension_259" +const VK_QUEUE_RESERVED_9_BIT_EXT*: VkQueueFlagBits = VkQueueFlagBits(512) +const VK_FORMAT_FEATURE_2_RESERVED_44_BIT_EXT*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(17592186044416) +const VK_FORMAT_FEATURE_2_RESERVED_45_BIT_EXT*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(35184372088832) +const VK_IMAGE_CREATE_RESERVED_19_BIT_EXT*: VkImageCreateFlagBits = VkImageCreateFlagBits(524288) + +# Extension: VK_EXT_line_rasterization +const VK_EXT_LINE_RASTERIZATION_SPEC_VERSION* = 1 +const VK_EXT_LINE_RASTERIZATION_EXTENSION_NAME* = "VK_EXT_line_rasterization" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT*: VkStructureType = VkStructureType(1000259000) +const VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000259001) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000259002) +const VK_DYNAMIC_STATE_LINE_STIPPLE_EXT*: VkDynamicState = VkDynamicState(1000259000) + +# Extension: VK_EXT_shader_atomic_float +const VK_EXT_SHADER_ATOMIC_FLOAT_SPEC_VERSION* = 1 +const VK_EXT_SHADER_ATOMIC_FLOAT_EXTENSION_NAME* = "VK_EXT_shader_atomic_float" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT*: VkStructureType = VkStructureType(1000260000) + +# Extension: VK_EXT_host_query_reset +const VK_EXT_HOST_QUERY_RESET_SPEC_VERSION* = 1 +const VK_EXT_HOST_QUERY_RESET_EXTENSION_NAME* = "VK_EXT_host_query_reset" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXT* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES + +# Extension: VK_GGP_extension_263 +const VK_GGP_EXTENSION_263_SPEC_VERSION* = 0 +const VK_GGP_EXTENSION_263_EXTENSION_NAME* = "VK_GGP_extension_263" + +# Extension: VK_BRCM_extension_264 +const VK_BRCM_EXTENSION_264_SPEC_VERSION* = 0 +const VK_BRCM_EXTENSION_264_EXTENSION_NAME* = "VK_BRCM_extension_264" + +# Extension: VK_BRCM_extension_265 +const VK_BRCM_EXTENSION_265_SPEC_VERSION* = 0 +const VK_BRCM_EXTENSION_265_EXTENSION_NAME* = "VK_BRCM_extension_265" + +# Extension: VK_EXT_index_type_uint8 +const VK_EXT_INDEX_TYPE_UINT8_SPEC_VERSION* = 1 +const VK_EXT_INDEX_TYPE_UINT8_EXTENSION_NAME* = "VK_EXT_index_type_uint8" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT*: VkStructureType = VkStructureType(1000265000) +const VK_INDEX_TYPE_UINT8_EXT*: VkIndexType = VkIndexType(1000265000) + +# Extension: VK_EXT_extension_267 +const VK_EXT_EXTENSION_267_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_267_EXTENSION_NAME* = "VK_EXT_extension_267" + +# Extension: VK_EXT_extended_dynamic_state +const VK_EXT_EXTENDED_DYNAMIC_STATE_SPEC_VERSION* = 1 +const VK_EXT_EXTENDED_DYNAMIC_STATE_EXTENSION_NAME* = "VK_EXT_extended_dynamic_state" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT*: VkStructureType = VkStructureType(1000267000) +template VK_DYNAMIC_STATE_CULL_MODE_EXT* = + VK_DYNAMIC_STATE_CULL_MODE +template VK_DYNAMIC_STATE_FRONT_FACE_EXT* = + VK_DYNAMIC_STATE_FRONT_FACE +template VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY_EXT* = + VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY +template VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT_EXT* = + VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT +template VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT_EXT* = + VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT +template VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT* = + VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE +template VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE_EXT* = + VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE +template VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE_EXT* = + VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE +template VK_DYNAMIC_STATE_DEPTH_COMPARE_OP_EXT* = + VK_DYNAMIC_STATE_DEPTH_COMPARE_OP +template VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE_EXT* = + VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE +template VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE_EXT* = + VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE +template VK_DYNAMIC_STATE_STENCIL_OP_EXT* = + VK_DYNAMIC_STATE_STENCIL_OP + +# Extension: VK_KHR_deferred_host_operations +const VK_KHR_DEFERRED_HOST_OPERATIONS_SPEC_VERSION* = 4 +const VK_KHR_DEFERRED_HOST_OPERATIONS_EXTENSION_NAME* = "VK_KHR_deferred_host_operations" +const VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR*: VkObjectType = VkObjectType(1000268000) +const VK_THREAD_IDLE_KHR*: VkResult = VkResult(1000268000) +const VK_THREAD_DONE_KHR*: VkResult = VkResult(1000268001) +const VK_OPERATION_DEFERRED_KHR*: VkResult = VkResult(1000268002) +const VK_OPERATION_NOT_DEFERRED_KHR*: VkResult = VkResult(1000268003) + +# Extension: VK_KHR_pipeline_executable_properties +const VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_SPEC_VERSION* = 1 +const VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_EXTENSION_NAME* = "VK_KHR_pipeline_executable_properties" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR*: VkStructureType = VkStructureType(1000269000) +const VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR*: VkStructureType = VkStructureType(1000269001) +const VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000269002) +const VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR*: VkStructureType = VkStructureType(1000269003) +const VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR*: VkStructureType = VkStructureType(1000269004) +const VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR*: VkStructureType = VkStructureType(1000269005) +const VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(64) +const VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(128) + +# Extension: VK_EXT_host_image_copy +const VK_EXT_HOST_IMAGE_COPY_SPEC_VERSION* = 1 +const VK_EXT_HOST_IMAGE_COPY_EXTENSION_NAME* = "VK_EXT_host_image_copy" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_IMAGE_COPY_FEATURES_EXT*: VkStructureType = VkStructureType(1000270000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_IMAGE_COPY_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000270001) +const VK_STRUCTURE_TYPE_MEMORY_TO_IMAGE_COPY_EXT*: VkStructureType = VkStructureType(1000270002) +const VK_STRUCTURE_TYPE_IMAGE_TO_MEMORY_COPY_EXT*: VkStructureType = VkStructureType(1000270003) +const VK_STRUCTURE_TYPE_COPY_IMAGE_TO_MEMORY_INFO_EXT*: VkStructureType = VkStructureType(1000270004) +const VK_STRUCTURE_TYPE_COPY_MEMORY_TO_IMAGE_INFO_EXT*: VkStructureType = VkStructureType(1000270005) +const VK_STRUCTURE_TYPE_HOST_IMAGE_LAYOUT_TRANSITION_INFO_EXT*: VkStructureType = VkStructureType(1000270006) +const VK_STRUCTURE_TYPE_COPY_IMAGE_TO_IMAGE_INFO_EXT*: VkStructureType = VkStructureType(1000270007) +const VK_STRUCTURE_TYPE_SUBRESOURCE_HOST_MEMCPY_SIZE_EXT*: VkStructureType = VkStructureType(1000270008) +const VK_STRUCTURE_TYPE_HOST_IMAGE_COPY_DEVICE_PERFORMANCE_QUERY_EXT*: VkStructureType = VkStructureType(1000270009) +const VK_IMAGE_USAGE_HOST_TRANSFER_BIT_EXT*: VkImageUsageFlagBits = VkImageUsageFlagBits(4194304) +const VK_FORMAT_FEATURE_2_HOST_IMAGE_TRANSFER_BIT_EXT*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(70368744177664) + +# Extension: VK_KHR_map_memory2 +const VK_KHR_MAP_MEMORY_2_SPEC_VERSION* = 1 +const VK_KHR_MAP_MEMORY_2_EXTENSION_NAME* = "VK_KHR_map_memory2" +const VK_STRUCTURE_TYPE_MEMORY_MAP_INFO_KHR*: VkStructureType = VkStructureType(1000271000) +const VK_STRUCTURE_TYPE_MEMORY_UNMAP_INFO_KHR*: VkStructureType = VkStructureType(1000271001) + +# Extension: VK_INTEL_extension_273 +const VK_INTEL_EXTENSION_273_SPEC_VERSION* = 0 +const VK_INTEL_EXTENSION_273_EXTENSION_NAME* = "VK_INTEL_extension_273" + +# Extension: VK_EXT_shader_atomic_float2 +const VK_EXT_SHADER_ATOMIC_FLOAT_2_SPEC_VERSION* = 1 +const VK_EXT_SHADER_ATOMIC_FLOAT_2_EXTENSION_NAME* = "VK_EXT_shader_atomic_float2" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT*: VkStructureType = VkStructureType(1000273000) + +# Extension: VK_EXT_surface_maintenance1 +const VK_EXT_SURFACE_MAINTENANCE_1_SPEC_VERSION* = 1 +const VK_EXT_SURFACE_MAINTENANCE_1_EXTENSION_NAME* = "VK_EXT_surface_maintenance1" +const VK_STRUCTURE_TYPE_SURFACE_PRESENT_MODE_EXT*: VkStructureType = VkStructureType(1000274000) +const VK_STRUCTURE_TYPE_SURFACE_PRESENT_SCALING_CAPABILITIES_EXT*: VkStructureType = VkStructureType(1000274001) +const VK_STRUCTURE_TYPE_SURFACE_PRESENT_MODE_COMPATIBILITY_EXT*: VkStructureType = VkStructureType(1000274002) + +# Extension: VK_EXT_swapchain_maintenance1 +const VK_EXT_SWAPCHAIN_MAINTENANCE_1_SPEC_VERSION* = 1 +const VK_EXT_SWAPCHAIN_MAINTENANCE_1_EXTENSION_NAME* = "VK_EXT_swapchain_maintenance1" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SWAPCHAIN_MAINTENANCE_1_FEATURES_EXT*: VkStructureType = VkStructureType(1000275000) +const VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_FENCE_INFO_EXT*: VkStructureType = VkStructureType(1000275001) +const VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODES_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000275002) +const VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODE_INFO_EXT*: VkStructureType = VkStructureType(1000275003) +const VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_SCALING_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000275004) +const VK_STRUCTURE_TYPE_RELEASE_SWAPCHAIN_IMAGES_INFO_EXT*: VkStructureType = VkStructureType(1000275005) +const VK_SWAPCHAIN_CREATE_DEFERRED_MEMORY_ALLOCATION_BIT_EXT*: VkSwapchainCreateFlagBitsKHR = VkSwapchainCreateFlagBitsKHR(8) + +# Extension: VK_EXT_shader_demote_to_helper_invocation +const VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_SPEC_VERSION* = 1 +const VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_EXTENSION_NAME* = "VK_EXT_shader_demote_to_helper_invocation" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES + +# Extension: VK_NV_device_generated_commands +const VK_NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION* = 3 +const VK_NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME* = "VK_NV_device_generated_commands" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV*: VkStructureType = VkStructureType(1000277000) +const VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000277001) +const VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000277002) +const VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV*: VkStructureType = VkStructureType(1000277003) +const VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000277004) +const VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV*: VkStructureType = VkStructureType(1000277005) +const VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV*: VkStructureType = VkStructureType(1000277006) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV*: VkStructureType = VkStructureType(1000277007) +const VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(262144) +const VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV*: VkPipelineStageFlagBits = VkPipelineStageFlagBits(131072) +const VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV*: VkAccessFlagBits = VkAccessFlagBits(131072) +const VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV*: VkAccessFlagBits = VkAccessFlagBits(262144) +const VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV*: VkObjectType = VkObjectType(1000277000) + +# Extension: VK_NV_inherited_viewport_scissor +const VK_NV_INHERITED_VIEWPORT_SCISSOR_SPEC_VERSION* = 1 +const VK_NV_INHERITED_VIEWPORT_SCISSOR_EXTENSION_NAME* = "VK_NV_inherited_viewport_scissor" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV*: VkStructureType = VkStructureType(1000278000) +const VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV*: VkStructureType = VkStructureType(1000278001) + +# Extension: VK_KHR_extension_280 +const VK_KHR_EXTENSION_280_SPEC_VERSION* = 0 +const VK_KHR_EXTENSION_280_EXTENSION_NAME* = "VK_KHR_extension_280" + +# Extension: VK_KHR_shader_integer_dot_product +const VK_KHR_SHADER_INTEGER_DOT_PRODUCT_SPEC_VERSION* = 1 +const VK_KHR_SHADER_INTEGER_DOT_PRODUCT_EXTENSION_NAME* = "VK_KHR_shader_integer_dot_product" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES + +# Extension: VK_EXT_texel_buffer_alignment +const VK_EXT_TEXEL_BUFFER_ALIGNMENT_SPEC_VERSION* = 1 +const VK_EXT_TEXEL_BUFFER_ALIGNMENT_EXTENSION_NAME* = "VK_EXT_texel_buffer_alignment" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT*: VkStructureType = VkStructureType(1000281000) +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES + +# Extension: VK_QCOM_render_pass_transform +const VK_QCOM_RENDER_PASS_TRANSFORM_SPEC_VERSION* = 3 +const VK_QCOM_RENDER_PASS_TRANSFORM_EXTENSION_NAME* = "VK_QCOM_render_pass_transform" +const VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM*: VkStructureType = VkStructureType(1000282000) +const VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM*: VkStructureType = VkStructureType(1000282001) +const VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM*: VkRenderPassCreateFlagBits = VkRenderPassCreateFlagBits(2) + +# Extension: VK_EXT_depth_bias_control +const VK_EXT_DEPTH_BIAS_CONTROL_SPEC_VERSION* = 1 +const VK_EXT_DEPTH_BIAS_CONTROL_EXTENSION_NAME* = "VK_EXT_depth_bias_control" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_BIAS_CONTROL_FEATURES_EXT*: VkStructureType = VkStructureType(1000283000) +const VK_STRUCTURE_TYPE_DEPTH_BIAS_INFO_EXT*: VkStructureType = VkStructureType(1000283001) +const VK_STRUCTURE_TYPE_DEPTH_BIAS_REPRESENTATION_INFO_EXT*: VkStructureType = VkStructureType(1000283002) + +# Extension: VK_EXT_device_memory_report +const VK_EXT_DEVICE_MEMORY_REPORT_SPEC_VERSION* = 2 +const VK_EXT_DEVICE_MEMORY_REPORT_EXTENSION_NAME* = "VK_EXT_device_memory_report" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT*: VkStructureType = VkStructureType(1000284000) +const VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000284001) +const VK_STRUCTURE_TYPE_DEVICE_MEMORY_REPORT_CALLBACK_DATA_EXT*: VkStructureType = VkStructureType(1000284002) + +# Extension: VK_EXT_acquire_drm_display +const VK_EXT_ACQUIRE_DRM_DISPLAY_SPEC_VERSION* = 1 +const VK_EXT_ACQUIRE_DRM_DISPLAY_EXTENSION_NAME* = "VK_EXT_acquire_drm_display" + +# Extension: VK_EXT_robustness2 +const VK_EXT_ROBUSTNESS_2_SPEC_VERSION* = 1 +const VK_EXT_ROBUSTNESS_2_EXTENSION_NAME* = "VK_EXT_robustness2" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT*: VkStructureType = VkStructureType(1000286000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000286001) + +# Extension: VK_EXT_custom_border_color +const VK_EXT_CUSTOM_BORDER_COLOR_SPEC_VERSION* = 12 +const VK_EXT_CUSTOM_BORDER_COLOR_EXTENSION_NAME* = "VK_EXT_custom_border_color" +const VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000287000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000287001) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT*: VkStructureType = VkStructureType(1000287002) +const VK_BORDER_COLOR_FLOAT_CUSTOM_EXT*: VkBorderColor = VkBorderColor(1000287003) +const VK_BORDER_COLOR_INT_CUSTOM_EXT*: VkBorderColor = VkBorderColor(1000287004) + +# Extension: VK_EXT_extension_289 +const VK_EXT_EXTENSION_289_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_289_EXTENSION_NAME* = "VK_EXT_extension_289" +const VK_FORMAT_ASTC_3x3x3_UNORM_BLOCK_EXT*: VkFormat = VkFormat(1000288000) +const VK_FORMAT_ASTC_3x3x3_SRGB_BLOCK_EXT*: VkFormat = VkFormat(1000288001) +const VK_FORMAT_ASTC_3x3x3_SFLOAT_BLOCK_EXT*: VkFormat = VkFormat(1000288002) +const VK_FORMAT_ASTC_4x3x3_UNORM_BLOCK_EXT*: VkFormat = VkFormat(1000288003) +const VK_FORMAT_ASTC_4x3x3_SRGB_BLOCK_EXT*: VkFormat = VkFormat(1000288004) +const VK_FORMAT_ASTC_4x3x3_SFLOAT_BLOCK_EXT*: VkFormat = VkFormat(1000288005) +const VK_FORMAT_ASTC_4x4x3_UNORM_BLOCK_EXT*: VkFormat = VkFormat(1000288006) +const VK_FORMAT_ASTC_4x4x3_SRGB_BLOCK_EXT*: VkFormat = VkFormat(1000288007) +const VK_FORMAT_ASTC_4x4x3_SFLOAT_BLOCK_EXT*: VkFormat = VkFormat(1000288008) +const VK_FORMAT_ASTC_4x4x4_UNORM_BLOCK_EXT*: VkFormat = VkFormat(1000288009) +const VK_FORMAT_ASTC_4x4x4_SRGB_BLOCK_EXT*: VkFormat = VkFormat(1000288010) +const VK_FORMAT_ASTC_4x4x4_SFLOAT_BLOCK_EXT*: VkFormat = VkFormat(1000288011) +const VK_FORMAT_ASTC_5x4x4_UNORM_BLOCK_EXT*: VkFormat = VkFormat(1000288012) +const VK_FORMAT_ASTC_5x4x4_SRGB_BLOCK_EXT*: VkFormat = VkFormat(1000288013) +const VK_FORMAT_ASTC_5x4x4_SFLOAT_BLOCK_EXT*: VkFormat = VkFormat(1000288014) +const VK_FORMAT_ASTC_5x5x4_UNORM_BLOCK_EXT*: VkFormat = VkFormat(1000288015) +const VK_FORMAT_ASTC_5x5x4_SRGB_BLOCK_EXT*: VkFormat = VkFormat(1000288016) +const VK_FORMAT_ASTC_5x5x4_SFLOAT_BLOCK_EXT*: VkFormat = VkFormat(1000288017) +const VK_FORMAT_ASTC_5x5x5_UNORM_BLOCK_EXT*: VkFormat = VkFormat(1000288018) +const VK_FORMAT_ASTC_5x5x5_SRGB_BLOCK_EXT*: VkFormat = VkFormat(1000288019) +const VK_FORMAT_ASTC_5x5x5_SFLOAT_BLOCK_EXT*: VkFormat = VkFormat(1000288020) +const VK_FORMAT_ASTC_6x5x5_UNORM_BLOCK_EXT*: VkFormat = VkFormat(1000288021) +const VK_FORMAT_ASTC_6x5x5_SRGB_BLOCK_EXT*: VkFormat = VkFormat(1000288022) +const VK_FORMAT_ASTC_6x5x5_SFLOAT_BLOCK_EXT*: VkFormat = VkFormat(1000288023) +const VK_FORMAT_ASTC_6x6x5_UNORM_BLOCK_EXT*: VkFormat = VkFormat(1000288024) +const VK_FORMAT_ASTC_6x6x5_SRGB_BLOCK_EXT*: VkFormat = VkFormat(1000288025) +const VK_FORMAT_ASTC_6x6x5_SFLOAT_BLOCK_EXT*: VkFormat = VkFormat(1000288026) +const VK_FORMAT_ASTC_6x6x6_UNORM_BLOCK_EXT*: VkFormat = VkFormat(1000288027) +const VK_FORMAT_ASTC_6x6x6_SRGB_BLOCK_EXT*: VkFormat = VkFormat(1000288028) +const VK_FORMAT_ASTC_6x6x6_SFLOAT_BLOCK_EXT*: VkFormat = VkFormat(1000288029) + +# Extension: VK_GOOGLE_user_type +const VK_GOOGLE_USER_TYPE_SPEC_VERSION* = 1 +const VK_GOOGLE_USER_TYPE_EXTENSION_NAME* = "VK_GOOGLE_user_type" + +# Extension: VK_KHR_pipeline_library +const VK_KHR_PIPELINE_LIBRARY_SPEC_VERSION* = 1 +const VK_KHR_PIPELINE_LIBRARY_EXTENSION_NAME* = "VK_KHR_pipeline_library" +const VK_PIPELINE_CREATE_LIBRARY_BIT_KHR*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(2048) +const VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000290000) + +# Extension: VK_NV_extension_292 +const VK_NV_EXTENSION_292_SPEC_VERSION* = 0 +const VK_NV_EXTENSION_292_EXTENSION_NAME* = "VK_NV_extension_292" + +# Extension: VK_NV_present_barrier +const VK_NV_PRESENT_BARRIER_SPEC_VERSION* = 1 +const VK_NV_PRESENT_BARRIER_EXTENSION_NAME* = "VK_NV_present_barrier" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_BARRIER_FEATURES_NV*: VkStructureType = VkStructureType(1000292000) +const VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_PRESENT_BARRIER_NV*: VkStructureType = VkStructureType(1000292001) +const VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_BARRIER_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000292002) + +# Extension: VK_KHR_shader_non_semantic_info +const VK_KHR_SHADER_NON_SEMANTIC_INFO_SPEC_VERSION* = 1 +const VK_KHR_SHADER_NON_SEMANTIC_INFO_EXTENSION_NAME* = "VK_KHR_shader_non_semantic_info" + +# Extension: VK_KHR_present_id +const VK_KHR_PRESENT_ID_SPEC_VERSION* = 1 +const VK_KHR_PRESENT_ID_EXTENSION_NAME* = "VK_KHR_present_id" +const VK_STRUCTURE_TYPE_PRESENT_ID_KHR*: VkStructureType = VkStructureType(1000294000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR*: VkStructureType = VkStructureType(1000294001) + +# Extension: VK_EXT_private_data +const VK_EXT_PRIVATE_DATA_SPEC_VERSION* = 1 +const VK_EXT_PRIVATE_DATA_EXTENSION_NAME* = "VK_EXT_private_data" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES +template VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT* = + VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO +template VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT* = + VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO +template VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT* = + VK_OBJECT_TYPE_PRIVATE_DATA_SLOT + +# Extension: VK_KHR_extension_297 +const VK_KHR_EXTENSION_297_SPEC_VERSION* = 0 +const VK_KHR_EXTENSION_297_EXTENSION_NAME* = "VK_KHR_extension_297" +const VK_PIPELINE_SHADER_STAGE_CREATE_RESERVED_3_BIT_KHR*: VkPipelineShaderStageCreateFlagBits = VkPipelineShaderStageCreateFlagBits(8) + +# Extension: VK_EXT_pipeline_creation_cache_control +const VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_SPEC_VERSION* = 3 +const VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_EXTENSION_NAME* = "VK_EXT_pipeline_creation_cache_control" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES +template VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT* = + VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT +template VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT* = + VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT +template VK_PIPELINE_COMPILE_REQUIRED_EXT* = + VK_PIPELINE_COMPILE_REQUIRED +template VK_ERROR_PIPELINE_COMPILE_REQUIRED_EXT* = + VK_PIPELINE_COMPILE_REQUIRED +template VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT* = + VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT + +# Extension: VK_KHR_extension_299 +const VK_KHR_EXTENSION_299_SPEC_VERSION* = 0 +const VK_KHR_EXTENSION_299_EXTENSION_NAME* = "VK_KHR_extension_299" + +# Extension: VK_KHR_video_encode_queue +const VK_KHR_VIDEO_ENCODE_QUEUE_SPEC_VERSION* = 9 +const VK_KHR_VIDEO_ENCODE_QUEUE_EXTENSION_NAME* = "VK_KHR_video_encode_queue" +const VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(134217728) +const VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR*: VkAccessFlagBits2 = VkAccessFlagBits2(137438953472) +const VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR*: VkAccessFlagBits2 = VkAccessFlagBits2(274877906944) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR*: VkStructureType = VkStructureType(1000299000) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR*: VkStructureType = VkStructureType(1000299001) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR*: VkStructureType = VkStructureType(1000299002) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_CAPABILITIES_KHR*: VkStructureType = VkStructureType(1000299003) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_USAGE_INFO_KHR*: VkStructureType = VkStructureType(1000299004) +const VK_STRUCTURE_TYPE_QUERY_POOL_VIDEO_ENCODE_FEEDBACK_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000299005) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_ENCODE_QUALITY_LEVEL_INFO_KHR*: VkStructureType = VkStructureType(1000299006) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_QUALITY_LEVEL_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000299007) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_QUALITY_LEVEL_INFO_KHR*: VkStructureType = VkStructureType(1000299008) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_SESSION_PARAMETERS_GET_INFO_KHR*: VkStructureType = VkStructureType(1000299009) +const VK_STRUCTURE_TYPE_VIDEO_ENCODE_SESSION_PARAMETERS_FEEDBACK_INFO_KHR*: VkStructureType = VkStructureType(1000299010) +const VK_QUEUE_VIDEO_ENCODE_BIT_KHR*: VkQueueFlagBits = VkQueueFlagBits(64) +const VK_VIDEO_CODING_CONTROL_ENCODE_RATE_CONTROL_BIT_KHR*: VkVideoCodingControlFlagBitsKHR = VkVideoCodingControlFlagBitsKHR(2) +const VK_VIDEO_CODING_CONTROL_ENCODE_QUALITY_LEVEL_BIT_KHR*: VkVideoCodingControlFlagBitsKHR = VkVideoCodingControlFlagBitsKHR(4) +const VK_BUFFER_USAGE_VIDEO_ENCODE_DST_BIT_KHR*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(32768) +const VK_BUFFER_USAGE_VIDEO_ENCODE_SRC_BIT_KHR*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(65536) +const VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR*: VkImageUsageFlagBits = VkImageUsageFlagBits(8192) +const VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR*: VkImageUsageFlagBits = VkImageUsageFlagBits(16384) +const VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR*: VkImageUsageFlagBits = VkImageUsageFlagBits(32768) +const VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(134217728) +const VK_FORMAT_FEATURE_VIDEO_ENCODE_DPB_BIT_KHR*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(268435456) +const VK_VIDEO_SESSION_CREATE_ALLOW_ENCODE_PARAMETER_OPTIMIZATIONS_BIT_KHR*: VkVideoSessionCreateFlagBitsKHR = VkVideoSessionCreateFlagBitsKHR(2) +const VK_IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR*: VkImageLayout = VkImageLayout(1000299000) +const VK_IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR*: VkImageLayout = VkImageLayout(1000299001) +const VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR*: VkImageLayout = VkImageLayout(1000299002) +const VK_QUERY_TYPE_VIDEO_ENCODE_FEEDBACK_KHR*: VkQueryType = VkQueryType(1000299000) +const VK_ERROR_INVALID_VIDEO_STD_PARAMETERS_KHR*: VkResult = VkResult(-1000299000) +const VK_FORMAT_FEATURE_2_VIDEO_ENCODE_INPUT_BIT_KHR*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(134217728) +const VK_FORMAT_FEATURE_2_VIDEO_ENCODE_DPB_BIT_KHR*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(268435456) + +# Extension: VK_NV_device_diagnostics_config +const VK_NV_DEVICE_DIAGNOSTICS_CONFIG_SPEC_VERSION* = 2 +const VK_NV_DEVICE_DIAGNOSTICS_CONFIG_EXTENSION_NAME* = "VK_NV_device_diagnostics_config" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV*: VkStructureType = VkStructureType(1000300000) +const VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000300001) + +# Extension: VK_QCOM_render_pass_store_ops +const VK_QCOM_RENDER_PASS_STORE_OPS_SPEC_VERSION* = 2 +const VK_QCOM_RENDER_PASS_STORE_OPS_EXTENSION_NAME* = "VK_QCOM_render_pass_store_ops" +template VK_ATTACHMENT_STORE_OP_NONE_QCOM* = + VK_ATTACHMENT_STORE_OP_NONE + +# Extension: VK_QCOM_extension_303 +const VK_QCOM_EXTENSION_303_SPEC_VERSION* = 0 +const VK_QCOM_EXTENSION_303_EXTENSION_NAME* = "VK_QCOM_extension_303" + +# Extension: VK_QCOM_extension_304 +const VK_QCOM_EXTENSION_304_SPEC_VERSION* = 0 +const VK_QCOM_EXTENSION_304_EXTENSION_NAME* = "VK_QCOM_extension_304" + +# Extension: VK_QCOM_extension_305 +const VK_QCOM_EXTENSION_305_SPEC_VERSION* = 0 +const VK_QCOM_EXTENSION_305_EXTENSION_NAME* = "VK_QCOM_extension_305" + +# Extension: VK_QCOM_extension_306 +const VK_QCOM_EXTENSION_306_SPEC_VERSION* = 0 +const VK_QCOM_EXTENSION_306_EXTENSION_NAME* = "VK_QCOM_extension_306" + +# Extension: VK_QCOM_extension_307 +const VK_QCOM_EXTENSION_307_SPEC_VERSION* = 0 +const VK_QCOM_EXTENSION_307_EXTENSION_NAME* = "VK_QCOM_extension_307" + +# Extension: VK_NV_extension_308 +const VK_NV_EXTENSION_308_SPEC_VERSION* = 0 +const VK_NV_EXTENSION_308_EXTENSION_NAME* = "VK_NV_extension_308" + +# Extension: VK_KHR_object_refresh +const VK_KHR_OBJECT_REFRESH_SPEC_VERSION* = 1 +const VK_KHR_OBJECT_REFRESH_EXTENSION_NAME* = "VK_KHR_object_refresh" +const VK_STRUCTURE_TYPE_REFRESH_OBJECT_LIST_KHR*: VkStructureType = VkStructureType(1000308000) + +# Extension: VK_QCOM_extension_310 +const VK_QCOM_EXTENSION_310_SPEC_VERSION* = 0 +const VK_QCOM_EXTENSION_310_EXTENSION_NAME* = "VK_QCOM_extension_310" +const VK_STRUCTURE_TYPE_RESERVED_QCOM*: VkStructureType = VkStructureType(1000309000) + +# Extension: VK_NV_low_latency +const VK_NV_LOW_LATENCY_SPEC_VERSION* = 1 +const VK_NV_LOW_LATENCY_EXTENSION_NAME* = "VK_NV_low_latency" +const VK_STRUCTURE_TYPE_QUERY_LOW_LATENCY_SUPPORT_NV*: VkStructureType = VkStructureType(1000310000) + +# Extension: VK_EXT_metal_objects +const VK_EXT_METAL_OBJECTS_SPEC_VERSION* = 1 +const VK_EXT_METAL_OBJECTS_EXTENSION_NAME* = "VK_EXT_metal_objects" +const VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECT_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000311000) +const VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECTS_INFO_EXT*: VkStructureType = VkStructureType(1000311001) +const VK_STRUCTURE_TYPE_EXPORT_METAL_DEVICE_INFO_EXT*: VkStructureType = VkStructureType(1000311002) +const VK_STRUCTURE_TYPE_EXPORT_METAL_COMMAND_QUEUE_INFO_EXT*: VkStructureType = VkStructureType(1000311003) +const VK_STRUCTURE_TYPE_EXPORT_METAL_BUFFER_INFO_EXT*: VkStructureType = VkStructureType(1000311004) +const VK_STRUCTURE_TYPE_IMPORT_METAL_BUFFER_INFO_EXT*: VkStructureType = VkStructureType(1000311005) +const VK_STRUCTURE_TYPE_EXPORT_METAL_TEXTURE_INFO_EXT*: VkStructureType = VkStructureType(1000311006) +const VK_STRUCTURE_TYPE_IMPORT_METAL_TEXTURE_INFO_EXT*: VkStructureType = VkStructureType(1000311007) +const VK_STRUCTURE_TYPE_EXPORT_METAL_IO_SURFACE_INFO_EXT*: VkStructureType = VkStructureType(1000311008) +const VK_STRUCTURE_TYPE_IMPORT_METAL_IO_SURFACE_INFO_EXT*: VkStructureType = VkStructureType(1000311009) +const VK_STRUCTURE_TYPE_EXPORT_METAL_SHARED_EVENT_INFO_EXT*: VkStructureType = VkStructureType(1000311010) +const VK_STRUCTURE_TYPE_IMPORT_METAL_SHARED_EVENT_INFO_EXT*: VkStructureType = VkStructureType(1000311011) + +# Extension: VK_EXT_extension_313 +const VK_EXT_EXTENSION_313_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_313_EXTENSION_NAME* = "VK_EXT_extension_313" + +# Extension: VK_AMD_extension_314 +const VK_AMD_EXTENSION_314_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_314_EXTENSION_NAME* = "VK_AMD_extension_314" + +# Extension: VK_KHR_synchronization2 +const VK_KHR_SYNCHRONIZATION_2_SPEC_VERSION* = 1 +const VK_KHR_SYNCHRONIZATION_2_EXTENSION_NAME* = "VK_KHR_synchronization2" +template VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR* = + VK_STRUCTURE_TYPE_MEMORY_BARRIER_2 +template VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2_KHR* = + VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2 +template VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2_KHR* = + VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2 +template VK_STRUCTURE_TYPE_DEPENDENCY_INFO_KHR* = + VK_STRUCTURE_TYPE_DEPENDENCY_INFO +template VK_STRUCTURE_TYPE_SUBMIT_INFO_2_KHR* = + VK_STRUCTURE_TYPE_SUBMIT_INFO_2 +template VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO_KHR* = + VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO +template VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO_KHR* = + VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES +template VK_EVENT_CREATE_DEVICE_ONLY_BIT_KHR* = + VK_EVENT_CREATE_DEVICE_ONLY_BIT +template VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL_KHR* = + VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL +template VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL_KHR* = + VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL +template VK_PIPELINE_STAGE_NONE_KHR* = + VK_PIPELINE_STAGE_NONE +template VK_ACCESS_NONE_KHR* = + VK_ACCESS_NONE +const VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(16777216) +const VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT*: VkAccessFlagBits2 = VkAccessFlagBits2(33554432) +const VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT*: VkAccessFlagBits2 = VkAccessFlagBits2(67108864) +const VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT*: VkAccessFlagBits2 = VkAccessFlagBits2(134217728) +const VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(262144) +const VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT*: VkAccessFlagBits2 = VkAccessFlagBits2(1048576) +const VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(131072) +const VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV*: VkAccessFlagBits2 = VkAccessFlagBits2(131072) +const VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV*: VkAccessFlagBits2 = VkAccessFlagBits2(262144) +const VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(4194304) +const VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR*: VkAccessFlagBits2 = VkAccessFlagBits2(8388608) +template VK_PIPELINE_STAGE_2_SHADING_RATE_IMAGE_BIT_NV* = + VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR +template VK_ACCESS_2_SHADING_RATE_IMAGE_READ_BIT_NV* = + VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR +const VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(33554432) +const VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR*: VkAccessFlagBits2 = VkAccessFlagBits2(2097152) +const VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR*: VkAccessFlagBits2 = VkAccessFlagBits2(4194304) +const VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(2097152) +template VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_NV* = + VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR +template VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_NV* = + VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR +template VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_NV* = + VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR +template VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_NV* = + VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR +const VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(8388608) +const VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT*: VkAccessFlagBits2 = VkAccessFlagBits2(16777216) +const VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT*: VkAccessFlagBits2 = VkAccessFlagBits2(524288) +template VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV* = + VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_EXT +template VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV* = + VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_EXT +const VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV*: VkStructureType = VkStructureType(1000314008) +const VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV*: VkStructureType = VkStructureType(1000314009) +const VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_EXT*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(524288) +const VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_EXT*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(1048576) + +# Extension: VK_AMD_extension_316 +const VK_AMD_EXTENSION_316_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_316_EXTENSION_NAME* = "VK_AMD_extension_316" + +# Extension: VK_EXT_descriptor_buffer +const VK_EXT_DESCRIPTOR_BUFFER_SPEC_VERSION* = 1 +const VK_EXT_DESCRIPTOR_BUFFER_EXTENSION_NAME* = "VK_EXT_descriptor_buffer" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000316000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_DENSITY_MAP_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000316001) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_FEATURES_EXT*: VkStructureType = VkStructureType(1000316002) +const VK_STRUCTURE_TYPE_DESCRIPTOR_ADDRESS_INFO_EXT*: VkStructureType = VkStructureType(1000316003) +const VK_STRUCTURE_TYPE_DESCRIPTOR_GET_INFO_EXT*: VkStructureType = VkStructureType(1000316004) +const VK_STRUCTURE_TYPE_BUFFER_CAPTURE_DESCRIPTOR_DATA_INFO_EXT*: VkStructureType = VkStructureType(1000316005) +const VK_STRUCTURE_TYPE_IMAGE_CAPTURE_DESCRIPTOR_DATA_INFO_EXT*: VkStructureType = VkStructureType(1000316006) +const VK_STRUCTURE_TYPE_IMAGE_VIEW_CAPTURE_DESCRIPTOR_DATA_INFO_EXT*: VkStructureType = VkStructureType(1000316007) +const VK_STRUCTURE_TYPE_SAMPLER_CAPTURE_DESCRIPTOR_DATA_INFO_EXT*: VkStructureType = VkStructureType(1000316008) +const VK_STRUCTURE_TYPE_OPAQUE_CAPTURE_DESCRIPTOR_DATA_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000316010) +const VK_STRUCTURE_TYPE_DESCRIPTOR_BUFFER_BINDING_INFO_EXT*: VkStructureType = VkStructureType(1000316011) +const VK_STRUCTURE_TYPE_DESCRIPTOR_BUFFER_BINDING_PUSH_DESCRIPTOR_BUFFER_HANDLE_EXT*: VkStructureType = VkStructureType(1000316012) +const VK_DESCRIPTOR_SET_LAYOUT_CREATE_DESCRIPTOR_BUFFER_BIT_EXT*: VkDescriptorSetLayoutCreateFlagBits = VkDescriptorSetLayoutCreateFlagBits(16) +const VK_DESCRIPTOR_SET_LAYOUT_CREATE_EMBEDDED_IMMUTABLE_SAMPLERS_BIT_EXT*: VkDescriptorSetLayoutCreateFlagBits = VkDescriptorSetLayoutCreateFlagBits(32) +const VK_BUFFER_USAGE_SAMPLER_DESCRIPTOR_BUFFER_BIT_EXT*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(2097152) +const VK_BUFFER_USAGE_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(4194304) +const VK_BUFFER_USAGE_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXT*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(67108864) +const VK_BUFFER_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT*: VkBufferCreateFlagBits = VkBufferCreateFlagBits(32) +const VK_IMAGE_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT*: VkImageCreateFlagBits = VkImageCreateFlagBits(65536) +const VK_IMAGE_VIEW_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT*: VkImageViewCreateFlagBits = VkImageViewCreateFlagBits(4) +const VK_SAMPLER_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT*: VkSamplerCreateFlagBits = VkSamplerCreateFlagBits(8) +const VK_ACCELERATION_STRUCTURE_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT*: VkAccelerationStructureCreateFlagBitsKHR = VkAccelerationStructureCreateFlagBitsKHR(8) +const VK_ACCESS_2_DESCRIPTOR_BUFFER_READ_BIT_EXT*: VkAccessFlagBits2 = VkAccessFlagBits2(2199023255552) +const VK_PIPELINE_CREATE_DESCRIPTOR_BUFFER_BIT_EXT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(536870912) +const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CAPTURE_DESCRIPTOR_DATA_INFO_EXT*: VkStructureType = VkStructureType(1000316009) + +# Extension: VK_AMD_extension_318 +const VK_AMD_EXTENSION_318_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_318_EXTENSION_NAME* = "VK_AMD_extension_318" + +# Extension: VK_AMD_extension_319 +const VK_AMD_EXTENSION_319_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_319_EXTENSION_NAME* = "VK_AMD_extension_319" +const VK_DESCRIPTOR_SET_LAYOUT_CREATE_RESERVED_3_BIT_AMD*: VkDescriptorSetLayoutCreateFlagBits = VkDescriptorSetLayoutCreateFlagBits(8) +const VK_PIPELINE_LAYOUT_CREATE_RESERVED_0_BIT_AMD*: VkPipelineLayoutCreateFlagBits = VkPipelineLayoutCreateFlagBits(1) + +# Extension: VK_AMD_extension_320 +const VK_AMD_EXTENSION_320_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_320_EXTENSION_NAME* = "VK_AMD_extension_320" + +# Extension: VK_EXT_graphics_pipeline_library +const VK_EXT_GRAPHICS_PIPELINE_LIBRARY_SPEC_VERSION* = 1 +const VK_EXT_GRAPHICS_PIPELINE_LIBRARY_EXTENSION_NAME* = "VK_EXT_graphics_pipeline_library" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT*: VkStructureType = VkStructureType(1000320000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000320001) +const VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000320002) +const VK_PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(8388608) +const VK_PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(1024) +const VK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT*: VkPipelineLayoutCreateFlagBits = VkPipelineLayoutCreateFlagBits(2) + +# Extension: VK_AMD_shader_early_and_late_fragment_tests +const VK_AMD_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_SPEC_VERSION* = 1 +const VK_AMD_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_EXTENSION_NAME* = "VK_AMD_shader_early_and_late_fragment_tests" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD*: VkStructureType = VkStructureType(1000321000) + +# Extension: VK_KHR_fragment_shader_barycentric +const VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION* = 1 +const VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME* = "VK_KHR_fragment_shader_barycentric" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR*: VkStructureType = VkStructureType(1000203000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000322000) + +# Extension: VK_KHR_shader_subgroup_uniform_control_flow +const VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_SPEC_VERSION* = 1 +const VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME* = "VK_KHR_shader_subgroup_uniform_control_flow" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR*: VkStructureType = VkStructureType(1000323000) + +# Extension: VK_KHR_extension_325 +const VK_KHR_EXTENSION_325_SPEC_VERSION* = 0 +const VK_KHR_EXTENSION_325_EXTENSION_NAME* = "VK_KHR_extension_325" + +# Extension: VK_KHR_zero_initialize_workgroup_memory +const VK_KHR_ZERO_INITIALIZE_WORKGROUP_MEMORY_SPEC_VERSION* = 1 +const VK_KHR_ZERO_INITIALIZE_WORKGROUP_MEMORY_EXTENSION_NAME* = "VK_KHR_zero_initialize_workgroup_memory" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES + +# Extension: VK_NV_fragment_shading_rate_enums +const VK_NV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION* = 1 +const VK_NV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME* = "VK_NV_fragment_shading_rate_enums" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV*: VkStructureType = VkStructureType(1000326000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV*: VkStructureType = VkStructureType(1000326001) +const VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000326002) + +# Extension: VK_NV_ray_tracing_motion_blur +const VK_NV_RAY_TRACING_MOTION_BLUR_SPEC_VERSION* = 1 +const VK_NV_RAY_TRACING_MOTION_BLUR_EXTENSION_NAME* = "VK_NV_ray_tracing_motion_blur" +const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV*: VkStructureType = VkStructureType(1000327000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV*: VkStructureType = VkStructureType(1000327001) +const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV*: VkStructureType = VkStructureType(1000327002) +const VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV*: VkBuildAccelerationStructureFlagBitsKHR = VkBuildAccelerationStructureFlagBitsKHR(32) +const VK_ACCELERATION_STRUCTURE_CREATE_MOTION_BIT_NV*: VkAccelerationStructureCreateFlagBitsKHR = VkAccelerationStructureCreateFlagBitsKHR(4) +const VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(1048576) + +# Extension: VK_EXT_mesh_shader +const VK_EXT_MESH_SHADER_SPEC_VERSION* = 1 +const VK_EXT_MESH_SHADER_EXTENSION_NAME* = "VK_EXT_mesh_shader" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_EXT*: VkStructureType = VkStructureType(1000328000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000328001) +const VK_SHADER_STAGE_TASK_BIT_EXT*: VkShaderStageFlagBits = VkShaderStageFlagBits(64) +const VK_SHADER_STAGE_MESH_BIT_EXT*: VkShaderStageFlagBits = VkShaderStageFlagBits(128) +const VK_PIPELINE_STAGE_TASK_SHADER_BIT_EXT*: VkPipelineStageFlagBits = VkPipelineStageFlagBits(524288) +const VK_PIPELINE_STAGE_MESH_SHADER_BIT_EXT*: VkPipelineStageFlagBits = VkPipelineStageFlagBits(1048576) +const VK_QUERY_TYPE_MESH_PRIMITIVES_GENERATED_EXT*: VkQueryType = VkQueryType(1000328000) +const VK_QUERY_PIPELINE_STATISTIC_TASK_SHADER_INVOCATIONS_BIT_EXT*: VkQueryPipelineStatisticFlagBits = VkQueryPipelineStatisticFlagBits(2048) +const VK_QUERY_PIPELINE_STATISTIC_MESH_SHADER_INVOCATIONS_BIT_EXT*: VkQueryPipelineStatisticFlagBits = VkQueryPipelineStatisticFlagBits(4096) +const VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_MESH_TASKS_NV*: VkIndirectCommandsTokenTypeNV = VkIndirectCommandsTokenTypeNV(1000328000) + +# Extension: VK_NV_extension_330 +const VK_NV_EXTENSION_330_SPEC_VERSION* = 0 +const VK_NV_EXTENSION_330_EXTENSION_NAME* = "VK_NV_extension_330" + +# Extension: VK_EXT_ycbcr_2plane_444_formats +const VK_EXT_YCBCR_2PLANE_444_FORMATS_SPEC_VERSION* = 1 +const VK_EXT_YCBCR_2PLANE_444_FORMATS_EXTENSION_NAME* = "VK_EXT_ycbcr_2plane_444_formats" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT*: VkStructureType = VkStructureType(1000330000) +template VK_FORMAT_G8_B8R8_2PLANE_444_UNORM_EXT* = + VK_FORMAT_G8_B8R8_2PLANE_444_UNORM +template VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16_EXT* = + VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16 +template VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16_EXT* = + VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16 +template VK_FORMAT_G16_B16R16_2PLANE_444_UNORM_EXT* = + VK_FORMAT_G16_B16R16_2PLANE_444_UNORM + +# Extension: VK_NV_extension_332 +const VK_NV_EXTENSION_332_SPEC_VERSION* = 0 +const VK_NV_EXTENSION_332_EXTENSION_NAME* = "VK_NV_extension_332" + +# Extension: VK_EXT_fragment_density_map2 +const VK_EXT_FRAGMENT_DENSITY_MAP_2_SPEC_VERSION* = 1 +const VK_EXT_FRAGMENT_DENSITY_MAP_2_EXTENSION_NAME* = "VK_EXT_fragment_density_map2" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT*: VkStructureType = VkStructureType(1000332000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000332001) +const VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DEFERRED_BIT_EXT*: VkImageViewCreateFlagBits = VkImageViewCreateFlagBits(2) + +# Extension: VK_QCOM_rotated_copy_commands +const VK_QCOM_ROTATED_COPY_COMMANDS_SPEC_VERSION* = 1 +const VK_QCOM_ROTATED_COPY_COMMANDS_EXTENSION_NAME* = "VK_QCOM_rotated_copy_commands" +const VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM*: VkStructureType = VkStructureType(1000333000) + +# Extension: VK_KHR_extension_335 +const VK_KHR_EXTENSION_335_SPEC_VERSION* = 0 +const VK_KHR_EXTENSION_335_EXTENSION_NAME* = "VK_KHR_extension_335" + +# Extension: VK_EXT_image_robustness +const VK_EXT_IMAGE_ROBUSTNESS_SPEC_VERSION* = 1 +const VK_EXT_IMAGE_ROBUSTNESS_EXTENSION_NAME* = "VK_EXT_image_robustness" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES + +# Extension: VK_KHR_workgroup_memory_explicit_layout +const VK_KHR_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_SPEC_VERSION* = 1 +const VK_KHR_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_EXTENSION_NAME* = "VK_KHR_workgroup_memory_explicit_layout" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR*: VkStructureType = VkStructureType(1000336000) + +# Extension: VK_KHR_copy_commands2 +const VK_KHR_COPY_COMMANDS_2_SPEC_VERSION* = 1 +const VK_KHR_COPY_COMMANDS_2_EXTENSION_NAME* = "VK_KHR_copy_commands2" +template VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2_KHR* = + VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2 +template VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2_KHR* = + VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2 +template VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2_KHR* = + VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2 +template VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2_KHR* = + VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2 +template VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2_KHR* = + VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2 +template VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2_KHR* = + VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2 +template VK_STRUCTURE_TYPE_BUFFER_COPY_2_KHR* = + VK_STRUCTURE_TYPE_BUFFER_COPY_2 +template VK_STRUCTURE_TYPE_IMAGE_COPY_2_KHR* = + VK_STRUCTURE_TYPE_IMAGE_COPY_2 +template VK_STRUCTURE_TYPE_IMAGE_BLIT_2_KHR* = + VK_STRUCTURE_TYPE_IMAGE_BLIT_2 +template VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2_KHR* = + VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2 +template VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2_KHR* = + VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2 + +# Extension: VK_EXT_image_compression_control +const VK_EXT_IMAGE_COMPRESSION_CONTROL_SPEC_VERSION* = 1 +const VK_EXT_IMAGE_COMPRESSION_CONTROL_EXTENSION_NAME* = "VK_EXT_image_compression_control" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT*: VkStructureType = VkStructureType(1000338000) +const VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT*: VkStructureType = VkStructureType(1000338001) +template VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT* = + VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_KHR +template VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT* = + VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_KHR +const VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000338004) +const VK_ERROR_COMPRESSION_EXHAUSTED_EXT*: VkResult = VkResult(-1000338000) + +# Extension: VK_EXT_attachment_feedback_loop_layout +const VK_EXT_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_SPEC_VERSION* = 2 +const VK_EXT_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_EXTENSION_NAME* = "VK_EXT_attachment_feedback_loop_layout" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT*: VkStructureType = VkStructureType(1000339000) +const VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT*: VkImageLayout = VkImageLayout(1000339000) +const VK_IMAGE_USAGE_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT*: VkImageUsageFlagBits = VkImageUsageFlagBits(524288) +const VK_PIPELINE_CREATE_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(33554432) +const VK_PIPELINE_CREATE_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(67108864) +const VK_DEPENDENCY_FEEDBACK_LOOP_BIT_EXT*: VkDependencyFlagBits = VkDependencyFlagBits(8) + +# Extension: VK_EXT_4444_formats +const VK_EXT_4444_FORMATS_SPEC_VERSION* = 1 +const VK_EXT_4444_FORMATS_EXTENSION_NAME* = "VK_EXT_4444_formats" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT*: VkStructureType = VkStructureType(1000340000) +template VK_FORMAT_A4R4G4B4_UNORM_PACK16_EXT* = + VK_FORMAT_A4R4G4B4_UNORM_PACK16 +template VK_FORMAT_A4B4G4R4_UNORM_PACK16_EXT* = + VK_FORMAT_A4B4G4R4_UNORM_PACK16 + +# Extension: VK_EXT_device_fault +const VK_EXT_DEVICE_FAULT_SPEC_VERSION* = 2 +const VK_EXT_DEVICE_FAULT_EXTENSION_NAME* = "VK_EXT_device_fault" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FAULT_FEATURES_EXT*: VkStructureType = VkStructureType(1000341000) +const VK_STRUCTURE_TYPE_DEVICE_FAULT_COUNTS_EXT*: VkStructureType = VkStructureType(1000341001) +const VK_STRUCTURE_TYPE_DEVICE_FAULT_INFO_EXT*: VkStructureType = VkStructureType(1000341002) + +# Extension: VK_ARM_rasterization_order_attachment_access +const VK_ARM_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_SPEC_VERSION* = 1 +const VK_ARM_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_EXTENSION_NAME* = "VK_ARM_rasterization_order_attachment_access" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT +template VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_ARM* = + VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_EXT +template VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM* = + VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT +template VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM* = + VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT +template VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_ARM* = + VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_EXT +template VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM* = + VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT +template VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM* = + VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT + +# Extension: VK_ARM_extension_344 +const VK_ARM_EXTENSION_344_SPEC_VERSION* = 0 +const VK_ARM_EXTENSION_344_EXTENSION_NAME* = "VK_ARM_extension_344" + +# Extension: VK_EXT_rgba10x6_formats +const VK_EXT_RGBA10X6_FORMATS_SPEC_VERSION* = 1 +const VK_EXT_RGBA10X6_FORMATS_EXTENSION_NAME* = "VK_EXT_rgba10x6_formats" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT*: VkStructureType = VkStructureType(1000344000) + +# Extension: VK_NV_acquire_winrt_display +const VK_NV_ACQUIRE_WINRT_DISPLAY_SPEC_VERSION* = 1 +const VK_NV_ACQUIRE_WINRT_DISPLAY_EXTENSION_NAME* = "VK_NV_acquire_winrt_display" + +# Extension: VK_EXT_directfb_surface +const VK_EXT_DIRECTFB_SURFACE_SPEC_VERSION* = 1 +const VK_EXT_DIRECTFB_SURFACE_EXTENSION_NAME* = "VK_EXT_directfb_surface" +const VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000346000) + +# Extension: VK_KHR_extension_350 +const VK_KHR_EXTENSION_350_SPEC_VERSION* = 0 +const VK_KHR_EXTENSION_350_EXTENSION_NAME* = "VK_KHR_extension_350" + +# Extension: VK_NV_extension_351 +const VK_NV_EXTENSION_351_SPEC_VERSION* = 0 +const VK_NV_EXTENSION_351_EXTENSION_NAME* = "VK_NV_extension_351" + +# Extension: VK_VALVE_mutable_descriptor_type +const VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION* = 1 +const VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME* = "VK_VALVE_mutable_descriptor_type" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT +template VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE* = + VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT +template VK_DESCRIPTOR_TYPE_MUTABLE_VALVE* = + VK_DESCRIPTOR_TYPE_MUTABLE_EXT +template VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE* = + VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_EXT +template VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE* = + VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_EXT + +# Extension: VK_EXT_vertex_input_dynamic_state +const VK_EXT_VERTEX_INPUT_DYNAMIC_STATE_SPEC_VERSION* = 2 +const VK_EXT_VERTEX_INPUT_DYNAMIC_STATE_EXTENSION_NAME* = "VK_EXT_vertex_input_dynamic_state" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT*: VkStructureType = VkStructureType(1000352000) +const VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT*: VkStructureType = VkStructureType(1000352001) +const VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT*: VkStructureType = VkStructureType(1000352002) +const VK_DYNAMIC_STATE_VERTEX_INPUT_EXT*: VkDynamicState = VkDynamicState(1000352000) + +# Extension: VK_EXT_physical_device_drm +const VK_EXT_PHYSICAL_DEVICE_DRM_SPEC_VERSION* = 1 +const VK_EXT_PHYSICAL_DEVICE_DRM_EXTENSION_NAME* = "VK_EXT_physical_device_drm" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000353000) + +# Extension: VK_EXT_device_address_binding_report +const VK_EXT_DEVICE_ADDRESS_BINDING_REPORT_SPEC_VERSION* = 1 +const VK_EXT_DEVICE_ADDRESS_BINDING_REPORT_EXTENSION_NAME* = "VK_EXT_device_address_binding_report" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ADDRESS_BINDING_REPORT_FEATURES_EXT*: VkStructureType = VkStructureType(1000354000) +const VK_STRUCTURE_TYPE_DEVICE_ADDRESS_BINDING_CALLBACK_DATA_EXT*: VkStructureType = VkStructureType(1000354001) +const VK_DEBUG_UTILS_MESSAGE_TYPE_DEVICE_ADDRESS_BINDING_BIT_EXT*: VkDebugUtilsMessageTypeFlagBitsEXT = VkDebugUtilsMessageTypeFlagBitsEXT(8) + +# Extension: VK_EXT_depth_clip_control +const VK_EXT_DEPTH_CLIP_CONTROL_SPEC_VERSION* = 1 +const VK_EXT_DEPTH_CLIP_CONTROL_EXTENSION_NAME* = "VK_EXT_depth_clip_control" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT*: VkStructureType = VkStructureType(1000355000) +const VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000355001) + +# Extension: VK_EXT_primitive_topology_list_restart +const VK_EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_SPEC_VERSION* = 1 +const VK_EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_EXTENSION_NAME* = "VK_EXT_primitive_topology_list_restart" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT*: VkStructureType = VkStructureType(1000356000) + +# Extension: VK_KHR_extension_358 +const VK_KHR_EXTENSION_358_SPEC_VERSION* = 0 +const VK_KHR_EXTENSION_358_EXTENSION_NAME* = "VK_KHR_extension_358" + +# Extension: VK_EXT_extension_359 +const VK_EXT_EXTENSION_359_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_359_EXTENSION_NAME* = "VK_EXT_extension_359" + +# Extension: VK_EXT_extension_360 +const VK_EXT_EXTENSION_360_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_360_EXTENSION_NAME* = "VK_EXT_extension_360" + +# Extension: VK_KHR_format_feature_flags2 +const VK_KHR_FORMAT_FEATURE_FLAGS_2_SPEC_VERSION* = 2 +const VK_KHR_FORMAT_FEATURE_FLAGS_2_EXTENSION_NAME* = "VK_KHR_format_feature_flags2" +template VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR* = + VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3 + +# Extension: VK_EXT_extension_362 +const VK_EXT_EXTENSION_362_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_362_EXTENSION_NAME* = "VK_EXT_extension_362" + +# Extension: VK_EXT_extension_363 +const VK_EXT_EXTENSION_363_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_363_EXTENSION_NAME* = "VK_EXT_extension_363" + +# Extension: VK_FUCHSIA_extension_364 +const VK_FUCHSIA_EXTENSION_364_SPEC_VERSION* = 0 +const VK_FUCHSIA_EXTENSION_364_EXTENSION_NAME* = "VK_FUCHSIA_extension_364" + +# Extension: VK_FUCHSIA_external_memory +const VK_FUCHSIA_EXTERNAL_MEMORY_SPEC_VERSION* = 1 +const VK_FUCHSIA_EXTERNAL_MEMORY_EXTENSION_NAME* = "VK_FUCHSIA_external_memory" +const VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA*: VkStructureType = VkStructureType(1000364000) +const VK_STRUCTURE_TYPE_MEMORY_ZIRCON_HANDLE_PROPERTIES_FUCHSIA*: VkStructureType = VkStructureType(1000364001) +const VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA*: VkStructureType = VkStructureType(1000364002) +const VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA*: VkExternalMemoryHandleTypeFlagBits = VkExternalMemoryHandleTypeFlagBits(2048) + +# Extension: VK_FUCHSIA_external_semaphore +const VK_FUCHSIA_EXTERNAL_SEMAPHORE_SPEC_VERSION* = 1 +const VK_FUCHSIA_EXTERNAL_SEMAPHORE_EXTENSION_NAME* = "VK_FUCHSIA_external_semaphore" +const VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA*: VkStructureType = VkStructureType(1000365000) +const VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA*: VkStructureType = VkStructureType(1000365001) +const VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA*: VkExternalSemaphoreHandleTypeFlagBits = VkExternalSemaphoreHandleTypeFlagBits(128) + +# Extension: VK_FUCHSIA_buffer_collection +const VK_FUCHSIA_BUFFER_COLLECTION_SPEC_VERSION* = 2 +const VK_FUCHSIA_BUFFER_COLLECTION_EXTENSION_NAME* = "VK_FUCHSIA_buffer_collection" +const VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CREATE_INFO_FUCHSIA*: VkStructureType = VkStructureType(1000366000) +const VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA*: VkObjectType = VkObjectType(1000366000) +const VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA*: VkStructureType = VkStructureType(1000366001) +const VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA*: VkStructureType = VkStructureType(1000366002) +const VK_STRUCTURE_TYPE_BUFFER_COLLECTION_PROPERTIES_FUCHSIA*: VkStructureType = VkStructureType(1000366003) +const VK_STRUCTURE_TYPE_BUFFER_CONSTRAINTS_INFO_FUCHSIA*: VkStructureType = VkStructureType(1000366004) +const VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA*: VkStructureType = VkStructureType(1000366005) +const VK_STRUCTURE_TYPE_IMAGE_CONSTRAINTS_INFO_FUCHSIA*: VkStructureType = VkStructureType(1000366006) +const VK_STRUCTURE_TYPE_IMAGE_FORMAT_CONSTRAINTS_INFO_FUCHSIA*: VkStructureType = VkStructureType(1000366007) +const VK_STRUCTURE_TYPE_SYSMEM_COLOR_SPACE_FUCHSIA*: VkStructureType = VkStructureType(1000366008) +const VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CONSTRAINTS_INFO_FUCHSIA*: VkStructureType = VkStructureType(1000366009) +const VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA_EXT*: VkDebugReportObjectTypeEXT = VkDebugReportObjectTypeEXT(1000366000) + +# Extension: VK_FUCHSIA_extension_368 +const VK_FUCHSIA_EXTENSION_368_SPEC_VERSION* = 0 +const VK_FUCHSIA_EXTENSION_368_EXTENSION_NAME* = "VK_FUCHSIA_extension_368" + +# Extension: VK_QCOM_extension_369 +const VK_QCOM_EXTENSION_369_SPEC_VERSION* = 0 +const VK_QCOM_EXTENSION_369_EXTENSION_NAME* = "VK_QCOM_extension_369" +const VK_DESCRIPTOR_BINDING_RESERVED_4_BIT_QCOM*: VkDescriptorBindingFlagBits = VkDescriptorBindingFlagBits(16) + +# Extension: VK_HUAWEI_subpass_shading +const VK_HUAWEI_SUBPASS_SHADING_SPEC_VERSION* = 3 +const VK_HUAWEI_SUBPASS_SHADING_EXTENSION_NAME* = "VK_HUAWEI_subpass_shading" +const VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI*: VkStructureType = VkStructureType(1000369000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI*: VkStructureType = VkStructureType(1000369001) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI*: VkStructureType = VkStructureType(1000369002) +const VK_PIPELINE_BIND_POINT_SUBPASS_SHADING_HUAWEI*: VkPipelineBindPoint = VkPipelineBindPoint(1000369003) +const VK_PIPELINE_STAGE_2_SUBPASS_SHADER_BIT_HUAWEI*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(549755813888) +template VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI* = + VK_PIPELINE_STAGE_2_SUBPASS_SHADER_BIT_HUAWEI +const VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI*: VkShaderStageFlagBits = VkShaderStageFlagBits(16384) + +# Extension: VK_HUAWEI_invocation_mask +const VK_HUAWEI_INVOCATION_MASK_SPEC_VERSION* = 1 +const VK_HUAWEI_INVOCATION_MASK_EXTENSION_NAME* = "VK_HUAWEI_invocation_mask" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI*: VkStructureType = VkStructureType(1000370000) +const VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI*: VkAccessFlagBits2 = VkAccessFlagBits2(549755813888) +const VK_IMAGE_USAGE_INVOCATION_MASK_BIT_HUAWEI*: VkImageUsageFlagBits = VkImageUsageFlagBits(262144) +const VK_PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(1099511627776) + +# Extension: VK_NV_external_memory_rdma +const VK_NV_EXTERNAL_MEMORY_RDMA_SPEC_VERSION* = 1 +const VK_NV_EXTERNAL_MEMORY_RDMA_EXTENSION_NAME* = "VK_NV_external_memory_rdma" +const VK_STRUCTURE_TYPE_MEMORY_GET_REMOTE_ADDRESS_INFO_NV*: VkStructureType = VkStructureType(1000371000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV*: VkStructureType = VkStructureType(1000371001) +const VK_MEMORY_PROPERTY_RDMA_CAPABLE_BIT_NV*: VkMemoryPropertyFlagBits = VkMemoryPropertyFlagBits(256) +const VK_EXTERNAL_MEMORY_HANDLE_TYPE_RDMA_ADDRESS_BIT_NV*: VkExternalMemoryHandleTypeFlagBits = VkExternalMemoryHandleTypeFlagBits(4096) + +# Extension: VK_EXT_pipeline_properties +const VK_EXT_PIPELINE_PROPERTIES_SPEC_VERSION* = 1 +const VK_EXT_PIPELINE_PROPERTIES_EXTENSION_NAME* = "VK_EXT_pipeline_properties" +const VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT*: VkStructureType = VkStructureType(1000372000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT*: VkStructureType = VkStructureType(1000372001) +template VK_STRUCTURE_TYPE_PIPELINE_INFO_EXT* = + VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR + +# Extension: VK_NV_external_sci_sync +const VK_NV_EXTERNAL_SCI_SYNC_SPEC_VERSION* = 2 +const VK_NV_EXTERNAL_SCI_SYNC_EXTENSION_NAME* = "VK_NV_external_sci_sync" +const VK_STRUCTURE_TYPE_IMPORT_FENCE_SCI_SYNC_INFO_NV*: VkStructureType = VkStructureType(1000373000) +const VK_STRUCTURE_TYPE_EXPORT_FENCE_SCI_SYNC_INFO_NV*: VkStructureType = VkStructureType(1000373001) +const VK_STRUCTURE_TYPE_FENCE_GET_SCI_SYNC_INFO_NV*: VkStructureType = VkStructureType(1000373002) +const VK_STRUCTURE_TYPE_SCI_SYNC_ATTRIBUTES_INFO_NV*: VkStructureType = VkStructureType(1000373003) +const VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_SCI_SYNC_INFO_NV*: VkStructureType = VkStructureType(1000373004) +const VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_SCI_SYNC_INFO_NV*: VkStructureType = VkStructureType(1000373005) +const VK_STRUCTURE_TYPE_SEMAPHORE_GET_SCI_SYNC_INFO_NV*: VkStructureType = VkStructureType(1000373006) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SCI_SYNC_FEATURES_NV*: VkStructureType = VkStructureType(1000373007) +const VK_EXTERNAL_FENCE_HANDLE_TYPE_SCI_SYNC_OBJ_BIT_NV*: VkExternalFenceHandleTypeFlagBits = VkExternalFenceHandleTypeFlagBits(16) +const VK_EXTERNAL_FENCE_HANDLE_TYPE_SCI_SYNC_FENCE_BIT_NV*: VkExternalFenceHandleTypeFlagBits = VkExternalFenceHandleTypeFlagBits(32) +const VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SCI_SYNC_OBJ_BIT_NV*: VkExternalSemaphoreHandleTypeFlagBits = VkExternalSemaphoreHandleTypeFlagBits(32) + +# Extension: VK_NV_external_memory_sci_buf +const VK_NV_EXTERNAL_MEMORY_SCI_BUF_SPEC_VERSION* = 2 +const VK_NV_EXTERNAL_MEMORY_SCI_BUF_EXTENSION_NAME* = "VK_NV_external_memory_sci_buf" +const VK_STRUCTURE_TYPE_IMPORT_MEMORY_SCI_BUF_INFO_NV*: VkStructureType = VkStructureType(1000374000) +const VK_STRUCTURE_TYPE_EXPORT_MEMORY_SCI_BUF_INFO_NV*: VkStructureType = VkStructureType(1000374001) +const VK_STRUCTURE_TYPE_MEMORY_GET_SCI_BUF_INFO_NV*: VkStructureType = VkStructureType(1000374002) +const VK_STRUCTURE_TYPE_MEMORY_SCI_BUF_PROPERTIES_NV*: VkStructureType = VkStructureType(1000374003) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_SCI_BUF_FEATURES_NV*: VkStructureType = VkStructureType(1000374004) +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SCI_BUF_FEATURES_NV* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_SCI_BUF_FEATURES_NV +const VK_EXTERNAL_MEMORY_HANDLE_TYPE_SCI_BUF_BIT_NV*: VkExternalMemoryHandleTypeFlagBits = VkExternalMemoryHandleTypeFlagBits(8192) + +# Extension: VK_EXT_extension_376 +const VK_EXT_EXTENSION_376_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_376_EXTENSION_NAME* = "VK_EXT_extension_376" + +# Extension: VK_EXT_multisampled_render_to_single_sampled +const VK_EXT_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_SPEC_VERSION* = 1 +const VK_EXT_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_EXTENSION_NAME* = "VK_EXT_multisampled_render_to_single_sampled" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT*: VkStructureType = VkStructureType(1000376000) +const VK_STRUCTURE_TYPE_SUBPASS_RESOLVE_PERFORMANCE_QUERY_EXT*: VkStructureType = VkStructureType(1000376001) +const VK_STRUCTURE_TYPE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_EXT*: VkStructureType = VkStructureType(1000376002) +const VK_IMAGE_CREATE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_BIT_EXT*: VkImageCreateFlagBits = VkImageCreateFlagBits(262144) + +# Extension: VK_EXT_extended_dynamic_state2 +const VK_EXT_EXTENDED_DYNAMIC_STATE_2_SPEC_VERSION* = 1 +const VK_EXT_EXTENDED_DYNAMIC_STATE_2_EXTENSION_NAME* = "VK_EXT_extended_dynamic_state2" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT*: VkStructureType = VkStructureType(1000377000) +const VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT*: VkDynamicState = VkDynamicState(1000377000) +template VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE_EXT* = + VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE +template VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE_EXT* = + VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE +const VK_DYNAMIC_STATE_LOGIC_OP_EXT*: VkDynamicState = VkDynamicState(1000377003) +template VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE_EXT* = + VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE + +# Extension: VK_QNX_screen_surface +const VK_QNX_SCREEN_SURFACE_SPEC_VERSION* = 1 +const VK_QNX_SCREEN_SURFACE_EXTENSION_NAME* = "VK_QNX_screen_surface" +const VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX*: VkStructureType = VkStructureType(1000378000) + +# Extension: VK_KHR_extension_380 +const VK_KHR_EXTENSION_380_SPEC_VERSION* = 0 +const VK_KHR_EXTENSION_380_EXTENSION_NAME* = "VK_KHR_extension_380" + +# Extension: VK_KHR_extension_381 +const VK_KHR_EXTENSION_381_SPEC_VERSION* = 0 +const VK_KHR_EXTENSION_381_EXTENSION_NAME* = "VK_KHR_extension_381" + +# Extension: VK_EXT_color_write_enable +const VK_EXT_COLOR_WRITE_ENABLE_SPEC_VERSION* = 1 +const VK_EXT_COLOR_WRITE_ENABLE_EXTENSION_NAME* = "VK_EXT_color_write_enable" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT*: VkStructureType = VkStructureType(1000381000) +const VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000381001) +const VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT*: VkDynamicState = VkDynamicState(1000381000) + +# Extension: VK_EXT_primitives_generated_query +const VK_EXT_PRIMITIVES_GENERATED_QUERY_SPEC_VERSION* = 1 +const VK_EXT_PRIMITIVES_GENERATED_QUERY_EXTENSION_NAME* = "VK_EXT_primitives_generated_query" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT*: VkStructureType = VkStructureType(1000382000) +const VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT*: VkQueryType = VkQueryType(1000382000) + +# Extension: VK_EXT_extension_384 +const VK_EXT_EXTENSION_384_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_384_EXTENSION_NAME* = "VK_EXT_extension_384" + +# Extension: VK_MESA_extension_385 +const VK_MESA_EXTENSION_385_SPEC_VERSION* = 0 +const VK_MESA_EXTENSION_385_EXTENSION_NAME* = "VK_MESA_extension_385" + +# Extension: VK_GOOGLE_extension_386 +const VK_GOOGLE_EXTENSION_386_SPEC_VERSION* = 0 +const VK_GOOGLE_EXTENSION_386_EXTENSION_NAME* = "VK_GOOGLE_extension_386" + +# Extension: VK_KHR_ray_tracing_maintenance1 +const VK_KHR_RAY_TRACING_MAINTENANCE_1_SPEC_VERSION* = 1 +const VK_KHR_RAY_TRACING_MAINTENANCE_1_EXTENSION_NAME* = "VK_KHR_ray_tracing_maintenance1" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR*: VkStructureType = VkStructureType(1000386000) +const VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR*: VkQueryType = VkQueryType(1000386000) +const VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHR*: VkQueryType = VkQueryType(1000386001) +const VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHR*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(268435456) +const VK_ACCESS_2_SHADER_BINDING_TABLE_READ_BIT_KHR*: VkAccessFlagBits2 = VkAccessFlagBits2(1099511627776) + +# Extension: VK_EXT_extension_388 +const VK_EXT_EXTENSION_388_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_388_EXTENSION_NAME* = "VK_EXT_extension_388" + +# Extension: VK_EXT_global_priority_query +const VK_EXT_GLOBAL_PRIORITY_QUERY_SPEC_VERSION* = 1 +const VK_EXT_GLOBAL_PRIORITY_QUERY_EXTENSION_NAME* = "VK_EXT_global_priority_query" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR +template VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT* = + VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR + +# Extension: VK_EXT_extension_390 +const VK_EXT_EXTENSION_390_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_390_EXTENSION_NAME* = "VK_EXT_extension_390" + +# Extension: VK_EXT_extension_391 +const VK_EXT_EXTENSION_391_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_391_EXTENSION_NAME* = "VK_EXT_extension_391" + +# Extension: VK_EXT_image_view_min_lod +const VK_EXT_IMAGE_VIEW_MIN_LOD_SPEC_VERSION* = 1 +const VK_EXT_IMAGE_VIEW_MIN_LOD_EXTENSION_NAME* = "VK_EXT_image_view_min_lod" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT*: VkStructureType = VkStructureType(1000391000) +const VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000391001) + +# Extension: VK_EXT_multi_draw +const VK_EXT_MULTI_DRAW_SPEC_VERSION* = 1 +const VK_EXT_MULTI_DRAW_EXTENSION_NAME* = "VK_EXT_multi_draw" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT*: VkStructureType = VkStructureType(1000392000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000392001) + +# Extension: VK_EXT_image_2d_view_of_3d +const VK_EXT_IMAGE_2D_VIEW_OF_3D_SPEC_VERSION* = 1 +const VK_EXT_IMAGE_2D_VIEW_OF_3D_EXTENSION_NAME* = "VK_EXT_image_2d_view_of_3d" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT*: VkStructureType = VkStructureType(1000393000) +const VK_IMAGE_CREATE_2D_VIEW_COMPATIBLE_BIT_EXT*: VkImageCreateFlagBits = VkImageCreateFlagBits(131072) + +# Extension: VK_KHR_portability_enumeration +const VK_KHR_PORTABILITY_ENUMERATION_SPEC_VERSION* = 1 +const VK_KHR_PORTABILITY_ENUMERATION_EXTENSION_NAME* = "VK_KHR_portability_enumeration" +const VK_INSTANCE_CREATE_ENUMERATE_PORTABILITY_BIT_KHR*: VkInstanceCreateFlagBits = VkInstanceCreateFlagBits(1) + +# Extension: VK_EXT_shader_tile_image +const VK_EXT_SHADER_TILE_IMAGE_SPEC_VERSION* = 1 +const VK_EXT_SHADER_TILE_IMAGE_EXTENSION_NAME* = "VK_EXT_shader_tile_image" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_FEATURES_EXT*: VkStructureType = VkStructureType(1000395000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000395001) + +# Extension: VK_EXT_opacity_micromap +const VK_EXT_OPACITY_MICROMAP_SPEC_VERSION* = 2 +const VK_EXT_OPACITY_MICROMAP_EXTENSION_NAME* = "VK_EXT_opacity_micromap" +const VK_STRUCTURE_TYPE_MICROMAP_BUILD_INFO_EXT*: VkStructureType = VkStructureType(1000396000) +const VK_STRUCTURE_TYPE_MICROMAP_VERSION_INFO_EXT*: VkStructureType = VkStructureType(1000396001) +const VK_STRUCTURE_TYPE_COPY_MICROMAP_INFO_EXT*: VkStructureType = VkStructureType(1000396002) +const VK_STRUCTURE_TYPE_COPY_MICROMAP_TO_MEMORY_INFO_EXT*: VkStructureType = VkStructureType(1000396003) +const VK_STRUCTURE_TYPE_COPY_MEMORY_TO_MICROMAP_INFO_EXT*: VkStructureType = VkStructureType(1000396004) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_FEATURES_EXT*: VkStructureType = VkStructureType(1000396005) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000396006) +const VK_STRUCTURE_TYPE_MICROMAP_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000396007) +const VK_STRUCTURE_TYPE_MICROMAP_BUILD_SIZES_INFO_EXT*: VkStructureType = VkStructureType(1000396008) +const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_OPACITY_MICROMAP_EXT*: VkStructureType = VkStructureType(1000396009) +const VK_PIPELINE_STAGE_2_MICROMAP_BUILD_BIT_EXT*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(1073741824) +const VK_ACCESS_2_MICROMAP_READ_BIT_EXT*: VkAccessFlagBits2 = VkAccessFlagBits2(17592186044416) +const VK_ACCESS_2_MICROMAP_WRITE_BIT_EXT*: VkAccessFlagBits2 = VkAccessFlagBits2(35184372088832) +const VK_QUERY_TYPE_MICROMAP_SERIALIZATION_SIZE_EXT*: VkQueryType = VkQueryType(1000396000) +const VK_QUERY_TYPE_MICROMAP_COMPACTED_SIZE_EXT*: VkQueryType = VkQueryType(1000396001) +const VK_OBJECT_TYPE_MICROMAP_EXT*: VkObjectType = VkObjectType(1000396000) +const VK_BUFFER_USAGE_MICROMAP_BUILD_INPUT_READ_ONLY_BIT_EXT*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(8388608) +const VK_BUFFER_USAGE_MICROMAP_STORAGE_BIT_EXT*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(16777216) +const VK_PIPELINE_CREATE_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(16777216) +const VK_GEOMETRY_INSTANCE_FORCE_OPACITY_MICROMAP_2_STATE_EXT*: VkGeometryInstanceFlagBitsKHR = VkGeometryInstanceFlagBitsKHR(16) +const VK_GEOMETRY_INSTANCE_DISABLE_OPACITY_MICROMAPS_EXT*: VkGeometryInstanceFlagBitsKHR = VkGeometryInstanceFlagBitsKHR(32) +const VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_UPDATE_EXT*: VkBuildAccelerationStructureFlagBitsKHR = VkBuildAccelerationStructureFlagBitsKHR(64) +const VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DISABLE_OPACITY_MICROMAPS_EXT*: VkBuildAccelerationStructureFlagBitsKHR = VkBuildAccelerationStructureFlagBitsKHR(128) +const VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_DATA_UPDATE_EXT*: VkBuildAccelerationStructureFlagBitsKHR = VkBuildAccelerationStructureFlagBitsKHR(256) + +# Extension: VK_NV_displacement_micromap +const VK_NV_DISPLACEMENT_MICROMAP_SPEC_VERSION* = 2 +const VK_NV_DISPLACEMENT_MICROMAP_EXTENSION_NAME* = "VK_NV_displacement_micromap" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISPLACEMENT_MICROMAP_FEATURES_NV*: VkStructureType = VkStructureType(1000397000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISPLACEMENT_MICROMAP_PROPERTIES_NV*: VkStructureType = VkStructureType(1000397001) +const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_DISPLACEMENT_MICROMAP_NV*: VkStructureType = VkStructureType(1000397002) +const VK_PIPELINE_CREATE_RAY_TRACING_DISPLACEMENT_MICROMAP_BIT_NV*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(268435456) +const VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DISPLACEMENT_MICROMAP_UPDATE_NV*: VkBuildAccelerationStructureFlagBitsKHR = VkBuildAccelerationStructureFlagBitsKHR(512) +const VK_MICROMAP_TYPE_DISPLACEMENT_MICROMAP_NV*: VkMicromapTypeEXT = VkMicromapTypeEXT(1000397000) + +# Extension: VK_JUICE_extension_399 +const VK_JUICE_EXTENSION_399_SPEC_VERSION* = 0 +const VK_JUICE_EXTENSION_399_EXTENSION_NAME* = "VK_JUICE_extension_399" + +# Extension: VK_JUICE_extension_400 +const VK_JUICE_EXTENSION_400_SPEC_VERSION* = 0 +const VK_JUICE_EXTENSION_400_EXTENSION_NAME* = "VK_JUICE_extension_400" + +# Extension: VK_EXT_load_store_op_none +const VK_EXT_LOAD_STORE_OP_NONE_SPEC_VERSION* = 1 +const VK_EXT_LOAD_STORE_OP_NONE_EXTENSION_NAME* = "VK_EXT_load_store_op_none" +const VK_ATTACHMENT_LOAD_OP_NONE_EXT*: VkAttachmentLoadOp = VkAttachmentLoadOp(1000400000) +template VK_ATTACHMENT_STORE_OP_NONE_EXT* = + VK_ATTACHMENT_STORE_OP_NONE + +# Extension: VK_FB_extension_402 +const VK_FB_EXTENSION_402_SPEC_VERSION* = 0 +const VK_FB_EXTENSION_402_EXTENSION_NAME* = "VK_FB_extension_402" + +# Extension: VK_FB_extension_403 +const VK_FB_EXTENSION_403_SPEC_VERSION* = 0 +const VK_FB_EXTENSION_403_EXTENSION_NAME* = "VK_FB_extension_403" + +# Extension: VK_FB_extension_404 +const VK_FB_EXTENSION_404_SPEC_VERSION* = 0 +const VK_FB_EXTENSION_404_EXTENSION_NAME* = "VK_FB_extension_404" + +# Extension: VK_HUAWEI_cluster_culling_shader +const VK_HUAWEI_CLUSTER_CULLING_SHADER_SPEC_VERSION* = 2 +const VK_HUAWEI_CLUSTER_CULLING_SHADER_EXTENSION_NAME* = "VK_HUAWEI_cluster_culling_shader" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_FEATURES_HUAWEI*: VkStructureType = VkStructureType(1000404000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_PROPERTIES_HUAWEI*: VkStructureType = VkStructureType(1000404001) +const VK_PIPELINE_STAGE_2_CLUSTER_CULLING_SHADER_BIT_HUAWEI*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(2199023255552) +const VK_SHADER_STAGE_CLUSTER_CULLING_BIT_HUAWEI*: VkShaderStageFlagBits = VkShaderStageFlagBits(524288) +const VK_QUERY_PIPELINE_STATISTIC_CLUSTER_CULLING_SHADER_INVOCATIONS_BIT_HUAWEI*: VkQueryPipelineStatisticFlagBits = VkQueryPipelineStatisticFlagBits(8192) + +# Extension: VK_HUAWEI_extension_406 +const VK_HUAWEI_EXTENSION_406_SPEC_VERSION* = 0 +const VK_HUAWEI_EXTENSION_406_EXTENSION_NAME* = "VK_HUAWEI_extension_406" + +# Extension: VK_GGP_extension_407 +const VK_GGP_EXTENSION_407_SPEC_VERSION* = 0 +const VK_GGP_EXTENSION_407_EXTENSION_NAME* = "VK_GGP_extension_407" + +# Extension: VK_GGP_extension_408 +const VK_GGP_EXTENSION_408_SPEC_VERSION* = 0 +const VK_GGP_EXTENSION_408_EXTENSION_NAME* = "VK_GGP_extension_408" + +# Extension: VK_GGP_extension_409 +const VK_GGP_EXTENSION_409_SPEC_VERSION* = 0 +const VK_GGP_EXTENSION_409_EXTENSION_NAME* = "VK_GGP_extension_409" + +# Extension: VK_GGP_extension_410 +const VK_GGP_EXTENSION_410_SPEC_VERSION* = 0 +const VK_GGP_EXTENSION_410_EXTENSION_NAME* = "VK_GGP_extension_410" + +# Extension: VK_GGP_extension_411 +const VK_GGP_EXTENSION_411_SPEC_VERSION* = 0 +const VK_GGP_EXTENSION_411_EXTENSION_NAME* = "VK_GGP_extension_411" + +# Extension: VK_EXT_border_color_swizzle +const VK_EXT_BORDER_COLOR_SWIZZLE_SPEC_VERSION* = 1 +const VK_EXT_BORDER_COLOR_SWIZZLE_EXTENSION_NAME* = "VK_EXT_border_color_swizzle" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT*: VkStructureType = VkStructureType(1000411000) +const VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000411001) + +# Extension: VK_EXT_pageable_device_local_memory +const VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_SPEC_VERSION* = 1 +const VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_EXTENSION_NAME* = "VK_EXT_pageable_device_local_memory" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT*: VkStructureType = VkStructureType(1000412000) + +# Extension: VK_KHR_maintenance4 +const VK_KHR_MAINTENANCE_4_SPEC_VERSION* = 2 +const VK_KHR_MAINTENANCE_4_EXTENSION_NAME* = "VK_KHR_maintenance4" +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES +template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR* = + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES +template VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS_KHR* = + VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS +template VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS_KHR* = + VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS +template VK_IMAGE_ASPECT_NONE_KHR* = + VK_IMAGE_ASPECT_NONE + +# Extension: VK_HUAWEI_extension_415 +const VK_HUAWEI_EXTENSION_415_SPEC_VERSION* = 0 +const VK_HUAWEI_EXTENSION_415_EXTENSION_NAME* = "VK_HUAWEI_extension_415" + +# Extension: VK_ARM_shader_core_properties +const VK_ARM_SHADER_CORE_PROPERTIES_SPEC_VERSION* = 1 +const VK_ARM_SHADER_CORE_PROPERTIES_EXTENSION_NAME* = "VK_ARM_shader_core_properties" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_ARM*: VkStructureType = VkStructureType(1000415000) + +# Extension: VK_KHR_extension_417 +const VK_KHR_EXTENSION_417_SPEC_VERSION* = 0 +const VK_KHR_EXTENSION_417_EXTENSION_NAME* = "VK_KHR_extension_417" + +# Extension: VK_ARM_extension_418 +const VK_ARM_EXTENSION_418_SPEC_VERSION* = 0 +const VK_ARM_EXTENSION_418_EXTENSION_NAME* = "VK_ARM_extension_418" + +# Extension: VK_EXT_image_sliced_view_of_3d +const VK_EXT_IMAGE_SLICED_VIEW_OF_3D_SPEC_VERSION* = 1 +const VK_EXT_IMAGE_SLICED_VIEW_OF_3D_EXTENSION_NAME* = "VK_EXT_image_sliced_view_of_3d" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_SLICED_VIEW_OF_3D_FEATURES_EXT*: VkStructureType = VkStructureType(1000418000) +const VK_STRUCTURE_TYPE_IMAGE_VIEW_SLICED_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000418001) + +# Extension: VK_EXT_extension_420 +const VK_EXT_EXTENSION_420_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_420_EXTENSION_NAME* = "VK_EXT_extension_420" +const VK_SWAPCHAIN_CREATE_RESERVED_4_BIT_EXT*: VkSwapchainCreateFlagBitsKHR = VkSwapchainCreateFlagBitsKHR(16) + +# Extension: VK_VALVE_descriptor_set_host_mapping +const VK_VALVE_DESCRIPTOR_SET_HOST_MAPPING_SPEC_VERSION* = 1 +const VK_VALVE_DESCRIPTOR_SET_HOST_MAPPING_EXTENSION_NAME* = "VK_VALVE_descriptor_set_host_mapping" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE*: VkStructureType = VkStructureType(1000420000) +const VK_STRUCTURE_TYPE_DESCRIPTOR_SET_BINDING_REFERENCE_VALVE*: VkStructureType = VkStructureType(1000420001) +const VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_HOST_MAPPING_INFO_VALVE*: VkStructureType = VkStructureType(1000420002) + +# Extension: VK_EXT_depth_clamp_zero_one +const VK_EXT_DEPTH_CLAMP_ZERO_ONE_SPEC_VERSION* = 1 +const VK_EXT_DEPTH_CLAMP_ZERO_ONE_EXTENSION_NAME* = "VK_EXT_depth_clamp_zero_one" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_EXT*: VkStructureType = VkStructureType(1000421000) + +# Extension: VK_EXT_non_seamless_cube_map +const VK_EXT_NON_SEAMLESS_CUBE_MAP_SPEC_VERSION* = 1 +const VK_EXT_NON_SEAMLESS_CUBE_MAP_EXTENSION_NAME* = "VK_EXT_non_seamless_cube_map" +const VK_SAMPLER_CREATE_NON_SEAMLESS_CUBE_MAP_BIT_EXT*: VkSamplerCreateFlagBits = VkSamplerCreateFlagBits(4) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT*: VkStructureType = VkStructureType(1000422000) + +# Extension: VK_ARM_extension_424 +const VK_ARM_EXTENSION_424_SPEC_VERSION* = 0 +const VK_ARM_EXTENSION_424_EXTENSION_NAME* = "VK_ARM_extension_424" + +# Extension: VK_ARM_extension_425 +const VK_ARM_EXTENSION_425_SPEC_VERSION* = 0 +const VK_ARM_EXTENSION_425_EXTENSION_NAME* = "VK_ARM_extension_425" + +# Extension: VK_QCOM_fragment_density_map_offset +const VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_SPEC_VERSION* = 1 +const VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_EXTENSION_NAME* = "VK_QCOM_fragment_density_map_offset" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM*: VkStructureType = VkStructureType(1000425000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM*: VkStructureType = VkStructureType(1000425001) +const VK_STRUCTURE_TYPE_SUBPASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_QCOM*: VkStructureType = VkStructureType(1000425002) +const VK_IMAGE_CREATE_FRAGMENT_DENSITY_MAP_OFFSET_BIT_QCOM*: VkImageCreateFlagBits = VkImageCreateFlagBits(32768) + +# Extension: VK_NV_copy_memory_indirect +const VK_NV_COPY_MEMORY_INDIRECT_SPEC_VERSION* = 1 +const VK_NV_COPY_MEMORY_INDIRECT_EXTENSION_NAME* = "VK_NV_copy_memory_indirect" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_FEATURES_NV*: VkStructureType = VkStructureType(1000426000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_PROPERTIES_NV*: VkStructureType = VkStructureType(1000426001) + +# Extension: VK_NV_memory_decompression +const VK_NV_MEMORY_DECOMPRESSION_SPEC_VERSION* = 1 +const VK_NV_MEMORY_DECOMPRESSION_EXTENSION_NAME* = "VK_NV_memory_decompression" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_FEATURES_NV*: VkStructureType = VkStructureType(1000427000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_PROPERTIES_NV*: VkStructureType = VkStructureType(1000427001) + +# Extension: VK_NV_device_generated_commands_compute +const VK_NV_DEVICE_GENERATED_COMMANDS_COMPUTE_SPEC_VERSION* = 2 +const VK_NV_DEVICE_GENERATED_COMMANDS_COMPUTE_EXTENSION_NAME* = "VK_NV_device_generated_commands_compute" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_COMPUTE_FEATURES_NV*: VkStructureType = VkStructureType(1000428000) +const VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_INDIRECT_BUFFER_INFO_NV*: VkStructureType = VkStructureType(1000428001) +const VK_STRUCTURE_TYPE_PIPELINE_INDIRECT_DEVICE_ADDRESS_INFO_NV*: VkStructureType = VkStructureType(1000428002) +const VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NV*: VkIndirectCommandsTokenTypeNV = VkIndirectCommandsTokenTypeNV(1000428003) +const VK_INDIRECT_COMMANDS_TOKEN_TYPE_DISPATCH_NV*: VkIndirectCommandsTokenTypeNV = VkIndirectCommandsTokenTypeNV(1000428004) +const VK_DESCRIPTOR_SET_LAYOUT_CREATE_INDIRECT_BINDABLE_BIT_NV*: VkDescriptorSetLayoutCreateFlagBits = VkDescriptorSetLayoutCreateFlagBits(128) + +# Extension: VK_NV_extension_430 +const VK_NV_EXTENSION_430_SPEC_VERSION* = 0 +const VK_NV_EXTENSION_430_EXTENSION_NAME* = "VK_NV_extension_430" + +# Extension: VK_NV_linear_color_attachment +const VK_NV_LINEAR_COLOR_ATTACHMENT_SPEC_VERSION* = 1 +const VK_NV_LINEAR_COLOR_ATTACHMENT_EXTENSION_NAME* = "VK_NV_linear_color_attachment" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV*: VkStructureType = VkStructureType(1000430000) +const VK_FORMAT_FEATURE_2_LINEAR_COLOR_ATTACHMENT_BIT_NV*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(274877906944) + +# Extension: VK_NV_extension_432 +const VK_NV_EXTENSION_432_SPEC_VERSION* = 0 +const VK_NV_EXTENSION_432_EXTENSION_NAME* = "VK_NV_extension_432" + +# Extension: VK_NV_extension_433 +const VK_NV_EXTENSION_433_SPEC_VERSION* = 0 +const VK_NV_EXTENSION_433_EXTENSION_NAME* = "VK_NV_extension_433" + +# Extension: VK_GOOGLE_surfaceless_query +const VK_GOOGLE_SURFACELESS_QUERY_SPEC_VERSION* = 2 +const VK_GOOGLE_SURFACELESS_QUERY_EXTENSION_NAME* = "VK_GOOGLE_surfaceless_query" + +# Extension: VK_KHR_extension_435 +const VK_KHR_EXTENSION_435_SPEC_VERSION* = 0 +const VK_KHR_EXTENSION_435_EXTENSION_NAME* = "VK_KHR_extension_435" + +# Extension: VK_EXT_application_parameters +const VK_EXT_APPLICATION_PARAMETERS_SPEC_VERSION* = 1 +const VK_EXT_APPLICATION_PARAMETERS_EXTENSION_NAME* = "VK_EXT_application_parameters" +const VK_STRUCTURE_TYPE_APPLICATION_PARAMETERS_EXT*: VkStructureType = VkStructureType(1000435000) + +# Extension: VK_EXT_extension_437 +const VK_EXT_EXTENSION_437_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_437_EXTENSION_NAME* = "VK_EXT_extension_437" + +# Extension: VK_EXT_image_compression_control_swapchain +const VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_SPEC_VERSION* = 1 +const VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_EXTENSION_NAME* = "VK_EXT_image_compression_control_swapchain" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT*: VkStructureType = VkStructureType(1000437000) + +# Extension: VK_SEC_extension_439 +const VK_SEC_EXTENSION_439_SPEC_VERSION* = 0 +const VK_SEC_EXTENSION_439_EXTENSION_NAME* = "VK_SEC_extension_439" + +# Extension: VK_QCOM_extension_440 +const VK_QCOM_EXTENSION_440_SPEC_VERSION* = 0 +const VK_QCOM_EXTENSION_440_EXTENSION_NAME* = "VK_QCOM_extension_440" +const VK_QUEUE_RESERVED_7_BIT_QCOM*: VkQueueFlagBits = VkQueueFlagBits(128) +const VK_DEVICE_QUEUE_CREATE_RESERVED_1_BIT_QCOM*: VkDeviceQueueCreateFlagBits = VkDeviceQueueCreateFlagBits(2) + +# Extension: VK_QCOM_image_processing +const VK_QCOM_IMAGE_PROCESSING_SPEC_VERSION* = 1 +const VK_QCOM_IMAGE_PROCESSING_EXTENSION_NAME* = "VK_QCOM_image_processing" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM*: VkStructureType = VkStructureType(1000440000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM*: VkStructureType = VkStructureType(1000440001) +const VK_STRUCTURE_TYPE_IMAGE_VIEW_SAMPLE_WEIGHT_CREATE_INFO_QCOM*: VkStructureType = VkStructureType(1000440002) +const VK_SAMPLER_CREATE_IMAGE_PROCESSING_BIT_QCOM*: VkSamplerCreateFlagBits = VkSamplerCreateFlagBits(16) +const VK_IMAGE_USAGE_SAMPLE_WEIGHT_BIT_QCOM*: VkImageUsageFlagBits = VkImageUsageFlagBits(1048576) +const VK_IMAGE_USAGE_SAMPLE_BLOCK_MATCH_BIT_QCOM*: VkImageUsageFlagBits = VkImageUsageFlagBits(2097152) +const VK_DESCRIPTOR_TYPE_SAMPLE_WEIGHT_IMAGE_QCOM*: VkDescriptorType = VkDescriptorType(1000440000) +const VK_DESCRIPTOR_TYPE_BLOCK_MATCH_IMAGE_QCOM*: VkDescriptorType = VkDescriptorType(1000440001) +const VK_FORMAT_FEATURE_2_WEIGHT_IMAGE_BIT_QCOM*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(17179869184) +const VK_FORMAT_FEATURE_2_WEIGHT_SAMPLED_IMAGE_BIT_QCOM*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(34359738368) +const VK_FORMAT_FEATURE_2_BLOCK_MATCHING_BIT_QCOM*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(68719476736) +const VK_FORMAT_FEATURE_2_BOX_FILTER_SAMPLED_BIT_QCOM*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(137438953472) + +# Extension: VK_COREAVI_extension_442 +const VK_COREAVI_EXTENSION_442_SPEC_VERSION* = 0 +const VK_COREAVI_EXTENSION_442_EXTENSION_NAME* = "VK_COREAVI_extension_442" + +# Extension: VK_COREAVI_extension_443 +const VK_COREAVI_EXTENSION_443_SPEC_VERSION* = 0 +const VK_COREAVI_EXTENSION_443_EXTENSION_NAME* = "VK_COREAVI_extension_443" + +# Extension: VK_COREAVI_extension_444 +const VK_COREAVI_EXTENSION_444_SPEC_VERSION* = 0 +const VK_COREAVI_EXTENSION_444_EXTENSION_NAME* = "VK_COREAVI_extension_444" +const VK_COMMAND_POOL_RESET_RESERVED_1_BIT_COREAVI*: VkCommandPoolResetFlagBits = VkCommandPoolResetFlagBits(2) + +# Extension: VK_COREAVI_extension_445 +const VK_COREAVI_EXTENSION_445_SPEC_VERSION* = 0 +const VK_COREAVI_EXTENSION_445_EXTENSION_NAME* = "VK_COREAVI_extension_445" + +# Extension: VK_COREAVI_extension_446 +const VK_COREAVI_EXTENSION_446_SPEC_VERSION* = 0 +const VK_COREAVI_EXTENSION_446_EXTENSION_NAME* = "VK_COREAVI_extension_446" +const VK_IMAGE_USAGE_RESERVED_24_BIT_COREAVI*: VkImageUsageFlagBits = VkImageUsageFlagBits(16777216) + +# Extension: VK_COREAVI_extension_447 +const VK_COREAVI_EXTENSION_447_SPEC_VERSION* = 0 +const VK_COREAVI_EXTENSION_447_EXTENSION_NAME* = "VK_COREAVI_extension_447" + +# Extension: VK_SEC_extension_448 +const VK_SEC_EXTENSION_448_SPEC_VERSION* = 0 +const VK_SEC_EXTENSION_448_EXTENSION_NAME* = "VK_SEC_extension_448" + +# Extension: VK_SEC_extension_449 +const VK_SEC_EXTENSION_449_SPEC_VERSION* = 0 +const VK_SEC_EXTENSION_449_EXTENSION_NAME* = "VK_SEC_extension_449" + +# Extension: VK_SEC_extension_450 +const VK_SEC_EXTENSION_450_SPEC_VERSION* = 0 +const VK_SEC_EXTENSION_450_EXTENSION_NAME* = "VK_SEC_extension_450" + +# Extension: VK_SEC_extension_451 +const VK_SEC_EXTENSION_451_SPEC_VERSION* = 0 +const VK_SEC_EXTENSION_451_EXTENSION_NAME* = "VK_SEC_extension_451" + +# Extension: VK_NV_extension_452 +const VK_NV_EXTENSION_452_SPEC_VERSION* = 0 +const VK_NV_EXTENSION_452_EXTENSION_NAME* = "VK_NV_extension_452" + +# Extension: VK_ARM_extension_453 +const VK_ARM_EXTENSION_453_SPEC_VERSION* = 0 +const VK_ARM_EXTENSION_453_EXTENSION_NAME* = "VK_ARM_extension_453" +const VK_QUEUE_RESERVED_11_BIT_ARM*: VkQueueFlagBits = VkQueueFlagBits(2048) +const VK_PIPELINE_STAGE_2_RESERVED_43_BIT_ARM*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(8796093022208) +const VK_ACCESS_2_RESERVED_49_BIT_ARM*: VkAccessFlagBits2 = VkAccessFlagBits2(562949953421312) +const VK_ACCESS_2_RESERVED_50_BIT_ARM*: VkAccessFlagBits2 = VkAccessFlagBits2(1125899906842624) +const VK_FORMAT_FEATURE_2_RESERVED_47_BIT_ARM*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(140737488355328) + +# Extension: VK_EXT_external_memory_acquire_unmodified +const VK_EXT_EXTERNAL_MEMORY_ACQUIRE_UNMODIFIED_SPEC_VERSION* = 1 +const VK_EXT_EXTERNAL_MEMORY_ACQUIRE_UNMODIFIED_EXTENSION_NAME* = "VK_EXT_external_memory_acquire_unmodified" +const VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_ACQUIRE_UNMODIFIED_EXT*: VkStructureType = VkStructureType(1000453000) + +# Extension: VK_GOOGLE_extension_455 +const VK_GOOGLE_EXTENSION_455_SPEC_VERSION* = 0 +const VK_GOOGLE_EXTENSION_455_EXTENSION_NAME* = "VK_GOOGLE_extension_455" + +# Extension: VK_EXT_extended_dynamic_state3 +const VK_EXT_EXTENDED_DYNAMIC_STATE_3_SPEC_VERSION* = 2 +const VK_EXT_EXTENDED_DYNAMIC_STATE_3_EXTENSION_NAME* = "VK_EXT_extended_dynamic_state3" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_FEATURES_EXT*: VkStructureType = VkStructureType(1000455000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000455001) +const VK_DYNAMIC_STATE_TESSELLATION_DOMAIN_ORIGIN_EXT*: VkDynamicState = VkDynamicState(1000455002) +const VK_DYNAMIC_STATE_DEPTH_CLAMP_ENABLE_EXT*: VkDynamicState = VkDynamicState(1000455003) +const VK_DYNAMIC_STATE_POLYGON_MODE_EXT*: VkDynamicState = VkDynamicState(1000455004) +const VK_DYNAMIC_STATE_RASTERIZATION_SAMPLES_EXT*: VkDynamicState = VkDynamicState(1000455005) +const VK_DYNAMIC_STATE_SAMPLE_MASK_EXT*: VkDynamicState = VkDynamicState(1000455006) +const VK_DYNAMIC_STATE_ALPHA_TO_COVERAGE_ENABLE_EXT*: VkDynamicState = VkDynamicState(1000455007) +const VK_DYNAMIC_STATE_ALPHA_TO_ONE_ENABLE_EXT*: VkDynamicState = VkDynamicState(1000455008) +const VK_DYNAMIC_STATE_LOGIC_OP_ENABLE_EXT*: VkDynamicState = VkDynamicState(1000455009) +const VK_DYNAMIC_STATE_COLOR_BLEND_ENABLE_EXT*: VkDynamicState = VkDynamicState(1000455010) +const VK_DYNAMIC_STATE_COLOR_BLEND_EQUATION_EXT*: VkDynamicState = VkDynamicState(1000455011) +const VK_DYNAMIC_STATE_COLOR_WRITE_MASK_EXT*: VkDynamicState = VkDynamicState(1000455012) +const VK_DYNAMIC_STATE_RASTERIZATION_STREAM_EXT*: VkDynamicState = VkDynamicState(1000455013) +const VK_DYNAMIC_STATE_CONSERVATIVE_RASTERIZATION_MODE_EXT*: VkDynamicState = VkDynamicState(1000455014) +const VK_DYNAMIC_STATE_EXTRA_PRIMITIVE_OVERESTIMATION_SIZE_EXT*: VkDynamicState = VkDynamicState(1000455015) +const VK_DYNAMIC_STATE_DEPTH_CLIP_ENABLE_EXT*: VkDynamicState = VkDynamicState(1000455016) +const VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_ENABLE_EXT*: VkDynamicState = VkDynamicState(1000455017) +const VK_DYNAMIC_STATE_COLOR_BLEND_ADVANCED_EXT*: VkDynamicState = VkDynamicState(1000455018) +const VK_DYNAMIC_STATE_PROVOKING_VERTEX_MODE_EXT*: VkDynamicState = VkDynamicState(1000455019) +const VK_DYNAMIC_STATE_LINE_RASTERIZATION_MODE_EXT*: VkDynamicState = VkDynamicState(1000455020) +const VK_DYNAMIC_STATE_LINE_STIPPLE_ENABLE_EXT*: VkDynamicState = VkDynamicState(1000455021) +const VK_DYNAMIC_STATE_DEPTH_CLIP_NEGATIVE_ONE_TO_ONE_EXT*: VkDynamicState = VkDynamicState(1000455022) +const VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_ENABLE_NV*: VkDynamicState = VkDynamicState(1000455023) +const VK_DYNAMIC_STATE_VIEWPORT_SWIZZLE_NV*: VkDynamicState = VkDynamicState(1000455024) +const VK_DYNAMIC_STATE_COVERAGE_TO_COLOR_ENABLE_NV*: VkDynamicState = VkDynamicState(1000455025) +const VK_DYNAMIC_STATE_COVERAGE_TO_COLOR_LOCATION_NV*: VkDynamicState = VkDynamicState(1000455026) +const VK_DYNAMIC_STATE_COVERAGE_MODULATION_MODE_NV*: VkDynamicState = VkDynamicState(1000455027) +const VK_DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_ENABLE_NV*: VkDynamicState = VkDynamicState(1000455028) +const VK_DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_NV*: VkDynamicState = VkDynamicState(1000455029) +const VK_DYNAMIC_STATE_SHADING_RATE_IMAGE_ENABLE_NV*: VkDynamicState = VkDynamicState(1000455030) +const VK_DYNAMIC_STATE_REPRESENTATIVE_FRAGMENT_TEST_ENABLE_NV*: VkDynamicState = VkDynamicState(1000455031) +const VK_DYNAMIC_STATE_COVERAGE_REDUCTION_MODE_NV*: VkDynamicState = VkDynamicState(1000455032) + +# Extension: VK_EXT_extension_457 +const VK_EXT_EXTENSION_457_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_457_EXTENSION_NAME* = "VK_EXT_extension_457" + +# Extension: VK_EXT_extension_458 +const VK_EXT_EXTENSION_458_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_458_EXTENSION_NAME* = "VK_EXT_extension_458" + +# Extension: VK_EXT_subpass_merge_feedback +const VK_EXT_SUBPASS_MERGE_FEEDBACK_SPEC_VERSION* = 2 +const VK_EXT_SUBPASS_MERGE_FEEDBACK_EXTENSION_NAME* = "VK_EXT_subpass_merge_feedback" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT*: VkStructureType = VkStructureType(1000458000) +const VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT*: VkStructureType = VkStructureType(1000458001) +const VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000458002) +const VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000458003) + +# Extension: VK_LUNARG_direct_driver_loading +const VK_LUNARG_DIRECT_DRIVER_LOADING_SPEC_VERSION* = 1 +const VK_LUNARG_DIRECT_DRIVER_LOADING_EXTENSION_NAME* = "VK_LUNARG_direct_driver_loading" +const VK_STRUCTURE_TYPE_DIRECT_DRIVER_LOADING_INFO_LUNARG*: VkStructureType = VkStructureType(1000459000) +const VK_STRUCTURE_TYPE_DIRECT_DRIVER_LOADING_LIST_LUNARG*: VkStructureType = VkStructureType(1000459001) + +# Extension: VK_EXT_extension_461 +const VK_EXT_EXTENSION_461_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_461_EXTENSION_NAME* = "VK_EXT_extension_461" +const VK_FORMAT_FEATURE_2_RESERVED_39_BIT_EXT*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(549755813888) +const VK_IMAGE_USAGE_RESERVED_23_BIT_EXT*: VkImageUsageFlagBits = VkImageUsageFlagBits(8388608) + +# Extension: VK_EXT_extension_462 +const VK_EXT_EXTENSION_462_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_462_EXTENSION_NAME* = "VK_EXT_extension_462" + +# Extension: VK_EXT_shader_module_identifier +const VK_EXT_SHADER_MODULE_IDENTIFIER_SPEC_VERSION* = 1 +const VK_EXT_SHADER_MODULE_IDENTIFIER_EXTENSION_NAME* = "VK_EXT_shader_module_identifier" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT*: VkStructureType = VkStructureType(1000462000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000462001) +const VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000462002) +const VK_STRUCTURE_TYPE_SHADER_MODULE_IDENTIFIER_EXT*: VkStructureType = VkStructureType(1000462003) + +# Extension: VK_EXT_rasterization_order_attachment_access +const VK_EXT_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_SPEC_VERSION* = 1 +const VK_EXT_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_EXTENSION_NAME* = "VK_EXT_rasterization_order_attachment_access" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT*: VkStructureType = VkStructureType(1000342000) +const VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_EXT*: VkPipelineColorBlendStateCreateFlagBits = VkPipelineColorBlendStateCreateFlagBits(1) +const VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT*: VkPipelineDepthStencilStateCreateFlagBits = VkPipelineDepthStencilStateCreateFlagBits(1) +const VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT*: VkPipelineDepthStencilStateCreateFlagBits = VkPipelineDepthStencilStateCreateFlagBits(2) +const VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_EXT*: VkSubpassDescriptionFlagBits = VkSubpassDescriptionFlagBits(16) +const VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT*: VkSubpassDescriptionFlagBits = VkSubpassDescriptionFlagBits(32) +const VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT*: VkSubpassDescriptionFlagBits = VkSubpassDescriptionFlagBits(64) + +# Extension: VK_NV_optical_flow +const VK_NV_OPTICAL_FLOW_SPEC_VERSION* = 1 +const VK_NV_OPTICAL_FLOW_EXTENSION_NAME* = "VK_NV_optical_flow" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_FEATURES_NV*: VkStructureType = VkStructureType(1000464000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_PROPERTIES_NV*: VkStructureType = VkStructureType(1000464001) +const VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_INFO_NV*: VkStructureType = VkStructureType(1000464002) +const VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_PROPERTIES_NV*: VkStructureType = VkStructureType(1000464003) +const VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000464004) +const VK_STRUCTURE_TYPE_OPTICAL_FLOW_EXECUTE_INFO_NV*: VkStructureType = VkStructureType(1000464005) +const VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_PRIVATE_DATA_INFO_NV*: VkStructureType = VkStructureType(1000464010) +const VK_FORMAT_R16G16_S10_5_NV*: VkFormat = VkFormat(1000464000) +const VK_OBJECT_TYPE_OPTICAL_FLOW_SESSION_NV*: VkObjectType = VkObjectType(1000464000) +const VK_QUEUE_OPTICAL_FLOW_BIT_NV*: VkQueueFlagBits = VkQueueFlagBits(256) +const VK_PIPELINE_STAGE_2_OPTICAL_FLOW_BIT_NV*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(536870912) +const VK_ACCESS_2_OPTICAL_FLOW_READ_BIT_NV*: VkAccessFlagBits2 = VkAccessFlagBits2(4398046511104) +const VK_ACCESS_2_OPTICAL_FLOW_WRITE_BIT_NV*: VkAccessFlagBits2 = VkAccessFlagBits2(8796093022208) +const VK_FORMAT_FEATURE_2_OPTICAL_FLOW_IMAGE_BIT_NV*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(1099511627776) +const VK_FORMAT_FEATURE_2_OPTICAL_FLOW_VECTOR_BIT_NV*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(2199023255552) +const VK_FORMAT_FEATURE_2_OPTICAL_FLOW_COST_BIT_NV*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(4398046511104) + +# Extension: VK_EXT_legacy_dithering +const VK_EXT_LEGACY_DITHERING_SPEC_VERSION* = 1 +const VK_EXT_LEGACY_DITHERING_EXTENSION_NAME* = "VK_EXT_legacy_dithering" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_DITHERING_FEATURES_EXT*: VkStructureType = VkStructureType(1000465000) +const VK_SUBPASS_DESCRIPTION_ENABLE_LEGACY_DITHERING_BIT_EXT*: VkSubpassDescriptionFlagBits = VkSubpassDescriptionFlagBits(128) +const VK_RENDERING_ENABLE_LEGACY_DITHERING_BIT_EXT*: VkRenderingFlagBits = VkRenderingFlagBits(8) + +# Extension: VK_EXT_pipeline_protected_access +const VK_EXT_PIPELINE_PROTECTED_ACCESS_SPEC_VERSION* = 1 +const VK_EXT_PIPELINE_PROTECTED_ACCESS_EXTENSION_NAME* = "VK_EXT_pipeline_protected_access" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES_EXT*: VkStructureType = VkStructureType(1000466000) +const VK_PIPELINE_CREATE_NO_PROTECTED_ACCESS_BIT_EXT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(134217728) +const VK_PIPELINE_CREATE_PROTECTED_ACCESS_ONLY_BIT_EXT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(1073741824) + +# Extension: VK_EXT_extension_468 +const VK_EXT_EXTENSION_468_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_468_EXTENSION_NAME* = "VK_EXT_extension_468" + +# Extension: VK_ANDROID_extension_469 +const VK_ANDROID_EXTENSION_469_SPEC_VERSION* = 0 +const VK_ANDROID_EXTENSION_469_EXTENSION_NAME* = "VK_ANDROID_extension_469" +const VK_RESOLVE_MODE_EXTENSION_469_FLAG_4_BIT_ANDROID*: VkResolveModeFlagBits = VkResolveModeFlagBits(16) + +# Extension: VK_AMD_extension_470 +const VK_AMD_EXTENSION_470_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_470_EXTENSION_NAME* = "VK_AMD_extension_470" + +# Extension: VK_KHR_maintenance5 +const VK_KHR_MAINTENANCE_5_SPEC_VERSION* = 1 +const VK_KHR_MAINTENANCE_5_EXTENSION_NAME* = "VK_KHR_maintenance5" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_5_FEATURES_KHR*: VkStructureType = VkStructureType(1000470000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_5_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000470001) +const VK_STRUCTURE_TYPE_RENDERING_AREA_INFO_KHR*: VkStructureType = VkStructureType(1000470003) +const VK_STRUCTURE_TYPE_DEVICE_IMAGE_SUBRESOURCE_INFO_KHR*: VkStructureType = VkStructureType(1000470004) +const VK_FORMAT_A1B5G5R5_UNORM_PACK16_KHR*: VkFormat = VkFormat(1000470000) +const VK_FORMAT_A8_UNORM_KHR*: VkFormat = VkFormat(1000470001) +const VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_KHR*: VkStructureType = VkStructureType(1000338002) +const VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_KHR*: VkStructureType = VkStructureType(1000338003) +const VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000470005) +const VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000470006) +const VK_PIPELINE_CREATE_2_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(8) +const VK_PIPELINE_CREATE_2_DISPATCH_BASE_BIT_KHR*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(16) +const VK_PIPELINE_CREATE_2_DEFER_COMPILE_BIT_NV*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(32) +const VK_PIPELINE_CREATE_2_CAPTURE_STATISTICS_BIT_KHR*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(64) +const VK_PIPELINE_CREATE_2_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(128) +const VK_PIPELINE_CREATE_2_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_KHR*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(256) +const VK_PIPELINE_CREATE_2_EARLY_RETURN_ON_FAILURE_BIT_KHR*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(512) +const VK_PIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXT*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(1024) +const VK_PIPELINE_CREATE_2_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(8388608) +const VK_PIPELINE_CREATE_2_LIBRARY_BIT_KHR*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(2048) +const VK_PIPELINE_CREATE_2_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(4096) +const VK_PIPELINE_CREATE_2_RAY_TRACING_SKIP_AABBS_BIT_KHR*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(8192) +const VK_PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(16384) +const VK_PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(32768) +const VK_PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(65536) +const VK_PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(131072) +const VK_PIPELINE_CREATE_2_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(524288) +const VK_PIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_NV*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(262144) +const VK_PIPELINE_CREATE_2_RAY_TRACING_ALLOW_MOTION_BIT_NV*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(1048576) +const VK_PIPELINE_CREATE_2_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(2097152) +const VK_PIPELINE_CREATE_2_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(4194304) +const VK_PIPELINE_CREATE_2_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(16777216) +const VK_PIPELINE_CREATE_2_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(33554432) +const VK_PIPELINE_CREATE_2_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(67108864) +const VK_PIPELINE_CREATE_2_NO_PROTECTED_ACCESS_BIT_EXT*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(134217728) +const VK_PIPELINE_CREATE_2_PROTECTED_ACCESS_ONLY_BIT_EXT*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(1073741824) +const VK_PIPELINE_CREATE_2_RAY_TRACING_DISPLACEMENT_MICROMAP_BIT_NV*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(268435456) +const VK_PIPELINE_CREATE_2_DESCRIPTOR_BUFFER_BIT_EXT*: VkPipelineCreateFlagBits2KHR = VkPipelineCreateFlagBits2KHR(536870912) +const VK_BUFFER_USAGE_2_CONDITIONAL_RENDERING_BIT_EXT*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(512) +const VK_BUFFER_USAGE_2_SHADER_BINDING_TABLE_BIT_KHR*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(1024) +template VK_BUFFER_USAGE_2_RAY_TRACING_BIT_NV* = + VK_BUFFER_USAGE_2_SHADER_BINDING_TABLE_BIT_KHR +const VK_BUFFER_USAGE_2_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(2048) +const VK_BUFFER_USAGE_2_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(4096) +const VK_BUFFER_USAGE_2_VIDEO_DECODE_SRC_BIT_KHR*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(8192) +const VK_BUFFER_USAGE_2_VIDEO_DECODE_DST_BIT_KHR*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(16384) +const VK_BUFFER_USAGE_2_VIDEO_ENCODE_DST_BIT_KHR*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(32768) +const VK_BUFFER_USAGE_2_VIDEO_ENCODE_SRC_BIT_KHR*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(65536) +const VK_BUFFER_USAGE_2_SHADER_DEVICE_ADDRESS_BIT_KHR*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(131072) +const VK_BUFFER_USAGE_2_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(524288) +const VK_BUFFER_USAGE_2_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(1048576) +const VK_BUFFER_USAGE_2_SAMPLER_DESCRIPTOR_BUFFER_BIT_EXT*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(2097152) +const VK_BUFFER_USAGE_2_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(4194304) +const VK_BUFFER_USAGE_2_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXT*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(67108864) +const VK_BUFFER_USAGE_2_MICROMAP_BUILD_INPUT_READ_ONLY_BIT_EXT*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(8388608) +const VK_BUFFER_USAGE_2_MICROMAP_STORAGE_BIT_EXT*: VkBufferUsageFlagBits2KHR = VkBufferUsageFlagBits2KHR(16777216) + +# Extension: VK_AMD_extension_472 +const VK_AMD_EXTENSION_472_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_472_EXTENSION_NAME* = "VK_AMD_extension_472" + +# Extension: VK_AMD_extension_473 +const VK_AMD_EXTENSION_473_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_473_EXTENSION_NAME* = "VK_AMD_extension_473" + +# Extension: VK_AMD_extension_474 +const VK_AMD_EXTENSION_474_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_474_EXTENSION_NAME* = "VK_AMD_extension_474" + +# Extension: VK_AMD_extension_475 +const VK_AMD_EXTENSION_475_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_475_EXTENSION_NAME* = "VK_AMD_extension_475" + +# Extension: VK_AMD_extension_476 +const VK_AMD_EXTENSION_476_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_476_EXTENSION_NAME* = "VK_AMD_extension_476" + +# Extension: VK_AMD_extension_477 +const VK_AMD_EXTENSION_477_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_477_EXTENSION_NAME* = "VK_AMD_extension_477" + +# Extension: VK_AMD_extension_478 +const VK_AMD_EXTENSION_478_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_478_EXTENSION_NAME* = "VK_AMD_extension_478" + +# Extension: VK_AMD_extension_479 +const VK_AMD_EXTENSION_479_SPEC_VERSION* = 0 +const VK_AMD_EXTENSION_479_EXTENSION_NAME* = "VK_AMD_extension_479" + +# Extension: VK_EXT_extension_480 +const VK_EXT_EXTENSION_480_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_480_EXTENSION_NAME* = "VK_EXT_extension_480" + +# Extension: VK_EXT_extension_481 +const VK_EXT_EXTENSION_481_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_481_EXTENSION_NAME* = "VK_EXT_extension_481" + +# Extension: VK_KHR_ray_tracing_position_fetch +const VK_KHR_RAY_TRACING_POSITION_FETCH_SPEC_VERSION* = 1 +const VK_KHR_RAY_TRACING_POSITION_FETCH_EXTENSION_NAME* = "VK_KHR_ray_tracing_position_fetch" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_POSITION_FETCH_FEATURES_KHR*: VkStructureType = VkStructureType(1000481000) +const VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DATA_ACCESS_KHR*: VkBuildAccelerationStructureFlagBitsKHR = VkBuildAccelerationStructureFlagBitsKHR(2048) + +# Extension: VK_EXT_shader_object +const VK_EXT_SHADER_OBJECT_SPEC_VERSION* = 1 +const VK_EXT_SHADER_OBJECT_EXTENSION_NAME* = "VK_EXT_shader_object" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT*: VkStructureType = VkStructureType(1000482000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000482001) +const VK_STRUCTURE_TYPE_SHADER_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000482002) +template VK_STRUCTURE_TYPE_SHADER_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT* = + VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO +const VK_OBJECT_TYPE_SHADER_EXT*: VkObjectType = VkObjectType(1000482000) +const VK_ERROR_INCOMPATIBLE_SHADER_BINARY_EXT*: VkResult = VkResult(1000482000) + +# Extension: VK_EXT_extension_484 +const VK_EXT_EXTENSION_484_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_484_EXTENSION_NAME* = "VK_EXT_extension_484" + +# Extension: VK_QCOM_tile_properties +const VK_QCOM_TILE_PROPERTIES_SPEC_VERSION* = 1 +const VK_QCOM_TILE_PROPERTIES_EXTENSION_NAME* = "VK_QCOM_tile_properties" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM*: VkStructureType = VkStructureType(1000484000) +const VK_STRUCTURE_TYPE_TILE_PROPERTIES_QCOM*: VkStructureType = VkStructureType(1000484001) + +# Extension: VK_SEC_amigo_profiling +const VK_SEC_AMIGO_PROFILING_SPEC_VERSION* = 1 +const VK_SEC_AMIGO_PROFILING_EXTENSION_NAME* = "VK_SEC_amigo_profiling" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC*: VkStructureType = VkStructureType(1000485000) +const VK_STRUCTURE_TYPE_AMIGO_PROFILING_SUBMIT_INFO_SEC*: VkStructureType = VkStructureType(1000485001) + +# Extension: VK_EXT_extension_487 +const VK_EXT_EXTENSION_487_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_487_EXTENSION_NAME* = "VK_EXT_extension_487" + +# Extension: VK_EXT_extension_488 +const VK_EXT_EXTENSION_488_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_488_EXTENSION_NAME* = "VK_EXT_extension_488" + +# Extension: VK_QCOM_multiview_per_view_viewports +const VK_QCOM_MULTIVIEW_PER_VIEW_VIEWPORTS_SPEC_VERSION* = 1 +const VK_QCOM_MULTIVIEW_PER_VIEW_VIEWPORTS_EXTENSION_NAME* = "VK_QCOM_multiview_per_view_viewports" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_VIEWPORTS_FEATURES_QCOM*: VkStructureType = VkStructureType(1000488000) + +# Extension: VK_NV_external_sci_sync2 +const VK_NV_EXTERNAL_SCI_SYNC_2_SPEC_VERSION* = 1 +const VK_NV_EXTERNAL_SCI_SYNC_2_EXTENSION_NAME* = "VK_NV_external_sci_sync2" +const VK_OBJECT_TYPE_SEMAPHORE_SCI_SYNC_POOL_NV*: VkObjectType = VkObjectType(1000489000) +const VK_STRUCTURE_TYPE_SEMAPHORE_SCI_SYNC_POOL_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000489000) +const VK_STRUCTURE_TYPE_SEMAPHORE_SCI_SYNC_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000489001) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SCI_SYNC_2_FEATURES_NV*: VkStructureType = VkStructureType(1000489002) +const VK_STRUCTURE_TYPE_DEVICE_SEMAPHORE_SCI_SYNC_POOL_RESERVATION_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000489003) + +# Extension: VK_NV_ray_tracing_invocation_reorder +const VK_NV_RAY_TRACING_INVOCATION_REORDER_SPEC_VERSION* = 1 +const VK_NV_RAY_TRACING_INVOCATION_REORDER_EXTENSION_NAME* = "VK_NV_ray_tracing_invocation_reorder" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_FEATURES_NV*: VkStructureType = VkStructureType(1000490000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_PROPERTIES_NV*: VkStructureType = VkStructureType(1000490001) + +# Extension: VK_NV_extension_492 +const VK_NV_EXTENSION_492_SPEC_VERSION* = 0 +const VK_NV_EXTENSION_492_EXTENSION_NAME* = "VK_NV_extension_492" + +# Extension: VK_NV_extension_493 +const VK_NV_EXTENSION_493_SPEC_VERSION* = 0 +const VK_NV_EXTENSION_493_EXTENSION_NAME* = "VK_NV_extension_493" + +# Extension: VK_NV_extension_494 +const VK_NV_EXTENSION_494_SPEC_VERSION* = 0 +const VK_NV_EXTENSION_494_EXTENSION_NAME* = "VK_NV_extension_494" + +# Extension: VK_EXT_mutable_descriptor_type +const VK_EXT_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION* = 1 +const VK_EXT_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME* = "VK_EXT_mutable_descriptor_type" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT*: VkStructureType = VkStructureType(1000351000) +const VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000351002) +const VK_DESCRIPTOR_TYPE_MUTABLE_EXT*: VkDescriptorType = VkDescriptorType(1000351000) +const VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_EXT*: VkDescriptorPoolCreateFlagBits = VkDescriptorPoolCreateFlagBits(4) +const VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_EXT*: VkDescriptorSetLayoutCreateFlagBits = VkDescriptorSetLayoutCreateFlagBits(4) + +# Extension: VK_EXT_extension_496 +const VK_EXT_EXTENSION_496_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_496_EXTENSION_NAME* = "VK_EXT_extension_496" + +# Extension: VK_EXT_extension_497 +const VK_EXT_EXTENSION_497_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_497_EXTENSION_NAME* = "VK_EXT_extension_497" + +# Extension: VK_ARM_shader_core_builtins +const VK_ARM_SHADER_CORE_BUILTINS_SPEC_VERSION* = 2 +const VK_ARM_SHADER_CORE_BUILTINS_EXTENSION_NAME* = "VK_ARM_shader_core_builtins" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM*: VkStructureType = VkStructureType(1000497000) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_PROPERTIES_ARM*: VkStructureType = VkStructureType(1000497001) + +# Extension: VK_EXT_pipeline_library_group_handles +const VK_EXT_PIPELINE_LIBRARY_GROUP_HANDLES_SPEC_VERSION* = 1 +const VK_EXT_PIPELINE_LIBRARY_GROUP_HANDLES_EXTENSION_NAME* = "VK_EXT_pipeline_library_group_handles" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_LIBRARY_GROUP_HANDLES_FEATURES_EXT*: VkStructureType = VkStructureType(1000498000) + +# Extension: VK_EXT_dynamic_rendering_unused_attachments +const VK_EXT_DYNAMIC_RENDERING_UNUSED_ATTACHMENTS_SPEC_VERSION* = 1 +const VK_EXT_DYNAMIC_RENDERING_UNUSED_ATTACHMENTS_EXTENSION_NAME* = "VK_EXT_dynamic_rendering_unused_attachments" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_UNUSED_ATTACHMENTS_FEATURES_EXT*: VkStructureType = VkStructureType(1000499000) + +# Extension: VK_EXT_extension_501 +const VK_EXT_EXTENSION_501_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_501_EXTENSION_NAME* = "VK_EXT_extension_501" + +# Extension: VK_EXT_extension_502 +const VK_EXT_EXTENSION_502_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_502_EXTENSION_NAME* = "VK_EXT_extension_502" + +# Extension: VK_EXT_extension_503 +const VK_EXT_EXTENSION_503_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_503_EXTENSION_NAME* = "VK_EXT_extension_503" + +# Extension: VK_NV_extension_504 +const VK_NV_EXTENSION_504_SPEC_VERSION* = 0 +const VK_NV_EXTENSION_504_EXTENSION_NAME* = "VK_NV_extension_504" + +# Extension: VK_EXT_extension_505 +const VK_EXT_EXTENSION_505_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_505_EXTENSION_NAME* = "VK_EXT_extension_505" + +# Extension: VK_NV_extension_506 +const VK_NV_EXTENSION_506_SPEC_VERSION* = 0 +const VK_NV_EXTENSION_506_EXTENSION_NAME* = "VK_NV_extension_506" + +# Extension: VK_KHR_cooperative_matrix +const VK_KHR_COOPERATIVE_MATRIX_SPEC_VERSION* = 2 +const VK_KHR_COOPERATIVE_MATRIX_EXTENSION_NAME* = "VK_KHR_cooperative_matrix" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_KHR*: VkStructureType = VkStructureType(1000506000) +const VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000506001) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000506002) + +# Extension: VK_EXT_extension_508 +const VK_EXT_EXTENSION_508_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_508_EXTENSION_NAME* = "VK_EXT_extension_508" +const VK_QUEUE_RESERVED_10_BIT_EXT*: VkQueueFlagBits = VkQueueFlagBits(1024) +const VK_PIPELINE_STAGE_2_RESERVED_42_BIT_EXT*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(4398046511104) +const VK_ACCESS_2_RESERVED_47_BIT_EXT*: VkAccessFlagBits2 = VkAccessFlagBits2(140737488355328) +const VK_ACCESS_2_RESERVED_48_BIT_EXT*: VkAccessFlagBits2 = VkAccessFlagBits2(281474976710656) +const VK_FORMAT_FEATURE_2_RESERVED_48_BIT_EXT*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(281474976710656) + +# Extension: VK_EXT_extension_509 +const VK_EXT_EXTENSION_509_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_509_EXTENSION_NAME* = "VK_EXT_extension_509" + +# Extension: VK_MESA_extension_510 +const VK_MESA_EXTENSION_510_SPEC_VERSION* = 0 +const VK_MESA_EXTENSION_510_EXTENSION_NAME* = "VK_MESA_extension_510" + +# Extension: VK_QCOM_multiview_per_view_render_areas +const VK_QCOM_MULTIVIEW_PER_VIEW_RENDER_AREAS_SPEC_VERSION* = 1 +const VK_QCOM_MULTIVIEW_PER_VIEW_RENDER_AREAS_EXTENSION_NAME* = "VK_QCOM_multiview_per_view_render_areas" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_RENDER_AREAS_FEATURES_QCOM*: VkStructureType = VkStructureType(1000510000) +const VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_RENDER_AREAS_RENDER_PASS_BEGIN_INFO_QCOM*: VkStructureType = VkStructureType(1000510001) + +# Extension: VK_EXT_extension_512 +const VK_EXT_EXTENSION_512_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_512_EXTENSION_NAME* = "VK_EXT_extension_512" + +# Extension: VK_KHR_extension_513 +const VK_KHR_EXTENSION_513_SPEC_VERSION* = 0 +const VK_KHR_EXTENSION_513_EXTENSION_NAME* = "VK_KHR_extension_513" + +# Extension: VK_KHR_extension_514 +const VK_KHR_EXTENSION_514_SPEC_VERSION* = 0 +const VK_KHR_EXTENSION_514_EXTENSION_NAME* = "VK_KHR_extension_514" + +# Extension: VK_KHR_extension_515 +const VK_KHR_EXTENSION_515_SPEC_VERSION* = 0 +const VK_KHR_EXTENSION_515_EXTENSION_NAME* = "VK_KHR_extension_515" + +# Extension: VK_KHR_extension_516 +const VK_KHR_EXTENSION_516_SPEC_VERSION* = 0 +const VK_KHR_EXTENSION_516_EXTENSION_NAME* = "VK_KHR_extension_516" +const VK_IMAGE_CREATE_RESERVED_20_BIT_KHR*: VkImageCreateFlagBits = VkImageCreateFlagBits(1048576) +const VK_BUFFER_CREATE_RESERVED_6_BIT_KHR*: VkBufferCreateFlagBits = VkBufferCreateFlagBits(64) + +# Extension: VK_EXT_extension_517 +const VK_EXT_EXTENSION_517_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_517_EXTENSION_NAME* = "VK_EXT_extension_517" +const VK_DESCRIPTOR_SET_LAYOUT_CREATE_RESERVED_6_BIT_EXT*: VkDescriptorSetLayoutCreateFlagBits = VkDescriptorSetLayoutCreateFlagBits(64) + +# Extension: VK_MESA_extension_518 +const VK_MESA_EXTENSION_518_SPEC_VERSION* = 0 +const VK_MESA_EXTENSION_518_EXTENSION_NAME* = "VK_MESA_extension_518" + +# Extension: VK_QCOM_extension_519 +const VK_QCOM_EXTENSION_519_SPEC_VERSION* = 0 +const VK_QCOM_EXTENSION_519_EXTENSION_NAME* = "VK_QCOM_extension_519" + +# Extension: VK_QCOM_extension_520 +const VK_QCOM_EXTENSION_520_SPEC_VERSION* = 0 +const VK_QCOM_EXTENSION_520_EXTENSION_NAME* = "VK_QCOM_extension_520" + +# Extension: VK_QCOM_extension_521 +const VK_QCOM_EXTENSION_521_SPEC_VERSION* = 0 +const VK_QCOM_EXTENSION_521_EXTENSION_NAME* = "VK_QCOM_extension_521" + +# Extension: VK_QCOM_extension_522 +const VK_QCOM_EXTENSION_522_SPEC_VERSION* = 0 +const VK_QCOM_EXTENSION_522_EXTENSION_NAME* = "VK_QCOM_extension_522" + +# Extension: VK_EXT_extension_523 +const VK_EXT_EXTENSION_523_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_523_EXTENSION_NAME* = "VK_EXT_extension_523" + +# Extension: VK_EXT_extension_524 +const VK_EXT_EXTENSION_524_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_524_EXTENSION_NAME* = "VK_EXT_extension_524" + +# Extension: VK_EXT_attachment_feedback_loop_dynamic_state +const VK_EXT_ATTACHMENT_FEEDBACK_LOOP_DYNAMIC_STATE_SPEC_VERSION* = 1 +const VK_EXT_ATTACHMENT_FEEDBACK_LOOP_DYNAMIC_STATE_EXTENSION_NAME* = "VK_EXT_attachment_feedback_loop_dynamic_state" +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_DYNAMIC_STATE_FEATURES_EXT*: VkStructureType = VkStructureType(1000524000) +const VK_DYNAMIC_STATE_ATTACHMENT_FEEDBACK_LOOP_ENABLE_EXT*: VkDynamicState = VkDynamicState(1000524000) + +# Extension: VK_EXT_extension_526 +const VK_EXT_EXTENSION_526_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_526_EXTENSION_NAME* = "VK_EXT_extension_526" + +# Extension: VK_EXT_extension_527 +const VK_EXT_EXTENSION_527_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_527_EXTENSION_NAME* = "VK_EXT_extension_527" + +# Extension: VK_EXT_extension_528 +const VK_EXT_EXTENSION_528_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_528_EXTENSION_NAME* = "VK_EXT_extension_528" + +# Extension: VK_KHR_extension_529 +const VK_KHR_EXTENSION_529_SPEC_VERSION* = 0 +const VK_KHR_EXTENSION_529_EXTENSION_NAME* = "VK_KHR_extension_529" + +# Extension: VK_QNX_external_memory_screen_buffer +const VK_QNX_EXTERNAL_MEMORY_SCREEN_BUFFER_SPEC_VERSION* = 1 +const VK_QNX_EXTERNAL_MEMORY_SCREEN_BUFFER_EXTENSION_NAME* = "VK_QNX_external_memory_screen_buffer" +const VK_EXTERNAL_MEMORY_HANDLE_TYPE_SCREEN_BUFFER_BIT_QNX*: VkExternalMemoryHandleTypeFlagBits = VkExternalMemoryHandleTypeFlagBits(16384) +const VK_STRUCTURE_TYPE_SCREEN_BUFFER_PROPERTIES_QNX*: VkStructureType = VkStructureType(1000529000) +const VK_STRUCTURE_TYPE_SCREEN_BUFFER_FORMAT_PROPERTIES_QNX*: VkStructureType = VkStructureType(1000529001) +const VK_STRUCTURE_TYPE_IMPORT_SCREEN_BUFFER_INFO_QNX*: VkStructureType = VkStructureType(1000529002) +const VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_QNX*: VkStructureType = VkStructureType(1000529003) +const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_SCREEN_BUFFER_FEATURES_QNX*: VkStructureType = VkStructureType(1000529004) + +# Extension: VK_MSFT_extension_531 +const VK_MSFT_EXTENSION_531_SPEC_VERSION* = 0 +const VK_MSFT_EXTENSION_531_EXTENSION_NAME* = "VK_MSFT_extension_531" + +# Extension: VK_KHR_extension_532 +const VK_KHR_EXTENSION_532_SPEC_VERSION* = 0 +const VK_KHR_EXTENSION_532_EXTENSION_NAME* = "VK_KHR_extension_532" + +# Extension: VK_EXT_extension_533 +const VK_EXT_EXTENSION_533_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_533_EXTENSION_NAME* = "VK_EXT_extension_533" + +# Extension: VK_KHR_extension_534 +const VK_KHR_EXTENSION_534_SPEC_VERSION* = 0 +const VK_KHR_EXTENSION_534_EXTENSION_NAME* = "VK_KHR_extension_534" + +# Extension: VK_KHR_extension_535 +const VK_KHR_EXTENSION_535_SPEC_VERSION* = 0 +const VK_KHR_EXTENSION_535_EXTENSION_NAME* = "VK_KHR_extension_535" + +# Extension: VK_QCOM_extension_536 +const VK_QCOM_EXTENSION_536_SPEC_VERSION* = 0 +const VK_QCOM_EXTENSION_536_EXTENSION_NAME* = "VK_QCOM_extension_536" + +# Extension: VK_EXT_extension_537 +const VK_EXT_EXTENSION_537_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_537_EXTENSION_NAME* = "VK_EXT_extension_537" + +# Extension: VK_EXT_extension_538 +const VK_EXT_EXTENSION_538_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_538_EXTENSION_NAME* = "VK_EXT_extension_538" + +# Extension: VK_EXT_extension_539 +const VK_EXT_EXTENSION_539_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_539_EXTENSION_NAME* = "VK_EXT_extension_539" + +# Extension: VK_EXT_extension_540 +const VK_EXT_EXTENSION_540_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_540_EXTENSION_NAME* = "VK_EXT_extension_540" + +# Extension: VK_EXT_extension_541 +const VK_EXT_EXTENSION_541_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_541_EXTENSION_NAME* = "VK_EXT_extension_541" + +# Extension: VK_EXT_extension_542 +const VK_EXT_EXTENSION_542_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_542_EXTENSION_NAME* = "VK_EXT_extension_542" + +# Extension: VK_EXT_extension_543 +const VK_EXT_EXTENSION_543_SPEC_VERSION* = 0 +const VK_EXT_EXTENSION_543_EXTENSION_NAME* = "VK_EXT_extension_543" + +# Extension: VK_KHR_extension_544 +const VK_KHR_EXTENSION_544_SPEC_VERSION* = 0 +const VK_KHR_EXTENSION_544_EXTENSION_NAME* = "VK_KHR_extension_544" + +# Extension: VK_KHR_extension_545 +const VK_KHR_EXTENSION_545_SPEC_VERSION* = 0 +const VK_KHR_EXTENSION_545_EXTENSION_NAME* = "VK_KHR_extension_545" + +# Extension: VK_KHR_extension_546 +const VK_KHR_EXTENSION_546_SPEC_VERSION* = 0 +const VK_KHR_EXTENSION_546_EXTENSION_NAME* = "VK_KHR_extension_546" + +type + PFN_vkInternalAllocationNotification* = proc (pUserData: pointer; size: csize_t; allocationType: VkInternalAllocationType; allocationScope: VkSystemAllocationScope) {.cdecl.} + PFN_vkInternalFreeNotification* = proc (pUserData: pointer; size: csize_t; allocationType: VkInternalAllocationType; allocationScope: VkSystemAllocationScope) {.cdecl.} + PFN_vkReallocationFunction* = proc (pUserData: pointer; pOriginal: pointer; size: csize_t; alignment: csize_t; allocationScope: VkSystemAllocationScope): pointer {.cdecl.} + PFN_vkAllocationFunction* = proc (pUserData: pointer; size: csize_t; alignment: csize_t; 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_t; 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: pointer) {.cdecl.} + PFN_vkDeviceMemoryReportCallbackEXT* = proc (pCallbackData: VkDeviceMemoryReportCallbackDataEXT, pUserData: pointer) {.cdecl.} + PFN_vkGetInstanceProcAddrLUNARG* = proc (instance: VkInstance, pName: cstring) {.cdecl.} + + VkBaseOutStructure* = object + sType*: VkStructureType + pNext*: ptr VkBaseOutStructure + + VkBaseInStructure* = object + sType*: VkStructureType + pNext*: ptr VkBaseInStructure + + VkOffset2D* = object + x*: int32 + y*: int32 + + VkOffset3D* = object + x*: int32 + y*: int32 + z*: int32 + + VkExtent2D* = object + width*: uint32 + height*: uint32 + + VkExtent3D* = object + width*: uint32 + height*: uint32 + depth*: uint32 + + VkViewport* = object + x*: float32 + y*: float32 + width*: float32 + height*: float32 + minDepth*: float32 + maxDepth*: float32 + + VkRect2D* = object + offset*: VkOffset2D + extent*: VkExtent2D + + VkClearRect* = object + rect*: VkRect2D + baseArrayLayer*: uint32 + layerCount*: uint32 + + VkComponentMapping* = object + r*: VkComponentSwizzle + g*: VkComponentSwizzle + b*: VkComponentSwizzle + a*: VkComponentSwizzle + + VkPhysicalDeviceProperties* = object + 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 + + VkExtensionProperties* = object + extensionName*: array[VK_MAX_EXTENSION_NAME_SIZE, char] + specVersion*: uint32 + + VkLayerProperties* = object + layerName*: array[VK_MAX_EXTENSION_NAME_SIZE, char] + specVersion*: uint32 + implementationVersion*: uint32 + description*: array[VK_MAX_DESCRIPTION_SIZE, char] + + VkApplicationInfo* = object + sType*: VkStructureType + pNext*: pointer + pApplicationName*: cstring + applicationVersion*: uint32 + pEngineName*: cstring + engineVersion*: uint32 + apiVersion*: uint32 + + VkAllocationCallbacks* = object + pUserData*: pointer + pfnAllocation*: PFN_vkAllocationFunction + pfnReallocation*: PFN_vkReallocationFunction + pfnFree*: PFN_vkFreeFunction + pfnInternalAllocation*: PFN_vkInternalAllocationNotification + pfnInternalFree*: PFN_vkInternalFreeNotification + + VkDeviceQueueCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkDeviceQueueCreateFlags + queueFamilyIndex*: uint32 + queueCount*: uint32 + pQueuePriorities*: ptr float32 + + VkDeviceCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkDeviceCreateFlags + queueCreateInfoCount*: uint32 + pQueueCreateInfos*: ptr VkDeviceQueueCreateInfo + enabledLayerCount*: uint32 + ppEnabledLayerNames*: cstringArray + enabledExtensionCount*: uint32 + ppEnabledExtensionNames*: cstringArray + pEnabledFeatures*: ptr VkPhysicalDeviceFeatures + + VkInstanceCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkInstanceCreateFlags + pApplicationInfo*: ptr VkApplicationInfo + enabledLayerCount*: uint32 + ppEnabledLayerNames*: cstringArray + enabledExtensionCount*: uint32 + ppEnabledExtensionNames*: cstringArray + + VkQueueFamilyProperties* = object + queueFlags*: VkQueueFlags + queueCount*: uint32 + timestampValidBits*: uint32 + minImageTransferGranularity*: VkExtent3D + + VkPhysicalDeviceMemoryProperties* = object + memoryTypeCount*: uint32 + memoryTypes*: array[VK_MAX_MEMORY_TYPES, VkMemoryType] + memoryHeapCount*: uint32 + memoryHeaps*: array[VK_MAX_MEMORY_HEAPS, VkMemoryHeap] + + VkMemoryAllocateInfo* = object + sType*: VkStructureType + pNext*: pointer + allocationSize*: VkDeviceSize + memoryTypeIndex*: uint32 + + VkMemoryRequirements* = object + size*: VkDeviceSize + alignment*: VkDeviceSize + memoryTypeBits*: uint32 + + VkSparseImageFormatProperties* = object + aspectMask*: VkImageAspectFlags + imageGranularity*: VkExtent3D + flags*: VkSparseImageFormatFlags + + VkSparseImageMemoryRequirements* = object + formatProperties*: VkSparseImageFormatProperties + imageMipTailFirstLod*: uint32 + imageMipTailSize*: VkDeviceSize + imageMipTailOffset*: VkDeviceSize + imageMipTailStride*: VkDeviceSize + + VkMemoryType* = object + propertyFlags*: VkMemoryPropertyFlags + heapIndex*: uint32 + + VkMemoryHeap* = object + size*: VkDeviceSize + flags*: VkMemoryHeapFlags + + VkMappedMemoryRange* = object + sType*: VkStructureType + pNext*: pointer + memory*: VkDeviceMemory + offset*: VkDeviceSize + size*: VkDeviceSize + + VkFormatProperties* = object + linearTilingFeatures*: VkFormatFeatureFlags + optimalTilingFeatures*: VkFormatFeatureFlags + bufferFeatures*: VkFormatFeatureFlags + + VkImageFormatProperties* = object + maxExtent*: VkExtent3D + maxMipLevels*: uint32 + maxArrayLayers*: uint32 + sampleCounts*: VkSampleCountFlags + maxResourceSize*: VkDeviceSize + + VkDescriptorBufferInfo* = object + buffer*: VkBuffer + offset*: VkDeviceSize + range*: VkDeviceSize + + VkDescriptorImageInfo* = object + sampler*: VkSampler + imageView*: VkImageView + imageLayout*: VkImageLayout + + VkWriteDescriptorSet* = object + sType*: VkStructureType + pNext*: pointer + dstSet*: VkDescriptorSet + dstBinding*: uint32 + dstArrayElement*: uint32 + descriptorCount*: uint32 + descriptorType*: VkDescriptorType + pImageInfo*: ptr VkDescriptorImageInfo + pBufferInfo*: ptr VkDescriptorBufferInfo + pTexelBufferView*: ptr VkBufferView + + VkCopyDescriptorSet* = object + sType*: VkStructureType + pNext*: pointer + srcSet*: VkDescriptorSet + srcBinding*: uint32 + srcArrayElement*: uint32 + dstSet*: VkDescriptorSet + dstBinding*: uint32 + dstArrayElement*: uint32 + descriptorCount*: uint32 + + VkBufferUsageFlags2CreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + usage*: VkBufferUsageFlags2KHR + + VkBufferCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkBufferCreateFlags + size*: VkDeviceSize + usage*: VkBufferUsageFlags + sharingMode*: VkSharingMode + queueFamilyIndexCount*: uint32 + pQueueFamilyIndices*: ptr uint32 + + VkBufferViewCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkBufferViewCreateFlags + buffer*: VkBuffer + format*: VkFormat + offset*: VkDeviceSize + range*: VkDeviceSize + + VkImageSubresource* = object + aspectMask*: VkImageAspectFlags + mipLevel*: uint32 + arrayLayer*: uint32 + + VkImageSubresourceLayers* = object + aspectMask*: VkImageAspectFlags + mipLevel*: uint32 + baseArrayLayer*: uint32 + layerCount*: uint32 + + VkImageSubresourceRange* = object + aspectMask*: VkImageAspectFlags + baseMipLevel*: uint32 + levelCount*: uint32 + baseArrayLayer*: uint32 + layerCount*: uint32 + + VkMemoryBarrier* = object + sType*: VkStructureType + pNext*: pointer + srcAccessMask*: VkAccessFlags + dstAccessMask*: VkAccessFlags + + VkBufferMemoryBarrier* = object + sType*: VkStructureType + pNext*: pointer + srcAccessMask*: VkAccessFlags + dstAccessMask*: VkAccessFlags + srcQueueFamilyIndex*: uint32 + dstQueueFamilyIndex*: uint32 + buffer*: VkBuffer + offset*: VkDeviceSize + size*: VkDeviceSize + + VkImageMemoryBarrier* = object + sType*: VkStructureType + pNext*: pointer + srcAccessMask*: VkAccessFlags + dstAccessMask*: VkAccessFlags + oldLayout*: VkImageLayout + newLayout*: VkImageLayout + srcQueueFamilyIndex*: uint32 + dstQueueFamilyIndex*: uint32 + image*: VkImage + subresourceRange*: VkImageSubresourceRange + + VkImageCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: 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 + + VkSubresourceLayout* = object + offset*: VkDeviceSize + size*: VkDeviceSize + rowPitch*: VkDeviceSize + arrayPitch*: VkDeviceSize + depthPitch*: VkDeviceSize + + VkImageViewCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkImageViewCreateFlags + image*: VkImage + viewType*: VkImageViewType + format*: VkFormat + components*: VkComponentMapping + subresourceRange*: VkImageSubresourceRange + + VkBufferCopy* = object + srcOffset*: VkDeviceSize + dstOffset*: VkDeviceSize + size*: VkDeviceSize + + VkSparseMemoryBind* = object + resourceOffset*: VkDeviceSize + size*: VkDeviceSize + memory*: VkDeviceMemory + memoryOffset*: VkDeviceSize + flags*: VkSparseMemoryBindFlags + + VkSparseImageMemoryBind* = object + subresource*: VkImageSubresource + offset*: VkOffset3D + extent*: VkExtent3D + memory*: VkDeviceMemory + memoryOffset*: VkDeviceSize + flags*: VkSparseMemoryBindFlags + + VkSparseBufferMemoryBindInfo* = object + buffer*: VkBuffer + bindCount*: uint32 + pBinds*: ptr VkSparseMemoryBind + + VkSparseImageOpaqueMemoryBindInfo* = object + image*: VkImage + bindCount*: uint32 + pBinds*: ptr VkSparseMemoryBind + + VkSparseImageMemoryBindInfo* = object + image*: VkImage + bindCount*: uint32 + pBinds*: ptr VkSparseImageMemoryBind + + VkBindSparseInfo* = object + sType*: VkStructureType + pNext*: pointer + 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 + + VkImageCopy* = object + srcSubresource*: VkImageSubresourceLayers + srcOffset*: VkOffset3D + dstSubresource*: VkImageSubresourceLayers + dstOffset*: VkOffset3D + extent*: VkExtent3D + + VkImageBlit* = object + srcSubresource*: VkImageSubresourceLayers + srcOffsets*: array[2, VkOffset3D] + dstSubresource*: VkImageSubresourceLayers + dstOffsets*: array[2, VkOffset3D] + + VkBufferImageCopy* = object + bufferOffset*: VkDeviceSize + bufferRowLength*: uint32 + bufferImageHeight*: uint32 + imageSubresource*: VkImageSubresourceLayers + 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 + dstSubresource*: VkImageSubresourceLayers + dstOffset*: VkOffset3D + extent*: VkExtent3D + + VkShaderModuleCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkShaderModuleCreateFlags + codeSize*: uint + pCode*: ptr uint32 + + VkDescriptorSetLayoutBinding* = object + binding*: uint32 + descriptorType*: VkDescriptorType + descriptorCount*: uint32 + stageFlags*: VkShaderStageFlags + pImmutableSamplers*: ptr VkSampler + + VkDescriptorSetLayoutCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkDescriptorSetLayoutCreateFlags + bindingCount*: uint32 + pBindings*: ptr VkDescriptorSetLayoutBinding + + VkDescriptorPoolSize* = object + `type`*: VkDescriptorType + descriptorCount*: uint32 + + VkDescriptorPoolCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkDescriptorPoolCreateFlags + maxSets*: uint32 + poolSizeCount*: uint32 + pPoolSizes*: ptr VkDescriptorPoolSize + + VkDescriptorSetAllocateInfo* = object + sType*: VkStructureType + pNext*: pointer + descriptorPool*: VkDescriptorPool + descriptorSetCount*: uint32 + pSetLayouts*: ptr VkDescriptorSetLayout + + VkSpecializationMapEntry* = object + constantID*: uint32 + offset*: uint32 + size*: uint + + VkSpecializationInfo* = object + mapEntryCount*: uint32 + pMapEntries*: ptr VkSpecializationMapEntry + dataSize*: uint + pData*: pointer + + VkPipelineShaderStageCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkPipelineShaderStageCreateFlags + stage*: VkShaderStageFlagBits + module*: VkShaderModule + pName*: cstring + pSpecializationInfo*: ptr VkSpecializationInfo + + VkComputePipelineCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkPipelineCreateFlags + stage*: VkPipelineShaderStageCreateInfo + layout*: VkPipelineLayout + 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 + inputRate*: VkVertexInputRate + + VkVertexInputAttributeDescription* = object + location*: uint32 + binding*: uint32 + format*: VkFormat + offset*: uint32 + + VkPipelineVertexInputStateCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkPipelineVertexInputStateCreateFlags + vertexBindingDescriptionCount*: uint32 + pVertexBindingDescriptions*: ptr VkVertexInputBindingDescription + vertexAttributeDescriptionCount*: uint32 + pVertexAttributeDescriptions*: ptr VkVertexInputAttributeDescription + + VkPipelineInputAssemblyStateCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkPipelineInputAssemblyStateCreateFlags + topology*: VkPrimitiveTopology + primitiveRestartEnable*: VkBool32 + + VkPipelineTessellationStateCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkPipelineTessellationStateCreateFlags + patchControlPoints*: uint32 + + VkPipelineViewportStateCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkPipelineViewportStateCreateFlags + viewportCount*: uint32 + pViewports*: ptr VkViewport + scissorCount*: uint32 + pScissors*: ptr VkRect2D + + VkPipelineRasterizationStateCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkPipelineRasterizationStateCreateFlags + depthClampEnable*: VkBool32 + rasterizerDiscardEnable*: VkBool32 + polygonMode*: VkPolygonMode + cullMode*: VkCullModeFlags + frontFace*: VkFrontFace + depthBiasEnable*: VkBool32 + depthBiasConstantFactor*: float32 + depthBiasClamp*: float32 + depthBiasSlopeFactor*: float32 + lineWidth*: float32 + + VkPipelineMultisampleStateCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkPipelineMultisampleStateCreateFlags + rasterizationSamples*: VkSampleCountFlagBits + sampleShadingEnable*: VkBool32 + minSampleShading*: float32 + pSampleMask*: ptr VkSampleMask + alphaToCoverageEnable*: VkBool32 + alphaToOneEnable*: VkBool32 + + VkPipelineColorBlendAttachmentState* = object + blendEnable*: VkBool32 + srcColorBlendFactor*: VkBlendFactor + dstColorBlendFactor*: VkBlendFactor + colorBlendOp*: VkBlendOp + srcAlphaBlendFactor*: VkBlendFactor + dstAlphaBlendFactor*: VkBlendFactor + alphaBlendOp*: VkBlendOp + colorWriteMask*: VkColorComponentFlags + + VkPipelineColorBlendStateCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkPipelineColorBlendStateCreateFlags + logicOpEnable*: VkBool32 + logicOp*: VkLogicOp + attachmentCount*: uint32 + pAttachments*: ptr VkPipelineColorBlendAttachmentState + blendConstants*: array[4, float32] + + VkPipelineDynamicStateCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkPipelineDynamicStateCreateFlags + dynamicStateCount*: uint32 + pDynamicStates*: ptr VkDynamicState + + VkStencilOpState* = object + failOp*: VkStencilOp + passOp*: VkStencilOp + depthFailOp*: VkStencilOp + compareOp*: VkCompareOp + compareMask*: uint32 + writeMask*: uint32 + reference*: uint32 + + VkPipelineDepthStencilStateCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkPipelineDepthStencilStateCreateFlags + depthTestEnable*: VkBool32 + depthWriteEnable*: VkBool32 + depthCompareOp*: VkCompareOp + depthBoundsTestEnable*: VkBool32 + stencilTestEnable*: VkBool32 + front*: VkStencilOpState + back*: VkStencilOpState + minDepthBounds*: float32 + maxDepthBounds*: float32 + + VkGraphicsPipelineCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: 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 + + VkPipelineCacheCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkPipelineCacheCreateFlags + 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 + size*: uint32 + + VkPipelineLayoutCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkPipelineLayoutCreateFlags + setLayoutCount*: uint32 + pSetLayouts*: ptr VkDescriptorSetLayout + pushConstantRangeCount*: uint32 + pPushConstantRanges*: ptr VkPushConstantRange + + VkSamplerCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: 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 + + VkCommandPoolCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkCommandPoolCreateFlags + queueFamilyIndex*: uint32 + + VkCommandBufferAllocateInfo* = object + sType*: VkStructureType + pNext*: pointer + commandPool*: VkCommandPool + level*: VkCommandBufferLevel + commandBufferCount*: uint32 + + VkCommandBufferInheritanceInfo* = object + sType*: VkStructureType + pNext*: pointer + renderPass*: VkRenderPass + subpass*: uint32 + framebuffer*: VkFramebuffer + occlusionQueryEnable*: VkBool32 + queryFlags*: VkQueryControlFlags + pipelineStatistics*: VkQueryPipelineStatisticFlags + + VkCommandBufferBeginInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkCommandBufferUsageFlags + pInheritanceInfo*: ptr VkCommandBufferInheritanceInfo + + VkRenderPassBeginInfo* = object + sType*: VkStructureType + pNext*: pointer + renderPass*: VkRenderPass + framebuffer*: VkFramebuffer + renderArea*: VkRect2D + clearValueCount*: uint32 + pClearValues*: ptr VkClearValue + + VkClearColorValue* {.union.} = object + float32*: array[4, float32] + int32*: array[4, int32] + uint32*: array[4, uint32] + + VkClearDepthStencilValue* = object + depth*: float32 + stencil*: uint32 + + VkClearValue* {.union.} = object + color*: VkClearColorValue + depthStencil*: VkClearDepthStencilValue + + VkClearAttachment* = object + aspectMask*: VkImageAspectFlags + colorAttachment*: uint32 + clearValue*: VkClearValue + + VkAttachmentDescription* = object + flags*: VkAttachmentDescriptionFlags + format*: VkFormat + samples*: VkSampleCountFlagBits + loadOp*: VkAttachmentLoadOp + storeOp*: VkAttachmentStoreOp + stencilLoadOp*: VkAttachmentLoadOp + stencilStoreOp*: VkAttachmentStoreOp + initialLayout*: VkImageLayout + finalLayout*: VkImageLayout + + VkAttachmentReference* = object + attachment*: uint32 + layout*: VkImageLayout + + VkSubpassDescription* = object + flags*: VkSubpassDescriptionFlags + pipelineBindPoint*: VkPipelineBindPoint + inputAttachmentCount*: uint32 + pInputAttachments*: ptr VkAttachmentReference + colorAttachmentCount*: uint32 + pColorAttachments*: ptr VkAttachmentReference + pResolveAttachments*: ptr VkAttachmentReference + pDepthStencilAttachment*: ptr VkAttachmentReference + preserveAttachmentCount*: uint32 + pPreserveAttachments*: ptr uint32 + + VkSubpassDependency* = object + srcSubpass*: uint32 + dstSubpass*: uint32 + srcStageMask*: VkPipelineStageFlags + dstStageMask*: VkPipelineStageFlags + srcAccessMask*: VkAccessFlags + dstAccessMask*: VkAccessFlags + dependencyFlags*: VkDependencyFlags + + VkRenderPassCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkRenderPassCreateFlags + attachmentCount*: uint32 + pAttachments*: ptr VkAttachmentDescription + subpassCount*: uint32 + pSubpasses*: ptr VkSubpassDescription + dependencyCount*: uint32 + pDependencies*: ptr VkSubpassDependency + + VkEventCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkEventCreateFlags + + VkFenceCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkFenceCreateFlags + + VkPhysicalDeviceFeatures* = object + 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 + + VkPhysicalDeviceSparseProperties* = object + residencyStandard2DBlockShape*: VkBool32 + residencyStandard2DMultisampleBlockShape*: VkBool32 + residencyStandard3DBlockShape*: VkBool32 + residencyAlignedMipSize*: VkBool32 + residencyNonResidentStrict*: VkBool32 + + VkPhysicalDeviceLimits* = object + 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 + + VkSemaphoreCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkSemaphoreCreateFlags + + VkQueryPoolCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkQueryPoolCreateFlags + queryType*: VkQueryType + queryCount*: uint32 + pipelineStatistics*: VkQueryPipelineStatisticFlags + + VkFramebufferCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkFramebufferCreateFlags + renderPass*: VkRenderPass + attachmentCount*: uint32 + pAttachments*: ptr VkImageView + width*: uint32 + height*: uint32 + layers*: uint32 + + VkDrawIndirectCommand* = object + vertexCount*: uint32 + instanceCount*: uint32 + firstVertex*: uint32 + firstInstance*: uint32 + + VkDrawIndexedIndirectCommand* = object + indexCount*: uint32 + instanceCount*: uint32 + firstIndex*: uint32 + vertexOffset*: int32 + firstInstance*: uint32 + + VkDispatchIndirectCommand* = object + x*: uint32 + y*: uint32 + z*: uint32 + + VkMultiDrawInfoEXT* = object + firstVertex*: uint32 + vertexCount*: uint32 + + VkMultiDrawIndexedInfoEXT* = object + firstIndex*: uint32 + indexCount*: uint32 + vertexOffset*: int32 + + VkSubmitInfo* = object + sType*: VkStructureType + pNext*: pointer + waitSemaphoreCount*: uint32 + pWaitSemaphores*: ptr VkSemaphore + pWaitDstStageMask*: ptr VkPipelineStageFlags + commandBufferCount*: uint32 + pCommandBuffers*: ptr VkCommandBuffer + signalSemaphoreCount*: uint32 + pSignalSemaphores*: ptr VkSemaphore + + VkDisplayPropertiesKHR* = object + display*: VkDisplayKHR + displayName*: cstring + physicalDimensions*: VkExtent2D + physicalResolution*: VkExtent2D + supportedTransforms*: VkSurfaceTransformFlagsKHR + planeReorderPossible*: VkBool32 + persistentContent*: VkBool32 + + VkDisplayPlanePropertiesKHR* = object + currentDisplay*: VkDisplayKHR + currentStackIndex*: uint32 + + VkDisplayModeParametersKHR* = object + visibleRegion*: VkExtent2D + refreshRate*: uint32 + + VkDisplayModePropertiesKHR* = object + displayMode*: VkDisplayModeKHR + parameters*: VkDisplayModeParametersKHR + + VkDisplayModeCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkDisplayModeCreateFlagsKHR + parameters*: VkDisplayModeParametersKHR + + VkDisplayPlaneCapabilitiesKHR* = object + supportedAlpha*: VkDisplayPlaneAlphaFlagsKHR + minSrcPosition*: VkOffset2D + maxSrcPosition*: VkOffset2D + minSrcExtent*: VkExtent2D + maxSrcExtent*: VkExtent2D + minDstPosition*: VkOffset2D + maxDstPosition*: VkOffset2D + minDstExtent*: VkExtent2D + maxDstExtent*: VkExtent2D + + VkDisplaySurfaceCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkDisplaySurfaceCreateFlagsKHR + displayMode*: VkDisplayModeKHR + planeIndex*: uint32 + planeStackIndex*: uint32 + transform*: VkSurfaceTransformFlagBitsKHR + globalAlpha*: float32 + alphaMode*: VkDisplayPlaneAlphaFlagBitsKHR + imageExtent*: VkExtent2D + + VkDisplayPresentInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + srcRect*: VkRect2D + dstRect*: VkRect2D + persistent*: VkBool32 + + VkSurfaceCapabilitiesKHR* = object + minImageCount*: uint32 + maxImageCount*: uint32 + currentExtent*: VkExtent2D + minImageExtent*: VkExtent2D + maxImageExtent*: VkExtent2D + maxImageArrayLayers*: uint32 + supportedTransforms*: VkSurfaceTransformFlagsKHR + currentTransform*: VkSurfaceTransformFlagBitsKHR + supportedCompositeAlpha*: VkCompositeAlphaFlagsKHR + supportedUsageFlags*: VkImageUsageFlags + + VkAndroidSurfaceCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkAndroidSurfaceCreateFlagsKHR + window*: ptr ANativeWindow + + VkViSurfaceCreateInfoNN* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkViSurfaceCreateFlagsNN + window*: pointer + + VkWaylandSurfaceCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkWaylandSurfaceCreateFlagsKHR + display*: ptr wl_display + surface*: ptr wl_surface + + VkWin32SurfaceCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkWin32SurfaceCreateFlagsKHR + hinstance*: HINSTANCE + hwnd*: HWND + + VkXlibSurfaceCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkXlibSurfaceCreateFlagsKHR + dpy*: ptr Display + window*: Window + + VkXcbSurfaceCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkXcbSurfaceCreateFlagsKHR + connection*: ptr xcb_connection_t + window*: xcb_window_t + + VkDirectFBSurfaceCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkDirectFBSurfaceCreateFlagsEXT + dfb*: ptr IDirectFB + surface*: ptr IDirectFBSurface + + VkImagePipeSurfaceCreateInfoFUCHSIA* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkImagePipeSurfaceCreateFlagsFUCHSIA + imagePipeHandle*: zx_handle_t + + VkStreamDescriptorSurfaceCreateInfoGGP* = object + sType*: VkStructureType + pNext*: pointer + 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 + + VkSwapchainCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: 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 + + VkPresentInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + waitSemaphoreCount*: uint32 + pWaitSemaphores*: ptr VkSemaphore + swapchainCount*: uint32 + pSwapchains*: ptr VkSwapchainKHR + pImageIndices*: ptr uint32 + pResults*: ptr VkResult + + VkDebugReportCallbackCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkDebugReportFlagsEXT + pfnCallback*: PFN_vkDebugReportCallbackEXT + pUserData*: pointer + + VkValidationFlagsEXT* = object + sType*: VkStructureType + pNext*: pointer + disabledValidationCheckCount*: uint32 + pDisabledValidationChecks*: ptr VkValidationCheckEXT + + VkValidationFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + enabledValidationFeatureCount*: uint32 + pEnabledValidationFeatures*: ptr VkValidationFeatureEnableEXT + disabledValidationFeatureCount*: uint32 + pDisabledValidationFeatures*: ptr VkValidationFeatureDisableEXT + + VkApplicationParametersEXT* = object + sType*: VkStructureType + pNext*: pointer + vendorID*: uint32 + deviceID*: uint32 + key*: uint32 + value*: uint64 + + VkPipelineRasterizationStateRasterizationOrderAMD* = object + sType*: VkStructureType + pNext*: pointer + rasterizationOrder*: VkRasterizationOrderAMD + + VkDebugMarkerObjectNameInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + objectType*: VkDebugReportObjectTypeEXT + `object`*: uint64 + pObjectName*: cstring + + VkDebugMarkerObjectTagInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + objectType*: VkDebugReportObjectTypeEXT + `object`*: uint64 + tagName*: uint64 + tagSize*: uint + pTag*: pointer + + VkDebugMarkerMarkerInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + pMarkerName*: cstring + color*: array[4, float32] + + VkDedicatedAllocationImageCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + dedicatedAllocation*: VkBool32 + + VkDedicatedAllocationBufferCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + dedicatedAllocation*: VkBool32 + + VkDedicatedAllocationMemoryAllocateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + image*: VkImage + buffer*: VkBuffer + + VkExternalImageFormatPropertiesNV* = object + imageFormatProperties*: VkImageFormatProperties + externalMemoryFeatures*: VkExternalMemoryFeatureFlagsNV + exportFromImportedHandleTypes*: VkExternalMemoryHandleTypeFlagsNV + compatibleHandleTypes*: VkExternalMemoryHandleTypeFlagsNV + + VkExternalMemoryImageCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + handleTypes*: VkExternalMemoryHandleTypeFlagsNV + + VkExportMemoryAllocateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + handleTypes*: VkExternalMemoryHandleTypeFlagsNV + + VkImportMemoryWin32HandleInfoNV* = object + sType*: VkStructureType + pNext*: pointer + handleType*: VkExternalMemoryHandleTypeFlagsNV + handle*: HANDLE + + VkExportMemoryWin32HandleInfoNV* = object + sType*: VkStructureType + pNext*: pointer + 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 + + VkWin32KeyedMutexAcquireReleaseInfoNV* = object + sType*: VkStructureType + pNext*: pointer + acquireCount*: uint32 + pAcquireSyncs*: ptr VkDeviceMemory + pAcquireKeys*: ptr uint64 + pAcquireTimeoutMilliseconds*: ptr uint32 + releaseCount*: uint32 + pReleaseSyncs*: ptr VkDeviceMemory + pReleaseKeys*: ptr uint64 + + VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + deviceGeneratedCommands*: VkBool32 + + VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + deviceGeneratedCompute*: VkBool32 + deviceGeneratedComputePipelines*: VkBool32 + deviceGeneratedComputeCaptureReplay*: VkBool32 + + VkDevicePrivateDataCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + privateDataSlotRequestCount*: uint32 + + VkPrivateDataSlotCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkPrivateDataSlotCreateFlags + + VkPhysicalDevicePrivateDataFeatures* = object + sType*: VkStructureType + pNext*: pointer + privateData*: VkBool32 + + VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV* = object + sType*: VkStructureType + pNext*: pointer + maxGraphicsShaderGroupCount*: uint32 + maxIndirectSequenceCount*: uint32 + maxIndirectCommandsTokenCount*: uint32 + maxIndirectCommandsStreamCount*: uint32 + maxIndirectCommandsTokenOffset*: uint32 + maxIndirectCommandsStreamStride*: uint32 + minSequencesCountBufferOffsetAlignment*: uint32 + minSequencesIndexBufferOffsetAlignment*: uint32 + minIndirectCommandsBufferOffsetAlignment*: uint32 + + VkPhysicalDeviceMultiDrawPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + maxMultiDrawCount*: uint32 + + VkGraphicsShaderGroupCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + stageCount*: uint32 + pStages*: ptr VkPipelineShaderStageCreateInfo + pVertexInputState*: ptr VkPipelineVertexInputStateCreateInfo + pTessellationState*: ptr VkPipelineTessellationStateCreateInfo + + VkGraphicsPipelineShaderGroupsCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + groupCount*: uint32 + pGroups*: ptr VkGraphicsShaderGroupCreateInfoNV + pipelineCount*: uint32 + pPipelines*: ptr VkPipeline + + VkBindShaderGroupIndirectCommandNV* = object + groupIndex*: uint32 + + VkBindIndexBufferIndirectCommandNV* = object + bufferAddress*: VkDeviceAddress + size*: uint32 + indexType*: VkIndexType + + VkBindVertexBufferIndirectCommandNV* = object + bufferAddress*: VkDeviceAddress + size*: uint32 + stride*: uint32 + + VkSetStateFlagsIndirectCommandNV* = object + data*: uint32 + + VkIndirectCommandsStreamNV* = object + buffer*: VkBuffer + offset*: VkDeviceSize + + VkIndirectCommandsLayoutTokenNV* = object + sType*: VkStructureType + pNext*: pointer + 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 + + VkIndirectCommandsLayoutCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkIndirectCommandsLayoutUsageFlagsNV + pipelineBindPoint*: VkPipelineBindPoint + tokenCount*: uint32 + pTokens*: ptr VkIndirectCommandsLayoutTokenNV + streamCount*: uint32 + pStreamStrides*: ptr uint32 + + VkGeneratedCommandsInfoNV* = object + sType*: VkStructureType + pNext*: pointer + 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 + + VkGeneratedCommandsMemoryRequirementsInfoNV* = object + sType*: VkStructureType + pNext*: pointer + pipelineBindPoint*: VkPipelineBindPoint + pipeline*: VkPipeline + indirectCommandsLayout*: VkIndirectCommandsLayoutNV + maxSequencesCount*: uint32 + + VkPipelineIndirectDeviceAddressInfoNV* = object + sType*: VkStructureType + pNext*: pointer + pipelineBindPoint*: VkPipelineBindPoint + pipeline*: VkPipeline + + VkBindPipelineIndirectCommandNV* = object + pipelineAddress*: VkDeviceAddress + + VkPhysicalDeviceFeatures2* = object + sType*: VkStructureType + pNext*: pointer + features*: VkPhysicalDeviceFeatures + + VkPhysicalDeviceProperties2* = object + sType*: VkStructureType + pNext*: pointer + properties*: VkPhysicalDeviceProperties + + VkFormatProperties2* = object + sType*: VkStructureType + pNext*: pointer + formatProperties*: VkFormatProperties + + VkImageFormatProperties2* = object + sType*: VkStructureType + pNext*: pointer + imageFormatProperties*: VkImageFormatProperties + + VkPhysicalDeviceImageFormatInfo2* = object + sType*: VkStructureType + pNext*: pointer + format*: VkFormat + `type`*: VkImageType + tiling*: VkImageTiling + usage*: VkImageUsageFlags + flags*: VkImageCreateFlags + + VkQueueFamilyProperties2* = object + sType*: VkStructureType + pNext*: pointer + queueFamilyProperties*: VkQueueFamilyProperties + + VkPhysicalDeviceMemoryProperties2* = object + sType*: VkStructureType + pNext*: pointer + memoryProperties*: VkPhysicalDeviceMemoryProperties + + VkSparseImageFormatProperties2* = object + sType*: VkStructureType + pNext*: pointer + properties*: VkSparseImageFormatProperties + + VkPhysicalDeviceSparseImageFormatInfo2* = object + sType*: VkStructureType + pNext*: pointer + format*: VkFormat + `type`*: VkImageType + samples*: VkSampleCountFlagBits + usage*: VkImageUsageFlags + tiling*: VkImageTiling + + VkPhysicalDevicePushDescriptorPropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + maxPushDescriptors*: uint32 + + VkConformanceVersion* = object + major*: uint8 + minor*: uint8 + subminor*: uint8 + patch*: uint8 + + VkPhysicalDeviceDriverProperties* = object + sType*: VkStructureType + pNext*: pointer + driverID*: VkDriverId + driverName*: array[VK_MAX_DRIVER_NAME_SIZE, char] + driverInfo*: array[VK_MAX_DRIVER_INFO_SIZE, char] + conformanceVersion*: VkConformanceVersion + + VkPresentRegionsKHR* = object + sType*: VkStructureType + pNext*: pointer + swapchainCount*: uint32 + pRegions*: ptr VkPresentRegionKHR + + VkPresentRegionKHR* = object + rectangleCount*: uint32 + pRectangles*: ptr VkRectLayerKHR + + VkRectLayerKHR* = object + offset*: VkOffset2D + extent*: VkExtent2D + layer*: uint32 + + VkPhysicalDeviceVariablePointersFeatures* = object + sType*: VkStructureType + pNext*: pointer + variablePointersStorageBuffer*: VkBool32 + variablePointers*: VkBool32 + + VkExternalMemoryProperties* = object + externalMemoryFeatures*: VkExternalMemoryFeatureFlags + exportFromImportedHandleTypes*: VkExternalMemoryHandleTypeFlags + compatibleHandleTypes*: VkExternalMemoryHandleTypeFlags + + VkPhysicalDeviceExternalImageFormatInfo* = object + sType*: VkStructureType + pNext*: pointer + handleType*: VkExternalMemoryHandleTypeFlagBits + + VkExternalImageFormatProperties* = object + sType*: VkStructureType + pNext*: pointer + externalMemoryProperties*: VkExternalMemoryProperties + + VkPhysicalDeviceExternalBufferInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkBufferCreateFlags + usage*: VkBufferUsageFlags + handleType*: VkExternalMemoryHandleTypeFlagBits + + VkExternalBufferProperties* = object + sType*: VkStructureType + pNext*: pointer + externalMemoryProperties*: VkExternalMemoryProperties + + VkPhysicalDeviceIDProperties* = object + sType*: VkStructureType + pNext*: pointer + deviceUUID*: array[VK_UUID_SIZE, uint8] + driverUUID*: array[VK_UUID_SIZE, uint8] + deviceLUID*: array[VK_LUID_SIZE, uint8] + deviceNodeMask*: uint32 + deviceLUIDValid*: VkBool32 + + VkExternalMemoryImageCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + handleTypes*: VkExternalMemoryHandleTypeFlags + + VkExternalMemoryBufferCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + handleTypes*: VkExternalMemoryHandleTypeFlags + + VkExportMemoryAllocateInfo* = object + sType*: VkStructureType + pNext*: pointer + handleTypes*: VkExternalMemoryHandleTypeFlags + + VkImportMemoryWin32HandleInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + handleType*: VkExternalMemoryHandleTypeFlagBits + handle*: HANDLE + name*: LPCWSTR + + VkExportMemoryWin32HandleInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + pAttributes*: ptr SECURITY_ATTRIBUTES + 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 + memoryTypeBits*: uint32 + + VkMemoryGetWin32HandleInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + memory*: VkDeviceMemory + handleType*: VkExternalMemoryHandleTypeFlagBits + + VkImportMemoryFdInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + handleType*: VkExternalMemoryHandleTypeFlagBits + fd*: int + + VkMemoryFdPropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + memoryTypeBits*: uint32 + + VkMemoryGetFdInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + memory*: VkDeviceMemory + handleType*: VkExternalMemoryHandleTypeFlagBits + + VkWin32KeyedMutexAcquireReleaseInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + acquireCount*: uint32 + pAcquireSyncs*: ptr VkDeviceMemory + pAcquireKeys*: ptr uint64 + pAcquireTimeouts*: ptr uint32 + releaseCount*: uint32 + pReleaseSyncs*: ptr VkDeviceMemory + pReleaseKeys*: ptr uint64 + + VkPhysicalDeviceExternalSemaphoreInfo* = object + sType*: VkStructureType + pNext*: pointer + handleType*: VkExternalSemaphoreHandleTypeFlagBits + + VkExternalSemaphoreProperties* = object + sType*: VkStructureType + pNext*: pointer + exportFromImportedHandleTypes*: VkExternalSemaphoreHandleTypeFlags + compatibleHandleTypes*: VkExternalSemaphoreHandleTypeFlags + externalSemaphoreFeatures*: VkExternalSemaphoreFeatureFlags + + VkExportSemaphoreCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + handleTypes*: VkExternalSemaphoreHandleTypeFlags + + VkImportSemaphoreWin32HandleInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + semaphore*: VkSemaphore + flags*: VkSemaphoreImportFlags + handleType*: VkExternalSemaphoreHandleTypeFlagBits + handle*: HANDLE + name*: LPCWSTR + + VkExportSemaphoreWin32HandleInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + pAttributes*: ptr SECURITY_ATTRIBUTES + dwAccess*: DWORD + name*: LPCWSTR + + VkD3D12FenceSubmitInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + waitSemaphoreValuesCount*: uint32 + pWaitSemaphoreValues*: ptr uint64 + signalSemaphoreValuesCount*: uint32 + pSignalSemaphoreValues*: ptr uint64 + + VkSemaphoreGetWin32HandleInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + semaphore*: VkSemaphore + handleType*: VkExternalSemaphoreHandleTypeFlagBits + + VkImportSemaphoreFdInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + semaphore*: VkSemaphore + flags*: VkSemaphoreImportFlags + handleType*: VkExternalSemaphoreHandleTypeFlagBits + fd*: int + + VkSemaphoreGetFdInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + 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 + handleType*: VkExternalFenceHandleTypeFlagBits + + VkExternalFenceProperties* = object + sType*: VkStructureType + pNext*: pointer + exportFromImportedHandleTypes*: VkExternalFenceHandleTypeFlags + compatibleHandleTypes*: VkExternalFenceHandleTypeFlags + externalFenceFeatures*: VkExternalFenceFeatureFlags + + VkExportFenceCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + handleTypes*: VkExternalFenceHandleTypeFlags + + VkImportFenceWin32HandleInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + fence*: VkFence + flags*: VkFenceImportFlags + handleType*: VkExternalFenceHandleTypeFlagBits + handle*: HANDLE + name*: LPCWSTR + + VkExportFenceWin32HandleInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + pAttributes*: ptr SECURITY_ATTRIBUTES + dwAccess*: DWORD + name*: LPCWSTR + + VkFenceGetWin32HandleInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + fence*: VkFence + handleType*: VkExternalFenceHandleTypeFlagBits + + VkImportFenceFdInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + fence*: VkFence + flags*: VkFenceImportFlags + handleType*: VkExternalFenceHandleTypeFlagBits + fd*: int + + VkFenceGetFdInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + 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 + multiview*: VkBool32 + multiviewGeometryShader*: VkBool32 + multiviewTessellationShader*: VkBool32 + + VkPhysicalDeviceMultiviewProperties* = object + sType*: VkStructureType + pNext*: pointer + maxMultiviewViewCount*: uint32 + maxMultiviewInstanceIndex*: uint32 + + VkRenderPassMultiviewCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + subpassCount*: uint32 + pViewMasks*: ptr uint32 + dependencyCount*: uint32 + pViewOffsets*: ptr int32 + correlationMaskCount*: uint32 + pCorrelationMasks*: ptr uint32 + + VkSurfaceCapabilities2EXT* = object + sType*: VkStructureType + pNext*: pointer + minImageCount*: uint32 + maxImageCount*: uint32 + currentExtent*: VkExtent2D + minImageExtent*: VkExtent2D + maxImageExtent*: VkExtent2D + maxImageArrayLayers*: uint32 + supportedTransforms*: VkSurfaceTransformFlagsKHR + currentTransform*: VkSurfaceTransformFlagBitsKHR + supportedCompositeAlpha*: VkCompositeAlphaFlagsKHR + supportedUsageFlags*: VkImageUsageFlags + supportedSurfaceCounters*: VkSurfaceCounterFlagsEXT + + VkDisplayPowerInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + powerState*: VkDisplayPowerStateEXT + + VkDeviceEventInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + deviceEvent*: VkDeviceEventTypeEXT + + VkDisplayEventInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + displayEvent*: VkDisplayEventTypeEXT + + VkSwapchainCounterCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + surfaceCounters*: VkSurfaceCounterFlagsEXT + + VkPhysicalDeviceGroupProperties* = object + sType*: VkStructureType + pNext*: pointer + physicalDeviceCount*: uint32 + physicalDevices*: array[VK_MAX_DEVICE_GROUP_SIZE, VkPhysicalDevice] + subsetAllocation*: VkBool32 + + VkMemoryAllocateFlagsInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkMemoryAllocateFlags + deviceMask*: uint32 + + VkBindBufferMemoryInfo* = object + sType*: VkStructureType + pNext*: pointer + buffer*: VkBuffer + memory*: VkDeviceMemory + memoryOffset*: VkDeviceSize + + VkBindBufferMemoryDeviceGroupInfo* = object + sType*: VkStructureType + pNext*: pointer + deviceIndexCount*: uint32 + pDeviceIndices*: ptr uint32 + + VkBindImageMemoryInfo* = object + sType*: VkStructureType + pNext*: pointer + image*: VkImage + memory*: VkDeviceMemory + memoryOffset*: VkDeviceSize + + VkBindImageMemoryDeviceGroupInfo* = object + sType*: VkStructureType + pNext*: pointer + deviceIndexCount*: uint32 + pDeviceIndices*: ptr uint32 + splitInstanceBindRegionCount*: uint32 + pSplitInstanceBindRegions*: ptr VkRect2D + + VkDeviceGroupRenderPassBeginInfo* = object + sType*: VkStructureType + pNext*: pointer + deviceMask*: uint32 + deviceRenderAreaCount*: uint32 + pDeviceRenderAreas*: ptr VkRect2D + + VkDeviceGroupCommandBufferBeginInfo* = object + sType*: VkStructureType + pNext*: pointer + deviceMask*: uint32 + + VkDeviceGroupSubmitInfo* = object + sType*: VkStructureType + pNext*: pointer + waitSemaphoreCount*: uint32 + pWaitSemaphoreDeviceIndices*: ptr uint32 + commandBufferCount*: uint32 + pCommandBufferDeviceMasks*: ptr uint32 + signalSemaphoreCount*: uint32 + pSignalSemaphoreDeviceIndices*: ptr uint32 + + VkDeviceGroupBindSparseInfo* = object + sType*: VkStructureType + pNext*: pointer + resourceDeviceIndex*: uint32 + memoryDeviceIndex*: uint32 + + VkDeviceGroupPresentCapabilitiesKHR* = object + sType*: VkStructureType + pNext*: pointer + presentMask*: array[VK_MAX_DEVICE_GROUP_SIZE, uint32] + modes*: VkDeviceGroupPresentModeFlagsKHR + + VkImageSwapchainCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + swapchain*: VkSwapchainKHR + + VkBindImageMemorySwapchainInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + swapchain*: VkSwapchainKHR + imageIndex*: uint32 + + VkAcquireNextImageInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + swapchain*: VkSwapchainKHR + timeout*: uint64 + semaphore*: VkSemaphore + fence*: VkFence + deviceMask*: uint32 + + VkDeviceGroupPresentInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + swapchainCount*: uint32 + pDeviceMasks*: ptr uint32 + mode*: VkDeviceGroupPresentModeFlagBitsKHR + + VkDeviceGroupDeviceCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + physicalDeviceCount*: uint32 + pPhysicalDevices*: ptr VkPhysicalDevice + + VkDeviceGroupSwapchainCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + modes*: VkDeviceGroupPresentModeFlagsKHR + + VkDescriptorUpdateTemplateEntry* = object + dstBinding*: uint32 + dstArrayElement*: uint32 + descriptorCount*: uint32 + descriptorType*: VkDescriptorType + offset*: uint + stride*: uint + + VkDescriptorUpdateTemplateCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkDescriptorUpdateTemplateCreateFlags + descriptorUpdateEntryCount*: uint32 + pDescriptorUpdateEntries*: ptr VkDescriptorUpdateTemplateEntry + templateType*: VkDescriptorUpdateTemplateType + descriptorSetLayout*: VkDescriptorSetLayout + pipelineBindPoint*: VkPipelineBindPoint + pipelineLayout*: VkPipelineLayout + set*: uint32 + + VkXYColorEXT* = object + 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 + displayPrimaryRed*: VkXYColorEXT + displayPrimaryGreen*: VkXYColorEXT + displayPrimaryBlue*: VkXYColorEXT + whitePoint*: VkXYColorEXT + maxLuminance*: float32 + minLuminance*: float32 + maxContentLightLevel*: float32 + maxFrameAverageLightLevel*: float32 + + VkDisplayNativeHdrSurfaceCapabilitiesAMD* = object + sType*: VkStructureType + pNext*: pointer + localDimmingSupport*: VkBool32 + + VkSwapchainDisplayNativeHdrCreateInfoAMD* = object + sType*: VkStructureType + pNext*: pointer + localDimmingEnable*: VkBool32 + + VkRefreshCycleDurationGOOGLE* = object + refreshDuration*: uint64 + + VkPastPresentationTimingGOOGLE* = object + presentID*: uint32 + desiredPresentTime*: uint64 + actualPresentTime*: uint64 + earliestPresentTime*: uint64 + presentMargin*: uint64 + + VkPresentTimesInfoGOOGLE* = object + sType*: VkStructureType + pNext*: pointer + swapchainCount*: uint32 + pTimes*: ptr VkPresentTimeGOOGLE + + VkPresentTimeGOOGLE* = object + presentID*: uint32 + desiredPresentTime*: uint64 + + VkIOSSurfaceCreateInfoMVK* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkIOSSurfaceCreateFlagsMVK + pView*: pointer + + VkMacOSSurfaceCreateInfoMVK* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkMacOSSurfaceCreateFlagsMVK + pView*: pointer + + VkMetalSurfaceCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkMetalSurfaceCreateFlagsEXT + pLayer*: ptr CAMetalLayer + + VkViewportWScalingNV* = object + xcoeff*: float32 + ycoeff*: float32 + + VkPipelineViewportWScalingStateCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + viewportWScalingEnable*: VkBool32 + viewportCount*: uint32 + pViewportWScalings*: ptr VkViewportWScalingNV + + VkViewportSwizzleNV* = object + x*: VkViewportCoordinateSwizzleNV + y*: VkViewportCoordinateSwizzleNV + z*: VkViewportCoordinateSwizzleNV + w*: VkViewportCoordinateSwizzleNV + + VkPipelineViewportSwizzleStateCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkPipelineViewportSwizzleStateCreateFlagsNV + viewportCount*: uint32 + pViewportSwizzles*: ptr VkViewportSwizzleNV + + VkPhysicalDeviceDiscardRectanglePropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + maxDiscardRectangles*: uint32 + + VkPipelineDiscardRectangleStateCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkPipelineDiscardRectangleStateCreateFlagsEXT + discardRectangleMode*: VkDiscardRectangleModeEXT + discardRectangleCount*: uint32 + pDiscardRectangles*: ptr VkRect2D + + VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX* = object + sType*: VkStructureType + pNext*: pointer + perViewPositionAllComponents*: VkBool32 + + VkInputAttachmentAspectReference* = object + subpass*: uint32 + inputAttachmentIndex*: uint32 + aspectMask*: VkImageAspectFlags + + VkRenderPassInputAttachmentAspectCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + aspectReferenceCount*: uint32 + pAspectReferences*: ptr VkInputAttachmentAspectReference + + VkPhysicalDeviceSurfaceInfo2KHR* = object + sType*: VkStructureType + pNext*: pointer + surface*: VkSurfaceKHR + + VkSurfaceCapabilities2KHR* = object + sType*: VkStructureType + pNext*: pointer + surfaceCapabilities*: VkSurfaceCapabilitiesKHR + + VkSurfaceFormat2KHR* = object + sType*: VkStructureType + pNext*: pointer + surfaceFormat*: VkSurfaceFormatKHR + + VkDisplayProperties2KHR* = object + sType*: VkStructureType + pNext*: pointer + displayProperties*: VkDisplayPropertiesKHR + + VkDisplayPlaneProperties2KHR* = object + sType*: VkStructureType + pNext*: pointer + displayPlaneProperties*: VkDisplayPlanePropertiesKHR + + VkDisplayModeProperties2KHR* = object + sType*: VkStructureType + pNext*: pointer + displayModeProperties*: VkDisplayModePropertiesKHR + + VkDisplayPlaneInfo2KHR* = object + sType*: VkStructureType + pNext*: pointer + mode*: VkDisplayModeKHR + planeIndex*: uint32 + + VkDisplayPlaneCapabilities2KHR* = object + sType*: VkStructureType + pNext*: pointer + capabilities*: VkDisplayPlaneCapabilitiesKHR + + VkSharedPresentSurfaceCapabilitiesKHR* = object + sType*: VkStructureType + pNext*: pointer + sharedPresentSupportedUsageFlags*: VkImageUsageFlags + + VkPhysicalDevice16BitStorageFeatures* = object + sType*: VkStructureType + pNext*: pointer + storageBuffer16BitAccess*: VkBool32 + uniformAndStorageBuffer16BitAccess*: VkBool32 + storagePushConstant16*: VkBool32 + storageInputOutput16*: VkBool32 + + VkPhysicalDeviceSubgroupProperties* = object + sType*: VkStructureType + pNext*: pointer + subgroupSize*: uint32 + supportedStages*: VkShaderStageFlags + supportedOperations*: VkSubgroupFeatureFlags + quadOperationsInAllStages*: VkBool32 + + VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures* = object + sType*: VkStructureType + pNext*: pointer + shaderSubgroupExtendedTypes*: VkBool32 + + VkBufferMemoryRequirementsInfo2* = object + sType*: VkStructureType + pNext*: pointer + buffer*: VkBuffer + + VkDeviceBufferMemoryRequirements* = object + sType*: VkStructureType + pNext*: pointer + pCreateInfo*: ptr VkBufferCreateInfo + + VkImageMemoryRequirementsInfo2* = object + sType*: VkStructureType + pNext*: pointer + image*: VkImage + + VkImageSparseMemoryRequirementsInfo2* = object + sType*: VkStructureType + pNext*: pointer + image*: VkImage + + VkDeviceImageMemoryRequirements* = object + sType*: VkStructureType + pNext*: pointer + pCreateInfo*: ptr VkImageCreateInfo + planeAspect*: VkImageAspectFlagBits + + VkMemoryRequirements2* = object + sType*: VkStructureType + pNext*: pointer + memoryRequirements*: VkMemoryRequirements + + VkSparseImageMemoryRequirements2* = object + sType*: VkStructureType + pNext*: pointer + memoryRequirements*: VkSparseImageMemoryRequirements + + VkPhysicalDevicePointClippingProperties* = object + sType*: VkStructureType + pNext*: pointer + pointClippingBehavior*: VkPointClippingBehavior + + VkMemoryDedicatedRequirements* = object + sType*: VkStructureType + pNext*: pointer + prefersDedicatedAllocation*: VkBool32 + requiresDedicatedAllocation*: VkBool32 + + VkMemoryDedicatedAllocateInfo* = object + sType*: VkStructureType + pNext*: pointer + image*: VkImage + buffer*: VkBuffer + + VkImageViewUsageCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + usage*: VkImageUsageFlags + + VkImageViewSlicedCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + sliceOffset*: uint32 + sliceCount*: uint32 + + VkPipelineTessellationDomainOriginStateCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + domainOrigin*: VkTessellationDomainOrigin + + VkSamplerYcbcrConversionInfo* = object + sType*: VkStructureType + pNext*: pointer + conversion*: VkSamplerYcbcrConversion + + VkSamplerYcbcrConversionCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + format*: VkFormat + ycbcrModel*: VkSamplerYcbcrModelConversion + ycbcrRange*: VkSamplerYcbcrRange + components*: VkComponentMapping + xChromaOffset*: VkChromaLocation + yChromaOffset*: VkChromaLocation + chromaFilter*: VkFilter + forceExplicitReconstruction*: VkBool32 + + VkBindImagePlaneMemoryInfo* = object + sType*: VkStructureType + pNext*: pointer + planeAspect*: VkImageAspectFlagBits + + VkImagePlaneMemoryRequirementsInfo* = object + sType*: VkStructureType + pNext*: pointer + planeAspect*: VkImageAspectFlagBits + + VkPhysicalDeviceSamplerYcbcrConversionFeatures* = object + sType*: VkStructureType + pNext*: pointer + samplerYcbcrConversion*: VkBool32 + + VkSamplerYcbcrConversionImageFormatProperties* = object + sType*: VkStructureType + pNext*: pointer + combinedImageSamplerDescriptorCount*: uint32 + + VkTextureLODGatherFormatPropertiesAMD* = object + sType*: VkStructureType + pNext*: pointer + supportsTextureGatherLODBiasAMD*: VkBool32 + + VkConditionalRenderingBeginInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + buffer*: VkBuffer + offset*: VkDeviceSize + flags*: VkConditionalRenderingFlagsEXT + + VkProtectedSubmitInfo* = object + sType*: VkStructureType + pNext*: pointer + protectedSubmit*: VkBool32 + + VkPhysicalDeviceProtectedMemoryFeatures* = object + sType*: VkStructureType + pNext*: pointer + protectedMemory*: VkBool32 + + VkPhysicalDeviceProtectedMemoryProperties* = object + sType*: VkStructureType + pNext*: pointer + protectedNoFault*: VkBool32 + + VkDeviceQueueInfo2* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkDeviceQueueCreateFlags + queueFamilyIndex*: uint32 + queueIndex*: uint32 + + VkPipelineCoverageToColorStateCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkPipelineCoverageToColorStateCreateFlagsNV + coverageToColorEnable*: VkBool32 + coverageToColorLocation*: uint32 + + VkPhysicalDeviceSamplerFilterMinmaxProperties* = object + sType*: VkStructureType + pNext*: pointer + filterMinmaxSingleComponentFormats*: VkBool32 + filterMinmaxImageComponentMapping*: VkBool32 + + VkSampleLocationEXT* = object + x*: float32 + y*: float32 + + VkSampleLocationsInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + sampleLocationsPerPixel*: VkSampleCountFlagBits + sampleLocationGridSize*: VkExtent2D + sampleLocationsCount*: uint32 + pSampleLocations*: ptr VkSampleLocationEXT + + VkAttachmentSampleLocationsEXT* = object + attachmentIndex*: uint32 + sampleLocationsInfo*: VkSampleLocationsInfoEXT + + VkSubpassSampleLocationsEXT* = object + subpassIndex*: uint32 + sampleLocationsInfo*: VkSampleLocationsInfoEXT + + VkRenderPassSampleLocationsBeginInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + attachmentInitialSampleLocationsCount*: uint32 + pAttachmentInitialSampleLocations*: ptr VkAttachmentSampleLocationsEXT + postSubpassSampleLocationsCount*: uint32 + pPostSubpassSampleLocations*: ptr VkSubpassSampleLocationsEXT + + VkPipelineSampleLocationsStateCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + sampleLocationsEnable*: VkBool32 + sampleLocationsInfo*: VkSampleLocationsInfoEXT + + VkPhysicalDeviceSampleLocationsPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + sampleLocationSampleCounts*: VkSampleCountFlags + maxSampleLocationGridSize*: VkExtent2D + sampleLocationCoordinateRange*: array[2, float32] + sampleLocationSubPixelBits*: uint32 + variableSampleLocations*: VkBool32 + + VkMultisamplePropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + maxSampleLocationGridSize*: VkExtent2D + + VkSamplerReductionModeCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + reductionMode*: VkSamplerReductionMode + + VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + advancedBlendCoherentOperations*: VkBool32 + + VkPhysicalDeviceMultiDrawFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + multiDraw*: VkBool32 + + VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + advancedBlendMaxColorAttachments*: uint32 + advancedBlendIndependentBlend*: VkBool32 + advancedBlendNonPremultipliedSrcColor*: VkBool32 + advancedBlendNonPremultipliedDstColor*: VkBool32 + advancedBlendCorrelatedOverlap*: VkBool32 + advancedBlendAllOperations*: VkBool32 + + VkPipelineColorBlendAdvancedStateCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + srcPremultiplied*: VkBool32 + dstPremultiplied*: VkBool32 + blendOverlap*: VkBlendOverlapEXT + + VkPhysicalDeviceInlineUniformBlockFeatures* = object + sType*: VkStructureType + pNext*: pointer + inlineUniformBlock*: VkBool32 + descriptorBindingInlineUniformBlockUpdateAfterBind*: VkBool32 + + VkPhysicalDeviceInlineUniformBlockProperties* = object + sType*: VkStructureType + pNext*: pointer + maxInlineUniformBlockSize*: uint32 + maxPerStageDescriptorInlineUniformBlocks*: uint32 + maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks*: uint32 + maxDescriptorSetInlineUniformBlocks*: uint32 + maxDescriptorSetUpdateAfterBindInlineUniformBlocks*: uint32 + + VkWriteDescriptorSetInlineUniformBlock* = object + sType*: VkStructureType + pNext*: pointer + dataSize*: uint32 + pData*: pointer + + VkDescriptorPoolInlineUniformBlockCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + maxInlineUniformBlockBindings*: uint32 + + VkPipelineCoverageModulationStateCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkPipelineCoverageModulationStateCreateFlagsNV + coverageModulationMode*: VkCoverageModulationModeNV + coverageModulationTableEnable*: VkBool32 + coverageModulationTableCount*: uint32 + pCoverageModulationTable*: ptr float32 + + VkImageFormatListCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + viewFormatCount*: uint32 + pViewFormats*: ptr VkFormat + + VkValidationCacheCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkValidationCacheCreateFlagsEXT + initialDataSize*: uint + pInitialData*: pointer + + VkShaderModuleValidationCacheCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + validationCache*: VkValidationCacheEXT + + VkPhysicalDeviceMaintenance3Properties* = object + sType*: VkStructureType + pNext*: pointer + maxPerSetDescriptors*: uint32 + maxMemoryAllocationSize*: VkDeviceSize + + VkPhysicalDeviceMaintenance4Features* = object + sType*: VkStructureType + pNext*: pointer + maintenance4*: VkBool32 + + VkPhysicalDeviceMaintenance4Properties* = object + sType*: VkStructureType + pNext*: pointer + maxBufferSize*: VkDeviceSize + + 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 + + VkRenderingAreaInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + viewMask*: uint32 + colorAttachmentCount*: uint32 + pColorAttachmentFormats*: ptr VkFormat + depthAttachmentFormat*: VkFormat + stencilAttachmentFormat*: VkFormat + + VkDescriptorSetLayoutSupport* = object + sType*: VkStructureType + pNext*: pointer + supported*: VkBool32 + + VkPhysicalDeviceShaderDrawParametersFeatures* = object + sType*: VkStructureType + pNext*: pointer + shaderDrawParameters*: VkBool32 + + VkPhysicalDeviceShaderFloat16Int8Features* = object + sType*: VkStructureType + pNext*: pointer + shaderFloat16*: VkBool32 + shaderInt8*: VkBool32 + + VkPhysicalDeviceFloatControlsProperties* = object + sType*: VkStructureType + pNext*: pointer + 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 + + VkPhysicalDeviceHostQueryResetFeatures* = object + sType*: VkStructureType + pNext*: pointer + hostQueryReset*: VkBool32 + + VkNativeBufferUsage2ANDROID* = object + consumer*: uint64 + producer*: uint64 + + VkNativeBufferANDROID* = object + sType*: VkStructureType + pNext*: pointer + handle*: pointer + stride*: int + format*: int + usage*: int + usage2*: VkNativeBufferUsage2ANDROID + + VkSwapchainImageCreateInfoANDROID* = object + sType*: VkStructureType + pNext*: pointer + usage*: VkSwapchainImageUsageFlagsANDROID + + VkPhysicalDevicePresentationPropertiesANDROID* = object + sType*: VkStructureType + pNext*: pointer + sharedImage*: VkBool32 + + VkShaderResourceUsageAMD* = object + numUsedVgprs*: uint32 + numUsedSgprs*: uint32 + ldsSizePerLocalWorkGroup*: uint32 + ldsUsageSizeInBytes*: uint + scratchMemUsageInBytes*: uint + + VkShaderStatisticsInfoAMD* = object + shaderStageMask*: VkShaderStageFlags + resourceUsage*: VkShaderResourceUsageAMD + numPhysicalVgprs*: uint32 + numPhysicalSgprs*: uint32 + numAvailableVgprs*: uint32 + numAvailableSgprs*: uint32 + computeWorkGroupSize*: array[3, uint32] + + VkDeviceQueueGlobalPriorityCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + globalPriority*: VkQueueGlobalPriorityKHR + + VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + globalPriorityQuery*: VkBool32 + + VkQueueFamilyGlobalPriorityPropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + priorityCount*: uint32 + priorities*: array[VK_MAX_GLOBAL_PRIORITY_SIZE_KHR, VkQueueGlobalPriorityKHR] + + VkDebugUtilsObjectNameInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + objectType*: VkObjectType + objectHandle*: uint64 + pObjectName*: cstring + + VkDebugUtilsObjectTagInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + objectType*: VkObjectType + objectHandle*: uint64 + tagName*: uint64 + tagSize*: uint + pTag*: pointer + + VkDebugUtilsLabelEXT* = object + sType*: VkStructureType + pNext*: pointer + pLabelName*: cstring + color*: array[4, float32] + + VkDebugUtilsMessengerCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkDebugUtilsMessengerCreateFlagsEXT + messageSeverity*: VkDebugUtilsMessageSeverityFlagsEXT + messageType*: VkDebugUtilsMessageTypeFlagsEXT + pfnUserCallback*: PFN_vkDebugUtilsMessengerCallbackEXT + pUserData*: pointer + + VkDebugUtilsMessengerCallbackDataEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkDebugUtilsMessengerCallbackDataFlagsEXT + pMessageIdName*: cstring + messageIdNumber*: int32 + pMessage*: cstring + queueLabelCount*: uint32 + pQueueLabels*: ptr VkDebugUtilsLabelEXT + cmdBufLabelCount*: uint32 + pCmdBufLabels*: ptr VkDebugUtilsLabelEXT + 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 + handleType*: VkExternalMemoryHandleTypeFlagBits + pHostPointer*: pointer + + VkMemoryHostPointerPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + memoryTypeBits*: uint32 + + VkPhysicalDeviceExternalMemoryHostPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + minImportedHostPointerAlignment*: VkDeviceSize + + VkPhysicalDeviceConservativeRasterizationPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + primitiveOverestimationSize*: float32 + maxExtraPrimitiveOverestimationSize*: float32 + extraPrimitiveOverestimationSizeGranularity*: float32 + primitiveUnderestimation*: VkBool32 + conservativePointAndLineRasterization*: VkBool32 + degenerateTrianglesRasterized*: VkBool32 + degenerateLinesRasterized*: VkBool32 + fullyCoveredFragmentShaderInputVariable*: VkBool32 + conservativeRasterizationPostDepthCoverage*: VkBool32 + + VkCalibratedTimestampInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + timeDomain*: VkTimeDomainEXT + + VkPhysicalDeviceShaderCorePropertiesAMD* = object + sType*: VkStructureType + pNext*: pointer + 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 + + VkPhysicalDeviceShaderCoreProperties2AMD* = object + sType*: VkStructureType + pNext*: pointer + shaderCoreFeatures*: VkShaderCorePropertiesFlagsAMD + activeComputeUnitCount*: uint32 + + VkPipelineRasterizationConservativeStateCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkPipelineRasterizationConservativeStateCreateFlagsEXT + conservativeRasterizationMode*: VkConservativeRasterizationModeEXT + extraPrimitiveOverestimationSize*: float32 + + VkPhysicalDeviceDescriptorIndexingFeatures* = object + sType*: VkStructureType + pNext*: pointer + 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 + + VkPhysicalDeviceDescriptorIndexingProperties* = object + sType*: VkStructureType + pNext*: pointer + 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 + + VkDescriptorSetLayoutBindingFlagsCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + bindingCount*: uint32 + pBindingFlags*: ptr VkDescriptorBindingFlags + + VkDescriptorSetVariableDescriptorCountAllocateInfo* = object + sType*: VkStructureType + pNext*: pointer + descriptorSetCount*: uint32 + pDescriptorCounts*: ptr uint32 + + VkDescriptorSetVariableDescriptorCountLayoutSupport* = object + sType*: VkStructureType + pNext*: pointer + maxVariableDescriptorCount*: uint32 + + VkAttachmentDescription2* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkAttachmentDescriptionFlags + format*: VkFormat + samples*: VkSampleCountFlagBits + loadOp*: VkAttachmentLoadOp + storeOp*: VkAttachmentStoreOp + stencilLoadOp*: VkAttachmentLoadOp + stencilStoreOp*: VkAttachmentStoreOp + initialLayout*: VkImageLayout + finalLayout*: VkImageLayout + + VkAttachmentReference2* = object + sType*: VkStructureType + pNext*: pointer + attachment*: uint32 + layout*: VkImageLayout + aspectMask*: VkImageAspectFlags + + VkSubpassDescription2* = object + sType*: VkStructureType + pNext*: pointer + flags*: 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 + + VkSubpassDependency2* = object + sType*: VkStructureType + pNext*: pointer + srcSubpass*: uint32 + dstSubpass*: uint32 + srcStageMask*: VkPipelineStageFlags + dstStageMask*: VkPipelineStageFlags + srcAccessMask*: VkAccessFlags + dstAccessMask*: VkAccessFlags + dependencyFlags*: VkDependencyFlags + viewOffset*: int32 + + VkRenderPassCreateInfo2* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkRenderPassCreateFlags + attachmentCount*: uint32 + pAttachments*: ptr VkAttachmentDescription2 + subpassCount*: uint32 + pSubpasses*: ptr VkSubpassDescription2 + dependencyCount*: uint32 + pDependencies*: ptr VkSubpassDependency2 + correlatedViewMaskCount*: uint32 + pCorrelatedViewMasks*: ptr uint32 + + VkSubpassBeginInfo* = object + sType*: VkStructureType + pNext*: pointer + contents*: VkSubpassContents + + VkSubpassEndInfo* = object + sType*: VkStructureType + pNext*: pointer + + VkPhysicalDeviceTimelineSemaphoreFeatures* = object + sType*: VkStructureType + pNext*: pointer + timelineSemaphore*: VkBool32 + + VkPhysicalDeviceTimelineSemaphoreProperties* = object + sType*: VkStructureType + pNext*: pointer + maxTimelineSemaphoreValueDifference*: uint64 + + VkSemaphoreTypeCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + semaphoreType*: VkSemaphoreType + initialValue*: uint64 + + VkTimelineSemaphoreSubmitInfo* = object + sType*: VkStructureType + pNext*: pointer + waitSemaphoreValueCount*: uint32 + pWaitSemaphoreValues*: ptr uint64 + signalSemaphoreValueCount*: uint32 + pSignalSemaphoreValues*: ptr uint64 + + VkSemaphoreWaitInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkSemaphoreWaitFlags + semaphoreCount*: uint32 + pSemaphores*: ptr VkSemaphore + pValues*: ptr uint64 + + VkSemaphoreSignalInfo* = object + sType*: VkStructureType + pNext*: pointer + semaphore*: VkSemaphore + value*: uint64 + + VkVertexInputBindingDivisorDescriptionEXT* = object + binding*: uint32 + divisor*: uint32 + + VkPipelineVertexInputDivisorStateCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + vertexBindingDivisorCount*: uint32 + pVertexBindingDivisors*: ptr VkVertexInputBindingDivisorDescriptionEXT + + VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + maxVertexAttribDivisor*: uint32 + + VkPhysicalDevicePCIBusInfoPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + pciDomain*: uint32 + pciBus*: uint32 + pciDevice*: uint32 + pciFunction*: uint32 + + VkImportAndroidHardwareBufferInfoANDROID* = object + sType*: VkStructureType + pNext*: pointer + buffer*: ptr AHardwareBuffer + + VkAndroidHardwareBufferUsageANDROID* = object + sType*: VkStructureType + pNext*: pointer + androidHardwareBufferUsage*: uint64 + + VkAndroidHardwareBufferPropertiesANDROID* = object + sType*: VkStructureType + pNext*: pointer + allocationSize*: VkDeviceSize + memoryTypeBits*: uint32 + + VkMemoryGetAndroidHardwareBufferInfoANDROID* = object + sType*: VkStructureType + pNext*: pointer + memory*: VkDeviceMemory + + VkAndroidHardwareBufferFormatPropertiesANDROID* = object + sType*: VkStructureType + pNext*: pointer + format*: VkFormat + externalFormat*: uint64 + formatFeatures*: VkFormatFeatureFlags + samplerYcbcrConversionComponents*: VkComponentMapping + suggestedYcbcrModel*: VkSamplerYcbcrModelConversion + suggestedYcbcrRange*: VkSamplerYcbcrRange + suggestedXChromaOffset*: VkChromaLocation + suggestedYChromaOffset*: VkChromaLocation + + VkCommandBufferInheritanceConditionalRenderingInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + conditionalRenderingEnable*: VkBool32 + + VkExternalFormatANDROID* = object + sType*: VkStructureType + pNext*: pointer + externalFormat*: uint64 + + VkPhysicalDevice8BitStorageFeatures* = object + sType*: VkStructureType + pNext*: pointer + storageBuffer8BitAccess*: VkBool32 + uniformAndStorageBuffer8BitAccess*: VkBool32 + storagePushConstant8*: VkBool32 + + VkPhysicalDeviceConditionalRenderingFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + conditionalRendering*: VkBool32 + inheritedConditionalRendering*: VkBool32 + + VkPhysicalDeviceVulkanMemoryModelFeatures* = object + sType*: VkStructureType + pNext*: pointer + vulkanMemoryModel*: VkBool32 + vulkanMemoryModelDeviceScope*: VkBool32 + vulkanMemoryModelAvailabilityVisibilityChains*: VkBool32 + + VkPhysicalDeviceShaderAtomicInt64Features* = object + sType*: VkStructureType + pNext*: pointer + shaderBufferInt64Atomics*: VkBool32 + shaderSharedInt64Atomics*: VkBool32 + + VkPhysicalDeviceShaderAtomicFloatFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + shaderBufferFloat32Atomics*: VkBool32 + shaderBufferFloat32AtomicAdd*: VkBool32 + shaderBufferFloat64Atomics*: VkBool32 + shaderBufferFloat64AtomicAdd*: VkBool32 + shaderSharedFloat32Atomics*: VkBool32 + shaderSharedFloat32AtomicAdd*: VkBool32 + shaderSharedFloat64Atomics*: VkBool32 + shaderSharedFloat64AtomicAdd*: VkBool32 + shaderImageFloat32Atomics*: VkBool32 + shaderImageFloat32AtomicAdd*: VkBool32 + sparseImageFloat32Atomics*: VkBool32 + sparseImageFloat32AtomicAdd*: VkBool32 + + 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 + + VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + vertexAttributeInstanceRateDivisor*: VkBool32 + vertexAttributeInstanceRateZeroDivisor*: VkBool32 + + VkQueueFamilyCheckpointPropertiesNV* = object + sType*: VkStructureType + pNext*: pointer + checkpointExecutionStageMask*: VkPipelineStageFlags + + VkCheckpointDataNV* = object + sType*: VkStructureType + pNext*: pointer + stage*: VkPipelineStageFlagBits + pCheckpointMarker*: pointer + + VkPhysicalDeviceDepthStencilResolveProperties* = object + sType*: VkStructureType + pNext*: pointer + supportedDepthResolveModes*: VkResolveModeFlags + supportedStencilResolveModes*: VkResolveModeFlags + independentResolveNone*: VkBool32 + independentResolve*: VkBool32 + + VkSubpassDescriptionDepthStencilResolve* = object + sType*: VkStructureType + pNext*: pointer + depthResolveMode*: VkResolveModeFlagBits + stencilResolveMode*: VkResolveModeFlagBits + pDepthStencilResolveAttachment*: ptr VkAttachmentReference2 + + VkImageViewASTCDecodeModeEXT* = object + sType*: VkStructureType + pNext*: pointer + decodeMode*: VkFormat + + VkPhysicalDeviceASTCDecodeFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + decodeModeSharedExponent*: VkBool32 + + VkPhysicalDeviceTransformFeedbackFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + transformFeedback*: VkBool32 + geometryStreams*: VkBool32 + + VkPhysicalDeviceTransformFeedbackPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + maxTransformFeedbackStreams*: uint32 + maxTransformFeedbackBuffers*: uint32 + maxTransformFeedbackBufferSize*: VkDeviceSize + maxTransformFeedbackStreamDataSize*: uint32 + maxTransformFeedbackBufferDataSize*: uint32 + maxTransformFeedbackBufferDataStride*: uint32 + transformFeedbackQueries*: VkBool32 + transformFeedbackStreamsLinesTriangles*: VkBool32 + transformFeedbackRasterizationStreamSelect*: VkBool32 + transformFeedbackDraw*: VkBool32 + + VkPipelineRasterizationStateStreamCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkPipelineRasterizationStateStreamCreateFlagsEXT + rasterizationStream*: uint32 + + VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + representativeFragmentTest*: VkBool32 + + VkPipelineRepresentativeFragmentTestStateCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + representativeFragmentTestEnable*: VkBool32 + + VkPhysicalDeviceExclusiveScissorFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + exclusiveScissor*: VkBool32 + + VkPipelineViewportExclusiveScissorStateCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + exclusiveScissorCount*: uint32 + pExclusiveScissors*: ptr VkRect2D + + VkPhysicalDeviceCornerSampledImageFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + cornerSampledImage*: VkBool32 + + VkPhysicalDeviceComputeShaderDerivativesFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + computeDerivativeGroupQuads*: VkBool32 + computeDerivativeGroupLinear*: VkBool32 + + VkPhysicalDeviceShaderImageFootprintFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + imageFootprint*: VkBool32 + + VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV* = object + sType*: VkStructureType + 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 + + VkPipelineViewportShadingRateImageStateCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + shadingRateImageEnable*: VkBool32 + viewportCount*: uint32 + pShadingRatePalettes*: ptr VkShadingRatePaletteNV + + VkPhysicalDeviceShadingRateImageFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + shadingRateImage*: VkBool32 + shadingRateCoarseSampleOrder*: VkBool32 + + VkPhysicalDeviceShadingRateImagePropertiesNV* = object + sType*: VkStructureType + pNext*: pointer + shadingRateTexelSize*: VkExtent2D + shadingRatePaletteSize*: uint32 + shadingRateMaxCoarseSamples*: uint32 + + VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* = object + sType*: VkStructureType + pNext*: pointer + invocationMask*: VkBool32 + + VkCoarseSampleLocationNV* = object + pixelX*: uint32 + pixelY*: uint32 + sample*: uint32 + + VkCoarseSampleOrderCustomNV* = object + shadingRate*: VkShadingRatePaletteEntryNV + sampleCount*: uint32 + sampleLocationCount*: uint32 + pSampleLocations*: ptr VkCoarseSampleLocationNV + + VkPipelineViewportCoarseSampleOrderStateCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + sampleOrderType*: VkCoarseSampleOrderTypeNV + customSampleOrderCount*: uint32 + pCustomSampleOrders*: ptr VkCoarseSampleOrderCustomNV + + VkPhysicalDeviceMeshShaderFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + taskShader*: VkBool32 + meshShader*: VkBool32 + + VkPhysicalDeviceMeshShaderPropertiesNV* = object + sType*: VkStructureType + pNext*: pointer + 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 + + VkDrawMeshTasksIndirectCommandNV* = object + 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 + `type`*: VkRayTracingShaderGroupTypeKHR + generalShader*: uint32 + closestHitShader*: uint32 + anyHitShader*: uint32 + intersectionShader*: uint32 + + VkRayTracingShaderGroupCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + `type`*: VkRayTracingShaderGroupTypeKHR + generalShader*: uint32 + closestHitShader*: uint32 + anyHitShader*: uint32 + intersectionShader*: uint32 + pShaderGroupCaptureReplayHandle*: pointer + + VkRayTracingPipelineCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkPipelineCreateFlags + stageCount*: uint32 + pStages*: ptr VkPipelineShaderStageCreateInfo + groupCount*: uint32 + pGroups*: ptr VkRayTracingShaderGroupCreateInfoNV + maxRecursionDepth*: uint32 + layout*: VkPipelineLayout + basePipelineHandle*: VkPipeline + basePipelineIndex*: int32 + + VkRayTracingPipelineCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: 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 + + VkGeometryTrianglesNV* = object + sType*: VkStructureType + pNext*: pointer + vertexData*: VkBuffer + vertexOffset*: VkDeviceSize + vertexCount*: uint32 + vertexStride*: VkDeviceSize + vertexFormat*: VkFormat + indexData*: VkBuffer + indexOffset*: VkDeviceSize + indexCount*: uint32 + indexType*: VkIndexType + transformData*: VkBuffer + transformOffset*: VkDeviceSize + + VkGeometryAABBNV* = object + sType*: VkStructureType + pNext*: pointer + aabbData*: VkBuffer + numAABBs*: uint32 + stride*: uint32 + offset*: VkDeviceSize + + VkGeometryDataNV* = object + triangles*: VkGeometryTrianglesNV + aabbs*: VkGeometryAABBNV + + VkGeometryNV* = object + sType*: VkStructureType + pNext*: pointer + geometryType*: VkGeometryTypeKHR + geometry*: VkGeometryDataNV + flags*: VkGeometryFlagsKHR + + VkAccelerationStructureInfoNV* = object + sType*: VkStructureType + pNext*: pointer + `type`*: VkAccelerationStructureTypeNV + flags*: VkBuildAccelerationStructureFlagsNV + instanceCount*: uint32 + geometryCount*: uint32 + pGeometries*: ptr VkGeometryNV + + VkAccelerationStructureCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + compactedSize*: VkDeviceSize + info*: VkAccelerationStructureInfoNV + + VkBindAccelerationStructureMemoryInfoNV* = object + sType*: VkStructureType + pNext*: pointer + accelerationStructure*: VkAccelerationStructureNV + memory*: VkDeviceMemory + memoryOffset*: VkDeviceSize + deviceIndexCount*: uint32 + pDeviceIndices*: ptr uint32 + + VkWriteDescriptorSetAccelerationStructureKHR* = object + sType*: VkStructureType + pNext*: pointer + accelerationStructureCount*: uint32 + pAccelerationStructures*: ptr VkAccelerationStructureKHR + + VkWriteDescriptorSetAccelerationStructureNV* = object + sType*: VkStructureType + pNext*: pointer + accelerationStructureCount*: uint32 + pAccelerationStructures*: ptr VkAccelerationStructureNV + + VkAccelerationStructureMemoryRequirementsInfoNV* = object + sType*: VkStructureType + pNext*: pointer + `type`*: VkAccelerationStructureMemoryRequirementsTypeNV + accelerationStructure*: VkAccelerationStructureNV + + 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 + rayQuery*: VkBool32 + + VkPhysicalDeviceAccelerationStructurePropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + 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 + pNext*: pointer + shaderGroupHandleSize*: uint32 + maxRecursionDepth*: uint32 + maxShaderGroupStride*: uint32 + shaderGroupBaseAlignment*: uint32 + maxGeometryCount*: uint64 + maxInstanceCount*: uint64 + maxTriangleCount*: uint64 + maxDescriptorSetAccelerationStructures*: uint32 + + VkStridedDeviceAddressRegionKHR* = object + deviceAddress*: VkDeviceAddress + stride*: VkDeviceSize + size*: VkDeviceSize + + VkTraceRaysIndirectCommandKHR* = object + width*: uint32 + 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 + drmFormatModifierCount*: uint32 + pDrmFormatModifierProperties*: ptr VkDrmFormatModifierPropertiesEXT + + VkDrmFormatModifierPropertiesEXT* = object + drmFormatModifier*: uint64 + drmFormatModifierPlaneCount*: uint32 + drmFormatModifierTilingFeatures*: VkFormatFeatureFlags + + VkPhysicalDeviceImageDrmFormatModifierInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + drmFormatModifier*: uint64 + sharingMode*: VkSharingMode + queueFamilyIndexCount*: uint32 + pQueueFamilyIndices*: ptr uint32 + + VkImageDrmFormatModifierListCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + drmFormatModifierCount*: uint32 + pDrmFormatModifiers*: ptr uint64 + + VkImageDrmFormatModifierExplicitCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + drmFormatModifier*: uint64 + drmFormatModifierPlaneCount*: uint32 + pPlaneLayouts*: ptr VkSubresourceLayout + + VkImageDrmFormatModifierPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + drmFormatModifier*: uint64 + + VkImageStencilUsageCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + stencilUsage*: VkImageUsageFlags + + VkDeviceMemoryOverallocationCreateInfoAMD* = object + sType*: VkStructureType + pNext*: pointer + overallocationBehavior*: VkMemoryOverallocationBehaviorAMD + + VkPhysicalDeviceFragmentDensityMapFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + fragmentDensityMap*: VkBool32 + fragmentDensityMapDynamic*: VkBool32 + fragmentDensityMapNonSubsampledImages*: VkBool32 + + VkPhysicalDeviceFragmentDensityMap2FeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + fragmentDensityMapDeferred*: VkBool32 + + VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM* = object + sType*: VkStructureType + pNext*: pointer + fragmentDensityMapOffset*: VkBool32 + + VkPhysicalDeviceFragmentDensityMapPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + minFragmentDensityTexelSize*: VkExtent2D + maxFragmentDensityTexelSize*: VkExtent2D + fragmentDensityInvocations*: VkBool32 + + VkPhysicalDeviceFragmentDensityMap2PropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + subsampledLoads*: VkBool32 + subsampledCoarseReconstructionEarlyAccess*: VkBool32 + 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 + scalarBlockLayout*: VkBool32 + + VkSurfaceProtectedCapabilitiesKHR* = object + sType*: VkStructureType + pNext*: pointer + supportsProtected*: VkBool32 + + VkPhysicalDeviceUniformBufferStandardLayoutFeatures* = object + sType*: VkStructureType + pNext*: pointer + uniformBufferStandardLayout*: VkBool32 + + VkPhysicalDeviceDepthClipEnableFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + depthClipEnable*: VkBool32 + + VkPipelineRasterizationDepthClipStateCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkPipelineRasterizationDepthClipStateCreateFlagsEXT + depthClipEnable*: VkBool32 + + VkPhysicalDeviceMemoryBudgetPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + heapBudget*: array[VK_MAX_MEMORY_HEAPS, VkDeviceSize] + heapUsage*: array[VK_MAX_MEMORY_HEAPS, VkDeviceSize] + + VkPhysicalDeviceMemoryPriorityFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + memoryPriority*: VkBool32 + + VkMemoryPriorityAllocateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + priority*: float32 + + VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + pageableDeviceLocalMemory*: VkBool32 + + VkPhysicalDeviceBufferDeviceAddressFeatures* = object + sType*: VkStructureType + pNext*: pointer + bufferDeviceAddress*: VkBool32 + bufferDeviceAddressCaptureReplay*: VkBool32 + bufferDeviceAddressMultiDevice*: VkBool32 + + VkPhysicalDeviceBufferDeviceAddressFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + bufferDeviceAddress*: VkBool32 + bufferDeviceAddressCaptureReplay*: VkBool32 + bufferDeviceAddressMultiDevice*: VkBool32 + + VkBufferDeviceAddressInfo* = object + sType*: VkStructureType + pNext*: pointer + buffer*: VkBuffer + + VkBufferOpaqueCaptureAddressCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + opaqueCaptureAddress*: uint64 + + VkBufferDeviceAddressCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + deviceAddress*: VkDeviceAddress + + VkPhysicalDeviceImageViewImageFormatInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + imageViewType*: VkImageViewType + + VkFilterCubicImageViewImageFormatPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + filterCubic*: VkBool32 + filterCubicMinmax*: VkBool32 + + VkPhysicalDeviceImagelessFramebufferFeatures* = object + sType*: VkStructureType + pNext*: pointer + imagelessFramebuffer*: VkBool32 + + VkFramebufferAttachmentsCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + attachmentImageInfoCount*: uint32 + pAttachmentImageInfos*: ptr VkFramebufferAttachmentImageInfo + + VkFramebufferAttachmentImageInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkImageCreateFlags + usage*: VkImageUsageFlags + width*: uint32 + height*: uint32 + layerCount*: uint32 + viewFormatCount*: uint32 + pViewFormats*: ptr VkFormat + + VkRenderPassAttachmentBeginInfo* = object + sType*: VkStructureType + pNext*: pointer + attachmentCount*: uint32 + pAttachments*: ptr VkImageView + + VkPhysicalDeviceTextureCompressionASTCHDRFeatures* = object + sType*: VkStructureType + pNext*: pointer + textureCompressionASTC_HDR*: VkBool32 + + VkPhysicalDeviceCooperativeMatrixFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + cooperativeMatrix*: VkBool32 + cooperativeMatrixRobustBufferAccess*: VkBool32 + + VkPhysicalDeviceCooperativeMatrixPropertiesNV* = object + sType*: VkStructureType + pNext*: pointer + cooperativeMatrixSupportedStages*: VkShaderStageFlags + + VkCooperativeMatrixPropertiesNV* = object + sType*: VkStructureType + pNext*: pointer + MSize*: uint32 + NSize*: uint32 + KSize*: uint32 + AType*: VkComponentTypeNV + BType*: VkComponentTypeNV + CType*: VkComponentTypeNV + DType*: VkComponentTypeNV + scope*: VkScopeNV + + VkPhysicalDeviceYcbcrImageArraysFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + ycbcrImageArrays*: VkBool32 + + VkImageViewHandleInfoNVX* = object + sType*: VkStructureType + pNext*: pointer + imageView*: VkImageView + descriptorType*: VkDescriptorType + sampler*: VkSampler + + VkImageViewAddressPropertiesNVX* = object + sType*: VkStructureType + pNext*: pointer + deviceAddress*: VkDeviceAddress + size*: VkDeviceSize + + VkPresentFrameTokenGGP* = object + sType*: VkStructureType + pNext*: pointer + frameToken*: GgpFrameToken + + VkPipelineCreationFeedback* = object + flags*: VkPipelineCreationFeedbackFlags + duration*: uint64 + + VkPipelineCreationFeedbackCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + pPipelineCreationFeedback*: ptr VkPipelineCreationFeedback + pipelineStageCreationFeedbackCount*: uint32 + pPipelineStageCreationFeedbacks*: ptr ptr VkPipelineCreationFeedback + + VkSurfaceFullScreenExclusiveInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + fullScreenExclusive*: VkFullScreenExclusiveEXT + + VkSurfaceFullScreenExclusiveWin32InfoEXT* = object + sType*: VkStructureType + pNext*: pointer + hmonitor*: HMONITOR + + VkSurfaceCapabilitiesFullScreenExclusiveEXT* = object + sType*: VkStructureType + 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 + performanceCounterQueryPools*: VkBool32 + performanceCounterMultipleQueryPools*: VkBool32 + + VkPhysicalDevicePerformanceQueryPropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + allowCommandBufferQueryCopies*: VkBool32 + + VkPerformanceCounterKHR* = object + sType*: VkStructureType + pNext*: pointer + unit*: VkPerformanceCounterUnitKHR + scope*: VkPerformanceCounterScopeKHR + storage*: VkPerformanceCounterStorageKHR + uuid*: array[VK_UUID_SIZE, uint8] + + VkPerformanceCounterDescriptionKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkPerformanceCounterDescriptionFlagsKHR + name*: array[VK_MAX_DESCRIPTION_SIZE, char] + category*: array[VK_MAX_DESCRIPTION_SIZE, char] + description*: array[VK_MAX_DESCRIPTION_SIZE, char] + + VkQueryPoolPerformanceCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + queueFamilyIndex*: uint32 + counterIndexCount*: uint32 + pCounterIndices*: ptr uint32 + + VkPerformanceCounterResultKHR* {.union.} = object + int32*: int32 + int64*: int64 + uint32*: uint32 + uint64*: uint64 + float32*: float32 + float64*: float64 + + VkAcquireProfilingLockInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkAcquireProfilingLockFlagsKHR + timeout*: uint64 + + VkPerformanceQuerySubmitInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + counterPassIndex*: uint32 + + VkPerformanceQueryReservationInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + maxPerformanceQueriesPerPool*: uint32 + + VkHeadlessSurfaceCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkHeadlessSurfaceCreateFlagsEXT + + VkPhysicalDeviceCoverageReductionModeFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + coverageReductionMode*: VkBool32 + + VkPipelineCoverageReductionStateCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkPipelineCoverageReductionStateCreateFlagsNV + coverageReductionMode*: VkCoverageReductionModeNV + + VkFramebufferMixedSamplesCombinationNV* = object + sType*: VkStructureType + pNext*: pointer + coverageReductionMode*: VkCoverageReductionModeNV + rasterizationSamples*: VkSampleCountFlagBits + depthStencilSamples*: VkSampleCountFlags + colorSamples*: VkSampleCountFlags + + VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL* = object + sType*: VkStructureType + pNext*: pointer + shaderIntegerFunctions2*: VkBool32 + + VkPerformanceValueDataINTEL* {.union.} = object + value32*: uint32 + value64*: uint64 + valueFloat*: float32 + valueBool*: VkBool32 + valueString*: cstring + + VkPerformanceValueINTEL* = object + `type`*: VkPerformanceValueTypeINTEL + data*: VkPerformanceValueDataINTEL + + VkInitializePerformanceApiInfoINTEL* = object + sType*: VkStructureType + pNext*: pointer + pUserData*: pointer + + VkQueryPoolPerformanceQueryCreateInfoINTEL* = object + sType*: VkStructureType + pNext*: pointer + performanceCountersSampling*: VkQueryPoolSamplingModeINTEL + + VkPerformanceMarkerInfoINTEL* = object + sType*: VkStructureType + pNext*: pointer + marker*: uint64 + + VkPerformanceStreamMarkerInfoINTEL* = object + sType*: VkStructureType + pNext*: pointer + marker*: uint32 + + VkPerformanceOverrideInfoINTEL* = object + sType*: VkStructureType + pNext*: pointer + `type`*: VkPerformanceOverrideTypeINTEL + enable*: VkBool32 + parameter*: uint64 + + VkPerformanceConfigurationAcquireInfoINTEL* = object + sType*: VkStructureType + pNext*: pointer + `type`*: VkPerformanceConfigurationTypeINTEL + + VkPhysicalDeviceShaderClockFeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + shaderSubgroupClock*: VkBool32 + shaderDeviceClock*: VkBool32 + + VkPhysicalDeviceIndexTypeUint8FeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + indexTypeUint8*: VkBool32 + + VkPhysicalDeviceShaderSMBuiltinsPropertiesNV* = object + sType*: VkStructureType + pNext*: pointer + shaderSMCount*: uint32 + shaderWarpsPerSM*: uint32 + + VkPhysicalDeviceShaderSMBuiltinsFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + shaderSMBuiltins*: VkBool32 + + VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + fragmentShaderSampleInterlock*: VkBool32 + fragmentShaderPixelInterlock*: VkBool32 + fragmentShaderShadingRateInterlock*: VkBool32 + + VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures* = object + sType*: VkStructureType + pNext*: pointer + separateDepthStencilLayouts*: VkBool32 + + VkAttachmentReferenceStencilLayout* = object + sType*: VkStructureType + pNext*: pointer + stencilLayout*: VkImageLayout + + VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + primitiveTopologyListRestart*: VkBool32 + primitiveTopologyPatchListRestart*: VkBool32 + + VkAttachmentDescriptionStencilLayout* = object + sType*: VkStructureType + pNext*: pointer + stencilInitialLayout*: VkImageLayout + stencilFinalLayout*: VkImageLayout + + VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + pipelineExecutableInfo*: VkBool32 + + VkPipelineInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + pipeline*: VkPipeline + + VkPipelineExecutablePropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + stages*: VkShaderStageFlags + name*: array[VK_MAX_DESCRIPTION_SIZE, char] + description*: array[VK_MAX_DESCRIPTION_SIZE, char] + subgroupSize*: uint32 + + VkPipelineExecutableInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + pipeline*: VkPipeline + executableIndex*: uint32 + + VkPipelineExecutableStatisticValueKHR* {.union.} = object + b32*: VkBool32 + i64*: int64 + u64*: uint64 + f64*: float64 + + VkPipelineExecutableStatisticKHR* = object + sType*: VkStructureType + pNext*: pointer + name*: array[VK_MAX_DESCRIPTION_SIZE, char] + description*: array[VK_MAX_DESCRIPTION_SIZE, char] + format*: VkPipelineExecutableStatisticFormatKHR + value*: VkPipelineExecutableStatisticValueKHR + + VkPipelineExecutableInternalRepresentationKHR* = object + sType*: VkStructureType + pNext*: pointer + name*: array[VK_MAX_DESCRIPTION_SIZE, char] + description*: array[VK_MAX_DESCRIPTION_SIZE, char] + isText*: VkBool32 + dataSize*: uint + pData*: pointer + + VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures* = object + sType*: VkStructureType + pNext*: pointer + shaderDemoteToHelperInvocation*: VkBool32 + + VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + texelBufferAlignment*: VkBool32 + + VkPhysicalDeviceTexelBufferAlignmentProperties* = object + sType*: VkStructureType + pNext*: pointer + storageTexelBufferOffsetAlignmentBytes*: VkDeviceSize + storageTexelBufferOffsetSingleTexelAlignment*: VkBool32 + uniformTexelBufferOffsetAlignmentBytes*: VkDeviceSize + uniformTexelBufferOffsetSingleTexelAlignment*: VkBool32 + + VkPhysicalDeviceSubgroupSizeControlFeatures* = object + sType*: VkStructureType + pNext*: pointer + subgroupSizeControl*: VkBool32 + computeFullSubgroups*: VkBool32 + + VkPhysicalDeviceSubgroupSizeControlProperties* = object + sType*: VkStructureType + pNext*: pointer + minSubgroupSize*: uint32 + maxSubgroupSize*: uint32 + maxComputeWorkgroupSubgroups*: uint32 + requiredSubgroupSizeStages*: VkShaderStageFlags + + VkPipelineShaderStageRequiredSubgroupSizeCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + requiredSubgroupSize*: uint32 + + 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 + opaqueCaptureAddress*: uint64 + + VkDeviceMemoryOpaqueCaptureAddressInfo* = object + sType*: VkStructureType + pNext*: pointer + memory*: VkDeviceMemory + + VkPhysicalDeviceLineRasterizationFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + rectangularLines*: VkBool32 + bresenhamLines*: VkBool32 + smoothLines*: VkBool32 + stippledRectangularLines*: VkBool32 + stippledBresenhamLines*: VkBool32 + stippledSmoothLines*: VkBool32 + + VkPhysicalDeviceLineRasterizationPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + lineSubPixelPrecisionBits*: uint32 + + VkPipelineRasterizationLineStateCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + lineRasterizationMode*: VkLineRasterizationModeEXT + stippledLineEnable*: VkBool32 + lineStippleFactor*: uint32 + lineStipplePattern*: uint16 + + VkPhysicalDevicePipelineCreationCacheControlFeatures* = object + sType*: VkStructureType + pNext*: pointer + pipelineCreationCacheControl*: VkBool32 + + VkPhysicalDeviceVulkan11Features* = object + sType*: VkStructureType + pNext*: pointer + storageBuffer16BitAccess*: VkBool32 + uniformAndStorageBuffer16BitAccess*: VkBool32 + storagePushConstant16*: VkBool32 + storageInputOutput16*: VkBool32 + multiview*: VkBool32 + multiviewGeometryShader*: VkBool32 + multiviewTessellationShader*: VkBool32 + variablePointersStorageBuffer*: VkBool32 + variablePointers*: VkBool32 + protectedMemory*: VkBool32 + samplerYcbcrConversion*: VkBool32 + shaderDrawParameters*: VkBool32 + + VkPhysicalDeviceVulkan11Properties* = object + sType*: VkStructureType + pNext*: pointer + 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 + + VkPhysicalDeviceVulkan12Features* = object + sType*: VkStructureType + pNext*: pointer + 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 + + VkPhysicalDeviceVulkan12Properties* = object + sType*: VkStructureType + pNext*: pointer + 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 + + 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 + compilerControlFlags*: VkPipelineCompilerControlFlagsAMD + + VkPhysicalDeviceCoherentMemoryFeaturesAMD* = object + sType*: VkStructureType + pNext*: pointer + deviceCoherentMemory*: VkBool32 + + 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*: VkToolPurposeFlags + description*: array[VK_MAX_DESCRIPTION_SIZE, char] + layer*: array[VK_MAX_EXTENSION_NAME_SIZE, char] + + VkSamplerCustomBorderColorCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + customBorderColor*: VkClearColorValue + format*: VkFormat + + VkPhysicalDeviceCustomBorderColorPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + maxCustomBorderColorSamplers*: uint32 + + VkPhysicalDeviceCustomBorderColorFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + 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 + + VkDeviceOrHostAddressConstKHR* {.union.} = object + 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 + + VkAccelerationStructureGeometryAabbsDataKHR* = object + sType*: VkStructureType + pNext*: pointer + data*: VkDeviceOrHostAddressConstKHR + stride*: VkDeviceSize + + VkAccelerationStructureGeometryInstancesDataKHR* = object + sType*: VkStructureType + pNext*: pointer + arrayOfPointers*: VkBool32 + data*: VkDeviceOrHostAddressConstKHR + + VkAccelerationStructureGeometryDataKHR* {.union.} = object + triangles*: VkAccelerationStructureGeometryTrianglesDataKHR + aabbs*: VkAccelerationStructureGeometryAabbsDataKHR + instances*: VkAccelerationStructureGeometryInstancesDataKHR + + VkAccelerationStructureGeometryKHR* = object + sType*: VkStructureType + pNext*: pointer + geometryType*: VkGeometryTypeKHR + geometry*: VkAccelerationStructureGeometryDataKHR + flags*: VkGeometryFlagsKHR + + VkAccelerationStructureBuildGeometryInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + `type`*: VkAccelerationStructureTypeKHR + flags*: VkBuildAccelerationStructureFlagsKHR + mode*: VkBuildAccelerationStructureModeKHR + srcAccelerationStructure*: VkAccelerationStructureKHR + dstAccelerationStructure*: VkAccelerationStructureKHR + geometryCount*: uint32 + pGeometries*: ptr VkAccelerationStructureGeometryKHR + ppGeometries*: ptr ptr VkAccelerationStructureGeometryKHR + scratchData*: VkDeviceOrHostAddressKHR + + VkAccelerationStructureBuildRangeInfoKHR* = object + primitiveCount*: uint32 + primitiveOffset*: uint32 + firstVertex*: uint32 + transformOffset*: uint32 + + VkAccelerationStructureCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + createFlags*: VkAccelerationStructureCreateFlagsKHR + buffer*: VkBuffer + offset*: VkDeviceSize + size*: VkDeviceSize + `type`*: VkAccelerationStructureTypeKHR + deviceAddress*: VkDeviceAddress + + VkAabbPositionsKHR* = object + minX*: float32 + minY*: float32 + minZ*: float32 + maxX*: float32 + maxY*: float32 + maxZ*: float32 + + VkTransformMatrixKHR* = object + matrix*: array[3, float32] + + VkAccelerationStructureInstanceKHR* = object + transform*: VkTransformMatrixKHR + instanceCustomIndex*: uint32 + mask*: uint32 + instanceShaderBindingTableRecordOffset*: uint32 + flags*: VkGeometryInstanceFlagsKHR + accelerationStructureReference*: uint64 + + VkAccelerationStructureDeviceAddressInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + accelerationStructure*: VkAccelerationStructureKHR + + VkAccelerationStructureVersionInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + pVersionData*: ptr uint8 + + VkCopyAccelerationStructureInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + src*: VkAccelerationStructureKHR + dst*: VkAccelerationStructureKHR + mode*: VkCopyAccelerationStructureModeKHR + + VkCopyAccelerationStructureToMemoryInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + src*: VkAccelerationStructureKHR + dst*: VkDeviceOrHostAddressKHR + mode*: VkCopyAccelerationStructureModeKHR + + VkCopyMemoryToAccelerationStructureInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + src*: VkDeviceOrHostAddressConstKHR + dst*: VkAccelerationStructureKHR + mode*: VkCopyAccelerationStructureModeKHR + + VkRayTracingPipelineInterfaceCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + maxPipelineRayPayloadSize*: uint32 + maxPipelineRayHitAttributeSize*: uint32 + + VkPipelineLibraryCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + 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 + transform*: VkSurfaceTransformFlagBitsKHR + renderArea*: VkRect2D + + VkPhysicalDeviceDiagnosticsConfigFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + diagnosticsConfig*: VkBool32 + + VkDeviceDiagnosticsConfigCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkDeviceDiagnosticsConfigFlagsNV + + VkPipelineOfflineCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + pipelineIdentifier*: array[VK_UUID_SIZE, uint8] + matchControl*: VkPipelineMatchControl + poolEntrySize*: VkDeviceSize + + VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures* = object + sType*: VkStructureType + pNext*: pointer + shaderZeroInitializeWorkgroupMemory*: VkBool32 + + VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + shaderSubgroupUniformControlFlow*: VkBool32 + + VkPhysicalDeviceRobustness2FeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + robustBufferAccess2*: VkBool32 + robustImageAccess2*: VkBool32 + nullDescriptor*: VkBool32 + + VkPhysicalDeviceRobustness2PropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + robustStorageBufferAccessSizeAlignment*: VkDeviceSize + robustUniformBufferAccessSizeAlignment*: VkDeviceSize + + VkPhysicalDeviceImageRobustnessFeatures* = object + sType*: VkStructureType + pNext*: pointer + robustImageAccess*: VkBool32 + + 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 + + VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* = object + sType*: VkStructureType + pNext*: pointer + subpassShading*: VkBool32 + + VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI* = object + sType*: VkStructureType + pNext*: pointer + clustercullingShader*: VkBool32 + multiviewClusterCullingShader*: VkBool32 + + VkBufferCopy2* = object + sType*: VkStructureType + pNext*: pointer + srcOffset*: VkDeviceSize + dstOffset*: VkDeviceSize + size*: VkDeviceSize + + VkImageCopy2* = object + sType*: VkStructureType + pNext*: pointer + srcSubresource*: VkImageSubresourceLayers + srcOffset*: VkOffset3D + dstSubresource*: VkImageSubresourceLayers + dstOffset*: VkOffset3D + extent*: VkExtent3D + + VkImageBlit2* = object + sType*: VkStructureType + pNext*: pointer + srcSubresource*: VkImageSubresourceLayers + srcOffsets*: array[2, VkOffset3D] + dstSubresource*: VkImageSubresourceLayers + dstOffsets*: array[2, VkOffset3D] + + VkBufferImageCopy2* = object + sType*: VkStructureType + pNext*: pointer + bufferOffset*: VkDeviceSize + bufferRowLength*: uint32 + bufferImageHeight*: uint32 + imageSubresource*: VkImageSubresourceLayers + imageOffset*: VkOffset3D + imageExtent*: VkExtent3D + + VkImageResolve2* = object + sType*: VkStructureType + pNext*: pointer + srcSubresource*: VkImageSubresourceLayers + srcOffset*: VkOffset3D + dstSubresource*: VkImageSubresourceLayers + dstOffset*: VkOffset3D + extent*: VkExtent3D + + VkCopyBufferInfo2* = object + sType*: VkStructureType + pNext*: pointer + srcBuffer*: VkBuffer + dstBuffer*: VkBuffer + regionCount*: uint32 + pRegions*: ptr VkBufferCopy2 + + VkCopyImageInfo2* = object + sType*: VkStructureType + pNext*: pointer + srcImage*: VkImage + srcImageLayout*: VkImageLayout + dstImage*: VkImage + dstImageLayout*: VkImageLayout + regionCount*: uint32 + pRegions*: ptr VkImageCopy2 + + VkBlitImageInfo2* = object + sType*: VkStructureType + pNext*: pointer + srcImage*: VkImage + srcImageLayout*: VkImageLayout + dstImage*: VkImage + dstImageLayout*: VkImageLayout + regionCount*: uint32 + pRegions*: ptr VkImageBlit2 + filter*: VkFilter + + VkCopyBufferToImageInfo2* = object + sType*: VkStructureType + pNext*: pointer + srcBuffer*: VkBuffer + dstImage*: VkImage + dstImageLayout*: VkImageLayout + regionCount*: uint32 + pRegions*: ptr VkBufferImageCopy2 + + VkCopyImageToBufferInfo2* = object + sType*: VkStructureType + pNext*: pointer + srcImage*: VkImage + srcImageLayout*: VkImageLayout + dstBuffer*: VkBuffer + regionCount*: uint32 + pRegions*: ptr VkBufferImageCopy2 + + VkResolveImageInfo2* = object + sType*: VkStructureType + pNext*: pointer + srcImage*: VkImage + srcImageLayout*: VkImageLayout + dstImage*: VkImage + dstImageLayout*: VkImageLayout + regionCount*: uint32 + pRegions*: ptr VkImageResolve2 + + VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + shaderImageInt64Atomics*: VkBool32 + sparseImageInt64Atomics*: VkBool32 + + VkFragmentShadingRateAttachmentInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + pFragmentShadingRateAttachment*: ptr VkAttachmentReference2 + shadingRateAttachmentTexelSize*: VkExtent2D + + VkPipelineFragmentShadingRateStateCreateInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + fragmentSize*: VkExtent2D + combinerOps*: array[2, VkFragmentShadingRateCombinerOpKHR] + + VkPhysicalDeviceFragmentShadingRateFeaturesKHR* = object + sType*: VkStructureType + pNext*: pointer + pipelineFragmentShadingRate*: VkBool32 + primitiveFragmentShadingRate*: VkBool32 + attachmentFragmentShadingRate*: VkBool32 + + 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 + + VkPhysicalDeviceFragmentShadingRateKHR* = object + sType*: VkStructureType + pNext*: pointer + sampleCounts*: VkSampleCountFlags + fragmentSize*: VkExtent2D + + VkPhysicalDeviceShaderTerminateInvocationFeatures* = object + sType*: VkStructureType + pNext*: pointer + shaderTerminateInvocation*: VkBool32 + + VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + fragmentShadingRateEnums*: VkBool32 + supersampleFragmentShadingRates*: VkBool32 + noInvocationFragmentShadingRates*: VkBool32 + + VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV* = object + sType*: VkStructureType + pNext*: pointer + maxFragmentShadingRateInvocationCount*: VkSampleCountFlagBits + + VkPipelineFragmentShadingRateEnumStateCreateInfoNV* = object + sType*: VkStructureType + pNext*: pointer + shadingRateType*: VkFragmentShadingRateTypeNV + shadingRate*: VkFragmentShadingRateNV + combinerOps*: array[2, VkFragmentShadingRateCombinerOpKHR] + + VkAccelerationStructureBuildSizesInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + accelerationStructureSize*: VkDeviceSize + updateScratchSize*: VkDeviceSize + buildScratchSize*: VkDeviceSize + + VkPhysicalDeviceImage2DViewOf3DFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + image2DViewOf3D*: VkBool32 + sampler2DViewOf3D*: VkBool32 + + VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + imageSlicedViewOf3D*: VkBool32 + + VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + attachmentFeedbackLoopDynamicState*: VkBool32 + + VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + mutableDescriptorType*: VkBool32 + + VkMutableDescriptorTypeListEXT* = object + descriptorTypeCount*: uint32 + pDescriptorTypes*: ptr VkDescriptorType + + VkMutableDescriptorTypeCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + mutableDescriptorTypeListCount*: uint32 + pMutableDescriptorTypeLists*: ptr VkMutableDescriptorTypeListEXT + + VkPhysicalDeviceDepthClipControlFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + depthClipControl*: VkBool32 + + VkPipelineViewportDepthClipControlCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + negativeOneToOne*: VkBool32 + + VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + vertexInputDynamicState*: VkBool32 + + VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* = object + sType*: VkStructureType + pNext*: pointer + externalMemoryRDMA*: VkBool32 + + VkVertexInputBindingDescription2EXT* = object + sType*: VkStructureType + pNext*: pointer + binding*: uint32 + stride*: uint32 + inputRate*: VkVertexInputRate + divisor*: uint32 + + VkVertexInputAttributeDescription2EXT* = object + sType*: VkStructureType + pNext*: pointer + location*: uint32 + binding*: uint32 + format*: VkFormat + offset*: uint32 + + VkPhysicalDeviceColorWriteEnableFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + colorWriteEnable*: VkBool32 + + VkPipelineColorWriteCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + attachmentCount*: uint32 + pColorWriteEnables*: ptr VkBool32 + + VkMemoryBarrier2* = object + sType*: VkStructureType + pNext*: pointer + srcStageMask*: VkPipelineStageFlags2 + srcAccessMask*: VkAccessFlags2 + dstStageMask*: VkPipelineStageFlags2 + dstAccessMask*: VkAccessFlags2 + + 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 + + VkBufferMemoryBarrier2* = object + sType*: VkStructureType + pNext*: pointer + srcStageMask*: VkPipelineStageFlags2 + srcAccessMask*: VkAccessFlags2 + dstStageMask*: VkPipelineStageFlags2 + dstAccessMask*: VkAccessFlags2 + srcQueueFamilyIndex*: uint32 + dstQueueFamilyIndex*: uint32 + buffer*: VkBuffer + offset*: VkDeviceSize + size*: VkDeviceSize + + VkDependencyInfo* = object + sType*: VkStructureType + pNext*: pointer + dependencyFlags*: VkDependencyFlags + memoryBarrierCount*: uint32 + pMemoryBarriers*: ptr VkMemoryBarrier2 + bufferMemoryBarrierCount*: uint32 + pBufferMemoryBarriers*: ptr VkBufferMemoryBarrier2 + imageMemoryBarrierCount*: uint32 + pImageMemoryBarriers*: ptr VkImageMemoryBarrier2 + + VkSemaphoreSubmitInfo* = object + sType*: VkStructureType + pNext*: pointer + semaphore*: VkSemaphore + value*: uint64 + stageMask*: VkPipelineStageFlags2 + deviceIndex*: uint32 + + VkCommandBufferSubmitInfo* = object + sType*: VkStructureType + pNext*: pointer + commandBuffer*: VkCommandBuffer + deviceMask*: uint32 + + VkSubmitInfo2* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkSubmitFlags + waitSemaphoreInfoCount*: uint32 + pWaitSemaphoreInfos*: ptr VkSemaphoreSubmitInfo + commandBufferInfoCount*: uint32 + pCommandBufferInfos*: ptr VkCommandBufferSubmitInfo + signalSemaphoreInfoCount*: uint32 + pSignalSemaphoreInfos*: ptr VkSemaphoreSubmitInfo + + VkQueueFamilyCheckpointProperties2NV* = object + sType*: VkStructureType + pNext*: pointer + checkpointExecutionStageMask*: VkPipelineStageFlags2 + + VkCheckpointData2NV* = object + sType*: VkStructureType + pNext*: pointer + stage*: VkPipelineStageFlags2 + pCheckpointMarker*: pointer + + VkPhysicalDeviceSynchronization2Features* = object + sType*: VkStructureType + pNext*: pointer + synchronization2*: VkBool32 + + VkPhysicalDeviceHostImageCopyFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + hostImageCopy*: VkBool32 + + VkPhysicalDeviceHostImageCopyPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + copySrcLayoutCount*: uint32 + pCopySrcLayouts*: ptr VkImageLayout + copyDstLayoutCount*: uint32 + pCopyDstLayouts*: ptr VkImageLayout + optimalTilingLayoutUUID*: array[VK_UUID_SIZE, uint8] + identicalMemoryTypeRequirements*: VkBool32 + + VkMemoryToImageCopyEXT* = object + sType*: VkStructureType + pNext*: pointer + pHostPointer*: pointer + memoryRowLength*: uint32 + memoryImageHeight*: uint32 + imageSubresource*: VkImageSubresourceLayers + imageOffset*: VkOffset3D + imageExtent*: VkExtent3D + + VkImageToMemoryCopyEXT* = object + sType*: VkStructureType + pNext*: pointer + pHostPointer*: pointer + memoryRowLength*: uint32 + memoryImageHeight*: uint32 + imageSubresource*: VkImageSubresourceLayers + imageOffset*: VkOffset3D + imageExtent*: VkExtent3D + + VkCopyMemoryToImageInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkHostImageCopyFlagsEXT + dstImage*: VkImage + dstImageLayout*: VkImageLayout + regionCount*: uint32 + pRegions*: ptr VkMemoryToImageCopyEXT + + VkCopyImageToMemoryInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkHostImageCopyFlagsEXT + srcImage*: VkImage + srcImageLayout*: VkImageLayout + regionCount*: uint32 + pRegions*: ptr VkImageToMemoryCopyEXT + + VkCopyImageToImageInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkHostImageCopyFlagsEXT + srcImage*: VkImage + srcImageLayout*: VkImageLayout + dstImage*: VkImage + dstImageLayout*: VkImageLayout + regionCount*: uint32 + pRegions*: ptr VkImageCopy2 + + VkHostImageLayoutTransitionInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + image*: VkImage + oldLayout*: VkImageLayout + newLayout*: VkImageLayout + subresourceRange*: VkImageSubresourceRange + + VkSubresourceHostMemcpySizeEXT* = object + sType*: VkStructureType + pNext*: pointer + size*: VkDeviceSize + + VkHostImageCopyDevicePerformanceQueryEXT* = object + sType*: VkStructureType + pNext*: pointer + optimalDeviceAccess*: VkBool32 + identicalMemoryLayout*: VkBool32 + + 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 + + VkPipelinePoolSize* = object + sType*: VkStructureType + pNext*: pointer + poolEntrySize*: VkDeviceSize + poolEntryCount*: uint32 + + 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 + + VkCommandPoolMemoryReservationCreateInfo* = object + sType*: VkStructureType + pNext*: pointer + commandPoolReservedSize*: VkDeviceSize + commandPoolMaxCommandBuffers*: uint32 + + VkCommandPoolMemoryConsumption* = object + sType*: VkStructureType + pNext*: pointer + commandPoolAllocated*: VkDeviceSize + commandPoolReservedSize*: VkDeviceSize + commandBufferAllocated*: VkDeviceSize + + VkPhysicalDeviceVulkanSC10Features* = object + sType*: VkStructureType + pNext*: pointer + shaderAtomicInstructions*: VkBool32 + + VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + primitivesGeneratedQuery*: VkBool32 + primitivesGeneratedQueryWithRasterizerDiscard*: VkBool32 + primitivesGeneratedQueryWithNonZeroStreams*: VkBool32 + + VkPhysicalDeviceLegacyDitheringFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + legacyDithering*: VkBool32 + + VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + multisampledRenderToSingleSampled*: VkBool32 + + VkSubpassResolvePerformanceQueryEXT* = object + sType*: VkStructureType + pNext*: pointer + optimal*: VkBool32 + + VkMultisampledRenderToSingleSampledInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + multisampledRenderToSingleSampledEnable*: VkBool32 + rasterizationSamples*: VkSampleCountFlagBits + + VkPhysicalDevicePipelineProtectedAccessFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + pipelineProtectedAccess*: VkBool32 + + VkQueueFamilyVideoPropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + videoCodecOperations*: VkVideoCodecOperationFlagsKHR + + VkQueueFamilyQueryResultStatusPropertiesKHR* = object + sType*: VkStructureType + pNext*: pointer + queryResultStatusSupport*: VkBool32 + + VkVideoProfileListInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + profileCount*: uint32 + pProfiles*: ptr VkVideoProfileInfoKHR + + VkPhysicalDeviceVideoFormatInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + imageUsage*: VkImageUsageFlags + + 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 + + VkVideoDecodeH264ProfileInfoKHR* = object + sType*: VkStructureType + pNext*: pointer + stdProfileIdc*: StdVideoH264ProfileIdc + pictureLayout*: VkVideoDecodeH264PictureLayoutFlagBitsKHR + + VkVideoDecodeH264CapabilitiesKHR* = object + sType*: VkStructureType + pNext*: pointer + maxLevelIdc*: StdVideoH264LevelIdc + fieldOffsetGranularity*: VkOffset2D + + 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 + + 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 + + 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 + + VkVideoEncodeH264CapabilitiesEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkVideoEncodeH264CapabilityFlagsEXT + maxLevelIdc*: StdVideoH264LevelIdc + maxSliceCount*: uint32 + maxPPictureL0ReferenceCount*: uint32 + maxBPictureL0ReferenceCount*: uint32 + maxL1ReferenceCount*: uint32 + maxTemporalLayerCount*: uint32 + expectDyadicTemporalLayerPattern*: VkBool32 + minQp*: int32 + maxQp*: int32 + prefersGopRemainingFrames*: VkBool32 + requiresGopRemainingFrames*: VkBool32 + stdSyntaxFlags*: VkVideoEncodeH264StdFlagsEXT + + VkVideoEncodeH264QualityLevelPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + preferredRateControlFlags*: VkVideoEncodeH264RateControlFlagsEXT + preferredGopFrameCount*: uint32 + preferredIdrPeriod*: uint32 + preferredConsecutiveBFrameCount*: uint32 + preferredTemporalLayerCount*: uint32 + preferredConstantQp*: VkVideoEncodeH264QpEXT + preferredMaxL0ReferenceCount*: uint32 + preferredMaxL1ReferenceCount*: uint32 + preferredStdEntropyCodingModeFlag*: VkBool32 + + VkVideoEncodeH264SessionCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + useMaxLevelIdc*: VkBool32 + maxLevelIdc*: StdVideoH264LevelIdc + + VkVideoEncodeH264SessionParametersAddInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + stdSPSCount*: uint32 + pStdSPSs*: ptr StdVideoH264SequenceParameterSet + stdPPSCount*: uint32 + pStdPPSs*: ptr StdVideoH264PictureParameterSet + + VkVideoEncodeH264SessionParametersCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + maxStdSPSCount*: uint32 + maxStdPPSCount*: uint32 + pParametersAddInfo*: ptr VkVideoEncodeH264SessionParametersAddInfoEXT + + VkVideoEncodeH264SessionParametersGetInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + writeStdSPS*: VkBool32 + writeStdPPS*: VkBool32 + stdSPSId*: uint32 + stdPPSId*: uint32 + + VkVideoEncodeH264SessionParametersFeedbackInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + hasStdSPSOverrides*: VkBool32 + hasStdPPSOverrides*: VkBool32 + + VkVideoEncodeH264DpbSlotInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + pStdReferenceInfo*: ptr StdVideoEncodeH264ReferenceInfo + + VkVideoEncodeH264PictureInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + naluSliceEntryCount*: uint32 + pNaluSliceEntries*: ptr VkVideoEncodeH264NaluSliceInfoEXT + pStdPictureInfo*: ptr StdVideoEncodeH264PictureInfo + generatePrefixNalu*: VkBool32 + + VkVideoEncodeH264ProfileInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + stdProfileIdc*: StdVideoH264ProfileIdc + + VkVideoEncodeH264NaluSliceInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + constantQp*: int32 + pStdSliceHeader*: ptr StdVideoEncodeH264SliceHeader + + VkVideoEncodeH264RateControlInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkVideoEncodeH264RateControlFlagsEXT + gopFrameCount*: uint32 + idrPeriod*: uint32 + consecutiveBFrameCount*: uint32 + temporalLayerCount*: uint32 + + VkVideoEncodeH264QpEXT* = object + qpI*: int32 + qpP*: int32 + qpB*: int32 + + VkVideoEncodeH264FrameSizeEXT* = object + frameISize*: uint32 + framePSize*: uint32 + frameBSize*: uint32 + + VkVideoEncodeH264GopRemainingFrameInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + useGopRemainingFrames*: VkBool32 + gopRemainingI*: uint32 + gopRemainingP*: uint32 + gopRemainingB*: uint32 + + VkVideoEncodeH264RateControlLayerInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + useMinQp*: VkBool32 + minQp*: VkVideoEncodeH264QpEXT + useMaxQp*: VkBool32 + maxQp*: VkVideoEncodeH264QpEXT + useMaxFrameSize*: VkBool32 + maxFrameSize*: VkVideoEncodeH264FrameSizeEXT + + VkVideoEncodeH265CapabilitiesEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkVideoEncodeH265CapabilityFlagsEXT + maxLevelIdc*: StdVideoH265LevelIdc + maxSliceSegmentCount*: uint32 + maxTiles*: VkExtent2D + ctbSizes*: VkVideoEncodeH265CtbSizeFlagsEXT + transformBlockSizes*: VkVideoEncodeH265TransformBlockSizeFlagsEXT + maxPPictureL0ReferenceCount*: uint32 + maxBPictureL0ReferenceCount*: uint32 + maxL1ReferenceCount*: uint32 + maxSubLayerCount*: uint32 + expectDyadicTemporalSubLayerPattern*: VkBool32 + minQp*: int32 + maxQp*: int32 + prefersGopRemainingFrames*: VkBool32 + requiresGopRemainingFrames*: VkBool32 + stdSyntaxFlags*: VkVideoEncodeH265StdFlagsEXT + + VkVideoEncodeH265QualityLevelPropertiesEXT* = object + sType*: VkStructureType + pNext*: pointer + preferredRateControlFlags*: VkVideoEncodeH265RateControlFlagsEXT + preferredGopFrameCount*: uint32 + preferredIdrPeriod*: uint32 + preferredConsecutiveBFrameCount*: uint32 + preferredSubLayerCount*: uint32 + preferredConstantQp*: VkVideoEncodeH265QpEXT + preferredMaxL0ReferenceCount*: uint32 + preferredMaxL1ReferenceCount*: uint32 + + VkVideoEncodeH265SessionCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + useMaxLevelIdc*: VkBool32 + maxLevelIdc*: StdVideoH265LevelIdc + + VkVideoEncodeH265SessionParametersAddInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + stdVPSCount*: uint32 + pStdVPSs*: ptr StdVideoH265VideoParameterSet + stdSPSCount*: uint32 + pStdSPSs*: ptr StdVideoH265SequenceParameterSet + stdPPSCount*: uint32 + pStdPPSs*: ptr StdVideoH265PictureParameterSet + + VkVideoEncodeH265SessionParametersCreateInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + maxStdVPSCount*: uint32 + maxStdSPSCount*: uint32 + maxStdPPSCount*: uint32 + pParametersAddInfo*: ptr VkVideoEncodeH265SessionParametersAddInfoEXT + + VkVideoEncodeH265SessionParametersGetInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + writeStdVPS*: VkBool32 + writeStdSPS*: VkBool32 + writeStdPPS*: VkBool32 + stdVPSId*: uint32 + stdSPSId*: uint32 + stdPPSId*: uint32 + + VkVideoEncodeH265SessionParametersFeedbackInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + hasStdVPSOverrides*: VkBool32 + hasStdSPSOverrides*: VkBool32 + hasStdPPSOverrides*: VkBool32 + + VkVideoEncodeH265PictureInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + naluSliceSegmentEntryCount*: uint32 + pNaluSliceSegmentEntries*: ptr VkVideoEncodeH265NaluSliceSegmentInfoEXT + pStdPictureInfo*: ptr StdVideoEncodeH265PictureInfo + + VkVideoEncodeH265NaluSliceSegmentInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + constantQp*: int32 + pStdSliceSegmentHeader*: ptr StdVideoEncodeH265SliceSegmentHeader + + VkVideoEncodeH265RateControlInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkVideoEncodeH265RateControlFlagsEXT + gopFrameCount*: uint32 + idrPeriod*: uint32 + consecutiveBFrameCount*: uint32 + subLayerCount*: uint32 + + VkVideoEncodeH265QpEXT* = object + qpI*: int32 + qpP*: int32 + qpB*: int32 + + VkVideoEncodeH265FrameSizeEXT* = object + frameISize*: uint32 + framePSize*: uint32 + frameBSize*: uint32 + + VkVideoEncodeH265GopRemainingFrameInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + useGopRemainingFrames*: VkBool32 + gopRemainingI*: uint32 + gopRemainingP*: uint32 + gopRemainingB*: uint32 + + VkVideoEncodeH265RateControlLayerInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + useMinQp*: VkBool32 + minQp*: VkVideoEncodeH265QpEXT + useMaxQp*: VkBool32 + maxQp*: VkVideoEncodeH265QpEXT + useMaxFrameSize*: VkBool32 + maxFrameSize*: VkVideoEncodeH265FrameSizeEXT + + VkVideoEncodeH265ProfileInfoEXT* = object + sType*: VkStructureType + pNext*: pointer + stdProfileIdc*: StdVideoH265ProfileIdc + + VkVideoEncodeH265DpbSlotInfoEXT* = 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 + + 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 + + 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 + + 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 + + VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* = object + sType*: VkStructureType + pNext*: pointer + formatRgba10x6WithoutYCbCrSampler*: VkBool32 + + VkFormatProperties3* = object + sType*: VkStructureType + pNext*: pointer + linearTilingFeatures*: VkFormatFeatureFlags2 + optimalTilingFeatures*: VkFormatFeatureFlags2 + bufferFeatures*: VkFormatFeatureFlags2 + + 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 + + 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 + + VkRenderingAttachmentInfo* = object + sType*: VkStructureType + pNext*: pointer + imageView*: VkImageView + imageLayout*: VkImageLayout + resolveMode*: VkResolveModeFlagBits + resolveImageView*: VkImageView + resolveImageLayout*: VkImageLayout + loadOp*: VkAttachmentLoadOp + storeOp*: VkAttachmentStoreOp + clearValue*: VkClearValue + + 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 + + VkCommandBufferInheritanceRenderingInfo* = object + sType*: VkStructureType + pNext*: pointer + flags*: VkRenderingFlags + viewMask*: uint32 + colorAttachmentCount*: uint32 + pColorAttachmentFormats*: ptr VkFormat + depthAttachmentFormat*: VkFormat + stencilAttachmentFormat*: VkFormat + rasterizationSamples*: VkSampleCountFlagBits + + VkAttachmentSampleCountInfoAMD* = object + sType*: VkStructureType + pNext*: pointer + colorAttachmentCount*: uint32 + pColorAttachmentSamples*: ptr VkSampleCountFlagBits + depthStencilAttachmentSamples*: VkSampleCountFlagBits + + 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 + + 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 + + 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 + + VkSubresourceLayout2KHR* = object + sType*: VkStructureType + pNext*: pointer + subresourceLayout*: VkSubresourceLayout + + 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 + + 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 + + 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 + + Display* {.importc, nodecl.} = object + VisualID* {.importc, nodecl.} = object + Window* {.importc, nodecl.} = object + RROutput* {.importc, nodecl.} = object + wl_display* {.importc, nodecl.} = object + wl_surface* {.importc, nodecl.} = object + HINSTANCE* {.importc, nodecl.} = object + HWND* {.importc, nodecl.} = object + HMONITOR* {.importc, nodecl.} = object + HANDLE* {.importc, nodecl.} = object + SECURITY_ATTRIBUTES* {.importc, nodecl.} = object + DWORD* {.importc, nodecl.} = object + LPCWSTR* {.importc, nodecl.} = object + xcb_connection_t* {.importc, nodecl.} = object + xcb_visualid_t* {.importc, nodecl.} = object + xcb_window_t* {.importc, nodecl.} = object + IDirectFB* {.importc, nodecl.} = object + IDirectFBSurface* {.importc, nodecl.} = object + zx_handle_t* {.importc, nodecl.} = object + GgpStreamDescriptor* {.importc, nodecl.} = object + GgpFrameToken* {.importc, nodecl.} = object + screen_context* {.importc, nodecl.} = object + screen_window* {.importc, nodecl.} = object + screen_buffer* {.importc, nodecl.} = object + NvSciSyncAttrList* {.importc, nodecl.} = object + NvSciSyncObj* {.importc, nodecl.} = object + NvSciSyncFence* {.importc, nodecl.} = object + NvSciBufAttrList* {.importc, nodecl.} = object + NvSciBufObj* {.importc, nodecl.} = object + StdVideoH264ProfileIdc* {.importc, nodecl.} = object + StdVideoH264LevelIdc* {.importc, nodecl.} = object + StdVideoH264ChromaFormatIdc* {.importc, nodecl.} = object + StdVideoH264PocType* {.importc, nodecl.} = object + StdVideoH264SpsFlags* {.importc, nodecl.} = object + StdVideoH264ScalingLists* {.importc, nodecl.} = object + StdVideoH264SequenceParameterSetVui* {.importc, nodecl.} = object + StdVideoH264AspectRatioIdc* {.importc, nodecl.} = object + StdVideoH264HrdParameters* {.importc, nodecl.} = object + StdVideoH264SpsVuiFlags* {.importc, nodecl.} = object + StdVideoH264WeightedBipredIdc* {.importc, nodecl.} = object + StdVideoH264PpsFlags* {.importc, nodecl.} = object + StdVideoH264SliceType* {.importc, nodecl.} = object + StdVideoH264CabacInitIdc* {.importc, nodecl.} = object + StdVideoH264DisableDeblockingFilterIdc* {.importc, nodecl.} = object + StdVideoH264PictureType* {.importc, nodecl.} = object + StdVideoH264ModificationOfPicNumsIdc* {.importc, nodecl.} = object + StdVideoH264MemMgmtControlOp* {.importc, nodecl.} = object + StdVideoDecodeH264PictureInfo* {.importc, nodecl.} = object + StdVideoDecodeH264ReferenceInfo* {.importc, nodecl.} = object + StdVideoDecodeH264PictureInfoFlags* {.importc, nodecl.} = object + StdVideoDecodeH264ReferenceInfoFlags* {.importc, nodecl.} = object + StdVideoH264SequenceParameterSet* {.importc, nodecl.} = object + StdVideoH264PictureParameterSet* {.importc, nodecl.} = object + StdVideoH265ProfileIdc* {.importc, nodecl.} = object + StdVideoH265VideoParameterSet* {.importc, nodecl.} = object + StdVideoH265SequenceParameterSet* {.importc, nodecl.} = object + StdVideoH265PictureParameterSet* {.importc, nodecl.} = object + StdVideoH265DecPicBufMgr* {.importc, nodecl.} = object + StdVideoH265HrdParameters* {.importc, nodecl.} = object + StdVideoH265VpsFlags* {.importc, nodecl.} = object + StdVideoH265LevelIdc* {.importc, nodecl.} = object + StdVideoH265SpsFlags* {.importc, nodecl.} = object + StdVideoH265ScalingLists* {.importc, nodecl.} = object + StdVideoH265SequenceParameterSetVui* {.importc, nodecl.} = object + StdVideoH265PredictorPaletteEntries* {.importc, nodecl.} = object + StdVideoH265PpsFlags* {.importc, nodecl.} = object + StdVideoH265SubLayerHrdParameters* {.importc, nodecl.} = object + StdVideoH265HrdFlags* {.importc, nodecl.} = object + StdVideoH265SpsVuiFlags* {.importc, nodecl.} = object + StdVideoH265SliceType* {.importc, nodecl.} = object + StdVideoH265PictureType* {.importc, nodecl.} = object + StdVideoDecodeH265PictureInfo* {.importc, nodecl.} = object + StdVideoDecodeH265ReferenceInfo* {.importc, nodecl.} = object + StdVideoDecodeH265PictureInfoFlags* {.importc, nodecl.} = object + StdVideoDecodeH265ReferenceInfoFlags* {.importc, nodecl.} = object + StdVideoEncodeH264SliceHeader* {.importc, nodecl.} = object + StdVideoEncodeH264PictureInfo* {.importc, nodecl.} = object + StdVideoEncodeH264ReferenceInfo* {.importc, nodecl.} = object + StdVideoEncodeH264SliceHeaderFlags* {.importc, nodecl.} = object + StdVideoEncodeH264ReferenceListsInfo* {.importc, nodecl.} = object + StdVideoEncodeH264PictureInfoFlags* {.importc, nodecl.} = object + StdVideoEncodeH264ReferenceInfoFlags* {.importc, nodecl.} = object + StdVideoEncodeH264RefMgmtFlags* {.importc, nodecl.} = object + StdVideoEncodeH264RefListModEntry* {.importc, nodecl.} = object + StdVideoEncodeH264RefPicMarkingEntry* {.importc, nodecl.} = object + StdVideoEncodeH265PictureInfoFlags* {.importc, nodecl.} = object + StdVideoEncodeH265PictureInfo* {.importc, nodecl.} = object + StdVideoEncodeH265SliceSegmentHeader* {.importc, nodecl.} = object + StdVideoEncodeH265ReferenceInfo* {.importc, nodecl.} = object + StdVideoEncodeH265ReferenceListsInfo* {.importc, nodecl.} = object + StdVideoEncodeH265SliceSegmentHeaderFlags* {.importc, nodecl.} = object + StdVideoEncodeH265ReferenceInfoFlags* {.importc, nodecl.} = object + StdVideoEncodeH265ReferenceModificationFlags* {.importc, nodecl.} = object + + VkGeometryFlagsNV* = VkGeometryFlagsKHR + VkGeometryInstanceFlagsNV* = VkGeometryInstanceFlagsKHR + VkBuildAccelerationStructureFlagsNV* = VkBuildAccelerationStructureFlagsKHR + VkPrivateDataSlotCreateFlagsEXT* = VkPrivateDataSlotCreateFlags + VkDescriptorUpdateTemplateCreateFlagsKHR* = VkDescriptorUpdateTemplateCreateFlags + VkPipelineCreationFeedbackFlagsEXT* = VkPipelineCreationFeedbackFlags + VkSemaphoreWaitFlagsKHR* = VkSemaphoreWaitFlags + VkAccessFlags2KHR* = VkAccessFlags2 + VkPipelineStageFlags2KHR* = VkPipelineStageFlags2 + VkFormatFeatureFlags2KHR* = VkFormatFeatureFlags2 + VkRenderingFlagsKHR* = VkRenderingFlags + VkPeerMemoryFeatureFlagsKHR* = VkPeerMemoryFeatureFlags + VkMemoryAllocateFlagsKHR* = VkMemoryAllocateFlags + VkCommandPoolTrimFlagsKHR* = VkCommandPoolTrimFlags + VkExternalMemoryHandleTypeFlagsKHR* = VkExternalMemoryHandleTypeFlags + VkExternalMemoryFeatureFlagsKHR* = VkExternalMemoryFeatureFlags + VkExternalSemaphoreHandleTypeFlagsKHR* = VkExternalSemaphoreHandleTypeFlags + VkExternalSemaphoreFeatureFlagsKHR* = VkExternalSemaphoreFeatureFlags + VkSemaphoreImportFlagsKHR* = VkSemaphoreImportFlags + VkExternalFenceHandleTypeFlagsKHR* = VkExternalFenceHandleTypeFlags + VkExternalFenceFeatureFlagsKHR* = VkExternalFenceFeatureFlags + VkFenceImportFlagsKHR* = VkFenceImportFlags + VkDescriptorBindingFlagsEXT* = VkDescriptorBindingFlags + VkResolveModeFlagsKHR* = VkResolveModeFlags + VkToolPurposeFlagsEXT* = VkToolPurposeFlags + VkSubmitFlagsKHR* = VkSubmitFlags + VkDescriptorUpdateTemplateKHR* = VkDescriptorUpdateTemplate + VkSamplerYcbcrConversionKHR* = VkSamplerYcbcrConversion + VkPrivateDataSlotEXT* = VkPrivateDataSlot + VkPrivateDataSlotCreateFlagBitsEXT* = VkPrivateDataSlotCreateFlagBits + VkDescriptorUpdateTemplateTypeKHR* = VkDescriptorUpdateTemplateType + VkPointClippingBehaviorKHR* = VkPointClippingBehavior + VkQueueGlobalPriorityEXT* = VkQueueGlobalPriorityKHR + VkResolveModeFlagBitsKHR* = VkResolveModeFlagBits + VkDescriptorBindingFlagBitsEXT* = VkDescriptorBindingFlagBits + VkSemaphoreTypeKHR* = VkSemaphoreType + VkGeometryFlagBitsNV* = VkGeometryFlagBitsKHR + VkGeometryInstanceFlagBitsNV* = VkGeometryInstanceFlagBitsKHR + VkBuildAccelerationStructureFlagBitsNV* = VkBuildAccelerationStructureFlagBitsKHR + VkCopyAccelerationStructureModeNV* = VkCopyAccelerationStructureModeKHR + VkAccelerationStructureTypeNV* = VkAccelerationStructureTypeKHR + VkGeometryTypeNV* = VkGeometryTypeKHR + VkRayTracingShaderGroupTypeNV* = VkRayTracingShaderGroupTypeKHR + VkPipelineCreationFeedbackFlagBitsEXT* = VkPipelineCreationFeedbackFlagBits + VkSemaphoreWaitFlagBitsKHR* = VkSemaphoreWaitFlagBits + VkToolPurposeFlagBitsEXT* = VkToolPurposeFlagBits + VkAccessFlagBits2KHR* = VkAccessFlagBits2 + VkPipelineStageFlagBits2KHR* = VkPipelineStageFlagBits2 + VkFormatFeatureFlagBits2KHR* = VkFormatFeatureFlagBits2 + VkRenderingFlagBitsKHR* = VkRenderingFlagBits + VkScopeNV* = VkScopeKHR + VkComponentTypeNV* = VkComponentTypeKHR + VkExternalMemoryHandleTypeFlagBitsKHR* = VkExternalMemoryHandleTypeFlagBits + VkExternalMemoryFeatureFlagBitsKHR* = VkExternalMemoryFeatureFlagBits + VkExternalSemaphoreHandleTypeFlagBitsKHR* = VkExternalSemaphoreHandleTypeFlagBits + VkExternalSemaphoreFeatureFlagBitsKHR* = VkExternalSemaphoreFeatureFlagBits + VkSemaphoreImportFlagBitsKHR* = VkSemaphoreImportFlagBits + VkExternalFenceHandleTypeFlagBitsKHR* = VkExternalFenceHandleTypeFlagBits + VkExternalFenceFeatureFlagBitsKHR* = VkExternalFenceFeatureFlagBits + VkFenceImportFlagBitsKHR* = VkFenceImportFlagBits + VkPeerMemoryFeatureFlagBitsKHR* = VkPeerMemoryFeatureFlagBits + VkMemoryAllocateFlagBitsKHR* = VkMemoryAllocateFlagBits + VkTessellationDomainOriginKHR* = VkTessellationDomainOrigin + VkSamplerYcbcrModelConversionKHR* = VkSamplerYcbcrModelConversion + VkSamplerYcbcrRangeKHR* = VkSamplerYcbcrRange + VkChromaLocationKHR* = VkChromaLocation + VkSamplerReductionModeEXT* = VkSamplerReductionMode + VkShaderFloatControlsIndependenceKHR* = VkShaderFloatControlsIndependence + VkSubmitFlagBitsKHR* = VkSubmitFlagBits + VkDriverIdKHR* = VkDriverId + VkPhysicalDeviceExternalSciBufFeaturesNV* = VkPhysicalDeviceExternalMemorySciBufFeaturesNV + VkDevicePrivateDataCreateInfoEXT* = VkDevicePrivateDataCreateInfo + VkPrivateDataSlotCreateInfoEXT* = VkPrivateDataSlotCreateInfo + VkPhysicalDevicePrivateDataFeaturesEXT* = VkPhysicalDevicePrivateDataFeatures + VkPhysicalDeviceFeatures2KHR* = VkPhysicalDeviceFeatures2 + VkPhysicalDeviceProperties2KHR* = VkPhysicalDeviceProperties2 + VkFormatProperties2KHR* = VkFormatProperties2 + VkImageFormatProperties2KHR* = VkImageFormatProperties2 + VkPhysicalDeviceImageFormatInfo2KHR* = VkPhysicalDeviceImageFormatInfo2 + VkQueueFamilyProperties2KHR* = VkQueueFamilyProperties2 + VkPhysicalDeviceMemoryProperties2KHR* = VkPhysicalDeviceMemoryProperties2 + VkSparseImageFormatProperties2KHR* = VkSparseImageFormatProperties2 + VkPhysicalDeviceSparseImageFormatInfo2KHR* = VkPhysicalDeviceSparseImageFormatInfo2 + VkConformanceVersionKHR* = VkConformanceVersion + VkPhysicalDeviceDriverPropertiesKHR* = VkPhysicalDeviceDriverProperties + VkPhysicalDeviceVariablePointersFeaturesKHR* = VkPhysicalDeviceVariablePointersFeatures + VkPhysicalDeviceVariablePointerFeaturesKHR* = VkPhysicalDeviceVariablePointersFeatures + VkPhysicalDeviceVariablePointerFeatures* = VkPhysicalDeviceVariablePointersFeatures + VkExternalMemoryPropertiesKHR* = VkExternalMemoryProperties + VkPhysicalDeviceExternalImageFormatInfoKHR* = VkPhysicalDeviceExternalImageFormatInfo + VkExternalImageFormatPropertiesKHR* = VkExternalImageFormatProperties + VkPhysicalDeviceExternalBufferInfoKHR* = VkPhysicalDeviceExternalBufferInfo + VkExternalBufferPropertiesKHR* = VkExternalBufferProperties + VkPhysicalDeviceIDPropertiesKHR* = VkPhysicalDeviceIDProperties + VkExternalMemoryImageCreateInfoKHR* = VkExternalMemoryImageCreateInfo + VkExternalMemoryBufferCreateInfoKHR* = VkExternalMemoryBufferCreateInfo + VkExportMemoryAllocateInfoKHR* = VkExportMemoryAllocateInfo + VkPhysicalDeviceExternalSemaphoreInfoKHR* = VkPhysicalDeviceExternalSemaphoreInfo + VkExternalSemaphorePropertiesKHR* = VkExternalSemaphoreProperties + VkExportSemaphoreCreateInfoKHR* = VkExportSemaphoreCreateInfo + VkPhysicalDeviceExternalFenceInfoKHR* = VkPhysicalDeviceExternalFenceInfo + VkExternalFencePropertiesKHR* = VkExternalFenceProperties + VkExportFenceCreateInfoKHR* = VkExportFenceCreateInfo + VkPhysicalDeviceMultiviewFeaturesKHR* = VkPhysicalDeviceMultiviewFeatures + VkPhysicalDeviceMultiviewPropertiesKHR* = VkPhysicalDeviceMultiviewProperties + VkRenderPassMultiviewCreateInfoKHR* = VkRenderPassMultiviewCreateInfo + VkPhysicalDeviceGroupPropertiesKHR* = VkPhysicalDeviceGroupProperties + VkMemoryAllocateFlagsInfoKHR* = VkMemoryAllocateFlagsInfo + VkBindBufferMemoryInfoKHR* = VkBindBufferMemoryInfo + VkBindBufferMemoryDeviceGroupInfoKHR* = VkBindBufferMemoryDeviceGroupInfo + VkBindImageMemoryInfoKHR* = VkBindImageMemoryInfo + VkBindImageMemoryDeviceGroupInfoKHR* = VkBindImageMemoryDeviceGroupInfo + VkDeviceGroupRenderPassBeginInfoKHR* = VkDeviceGroupRenderPassBeginInfo + VkDeviceGroupCommandBufferBeginInfoKHR* = VkDeviceGroupCommandBufferBeginInfo + VkDeviceGroupSubmitInfoKHR* = VkDeviceGroupSubmitInfo + VkDeviceGroupBindSparseInfoKHR* = VkDeviceGroupBindSparseInfo + VkDeviceGroupDeviceCreateInfoKHR* = VkDeviceGroupDeviceCreateInfo + VkDescriptorUpdateTemplateEntryKHR* = VkDescriptorUpdateTemplateEntry + VkDescriptorUpdateTemplateCreateInfoKHR* = VkDescriptorUpdateTemplateCreateInfo + VkInputAttachmentAspectReferenceKHR* = VkInputAttachmentAspectReference + VkRenderPassInputAttachmentAspectCreateInfoKHR* = VkRenderPassInputAttachmentAspectCreateInfo + VkPhysicalDevice16BitStorageFeaturesKHR* = VkPhysicalDevice16BitStorageFeatures + VkPhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR* = VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures + VkBufferMemoryRequirementsInfo2KHR* = VkBufferMemoryRequirementsInfo2 + VkDeviceBufferMemoryRequirementsKHR* = VkDeviceBufferMemoryRequirements + VkImageMemoryRequirementsInfo2KHR* = VkImageMemoryRequirementsInfo2 + VkImageSparseMemoryRequirementsInfo2KHR* = VkImageSparseMemoryRequirementsInfo2 + VkDeviceImageMemoryRequirementsKHR* = VkDeviceImageMemoryRequirements + VkMemoryRequirements2KHR* = VkMemoryRequirements2 + VkSparseImageMemoryRequirements2KHR* = VkSparseImageMemoryRequirements2 + VkPhysicalDevicePointClippingPropertiesKHR* = VkPhysicalDevicePointClippingProperties + VkMemoryDedicatedRequirementsKHR* = VkMemoryDedicatedRequirements + VkMemoryDedicatedAllocateInfoKHR* = VkMemoryDedicatedAllocateInfo + VkImageViewUsageCreateInfoKHR* = VkImageViewUsageCreateInfo + VkPipelineTessellationDomainOriginStateCreateInfoKHR* = VkPipelineTessellationDomainOriginStateCreateInfo + VkSamplerYcbcrConversionInfoKHR* = VkSamplerYcbcrConversionInfo + VkSamplerYcbcrConversionCreateInfoKHR* = VkSamplerYcbcrConversionCreateInfo + VkBindImagePlaneMemoryInfoKHR* = VkBindImagePlaneMemoryInfo + VkImagePlaneMemoryRequirementsInfoKHR* = VkImagePlaneMemoryRequirementsInfo + VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR* = VkPhysicalDeviceSamplerYcbcrConversionFeatures + VkSamplerYcbcrConversionImageFormatPropertiesKHR* = VkSamplerYcbcrConversionImageFormatProperties + VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT* = VkPhysicalDeviceSamplerFilterMinmaxProperties + VkSamplerReductionModeCreateInfoEXT* = VkSamplerReductionModeCreateInfo + VkPhysicalDeviceInlineUniformBlockFeaturesEXT* = VkPhysicalDeviceInlineUniformBlockFeatures + VkPhysicalDeviceInlineUniformBlockPropertiesEXT* = VkPhysicalDeviceInlineUniformBlockProperties + VkWriteDescriptorSetInlineUniformBlockEXT* = VkWriteDescriptorSetInlineUniformBlock + VkDescriptorPoolInlineUniformBlockCreateInfoEXT* = VkDescriptorPoolInlineUniformBlockCreateInfo + VkImageFormatListCreateInfoKHR* = VkImageFormatListCreateInfo + VkPhysicalDeviceMaintenance3PropertiesKHR* = VkPhysicalDeviceMaintenance3Properties + VkPhysicalDeviceMaintenance4FeaturesKHR* = VkPhysicalDeviceMaintenance4Features + VkPhysicalDeviceMaintenance4PropertiesKHR* = VkPhysicalDeviceMaintenance4Properties + VkDescriptorSetLayoutSupportKHR* = VkDescriptorSetLayoutSupport + VkPhysicalDeviceShaderDrawParameterFeatures* = VkPhysicalDeviceShaderDrawParametersFeatures + VkPhysicalDeviceShaderFloat16Int8FeaturesKHR* = VkPhysicalDeviceShaderFloat16Int8Features + VkPhysicalDeviceFloat16Int8FeaturesKHR* = VkPhysicalDeviceShaderFloat16Int8Features + VkPhysicalDeviceFloatControlsPropertiesKHR* = VkPhysicalDeviceFloatControlsProperties + VkPhysicalDeviceHostQueryResetFeaturesEXT* = VkPhysicalDeviceHostQueryResetFeatures + VkDeviceQueueGlobalPriorityCreateInfoEXT* = VkDeviceQueueGlobalPriorityCreateInfoKHR + VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT* = VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR + VkQueueFamilyGlobalPriorityPropertiesEXT* = VkQueueFamilyGlobalPriorityPropertiesKHR + VkPhysicalDeviceDescriptorIndexingFeaturesEXT* = VkPhysicalDeviceDescriptorIndexingFeatures + VkPhysicalDeviceDescriptorIndexingPropertiesEXT* = VkPhysicalDeviceDescriptorIndexingProperties + VkDescriptorSetLayoutBindingFlagsCreateInfoEXT* = VkDescriptorSetLayoutBindingFlagsCreateInfo + VkDescriptorSetVariableDescriptorCountAllocateInfoEXT* = VkDescriptorSetVariableDescriptorCountAllocateInfo + VkDescriptorSetVariableDescriptorCountLayoutSupportEXT* = VkDescriptorSetVariableDescriptorCountLayoutSupport + VkAttachmentDescription2KHR* = VkAttachmentDescription2 + VkAttachmentReference2KHR* = VkAttachmentReference2 + VkSubpassDescription2KHR* = VkSubpassDescription2 + VkSubpassDependency2KHR* = VkSubpassDependency2 + VkRenderPassCreateInfo2KHR* = VkRenderPassCreateInfo2 + VkSubpassBeginInfoKHR* = VkSubpassBeginInfo + VkSubpassEndInfoKHR* = VkSubpassEndInfo + VkPhysicalDeviceTimelineSemaphoreFeaturesKHR* = VkPhysicalDeviceTimelineSemaphoreFeatures + VkPhysicalDeviceTimelineSemaphorePropertiesKHR* = VkPhysicalDeviceTimelineSemaphoreProperties + VkSemaphoreTypeCreateInfoKHR* = VkSemaphoreTypeCreateInfo + VkTimelineSemaphoreSubmitInfoKHR* = VkTimelineSemaphoreSubmitInfo + VkSemaphoreWaitInfoKHR* = VkSemaphoreWaitInfo + VkSemaphoreSignalInfoKHR* = VkSemaphoreSignalInfo + VkPhysicalDevice8BitStorageFeaturesKHR* = VkPhysicalDevice8BitStorageFeatures + VkPhysicalDeviceVulkanMemoryModelFeaturesKHR* = VkPhysicalDeviceVulkanMemoryModelFeatures + VkPhysicalDeviceShaderAtomicInt64FeaturesKHR* = VkPhysicalDeviceShaderAtomicInt64Features + VkPhysicalDeviceDepthStencilResolvePropertiesKHR* = VkPhysicalDeviceDepthStencilResolveProperties + VkSubpassDescriptionDepthStencilResolveKHR* = VkSubpassDescriptionDepthStencilResolve + VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV* = VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR + VkImageStencilUsageCreateInfoEXT* = VkImageStencilUsageCreateInfo + VkPhysicalDeviceScalarBlockLayoutFeaturesEXT* = VkPhysicalDeviceScalarBlockLayoutFeatures + VkPhysicalDeviceUniformBufferStandardLayoutFeaturesKHR* = VkPhysicalDeviceUniformBufferStandardLayoutFeatures + VkPhysicalDeviceBufferDeviceAddressFeaturesKHR* = VkPhysicalDeviceBufferDeviceAddressFeatures + VkPhysicalDeviceBufferAddressFeaturesEXT* = VkPhysicalDeviceBufferDeviceAddressFeaturesEXT + VkBufferDeviceAddressInfoKHR* = VkBufferDeviceAddressInfo + VkBufferDeviceAddressInfoEXT* = VkBufferDeviceAddressInfo + VkBufferOpaqueCaptureAddressCreateInfoKHR* = VkBufferOpaqueCaptureAddressCreateInfo + VkPhysicalDeviceImagelessFramebufferFeaturesKHR* = VkPhysicalDeviceImagelessFramebufferFeatures + VkFramebufferAttachmentsCreateInfoKHR* = VkFramebufferAttachmentsCreateInfo + VkFramebufferAttachmentImageInfoKHR* = VkFramebufferAttachmentImageInfo + VkRenderPassAttachmentBeginInfoKHR* = VkRenderPassAttachmentBeginInfo + VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT* = VkPhysicalDeviceTextureCompressionASTCHDRFeatures + VkPipelineCreationFeedbackEXT* = VkPipelineCreationFeedback + VkPipelineCreationFeedbackCreateInfoEXT* = VkPipelineCreationFeedbackCreateInfo + VkQueryPoolCreateInfoINTEL* = VkQueryPoolPerformanceQueryCreateInfoINTEL + VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR* = VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures + VkAttachmentReferenceStencilLayoutKHR* = VkAttachmentReferenceStencilLayout + VkAttachmentDescriptionStencilLayoutKHR* = VkAttachmentDescriptionStencilLayout + VkPipelineInfoEXT* = VkPipelineInfoKHR + VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT* = VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures + VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT* = VkPhysicalDeviceTexelBufferAlignmentProperties + VkPhysicalDeviceSubgroupSizeControlFeaturesEXT* = VkPhysicalDeviceSubgroupSizeControlFeatures + VkPhysicalDeviceSubgroupSizeControlPropertiesEXT* = VkPhysicalDeviceSubgroupSizeControlProperties + VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT* = VkPipelineShaderStageRequiredSubgroupSizeCreateInfo + VkShaderRequiredSubgroupSizeCreateInfoEXT* = VkPipelineShaderStageRequiredSubgroupSizeCreateInfo + VkMemoryOpaqueCaptureAddressAllocateInfoKHR* = VkMemoryOpaqueCaptureAddressAllocateInfo + VkDeviceMemoryOpaqueCaptureAddressInfoKHR* = VkDeviceMemoryOpaqueCaptureAddressInfo + VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT* = VkPhysicalDevicePipelineCreationCacheControlFeatures + VkPhysicalDeviceToolPropertiesEXT* = VkPhysicalDeviceToolProperties + VkAabbPositionsNV* = VkAabbPositionsKHR + VkTransformMatrixNV* = VkTransformMatrixKHR + VkAccelerationStructureInstanceNV* = VkAccelerationStructureInstanceKHR + VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR* = VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures + VkPhysicalDeviceImageRobustnessFeaturesEXT* = VkPhysicalDeviceImageRobustnessFeatures + VkBufferCopy2KHR* = VkBufferCopy2 + VkImageCopy2KHR* = VkImageCopy2 + VkImageBlit2KHR* = VkImageBlit2 + VkBufferImageCopy2KHR* = VkBufferImageCopy2 + VkImageResolve2KHR* = VkImageResolve2 + VkCopyBufferInfo2KHR* = VkCopyBufferInfo2 + VkCopyImageInfo2KHR* = VkCopyImageInfo2 + VkBlitImageInfo2KHR* = VkBlitImageInfo2 + VkCopyBufferToImageInfo2KHR* = VkCopyBufferToImageInfo2 + VkCopyImageToBufferInfo2KHR* = VkCopyImageToBufferInfo2 + VkResolveImageInfo2KHR* = VkResolveImageInfo2 + VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR* = VkPhysicalDeviceShaderTerminateInvocationFeatures + VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE* = VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT + VkMutableDescriptorTypeListVALVE* = VkMutableDescriptorTypeListEXT + VkMutableDescriptorTypeCreateInfoVALVE* = VkMutableDescriptorTypeCreateInfoEXT + VkMemoryBarrier2KHR* = VkMemoryBarrier2 + VkImageMemoryBarrier2KHR* = VkImageMemoryBarrier2 + VkBufferMemoryBarrier2KHR* = VkBufferMemoryBarrier2 + VkDependencyInfoKHR* = VkDependencyInfo + VkSemaphoreSubmitInfoKHR* = VkSemaphoreSubmitInfo + VkCommandBufferSubmitInfoKHR* = VkCommandBufferSubmitInfo + VkSubmitInfo2KHR* = VkSubmitInfo2 + VkPhysicalDeviceSynchronization2FeaturesKHR* = VkPhysicalDeviceSynchronization2Features + VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR* = VkPhysicalDeviceShaderIntegerDotProductFeatures + VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR* = VkPhysicalDeviceShaderIntegerDotProductProperties + VkFormatProperties3KHR* = VkFormatProperties3 + VkPipelineRenderingCreateInfoKHR* = VkPipelineRenderingCreateInfo + VkRenderingInfoKHR* = VkRenderingInfo + VkRenderingAttachmentInfoKHR* = VkRenderingAttachmentInfo + VkPhysicalDeviceDynamicRenderingFeaturesKHR* = VkPhysicalDeviceDynamicRenderingFeatures + VkCommandBufferInheritanceRenderingInfoKHR* = VkCommandBufferInheritanceRenderingInfo + VkAttachmentSampleCountInfoNV* = VkAttachmentSampleCountInfoAMD + VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM* = VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT + VkImageSubresource2EXT* = VkImageSubresource2KHR + VkSubresourceLayout2EXT* = VkSubresourceLayout2KHR +template VK_LUID_SIZE_KHR* = + VK_LUID_SIZE +template VK_QUEUE_FAMILY_EXTERNAL_KHR* = + VK_QUEUE_FAMILY_EXTERNAL +template VK_MAX_DEVICE_GROUP_SIZE_KHR* = + VK_MAX_DEVICE_GROUP_SIZE +template VK_MAX_DRIVER_NAME_SIZE_KHR* = + VK_MAX_DRIVER_NAME_SIZE +template VK_MAX_DRIVER_INFO_SIZE_KHR* = + VK_MAX_DRIVER_INFO_SIZE +template VK_SHADER_UNUSED_NV* = + VK_SHADER_UNUSED_KHR +template VK_MAX_GLOBAL_PRIORITY_SIZE_EXT* = + VK_MAX_GLOBAL_PRIORITY_SIZE_KHR + +proc vkCreateInstance*(pCreateInfo: ptr VkInstanceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pInstance: ptr VkInstance): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyInstance*(instance: VkInstance, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkEnumeratePhysicalDevices*(instance: VkInstance, pPhysicalDeviceCount: ptr uint32, pPhysicalDevices: ptr VkPhysicalDevice): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDeviceProcAddr*(device: VkDevice, pName: cstring): PFN_vkVoidFunction {.cdecl, importc, dynlib: vkDLL.} +proc vkGetInstanceProcAddr*(instance: VkInstance, pName: cstring): PFN_vkVoidFunction {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceProperties*(physicalDevice: VkPhysicalDevice, pProperties: ptr VkPhysicalDeviceProperties): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceQueueFamilyProperties*(physicalDevice: VkPhysicalDevice, pQueueFamilyPropertyCount: ptr uint32, pQueueFamilyProperties: ptr VkQueueFamilyProperties): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceMemoryProperties*(physicalDevice: VkPhysicalDevice, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceFeatures*(physicalDevice: VkPhysicalDevice, pFeatures: ptr VkPhysicalDeviceFeatures): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceFormatProperties*(physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: ptr VkFormatProperties): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceImageFormatProperties*(physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, tiling: VkImageTiling, usage: VkImageUsageFlags, flags: VkImageCreateFlags, pImageFormatProperties: ptr VkImageFormatProperties): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateDevice*(physicalDevice: VkPhysicalDevice, pCreateInfo: ptr VkDeviceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDevice: ptr VkDevice): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyDevice*(device: VkDevice, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkEnumerateInstanceVersion*(pApiVersion: ptr uint32): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkEnumerateInstanceLayerProperties*(pPropertyCount: ptr uint32, pProperties: ptr VkLayerProperties): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkEnumerateInstanceExtensionProperties*(pLayerName: cstring, pPropertyCount: ptr uint32, pProperties: ptr VkExtensionProperties): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkEnumerateDeviceLayerProperties*(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkLayerProperties): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkEnumerateDeviceExtensionProperties*(physicalDevice: VkPhysicalDevice, pLayerName: cstring, pPropertyCount: ptr uint32, pProperties: ptr VkExtensionProperties): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDeviceQueue*(device: VkDevice, queueFamilyIndex: uint32, queueIndex: uint32, pQueue: ptr VkQueue): void {.cdecl, importc, dynlib: vkDLL.} +proc vkQueueSubmit*(queue: VkQueue, submitCount: uint32, pSubmits: ptr VkSubmitInfo, fence: VkFence): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkQueueWaitIdle*(queue: VkQueue): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkDeviceWaitIdle*(device: VkDevice): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkAllocateMemory*(device: VkDevice, pAllocateInfo: ptr VkMemoryAllocateInfo , pAllocator: ptr VkAllocationCallbacks , pMemory: ptr VkDeviceMemory ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkFreeMemory*(device: VkDevice, memory: VkDeviceMemory, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkMapMemory*(device: VkDevice, memory: VkDeviceMemory, offset: VkDeviceSize, size: VkDeviceSize, flags: VkMemoryMapFlags, ppData: ptr pointer ): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkAllocateMemory*(device: VkDevice, pAllocateInfo: ptr VkMemoryAllocateInfo, pAllocator: ptr VkAllocationCallbacks, pMemory: ptr VkDeviceMemory): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkFreeMemory*(device: VkDevice, memory: VkDeviceMemory, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkMapMemory*(device: VkDevice, memory: VkDeviceMemory, offset: VkDeviceSize, size: VkDeviceSize, flags: VkMemoryMapFlags, ppData: ptr pointer): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkUnmapMemory*(device: VkDevice, memory: VkDeviceMemory): void {.cdecl, importc, dynlib: vkDLL.} -proc vkFlushMappedMemoryRanges*(device: VkDevice, memoryRangeCount: uint32, pMemoryRanges: ptr VkMappedMemoryRange ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkInvalidateMappedMemoryRanges*(device: VkDevice, memoryRangeCount: uint32, pMemoryRanges: ptr VkMappedMemoryRange ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDeviceMemoryCommitment*(device: VkDevice, memory: VkDeviceMemory, pCommittedMemoryInBytes: ptr VkDeviceSize ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetBufferMemoryRequirements*(device: VkDevice, buffer: VkBuffer, pMemoryRequirements: ptr VkMemoryRequirements ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkFlushMappedMemoryRanges*(device: VkDevice, memoryRangeCount: uint32, pMemoryRanges: ptr VkMappedMemoryRange): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkInvalidateMappedMemoryRanges*(device: VkDevice, memoryRangeCount: uint32, pMemoryRanges: ptr VkMappedMemoryRange): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDeviceMemoryCommitment*(device: VkDevice, memory: VkDeviceMemory, pCommittedMemoryInBytes: ptr VkDeviceSize): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetBufferMemoryRequirements*(device: VkDevice, buffer: VkBuffer, pMemoryRequirements: ptr VkMemoryRequirements): void {.cdecl, importc, dynlib: vkDLL.} proc vkBindBufferMemory*(device: VkDevice, buffer: VkBuffer, memory: VkDeviceMemory, memoryOffset: VkDeviceSize): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetImageMemoryRequirements*(device: VkDevice, image: VkImage, pMemoryRequirements: ptr VkMemoryRequirements ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetImageMemoryRequirements*(device: VkDevice, image: VkImage, pMemoryRequirements: ptr VkMemoryRequirements): void {.cdecl, importc, dynlib: vkDLL.} proc vkBindImageMemory*(device: VkDevice, image: VkImage, memory: VkDeviceMemory, memoryOffset: VkDeviceSize): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetImageSparseMemoryRequirements*(device: VkDevice, image: VkImage, pSparseMemoryRequirementCount: ptr uint32 , pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceSparseImageFormatProperties*(physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, samples: VkSampleCountFlagBits, usage: VkImageUsageFlags, tiling: VkImageTiling, pPropertyCount: ptr uint32 , pProperties: ptr VkSparseImageFormatProperties ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkQueueBindSparse*(queue: VkQueue, bindInfoCount: uint32, pBindInfo: ptr VkBindSparseInfo , fence: VkFence): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateFence*(device: VkDevice, pCreateInfo: ptr VkFenceCreateInfo , pAllocator: ptr VkAllocationCallbacks , pFence: ptr VkFence ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyFence*(device: VkDevice, fence: VkFence, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkResetFences*(device: VkDevice, fenceCount: uint32, pFences: ptr VkFence ): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetImageSparseMemoryRequirements*(device: VkDevice, image: VkImage, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceSparseImageFormatProperties*(physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, samples: VkSampleCountFlagBits, usage: VkImageUsageFlags, tiling: VkImageTiling, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties): void {.cdecl, importc, dynlib: vkDLL.} +proc vkQueueBindSparse*(queue: VkQueue, bindInfoCount: uint32, pBindInfo: ptr VkBindSparseInfo, fence: VkFence): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateFence*(device: VkDevice, pCreateInfo: ptr VkFenceCreateInfo, pAllocator: ptr VkAllocationCallbacks, pFence: ptr VkFence): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyFence*(device: VkDevice, fence: VkFence, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkResetFences*(device: VkDevice, fenceCount: uint32, pFences: ptr VkFence): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkGetFenceStatus*(device: VkDevice, fence: VkFence): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkWaitForFences*(device: VkDevice, fenceCount: uint32, pFences: ptr VkFence , waitAll: VkBool32, timeout: uint64): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateSemaphore*(device: VkDevice, pCreateInfo: ptr VkSemaphoreCreateInfo , pAllocator: ptr VkAllocationCallbacks , pSemaphore: ptr VkSemaphore ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroySemaphore*(device: VkDevice, semaphore: VkSemaphore, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateEvent*(device: VkDevice, pCreateInfo: ptr VkEventCreateInfo , pAllocator: ptr VkAllocationCallbacks , pEvent: ptr VkEvent ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyEvent*(device: VkDevice, event: VkEvent, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkWaitForFences*(device: VkDevice, fenceCount: uint32, pFences: ptr VkFence, waitAll: VkBool32, timeout: uint64): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateSemaphore*(device: VkDevice, pCreateInfo: ptr VkSemaphoreCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSemaphore: ptr VkSemaphore): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroySemaphore*(device: VkDevice, semaphore: VkSemaphore, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateEvent*(device: VkDevice, pCreateInfo: ptr VkEventCreateInfo, pAllocator: ptr VkAllocationCallbacks, pEvent: ptr VkEvent): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyEvent*(device: VkDevice, event: VkEvent, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} proc vkGetEventStatus*(device: VkDevice, event: VkEvent): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkSetEvent*(device: VkDevice, event: VkEvent): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkResetEvent*(device: VkDevice, event: VkEvent): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateQueryPool*(device: VkDevice, pCreateInfo: ptr VkQueryPoolCreateInfo , pAllocator: ptr VkAllocationCallbacks , pQueryPool: ptr VkQueryPool ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyQueryPool*(device: VkDevice, queryPool: VkQueryPool, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetQueryPoolResults*(device: VkDevice, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32, dataSize: uint, pData: pointer , stride: VkDeviceSize, flags: VkQueryResultFlags): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateQueryPool*(device: VkDevice, pCreateInfo: ptr VkQueryPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pQueryPool: ptr VkQueryPool): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyQueryPool*(device: VkDevice, queryPool: VkQueryPool, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetQueryPoolResults*(device: VkDevice, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32, dataSize: uint, pData: pointer, stride: VkDeviceSize, flags: VkQueryResultFlags): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkResetQueryPool*(device: VkDevice, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateBuffer*(device: VkDevice, pCreateInfo: ptr VkBufferCreateInfo , pAllocator: ptr VkAllocationCallbacks , pBuffer: ptr VkBuffer ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyBuffer*(device: VkDevice, buffer: VkBuffer, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateBufferView*(device: VkDevice, pCreateInfo: ptr VkBufferViewCreateInfo , pAllocator: ptr VkAllocationCallbacks , pView: ptr VkBufferView ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyBufferView*(device: VkDevice, bufferView: VkBufferView, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateImage*(device: VkDevice, pCreateInfo: ptr VkImageCreateInfo , pAllocator: ptr VkAllocationCallbacks , pImage: ptr VkImage ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyImage*(device: VkDevice, image: VkImage, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetImageSubresourceLayout*(device: VkDevice, image: VkImage, pSubresource: ptr VkImageSubresource , pLayout: ptr VkSubresourceLayout ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateImageView*(device: VkDevice, pCreateInfo: ptr VkImageViewCreateInfo , pAllocator: ptr VkAllocationCallbacks , pView: ptr VkImageView ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyImageView*(device: VkDevice, imageView: VkImageView, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateShaderModule*(device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo , pAllocator: ptr VkAllocationCallbacks , pShaderModule: ptr VkShaderModule ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyShaderModule*(device: VkDevice, shaderModule: VkShaderModule, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCreatePipelineCache*(device: VkDevice, pCreateInfo: ptr VkPipelineCacheCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelineCache: ptr VkPipelineCache ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyPipelineCache*(device: VkDevice, pipelineCache: VkPipelineCache, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPipelineCacheData*(device: VkDevice, pipelineCache: VkPipelineCache, pDataSize: ptr uint , pData: pointer ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkMergePipelineCaches*(device: VkDevice, dstCache: VkPipelineCache, srcCacheCount: uint32, pSrcCaches: ptr VkPipelineCache ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateGraphicsPipelines*(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkGraphicsPipelineCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateComputePipelines*(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkComputePipelineCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI*(device: VkDevice, renderpass: VkRenderPass, pMaxWorkgroupSize: ptr VkExtent2D ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyPipeline*(device: VkDevice, pipeline: VkPipeline, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCreatePipelineLayout*(device: VkDevice, pCreateInfo: ptr VkPipelineLayoutCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPipelineLayout: ptr VkPipelineLayout ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyPipelineLayout*(device: VkDevice, pipelineLayout: VkPipelineLayout, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateSampler*(device: VkDevice, pCreateInfo: ptr VkSamplerCreateInfo , pAllocator: ptr VkAllocationCallbacks , pSampler: ptr VkSampler ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroySampler*(device: VkDevice, sampler: VkSampler, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateDescriptorSetLayout*(device: VkDevice, pCreateInfo: ptr VkDescriptorSetLayoutCreateInfo , pAllocator: ptr VkAllocationCallbacks , pSetLayout: ptr VkDescriptorSetLayout ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyDescriptorSetLayout*(device: VkDevice, descriptorSetLayout: VkDescriptorSetLayout, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateDescriptorPool*(device: VkDevice, pCreateInfo: ptr VkDescriptorPoolCreateInfo , pAllocator: ptr VkAllocationCallbacks , pDescriptorPool: ptr VkDescriptorPool ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyDescriptorPool*(device: VkDevice, descriptorPool: VkDescriptorPool, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateBuffer*(device: VkDevice, pCreateInfo: ptr VkBufferCreateInfo, pAllocator: ptr VkAllocationCallbacks, pBuffer: ptr VkBuffer): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyBuffer*(device: VkDevice, buffer: VkBuffer, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateBufferView*(device: VkDevice, pCreateInfo: ptr VkBufferViewCreateInfo, pAllocator: ptr VkAllocationCallbacks, pView: ptr VkBufferView): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyBufferView*(device: VkDevice, bufferView: VkBufferView, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateImage*(device: VkDevice, pCreateInfo: ptr VkImageCreateInfo, pAllocator: ptr VkAllocationCallbacks, pImage: ptr VkImage): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyImage*(device: VkDevice, image: VkImage, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetImageSubresourceLayout*(device: VkDevice, image: VkImage, pSubresource: ptr VkImageSubresource, pLayout: ptr VkSubresourceLayout): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateImageView*(device: VkDevice, pCreateInfo: ptr VkImageViewCreateInfo, pAllocator: ptr VkAllocationCallbacks, pView: ptr VkImageView): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyImageView*(device: VkDevice, imageView: VkImageView, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateShaderModule*(device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo, pAllocator: ptr VkAllocationCallbacks, pShaderModule: ptr VkShaderModule): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyShaderModule*(device: VkDevice, shaderModule: VkShaderModule, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCreatePipelineCache*(device: VkDevice, pCreateInfo: ptr VkPipelineCacheCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineCache: ptr VkPipelineCache): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyPipelineCache*(device: VkDevice, pipelineCache: VkPipelineCache, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPipelineCacheData*(device: VkDevice, pipelineCache: VkPipelineCache, pDataSize: ptr uint, pData: pointer): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkMergePipelineCaches*(device: VkDevice, dstCache: VkPipelineCache, srcCacheCount: uint32, pSrcCaches: ptr VkPipelineCache): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateGraphicsPipelines*(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkGraphicsPipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateComputePipelines*(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkComputePipelineCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI*(device: VkDevice, renderpass: VkRenderPass, pMaxWorkgroupSize: ptr VkExtent2D): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyPipeline*(device: VkDevice, pipeline: VkPipeline, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCreatePipelineLayout*(device: VkDevice, pCreateInfo: ptr VkPipelineLayoutCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPipelineLayout: ptr VkPipelineLayout): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyPipelineLayout*(device: VkDevice, pipelineLayout: VkPipelineLayout, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateSampler*(device: VkDevice, pCreateInfo: ptr VkSamplerCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSampler: ptr VkSampler): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroySampler*(device: VkDevice, sampler: VkSampler, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateDescriptorSetLayout*(device: VkDevice, pCreateInfo: ptr VkDescriptorSetLayoutCreateInfo, pAllocator: ptr VkAllocationCallbacks, pSetLayout: ptr VkDescriptorSetLayout): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyDescriptorSetLayout*(device: VkDevice, descriptorSetLayout: VkDescriptorSetLayout, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateDescriptorPool*(device: VkDevice, pCreateInfo: ptr VkDescriptorPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDescriptorPool: ptr VkDescriptorPool): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyDescriptorPool*(device: VkDevice, descriptorPool: VkDescriptorPool, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} proc vkResetDescriptorPool*(device: VkDevice, descriptorPool: VkDescriptorPool, flags: VkDescriptorPoolResetFlags): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkAllocateDescriptorSets*(device: VkDevice, pAllocateInfo: ptr VkDescriptorSetAllocateInfo , pDescriptorSets: ptr VkDescriptorSet ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkFreeDescriptorSets*(device: VkDevice, descriptorPool: VkDescriptorPool, descriptorSetCount: uint32, pDescriptorSets: ptr VkDescriptorSet ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkUpdateDescriptorSets*(device: VkDevice, descriptorWriteCount: uint32, pDescriptorWrites: ptr VkWriteDescriptorSet , descriptorCopyCount: uint32, pDescriptorCopies: ptr VkCopyDescriptorSet ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateFramebuffer*(device: VkDevice, pCreateInfo: ptr VkFramebufferCreateInfo , pAllocator: ptr VkAllocationCallbacks , pFramebuffer: ptr VkFramebuffer ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyFramebuffer*(device: VkDevice, framebuffer: VkFramebuffer, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateRenderPass*(device: VkDevice, pCreateInfo: ptr VkRenderPassCreateInfo , pAllocator: ptr VkAllocationCallbacks , pRenderPass: ptr VkRenderPass ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyRenderPass*(device: VkDevice, renderPass: VkRenderPass, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetRenderAreaGranularity*(device: VkDevice, renderPass: VkRenderPass, pGranularity: ptr VkExtent2D ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateCommandPool*(device: VkDevice, pCreateInfo: ptr VkCommandPoolCreateInfo , pAllocator: ptr VkAllocationCallbacks , pCommandPool: ptr VkCommandPool ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyCommandPool*(device: VkDevice, commandPool: VkCommandPool, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkAllocateDescriptorSets*(device: VkDevice, pAllocateInfo: ptr VkDescriptorSetAllocateInfo, pDescriptorSets: ptr VkDescriptorSet): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkFreeDescriptorSets*(device: VkDevice, descriptorPool: VkDescriptorPool, descriptorSetCount: uint32, pDescriptorSets: ptr VkDescriptorSet): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkUpdateDescriptorSets*(device: VkDevice, descriptorWriteCount: uint32, pDescriptorWrites: ptr VkWriteDescriptorSet, descriptorCopyCount: uint32, pDescriptorCopies: ptr VkCopyDescriptorSet): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateFramebuffer*(device: VkDevice, pCreateInfo: ptr VkFramebufferCreateInfo, pAllocator: ptr VkAllocationCallbacks, pFramebuffer: ptr VkFramebuffer): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyFramebuffer*(device: VkDevice, framebuffer: VkFramebuffer, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateRenderPass*(device: VkDevice, pCreateInfo: ptr VkRenderPassCreateInfo, pAllocator: ptr VkAllocationCallbacks, pRenderPass: ptr VkRenderPass): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyRenderPass*(device: VkDevice, renderPass: VkRenderPass, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetRenderAreaGranularity*(device: VkDevice, renderPass: VkRenderPass, pGranularity: ptr VkExtent2D): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetRenderingAreaGranularityKHR*(device: VkDevice, pRenderingAreaInfo: ptr VkRenderingAreaInfoKHR, pGranularity: ptr VkExtent2D): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateCommandPool*(device: VkDevice, pCreateInfo: ptr VkCommandPoolCreateInfo, pAllocator: ptr VkAllocationCallbacks, pCommandPool: ptr VkCommandPool): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyCommandPool*(device: VkDevice, commandPool: VkCommandPool, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} proc vkResetCommandPool*(device: VkDevice, commandPool: VkCommandPool, flags: VkCommandPoolResetFlags): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkAllocateCommandBuffers*(device: VkDevice, pAllocateInfo: ptr VkCommandBufferAllocateInfo , pCommandBuffers: ptr VkCommandBuffer ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkFreeCommandBuffers*(device: VkDevice, commandPool: VkCommandPool, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkBeginCommandBuffer*(commandBuffer: VkCommandBuffer, pBeginInfo: ptr VkCommandBufferBeginInfo ): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkAllocateCommandBuffers*(device: VkDevice, pAllocateInfo: ptr VkCommandBufferAllocateInfo, pCommandBuffers: ptr VkCommandBuffer): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkFreeCommandBuffers*(device: VkDevice, commandPool: VkCommandPool, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer): void {.cdecl, importc, dynlib: vkDLL.} +proc vkBeginCommandBuffer*(commandBuffer: VkCommandBuffer, pBeginInfo: ptr VkCommandBufferBeginInfo): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkEndCommandBuffer*(commandBuffer: VkCommandBuffer): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkResetCommandBuffer*(commandBuffer: VkCommandBuffer, flags: VkCommandBufferResetFlags): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkCmdBindPipeline*(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetViewport*(commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewports: ptr VkViewport ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetScissor*(commandBuffer: VkCommandBuffer, firstScissor: uint32, scissorCount: uint32, pScissors: ptr VkRect2D ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetAttachmentFeedbackLoopEnableEXT*(commandBuffer: VkCommandBuffer, aspectMask: VkImageAspectFlags): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetViewport*(commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewports: ptr VkViewport): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetScissor*(commandBuffer: VkCommandBuffer, firstScissor: uint32, scissorCount: uint32, pScissors: ptr VkRect2D): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetLineWidth*(commandBuffer: VkCommandBuffer, lineWidth: float32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetDepthBias*(commandBuffer: VkCommandBuffer, depthBiasConstantFactor: float32, depthBiasClamp: float32, depthBiasSlopeFactor: float32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetBlendConstants*(commandBuffer: VkCommandBuffer, blendConstants: array[4, float32]): void {.cdecl, importc, dynlib: vkDLL.} @@ -16635,13 +14787,13 @@ proc vkCmdSetDepthBounds*(commandBuffer: VkCommandBuffer, minDepthBounds: float3 proc vkCmdSetStencilCompareMask*(commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, compareMask: uint32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetStencilWriteMask*(commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, writeMask: uint32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetStencilReference*(commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, reference: uint32): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdBindDescriptorSets*(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, firstSet: uint32, descriptorSetCount: uint32, pDescriptorSets: ptr VkDescriptorSet , dynamicOffsetCount: uint32, pDynamicOffsets: ptr uint32 ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdBindDescriptorSets*(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, firstSet: uint32, descriptorSetCount: uint32, pDescriptorSets: ptr VkDescriptorSet, dynamicOffsetCount: uint32, pDynamicOffsets: ptr uint32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdBindIndexBuffer*(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, indexType: VkIndexType): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdBindVertexBuffers*(commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer , pOffsets: ptr VkDeviceSize ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdBindVertexBuffers*(commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdDraw*(commandBuffer: VkCommandBuffer, vertexCount: uint32, instanceCount: uint32, firstVertex: uint32, firstInstance: uint32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdDrawIndexed*(commandBuffer: VkCommandBuffer, indexCount: uint32, instanceCount: uint32, firstIndex: uint32, vertexOffset: int32, firstInstance: uint32): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdDrawMultiEXT*(commandBuffer: VkCommandBuffer, drawCount: uint32, pVertexInfo: ptr VkMultiDrawInfoEXT , instanceCount: uint32, firstInstance: uint32, stride: uint32): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdDrawMultiIndexedEXT*(commandBuffer: VkCommandBuffer, drawCount: uint32, pIndexInfo: ptr VkMultiDrawIndexedInfoEXT , instanceCount: uint32, firstInstance: uint32, stride: uint32, pVertexOffset: ptr int32 ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdDrawMultiEXT*(commandBuffer: VkCommandBuffer, drawCount: uint32, pVertexInfo: ptr VkMultiDrawInfoEXT, instanceCount: uint32, firstInstance: uint32, stride: uint32): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdDrawMultiIndexedEXT*(commandBuffer: VkCommandBuffer, drawCount: uint32, pIndexInfo: ptr VkMultiDrawIndexedInfoEXT, instanceCount: uint32, firstInstance: uint32, stride: uint32, pVertexOffset: ptr int32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdDrawIndirect*(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdDrawIndexedIndirect*(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdDispatch*(commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.cdecl, importc, dynlib: vkDLL.} @@ -16649,228 +14801,229 @@ proc vkCmdDispatchIndirect*(commandBuffer: VkCommandBuffer, buffer: VkBuffer, of proc vkCmdSubpassShadingHUAWEI*(commandBuffer: VkCommandBuffer): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdDrawClusterHUAWEI*(commandBuffer: VkCommandBuffer, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdDrawClusterIndirectHUAWEI*(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdCopyBuffer*(commandBuffer: VkCommandBuffer, srcBuffer: VkBuffer, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferCopy ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdCopyImage*(commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageCopy ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdBlitImage*(commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageBlit , filter: VkFilter): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdCopyBufferToImage*(commandBuffer: VkCommandBuffer, srcBuffer: VkBuffer, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkBufferImageCopy ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdCopyImageToBuffer*(commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferImageCopy ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdUpdatePipelineIndirectBufferNV*(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdCopyBuffer*(commandBuffer: VkCommandBuffer, srcBuffer: VkBuffer, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferCopy): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdCopyImage*(commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageCopy): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdBlitImage*(commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageBlit, filter: VkFilter): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdCopyBufferToImage*(commandBuffer: VkCommandBuffer, srcBuffer: VkBuffer, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkBufferImageCopy): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdCopyImageToBuffer*(commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstBuffer: VkBuffer, regionCount: uint32, pRegions: ptr VkBufferImageCopy): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdCopyMemoryIndirectNV*(commandBuffer: VkCommandBuffer, copyBufferAddress: VkDeviceAddress, copyCount: uint32, stride: uint32): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdCopyMemoryToImageIndirectNV*(commandBuffer: VkCommandBuffer, copyBufferAddress: VkDeviceAddress, copyCount: uint32, stride: uint32, dstImage: VkImage, dstImageLayout: VkImageLayout, pImageSubresources: ptr VkImageSubresourceLayers ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdUpdateBuffer*(commandBuffer: VkCommandBuffer, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, dataSize: VkDeviceSize, pData: pointer ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdCopyMemoryToImageIndirectNV*(commandBuffer: VkCommandBuffer, copyBufferAddress: VkDeviceAddress, copyCount: uint32, stride: uint32, dstImage: VkImage, dstImageLayout: VkImageLayout, pImageSubresources: ptr VkImageSubresourceLayers): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdUpdateBuffer*(commandBuffer: VkCommandBuffer, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, dataSize: VkDeviceSize, pData: pointer): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdFillBuffer*(commandBuffer: VkCommandBuffer, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, size: VkDeviceSize, data: uint32): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdClearColorImage*(commandBuffer: VkCommandBuffer, image: VkImage, imageLayout: VkImageLayout, pColor: ptr VkClearColorValue , rangeCount: uint32, pRanges: ptr VkImageSubresourceRange ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdClearDepthStencilImage*(commandBuffer: VkCommandBuffer, image: VkImage, imageLayout: VkImageLayout, pDepthStencil: ptr VkClearDepthStencilValue , rangeCount: uint32, pRanges: ptr VkImageSubresourceRange ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdClearAttachments*(commandBuffer: VkCommandBuffer, attachmentCount: uint32, pAttachments: ptr VkClearAttachment , rectCount: uint32, pRects: ptr VkClearRect ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdResolveImage*(commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageResolve ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdClearColorImage*(commandBuffer: VkCommandBuffer, image: VkImage, imageLayout: VkImageLayout, pColor: ptr VkClearColorValue, rangeCount: uint32, pRanges: ptr VkImageSubresourceRange): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdClearDepthStencilImage*(commandBuffer: VkCommandBuffer, image: VkImage, imageLayout: VkImageLayout, pDepthStencil: ptr VkClearDepthStencilValue, rangeCount: uint32, pRanges: ptr VkImageSubresourceRange): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdClearAttachments*(commandBuffer: VkCommandBuffer, attachmentCount: uint32, pAttachments: ptr VkClearAttachment, rectCount: uint32, pRects: ptr VkClearRect): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdResolveImage*(commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: uint32, pRegions: ptr VkImageResolve): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetEvent*(commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdResetEvent*(commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdWaitEvents*(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 {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdPipelineBarrier*(commandBuffer: VkCommandBuffer, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, dependencyFlags: VkDependencyFlags, memoryBarrierCount: uint32, pMemoryBarriers: ptr VkMemoryBarrier , bufferMemoryBarrierCount: uint32, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier , imageMemoryBarrierCount: uint32, pImageMemoryBarriers: ptr VkImageMemoryBarrier ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdWaitEvents*(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 {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdPipelineBarrier*(commandBuffer: VkCommandBuffer, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, dependencyFlags: VkDependencyFlags, memoryBarrierCount: uint32, pMemoryBarriers: ptr VkMemoryBarrier, bufferMemoryBarrierCount: uint32, pBufferMemoryBarriers: ptr VkBufferMemoryBarrier, imageMemoryBarrierCount: uint32, pImageMemoryBarriers: ptr VkImageMemoryBarrier): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdBeginQuery*(commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, flags: VkQueryControlFlags): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdEndQuery*(commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdBeginConditionalRenderingEXT*(commandBuffer: VkCommandBuffer, pConditionalRenderingBegin: ptr VkConditionalRenderingBeginInfoEXT ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdBeginConditionalRenderingEXT*(commandBuffer: VkCommandBuffer, pConditionalRenderingBegin: ptr VkConditionalRenderingBeginInfoEXT): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdEndConditionalRenderingEXT*(commandBuffer: VkCommandBuffer): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdResetQueryPool*(commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdWriteTimestamp*(commandBuffer: VkCommandBuffer, pipelineStage: VkPipelineStageFlagBits, queryPool: VkQueryPool, query: uint32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdCopyQueryPoolResults*(commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, firstQuery: uint32, queryCount: uint32, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, stride: VkDeviceSize, flags: VkQueryResultFlags): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdPushConstants*(commandBuffer: VkCommandBuffer, layout: VkPipelineLayout, stageFlags: VkShaderStageFlags, offset: uint32, size: uint32, pValues: pointer ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdBeginRenderPass*(commandBuffer: VkCommandBuffer, pRenderPassBegin: ptr VkRenderPassBeginInfo , contents: VkSubpassContents): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdPushConstants*(commandBuffer: VkCommandBuffer, layout: VkPipelineLayout, stageFlags: VkShaderStageFlags, offset: uint32, size: uint32, pValues: pointer): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdBeginRenderPass*(commandBuffer: VkCommandBuffer, pRenderPassBegin: ptr VkRenderPassBeginInfo, contents: VkSubpassContents): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdNextSubpass*(commandBuffer: VkCommandBuffer, contents: VkSubpassContents): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdEndRenderPass*(commandBuffer: VkCommandBuffer): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdExecuteCommands*(commandBuffer: VkCommandBuffer, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateAndroidSurfaceKHR*(instance: VkInstance, pCreateInfo: ptr VkAndroidSurfaceCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceDisplayPropertiesKHR*(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkDisplayPropertiesKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceDisplayPlanePropertiesKHR*(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkDisplayPlanePropertiesKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDisplayPlaneSupportedDisplaysKHR*(physicalDevice: VkPhysicalDevice, planeIndex: uint32, pDisplayCount: ptr uint32 , pDisplays: ptr VkDisplayKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDisplayModePropertiesKHR*(physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pPropertyCount: ptr uint32 , pProperties: ptr VkDisplayModePropertiesKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateDisplayModeKHR*(physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pCreateInfo: ptr VkDisplayModeCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pMode: ptr VkDisplayModeKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDisplayPlaneCapabilitiesKHR*(physicalDevice: VkPhysicalDevice, mode: VkDisplayModeKHR, planeIndex: uint32, pCapabilities: ptr VkDisplayPlaneCapabilitiesKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateDisplayPlaneSurfaceKHR*(instance: VkInstance, pCreateInfo: ptr VkDisplaySurfaceCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateSharedSwapchainsKHR*(device: VkDevice, swapchainCount: uint32, pCreateInfos: ptr VkSwapchainCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSwapchains: ptr VkSwapchainKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroySurfaceKHR*(instance: VkInstance, surface: VkSurfaceKHR, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceSurfaceSupportKHR*(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, surface: VkSurfaceKHR, pSupported: ptr VkBool32 ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceSurfaceCapabilitiesKHR*(physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceCapabilities: ptr VkSurfaceCapabilitiesKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceSurfaceFormatsKHR*(physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceFormatCount: ptr uint32 , pSurfaceFormats: ptr VkSurfaceFormatKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceSurfacePresentModesKHR*(physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pPresentModeCount: ptr uint32 , pPresentModes: ptr VkPresentModeKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateSwapchainKHR*(device: VkDevice, pCreateInfo: ptr VkSwapchainCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSwapchain: ptr VkSwapchainKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroySwapchainKHR*(device: VkDevice, swapchain: VkSwapchainKHR, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetSwapchainImagesKHR*(device: VkDevice, swapchain: VkSwapchainKHR, pSwapchainImageCount: ptr uint32 , pSwapchainImages: ptr VkImage ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkAcquireNextImageKHR*(device: VkDevice, swapchain: VkSwapchainKHR, timeout: uint64, semaphore: VkSemaphore, fence: VkFence, pImageIndex: ptr uint32 ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkQueuePresentKHR*(queue: VkQueue, pPresentInfo: ptr VkPresentInfoKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateViSurfaceNN*(instance: VkInstance, pCreateInfo: ptr VkViSurfaceCreateInfoNN , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateWaylandSurfaceKHR*(instance: VkInstance, pCreateInfo: ptr VkWaylandSurfaceCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceWaylandPresentationSupportKHR*(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, display: ptr wl_display ): VkBool32 {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateWin32SurfaceKHR*(instance: VkInstance, pCreateInfo: ptr VkWin32SurfaceCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdExecuteCommands*(commandBuffer: VkCommandBuffer, commandBufferCount: uint32, pCommandBuffers: ptr VkCommandBuffer): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateAndroidSurfaceKHR*(instance: VkInstance, pCreateInfo: ptr VkAndroidSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceDisplayPropertiesKHR*(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayPropertiesKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceDisplayPlanePropertiesKHR*(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayPlanePropertiesKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDisplayPlaneSupportedDisplaysKHR*(physicalDevice: VkPhysicalDevice, planeIndex: uint32, pDisplayCount: ptr uint32, pDisplays: ptr VkDisplayKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDisplayModePropertiesKHR*(physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayModePropertiesKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateDisplayModeKHR*(physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pCreateInfo: ptr VkDisplayModeCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pMode: ptr VkDisplayModeKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDisplayPlaneCapabilitiesKHR*(physicalDevice: VkPhysicalDevice, mode: VkDisplayModeKHR, planeIndex: uint32, pCapabilities: ptr VkDisplayPlaneCapabilitiesKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateDisplayPlaneSurfaceKHR*(instance: VkInstance, pCreateInfo: ptr VkDisplaySurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateSharedSwapchainsKHR*(device: VkDevice, swapchainCount: uint32, pCreateInfos: ptr VkSwapchainCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSwapchains: ptr VkSwapchainKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroySurfaceKHR*(instance: VkInstance, surface: VkSurfaceKHR, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceSurfaceSupportKHR*(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, surface: VkSurfaceKHR, pSupported: ptr VkBool32): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceSurfaceCapabilitiesKHR*(physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceCapabilities: ptr VkSurfaceCapabilitiesKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceSurfaceFormatsKHR*(physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceFormatCount: ptr uint32, pSurfaceFormats: ptr VkSurfaceFormatKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceSurfacePresentModesKHR*(physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pPresentModeCount: ptr uint32, pPresentModes: ptr VkPresentModeKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateSwapchainKHR*(device: VkDevice, pCreateInfo: ptr VkSwapchainCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSwapchain: ptr VkSwapchainKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroySwapchainKHR*(device: VkDevice, swapchain: VkSwapchainKHR, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetSwapchainImagesKHR*(device: VkDevice, swapchain: VkSwapchainKHR, pSwapchainImageCount: ptr uint32, pSwapchainImages: ptr VkImage): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkAcquireNextImageKHR*(device: VkDevice, swapchain: VkSwapchainKHR, timeout: uint64, semaphore: VkSemaphore, fence: VkFence, pImageIndex: ptr uint32): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkQueuePresentKHR*(queue: VkQueue, pPresentInfo: ptr VkPresentInfoKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateViSurfaceNN*(instance: VkInstance, pCreateInfo: ptr VkViSurfaceCreateInfoNN, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateWaylandSurfaceKHR*(instance: VkInstance, pCreateInfo: ptr VkWaylandSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceWaylandPresentationSupportKHR*(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, display: ptr wl_display): VkBool32 {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateWin32SurfaceKHR*(instance: VkInstance, pCreateInfo: ptr VkWin32SurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkGetPhysicalDeviceWin32PresentationSupportKHR*(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32): VkBool32 {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateXlibSurfaceKHR*(instance: VkInstance, pCreateInfo: ptr VkXlibSurfaceCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceXlibPresentationSupportKHR*(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, dpy: ptr Display , visualID: VisualID): VkBool32 {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateXcbSurfaceKHR*(instance: VkInstance, pCreateInfo: ptr VkXcbSurfaceCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceXcbPresentationSupportKHR*(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, connection: ptr xcb_connection_t , visual_id: xcb_visualid_t): VkBool32 {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateDirectFBSurfaceEXT*(instance: VkInstance, pCreateInfo: ptr VkDirectFBSurfaceCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceDirectFBPresentationSupportEXT*(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, dfb: ptr IDirectFB ): VkBool32 {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateImagePipeSurfaceFUCHSIA*(instance: VkInstance, pCreateInfo: ptr VkImagePipeSurfaceCreateInfoFUCHSIA , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateStreamDescriptorSurfaceGGP*(instance: VkInstance, pCreateInfo: ptr VkStreamDescriptorSurfaceCreateInfoGGP , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateScreenSurfaceQNX*(instance: VkInstance, pCreateInfo: ptr VkScreenSurfaceCreateInfoQNX , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceScreenPresentationSupportQNX*(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, window: ptr screen_window ): VkBool32 {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateDebugReportCallbackEXT*(instance: VkInstance, pCreateInfo: ptr VkDebugReportCallbackCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pCallback: ptr VkDebugReportCallbackEXT ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyDebugReportCallbackEXT*(instance: VkInstance, callback: VkDebugReportCallbackEXT, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkDebugReportMessageEXT*(instance: VkInstance, flags: VkDebugReportFlagsEXT, objectType: VkDebugReportObjectTypeEXT, `object`: uint64, location: uint, messageCode: int32, pLayerPrefix: cstring , pMessage: cstring ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkDebugMarkerSetObjectNameEXT*(device: VkDevice, pNameInfo: ptr VkDebugMarkerObjectNameInfoEXT ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDebugMarkerSetObjectTagEXT*(device: VkDevice, pTagInfo: ptr VkDebugMarkerObjectTagInfoEXT ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdDebugMarkerBeginEXT*(commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateXlibSurfaceKHR*(instance: VkInstance, pCreateInfo: ptr VkXlibSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceXlibPresentationSupportKHR*(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, dpy: ptr Display, visualID: VisualID): VkBool32 {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateXcbSurfaceKHR*(instance: VkInstance, pCreateInfo: ptr VkXcbSurfaceCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceXcbPresentationSupportKHR*(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, connection: ptr xcb_connection_t, visual_id: xcb_visualid_t): VkBool32 {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateDirectFBSurfaceEXT*(instance: VkInstance, pCreateInfo: ptr VkDirectFBSurfaceCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceDirectFBPresentationSupportEXT*(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, dfb: ptr IDirectFB): VkBool32 {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateImagePipeSurfaceFUCHSIA*(instance: VkInstance, pCreateInfo: ptr VkImagePipeSurfaceCreateInfoFUCHSIA, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateStreamDescriptorSurfaceGGP*(instance: VkInstance, pCreateInfo: ptr VkStreamDescriptorSurfaceCreateInfoGGP, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateScreenSurfaceQNX*(instance: VkInstance, pCreateInfo: ptr VkScreenSurfaceCreateInfoQNX, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceScreenPresentationSupportQNX*(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, window: ptr screen_window): VkBool32 {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateDebugReportCallbackEXT*(instance: VkInstance, pCreateInfo: ptr VkDebugReportCallbackCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pCallback: ptr VkDebugReportCallbackEXT): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyDebugReportCallbackEXT*(instance: VkInstance, callback: VkDebugReportCallbackEXT, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkDebugReportMessageEXT*(instance: VkInstance, flags: VkDebugReportFlagsEXT, objectType: VkDebugReportObjectTypeEXT, `object`: uint64, location: uint, messageCode: int32, pLayerPrefix: cstring, pMessage: cstring): void {.cdecl, importc, dynlib: vkDLL.} +proc vkDebugMarkerSetObjectNameEXT*(device: VkDevice, pNameInfo: ptr VkDebugMarkerObjectNameInfoEXT): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDebugMarkerSetObjectTagEXT*(device: VkDevice, pTagInfo: ptr VkDebugMarkerObjectTagInfoEXT): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdDebugMarkerBeginEXT*(commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdDebugMarkerEndEXT*(commandBuffer: VkCommandBuffer): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdDebugMarkerInsertEXT*(commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceExternalImageFormatPropertiesNV*(physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, tiling: VkImageTiling, usage: VkImageUsageFlags, flags: VkImageCreateFlags, externalHandleType: VkExternalMemoryHandleTypeFlagsNV, pExternalImageFormatProperties: ptr VkExternalImageFormatPropertiesNV ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetMemoryWin32HandleNV*(device: VkDevice, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagsNV, pHandle: ptr HANDLE ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdExecuteGeneratedCommandsNV*(commandBuffer: VkCommandBuffer, isPreprocessed: VkBool32, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdPreprocessGeneratedCommandsNV*(commandBuffer: VkCommandBuffer, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdDebugMarkerInsertEXT*(commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkDebugMarkerMarkerInfoEXT): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceExternalImageFormatPropertiesNV*(physicalDevice: VkPhysicalDevice, format: VkFormat, `type`: VkImageType, tiling: VkImageTiling, usage: VkImageUsageFlags, flags: VkImageCreateFlags, externalHandleType: VkExternalMemoryHandleTypeFlagsNV, pExternalImageFormatProperties: ptr VkExternalImageFormatPropertiesNV): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetMemoryWin32HandleNV*(device: VkDevice, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagsNV, pHandle: ptr HANDLE): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdExecuteGeneratedCommandsNV*(commandBuffer: VkCommandBuffer, isPreprocessed: VkBool32, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdPreprocessGeneratedCommandsNV*(commandBuffer: VkCommandBuffer, pGeneratedCommandsInfo: ptr VkGeneratedCommandsInfoNV): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdBindPipelineShaderGroupNV*(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline, groupIndex: uint32): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetGeneratedCommandsMemoryRequirementsNV*(device: VkDevice, pInfo: ptr VkGeneratedCommandsMemoryRequirementsInfoNV , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateIndirectCommandsLayoutNV*(device: VkDevice, pCreateInfo: ptr VkIndirectCommandsLayoutCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pIndirectCommandsLayout: ptr VkIndirectCommandsLayoutNV ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyIndirectCommandsLayoutNV*(device: VkDevice, indirectCommandsLayout: VkIndirectCommandsLayoutNV, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceFeatures2*(physicalDevice: VkPhysicalDevice, pFeatures: ptr VkPhysicalDeviceFeatures2 ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceProperties2*(physicalDevice: VkPhysicalDevice, pProperties: ptr VkPhysicalDeviceProperties2 ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceFormatProperties2*(physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: ptr VkFormatProperties2 ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceImageFormatProperties2*(physicalDevice: VkPhysicalDevice, pImageFormatInfo: ptr VkPhysicalDeviceImageFormatInfo2 , pImageFormatProperties: ptr VkImageFormatProperties2 ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceQueueFamilyProperties2*(physicalDevice: VkPhysicalDevice, pQueueFamilyPropertyCount: ptr uint32 , pQueueFamilyProperties: ptr VkQueueFamilyProperties2 ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceMemoryProperties2*(physicalDevice: VkPhysicalDevice, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties2 ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceSparseImageFormatProperties2*(physicalDevice: VkPhysicalDevice, pFormatInfo: ptr VkPhysicalDeviceSparseImageFormatInfo2 , pPropertyCount: ptr uint32 , pProperties: ptr VkSparseImageFormatProperties2 ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdPushDescriptorSetKHR*(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, set: uint32, descriptorWriteCount: uint32, pDescriptorWrites: ptr VkWriteDescriptorSet ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetGeneratedCommandsMemoryRequirementsNV*(device: VkDevice, pInfo: ptr VkGeneratedCommandsMemoryRequirementsInfoNV, pMemoryRequirements: ptr VkMemoryRequirements2): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateIndirectCommandsLayoutNV*(device: VkDevice, pCreateInfo: ptr VkIndirectCommandsLayoutCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pIndirectCommandsLayout: ptr VkIndirectCommandsLayoutNV): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyIndirectCommandsLayoutNV*(device: VkDevice, indirectCommandsLayout: VkIndirectCommandsLayoutNV, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceFeatures2*(physicalDevice: VkPhysicalDevice, pFeatures: ptr VkPhysicalDeviceFeatures2): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceProperties2*(physicalDevice: VkPhysicalDevice, pProperties: ptr VkPhysicalDeviceProperties2): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceFormatProperties2*(physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: ptr VkFormatProperties2): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceImageFormatProperties2*(physicalDevice: VkPhysicalDevice, pImageFormatInfo: ptr VkPhysicalDeviceImageFormatInfo2, pImageFormatProperties: ptr VkImageFormatProperties2): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceQueueFamilyProperties2*(physicalDevice: VkPhysicalDevice, pQueueFamilyPropertyCount: ptr uint32, pQueueFamilyProperties: ptr VkQueueFamilyProperties2): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceMemoryProperties2*(physicalDevice: VkPhysicalDevice, pMemoryProperties: ptr VkPhysicalDeviceMemoryProperties2): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceSparseImageFormatProperties2*(physicalDevice: VkPhysicalDevice, pFormatInfo: ptr VkPhysicalDeviceSparseImageFormatInfo2, pPropertyCount: ptr uint32, pProperties: ptr VkSparseImageFormatProperties2): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdPushDescriptorSetKHR*(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, set: uint32, descriptorWriteCount: uint32, pDescriptorWrites: ptr VkWriteDescriptorSet): void {.cdecl, importc, dynlib: vkDLL.} proc vkTrimCommandPool*(device: VkDevice, commandPool: VkCommandPool, flags: VkCommandPoolTrimFlags): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceExternalBufferProperties*(physicalDevice: VkPhysicalDevice, pExternalBufferInfo: ptr VkPhysicalDeviceExternalBufferInfo , pExternalBufferProperties: ptr VkExternalBufferProperties ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetMemoryWin32HandleKHR*(device: VkDevice, pGetWin32HandleInfo: ptr VkMemoryGetWin32HandleInfoKHR , pHandle: ptr HANDLE ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetMemoryWin32HandlePropertiesKHR*(device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, handle: HANDLE, pMemoryWin32HandleProperties: ptr VkMemoryWin32HandlePropertiesKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetMemoryFdKHR*(device: VkDevice, pGetFdInfo: ptr VkMemoryGetFdInfoKHR , pFd: ptr int ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetMemoryFdPropertiesKHR*(device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, fd: int, pMemoryFdProperties: ptr VkMemoryFdPropertiesKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetMemoryZirconHandleFUCHSIA*(device: VkDevice, pGetZirconHandleInfo: ptr VkMemoryGetZirconHandleInfoFUCHSIA , pZirconHandle: ptr zx_handle_t ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetMemoryZirconHandlePropertiesFUCHSIA*(device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, zirconHandle: zx_handle_t, pMemoryZirconHandleProperties: ptr VkMemoryZirconHandlePropertiesFUCHSIA ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetMemoryRemoteAddressNV*(device: VkDevice, pMemoryGetRemoteAddressInfo: ptr VkMemoryGetRemoteAddressInfoNV , pAddress: ptr VkRemoteAddressNV ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetMemorySciBufNV*(device: VkDevice, pGetSciBufInfo: ptr VkMemoryGetSciBufInfoNV , pHandle: ptr NvSciBufObj ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceExternalMemorySciBufPropertiesNV*(physicalDevice: VkPhysicalDevice, handleType: VkExternalMemoryHandleTypeFlagBits, handle: NvSciBufObj, pMemorySciBufProperties: ptr VkMemorySciBufPropertiesNV ): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceExternalBufferProperties*(physicalDevice: VkPhysicalDevice, pExternalBufferInfo: ptr VkPhysicalDeviceExternalBufferInfo, pExternalBufferProperties: ptr VkExternalBufferProperties): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetMemoryWin32HandleKHR*(device: VkDevice, pGetWin32HandleInfo: ptr VkMemoryGetWin32HandleInfoKHR, pHandle: ptr HANDLE): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetMemoryWin32HandlePropertiesKHR*(device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, handle: HANDLE, pMemoryWin32HandleProperties: ptr VkMemoryWin32HandlePropertiesKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetMemoryFdKHR*(device: VkDevice, pGetFdInfo: ptr VkMemoryGetFdInfoKHR, pFd: ptr int): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetMemoryFdPropertiesKHR*(device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, fd: int, pMemoryFdProperties: ptr VkMemoryFdPropertiesKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetMemoryZirconHandleFUCHSIA*(device: VkDevice, pGetZirconHandleInfo: ptr VkMemoryGetZirconHandleInfoFUCHSIA, pZirconHandle: ptr zx_handle_t): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetMemoryZirconHandlePropertiesFUCHSIA*(device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, zirconHandle: zx_handle_t, pMemoryZirconHandleProperties: ptr VkMemoryZirconHandlePropertiesFUCHSIA): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetMemoryRemoteAddressNV*(device: VkDevice, pMemoryGetRemoteAddressInfo: ptr VkMemoryGetRemoteAddressInfoNV, pAddress: ptr VkRemoteAddressNV): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetMemorySciBufNV*(device: VkDevice, pGetSciBufInfo: ptr VkMemoryGetSciBufInfoNV, pHandle: ptr NvSciBufObj): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceExternalMemorySciBufPropertiesNV*(physicalDevice: VkPhysicalDevice, handleType: VkExternalMemoryHandleTypeFlagBits, handle: NvSciBufObj, pMemorySciBufProperties: ptr VkMemorySciBufPropertiesNV): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkGetPhysicalDeviceSciBufAttributesNV*(physicalDevice: VkPhysicalDevice, pAttributes: NvSciBufAttrList): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceExternalSemaphoreProperties*(physicalDevice: VkPhysicalDevice, pExternalSemaphoreInfo: ptr VkPhysicalDeviceExternalSemaphoreInfo , pExternalSemaphoreProperties: ptr VkExternalSemaphoreProperties ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetSemaphoreWin32HandleKHR*(device: VkDevice, pGetWin32HandleInfo: ptr VkSemaphoreGetWin32HandleInfoKHR , pHandle: ptr HANDLE ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkImportSemaphoreWin32HandleKHR*(device: VkDevice, pImportSemaphoreWin32HandleInfo: ptr VkImportSemaphoreWin32HandleInfoKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetSemaphoreFdKHR*(device: VkDevice, pGetFdInfo: ptr VkSemaphoreGetFdInfoKHR , pFd: ptr int ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkImportSemaphoreFdKHR*(device: VkDevice, pImportSemaphoreFdInfo: ptr VkImportSemaphoreFdInfoKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetSemaphoreZirconHandleFUCHSIA*(device: VkDevice, pGetZirconHandleInfo: ptr VkSemaphoreGetZirconHandleInfoFUCHSIA , pZirconHandle: ptr zx_handle_t ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkImportSemaphoreZirconHandleFUCHSIA*(device: VkDevice, pImportSemaphoreZirconHandleInfo: ptr VkImportSemaphoreZirconHandleInfoFUCHSIA ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceExternalFenceProperties*(physicalDevice: VkPhysicalDevice, pExternalFenceInfo: ptr VkPhysicalDeviceExternalFenceInfo , pExternalFenceProperties: ptr VkExternalFenceProperties ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetFenceWin32HandleKHR*(device: VkDevice, pGetWin32HandleInfo: ptr VkFenceGetWin32HandleInfoKHR , pHandle: ptr HANDLE ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkImportFenceWin32HandleKHR*(device: VkDevice, pImportFenceWin32HandleInfo: ptr VkImportFenceWin32HandleInfoKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetFenceFdKHR*(device: VkDevice, pGetFdInfo: ptr VkFenceGetFdInfoKHR , pFd: ptr int ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkImportFenceFdKHR*(device: VkDevice, pImportFenceFdInfo: ptr VkImportFenceFdInfoKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetFenceSciSyncFenceNV*(device: VkDevice, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV , pHandle: pointer ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetFenceSciSyncObjNV*(device: VkDevice, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV , pHandle: pointer ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkImportFenceSciSyncFenceNV*(device: VkDevice, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkImportFenceSciSyncObjNV*(device: VkDevice, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetSemaphoreSciSyncObjNV*(device: VkDevice, pGetSciSyncInfo: ptr VkSemaphoreGetSciSyncInfoNV , pHandle: pointer ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkImportSemaphoreSciSyncObjNV*(device: VkDevice, pImportSemaphoreSciSyncInfo: ptr VkImportSemaphoreSciSyncInfoNV ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceSciSyncAttributesNV*(physicalDevice: VkPhysicalDevice, pSciSyncAttributesInfo: ptr VkSciSyncAttributesInfoNV , pAttributes: NvSciSyncAttrList): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateSemaphoreSciSyncPoolNV*(device: VkDevice, pCreateInfo: ptr VkSemaphoreSciSyncPoolCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pSemaphorePool: ptr VkSemaphoreSciSyncPoolNV ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroySemaphoreSciSyncPoolNV*(device: VkDevice, semaphorePool: VkSemaphoreSciSyncPoolNV, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceExternalSemaphoreProperties*(physicalDevice: VkPhysicalDevice, pExternalSemaphoreInfo: ptr VkPhysicalDeviceExternalSemaphoreInfo, pExternalSemaphoreProperties: ptr VkExternalSemaphoreProperties): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetSemaphoreWin32HandleKHR*(device: VkDevice, pGetWin32HandleInfo: ptr VkSemaphoreGetWin32HandleInfoKHR, pHandle: ptr HANDLE): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkImportSemaphoreWin32HandleKHR*(device: VkDevice, pImportSemaphoreWin32HandleInfo: ptr VkImportSemaphoreWin32HandleInfoKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetSemaphoreFdKHR*(device: VkDevice, pGetFdInfo: ptr VkSemaphoreGetFdInfoKHR, pFd: ptr int): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkImportSemaphoreFdKHR*(device: VkDevice, pImportSemaphoreFdInfo: ptr VkImportSemaphoreFdInfoKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetSemaphoreZirconHandleFUCHSIA*(device: VkDevice, pGetZirconHandleInfo: ptr VkSemaphoreGetZirconHandleInfoFUCHSIA, pZirconHandle: ptr zx_handle_t): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkImportSemaphoreZirconHandleFUCHSIA*(device: VkDevice, pImportSemaphoreZirconHandleInfo: ptr VkImportSemaphoreZirconHandleInfoFUCHSIA): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceExternalFenceProperties*(physicalDevice: VkPhysicalDevice, pExternalFenceInfo: ptr VkPhysicalDeviceExternalFenceInfo, pExternalFenceProperties: ptr VkExternalFenceProperties): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetFenceWin32HandleKHR*(device: VkDevice, pGetWin32HandleInfo: ptr VkFenceGetWin32HandleInfoKHR, pHandle: ptr HANDLE): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkImportFenceWin32HandleKHR*(device: VkDevice, pImportFenceWin32HandleInfo: ptr VkImportFenceWin32HandleInfoKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetFenceFdKHR*(device: VkDevice, pGetFdInfo: ptr VkFenceGetFdInfoKHR, pFd: ptr int): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkImportFenceFdKHR*(device: VkDevice, pImportFenceFdInfo: ptr VkImportFenceFdInfoKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetFenceSciSyncFenceNV*(device: VkDevice, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV, pHandle: pointer): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetFenceSciSyncObjNV*(device: VkDevice, pGetSciSyncHandleInfo: ptr VkFenceGetSciSyncInfoNV, pHandle: pointer): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkImportFenceSciSyncFenceNV*(device: VkDevice, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkImportFenceSciSyncObjNV*(device: VkDevice, pImportFenceSciSyncInfo: ptr VkImportFenceSciSyncInfoNV): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetSemaphoreSciSyncObjNV*(device: VkDevice, pGetSciSyncInfo: ptr VkSemaphoreGetSciSyncInfoNV, pHandle: pointer): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkImportSemaphoreSciSyncObjNV*(device: VkDevice, pImportSemaphoreSciSyncInfo: ptr VkImportSemaphoreSciSyncInfoNV): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceSciSyncAttributesNV*(physicalDevice: VkPhysicalDevice, pSciSyncAttributesInfo: ptr VkSciSyncAttributesInfoNV, pAttributes: NvSciSyncAttrList): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateSemaphoreSciSyncPoolNV*(device: VkDevice, pCreateInfo: ptr VkSemaphoreSciSyncPoolCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pSemaphorePool: ptr VkSemaphoreSciSyncPoolNV): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroySemaphoreSciSyncPoolNV*(device: VkDevice, semaphorePool: VkSemaphoreSciSyncPoolNV, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} proc vkReleaseDisplayEXT*(physicalDevice: VkPhysicalDevice, display: VkDisplayKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkAcquireXlibDisplayEXT*(physicalDevice: VkPhysicalDevice, dpy: ptr Display , display: VkDisplayKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetRandROutputDisplayEXT*(physicalDevice: VkPhysicalDevice, dpy: ptr Display , rrOutput: RROutput, pDisplay: ptr VkDisplayKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkAcquireXlibDisplayEXT*(physicalDevice: VkPhysicalDevice, dpy: ptr Display, display: VkDisplayKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetRandROutputDisplayEXT*(physicalDevice: VkPhysicalDevice, dpy: ptr Display, rrOutput: RROutput, pDisplay: ptr VkDisplayKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkAcquireWinrtDisplayNV*(physicalDevice: VkPhysicalDevice, display: VkDisplayKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetWinrtDisplayNV*(physicalDevice: VkPhysicalDevice, deviceRelativeId: uint32, pDisplay: ptr VkDisplayKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDisplayPowerControlEXT*(device: VkDevice, display: VkDisplayKHR, pDisplayPowerInfo: ptr VkDisplayPowerInfoEXT ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkRegisterDeviceEventEXT*(device: VkDevice, pDeviceEventInfo: ptr VkDeviceEventInfoEXT , pAllocator: ptr VkAllocationCallbacks , pFence: ptr VkFence ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkRegisterDisplayEventEXT*(device: VkDevice, display: VkDisplayKHR, pDisplayEventInfo: ptr VkDisplayEventInfoEXT , pAllocator: ptr VkAllocationCallbacks , pFence: ptr VkFence ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetSwapchainCounterEXT*(device: VkDevice, swapchain: VkSwapchainKHR, counter: VkSurfaceCounterFlagBitsEXT, pCounterValue: ptr uint64 ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceSurfaceCapabilities2EXT*(physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceCapabilities: ptr VkSurfaceCapabilities2EXT ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkEnumeratePhysicalDeviceGroups*(instance: VkInstance, pPhysicalDeviceGroupCount: ptr uint32 , pPhysicalDeviceGroupProperties: ptr VkPhysicalDeviceGroupProperties ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDeviceGroupPeerMemoryFeatures*(device: VkDevice, heapIndex: uint32, localDeviceIndex: uint32, remoteDeviceIndex: uint32, pPeerMemoryFeatures: ptr VkPeerMemoryFeatureFlags ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkBindBufferMemory2*(device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindBufferMemoryInfo ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkBindImageMemory2*(device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindImageMemoryInfo ): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetWinrtDisplayNV*(physicalDevice: VkPhysicalDevice, deviceRelativeId: uint32, pDisplay: ptr VkDisplayKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDisplayPowerControlEXT*(device: VkDevice, display: VkDisplayKHR, pDisplayPowerInfo: ptr VkDisplayPowerInfoEXT): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkRegisterDeviceEventEXT*(device: VkDevice, pDeviceEventInfo: ptr VkDeviceEventInfoEXT, pAllocator: ptr VkAllocationCallbacks, pFence: ptr VkFence): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkRegisterDisplayEventEXT*(device: VkDevice, display: VkDisplayKHR, pDisplayEventInfo: ptr VkDisplayEventInfoEXT, pAllocator: ptr VkAllocationCallbacks, pFence: ptr VkFence): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetSwapchainCounterEXT*(device: VkDevice, swapchain: VkSwapchainKHR, counter: VkSurfaceCounterFlagBitsEXT, pCounterValue: ptr uint64): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceSurfaceCapabilities2EXT*(physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceCapabilities: ptr VkSurfaceCapabilities2EXT): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkEnumeratePhysicalDeviceGroups*(instance: VkInstance, pPhysicalDeviceGroupCount: ptr uint32, pPhysicalDeviceGroupProperties: ptr VkPhysicalDeviceGroupProperties): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDeviceGroupPeerMemoryFeatures*(device: VkDevice, heapIndex: uint32, localDeviceIndex: uint32, remoteDeviceIndex: uint32, pPeerMemoryFeatures: ptr VkPeerMemoryFeatureFlags): void {.cdecl, importc, dynlib: vkDLL.} +proc vkBindBufferMemory2*(device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindBufferMemoryInfo): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkBindImageMemory2*(device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindImageMemoryInfo): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetDeviceMask*(commandBuffer: VkCommandBuffer, deviceMask: uint32): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDeviceGroupPresentCapabilitiesKHR*(device: VkDevice, pDeviceGroupPresentCapabilities: ptr VkDeviceGroupPresentCapabilitiesKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDeviceGroupSurfacePresentModesKHR*(device: VkDevice, surface: VkSurfaceKHR, pModes: ptr VkDeviceGroupPresentModeFlagsKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkAcquireNextImage2KHR*(device: VkDevice, pAcquireInfo: ptr VkAcquireNextImageInfoKHR , pImageIndex: ptr uint32 ): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDeviceGroupPresentCapabilitiesKHR*(device: VkDevice, pDeviceGroupPresentCapabilities: ptr VkDeviceGroupPresentCapabilitiesKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDeviceGroupSurfacePresentModesKHR*(device: VkDevice, surface: VkSurfaceKHR, pModes: ptr VkDeviceGroupPresentModeFlagsKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkAcquireNextImage2KHR*(device: VkDevice, pAcquireInfo: ptr VkAcquireNextImageInfoKHR, pImageIndex: ptr uint32): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkCmdDispatchBase*(commandBuffer: VkCommandBuffer, baseGroupX: uint32, baseGroupY: uint32, baseGroupZ: uint32, groupCountX: uint32, groupCountY: uint32, groupCountZ: uint32): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDevicePresentRectanglesKHR*(physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pRectCount: ptr uint32 , pRects: ptr VkRect2D ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateDescriptorUpdateTemplate*(device: VkDevice, pCreateInfo: ptr VkDescriptorUpdateTemplateCreateInfo , pAllocator: ptr VkAllocationCallbacks , pDescriptorUpdateTemplate: ptr VkDescriptorUpdateTemplate ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyDescriptorUpdateTemplate*(device: VkDevice, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkUpdateDescriptorSetWithTemplate*(device: VkDevice, descriptorSet: VkDescriptorSet, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pData: pointer ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdPushDescriptorSetWithTemplateKHR*(commandBuffer: VkCommandBuffer, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: uint32, pData: pointer ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkSetHdrMetadataEXT*(device: VkDevice, swapchainCount: uint32, pSwapchains: ptr VkSwapchainKHR , pMetadata: ptr VkHdrMetadataEXT ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDevicePresentRectanglesKHR*(physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pRectCount: ptr uint32, pRects: ptr VkRect2D): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateDescriptorUpdateTemplate*(device: VkDevice, pCreateInfo: ptr VkDescriptorUpdateTemplateCreateInfo, pAllocator: ptr VkAllocationCallbacks, pDescriptorUpdateTemplate: ptr VkDescriptorUpdateTemplate): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyDescriptorUpdateTemplate*(device: VkDevice, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkUpdateDescriptorSetWithTemplate*(device: VkDevice, descriptorSet: VkDescriptorSet, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pData: pointer): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdPushDescriptorSetWithTemplateKHR*(commandBuffer: VkCommandBuffer, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: uint32, pData: pointer): void {.cdecl, importc, dynlib: vkDLL.} +proc vkSetHdrMetadataEXT*(device: VkDevice, swapchainCount: uint32, pSwapchains: ptr VkSwapchainKHR, pMetadata: ptr VkHdrMetadataEXT): void {.cdecl, importc, dynlib: vkDLL.} proc vkGetSwapchainStatusKHR*(device: VkDevice, swapchain: VkSwapchainKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetRefreshCycleDurationGOOGLE*(device: VkDevice, swapchain: VkSwapchainKHR, pDisplayTimingProperties: ptr VkRefreshCycleDurationGOOGLE ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPastPresentationTimingGOOGLE*(device: VkDevice, swapchain: VkSwapchainKHR, pPresentationTimingCount: ptr uint32 , pPresentationTimings: ptr VkPastPresentationTimingGOOGLE ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateIOSSurfaceMVK*(instance: VkInstance, pCreateInfo: ptr VkIOSSurfaceCreateInfoMVK , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateMacOSSurfaceMVK*(instance: VkInstance, pCreateInfo: ptr VkMacOSSurfaceCreateInfoMVK , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateMetalSurfaceEXT*(instance: VkInstance, pCreateInfo: ptr VkMetalSurfaceCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetViewportWScalingNV*(commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportWScalings: ptr VkViewportWScalingNV ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetDiscardRectangleEXT*(commandBuffer: VkCommandBuffer, firstDiscardRectangle: uint32, discardRectangleCount: uint32, pDiscardRectangles: ptr VkRect2D ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetRefreshCycleDurationGOOGLE*(device: VkDevice, swapchain: VkSwapchainKHR, pDisplayTimingProperties: ptr VkRefreshCycleDurationGOOGLE): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPastPresentationTimingGOOGLE*(device: VkDevice, swapchain: VkSwapchainKHR, pPresentationTimingCount: ptr uint32, pPresentationTimings: ptr VkPastPresentationTimingGOOGLE): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateIOSSurfaceMVK*(instance: VkInstance, pCreateInfo: ptr VkIOSSurfaceCreateInfoMVK, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateMacOSSurfaceMVK*(instance: VkInstance, pCreateInfo: ptr VkMacOSSurfaceCreateInfoMVK, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateMetalSurfaceEXT*(instance: VkInstance, pCreateInfo: ptr VkMetalSurfaceCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetViewportWScalingNV*(commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportWScalings: ptr VkViewportWScalingNV): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetDiscardRectangleEXT*(commandBuffer: VkCommandBuffer, firstDiscardRectangle: uint32, discardRectangleCount: uint32, pDiscardRectangles: ptr VkRect2D): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetDiscardRectangleEnableEXT*(commandBuffer: VkCommandBuffer, discardRectangleEnable: VkBool32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetDiscardRectangleModeEXT*(commandBuffer: VkCommandBuffer, discardRectangleMode: VkDiscardRectangleModeEXT): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetSampleLocationsEXT*(commandBuffer: VkCommandBuffer, pSampleLocationsInfo: ptr VkSampleLocationsInfoEXT ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceMultisamplePropertiesEXT*(physicalDevice: VkPhysicalDevice, samples: VkSampleCountFlagBits, pMultisampleProperties: ptr VkMultisamplePropertiesEXT ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceSurfaceCapabilities2KHR*(physicalDevice: VkPhysicalDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR , pSurfaceCapabilities: ptr VkSurfaceCapabilities2KHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceSurfaceFormats2KHR*(physicalDevice: VkPhysicalDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR , pSurfaceFormatCount: ptr uint32 , pSurfaceFormats: ptr VkSurfaceFormat2KHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceDisplayProperties2KHR*(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkDisplayProperties2KHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceDisplayPlaneProperties2KHR*(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkDisplayPlaneProperties2KHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDisplayModeProperties2KHR*(physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pPropertyCount: ptr uint32 , pProperties: ptr VkDisplayModeProperties2KHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDisplayPlaneCapabilities2KHR*(physicalDevice: VkPhysicalDevice, pDisplayPlaneInfo: ptr VkDisplayPlaneInfo2KHR , pCapabilities: ptr VkDisplayPlaneCapabilities2KHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetBufferMemoryRequirements2*(device: VkDevice, pInfo: ptr VkBufferMemoryRequirementsInfo2 , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetImageMemoryRequirements2*(device: VkDevice, pInfo: ptr VkImageMemoryRequirementsInfo2 , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetImageSparseMemoryRequirements2*(device: VkDevice, pInfo: ptr VkImageSparseMemoryRequirementsInfo2 , pSparseMemoryRequirementCount: ptr uint32 , pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2 ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDeviceBufferMemoryRequirements*(device: VkDevice, pInfo: ptr VkDeviceBufferMemoryRequirements , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDeviceImageMemoryRequirements*(device: VkDevice, pInfo: ptr VkDeviceImageMemoryRequirements , pMemoryRequirements: ptr VkMemoryRequirements2 ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDeviceImageSparseMemoryRequirements*(device: VkDevice, pInfo: ptr VkDeviceImageMemoryRequirements , pSparseMemoryRequirementCount: ptr uint32 , pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2 ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateSamplerYcbcrConversion*(device: VkDevice, pCreateInfo: ptr VkSamplerYcbcrConversionCreateInfo , pAllocator: ptr VkAllocationCallbacks , pYcbcrConversion: ptr VkSamplerYcbcrConversion ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroySamplerYcbcrConversion*(device: VkDevice, ycbcrConversion: VkSamplerYcbcrConversion, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDeviceQueue2*(device: VkDevice, pQueueInfo: ptr VkDeviceQueueInfo2 , pQueue: ptr VkQueue ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateValidationCacheEXT*(device: VkDevice, pCreateInfo: ptr VkValidationCacheCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pValidationCache: ptr VkValidationCacheEXT ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyValidationCacheEXT*(device: VkDevice, validationCache: VkValidationCacheEXT, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetValidationCacheDataEXT*(device: VkDevice, validationCache: VkValidationCacheEXT, pDataSize: ptr uint , pData: pointer ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkMergeValidationCachesEXT*(device: VkDevice, dstCache: VkValidationCacheEXT, srcCacheCount: uint32, pSrcCaches: ptr VkValidationCacheEXT ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDescriptorSetLayoutSupport*(device: VkDevice, pCreateInfo: ptr VkDescriptorSetLayoutCreateInfo , pSupport: ptr VkDescriptorSetLayoutSupport ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetSwapchainGrallocUsageANDROID*(device: VkDevice, format: VkFormat, imageUsage: VkImageUsageFlags, grallocUsage: ptr int ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetSwapchainGrallocUsage2ANDROID*(device: VkDevice, format: VkFormat, imageUsage: VkImageUsageFlags, swapchainImageUsage: VkSwapchainImageUsageFlagsANDROID, grallocConsumerUsage: ptr uint64 , grallocProducerUsage: ptr uint64 ): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetSampleLocationsEXT*(commandBuffer: VkCommandBuffer, pSampleLocationsInfo: ptr VkSampleLocationsInfoEXT): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceMultisamplePropertiesEXT*(physicalDevice: VkPhysicalDevice, samples: VkSampleCountFlagBits, pMultisampleProperties: ptr VkMultisamplePropertiesEXT): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceSurfaceCapabilities2KHR*(physicalDevice: VkPhysicalDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pSurfaceCapabilities: ptr VkSurfaceCapabilities2KHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceSurfaceFormats2KHR*(physicalDevice: VkPhysicalDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pSurfaceFormatCount: ptr uint32, pSurfaceFormats: ptr VkSurfaceFormat2KHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceDisplayProperties2KHR*(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayProperties2KHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceDisplayPlaneProperties2KHR*(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayPlaneProperties2KHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDisplayModeProperties2KHR*(physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pPropertyCount: ptr uint32, pProperties: ptr VkDisplayModeProperties2KHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDisplayPlaneCapabilities2KHR*(physicalDevice: VkPhysicalDevice, pDisplayPlaneInfo: ptr VkDisplayPlaneInfo2KHR, pCapabilities: ptr VkDisplayPlaneCapabilities2KHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetBufferMemoryRequirements2*(device: VkDevice, pInfo: ptr VkBufferMemoryRequirementsInfo2, pMemoryRequirements: ptr VkMemoryRequirements2): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetImageMemoryRequirements2*(device: VkDevice, pInfo: ptr VkImageMemoryRequirementsInfo2, pMemoryRequirements: ptr VkMemoryRequirements2): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetImageSparseMemoryRequirements2*(device: VkDevice, pInfo: ptr VkImageSparseMemoryRequirementsInfo2, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDeviceBufferMemoryRequirements*(device: VkDevice, pInfo: ptr VkDeviceBufferMemoryRequirements, pMemoryRequirements: ptr VkMemoryRequirements2): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDeviceImageMemoryRequirements*(device: VkDevice, pInfo: ptr VkDeviceImageMemoryRequirements, pMemoryRequirements: ptr VkMemoryRequirements2): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDeviceImageSparseMemoryRequirements*(device: VkDevice, pInfo: ptr VkDeviceImageMemoryRequirements, pSparseMemoryRequirementCount: ptr uint32, pSparseMemoryRequirements: ptr VkSparseImageMemoryRequirements2): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateSamplerYcbcrConversion*(device: VkDevice, pCreateInfo: ptr VkSamplerYcbcrConversionCreateInfo, pAllocator: ptr VkAllocationCallbacks, pYcbcrConversion: ptr VkSamplerYcbcrConversion): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroySamplerYcbcrConversion*(device: VkDevice, ycbcrConversion: VkSamplerYcbcrConversion, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDeviceQueue2*(device: VkDevice, pQueueInfo: ptr VkDeviceQueueInfo2, pQueue: ptr VkQueue): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateValidationCacheEXT*(device: VkDevice, pCreateInfo: ptr VkValidationCacheCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pValidationCache: ptr VkValidationCacheEXT): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyValidationCacheEXT*(device: VkDevice, validationCache: VkValidationCacheEXT, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetValidationCacheDataEXT*(device: VkDevice, validationCache: VkValidationCacheEXT, pDataSize: ptr uint, pData: pointer): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkMergeValidationCachesEXT*(device: VkDevice, dstCache: VkValidationCacheEXT, srcCacheCount: uint32, pSrcCaches: ptr VkValidationCacheEXT): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDescriptorSetLayoutSupport*(device: VkDevice, pCreateInfo: ptr VkDescriptorSetLayoutCreateInfo, pSupport: ptr VkDescriptorSetLayoutSupport): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetSwapchainGrallocUsageANDROID*(device: VkDevice, format: VkFormat, imageUsage: VkImageUsageFlags, grallocUsage: ptr int): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetSwapchainGrallocUsage2ANDROID*(device: VkDevice, format: VkFormat, imageUsage: VkImageUsageFlags, swapchainImageUsage: VkSwapchainImageUsageFlagsANDROID, grallocConsumerUsage: ptr uint64, grallocProducerUsage: ptr uint64): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkAcquireImageANDROID*(device: VkDevice, image: VkImage, nativeFenceFd: int, semaphore: VkSemaphore, fence: VkFence): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkQueueSignalReleaseImageANDROID*(queue: VkQueue, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore , image: VkImage, pNativeFenceFd: ptr int ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetShaderInfoAMD*(device: VkDevice, pipeline: VkPipeline, shaderStage: VkShaderStageFlagBits, infoType: VkShaderInfoTypeAMD, pInfoSize: ptr uint , pInfo: pointer ): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkQueueSignalReleaseImageANDROID*(queue: VkQueue, waitSemaphoreCount: uint32, pWaitSemaphores: ptr VkSemaphore, image: VkImage, pNativeFenceFd: ptr int): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetShaderInfoAMD*(device: VkDevice, pipeline: VkPipeline, shaderStage: VkShaderStageFlagBits, infoType: VkShaderInfoTypeAMD, pInfoSize: ptr uint, pInfo: pointer): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkSetLocalDimmingAMD*(device: VkDevice, swapChain: VkSwapchainKHR, localDimmingEnable: VkBool32): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceCalibrateableTimeDomainsEXT*(physicalDevice: VkPhysicalDevice, pTimeDomainCount: ptr uint32 , pTimeDomains: ptr VkTimeDomainEXT ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetCalibratedTimestampsEXT*(device: VkDevice, timestampCount: uint32, pTimestampInfos: ptr VkCalibratedTimestampInfoEXT , pTimestamps: ptr uint64 , pMaxDeviation: ptr uint64 ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkSetDebugUtilsObjectNameEXT*(device: VkDevice, pNameInfo: ptr VkDebugUtilsObjectNameInfoEXT ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkSetDebugUtilsObjectTagEXT*(device: VkDevice, pTagInfo: ptr VkDebugUtilsObjectTagInfoEXT ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkQueueBeginDebugUtilsLabelEXT*(queue: VkQueue, pLabelInfo: ptr VkDebugUtilsLabelEXT ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceCalibrateableTimeDomainsEXT*(physicalDevice: VkPhysicalDevice, pTimeDomainCount: ptr uint32, pTimeDomains: ptr VkTimeDomainEXT): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetCalibratedTimestampsEXT*(device: VkDevice, timestampCount: uint32, pTimestampInfos: ptr VkCalibratedTimestampInfoEXT, pTimestamps: ptr uint64, pMaxDeviation: ptr uint64): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkSetDebugUtilsObjectNameEXT*(device: VkDevice, pNameInfo: ptr VkDebugUtilsObjectNameInfoEXT): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkSetDebugUtilsObjectTagEXT*(device: VkDevice, pTagInfo: ptr VkDebugUtilsObjectTagInfoEXT): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkQueueBeginDebugUtilsLabelEXT*(queue: VkQueue, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.cdecl, importc, dynlib: vkDLL.} proc vkQueueEndDebugUtilsLabelEXT*(queue: VkQueue): void {.cdecl, importc, dynlib: vkDLL.} -proc vkQueueInsertDebugUtilsLabelEXT*(queue: VkQueue, pLabelInfo: ptr VkDebugUtilsLabelEXT ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdBeginDebugUtilsLabelEXT*(commandBuffer: VkCommandBuffer, pLabelInfo: ptr VkDebugUtilsLabelEXT ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkQueueInsertDebugUtilsLabelEXT*(queue: VkQueue, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdBeginDebugUtilsLabelEXT*(commandBuffer: VkCommandBuffer, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdEndDebugUtilsLabelEXT*(commandBuffer: VkCommandBuffer): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdInsertDebugUtilsLabelEXT*(commandBuffer: VkCommandBuffer, pLabelInfo: ptr VkDebugUtilsLabelEXT ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateDebugUtilsMessengerEXT*(instance: VkInstance, pCreateInfo: ptr VkDebugUtilsMessengerCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pMessenger: ptr VkDebugUtilsMessengerEXT ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyDebugUtilsMessengerEXT*(instance: VkInstance, messenger: VkDebugUtilsMessengerEXT, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkSubmitDebugUtilsMessageEXT*(instance: VkInstance, messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEXT, messageTypes: VkDebugUtilsMessageTypeFlagsEXT, pCallbackData: ptr VkDebugUtilsMessengerCallbackDataEXT ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetMemoryHostPointerPropertiesEXT*(device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, pHostPointer: pointer , pMemoryHostPointerProperties: ptr VkMemoryHostPointerPropertiesEXT ): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdInsertDebugUtilsLabelEXT*(commandBuffer: VkCommandBuffer, pLabelInfo: ptr VkDebugUtilsLabelEXT): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateDebugUtilsMessengerEXT*(instance: VkInstance, pCreateInfo: ptr VkDebugUtilsMessengerCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pMessenger: ptr VkDebugUtilsMessengerEXT): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyDebugUtilsMessengerEXT*(instance: VkInstance, messenger: VkDebugUtilsMessengerEXT, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkSubmitDebugUtilsMessageEXT*(instance: VkInstance, messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEXT, messageTypes: VkDebugUtilsMessageTypeFlagsEXT, pCallbackData: ptr VkDebugUtilsMessengerCallbackDataEXT): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetMemoryHostPointerPropertiesEXT*(device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, pHostPointer: pointer, pMemoryHostPointerProperties: ptr VkMemoryHostPointerPropertiesEXT): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkCmdWriteBufferMarkerAMD*(commandBuffer: VkCommandBuffer, pipelineStage: VkPipelineStageFlagBits, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, marker: uint32): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateRenderPass2*(device: VkDevice, pCreateInfo: ptr VkRenderPassCreateInfo2 , pAllocator: ptr VkAllocationCallbacks , pRenderPass: ptr VkRenderPass ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdBeginRenderPass2*(commandBuffer: VkCommandBuffer, pRenderPassBegin: ptr VkRenderPassBeginInfo , pSubpassBeginInfo: ptr VkSubpassBeginInfo ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdNextSubpass2*(commandBuffer: VkCommandBuffer, pSubpassBeginInfo: ptr VkSubpassBeginInfo , pSubpassEndInfo: ptr VkSubpassEndInfo ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdEndRenderPass2*(commandBuffer: VkCommandBuffer, pSubpassEndInfo: ptr VkSubpassEndInfo ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetSemaphoreCounterValue*(device: VkDevice, semaphore: VkSemaphore, pValue: ptr uint64 ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkWaitSemaphores*(device: VkDevice, pWaitInfo: ptr VkSemaphoreWaitInfo , timeout: uint64): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkSignalSemaphore*(device: VkDevice, pSignalInfo: ptr VkSemaphoreSignalInfo ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetAndroidHardwareBufferPropertiesANDROID*(device: VkDevice, buffer: ptr AHardwareBuffer , pProperties: ptr VkAndroidHardwareBufferPropertiesANDROID ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetMemoryAndroidHardwareBufferANDROID*(device: VkDevice, pInfo: ptr VkMemoryGetAndroidHardwareBufferInfoANDROID , pBuffer: ptr ptr AHardwareBuffer ): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateRenderPass2*(device: VkDevice, pCreateInfo: ptr VkRenderPassCreateInfo2, pAllocator: ptr VkAllocationCallbacks, pRenderPass: ptr VkRenderPass): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdBeginRenderPass2*(commandBuffer: VkCommandBuffer, pRenderPassBegin: ptr VkRenderPassBeginInfo, pSubpassBeginInfo: ptr VkSubpassBeginInfo): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdNextSubpass2*(commandBuffer: VkCommandBuffer, pSubpassBeginInfo: ptr VkSubpassBeginInfo, pSubpassEndInfo: ptr VkSubpassEndInfo): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdEndRenderPass2*(commandBuffer: VkCommandBuffer, pSubpassEndInfo: ptr VkSubpassEndInfo): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetSemaphoreCounterValue*(device: VkDevice, semaphore: VkSemaphore, pValue: ptr uint64): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkWaitSemaphores*(device: VkDevice, pWaitInfo: ptr VkSemaphoreWaitInfo, timeout: uint64): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkSignalSemaphore*(device: VkDevice, pSignalInfo: ptr VkSemaphoreSignalInfo): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetAndroidHardwareBufferPropertiesANDROID*(device: VkDevice, buffer: ptr AHardwareBuffer, pProperties: ptr VkAndroidHardwareBufferPropertiesANDROID): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetMemoryAndroidHardwareBufferANDROID*(device: VkDevice, pInfo: ptr VkMemoryGetAndroidHardwareBufferInfoANDROID, pBuffer: ptr ptr AHardwareBuffer): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkCmdDrawIndirectCount*(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdDrawIndexedIndirectCount*(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetCheckpointNV*(commandBuffer: VkCommandBuffer, pCheckpointMarker: pointer ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetQueueCheckpointDataNV*(queue: VkQueue, pCheckpointDataCount: ptr uint32 , pCheckpointData: ptr VkCheckpointDataNV ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdBindTransformFeedbackBuffersEXT*(commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer , pOffsets: ptr VkDeviceSize , pSizes: ptr VkDeviceSize ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdBeginTransformFeedbackEXT*(commandBuffer: VkCommandBuffer, firstCounterBuffer: uint32, counterBufferCount: uint32, pCounterBuffers: ptr VkBuffer , pCounterBufferOffsets: ptr VkDeviceSize ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdEndTransformFeedbackEXT*(commandBuffer: VkCommandBuffer, firstCounterBuffer: uint32, counterBufferCount: uint32, pCounterBuffers: ptr VkBuffer , pCounterBufferOffsets: ptr VkDeviceSize ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetCheckpointNV*(commandBuffer: VkCommandBuffer, pCheckpointMarker: pointer): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetQueueCheckpointDataNV*(queue: VkQueue, pCheckpointDataCount: ptr uint32, pCheckpointData: ptr VkCheckpointDataNV): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdBindTransformFeedbackBuffersEXT*(commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize, pSizes: ptr VkDeviceSize): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdBeginTransformFeedbackEXT*(commandBuffer: VkCommandBuffer, firstCounterBuffer: uint32, counterBufferCount: uint32, pCounterBuffers: ptr VkBuffer, pCounterBufferOffsets: ptr VkDeviceSize): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdEndTransformFeedbackEXT*(commandBuffer: VkCommandBuffer, firstCounterBuffer: uint32, counterBufferCount: uint32, pCounterBuffers: ptr VkBuffer, pCounterBufferOffsets: ptr VkDeviceSize): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdBeginQueryIndexedEXT*(commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, flags: VkQueryControlFlags, index: uint32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdEndQueryIndexedEXT*(commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: uint32, index: uint32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdDrawIndirectByteCountEXT*(commandBuffer: VkCommandBuffer, instanceCount: uint32, firstInstance: uint32, counterBuffer: VkBuffer, counterBufferOffset: VkDeviceSize, counterOffset: uint32, vertexStride: uint32): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetExclusiveScissorNV*(commandBuffer: VkCommandBuffer, firstExclusiveScissor: uint32, exclusiveScissorCount: uint32, pExclusiveScissors: ptr VkRect2D ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetExclusiveScissorEnableNV*(commandBuffer: VkCommandBuffer, firstExclusiveScissor: uint32, exclusiveScissorCount: uint32, pExclusiveScissorEnables: ptr VkBool32 ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetExclusiveScissorNV*(commandBuffer: VkCommandBuffer, firstExclusiveScissor: uint32, exclusiveScissorCount: uint32, pExclusiveScissors: ptr VkRect2D): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetExclusiveScissorEnableNV*(commandBuffer: VkCommandBuffer, firstExclusiveScissor: uint32, exclusiveScissorCount: uint32, pExclusiveScissorEnables: ptr VkBool32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdBindShadingRateImageNV*(commandBuffer: VkCommandBuffer, imageView: VkImageView, imageLayout: VkImageLayout): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetViewportShadingRatePaletteNV*(commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pShadingRatePalettes: ptr VkShadingRatePaletteNV ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetCoarseSampleOrderNV*(commandBuffer: VkCommandBuffer, sampleOrderType: VkCoarseSampleOrderTypeNV, customSampleOrderCount: uint32, pCustomSampleOrders: ptr VkCoarseSampleOrderCustomNV ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetViewportShadingRatePaletteNV*(commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pShadingRatePalettes: ptr VkShadingRatePaletteNV): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetCoarseSampleOrderNV*(commandBuffer: VkCommandBuffer, sampleOrderType: VkCoarseSampleOrderTypeNV, customSampleOrderCount: uint32, pCustomSampleOrders: ptr VkCoarseSampleOrderCustomNV): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdDrawMeshTasksNV*(commandBuffer: VkCommandBuffer, taskCount: uint32, firstTask: uint32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdDrawMeshTasksIndirectNV*(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdDrawMeshTasksIndirectCountNV*(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.cdecl, importc, dynlib: vkDLL.} @@ -16878,83 +15031,86 @@ proc vkCmdDrawMeshTasksEXT*(commandBuffer: VkCommandBuffer, groupCountX: uint32, proc vkCmdDrawMeshTasksIndirectEXT*(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: uint32, stride: uint32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdDrawMeshTasksIndirectCountEXT*(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: uint32, stride: uint32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCompileDeferredNV*(device: VkDevice, pipeline: VkPipeline, shader: uint32): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateAccelerationStructureNV*(device: VkDevice, pCreateInfo: ptr VkAccelerationStructureCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pAccelerationStructure: ptr VkAccelerationStructureNV ): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateAccelerationStructureNV*(device: VkDevice, pCreateInfo: ptr VkAccelerationStructureCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pAccelerationStructure: ptr VkAccelerationStructureNV): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkCmdBindInvocationMaskHUAWEI*(commandBuffer: VkCommandBuffer, imageView: VkImageView, imageLayout: VkImageLayout): void {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyAccelerationStructureKHR*(device: VkDevice, accelerationStructure: VkAccelerationStructureKHR, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyAccelerationStructureNV*(device: VkDevice, accelerationStructure: VkAccelerationStructureNV, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetAccelerationStructureMemoryRequirementsNV*(device: VkDevice, pInfo: ptr VkAccelerationStructureMemoryRequirementsInfoNV , pMemoryRequirements: ptr VkMemoryRequirements2KHR ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkBindAccelerationStructureMemoryNV*(device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindAccelerationStructureMemoryInfoNV ): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyAccelerationStructureKHR*(device: VkDevice, accelerationStructure: VkAccelerationStructureKHR, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyAccelerationStructureNV*(device: VkDevice, accelerationStructure: VkAccelerationStructureNV, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetAccelerationStructureMemoryRequirementsNV*(device: VkDevice, pInfo: ptr VkAccelerationStructureMemoryRequirementsInfoNV, pMemoryRequirements: ptr VkMemoryRequirements2KHR): void {.cdecl, importc, dynlib: vkDLL.} +proc vkBindAccelerationStructureMemoryNV*(device: VkDevice, bindInfoCount: uint32, pBindInfos: ptr VkBindAccelerationStructureMemoryInfoNV): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkCmdCopyAccelerationStructureNV*(commandBuffer: VkCommandBuffer, dst: VkAccelerationStructureNV, src: VkAccelerationStructureNV, mode: VkCopyAccelerationStructureModeKHR): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdCopyAccelerationStructureKHR*(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyAccelerationStructureInfoKHR ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCopyAccelerationStructureKHR*(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyAccelerationStructureInfoKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdCopyAccelerationStructureToMemoryKHR*(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCopyAccelerationStructureToMemoryKHR*(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdCopyMemoryToAccelerationStructureKHR*(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCopyMemoryToAccelerationStructureKHR*(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdWriteAccelerationStructuresPropertiesKHR*(commandBuffer: VkCommandBuffer, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR , queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdWriteAccelerationStructuresPropertiesNV*(commandBuffer: VkCommandBuffer, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureNV , queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdBuildAccelerationStructureNV*(commandBuffer: VkCommandBuffer, pInfo: ptr VkAccelerationStructureInfoNV , instanceData: VkBuffer, instanceOffset: VkDeviceSize, update: VkBool32, dst: VkAccelerationStructureNV, src: VkAccelerationStructureNV, scratch: VkBuffer, scratchOffset: VkDeviceSize): void {.cdecl, importc, dynlib: vkDLL.} -proc vkWriteAccelerationStructuresPropertiesKHR*(device: VkDevice, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR , queryType: VkQueryType, dataSize: uint, pData: pointer , stride: uint): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdTraceRaysKHR*(commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , width: uint32, height: uint32, depth: uint32): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdCopyAccelerationStructureKHR*(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyAccelerationStructureInfoKHR): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCopyAccelerationStructureKHR*(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyAccelerationStructureInfoKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdCopyAccelerationStructureToMemoryKHR*(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCopyAccelerationStructureToMemoryKHR*(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyAccelerationStructureToMemoryInfoKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdCopyMemoryToAccelerationStructureKHR*(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCopyMemoryToAccelerationStructureKHR*(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMemoryToAccelerationStructureInfoKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdWriteAccelerationStructuresPropertiesKHR*(commandBuffer: VkCommandBuffer, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR, queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdWriteAccelerationStructuresPropertiesNV*(commandBuffer: VkCommandBuffer, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureNV, queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdBuildAccelerationStructureNV*(commandBuffer: VkCommandBuffer, pInfo: ptr VkAccelerationStructureInfoNV, instanceData: VkBuffer, instanceOffset: VkDeviceSize, update: VkBool32, dst: VkAccelerationStructureNV, src: VkAccelerationStructureNV, scratch: VkBuffer, scratchOffset: VkDeviceSize): void {.cdecl, importc, dynlib: vkDLL.} +proc vkWriteAccelerationStructuresPropertiesKHR*(device: VkDevice, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR, queryType: VkQueryType, dataSize: uint, pData: pointer, stride: uint): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdTraceRaysKHR*(commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, width: uint32, height: uint32, depth: uint32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdTraceRaysNV*(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 {.cdecl, importc, dynlib: vkDLL.} -proc vkGetRayTracingShaderGroupHandlesKHR*(device: VkDevice, pipeline: VkPipeline, firstGroup: uint32, groupCount: uint32, dataSize: uint, pData: pointer ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetRayTracingCaptureReplayShaderGroupHandlesKHR*(device: VkDevice, pipeline: VkPipeline, firstGroup: uint32, groupCount: uint32, dataSize: uint, pData: pointer ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetAccelerationStructureHandleNV*(device: VkDevice, accelerationStructure: VkAccelerationStructureNV, dataSize: uint, pData: pointer ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateRayTracingPipelinesNV*(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateRayTracingPipelinesKHR*(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pPipelines: ptr VkPipeline ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceCooperativeMatrixPropertiesNV*(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32 , pProperties: ptr VkCooperativeMatrixPropertiesNV ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdTraceRaysIndirectKHR*(commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR , indirectDeviceAddress: VkDeviceAddress): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetRayTracingShaderGroupHandlesKHR*(device: VkDevice, pipeline: VkPipeline, firstGroup: uint32, groupCount: uint32, dataSize: uint, pData: pointer): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetRayTracingCaptureReplayShaderGroupHandlesKHR*(device: VkDevice, pipeline: VkPipeline, firstGroup: uint32, groupCount: uint32, dataSize: uint, pData: pointer): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetAccelerationStructureHandleNV*(device: VkDevice, accelerationStructure: VkAccelerationStructureNV, dataSize: uint, pData: pointer): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateRayTracingPipelinesNV*(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateRayTracingPipelinesKHR*(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkRayTracingPipelineCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceCooperativeMatrixPropertiesNV*(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkCooperativeMatrixPropertiesNV): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdTraceRaysIndirectKHR*(commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ptr VkStridedDeviceAddressRegionKHR, indirectDeviceAddress: VkDeviceAddress): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdTraceRaysIndirect2KHR*(commandBuffer: VkCommandBuffer, indirectDeviceAddress: VkDeviceAddress): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDeviceAccelerationStructureCompatibilityKHR*(device: VkDevice, pVersionInfo: ptr VkAccelerationStructureVersionInfoKHR , pCompatibility: ptr VkAccelerationStructureCompatibilityKHR ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDeviceAccelerationStructureCompatibilityKHR*(device: VkDevice, pVersionInfo: ptr VkAccelerationStructureVersionInfoKHR, pCompatibility: ptr VkAccelerationStructureCompatibilityKHR): void {.cdecl, importc, dynlib: vkDLL.} proc vkGetRayTracingShaderGroupStackSizeKHR*(device: VkDevice, pipeline: VkPipeline, group: uint32, groupShader: VkShaderGroupShaderKHR): VkDeviceSize {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetRayTracingPipelineStackSizeKHR*(commandBuffer: VkCommandBuffer, pipelineStackSize: uint32): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetImageViewHandleNVX*(device: VkDevice, pInfo: ptr VkImageViewHandleInfoNVX ): uint32 {.cdecl, importc, dynlib: vkDLL.} -proc vkGetImageViewAddressNVX*(device: VkDevice, imageView: VkImageView, pProperties: ptr VkImageViewAddressPropertiesNVX ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceSurfacePresentModes2EXT*(physicalDevice: VkPhysicalDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR , pPresentModeCount: ptr uint32 , pPresentModes: ptr VkPresentModeKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDeviceGroupSurfacePresentModes2EXT*(device: VkDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR , pModes: ptr VkDeviceGroupPresentModeFlagsKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetImageViewHandleNVX*(device: VkDevice, pInfo: ptr VkImageViewHandleInfoNVX): uint32 {.cdecl, importc, dynlib: vkDLL.} +proc vkGetImageViewAddressNVX*(device: VkDevice, imageView: VkImageView, pProperties: ptr VkImageViewAddressPropertiesNVX): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceSurfacePresentModes2EXT*(physicalDevice: VkPhysicalDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pPresentModeCount: ptr uint32, pPresentModes: ptr VkPresentModeKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDeviceGroupSurfacePresentModes2EXT*(device: VkDevice, pSurfaceInfo: ptr VkPhysicalDeviceSurfaceInfo2KHR, pModes: ptr VkDeviceGroupPresentModeFlagsKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkAcquireFullScreenExclusiveModeEXT*(device: VkDevice, swapchain: VkSwapchainKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkReleaseFullScreenExclusiveModeEXT*(device: VkDevice, swapchain: VkSwapchainKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR*(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, pCounterCount: ptr uint32 , pCounters: ptr VkPerformanceCounterKHR , pCounterDescriptions: ptr VkPerformanceCounterDescriptionKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR*(physicalDevice: VkPhysicalDevice, pPerformanceQueryCreateInfo: ptr VkQueryPoolPerformanceCreateInfoKHR , pNumPasses: ptr uint32 ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkAcquireProfilingLockKHR*(device: VkDevice, pInfo: ptr VkAcquireProfilingLockInfoKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR*(physicalDevice: VkPhysicalDevice, queueFamilyIndex: uint32, pCounterCount: ptr uint32, pCounters: ptr VkPerformanceCounterKHR, pCounterDescriptions: ptr VkPerformanceCounterDescriptionKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR*(physicalDevice: VkPhysicalDevice, pPerformanceQueryCreateInfo: ptr VkQueryPoolPerformanceCreateInfoKHR, pNumPasses: ptr uint32): void {.cdecl, importc, dynlib: vkDLL.} +proc vkAcquireProfilingLockKHR*(device: VkDevice, pInfo: ptr VkAcquireProfilingLockInfoKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkReleaseProfilingLockKHR*(device: VkDevice): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetImageDrmFormatModifierPropertiesEXT*(device: VkDevice, image: VkImage, pProperties: ptr VkImageDrmFormatModifierPropertiesEXT ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetBufferOpaqueCaptureAddress*(device: VkDevice, pInfo: ptr VkBufferDeviceAddressInfo ): uint64 {.cdecl, importc, dynlib: vkDLL.} -proc vkGetBufferDeviceAddress*(device: VkDevice, pInfo: ptr VkBufferDeviceAddressInfo ): VkDeviceAddress {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateHeadlessSurfaceEXT*(instance: VkInstance, pCreateInfo: ptr VkHeadlessSurfaceCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pSurface: ptr VkSurfaceKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV*(physicalDevice: VkPhysicalDevice, pCombinationCount: ptr uint32 , pCombinations: ptr VkFramebufferMixedSamplesCombinationNV ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkInitializePerformanceApiINTEL*(device: VkDevice, pInitializeInfo: ptr VkInitializePerformanceApiInfoINTEL ): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetImageDrmFormatModifierPropertiesEXT*(device: VkDevice, image: VkImage, pProperties: ptr VkImageDrmFormatModifierPropertiesEXT): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetBufferOpaqueCaptureAddress*(device: VkDevice, pInfo: ptr VkBufferDeviceAddressInfo): uint64 {.cdecl, importc, dynlib: vkDLL.} +proc vkGetBufferDeviceAddress*(device: VkDevice, pInfo: ptr VkBufferDeviceAddressInfo): VkDeviceAddress {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateHeadlessSurfaceEXT*(instance: VkInstance, pCreateInfo: ptr VkHeadlessSurfaceCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pSurface: ptr VkSurfaceKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV*(physicalDevice: VkPhysicalDevice, pCombinationCount: ptr uint32, pCombinations: ptr VkFramebufferMixedSamplesCombinationNV): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkInitializePerformanceApiINTEL*(device: VkDevice, pInitializeInfo: ptr VkInitializePerformanceApiInfoINTEL): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkUninitializePerformanceApiINTEL*(device: VkDevice): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetPerformanceMarkerINTEL*(commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkPerformanceMarkerInfoINTEL ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetPerformanceStreamMarkerINTEL*(commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkPerformanceStreamMarkerInfoINTEL ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetPerformanceOverrideINTEL*(commandBuffer: VkCommandBuffer, pOverrideInfo: ptr VkPerformanceOverrideInfoINTEL ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkAcquirePerformanceConfigurationINTEL*(device: VkDevice, pAcquireInfo: ptr VkPerformanceConfigurationAcquireInfoINTEL , pConfiguration: ptr VkPerformanceConfigurationINTEL ): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetPerformanceMarkerINTEL*(commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkPerformanceMarkerInfoINTEL): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetPerformanceStreamMarkerINTEL*(commandBuffer: VkCommandBuffer, pMarkerInfo: ptr VkPerformanceStreamMarkerInfoINTEL): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetPerformanceOverrideINTEL*(commandBuffer: VkCommandBuffer, pOverrideInfo: ptr VkPerformanceOverrideInfoINTEL): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkAcquirePerformanceConfigurationINTEL*(device: VkDevice, pAcquireInfo: ptr VkPerformanceConfigurationAcquireInfoINTEL, pConfiguration: ptr VkPerformanceConfigurationINTEL): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkReleasePerformanceConfigurationINTEL*(device: VkDevice, configuration: VkPerformanceConfigurationINTEL): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkQueueSetPerformanceConfigurationINTEL*(queue: VkQueue, configuration: VkPerformanceConfigurationINTEL): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPerformanceParameterINTEL*(device: VkDevice, parameter: VkPerformanceParameterTypeINTEL, pValue: ptr VkPerformanceValueINTEL ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDeviceMemoryOpaqueCaptureAddress*(device: VkDevice, pInfo: ptr VkDeviceMemoryOpaqueCaptureAddressInfo ): uint64 {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPipelineExecutablePropertiesKHR*(device: VkDevice, pPipelineInfo: ptr VkPipelineInfoKHR , pExecutableCount: ptr uint32 , pProperties: ptr VkPipelineExecutablePropertiesKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPipelineExecutableStatisticsKHR*(device: VkDevice, pExecutableInfo: ptr VkPipelineExecutableInfoKHR , pStatisticCount: ptr uint32 , pStatistics: ptr VkPipelineExecutableStatisticKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPipelineExecutableInternalRepresentationsKHR*(device: VkDevice, pExecutableInfo: ptr VkPipelineExecutableInfoKHR , pInternalRepresentationCount: ptr uint32 , pInternalRepresentations: ptr VkPipelineExecutableInternalRepresentationKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPerformanceParameterINTEL*(device: VkDevice, parameter: VkPerformanceParameterTypeINTEL, pValue: ptr VkPerformanceValueINTEL): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDeviceMemoryOpaqueCaptureAddress*(device: VkDevice, pInfo: ptr VkDeviceMemoryOpaqueCaptureAddressInfo): uint64 {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPipelineExecutablePropertiesKHR*(device: VkDevice, pPipelineInfo: ptr VkPipelineInfoKHR, pExecutableCount: ptr uint32, pProperties: ptr VkPipelineExecutablePropertiesKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPipelineExecutableStatisticsKHR*(device: VkDevice, pExecutableInfo: ptr VkPipelineExecutableInfoKHR, pStatisticCount: ptr uint32, pStatistics: ptr VkPipelineExecutableStatisticKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPipelineExecutableInternalRepresentationsKHR*(device: VkDevice, pExecutableInfo: ptr VkPipelineExecutableInfoKHR, pInternalRepresentationCount: ptr uint32, pInternalRepresentations: ptr VkPipelineExecutableInternalRepresentationKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetLineStippleEXT*(commandBuffer: VkCommandBuffer, lineStippleFactor: uint32, lineStipplePattern: uint16): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetFaultData*(device: VkDevice, faultQueryBehavior: VkFaultQueryBehavior, pUnrecordedFaults: ptr VkBool32 , pFaultCount: ptr uint32 , pFaults: ptr VkFaultData ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceToolProperties*(physicalDevice: VkPhysicalDevice, pToolCount: ptr uint32 , pToolProperties: ptr VkPhysicalDeviceToolProperties ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateAccelerationStructureKHR*(device: VkDevice, pCreateInfo: ptr VkAccelerationStructureCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pAccelerationStructure: ptr VkAccelerationStructureKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdBuildAccelerationStructuresKHR*(commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR , ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdBuildAccelerationStructuresIndirectKHR*(commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR , pIndirectDeviceAddresses: ptr VkDeviceAddress , pIndirectStrides: ptr uint32 , ppMaxPrimitiveCounts: ptr ptr uint32 ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkBuildAccelerationStructuresKHR*(device: VkDevice, deferredOperation: VkDeferredOperationKHR, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR , ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetAccelerationStructureDeviceAddressKHR*(device: VkDevice, pInfo: ptr VkAccelerationStructureDeviceAddressInfoKHR ): VkDeviceAddress {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateDeferredOperationKHR*(device: VkDevice, pAllocator: ptr VkAllocationCallbacks , pDeferredOperation: ptr VkDeferredOperationKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyDeferredOperationKHR*(device: VkDevice, operation: VkDeferredOperationKHR, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetFaultData*(device: VkDevice, faultQueryBehavior: VkFaultQueryBehavior, pUnrecordedFaults: ptr VkBool32, pFaultCount: ptr uint32, pFaults: ptr VkFaultData): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceToolProperties*(physicalDevice: VkPhysicalDevice, pToolCount: ptr uint32, pToolProperties: ptr VkPhysicalDeviceToolProperties): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateAccelerationStructureKHR*(device: VkDevice, pCreateInfo: ptr VkAccelerationStructureCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pAccelerationStructure: ptr VkAccelerationStructureKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdBuildAccelerationStructuresKHR*(commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdBuildAccelerationStructuresIndirectKHR*(commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, pIndirectDeviceAddresses: ptr VkDeviceAddress, pIndirectStrides: ptr uint32, ppMaxPrimitiveCounts: ptr ptr uint32): void {.cdecl, importc, dynlib: vkDLL.} +proc vkBuildAccelerationStructuresKHR*(device: VkDevice, deferredOperation: VkDeferredOperationKHR, infoCount: uint32, pInfos: ptr VkAccelerationStructureBuildGeometryInfoKHR, ppBuildRangeInfos: ptr ptr VkAccelerationStructureBuildRangeInfoKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetAccelerationStructureDeviceAddressKHR*(device: VkDevice, pInfo: ptr VkAccelerationStructureDeviceAddressInfoKHR): VkDeviceAddress {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateDeferredOperationKHR*(device: VkDevice, pAllocator: ptr VkAllocationCallbacks, pDeferredOperation: ptr VkDeferredOperationKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyDeferredOperationKHR*(device: VkDevice, operation: VkDeferredOperationKHR, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} proc vkGetDeferredOperationMaxConcurrencyKHR*(device: VkDevice, operation: VkDeferredOperationKHR): uint32 {.cdecl, importc, dynlib: vkDLL.} proc vkGetDeferredOperationResultKHR*(device: VkDevice, operation: VkDeferredOperationKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkDeferredOperationJoinKHR*(device: VkDevice, operation: VkDeferredOperationKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPipelineIndirectMemoryRequirementsNV*(device: VkDevice, pCreateInfo: ptr VkComputePipelineCreateInfo, pMemoryRequirements: ptr VkMemoryRequirements2): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPipelineIndirectDeviceAddressNV*(device: VkDevice, pInfo: ptr VkPipelineIndirectDeviceAddressInfoNV): VkDeviceAddress {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetCullMode*(commandBuffer: VkCommandBuffer, cullMode: VkCullModeFlags): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetFrontFace*(commandBuffer: VkCommandBuffer, frontFace: VkFrontFace): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetPrimitiveTopology*(commandBuffer: VkCommandBuffer, primitiveTopology: VkPrimitiveTopology): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetViewportWithCount*(commandBuffer: VkCommandBuffer, viewportCount: uint32, pViewports: ptr VkViewport ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetScissorWithCount*(commandBuffer: VkCommandBuffer, scissorCount: uint32, pScissors: ptr VkRect2D ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdBindVertexBuffers2*(commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer , pOffsets: ptr VkDeviceSize , pSizes: ptr VkDeviceSize , pStrides: ptr VkDeviceSize ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetViewportWithCount*(commandBuffer: VkCommandBuffer, viewportCount: uint32, pViewports: ptr VkViewport): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetScissorWithCount*(commandBuffer: VkCommandBuffer, scissorCount: uint32, pScissors: ptr VkRect2D): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdBindIndexBuffer2KHR*(commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize, indexType: VkIndexType): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdBindVertexBuffers2*(commandBuffer: VkCommandBuffer, firstBinding: uint32, bindingCount: uint32, pBuffers: ptr VkBuffer, pOffsets: ptr VkDeviceSize, pSizes: ptr VkDeviceSize, pStrides: ptr VkDeviceSize): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetDepthTestEnable*(commandBuffer: VkCommandBuffer, depthTestEnable: VkBool32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetDepthWriteEnable*(commandBuffer: VkCommandBuffer, depthWriteEnable: VkBool32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetDepthCompareOp*(commandBuffer: VkCommandBuffer, depthCompareOp: VkCompareOp): void {.cdecl, importc, dynlib: vkDLL.} @@ -16970,4530 +15126,7483 @@ proc vkCmdSetTessellationDomainOriginEXT*(commandBuffer: VkCommandBuffer, domain proc vkCmdSetDepthClampEnableEXT*(commandBuffer: VkCommandBuffer, depthClampEnable: VkBool32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetPolygonModeEXT*(commandBuffer: VkCommandBuffer, polygonMode: VkPolygonMode): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetRasterizationSamplesEXT*(commandBuffer: VkCommandBuffer, rasterizationSamples: VkSampleCountFlagBits): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetSampleMaskEXT*(commandBuffer: VkCommandBuffer, samples: VkSampleCountFlagBits, pSampleMask: ptr VkSampleMask ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetSampleMaskEXT*(commandBuffer: VkCommandBuffer, samples: VkSampleCountFlagBits, pSampleMask: ptr VkSampleMask): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetAlphaToCoverageEnableEXT*(commandBuffer: VkCommandBuffer, alphaToCoverageEnable: VkBool32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetAlphaToOneEnableEXT*(commandBuffer: VkCommandBuffer, alphaToOneEnable: VkBool32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetLogicOpEnableEXT*(commandBuffer: VkCommandBuffer, logicOpEnable: VkBool32): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetColorBlendEnableEXT*(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEnables: ptr VkBool32 ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetColorBlendEquationEXT*(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEquations: ptr VkColorBlendEquationEXT ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetColorWriteMaskEXT*(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorWriteMasks: ptr VkColorComponentFlags ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetColorBlendEnableEXT*(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEnables: ptr VkBool32): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetColorBlendEquationEXT*(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendEquations: ptr VkColorBlendEquationEXT): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetColorWriteMaskEXT*(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorWriteMasks: ptr VkColorComponentFlags): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetRasterizationStreamEXT*(commandBuffer: VkCommandBuffer, rasterizationStream: uint32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetConservativeRasterizationModeEXT*(commandBuffer: VkCommandBuffer, conservativeRasterizationMode: VkConservativeRasterizationModeEXT): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetExtraPrimitiveOverestimationSizeEXT*(commandBuffer: VkCommandBuffer, extraPrimitiveOverestimationSize: float32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetDepthClipEnableEXT*(commandBuffer: VkCommandBuffer, depthClipEnable: VkBool32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetSampleLocationsEnableEXT*(commandBuffer: VkCommandBuffer, sampleLocationsEnable: VkBool32): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetColorBlendAdvancedEXT*(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendAdvanced: ptr VkColorBlendAdvancedEXT ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetColorBlendAdvancedEXT*(commandBuffer: VkCommandBuffer, firstAttachment: uint32, attachmentCount: uint32, pColorBlendAdvanced: ptr VkColorBlendAdvancedEXT): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetProvokingVertexModeEXT*(commandBuffer: VkCommandBuffer, provokingVertexMode: VkProvokingVertexModeEXT): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetLineRasterizationModeEXT*(commandBuffer: VkCommandBuffer, lineRasterizationMode: VkLineRasterizationModeEXT): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetLineStippleEnableEXT*(commandBuffer: VkCommandBuffer, stippledLineEnable: VkBool32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetDepthClipNegativeOneToOneEXT*(commandBuffer: VkCommandBuffer, negativeOneToOne: VkBool32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetViewportWScalingEnableNV*(commandBuffer: VkCommandBuffer, viewportWScalingEnable: VkBool32): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetViewportSwizzleNV*(commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportSwizzles: ptr VkViewportSwizzleNV ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetViewportSwizzleNV*(commandBuffer: VkCommandBuffer, firstViewport: uint32, viewportCount: uint32, pViewportSwizzles: ptr VkViewportSwizzleNV): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetCoverageToColorEnableNV*(commandBuffer: VkCommandBuffer, coverageToColorEnable: VkBool32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetCoverageToColorLocationNV*(commandBuffer: VkCommandBuffer, coverageToColorLocation: uint32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetCoverageModulationModeNV*(commandBuffer: VkCommandBuffer, coverageModulationMode: VkCoverageModulationModeNV): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetCoverageModulationTableEnableNV*(commandBuffer: VkCommandBuffer, coverageModulationTableEnable: VkBool32): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetCoverageModulationTableNV*(commandBuffer: VkCommandBuffer, coverageModulationTableCount: uint32, pCoverageModulationTable: ptr float32 ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetCoverageModulationTableNV*(commandBuffer: VkCommandBuffer, coverageModulationTableCount: uint32, pCoverageModulationTable: ptr float32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetShadingRateImageEnableNV*(commandBuffer: VkCommandBuffer, shadingRateImageEnable: VkBool32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetCoverageReductionModeNV*(commandBuffer: VkCommandBuffer, coverageReductionMode: VkCoverageReductionModeNV): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetRepresentativeFragmentTestEnableNV*(commandBuffer: VkCommandBuffer, representativeFragmentTestEnable: VkBool32): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCreatePrivateDataSlot*(device: VkDevice, pCreateInfo: ptr VkPrivateDataSlotCreateInfo , pAllocator: ptr VkAllocationCallbacks , pPrivateDataSlot: ptr VkPrivateDataSlot ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyPrivateDataSlot*(device: VkDevice, privateDataSlot: VkPrivateDataSlot, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCreatePrivateDataSlot*(device: VkDevice, pCreateInfo: ptr VkPrivateDataSlotCreateInfo, pAllocator: ptr VkAllocationCallbacks, pPrivateDataSlot: ptr VkPrivateDataSlot): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyPrivateDataSlot*(device: VkDevice, privateDataSlot: VkPrivateDataSlot, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} proc vkSetPrivateData*(device: VkDevice, objectType: VkObjectType, objectHandle: uint64, privateDataSlot: VkPrivateDataSlot, data: uint64): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPrivateData*(device: VkDevice, objectType: VkObjectType, objectHandle: uint64, privateDataSlot: VkPrivateDataSlot, pData: ptr uint64 ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdCopyBuffer2*(commandBuffer: VkCommandBuffer, pCopyBufferInfo: ptr VkCopyBufferInfo2 ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdCopyImage2*(commandBuffer: VkCommandBuffer, pCopyImageInfo: ptr VkCopyImageInfo2 ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdBlitImage2*(commandBuffer: VkCommandBuffer, pBlitImageInfo: ptr VkBlitImageInfo2 ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdCopyBufferToImage2*(commandBuffer: VkCommandBuffer, pCopyBufferToImageInfo: ptr VkCopyBufferToImageInfo2 ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdCopyImageToBuffer2*(commandBuffer: VkCommandBuffer, pCopyImageToBufferInfo: ptr VkCopyImageToBufferInfo2 ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdResolveImage2*(commandBuffer: VkCommandBuffer, pResolveImageInfo: ptr VkResolveImageInfo2 ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdRefreshObjectsKHR*(commandBuffer: VkCommandBuffer, pRefreshObjects: ptr VkRefreshObjectListKHR ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceRefreshableObjectTypesKHR*(physicalDevice: VkPhysicalDevice, pRefreshableObjectTypeCount: ptr uint32 , pRefreshableObjectTypes: ptr VkObjectType ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetFragmentShadingRateKHR*(commandBuffer: VkCommandBuffer, pFragmentSize: ptr VkExtent2D , combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceFragmentShadingRatesKHR*(physicalDevice: VkPhysicalDevice, pFragmentShadingRateCount: ptr uint32 , pFragmentShadingRates: ptr VkPhysicalDeviceFragmentShadingRateKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPrivateData*(device: VkDevice, objectType: VkObjectType, objectHandle: uint64, privateDataSlot: VkPrivateDataSlot, pData: ptr uint64): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdCopyBuffer2*(commandBuffer: VkCommandBuffer, pCopyBufferInfo: ptr VkCopyBufferInfo2): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdCopyImage2*(commandBuffer: VkCommandBuffer, pCopyImageInfo: ptr VkCopyImageInfo2): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdBlitImage2*(commandBuffer: VkCommandBuffer, pBlitImageInfo: ptr VkBlitImageInfo2): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdCopyBufferToImage2*(commandBuffer: VkCommandBuffer, pCopyBufferToImageInfo: ptr VkCopyBufferToImageInfo2): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdCopyImageToBuffer2*(commandBuffer: VkCommandBuffer, pCopyImageToBufferInfo: ptr VkCopyImageToBufferInfo2): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdResolveImage2*(commandBuffer: VkCommandBuffer, pResolveImageInfo: ptr VkResolveImageInfo2): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdRefreshObjectsKHR*(commandBuffer: VkCommandBuffer, pRefreshObjects: ptr VkRefreshObjectListKHR): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceRefreshableObjectTypesKHR*(physicalDevice: VkPhysicalDevice, pRefreshableObjectTypeCount: ptr uint32, pRefreshableObjectTypes: ptr VkObjectType): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetFragmentShadingRateKHR*(commandBuffer: VkCommandBuffer, pFragmentSize: ptr VkExtent2D, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceFragmentShadingRatesKHR*(physicalDevice: VkPhysicalDevice, pFragmentShadingRateCount: ptr uint32, pFragmentShadingRates: ptr VkPhysicalDeviceFragmentShadingRateKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkCmdSetFragmentShadingRateEnumNV*(commandBuffer: VkCommandBuffer, shadingRate: VkFragmentShadingRateNV, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetAccelerationStructureBuildSizesKHR*(device: VkDevice, buildType: VkAccelerationStructureBuildTypeKHR, pBuildInfo: ptr VkAccelerationStructureBuildGeometryInfoKHR , pMaxPrimitiveCounts: ptr uint32 , pSizeInfo: ptr VkAccelerationStructureBuildSizesInfoKHR ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetVertexInputEXT*(commandBuffer: VkCommandBuffer, vertexBindingDescriptionCount: uint32, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription2EXT , vertexAttributeDescriptionCount: uint32, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription2EXT ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetColorWriteEnableEXT*(commandBuffer: VkCommandBuffer, attachmentCount: uint32, pColorWriteEnables: ptr VkBool32 ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetEvent2*(commandBuffer: VkCommandBuffer, event: VkEvent, pDependencyInfo: ptr VkDependencyInfo ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetAccelerationStructureBuildSizesKHR*(device: VkDevice, buildType: VkAccelerationStructureBuildTypeKHR, pBuildInfo: ptr VkAccelerationStructureBuildGeometryInfoKHR, pMaxPrimitiveCounts: ptr uint32, pSizeInfo: ptr VkAccelerationStructureBuildSizesInfoKHR): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetVertexInputEXT*(commandBuffer: VkCommandBuffer, vertexBindingDescriptionCount: uint32, pVertexBindingDescriptions: ptr VkVertexInputBindingDescription2EXT, vertexAttributeDescriptionCount: uint32, pVertexAttributeDescriptions: ptr VkVertexInputAttributeDescription2EXT): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetColorWriteEnableEXT*(commandBuffer: VkCommandBuffer, attachmentCount: uint32, pColorWriteEnables: ptr VkBool32): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetEvent2*(commandBuffer: VkCommandBuffer, event: VkEvent, pDependencyInfo: ptr VkDependencyInfo): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdResetEvent2*(commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags2): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdWaitEvents2*(commandBuffer: VkCommandBuffer, eventCount: uint32, pEvents: ptr VkEvent , pDependencyInfos: ptr VkDependencyInfo ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdPipelineBarrier2*(commandBuffer: VkCommandBuffer, pDependencyInfo: ptr VkDependencyInfo ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkQueueSubmit2*(queue: VkQueue, submitCount: uint32, pSubmits: ptr VkSubmitInfo2 , fence: VkFence): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdWaitEvents2*(commandBuffer: VkCommandBuffer, eventCount: uint32, pEvents: ptr VkEvent, pDependencyInfos: ptr VkDependencyInfo): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdPipelineBarrier2*(commandBuffer: VkCommandBuffer, pDependencyInfo: ptr VkDependencyInfo): void {.cdecl, importc, dynlib: vkDLL.} +proc vkQueueSubmit2*(queue: VkQueue, submitCount: uint32, pSubmits: ptr VkSubmitInfo2, fence: VkFence): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkCmdWriteTimestamp2*(commandBuffer: VkCommandBuffer, stage: VkPipelineStageFlags2, queryPool: VkQueryPool, query: uint32): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdWriteBufferMarker2AMD*(commandBuffer: VkCommandBuffer, stage: VkPipelineStageFlags2, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, marker: uint32): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetQueueCheckpointData2NV*(queue: VkQueue, pCheckpointDataCount: ptr uint32 , pCheckpointData: ptr VkCheckpointData2NV ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetCommandPoolMemoryConsumption*(device: VkDevice, commandPool: VkCommandPool, commandBuffer: VkCommandBuffer, pConsumption: ptr VkCommandPoolMemoryConsumption ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceVideoCapabilitiesKHR*(physicalDevice: VkPhysicalDevice, pVideoProfile: ptr VkVideoProfileInfoKHR , pCapabilities: ptr VkVideoCapabilitiesKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceVideoFormatPropertiesKHR*(physicalDevice: VkPhysicalDevice, pVideoFormatInfo: ptr VkPhysicalDeviceVideoFormatInfoKHR , pVideoFormatPropertyCount: ptr uint32 , pVideoFormatProperties: ptr VkVideoFormatPropertiesKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateVideoSessionKHR*(device: VkDevice, pCreateInfo: ptr VkVideoSessionCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pVideoSession: ptr VkVideoSessionKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyVideoSessionKHR*(device: VkDevice, videoSession: VkVideoSessionKHR, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateVideoSessionParametersKHR*(device: VkDevice, pCreateInfo: ptr VkVideoSessionParametersCreateInfoKHR , pAllocator: ptr VkAllocationCallbacks , pVideoSessionParameters: ptr VkVideoSessionParametersKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkUpdateVideoSessionParametersKHR*(device: VkDevice, videoSessionParameters: VkVideoSessionParametersKHR, pUpdateInfo: ptr VkVideoSessionParametersUpdateInfoKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyVideoSessionParametersKHR*(device: VkDevice, videoSessionParameters: VkVideoSessionParametersKHR, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetVideoSessionMemoryRequirementsKHR*(device: VkDevice, videoSession: VkVideoSessionKHR, pMemoryRequirementsCount: ptr uint32 , pMemoryRequirements: ptr VkVideoSessionMemoryRequirementsKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkBindVideoSessionMemoryKHR*(device: VkDevice, videoSession: VkVideoSessionKHR, bindSessionMemoryInfoCount: uint32, pBindSessionMemoryInfos: ptr VkBindVideoSessionMemoryInfoKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdDecodeVideoKHR*(commandBuffer: VkCommandBuffer, pDecodeInfo: ptr VkVideoDecodeInfoKHR ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdBeginVideoCodingKHR*(commandBuffer: VkCommandBuffer, pBeginInfo: ptr VkVideoBeginCodingInfoKHR ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdControlVideoCodingKHR*(commandBuffer: VkCommandBuffer, pCodingControlInfo: ptr VkVideoCodingControlInfoKHR ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdEndVideoCodingKHR*(commandBuffer: VkCommandBuffer, pEndCodingInfo: ptr VkVideoEndCodingInfoKHR ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdEncodeVideoKHR*(commandBuffer: VkCommandBuffer, pEncodeInfo: ptr VkVideoEncodeInfoKHR ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdDecompressMemoryNV*(commandBuffer: VkCommandBuffer, decompressRegionCount: uint32, pDecompressMemoryRegions: ptr VkDecompressMemoryRegionNV ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetQueueCheckpointData2NV*(queue: VkQueue, pCheckpointDataCount: ptr uint32, pCheckpointData: ptr VkCheckpointData2NV): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCopyMemoryToImageEXT*(device: VkDevice, pCopyMemoryToImageInfo: ptr VkCopyMemoryToImageInfoEXT): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCopyImageToMemoryEXT*(device: VkDevice, pCopyImageToMemoryInfo: ptr VkCopyImageToMemoryInfoEXT): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCopyImageToImageEXT*(device: VkDevice, pCopyImageToImageInfo: ptr VkCopyImageToImageInfoEXT): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkTransitionImageLayoutEXT*(device: VkDevice, transitionCount: uint32, pTransitions: ptr VkHostImageLayoutTransitionInfoEXT): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetCommandPoolMemoryConsumption*(device: VkDevice, commandPool: VkCommandPool, commandBuffer: VkCommandBuffer, pConsumption: ptr VkCommandPoolMemoryConsumption): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceVideoCapabilitiesKHR*(physicalDevice: VkPhysicalDevice, pVideoProfile: ptr VkVideoProfileInfoKHR, pCapabilities: ptr VkVideoCapabilitiesKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceVideoFormatPropertiesKHR*(physicalDevice: VkPhysicalDevice, pVideoFormatInfo: ptr VkPhysicalDeviceVideoFormatInfoKHR, pVideoFormatPropertyCount: ptr uint32, pVideoFormatProperties: ptr VkVideoFormatPropertiesKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR*(physicalDevice: VkPhysicalDevice, pQualityLevelInfo: ptr VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR, pQualityLevelProperties: ptr VkVideoEncodeQualityLevelPropertiesKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateVideoSessionKHR*(device: VkDevice, pCreateInfo: ptr VkVideoSessionCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pVideoSession: ptr VkVideoSessionKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyVideoSessionKHR*(device: VkDevice, videoSession: VkVideoSessionKHR, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateVideoSessionParametersKHR*(device: VkDevice, pCreateInfo: ptr VkVideoSessionParametersCreateInfoKHR, pAllocator: ptr VkAllocationCallbacks, pVideoSessionParameters: ptr VkVideoSessionParametersKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkUpdateVideoSessionParametersKHR*(device: VkDevice, videoSessionParameters: VkVideoSessionParametersKHR, pUpdateInfo: ptr VkVideoSessionParametersUpdateInfoKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetEncodedVideoSessionParametersKHR*(device: VkDevice, pVideoSessionParametersInfo: ptr VkVideoEncodeSessionParametersGetInfoKHR, pFeedbackInfo: ptr VkVideoEncodeSessionParametersFeedbackInfoKHR, pDataSize: ptr uint, pData: pointer): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyVideoSessionParametersKHR*(device: VkDevice, videoSessionParameters: VkVideoSessionParametersKHR, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetVideoSessionMemoryRequirementsKHR*(device: VkDevice, videoSession: VkVideoSessionKHR, pMemoryRequirementsCount: ptr uint32, pMemoryRequirements: ptr VkVideoSessionMemoryRequirementsKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkBindVideoSessionMemoryKHR*(device: VkDevice, videoSession: VkVideoSessionKHR, bindSessionMemoryInfoCount: uint32, pBindSessionMemoryInfos: ptr VkBindVideoSessionMemoryInfoKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdDecodeVideoKHR*(commandBuffer: VkCommandBuffer, pDecodeInfo: ptr VkVideoDecodeInfoKHR): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdBeginVideoCodingKHR*(commandBuffer: VkCommandBuffer, pBeginInfo: ptr VkVideoBeginCodingInfoKHR): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdControlVideoCodingKHR*(commandBuffer: VkCommandBuffer, pCodingControlInfo: ptr VkVideoCodingControlInfoKHR): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdEndVideoCodingKHR*(commandBuffer: VkCommandBuffer, pEndCodingInfo: ptr VkVideoEndCodingInfoKHR): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdEncodeVideoKHR*(commandBuffer: VkCommandBuffer, pEncodeInfo: ptr VkVideoEncodeInfoKHR): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdDecompressMemoryNV*(commandBuffer: VkCommandBuffer, decompressRegionCount: uint32, pDecompressMemoryRegions: ptr VkDecompressMemoryRegionNV): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdDecompressMemoryIndirectCountNV*(commandBuffer: VkCommandBuffer, indirectCommandsAddress: VkDeviceAddress, indirectCommandsCountAddress: VkDeviceAddress, stride: uint32): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateCuModuleNVX*(device: VkDevice, pCreateInfo: ptr VkCuModuleCreateInfoNVX , pAllocator: ptr VkAllocationCallbacks , pModule: ptr VkCuModuleNVX ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateCuFunctionNVX*(device: VkDevice, pCreateInfo: ptr VkCuFunctionCreateInfoNVX , pAllocator: ptr VkAllocationCallbacks , pFunction: ptr VkCuFunctionNVX ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyCuModuleNVX*(device: VkDevice, module: VkCuModuleNVX, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyCuFunctionNVX*(device: VkDevice, function: VkCuFunctionNVX, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdCuLaunchKernelNVX*(commandBuffer: VkCommandBuffer, pLaunchInfo: ptr VkCuLaunchInfoNVX ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDescriptorSetLayoutSizeEXT*(device: VkDevice, layout: VkDescriptorSetLayout, pLayoutSizeInBytes: ptr VkDeviceSize ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDescriptorSetLayoutBindingOffsetEXT*(device: VkDevice, layout: VkDescriptorSetLayout, binding: uint32, pOffset: ptr VkDeviceSize ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDescriptorEXT*(device: VkDevice, pDescriptorInfo: ptr VkDescriptorGetInfoEXT , dataSize: uint, pDescriptor: pointer ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdBindDescriptorBuffersEXT*(commandBuffer: VkCommandBuffer, bufferCount: uint32, pBindingInfos: ptr VkDescriptorBufferBindingInfoEXT ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdSetDescriptorBufferOffsetsEXT*(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, firstSet: uint32, setCount: uint32, pBufferIndices: ptr uint32 , pOffsets: ptr VkDeviceSize ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateCuModuleNVX*(device: VkDevice, pCreateInfo: ptr VkCuModuleCreateInfoNVX, pAllocator: ptr VkAllocationCallbacks, pModule: ptr VkCuModuleNVX): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateCuFunctionNVX*(device: VkDevice, pCreateInfo: ptr VkCuFunctionCreateInfoNVX, pAllocator: ptr VkAllocationCallbacks, pFunction: ptr VkCuFunctionNVX): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyCuModuleNVX*(device: VkDevice, module: VkCuModuleNVX, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyCuFunctionNVX*(device: VkDevice, function: VkCuFunctionNVX, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdCuLaunchKernelNVX*(commandBuffer: VkCommandBuffer, pLaunchInfo: ptr VkCuLaunchInfoNVX): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDescriptorSetLayoutSizeEXT*(device: VkDevice, layout: VkDescriptorSetLayout, pLayoutSizeInBytes: ptr VkDeviceSize): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDescriptorSetLayoutBindingOffsetEXT*(device: VkDevice, layout: VkDescriptorSetLayout, binding: uint32, pOffset: ptr VkDeviceSize): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDescriptorEXT*(device: VkDevice, pDescriptorInfo: ptr VkDescriptorGetInfoEXT, dataSize: uint, pDescriptor: pointer): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdBindDescriptorBuffersEXT*(commandBuffer: VkCommandBuffer, bufferCount: uint32, pBindingInfos: ptr VkDescriptorBufferBindingInfoEXT): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetDescriptorBufferOffsetsEXT*(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, firstSet: uint32, setCount: uint32, pBufferIndices: ptr uint32, pOffsets: ptr VkDeviceSize): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdBindDescriptorBufferEmbeddedSamplersEXT*(commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, set: uint32): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetBufferOpaqueCaptureDescriptorDataEXT*(device: VkDevice, pInfo: ptr VkBufferCaptureDescriptorDataInfoEXT , pData: pointer ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetImageOpaqueCaptureDescriptorDataEXT*(device: VkDevice, pInfo: ptr VkImageCaptureDescriptorDataInfoEXT , pData: pointer ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetImageViewOpaqueCaptureDescriptorDataEXT*(device: VkDevice, pInfo: ptr VkImageViewCaptureDescriptorDataInfoEXT , pData: pointer ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetSamplerOpaqueCaptureDescriptorDataEXT*(device: VkDevice, pInfo: ptr VkSamplerCaptureDescriptorDataInfoEXT , pData: pointer ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT*(device: VkDevice, pInfo: ptr VkAccelerationStructureCaptureDescriptorDataInfoEXT , pData: pointer ): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetBufferOpaqueCaptureDescriptorDataEXT*(device: VkDevice, pInfo: ptr VkBufferCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetImageOpaqueCaptureDescriptorDataEXT*(device: VkDevice, pInfo: ptr VkImageCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetImageViewOpaqueCaptureDescriptorDataEXT*(device: VkDevice, pInfo: ptr VkImageViewCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetSamplerOpaqueCaptureDescriptorDataEXT*(device: VkDevice, pInfo: ptr VkSamplerCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT*(device: VkDevice, pInfo: ptr VkAccelerationStructureCaptureDescriptorDataInfoEXT, pData: pointer): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkSetDeviceMemoryPriorityEXT*(device: VkDevice, memory: VkDeviceMemory, priority: float32): void {.cdecl, importc, dynlib: vkDLL.} proc vkAcquireDrmDisplayEXT*(physicalDevice: VkPhysicalDevice, drmFd: int32, display: VkDisplayKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDrmDisplayEXT*(physicalDevice: VkPhysicalDevice, drmFd: int32, connectorId: uint32, display: ptr VkDisplayKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDrmDisplayEXT*(physicalDevice: VkPhysicalDevice, drmFd: int32, connectorId: uint32, display: ptr VkDisplayKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} proc vkWaitForPresentKHR*(device: VkDevice, swapchain: VkSwapchainKHR, presentId: uint64, timeout: uint64): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateBufferCollectionFUCHSIA*(device: VkDevice, pCreateInfo: ptr VkBufferCollectionCreateInfoFUCHSIA , pAllocator: ptr VkAllocationCallbacks , pCollection: ptr VkBufferCollectionFUCHSIA ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkSetBufferCollectionBufferConstraintsFUCHSIA*(device: VkDevice, collection: VkBufferCollectionFUCHSIA, pBufferConstraintsInfo: ptr VkBufferConstraintsInfoFUCHSIA ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkSetBufferCollectionImageConstraintsFUCHSIA*(device: VkDevice, collection: VkBufferCollectionFUCHSIA, pImageConstraintsInfo: ptr VkImageConstraintsInfoFUCHSIA ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyBufferCollectionFUCHSIA*(device: VkDevice, collection: VkBufferCollectionFUCHSIA, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetBufferCollectionPropertiesFUCHSIA*(device: VkDevice, collection: VkBufferCollectionFUCHSIA, pProperties: ptr VkBufferCollectionPropertiesFUCHSIA ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdBeginRendering*(commandBuffer: VkCommandBuffer, pRenderingInfo: ptr VkRenderingInfo ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateBufferCollectionFUCHSIA*(device: VkDevice, pCreateInfo: ptr VkBufferCollectionCreateInfoFUCHSIA, pAllocator: ptr VkAllocationCallbacks, pCollection: ptr VkBufferCollectionFUCHSIA): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkSetBufferCollectionBufferConstraintsFUCHSIA*(device: VkDevice, collection: VkBufferCollectionFUCHSIA, pBufferConstraintsInfo: ptr VkBufferConstraintsInfoFUCHSIA): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkSetBufferCollectionImageConstraintsFUCHSIA*(device: VkDevice, collection: VkBufferCollectionFUCHSIA, pImageConstraintsInfo: ptr VkImageConstraintsInfoFUCHSIA): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyBufferCollectionFUCHSIA*(device: VkDevice, collection: VkBufferCollectionFUCHSIA, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetBufferCollectionPropertiesFUCHSIA*(device: VkDevice, collection: VkBufferCollectionFUCHSIA, pProperties: ptr VkBufferCollectionPropertiesFUCHSIA): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdBeginRendering*(commandBuffer: VkCommandBuffer, pRenderingInfo: ptr VkRenderingInfo): void {.cdecl, importc, dynlib: vkDLL.} proc vkCmdEndRendering*(commandBuffer: VkCommandBuffer): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDescriptorSetLayoutHostMappingInfoVALVE*(device: VkDevice, pBindingReference: ptr VkDescriptorSetBindingReferenceVALVE , pHostMapping: ptr VkDescriptorSetLayoutHostMappingInfoVALVE ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDescriptorSetHostMappingVALVE*(device: VkDevice, descriptorSet: VkDescriptorSet, ppData: ptr pointer ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateMicromapEXT*(device: VkDevice, pCreateInfo: ptr VkMicromapCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pMicromap: ptr VkMicromapEXT ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdBuildMicromapsEXT*(commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkMicromapBuildInfoEXT ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkBuildMicromapsEXT*(device: VkDevice, deferredOperation: VkDeferredOperationKHR, infoCount: uint32, pInfos: ptr VkMicromapBuildInfoEXT ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyMicromapEXT*(device: VkDevice, micromap: VkMicromapEXT, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdCopyMicromapEXT*(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMicromapInfoEXT ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCopyMicromapEXT*(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMicromapInfoEXT ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdCopyMicromapToMemoryEXT*(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMicromapToMemoryInfoEXT ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCopyMicromapToMemoryEXT*(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMicromapToMemoryInfoEXT ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdCopyMemoryToMicromapEXT*(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMemoryToMicromapInfoEXT ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkCopyMemoryToMicromapEXT*(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMemoryToMicromapInfoEXT ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdWriteMicromapsPropertiesEXT*(commandBuffer: VkCommandBuffer, micromapCount: uint32, pMicromaps: ptr VkMicromapEXT , queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.cdecl, importc, dynlib: vkDLL.} -proc vkWriteMicromapsPropertiesEXT*(device: VkDevice, micromapCount: uint32, pMicromaps: ptr VkMicromapEXT , queryType: VkQueryType, dataSize: uint, pData: pointer , stride: uint): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDeviceMicromapCompatibilityEXT*(device: VkDevice, pVersionInfo: ptr VkMicromapVersionInfoEXT , pCompatibility: ptr VkAccelerationStructureCompatibilityKHR ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetMicromapBuildSizesEXT*(device: VkDevice, buildType: VkAccelerationStructureBuildTypeKHR, pBuildInfo: ptr VkMicromapBuildInfoEXT , pSizeInfo: ptr VkMicromapBuildSizesInfoEXT ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetShaderModuleIdentifierEXT*(device: VkDevice, shaderModule: VkShaderModule, pIdentifier: ptr VkShaderModuleIdentifierEXT ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetShaderModuleCreateInfoIdentifierEXT*(device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo , pIdentifier: ptr VkShaderModuleIdentifierEXT ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetImageSubresourceLayout2EXT*(device: VkDevice, image: VkImage, pSubresource: ptr VkImageSubresource2EXT , pLayout: ptr VkSubresourceLayout2EXT ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPipelinePropertiesEXT*(device: VkDevice, pPipelineInfo: ptr VkPipelineInfoEXT , pPipelineProperties: ptr VkBaseOutStructure ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkExportMetalObjectsEXT*(device: VkDevice, pMetalObjectsInfo: ptr VkExportMetalObjectsInfoEXT ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetFramebufferTilePropertiesQCOM*(device: VkDevice, framebuffer: VkFramebuffer, pPropertiesCount: ptr uint32 , pProperties: ptr VkTilePropertiesQCOM ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDynamicRenderingTilePropertiesQCOM*(device: VkDevice, pRenderingInfo: ptr VkRenderingInfo , pProperties: ptr VkTilePropertiesQCOM ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkGetPhysicalDeviceOpticalFlowImageFormatsNV*(physicalDevice: VkPhysicalDevice, pOpticalFlowImageFormatInfo: ptr VkOpticalFlowImageFormatInfoNV , pFormatCount: ptr uint32 , pImageFormatProperties: ptr VkOpticalFlowImageFormatPropertiesNV ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateOpticalFlowSessionNV*(device: VkDevice, pCreateInfo: ptr VkOpticalFlowSessionCreateInfoNV , pAllocator: ptr VkAllocationCallbacks , pSession: ptr VkOpticalFlowSessionNV ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyOpticalFlowSessionNV*(device: VkDevice, session: VkOpticalFlowSessionNV, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDescriptorSetLayoutHostMappingInfoVALVE*(device: VkDevice, pBindingReference: ptr VkDescriptorSetBindingReferenceVALVE, pHostMapping: ptr VkDescriptorSetLayoutHostMappingInfoVALVE): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDescriptorSetHostMappingVALVE*(device: VkDevice, descriptorSet: VkDescriptorSet, ppData: ptr pointer): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateMicromapEXT*(device: VkDevice, pCreateInfo: ptr VkMicromapCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pMicromap: ptr VkMicromapEXT): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdBuildMicromapsEXT*(commandBuffer: VkCommandBuffer, infoCount: uint32, pInfos: ptr VkMicromapBuildInfoEXT): void {.cdecl, importc, dynlib: vkDLL.} +proc vkBuildMicromapsEXT*(device: VkDevice, deferredOperation: VkDeferredOperationKHR, infoCount: uint32, pInfos: ptr VkMicromapBuildInfoEXT): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyMicromapEXT*(device: VkDevice, micromap: VkMicromapEXT, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdCopyMicromapEXT*(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMicromapInfoEXT): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCopyMicromapEXT*(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMicromapInfoEXT): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdCopyMicromapToMemoryEXT*(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMicromapToMemoryInfoEXT): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCopyMicromapToMemoryEXT*(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMicromapToMemoryInfoEXT): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdCopyMemoryToMicromapEXT*(commandBuffer: VkCommandBuffer, pInfo: ptr VkCopyMemoryToMicromapInfoEXT): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCopyMemoryToMicromapEXT*(device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: ptr VkCopyMemoryToMicromapInfoEXT): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdWriteMicromapsPropertiesEXT*(commandBuffer: VkCommandBuffer, micromapCount: uint32, pMicromaps: ptr VkMicromapEXT, queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: uint32): void {.cdecl, importc, dynlib: vkDLL.} +proc vkWriteMicromapsPropertiesEXT*(device: VkDevice, micromapCount: uint32, pMicromaps: ptr VkMicromapEXT, queryType: VkQueryType, dataSize: uint, pData: pointer, stride: uint): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDeviceMicromapCompatibilityEXT*(device: VkDevice, pVersionInfo: ptr VkMicromapVersionInfoEXT, pCompatibility: ptr VkAccelerationStructureCompatibilityKHR): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetMicromapBuildSizesEXT*(device: VkDevice, buildType: VkAccelerationStructureBuildTypeKHR, pBuildInfo: ptr VkMicromapBuildInfoEXT, pSizeInfo: ptr VkMicromapBuildSizesInfoEXT): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetShaderModuleIdentifierEXT*(device: VkDevice, shaderModule: VkShaderModule, pIdentifier: ptr VkShaderModuleIdentifierEXT): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetShaderModuleCreateInfoIdentifierEXT*(device: VkDevice, pCreateInfo: ptr VkShaderModuleCreateInfo, pIdentifier: ptr VkShaderModuleIdentifierEXT): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetImageSubresourceLayout2KHR*(device: VkDevice, image: VkImage, pSubresource: ptr VkImageSubresource2KHR, pLayout: ptr VkSubresourceLayout2KHR): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPipelinePropertiesEXT*(device: VkDevice, pPipelineInfo: ptr VkPipelineInfoEXT, pPipelineProperties: ptr VkBaseOutStructure): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkExportMetalObjectsEXT*(device: VkDevice, pMetalObjectsInfo: ptr VkExportMetalObjectsInfoEXT): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetFramebufferTilePropertiesQCOM*(device: VkDevice, framebuffer: VkFramebuffer, pPropertiesCount: ptr uint32, pProperties: ptr VkTilePropertiesQCOM): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDynamicRenderingTilePropertiesQCOM*(device: VkDevice, pRenderingInfo: ptr VkRenderingInfo, pProperties: ptr VkTilePropertiesQCOM): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceOpticalFlowImageFormatsNV*(physicalDevice: VkPhysicalDevice, pOpticalFlowImageFormatInfo: ptr VkOpticalFlowImageFormatInfoNV, pFormatCount: ptr uint32, pImageFormatProperties: ptr VkOpticalFlowImageFormatPropertiesNV): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateOpticalFlowSessionNV*(device: VkDevice, pCreateInfo: ptr VkOpticalFlowSessionCreateInfoNV, pAllocator: ptr VkAllocationCallbacks, pSession: ptr VkOpticalFlowSessionNV): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyOpticalFlowSessionNV*(device: VkDevice, session: VkOpticalFlowSessionNV, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} proc vkBindOpticalFlowSessionImageNV*(device: VkDevice, session: VkOpticalFlowSessionNV, bindingPoint: VkOpticalFlowSessionBindingPointNV, view: VkImageView, layout: VkImageLayout): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdOpticalFlowExecuteNV*(commandBuffer: VkCommandBuffer, session: VkOpticalFlowSessionNV, pExecuteInfo: ptr VkOpticalFlowExecuteInfoNV ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetDeviceFaultInfoEXT*(device: VkDevice, pFaultCounts: ptr VkDeviceFaultCountsEXT , pFaultInfo: ptr VkDeviceFaultInfoEXT ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkReleaseSwapchainImagesEXT*(device: VkDevice, pReleaseInfo: ptr VkReleaseSwapchainImagesInfoEXT ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkMapMemory2KHR*(device: VkDevice, pMemoryMapInfo: ptr VkMemoryMapInfoKHR , ppData: ptr pointer ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkUnmapMemory2KHR*(device: VkDevice, pMemoryUnmapInfo: ptr VkMemoryUnmapInfoKHR ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCreateShadersEXT*(device: VkDevice, createInfoCount: uint32, pCreateInfos: ptr VkShaderCreateInfoEXT , pAllocator: ptr VkAllocationCallbacks , pShaders: ptr VkShaderEXT ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkDestroyShaderEXT*(device: VkDevice, shader: VkShaderEXT, pAllocator: ptr VkAllocationCallbacks ): void {.cdecl, importc, dynlib: vkDLL.} -proc vkGetShaderBinaryDataEXT*(device: VkDevice, shader: VkShaderEXT, pDataSize: ptr uint , pData: pointer ): VkResult {.cdecl, importc, dynlib: vkDLL.} -proc vkCmdBindShadersEXT*(commandBuffer: VkCommandBuffer, stageCount: uint32, pStages: ptr VkShaderStageFlagBits , pShaders: ptr VkShaderEXT ): void {.cdecl, importc, dynlib: vkDLL.} -# Extension: VK_VERSION_1_0 +proc vkCmdOpticalFlowExecuteNV*(commandBuffer: VkCommandBuffer, session: VkOpticalFlowSessionNV, pExecuteInfo: ptr VkOpticalFlowExecuteInfoNV): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDeviceFaultInfoEXT*(device: VkDevice, pFaultCounts: ptr VkDeviceFaultCountsEXT, pFaultInfo: ptr VkDeviceFaultInfoEXT): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdSetDepthBias2EXT*(commandBuffer: VkCommandBuffer, pDepthBiasInfo: ptr VkDepthBiasInfoEXT): void {.cdecl, importc, dynlib: vkDLL.} +proc vkReleaseSwapchainImagesEXT*(device: VkDevice, pReleaseInfo: ptr VkReleaseSwapchainImagesInfoEXT): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetDeviceImageSubresourceLayoutKHR*(device: VkDevice, pInfo: ptr VkDeviceImageSubresourceInfoKHR, pLayout: ptr VkSubresourceLayout2KHR): void {.cdecl, importc, dynlib: vkDLL.} +proc vkMapMemory2KHR*(device: VkDevice, pMemoryMapInfo: ptr VkMemoryMapInfoKHR, ppData: ptr pointer): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkUnmapMemory2KHR*(device: VkDevice, pMemoryUnmapInfo: ptr VkMemoryUnmapInfoKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateShadersEXT*(device: VkDevice, createInfoCount: uint32, pCreateInfos: ptr VkShaderCreateInfoEXT, pAllocator: ptr VkAllocationCallbacks, pShaders: ptr VkShaderEXT): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkDestroyShaderEXT*(device: VkDevice, shader: VkShaderEXT, pAllocator: ptr VkAllocationCallbacks): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetShaderBinaryDataEXT*(device: VkDevice, shader: VkShaderEXT, pDataSize: ptr uint, pData: pointer): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdBindShadersEXT*(commandBuffer: VkCommandBuffer, stageCount: uint32, pStages: ptr VkShaderStageFlagBits, pShaders: ptr VkShaderEXT): void {.cdecl, importc, dynlib: vkDLL.} +proc vkGetScreenBufferPropertiesQNX*(device: VkDevice, buffer: ptr screen_buffer, pProperties: ptr VkScreenBufferPropertiesQNX): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR*(physicalDevice: VkPhysicalDevice, pPropertyCount: ptr uint32, pProperties: ptr VkCooperativeMatrixPropertiesKHR): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetExecutionGraphPipelineScratchSizeAMDX*(device: VkDevice, executionGraph: VkPipeline, pSizeInfo: ptr VkExecutionGraphPipelineScratchSizeAMDX): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkGetExecutionGraphPipelineNodeIndexAMDX*(device: VkDevice, executionGraph: VkPipeline, pNodeInfo: ptr VkPipelineShaderStageNodeCreateInfoAMDX, pNodeIndex: ptr uint32): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCreateExecutionGraphPipelinesAMDX*(device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: uint32, pCreateInfos: ptr VkExecutionGraphPipelineCreateInfoAMDX, pAllocator: ptr VkAllocationCallbacks, pPipelines: ptr VkPipeline): VkResult {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdInitializeGraphScratchMemoryAMDX*(commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdDispatchGraphAMDX*(commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, pCountInfo: ptr VkDispatchGraphCountInfoAMDX): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdDispatchGraphIndirectAMDX*(commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, pCountInfo: ptr VkDispatchGraphCountInfoAMDX): void {.cdecl, importc, dynlib: vkDLL.} +proc vkCmdDispatchGraphIndirectCountAMDX*(commandBuffer: VkCommandBuffer, scratch: VkDeviceAddress, countInfo: VkDeviceAddress): void {.cdecl, importc, dynlib: vkDLL.} +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 + +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 = VK_STRUCTURE_TYPE_APPLICATION_INFO, 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 = VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO, 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 = VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE, 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 = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET, pNext: pointer = nil, dstSet: VkDescriptorSet, dstBinding: uint32, dstArrayElement: uint32, descriptorCount: uint32, descriptorType: VkDescriptorType, pImageInfo: ptr VkDescriptorImageInfo, pBufferInfo: 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 = VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET, 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 = VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO_KHR, pNext: pointer = nil, usage: VkBufferUsageFlags2KHR): VkBufferUsageFlags2CreateInfoKHR = + result.sType = sType + result.pNext = pNext + result.usage = usage + +proc newVkBufferCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_MEMORY_BARRIER, pNext: pointer = nil, srcAccessMask: VkAccessFlags, dstAccessMask: VkAccessFlags): VkMemoryBarrier = + result.sType = sType + result.pNext = pNext + result.srcAccessMask = srcAccessMask + result.dstAccessMask = dstAccessMask + +proc newVkBufferMemoryBarrier*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER, 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 = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER, 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 = VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_BIND_SPARSE_INFO, 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 = VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO, 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 = VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO, 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 + +proc newVkComputePipelineCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_INDIRECT_BUFFER_INFO_NV, 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 = VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO_KHR, 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 = VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO, 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 + +proc newVkPipelineCacheCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO, 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 + +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 = VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO, 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 = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO, 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 = VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO, 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 = VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO, 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 newVkClearColorValue*(float32: array[4, float32], int32: array[4, int32], uint32: array[4, uint32]): VkClearColorValue = + result.float32 = float32 + result.int32 = int32 + result.uint32 = uint32 + +proc newVkClearDepthStencilValue*(depth: float32, stencil: uint32): VkClearDepthStencilValue = + result.depth = depth + result.stencil = stencil + +proc newVkClearValue*(color: VkClearColorValue, depthStencil: VkClearDepthStencilValue): VkClearValue = + result.color = color + result.depthStencil = depthStencil + +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 = VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_EVENT_CREATE_INFO, pNext: pointer = nil, flags: VkEventCreateFlags = 0.VkEventCreateFlags): VkEventCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + +proc newVkFenceCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_FENCE_CREATE_INFO, 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 + 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 + +proc newVkSemaphoreCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO, pNext: pointer = nil, flags: VkSemaphoreCreateFlags = 0.VkSemaphoreCreateFlags): VkSemaphoreCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + +proc newVkQueryPoolCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_SUBMIT_INFO, 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 = VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR, 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 = VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR, 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 = VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR, 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 = VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR, 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 = VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN, 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 = VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR, 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 = VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR, 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 = VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR, 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 = VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR, 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 = VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT, 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 = VK_STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA, 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 = VK_STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP, 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 = VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX, 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 = VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR, 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 + +proc newVkPresentInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PRESENT_INFO_KHR, 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 = VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT, 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 = VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT, 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 = VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT, 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 newVkApplicationParametersEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_APPLICATION_PARAMETERS_EXT, 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 = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD, pNext: pointer = nil, rasterizationOrder: VkRasterizationOrderAMD): VkPipelineRasterizationStateRasterizationOrderAMD = + result.sType = sType + result.pNext = pNext + result.rasterizationOrder = rasterizationOrder + +proc newVkDebugMarkerObjectNameInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT, 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 = VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT, 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 = VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT, 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 = VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV, pNext: pointer = nil, dedicatedAllocation: VkBool32): VkDedicatedAllocationImageCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.dedicatedAllocation = dedicatedAllocation + +proc newVkDedicatedAllocationBufferCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV, pNext: pointer = nil, dedicatedAllocation: VkBool32): VkDedicatedAllocationBufferCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.dedicatedAllocation = dedicatedAllocation + +proc newVkDedicatedAllocationMemoryAllocateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV, 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 = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlagsNV): VkExternalMemoryImageCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.handleTypes = handleTypes + +proc newVkExportMemoryAllocateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlagsNV): VkExportMemoryAllocateInfoNV = + result.sType = sType + result.pNext = pNext + result.handleTypes = handleTypes + +proc newVkImportMemoryWin32HandleInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagsNV, handle: HANDLE): VkImportMemoryWin32HandleInfoNV = + result.sType = sType + result.pNext = pNext + result.handleType = handleType + result.handle = handle + +proc newVkExportMemoryWin32HandleInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV, 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 = VK_STRUCTURE_TYPE_EXPORT_MEMORY_SCI_BUF_INFO_NV, pNext: pointer = nil, pAttributes: NvSciBufAttrList): VkExportMemorySciBufInfoNV = + result.sType = sType + result.pNext = pNext + result.pAttributes = pAttributes + +proc newVkImportMemorySciBufInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_MEMORY_SCI_BUF_INFO_NV, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, handle: NvSciBufObj): VkImportMemorySciBufInfoNV = + result.sType = sType + result.pNext = pNext + result.handleType = handleType + result.handle = handle + +proc newVkMemoryGetSciBufInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_GET_SCI_BUF_INFO_NV, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetSciBufInfoNV = + result.sType = sType + result.pNext = pNext + result.memory = memory + result.handleType = handleType + +proc newVkMemorySciBufPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_SCI_BUF_PROPERTIES_NV, pNext: pointer = nil, memoryTypeBits: uint32): VkMemorySciBufPropertiesNV = + result.sType = sType + result.pNext = pNext + result.memoryTypeBits = memoryTypeBits + +proc newVkPhysicalDeviceExternalMemorySciBufFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_SCI_BUF_FEATURES_NV, pNext: pointer = nil, sciBufImport: VkBool32, sciBufExport: VkBool32): VkPhysicalDeviceExternalMemorySciBufFeaturesNV = + result.sType = sType + result.pNext = pNext + result.sciBufImport = sciBufImport + result.sciBufExport = sciBufExport + +proc newVkWin32KeyedMutexAcquireReleaseInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV, pNext: pointer = nil, deviceGeneratedCommands: VkBool32): VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV = + result.sType = sType + result.pNext = pNext + result.deviceGeneratedCommands = deviceGeneratedCommands + +proc newVkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_COMPUTE_FEATURES_NV, 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 = VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO, pNext: pointer = nil, privateDataSlotRequestCount: uint32): VkDevicePrivateDataCreateInfo = + result.sType = sType + result.pNext = pNext + result.privateDataSlotRequestCount = privateDataSlotRequestCount + +proc newVkPrivateDataSlotCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO, pNext: pointer = nil, flags: VkPrivateDataSlotCreateFlags = 0.VkPrivateDataSlotCreateFlags): VkPrivateDataSlotCreateInfo = + result.sType = sType + result.pNext = pNext + result.flags = flags + +proc newVkPhysicalDevicePrivateDataFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES, pNext: pointer = nil, privateData: VkBool32): VkPhysicalDevicePrivateDataFeatures = + result.sType = sType + result.pNext = pNext + result.privateData = privateData + +proc newVkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT, pNext: pointer = nil, maxMultiDrawCount: uint32): VkPhysicalDeviceMultiDrawPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.maxMultiDrawCount = maxMultiDrawCount + +proc newVkGraphicsShaderGroupCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV, 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 = VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV, 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 = VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV, 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 = VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV, 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 = VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV, 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 = VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV, 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 = VK_STRUCTURE_TYPE_PIPELINE_INDIRECT_DEVICE_ADDRESS_INFO_NV, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2, pNext: pointer = nil, features: VkPhysicalDeviceFeatures): VkPhysicalDeviceFeatures2 = + result.sType = sType + result.pNext = pNext + result.features = features + +proc newVkPhysicalDeviceProperties2*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2, pNext: pointer = nil, properties: VkPhysicalDeviceProperties): VkPhysicalDeviceProperties2 = + result.sType = sType + result.pNext = pNext + result.properties = properties + +proc newVkFormatProperties2*(sType: VkStructureType = VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2, pNext: pointer = nil, formatProperties: VkFormatProperties): VkFormatProperties2 = + result.sType = sType + result.pNext = pNext + result.formatProperties = formatProperties + +proc newVkImageFormatProperties2*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2, pNext: pointer = nil, imageFormatProperties: VkImageFormatProperties): VkImageFormatProperties2 = + result.sType = sType + result.pNext = pNext + result.imageFormatProperties = imageFormatProperties + +proc newVkPhysicalDeviceImageFormatInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2, 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 = VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2, pNext: pointer = nil, queueFamilyProperties: VkQueueFamilyProperties): VkQueueFamilyProperties2 = + result.sType = sType + result.pNext = pNext + result.queueFamilyProperties = queueFamilyProperties + +proc newVkPhysicalDeviceMemoryProperties2*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2, pNext: pointer = nil, memoryProperties: VkPhysicalDeviceMemoryProperties): VkPhysicalDeviceMemoryProperties2 = + result.sType = sType + result.pNext = pNext + result.memoryProperties = memoryProperties + +proc newVkSparseImageFormatProperties2*(sType: VkStructureType = VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2, pNext: pointer = nil, properties: VkSparseImageFormatProperties): VkSparseImageFormatProperties2 = + result.sType = sType + result.pNext = pNext + result.properties = properties + +proc newVkPhysicalDeviceSparseImageFormatInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES, 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 = VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits): VkPhysicalDeviceExternalImageFormatInfo = + result.sType = sType + result.pNext = pNext + result.handleType = handleType + +proc newVkExternalImageFormatProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES, pNext: pointer = nil, externalMemoryProperties: VkExternalMemoryProperties): VkExternalImageFormatProperties = + result.sType = sType + result.pNext = pNext + result.externalMemoryProperties = externalMemoryProperties + +proc newVkPhysicalDeviceExternalBufferInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO, 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 = VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES, pNext: pointer = nil, externalMemoryProperties: VkExternalMemoryProperties): VkExternalBufferProperties = + result.sType = sType + result.pNext = pNext + result.externalMemoryProperties = externalMemoryProperties + +proc newVkPhysicalDeviceIDProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES, 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 = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlags): VkExternalMemoryImageCreateInfo = + result.sType = sType + result.pNext = pNext + result.handleTypes = handleTypes + +proc newVkExternalMemoryBufferCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlags): VkExternalMemoryBufferCreateInfo = + result.sType = sType + result.pNext = pNext + result.handleTypes = handleTypes + +proc newVkExportMemoryAllocateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO, pNext: pointer = nil, handleTypes: VkExternalMemoryHandleTypeFlags): VkExportMemoryAllocateInfo = + result.sType = sType + result.pNext = pNext + result.handleTypes = handleTypes + +proc newVkImportMemoryWin32HandleInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR, 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 = VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR, 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 = VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA, 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 = VK_STRUCTURE_TYPE_MEMORY_ZIRCON_HANDLE_PROPERTIES_FUCHSIA, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryZirconHandlePropertiesFUCHSIA = + result.sType = sType + result.pNext = pNext + result.memoryTypeBits = memoryTypeBits + +proc newVkMemoryGetZirconHandleInfoFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetZirconHandleInfoFUCHSIA = + result.sType = sType + result.pNext = pNext + result.memory = memory + result.handleType = handleType + +proc newVkMemoryWin32HandlePropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryWin32HandlePropertiesKHR = + result.sType = sType + result.pNext = pNext + result.memoryTypeBits = memoryTypeBits + +proc newVkMemoryGetWin32HandleInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetWin32HandleInfoKHR = + result.sType = sType + result.pNext = pNext + result.memory = memory + result.handleType = handleType + +proc newVkImportMemoryFdInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR, pNext: pointer = nil, handleType: VkExternalMemoryHandleTypeFlagBits, fd: int): VkImportMemoryFdInfoKHR = + result.sType = sType + result.pNext = pNext + result.handleType = handleType + result.fd = fd + +proc newVkMemoryFdPropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryFdPropertiesKHR = + result.sType = sType + result.pNext = pNext + result.memoryTypeBits = memoryTypeBits + +proc newVkMemoryGetFdInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetFdInfoKHR = + result.sType = sType + result.pNext = pNext + result.memory = memory + result.handleType = handleType + +proc newVkWin32KeyedMutexAcquireReleaseInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO, pNext: pointer = nil, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkPhysicalDeviceExternalSemaphoreInfo = + result.sType = sType + result.pNext = pNext + result.handleType = handleType + +proc newVkExternalSemaphoreProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES, 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 = VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO, pNext: pointer = nil, handleTypes: VkExternalSemaphoreHandleTypeFlags): VkExportSemaphoreCreateInfo = + result.sType = sType + result.pNext = pNext + result.handleTypes = handleTypes + +proc newVkImportSemaphoreWin32HandleInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR, 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 = VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR, 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 = VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR, 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 = VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetWin32HandleInfoKHR = + result.sType = sType + result.pNext = pNext + result.semaphore = semaphore + result.handleType = handleType + +proc newVkImportSemaphoreFdInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR, 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 = VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetFdInfoKHR = + result.sType = sType + result.pNext = pNext + result.semaphore = semaphore + result.handleType = handleType + +proc newVkImportSemaphoreZirconHandleInfoFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA, 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 = VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetZirconHandleInfoFUCHSIA = + result.sType = sType + result.pNext = pNext + result.semaphore = semaphore + result.handleType = handleType + +proc newVkPhysicalDeviceExternalFenceInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO, pNext: pointer = nil, handleType: VkExternalFenceHandleTypeFlagBits): VkPhysicalDeviceExternalFenceInfo = + result.sType = sType + result.pNext = pNext + result.handleType = handleType + +proc newVkExternalFenceProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES, 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 = VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO, pNext: pointer = nil, handleTypes: VkExternalFenceHandleTypeFlags): VkExportFenceCreateInfo = + result.sType = sType + result.pNext = pNext + result.handleTypes = handleTypes + +proc newVkImportFenceWin32HandleInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR, 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 = VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR, 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 = VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR, pNext: pointer = nil, fence: VkFence, handleType: VkExternalFenceHandleTypeFlagBits): VkFenceGetWin32HandleInfoKHR = + result.sType = sType + result.pNext = pNext + result.fence = fence + result.handleType = handleType + +proc newVkImportFenceFdInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR, 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 = VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR, pNext: pointer = nil, fence: VkFence, handleType: VkExternalFenceHandleTypeFlagBits): VkFenceGetFdInfoKHR = + result.sType = sType + result.pNext = pNext + result.fence = fence + result.handleType = handleType + +proc newVkExportFenceSciSyncInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_FENCE_SCI_SYNC_INFO_NV, pNext: pointer = nil, pAttributes: NvSciSyncAttrList): VkExportFenceSciSyncInfoNV = + result.sType = sType + result.pNext = pNext + result.pAttributes = pAttributes + +proc newVkImportFenceSciSyncInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_FENCE_SCI_SYNC_INFO_NV, 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 = VK_STRUCTURE_TYPE_FENCE_GET_SCI_SYNC_INFO_NV, pNext: pointer = nil, fence: VkFence, handleType: VkExternalFenceHandleTypeFlagBits): VkFenceGetSciSyncInfoNV = + result.sType = sType + result.pNext = pNext + result.fence = fence + result.handleType = handleType + +proc newVkExportSemaphoreSciSyncInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_SCI_SYNC_INFO_NV, pNext: pointer = nil, pAttributes: NvSciSyncAttrList): VkExportSemaphoreSciSyncInfoNV = + result.sType = sType + result.pNext = pNext + result.pAttributes = pAttributes + +proc newVkImportSemaphoreSciSyncInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_SCI_SYNC_INFO_NV, 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 = VK_STRUCTURE_TYPE_SEMAPHORE_GET_SCI_SYNC_INFO_NV, pNext: pointer = nil, semaphore: VkSemaphore, handleType: VkExternalSemaphoreHandleTypeFlagBits): VkSemaphoreGetSciSyncInfoNV = + result.sType = sType + result.pNext = pNext + result.semaphore = semaphore + result.handleType = handleType + +proc newVkSciSyncAttributesInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_SCI_SYNC_ATTRIBUTES_INFO_NV, pNext: pointer = nil, clientType: VkSciSyncClientTypeNV, primitiveType: VkSciSyncPrimitiveTypeNV): VkSciSyncAttributesInfoNV = + result.sType = sType + result.pNext = pNext + result.clientType = clientType + result.primitiveType = primitiveType + +proc newVkPhysicalDeviceExternalSciSyncFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SCI_SYNC_FEATURES_NV, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SCI_SYNC_2_FEATURES_NV, 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 = VK_STRUCTURE_TYPE_SEMAPHORE_SCI_SYNC_POOL_CREATE_INFO_NV, pNext: pointer = nil, handle: NvSciSyncObj): VkSemaphoreSciSyncPoolCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.handle = handle + +proc newVkSemaphoreSciSyncCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_SEMAPHORE_SCI_SYNC_CREATE_INFO_NV, 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 = VK_STRUCTURE_TYPE_DEVICE_SEMAPHORE_SCI_SYNC_POOL_RESERVATION_CREATE_INFO_NV, pNext: pointer = nil, semaphoreSciSyncPoolRequestCount: uint32): VkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.semaphoreSciSyncPoolRequestCount = semaphoreSciSyncPoolRequestCount + +proc newVkPhysicalDeviceMultiviewFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES, pNext: pointer = nil, maxMultiviewViewCount: uint32, maxMultiviewInstanceIndex: uint32): VkPhysicalDeviceMultiviewProperties = + result.sType = sType + result.pNext = pNext + result.maxMultiviewViewCount = maxMultiviewViewCount + result.maxMultiviewInstanceIndex = maxMultiviewInstanceIndex + +proc newVkRenderPassMultiviewCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT, 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 = VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT, pNext: pointer = nil, powerState: VkDisplayPowerStateEXT): VkDisplayPowerInfoEXT = + result.sType = sType + result.pNext = pNext + result.powerState = powerState + +proc newVkDeviceEventInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT, pNext: pointer = nil, deviceEvent: VkDeviceEventTypeEXT): VkDeviceEventInfoEXT = + result.sType = sType + result.pNext = pNext + result.deviceEvent = deviceEvent + +proc newVkDisplayEventInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT, pNext: pointer = nil, displayEvent: VkDisplayEventTypeEXT): VkDisplayEventInfoEXT = + result.sType = sType + result.pNext = pNext + result.displayEvent = displayEvent + +proc newVkSwapchainCounterCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT, pNext: pointer = nil, surfaceCounters: VkSurfaceCounterFlagsEXT): VkSwapchainCounterCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.surfaceCounters = surfaceCounters + +proc newVkPhysicalDeviceGroupProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES, 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 = VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO, 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 = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO, 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 = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO, 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 = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO, 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 = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO, 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 = VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO, 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 = VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO, pNext: pointer = nil, deviceMask: uint32): VkDeviceGroupCommandBufferBeginInfo = + result.sType = sType + result.pNext = pNext + result.deviceMask = deviceMask + +proc newVkDeviceGroupSubmitInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO, 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 = VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO, pNext: pointer = nil, resourceDeviceIndex: uint32, memoryDeviceIndex: uint32): VkDeviceGroupBindSparseInfo = + result.sType = sType + result.pNext = pNext + result.resourceDeviceIndex = resourceDeviceIndex + result.memoryDeviceIndex = memoryDeviceIndex + +proc newVkDeviceGroupPresentCapabilitiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR, 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 = VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR, pNext: pointer = nil, swapchain: VkSwapchainKHR): VkImageSwapchainCreateInfoKHR = + result.sType = sType + result.pNext = pNext + result.swapchain = swapchain + +proc newVkBindImageMemorySwapchainInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR, pNext: pointer = nil, swapchain: VkSwapchainKHR, imageIndex: uint32): VkBindImageMemorySwapchainInfoKHR = + result.sType = sType + result.pNext = pNext + result.swapchain = swapchain + result.imageIndex = imageIndex + +proc newVkAcquireNextImageInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR, 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 = VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR, 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 = VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR, 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 = VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR, pNext: pointer = nil, presentId: VkBool32): VkPhysicalDevicePresentIdFeaturesKHR = + result.sType = sType + result.pNext = pNext + result.presentId = presentId + +proc newVkPresentIdKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PRESENT_ID_KHR, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR, pNext: pointer = nil, presentWait: VkBool32): VkPhysicalDevicePresentWaitFeaturesKHR = + result.sType = sType + result.pNext = pNext + result.presentWait = presentWait + +proc newVkHdrMetadataEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_HDR_METADATA_EXT, 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 = VK_STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD, pNext: pointer = nil, localDimmingSupport: VkBool32): VkDisplayNativeHdrSurfaceCapabilitiesAMD = + result.sType = sType + result.pNext = pNext + result.localDimmingSupport = localDimmingSupport + +proc newVkSwapchainDisplayNativeHdrCreateInfoAMD*(sType: VkStructureType = VK_STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD, 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 = VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE, 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 = VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK, 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 = VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK, 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 = VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT, 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 = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV, 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 = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT, pNext: pointer = nil, maxDiscardRectangles: uint32): VkPhysicalDeviceDiscardRectanglePropertiesEXT = + result.sType = sType + result.pNext = pNext + result.maxDiscardRectangles = maxDiscardRectangles + +proc newVkPipelineDiscardRectangleStateCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX, 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 = VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR, pNext: pointer = nil, surface: VkSurfaceKHR): VkPhysicalDeviceSurfaceInfo2KHR = + result.sType = sType + result.pNext = pNext + result.surface = surface + +proc newVkSurfaceCapabilities2KHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR, pNext: pointer = nil, surfaceCapabilities: VkSurfaceCapabilitiesKHR): VkSurfaceCapabilities2KHR = + result.sType = sType + result.pNext = pNext + result.surfaceCapabilities = surfaceCapabilities + +proc newVkSurfaceFormat2KHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR, pNext: pointer = nil, surfaceFormat: VkSurfaceFormatKHR): VkSurfaceFormat2KHR = + result.sType = sType + result.pNext = pNext + result.surfaceFormat = surfaceFormat + +proc newVkDisplayProperties2KHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR, pNext: pointer = nil, displayProperties: VkDisplayPropertiesKHR): VkDisplayProperties2KHR = + result.sType = sType + result.pNext = pNext + result.displayProperties = displayProperties + +proc newVkDisplayPlaneProperties2KHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR, pNext: pointer = nil, displayPlaneProperties: VkDisplayPlanePropertiesKHR): VkDisplayPlaneProperties2KHR = + result.sType = sType + result.pNext = pNext + result.displayPlaneProperties = displayPlaneProperties + +proc newVkDisplayModeProperties2KHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR, pNext: pointer = nil, displayModeProperties: VkDisplayModePropertiesKHR): VkDisplayModeProperties2KHR = + result.sType = sType + result.pNext = pNext + result.displayModeProperties = displayModeProperties + +proc newVkDisplayPlaneInfo2KHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR, pNext: pointer = nil, mode: VkDisplayModeKHR, planeIndex: uint32): VkDisplayPlaneInfo2KHR = + result.sType = sType + result.pNext = pNext + result.mode = mode + result.planeIndex = planeIndex + +proc newVkDisplayPlaneCapabilities2KHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR, pNext: pointer = nil, capabilities: VkDisplayPlaneCapabilitiesKHR): VkDisplayPlaneCapabilities2KHR = + result.sType = sType + result.pNext = pNext + result.capabilities = capabilities + +proc newVkSharedPresentSurfaceCapabilitiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR, pNext: pointer = nil, sharedPresentSupportedUsageFlags: VkImageUsageFlags): VkSharedPresentSurfaceCapabilitiesKHR = + result.sType = sType + result.pNext = pNext + result.sharedPresentSupportedUsageFlags = sharedPresentSupportedUsageFlags + +proc newVkPhysicalDevice16BitStorageFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES, pNext: pointer = nil, shaderSubgroupExtendedTypes: VkBool32): VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures = + result.sType = sType + result.pNext = pNext + result.shaderSubgroupExtendedTypes = shaderSubgroupExtendedTypes + +proc newVkBufferMemoryRequirementsInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2, pNext: pointer = nil, buffer: VkBuffer): VkBufferMemoryRequirementsInfo2 = + result.sType = sType + result.pNext = pNext + result.buffer = buffer + +proc newVkDeviceBufferMemoryRequirements*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS, pNext: pointer = nil, pCreateInfo: ptr VkBufferCreateInfo): VkDeviceBufferMemoryRequirements = + result.sType = sType + result.pNext = pNext + result.pCreateInfo = pCreateInfo + +proc newVkImageMemoryRequirementsInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2, pNext: pointer = nil, image: VkImage): VkImageMemoryRequirementsInfo2 = + result.sType = sType + result.pNext = pNext + result.image = image + +proc newVkImageSparseMemoryRequirementsInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2, pNext: pointer = nil, image: VkImage): VkImageSparseMemoryRequirementsInfo2 = + result.sType = sType + result.pNext = pNext + result.image = image + +proc newVkDeviceImageMemoryRequirements*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS, 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 = VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2, pNext: pointer = nil, memoryRequirements: VkMemoryRequirements): VkMemoryRequirements2 = + result.sType = sType + result.pNext = pNext + result.memoryRequirements = memoryRequirements + +proc newVkSparseImageMemoryRequirements2*(sType: VkStructureType = VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2, pNext: pointer = nil, memoryRequirements: VkSparseImageMemoryRequirements): VkSparseImageMemoryRequirements2 = + result.sType = sType + result.pNext = pNext + result.memoryRequirements = memoryRequirements + +proc newVkPhysicalDevicePointClippingProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES, pNext: pointer = nil, pointClippingBehavior: VkPointClippingBehavior): VkPhysicalDevicePointClippingProperties = + result.sType = sType + result.pNext = pNext + result.pointClippingBehavior = pointClippingBehavior + +proc newVkMemoryDedicatedRequirements*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS, pNext: pointer = nil, prefersDedicatedAllocation: VkBool32, requiresDedicatedAllocation: VkBool32): VkMemoryDedicatedRequirements = + result.sType = sType + result.pNext = pNext + result.prefersDedicatedAllocation = prefersDedicatedAllocation + result.requiresDedicatedAllocation = requiresDedicatedAllocation + +proc newVkMemoryDedicatedAllocateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO, pNext: pointer = nil, image: VkImage, buffer: VkBuffer): VkMemoryDedicatedAllocateInfo = + result.sType = sType + result.pNext = pNext + result.image = image + result.buffer = buffer + +proc newVkImageViewUsageCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO, pNext: pointer = nil, usage: VkImageUsageFlags): VkImageViewUsageCreateInfo = + result.sType = sType + result.pNext = pNext + result.usage = usage + +proc newVkImageViewSlicedCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_VIEW_SLICED_CREATE_INFO_EXT, pNext: pointer = nil, sliceOffset: uint32, sliceCount: uint32): VkImageViewSlicedCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.sliceOffset = sliceOffset + result.sliceCount = sliceCount + +proc newVkPipelineTessellationDomainOriginStateCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO, pNext: pointer = nil, domainOrigin: VkTessellationDomainOrigin): VkPipelineTessellationDomainOriginStateCreateInfo = + result.sType = sType + result.pNext = pNext + result.domainOrigin = domainOrigin + +proc newVkSamplerYcbcrConversionInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO, pNext: pointer = nil, conversion: VkSamplerYcbcrConversion): VkSamplerYcbcrConversionInfo = + result.sType = sType + result.pNext = pNext + result.conversion = conversion + +proc newVkSamplerYcbcrConversionCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO, pNext: pointer = nil, planeAspect: VkImageAspectFlagBits): VkBindImagePlaneMemoryInfo = + result.sType = sType + result.pNext = pNext + result.planeAspect = planeAspect + +proc newVkImagePlaneMemoryRequirementsInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO, pNext: pointer = nil, planeAspect: VkImageAspectFlagBits): VkImagePlaneMemoryRequirementsInfo = + result.sType = sType + result.pNext = pNext + result.planeAspect = planeAspect + +proc newVkPhysicalDeviceSamplerYcbcrConversionFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES, pNext: pointer = nil, samplerYcbcrConversion: VkBool32): VkPhysicalDeviceSamplerYcbcrConversionFeatures = + result.sType = sType + result.pNext = pNext + result.samplerYcbcrConversion = samplerYcbcrConversion + +proc newVkSamplerYcbcrConversionImageFormatProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES, pNext: pointer = nil, combinedImageSamplerDescriptorCount: uint32): VkSamplerYcbcrConversionImageFormatProperties = + result.sType = sType + result.pNext = pNext + result.combinedImageSamplerDescriptorCount = combinedImageSamplerDescriptorCount + +proc newVkTextureLODGatherFormatPropertiesAMD*(sType: VkStructureType = VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD, pNext: pointer = nil, supportsTextureGatherLODBiasAMD: VkBool32): VkTextureLODGatherFormatPropertiesAMD = + result.sType = sType + result.pNext = pNext + result.supportsTextureGatherLODBiasAMD = supportsTextureGatherLODBiasAMD + +proc newVkConditionalRenderingBeginInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT, 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 = VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO, pNext: pointer = nil, protectedSubmit: VkBool32): VkProtectedSubmitInfo = + result.sType = sType + result.pNext = pNext + result.protectedSubmit = protectedSubmit + +proc newVkPhysicalDeviceProtectedMemoryFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES, pNext: pointer = nil, protectedMemory: VkBool32): VkPhysicalDeviceProtectedMemoryFeatures = + result.sType = sType + result.pNext = pNext + result.protectedMemory = protectedMemory + +proc newVkPhysicalDeviceProtectedMemoryProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES, pNext: pointer = nil, protectedNoFault: VkBool32): VkPhysicalDeviceProtectedMemoryProperties = + result.sType = sType + result.pNext = pNext + result.protectedNoFault = protectedNoFault + +proc newVkDeviceQueueInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2, 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 = VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES, 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 = VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT, 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 = VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT, 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 = VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT, pNext: pointer = nil, sampleLocationsEnable: VkBool32, sampleLocationsInfo: VkSampleLocationsInfoEXT): VkPipelineSampleLocationsStateCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.sampleLocationsEnable = sampleLocationsEnable + result.sampleLocationsInfo = sampleLocationsInfo + +proc newVkPhysicalDeviceSampleLocationsPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT, 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 = VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT, pNext: pointer = nil, maxSampleLocationGridSize: VkExtent2D): VkMultisamplePropertiesEXT = + result.sType = sType + result.pNext = pNext + result.maxSampleLocationGridSize = maxSampleLocationGridSize + +proc newVkSamplerReductionModeCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO, pNext: pointer = nil, reductionMode: VkSamplerReductionMode): VkSamplerReductionModeCreateInfo = + result.sType = sType + result.pNext = pNext + result.reductionMode = reductionMode + +proc newVkPhysicalDeviceBlendOperationAdvancedFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT, pNext: pointer = nil, advancedBlendCoherentOperations: VkBool32): VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.advancedBlendCoherentOperations = advancedBlendCoherentOperations + +proc newVkPhysicalDeviceMultiDrawFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT, pNext: pointer = nil, multiDraw: VkBool32): VkPhysicalDeviceMultiDrawFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.multiDraw = multiDraw + +proc newVkPhysicalDeviceBlendOperationAdvancedPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT, 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 = VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES, pNext: pointer = nil, inlineUniformBlock: VkBool32, descriptorBindingInlineUniformBlockUpdateAfterBind: VkBool32): VkPhysicalDeviceInlineUniformBlockFeatures = + result.sType = sType + result.pNext = pNext + result.inlineUniformBlock = inlineUniformBlock + result.descriptorBindingInlineUniformBlockUpdateAfterBind = descriptorBindingInlineUniformBlockUpdateAfterBind + +proc newVkPhysicalDeviceInlineUniformBlockProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES, 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 = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK, 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 = VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO, pNext: pointer = nil, maxInlineUniformBlockBindings: uint32): VkDescriptorPoolInlineUniformBlockCreateInfo = + result.sType = sType + result.pNext = pNext + result.maxInlineUniformBlockBindings = maxInlineUniformBlockBindings + +proc newVkPipelineCoverageModulationStateCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV, 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 = VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT, 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 = VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT, pNext: pointer = nil, validationCache: VkValidationCacheEXT): VkShaderModuleValidationCacheCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.validationCache = validationCache + +proc newVkPhysicalDeviceMaintenance3Properties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES, pNext: pointer = nil, maxPerSetDescriptors: uint32, maxMemoryAllocationSize: VkDeviceSize): VkPhysicalDeviceMaintenance3Properties = + result.sType = sType + result.pNext = pNext + result.maxPerSetDescriptors = maxPerSetDescriptors + result.maxMemoryAllocationSize = maxMemoryAllocationSize + +proc newVkPhysicalDeviceMaintenance4Features*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES, pNext: pointer = nil, maintenance4: VkBool32): VkPhysicalDeviceMaintenance4Features = + result.sType = sType + result.pNext = pNext + result.maintenance4 = maintenance4 + +proc newVkPhysicalDeviceMaintenance4Properties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES, pNext: pointer = nil, maxBufferSize: VkDeviceSize): VkPhysicalDeviceMaintenance4Properties = + result.sType = sType + result.pNext = pNext + result.maxBufferSize = maxBufferSize + +proc newVkPhysicalDeviceMaintenance5FeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_5_FEATURES_KHR, pNext: pointer = nil, maintenance5: VkBool32): VkPhysicalDeviceMaintenance5FeaturesKHR = + result.sType = sType + result.pNext = pNext + result.maintenance5 = maintenance5 + +proc newVkPhysicalDeviceMaintenance5PropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_5_PROPERTIES_KHR, 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 newVkRenderingAreaInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDERING_AREA_INFO_KHR, 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 = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT, pNext: pointer = nil, supported: VkBool32): VkDescriptorSetLayoutSupport = + result.sType = sType + result.pNext = pNext + result.supported = supported + +proc newVkPhysicalDeviceShaderDrawParametersFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES, pNext: pointer = nil, shaderDrawParameters: VkBool32): VkPhysicalDeviceShaderDrawParametersFeatures = + result.sType = sType + result.pNext = pNext + result.shaderDrawParameters = shaderDrawParameters + +proc newVkPhysicalDeviceShaderFloat16Int8Features*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES, pNext: pointer = nil, shaderFloat16: VkBool32, shaderInt8: VkBool32): VkPhysicalDeviceShaderFloat16Int8Features = + result.sType = sType + result.pNext = pNext + result.shaderFloat16 = shaderFloat16 + result.shaderInt8 = shaderInt8 + +proc newVkPhysicalDeviceFloatControlsProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES, 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 = VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID, 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 = VK_STRUCTURE_TYPE_SWAPCHAIN_IMAGE_CREATE_INFO_ANDROID, pNext: pointer = nil, usage: VkSwapchainImageUsageFlagsANDROID): VkSwapchainImageCreateInfoANDROID = + result.sType = sType + result.pNext = pNext + result.usage = usage + +proc newVkPhysicalDevicePresentationPropertiesANDROID*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENTATION_PROPERTIES_ANDROID, 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 = VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR, pNext: pointer = nil, globalPriority: VkQueueGlobalPriorityKHR): VkDeviceQueueGlobalPriorityCreateInfoKHR = + result.sType = sType + result.pNext = pNext + result.globalPriority = globalPriority + +proc newVkPhysicalDeviceGlobalPriorityQueryFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR, pNext: pointer = nil, globalPriorityQuery: VkBool32): VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR = + result.sType = sType + result.pNext = pNext + result.globalPriorityQuery = globalPriorityQuery + +proc newVkQueueFamilyGlobalPriorityPropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR, 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 = VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT, 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 = VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT, 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 = VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT, 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 = VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT, 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 = VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT, pNext: pointer = nil, deviceMemoryReport: VkBool32): VkPhysicalDeviceDeviceMemoryReportFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.deviceMemoryReport = deviceMemoryReport + +proc newVkDeviceDeviceMemoryReportCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT, 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 = VK_STRUCTURE_TYPE_DEVICE_MEMORY_REPORT_CALLBACK_DATA_EXT, 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 = VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT, 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 = VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT, pNext: pointer = nil, memoryTypeBits: uint32): VkMemoryHostPointerPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.memoryTypeBits = memoryTypeBits + +proc newVkPhysicalDeviceExternalMemoryHostPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT, pNext: pointer = nil, minImportedHostPointerAlignment: VkDeviceSize): VkPhysicalDeviceExternalMemoryHostPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.minImportedHostPointerAlignment = minImportedHostPointerAlignment + +proc newVkPhysicalDeviceConservativeRasterizationPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT, 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 newVkCalibratedTimestampInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT, pNext: pointer = nil, timeDomain: VkTimeDomainEXT): VkCalibratedTimestampInfoEXT = + result.sType = sType + result.pNext = pNext + result.timeDomain = timeDomain + +proc newVkPhysicalDeviceShaderCorePropertiesAMD*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD, pNext: pointer = nil, shaderCoreFeatures: VkShaderCorePropertiesFlagsAMD, activeComputeUnitCount: uint32): VkPhysicalDeviceShaderCoreProperties2AMD = + result.sType = sType + result.pNext = pNext + result.shaderCoreFeatures = shaderCoreFeatures + result.activeComputeUnitCount = activeComputeUnitCount + +proc newVkPipelineRasterizationConservativeStateCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES, 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 = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO, 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 = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO, 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 = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT, pNext: pointer = nil, maxVariableDescriptorCount: uint32): VkDescriptorSetVariableDescriptorCountLayoutSupport = + result.sType = sType + result.pNext = pNext + result.maxVariableDescriptorCount = maxVariableDescriptorCount + +proc newVkAttachmentDescription2*(sType: VkStructureType = VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2, 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 = VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2, 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 = VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2, 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 = VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2, 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 = VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2, 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 = VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO, pNext: pointer = nil, contents: VkSubpassContents): VkSubpassBeginInfo = + result.sType = sType + result.pNext = pNext + result.contents = contents + +proc newVkSubpassEndInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_SUBPASS_END_INFO, pNext: pointer = nil): VkSubpassEndInfo = + result.sType = sType + result.pNext = pNext + +proc newVkPhysicalDeviceTimelineSemaphoreFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES, pNext: pointer = nil, timelineSemaphore: VkBool32): VkPhysicalDeviceTimelineSemaphoreFeatures = + result.sType = sType + result.pNext = pNext + result.timelineSemaphore = timelineSemaphore + +proc newVkPhysicalDeviceTimelineSemaphoreProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES, pNext: pointer = nil, maxTimelineSemaphoreValueDifference: uint64): VkPhysicalDeviceTimelineSemaphoreProperties = + result.sType = sType + result.pNext = pNext + result.maxTimelineSemaphoreValueDifference = maxTimelineSemaphoreValueDifference + +proc newVkSemaphoreTypeCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO, pNext: pointer = nil, semaphoreType: VkSemaphoreType, initialValue: uint64): VkSemaphoreTypeCreateInfo = + result.sType = sType + result.pNext = pNext + result.semaphoreType = semaphoreType + result.initialValue = initialValue + +proc newVkTimelineSemaphoreSubmitInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO, 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 = VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO, 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 = VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO, pNext: pointer = nil, semaphore: VkSemaphore, value: uint64): VkSemaphoreSignalInfo = + result.sType = sType + result.pNext = pNext + result.semaphore = semaphore + result.value = value -# Extension: VK_VERSION_1_1 -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES*: VkStructureType = VkStructureType(1000094000) -const VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO*: VkStructureType = VkStructureType(1000157000) -const VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO*: VkStructureType = VkStructureType(1000157001) -const VK_IMAGE_CREATE_ALIAS_BIT*: VkImageCreateFlagBits = VkImageCreateFlagBits(1024) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES*: VkStructureType = VkStructureType(1000083000) -const VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS*: VkStructureType = VkStructureType(1000127000) -const VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO*: VkStructureType = VkStructureType(1000127001) -const VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO*: VkStructureType = VkStructureType(1000060000) -const VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO*: VkStructureType = VkStructureType(1000060003) -const VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO*: VkStructureType = VkStructureType(1000060004) -const VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO*: VkStructureType = VkStructureType(1000060005) -const VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO*: VkStructureType = VkStructureType(1000060006) -const VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(8) -const VK_PIPELINE_CREATE_DISPATCH_BASE_BIT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(16) -template VK_PIPELINE_CREATE_DISPATCH_BASE* = - VK_PIPELINE_CREATE_DISPATCH_BASE_BIT -const VK_DEPENDENCY_DEVICE_GROUP_BIT*: VkDependencyFlagBits = VkDependencyFlagBits(4) -const VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO*: VkStructureType = VkStructureType(1000060013) -const VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO*: VkStructureType = VkStructureType(1000060014) -const VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT*: VkImageCreateFlagBits = VkImageCreateFlagBits(64) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES*: VkStructureType = VkStructureType(1000070000) -const VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO*: VkStructureType = VkStructureType(1000070001) -const VK_MEMORY_HEAP_MULTI_INSTANCE_BIT*: VkMemoryHeapFlagBits = VkMemoryHeapFlagBits(2) -const VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2*: VkStructureType = VkStructureType(1000146000) -const VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2*: VkStructureType = VkStructureType(1000146001) -const VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2*: VkStructureType = VkStructureType(1000146002) -const VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2*: VkStructureType = VkStructureType(1000146003) -const VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2*: VkStructureType = VkStructureType(1000146004) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2*: VkStructureType = VkStructureType(1000059000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2*: VkStructureType = VkStructureType(1000059001) -const VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2*: VkStructureType = VkStructureType(1000059002) -const VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2*: VkStructureType = VkStructureType(1000059003) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2*: VkStructureType = VkStructureType(1000059004) -const VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2*: VkStructureType = VkStructureType(1000059005) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2*: VkStructureType = VkStructureType(1000059006) -const VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2*: VkStructureType = VkStructureType(1000059007) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2*: VkStructureType = VkStructureType(1000059008) -const VK_ERROR_OUT_OF_POOL_MEMORY*: VkResult = VkResult(-1000069000) -const VK_FORMAT_FEATURE_TRANSFER_SRC_BIT*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(16384) -const VK_FORMAT_FEATURE_TRANSFER_DST_BIT*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(32768) -const VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT*: VkImageCreateFlagBits = VkImageCreateFlagBits(32) -const VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT*: VkImageCreateFlagBits = VkImageCreateFlagBits(128) -const VK_IMAGE_CREATE_EXTENDED_USAGE_BIT*: VkImageCreateFlagBits = VkImageCreateFlagBits(256) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES*: VkStructureType = VkStructureType(1000117000) -const VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO*: VkStructureType = VkStructureType(1000117001) -const VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO*: VkStructureType = VkStructureType(1000117002) -const VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO*: VkStructureType = VkStructureType(1000117003) -const VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL*: VkImageLayout = VkImageLayout(1000117000) -const VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL*: VkImageLayout = VkImageLayout(1000117001) -const VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO*: VkStructureType = VkStructureType(1000053000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES*: VkStructureType = VkStructureType(1000053001) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES*: VkStructureType = VkStructureType(1000053002) -const VK_DEPENDENCY_VIEW_LOCAL_BIT*: VkDependencyFlagBits = VkDependencyFlagBits(2) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES*: VkStructureType = VkStructureType(1000120000) -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES -const VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO*: VkStructureType = VkStructureType(1000145000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES*: VkStructureType = VkStructureType(1000145001) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES*: VkStructureType = VkStructureType(1000145002) -const VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2*: VkStructureType = VkStructureType(1000145003) -const VK_QUEUE_PROTECTED_BIT*: VkQueueFlagBits = VkQueueFlagBits(16) -const VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT*: VkDeviceQueueCreateFlagBits = VkDeviceQueueCreateFlagBits(1) -const VK_MEMORY_PROPERTY_PROTECTED_BIT*: VkMemoryPropertyFlagBits = VkMemoryPropertyFlagBits(32) -const VK_BUFFER_CREATE_PROTECTED_BIT*: VkBufferCreateFlagBits = VkBufferCreateFlagBits(8) -const VK_IMAGE_CREATE_PROTECTED_BIT*: VkImageCreateFlagBits = VkImageCreateFlagBits(2048) -const VK_COMMAND_POOL_CREATE_PROTECTED_BIT*: VkCommandPoolCreateFlagBits = VkCommandPoolCreateFlagBits(4) -const VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO*: VkStructureType = VkStructureType(1000156000) -const VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO*: VkStructureType = VkStructureType(1000156001) -const VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO*: VkStructureType = VkStructureType(1000156002) -const VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO*: VkStructureType = VkStructureType(1000156003) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES*: VkStructureType = VkStructureType(1000156004) -const VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES*: VkStructureType = VkStructureType(1000156005) -const VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION*: VkObjectType = VkObjectType(1000156000) -const VK_FORMAT_G8B8G8R8_422_UNORM*: VkFormat = VkFormat(1000156000) -const VK_FORMAT_B8G8R8G8_422_UNORM*: VkFormat = VkFormat(1000156001) -const VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM*: VkFormat = VkFormat(1000156002) -const VK_FORMAT_G8_B8R8_2PLANE_420_UNORM*: VkFormat = VkFormat(1000156003) -const VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM*: VkFormat = VkFormat(1000156004) -const VK_FORMAT_G8_B8R8_2PLANE_422_UNORM*: VkFormat = VkFormat(1000156005) -const VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM*: VkFormat = VkFormat(1000156006) -const VK_FORMAT_R10X6_UNORM_PACK16*: VkFormat = VkFormat(1000156007) -const VK_FORMAT_R10X6G10X6_UNORM_2PACK16*: VkFormat = VkFormat(1000156008) -const VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16*: VkFormat = VkFormat(1000156009) -const VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16*: VkFormat = VkFormat(1000156010) -const VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16*: VkFormat = VkFormat(1000156011) -const VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16*: VkFormat = VkFormat(1000156012) -const VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16*: VkFormat = VkFormat(1000156013) -const VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16*: VkFormat = VkFormat(1000156014) -const VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16*: VkFormat = VkFormat(1000156015) -const VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16*: VkFormat = VkFormat(1000156016) -const VK_FORMAT_R12X4_UNORM_PACK16*: VkFormat = VkFormat(1000156017) -const VK_FORMAT_R12X4G12X4_UNORM_2PACK16*: VkFormat = VkFormat(1000156018) -const VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16*: VkFormat = VkFormat(1000156019) -const VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16*: VkFormat = VkFormat(1000156020) -const VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16*: VkFormat = VkFormat(1000156021) -const VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16*: VkFormat = VkFormat(1000156022) -const VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16*: VkFormat = VkFormat(1000156023) -const VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16*: VkFormat = VkFormat(1000156024) -const VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16*: VkFormat = VkFormat(1000156025) -const VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16*: VkFormat = VkFormat(1000156026) -const VK_FORMAT_G16B16G16R16_422_UNORM*: VkFormat = VkFormat(1000156027) -const VK_FORMAT_B16G16R16G16_422_UNORM*: VkFormat = VkFormat(1000156028) -const VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM*: VkFormat = VkFormat(1000156029) -const VK_FORMAT_G16_B16R16_2PLANE_420_UNORM*: VkFormat = VkFormat(1000156030) -const VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM*: VkFormat = VkFormat(1000156031) -const VK_FORMAT_G16_B16R16_2PLANE_422_UNORM*: VkFormat = VkFormat(1000156032) -const VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM*: VkFormat = VkFormat(1000156033) -const VK_IMAGE_ASPECT_PLANE_0_BIT*: VkImageAspectFlagBits = VkImageAspectFlagBits(16) -const VK_IMAGE_ASPECT_PLANE_1_BIT*: VkImageAspectFlagBits = VkImageAspectFlagBits(32) -const VK_IMAGE_ASPECT_PLANE_2_BIT*: VkImageAspectFlagBits = VkImageAspectFlagBits(64) -const VK_IMAGE_CREATE_DISJOINT_BIT*: VkImageCreateFlagBits = VkImageCreateFlagBits(512) -const VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(131072) -const VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(262144) -const VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(524288) -const VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(1048576) -const VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(2097152) -const VK_FORMAT_FEATURE_DISJOINT_BIT*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(4194304) -const VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(8388608) -const VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO*: VkStructureType = VkStructureType(1000085000) -const VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE*: VkObjectType = VkObjectType(1000085000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO*: VkStructureType = VkStructureType(1000071000) -const VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES*: VkStructureType = VkStructureType(1000071001) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO*: VkStructureType = VkStructureType(1000071002) -const VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES*: VkStructureType = VkStructureType(1000071003) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES*: VkStructureType = VkStructureType(1000071004) -const VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO*: VkStructureType = VkStructureType(1000072000) -const VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO*: VkStructureType = VkStructureType(1000072001) -const VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO*: VkStructureType = VkStructureType(1000072002) -const VK_ERROR_INVALID_EXTERNAL_HANDLE*: VkResult = VkResult(-1000072003) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO*: VkStructureType = VkStructureType(1000112000) -const VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES*: VkStructureType = VkStructureType(1000112001) -const VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO*: VkStructureType = VkStructureType(1000113000) -const VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO*: VkStructureType = VkStructureType(1000077000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO*: VkStructureType = VkStructureType(1000076000) -const VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES*: VkStructureType = VkStructureType(1000076001) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES*: VkStructureType = VkStructureType(1000168000) -const VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT*: VkStructureType = VkStructureType(1000168001) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES*: VkStructureType = VkStructureType(1000063000) -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES +proc newVkVertexInputBindingDivisorDescriptionEXT*(binding: uint32, divisor: uint32): VkVertexInputBindingDivisorDescriptionEXT = + result.binding = binding + result.divisor = divisor + +proc newVkPipelineVertexInputDivisorStateCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT, pNext: pointer = nil, vertexBindingDivisorCount: uint32, pVertexBindingDivisors: ptr VkVertexInputBindingDivisorDescriptionEXT): VkPipelineVertexInputDivisorStateCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.vertexBindingDivisorCount = vertexBindingDivisorCount + result.pVertexBindingDivisors = pVertexBindingDivisors + +proc newVkPhysicalDeviceVertexAttributeDivisorPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT, pNext: pointer = nil, maxVertexAttribDivisor: uint32): VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.maxVertexAttribDivisor = maxVertexAttribDivisor + +proc newVkPhysicalDevicePCIBusInfoPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT, 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 = VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID, pNext: pointer = nil, buffer: ptr AHardwareBuffer): VkImportAndroidHardwareBufferInfoANDROID = + result.sType = sType + result.pNext = pNext + result.buffer = buffer + +proc newVkAndroidHardwareBufferUsageANDROID*(sType: VkStructureType = VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID, pNext: pointer = nil, androidHardwareBufferUsage: uint64): VkAndroidHardwareBufferUsageANDROID = + result.sType = sType + result.pNext = pNext + result.androidHardwareBufferUsage = androidHardwareBufferUsage + +proc newVkAndroidHardwareBufferPropertiesANDROID*(sType: VkStructureType = VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID, pNext: pointer = nil, allocationSize: VkDeviceSize, memoryTypeBits: uint32): VkAndroidHardwareBufferPropertiesANDROID = + result.sType = sType + result.pNext = pNext + result.allocationSize = allocationSize + result.memoryTypeBits = memoryTypeBits + +proc newVkMemoryGetAndroidHardwareBufferInfoANDROID*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID, pNext: pointer = nil, memory: VkDeviceMemory): VkMemoryGetAndroidHardwareBufferInfoANDROID = + result.sType = sType + result.pNext = pNext + result.memory = memory + +proc newVkAndroidHardwareBufferFormatPropertiesANDROID*(sType: VkStructureType = VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID, 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 = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT, pNext: pointer = nil, conditionalRenderingEnable: VkBool32): VkCommandBufferInheritanceConditionalRenderingInfoEXT = + result.sType = sType + result.pNext = pNext + result.conditionalRenderingEnable = conditionalRenderingEnable + +proc newVkExternalFormatANDROID*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID, pNext: pointer = nil, externalFormat: uint64): VkExternalFormatANDROID = + result.sType = sType + result.pNext = pNext + result.externalFormat = externalFormat + +proc newVkPhysicalDevice8BitStorageFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT, pNext: pointer = nil, conditionalRendering: VkBool32, inheritedConditionalRendering: VkBool32): VkPhysicalDeviceConditionalRenderingFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.conditionalRendering = conditionalRendering + result.inheritedConditionalRendering = inheritedConditionalRendering + +proc newVkPhysicalDeviceVulkanMemoryModelFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES, pNext: pointer = nil, shaderBufferInt64Atomics: VkBool32, shaderSharedInt64Atomics: VkBool32): VkPhysicalDeviceShaderAtomicInt64Features = + result.sType = sType + result.pNext = pNext + result.shaderBufferInt64Atomics = shaderBufferInt64Atomics + result.shaderSharedInt64Atomics = shaderSharedInt64Atomics + +proc newVkPhysicalDeviceShaderAtomicFloatFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT, 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 -# Extension: VK_VERSION_1_2 -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES*: VkStructureType = VkStructureType(49) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES*: VkStructureType = VkStructureType(50) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES*: VkStructureType = VkStructureType(51) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES*: VkStructureType = VkStructureType(52) -const VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO*: VkStructureType = VkStructureType(1000147000) -const VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE*: VkSamplerAddressMode = VkSamplerAddressMode(4) -const VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2*: VkStructureType = VkStructureType(1000109000) -const VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2*: VkStructureType = VkStructureType(1000109001) -const VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2*: VkStructureType = VkStructureType(1000109002) -const VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2*: VkStructureType = VkStructureType(1000109003) -const VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2*: VkStructureType = VkStructureType(1000109004) -const VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO*: VkStructureType = VkStructureType(1000109005) -const VK_STRUCTURE_TYPE_SUBPASS_END_INFO*: VkStructureType = VkStructureType(1000109006) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES*: VkStructureType = VkStructureType(1000177000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES*: VkStructureType = VkStructureType(1000196000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES*: VkStructureType = VkStructureType(1000180000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES*: VkStructureType = VkStructureType(1000082000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES*: VkStructureType = VkStructureType(1000197000) -const VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO*: VkStructureType = VkStructureType(1000161000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES*: VkStructureType = VkStructureType(1000161001) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES*: VkStructureType = VkStructureType(1000161002) -const VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO*: VkStructureType = VkStructureType(1000161003) -const VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT*: VkStructureType = VkStructureType(1000161004) -const VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT*: VkDescriptorPoolCreateFlagBits = VkDescriptorPoolCreateFlagBits(2) -const VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT*: VkDescriptorSetLayoutCreateFlagBits = VkDescriptorSetLayoutCreateFlagBits(2) -const VK_ERROR_FRAGMENTATION*: VkResult = VkResult(-1000161000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES*: VkStructureType = VkStructureType(1000199000) -const VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE*: VkStructureType = VkStructureType(1000199001) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES*: VkStructureType = VkStructureType(1000221000) -const VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO*: VkStructureType = VkStructureType(1000246000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES*: VkStructureType = VkStructureType(1000130000) -const VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO*: VkStructureType = VkStructureType(1000130001) -const VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(65536) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES*: VkStructureType = VkStructureType(1000211000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES*: VkStructureType = VkStructureType(1000108000) -const VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO*: VkStructureType = VkStructureType(1000108001) -const VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO*: VkStructureType = VkStructureType(1000108002) -const VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO*: VkStructureType = VkStructureType(1000108003) -const VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT*: VkFramebufferCreateFlagBits = VkFramebufferCreateFlagBits(1) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES*: VkStructureType = VkStructureType(1000253000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES*: VkStructureType = VkStructureType(1000175000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES*: VkStructureType = VkStructureType(1000241000) -const VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT*: VkStructureType = VkStructureType(1000241001) -const VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT*: VkStructureType = VkStructureType(1000241002) -const VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL*: VkImageLayout = VkImageLayout(1000241000) -const VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL*: VkImageLayout = VkImageLayout(1000241001) -const VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL*: VkImageLayout = VkImageLayout(1000241002) -const VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL*: VkImageLayout = VkImageLayout(1000241003) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES*: VkStructureType = VkStructureType(1000261000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES*: VkStructureType = VkStructureType(1000207000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES*: VkStructureType = VkStructureType(1000207001) -const VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO*: VkStructureType = VkStructureType(1000207002) -const VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO*: VkStructureType = VkStructureType(1000207003) -const VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO*: VkStructureType = VkStructureType(1000207004) -const VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO*: VkStructureType = VkStructureType(1000207005) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES*: VkStructureType = VkStructureType(1000257000) -const VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO*: VkStructureType = VkStructureType(1000244001) -const VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO*: VkStructureType = VkStructureType(1000257002) -const VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO*: VkStructureType = VkStructureType(1000257003) -const VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO*: VkStructureType = VkStructureType(1000257004) -const VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(131072) -const VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT*: VkBufferCreateFlagBits = VkBufferCreateFlagBits(16) -const VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT*: VkMemoryAllocateFlagBits = VkMemoryAllocateFlagBits(2) -const VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT*: VkMemoryAllocateFlagBits = VkMemoryAllocateFlagBits(4) -const VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS*: VkResult = VkResult(-1000257000) +proc newVkPhysicalDeviceVertexAttributeDivisorFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT, pNext: pointer = nil, vertexAttributeInstanceRateDivisor: VkBool32, vertexAttributeInstanceRateZeroDivisor: VkBool32): VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.vertexAttributeInstanceRateDivisor = vertexAttributeInstanceRateDivisor + result.vertexAttributeInstanceRateZeroDivisor = vertexAttributeInstanceRateZeroDivisor -# Extension: VK_VERSION_1_3 -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_FEATURES*: VkStructureType = VkStructureType(53) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_PROPERTIES*: VkStructureType = VkStructureType(54) -const VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO*: VkStructureType = VkStructureType(1000192000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES*: VkStructureType = VkStructureType(1000215000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES*: VkStructureType = VkStructureType(1000245000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES*: VkStructureType = VkStructureType(1000276000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES*: VkStructureType = VkStructureType(1000295000) -const VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO*: VkStructureType = VkStructureType(1000295001) -const VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO*: VkStructureType = VkStructureType(1000295002) -const VK_OBJECT_TYPE_PRIVATE_DATA_SLOT*: VkObjectType = VkObjectType(1000295000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES*: VkStructureType = VkStructureType(1000297000) -const VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(256) -const VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(512) -const VK_PIPELINE_COMPILE_REQUIRED*: VkResult = VkResult(1000297000) -const VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT*: VkPipelineCacheCreateFlagBits = VkPipelineCacheCreateFlagBits(1) -const VK_STRUCTURE_TYPE_MEMORY_BARRIER_2*: VkStructureType = VkStructureType(1000314000) -const VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2*: VkStructureType = VkStructureType(1000314001) -const VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2*: VkStructureType = VkStructureType(1000314002) -const VK_STRUCTURE_TYPE_DEPENDENCY_INFO*: VkStructureType = VkStructureType(1000314003) -const VK_STRUCTURE_TYPE_SUBMIT_INFO_2*: VkStructureType = VkStructureType(1000314004) -const VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO*: VkStructureType = VkStructureType(1000314005) -const VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO*: VkStructureType = VkStructureType(1000314006) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES*: VkStructureType = VkStructureType(1000314007) -const VK_EVENT_CREATE_DEVICE_ONLY_BIT*: VkEventCreateFlagBits = VkEventCreateFlagBits(1) -const VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL*: VkImageLayout = VkImageLayout(1000314000) -const VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL*: VkImageLayout = VkImageLayout(1000314001) -const VK_PIPELINE_STAGE_NONE*: VkPipelineStageFlagBits = VkPipelineStageFlagBits(0) -const VK_ACCESS_NONE*: VkAccessFlagBits = VkAccessFlagBits(0) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES*: VkStructureType = VkStructureType(1000325000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES*: VkStructureType = VkStructureType(1000335000) -const VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2*: VkStructureType = VkStructureType(1000337000) -const VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2*: VkStructureType = VkStructureType(1000337001) -const VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2*: VkStructureType = VkStructureType(1000337002) -const VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2*: VkStructureType = VkStructureType(1000337003) -const VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2*: VkStructureType = VkStructureType(1000337004) -const VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2*: VkStructureType = VkStructureType(1000337005) -const VK_STRUCTURE_TYPE_BUFFER_COPY_2*: VkStructureType = VkStructureType(1000337006) -const VK_STRUCTURE_TYPE_IMAGE_COPY_2*: VkStructureType = VkStructureType(1000337007) -const VK_STRUCTURE_TYPE_IMAGE_BLIT_2*: VkStructureType = VkStructureType(1000337008) -const VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2*: VkStructureType = VkStructureType(1000337009) -const VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2*: VkStructureType = VkStructureType(1000337010) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES*: VkStructureType = VkStructureType(1000225000) -const VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO*: VkStructureType = VkStructureType(1000225001) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES*: VkStructureType = VkStructureType(1000225002) -const VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT*: VkPipelineShaderStageCreateFlagBits = VkPipelineShaderStageCreateFlagBits(1) -const VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT*: VkPipelineShaderStageCreateFlagBits = VkPipelineShaderStageCreateFlagBits(2) -const VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK*: VkDescriptorType = VkDescriptorType(1000138000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES*: VkStructureType = VkStructureType(1000138000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES*: VkStructureType = VkStructureType(1000138001) -const VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK*: VkStructureType = VkStructureType(1000138002) -const VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO*: VkStructureType = VkStructureType(1000138003) -const VK_FORMAT_G8_B8R8_2PLANE_444_UNORM*: VkFormat = VkFormat(1000330000) -const VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16*: VkFormat = VkFormat(1000330001) -const VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16*: VkFormat = VkFormat(1000330002) -const VK_FORMAT_G16_B16R16_2PLANE_444_UNORM*: VkFormat = VkFormat(1000330003) -const VK_FORMAT_A4R4G4B4_UNORM_PACK16*: VkFormat = VkFormat(1000340000) -const VK_FORMAT_A4B4G4R4_UNORM_PACK16*: VkFormat = VkFormat(1000340001) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES*: VkStructureType = VkStructureType(1000066000) -const VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066000) -const VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066001) -const VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066002) -const VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066003) -const VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066004) -const VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066005) -const VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066006) -const VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066007) -const VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066008) -const VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066009) -const VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066010) -const VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066011) -const VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066012) -const VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK*: VkFormat = VkFormat(1000066013) -const VK_STRUCTURE_TYPE_RENDERING_INFO*: VkStructureType = VkStructureType(1000044000) -const VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO*: VkStructureType = VkStructureType(1000044001) -const VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO*: VkStructureType = VkStructureType(1000044002) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES*: VkStructureType = VkStructureType(1000044003) -const VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO*: VkStructureType = VkStructureType(1000044004) -const VK_ATTACHMENT_STORE_OP_NONE*: VkAttachmentStoreOp = VkAttachmentStoreOp(1000301000) -const VK_DYNAMIC_STATE_CULL_MODE*: VkDynamicState = VkDynamicState(1000267000) -const VK_DYNAMIC_STATE_FRONT_FACE*: VkDynamicState = VkDynamicState(1000267001) -const VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY*: VkDynamicState = VkDynamicState(1000267002) -const VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT*: VkDynamicState = VkDynamicState(1000267003) -const VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT*: VkDynamicState = VkDynamicState(1000267004) -const VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE*: VkDynamicState = VkDynamicState(1000267005) -const VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE*: VkDynamicState = VkDynamicState(1000267006) -const VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE*: VkDynamicState = VkDynamicState(1000267007) -const VK_DYNAMIC_STATE_DEPTH_COMPARE_OP*: VkDynamicState = VkDynamicState(1000267008) -const VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE*: VkDynamicState = VkDynamicState(1000267009) -const VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE*: VkDynamicState = VkDynamicState(1000267010) -const VK_DYNAMIC_STATE_STENCIL_OP*: VkDynamicState = VkDynamicState(1000267011) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES*: VkStructureType = VkStructureType(1000280000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES*: VkStructureType = VkStructureType(1000280001) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES*: VkStructureType = VkStructureType(1000281001) -const VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3*: VkStructureType = VkStructureType(1000360000) -const VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE*: VkDynamicState = VkDynamicState(1000377001) -const VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE*: VkDynamicState = VkDynamicState(1000377002) -const VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE*: VkDynamicState = VkDynamicState(1000377004) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES*: VkStructureType = VkStructureType(1000413000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES*: VkStructureType = VkStructureType(1000413001) -const VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS*: VkStructureType = VkStructureType(1000413002) -const VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS*: VkStructureType = VkStructureType(1000413003) -const VK_IMAGE_ASPECT_NONE*: VkImageAspectFlagBits = VkImageAspectFlagBits(0) +proc newVkQueueFamilyCheckpointPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV, pNext: pointer = nil, checkpointExecutionStageMask: VkPipelineStageFlags): VkQueueFamilyCheckpointPropertiesNV = + result.sType = sType + result.pNext = pNext + result.checkpointExecutionStageMask = checkpointExecutionStageMask + +proc newVkCheckpointDataNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES, 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 = VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE, 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 = VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT, pNext: pointer = nil, decodeMode: VkFormat): VkImageViewASTCDecodeModeEXT = + result.sType = sType + result.pNext = pNext + result.decodeMode = decodeMode + +proc newVkPhysicalDeviceASTCDecodeFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT, pNext: pointer = nil, decodeModeSharedExponent: VkBool32): VkPhysicalDeviceASTCDecodeFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.decodeModeSharedExponent = decodeModeSharedExponent + +proc newVkPhysicalDeviceTransformFeedbackFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT, pNext: pointer = nil, transformFeedback: VkBool32, geometryStreams: VkBool32): VkPhysicalDeviceTransformFeedbackFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.transformFeedback = transformFeedback + result.geometryStreams = geometryStreams + +proc newVkPhysicalDeviceTransformFeedbackPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT, 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 = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV, pNext: pointer = nil, representativeFragmentTest: VkBool32): VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV = + result.sType = sType + result.pNext = pNext + result.representativeFragmentTest = representativeFragmentTest + +proc newVkPipelineRepresentativeFragmentTestStateCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV, pNext: pointer = nil, representativeFragmentTestEnable: VkBool32): VkPipelineRepresentativeFragmentTestStateCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.representativeFragmentTestEnable = representativeFragmentTestEnable + +proc newVkPhysicalDeviceExclusiveScissorFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV, pNext: pointer = nil, exclusiveScissor: VkBool32): VkPhysicalDeviceExclusiveScissorFeaturesNV = + result.sType = sType + result.pNext = pNext + result.exclusiveScissor = exclusiveScissor -# Extension: VKSC_VERSION_1_0 -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_SC_1_0_FEATURES*: VkStructureType = VkStructureType(1000298000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_SC_1_0_PROPERTIES*: VkStructureType = VkStructureType(1000298001) -const VK_ERROR_VALIDATION_FAILED*: VkResult = VkResult(-1000011001) -const VK_STRUCTURE_TYPE_DEVICE_OBJECT_RESERVATION_CREATE_INFO*: VkStructureType = VkStructureType(1000298002) -const VK_STRUCTURE_TYPE_COMMAND_POOL_MEMORY_RESERVATION_CREATE_INFO*: VkStructureType = VkStructureType(1000298003) -const VK_STRUCTURE_TYPE_COMMAND_POOL_MEMORY_CONSUMPTION*: VkStructureType = VkStructureType(1000298004) -const VK_STRUCTURE_TYPE_PIPELINE_POOL_SIZE*: VkStructureType = VkStructureType(1000298005) -const VK_STRUCTURE_TYPE_FAULT_DATA*: VkStructureType = VkStructureType(1000298007) -const VK_STRUCTURE_TYPE_FAULT_CALLBACK_INFO*: VkStructureType = VkStructureType(1000298008) -const VK_STRUCTURE_TYPE_PIPELINE_OFFLINE_CREATE_INFO*: VkStructureType = VkStructureType(1000298010) -const VK_ERROR_INVALID_PIPELINE_CACHE_DATA*: VkResult = VkResult(-1000298000) -const VK_ERROR_NO_PIPELINE_MATCH*: VkResult = VkResult(-1000298001) -const VK_PIPELINE_CACHE_CREATE_READ_ONLY_BIT*: VkPipelineCacheCreateFlagBits = VkPipelineCacheCreateFlagBits(2) -const VK_PIPELINE_CACHE_CREATE_USE_APPLICATION_STORAGE_BIT*: VkPipelineCacheCreateFlagBits = VkPipelineCacheCreateFlagBits(4) -const VK_MEMORY_HEAP_SEU_SAFE_BIT*: VkMemoryHeapFlagBits = VkMemoryHeapFlagBits(4) -const VK_PIPELINE_CACHE_HEADER_VERSION_SAFETY_CRITICAL_ONE*: VkPipelineCacheHeaderVersion = VkPipelineCacheHeaderVersion(1000298001) +proc newVkPipelineViewportExclusiveScissorStateCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV, pNext: pointer = nil, exclusiveScissorCount: uint32, pExclusiveScissors: ptr VkRect2D): VkPipelineViewportExclusiveScissorStateCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.exclusiveScissorCount = exclusiveScissorCount + result.pExclusiveScissors = pExclusiveScissors -# Extension: VK_KHR_surface -const VK_KHR_SURFACE_SPEC_VERSION* = 25 -const VK_KHR_SURFACE_EXTENSION_NAME* = "VK_KHR_surface" -const VK_ERROR_SURFACE_LOST_KHR*: VkResult = VkResult(-1000000000) -const VK_ERROR_NATIVE_WINDOW_IN_USE_KHR*: VkResult = VkResult(-1000000001) -const VK_OBJECT_TYPE_SURFACE_KHR*: VkObjectType = VkObjectType(1000000000) +proc newVkPhysicalDeviceCornerSampledImageFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV, pNext: pointer = nil, cornerSampledImage: VkBool32): VkPhysicalDeviceCornerSampledImageFeaturesNV = + result.sType = sType + result.pNext = pNext + result.cornerSampledImage = cornerSampledImage -# Extension: VK_KHR_swapchain -const VK_KHR_SWAPCHAIN_SPEC_VERSION* = 70 -const VK_KHR_SWAPCHAIN_EXTENSION_NAME* = "VK_KHR_swapchain" -const VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000001000) -const VK_STRUCTURE_TYPE_PRESENT_INFO_KHR*: VkStructureType = VkStructureType(1000001001) -const VK_IMAGE_LAYOUT_PRESENT_SRC_KHR*: VkImageLayout = VkImageLayout(1000001002) -const VK_SUBOPTIMAL_KHR*: VkResult = VkResult(1000001003) -const VK_ERROR_OUT_OF_DATE_KHR*: VkResult = VkResult(-1000001004) -const VK_OBJECT_TYPE_SWAPCHAIN_KHR*: VkObjectType = VkObjectType(1000001000) -const VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR*: VkStructureType = VkStructureType(1000060007) -const VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000060008) -const VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR*: VkStructureType = VkStructureType(1000060009) -const VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR*: VkStructureType = VkStructureType(1000060010) -const VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR*: VkStructureType = VkStructureType(1000060011) -const VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000060012) -const VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR*: VkSwapchainCreateFlagBitsKHR = VkSwapchainCreateFlagBitsKHR(1) -const VK_SWAPCHAIN_CREATE_PROTECTED_BIT_KHR*: VkSwapchainCreateFlagBitsKHR = VkSwapchainCreateFlagBitsKHR(2) +proc newVkPhysicalDeviceComputeShaderDerivativesFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV, pNext: pointer = nil, computeDerivativeGroupQuads: VkBool32, computeDerivativeGroupLinear: VkBool32): VkPhysicalDeviceComputeShaderDerivativesFeaturesNV = + result.sType = sType + result.pNext = pNext + result.computeDerivativeGroupQuads = computeDerivativeGroupQuads + result.computeDerivativeGroupLinear = computeDerivativeGroupLinear -# Extension: VK_KHR_display -const VK_KHR_DISPLAY_SPEC_VERSION* = 23 -const VK_KHR_DISPLAY_EXTENSION_NAME* = "VK_KHR_display" -const VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000002000) -const VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000002001) -const VK_OBJECT_TYPE_DISPLAY_KHR*: VkObjectType = VkObjectType(1000002000) -const VK_OBJECT_TYPE_DISPLAY_MODE_KHR*: VkObjectType = VkObjectType(1000002001) +proc newVkPhysicalDeviceShaderImageFootprintFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV, pNext: pointer = nil, imageFootprint: VkBool32): VkPhysicalDeviceShaderImageFootprintFeaturesNV = + result.sType = sType + result.pNext = pNext + result.imageFootprint = imageFootprint -# Extension: VK_KHR_display_swapchain -const VK_KHR_DISPLAY_SWAPCHAIN_SPEC_VERSION* = 10 -const VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME* = "VK_KHR_display_swapchain" -const VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR*: VkStructureType = VkStructureType(1000003000) -const VK_ERROR_INCOMPATIBLE_DISPLAY_KHR*: VkResult = VkResult(-1000003001) +proc newVkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV, pNext: pointer = nil, dedicatedAllocationImageAliasing: VkBool32): VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV = + result.sType = sType + result.pNext = pNext + result.dedicatedAllocationImageAliasing = dedicatedAllocationImageAliasing -# Extension: VK_KHR_xlib_surface -const VK_KHR_XLIB_SURFACE_SPEC_VERSION* = 6 -const VK_KHR_XLIB_SURFACE_EXTENSION_NAME* = "VK_KHR_xlib_surface" -const VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000004000) +proc newVkPhysicalDeviceCopyMemoryIndirectFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_FEATURES_NV, pNext: pointer = nil, indirectCopy: VkBool32): VkPhysicalDeviceCopyMemoryIndirectFeaturesNV = + result.sType = sType + result.pNext = pNext + result.indirectCopy = indirectCopy -# Extension: VK_KHR_xcb_surface -const VK_KHR_XCB_SURFACE_SPEC_VERSION* = 6 -const VK_KHR_XCB_SURFACE_EXTENSION_NAME* = "VK_KHR_xcb_surface" -const VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000005000) +proc newVkPhysicalDeviceCopyMemoryIndirectPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_PROPERTIES_NV, pNext: pointer = nil, supportedQueues: VkQueueFlags): VkPhysicalDeviceCopyMemoryIndirectPropertiesNV = + result.sType = sType + result.pNext = pNext + result.supportedQueues = supportedQueues -# Extension: VK_KHR_wayland_surface -const VK_KHR_WAYLAND_SURFACE_SPEC_VERSION* = 6 -const VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME* = "VK_KHR_wayland_surface" -const VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000006000) +proc newVkPhysicalDeviceMemoryDecompressionFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_FEATURES_NV, pNext: pointer = nil, memoryDecompression: VkBool32): VkPhysicalDeviceMemoryDecompressionFeaturesNV = + result.sType = sType + result.pNext = pNext + result.memoryDecompression = memoryDecompression -# Extension: VK_KHR_mir_surface -const VK_KHR_MIR_SURFACE_SPEC_VERSION* = 4 -const VK_KHR_MIR_SURFACE_EXTENSION_NAME* = "VK_KHR_mir_surface" +proc newVkPhysicalDeviceMemoryDecompressionPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_PROPERTIES_NV, pNext: pointer = nil, decompressionMethods: VkMemoryDecompressionMethodFlagsNV, maxDecompressionIndirectCount: uint64): VkPhysicalDeviceMemoryDecompressionPropertiesNV = + result.sType = sType + result.pNext = pNext + result.decompressionMethods = decompressionMethods + result.maxDecompressionIndirectCount = maxDecompressionIndirectCount -# Extension: VK_KHR_android_surface -const VK_KHR_ANDROID_SURFACE_SPEC_VERSION* = 6 -const VK_KHR_ANDROID_SURFACE_EXTENSION_NAME* = "VK_KHR_android_surface" -const VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000008000) +proc newVkShadingRatePaletteNV*(shadingRatePaletteEntryCount: uint32, pShadingRatePaletteEntries: ptr VkShadingRatePaletteEntryNV): VkShadingRatePaletteNV = + result.shadingRatePaletteEntryCount = shadingRatePaletteEntryCount + result.pShadingRatePaletteEntries = pShadingRatePaletteEntries -# Extension: VK_KHR_win32_surface -const VK_KHR_WIN32_SURFACE_SPEC_VERSION* = 6 -const VK_KHR_WIN32_SURFACE_EXTENSION_NAME* = "VK_KHR_win32_surface" -const VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000009000) +proc newVkPipelineViewportShadingRateImageStateCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV, pNext: pointer = nil, shadingRateImage: VkBool32, shadingRateCoarseSampleOrder: VkBool32): VkPhysicalDeviceShadingRateImageFeaturesNV = + result.sType = sType + result.pNext = pNext + result.shadingRateImage = shadingRateImage + result.shadingRateCoarseSampleOrder = shadingRateCoarseSampleOrder + +proc newVkPhysicalDeviceShadingRateImagePropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI, 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 = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV, pNext: pointer = nil, taskShader: VkBool32, meshShader: VkBool32): VkPhysicalDeviceMeshShaderFeaturesNV = + result.sType = sType + result.pNext = pNext + result.taskShader = taskShader + result.meshShader = meshShader + +proc newVkPhysicalDeviceMeshShaderPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_EXT, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_EXT, 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 = VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV, 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 = VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR, 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 = VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV, 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 -# Extension: VK_ANDROID_native_buffer -const VK_ANDROID_NATIVE_BUFFER_SPEC_VERSION* = 8 -const VK_ANDROID_NATIVE_BUFFER_NUMBER* = 11 -const VK_ANDROID_NATIVE_BUFFER_EXTENSION_NAME* = "VK_ANDROID_native_buffer" -template VK_ANDROID_NATIVE_BUFFER_NAME* = - VK_ANDROID_NATIVE_BUFFER_EXTENSION_NAME -const VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID*: VkStructureType = VkStructureType(1000010000) -const VK_STRUCTURE_TYPE_SWAPCHAIN_IMAGE_CREATE_INFO_ANDROID*: VkStructureType = VkStructureType(1000010001) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENTATION_PROPERTIES_ANDROID*: VkStructureType = VkStructureType(1000010002) +proc newVkRayTracingPipelineCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR, 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 -# Extension: VK_EXT_debug_report -const VK_EXT_DEBUG_REPORT_SPEC_VERSION* = 10 -const VK_EXT_DEBUG_REPORT_EXTENSION_NAME* = "VK_EXT_debug_report" -const VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000011000) -template VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT* = - VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT -const VK_ERROR_VALIDATION_FAILED_EXT*: VkResult = VkResult(-1000011001) -const VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT*: VkObjectType = VkObjectType(1000011000) -const VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT*: VkDebugReportObjectTypeEXT = VkDebugReportObjectTypeEXT(1000156000) -const VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT*: VkDebugReportObjectTypeEXT = VkDebugReportObjectTypeEXT(1000085000) +proc newVkGeometryTrianglesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV, 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 -# Extension: VK_NV_glsl_shader -const VK_NV_GLSL_SHADER_SPEC_VERSION* = 1 -const VK_NV_GLSL_SHADER_EXTENSION_NAME* = "VK_NV_glsl_shader" -const VK_ERROR_INVALID_SHADER_NV*: VkResult = VkResult(-1000012000) +proc newVkGeometryAABBNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV, 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 -# Extension: VK_EXT_depth_range_unrestricted -const VK_EXT_DEPTH_RANGE_UNRESTRICTED_SPEC_VERSION* = 1 -const VK_EXT_DEPTH_RANGE_UNRESTRICTED_EXTENSION_NAME* = "VK_EXT_depth_range_unrestricted" +proc newVkGeometryDataNV*(triangles: VkGeometryTrianglesNV, aabbs: VkGeometryAABBNV): VkGeometryDataNV = + result.triangles = triangles + result.aabbs = aabbs -# Extension: VK_KHR_sampler_mirror_clamp_to_edge -const VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_SPEC_VERSION* = 3 -const VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_EXTENSION_NAME* = "VK_KHR_sampler_mirror_clamp_to_edge" +proc newVkGeometryNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_GEOMETRY_NV, 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 -# Extension: VK_IMG_filter_cubic -const VK_IMG_FILTER_CUBIC_SPEC_VERSION* = 1 -const VK_IMG_FILTER_CUBIC_EXTENSION_NAME* = "VK_IMG_filter_cubic" -template VK_FILTER_CUBIC_IMG* = - VK_FILTER_CUBIC_EXT -template VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG* = - VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT +proc newVkAccelerationStructureInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV, 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 -# Extension: VK_AMD_extension_17 -const VK_AMD_EXTENSION_17_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_17_EXTENSION_NAME* = "VK_AMD_extension_17" +proc newVkAccelerationStructureCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV, pNext: pointer = nil, compactedSize: VkDeviceSize, info: VkAccelerationStructureInfoNV): VkAccelerationStructureCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.compactedSize = compactedSize + result.info = info -# Extension: VK_AMD_extension_18 -const VK_AMD_EXTENSION_18_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_18_EXTENSION_NAME* = "VK_AMD_extension_18" +proc newVkBindAccelerationStructureMemoryInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV, 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 -# Extension: VK_AMD_rasterization_order -const VK_AMD_RASTERIZATION_ORDER_SPEC_VERSION* = 1 -const VK_AMD_RASTERIZATION_ORDER_EXTENSION_NAME* = "VK_AMD_rasterization_order" -const VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD*: VkStructureType = VkStructureType(1000018000) +proc newVkWriteDescriptorSetAccelerationStructureKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR, pNext: pointer = nil, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureKHR): VkWriteDescriptorSetAccelerationStructureKHR = + result.sType = sType + result.pNext = pNext + result.accelerationStructureCount = accelerationStructureCount + result.pAccelerationStructures = pAccelerationStructures -# Extension: VK_AMD_extension_20 -const VK_AMD_EXTENSION_20_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_20_EXTENSION_NAME* = "VK_AMD_extension_20" +proc newVkWriteDescriptorSetAccelerationStructureNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV, pNext: pointer = nil, accelerationStructureCount: uint32, pAccelerationStructures: ptr VkAccelerationStructureNV): VkWriteDescriptorSetAccelerationStructureNV = + result.sType = sType + result.pNext = pNext + result.accelerationStructureCount = accelerationStructureCount + result.pAccelerationStructures = pAccelerationStructures -# Extension: VK_AMD_shader_trinary_minmax -const VK_AMD_SHADER_TRINARY_MINMAX_SPEC_VERSION* = 1 -const VK_AMD_SHADER_TRINARY_MINMAX_EXTENSION_NAME* = "VK_AMD_shader_trinary_minmax" +proc newVkAccelerationStructureMemoryRequirementsInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV, pNext: pointer = nil, `type`: VkAccelerationStructureMemoryRequirementsTypeNV, accelerationStructure: VkAccelerationStructureNV): VkAccelerationStructureMemoryRequirementsInfoNV = + result.sType = sType + result.pNext = pNext + result.`type` = `type` + result.accelerationStructure = accelerationStructure -# Extension: VK_AMD_shader_explicit_vertex_parameter -const VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_SPEC_VERSION* = 1 -const VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_EXTENSION_NAME* = "VK_AMD_shader_explicit_vertex_parameter" +proc newVkPhysicalDeviceAccelerationStructureFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR, 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 -# Extension: VK_EXT_debug_marker -const VK_EXT_DEBUG_MARKER_SPEC_VERSION* = 4 -const VK_EXT_DEBUG_MARKER_EXTENSION_NAME* = "VK_EXT_debug_marker" -const VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT*: VkStructureType = VkStructureType(1000022000) -const VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT*: VkStructureType = VkStructureType(1000022001) -const VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT*: VkStructureType = VkStructureType(1000022002) +proc newVkPhysicalDeviceRayTracingPipelineFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR, 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 -# Extension: VK_KHR_video_queue -const VK_KHR_VIDEO_QUEUE_SPEC_VERSION* = 8 -const VK_KHR_VIDEO_QUEUE_EXTENSION_NAME* = "VK_KHR_video_queue" -const VK_STRUCTURE_TYPE_VIDEO_PROFILE_INFO_KHR*: VkStructureType = VkStructureType(1000023000) -const VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR*: VkStructureType = VkStructureType(1000023001) -const VK_STRUCTURE_TYPE_VIDEO_PICTURE_RESOURCE_INFO_KHR*: VkStructureType = VkStructureType(1000023002) -const VK_STRUCTURE_TYPE_VIDEO_SESSION_MEMORY_REQUIREMENTS_KHR*: VkStructureType = VkStructureType(1000023003) -const VK_STRUCTURE_TYPE_BIND_VIDEO_SESSION_MEMORY_INFO_KHR*: VkStructureType = VkStructureType(1000023004) -const VK_STRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000023005) -const VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000023006) -const VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_UPDATE_INFO_KHR*: VkStructureType = VkStructureType(1000023007) -const VK_STRUCTURE_TYPE_VIDEO_BEGIN_CODING_INFO_KHR*: VkStructureType = VkStructureType(1000023008) -const VK_STRUCTURE_TYPE_VIDEO_END_CODING_INFO_KHR*: VkStructureType = VkStructureType(1000023009) -const VK_STRUCTURE_TYPE_VIDEO_CODING_CONTROL_INFO_KHR*: VkStructureType = VkStructureType(1000023010) -const VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_INFO_KHR*: VkStructureType = VkStructureType(1000023011) -const VK_STRUCTURE_TYPE_QUEUE_FAMILY_VIDEO_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000023012) -const VK_STRUCTURE_TYPE_VIDEO_PROFILE_LIST_INFO_KHR*: VkStructureType = VkStructureType(1000023013) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_FORMAT_INFO_KHR*: VkStructureType = VkStructureType(1000023014) -const VK_STRUCTURE_TYPE_VIDEO_FORMAT_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000023015) -const VK_STRUCTURE_TYPE_QUEUE_FAMILY_QUERY_RESULT_STATUS_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000023016) -const VK_OBJECT_TYPE_VIDEO_SESSION_KHR*: VkObjectType = VkObjectType(1000023000) -const VK_OBJECT_TYPE_VIDEO_SESSION_PARAMETERS_KHR*: VkObjectType = VkObjectType(1000023001) -const VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR*: VkQueryType = VkQueryType(1000023000) -const VK_QUERY_RESULT_WITH_STATUS_BIT_KHR*: VkQueryResultFlagBits = VkQueryResultFlagBits(16) -const VK_ERROR_IMAGE_USAGE_NOT_SUPPORTED_KHR*: VkResult = VkResult(-1000023000) -const VK_ERROR_VIDEO_PICTURE_LAYOUT_NOT_SUPPORTED_KHR*: VkResult = VkResult(-1000023001) -const VK_ERROR_VIDEO_PROFILE_OPERATION_NOT_SUPPORTED_KHR*: VkResult = VkResult(-1000023002) -const VK_ERROR_VIDEO_PROFILE_FORMAT_NOT_SUPPORTED_KHR*: VkResult = VkResult(-1000023003) -const VK_ERROR_VIDEO_PROFILE_CODEC_NOT_SUPPORTED_KHR*: VkResult = VkResult(-1000023004) -const VK_ERROR_VIDEO_STD_VERSION_NOT_SUPPORTED_KHR*: VkResult = VkResult(-1000023005) +proc newVkPhysicalDeviceRayQueryFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR, pNext: pointer = nil, rayQuery: VkBool32): VkPhysicalDeviceRayQueryFeaturesKHR = + result.sType = sType + result.pNext = pNext + result.rayQuery = rayQuery -# Extension: VK_KHR_video_decode_queue -const VK_KHR_VIDEO_DECODE_QUEUE_SPEC_VERSION* = 7 -const VK_KHR_VIDEO_DECODE_QUEUE_EXTENSION_NAME* = "VK_KHR_video_decode_queue" -const VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR*: VkStructureType = VkStructureType(1000024000) -const VK_STRUCTURE_TYPE_VIDEO_DECODE_CAPABILITIES_KHR*: VkStructureType = VkStructureType(1000024001) -const VK_STRUCTURE_TYPE_VIDEO_DECODE_USAGE_INFO_KHR*: VkStructureType = VkStructureType(1000024002) -const VK_QUEUE_VIDEO_DECODE_BIT_KHR*: VkQueueFlagBits = VkQueueFlagBits(32) -const VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(67108864) -const VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR*: VkAccessFlagBits2 = VkAccessFlagBits2(34359738368) -const VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR*: VkAccessFlagBits2 = VkAccessFlagBits2(68719476736) -const VK_BUFFER_USAGE_VIDEO_DECODE_SRC_BIT_KHR*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(8192) -const VK_BUFFER_USAGE_VIDEO_DECODE_DST_BIT_KHR*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(16384) -const VK_IMAGE_USAGE_VIDEO_DECODE_DST_BIT_KHR*: VkImageUsageFlagBits = VkImageUsageFlagBits(1024) -const VK_IMAGE_USAGE_VIDEO_DECODE_SRC_BIT_KHR*: VkImageUsageFlagBits = VkImageUsageFlagBits(2048) -const VK_IMAGE_USAGE_VIDEO_DECODE_DPB_BIT_KHR*: VkImageUsageFlagBits = VkImageUsageFlagBits(4096) -const VK_FORMAT_FEATURE_VIDEO_DECODE_OUTPUT_BIT_KHR*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(33554432) -const VK_FORMAT_FEATURE_VIDEO_DECODE_DPB_BIT_KHR*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(67108864) -const VK_IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR*: VkImageLayout = VkImageLayout(1000024000) -const VK_IMAGE_LAYOUT_VIDEO_DECODE_SRC_KHR*: VkImageLayout = VkImageLayout(1000024001) -const VK_IMAGE_LAYOUT_VIDEO_DECODE_DPB_KHR*: VkImageLayout = VkImageLayout(1000024002) -const VK_FORMAT_FEATURE_2_VIDEO_DECODE_OUTPUT_BIT_KHR*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(33554432) -const VK_FORMAT_FEATURE_2_VIDEO_DECODE_DPB_BIT_KHR*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(67108864) +proc newVkPhysicalDeviceAccelerationStructurePropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR, 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 -# Extension: VK_AMD_gcn_shader -const VK_AMD_GCN_SHADER_SPEC_VERSION* = 1 -const VK_AMD_GCN_SHADER_EXTENSION_NAME* = "VK_AMD_gcn_shader" +proc newVkPhysicalDeviceRayTracingPipelinePropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR, 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 -# Extension: VK_NV_dedicated_allocation -const VK_NV_DEDICATED_ALLOCATION_SPEC_VERSION* = 1 -const VK_NV_DEDICATED_ALLOCATION_EXTENSION_NAME* = "VK_NV_dedicated_allocation" -const VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000026000) -const VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000026001) -const VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV*: VkStructureType = VkStructureType(1000026002) +proc newVkPhysicalDeviceRayTracingPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV, 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 -# Extension: VK_EXT_extension_28 -const VK_EXT_EXTENSION_28_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_28_EXTENSION_NAME* = "VK_EXT_extension_28" +proc newVkStridedDeviceAddressRegionKHR*(deviceAddress: VkDeviceAddress, stride: VkDeviceSize, size: VkDeviceSize): VkStridedDeviceAddressRegionKHR = + result.deviceAddress = deviceAddress + result.stride = stride + result.size = size -# Extension: VK_EXT_transform_feedback -const VK_EXT_TRANSFORM_FEEDBACK_SPEC_VERSION* = 1 -const VK_EXT_TRANSFORM_FEEDBACK_EXTENSION_NAME* = "VK_EXT_transform_feedback" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT*: VkStructureType = VkStructureType(1000028000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000028001) -const VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000028002) -const VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT*: VkQueryType = VkQueryType(1000028004) -const VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(2048) -const VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(4096) -const VK_ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT*: VkAccessFlagBits = VkAccessFlagBits(33554432) -const VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT*: VkAccessFlagBits = VkAccessFlagBits(67108864) -const VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT*: VkAccessFlagBits = VkAccessFlagBits(134217728) -const VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT*: VkPipelineStageFlagBits = VkPipelineStageFlagBits(16777216) +proc newVkTraceRaysIndirectCommandKHR*(width: uint32, height: uint32, depth: uint32): VkTraceRaysIndirectCommandKHR = + result.width = width + result.height = height + result.depth = depth -# Extension: VK_NVX_binary_import -const VK_NVX_BINARY_IMPORT_SPEC_VERSION* = 1 -const VK_NVX_BINARY_IMPORT_EXTENSION_NAME* = "VK_NVX_binary_import" -const VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX*: VkStructureType = VkStructureType(1000029000) -const VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX*: VkStructureType = VkStructureType(1000029001) -const VK_STRUCTURE_TYPE_CU_LAUNCH_INFO_NVX*: VkStructureType = VkStructureType(1000029002) -const VK_OBJECT_TYPE_CU_MODULE_NVX*: VkObjectType = VkObjectType(1000029000) -const VK_OBJECT_TYPE_CU_FUNCTION_NVX*: VkObjectType = VkObjectType(1000029001) -const VK_DEBUG_REPORT_OBJECT_TYPE_CU_MODULE_NVX_EXT*: VkDebugReportObjectTypeEXT = VkDebugReportObjectTypeEXT(1000029000) -const VK_DEBUG_REPORT_OBJECT_TYPE_CU_FUNCTION_NVX_EXT*: VkDebugReportObjectTypeEXT = VkDebugReportObjectTypeEXT(1000029001) +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 -# Extension: VK_NVX_image_view_handle -const VK_NVX_IMAGE_VIEW_HANDLE_SPEC_VERSION* = 2 -const VK_NVX_IMAGE_VIEW_HANDLE_EXTENSION_NAME* = "VK_NVX_image_view_handle" -const VK_STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX*: VkStructureType = VkStructureType(1000030000) -const VK_STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX*: VkStructureType = VkStructureType(1000030001) +proc newVkPhysicalDeviceRayTracingMaintenance1FeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR, pNext: pointer = nil, rayTracingMaintenance1: VkBool32, rayTracingPipelineTraceRaysIndirect2: VkBool32): VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR = + result.sType = sType + result.pNext = pNext + result.rayTracingMaintenance1 = rayTracingMaintenance1 + result.rayTracingPipelineTraceRaysIndirect2 = rayTracingPipelineTraceRaysIndirect2 -# Extension: VK_AMD_extension_32 -const VK_AMD_EXTENSION_32_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_32_EXTENSION_NAME* = "VK_AMD_extension_32" +proc newVkDrmFormatModifierPropertiesListEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT, pNext: pointer = nil, drmFormatModifierCount: uint32, pDrmFormatModifierProperties: ptr VkDrmFormatModifierPropertiesEXT): VkDrmFormatModifierPropertiesListEXT = + result.sType = sType + result.pNext = pNext + result.drmFormatModifierCount = drmFormatModifierCount + result.pDrmFormatModifierProperties = pDrmFormatModifierProperties -# Extension: VK_AMD_extension_33 -const VK_AMD_EXTENSION_33_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_33_EXTENSION_NAME* = "VK_AMD_extension_33" +proc newVkDrmFormatModifierPropertiesEXT*(drmFormatModifier: uint64, drmFormatModifierPlaneCount: uint32, drmFormatModifierTilingFeatures: VkFormatFeatureFlags): VkDrmFormatModifierPropertiesEXT = + result.drmFormatModifier = drmFormatModifier + result.drmFormatModifierPlaneCount = drmFormatModifierPlaneCount + result.drmFormatModifierTilingFeatures = drmFormatModifierTilingFeatures -# Extension: VK_AMD_draw_indirect_count -const VK_AMD_DRAW_INDIRECT_COUNT_SPEC_VERSION* = 2 -const VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME* = "VK_AMD_draw_indirect_count" +proc newVkPhysicalDeviceImageDrmFormatModifierInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT, 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 -# Extension: VK_AMD_extension_35 -const VK_AMD_EXTENSION_35_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_35_EXTENSION_NAME* = "VK_AMD_extension_35" +proc newVkImageDrmFormatModifierListCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT, pNext: pointer = nil, drmFormatModifierCount: uint32, pDrmFormatModifiers: ptr uint64): VkImageDrmFormatModifierListCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.drmFormatModifierCount = drmFormatModifierCount + result.pDrmFormatModifiers = pDrmFormatModifiers -# Extension: VK_AMD_negative_viewport_height -const VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_SPEC_VERSION* = 1 -const VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_EXTENSION_NAME* = "VK_AMD_negative_viewport_height" +proc newVkImageDrmFormatModifierExplicitCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT, 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 -# Extension: VK_AMD_gpu_shader_half_float -const VK_AMD_GPU_SHADER_HALF_FLOAT_SPEC_VERSION* = 2 -const VK_AMD_GPU_SHADER_HALF_FLOAT_EXTENSION_NAME* = "VK_AMD_gpu_shader_half_float" +proc newVkImageDrmFormatModifierPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT, pNext: pointer = nil, drmFormatModifier: uint64): VkImageDrmFormatModifierPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.drmFormatModifier = drmFormatModifier -# Extension: VK_AMD_shader_ballot -const VK_AMD_SHADER_BALLOT_SPEC_VERSION* = 1 -const VK_AMD_SHADER_BALLOT_EXTENSION_NAME* = "VK_AMD_shader_ballot" +proc newVkImageStencilUsageCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO, pNext: pointer = nil, stencilUsage: VkImageUsageFlags): VkImageStencilUsageCreateInfo = + result.sType = sType + result.pNext = pNext + result.stencilUsage = stencilUsage -# Extension: VK_EXT_video_encode_h264 -const VK_EXT_VIDEO_ENCODE_H264_SPEC_VERSION* = 10 -const VK_EXT_VIDEO_ENCODE_H264_EXTENSION_NAME* = "VK_EXT_video_encode_h264" -const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT*: VkStructureType = VkStructureType(1000038000) -const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000038001) -const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT*: VkStructureType = VkStructureType(1000038002) -const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT*: VkStructureType = VkStructureType(1000038003) -const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_EXT*: VkStructureType = VkStructureType(1000038004) -const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_INFO_EXT*: VkStructureType = VkStructureType(1000038005) -const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_INFO_EXT*: VkStructureType = VkStructureType(1000038007) -const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_INFO_EXT*: VkStructureType = VkStructureType(1000038008) -const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_EXT*: VkStructureType = VkStructureType(1000038009) -const VK_VIDEO_CODEC_OPERATION_ENCODE_H264_BIT_EXT*: VkVideoCodecOperationFlagBitsKHR = VkVideoCodecOperationFlagBitsKHR(65536) +proc newVkDeviceMemoryOverallocationCreateInfoAMD*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD, pNext: pointer = nil, overallocationBehavior: VkMemoryOverallocationBehaviorAMD): VkDeviceMemoryOverallocationCreateInfoAMD = + result.sType = sType + result.pNext = pNext + result.overallocationBehavior = overallocationBehavior -# Extension: VK_EXT_video_encode_h265 -const VK_EXT_VIDEO_ENCODE_H265_SPEC_VERSION* = 10 -const VK_EXT_VIDEO_ENCODE_H265_EXTENSION_NAME* = "VK_EXT_video_encode_h265" -const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT*: VkStructureType = VkStructureType(1000039000) -const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000039001) -const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT*: VkStructureType = VkStructureType(1000039002) -const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_VCL_FRAME_INFO_EXT*: VkStructureType = VkStructureType(1000039003) -const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_DPB_SLOT_INFO_EXT*: VkStructureType = VkStructureType(1000039004) -const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_NALU_SLICE_SEGMENT_INFO_EXT*: VkStructureType = VkStructureType(1000039005) -const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_INFO_EXT*: VkStructureType = VkStructureType(1000039007) -const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_INFO_EXT*: VkStructureType = VkStructureType(1000039009) -const VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_EXT*: VkStructureType = VkStructureType(1000039010) -const VK_VIDEO_CODEC_OPERATION_ENCODE_H265_BIT_EXT*: VkVideoCodecOperationFlagBitsKHR = VkVideoCodecOperationFlagBitsKHR(131072) +proc newVkPhysicalDeviceFragmentDensityMapFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT, 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 -# Extension: VK_KHR_video_decode_h264 -const VK_KHR_VIDEO_DECODE_H264_SPEC_VERSION* = 8 -const VK_KHR_VIDEO_DECODE_H264_EXTENSION_NAME* = "VK_KHR_video_decode_h264" -const VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_KHR*: VkStructureType = VkStructureType(1000040000) -const VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_KHR*: VkStructureType = VkStructureType(1000040001) -const VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_KHR*: VkStructureType = VkStructureType(1000040003) -const VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000040004) -const VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_KHR*: VkStructureType = VkStructureType(1000040005) -const VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_KHR*: VkStructureType = VkStructureType(1000040006) -const VK_VIDEO_CODEC_OPERATION_DECODE_H264_BIT_KHR*: VkVideoCodecOperationFlagBitsKHR = VkVideoCodecOperationFlagBitsKHR(1) +proc newVkPhysicalDeviceFragmentDensityMap2FeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT, pNext: pointer = nil, fragmentDensityMapDeferred: VkBool32): VkPhysicalDeviceFragmentDensityMap2FeaturesEXT = + result.sType = sType + result.pNext = pNext + result.fragmentDensityMapDeferred = fragmentDensityMapDeferred -# Extension: VK_AMD_texture_gather_bias_lod -const VK_AMD_TEXTURE_GATHER_BIAS_LOD_SPEC_VERSION* = 1 -const VK_AMD_TEXTURE_GATHER_BIAS_LOD_EXTENSION_NAME* = "VK_AMD_texture_gather_bias_lod" -const VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD*: VkStructureType = VkStructureType(1000041000) +proc newVkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM, pNext: pointer = nil, fragmentDensityMapOffset: VkBool32): VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM = + result.sType = sType + result.pNext = pNext + result.fragmentDensityMapOffset = fragmentDensityMapOffset -# Extension: VK_AMD_shader_info -const VK_AMD_SHADER_INFO_SPEC_VERSION* = 1 -const VK_AMD_SHADER_INFO_EXTENSION_NAME* = "VK_AMD_shader_info" +proc newVkPhysicalDeviceFragmentDensityMapPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT, 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 -# Extension: VK_AMD_extension_44 -const VK_AMD_EXTENSION_44_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_44_EXTENSION_NAME* = "VK_AMD_extension_44" +proc newVkPhysicalDeviceFragmentDensityMap2PropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT, 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 -# Extension: VK_KHR_dynamic_rendering -const VK_KHR_DYNAMIC_RENDERING_SPEC_VERSION* = 1 -const VK_KHR_DYNAMIC_RENDERING_EXTENSION_NAME* = "VK_KHR_dynamic_rendering" -template VK_STRUCTURE_TYPE_RENDERING_INFO_KHR* = - VK_STRUCTURE_TYPE_RENDERING_INFO -template VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO_KHR* = - VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO -template VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO_KHR* = - VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES -template VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO_KHR* = - VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO -template VK_ATTACHMENT_STORE_OP_NONE_KHR* = - VK_ATTACHMENT_STORE_OP_NONE -const VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(2097152) -template VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR* = - VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR -const VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR*: VkStructureType = VkStructureType(1000044006) -const VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(4194304) -template VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT* = - VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT -const VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT*: VkStructureType = VkStructureType(1000044007) -const VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD*: VkStructureType = VkStructureType(1000044008) -template VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_NV* = - VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD -const VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX*: VkStructureType = VkStructureType(1000044009) +proc newVkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM, pNext: pointer = nil, fragmentDensityOffsetGranularity: VkExtent2D): VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM = + result.sType = sType + result.pNext = pNext + result.fragmentDensityOffsetGranularity = fragmentDensityOffsetGranularity -# Extension: VK_AMD_extension_46 -const VK_AMD_EXTENSION_46_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_46_EXTENSION_NAME* = "VK_AMD_extension_46" +proc newVkRenderPassFragmentDensityMapCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT, pNext: pointer = nil, fragmentDensityMapAttachment: VkAttachmentReference): VkRenderPassFragmentDensityMapCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.fragmentDensityMapAttachment = fragmentDensityMapAttachment -# Extension: VK_AMD_shader_image_load_store_lod -const VK_AMD_SHADER_IMAGE_LOAD_STORE_LOD_SPEC_VERSION* = 1 -const VK_AMD_SHADER_IMAGE_LOAD_STORE_LOD_EXTENSION_NAME* = "VK_AMD_shader_image_load_store_lod" +proc newVkSubpassFragmentDensityMapOffsetEndInfoQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_SUBPASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_QCOM, pNext: pointer = nil, fragmentDensityOffsetCount: uint32, pFragmentDensityOffsets: ptr VkOffset2D): VkSubpassFragmentDensityMapOffsetEndInfoQCOM = + result.sType = sType + result.pNext = pNext + result.fragmentDensityOffsetCount = fragmentDensityOffsetCount + result.pFragmentDensityOffsets = pFragmentDensityOffsets -# Extension: VK_NVX_extension_48 -const VK_NVX_EXTENSION_48_SPEC_VERSION* = 0 -const VK_NVX_EXTENSION_48_EXTENSION_NAME* = "VK_NVX_extension_48" +proc newVkPhysicalDeviceScalarBlockLayoutFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES, pNext: pointer = nil, scalarBlockLayout: VkBool32): VkPhysicalDeviceScalarBlockLayoutFeatures = + result.sType = sType + result.pNext = pNext + result.scalarBlockLayout = scalarBlockLayout -# Extension: VK_GOOGLE_extension_49 -const VK_GOOGLE_EXTENSION_49_SPEC_VERSION* = 0 -const VK_GOOGLE_EXTENSION_49_EXTENSION_NAME* = "VK_GOOGLE_extension_49" +proc newVkSurfaceProtectedCapabilitiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR, pNext: pointer = nil, supportsProtected: VkBool32): VkSurfaceProtectedCapabilitiesKHR = + result.sType = sType + result.pNext = pNext + result.supportsProtected = supportsProtected -# Extension: VK_GGP_stream_descriptor_surface -const VK_GGP_STREAM_DESCRIPTOR_SURFACE_SPEC_VERSION* = 1 -const VK_GGP_STREAM_DESCRIPTOR_SURFACE_EXTENSION_NAME* = "VK_GGP_stream_descriptor_surface" -const VK_STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP*: VkStructureType = VkStructureType(1000049000) +proc newVkPhysicalDeviceUniformBufferStandardLayoutFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES, pNext: pointer = nil, uniformBufferStandardLayout: VkBool32): VkPhysicalDeviceUniformBufferStandardLayoutFeatures = + result.sType = sType + result.pNext = pNext + result.uniformBufferStandardLayout = uniformBufferStandardLayout -# Extension: VK_NV_corner_sampled_image -const VK_NV_CORNER_SAMPLED_IMAGE_SPEC_VERSION* = 2 -const VK_NV_CORNER_SAMPLED_IMAGE_EXTENSION_NAME* = "VK_NV_corner_sampled_image" -const VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV*: VkImageCreateFlagBits = VkImageCreateFlagBits(8192) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV*: VkStructureType = VkStructureType(1000050000) +proc newVkPhysicalDeviceDepthClipEnableFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT, pNext: pointer = nil, depthClipEnable: VkBool32): VkPhysicalDeviceDepthClipEnableFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.depthClipEnable = depthClipEnable -# Extension: VK_NV_private_vendor_info -const VK_NV_PRIVATE_VENDOR_INFO_SPEC_VERSION* = 2 -const VK_NV_PRIVATE_VENDOR_INFO_EXTENSION_NAME* = "VK_NV_private_vendor_info" -const VK_STRUCTURE_TYPE_PRIVATE_VENDOR_INFO_RESERVED_OFFSET_0_NV*: VkStructureType = VkStructureType(1000051000) +proc newVkPipelineRasterizationDepthClipStateCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT, pNext: pointer = nil, flags: VkPipelineRasterizationDepthClipStateCreateFlagsEXT = 0.VkPipelineRasterizationDepthClipStateCreateFlagsEXT, depthClipEnable: VkBool32): VkPipelineRasterizationDepthClipStateCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.depthClipEnable = depthClipEnable -# Extension: VK_NV_extension_53 -const VK_NV_EXTENSION_53_SPEC_VERSION* = 0 -const VK_NV_EXTENSION_53_EXTENSION_NAME* = "VK_NV_extension_53" +proc newVkPhysicalDeviceMemoryBudgetPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT, 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 -# Extension: VK_KHR_multiview -const VK_KHR_MULTIVIEW_SPEC_VERSION* = 1 -const VK_KHR_MULTIVIEW_EXTENSION_NAME* = "VK_KHR_multiview" -template VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHR* = - VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES -template VK_DEPENDENCY_VIEW_LOCAL_BIT_KHR* = - VK_DEPENDENCY_VIEW_LOCAL_BIT +proc newVkPhysicalDeviceMemoryPriorityFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT, pNext: pointer = nil, memoryPriority: VkBool32): VkPhysicalDeviceMemoryPriorityFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.memoryPriority = memoryPriority -# Extension: VK_IMG_format_pvrtc -const VK_IMG_FORMAT_PVRTC_SPEC_VERSION* = 1 -const VK_IMG_FORMAT_PVRTC_EXTENSION_NAME* = "VK_IMG_format_pvrtc" -const VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG*: VkFormat = VkFormat(1000054000) -const VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG*: VkFormat = VkFormat(1000054001) -const VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG*: VkFormat = VkFormat(1000054002) -const VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG*: VkFormat = VkFormat(1000054003) -const VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG*: VkFormat = VkFormat(1000054004) -const VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG*: VkFormat = VkFormat(1000054005) -const VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG*: VkFormat = VkFormat(1000054006) -const VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG*: VkFormat = VkFormat(1000054007) +proc newVkMemoryPriorityAllocateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT, pNext: pointer = nil, priority: float32): VkMemoryPriorityAllocateInfoEXT = + result.sType = sType + result.pNext = pNext + result.priority = priority -# Extension: VK_NV_external_memory_capabilities -const VK_NV_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION* = 1 -const VK_NV_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME* = "VK_NV_external_memory_capabilities" +proc newVkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT, pNext: pointer = nil, pageableDeviceLocalMemory: VkBool32): VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.pageableDeviceLocalMemory = pageableDeviceLocalMemory -# Extension: VK_NV_external_memory -const VK_NV_EXTERNAL_MEMORY_SPEC_VERSION* = 1 -const VK_NV_EXTERNAL_MEMORY_EXTENSION_NAME* = "VK_NV_external_memory" -const VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000056000) -const VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV*: VkStructureType = VkStructureType(1000056001) +proc newVkPhysicalDeviceBufferDeviceAddressFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES, 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 -# Extension: VK_NV_external_memory_win32 -const VK_NV_EXTERNAL_MEMORY_WIN32_SPEC_VERSION* = 1 -const VK_NV_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME* = "VK_NV_external_memory_win32" -const VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV*: VkStructureType = VkStructureType(1000057000) -const VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV*: VkStructureType = VkStructureType(1000057001) +proc newVkPhysicalDeviceBufferDeviceAddressFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT, 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 -# Extension: VK_NV_win32_keyed_mutex -const VK_NV_WIN32_KEYED_MUTEX_SPEC_VERSION* = 2 -const VK_NV_WIN32_KEYED_MUTEX_EXTENSION_NAME* = "VK_NV_win32_keyed_mutex" -const VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV*: VkStructureType = VkStructureType(1000058000) +proc newVkBufferDeviceAddressInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO, pNext: pointer = nil, buffer: VkBuffer): VkBufferDeviceAddressInfo = + result.sType = sType + result.pNext = pNext + result.buffer = buffer -# Extension: VK_KHR_get_physical_device_properties2 -const VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_SPEC_VERSION* = 2 -const VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME* = "VK_KHR_get_physical_device_properties2" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 -template VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR* = - VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2 -template VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR* = - VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 -template VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR* = - VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 -template VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR* = - VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 +proc newVkBufferOpaqueCaptureAddressCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO, pNext: pointer = nil, opaqueCaptureAddress: uint64): VkBufferOpaqueCaptureAddressCreateInfo = + result.sType = sType + result.pNext = pNext + result.opaqueCaptureAddress = opaqueCaptureAddress -# Extension: VK_KHR_device_group -const VK_KHR_DEVICE_GROUP_SPEC_VERSION* = 4 -const VK_KHR_DEVICE_GROUP_EXTENSION_NAME* = "VK_KHR_device_group" -template VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO_KHR* = - VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO -template VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO_KHR* = - VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO -template VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO_KHR* = - VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO -template VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO_KHR* = - VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO -template VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO_KHR* = - VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO -template VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT_KHR* = - VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT -template VK_PEER_MEMORY_FEATURE_COPY_DST_BIT_KHR* = - VK_PEER_MEMORY_FEATURE_COPY_DST_BIT -template VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT_KHR* = - VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT -template VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT_KHR* = - VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT -template VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT_KHR* = - VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT -template VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR* = - VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT -template VK_PIPELINE_CREATE_DISPATCH_BASE_KHR* = - VK_PIPELINE_CREATE_DISPATCH_BASE -template VK_DEPENDENCY_DEVICE_GROUP_BIT_KHR* = - VK_DEPENDENCY_DEVICE_GROUP_BIT -template VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO_KHR* = - VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO -template VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO_KHR* = - VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO -template VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR* = - VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT +proc newVkBufferDeviceAddressCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT, pNext: pointer = nil, deviceAddress: VkDeviceAddress): VkBufferDeviceAddressCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.deviceAddress = deviceAddress -# Extension: VK_EXT_validation_flags -const VK_EXT_VALIDATION_FLAGS_SPEC_VERSION* = 2 -const VK_EXT_VALIDATION_FLAGS_EXTENSION_NAME* = "VK_EXT_validation_flags" -const VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT*: VkStructureType = VkStructureType(1000061000) +proc newVkPhysicalDeviceImageViewImageFormatInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT, pNext: pointer = nil, imageViewType: VkImageViewType): VkPhysicalDeviceImageViewImageFormatInfoEXT = + result.sType = sType + result.pNext = pNext + result.imageViewType = imageViewType -# Extension: VK_NN_vi_surface -const VK_NN_VI_SURFACE_SPEC_VERSION* = 1 -const VK_NN_VI_SURFACE_EXTENSION_NAME* = "VK_NN_vi_surface" -const VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN*: VkStructureType = VkStructureType(1000062000) +proc newVkFilterCubicImageViewImageFormatPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT, pNext: pointer = nil, filterCubic: VkBool32, filterCubicMinmax: VkBool32): VkFilterCubicImageViewImageFormatPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.filterCubic = filterCubic + result.filterCubicMinmax = filterCubicMinmax -# Extension: VK_KHR_shader_draw_parameters -const VK_KHR_SHADER_DRAW_PARAMETERS_SPEC_VERSION* = 1 -const VK_KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME* = "VK_KHR_shader_draw_parameters" +proc newVkPhysicalDeviceImagelessFramebufferFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES, pNext: pointer = nil, imagelessFramebuffer: VkBool32): VkPhysicalDeviceImagelessFramebufferFeatures = + result.sType = sType + result.pNext = pNext + result.imagelessFramebuffer = imagelessFramebuffer -# Extension: VK_EXT_shader_subgroup_ballot -const VK_EXT_SHADER_SUBGROUP_BALLOT_SPEC_VERSION* = 1 -const VK_EXT_SHADER_SUBGROUP_BALLOT_EXTENSION_NAME* = "VK_EXT_shader_subgroup_ballot" +proc newVkFramebufferAttachmentsCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO, pNext: pointer = nil, attachmentImageInfoCount: uint32, pAttachmentImageInfos: ptr VkFramebufferAttachmentImageInfo): VkFramebufferAttachmentsCreateInfo = + result.sType = sType + result.pNext = pNext + result.attachmentImageInfoCount = attachmentImageInfoCount + result.pAttachmentImageInfos = pAttachmentImageInfos -# Extension: VK_EXT_shader_subgroup_vote -const VK_EXT_SHADER_SUBGROUP_VOTE_SPEC_VERSION* = 1 -const VK_EXT_SHADER_SUBGROUP_VOTE_EXTENSION_NAME* = "VK_EXT_shader_subgroup_vote" +proc newVkFramebufferAttachmentImageInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO, 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 -# Extension: VK_EXT_texture_compression_astc_hdr -const VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_SPEC_VERSION* = 1 -const VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_EXTENSION_NAME* = "VK_EXT_texture_compression_astc_hdr" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES -template VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK_EXT* = - VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK -template VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK_EXT* = - VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK -template VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK_EXT* = - VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK -template VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK_EXT* = - VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK -template VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK_EXT* = - VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK -template VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK_EXT* = - VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK -template VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK_EXT* = - VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK -template VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK_EXT* = - VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK -template VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK_EXT* = - VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK -template VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK_EXT* = - VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK -template VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK_EXT* = - VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK -template VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK_EXT* = - VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK -template VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK_EXT* = - VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK -template VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK_EXT* = - VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK +proc newVkRenderPassAttachmentBeginInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO, pNext: pointer = nil, attachmentCount: uint32, pAttachments: ptr VkImageView): VkRenderPassAttachmentBeginInfo = + result.sType = sType + result.pNext = pNext + result.attachmentCount = attachmentCount + result.pAttachments = pAttachments -# Extension: VK_EXT_astc_decode_mode -const VK_EXT_ASTC_DECODE_MODE_SPEC_VERSION* = 1 -const VK_EXT_ASTC_DECODE_MODE_EXTENSION_NAME* = "VK_EXT_astc_decode_mode" -const VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT*: VkStructureType = VkStructureType(1000067000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT*: VkStructureType = VkStructureType(1000067001) +proc newVkPhysicalDeviceTextureCompressionASTCHDRFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES, pNext: pointer = nil, textureCompressionASTC_HDR: VkBool32): VkPhysicalDeviceTextureCompressionASTCHDRFeatures = + result.sType = sType + result.pNext = pNext + result.textureCompressionASTC_HDR = textureCompressionASTC_HDR -# Extension: VK_EXT_pipeline_robustness -const VK_EXT_PIPELINE_ROBUSTNESS_SPEC_VERSION* = 1 -const VK_EXT_PIPELINE_ROBUSTNESS_EXTENSION_NAME* = "VK_EXT_pipeline_robustness" -const VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000068000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES_EXT*: VkStructureType = VkStructureType(1000068001) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000068002) +proc newVkPhysicalDeviceCooperativeMatrixFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV, pNext: pointer = nil, cooperativeMatrix: VkBool32, cooperativeMatrixRobustBufferAccess: VkBool32): VkPhysicalDeviceCooperativeMatrixFeaturesNV = + result.sType = sType + result.pNext = pNext + result.cooperativeMatrix = cooperativeMatrix + result.cooperativeMatrixRobustBufferAccess = cooperativeMatrixRobustBufferAccess -# Extension: VK_KHR_maintenance1 -const VK_KHR_MAINTENANCE_1_SPEC_VERSION* = 2 -const VK_KHR_MAINTENANCE_1_EXTENSION_NAME* = "VK_KHR_maintenance1" -template VK_ERROR_OUT_OF_POOL_MEMORY_KHR* = - VK_ERROR_OUT_OF_POOL_MEMORY -template VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR* = - VK_FORMAT_FEATURE_TRANSFER_SRC_BIT -template VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR* = - VK_FORMAT_FEATURE_TRANSFER_DST_BIT -template VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR* = - VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT +proc newVkPhysicalDeviceCooperativeMatrixPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV, pNext: pointer = nil, cooperativeMatrixSupportedStages: VkShaderStageFlags): VkPhysicalDeviceCooperativeMatrixPropertiesNV = + result.sType = sType + result.pNext = pNext + result.cooperativeMatrixSupportedStages = cooperativeMatrixSupportedStages -# Extension: VK_KHR_device_group_creation -const VK_KHR_DEVICE_GROUP_CREATION_SPEC_VERSION* = 1 -const VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME* = "VK_KHR_device_group_creation" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES -template VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO_KHR* = - VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO -template VK_MEMORY_HEAP_MULTI_INSTANCE_BIT_KHR* = - VK_MEMORY_HEAP_MULTI_INSTANCE_BIT +proc newVkCooperativeMatrixPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV, 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 -# Extension: VK_KHR_external_memory_capabilities -const VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION* = 1 -const VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME* = "VK_KHR_external_memory_capabilities" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO -template VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHR* = - VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO -template VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHR* = - VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES -template VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR* = - VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT -template VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR* = - VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT -template VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR* = - VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT -template VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR* = - VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT -template VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR* = - VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT -template VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR* = - VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT -template VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR* = - VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT -template VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_KHR* = - VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT -template VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_KHR* = - VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT -template VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_KHR* = - VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT +proc newVkPhysicalDeviceYcbcrImageArraysFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT, pNext: pointer = nil, ycbcrImageArrays: VkBool32): VkPhysicalDeviceYcbcrImageArraysFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.ycbcrImageArrays = ycbcrImageArrays -# Extension: VK_KHR_external_memory -const VK_KHR_EXTERNAL_MEMORY_SPEC_VERSION* = 1 -const VK_KHR_EXTERNAL_MEMORY_EXTENSION_NAME* = "VK_KHR_external_memory" -template VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHR* = - VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO -template VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHR* = - VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO -template VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHR* = - VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO -template VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR* = - VK_ERROR_INVALID_EXTERNAL_HANDLE +proc newVkImageViewHandleInfoNVX*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX, 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 -# Extension: VK_KHR_external_memory_win32 -const VK_KHR_EXTERNAL_MEMORY_WIN32_SPEC_VERSION* = 1 -const VK_KHR_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME* = "VK_KHR_external_memory_win32" -const VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR*: VkStructureType = VkStructureType(1000073000) -const VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR*: VkStructureType = VkStructureType(1000073001) -const VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000073002) -const VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR*: VkStructureType = VkStructureType(1000073003) +proc newVkImageViewAddressPropertiesNVX*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX, pNext: pointer = nil, deviceAddress: VkDeviceAddress, size: VkDeviceSize): VkImageViewAddressPropertiesNVX = + result.sType = sType + result.pNext = pNext + result.deviceAddress = deviceAddress + result.size = size -# Extension: VK_KHR_external_memory_fd -const VK_KHR_EXTERNAL_MEMORY_FD_SPEC_VERSION* = 1 -const VK_KHR_EXTERNAL_MEMORY_FD_EXTENSION_NAME* = "VK_KHR_external_memory_fd" -const VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR*: VkStructureType = VkStructureType(1000074000) -const VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000074001) -const VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR*: VkStructureType = VkStructureType(1000074002) +proc newVkPresentFrameTokenGGP*(sType: VkStructureType = VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP, pNext: pointer = nil, frameToken: GgpFrameToken): VkPresentFrameTokenGGP = + result.sType = sType + result.pNext = pNext + result.frameToken = frameToken -# Extension: VK_KHR_win32_keyed_mutex -const VK_KHR_WIN32_KEYED_MUTEX_SPEC_VERSION* = 1 -const VK_KHR_WIN32_KEYED_MUTEX_EXTENSION_NAME* = "VK_KHR_win32_keyed_mutex" -const VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR*: VkStructureType = VkStructureType(1000075000) +proc newVkPipelineCreationFeedback*(flags: VkPipelineCreationFeedbackFlags = 0.VkPipelineCreationFeedbackFlags, duration: uint64): VkPipelineCreationFeedback = + result.flags = flags + result.duration = duration -# Extension: VK_KHR_external_semaphore_capabilities -const VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_SPEC_VERSION* = 1 -const VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_EXTENSION_NAME* = "VK_KHR_external_semaphore_capabilities" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO -template VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHR* = - VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES -template VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR* = - VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT -template VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR* = - VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT -template VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR* = - VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT -template VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR* = - VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT -template VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT_KHR* = - VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT -template VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT_KHR* = - VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT -template VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT_KHR* = - VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT +proc newVkPipelineCreationFeedbackCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO, 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 -# Extension: VK_KHR_external_semaphore -const VK_KHR_EXTERNAL_SEMAPHORE_SPEC_VERSION* = 1 -const VK_KHR_EXTERNAL_SEMAPHORE_EXTENSION_NAME* = "VK_KHR_external_semaphore" -template VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHR* = - VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO -template VK_SEMAPHORE_IMPORT_TEMPORARY_BIT_KHR* = - VK_SEMAPHORE_IMPORT_TEMPORARY_BIT +proc newVkSurfaceFullScreenExclusiveInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT, pNext: pointer = nil, fullScreenExclusive: VkFullScreenExclusiveEXT): VkSurfaceFullScreenExclusiveInfoEXT = + result.sType = sType + result.pNext = pNext + result.fullScreenExclusive = fullScreenExclusive -# Extension: VK_KHR_external_semaphore_win32 -const VK_KHR_EXTERNAL_SEMAPHORE_WIN32_SPEC_VERSION* = 1 -const VK_KHR_EXTERNAL_SEMAPHORE_WIN32_EXTENSION_NAME* = "VK_KHR_external_semaphore_win32" -const VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR*: VkStructureType = VkStructureType(1000078000) -const VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR*: VkStructureType = VkStructureType(1000078001) -const VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR*: VkStructureType = VkStructureType(1000078002) -const VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR*: VkStructureType = VkStructureType(1000078003) +proc newVkSurfaceFullScreenExclusiveWin32InfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT, pNext: pointer = nil, hmonitor: HMONITOR): VkSurfaceFullScreenExclusiveWin32InfoEXT = + result.sType = sType + result.pNext = pNext + result.hmonitor = hmonitor -# Extension: VK_KHR_external_semaphore_fd -const VK_KHR_EXTERNAL_SEMAPHORE_FD_SPEC_VERSION* = 1 -const VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME* = "VK_KHR_external_semaphore_fd" -const VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR*: VkStructureType = VkStructureType(1000079000) -const VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR*: VkStructureType = VkStructureType(1000079001) +proc newVkSurfaceCapabilitiesFullScreenExclusiveEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT, pNext: pointer = nil, fullScreenExclusiveSupported: VkBool32): VkSurfaceCapabilitiesFullScreenExclusiveEXT = + result.sType = sType + result.pNext = pNext + result.fullScreenExclusiveSupported = fullScreenExclusiveSupported -# Extension: VK_KHR_push_descriptor -const VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION* = 2 -const VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME* = "VK_KHR_push_descriptor" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000080000) -const VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR*: VkDescriptorSetLayoutCreateFlagBits = VkDescriptorSetLayoutCreateFlagBits(1) -const VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR*: VkDescriptorUpdateTemplateType = VkDescriptorUpdateTemplateType(1) +proc newVkPhysicalDevicePresentBarrierFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_BARRIER_FEATURES_NV, pNext: pointer = nil, presentBarrier: VkBool32): VkPhysicalDevicePresentBarrierFeaturesNV = + result.sType = sType + result.pNext = pNext + result.presentBarrier = presentBarrier -# Extension: VK_EXT_conditional_rendering -const VK_EXT_CONDITIONAL_RENDERING_SPEC_VERSION* = 2 -const VK_EXT_CONDITIONAL_RENDERING_EXTENSION_NAME* = "VK_EXT_conditional_rendering" -const VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT*: VkStructureType = VkStructureType(1000081000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT*: VkStructureType = VkStructureType(1000081001) -const VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT*: VkStructureType = VkStructureType(1000081002) -const VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT*: VkAccessFlagBits = VkAccessFlagBits(1048576) -const VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(512) -const VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT*: VkPipelineStageFlagBits = VkPipelineStageFlagBits(262144) +proc newVkSurfaceCapabilitiesPresentBarrierNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_PRESENT_BARRIER_NV, pNext: pointer = nil, presentBarrierSupported: VkBool32): VkSurfaceCapabilitiesPresentBarrierNV = + result.sType = sType + result.pNext = pNext + result.presentBarrierSupported = presentBarrierSupported -# Extension: VK_KHR_shader_float16_int8 -const VK_KHR_SHADER_FLOAT16_INT8_SPEC_VERSION* = 1 -const VK_KHR_SHADER_FLOAT16_INT8_EXTENSION_NAME* = "VK_KHR_shader_float16_int8" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT16_INT8_FEATURES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES +proc newVkSwapchainPresentBarrierCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_BARRIER_CREATE_INFO_NV, pNext: pointer = nil, presentBarrierEnable: VkBool32): VkSwapchainPresentBarrierCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.presentBarrierEnable = presentBarrierEnable -# Extension: VK_KHR_16bit_storage -const VK_KHR_16BIT_STORAGE_SPEC_VERSION* = 1 -const VK_KHR_16BIT_STORAGE_EXTENSION_NAME* = "VK_KHR_16bit_storage" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES +proc newVkPhysicalDevicePerformanceQueryFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR, pNext: pointer = nil, performanceCounterQueryPools: VkBool32, performanceCounterMultipleQueryPools: VkBool32): VkPhysicalDevicePerformanceQueryFeaturesKHR = + result.sType = sType + result.pNext = pNext + result.performanceCounterQueryPools = performanceCounterQueryPools + result.performanceCounterMultipleQueryPools = performanceCounterMultipleQueryPools -# Extension: VK_KHR_incremental_present -const VK_KHR_INCREMENTAL_PRESENT_SPEC_VERSION* = 2 -const VK_KHR_INCREMENTAL_PRESENT_EXTENSION_NAME* = "VK_KHR_incremental_present" -const VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR*: VkStructureType = VkStructureType(1000084000) +proc newVkPhysicalDevicePerformanceQueryPropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR, pNext: pointer = nil, allowCommandBufferQueryCopies: VkBool32): VkPhysicalDevicePerformanceQueryPropertiesKHR = + result.sType = sType + result.pNext = pNext + result.allowCommandBufferQueryCopies = allowCommandBufferQueryCopies -# Extension: VK_KHR_descriptor_update_template -const VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_SPEC_VERSION* = 1 -const VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME* = "VK_KHR_descriptor_update_template" -template VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR* = - VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO -template VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR* = - VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE -template VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR* = - VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET -template VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT* = - VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT +proc newVkPerformanceCounterKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR, 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 -# Extension: VK_NVX_device_generated_commands -const VK_NVX_DEVICE_GENERATED_COMMANDS_SPEC_VERSION* = 3 -const VK_NVX_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME* = "VK_NVX_device_generated_commands" +proc newVkPerformanceCounterDescriptionKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR, 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 -# Extension: VK_NV_clip_space_w_scaling -const VK_NV_CLIP_SPACE_W_SCALING_SPEC_VERSION* = 1 -const VK_NV_CLIP_SPACE_W_SCALING_EXTENSION_NAME* = "VK_NV_clip_space_w_scaling" -const VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000087000) -const VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV*: VkDynamicState = VkDynamicState(1000087000) +proc newVkQueryPoolPerformanceCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR, 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 -# Extension: VK_EXT_direct_mode_display -const VK_EXT_DIRECT_MODE_DISPLAY_SPEC_VERSION* = 1 -const VK_EXT_DIRECT_MODE_DISPLAY_EXTENSION_NAME* = "VK_EXT_direct_mode_display" +proc newVkPerformanceCounterResultKHR*(int32: int32, int64: int64, uint32: uint32, uint64: uint64, float32: float32, float64: float64): VkPerformanceCounterResultKHR = + result.int32 = int32 + result.int64 = int64 + result.uint32 = uint32 + result.uint64 = uint64 + result.float32 = float32 + result.float64 = float64 -# Extension: VK_EXT_acquire_xlib_display -const VK_EXT_ACQUIRE_XLIB_DISPLAY_SPEC_VERSION* = 1 -const VK_EXT_ACQUIRE_XLIB_DISPLAY_EXTENSION_NAME* = "VK_EXT_acquire_xlib_display" +proc newVkAcquireProfilingLockInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR, pNext: pointer = nil, flags: VkAcquireProfilingLockFlagsKHR = 0.VkAcquireProfilingLockFlagsKHR, timeout: uint64): VkAcquireProfilingLockInfoKHR = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.timeout = timeout -# Extension: VK_EXT_display_surface_counter -const VK_EXT_DISPLAY_SURFACE_COUNTER_SPEC_VERSION* = 1 -const VK_EXT_DISPLAY_SURFACE_COUNTER_EXTENSION_NAME* = "VK_EXT_display_surface_counter" -const VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT*: VkStructureType = VkStructureType(1000090000) +proc newVkPerformanceQuerySubmitInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR, pNext: pointer = nil, counterPassIndex: uint32): VkPerformanceQuerySubmitInfoKHR = + result.sType = sType + result.pNext = pNext + result.counterPassIndex = counterPassIndex -# Extension: VK_EXT_display_control -const VK_EXT_DISPLAY_CONTROL_SPEC_VERSION* = 1 -const VK_EXT_DISPLAY_CONTROL_EXTENSION_NAME* = "VK_EXT_display_control" -const VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT*: VkStructureType = VkStructureType(1000091000) -const VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT*: VkStructureType = VkStructureType(1000091001) -const VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT*: VkStructureType = VkStructureType(1000091002) -const VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000091003) +proc newVkPerformanceQueryReservationInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_RESERVATION_INFO_KHR, pNext: pointer = nil, maxPerformanceQueriesPerPool: uint32): VkPerformanceQueryReservationInfoKHR = + result.sType = sType + result.pNext = pNext + result.maxPerformanceQueriesPerPool = maxPerformanceQueriesPerPool -# Extension: VK_GOOGLE_display_timing -const VK_GOOGLE_DISPLAY_TIMING_SPEC_VERSION* = 1 -const VK_GOOGLE_DISPLAY_TIMING_EXTENSION_NAME* = "VK_GOOGLE_display_timing" -const VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE*: VkStructureType = VkStructureType(1000092000) +proc newVkHeadlessSurfaceCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT, pNext: pointer = nil, flags: VkHeadlessSurfaceCreateFlagsEXT = 0.VkHeadlessSurfaceCreateFlagsEXT): VkHeadlessSurfaceCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.flags = flags -# Extension: VK_RESERVED_do_not_use_94 -const VK_RESERVED_DO_NOT_USE_94_SPEC_VERSION* = 1 -const VK_RESERVED_DO_NOT_USE_94_EXTENSION_NAME* = "VK_RESERVED_do_not_use_94" +proc newVkPhysicalDeviceCoverageReductionModeFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV, pNext: pointer = nil, coverageReductionMode: VkBool32): VkPhysicalDeviceCoverageReductionModeFeaturesNV = + result.sType = sType + result.pNext = pNext + result.coverageReductionMode = coverageReductionMode -# Extension: VK_NV_sample_mask_override_coverage -const VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_SPEC_VERSION* = 1 -const VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_EXTENSION_NAME* = "VK_NV_sample_mask_override_coverage" +proc newVkPipelineCoverageReductionStateCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV, pNext: pointer = nil, flags: VkPipelineCoverageReductionStateCreateFlagsNV = 0.VkPipelineCoverageReductionStateCreateFlagsNV, coverageReductionMode: VkCoverageReductionModeNV): VkPipelineCoverageReductionStateCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.coverageReductionMode = coverageReductionMode -# Extension: VK_NV_geometry_shader_passthrough -const VK_NV_GEOMETRY_SHADER_PASSTHROUGH_SPEC_VERSION* = 1 -const VK_NV_GEOMETRY_SHADER_PASSTHROUGH_EXTENSION_NAME* = "VK_NV_geometry_shader_passthrough" +proc newVkFramebufferMixedSamplesCombinationNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV, 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 -# Extension: VK_NV_viewport_array2 -const VK_NV_VIEWPORT_ARRAY_2_SPEC_VERSION* = 1 -const VK_NV_VIEWPORT_ARRAY_2_EXTENSION_NAME* = "VK_NV_viewport_array2" +proc newVkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL, pNext: pointer = nil, shaderIntegerFunctions2: VkBool32): VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL = + result.sType = sType + result.pNext = pNext + result.shaderIntegerFunctions2 = shaderIntegerFunctions2 -# Extension: VK_NVX_multiview_per_view_attributes -const VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_SPEC_VERSION* = 1 -const VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME* = "VK_NVX_multiview_per_view_attributes" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX*: VkStructureType = VkStructureType(1000097000) -const VK_SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX*: VkSubpassDescriptionFlagBits = VkSubpassDescriptionFlagBits(1) -const VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX*: VkSubpassDescriptionFlagBits = VkSubpassDescriptionFlagBits(2) +proc newVkPerformanceValueDataINTEL*(value32: uint32, value64: uint64, valueFloat: float32, valueBool: VkBool32, valueString: cstring): VkPerformanceValueDataINTEL = + result.value32 = value32 + result.value64 = value64 + result.valueFloat = valueFloat + result.valueBool = valueBool + result.valueString = valueString -# Extension: VK_NV_viewport_swizzle -const VK_NV_VIEWPORT_SWIZZLE_SPEC_VERSION* = 1 -const VK_NV_VIEWPORT_SWIZZLE_EXTENSION_NAME* = "VK_NV_viewport_swizzle" -const VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000098000) +proc newVkPerformanceValueINTEL*(`type`: VkPerformanceValueTypeINTEL, data: VkPerformanceValueDataINTEL): VkPerformanceValueINTEL = + result.`type` = `type` + result.data = data -# Extension: VK_EXT_discard_rectangles -const VK_EXT_DISCARD_RECTANGLES_SPEC_VERSION* = 2 -const VK_EXT_DISCARD_RECTANGLES_EXTENSION_NAME* = "VK_EXT_discard_rectangles" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000099000) -const VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000099001) -const VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT*: VkDynamicState = VkDynamicState(1000099000) -const VK_DYNAMIC_STATE_DISCARD_RECTANGLE_ENABLE_EXT*: VkDynamicState = VkDynamicState(1000099001) -const VK_DYNAMIC_STATE_DISCARD_RECTANGLE_MODE_EXT*: VkDynamicState = VkDynamicState(1000099002) +proc newVkInitializePerformanceApiInfoINTEL*(sType: VkStructureType = VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL, pNext: pointer = nil, pUserData: pointer = nil): VkInitializePerformanceApiInfoINTEL = + result.sType = sType + result.pNext = pNext + result.pUserData = pUserData -# Extension: VK_NV_extension_101 -const VK_NV_EXTENSION_101_SPEC_VERSION* = 0 -const VK_NV_EXTENSION_101_EXTENSION_NAME* = "VK_NV_extension_101" +proc newVkQueryPoolPerformanceQueryCreateInfoINTEL*(sType: VkStructureType = VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL, pNext: pointer = nil, performanceCountersSampling: VkQueryPoolSamplingModeINTEL): VkQueryPoolPerformanceQueryCreateInfoINTEL = + result.sType = sType + result.pNext = pNext + result.performanceCountersSampling = performanceCountersSampling -# Extension: VK_EXT_conservative_rasterization -const VK_EXT_CONSERVATIVE_RASTERIZATION_SPEC_VERSION* = 1 -const VK_EXT_CONSERVATIVE_RASTERIZATION_EXTENSION_NAME* = "VK_EXT_conservative_rasterization" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000101000) -const VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000101001) +proc newVkPerformanceMarkerInfoINTEL*(sType: VkStructureType = VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL, pNext: pointer = nil, marker: uint64): VkPerformanceMarkerInfoINTEL = + result.sType = sType + result.pNext = pNext + result.marker = marker -# Extension: VK_EXT_depth_clip_enable -const VK_EXT_DEPTH_CLIP_ENABLE_SPEC_VERSION* = 1 -const VK_EXT_DEPTH_CLIP_ENABLE_EXTENSION_NAME* = "VK_EXT_depth_clip_enable" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT*: VkStructureType = VkStructureType(1000102000) -const VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000102001) +proc newVkPerformanceStreamMarkerInfoINTEL*(sType: VkStructureType = VK_STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL, pNext: pointer = nil, marker: uint32): VkPerformanceStreamMarkerInfoINTEL = + result.sType = sType + result.pNext = pNext + result.marker = marker -# Extension: VK_NV_extension_104 -const VK_NV_EXTENSION_104_SPEC_VERSION* = 0 -const VK_NV_EXTENSION_104_EXTENSION_NAME* = "VK_NV_extension_104" -const VK_PRIVATE_DATA_SLOT_CREATE_RESERVED_0_BIT_NV*: VkPrivateDataSlotCreateFlagBits = VkPrivateDataSlotCreateFlagBits(1) +proc newVkPerformanceOverrideInfoINTEL*(sType: VkStructureType = VK_STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL, 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 -# Extension: VK_EXT_swapchain_colorspace -const VK_EXT_SWAPCHAIN_COLOR_SPACE_SPEC_VERSION* = 4 -const VK_EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME* = "VK_EXT_swapchain_colorspace" -const VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104001) -const VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104002) -const VK_COLOR_SPACE_DISPLAY_P3_LINEAR_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104003) -const VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104004) -const VK_COLOR_SPACE_BT709_LINEAR_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104005) -const VK_COLOR_SPACE_BT709_NONLINEAR_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104006) -const VK_COLOR_SPACE_BT2020_LINEAR_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104007) -const VK_COLOR_SPACE_HDR10_ST2084_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104008) -const VK_COLOR_SPACE_DOLBYVISION_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104009) -const VK_COLOR_SPACE_HDR10_HLG_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104010) -const VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104011) -const VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104012) -const VK_COLOR_SPACE_PASS_THROUGH_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104013) -const VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT*: VkColorSpaceKHR = VkColorSpaceKHR(1000104014) -template VK_COLOR_SPACE_DCI_P3_LINEAR_EXT* = - VK_COLOR_SPACE_DISPLAY_P3_LINEAR_EXT +proc newVkPerformanceConfigurationAcquireInfoINTEL*(sType: VkStructureType = VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL, pNext: pointer = nil, `type`: VkPerformanceConfigurationTypeINTEL): VkPerformanceConfigurationAcquireInfoINTEL = + result.sType = sType + result.pNext = pNext + result.`type` = `type` -# Extension: VK_EXT_hdr_metadata -const VK_EXT_HDR_METADATA_SPEC_VERSION* = 2 -const VK_EXT_HDR_METADATA_EXTENSION_NAME* = "VK_EXT_hdr_metadata" -const VK_STRUCTURE_TYPE_HDR_METADATA_EXT*: VkStructureType = VkStructureType(1000105000) +proc newVkPhysicalDeviceShaderClockFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR, pNext: pointer = nil, shaderSubgroupClock: VkBool32, shaderDeviceClock: VkBool32): VkPhysicalDeviceShaderClockFeaturesKHR = + result.sType = sType + result.pNext = pNext + result.shaderSubgroupClock = shaderSubgroupClock + result.shaderDeviceClock = shaderDeviceClock -# Extension: VK_IMG_extension_107 -const VK_IMG_EXTENSION_107_SPEC_VERSION* = 0 -const VK_IMG_EXTENSION_107_EXTENSION_NAME* = "VK_IMG_extension_107" +proc newVkPhysicalDeviceIndexTypeUint8FeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT, pNext: pointer = nil, indexTypeUint8: VkBool32): VkPhysicalDeviceIndexTypeUint8FeaturesEXT = + result.sType = sType + result.pNext = pNext + result.indexTypeUint8 = indexTypeUint8 -# Extension: VK_IMG_extension_108 -const VK_IMG_EXTENSION_108_SPEC_VERSION* = 0 -const VK_IMG_EXTENSION_108_EXTENSION_NAME* = "VK_IMG_extension_108" +proc newVkPhysicalDeviceShaderSMBuiltinsPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV, pNext: pointer = nil, shaderSMCount: uint32, shaderWarpsPerSM: uint32): VkPhysicalDeviceShaderSMBuiltinsPropertiesNV = + result.sType = sType + result.pNext = pNext + result.shaderSMCount = shaderSMCount + result.shaderWarpsPerSM = shaderWarpsPerSM -# Extension: VK_KHR_imageless_framebuffer -const VK_KHR_IMAGELESS_FRAMEBUFFER_SPEC_VERSION* = 1 -const VK_KHR_IMAGELESS_FRAMEBUFFER_EXTENSION_NAME* = "VK_KHR_imageless_framebuffer" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES -template VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO_KHR* = - VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO -template VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO_KHR* = - VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO -template VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO_KHR* = - VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO -template VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT_KHR* = - VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT +proc newVkPhysicalDeviceShaderSMBuiltinsFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV, pNext: pointer = nil, shaderSMBuiltins: VkBool32): VkPhysicalDeviceShaderSMBuiltinsFeaturesNV = + result.sType = sType + result.pNext = pNext + result.shaderSMBuiltins = shaderSMBuiltins -# Extension: VK_KHR_create_renderpass2 -const VK_KHR_CREATE_RENDERPASS_2_SPEC_VERSION* = 1 -const VK_KHR_CREATE_RENDERPASS_2_EXTENSION_NAME* = "VK_KHR_create_renderpass2" -template VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2_KHR* = - VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 -template VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2_KHR* = - VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 -template VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2_KHR* = - VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 -template VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2_KHR* = - VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 -template VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2_KHR* = - VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 -template VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO_KHR* = - VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO -template VK_STRUCTURE_TYPE_SUBPASS_END_INFO_KHR* = - VK_STRUCTURE_TYPE_SUBPASS_END_INFO +proc newVkPhysicalDeviceFragmentShaderInterlockFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT, 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 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES, pNext: pointer = nil, separateDepthStencilLayouts: VkBool32): VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures = + result.sType = sType + result.pNext = pNext + result.separateDepthStencilLayouts = separateDepthStencilLayouts -# Extension: VK_IMG_extension_111 -const VK_IMG_EXTENSION_111_SPEC_VERSION* = 0 -const VK_IMG_EXTENSION_111_EXTENSION_NAME* = "VK_IMG_extension_111" +proc newVkAttachmentReferenceStencilLayout*(sType: VkStructureType = VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT, pNext: pointer = nil, stencilLayout: VkImageLayout): VkAttachmentReferenceStencilLayout = + result.sType = sType + result.pNext = pNext + result.stencilLayout = stencilLayout -# Extension: VK_KHR_shared_presentable_image -const VK_KHR_SHARED_PRESENTABLE_IMAGE_SPEC_VERSION* = 1 -const VK_KHR_SHARED_PRESENTABLE_IMAGE_EXTENSION_NAME* = "VK_KHR_shared_presentable_image" -const VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR*: VkStructureType = VkStructureType(1000111000) -const VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR*: VkPresentModeKHR = VkPresentModeKHR(1000111000) -const VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR*: VkPresentModeKHR = VkPresentModeKHR(1000111001) -const VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR*: VkImageLayout = VkImageLayout(1000111000) +proc newVkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT, pNext: pointer = nil, primitiveTopologyListRestart: VkBool32, primitiveTopologyPatchListRestart: VkBool32): VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.primitiveTopologyListRestart = primitiveTopologyListRestart + result.primitiveTopologyPatchListRestart = primitiveTopologyPatchListRestart -# Extension: VK_KHR_external_fence_capabilities -const VK_KHR_EXTERNAL_FENCE_CAPABILITIES_SPEC_VERSION* = 1 -const VK_KHR_EXTERNAL_FENCE_CAPABILITIES_EXTENSION_NAME* = "VK_KHR_external_fence_capabilities" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO -template VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES_KHR* = - VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES -template VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR* = - VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT -template VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR* = - VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT -template VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR* = - VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT -template VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT_KHR* = - VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT -template VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT_KHR* = - VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT -template VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT_KHR* = - VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT +proc newVkAttachmentDescriptionStencilLayout*(sType: VkStructureType = VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT, pNext: pointer = nil, stencilInitialLayout: VkImageLayout, stencilFinalLayout: VkImageLayout): VkAttachmentDescriptionStencilLayout = + result.sType = sType + result.pNext = pNext + result.stencilInitialLayout = stencilInitialLayout + result.stencilFinalLayout = stencilFinalLayout -# Extension: VK_KHR_external_fence -const VK_KHR_EXTERNAL_FENCE_SPEC_VERSION* = 1 -const VK_KHR_EXTERNAL_FENCE_EXTENSION_NAME* = "VK_KHR_external_fence" -template VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO_KHR* = - VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO -template VK_FENCE_IMPORT_TEMPORARY_BIT_KHR* = - VK_FENCE_IMPORT_TEMPORARY_BIT +proc newVkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR, pNext: pointer = nil, pipelineExecutableInfo: VkBool32): VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR = + result.sType = sType + result.pNext = pNext + result.pipelineExecutableInfo = pipelineExecutableInfo -# Extension: VK_KHR_external_fence_win32 -const VK_KHR_EXTERNAL_FENCE_WIN32_SPEC_VERSION* = 1 -const VK_KHR_EXTERNAL_FENCE_WIN32_EXTENSION_NAME* = "VK_KHR_external_fence_win32" -const VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR*: VkStructureType = VkStructureType(1000114000) -const VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR*: VkStructureType = VkStructureType(1000114001) -const VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR*: VkStructureType = VkStructureType(1000114002) +proc newVkPipelineInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR, pNext: pointer = nil, pipeline: VkPipeline): VkPipelineInfoKHR = + result.sType = sType + result.pNext = pNext + result.pipeline = pipeline -# Extension: VK_KHR_external_fence_fd -const VK_KHR_EXTERNAL_FENCE_FD_SPEC_VERSION* = 1 -const VK_KHR_EXTERNAL_FENCE_FD_EXTENSION_NAME* = "VK_KHR_external_fence_fd" -const VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR*: VkStructureType = VkStructureType(1000115000) -const VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR*: VkStructureType = VkStructureType(1000115001) +proc newVkPipelineExecutablePropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR, 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 -# Extension: VK_KHR_performance_query -const VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION* = 1 -const VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME* = "VK_KHR_performance_query" -const VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR*: VkQueryType = VkQueryType(1000116000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR*: VkStructureType = VkStructureType(1000116000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000116001) -const VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000116002) -const VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR*: VkStructureType = VkStructureType(1000116003) -const VK_STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR*: VkStructureType = VkStructureType(1000116004) -const VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR*: VkStructureType = VkStructureType(1000116005) -const VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR*: VkStructureType = VkStructureType(1000116006) -const VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_RESERVATION_INFO_KHR*: VkStructureType = VkStructureType(1000116007) +proc newVkPipelineExecutableInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR, pNext: pointer = nil, pipeline: VkPipeline, executableIndex: uint32): VkPipelineExecutableInfoKHR = + result.sType = sType + result.pNext = pNext + result.pipeline = pipeline + result.executableIndex = executableIndex -# Extension: VK_KHR_maintenance2 -const VK_KHR_MAINTENANCE_2_SPEC_VERSION* = 1 -const VK_KHR_MAINTENANCE_2_EXTENSION_NAME* = "VK_KHR_maintenance2" -template VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR* = - VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT -template VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR* = - VK_IMAGE_CREATE_EXTENDED_USAGE_BIT -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES -template VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO_KHR* = - VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO -template VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO_KHR* = - VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO -template VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO_KHR* = - VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO -template VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR* = - VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL -template VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR* = - VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL -template VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES_KHR* = - VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES -template VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY_KHR* = - VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY -template VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT_KHR* = - VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT -template VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT_KHR* = - VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT +proc newVkPipelineExecutableStatisticValueKHR*(b32: VkBool32, i64: int64, u64: uint64, f64: float64): VkPipelineExecutableStatisticValueKHR = + result.b32 = b32 + result.i64 = i64 + result.u64 = u64 + result.f64 = f64 -# Extension: VK_KHR_extension_119 -const VK_KHR_EXTENSION_119_SPEC_VERSION* = 0 -const VK_KHR_EXTENSION_119_EXTENSION_NAME* = "VK_KHR_extension_119" +proc newVkPipelineExecutableStatisticKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR, 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 -# Extension: VK_KHR_get_surface_capabilities2 -const VK_KHR_GET_SURFACE_CAPABILITIES_2_SPEC_VERSION* = 1 -const VK_KHR_GET_SURFACE_CAPABILITIES_2_EXTENSION_NAME* = "VK_KHR_get_surface_capabilities2" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR*: VkStructureType = VkStructureType(1000119000) -const VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR*: VkStructureType = VkStructureType(1000119001) -const VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR*: VkStructureType = VkStructureType(1000119002) +proc newVkPipelineExecutableInternalRepresentationKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR, 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 -# Extension: VK_KHR_variable_pointers -const VK_KHR_VARIABLE_POINTERS_SPEC_VERSION* = 1 -const VK_KHR_VARIABLE_POINTERS_EXTENSION_NAME* = "VK_KHR_variable_pointers" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES_KHR +proc newVkPhysicalDeviceShaderDemoteToHelperInvocationFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES, pNext: pointer = nil, shaderDemoteToHelperInvocation: VkBool32): VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures = + result.sType = sType + result.pNext = pNext + result.shaderDemoteToHelperInvocation = shaderDemoteToHelperInvocation -# Extension: VK_KHR_get_display_properties2 -const VK_KHR_GET_DISPLAY_PROPERTIES_2_SPEC_VERSION* = 1 -const VK_KHR_GET_DISPLAY_PROPERTIES_2_EXTENSION_NAME* = "VK_KHR_get_display_properties2" -const VK_STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR*: VkStructureType = VkStructureType(1000121000) -const VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR*: VkStructureType = VkStructureType(1000121001) -const VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR*: VkStructureType = VkStructureType(1000121002) -const VK_STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR*: VkStructureType = VkStructureType(1000121003) -const VK_STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR*: VkStructureType = VkStructureType(1000121004) +proc newVkPhysicalDeviceTexelBufferAlignmentFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT, pNext: pointer = nil, texelBufferAlignment: VkBool32): VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.texelBufferAlignment = texelBufferAlignment -# Extension: VK_MVK_ios_surface -const VK_MVK_IOS_SURFACE_SPEC_VERSION* = 3 -const VK_MVK_IOS_SURFACE_EXTENSION_NAME* = "VK_MVK_ios_surface" -const VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK*: VkStructureType = VkStructureType(1000122000) +proc newVkPhysicalDeviceTexelBufferAlignmentProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES, 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 -# Extension: VK_MVK_macos_surface -const VK_MVK_MACOS_SURFACE_SPEC_VERSION* = 3 -const VK_MVK_MACOS_SURFACE_EXTENSION_NAME* = "VK_MVK_macos_surface" -const VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK*: VkStructureType = VkStructureType(1000123000) +proc newVkPhysicalDeviceSubgroupSizeControlFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES, pNext: pointer = nil, subgroupSizeControl: VkBool32, computeFullSubgroups: VkBool32): VkPhysicalDeviceSubgroupSizeControlFeatures = + result.sType = sType + result.pNext = pNext + result.subgroupSizeControl = subgroupSizeControl + result.computeFullSubgroups = computeFullSubgroups -# Extension: VK_MVK_moltenvk -const VK_MVK_MOLTENVK_SPEC_VERSION* = 0 -const VK_MVK_MOLTENVK_EXTENSION_NAME* = "VK_MVK_moltenvk" +proc newVkPhysicalDeviceSubgroupSizeControlProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES, 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 -# Extension: VK_EXT_external_memory_dma_buf -const VK_EXT_EXTERNAL_MEMORY_DMA_BUF_SPEC_VERSION* = 1 -const VK_EXT_EXTERNAL_MEMORY_DMA_BUF_EXTENSION_NAME* = "VK_EXT_external_memory_dma_buf" -const VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT*: VkExternalMemoryHandleTypeFlagBits = VkExternalMemoryHandleTypeFlagBits(512) +proc newVkPipelineShaderStageRequiredSubgroupSizeCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO, pNext: pointer = nil, requiredSubgroupSize: uint32): VkPipelineShaderStageRequiredSubgroupSizeCreateInfo = + result.sType = sType + result.pNext = pNext + result.requiredSubgroupSize = requiredSubgroupSize -# Extension: VK_EXT_queue_family_foreign -const VK_EXT_QUEUE_FAMILY_FOREIGN_SPEC_VERSION* = 1 -const VK_EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME* = "VK_EXT_queue_family_foreign" +proc newVkSubpassShadingPipelineCreateInfoHUAWEI*(sType: VkStructureType = VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI, pNext: pointer = nil, renderPass: VkRenderPass, subpass: uint32): VkSubpassShadingPipelineCreateInfoHUAWEI = + result.sType = sType + result.pNext = pNext + result.renderPass = renderPass + result.subpass = subpass -# Extension: VK_KHR_dedicated_allocation -const VK_KHR_DEDICATED_ALLOCATION_SPEC_VERSION* = 3 -const VK_KHR_DEDICATED_ALLOCATION_EXTENSION_NAME* = "VK_KHR_dedicated_allocation" -template VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS_KHR* = - VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS -template VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO_KHR* = - VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO +proc newVkPhysicalDeviceSubpassShadingPropertiesHUAWEI*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI, pNext: pointer = nil, maxSubpassShadingWorkgroupSizeAspectRatio: uint32): VkPhysicalDeviceSubpassShadingPropertiesHUAWEI = + result.sType = sType + result.pNext = pNext + result.maxSubpassShadingWorkgroupSizeAspectRatio = maxSubpassShadingWorkgroupSizeAspectRatio -# Extension: VK_EXT_debug_utils -const VK_EXT_DEBUG_UTILS_SPEC_VERSION* = 2 -const VK_EXT_DEBUG_UTILS_EXTENSION_NAME* = "VK_EXT_debug_utils" -const VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT*: VkStructureType = VkStructureType(1000128000) -const VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT*: VkStructureType = VkStructureType(1000128001) -const VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT*: VkStructureType = VkStructureType(1000128002) -const VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT*: VkStructureType = VkStructureType(1000128003) -const VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000128004) -const VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT*: VkObjectType = VkObjectType(1000128000) +proc newVkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_PROPERTIES_HUAWEI, 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 = VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO, pNext: pointer = nil, opaqueCaptureAddress: uint64): VkMemoryOpaqueCaptureAddressAllocateInfo = + result.sType = sType + result.pNext = pNext + result.opaqueCaptureAddress = opaqueCaptureAddress + +proc newVkDeviceMemoryOpaqueCaptureAddressInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO, pNext: pointer = nil, memory: VkDeviceMemory): VkDeviceMemoryOpaqueCaptureAddressInfo = + result.sType = sType + result.pNext = pNext + result.memory = memory -# Extension: VK_ANDROID_external_memory_android_hardware_buffer -const VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_SPEC_VERSION* = 5 -const VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME* = "VK_ANDROID_external_memory_android_hardware_buffer" -const VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID*: VkExternalMemoryHandleTypeFlagBits = VkExternalMemoryHandleTypeFlagBits(1024) -const VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID*: VkStructureType = VkStructureType(1000129000) -const VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID*: VkStructureType = VkStructureType(1000129001) -const VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID*: VkStructureType = VkStructureType(1000129002) -const VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID*: VkStructureType = VkStructureType(1000129003) -const VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID*: VkStructureType = VkStructureType(1000129004) -const VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID*: VkStructureType = VkStructureType(1000129005) -const VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID*: VkStructureType = VkStructureType(1000129006) +proc newVkPhysicalDeviceLineRasterizationFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT, pNext: pointer = nil, rectangularLines: VkBool32, bresenhamLines: VkBool32, smoothLines: VkBool32, stippledRectangularLines: VkBool32, stippledBresenhamLines: VkBool32, stippledSmoothLines: VkBool32): VkPhysicalDeviceLineRasterizationFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.rectangularLines = rectangularLines + result.bresenhamLines = bresenhamLines + result.smoothLines = smoothLines + result.stippledRectangularLines = stippledRectangularLines + result.stippledBresenhamLines = stippledBresenhamLines + result.stippledSmoothLines = stippledSmoothLines -# Extension: VK_EXT_sampler_filter_minmax -const VK_EXT_SAMPLER_FILTER_MINMAX_SPEC_VERSION* = 2 -const VK_EXT_SAMPLER_FILTER_MINMAX_EXTENSION_NAME* = "VK_EXT_sampler_filter_minmax" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES_EXT* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES -template VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT* = - VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO -template VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT* = - VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT -template VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE_EXT* = - VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE -template VK_SAMPLER_REDUCTION_MODE_MIN_EXT* = - VK_SAMPLER_REDUCTION_MODE_MIN -template VK_SAMPLER_REDUCTION_MODE_MAX_EXT* = - VK_SAMPLER_REDUCTION_MODE_MAX +proc newVkPhysicalDeviceLineRasterizationPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT, pNext: pointer = nil, lineSubPixelPrecisionBits: uint32): VkPhysicalDeviceLineRasterizationPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.lineSubPixelPrecisionBits = lineSubPixelPrecisionBits -# Extension: VK_KHR_storage_buffer_storage_class -const VK_KHR_STORAGE_BUFFER_STORAGE_CLASS_SPEC_VERSION* = 1 -const VK_KHR_STORAGE_BUFFER_STORAGE_CLASS_EXTENSION_NAME* = "VK_KHR_storage_buffer_storage_class" +proc newVkPipelineRasterizationLineStateCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT, pNext: pointer = nil, lineRasterizationMode: VkLineRasterizationModeEXT, stippledLineEnable: VkBool32, lineStippleFactor: uint32, lineStipplePattern: uint16): VkPipelineRasterizationLineStateCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.lineRasterizationMode = lineRasterizationMode + result.stippledLineEnable = stippledLineEnable + result.lineStippleFactor = lineStippleFactor + result.lineStipplePattern = lineStipplePattern -# Extension: VK_AMD_gpu_shader_int16 -const VK_AMD_GPU_SHADER_INT16_SPEC_VERSION* = 2 -const VK_AMD_GPU_SHADER_INT16_EXTENSION_NAME* = "VK_AMD_gpu_shader_int16" +proc newVkPhysicalDevicePipelineCreationCacheControlFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES, pNext: pointer = nil, pipelineCreationCacheControl: VkBool32): VkPhysicalDevicePipelineCreationCacheControlFeatures = + result.sType = sType + result.pNext = pNext + result.pipelineCreationCacheControl = pipelineCreationCacheControl -# Extension: VK_AMD_extension_134 -const VK_AMD_EXTENSION_134_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_134_EXTENSION_NAME* = "VK_AMD_extension_134" +proc newVkPhysicalDeviceVulkan11Features*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES, 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 -# Extension: VK_AMD_extension_135 -const VK_AMD_EXTENSION_135_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_135_EXTENSION_NAME* = "VK_AMD_extension_135" -const VK_BUFFER_USAGE_RESERVED_25_BIT_AMD*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(33554432) +proc newVkPhysicalDeviceVulkan11Properties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES, 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 -# Extension: VK_AMD_extension_136 -const VK_AMD_EXTENSION_136_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_136_EXTENSION_NAME* = "VK_AMD_extension_136" +proc newVkPhysicalDeviceVulkan12Features*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES, 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 -# Extension: VK_AMD_mixed_attachment_samples -const VK_AMD_MIXED_ATTACHMENT_SAMPLES_SPEC_VERSION* = 1 -const VK_AMD_MIXED_ATTACHMENT_SAMPLES_EXTENSION_NAME* = "VK_AMD_mixed_attachment_samples" +proc newVkPhysicalDeviceVulkan12Properties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES, 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 -# Extension: VK_AMD_shader_fragment_mask -const VK_AMD_SHADER_FRAGMENT_MASK_SPEC_VERSION* = 1 -const VK_AMD_SHADER_FRAGMENT_MASK_EXTENSION_NAME* = "VK_AMD_shader_fragment_mask" +proc newVkPhysicalDeviceVulkan13Features*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_FEATURES, 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 + +proc newVkPhysicalDeviceVulkan13Properties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_PROPERTIES, 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 -# Extension: VK_EXT_inline_uniform_block -const VK_EXT_INLINE_UNIFORM_BLOCK_SPEC_VERSION* = 1 -const VK_EXT_INLINE_UNIFORM_BLOCK_EXTENSION_NAME* = "VK_EXT_inline_uniform_block" -template VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT* = - VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES -template VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT* = - VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK -template VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT* = - VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO +proc newVkPipelineCompilerControlCreateInfoAMD*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD, pNext: pointer = nil, compilerControlFlags: VkPipelineCompilerControlFlagsAMD): VkPipelineCompilerControlCreateInfoAMD = + result.sType = sType + result.pNext = pNext + result.compilerControlFlags = compilerControlFlags -# Extension: VK_AMD_extension_140 -const VK_AMD_EXTENSION_140_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_140_EXTENSION_NAME* = "VK_AMD_extension_140" +proc newVkPhysicalDeviceCoherentMemoryFeaturesAMD*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD, pNext: pointer = nil, deviceCoherentMemory: VkBool32): VkPhysicalDeviceCoherentMemoryFeaturesAMD = + result.sType = sType + result.pNext = pNext + result.deviceCoherentMemory = deviceCoherentMemory -# Extension: VK_EXT_shader_stencil_export -const VK_EXT_SHADER_STENCIL_EXPORT_SPEC_VERSION* = 1 -const VK_EXT_SHADER_STENCIL_EXPORT_EXTENSION_NAME* = "VK_EXT_shader_stencil_export" +proc newVkFaultData*(sType: VkStructureType = VK_STRUCTURE_TYPE_FAULT_DATA, pNext: pointer = nil, faultLevel: VkFaultLevel, faultType: VkFaultType): VkFaultData = + result.sType = sType + result.pNext = pNext + result.faultLevel = faultLevel + result.faultType = faultType -# Extension: VK_AMD_extension_142 -const VK_AMD_EXTENSION_142_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_142_EXTENSION_NAME* = "VK_AMD_extension_142" +proc newVkFaultCallbackInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_FAULT_CALLBACK_INFO, 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 -# Extension: VK_AMD_extension_143 -const VK_AMD_EXTENSION_143_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_143_EXTENSION_NAME* = "VK_AMD_extension_143" +proc newVkPhysicalDeviceToolProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES, 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 -# Extension: VK_EXT_sample_locations -const VK_EXT_SAMPLE_LOCATIONS_SPEC_VERSION* = 1 -const VK_EXT_SAMPLE_LOCATIONS_EXTENSION_NAME* = "VK_EXT_sample_locations" -const VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT*: VkImageCreateFlagBits = VkImageCreateFlagBits(4096) -const VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT*: VkStructureType = VkStructureType(1000143000) -const VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT*: VkStructureType = VkStructureType(1000143001) -const VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000143002) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000143003) -const VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000143004) -const VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT*: VkDynamicState = VkDynamicState(1000143000) +proc newVkSamplerCustomBorderColorCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT, pNext: pointer = nil, customBorderColor: VkClearColorValue, format: VkFormat): VkSamplerCustomBorderColorCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.customBorderColor = customBorderColor + result.format = format -# Extension: VK_KHR_relaxed_block_layout -const VK_KHR_RELAXED_BLOCK_LAYOUT_SPEC_VERSION* = 1 -const VK_KHR_RELAXED_BLOCK_LAYOUT_EXTENSION_NAME* = "VK_KHR_relaxed_block_layout" +proc newVkPhysicalDeviceCustomBorderColorPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT, pNext: pointer = nil, maxCustomBorderColorSamplers: uint32): VkPhysicalDeviceCustomBorderColorPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.maxCustomBorderColorSamplers = maxCustomBorderColorSamplers -# Extension: VK_RESERVED_do_not_use_146 -const VK_RESERVED_DO_NOT_USE_146_SPEC_VERSION* = 1 -const VK_RESERVED_DO_NOT_USE_146_EXTENSION_NAME* = "VK_RESERVED_do_not_use_146" +proc newVkPhysicalDeviceCustomBorderColorFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT, pNext: pointer = nil, customBorderColors: VkBool32, customBorderColorWithoutFormat: VkBool32): VkPhysicalDeviceCustomBorderColorFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.customBorderColors = customBorderColors + result.customBorderColorWithoutFormat = customBorderColorWithoutFormat -# Extension: VK_KHR_get_memory_requirements2 -const VK_KHR_GET_MEMORY_REQUIREMENTS_2_SPEC_VERSION* = 1 -const VK_KHR_GET_MEMORY_REQUIREMENTS_2_EXTENSION_NAME* = "VK_KHR_get_memory_requirements2" -template VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2_KHR* = - VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 -template VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2_KHR* = - VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 -template VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2_KHR* = - VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 -template VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2_KHR* = - VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 -template VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2_KHR* = - VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 +proc newVkSamplerBorderColorComponentMappingCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT, pNext: pointer = nil, components: VkComponentMapping, srgb: VkBool32): VkSamplerBorderColorComponentMappingCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.components = components + result.srgb = srgb -# Extension: VK_KHR_image_format_list -const VK_KHR_IMAGE_FORMAT_LIST_SPEC_VERSION* = 1 -const VK_KHR_IMAGE_FORMAT_LIST_EXTENSION_NAME* = "VK_KHR_image_format_list" -template VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO_KHR* = - VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO +proc newVkPhysicalDeviceBorderColorSwizzleFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT, pNext: pointer = nil, borderColorSwizzle: VkBool32, borderColorSwizzleFromImage: VkBool32): VkPhysicalDeviceBorderColorSwizzleFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.borderColorSwizzle = borderColorSwizzle + result.borderColorSwizzleFromImage = borderColorSwizzleFromImage -# Extension: VK_EXT_blend_operation_advanced -const VK_EXT_BLEND_OPERATION_ADVANCED_SPEC_VERSION* = 2 -const VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME* = "VK_EXT_blend_operation_advanced" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT*: VkStructureType = VkStructureType(1000148000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000148001) -const VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000148002) -const VK_BLEND_OP_ZERO_EXT*: VkBlendOp = VkBlendOp(1000148000) -const VK_BLEND_OP_SRC_EXT*: VkBlendOp = VkBlendOp(1000148001) -const VK_BLEND_OP_DST_EXT*: VkBlendOp = VkBlendOp(1000148002) -const VK_BLEND_OP_SRC_OVER_EXT*: VkBlendOp = VkBlendOp(1000148003) -const VK_BLEND_OP_DST_OVER_EXT*: VkBlendOp = VkBlendOp(1000148004) -const VK_BLEND_OP_SRC_IN_EXT*: VkBlendOp = VkBlendOp(1000148005) -const VK_BLEND_OP_DST_IN_EXT*: VkBlendOp = VkBlendOp(1000148006) -const VK_BLEND_OP_SRC_OUT_EXT*: VkBlendOp = VkBlendOp(1000148007) -const VK_BLEND_OP_DST_OUT_EXT*: VkBlendOp = VkBlendOp(1000148008) -const VK_BLEND_OP_SRC_ATOP_EXT*: VkBlendOp = VkBlendOp(1000148009) -const VK_BLEND_OP_DST_ATOP_EXT*: VkBlendOp = VkBlendOp(1000148010) -const VK_BLEND_OP_XOR_EXT*: VkBlendOp = VkBlendOp(1000148011) -const VK_BLEND_OP_MULTIPLY_EXT*: VkBlendOp = VkBlendOp(1000148012) -const VK_BLEND_OP_SCREEN_EXT*: VkBlendOp = VkBlendOp(1000148013) -const VK_BLEND_OP_OVERLAY_EXT*: VkBlendOp = VkBlendOp(1000148014) -const VK_BLEND_OP_DARKEN_EXT*: VkBlendOp = VkBlendOp(1000148015) -const VK_BLEND_OP_LIGHTEN_EXT*: VkBlendOp = VkBlendOp(1000148016) -const VK_BLEND_OP_COLORDODGE_EXT*: VkBlendOp = VkBlendOp(1000148017) -const VK_BLEND_OP_COLORBURN_EXT*: VkBlendOp = VkBlendOp(1000148018) -const VK_BLEND_OP_HARDLIGHT_EXT*: VkBlendOp = VkBlendOp(1000148019) -const VK_BLEND_OP_SOFTLIGHT_EXT*: VkBlendOp = VkBlendOp(1000148020) -const VK_BLEND_OP_DIFFERENCE_EXT*: VkBlendOp = VkBlendOp(1000148021) -const VK_BLEND_OP_EXCLUSION_EXT*: VkBlendOp = VkBlendOp(1000148022) -const VK_BLEND_OP_INVERT_EXT*: VkBlendOp = VkBlendOp(1000148023) -const VK_BLEND_OP_INVERT_RGB_EXT*: VkBlendOp = VkBlendOp(1000148024) -const VK_BLEND_OP_LINEARDODGE_EXT*: VkBlendOp = VkBlendOp(1000148025) -const VK_BLEND_OP_LINEARBURN_EXT*: VkBlendOp = VkBlendOp(1000148026) -const VK_BLEND_OP_VIVIDLIGHT_EXT*: VkBlendOp = VkBlendOp(1000148027) -const VK_BLEND_OP_LINEARLIGHT_EXT*: VkBlendOp = VkBlendOp(1000148028) -const VK_BLEND_OP_PINLIGHT_EXT*: VkBlendOp = VkBlendOp(1000148029) -const VK_BLEND_OP_HARDMIX_EXT*: VkBlendOp = VkBlendOp(1000148030) -const VK_BLEND_OP_HSL_HUE_EXT*: VkBlendOp = VkBlendOp(1000148031) -const VK_BLEND_OP_HSL_SATURATION_EXT*: VkBlendOp = VkBlendOp(1000148032) -const VK_BLEND_OP_HSL_COLOR_EXT*: VkBlendOp = VkBlendOp(1000148033) -const VK_BLEND_OP_HSL_LUMINOSITY_EXT*: VkBlendOp = VkBlendOp(1000148034) -const VK_BLEND_OP_PLUS_EXT*: VkBlendOp = VkBlendOp(1000148035) -const VK_BLEND_OP_PLUS_CLAMPED_EXT*: VkBlendOp = VkBlendOp(1000148036) -const VK_BLEND_OP_PLUS_CLAMPED_ALPHA_EXT*: VkBlendOp = VkBlendOp(1000148037) -const VK_BLEND_OP_PLUS_DARKER_EXT*: VkBlendOp = VkBlendOp(1000148038) -const VK_BLEND_OP_MINUS_EXT*: VkBlendOp = VkBlendOp(1000148039) -const VK_BLEND_OP_MINUS_CLAMPED_EXT*: VkBlendOp = VkBlendOp(1000148040) -const VK_BLEND_OP_CONTRAST_EXT*: VkBlendOp = VkBlendOp(1000148041) -const VK_BLEND_OP_INVERT_OVG_EXT*: VkBlendOp = VkBlendOp(1000148042) -const VK_BLEND_OP_RED_EXT*: VkBlendOp = VkBlendOp(1000148043) -const VK_BLEND_OP_GREEN_EXT*: VkBlendOp = VkBlendOp(1000148044) -const VK_BLEND_OP_BLUE_EXT*: VkBlendOp = VkBlendOp(1000148045) -const VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT*: VkAccessFlagBits = VkAccessFlagBits(524288) +proc newVkDeviceOrHostAddressKHR*(deviceAddress: VkDeviceAddress, hostAddress: pointer = nil): VkDeviceOrHostAddressKHR = + result.deviceAddress = deviceAddress + result.hostAddress = hostAddress -# Extension: VK_NV_fragment_coverage_to_color -const VK_NV_FRAGMENT_COVERAGE_TO_COLOR_SPEC_VERSION* = 1 -const VK_NV_FRAGMENT_COVERAGE_TO_COLOR_EXTENSION_NAME* = "VK_NV_fragment_coverage_to_color" -const VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000149000) +proc newVkDeviceOrHostAddressConstKHR*(deviceAddress: VkDeviceAddress, hostAddress: pointer = nil): VkDeviceOrHostAddressConstKHR = + result.deviceAddress = deviceAddress + result.hostAddress = hostAddress -# Extension: VK_KHR_acceleration_structure -const VK_KHR_ACCELERATION_STRUCTURE_SPEC_VERSION* = 13 -const VK_KHR_ACCELERATION_STRUCTURE_EXTENSION_NAME* = "VK_KHR_acceleration_structure" -const VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR*: VkStructureType = VkStructureType(1000150007) -const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR*: VkStructureType = VkStructureType(1000150000) -const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR*: VkStructureType = VkStructureType(1000150002) -const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR*: VkStructureType = VkStructureType(1000150003) -const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR*: VkStructureType = VkStructureType(1000150004) -const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR*: VkStructureType = VkStructureType(1000150005) -const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR*: VkStructureType = VkStructureType(1000150006) -const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_INFO_KHR*: VkStructureType = VkStructureType(1000150009) -const VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR*: VkStructureType = VkStructureType(1000150010) -const VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR*: VkStructureType = VkStructureType(1000150011) -const VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR*: VkStructureType = VkStructureType(1000150012) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR*: VkStructureType = VkStructureType(1000150013) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000150014) -const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000150017) -const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR*: VkStructureType = VkStructureType(1000150020) -const VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR*: VkPipelineStageFlagBits = VkPipelineStageFlagBits(33554432) -const VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR*: VkDescriptorType = VkDescriptorType(1000150000) -const VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR*: VkAccessFlagBits = VkAccessFlagBits(2097152) -const VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR*: VkAccessFlagBits = VkAccessFlagBits(4194304) -const VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR*: VkQueryType = VkQueryType(1000150000) -const VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR*: VkQueryType = VkQueryType(1000150001) -const VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR*: VkObjectType = VkObjectType(1000150000) -const VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT*: VkDebugReportObjectTypeEXT = VkDebugReportObjectTypeEXT(1000150000) -const VK_INDEX_TYPE_NONE_KHR*: VkIndexType = VkIndexType(1000165000) -const VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(536870912) -const VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(524288) -const VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(1048576) -const VK_FORMAT_FEATURE_2_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(536870912) +proc newVkDeviceOrHostAddressConstAMDX*(deviceAddress: VkDeviceAddress, hostAddress: pointer = nil): VkDeviceOrHostAddressConstAMDX = + result.deviceAddress = deviceAddress + result.hostAddress = hostAddress -# Extension: VK_KHR_ray_tracing_pipeline -const VK_KHR_RAY_TRACING_PIPELINE_SPEC_VERSION* = 1 -const VK_KHR_RAY_TRACING_PIPELINE_EXTENSION_NAME* = "VK_KHR_ray_tracing_pipeline" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR*: VkStructureType = VkStructureType(1000347000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000347001) -const VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000150015) -const VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000150016) -const VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000150018) -const VK_SHADER_STAGE_RAYGEN_BIT_KHR*: VkShaderStageFlagBits = VkShaderStageFlagBits(256) -const VK_SHADER_STAGE_ANY_HIT_BIT_KHR*: VkShaderStageFlagBits = VkShaderStageFlagBits(512) -const VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR*: VkShaderStageFlagBits = VkShaderStageFlagBits(1024) -const VK_SHADER_STAGE_MISS_BIT_KHR*: VkShaderStageFlagBits = VkShaderStageFlagBits(2048) -const VK_SHADER_STAGE_INTERSECTION_BIT_KHR*: VkShaderStageFlagBits = VkShaderStageFlagBits(4096) -const VK_SHADER_STAGE_CALLABLE_BIT_KHR*: VkShaderStageFlagBits = VkShaderStageFlagBits(8192) -const VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR*: VkPipelineStageFlagBits = VkPipelineStageFlagBits(2097152) -const VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(1024) -const VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR*: VkPipelineBindPoint = VkPipelineBindPoint(1000165000) -const VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(16384) -const VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(32768) -const VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(65536) -const VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(131072) -const VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(4096) -const VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(8192) -const VK_PIPELINE_CREATE_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(524288) -const VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR*: VkDynamicState = VkDynamicState(1000347000) +proc newVkAccelerationStructureGeometryTrianglesDataKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR, 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 -# Extension: VK_KHR_ray_query -const VK_KHR_RAY_QUERY_SPEC_VERSION* = 1 -const VK_KHR_RAY_QUERY_EXTENSION_NAME* = "VK_KHR_ray_query" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR*: VkStructureType = VkStructureType(1000348013) +proc newVkAccelerationStructureGeometryAabbsDataKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR, pNext: pointer = nil, data: VkDeviceOrHostAddressConstKHR, stride: VkDeviceSize): VkAccelerationStructureGeometryAabbsDataKHR = + result.sType = sType + result.pNext = pNext + result.data = data + result.stride = stride -# Extension: VK_NV_extension_152 -const VK_NV_EXTENSION_152_SPEC_VERSION* = 0 -const VK_NV_EXTENSION_152_EXTENSION_NAME* = "VK_NV_extension_152" +proc newVkAccelerationStructureGeometryInstancesDataKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR, pNext: pointer = nil, arrayOfPointers: VkBool32, data: VkDeviceOrHostAddressConstKHR): VkAccelerationStructureGeometryInstancesDataKHR = + result.sType = sType + result.pNext = pNext + result.arrayOfPointers = arrayOfPointers + result.data = data -# Extension: VK_NV_framebuffer_mixed_samples -const VK_NV_FRAMEBUFFER_MIXED_SAMPLES_SPEC_VERSION* = 1 -const VK_NV_FRAMEBUFFER_MIXED_SAMPLES_EXTENSION_NAME* = "VK_NV_framebuffer_mixed_samples" -const VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000152000) +proc newVkAccelerationStructureGeometryDataKHR*(triangles: VkAccelerationStructureGeometryTrianglesDataKHR, aabbs: VkAccelerationStructureGeometryAabbsDataKHR, instances: VkAccelerationStructureGeometryInstancesDataKHR): VkAccelerationStructureGeometryDataKHR = + result.triangles = triangles + result.aabbs = aabbs + result.instances = instances -# Extension: VK_NV_fill_rectangle -const VK_NV_FILL_RECTANGLE_SPEC_VERSION* = 1 -const VK_NV_FILL_RECTANGLE_EXTENSION_NAME* = "VK_NV_fill_rectangle" -const VK_POLYGON_MODE_FILL_RECTANGLE_NV*: VkPolygonMode = VkPolygonMode(1000153000) +proc newVkAccelerationStructureGeometryKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR, 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 -# Extension: VK_NV_shader_sm_builtins -const VK_NV_SHADER_SM_BUILTINS_SPEC_VERSION* = 1 -const VK_NV_SHADER_SM_BUILTINS_EXTENSION_NAME* = "VK_NV_shader_sm_builtins" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV*: VkStructureType = VkStructureType(1000154000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV*: VkStructureType = VkStructureType(1000154001) +proc newVkAccelerationStructureBuildGeometryInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR, 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 -# Extension: VK_EXT_post_depth_coverage -const VK_EXT_POST_DEPTH_COVERAGE_SPEC_VERSION* = 1 -const VK_EXT_POST_DEPTH_COVERAGE_EXTENSION_NAME* = "VK_EXT_post_depth_coverage" +proc newVkAccelerationStructureBuildRangeInfoKHR*(primitiveCount: uint32, primitiveOffset: uint32, firstVertex: uint32, transformOffset: uint32): VkAccelerationStructureBuildRangeInfoKHR = + result.primitiveCount = primitiveCount + result.primitiveOffset = primitiveOffset + result.firstVertex = firstVertex + result.transformOffset = transformOffset -# Extension: VK_KHR_sampler_ycbcr_conversion -const VK_KHR_SAMPLER_YCBCR_CONVERSION_SPEC_VERSION* = 14 -const VK_KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME* = "VK_KHR_sampler_ycbcr_conversion" -template VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO_KHR* = - VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO -template VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO_KHR* = - VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO -template VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO_KHR* = - VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO -template VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO_KHR* = - VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES -template VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES_KHR* = - VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES -template VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT* = - VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT -template VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR* = - VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION -template VK_FORMAT_G8B8G8R8_422_UNORM_KHR* = - VK_FORMAT_G8B8G8R8_422_UNORM -template VK_FORMAT_B8G8R8G8_422_UNORM_KHR* = - VK_FORMAT_B8G8R8G8_422_UNORM -template VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM_KHR* = - VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM -template VK_FORMAT_G8_B8R8_2PLANE_420_UNORM_KHR* = - VK_FORMAT_G8_B8R8_2PLANE_420_UNORM -template VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM_KHR* = - VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM -template VK_FORMAT_G8_B8R8_2PLANE_422_UNORM_KHR* = - VK_FORMAT_G8_B8R8_2PLANE_422_UNORM -template VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM_KHR* = - VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM -template VK_FORMAT_R10X6_UNORM_PACK16_KHR* = - VK_FORMAT_R10X6_UNORM_PACK16 -template VK_FORMAT_R10X6G10X6_UNORM_2PACK16_KHR* = - VK_FORMAT_R10X6G10X6_UNORM_2PACK16 -template VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16_KHR* = - VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16 -template VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16_KHR* = - VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16 -template VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16_KHR* = - VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16 -template VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16_KHR* = - VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16 -template VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16_KHR* = - VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16 -template VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16_KHR* = - VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16 -template VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16_KHR* = - VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16 -template VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16_KHR* = - VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16 -template VK_FORMAT_R12X4_UNORM_PACK16_KHR* = - VK_FORMAT_R12X4_UNORM_PACK16 -template VK_FORMAT_R12X4G12X4_UNORM_2PACK16_KHR* = - VK_FORMAT_R12X4G12X4_UNORM_2PACK16 -template VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16_KHR* = - VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16 -template VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16_KHR* = - VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16 -template VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16_KHR* = - VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16 -template VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16_KHR* = - VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16 -template VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16_KHR* = - VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16 -template VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16_KHR* = - VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16 -template VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16_KHR* = - VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16 -template VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16_KHR* = - VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16 -template VK_FORMAT_G16B16G16R16_422_UNORM_KHR* = - VK_FORMAT_G16B16G16R16_422_UNORM -template VK_FORMAT_B16G16R16G16_422_UNORM_KHR* = - VK_FORMAT_B16G16R16G16_422_UNORM -template VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM_KHR* = - VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM -template VK_FORMAT_G16_B16R16_2PLANE_420_UNORM_KHR* = - VK_FORMAT_G16_B16R16_2PLANE_420_UNORM -template VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM_KHR* = - VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM -template VK_FORMAT_G16_B16R16_2PLANE_422_UNORM_KHR* = - VK_FORMAT_G16_B16R16_2PLANE_422_UNORM -template VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM_KHR* = - VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM -template VK_IMAGE_ASPECT_PLANE_0_BIT_KHR* = - VK_IMAGE_ASPECT_PLANE_0_BIT -template VK_IMAGE_ASPECT_PLANE_1_BIT_KHR* = - VK_IMAGE_ASPECT_PLANE_1_BIT -template VK_IMAGE_ASPECT_PLANE_2_BIT_KHR* = - VK_IMAGE_ASPECT_PLANE_2_BIT -template VK_IMAGE_CREATE_DISJOINT_BIT_KHR* = - VK_IMAGE_CREATE_DISJOINT_BIT -template VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT_KHR* = - VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT -template VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT_KHR* = - VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT -template VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT_KHR* = - VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT -template VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR* = - VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT -template VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR* = - VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT -template VK_FORMAT_FEATURE_DISJOINT_BIT_KHR* = - VK_FORMAT_FEATURE_DISJOINT_BIT -template VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR* = - VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT -template VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY_KHR* = - VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY -template VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY_KHR* = - VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY -template VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709_KHR* = - VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709 -template VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601_KHR* = - VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601 -template VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020_KHR* = - VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020 -template VK_SAMPLER_YCBCR_RANGE_ITU_FULL_KHR* = - VK_SAMPLER_YCBCR_RANGE_ITU_FULL -template VK_SAMPLER_YCBCR_RANGE_ITU_NARROW_KHR* = - VK_SAMPLER_YCBCR_RANGE_ITU_NARROW -template VK_CHROMA_LOCATION_COSITED_EVEN_KHR* = - VK_CHROMA_LOCATION_COSITED_EVEN -template VK_CHROMA_LOCATION_MIDPOINT_KHR* = - VK_CHROMA_LOCATION_MIDPOINT +proc newVkAccelerationStructureCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR, 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 -# Extension: VK_KHR_bind_memory2 -const VK_KHR_BIND_MEMORY_2_SPEC_VERSION* = 1 -const VK_KHR_BIND_MEMORY_2_EXTENSION_NAME* = "VK_KHR_bind_memory2" -template VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO_KHR* = - VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO -template VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO_KHR* = - VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO -template VK_IMAGE_CREATE_ALIAS_BIT_KHR* = - VK_IMAGE_CREATE_ALIAS_BIT +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 -# Extension: VK_EXT_image_drm_format_modifier -const VK_EXT_IMAGE_DRM_FORMAT_MODIFIER_SPEC_VERSION* = 2 -const VK_EXT_IMAGE_DRM_FORMAT_MODIFIER_EXTENSION_NAME* = "VK_EXT_image_drm_format_modifier" -const VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT*: VkResult = VkResult(-1000158000) -const VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT*: VkStructureType = VkStructureType(1000158000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT*: VkStructureType = VkStructureType(1000158002) -const VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000158003) -const VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000158004) -const VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000158005) -const VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT*: VkImageTiling = VkImageTiling(1000158000) -const VK_IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT*: VkImageAspectFlagBits = VkImageAspectFlagBits(128) -const VK_IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT*: VkImageAspectFlagBits = VkImageAspectFlagBits(256) -const VK_IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT*: VkImageAspectFlagBits = VkImageAspectFlagBits(512) -const VK_IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT*: VkImageAspectFlagBits = VkImageAspectFlagBits(1024) -const VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT*: VkStructureType = VkStructureType(1000158006) +proc newVkTransformMatrixKHR*(matrix: array[3, float32]): VkTransformMatrixKHR = + result.matrix = matrix -# Extension: VK_EXT_extension_160 -const VK_EXT_EXTENSION_160_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_160_EXTENSION_NAME* = "VK_EXT_extension_160" +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 newVkAccelerationStructureDeviceAddressInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR, pNext: pointer = nil, accelerationStructure: VkAccelerationStructureKHR): VkAccelerationStructureDeviceAddressInfoKHR = + result.sType = sType + result.pNext = pNext + result.accelerationStructure = accelerationStructure + +proc newVkAccelerationStructureVersionInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_INFO_KHR, pNext: pointer = nil, pVersionData: ptr uint8): VkAccelerationStructureVersionInfoKHR = + result.sType = sType + result.pNext = pNext + result.pVersionData = pVersionData + +proc newVkCopyAccelerationStructureInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR, 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 -# Extension: VK_EXT_validation_cache -const VK_EXT_VALIDATION_CACHE_SPEC_VERSION* = 1 -const VK_EXT_VALIDATION_CACHE_EXTENSION_NAME* = "VK_EXT_validation_cache" -const VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000160000) -const VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000160001) -const VK_OBJECT_TYPE_VALIDATION_CACHE_EXT*: VkObjectType = VkObjectType(1000160000) +proc newVkCopyAccelerationStructureToMemoryInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR, 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 -# Extension: VK_EXT_descriptor_indexing -const VK_EXT_DESCRIPTOR_INDEXING_SPEC_VERSION* = 2 -const VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME* = "VK_EXT_descriptor_indexing" -template VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT* = - VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES -template VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT* = - VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO -template VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT* = - VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT -template VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT* = - VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT -template VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT* = - VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT -template VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT* = - VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT -template VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT* = - VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT -template VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT* = - VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT -template VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT* = - VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT -template VK_ERROR_FRAGMENTATION_EXT* = - VK_ERROR_FRAGMENTATION +proc newVkCopyMemoryToAccelerationStructureInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR, 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 -# Extension: VK_EXT_shader_viewport_index_layer -const VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_SPEC_VERSION* = 1 -const VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_EXTENSION_NAME* = "VK_EXT_shader_viewport_index_layer" +proc newVkRayTracingPipelineInterfaceCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR, pNext: pointer = nil, maxPipelineRayPayloadSize: uint32, maxPipelineRayHitAttributeSize: uint32): VkRayTracingPipelineInterfaceCreateInfoKHR = + result.sType = sType + result.pNext = pNext + result.maxPipelineRayPayloadSize = maxPipelineRayPayloadSize + result.maxPipelineRayHitAttributeSize = maxPipelineRayHitAttributeSize -# Extension: VK_KHR_portability_subset -const VK_KHR_PORTABILITY_SUBSET_SPEC_VERSION* = 1 -const VK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME* = "VK_KHR_portability_subset" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR*: VkStructureType = VkStructureType(1000163000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000163001) +proc newVkPipelineLibraryCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR, pNext: pointer = nil, libraryCount: uint32, pLibraries: ptr VkPipeline): VkPipelineLibraryCreateInfoKHR = + result.sType = sType + result.pNext = pNext + result.libraryCount = libraryCount + result.pLibraries = pLibraries -# Extension: VK_NV_shading_rate_image -const VK_NV_SHADING_RATE_IMAGE_SPEC_VERSION* = 3 -const VK_NV_SHADING_RATE_IMAGE_EXTENSION_NAME* = "VK_NV_shading_rate_image" -const VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000164000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV*: VkStructureType = VkStructureType(1000164001) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV*: VkStructureType = VkStructureType(1000164002) -template VK_IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV* = - VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR -const VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV*: VkDynamicState = VkDynamicState(1000164004) -template VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV* = - VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR -template VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV* = - VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR -template VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV* = - VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR -const VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000164005) -const VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV*: VkDynamicState = VkDynamicState(1000164006) +proc newVkRefreshObjectKHR*(objectType: VkObjectType, objectHandle: uint64, flags: VkRefreshObjectFlagsKHR = 0.VkRefreshObjectFlagsKHR): VkRefreshObjectKHR = + result.objectType = objectType + result.objectHandle = objectHandle + result.flags = flags -# Extension: VK_NV_ray_tracing -const VK_NV_RAY_TRACING_SPEC_VERSION* = 3 -const VK_NV_RAY_TRACING_EXTENSION_NAME* = "VK_NV_ray_tracing" -const VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000165000) -const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000165001) -const VK_STRUCTURE_TYPE_GEOMETRY_NV*: VkStructureType = VkStructureType(1000165003) -const VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV*: VkStructureType = VkStructureType(1000165004) -const VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV*: VkStructureType = VkStructureType(1000165005) -const VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV*: VkStructureType = VkStructureType(1000165006) -const VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV*: VkStructureType = VkStructureType(1000165007) -const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV*: VkStructureType = VkStructureType(1000165008) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV*: VkStructureType = VkStructureType(1000165009) -const VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000165011) -const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV*: VkStructureType = VkStructureType(1000165012) -template VK_SHADER_STAGE_RAYGEN_BIT_NV* = - VK_SHADER_STAGE_RAYGEN_BIT_KHR -template VK_SHADER_STAGE_ANY_HIT_BIT_NV* = - VK_SHADER_STAGE_ANY_HIT_BIT_KHR -template VK_SHADER_STAGE_CLOSEST_HIT_BIT_NV* = - VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR -template VK_SHADER_STAGE_MISS_BIT_NV* = - VK_SHADER_STAGE_MISS_BIT_KHR -template VK_SHADER_STAGE_INTERSECTION_BIT_NV* = - VK_SHADER_STAGE_INTERSECTION_BIT_KHR -template VK_SHADER_STAGE_CALLABLE_BIT_NV* = - VK_SHADER_STAGE_CALLABLE_BIT_KHR -template VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV* = - VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR -template VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV* = - VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR -template VK_BUFFER_USAGE_RAY_TRACING_BIT_NV* = - VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR -template VK_PIPELINE_BIND_POINT_RAY_TRACING_NV* = - VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR -const VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV*: VkDescriptorType = VkDescriptorType(1000165000) -template VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_NV* = - VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR -template VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_NV* = - VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR -const VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV*: VkQueryType = VkQueryType(1000165000) -const VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(32) -const VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV*: VkObjectType = VkObjectType(1000165000) -const VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT*: VkDebugReportObjectTypeEXT = VkDebugReportObjectTypeEXT(1000165000) -template VK_INDEX_TYPE_NONE_NV* = - VK_INDEX_TYPE_NONE_KHR -template VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_NV* = - VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR -template VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_NV* = - VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR -template VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV* = - VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR -template VK_GEOMETRY_TYPE_TRIANGLES_NV* = - VK_GEOMETRY_TYPE_TRIANGLES_KHR -template VK_GEOMETRY_TYPE_AABBS_NV* = - VK_GEOMETRY_TYPE_AABBS_KHR -template VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV* = - VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR -template VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NV* = - VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR -template VK_GEOMETRY_OPAQUE_BIT_NV* = - VK_GEOMETRY_OPAQUE_BIT_KHR -template VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_NV* = - VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR -template VK_GEOMETRY_INSTANCE_TRIANGLE_CULL_DISABLE_BIT_NV* = - VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR -template VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_NV* = - VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR -template VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_NV* = - VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR -template VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_NV* = - VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR -template VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NV* = - VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR -template VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_NV* = - VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR -template VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_NV* = - VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR -template VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_NV* = - VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR -template VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_NV* = - VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR -template VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NV* = - VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR -template VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NV* = - VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR +proc newVkRefreshObjectListKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_REFRESH_OBJECT_LIST_KHR, pNext: pointer = nil, objectCount: uint32, pObjects: ptr VkRefreshObjectKHR): VkRefreshObjectListKHR = + result.sType = sType + result.pNext = pNext + result.objectCount = objectCount + result.pObjects = pObjects -# Extension: VK_NV_representative_fragment_test -const VK_NV_REPRESENTATIVE_FRAGMENT_TEST_SPEC_VERSION* = 2 -const VK_NV_REPRESENTATIVE_FRAGMENT_TEST_EXTENSION_NAME* = "VK_NV_representative_fragment_test" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV*: VkStructureType = VkStructureType(1000166000) -const VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000166001) +proc newVkPhysicalDeviceExtendedDynamicStateFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT, pNext: pointer = nil, extendedDynamicState: VkBool32): VkPhysicalDeviceExtendedDynamicStateFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.extendedDynamicState = extendedDynamicState -# Extension: VK_NV_extension_168 -const VK_NV_EXTENSION_168_SPEC_VERSION* = 0 -const VK_NV_EXTENSION_168_EXTENSION_NAME* = "VK_NV_extension_168" +proc newVkPhysicalDeviceExtendedDynamicState2FeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT, 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 -# Extension: VK_KHR_maintenance3 -const VK_KHR_MAINTENANCE_3_SPEC_VERSION* = 1 -const VK_KHR_MAINTENANCE_3_EXTENSION_NAME* = "VK_KHR_maintenance3" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES -template VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT_KHR* = - VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT +proc newVkPhysicalDeviceExtendedDynamicState3FeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_FEATURES_EXT, 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 -# Extension: VK_KHR_draw_indirect_count -const VK_KHR_DRAW_INDIRECT_COUNT_SPEC_VERSION* = 1 -const VK_KHR_DRAW_INDIRECT_COUNT_EXTENSION_NAME* = "VK_KHR_draw_indirect_count" +proc newVkPhysicalDeviceExtendedDynamicState3PropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_PROPERTIES_EXT, pNext: pointer = nil, dynamicPrimitiveTopologyUnrestricted: VkBool32): VkPhysicalDeviceExtendedDynamicState3PropertiesEXT = + result.sType = sType + result.pNext = pNext + result.dynamicPrimitiveTopologyUnrestricted = dynamicPrimitiveTopologyUnrestricted -# Extension: VK_EXT_filter_cubic -const VK_EXT_FILTER_CUBIC_SPEC_VERSION* = 3 -const VK_EXT_FILTER_CUBIC_EXTENSION_NAME* = "VK_EXT_filter_cubic" -const VK_FILTER_CUBIC_EXT*: VkFilter = VkFilter(1000015000) -const VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(8192) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT*: VkStructureType = VkStructureType(1000170000) -const VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000170001) +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 -# Extension: VK_QCOM_render_pass_shader_resolve -const VK_QCOM_RENDER_PASS_SHADER_RESOLVE_SPEC_VERSION* = 4 -const VK_QCOM_RENDER_PASS_SHADER_RESOLVE_EXTENSION_NAME* = "VK_QCOM_render_pass_shader_resolve" -const VK_SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM*: VkSubpassDescriptionFlagBits = VkSubpassDescriptionFlagBits(4) -const VK_SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM*: VkSubpassDescriptionFlagBits = VkSubpassDescriptionFlagBits(8) +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 -# Extension: VK_QCOM_extension_173 -const VK_QCOM_EXTENSION_173_SPEC_VERSION* = 0 -const VK_QCOM_EXTENSION_173_EXTENSION_NAME* = "VK_QCOM_extension_173" -const VK_BUFFER_USAGE_RESERVED_18_BIT_QCOM*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(262144) -const VK_IMAGE_USAGE_RESERVED_16_BIT_QCOM*: VkImageUsageFlagBits = VkImageUsageFlagBits(65536) -const VK_IMAGE_USAGE_RESERVED_17_BIT_QCOM*: VkImageUsageFlagBits = VkImageUsageFlagBits(131072) +proc newVkRenderPassTransformBeginInfoQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM, pNext: pointer = nil, transform: VkSurfaceTransformFlagBitsKHR): VkRenderPassTransformBeginInfoQCOM = + result.sType = sType + result.pNext = pNext + result.transform = transform -# Extension: VK_QCOM_extension_174 -const VK_QCOM_EXTENSION_174_SPEC_VERSION* = 0 -const VK_QCOM_EXTENSION_174_EXTENSION_NAME* = "VK_QCOM_extension_174" +proc newVkCopyCommandTransformInfoQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM, pNext: pointer = nil, transform: VkSurfaceTransformFlagBitsKHR): VkCopyCommandTransformInfoQCOM = + result.sType = sType + result.pNext = pNext + result.transform = transform -# Extension: VK_EXT_global_priority -const VK_EXT_GLOBAL_PRIORITY_SPEC_VERSION* = 2 -const VK_EXT_GLOBAL_PRIORITY_EXTENSION_NAME* = "VK_EXT_global_priority" -template VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT* = - VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR -template VK_ERROR_NOT_PERMITTED_EXT* = - VK_ERROR_NOT_PERMITTED_KHR +proc newVkCommandBufferInheritanceRenderPassTransformInfoQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM, pNext: pointer = nil, transform: VkSurfaceTransformFlagBitsKHR, renderArea: VkRect2D): VkCommandBufferInheritanceRenderPassTransformInfoQCOM = + result.sType = sType + result.pNext = pNext + result.transform = transform + result.renderArea = renderArea -# Extension: VK_KHR_shader_subgroup_extended_types -const VK_KHR_SHADER_SUBGROUP_EXTENDED_TYPES_SPEC_VERSION* = 1 -const VK_KHR_SHADER_SUBGROUP_EXTENDED_TYPES_EXTENSION_NAME* = "VK_KHR_shader_subgroup_extended_types" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES +proc newVkPhysicalDeviceDiagnosticsConfigFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV, pNext: pointer = nil, diagnosticsConfig: VkBool32): VkPhysicalDeviceDiagnosticsConfigFeaturesNV = + result.sType = sType + result.pNext = pNext + result.diagnosticsConfig = diagnosticsConfig -# Extension: VK_EXT_extension_177 -const VK_EXT_EXTENSION_177_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_177_EXTENSION_NAME* = "VK_EXT_extension_177" +proc newVkDeviceDiagnosticsConfigCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV, pNext: pointer = nil, flags: VkDeviceDiagnosticsConfigFlagsNV = 0.VkDeviceDiagnosticsConfigFlagsNV): VkDeviceDiagnosticsConfigCreateInfoNV = + result.sType = sType + result.pNext = pNext + result.flags = flags -# Extension: VK_KHR_8bit_storage -const VK_KHR_8BIT_STORAGE_SPEC_VERSION* = 1 -const VK_KHR_8BIT_STORAGE_EXTENSION_NAME* = "VK_KHR_8bit_storage" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES +proc newVkPipelineOfflineCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_OFFLINE_CREATE_INFO, 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 -# Extension: VK_EXT_external_memory_host -const VK_EXT_EXTERNAL_MEMORY_HOST_SPEC_VERSION* = 1 -const VK_EXT_EXTERNAL_MEMORY_HOST_EXTENSION_NAME* = "VK_EXT_external_memory_host" -const VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT*: VkStructureType = VkStructureType(1000178000) -const VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000178001) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000178002) -const VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT*: VkExternalMemoryHandleTypeFlagBits = VkExternalMemoryHandleTypeFlagBits(128) -const VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT*: VkExternalMemoryHandleTypeFlagBits = VkExternalMemoryHandleTypeFlagBits(256) +proc newVkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES, pNext: pointer = nil, shaderZeroInitializeWorkgroupMemory: VkBool32): VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures = + result.sType = sType + result.pNext = pNext + result.shaderZeroInitializeWorkgroupMemory = shaderZeroInitializeWorkgroupMemory -# Extension: VK_AMD_buffer_marker -const VK_AMD_BUFFER_MARKER_SPEC_VERSION* = 1 -const VK_AMD_BUFFER_MARKER_EXTENSION_NAME* = "VK_AMD_buffer_marker" +proc newVkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR, pNext: pointer = nil, shaderSubgroupUniformControlFlow: VkBool32): VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR = + result.sType = sType + result.pNext = pNext + result.shaderSubgroupUniformControlFlow = shaderSubgroupUniformControlFlow -# Extension: VK_KHR_shader_atomic_int64 -const VK_KHR_SHADER_ATOMIC_INT64_SPEC_VERSION* = 1 -const VK_KHR_SHADER_ATOMIC_INT64_EXTENSION_NAME* = "VK_KHR_shader_atomic_int64" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES +proc newVkPhysicalDeviceRobustness2FeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT, 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 -# Extension: VK_KHR_shader_clock -const VK_KHR_SHADER_CLOCK_SPEC_VERSION* = 1 -const VK_KHR_SHADER_CLOCK_EXTENSION_NAME* = "VK_KHR_shader_clock" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR*: VkStructureType = VkStructureType(1000181000) +proc newVkPhysicalDeviceRobustness2PropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT, pNext: pointer = nil, robustStorageBufferAccessSizeAlignment: VkDeviceSize, robustUniformBufferAccessSizeAlignment: VkDeviceSize): VkPhysicalDeviceRobustness2PropertiesEXT = + result.sType = sType + result.pNext = pNext + result.robustStorageBufferAccessSizeAlignment = robustStorageBufferAccessSizeAlignment + result.robustUniformBufferAccessSizeAlignment = robustUniformBufferAccessSizeAlignment -# Extension: VK_AMD_extension_183 -const VK_AMD_EXTENSION_183_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_183_EXTENSION_NAME* = "VK_AMD_extension_183" +proc newVkPhysicalDeviceImageRobustnessFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES, pNext: pointer = nil, robustImageAccess: VkBool32): VkPhysicalDeviceImageRobustnessFeatures = + result.sType = sType + result.pNext = pNext + result.robustImageAccess = robustImageAccess -# Extension: VK_AMD_pipeline_compiler_control -const VK_AMD_PIPELINE_COMPILER_CONTROL_SPEC_VERSION* = 1 -const VK_AMD_PIPELINE_COMPILER_CONTROL_EXTENSION_NAME* = "VK_AMD_pipeline_compiler_control" -const VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD*: VkStructureType = VkStructureType(1000183000) +proc newVkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR, 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 -# Extension: VK_EXT_calibrated_timestamps -const VK_EXT_CALIBRATED_TIMESTAMPS_SPEC_VERSION* = 2 -const VK_EXT_CALIBRATED_TIMESTAMPS_EXTENSION_NAME* = "VK_EXT_calibrated_timestamps" -const VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT*: VkStructureType = VkStructureType(1000184000) +proc newVkPhysicalDevicePortabilitySubsetFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR, 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 -# Extension: VK_AMD_shader_core_properties -const VK_AMD_SHADER_CORE_PROPERTIES_SPEC_VERSION* = 2 -const VK_AMD_SHADER_CORE_PROPERTIES_EXTENSION_NAME* = "VK_AMD_shader_core_properties" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD*: VkStructureType = VkStructureType(1000185000) +proc newVkPhysicalDevicePortabilitySubsetPropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR, pNext: pointer = nil, minVertexInputBindingStrideAlignment: uint32): VkPhysicalDevicePortabilitySubsetPropertiesKHR = + result.sType = sType + result.pNext = pNext + result.minVertexInputBindingStrideAlignment = minVertexInputBindingStrideAlignment -# Extension: VK_AMD_extension_187 -const VK_AMD_EXTENSION_187_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_187_EXTENSION_NAME* = "VK_AMD_extension_187" +proc newVkPhysicalDevice4444FormatsFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT, pNext: pointer = nil, formatA4R4G4B4: VkBool32, formatA4B4G4R4: VkBool32): VkPhysicalDevice4444FormatsFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.formatA4R4G4B4 = formatA4R4G4B4 + result.formatA4B4G4R4 = formatA4B4G4R4 -# Extension: VK_KHR_video_decode_h265 -const VK_KHR_VIDEO_DECODE_H265_SPEC_VERSION* = 7 -const VK_KHR_VIDEO_DECODE_H265_EXTENSION_NAME* = "VK_KHR_video_decode_h265" -const VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_KHR*: VkStructureType = VkStructureType(1000187000) -const VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000187001) -const VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_KHR*: VkStructureType = VkStructureType(1000187002) -const VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_INFO_KHR*: VkStructureType = VkStructureType(1000187003) -const VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_KHR*: VkStructureType = VkStructureType(1000187004) -const VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_KHR*: VkStructureType = VkStructureType(1000187005) -const VK_VIDEO_CODEC_OPERATION_DECODE_H265_BIT_KHR*: VkVideoCodecOperationFlagBitsKHR = VkVideoCodecOperationFlagBitsKHR(2) +proc newVkPhysicalDeviceSubpassShadingFeaturesHUAWEI*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI, pNext: pointer = nil, subpassShading: VkBool32): VkPhysicalDeviceSubpassShadingFeaturesHUAWEI = + result.sType = sType + result.pNext = pNext + result.subpassShading = subpassShading -# Extension: VK_KHR_global_priority -const VK_KHR_GLOBAL_PRIORITY_SPEC_VERSION* = 1 -const VK_KHR_GLOBAL_PRIORITY_EXTENSION_NAME* = "VK_KHR_global_priority" -const VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000174000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR*: VkStructureType = VkStructureType(1000388000) -const VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000388001) -const VK_ERROR_NOT_PERMITTED_KHR*: VkResult = VkResult(-1000174001) +proc newVkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_FEATURES_HUAWEI, pNext: pointer = nil, clustercullingShader: VkBool32, multiviewClusterCullingShader: VkBool32): VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI = + result.sType = sType + result.pNext = pNext + result.clustercullingShader = clustercullingShader + result.multiviewClusterCullingShader = multiviewClusterCullingShader -# Extension: VK_AMD_memory_overallocation_behavior -const VK_AMD_MEMORY_OVERALLOCATION_BEHAVIOR_SPEC_VERSION* = 1 -const VK_AMD_MEMORY_OVERALLOCATION_BEHAVIOR_EXTENSION_NAME* = "VK_AMD_memory_overallocation_behavior" -const VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD*: VkStructureType = VkStructureType(1000189000) +proc newVkBufferCopy2*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_COPY_2, 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 -# Extension: VK_EXT_vertex_attribute_divisor -const VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_SPEC_VERSION* = 3 -const VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME* = "VK_EXT_vertex_attribute_divisor" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000190000) -const VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000190001) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT*: VkStructureType = VkStructureType(1000190002) +proc newVkImageCopy2*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_COPY_2, 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 -# Extension: VK_GGP_frame_token -const VK_GGP_FRAME_TOKEN_SPEC_VERSION* = 1 -const VK_GGP_FRAME_TOKEN_EXTENSION_NAME* = "VK_GGP_frame_token" -const VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP*: VkStructureType = VkStructureType(1000191000) +proc newVkImageBlit2*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_BLIT_2, 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 -# Extension: VK_EXT_pipeline_creation_feedback -const VK_EXT_PIPELINE_CREATION_FEEDBACK_SPEC_VERSION* = 1 -const VK_EXT_PIPELINE_CREATION_FEEDBACK_EXTENSION_NAME* = "VK_EXT_pipeline_creation_feedback" -template VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT* = - VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO +proc newVkBufferImageCopy2*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2, 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 -# Extension: VK_GOOGLE_extension_194 -const VK_GOOGLE_EXTENSION_194_SPEC_VERSION* = 0 -const VK_GOOGLE_EXTENSION_194_EXTENSION_NAME* = "VK_GOOGLE_extension_194" +proc newVkImageResolve2*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2, 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 + +proc newVkCopyBufferInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2, 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 -# Extension: VK_GOOGLE_extension_195 -const VK_GOOGLE_EXTENSION_195_SPEC_VERSION* = 0 -const VK_GOOGLE_EXTENSION_195_EXTENSION_NAME* = "VK_GOOGLE_extension_195" +proc newVkCopyImageInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2, 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 -# Extension: VK_GOOGLE_extension_196 -const VK_GOOGLE_EXTENSION_196_SPEC_VERSION* = 0 -const VK_GOOGLE_EXTENSION_196_EXTENSION_NAME* = "VK_GOOGLE_extension_196" -template VK_PIPELINE_CACHE_CREATE_READ_ONLY_BIT_EXT* = - VK_PIPELINE_CACHE_CREATE_READ_ONLY_BIT +proc newVkBlitImageInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2, 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 -# Extension: VK_KHR_driver_properties -const VK_KHR_DRIVER_PROPERTIES_SPEC_VERSION* = 1 -const VK_KHR_DRIVER_PROPERTIES_EXTENSION_NAME* = "VK_KHR_driver_properties" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES -template VK_DRIVER_ID_AMD_PROPRIETARY_KHR* = - VK_DRIVER_ID_AMD_PROPRIETARY -template VK_DRIVER_ID_AMD_OPEN_SOURCE_KHR* = - VK_DRIVER_ID_AMD_OPEN_SOURCE -template VK_DRIVER_ID_MESA_RADV_KHR* = - VK_DRIVER_ID_MESA_RADV -template VK_DRIVER_ID_NVIDIA_PROPRIETARY_KHR* = - VK_DRIVER_ID_NVIDIA_PROPRIETARY -template VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS_KHR* = - VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS -template VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA_KHR* = - VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA -template VK_DRIVER_ID_IMAGINATION_PROPRIETARY_KHR* = - VK_DRIVER_ID_IMAGINATION_PROPRIETARY -template VK_DRIVER_ID_QUALCOMM_PROPRIETARY_KHR* = - VK_DRIVER_ID_QUALCOMM_PROPRIETARY -template VK_DRIVER_ID_ARM_PROPRIETARY_KHR* = - VK_DRIVER_ID_ARM_PROPRIETARY -template VK_DRIVER_ID_GOOGLE_SWIFTSHADER_KHR* = - VK_DRIVER_ID_GOOGLE_SWIFTSHADER -template VK_DRIVER_ID_GGP_PROPRIETARY_KHR* = - VK_DRIVER_ID_GGP_PROPRIETARY -template VK_DRIVER_ID_BROADCOM_PROPRIETARY_KHR* = - VK_DRIVER_ID_BROADCOM_PROPRIETARY +proc newVkCopyBufferToImageInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2, 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 -# Extension: VK_KHR_shader_float_controls -const VK_KHR_SHADER_FLOAT_CONTROLS_SPEC_VERSION* = 4 -const VK_KHR_SHADER_FLOAT_CONTROLS_EXTENSION_NAME* = "VK_KHR_shader_float_controls" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES -template VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY_KHR* = - VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY -template VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL_KHR* = - VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL -template VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE_KHR* = - VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE +proc newVkCopyImageToBufferInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2, 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 -# Extension: VK_NV_shader_subgroup_partitioned -const VK_NV_SHADER_SUBGROUP_PARTITIONED_SPEC_VERSION* = 1 -const VK_NV_SHADER_SUBGROUP_PARTITIONED_EXTENSION_NAME* = "VK_NV_shader_subgroup_partitioned" -const VK_SUBGROUP_FEATURE_PARTITIONED_BIT_NV*: VkSubgroupFeatureFlagBits = VkSubgroupFeatureFlagBits(256) +proc newVkResolveImageInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2, 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 -# Extension: VK_KHR_depth_stencil_resolve -const VK_KHR_DEPTH_STENCIL_RESOLVE_SPEC_VERSION* = 1 -const VK_KHR_DEPTH_STENCIL_RESOLVE_EXTENSION_NAME* = "VK_KHR_depth_stencil_resolve" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES -template VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE_KHR* = - VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE -template VK_RESOLVE_MODE_NONE_KHR* = - VK_RESOLVE_MODE_NONE -template VK_RESOLVE_MODE_SAMPLE_ZERO_BIT_KHR* = - VK_RESOLVE_MODE_SAMPLE_ZERO_BIT -template VK_RESOLVE_MODE_AVERAGE_BIT_KHR* = - VK_RESOLVE_MODE_AVERAGE_BIT -template VK_RESOLVE_MODE_MIN_BIT_KHR* = - VK_RESOLVE_MODE_MIN_BIT -template VK_RESOLVE_MODE_MAX_BIT_KHR* = - VK_RESOLVE_MODE_MAX_BIT +proc newVkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT, pNext: pointer = nil, shaderImageInt64Atomics: VkBool32, sparseImageInt64Atomics: VkBool32): VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT = + result.sType = sType + result.pNext = pNext + result.shaderImageInt64Atomics = shaderImageInt64Atomics + result.sparseImageInt64Atomics = sparseImageInt64Atomics -# Extension: VK_KHR_swapchain_mutable_format -const VK_KHR_SWAPCHAIN_MUTABLE_FORMAT_SPEC_VERSION* = 1 -const VK_KHR_SWAPCHAIN_MUTABLE_FORMAT_EXTENSION_NAME* = "VK_KHR_swapchain_mutable_format" -const VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR*: VkSwapchainCreateFlagBitsKHR = VkSwapchainCreateFlagBitsKHR(4) +proc newVkFragmentShadingRateAttachmentInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR, pNext: pointer = nil, pFragmentShadingRateAttachment: ptr VkAttachmentReference2, shadingRateAttachmentTexelSize: VkExtent2D): VkFragmentShadingRateAttachmentInfoKHR = + result.sType = sType + result.pNext = pNext + result.pFragmentShadingRateAttachment = pFragmentShadingRateAttachment + result.shadingRateAttachmentTexelSize = shadingRateAttachmentTexelSize -# Extension: VK_NV_compute_shader_derivatives -const VK_NV_COMPUTE_SHADER_DERIVATIVES_SPEC_VERSION* = 1 -const VK_NV_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME* = "VK_NV_compute_shader_derivatives" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV*: VkStructureType = VkStructureType(1000201000) +proc newVkPipelineFragmentShadingRateStateCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR, pNext: pointer = nil, fragmentSize: VkExtent2D, combinerOps: array[2, VkFragmentShadingRateCombinerOpKHR]): VkPipelineFragmentShadingRateStateCreateInfoKHR = + result.sType = sType + result.pNext = pNext + result.fragmentSize = fragmentSize + result.combinerOps = combinerOps -# Extension: VK_NV_mesh_shader -const VK_NV_MESH_SHADER_SPEC_VERSION* = 1 -const VK_NV_MESH_SHADER_EXTENSION_NAME* = "VK_NV_mesh_shader" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV*: VkStructureType = VkStructureType(1000202000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV*: VkStructureType = VkStructureType(1000202001) -template VK_SHADER_STAGE_TASK_BIT_NV* = - VK_SHADER_STAGE_TASK_BIT_EXT -template VK_SHADER_STAGE_MESH_BIT_NV* = - VK_SHADER_STAGE_MESH_BIT_EXT -template VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV* = - VK_PIPELINE_STAGE_TASK_SHADER_BIT_EXT -template VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV* = - VK_PIPELINE_STAGE_MESH_SHADER_BIT_EXT +proc newVkPhysicalDeviceFragmentShadingRateFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR, 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 -# Extension: VK_NV_fragment_shader_barycentric -const VK_NV_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION* = 1 -const VK_NV_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME* = "VK_NV_fragment_shader_barycentric" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR +proc newVkPhysicalDeviceFragmentShadingRatePropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR, 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 -# Extension: VK_NV_shader_image_footprint -const VK_NV_SHADER_IMAGE_FOOTPRINT_SPEC_VERSION* = 2 -const VK_NV_SHADER_IMAGE_FOOTPRINT_EXTENSION_NAME* = "VK_NV_shader_image_footprint" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV*: VkStructureType = VkStructureType(1000204000) +proc newVkPhysicalDeviceFragmentShadingRateKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_KHR, pNext: pointer = nil, sampleCounts: VkSampleCountFlags, fragmentSize: VkExtent2D): VkPhysicalDeviceFragmentShadingRateKHR = + result.sType = sType + result.pNext = pNext + result.sampleCounts = sampleCounts + result.fragmentSize = fragmentSize -# Extension: VK_NV_scissor_exclusive -const VK_NV_SCISSOR_EXCLUSIVE_SPEC_VERSION* = 2 -const VK_NV_SCISSOR_EXCLUSIVE_EXTENSION_NAME* = "VK_NV_scissor_exclusive" -const VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000205000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV*: VkStructureType = VkStructureType(1000205002) -const VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_ENABLE_NV*: VkDynamicState = VkDynamicState(1000205000) -const VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV*: VkDynamicState = VkDynamicState(1000205001) +proc newVkPhysicalDeviceShaderTerminateInvocationFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES, pNext: pointer = nil, shaderTerminateInvocation: VkBool32): VkPhysicalDeviceShaderTerminateInvocationFeatures = + result.sType = sType + result.pNext = pNext + result.shaderTerminateInvocation = shaderTerminateInvocation -# Extension: VK_NV_device_diagnostic_checkpoints -const VK_NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_SPEC_VERSION* = 2 -const VK_NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_EXTENSION_NAME* = "VK_NV_device_diagnostic_checkpoints" -const VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV*: VkStructureType = VkStructureType(1000206000) -const VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV*: VkStructureType = VkStructureType(1000206001) +proc newVkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV, 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 -# Extension: VK_KHR_timeline_semaphore -const VK_KHR_TIMELINE_SEMAPHORE_SPEC_VERSION* = 2 -const VK_KHR_TIMELINE_SEMAPHORE_EXTENSION_NAME* = "VK_KHR_timeline_semaphore" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES -template VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO_KHR* = - VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO -template VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO_KHR* = - VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO -template VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO_KHR* = - VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO -template VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO_KHR* = - VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO -template VK_SEMAPHORE_TYPE_BINARY_KHR* = - VK_SEMAPHORE_TYPE_BINARY -template VK_SEMAPHORE_TYPE_TIMELINE_KHR* = - VK_SEMAPHORE_TYPE_TIMELINE -template VK_SEMAPHORE_WAIT_ANY_BIT_KHR* = - VK_SEMAPHORE_WAIT_ANY_BIT +proc newVkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV, pNext: pointer = nil, maxFragmentShadingRateInvocationCount: VkSampleCountFlagBits): VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV = + result.sType = sType + result.pNext = pNext + result.maxFragmentShadingRateInvocationCount = maxFragmentShadingRateInvocationCount -# Extension: VK_KHR_extension_209 -const VK_KHR_EXTENSION_209_SPEC_VERSION* = 0 -const VK_KHR_EXTENSION_209_EXTENSION_NAME* = "VK_KHR_extension_209" +proc newVkPipelineFragmentShadingRateEnumStateCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV, 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 -# Extension: VK_INTEL_shader_integer_functions2 -const VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_SPEC_VERSION* = 1 -const VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_EXTENSION_NAME* = "VK_INTEL_shader_integer_functions2" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL*: VkStructureType = VkStructureType(1000209000) +proc newVkAccelerationStructureBuildSizesInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR, 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 -# Extension: VK_INTEL_performance_query -const VK_INTEL_PERFORMANCE_QUERY_SPEC_VERSION* = 2 -const VK_INTEL_PERFORMANCE_QUERY_EXTENSION_NAME* = "VK_INTEL_performance_query" -const VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL*: VkStructureType = VkStructureType(1000210000) -template VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTEL* = - VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL -const VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL*: VkStructureType = VkStructureType(1000210001) -const VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL*: VkStructureType = VkStructureType(1000210002) -const VK_STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL*: VkStructureType = VkStructureType(1000210003) -const VK_STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL*: VkStructureType = VkStructureType(1000210004) -const VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL*: VkStructureType = VkStructureType(1000210005) -const VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL*: VkQueryType = VkQueryType(1000210000) -const VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL*: VkObjectType = VkObjectType(1000210000) +proc newVkPhysicalDeviceImage2DViewOf3DFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT, pNext: pointer = nil, image2DViewOf3D: VkBool32, sampler2DViewOf3D: VkBool32): VkPhysicalDeviceImage2DViewOf3DFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.image2DViewOf3D = image2DViewOf3D + result.sampler2DViewOf3D = sampler2DViewOf3D -# Extension: VK_KHR_vulkan_memory_model -const VK_KHR_VULKAN_MEMORY_MODEL_SPEC_VERSION* = 3 -const VK_KHR_VULKAN_MEMORY_MODEL_EXTENSION_NAME* = "VK_KHR_vulkan_memory_model" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES +proc newVkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_SLICED_VIEW_OF_3D_FEATURES_EXT, pNext: pointer = nil, imageSlicedViewOf3D: VkBool32): VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.imageSlicedViewOf3D = imageSlicedViewOf3D -# Extension: VK_EXT_pci_bus_info -const VK_EXT_PCI_BUS_INFO_SPEC_VERSION* = 2 -const VK_EXT_PCI_BUS_INFO_EXTENSION_NAME* = "VK_EXT_pci_bus_info" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000212000) +proc newVkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_DYNAMIC_STATE_FEATURES_EXT, pNext: pointer = nil, attachmentFeedbackLoopDynamicState: VkBool32): VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.attachmentFeedbackLoopDynamicState = attachmentFeedbackLoopDynamicState -# Extension: VK_AMD_display_native_hdr -const VK_AMD_DISPLAY_NATIVE_HDR_SPEC_VERSION* = 1 -const VK_AMD_DISPLAY_NATIVE_HDR_EXTENSION_NAME* = "VK_AMD_display_native_hdr" -const VK_STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD*: VkStructureType = VkStructureType(1000213000) -const VK_STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD*: VkStructureType = VkStructureType(1000213001) -const VK_COLOR_SPACE_DISPLAY_NATIVE_AMD*: VkColorSpaceKHR = VkColorSpaceKHR(1000213000) +proc newVkPhysicalDeviceMutableDescriptorTypeFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT, pNext: pointer = nil, mutableDescriptorType: VkBool32): VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.mutableDescriptorType = mutableDescriptorType -# Extension: VK_FUCHSIA_imagepipe_surface -const VK_FUCHSIA_IMAGEPIPE_SURFACE_SPEC_VERSION* = 1 -const VK_FUCHSIA_IMAGEPIPE_SURFACE_EXTENSION_NAME* = "VK_FUCHSIA_imagepipe_surface" -const VK_STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA*: VkStructureType = VkStructureType(1000214000) +proc newVkMutableDescriptorTypeListEXT*(descriptorTypeCount: uint32, pDescriptorTypes: ptr VkDescriptorType): VkMutableDescriptorTypeListEXT = + result.descriptorTypeCount = descriptorTypeCount + result.pDescriptorTypes = pDescriptorTypes -# Extension: VK_KHR_shader_terminate_invocation -const VK_KHR_SHADER_TERMINATE_INVOCATION_SPEC_VERSION* = 1 -const VK_KHR_SHADER_TERMINATE_INVOCATION_EXTENSION_NAME* = "VK_KHR_shader_terminate_invocation" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES +proc newVkMutableDescriptorTypeCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT, pNext: pointer = nil, mutableDescriptorTypeListCount: uint32, pMutableDescriptorTypeLists: ptr VkMutableDescriptorTypeListEXT): VkMutableDescriptorTypeCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.mutableDescriptorTypeListCount = mutableDescriptorTypeListCount + result.pMutableDescriptorTypeLists = pMutableDescriptorTypeLists -# Extension: VK_GOOGLE_extension_217 -const VK_GOOGLE_EXTENSION_217_SPEC_VERSION* = 0 -const VK_GOOGLE_EXTENSION_217_EXTENSION_NAME* = "VK_GOOGLE_extension_217" +proc newVkPhysicalDeviceDepthClipControlFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT, pNext: pointer = nil, depthClipControl: VkBool32): VkPhysicalDeviceDepthClipControlFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.depthClipControl = depthClipControl -# Extension: VK_EXT_metal_surface -const VK_EXT_METAL_SURFACE_SPEC_VERSION* = 1 -const VK_EXT_METAL_SURFACE_EXTENSION_NAME* = "VK_EXT_metal_surface" -const VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000217000) +proc newVkPipelineViewportDepthClipControlCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT, pNext: pointer = nil, negativeOneToOne: VkBool32): VkPipelineViewportDepthClipControlCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.negativeOneToOne = negativeOneToOne -# Extension: VK_EXT_fragment_density_map -const VK_EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION* = 2 -const VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME* = "VK_EXT_fragment_density_map" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT*: VkStructureType = VkStructureType(1000218000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000218001) -const VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000218002) -const VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT*: VkImageCreateFlagBits = VkImageCreateFlagBits(16384) -const VK_IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT*: VkImageLayout = VkImageLayout(1000218000) -const VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT*: VkAccessFlagBits = VkAccessFlagBits(16777216) -const VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(16777216) -const VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT*: VkImageUsageFlagBits = VkImageUsageFlagBits(512) -const VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT*: VkImageViewCreateFlagBits = VkImageViewCreateFlagBits(1) -const VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT*: VkPipelineStageFlagBits = VkPipelineStageFlagBits(8388608) -const VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT*: VkSamplerCreateFlagBits = VkSamplerCreateFlagBits(1) -const VK_SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT*: VkSamplerCreateFlagBits = VkSamplerCreateFlagBits(2) -const VK_FORMAT_FEATURE_2_FRAGMENT_DENSITY_MAP_BIT_EXT*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(16777216) +proc newVkPhysicalDeviceVertexInputDynamicStateFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT, pNext: pointer = nil, vertexInputDynamicState: VkBool32): VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.vertexInputDynamicState = vertexInputDynamicState -# Extension: VK_EXT_extension_220 -const VK_EXT_EXTENSION_220_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_220_EXTENSION_NAME* = "VK_EXT_extension_220" +proc newVkPhysicalDeviceExternalMemoryRDMAFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV, pNext: pointer = nil, externalMemoryRDMA: VkBool32): VkPhysicalDeviceExternalMemoryRDMAFeaturesNV = + result.sType = sType + result.pNext = pNext + result.externalMemoryRDMA = externalMemoryRDMA -# Extension: VK_KHR_extension_221 -const VK_KHR_EXTENSION_221_SPEC_VERSION* = 0 -const VK_KHR_EXTENSION_221_EXTENSION_NAME* = "VK_KHR_extension_221" -const VK_RENDER_PASS_CREATE_RESERVED_0_BIT_KHR*: VkRenderPassCreateFlagBits = VkRenderPassCreateFlagBits(1) +proc newVkVertexInputBindingDescription2EXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT, 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 -# Extension: VK_EXT_scalar_block_layout -const VK_EXT_SCALAR_BLOCK_LAYOUT_SPEC_VERSION* = 1 -const VK_EXT_SCALAR_BLOCK_LAYOUT_EXTENSION_NAME* = "VK_EXT_scalar_block_layout" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES_EXT* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES +proc newVkVertexInputAttributeDescription2EXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT, 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 -# Extension: VK_EXT_extension_223 -const VK_EXT_EXTENSION_223_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_223_EXTENSION_NAME* = "VK_EXT_extension_223" +proc newVkPhysicalDeviceColorWriteEnableFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT, pNext: pointer = nil, colorWriteEnable: VkBool32): VkPhysicalDeviceColorWriteEnableFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.colorWriteEnable = colorWriteEnable -# Extension: VK_GOOGLE_hlsl_functionality1 -const VK_GOOGLE_HLSL_FUNCTIONALITY_1_SPEC_VERSION* = 1 -const VK_GOOGLE_HLSL_FUNCTIONALITY_1_EXTENSION_NAME* = "VK_GOOGLE_hlsl_functionality1" +proc newVkPipelineColorWriteCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT, pNext: pointer = nil, attachmentCount: uint32, pColorWriteEnables: ptr VkBool32): VkPipelineColorWriteCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.attachmentCount = attachmentCount + result.pColorWriteEnables = pColorWriteEnables -# Extension: VK_GOOGLE_decorate_string -const VK_GOOGLE_DECORATE_STRING_SPEC_VERSION* = 1 -const VK_GOOGLE_DECORATE_STRING_EXTENSION_NAME* = "VK_GOOGLE_decorate_string" +proc newVkMemoryBarrier2*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_BARRIER_2, 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 -# Extension: VK_EXT_subgroup_size_control -const VK_EXT_SUBGROUP_SIZE_CONTROL_SPEC_VERSION* = 2 -const VK_EXT_SUBGROUP_SIZE_CONTROL_EXTENSION_NAME* = "VK_EXT_subgroup_size_control" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES -template VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT* = - VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES -template VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT* = - VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT -template VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT* = - VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT +proc newVkImageMemoryBarrier2*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2, 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 -# Extension: VK_KHR_fragment_shading_rate -const VK_KHR_FRAGMENT_SHADING_RATE_SPEC_VERSION* = 2 -const VK_KHR_FRAGMENT_SHADING_RATE_EXTENSION_NAME* = "VK_KHR_fragment_shading_rate" -const VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR*: VkImageLayout = VkImageLayout(1000164003) -const VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR*: VkDynamicState = VkDynamicState(1000226000) -const VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR*: VkStructureType = VkStructureType(1000226000) -const VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000226001) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000226002) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR*: VkStructureType = VkStructureType(1000226003) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_KHR*: VkStructureType = VkStructureType(1000226004) -const VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR*: VkAccessFlagBits = VkAccessFlagBits(8388608) -const VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR*: VkImageUsageFlagBits = VkImageUsageFlagBits(256) -const VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR*: VkPipelineStageFlagBits = VkPipelineStageFlagBits(4194304) -const VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(1073741824) -const VK_FORMAT_FEATURE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(1073741824) +proc newVkBufferMemoryBarrier2*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2, 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 -# Extension: VK_AMD_shader_core_properties2 -const VK_AMD_SHADER_CORE_PROPERTIES_2_SPEC_VERSION* = 1 -const VK_AMD_SHADER_CORE_PROPERTIES_2_EXTENSION_NAME* = "VK_AMD_shader_core_properties2" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD*: VkStructureType = VkStructureType(1000227000) +proc newVkDependencyInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEPENDENCY_INFO, 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 -# Extension: VK_AMD_extension_229 -const VK_AMD_EXTENSION_229_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_229_EXTENSION_NAME* = "VK_AMD_extension_229" +proc newVkSemaphoreSubmitInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO, 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 -# Extension: VK_AMD_device_coherent_memory -const VK_AMD_DEVICE_COHERENT_MEMORY_SPEC_VERSION* = 1 -const VK_AMD_DEVICE_COHERENT_MEMORY_EXTENSION_NAME* = "VK_AMD_device_coherent_memory" -const VK_MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD*: VkMemoryPropertyFlagBits = VkMemoryPropertyFlagBits(64) -const VK_MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD*: VkMemoryPropertyFlagBits = VkMemoryPropertyFlagBits(128) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD*: VkStructureType = VkStructureType(1000229000) +proc newVkCommandBufferSubmitInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO, pNext: pointer = nil, commandBuffer: VkCommandBuffer, deviceMask: uint32): VkCommandBufferSubmitInfo = + result.sType = sType + result.pNext = pNext + result.commandBuffer = commandBuffer + result.deviceMask = deviceMask -# Extension: VK_AMD_extension_231 -const VK_AMD_EXTENSION_231_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_231_EXTENSION_NAME* = "VK_AMD_extension_231" +proc newVkSubmitInfo2*(sType: VkStructureType = VK_STRUCTURE_TYPE_SUBMIT_INFO_2, 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 + +proc newVkQueueFamilyCheckpointProperties2NV*(sType: VkStructureType = VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV, pNext: pointer = nil, checkpointExecutionStageMask: VkPipelineStageFlags2): VkQueueFamilyCheckpointProperties2NV = + result.sType = sType + result.pNext = pNext + result.checkpointExecutionStageMask = checkpointExecutionStageMask -# Extension: VK_AMD_extension_232 -const VK_AMD_EXTENSION_232_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_232_EXTENSION_NAME* = "VK_AMD_extension_232" +proc newVkCheckpointData2NV*(sType: VkStructureType = VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV, pNext: pointer = nil, stage: VkPipelineStageFlags2, pCheckpointMarker: pointer = nil): VkCheckpointData2NV = + result.sType = sType + result.pNext = pNext + result.stage = stage + result.pCheckpointMarker = pCheckpointMarker -# Extension: VK_AMD_extension_233 -const VK_AMD_EXTENSION_233_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_233_EXTENSION_NAME* = "VK_AMD_extension_233" +proc newVkPhysicalDeviceSynchronization2Features*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES, pNext: pointer = nil, synchronization2: VkBool32): VkPhysicalDeviceSynchronization2Features = + result.sType = sType + result.pNext = pNext + result.synchronization2 = synchronization2 -# Extension: VK_AMD_extension_234 -const VK_AMD_EXTENSION_234_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_234_EXTENSION_NAME* = "VK_AMD_extension_234" +proc newVkPhysicalDeviceHostImageCopyFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_IMAGE_COPY_FEATURES_EXT, pNext: pointer = nil, hostImageCopy: VkBool32): VkPhysicalDeviceHostImageCopyFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.hostImageCopy = hostImageCopy -# Extension: VK_EXT_shader_image_atomic_int64 -const VK_EXT_SHADER_IMAGE_ATOMIC_INT64_SPEC_VERSION* = 1 -const VK_EXT_SHADER_IMAGE_ATOMIC_INT64_EXTENSION_NAME* = "VK_EXT_shader_image_atomic_int64" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT*: VkStructureType = VkStructureType(1000234000) +proc newVkPhysicalDeviceHostImageCopyPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_IMAGE_COPY_PROPERTIES_EXT, 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 -# Extension: VK_AMD_extension_236 -const VK_AMD_EXTENSION_236_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_236_EXTENSION_NAME* = "VK_AMD_extension_236" +proc newVkMemoryToImageCopyEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_TO_IMAGE_COPY_EXT, 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 -# Extension: VK_KHR_spirv_1_4 -const VK_KHR_SPIRV_1_4_SPEC_VERSION* = 1 -const VK_KHR_SPIRV_1_4_EXTENSION_NAME* = "VK_KHR_spirv_1_4" +proc newVkImageToMemoryCopyEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_TO_MEMORY_COPY_EXT, 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 -# Extension: VK_EXT_memory_budget -const VK_EXT_MEMORY_BUDGET_SPEC_VERSION* = 1 -const VK_EXT_MEMORY_BUDGET_EXTENSION_NAME* = "VK_EXT_memory_budget" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000237000) +proc newVkCopyMemoryToImageInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_COPY_MEMORY_TO_IMAGE_INFO_EXT, 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 -# Extension: VK_EXT_memory_priority -const VK_EXT_MEMORY_PRIORITY_SPEC_VERSION* = 1 -const VK_EXT_MEMORY_PRIORITY_EXTENSION_NAME* = "VK_EXT_memory_priority" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT*: VkStructureType = VkStructureType(1000238000) -const VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT*: VkStructureType = VkStructureType(1000238001) +proc newVkCopyImageToMemoryInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_COPY_IMAGE_TO_MEMORY_INFO_EXT, 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 -# Extension: VK_KHR_surface_protected_capabilities -const VK_KHR_SURFACE_PROTECTED_CAPABILITIES_SPEC_VERSION* = 1 -const VK_KHR_SURFACE_PROTECTED_CAPABILITIES_EXTENSION_NAME* = "VK_KHR_surface_protected_capabilities" -const VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR*: VkStructureType = VkStructureType(1000239000) +proc newVkCopyImageToImageInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_COPY_IMAGE_TO_IMAGE_INFO_EXT, 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 -# Extension: VK_NV_dedicated_allocation_image_aliasing -const VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_SPEC_VERSION* = 1 -const VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_EXTENSION_NAME* = "VK_NV_dedicated_allocation_image_aliasing" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV*: VkStructureType = VkStructureType(1000240000) +proc newVkHostImageLayoutTransitionInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_HOST_IMAGE_LAYOUT_TRANSITION_INFO_EXT, 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 -# Extension: VK_KHR_separate_depth_stencil_layouts -const VK_KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_SPEC_VERSION* = 1 -const VK_KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_EXTENSION_NAME* = "VK_KHR_separate_depth_stencil_layouts" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES -template VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT_KHR* = - VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT -template VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT_KHR* = - VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT -template VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR* = - VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL -template VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR* = - VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL -template VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR* = - VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL -template VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR* = - VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL +proc newVkSubresourceHostMemcpySizeEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SUBRESOURCE_HOST_MEMCPY_SIZE_EXT, pNext: pointer = nil, size: VkDeviceSize): VkSubresourceHostMemcpySizeEXT = + result.sType = sType + result.pNext = pNext + result.size = size -# Extension: VK_INTEL_extension_243 -const VK_INTEL_EXTENSION_243_SPEC_VERSION* = 0 -const VK_INTEL_EXTENSION_243_EXTENSION_NAME* = "VK_INTEL_extension_243" -const VK_ACCESS_2_RESERVED_46_BIT_EXT*: VkAccessFlagBits2 = VkAccessFlagBits2(70368744177664) +proc newVkHostImageCopyDevicePerformanceQueryEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_HOST_IMAGE_COPY_DEVICE_PERFORMANCE_QUERY_EXT, pNext: pointer = nil, optimalDeviceAccess: VkBool32, identicalMemoryLayout: VkBool32): VkHostImageCopyDevicePerformanceQueryEXT = + result.sType = sType + result.pNext = pNext + result.optimalDeviceAccess = optimalDeviceAccess + result.identicalMemoryLayout = identicalMemoryLayout -# Extension: VK_MESA_extension_244 -const VK_MESA_EXTENSION_244_SPEC_VERSION* = 0 -const VK_MESA_EXTENSION_244_EXTENSION_NAME* = "VK_MESA_extension_244" +proc newVkPhysicalDeviceVulkanSC10Properties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_SC_1_0_PROPERTIES, 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 -# Extension: VK_EXT_buffer_device_address -const VK_EXT_BUFFER_DEVICE_ADDRESS_SPEC_VERSION* = 2 -const VK_EXT_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME* = "VK_EXT_buffer_device_address" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT*: VkStructureType = VkStructureType(1000244000) -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_ADDRESS_FEATURES_EXT* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT -template VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO_EXT* = - VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO -const VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000244002) -template VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_EXT* = - VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT -template VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT* = - VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT -template VK_ERROR_INVALID_DEVICE_ADDRESS_EXT* = - VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS +proc newVkPipelinePoolSize*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_POOL_SIZE, pNext: pointer = nil, poolEntrySize: VkDeviceSize, poolEntryCount: uint32): VkPipelinePoolSize = + result.sType = sType + result.pNext = pNext + result.poolEntrySize = poolEntrySize + result.poolEntryCount = poolEntryCount -# Extension: VK_EXT_tooling_info -const VK_EXT_TOOLING_INFO_SPEC_VERSION* = 1 -const VK_EXT_TOOLING_INFO_EXTENSION_NAME* = "VK_EXT_tooling_info" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES -const VK_TOOL_PURPOSE_DEBUG_REPORTING_BIT_EXT*: VkToolPurposeFlagBits = VkToolPurposeFlagBits(32) -const VK_TOOL_PURPOSE_DEBUG_MARKERS_BIT_EXT*: VkToolPurposeFlagBits = VkToolPurposeFlagBits(64) +proc newVkDeviceObjectReservationCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_OBJECT_RESERVATION_CREATE_INFO, 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 -# Extension: VK_EXT_separate_stencil_usage -const VK_EXT_SEPARATE_STENCIL_USAGE_SPEC_VERSION* = 1 -const VK_EXT_SEPARATE_STENCIL_USAGE_EXTENSION_NAME* = "VK_EXT_separate_stencil_usage" -template VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO_EXT* = - VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO +proc newVkCommandPoolMemoryReservationCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_COMMAND_POOL_MEMORY_RESERVATION_CREATE_INFO, pNext: pointer = nil, commandPoolReservedSize: VkDeviceSize, commandPoolMaxCommandBuffers: uint32): VkCommandPoolMemoryReservationCreateInfo = + result.sType = sType + result.pNext = pNext + result.commandPoolReservedSize = commandPoolReservedSize + result.commandPoolMaxCommandBuffers = commandPoolMaxCommandBuffers -# Extension: VK_EXT_validation_features -const VK_EXT_VALIDATION_FEATURES_SPEC_VERSION* = 5 -const VK_EXT_VALIDATION_FEATURES_EXTENSION_NAME* = "VK_EXT_validation_features" -const VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT*: VkStructureType = VkStructureType(1000247000) +proc newVkCommandPoolMemoryConsumption*(sType: VkStructureType = VK_STRUCTURE_TYPE_COMMAND_POOL_MEMORY_CONSUMPTION, 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 -# Extension: VK_KHR_present_wait -const VK_KHR_PRESENT_WAIT_SPEC_VERSION* = 1 -const VK_KHR_PRESENT_WAIT_EXTENSION_NAME* = "VK_KHR_present_wait" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR*: VkStructureType = VkStructureType(1000248000) +proc newVkPhysicalDeviceVulkanSC10Features*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_SC_1_0_FEATURES, pNext: pointer = nil, shaderAtomicInstructions: VkBool32): VkPhysicalDeviceVulkanSC10Features = + result.sType = sType + result.pNext = pNext + result.shaderAtomicInstructions = shaderAtomicInstructions -# Extension: VK_NV_cooperative_matrix -const VK_NV_COOPERATIVE_MATRIX_SPEC_VERSION* = 1 -const VK_NV_COOPERATIVE_MATRIX_EXTENSION_NAME* = "VK_NV_cooperative_matrix" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV*: VkStructureType = VkStructureType(1000249000) -const VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV*: VkStructureType = VkStructureType(1000249001) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV*: VkStructureType = VkStructureType(1000249002) +proc newVkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT, 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 -# Extension: VK_NV_coverage_reduction_mode -const VK_NV_COVERAGE_REDUCTION_MODE_SPEC_VERSION* = 1 -const VK_NV_COVERAGE_REDUCTION_MODE_EXTENSION_NAME* = "VK_NV_coverage_reduction_mode" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV*: VkStructureType = VkStructureType(1000250000) -const VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000250001) -const VK_STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV*: VkStructureType = VkStructureType(1000250002) +proc newVkPhysicalDeviceLegacyDitheringFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_DITHERING_FEATURES_EXT, pNext: pointer = nil, legacyDithering: VkBool32): VkPhysicalDeviceLegacyDitheringFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.legacyDithering = legacyDithering -# Extension: VK_EXT_fragment_shader_interlock -const VK_EXT_FRAGMENT_SHADER_INTERLOCK_SPEC_VERSION* = 1 -const VK_EXT_FRAGMENT_SHADER_INTERLOCK_EXTENSION_NAME* = "VK_EXT_fragment_shader_interlock" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT*: VkStructureType = VkStructureType(1000251000) +proc newVkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT, pNext: pointer = nil, multisampledRenderToSingleSampled: VkBool32): VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.multisampledRenderToSingleSampled = multisampledRenderToSingleSampled -# Extension: VK_EXT_ycbcr_image_arrays -const VK_EXT_YCBCR_IMAGE_ARRAYS_SPEC_VERSION* = 1 -const VK_EXT_YCBCR_IMAGE_ARRAYS_EXTENSION_NAME* = "VK_EXT_ycbcr_image_arrays" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT*: VkStructureType = VkStructureType(1000252000) +proc newVkSubpassResolvePerformanceQueryEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SUBPASS_RESOLVE_PERFORMANCE_QUERY_EXT, pNext: pointer = nil, optimal: VkBool32): VkSubpassResolvePerformanceQueryEXT = + result.sType = sType + result.pNext = pNext + result.optimal = optimal -# Extension: VK_KHR_uniform_buffer_standard_layout -const VK_KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_SPEC_VERSION* = 1 -const VK_KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_EXTENSION_NAME* = "VK_KHR_uniform_buffer_standard_layout" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES +proc newVkMultisampledRenderToSingleSampledInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_EXT, pNext: pointer = nil, multisampledRenderToSingleSampledEnable: VkBool32, rasterizationSamples: VkSampleCountFlagBits): VkMultisampledRenderToSingleSampledInfoEXT = + result.sType = sType + result.pNext = pNext + result.multisampledRenderToSingleSampledEnable = multisampledRenderToSingleSampledEnable + result.rasterizationSamples = rasterizationSamples -# Extension: VK_EXT_provoking_vertex -const VK_EXT_PROVOKING_VERTEX_SPEC_VERSION* = 1 -const VK_EXT_PROVOKING_VERTEX_EXTENSION_NAME* = "VK_EXT_provoking_vertex" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT*: VkStructureType = VkStructureType(1000254000) -const VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000254001) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000254002) +proc newVkPhysicalDevicePipelineProtectedAccessFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES_EXT, pNext: pointer = nil, pipelineProtectedAccess: VkBool32): VkPhysicalDevicePipelineProtectedAccessFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.pipelineProtectedAccess = pipelineProtectedAccess -# Extension: VK_EXT_full_screen_exclusive -const VK_EXT_FULL_SCREEN_EXCLUSIVE_SPEC_VERSION* = 4 -const VK_EXT_FULL_SCREEN_EXCLUSIVE_EXTENSION_NAME* = "VK_EXT_full_screen_exclusive" -const VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT*: VkStructureType = VkStructureType(1000255000) -const VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT*: VkStructureType = VkStructureType(1000255002) -const VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT*: VkResult = VkResult(-1000255000) -const VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT*: VkStructureType = VkStructureType(1000255001) +proc newVkQueueFamilyVideoPropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_QUEUE_FAMILY_VIDEO_PROPERTIES_KHR, pNext: pointer = nil, videoCodecOperations: VkVideoCodecOperationFlagsKHR): VkQueueFamilyVideoPropertiesKHR = + result.sType = sType + result.pNext = pNext + result.videoCodecOperations = videoCodecOperations -# Extension: VK_EXT_headless_surface -const VK_EXT_HEADLESS_SURFACE_SPEC_VERSION* = 1 -const VK_EXT_HEADLESS_SURFACE_EXTENSION_NAME* = "VK_EXT_headless_surface" -const VK_STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000256000) +proc newVkQueueFamilyQueryResultStatusPropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_QUEUE_FAMILY_QUERY_RESULT_STATUS_PROPERTIES_KHR, pNext: pointer = nil, queryResultStatusSupport: VkBool32): VkQueueFamilyQueryResultStatusPropertiesKHR = + result.sType = sType + result.pNext = pNext + result.queryResultStatusSupport = queryResultStatusSupport -# Extension: VK_KHR_buffer_device_address -const VK_KHR_BUFFER_DEVICE_ADDRESS_SPEC_VERSION* = 1 -const VK_KHR_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME* = "VK_KHR_buffer_device_address" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES -template VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO_KHR* = - VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO -template VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO_KHR* = - VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO -template VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO_KHR* = - VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO -template VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO_KHR* = - VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO -template VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_KHR* = - VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT -template VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR* = - VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT -template VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT_KHR* = - VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT -template VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR* = - VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT -template VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS_KHR* = - VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS +proc newVkVideoProfileListInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_PROFILE_LIST_INFO_KHR, pNext: pointer = nil, profileCount: uint32, pProfiles: ptr VkVideoProfileInfoKHR): VkVideoProfileListInfoKHR = + result.sType = sType + result.pNext = pNext + result.profileCount = profileCount + result.pProfiles = pProfiles -# Extension: VK_EXT_extension_259 -const VK_EXT_EXTENSION_259_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_259_EXTENSION_NAME* = "VK_EXT_extension_259" -const VK_QUEUE_RESERVED_9_BIT_EXT*: VkQueueFlagBits = VkQueueFlagBits(512) -const VK_FORMAT_FEATURE_2_RESERVED_44_BIT_EXT*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(17592186044416) -const VK_FORMAT_FEATURE_2_RESERVED_45_BIT_EXT*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(35184372088832) -const VK_IMAGE_CREATE_RESERVED_19_BIT_EXT*: VkImageCreateFlagBits = VkImageCreateFlagBits(524288) +proc newVkPhysicalDeviceVideoFormatInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_FORMAT_INFO_KHR, pNext: pointer = nil, imageUsage: VkImageUsageFlags): VkPhysicalDeviceVideoFormatInfoKHR = + result.sType = sType + result.pNext = pNext + result.imageUsage = imageUsage -# Extension: VK_EXT_line_rasterization -const VK_EXT_LINE_RASTERIZATION_SPEC_VERSION* = 1 -const VK_EXT_LINE_RASTERIZATION_EXTENSION_NAME* = "VK_EXT_line_rasterization" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT*: VkStructureType = VkStructureType(1000259000) -const VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000259001) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000259002) -const VK_DYNAMIC_STATE_LINE_STIPPLE_EXT*: VkDynamicState = VkDynamicState(1000259000) +proc newVkVideoFormatPropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_FORMAT_PROPERTIES_KHR, 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 -# Extension: VK_EXT_shader_atomic_float -const VK_EXT_SHADER_ATOMIC_FLOAT_SPEC_VERSION* = 1 -const VK_EXT_SHADER_ATOMIC_FLOAT_EXTENSION_NAME* = "VK_EXT_shader_atomic_float" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT*: VkStructureType = VkStructureType(1000260000) +proc newVkVideoProfileInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_PROFILE_INFO_KHR, 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 -# Extension: VK_EXT_host_query_reset -const VK_EXT_HOST_QUERY_RESET_SPEC_VERSION* = 1 -const VK_EXT_HOST_QUERY_RESET_EXTENSION_NAME* = "VK_EXT_host_query_reset" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXT* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES +proc newVkVideoCapabilitiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR, 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 -# Extension: VK_GGP_extension_263 -const VK_GGP_EXTENSION_263_SPEC_VERSION* = 0 -const VK_GGP_EXTENSION_263_EXTENSION_NAME* = "VK_GGP_extension_263" +proc newVkVideoSessionMemoryRequirementsKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_SESSION_MEMORY_REQUIREMENTS_KHR, pNext: pointer = nil, memoryBindIndex: uint32, memoryRequirements: VkMemoryRequirements): VkVideoSessionMemoryRequirementsKHR = + result.sType = sType + result.pNext = pNext + result.memoryBindIndex = memoryBindIndex + result.memoryRequirements = memoryRequirements -# Extension: VK_BRCM_extension_264 -const VK_BRCM_EXTENSION_264_SPEC_VERSION* = 0 -const VK_BRCM_EXTENSION_264_EXTENSION_NAME* = "VK_BRCM_extension_264" +proc newVkBindVideoSessionMemoryInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_BIND_VIDEO_SESSION_MEMORY_INFO_KHR, 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 -# Extension: VK_BRCM_extension_265 -const VK_BRCM_EXTENSION_265_SPEC_VERSION* = 0 -const VK_BRCM_EXTENSION_265_EXTENSION_NAME* = "VK_BRCM_extension_265" +proc newVkVideoPictureResourceInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_PICTURE_RESOURCE_INFO_KHR, 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 -# Extension: VK_EXT_index_type_uint8 -const VK_EXT_INDEX_TYPE_UINT8_SPEC_VERSION* = 1 -const VK_EXT_INDEX_TYPE_UINT8_EXTENSION_NAME* = "VK_EXT_index_type_uint8" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT*: VkStructureType = VkStructureType(1000265000) -const VK_INDEX_TYPE_UINT8_EXT*: VkIndexType = VkIndexType(1000265000) +proc newVkVideoReferenceSlotInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_INFO_KHR, pNext: pointer = nil, slotIndex: int32, pPictureResource: ptr VkVideoPictureResourceInfoKHR): VkVideoReferenceSlotInfoKHR = + result.sType = sType + result.pNext = pNext + result.slotIndex = slotIndex + result.pPictureResource = pPictureResource -# Extension: VK_EXT_extension_267 -const VK_EXT_EXTENSION_267_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_267_EXTENSION_NAME* = "VK_EXT_extension_267" +proc newVkVideoDecodeCapabilitiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_CAPABILITIES_KHR, pNext: pointer = nil, flags: VkVideoDecodeCapabilityFlagsKHR = 0.VkVideoDecodeCapabilityFlagsKHR): VkVideoDecodeCapabilitiesKHR = + result.sType = sType + result.pNext = pNext + result.flags = flags -# Extension: VK_EXT_extended_dynamic_state -const VK_EXT_EXTENDED_DYNAMIC_STATE_SPEC_VERSION* = 1 -const VK_EXT_EXTENDED_DYNAMIC_STATE_EXTENSION_NAME* = "VK_EXT_extended_dynamic_state" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT*: VkStructureType = VkStructureType(1000267000) -template VK_DYNAMIC_STATE_CULL_MODE_EXT* = - VK_DYNAMIC_STATE_CULL_MODE -template VK_DYNAMIC_STATE_FRONT_FACE_EXT* = - VK_DYNAMIC_STATE_FRONT_FACE -template VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY_EXT* = - VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY -template VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT_EXT* = - VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT -template VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT_EXT* = - VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT -template VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT* = - VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE -template VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE_EXT* = - VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE -template VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE_EXT* = - VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE -template VK_DYNAMIC_STATE_DEPTH_COMPARE_OP_EXT* = - VK_DYNAMIC_STATE_DEPTH_COMPARE_OP -template VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE_EXT* = - VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE -template VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE_EXT* = - VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE -template VK_DYNAMIC_STATE_STENCIL_OP_EXT* = - VK_DYNAMIC_STATE_STENCIL_OP +proc newVkVideoDecodeUsageInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_USAGE_INFO_KHR, pNext: pointer = nil, videoUsageHints: VkVideoDecodeUsageFlagsKHR): VkVideoDecodeUsageInfoKHR = + result.sType = sType + result.pNext = pNext + result.videoUsageHints = videoUsageHints -# Extension: VK_KHR_deferred_host_operations -const VK_KHR_DEFERRED_HOST_OPERATIONS_SPEC_VERSION* = 4 -const VK_KHR_DEFERRED_HOST_OPERATIONS_EXTENSION_NAME* = "VK_KHR_deferred_host_operations" -const VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR*: VkObjectType = VkObjectType(1000268000) -const VK_THREAD_IDLE_KHR*: VkResult = VkResult(1000268000) -const VK_THREAD_DONE_KHR*: VkResult = VkResult(1000268001) -const VK_OPERATION_DEFERRED_KHR*: VkResult = VkResult(1000268002) -const VK_OPERATION_NOT_DEFERRED_KHR*: VkResult = VkResult(1000268003) +proc newVkVideoDecodeInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR, 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 -# Extension: VK_KHR_pipeline_executable_properties -const VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_SPEC_VERSION* = 1 -const VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_EXTENSION_NAME* = "VK_KHR_pipeline_executable_properties" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR*: VkStructureType = VkStructureType(1000269000) -const VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR*: VkStructureType = VkStructureType(1000269001) -const VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000269002) -const VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR*: VkStructureType = VkStructureType(1000269003) -const VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR*: VkStructureType = VkStructureType(1000269004) -const VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR*: VkStructureType = VkStructureType(1000269005) -const VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(64) -const VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(128) +proc newVkVideoDecodeH264ProfileInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_KHR, pNext: pointer = nil, stdProfileIdc: StdVideoH264ProfileIdc, pictureLayout: VkVideoDecodeH264PictureLayoutFlagBitsKHR): VkVideoDecodeH264ProfileInfoKHR = + result.sType = sType + result.pNext = pNext + result.stdProfileIdc = stdProfileIdc + result.pictureLayout = pictureLayout -# Extension: VK_INTEL_extension_271 -const VK_INTEL_EXTENSION_271_SPEC_VERSION* = 0 -const VK_INTEL_EXTENSION_271_EXTENSION_NAME* = "VK_INTEL_extension_271" -const VK_IMAGE_USAGE_RESERVED_22_BIT_EXT*: VkImageUsageFlagBits = VkImageUsageFlagBits(4194304) +proc newVkVideoDecodeH264CapabilitiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_KHR, pNext: pointer = nil, maxLevelIdc: StdVideoH264LevelIdc, fieldOffsetGranularity: VkOffset2D): VkVideoDecodeH264CapabilitiesKHR = + result.sType = sType + result.pNext = pNext + result.maxLevelIdc = maxLevelIdc + result.fieldOffsetGranularity = fieldOffsetGranularity -# Extension: VK_KHR_map_memory2 -const VK_KHR_MAP_MEMORY_2_SPEC_VERSION* = 1 -const VK_KHR_MAP_MEMORY_2_EXTENSION_NAME* = "VK_KHR_map_memory2" -const VK_STRUCTURE_TYPE_MEMORY_MAP_INFO_KHR*: VkStructureType = VkStructureType(1000271000) -const VK_STRUCTURE_TYPE_MEMORY_UNMAP_INFO_KHR*: VkStructureType = VkStructureType(1000271001) +proc newVkVideoDecodeH264SessionParametersAddInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_KHR, 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 -# Extension: VK_INTEL_extension_273 -const VK_INTEL_EXTENSION_273_SPEC_VERSION* = 0 -const VK_INTEL_EXTENSION_273_EXTENSION_NAME* = "VK_INTEL_extension_273" +proc newVkVideoDecodeH264SessionParametersCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_KHR, 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 -# Extension: VK_EXT_shader_atomic_float2 -const VK_EXT_SHADER_ATOMIC_FLOAT_2_SPEC_VERSION* = 1 -const VK_EXT_SHADER_ATOMIC_FLOAT_2_EXTENSION_NAME* = "VK_EXT_shader_atomic_float2" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT*: VkStructureType = VkStructureType(1000273000) +proc newVkVideoDecodeH264PictureInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_KHR, 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 -# Extension: VK_EXT_surface_maintenance1 -const VK_EXT_SURFACE_MAINTENANCE_1_SPEC_VERSION* = 1 -const VK_EXT_SURFACE_MAINTENANCE_1_EXTENSION_NAME* = "VK_EXT_surface_maintenance1" -const VK_STRUCTURE_TYPE_SURFACE_PRESENT_MODE_EXT*: VkStructureType = VkStructureType(1000274000) -const VK_STRUCTURE_TYPE_SURFACE_PRESENT_SCALING_CAPABILITIES_EXT*: VkStructureType = VkStructureType(1000274001) -const VK_STRUCTURE_TYPE_SURFACE_PRESENT_MODE_COMPATIBILITY_EXT*: VkStructureType = VkStructureType(1000274002) +proc newVkVideoDecodeH264DpbSlotInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_KHR, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoDecodeH264ReferenceInfo): VkVideoDecodeH264DpbSlotInfoKHR = + result.sType = sType + result.pNext = pNext + result.pStdReferenceInfo = pStdReferenceInfo -# Extension: VK_EXT_swapchain_maintenance1 -const VK_EXT_SWAPCHAIN_MAINTENANCE_1_SPEC_VERSION* = 1 -const VK_EXT_SWAPCHAIN_MAINTENANCE_1_EXTENSION_NAME* = "VK_EXT_swapchain_maintenance1" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SWAPCHAIN_MAINTENANCE_1_FEATURES_EXT*: VkStructureType = VkStructureType(1000275000) -const VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_FENCE_INFO_EXT*: VkStructureType = VkStructureType(1000275001) -const VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODES_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000275002) -const VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODE_INFO_EXT*: VkStructureType = VkStructureType(1000275003) -const VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_SCALING_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000275004) -const VK_STRUCTURE_TYPE_RELEASE_SWAPCHAIN_IMAGES_INFO_EXT*: VkStructureType = VkStructureType(1000275005) -const VK_SWAPCHAIN_CREATE_DEFERRED_MEMORY_ALLOCATION_BIT_EXT*: VkSwapchainCreateFlagBitsKHR = VkSwapchainCreateFlagBitsKHR(8) +proc newVkVideoDecodeH265ProfileInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_INFO_KHR, pNext: pointer = nil, stdProfileIdc: StdVideoH265ProfileIdc): VkVideoDecodeH265ProfileInfoKHR = + result.sType = sType + result.pNext = pNext + result.stdProfileIdc = stdProfileIdc -# Extension: VK_EXT_shader_demote_to_helper_invocation -const VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_SPEC_VERSION* = 1 -const VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_EXTENSION_NAME* = "VK_EXT_shader_demote_to_helper_invocation" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES +proc newVkVideoDecodeH265CapabilitiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_KHR, pNext: pointer = nil, maxLevelIdc: StdVideoH265LevelIdc): VkVideoDecodeH265CapabilitiesKHR = + result.sType = sType + result.pNext = pNext + result.maxLevelIdc = maxLevelIdc -# Extension: VK_NV_device_generated_commands -const VK_NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION* = 3 -const VK_NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME* = "VK_NV_device_generated_commands" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV*: VkStructureType = VkStructureType(1000277000) -const VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000277001) -const VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000277002) -const VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV*: VkStructureType = VkStructureType(1000277003) -const VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000277004) -const VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV*: VkStructureType = VkStructureType(1000277005) -const VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV*: VkStructureType = VkStructureType(1000277006) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV*: VkStructureType = VkStructureType(1000277007) -const VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(262144) -const VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV*: VkPipelineStageFlagBits = VkPipelineStageFlagBits(131072) -const VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV*: VkAccessFlagBits = VkAccessFlagBits(131072) -const VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV*: VkAccessFlagBits = VkAccessFlagBits(262144) -const VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV*: VkObjectType = VkObjectType(1000277000) +proc newVkVideoDecodeH265SessionParametersAddInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_KHR, 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 -# Extension: VK_NV_inherited_viewport_scissor -const VK_NV_INHERITED_VIEWPORT_SCISSOR_SPEC_VERSION* = 1 -const VK_NV_INHERITED_VIEWPORT_SCISSOR_EXTENSION_NAME* = "VK_NV_inherited_viewport_scissor" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV*: VkStructureType = VkStructureType(1000278000) -const VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV*: VkStructureType = VkStructureType(1000278001) +proc newVkVideoDecodeH265SessionParametersCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_KHR, 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 -# Extension: VK_KHR_extension_280 -const VK_KHR_EXTENSION_280_SPEC_VERSION* = 0 -const VK_KHR_EXTENSION_280_EXTENSION_NAME* = "VK_KHR_extension_280" +proc newVkVideoDecodeH265PictureInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_KHR, 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 -# Extension: VK_KHR_shader_integer_dot_product -const VK_KHR_SHADER_INTEGER_DOT_PRODUCT_SPEC_VERSION* = 1 -const VK_KHR_SHADER_INTEGER_DOT_PRODUCT_EXTENSION_NAME* = "VK_KHR_shader_integer_dot_product" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES +proc newVkVideoDecodeH265DpbSlotInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_KHR, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoDecodeH265ReferenceInfo): VkVideoDecodeH265DpbSlotInfoKHR = + result.sType = sType + result.pNext = pNext + result.pStdReferenceInfo = pStdReferenceInfo -# Extension: VK_EXT_texel_buffer_alignment -const VK_EXT_TEXEL_BUFFER_ALIGNMENT_SPEC_VERSION* = 1 -const VK_EXT_TEXEL_BUFFER_ALIGNMENT_EXTENSION_NAME* = "VK_EXT_texel_buffer_alignment" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT*: VkStructureType = VkStructureType(1000281000) -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES +proc newVkVideoSessionCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHR, 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 -# Extension: VK_QCOM_render_pass_transform -const VK_QCOM_RENDER_PASS_TRANSFORM_SPEC_VERSION* = 3 -const VK_QCOM_RENDER_PASS_TRANSFORM_EXTENSION_NAME* = "VK_QCOM_render_pass_transform" -const VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM*: VkStructureType = VkStructureType(1000282000) -const VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM*: VkStructureType = VkStructureType(1000282001) -const VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM*: VkRenderPassCreateFlagBits = VkRenderPassCreateFlagBits(2) +proc newVkVideoSessionParametersCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR, 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 -# Extension: VK_EXT_extension_284 -const VK_EXT_EXTENSION_284_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_284_EXTENSION_NAME* = "VK_EXT_extension_284" +proc newVkVideoSessionParametersUpdateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_UPDATE_INFO_KHR, pNext: pointer = nil, updateSequenceCount: uint32): VkVideoSessionParametersUpdateInfoKHR = + result.sType = sType + result.pNext = pNext + result.updateSequenceCount = updateSequenceCount -# Extension: VK_EXT_device_memory_report -const VK_EXT_DEVICE_MEMORY_REPORT_SPEC_VERSION* = 2 -const VK_EXT_DEVICE_MEMORY_REPORT_EXTENSION_NAME* = "VK_EXT_device_memory_report" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT*: VkStructureType = VkStructureType(1000284000) -const VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000284001) -const VK_STRUCTURE_TYPE_DEVICE_MEMORY_REPORT_CALLBACK_DATA_EXT*: VkStructureType = VkStructureType(1000284002) +proc newVkVideoEncodeSessionParametersGetInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_SESSION_PARAMETERS_GET_INFO_KHR, pNext: pointer = nil, videoSessionParameters: VkVideoSessionParametersKHR): VkVideoEncodeSessionParametersGetInfoKHR = + result.sType = sType + result.pNext = pNext + result.videoSessionParameters = videoSessionParameters -# Extension: VK_EXT_acquire_drm_display -const VK_EXT_ACQUIRE_DRM_DISPLAY_SPEC_VERSION* = 1 -const VK_EXT_ACQUIRE_DRM_DISPLAY_EXTENSION_NAME* = "VK_EXT_acquire_drm_display" +proc newVkVideoEncodeSessionParametersFeedbackInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_SESSION_PARAMETERS_FEEDBACK_INFO_KHR, pNext: pointer = nil, hasOverrides: VkBool32): VkVideoEncodeSessionParametersFeedbackInfoKHR = + result.sType = sType + result.pNext = pNext + result.hasOverrides = hasOverrides -# Extension: VK_EXT_robustness2 -const VK_EXT_ROBUSTNESS_2_SPEC_VERSION* = 1 -const VK_EXT_ROBUSTNESS_2_EXTENSION_NAME* = "VK_EXT_robustness2" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT*: VkStructureType = VkStructureType(1000286000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000286001) +proc newVkVideoBeginCodingInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_BEGIN_CODING_INFO_KHR, 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 -# Extension: VK_EXT_custom_border_color -const VK_EXT_CUSTOM_BORDER_COLOR_SPEC_VERSION* = 12 -const VK_EXT_CUSTOM_BORDER_COLOR_EXTENSION_NAME* = "VK_EXT_custom_border_color" -const VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000287000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000287001) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT*: VkStructureType = VkStructureType(1000287002) -const VK_BORDER_COLOR_FLOAT_CUSTOM_EXT*: VkBorderColor = VkBorderColor(1000287003) -const VK_BORDER_COLOR_INT_CUSTOM_EXT*: VkBorderColor = VkBorderColor(1000287004) +proc newVkVideoEndCodingInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_END_CODING_INFO_KHR, pNext: pointer = nil, flags: VkVideoEndCodingFlagsKHR = 0.VkVideoEndCodingFlagsKHR): VkVideoEndCodingInfoKHR = + result.sType = sType + result.pNext = pNext + result.flags = flags -# Extension: VK_EXT_extension_289 -const VK_EXT_EXTENSION_289_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_289_EXTENSION_NAME* = "VK_EXT_extension_289" -const VK_FORMAT_ASTC_3x3x3_UNORM_BLOCK_EXT*: VkFormat = VkFormat(1000288000) -const VK_FORMAT_ASTC_3x3x3_SRGB_BLOCK_EXT*: VkFormat = VkFormat(1000288001) -const VK_FORMAT_ASTC_3x3x3_SFLOAT_BLOCK_EXT*: VkFormat = VkFormat(1000288002) -const VK_FORMAT_ASTC_4x3x3_UNORM_BLOCK_EXT*: VkFormat = VkFormat(1000288003) -const VK_FORMAT_ASTC_4x3x3_SRGB_BLOCK_EXT*: VkFormat = VkFormat(1000288004) -const VK_FORMAT_ASTC_4x3x3_SFLOAT_BLOCK_EXT*: VkFormat = VkFormat(1000288005) -const VK_FORMAT_ASTC_4x4x3_UNORM_BLOCK_EXT*: VkFormat = VkFormat(1000288006) -const VK_FORMAT_ASTC_4x4x3_SRGB_BLOCK_EXT*: VkFormat = VkFormat(1000288007) -const VK_FORMAT_ASTC_4x4x3_SFLOAT_BLOCK_EXT*: VkFormat = VkFormat(1000288008) -const VK_FORMAT_ASTC_4x4x4_UNORM_BLOCK_EXT*: VkFormat = VkFormat(1000288009) -const VK_FORMAT_ASTC_4x4x4_SRGB_BLOCK_EXT*: VkFormat = VkFormat(1000288010) -const VK_FORMAT_ASTC_4x4x4_SFLOAT_BLOCK_EXT*: VkFormat = VkFormat(1000288011) -const VK_FORMAT_ASTC_5x4x4_UNORM_BLOCK_EXT*: VkFormat = VkFormat(1000288012) -const VK_FORMAT_ASTC_5x4x4_SRGB_BLOCK_EXT*: VkFormat = VkFormat(1000288013) -const VK_FORMAT_ASTC_5x4x4_SFLOAT_BLOCK_EXT*: VkFormat = VkFormat(1000288014) -const VK_FORMAT_ASTC_5x5x4_UNORM_BLOCK_EXT*: VkFormat = VkFormat(1000288015) -const VK_FORMAT_ASTC_5x5x4_SRGB_BLOCK_EXT*: VkFormat = VkFormat(1000288016) -const VK_FORMAT_ASTC_5x5x4_SFLOAT_BLOCK_EXT*: VkFormat = VkFormat(1000288017) -const VK_FORMAT_ASTC_5x5x5_UNORM_BLOCK_EXT*: VkFormat = VkFormat(1000288018) -const VK_FORMAT_ASTC_5x5x5_SRGB_BLOCK_EXT*: VkFormat = VkFormat(1000288019) -const VK_FORMAT_ASTC_5x5x5_SFLOAT_BLOCK_EXT*: VkFormat = VkFormat(1000288020) -const VK_FORMAT_ASTC_6x5x5_UNORM_BLOCK_EXT*: VkFormat = VkFormat(1000288021) -const VK_FORMAT_ASTC_6x5x5_SRGB_BLOCK_EXT*: VkFormat = VkFormat(1000288022) -const VK_FORMAT_ASTC_6x5x5_SFLOAT_BLOCK_EXT*: VkFormat = VkFormat(1000288023) -const VK_FORMAT_ASTC_6x6x5_UNORM_BLOCK_EXT*: VkFormat = VkFormat(1000288024) -const VK_FORMAT_ASTC_6x6x5_SRGB_BLOCK_EXT*: VkFormat = VkFormat(1000288025) -const VK_FORMAT_ASTC_6x6x5_SFLOAT_BLOCK_EXT*: VkFormat = VkFormat(1000288026) -const VK_FORMAT_ASTC_6x6x6_UNORM_BLOCK_EXT*: VkFormat = VkFormat(1000288027) -const VK_FORMAT_ASTC_6x6x6_SRGB_BLOCK_EXT*: VkFormat = VkFormat(1000288028) -const VK_FORMAT_ASTC_6x6x6_SFLOAT_BLOCK_EXT*: VkFormat = VkFormat(1000288029) +proc newVkVideoCodingControlInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_CODING_CONTROL_INFO_KHR, pNext: pointer = nil, flags: VkVideoCodingControlFlagsKHR = 0.VkVideoCodingControlFlagsKHR): VkVideoCodingControlInfoKHR = + result.sType = sType + result.pNext = pNext + result.flags = flags -# Extension: VK_GOOGLE_user_type -const VK_GOOGLE_USER_TYPE_SPEC_VERSION* = 1 -const VK_GOOGLE_USER_TYPE_EXTENSION_NAME* = "VK_GOOGLE_user_type" +proc newVkVideoEncodeUsageInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_USAGE_INFO_KHR, 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 -# Extension: VK_KHR_pipeline_library -const VK_KHR_PIPELINE_LIBRARY_SPEC_VERSION* = 1 -const VK_KHR_PIPELINE_LIBRARY_EXTENSION_NAME* = "VK_KHR_pipeline_library" -const VK_PIPELINE_CREATE_LIBRARY_BIT_KHR*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(2048) -const VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000290000) +proc newVkVideoEncodeInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR, 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 -# Extension: VK_NV_extension_292 -const VK_NV_EXTENSION_292_SPEC_VERSION* = 0 -const VK_NV_EXTENSION_292_EXTENSION_NAME* = "VK_NV_extension_292" +proc newVkQueryPoolVideoEncodeFeedbackCreateInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_QUERY_POOL_VIDEO_ENCODE_FEEDBACK_CREATE_INFO_KHR, pNext: pointer = nil, encodeFeedbackFlags: VkVideoEncodeFeedbackFlagsKHR): VkQueryPoolVideoEncodeFeedbackCreateInfoKHR = + result.sType = sType + result.pNext = pNext + result.encodeFeedbackFlags = encodeFeedbackFlags -# Extension: VK_NV_present_barrier -const VK_NV_PRESENT_BARRIER_SPEC_VERSION* = 1 -const VK_NV_PRESENT_BARRIER_EXTENSION_NAME* = "VK_NV_present_barrier" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_BARRIER_FEATURES_NV*: VkStructureType = VkStructureType(1000292000) -const VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_PRESENT_BARRIER_NV*: VkStructureType = VkStructureType(1000292001) -const VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_BARRIER_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000292002) +proc newVkVideoEncodeQualityLevelInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_QUALITY_LEVEL_INFO_KHR, pNext: pointer = nil, qualityLevel: uint32): VkVideoEncodeQualityLevelInfoKHR = + result.sType = sType + result.pNext = pNext + result.qualityLevel = qualityLevel -# Extension: VK_KHR_shader_non_semantic_info -const VK_KHR_SHADER_NON_SEMANTIC_INFO_SPEC_VERSION* = 1 -const VK_KHR_SHADER_NON_SEMANTIC_INFO_EXTENSION_NAME* = "VK_KHR_shader_non_semantic_info" +proc newVkPhysicalDeviceVideoEncodeQualityLevelInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_ENCODE_QUALITY_LEVEL_INFO_KHR, pNext: pointer = nil, pVideoProfile: ptr VkVideoProfileInfoKHR, qualityLevel: uint32): VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR = + result.sType = sType + result.pNext = pNext + result.pVideoProfile = pVideoProfile + result.qualityLevel = qualityLevel -# Extension: VK_KHR_present_id -const VK_KHR_PRESENT_ID_SPEC_VERSION* = 1 -const VK_KHR_PRESENT_ID_EXTENSION_NAME* = "VK_KHR_present_id" -const VK_STRUCTURE_TYPE_PRESENT_ID_KHR*: VkStructureType = VkStructureType(1000294000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR*: VkStructureType = VkStructureType(1000294001) +proc newVkVideoEncodeQualityLevelPropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_QUALITY_LEVEL_PROPERTIES_KHR, pNext: pointer = nil, preferredRateControlMode: VkVideoEncodeRateControlModeFlagBitsKHR, preferredRateControlLayerCount: uint32): VkVideoEncodeQualityLevelPropertiesKHR = + result.sType = sType + result.pNext = pNext + result.preferredRateControlMode = preferredRateControlMode + result.preferredRateControlLayerCount = preferredRateControlLayerCount -# Extension: VK_EXT_private_data -const VK_EXT_PRIVATE_DATA_SPEC_VERSION* = 1 -const VK_EXT_PRIVATE_DATA_EXTENSION_NAME* = "VK_EXT_private_data" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES -template VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT* = - VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO -template VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT* = - VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO -template VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT* = - VK_OBJECT_TYPE_PRIVATE_DATA_SLOT +proc newVkVideoEncodeRateControlInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR, 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 -# Extension: VK_KHR_extension_297 -const VK_KHR_EXTENSION_297_SPEC_VERSION* = 0 -const VK_KHR_EXTENSION_297_EXTENSION_NAME* = "VK_KHR_extension_297" -const VK_PIPELINE_SHADER_STAGE_CREATE_RESERVED_3_BIT_KHR*: VkPipelineShaderStageCreateFlagBits = VkPipelineShaderStageCreateFlagBits(8) +proc newVkVideoEncodeRateControlLayerInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR, 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 -# Extension: VK_EXT_pipeline_creation_cache_control -const VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_SPEC_VERSION* = 3 -const VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_EXTENSION_NAME* = "VK_EXT_pipeline_creation_cache_control" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES -template VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT* = - VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT -template VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT* = - VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT -template VK_PIPELINE_COMPILE_REQUIRED_EXT* = - VK_PIPELINE_COMPILE_REQUIRED -template VK_ERROR_PIPELINE_COMPILE_REQUIRED_EXT* = - VK_PIPELINE_COMPILE_REQUIRED -template VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT* = - VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT +proc newVkVideoEncodeCapabilitiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_CAPABILITIES_KHR, 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 -# Extension: VK_KHR_extension_299 -const VK_KHR_EXTENSION_299_SPEC_VERSION* = 0 -const VK_KHR_EXTENSION_299_EXTENSION_NAME* = "VK_KHR_extension_299" +proc newVkVideoEncodeH264CapabilitiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT, pNext: pointer = nil, flags: VkVideoEncodeH264CapabilityFlagsEXT = 0.VkVideoEncodeH264CapabilityFlagsEXT, maxLevelIdc: StdVideoH264LevelIdc, maxSliceCount: uint32, maxPPictureL0ReferenceCount: uint32, maxBPictureL0ReferenceCount: uint32, maxL1ReferenceCount: uint32, maxTemporalLayerCount: uint32, expectDyadicTemporalLayerPattern: VkBool32, minQp: int32, maxQp: int32, prefersGopRemainingFrames: VkBool32, requiresGopRemainingFrames: VkBool32, stdSyntaxFlags: VkVideoEncodeH264StdFlagsEXT): VkVideoEncodeH264CapabilitiesEXT = + 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 -# Extension: VK_KHR_video_encode_queue -const VK_KHR_VIDEO_ENCODE_QUEUE_SPEC_VERSION* = 8 -const VK_KHR_VIDEO_ENCODE_QUEUE_EXTENSION_NAME* = "VK_KHR_video_encode_queue" -const VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(134217728) -const VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR*: VkAccessFlagBits2 = VkAccessFlagBits2(137438953472) -const VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR*: VkAccessFlagBits2 = VkAccessFlagBits2(274877906944) -const VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR*: VkStructureType = VkStructureType(1000299000) -const VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR*: VkStructureType = VkStructureType(1000299001) -const VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR*: VkStructureType = VkStructureType(1000299002) -const VK_STRUCTURE_TYPE_VIDEO_ENCODE_CAPABILITIES_KHR*: VkStructureType = VkStructureType(1000299003) -const VK_STRUCTURE_TYPE_VIDEO_ENCODE_USAGE_INFO_KHR*: VkStructureType = VkStructureType(1000299004) -const VK_STRUCTURE_TYPE_QUERY_POOL_VIDEO_ENCODE_FEEDBACK_CREATE_INFO_KHR*: VkStructureType = VkStructureType(1000299005) -const VK_QUEUE_VIDEO_ENCODE_BIT_KHR*: VkQueueFlagBits = VkQueueFlagBits(64) -const VK_VIDEO_CODING_CONTROL_ENCODE_RATE_CONTROL_BIT_KHR*: VkVideoCodingControlFlagBitsKHR = VkVideoCodingControlFlagBitsKHR(2) -const VK_VIDEO_CODING_CONTROL_ENCODE_RATE_CONTROL_LAYER_BIT_KHR*: VkVideoCodingControlFlagBitsKHR = VkVideoCodingControlFlagBitsKHR(4) -const VK_BUFFER_USAGE_VIDEO_ENCODE_DST_BIT_KHR*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(32768) -const VK_BUFFER_USAGE_VIDEO_ENCODE_SRC_BIT_KHR*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(65536) -const VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR*: VkImageUsageFlagBits = VkImageUsageFlagBits(8192) -const VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR*: VkImageUsageFlagBits = VkImageUsageFlagBits(16384) -const VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR*: VkImageUsageFlagBits = VkImageUsageFlagBits(32768) -const VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(134217728) -const VK_FORMAT_FEATURE_VIDEO_ENCODE_DPB_BIT_KHR*: VkFormatFeatureFlagBits = VkFormatFeatureFlagBits(268435456) -const VK_IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR*: VkImageLayout = VkImageLayout(1000299000) -const VK_IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR*: VkImageLayout = VkImageLayout(1000299001) -const VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR*: VkImageLayout = VkImageLayout(1000299002) -const VK_QUERY_TYPE_VIDEO_ENCODE_FEEDBACK_KHR*: VkQueryType = VkQueryType(1000299000) -const VK_ERROR_INVALID_VIDEO_STD_PARAMETERS_KHR*: VkResult = VkResult(-1000299000) -const VK_FORMAT_FEATURE_2_VIDEO_ENCODE_INPUT_BIT_KHR*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(134217728) -const VK_FORMAT_FEATURE_2_VIDEO_ENCODE_DPB_BIT_KHR*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(268435456) +proc newVkVideoEncodeH264QualityLevelPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_QUALITY_LEVEL_PROPERTIES_EXT, pNext: pointer = nil, preferredRateControlFlags: VkVideoEncodeH264RateControlFlagsEXT, preferredGopFrameCount: uint32, preferredIdrPeriod: uint32, preferredConsecutiveBFrameCount: uint32, preferredTemporalLayerCount: uint32, preferredConstantQp: VkVideoEncodeH264QpEXT, preferredMaxL0ReferenceCount: uint32, preferredMaxL1ReferenceCount: uint32, preferredStdEntropyCodingModeFlag: VkBool32): VkVideoEncodeH264QualityLevelPropertiesEXT = + 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 -# Extension: VK_NV_device_diagnostics_config -const VK_NV_DEVICE_DIAGNOSTICS_CONFIG_SPEC_VERSION* = 2 -const VK_NV_DEVICE_DIAGNOSTICS_CONFIG_EXTENSION_NAME* = "VK_NV_device_diagnostics_config" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV*: VkStructureType = VkStructureType(1000300000) -const VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000300001) +proc newVkVideoEncodeH264SessionCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_CREATE_INFO_EXT, pNext: pointer = nil, useMaxLevelIdc: VkBool32, maxLevelIdc: StdVideoH264LevelIdc): VkVideoEncodeH264SessionCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.useMaxLevelIdc = useMaxLevelIdc + result.maxLevelIdc = maxLevelIdc -# Extension: VK_QCOM_render_pass_store_ops -const VK_QCOM_RENDER_PASS_STORE_OPS_SPEC_VERSION* = 2 -const VK_QCOM_RENDER_PASS_STORE_OPS_EXTENSION_NAME* = "VK_QCOM_render_pass_store_ops" -template VK_ATTACHMENT_STORE_OP_NONE_QCOM* = - VK_ATTACHMENT_STORE_OP_NONE +proc newVkVideoEncodeH264SessionParametersAddInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT, pNext: pointer = nil, stdSPSCount: uint32, pStdSPSs: ptr StdVideoH264SequenceParameterSet, stdPPSCount: uint32, pStdPPSs: ptr StdVideoH264PictureParameterSet): VkVideoEncodeH264SessionParametersAddInfoEXT = + result.sType = sType + result.pNext = pNext + result.stdSPSCount = stdSPSCount + result.pStdSPSs = pStdSPSs + result.stdPPSCount = stdPPSCount + result.pStdPPSs = pStdPPSs -# Extension: VK_QCOM_extension_303 -const VK_QCOM_EXTENSION_303_SPEC_VERSION* = 0 -const VK_QCOM_EXTENSION_303_EXTENSION_NAME* = "VK_QCOM_extension_303" +proc newVkVideoEncodeH264SessionParametersCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT, pNext: pointer = nil, maxStdSPSCount: uint32, maxStdPPSCount: uint32, pParametersAddInfo: ptr VkVideoEncodeH264SessionParametersAddInfoEXT): VkVideoEncodeH264SessionParametersCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.maxStdSPSCount = maxStdSPSCount + result.maxStdPPSCount = maxStdPPSCount + result.pParametersAddInfo = pParametersAddInfo -# Extension: VK_QCOM_extension_304 -const VK_QCOM_EXTENSION_304_SPEC_VERSION* = 0 -const VK_QCOM_EXTENSION_304_EXTENSION_NAME* = "VK_QCOM_extension_304" +proc newVkVideoEncodeH264SessionParametersGetInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_GET_INFO_EXT, pNext: pointer = nil, writeStdSPS: VkBool32, writeStdPPS: VkBool32, stdSPSId: uint32, stdPPSId: uint32): VkVideoEncodeH264SessionParametersGetInfoEXT = + result.sType = sType + result.pNext = pNext + result.writeStdSPS = writeStdSPS + result.writeStdPPS = writeStdPPS + result.stdSPSId = stdSPSId + result.stdPPSId = stdPPSId -# Extension: VK_QCOM_extension_305 -const VK_QCOM_EXTENSION_305_SPEC_VERSION* = 0 -const VK_QCOM_EXTENSION_305_EXTENSION_NAME* = "VK_QCOM_extension_305" +proc newVkVideoEncodeH264SessionParametersFeedbackInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_FEEDBACK_INFO_EXT, pNext: pointer = nil, hasStdSPSOverrides: VkBool32, hasStdPPSOverrides: VkBool32): VkVideoEncodeH264SessionParametersFeedbackInfoEXT = + result.sType = sType + result.pNext = pNext + result.hasStdSPSOverrides = hasStdSPSOverrides + result.hasStdPPSOverrides = hasStdPPSOverrides -# Extension: VK_QCOM_extension_306 -const VK_QCOM_EXTENSION_306_SPEC_VERSION* = 0 -const VK_QCOM_EXTENSION_306_EXTENSION_NAME* = "VK_QCOM_extension_306" +proc newVkVideoEncodeH264DpbSlotInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_EXT, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoEncodeH264ReferenceInfo): VkVideoEncodeH264DpbSlotInfoEXT = + result.sType = sType + result.pNext = pNext + result.pStdReferenceInfo = pStdReferenceInfo -# Extension: VK_QCOM_extension_307 -const VK_QCOM_EXTENSION_307_SPEC_VERSION* = 0 -const VK_QCOM_EXTENSION_307_EXTENSION_NAME* = "VK_QCOM_extension_307" +proc newVkVideoEncodeH264PictureInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PICTURE_INFO_EXT, pNext: pointer = nil, naluSliceEntryCount: uint32, pNaluSliceEntries: ptr VkVideoEncodeH264NaluSliceInfoEXT, pStdPictureInfo: ptr StdVideoEncodeH264PictureInfo, generatePrefixNalu: VkBool32): VkVideoEncodeH264PictureInfoEXT = + result.sType = sType + result.pNext = pNext + result.naluSliceEntryCount = naluSliceEntryCount + result.pNaluSliceEntries = pNaluSliceEntries + result.pStdPictureInfo = pStdPictureInfo + result.generatePrefixNalu = generatePrefixNalu -# Extension: VK_NV_extension_308 -const VK_NV_EXTENSION_308_SPEC_VERSION* = 0 -const VK_NV_EXTENSION_308_EXTENSION_NAME* = "VK_NV_extension_308" +proc newVkVideoEncodeH264ProfileInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_INFO_EXT, pNext: pointer = nil, stdProfileIdc: StdVideoH264ProfileIdc): VkVideoEncodeH264ProfileInfoEXT = + result.sType = sType + result.pNext = pNext + result.stdProfileIdc = stdProfileIdc -# Extension: VK_KHR_object_refresh -const VK_KHR_OBJECT_REFRESH_SPEC_VERSION* = 1 -const VK_KHR_OBJECT_REFRESH_EXTENSION_NAME* = "VK_KHR_object_refresh" -const VK_STRUCTURE_TYPE_REFRESH_OBJECT_LIST_KHR*: VkStructureType = VkStructureType(1000308000) +proc newVkVideoEncodeH264NaluSliceInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_INFO_EXT, pNext: pointer = nil, constantQp: int32, pStdSliceHeader: ptr StdVideoEncodeH264SliceHeader): VkVideoEncodeH264NaluSliceInfoEXT = + result.sType = sType + result.pNext = pNext + result.constantQp = constantQp + result.pStdSliceHeader = pStdSliceHeader -# Extension: VK_QCOM_extension_310 -const VK_QCOM_EXTENSION_310_SPEC_VERSION* = 0 -const VK_QCOM_EXTENSION_310_EXTENSION_NAME* = "VK_QCOM_extension_310" -const VK_STRUCTURE_TYPE_RESERVED_QCOM*: VkStructureType = VkStructureType(1000309000) +proc newVkVideoEncodeH264RateControlInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_INFO_EXT, pNext: pointer = nil, flags: VkVideoEncodeH264RateControlFlagsEXT = 0.VkVideoEncodeH264RateControlFlagsEXT, gopFrameCount: uint32, idrPeriod: uint32, consecutiveBFrameCount: uint32, temporalLayerCount: uint32): VkVideoEncodeH264RateControlInfoEXT = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.gopFrameCount = gopFrameCount + result.idrPeriod = idrPeriod + result.consecutiveBFrameCount = consecutiveBFrameCount + result.temporalLayerCount = temporalLayerCount -# Extension: VK_NV_low_latency -const VK_NV_LOW_LATENCY_SPEC_VERSION* = 1 -const VK_NV_LOW_LATENCY_EXTENSION_NAME* = "VK_NV_low_latency" -const VK_STRUCTURE_TYPE_QUERY_LOW_LATENCY_SUPPORT_NV*: VkStructureType = VkStructureType(1000310000) +proc newVkVideoEncodeH264QpEXT*(qpI: int32, qpP: int32, qpB: int32): VkVideoEncodeH264QpEXT = + result.qpI = qpI + result.qpP = qpP + result.qpB = qpB -# Extension: VK_EXT_metal_objects -const VK_EXT_METAL_OBJECTS_SPEC_VERSION* = 1 -const VK_EXT_METAL_OBJECTS_EXTENSION_NAME* = "VK_EXT_metal_objects" -const VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECT_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000311000) -const VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECTS_INFO_EXT*: VkStructureType = VkStructureType(1000311001) -const VK_STRUCTURE_TYPE_EXPORT_METAL_DEVICE_INFO_EXT*: VkStructureType = VkStructureType(1000311002) -const VK_STRUCTURE_TYPE_EXPORT_METAL_COMMAND_QUEUE_INFO_EXT*: VkStructureType = VkStructureType(1000311003) -const VK_STRUCTURE_TYPE_EXPORT_METAL_BUFFER_INFO_EXT*: VkStructureType = VkStructureType(1000311004) -const VK_STRUCTURE_TYPE_IMPORT_METAL_BUFFER_INFO_EXT*: VkStructureType = VkStructureType(1000311005) -const VK_STRUCTURE_TYPE_EXPORT_METAL_TEXTURE_INFO_EXT*: VkStructureType = VkStructureType(1000311006) -const VK_STRUCTURE_TYPE_IMPORT_METAL_TEXTURE_INFO_EXT*: VkStructureType = VkStructureType(1000311007) -const VK_STRUCTURE_TYPE_EXPORT_METAL_IO_SURFACE_INFO_EXT*: VkStructureType = VkStructureType(1000311008) -const VK_STRUCTURE_TYPE_IMPORT_METAL_IO_SURFACE_INFO_EXT*: VkStructureType = VkStructureType(1000311009) -const VK_STRUCTURE_TYPE_EXPORT_METAL_SHARED_EVENT_INFO_EXT*: VkStructureType = VkStructureType(1000311010) -const VK_STRUCTURE_TYPE_IMPORT_METAL_SHARED_EVENT_INFO_EXT*: VkStructureType = VkStructureType(1000311011) +proc newVkVideoEncodeH264FrameSizeEXT*(frameISize: uint32, framePSize: uint32, frameBSize: uint32): VkVideoEncodeH264FrameSizeEXT = + result.frameISize = frameISize + result.framePSize = framePSize + result.frameBSize = frameBSize -# Extension: VK_EXT_extension_313 -const VK_EXT_EXTENSION_313_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_313_EXTENSION_NAME* = "VK_EXT_extension_313" +proc newVkVideoEncodeH264GopRemainingFrameInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_GOP_REMAINING_FRAME_INFO_EXT, pNext: pointer = nil, useGopRemainingFrames: VkBool32, gopRemainingI: uint32, gopRemainingP: uint32, gopRemainingB: uint32): VkVideoEncodeH264GopRemainingFrameInfoEXT = + result.sType = sType + result.pNext = pNext + result.useGopRemainingFrames = useGopRemainingFrames + result.gopRemainingI = gopRemainingI + result.gopRemainingP = gopRemainingP + result.gopRemainingB = gopRemainingB -# Extension: VK_AMD_extension_314 -const VK_AMD_EXTENSION_314_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_314_EXTENSION_NAME* = "VK_AMD_extension_314" +proc newVkVideoEncodeH264RateControlLayerInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_EXT, pNext: pointer = nil, useMinQp: VkBool32, minQp: VkVideoEncodeH264QpEXT, useMaxQp: VkBool32, maxQp: VkVideoEncodeH264QpEXT, useMaxFrameSize: VkBool32, maxFrameSize: VkVideoEncodeH264FrameSizeEXT): VkVideoEncodeH264RateControlLayerInfoEXT = + 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 newVkVideoEncodeH265CapabilitiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT, pNext: pointer = nil, flags: VkVideoEncodeH265CapabilityFlagsEXT = 0.VkVideoEncodeH265CapabilityFlagsEXT, maxLevelIdc: StdVideoH265LevelIdc, maxSliceSegmentCount: uint32, maxTiles: VkExtent2D, ctbSizes: VkVideoEncodeH265CtbSizeFlagsEXT, transformBlockSizes: VkVideoEncodeH265TransformBlockSizeFlagsEXT, maxPPictureL0ReferenceCount: uint32, maxBPictureL0ReferenceCount: uint32, maxL1ReferenceCount: uint32, maxSubLayerCount: uint32, expectDyadicTemporalSubLayerPattern: VkBool32, minQp: int32, maxQp: int32, prefersGopRemainingFrames: VkBool32, requiresGopRemainingFrames: VkBool32, stdSyntaxFlags: VkVideoEncodeH265StdFlagsEXT): VkVideoEncodeH265CapabilitiesEXT = + 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 -# Extension: VK_KHR_synchronization2 -const VK_KHR_SYNCHRONIZATION_2_SPEC_VERSION* = 1 -const VK_KHR_SYNCHRONIZATION_2_EXTENSION_NAME* = "VK_KHR_synchronization2" -template VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR* = - VK_STRUCTURE_TYPE_MEMORY_BARRIER_2 -template VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2_KHR* = - VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2 -template VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2_KHR* = - VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2 -template VK_STRUCTURE_TYPE_DEPENDENCY_INFO_KHR* = - VK_STRUCTURE_TYPE_DEPENDENCY_INFO -template VK_STRUCTURE_TYPE_SUBMIT_INFO_2_KHR* = - VK_STRUCTURE_TYPE_SUBMIT_INFO_2 -template VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO_KHR* = - VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO -template VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO_KHR* = - VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES -template VK_EVENT_CREATE_DEVICE_ONLY_BIT_KHR* = - VK_EVENT_CREATE_DEVICE_ONLY_BIT -template VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL_KHR* = - VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL -template VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL_KHR* = - VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL -template VK_PIPELINE_STAGE_NONE_KHR* = - VK_PIPELINE_STAGE_NONE -template VK_ACCESS_NONE_KHR* = - VK_ACCESS_NONE -const VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(16777216) -const VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT*: VkAccessFlagBits2 = VkAccessFlagBits2(33554432) -const VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT*: VkAccessFlagBits2 = VkAccessFlagBits2(67108864) -const VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT*: VkAccessFlagBits2 = VkAccessFlagBits2(134217728) -const VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(262144) -const VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT*: VkAccessFlagBits2 = VkAccessFlagBits2(1048576) -const VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(131072) -const VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV*: VkAccessFlagBits2 = VkAccessFlagBits2(131072) -const VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV*: VkAccessFlagBits2 = VkAccessFlagBits2(262144) -const VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(4194304) -const VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR*: VkAccessFlagBits2 = VkAccessFlagBits2(8388608) -template VK_PIPELINE_STAGE_2_SHADING_RATE_IMAGE_BIT_NV* = - VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR -template VK_ACCESS_2_SHADING_RATE_IMAGE_READ_BIT_NV* = - VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR -const VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(33554432) -const VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR*: VkAccessFlagBits2 = VkAccessFlagBits2(2097152) -const VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR*: VkAccessFlagBits2 = VkAccessFlagBits2(4194304) -const VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(2097152) -template VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_NV* = - VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR -template VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_NV* = - VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR -template VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_NV* = - VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR -template VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_NV* = - VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR -const VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(8388608) -const VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT*: VkAccessFlagBits2 = VkAccessFlagBits2(16777216) -const VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT*: VkAccessFlagBits2 = VkAccessFlagBits2(524288) -template VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV* = - VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_EXT -template VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV* = - VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_EXT -const VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV*: VkStructureType = VkStructureType(1000314008) -const VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV*: VkStructureType = VkStructureType(1000314009) -const VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_EXT*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(524288) -const VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_EXT*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(1048576) +proc newVkVideoEncodeH265QualityLevelPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_QUALITY_LEVEL_PROPERTIES_EXT, pNext: pointer = nil, preferredRateControlFlags: VkVideoEncodeH265RateControlFlagsEXT, preferredGopFrameCount: uint32, preferredIdrPeriod: uint32, preferredConsecutiveBFrameCount: uint32, preferredSubLayerCount: uint32, preferredConstantQp: VkVideoEncodeH265QpEXT, preferredMaxL0ReferenceCount: uint32, preferredMaxL1ReferenceCount: uint32): VkVideoEncodeH265QualityLevelPropertiesEXT = + 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 -# Extension: VK_AMD_extension_316 -const VK_AMD_EXTENSION_316_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_316_EXTENSION_NAME* = "VK_AMD_extension_316" +proc newVkVideoEncodeH265SessionCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_CREATE_INFO_EXT, pNext: pointer = nil, useMaxLevelIdc: VkBool32, maxLevelIdc: StdVideoH265LevelIdc): VkVideoEncodeH265SessionCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.useMaxLevelIdc = useMaxLevelIdc + result.maxLevelIdc = maxLevelIdc -# Extension: VK_EXT_descriptor_buffer -const VK_EXT_DESCRIPTOR_BUFFER_SPEC_VERSION* = 1 -const VK_EXT_DESCRIPTOR_BUFFER_EXTENSION_NAME* = "VK_EXT_descriptor_buffer" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000316000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_DENSITY_MAP_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000316001) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_FEATURES_EXT*: VkStructureType = VkStructureType(1000316002) -const VK_STRUCTURE_TYPE_DESCRIPTOR_ADDRESS_INFO_EXT*: VkStructureType = VkStructureType(1000316003) -const VK_STRUCTURE_TYPE_DESCRIPTOR_GET_INFO_EXT*: VkStructureType = VkStructureType(1000316004) -const VK_STRUCTURE_TYPE_BUFFER_CAPTURE_DESCRIPTOR_DATA_INFO_EXT*: VkStructureType = VkStructureType(1000316005) -const VK_STRUCTURE_TYPE_IMAGE_CAPTURE_DESCRIPTOR_DATA_INFO_EXT*: VkStructureType = VkStructureType(1000316006) -const VK_STRUCTURE_TYPE_IMAGE_VIEW_CAPTURE_DESCRIPTOR_DATA_INFO_EXT*: VkStructureType = VkStructureType(1000316007) -const VK_STRUCTURE_TYPE_SAMPLER_CAPTURE_DESCRIPTOR_DATA_INFO_EXT*: VkStructureType = VkStructureType(1000316008) -const VK_STRUCTURE_TYPE_OPAQUE_CAPTURE_DESCRIPTOR_DATA_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000316010) -const VK_STRUCTURE_TYPE_DESCRIPTOR_BUFFER_BINDING_INFO_EXT*: VkStructureType = VkStructureType(1000316011) -const VK_STRUCTURE_TYPE_DESCRIPTOR_BUFFER_BINDING_PUSH_DESCRIPTOR_BUFFER_HANDLE_EXT*: VkStructureType = VkStructureType(1000316012) -const VK_DESCRIPTOR_SET_LAYOUT_CREATE_DESCRIPTOR_BUFFER_BIT_EXT*: VkDescriptorSetLayoutCreateFlagBits = VkDescriptorSetLayoutCreateFlagBits(16) -const VK_DESCRIPTOR_SET_LAYOUT_CREATE_EMBEDDED_IMMUTABLE_SAMPLERS_BIT_EXT*: VkDescriptorSetLayoutCreateFlagBits = VkDescriptorSetLayoutCreateFlagBits(32) -const VK_BUFFER_USAGE_SAMPLER_DESCRIPTOR_BUFFER_BIT_EXT*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(2097152) -const VK_BUFFER_USAGE_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(4194304) -const VK_BUFFER_USAGE_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXT*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(67108864) -const VK_BUFFER_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT*: VkBufferCreateFlagBits = VkBufferCreateFlagBits(32) -const VK_IMAGE_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT*: VkImageCreateFlagBits = VkImageCreateFlagBits(65536) -const VK_IMAGE_VIEW_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT*: VkImageViewCreateFlagBits = VkImageViewCreateFlagBits(4) -const VK_SAMPLER_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT*: VkSamplerCreateFlagBits = VkSamplerCreateFlagBits(8) -const VK_ACCELERATION_STRUCTURE_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT*: VkAccelerationStructureCreateFlagBitsKHR = VkAccelerationStructureCreateFlagBitsKHR(8) -const VK_ACCESS_2_DESCRIPTOR_BUFFER_READ_BIT_EXT*: VkAccessFlagBits2 = VkAccessFlagBits2(2199023255552) -const VK_PIPELINE_CREATE_DESCRIPTOR_BUFFER_BIT_EXT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(536870912) -const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CAPTURE_DESCRIPTOR_DATA_INFO_EXT*: VkStructureType = VkStructureType(1000316009) +proc newVkVideoEncodeH265SessionParametersAddInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT, pNext: pointer = nil, stdVPSCount: uint32, pStdVPSs: ptr StdVideoH265VideoParameterSet, stdSPSCount: uint32, pStdSPSs: ptr StdVideoH265SequenceParameterSet, stdPPSCount: uint32, pStdPPSs: ptr StdVideoH265PictureParameterSet): VkVideoEncodeH265SessionParametersAddInfoEXT = + result.sType = sType + result.pNext = pNext + result.stdVPSCount = stdVPSCount + result.pStdVPSs = pStdVPSs + result.stdSPSCount = stdSPSCount + result.pStdSPSs = pStdSPSs + result.stdPPSCount = stdPPSCount + result.pStdPPSs = pStdPPSs -# Extension: VK_AMD_extension_318 -const VK_AMD_EXTENSION_318_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_318_EXTENSION_NAME* = "VK_AMD_extension_318" +proc newVkVideoEncodeH265SessionParametersCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT, pNext: pointer = nil, maxStdVPSCount: uint32, maxStdSPSCount: uint32, maxStdPPSCount: uint32, pParametersAddInfo: ptr VkVideoEncodeH265SessionParametersAddInfoEXT): VkVideoEncodeH265SessionParametersCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.maxStdVPSCount = maxStdVPSCount + result.maxStdSPSCount = maxStdSPSCount + result.maxStdPPSCount = maxStdPPSCount + result.pParametersAddInfo = pParametersAddInfo -# Extension: VK_AMD_extension_319 -const VK_AMD_EXTENSION_319_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_319_EXTENSION_NAME* = "VK_AMD_extension_319" -const VK_DESCRIPTOR_SET_LAYOUT_CREATE_RESERVED_3_BIT_AMD*: VkDescriptorSetLayoutCreateFlagBits = VkDescriptorSetLayoutCreateFlagBits(8) -const VK_PIPELINE_LAYOUT_CREATE_RESERVED_0_BIT_AMD*: VkPipelineLayoutCreateFlagBits = VkPipelineLayoutCreateFlagBits(1) +proc newVkVideoEncodeH265SessionParametersGetInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_GET_INFO_EXT, pNext: pointer = nil, writeStdVPS: VkBool32, writeStdSPS: VkBool32, writeStdPPS: VkBool32, stdVPSId: uint32, stdSPSId: uint32, stdPPSId: uint32): VkVideoEncodeH265SessionParametersGetInfoEXT = + result.sType = sType + result.pNext = pNext + result.writeStdVPS = writeStdVPS + result.writeStdSPS = writeStdSPS + result.writeStdPPS = writeStdPPS + result.stdVPSId = stdVPSId + result.stdSPSId = stdSPSId + result.stdPPSId = stdPPSId -# Extension: VK_AMD_extension_320 -const VK_AMD_EXTENSION_320_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_320_EXTENSION_NAME* = "VK_AMD_extension_320" +proc newVkVideoEncodeH265SessionParametersFeedbackInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_FEEDBACK_INFO_EXT, pNext: pointer = nil, hasStdVPSOverrides: VkBool32, hasStdSPSOverrides: VkBool32, hasStdPPSOverrides: VkBool32): VkVideoEncodeH265SessionParametersFeedbackInfoEXT = + result.sType = sType + result.pNext = pNext + result.hasStdVPSOverrides = hasStdVPSOverrides + result.hasStdSPSOverrides = hasStdSPSOverrides + result.hasStdPPSOverrides = hasStdPPSOverrides -# Extension: VK_EXT_graphics_pipeline_library -const VK_EXT_GRAPHICS_PIPELINE_LIBRARY_SPEC_VERSION* = 1 -const VK_EXT_GRAPHICS_PIPELINE_LIBRARY_EXTENSION_NAME* = "VK_EXT_graphics_pipeline_library" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT*: VkStructureType = VkStructureType(1000320000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000320001) -const VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000320002) -const VK_PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(8388608) -const VK_PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(1024) -const VK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT*: VkPipelineLayoutCreateFlagBits = VkPipelineLayoutCreateFlagBits(2) +proc newVkVideoEncodeH265PictureInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PICTURE_INFO_EXT, pNext: pointer = nil, naluSliceSegmentEntryCount: uint32, pNaluSliceSegmentEntries: ptr VkVideoEncodeH265NaluSliceSegmentInfoEXT, pStdPictureInfo: ptr StdVideoEncodeH265PictureInfo): VkVideoEncodeH265PictureInfoEXT = + result.sType = sType + result.pNext = pNext + result.naluSliceSegmentEntryCount = naluSliceSegmentEntryCount + result.pNaluSliceSegmentEntries = pNaluSliceSegmentEntries + result.pStdPictureInfo = pStdPictureInfo -# Extension: VK_AMD_shader_early_and_late_fragment_tests -const VK_AMD_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_SPEC_VERSION* = 1 -const VK_AMD_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_EXTENSION_NAME* = "VK_AMD_shader_early_and_late_fragment_tests" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD*: VkStructureType = VkStructureType(1000321000) +proc newVkVideoEncodeH265NaluSliceSegmentInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_NALU_SLICE_SEGMENT_INFO_EXT, pNext: pointer = nil, constantQp: int32, pStdSliceSegmentHeader: ptr StdVideoEncodeH265SliceSegmentHeader): VkVideoEncodeH265NaluSliceSegmentInfoEXT = + result.sType = sType + result.pNext = pNext + result.constantQp = constantQp + result.pStdSliceSegmentHeader = pStdSliceSegmentHeader -# Extension: VK_KHR_fragment_shader_barycentric -const VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION* = 1 -const VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME* = "VK_KHR_fragment_shader_barycentric" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR*: VkStructureType = VkStructureType(1000203000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR*: VkStructureType = VkStructureType(1000322000) +proc newVkVideoEncodeH265RateControlInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_INFO_EXT, pNext: pointer = nil, flags: VkVideoEncodeH265RateControlFlagsEXT = 0.VkVideoEncodeH265RateControlFlagsEXT, gopFrameCount: uint32, idrPeriod: uint32, consecutiveBFrameCount: uint32, subLayerCount: uint32): VkVideoEncodeH265RateControlInfoEXT = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.gopFrameCount = gopFrameCount + result.idrPeriod = idrPeriod + result.consecutiveBFrameCount = consecutiveBFrameCount + result.subLayerCount = subLayerCount -# Extension: VK_KHR_shader_subgroup_uniform_control_flow -const VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_SPEC_VERSION* = 1 -const VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME* = "VK_KHR_shader_subgroup_uniform_control_flow" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR*: VkStructureType = VkStructureType(1000323000) +proc newVkVideoEncodeH265QpEXT*(qpI: int32, qpP: int32, qpB: int32): VkVideoEncodeH265QpEXT = + result.qpI = qpI + result.qpP = qpP + result.qpB = qpB -# Extension: VK_KHR_extension_325 -const VK_KHR_EXTENSION_325_SPEC_VERSION* = 0 -const VK_KHR_EXTENSION_325_EXTENSION_NAME* = "VK_KHR_extension_325" +proc newVkVideoEncodeH265FrameSizeEXT*(frameISize: uint32, framePSize: uint32, frameBSize: uint32): VkVideoEncodeH265FrameSizeEXT = + result.frameISize = frameISize + result.framePSize = framePSize + result.frameBSize = frameBSize -# Extension: VK_KHR_zero_initialize_workgroup_memory -const VK_KHR_ZERO_INITIALIZE_WORKGROUP_MEMORY_SPEC_VERSION* = 1 -const VK_KHR_ZERO_INITIALIZE_WORKGROUP_MEMORY_EXTENSION_NAME* = "VK_KHR_zero_initialize_workgroup_memory" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES +proc newVkVideoEncodeH265GopRemainingFrameInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_GOP_REMAINING_FRAME_INFO_EXT, pNext: pointer = nil, useGopRemainingFrames: VkBool32, gopRemainingI: uint32, gopRemainingP: uint32, gopRemainingB: uint32): VkVideoEncodeH265GopRemainingFrameInfoEXT = + result.sType = sType + result.pNext = pNext + result.useGopRemainingFrames = useGopRemainingFrames + result.gopRemainingI = gopRemainingI + result.gopRemainingP = gopRemainingP + result.gopRemainingB = gopRemainingB -# Extension: VK_NV_fragment_shading_rate_enums -const VK_NV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION* = 1 -const VK_NV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME* = "VK_NV_fragment_shading_rate_enums" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV*: VkStructureType = VkStructureType(1000326000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV*: VkStructureType = VkStructureType(1000326001) -const VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000326002) +proc newVkVideoEncodeH265RateControlLayerInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_EXT, pNext: pointer = nil, useMinQp: VkBool32, minQp: VkVideoEncodeH265QpEXT, useMaxQp: VkBool32, maxQp: VkVideoEncodeH265QpEXT, useMaxFrameSize: VkBool32, maxFrameSize: VkVideoEncodeH265FrameSizeEXT): VkVideoEncodeH265RateControlLayerInfoEXT = + result.sType = sType + result.pNext = pNext + result.useMinQp = useMinQp + result.minQp = minQp + result.useMaxQp = useMaxQp + result.maxQp = maxQp + result.useMaxFrameSize = useMaxFrameSize + result.maxFrameSize = maxFrameSize -# Extension: VK_NV_ray_tracing_motion_blur -const VK_NV_RAY_TRACING_MOTION_BLUR_SPEC_VERSION* = 1 -const VK_NV_RAY_TRACING_MOTION_BLUR_EXTENSION_NAME* = "VK_NV_ray_tracing_motion_blur" -const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV*: VkStructureType = VkStructureType(1000327000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV*: VkStructureType = VkStructureType(1000327001) -const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV*: VkStructureType = VkStructureType(1000327002) -const VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV*: VkBuildAccelerationStructureFlagBitsKHR = VkBuildAccelerationStructureFlagBitsKHR(32) -const VK_ACCELERATION_STRUCTURE_CREATE_MOTION_BIT_NV*: VkAccelerationStructureCreateFlagBitsKHR = VkAccelerationStructureCreateFlagBitsKHR(4) -const VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(1048576) +proc newVkVideoEncodeH265ProfileInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_INFO_EXT, pNext: pointer = nil, stdProfileIdc: StdVideoH265ProfileIdc): VkVideoEncodeH265ProfileInfoEXT = + result.sType = sType + result.pNext = pNext + result.stdProfileIdc = stdProfileIdc -# Extension: VK_EXT_mesh_shader -const VK_EXT_MESH_SHADER_SPEC_VERSION* = 1 -const VK_EXT_MESH_SHADER_EXTENSION_NAME* = "VK_EXT_mesh_shader" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_EXT*: VkStructureType = VkStructureType(1000328000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000328001) -const VK_SHADER_STAGE_TASK_BIT_EXT*: VkShaderStageFlagBits = VkShaderStageFlagBits(64) -const VK_SHADER_STAGE_MESH_BIT_EXT*: VkShaderStageFlagBits = VkShaderStageFlagBits(128) -const VK_PIPELINE_STAGE_TASK_SHADER_BIT_EXT*: VkPipelineStageFlagBits = VkPipelineStageFlagBits(524288) -const VK_PIPELINE_STAGE_MESH_SHADER_BIT_EXT*: VkPipelineStageFlagBits = VkPipelineStageFlagBits(1048576) -const VK_QUERY_TYPE_MESH_PRIMITIVES_GENERATED_EXT*: VkQueryType = VkQueryType(1000328000) -const VK_QUERY_PIPELINE_STATISTIC_TASK_SHADER_INVOCATIONS_BIT_EXT*: VkQueryPipelineStatisticFlagBits = VkQueryPipelineStatisticFlagBits(2048) -const VK_QUERY_PIPELINE_STATISTIC_MESH_SHADER_INVOCATIONS_BIT_EXT*: VkQueryPipelineStatisticFlagBits = VkQueryPipelineStatisticFlagBits(4096) -const VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_MESH_TASKS_NV*: VkIndirectCommandsTokenTypeNV = VkIndirectCommandsTokenTypeNV(1000328000) +proc newVkVideoEncodeH265DpbSlotInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_DPB_SLOT_INFO_EXT, pNext: pointer = nil, pStdReferenceInfo: ptr StdVideoEncodeH265ReferenceInfo): VkVideoEncodeH265DpbSlotInfoEXT = + result.sType = sType + result.pNext = pNext + result.pStdReferenceInfo = pStdReferenceInfo -# Extension: VK_NV_extension_330 -const VK_NV_EXTENSION_330_SPEC_VERSION* = 0 -const VK_NV_EXTENSION_330_EXTENSION_NAME* = "VK_NV_extension_330" +proc newVkPhysicalDeviceInheritedViewportScissorFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV, pNext: pointer = nil, inheritedViewportScissor2D: VkBool32): VkPhysicalDeviceInheritedViewportScissorFeaturesNV = + result.sType = sType + result.pNext = pNext + result.inheritedViewportScissor2D = inheritedViewportScissor2D -# Extension: VK_EXT_ycbcr_2plane_444_formats -const VK_EXT_YCBCR_2PLANE_444_FORMATS_SPEC_VERSION* = 1 -const VK_EXT_YCBCR_2PLANE_444_FORMATS_EXTENSION_NAME* = "VK_EXT_ycbcr_2plane_444_formats" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT*: VkStructureType = VkStructureType(1000330000) -template VK_FORMAT_G8_B8R8_2PLANE_444_UNORM_EXT* = - VK_FORMAT_G8_B8R8_2PLANE_444_UNORM -template VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16_EXT* = - VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16 -template VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16_EXT* = - VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16 -template VK_FORMAT_G16_B16R16_2PLANE_444_UNORM_EXT* = - VK_FORMAT_G16_B16R16_2PLANE_444_UNORM +proc newVkCommandBufferInheritanceViewportScissorInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV, 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 -# Extension: VK_NV_extension_332 -const VK_NV_EXTENSION_332_SPEC_VERSION* = 0 -const VK_NV_EXTENSION_332_EXTENSION_NAME* = "VK_NV_extension_332" +proc newVkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT, pNext: pointer = nil, ycbcr2plane444Formats: VkBool32): VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.ycbcr2plane444Formats = ycbcr2plane444Formats -# Extension: VK_EXT_fragment_density_map2 -const VK_EXT_FRAGMENT_DENSITY_MAP_2_SPEC_VERSION* = 1 -const VK_EXT_FRAGMENT_DENSITY_MAP_2_EXTENSION_NAME* = "VK_EXT_fragment_density_map2" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT*: VkStructureType = VkStructureType(1000332000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000332001) -const VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DEFERRED_BIT_EXT*: VkImageViewCreateFlagBits = VkImageViewCreateFlagBits(2) +proc newVkPhysicalDeviceProvokingVertexFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT, pNext: pointer = nil, provokingVertexLast: VkBool32, transformFeedbackPreservesProvokingVertex: VkBool32): VkPhysicalDeviceProvokingVertexFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.provokingVertexLast = provokingVertexLast + result.transformFeedbackPreservesProvokingVertex = transformFeedbackPreservesProvokingVertex -# Extension: VK_QCOM_rotated_copy_commands -const VK_QCOM_ROTATED_COPY_COMMANDS_SPEC_VERSION* = 1 -const VK_QCOM_ROTATED_COPY_COMMANDS_EXTENSION_NAME* = "VK_QCOM_rotated_copy_commands" -const VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM*: VkStructureType = VkStructureType(1000333000) +proc newVkPhysicalDeviceProvokingVertexPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT, pNext: pointer = nil, provokingVertexModePerPipeline: VkBool32, transformFeedbackPreservesTriangleFanProvokingVertex: VkBool32): VkPhysicalDeviceProvokingVertexPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.provokingVertexModePerPipeline = provokingVertexModePerPipeline + result.transformFeedbackPreservesTriangleFanProvokingVertex = transformFeedbackPreservesTriangleFanProvokingVertex -# Extension: VK_KHR_extension_335 -const VK_KHR_EXTENSION_335_SPEC_VERSION* = 0 -const VK_KHR_EXTENSION_335_EXTENSION_NAME* = "VK_KHR_extension_335" +proc newVkPipelineRasterizationProvokingVertexStateCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT, pNext: pointer = nil, provokingVertexMode: VkProvokingVertexModeEXT): VkPipelineRasterizationProvokingVertexStateCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.provokingVertexMode = provokingVertexMode -# Extension: VK_EXT_image_robustness -const VK_EXT_IMAGE_ROBUSTNESS_SPEC_VERSION* = 1 -const VK_EXT_IMAGE_ROBUSTNESS_EXTENSION_NAME* = "VK_EXT_image_robustness" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES +proc newVkCuModuleCreateInfoNVX*(sType: VkStructureType = VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX, pNext: pointer = nil, dataSize: uint, pData: pointer = nil): VkCuModuleCreateInfoNVX = + result.sType = sType + result.pNext = pNext + result.dataSize = dataSize + result.pData = pData -# Extension: VK_KHR_workgroup_memory_explicit_layout -const VK_KHR_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_SPEC_VERSION* = 1 -const VK_KHR_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_EXTENSION_NAME* = "VK_KHR_workgroup_memory_explicit_layout" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR*: VkStructureType = VkStructureType(1000336000) +proc newVkCuFunctionCreateInfoNVX*(sType: VkStructureType = VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX, pNext: pointer = nil, module: VkCuModuleNVX, pName: cstring): VkCuFunctionCreateInfoNVX = + result.sType = sType + result.pNext = pNext + result.module = module + result.pName = pName -# Extension: VK_KHR_copy_commands2 -const VK_KHR_COPY_COMMANDS_2_SPEC_VERSION* = 1 -const VK_KHR_COPY_COMMANDS_2_EXTENSION_NAME* = "VK_KHR_copy_commands2" -template VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2_KHR* = - VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2 -template VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2_KHR* = - VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2 -template VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2_KHR* = - VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2 -template VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2_KHR* = - VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2 -template VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2_KHR* = - VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2 -template VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2_KHR* = - VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2 -template VK_STRUCTURE_TYPE_BUFFER_COPY_2_KHR* = - VK_STRUCTURE_TYPE_BUFFER_COPY_2 -template VK_STRUCTURE_TYPE_IMAGE_COPY_2_KHR* = - VK_STRUCTURE_TYPE_IMAGE_COPY_2 -template VK_STRUCTURE_TYPE_IMAGE_BLIT_2_KHR* = - VK_STRUCTURE_TYPE_IMAGE_BLIT_2 -template VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2_KHR* = - VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2 -template VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2_KHR* = - VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2 +proc newVkCuLaunchInfoNVX*(sType: VkStructureType = VK_STRUCTURE_TYPE_CU_LAUNCH_INFO_NVX, 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 -# Extension: VK_EXT_image_compression_control -const VK_EXT_IMAGE_COMPRESSION_CONTROL_SPEC_VERSION* = 1 -const VK_EXT_IMAGE_COMPRESSION_CONTROL_EXTENSION_NAME* = "VK_EXT_image_compression_control" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT*: VkStructureType = VkStructureType(1000338000) -const VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT*: VkStructureType = VkStructureType(1000338001) -const VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT*: VkStructureType = VkStructureType(1000338002) -const VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT*: VkStructureType = VkStructureType(1000338003) -const VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000338004) -const VK_ERROR_COMPRESSION_EXHAUSTED_EXT*: VkResult = VkResult(-1000338000) +proc newVkPhysicalDeviceDescriptorBufferFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_FEATURES_EXT, 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 -# Extension: VK_EXT_attachment_feedback_loop_layout -const VK_EXT_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_SPEC_VERSION* = 2 -const VK_EXT_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_EXTENSION_NAME* = "VK_EXT_attachment_feedback_loop_layout" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT*: VkStructureType = VkStructureType(1000339000) -const VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT*: VkImageLayout = VkImageLayout(1000339000) -const VK_IMAGE_USAGE_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT*: VkImageUsageFlagBits = VkImageUsageFlagBits(524288) -const VK_PIPELINE_CREATE_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(33554432) -const VK_PIPELINE_CREATE_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(67108864) -const VK_DEPENDENCY_FEEDBACK_LOOP_BIT_EXT*: VkDependencyFlagBits = VkDependencyFlagBits(8) +proc newVkPhysicalDeviceDescriptorBufferPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_PROPERTIES_EXT, 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 -# Extension: VK_EXT_4444_formats -const VK_EXT_4444_FORMATS_SPEC_VERSION* = 1 -const VK_EXT_4444_FORMATS_EXTENSION_NAME* = "VK_EXT_4444_formats" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT*: VkStructureType = VkStructureType(1000340000) -template VK_FORMAT_A4R4G4B4_UNORM_PACK16_EXT* = - VK_FORMAT_A4R4G4B4_UNORM_PACK16 -template VK_FORMAT_A4B4G4R4_UNORM_PACK16_EXT* = - VK_FORMAT_A4B4G4R4_UNORM_PACK16 +proc newVkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_DENSITY_MAP_PROPERTIES_EXT, pNext: pointer = nil, combinedImageSamplerDensityMapDescriptorSize: uint): VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.combinedImageSamplerDensityMapDescriptorSize = combinedImageSamplerDensityMapDescriptorSize -# Extension: VK_EXT_device_fault -const VK_EXT_DEVICE_FAULT_SPEC_VERSION* = 1 -const VK_EXT_DEVICE_FAULT_EXTENSION_NAME* = "VK_EXT_device_fault" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FAULT_FEATURES_EXT*: VkStructureType = VkStructureType(1000341000) -const VK_STRUCTURE_TYPE_DEVICE_FAULT_COUNTS_EXT*: VkStructureType = VkStructureType(1000341001) -const VK_STRUCTURE_TYPE_DEVICE_FAULT_INFO_EXT*: VkStructureType = VkStructureType(1000341002) +proc newVkDescriptorAddressInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DESCRIPTOR_ADDRESS_INFO_EXT, 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 -# Extension: VK_ARM_rasterization_order_attachment_access -const VK_ARM_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_SPEC_VERSION* = 1 -const VK_ARM_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_EXTENSION_NAME* = "VK_ARM_rasterization_order_attachment_access" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT -template VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_ARM* = - VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_EXT -template VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM* = - VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT -template VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM* = - VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT -template VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_ARM* = - VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_EXT -template VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM* = - VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT -template VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM* = - VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT +proc newVkDescriptorBufferBindingInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DESCRIPTOR_BUFFER_BINDING_INFO_EXT, pNext: pointer = nil, address: VkDeviceAddress, usage: VkBufferUsageFlags): VkDescriptorBufferBindingInfoEXT = + result.sType = sType + result.pNext = pNext + result.address = address + result.usage = usage -# Extension: VK_ARM_extension_344 -const VK_ARM_EXTENSION_344_SPEC_VERSION* = 0 -const VK_ARM_EXTENSION_344_EXTENSION_NAME* = "VK_ARM_extension_344" +proc newVkDescriptorBufferBindingPushDescriptorBufferHandleEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DESCRIPTOR_BUFFER_BINDING_PUSH_DESCRIPTOR_BUFFER_HANDLE_EXT, pNext: pointer = nil, buffer: VkBuffer): VkDescriptorBufferBindingPushDescriptorBufferHandleEXT = + result.sType = sType + result.pNext = pNext + result.buffer = buffer -# Extension: VK_EXT_rgba10x6_formats -const VK_EXT_RGBA10X6_FORMATS_SPEC_VERSION* = 1 -const VK_EXT_RGBA10X6_FORMATS_EXTENSION_NAME* = "VK_EXT_rgba10x6_formats" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT*: VkStructureType = VkStructureType(1000344000) +proc newVkDescriptorDataEXT*(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): VkDescriptorDataEXT = + result.pSampler = pSampler + result.pCombinedImageSampler = pCombinedImageSampler + result.pInputAttachmentImage = pInputAttachmentImage + result.pSampledImage = pSampledImage + result.pStorageImage = pStorageImage + result.pUniformTexelBuffer = pUniformTexelBuffer + result.pStorageTexelBuffer = pStorageTexelBuffer + result.pUniformBuffer = pUniformBuffer + result.pStorageBuffer = pStorageBuffer + result.accelerationStructure = accelerationStructure -# Extension: VK_NV_acquire_winrt_display -const VK_NV_ACQUIRE_WINRT_DISPLAY_SPEC_VERSION* = 1 -const VK_NV_ACQUIRE_WINRT_DISPLAY_EXTENSION_NAME* = "VK_NV_acquire_winrt_display" +proc newVkDescriptorGetInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DESCRIPTOR_GET_INFO_EXT, pNext: pointer = nil, `type`: VkDescriptorType, data: VkDescriptorDataEXT): VkDescriptorGetInfoEXT = + result.sType = sType + result.pNext = pNext + result.`type` = `type` + result.data = data -# Extension: VK_EXT_directfb_surface -const VK_EXT_DIRECTFB_SURFACE_SPEC_VERSION* = 1 -const VK_EXT_DIRECTFB_SURFACE_EXTENSION_NAME* = "VK_EXT_directfb_surface" -const VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000346000) +proc newVkBufferCaptureDescriptorDataInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_CAPTURE_DESCRIPTOR_DATA_INFO_EXT, pNext: pointer = nil, buffer: VkBuffer): VkBufferCaptureDescriptorDataInfoEXT = + result.sType = sType + result.pNext = pNext + result.buffer = buffer -# Extension: VK_KHR_extension_350 -const VK_KHR_EXTENSION_350_SPEC_VERSION* = 0 -const VK_KHR_EXTENSION_350_EXTENSION_NAME* = "VK_KHR_extension_350" +proc newVkImageCaptureDescriptorDataInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_CAPTURE_DESCRIPTOR_DATA_INFO_EXT, pNext: pointer = nil, image: VkImage): VkImageCaptureDescriptorDataInfoEXT = + result.sType = sType + result.pNext = pNext + result.image = image -# Extension: VK_NV_extension_351 -const VK_NV_EXTENSION_351_SPEC_VERSION* = 0 -const VK_NV_EXTENSION_351_EXTENSION_NAME* = "VK_NV_extension_351" +proc newVkImageViewCaptureDescriptorDataInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_VIEW_CAPTURE_DESCRIPTOR_DATA_INFO_EXT, pNext: pointer = nil, imageView: VkImageView): VkImageViewCaptureDescriptorDataInfoEXT = + result.sType = sType + result.pNext = pNext + result.imageView = imageView + +proc newVkSamplerCaptureDescriptorDataInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SAMPLER_CAPTURE_DESCRIPTOR_DATA_INFO_EXT, pNext: pointer = nil, sampler: VkSampler): VkSamplerCaptureDescriptorDataInfoEXT = + result.sType = sType + result.pNext = pNext + result.sampler = sampler -# Extension: VK_VALVE_mutable_descriptor_type -const VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION* = 1 -const VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME* = "VK_VALVE_mutable_descriptor_type" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT -template VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE* = - VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT -template VK_DESCRIPTOR_TYPE_MUTABLE_VALVE* = - VK_DESCRIPTOR_TYPE_MUTABLE_EXT -template VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE* = - VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_EXT -template VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE* = - VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_EXT +proc newVkAccelerationStructureCaptureDescriptorDataInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CAPTURE_DESCRIPTOR_DATA_INFO_EXT, pNext: pointer = nil, accelerationStructure: VkAccelerationStructureKHR, accelerationStructureNV: VkAccelerationStructureNV): VkAccelerationStructureCaptureDescriptorDataInfoEXT = + result.sType = sType + result.pNext = pNext + result.accelerationStructure = accelerationStructure + result.accelerationStructureNV = accelerationStructureNV -# Extension: VK_EXT_vertex_input_dynamic_state -const VK_EXT_VERTEX_INPUT_DYNAMIC_STATE_SPEC_VERSION* = 2 -const VK_EXT_VERTEX_INPUT_DYNAMIC_STATE_EXTENSION_NAME* = "VK_EXT_vertex_input_dynamic_state" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT*: VkStructureType = VkStructureType(1000352000) -const VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT*: VkStructureType = VkStructureType(1000352001) -const VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT*: VkStructureType = VkStructureType(1000352002) -const VK_DYNAMIC_STATE_VERTEX_INPUT_EXT*: VkDynamicState = VkDynamicState(1000352000) +proc newVkOpaqueCaptureDescriptorDataCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_OPAQUE_CAPTURE_DESCRIPTOR_DATA_CREATE_INFO_EXT, pNext: pointer = nil, opaqueCaptureDescriptorData: pointer = nil): VkOpaqueCaptureDescriptorDataCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.opaqueCaptureDescriptorData = opaqueCaptureDescriptorData -# Extension: VK_EXT_physical_device_drm -const VK_EXT_PHYSICAL_DEVICE_DRM_SPEC_VERSION* = 1 -const VK_EXT_PHYSICAL_DEVICE_DRM_EXTENSION_NAME* = "VK_EXT_physical_device_drm" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000353000) +proc newVkPhysicalDeviceShaderIntegerDotProductFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES, pNext: pointer = nil, shaderIntegerDotProduct: VkBool32): VkPhysicalDeviceShaderIntegerDotProductFeatures = + result.sType = sType + result.pNext = pNext + result.shaderIntegerDotProduct = shaderIntegerDotProduct -# Extension: VK_EXT_device_address_binding_report -const VK_EXT_DEVICE_ADDRESS_BINDING_REPORT_SPEC_VERSION* = 1 -const VK_EXT_DEVICE_ADDRESS_BINDING_REPORT_EXTENSION_NAME* = "VK_EXT_device_address_binding_report" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ADDRESS_BINDING_REPORT_FEATURES_EXT*: VkStructureType = VkStructureType(1000354000) -const VK_STRUCTURE_TYPE_DEVICE_ADDRESS_BINDING_CALLBACK_DATA_EXT*: VkStructureType = VkStructureType(1000354001) -const VK_DEBUG_UTILS_MESSAGE_TYPE_DEVICE_ADDRESS_BINDING_BIT_EXT*: VkDebugUtilsMessageTypeFlagBitsEXT = VkDebugUtilsMessageTypeFlagBitsEXT(8) +proc newVkPhysicalDeviceShaderIntegerDotProductProperties*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES, 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 -# Extension: VK_EXT_depth_clip_control -const VK_EXT_DEPTH_CLIP_CONTROL_SPEC_VERSION* = 1 -const VK_EXT_DEPTH_CLIP_CONTROL_EXTENSION_NAME* = "VK_EXT_depth_clip_control" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT*: VkStructureType = VkStructureType(1000355000) -const VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000355001) +proc newVkPhysicalDeviceDrmPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT, 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 -# Extension: VK_EXT_primitive_topology_list_restart -const VK_EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_SPEC_VERSION* = 1 -const VK_EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_EXTENSION_NAME* = "VK_EXT_primitive_topology_list_restart" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT*: VkStructureType = VkStructureType(1000356000) +proc newVkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR, pNext: pointer = nil, fragmentShaderBarycentric: VkBool32): VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR = + result.sType = sType + result.pNext = pNext + result.fragmentShaderBarycentric = fragmentShaderBarycentric -# Extension: VK_KHR_extension_358 -const VK_KHR_EXTENSION_358_SPEC_VERSION* = 0 -const VK_KHR_EXTENSION_358_EXTENSION_NAME* = "VK_KHR_extension_358" +proc newVkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR, pNext: pointer = nil, triStripVertexOrderIndependentOfProvokingVertex: VkBool32): VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR = + result.sType = sType + result.pNext = pNext + result.triStripVertexOrderIndependentOfProvokingVertex = triStripVertexOrderIndependentOfProvokingVertex -# Extension: VK_EXT_extension_359 -const VK_EXT_EXTENSION_359_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_359_EXTENSION_NAME* = "VK_EXT_extension_359" +proc newVkPhysicalDeviceRayTracingMotionBlurFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV, pNext: pointer = nil, rayTracingMotionBlur: VkBool32, rayTracingMotionBlurPipelineTraceRaysIndirect: VkBool32): VkPhysicalDeviceRayTracingMotionBlurFeaturesNV = + result.sType = sType + result.pNext = pNext + result.rayTracingMotionBlur = rayTracingMotionBlur + result.rayTracingMotionBlurPipelineTraceRaysIndirect = rayTracingMotionBlurPipelineTraceRaysIndirect -# Extension: VK_EXT_extension_360 -const VK_EXT_EXTENSION_360_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_360_EXTENSION_NAME* = "VK_EXT_extension_360" +proc newVkAccelerationStructureGeometryMotionTrianglesDataNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV, pNext: pointer = nil, vertexData: VkDeviceOrHostAddressConstKHR): VkAccelerationStructureGeometryMotionTrianglesDataNV = + result.sType = sType + result.pNext = pNext + result.vertexData = vertexData -# Extension: VK_KHR_format_feature_flags2 -const VK_KHR_FORMAT_FEATURE_FLAGS_2_SPEC_VERSION* = 2 -const VK_KHR_FORMAT_FEATURE_FLAGS_2_EXTENSION_NAME* = "VK_KHR_format_feature_flags2" -template VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR* = - VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3 +proc newVkAccelerationStructureMotionInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV, pNext: pointer = nil, maxInstances: uint32, flags: VkAccelerationStructureMotionInfoFlagsNV = 0.VkAccelerationStructureMotionInfoFlagsNV): VkAccelerationStructureMotionInfoNV = + result.sType = sType + result.pNext = pNext + result.maxInstances = maxInstances + result.flags = flags -# Extension: VK_EXT_extension_362 -const VK_EXT_EXTENSION_362_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_362_EXTENSION_NAME* = "VK_EXT_extension_362" +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 -# Extension: VK_EXT_extension_363 -const VK_EXT_EXTENSION_363_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_363_EXTENSION_NAME* = "VK_EXT_extension_363" +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 -# Extension: VK_FUCHSIA_extension_364 -const VK_FUCHSIA_EXTENSION_364_SPEC_VERSION* = 0 -const VK_FUCHSIA_EXTENSION_364_EXTENSION_NAME* = "VK_FUCHSIA_extension_364" +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 -# Extension: VK_FUCHSIA_external_memory -const VK_FUCHSIA_EXTERNAL_MEMORY_SPEC_VERSION* = 1 -const VK_FUCHSIA_EXTERNAL_MEMORY_EXTENSION_NAME* = "VK_FUCHSIA_external_memory" -const VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA*: VkStructureType = VkStructureType(1000364000) -const VK_STRUCTURE_TYPE_MEMORY_ZIRCON_HANDLE_PROPERTIES_FUCHSIA*: VkStructureType = VkStructureType(1000364001) -const VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA*: VkStructureType = VkStructureType(1000364002) -const VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA*: VkExternalMemoryHandleTypeFlagBits = VkExternalMemoryHandleTypeFlagBits(2048) +proc newVkAccelerationStructureMotionInstanceDataNV*(staticInstance: VkAccelerationStructureInstanceKHR, matrixMotionInstance: VkAccelerationStructureMatrixMotionInstanceNV, srtMotionInstance: VkAccelerationStructureSRTMotionInstanceNV): VkAccelerationStructureMotionInstanceDataNV = + result.staticInstance = staticInstance + result.matrixMotionInstance = matrixMotionInstance + result.srtMotionInstance = srtMotionInstance -# Extension: VK_FUCHSIA_external_semaphore -const VK_FUCHSIA_EXTERNAL_SEMAPHORE_SPEC_VERSION* = 1 -const VK_FUCHSIA_EXTERNAL_SEMAPHORE_EXTENSION_NAME* = "VK_FUCHSIA_external_semaphore" -const VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA*: VkStructureType = VkStructureType(1000365000) -const VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA*: VkStructureType = VkStructureType(1000365001) -const VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA*: VkExternalSemaphoreHandleTypeFlagBits = VkExternalSemaphoreHandleTypeFlagBits(128) +proc newVkAccelerationStructureMotionInstanceNV*(`type`: VkAccelerationStructureMotionInstanceTypeNV, flags: VkAccelerationStructureMotionInstanceFlagsNV = 0.VkAccelerationStructureMotionInstanceFlagsNV, data: VkAccelerationStructureMotionInstanceDataNV): VkAccelerationStructureMotionInstanceNV = + result.`type` = `type` + result.flags = flags + result.data = data -# Extension: VK_FUCHSIA_buffer_collection -const VK_FUCHSIA_BUFFER_COLLECTION_SPEC_VERSION* = 2 -const VK_FUCHSIA_BUFFER_COLLECTION_EXTENSION_NAME* = "VK_FUCHSIA_buffer_collection" -const VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CREATE_INFO_FUCHSIA*: VkStructureType = VkStructureType(1000366000) -const VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA*: VkObjectType = VkObjectType(1000366000) -const VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA_EXT*: VkDebugReportObjectTypeEXT = VkDebugReportObjectTypeEXT(1000366000) -const VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA*: VkStructureType = VkStructureType(1000366001) -const VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA*: VkStructureType = VkStructureType(1000366002) -const VK_STRUCTURE_TYPE_BUFFER_COLLECTION_PROPERTIES_FUCHSIA*: VkStructureType = VkStructureType(1000366003) -const VK_STRUCTURE_TYPE_BUFFER_CONSTRAINTS_INFO_FUCHSIA*: VkStructureType = VkStructureType(1000366004) -const VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA*: VkStructureType = VkStructureType(1000366005) -const VK_STRUCTURE_TYPE_IMAGE_CONSTRAINTS_INFO_FUCHSIA*: VkStructureType = VkStructureType(1000366006) -const VK_STRUCTURE_TYPE_IMAGE_FORMAT_CONSTRAINTS_INFO_FUCHSIA*: VkStructureType = VkStructureType(1000366007) -const VK_STRUCTURE_TYPE_SYSMEM_COLOR_SPACE_FUCHSIA*: VkStructureType = VkStructureType(1000366008) -const VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CONSTRAINTS_INFO_FUCHSIA*: VkStructureType = VkStructureType(1000366009) +proc newVkMemoryGetRemoteAddressInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_GET_REMOTE_ADDRESS_INFO_NV, pNext: pointer = nil, memory: VkDeviceMemory, handleType: VkExternalMemoryHandleTypeFlagBits): VkMemoryGetRemoteAddressInfoNV = + result.sType = sType + result.pNext = pNext + result.memory = memory + result.handleType = handleType -# Extension: VK_FUCHSIA_extension_368 -const VK_FUCHSIA_EXTENSION_368_SPEC_VERSION* = 0 -const VK_FUCHSIA_EXTENSION_368_EXTENSION_NAME* = "VK_FUCHSIA_extension_368" +proc newVkImportMemoryBufferCollectionFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA, pNext: pointer = nil, collection: VkBufferCollectionFUCHSIA, index: uint32): VkImportMemoryBufferCollectionFUCHSIA = + result.sType = sType + result.pNext = pNext + result.collection = collection + result.index = index -# Extension: VK_QCOM_extension_369 -const VK_QCOM_EXTENSION_369_SPEC_VERSION* = 0 -const VK_QCOM_EXTENSION_369_EXTENSION_NAME* = "VK_QCOM_extension_369" -const VK_DESCRIPTOR_BINDING_RESERVED_4_BIT_QCOM*: VkDescriptorBindingFlagBits = VkDescriptorBindingFlagBits(16) +proc newVkBufferCollectionImageCreateInfoFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA, pNext: pointer = nil, collection: VkBufferCollectionFUCHSIA, index: uint32): VkBufferCollectionImageCreateInfoFUCHSIA = + result.sType = sType + result.pNext = pNext + result.collection = collection + result.index = index -# Extension: VK_HUAWEI_subpass_shading -const VK_HUAWEI_SUBPASS_SHADING_SPEC_VERSION* = 2 -const VK_HUAWEI_SUBPASS_SHADING_EXTENSION_NAME* = "VK_HUAWEI_subpass_shading" -const VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI*: VkStructureType = VkStructureType(1000369000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI*: VkStructureType = VkStructureType(1000369001) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI*: VkStructureType = VkStructureType(1000369002) -const VK_PIPELINE_BIND_POINT_SUBPASS_SHADING_HUAWEI*: VkPipelineBindPoint = VkPipelineBindPoint(1000369003) -const VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(549755813888) -const VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI*: VkShaderStageFlagBits = VkShaderStageFlagBits(16384) +proc newVkBufferCollectionBufferCreateInfoFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA, pNext: pointer = nil, collection: VkBufferCollectionFUCHSIA, index: uint32): VkBufferCollectionBufferCreateInfoFUCHSIA = + result.sType = sType + result.pNext = pNext + result.collection = collection + result.index = index -# Extension: VK_HUAWEI_invocation_mask -const VK_HUAWEI_INVOCATION_MASK_SPEC_VERSION* = 1 -const VK_HUAWEI_INVOCATION_MASK_EXTENSION_NAME* = "VK_HUAWEI_invocation_mask" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI*: VkStructureType = VkStructureType(1000370000) -const VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI*: VkAccessFlagBits2 = VkAccessFlagBits2(549755813888) -const VK_IMAGE_USAGE_INVOCATION_MASK_BIT_HUAWEI*: VkImageUsageFlagBits = VkImageUsageFlagBits(262144) -const VK_PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(1099511627776) +proc newVkBufferCollectionCreateInfoFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CREATE_INFO_FUCHSIA, pNext: pointer = nil, collectionToken: zx_handle_t): VkBufferCollectionCreateInfoFUCHSIA = + result.sType = sType + result.pNext = pNext + result.collectionToken = collectionToken -# Extension: VK_NV_external_memory_rdma -const VK_NV_EXTERNAL_MEMORY_RDMA_SPEC_VERSION* = 1 -const VK_NV_EXTERNAL_MEMORY_RDMA_EXTENSION_NAME* = "VK_NV_external_memory_rdma" -const VK_STRUCTURE_TYPE_MEMORY_GET_REMOTE_ADDRESS_INFO_NV*: VkStructureType = VkStructureType(1000371000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV*: VkStructureType = VkStructureType(1000371001) -const VK_MEMORY_PROPERTY_RDMA_CAPABLE_BIT_NV*: VkMemoryPropertyFlagBits = VkMemoryPropertyFlagBits(256) -const VK_EXTERNAL_MEMORY_HANDLE_TYPE_RDMA_ADDRESS_BIT_NV*: VkExternalMemoryHandleTypeFlagBits = VkExternalMemoryHandleTypeFlagBits(4096) +proc newVkBufferCollectionPropertiesFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_COLLECTION_PROPERTIES_FUCHSIA, 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 -# Extension: VK_EXT_pipeline_properties -const VK_EXT_PIPELINE_PROPERTIES_SPEC_VERSION* = 1 -const VK_EXT_PIPELINE_PROPERTIES_EXTENSION_NAME* = "VK_EXT_pipeline_properties" -const VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT*: VkStructureType = VkStructureType(1000372000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT*: VkStructureType = VkStructureType(1000372001) -template VK_STRUCTURE_TYPE_PIPELINE_INFO_EXT* = - VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR +proc newVkBufferConstraintsInfoFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_CONSTRAINTS_INFO_FUCHSIA, 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 -# Extension: VK_NV_external_sci_sync -const VK_NV_EXTERNAL_SCI_SYNC_SPEC_VERSION* = 2 -const VK_NV_EXTERNAL_SCI_SYNC_EXTENSION_NAME* = "VK_NV_external_sci_sync" -const VK_STRUCTURE_TYPE_IMPORT_FENCE_SCI_SYNC_INFO_NV*: VkStructureType = VkStructureType(1000373000) -const VK_STRUCTURE_TYPE_EXPORT_FENCE_SCI_SYNC_INFO_NV*: VkStructureType = VkStructureType(1000373001) -const VK_STRUCTURE_TYPE_FENCE_GET_SCI_SYNC_INFO_NV*: VkStructureType = VkStructureType(1000373002) -const VK_STRUCTURE_TYPE_SCI_SYNC_ATTRIBUTES_INFO_NV*: VkStructureType = VkStructureType(1000373003) -const VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_SCI_SYNC_INFO_NV*: VkStructureType = VkStructureType(1000373004) -const VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_SCI_SYNC_INFO_NV*: VkStructureType = VkStructureType(1000373005) -const VK_STRUCTURE_TYPE_SEMAPHORE_GET_SCI_SYNC_INFO_NV*: VkStructureType = VkStructureType(1000373006) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SCI_SYNC_FEATURES_NV*: VkStructureType = VkStructureType(1000373007) -const VK_EXTERNAL_FENCE_HANDLE_TYPE_SCI_SYNC_OBJ_BIT_NV*: VkExternalFenceHandleTypeFlagBits = VkExternalFenceHandleTypeFlagBits(16) -const VK_EXTERNAL_FENCE_HANDLE_TYPE_SCI_SYNC_FENCE_BIT_NV*: VkExternalFenceHandleTypeFlagBits = VkExternalFenceHandleTypeFlagBits(32) -const VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SCI_SYNC_OBJ_BIT_NV*: VkExternalSemaphoreHandleTypeFlagBits = VkExternalSemaphoreHandleTypeFlagBits(32) +proc newVkSysmemColorSpaceFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_SYSMEM_COLOR_SPACE_FUCHSIA, pNext: pointer = nil, colorSpace: uint32): VkSysmemColorSpaceFUCHSIA = + result.sType = sType + result.pNext = pNext + result.colorSpace = colorSpace -# Extension: VK_NV_external_memory_sci_buf -const VK_NV_EXTERNAL_MEMORY_SCI_BUF_SPEC_VERSION* = 2 -const VK_NV_EXTERNAL_MEMORY_SCI_BUF_EXTENSION_NAME* = "VK_NV_external_memory_sci_buf" -const VK_STRUCTURE_TYPE_IMPORT_MEMORY_SCI_BUF_INFO_NV*: VkStructureType = VkStructureType(1000374000) -const VK_STRUCTURE_TYPE_EXPORT_MEMORY_SCI_BUF_INFO_NV*: VkStructureType = VkStructureType(1000374001) -const VK_STRUCTURE_TYPE_MEMORY_GET_SCI_BUF_INFO_NV*: VkStructureType = VkStructureType(1000374002) -const VK_STRUCTURE_TYPE_MEMORY_SCI_BUF_PROPERTIES_NV*: VkStructureType = VkStructureType(1000374003) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_SCI_BUF_FEATURES_NV*: VkStructureType = VkStructureType(1000374004) -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SCI_BUF_FEATURES_NV* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_SCI_BUF_FEATURES_NV -const VK_EXTERNAL_MEMORY_HANDLE_TYPE_SCI_BUF_BIT_NV*: VkExternalMemoryHandleTypeFlagBits = VkExternalMemoryHandleTypeFlagBits(8192) +proc newVkImageFormatConstraintsInfoFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_FORMAT_CONSTRAINTS_INFO_FUCHSIA, 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 -# Extension: VK_EXT_extension_376 -const VK_EXT_EXTENSION_376_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_376_EXTENSION_NAME* = "VK_EXT_extension_376" +proc newVkImageConstraintsInfoFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_CONSTRAINTS_INFO_FUCHSIA, 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 -# Extension: VK_EXT_multisampled_render_to_single_sampled -const VK_EXT_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_SPEC_VERSION* = 1 -const VK_EXT_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_EXTENSION_NAME* = "VK_EXT_multisampled_render_to_single_sampled" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT*: VkStructureType = VkStructureType(1000376000) -const VK_STRUCTURE_TYPE_SUBPASS_RESOLVE_PERFORMANCE_QUERY_EXT*: VkStructureType = VkStructureType(1000376001) -const VK_STRUCTURE_TYPE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_EXT*: VkStructureType = VkStructureType(1000376002) -const VK_IMAGE_CREATE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_BIT_EXT*: VkImageCreateFlagBits = VkImageCreateFlagBits(262144) +proc newVkBufferCollectionConstraintsInfoFUCHSIA*(sType: VkStructureType = VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CONSTRAINTS_INFO_FUCHSIA, 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 -# Extension: VK_EXT_extended_dynamic_state2 -const VK_EXT_EXTENDED_DYNAMIC_STATE_2_SPEC_VERSION* = 1 -const VK_EXT_EXTENDED_DYNAMIC_STATE_2_EXTENSION_NAME* = "VK_EXT_extended_dynamic_state2" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT*: VkStructureType = VkStructureType(1000377000) -const VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT*: VkDynamicState = VkDynamicState(1000377000) -template VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE_EXT* = - VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE -template VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE_EXT* = - VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE -const VK_DYNAMIC_STATE_LOGIC_OP_EXT*: VkDynamicState = VkDynamicState(1000377003) -template VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE_EXT* = - VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE +proc newVkPhysicalDeviceRGBA10X6FormatsFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT, pNext: pointer = nil, formatRgba10x6WithoutYCbCrSampler: VkBool32): VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.formatRgba10x6WithoutYCbCrSampler = formatRgba10x6WithoutYCbCrSampler -# Extension: VK_QNX_screen_surface -const VK_QNX_SCREEN_SURFACE_SPEC_VERSION* = 1 -const VK_QNX_SCREEN_SURFACE_EXTENSION_NAME* = "VK_QNX_screen_surface" -const VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX*: VkStructureType = VkStructureType(1000378000) +proc newVkFormatProperties3*(sType: VkStructureType = VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3, 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 -# Extension: VK_KHR_extension_380 -const VK_KHR_EXTENSION_380_SPEC_VERSION* = 0 -const VK_KHR_EXTENSION_380_EXTENSION_NAME* = "VK_KHR_extension_380" +proc newVkDrmFormatModifierPropertiesList2EXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT, pNext: pointer = nil, drmFormatModifierCount: uint32, pDrmFormatModifierProperties: ptr VkDrmFormatModifierProperties2EXT): VkDrmFormatModifierPropertiesList2EXT = + result.sType = sType + result.pNext = pNext + result.drmFormatModifierCount = drmFormatModifierCount + result.pDrmFormatModifierProperties = pDrmFormatModifierProperties -# Extension: VK_KHR_extension_381 -const VK_KHR_EXTENSION_381_SPEC_VERSION* = 0 -const VK_KHR_EXTENSION_381_EXTENSION_NAME* = "VK_KHR_extension_381" +proc newVkDrmFormatModifierProperties2EXT*(drmFormatModifier: uint64, drmFormatModifierPlaneCount: uint32, drmFormatModifierTilingFeatures: VkFormatFeatureFlags2): VkDrmFormatModifierProperties2EXT = + result.drmFormatModifier = drmFormatModifier + result.drmFormatModifierPlaneCount = drmFormatModifierPlaneCount + result.drmFormatModifierTilingFeatures = drmFormatModifierTilingFeatures -# Extension: VK_EXT_color_write_enable -const VK_EXT_COLOR_WRITE_ENABLE_SPEC_VERSION* = 1 -const VK_EXT_COLOR_WRITE_ENABLE_EXTENSION_NAME* = "VK_EXT_color_write_enable" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT*: VkStructureType = VkStructureType(1000381000) -const VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000381001) -const VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT*: VkDynamicState = VkDynamicState(1000381000) +proc newVkAndroidHardwareBufferFormatProperties2ANDROID*(sType: VkStructureType = VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID, 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 -# Extension: VK_EXT_primitives_generated_query -const VK_EXT_PRIMITIVES_GENERATED_QUERY_SPEC_VERSION* = 1 -const VK_EXT_PRIMITIVES_GENERATED_QUERY_EXTENSION_NAME* = "VK_EXT_primitives_generated_query" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT*: VkStructureType = VkStructureType(1000382000) -const VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT*: VkQueryType = VkQueryType(1000382000) +proc newVkPipelineRenderingCreateInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO, 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 -# Extension: VK_EXT_extension_384 -const VK_EXT_EXTENSION_384_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_384_EXTENSION_NAME* = "VK_EXT_extension_384" +proc newVkRenderingInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDERING_INFO, 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 -# Extension: VK_MESA_extension_385 -const VK_MESA_EXTENSION_385_SPEC_VERSION* = 0 -const VK_MESA_EXTENSION_385_EXTENSION_NAME* = "VK_MESA_extension_385" +proc newVkRenderingAttachmentInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO, 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 -# Extension: VK_GOOGLE_extension_386 -const VK_GOOGLE_EXTENSION_386_SPEC_VERSION* = 0 -const VK_GOOGLE_EXTENSION_386_EXTENSION_NAME* = "VK_GOOGLE_extension_386" +proc newVkRenderingFragmentShadingRateAttachmentInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR, 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 -# Extension: VK_KHR_ray_tracing_maintenance1 -const VK_KHR_RAY_TRACING_MAINTENANCE_1_SPEC_VERSION* = 1 -const VK_KHR_RAY_TRACING_MAINTENANCE_1_EXTENSION_NAME* = "VK_KHR_ray_tracing_maintenance1" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR*: VkStructureType = VkStructureType(1000386000) -const VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR*: VkQueryType = VkQueryType(1000386000) -const VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHR*: VkQueryType = VkQueryType(1000386001) -const VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHR*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(268435456) -const VK_ACCESS_2_SHADER_BINDING_TABLE_READ_BIT_KHR*: VkAccessFlagBits2 = VkAccessFlagBits2(1099511627776) +proc newVkRenderingFragmentDensityMapAttachmentInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT, pNext: pointer = nil, imageView: VkImageView, imageLayout: VkImageLayout): VkRenderingFragmentDensityMapAttachmentInfoEXT = + result.sType = sType + result.pNext = pNext + result.imageView = imageView + result.imageLayout = imageLayout -# Extension: VK_EXT_extension_388 -const VK_EXT_EXTENSION_388_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_388_EXTENSION_NAME* = "VK_EXT_extension_388" +proc newVkPhysicalDeviceDynamicRenderingFeatures*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES, pNext: pointer = nil, dynamicRendering: VkBool32): VkPhysicalDeviceDynamicRenderingFeatures = + result.sType = sType + result.pNext = pNext + result.dynamicRendering = dynamicRendering -# Extension: VK_EXT_global_priority_query -const VK_EXT_GLOBAL_PRIORITY_QUERY_SPEC_VERSION* = 1 -const VK_EXT_GLOBAL_PRIORITY_QUERY_EXTENSION_NAME* = "VK_EXT_global_priority_query" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR -template VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT* = - VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR +proc newVkCommandBufferInheritanceRenderingInfo*(sType: VkStructureType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO, 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 -# Extension: VK_EXT_extension_390 -const VK_EXT_EXTENSION_390_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_390_EXTENSION_NAME* = "VK_EXT_extension_390" +proc newVkAttachmentSampleCountInfoAMD*(sType: VkStructureType = VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD, 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 -# Extension: VK_EXT_extension_391 -const VK_EXT_EXTENSION_391_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_391_EXTENSION_NAME* = "VK_EXT_extension_391" +proc newVkMultiviewPerViewAttributesInfoNVX*(sType: VkStructureType = VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX, pNext: pointer = nil, perViewAttributes: VkBool32, perViewAttributesPositionXOnly: VkBool32): VkMultiviewPerViewAttributesInfoNVX = + result.sType = sType + result.pNext = pNext + result.perViewAttributes = perViewAttributes + result.perViewAttributesPositionXOnly = perViewAttributesPositionXOnly -# Extension: VK_EXT_image_view_min_lod -const VK_EXT_IMAGE_VIEW_MIN_LOD_SPEC_VERSION* = 1 -const VK_EXT_IMAGE_VIEW_MIN_LOD_EXTENSION_NAME* = "VK_EXT_image_view_min_lod" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT*: VkStructureType = VkStructureType(1000391000) -const VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000391001) +proc newVkPhysicalDeviceImageViewMinLodFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT, pNext: pointer = nil, minLod: VkBool32): VkPhysicalDeviceImageViewMinLodFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.minLod = minLod -# Extension: VK_EXT_multi_draw -const VK_EXT_MULTI_DRAW_SPEC_VERSION* = 1 -const VK_EXT_MULTI_DRAW_EXTENSION_NAME* = "VK_EXT_multi_draw" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT*: VkStructureType = VkStructureType(1000392000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000392001) +proc newVkImageViewMinLodCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT, pNext: pointer = nil, minLod: float32): VkImageViewMinLodCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.minLod = minLod -# Extension: VK_EXT_image_2d_view_of_3d -const VK_EXT_IMAGE_2D_VIEW_OF_3D_SPEC_VERSION* = 1 -const VK_EXT_IMAGE_2D_VIEW_OF_3D_EXTENSION_NAME* = "VK_EXT_image_2d_view_of_3d" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT*: VkStructureType = VkStructureType(1000393000) -const VK_IMAGE_CREATE_2D_VIEW_COMPATIBLE_BIT_EXT*: VkImageCreateFlagBits = VkImageCreateFlagBits(131072) +proc newVkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT, 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 -# Extension: VK_KHR_portability_enumeration -const VK_KHR_PORTABILITY_ENUMERATION_SPEC_VERSION* = 1 -const VK_KHR_PORTABILITY_ENUMERATION_EXTENSION_NAME* = "VK_KHR_portability_enumeration" -const VK_INSTANCE_CREATE_ENUMERATE_PORTABILITY_BIT_KHR*: VkInstanceCreateFlagBits = VkInstanceCreateFlagBits(1) +proc newVkPhysicalDeviceLinearColorAttachmentFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV, pNext: pointer = nil, linearColorAttachment: VkBool32): VkPhysicalDeviceLinearColorAttachmentFeaturesNV = + result.sType = sType + result.pNext = pNext + result.linearColorAttachment = linearColorAttachment -# Extension: VK_EXT_shader_tile_image -const VK_EXT_SHADER_TILE_IMAGE_SPEC_VERSION* = 1 -const VK_EXT_SHADER_TILE_IMAGE_EXTENSION_NAME* = "VK_EXT_shader_tile_image" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_FEATURES_EXT*: VkStructureType = VkStructureType(1000395000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000395001) +proc newVkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT, pNext: pointer = nil, graphicsPipelineLibrary: VkBool32): VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.graphicsPipelineLibrary = graphicsPipelineLibrary -# Extension: VK_EXT_opacity_micromap -const VK_EXT_OPACITY_MICROMAP_SPEC_VERSION* = 2 -const VK_EXT_OPACITY_MICROMAP_EXTENSION_NAME* = "VK_EXT_opacity_micromap" -const VK_STRUCTURE_TYPE_MICROMAP_BUILD_INFO_EXT*: VkStructureType = VkStructureType(1000396000) -const VK_STRUCTURE_TYPE_MICROMAP_VERSION_INFO_EXT*: VkStructureType = VkStructureType(1000396001) -const VK_STRUCTURE_TYPE_COPY_MICROMAP_INFO_EXT*: VkStructureType = VkStructureType(1000396002) -const VK_STRUCTURE_TYPE_COPY_MICROMAP_TO_MEMORY_INFO_EXT*: VkStructureType = VkStructureType(1000396003) -const VK_STRUCTURE_TYPE_COPY_MEMORY_TO_MICROMAP_INFO_EXT*: VkStructureType = VkStructureType(1000396004) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_FEATURES_EXT*: VkStructureType = VkStructureType(1000396005) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000396006) -const VK_STRUCTURE_TYPE_MICROMAP_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000396007) -const VK_STRUCTURE_TYPE_MICROMAP_BUILD_SIZES_INFO_EXT*: VkStructureType = VkStructureType(1000396008) -const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_OPACITY_MICROMAP_EXT*: VkStructureType = VkStructureType(1000396009) -const VK_PIPELINE_STAGE_2_MICROMAP_BUILD_BIT_EXT*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(1073741824) -const VK_ACCESS_2_MICROMAP_READ_BIT_EXT*: VkAccessFlagBits2 = VkAccessFlagBits2(17592186044416) -const VK_ACCESS_2_MICROMAP_WRITE_BIT_EXT*: VkAccessFlagBits2 = VkAccessFlagBits2(35184372088832) -const VK_QUERY_TYPE_MICROMAP_SERIALIZATION_SIZE_EXT*: VkQueryType = VkQueryType(1000396000) -const VK_QUERY_TYPE_MICROMAP_COMPACTED_SIZE_EXT*: VkQueryType = VkQueryType(1000396001) -const VK_OBJECT_TYPE_MICROMAP_EXT*: VkObjectType = VkObjectType(1000396000) -const VK_BUFFER_USAGE_MICROMAP_BUILD_INPUT_READ_ONLY_BIT_EXT*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(8388608) -const VK_BUFFER_USAGE_MICROMAP_STORAGE_BIT_EXT*: VkBufferUsageFlagBits = VkBufferUsageFlagBits(16777216) -const VK_PIPELINE_CREATE_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(16777216) -const VK_GEOMETRY_INSTANCE_FORCE_OPACITY_MICROMAP_2_STATE_EXT*: VkGeometryInstanceFlagBitsKHR = VkGeometryInstanceFlagBitsKHR(16) -const VK_GEOMETRY_INSTANCE_DISABLE_OPACITY_MICROMAPS_EXT*: VkGeometryInstanceFlagBitsKHR = VkGeometryInstanceFlagBitsKHR(32) -const VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_UPDATE_EXT*: VkBuildAccelerationStructureFlagBitsKHR = VkBuildAccelerationStructureFlagBitsKHR(64) -const VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DISABLE_OPACITY_MICROMAPS_EXT*: VkBuildAccelerationStructureFlagBitsKHR = VkBuildAccelerationStructureFlagBitsKHR(128) -const VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_DATA_UPDATE_EXT*: VkBuildAccelerationStructureFlagBitsKHR = VkBuildAccelerationStructureFlagBitsKHR(256) +proc newVkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT, pNext: pointer = nil, graphicsPipelineLibraryFastLinking: VkBool32, graphicsPipelineLibraryIndependentInterpolationDecoration: VkBool32): VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.graphicsPipelineLibraryFastLinking = graphicsPipelineLibraryFastLinking + result.graphicsPipelineLibraryIndependentInterpolationDecoration = graphicsPipelineLibraryIndependentInterpolationDecoration -# Extension: VK_NV_displacement_micromap -const VK_NV_DISPLACEMENT_MICROMAP_SPEC_VERSION* = 1 -const VK_NV_DISPLACEMENT_MICROMAP_EXTENSION_NAME* = "VK_NV_displacement_micromap" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISPLACEMENT_MICROMAP_FEATURES_NV*: VkStructureType = VkStructureType(1000397000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISPLACEMENT_MICROMAP_PROPERTIES_NV*: VkStructureType = VkStructureType(1000397001) -const VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_DISPLACEMENT_MICROMAP_NV*: VkStructureType = VkStructureType(1000397002) -const VK_PIPELINE_CREATE_RAY_TRACING_DISPLACEMENT_MICROMAP_BIT_NV*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(268435456) -const VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DISPLACEMENT_MICROMAP_UPDATE_NV*: VkBuildAccelerationStructureFlagBitsKHR = VkBuildAccelerationStructureFlagBitsKHR(512) -const VK_MICROMAP_TYPE_DISPLACEMENT_MICROMAP_NV*: VkMicromapTypeEXT = VkMicromapTypeEXT(1000397000) +proc newVkGraphicsPipelineLibraryCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT, pNext: pointer = nil, flags: VkGraphicsPipelineLibraryFlagsEXT = 0.VkGraphicsPipelineLibraryFlagsEXT): VkGraphicsPipelineLibraryCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.flags = flags -# Extension: VK_JUICE_extension_399 -const VK_JUICE_EXTENSION_399_SPEC_VERSION* = 0 -const VK_JUICE_EXTENSION_399_EXTENSION_NAME* = "VK_JUICE_extension_399" +proc newVkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE, pNext: pointer = nil, descriptorSetHostMapping: VkBool32): VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE = + result.sType = sType + result.pNext = pNext + result.descriptorSetHostMapping = descriptorSetHostMapping -# Extension: VK_JUICE_extension_400 -const VK_JUICE_EXTENSION_400_SPEC_VERSION* = 0 -const VK_JUICE_EXTENSION_400_EXTENSION_NAME* = "VK_JUICE_extension_400" +proc newVkDescriptorSetBindingReferenceVALVE*(sType: VkStructureType = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_BINDING_REFERENCE_VALVE, pNext: pointer = nil, descriptorSetLayout: VkDescriptorSetLayout, binding: uint32): VkDescriptorSetBindingReferenceVALVE = + result.sType = sType + result.pNext = pNext + result.descriptorSetLayout = descriptorSetLayout + result.binding = binding -# Extension: VK_EXT_load_store_op_none -const VK_EXT_LOAD_STORE_OP_NONE_SPEC_VERSION* = 1 -const VK_EXT_LOAD_STORE_OP_NONE_EXTENSION_NAME* = "VK_EXT_load_store_op_none" -const VK_ATTACHMENT_LOAD_OP_NONE_EXT*: VkAttachmentLoadOp = VkAttachmentLoadOp(1000400000) -template VK_ATTACHMENT_STORE_OP_NONE_EXT* = - VK_ATTACHMENT_STORE_OP_NONE +proc newVkDescriptorSetLayoutHostMappingInfoVALVE*(sType: VkStructureType = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_HOST_MAPPING_INFO_VALVE, pNext: pointer = nil, descriptorOffset: uint, descriptorSize: uint32): VkDescriptorSetLayoutHostMappingInfoVALVE = + result.sType = sType + result.pNext = pNext + result.descriptorOffset = descriptorOffset + result.descriptorSize = descriptorSize -# Extension: VK_FB_extension_402 -const VK_FB_EXTENSION_402_SPEC_VERSION* = 0 -const VK_FB_EXTENSION_402_EXTENSION_NAME* = "VK_FB_extension_402" +proc newVkPhysicalDeviceShaderModuleIdentifierFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT, pNext: pointer = nil, shaderModuleIdentifier: VkBool32): VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.shaderModuleIdentifier = shaderModuleIdentifier -# Extension: VK_FB_extension_403 -const VK_FB_EXTENSION_403_SPEC_VERSION* = 0 -const VK_FB_EXTENSION_403_EXTENSION_NAME* = "VK_FB_extension_403" +proc newVkPhysicalDeviceShaderModuleIdentifierPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT, pNext: pointer = nil, shaderModuleIdentifierAlgorithmUUID: array[VK_UUID_SIZE, uint8]): VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.shaderModuleIdentifierAlgorithmUUID = shaderModuleIdentifierAlgorithmUUID -# Extension: VK_FB_extension_404 -const VK_FB_EXTENSION_404_SPEC_VERSION* = 0 -const VK_FB_EXTENSION_404_EXTENSION_NAME* = "VK_FB_extension_404" +proc newVkPipelineShaderStageModuleIdentifierCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT, pNext: pointer = nil, identifierSize: uint32, pIdentifier: ptr uint8): VkPipelineShaderStageModuleIdentifierCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.identifierSize = identifierSize + result.pIdentifier = pIdentifier -# Extension: VK_HUAWEI_cluster_culling_shader -const VK_HUAWEI_CLUSTER_CULLING_SHADER_SPEC_VERSION* = 1 -const VK_HUAWEI_CLUSTER_CULLING_SHADER_EXTENSION_NAME* = "VK_HUAWEI_cluster_culling_shader" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_FEATURES_HUAWEI*: VkStructureType = VkStructureType(1000404000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_PROPERTIES_HUAWEI*: VkStructureType = VkStructureType(1000404001) -const VK_PIPELINE_STAGE_2_CLUSTER_CULLING_SHADER_BIT_HUAWEI*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(2199023255552) -const VK_SHADER_STAGE_CLUSTER_CULLING_BIT_HUAWEI*: VkShaderStageFlagBits = VkShaderStageFlagBits(524288) -const VK_QUERY_PIPELINE_STATISTIC_CLUSTER_CULLING_SHADER_INVOCATIONS_BIT_HUAWEI*: VkQueryPipelineStatisticFlagBits = VkQueryPipelineStatisticFlagBits(8192) +proc newVkShaderModuleIdentifierEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SHADER_MODULE_IDENTIFIER_EXT, 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 -# Extension: VK_HUAWEI_extension_406 -const VK_HUAWEI_EXTENSION_406_SPEC_VERSION* = 0 -const VK_HUAWEI_EXTENSION_406_EXTENSION_NAME* = "VK_HUAWEI_extension_406" +proc newVkImageCompressionControlEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT, 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 -# Extension: VK_GGP_extension_407 -const VK_GGP_EXTENSION_407_SPEC_VERSION* = 0 -const VK_GGP_EXTENSION_407_EXTENSION_NAME* = "VK_GGP_extension_407" +proc newVkPhysicalDeviceImageCompressionControlFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT, pNext: pointer = nil, imageCompressionControl: VkBool32): VkPhysicalDeviceImageCompressionControlFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.imageCompressionControl = imageCompressionControl -# Extension: VK_GGP_extension_408 -const VK_GGP_EXTENSION_408_SPEC_VERSION* = 0 -const VK_GGP_EXTENSION_408_EXTENSION_NAME* = "VK_GGP_extension_408" +proc newVkImageCompressionPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT, pNext: pointer = nil, imageCompressionFlags: VkImageCompressionFlagsEXT, imageCompressionFixedRateFlags: VkImageCompressionFixedRateFlagsEXT): VkImageCompressionPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.imageCompressionFlags = imageCompressionFlags + result.imageCompressionFixedRateFlags = imageCompressionFixedRateFlags -# Extension: VK_GGP_extension_409 -const VK_GGP_EXTENSION_409_SPEC_VERSION* = 0 -const VK_GGP_EXTENSION_409_EXTENSION_NAME* = "VK_GGP_extension_409" +proc newVkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT, pNext: pointer = nil, imageCompressionControlSwapchain: VkBool32): VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.imageCompressionControlSwapchain = imageCompressionControlSwapchain -# Extension: VK_GGP_extension_410 -const VK_GGP_EXTENSION_410_SPEC_VERSION* = 0 -const VK_GGP_EXTENSION_410_EXTENSION_NAME* = "VK_GGP_extension_410" +proc newVkImageSubresource2KHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_KHR, pNext: pointer = nil, imageSubresource: VkImageSubresource): VkImageSubresource2KHR = + result.sType = sType + result.pNext = pNext + result.imageSubresource = imageSubresource -# Extension: VK_GGP_extension_411 -const VK_GGP_EXTENSION_411_SPEC_VERSION* = 0 -const VK_GGP_EXTENSION_411_EXTENSION_NAME* = "VK_GGP_extension_411" +proc newVkSubresourceLayout2KHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_KHR, pNext: pointer = nil, subresourceLayout: VkSubresourceLayout): VkSubresourceLayout2KHR = + result.sType = sType + result.pNext = pNext + result.subresourceLayout = subresourceLayout -# Extension: VK_EXT_border_color_swizzle -const VK_EXT_BORDER_COLOR_SWIZZLE_SPEC_VERSION* = 1 -const VK_EXT_BORDER_COLOR_SWIZZLE_EXTENSION_NAME* = "VK_EXT_border_color_swizzle" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT*: VkStructureType = VkStructureType(1000411000) -const VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000411001) +proc newVkRenderPassCreationControlEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT, pNext: pointer = nil, disallowMerging: VkBool32): VkRenderPassCreationControlEXT = + result.sType = sType + result.pNext = pNext + result.disallowMerging = disallowMerging -# Extension: VK_EXT_pageable_device_local_memory -const VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_SPEC_VERSION* = 1 -const VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_EXTENSION_NAME* = "VK_EXT_pageable_device_local_memory" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT*: VkStructureType = VkStructureType(1000412000) +proc newVkRenderPassCreationFeedbackInfoEXT*(postMergeSubpassCount: uint32): VkRenderPassCreationFeedbackInfoEXT = + result.postMergeSubpassCount = postMergeSubpassCount -# Extension: VK_KHR_maintenance4 -const VK_KHR_MAINTENANCE_4_SPEC_VERSION* = 2 -const VK_KHR_MAINTENANCE_4_EXTENSION_NAME* = "VK_KHR_maintenance4" -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES -template VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR* = - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES -template VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS_KHR* = - VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS -template VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS_KHR* = - VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS -template VK_IMAGE_ASPECT_NONE_KHR* = - VK_IMAGE_ASPECT_NONE +proc newVkRenderPassCreationFeedbackCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT, pNext: pointer = nil, pRenderPassFeedback: ptr VkRenderPassCreationFeedbackInfoEXT): VkRenderPassCreationFeedbackCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.pRenderPassFeedback = pRenderPassFeedback -# Extension: VK_HUAWEI_extension_415 -const VK_HUAWEI_EXTENSION_415_SPEC_VERSION* = 0 -const VK_HUAWEI_EXTENSION_415_EXTENSION_NAME* = "VK_HUAWEI_extension_415" +proc newVkRenderPassSubpassFeedbackInfoEXT*(subpassMergeStatus: VkSubpassMergeStatusEXT, description: array[VK_MAX_DESCRIPTION_SIZE, char], postMergeIndex: uint32): VkRenderPassSubpassFeedbackInfoEXT = + result.subpassMergeStatus = subpassMergeStatus + result.description = description + result.postMergeIndex = postMergeIndex -# Extension: VK_ARM_shader_core_properties -const VK_ARM_SHADER_CORE_PROPERTIES_SPEC_VERSION* = 1 -const VK_ARM_SHADER_CORE_PROPERTIES_EXTENSION_NAME* = "VK_ARM_shader_core_properties" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_ARM*: VkStructureType = VkStructureType(1000415000) +proc newVkRenderPassSubpassFeedbackCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT, pNext: pointer = nil, pSubpassFeedback: ptr VkRenderPassSubpassFeedbackInfoEXT): VkRenderPassSubpassFeedbackCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.pSubpassFeedback = pSubpassFeedback -# Extension: VK_KHR_extension_417 -const VK_KHR_EXTENSION_417_SPEC_VERSION* = 0 -const VK_KHR_EXTENSION_417_EXTENSION_NAME* = "VK_KHR_extension_417" +proc newVkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT, pNext: pointer = nil, subpassMergeFeedback: VkBool32): VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.subpassMergeFeedback = subpassMergeFeedback -# Extension: VK_ARM_extension_418 -const VK_ARM_EXTENSION_418_SPEC_VERSION* = 0 -const VK_ARM_EXTENSION_418_EXTENSION_NAME* = "VK_ARM_extension_418" +proc newVkMicromapBuildInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_MICROMAP_BUILD_INFO_EXT, 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 -# Extension: VK_EXT_image_sliced_view_of_3d -const VK_EXT_IMAGE_SLICED_VIEW_OF_3D_SPEC_VERSION* = 1 -const VK_EXT_IMAGE_SLICED_VIEW_OF_3D_EXTENSION_NAME* = "VK_EXT_image_sliced_view_of_3d" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_SLICED_VIEW_OF_3D_FEATURES_EXT*: VkStructureType = VkStructureType(1000418000) -const VK_STRUCTURE_TYPE_IMAGE_VIEW_SLICED_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000418001) +proc newVkMicromapCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_MICROMAP_CREATE_INFO_EXT, 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 -# Extension: VK_EXT_extension_420 -const VK_EXT_EXTENSION_420_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_420_EXTENSION_NAME* = "VK_EXT_extension_420" -const VK_SWAPCHAIN_CREATE_RESERVED_4_BIT_EXT*: VkSwapchainCreateFlagBitsKHR = VkSwapchainCreateFlagBitsKHR(16) +proc newVkMicromapVersionInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_MICROMAP_VERSION_INFO_EXT, pNext: pointer = nil, pVersionData: ptr uint8): VkMicromapVersionInfoEXT = + result.sType = sType + result.pNext = pNext + result.pVersionData = pVersionData -# Extension: VK_VALVE_descriptor_set_host_mapping -const VK_VALVE_DESCRIPTOR_SET_HOST_MAPPING_SPEC_VERSION* = 1 -const VK_VALVE_DESCRIPTOR_SET_HOST_MAPPING_EXTENSION_NAME* = "VK_VALVE_descriptor_set_host_mapping" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE*: VkStructureType = VkStructureType(1000420000) -const VK_STRUCTURE_TYPE_DESCRIPTOR_SET_BINDING_REFERENCE_VALVE*: VkStructureType = VkStructureType(1000420001) -const VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_HOST_MAPPING_INFO_VALVE*: VkStructureType = VkStructureType(1000420002) +proc newVkCopyMicromapInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_COPY_MICROMAP_INFO_EXT, 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 -# Extension: VK_EXT_depth_clamp_zero_one -const VK_EXT_DEPTH_CLAMP_ZERO_ONE_SPEC_VERSION* = 1 -const VK_EXT_DEPTH_CLAMP_ZERO_ONE_EXTENSION_NAME* = "VK_EXT_depth_clamp_zero_one" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_EXT*: VkStructureType = VkStructureType(1000421000) +proc newVkCopyMicromapToMemoryInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_COPY_MICROMAP_TO_MEMORY_INFO_EXT, 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 -# Extension: VK_EXT_non_seamless_cube_map -const VK_EXT_NON_SEAMLESS_CUBE_MAP_SPEC_VERSION* = 1 -const VK_EXT_NON_SEAMLESS_CUBE_MAP_EXTENSION_NAME* = "VK_EXT_non_seamless_cube_map" -const VK_SAMPLER_CREATE_NON_SEAMLESS_CUBE_MAP_BIT_EXT*: VkSamplerCreateFlagBits = VkSamplerCreateFlagBits(4) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT*: VkStructureType = VkStructureType(1000422000) +proc newVkCopyMemoryToMicromapInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_COPY_MEMORY_TO_MICROMAP_INFO_EXT, 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 -# Extension: VK_ARM_extension_424 -const VK_ARM_EXTENSION_424_SPEC_VERSION* = 0 -const VK_ARM_EXTENSION_424_EXTENSION_NAME* = "VK_ARM_extension_424" +proc newVkMicromapBuildSizesInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_MICROMAP_BUILD_SIZES_INFO_EXT, 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 -# Extension: VK_ARM_extension_425 -const VK_ARM_EXTENSION_425_SPEC_VERSION* = 0 -const VK_ARM_EXTENSION_425_EXTENSION_NAME* = "VK_ARM_extension_425" +proc newVkMicromapUsageEXT*(count: uint32, subdivisionLevel: uint32, format: uint32): VkMicromapUsageEXT = + result.count = count + result.subdivisionLevel = subdivisionLevel + result.format = format -# Extension: VK_QCOM_fragment_density_map_offset -const VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_SPEC_VERSION* = 1 -const VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_EXTENSION_NAME* = "VK_QCOM_fragment_density_map_offset" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM*: VkStructureType = VkStructureType(1000425000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM*: VkStructureType = VkStructureType(1000425001) -const VK_STRUCTURE_TYPE_SUBPASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_QCOM*: VkStructureType = VkStructureType(1000425002) -const VK_IMAGE_CREATE_FRAGMENT_DENSITY_MAP_OFFSET_BIT_QCOM*: VkImageCreateFlagBits = VkImageCreateFlagBits(32768) +proc newVkMicromapTriangleEXT*(dataOffset: uint32, subdivisionLevel: uint16, format: uint16): VkMicromapTriangleEXT = + result.dataOffset = dataOffset + result.subdivisionLevel = subdivisionLevel + result.format = format -# Extension: VK_NV_copy_memory_indirect -const VK_NV_COPY_MEMORY_INDIRECT_SPEC_VERSION* = 1 -const VK_NV_COPY_MEMORY_INDIRECT_EXTENSION_NAME* = "VK_NV_copy_memory_indirect" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_FEATURES_NV*: VkStructureType = VkStructureType(1000426000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_PROPERTIES_NV*: VkStructureType = VkStructureType(1000426001) +proc newVkPhysicalDeviceOpacityMicromapFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_FEATURES_EXT, 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 -# Extension: VK_NV_memory_decompression -const VK_NV_MEMORY_DECOMPRESSION_SPEC_VERSION* = 1 -const VK_NV_MEMORY_DECOMPRESSION_EXTENSION_NAME* = "VK_NV_memory_decompression" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_FEATURES_NV*: VkStructureType = VkStructureType(1000427000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_PROPERTIES_NV*: VkStructureType = VkStructureType(1000427001) +proc newVkPhysicalDeviceOpacityMicromapPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_PROPERTIES_EXT, pNext: pointer = nil, maxOpacity2StateSubdivisionLevel: uint32, maxOpacity4StateSubdivisionLevel: uint32): VkPhysicalDeviceOpacityMicromapPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.maxOpacity2StateSubdivisionLevel = maxOpacity2StateSubdivisionLevel + result.maxOpacity4StateSubdivisionLevel = maxOpacity4StateSubdivisionLevel -# Extension: VK_NV_extension_429 -const VK_NV_EXTENSION_429_SPEC_VERSION* = 0 -const VK_NV_EXTENSION_429_EXTENSION_NAME* = "VK_NV_extension_429" +proc newVkAccelerationStructureTrianglesOpacityMicromapEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_OPACITY_MICROMAP_EXT, 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 -# Extension: VK_NV_extension_430 -const VK_NV_EXTENSION_430_SPEC_VERSION* = 0 -const VK_NV_EXTENSION_430_EXTENSION_NAME* = "VK_NV_extension_430" +proc newVkPhysicalDeviceDisplacementMicromapFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISPLACEMENT_MICROMAP_FEATURES_NV, pNext: pointer = nil, displacementMicromap: VkBool32): VkPhysicalDeviceDisplacementMicromapFeaturesNV = + result.sType = sType + result.pNext = pNext + result.displacementMicromap = displacementMicromap -# Extension: VK_NV_linear_color_attachment -const VK_NV_LINEAR_COLOR_ATTACHMENT_SPEC_VERSION* = 1 -const VK_NV_LINEAR_COLOR_ATTACHMENT_EXTENSION_NAME* = "VK_NV_linear_color_attachment" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV*: VkStructureType = VkStructureType(1000430000) -const VK_FORMAT_FEATURE_2_LINEAR_COLOR_ATTACHMENT_BIT_NV*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(274877906944) +proc newVkPhysicalDeviceDisplacementMicromapPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISPLACEMENT_MICROMAP_PROPERTIES_NV, pNext: pointer = nil, maxDisplacementMicromapSubdivisionLevel: uint32): VkPhysicalDeviceDisplacementMicromapPropertiesNV = + result.sType = sType + result.pNext = pNext + result.maxDisplacementMicromapSubdivisionLevel = maxDisplacementMicromapSubdivisionLevel -# Extension: VK_NV_extension_432 -const VK_NV_EXTENSION_432_SPEC_VERSION* = 0 -const VK_NV_EXTENSION_432_EXTENSION_NAME* = "VK_NV_extension_432" +proc newVkAccelerationStructureTrianglesDisplacementMicromapNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_DISPLACEMENT_MICROMAP_NV, 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 -# Extension: VK_NV_extension_433 -const VK_NV_EXTENSION_433_SPEC_VERSION* = 0 -const VK_NV_EXTENSION_433_EXTENSION_NAME* = "VK_NV_extension_433" +proc newVkPipelinePropertiesIdentifierEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT, pNext: pointer = nil, pipelineIdentifier: array[VK_UUID_SIZE, uint8]): VkPipelinePropertiesIdentifierEXT = + result.sType = sType + result.pNext = pNext + result.pipelineIdentifier = pipelineIdentifier -# Extension: VK_GOOGLE_surfaceless_query -const VK_GOOGLE_SURFACELESS_QUERY_SPEC_VERSION* = 2 -const VK_GOOGLE_SURFACELESS_QUERY_EXTENSION_NAME* = "VK_GOOGLE_surfaceless_query" +proc newVkPhysicalDevicePipelinePropertiesFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT, pNext: pointer = nil, pipelinePropertiesIdentifier: VkBool32): VkPhysicalDevicePipelinePropertiesFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.pipelinePropertiesIdentifier = pipelinePropertiesIdentifier -# Extension: VK_KHR_extension_435 -const VK_KHR_EXTENSION_435_SPEC_VERSION* = 0 -const VK_KHR_EXTENSION_435_EXTENSION_NAME* = "VK_KHR_extension_435" +proc newVkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD, pNext: pointer = nil, shaderEarlyAndLateFragmentTests: VkBool32): VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD = + result.sType = sType + result.pNext = pNext + result.shaderEarlyAndLateFragmentTests = shaderEarlyAndLateFragmentTests -# Extension: VK_EXT_application_parameters -const VK_EXT_APPLICATION_PARAMETERS_SPEC_VERSION* = 1 -const VK_EXT_APPLICATION_PARAMETERS_EXTENSION_NAME* = "VK_EXT_application_parameters" -const VK_STRUCTURE_TYPE_APPLICATION_PARAMETERS_EXT*: VkStructureType = VkStructureType(1000435000) +proc newVkExternalMemoryAcquireUnmodifiedEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_ACQUIRE_UNMODIFIED_EXT, pNext: pointer = nil, acquireUnmodifiedMemory: VkBool32): VkExternalMemoryAcquireUnmodifiedEXT = + result.sType = sType + result.pNext = pNext + result.acquireUnmodifiedMemory = acquireUnmodifiedMemory -# Extension: VK_EXT_extension_437 -const VK_EXT_EXTENSION_437_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_437_EXTENSION_NAME* = "VK_EXT_extension_437" +proc newVkExportMetalObjectCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECT_CREATE_INFO_EXT, pNext: pointer = nil, exportObjectType: VkExportMetalObjectTypeFlagBitsEXT): VkExportMetalObjectCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.exportObjectType = exportObjectType -# Extension: VK_EXT_image_compression_control_swapchain -const VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_SPEC_VERSION* = 1 -const VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_EXTENSION_NAME* = "VK_EXT_image_compression_control_swapchain" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT*: VkStructureType = VkStructureType(1000437000) +proc newVkExportMetalObjectsInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECTS_INFO_EXT, pNext: pointer = nil): VkExportMetalObjectsInfoEXT = + result.sType = sType + result.pNext = pNext -# Extension: VK_SEC_extension_439 -const VK_SEC_EXTENSION_439_SPEC_VERSION* = 0 -const VK_SEC_EXTENSION_439_EXTENSION_NAME* = "VK_SEC_extension_439" +proc newVkExportMetalDeviceInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_METAL_DEVICE_INFO_EXT, pNext: pointer = nil, mtlDevice: MTLDevice_id): VkExportMetalDeviceInfoEXT = + result.sType = sType + result.pNext = pNext + result.mtlDevice = mtlDevice -# Extension: VK_QCOM_extension_440 -const VK_QCOM_EXTENSION_440_SPEC_VERSION* = 0 -const VK_QCOM_EXTENSION_440_EXTENSION_NAME* = "VK_QCOM_extension_440" -const VK_QUEUE_RESERVED_7_BIT_QCOM*: VkQueueFlagBits = VkQueueFlagBits(128) -const VK_DEVICE_QUEUE_CREATE_RESERVED_1_BIT_QCOM*: VkDeviceQueueCreateFlagBits = VkDeviceQueueCreateFlagBits(2) +proc newVkExportMetalCommandQueueInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_METAL_COMMAND_QUEUE_INFO_EXT, pNext: pointer = nil, queue: VkQueue, mtlCommandQueue: MTLCommandQueue_id): VkExportMetalCommandQueueInfoEXT = + result.sType = sType + result.pNext = pNext + result.queue = queue + result.mtlCommandQueue = mtlCommandQueue -# Extension: VK_QCOM_image_processing -const VK_QCOM_IMAGE_PROCESSING_SPEC_VERSION* = 1 -const VK_QCOM_IMAGE_PROCESSING_EXTENSION_NAME* = "VK_QCOM_image_processing" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM*: VkStructureType = VkStructureType(1000440000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM*: VkStructureType = VkStructureType(1000440001) -const VK_STRUCTURE_TYPE_IMAGE_VIEW_SAMPLE_WEIGHT_CREATE_INFO_QCOM*: VkStructureType = VkStructureType(1000440002) -const VK_SAMPLER_CREATE_IMAGE_PROCESSING_BIT_QCOM*: VkSamplerCreateFlagBits = VkSamplerCreateFlagBits(16) -const VK_IMAGE_USAGE_SAMPLE_WEIGHT_BIT_QCOM*: VkImageUsageFlagBits = VkImageUsageFlagBits(1048576) -const VK_IMAGE_USAGE_SAMPLE_BLOCK_MATCH_BIT_QCOM*: VkImageUsageFlagBits = VkImageUsageFlagBits(2097152) -const VK_DESCRIPTOR_TYPE_SAMPLE_WEIGHT_IMAGE_QCOM*: VkDescriptorType = VkDescriptorType(1000440000) -const VK_DESCRIPTOR_TYPE_BLOCK_MATCH_IMAGE_QCOM*: VkDescriptorType = VkDescriptorType(1000440001) -const VK_FORMAT_FEATURE_2_WEIGHT_IMAGE_BIT_QCOM*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(17179869184) -const VK_FORMAT_FEATURE_2_WEIGHT_SAMPLED_IMAGE_BIT_QCOM*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(34359738368) -const VK_FORMAT_FEATURE_2_BLOCK_MATCHING_BIT_QCOM*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(68719476736) -const VK_FORMAT_FEATURE_2_BOX_FILTER_SAMPLED_BIT_QCOM*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(137438953472) +proc newVkExportMetalBufferInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_METAL_BUFFER_INFO_EXT, pNext: pointer = nil, memory: VkDeviceMemory, mtlBuffer: MTLBuffer_id): VkExportMetalBufferInfoEXT = + result.sType = sType + result.pNext = pNext + result.memory = memory + result.mtlBuffer = mtlBuffer -# Extension: VK_COREAVI_extension_442 -const VK_COREAVI_EXTENSION_442_SPEC_VERSION* = 0 -const VK_COREAVI_EXTENSION_442_EXTENSION_NAME* = "VK_COREAVI_extension_442" +proc newVkImportMetalBufferInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_METAL_BUFFER_INFO_EXT, pNext: pointer = nil, mtlBuffer: MTLBuffer_id): VkImportMetalBufferInfoEXT = + result.sType = sType + result.pNext = pNext + result.mtlBuffer = mtlBuffer -# Extension: VK_COREAVI_extension_443 -const VK_COREAVI_EXTENSION_443_SPEC_VERSION* = 0 -const VK_COREAVI_EXTENSION_443_EXTENSION_NAME* = "VK_COREAVI_extension_443" +proc newVkExportMetalTextureInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_METAL_TEXTURE_INFO_EXT, 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 -# Extension: VK_COREAVI_extension_444 -const VK_COREAVI_EXTENSION_444_SPEC_VERSION* = 0 -const VK_COREAVI_EXTENSION_444_EXTENSION_NAME* = "VK_COREAVI_extension_444" -const VK_COMMAND_POOL_RESET_RESERVED_1_BIT_COREAVI*: VkCommandPoolResetFlagBits = VkCommandPoolResetFlagBits(2) +proc newVkImportMetalTextureInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_METAL_TEXTURE_INFO_EXT, pNext: pointer = nil, plane: VkImageAspectFlagBits, mtlTexture: MTLTexture_id): VkImportMetalTextureInfoEXT = + result.sType = sType + result.pNext = pNext + result.plane = plane + result.mtlTexture = mtlTexture -# Extension: VK_COREAVI_extension_445 -const VK_COREAVI_EXTENSION_445_SPEC_VERSION* = 0 -const VK_COREAVI_EXTENSION_445_EXTENSION_NAME* = "VK_COREAVI_extension_445" +proc newVkExportMetalIOSurfaceInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_METAL_IO_SURFACE_INFO_EXT, pNext: pointer = nil, image: VkImage, ioSurface: IOSurfaceRef): VkExportMetalIOSurfaceInfoEXT = + result.sType = sType + result.pNext = pNext + result.image = image + result.ioSurface = ioSurface -# Extension: VK_COREAVI_extension_446 -const VK_COREAVI_EXTENSION_446_SPEC_VERSION* = 0 -const VK_COREAVI_EXTENSION_446_EXTENSION_NAME* = "VK_COREAVI_extension_446" +proc newVkImportMetalIOSurfaceInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_METAL_IO_SURFACE_INFO_EXT, pNext: pointer = nil, ioSurface: IOSurfaceRef): VkImportMetalIOSurfaceInfoEXT = + result.sType = sType + result.pNext = pNext + result.ioSurface = ioSurface -# Extension: VK_COREAVI_extension_447 -const VK_COREAVI_EXTENSION_447_SPEC_VERSION* = 0 -const VK_COREAVI_EXTENSION_447_EXTENSION_NAME* = "VK_COREAVI_extension_447" +proc newVkExportMetalSharedEventInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXPORT_METAL_SHARED_EVENT_INFO_EXT, 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 -# Extension: VK_SEC_extension_448 -const VK_SEC_EXTENSION_448_SPEC_VERSION* = 0 -const VK_SEC_EXTENSION_448_EXTENSION_NAME* = "VK_SEC_extension_448" +proc newVkImportMetalSharedEventInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_METAL_SHARED_EVENT_INFO_EXT, pNext: pointer = nil, mtlSharedEvent: MTLSharedEvent_id): VkImportMetalSharedEventInfoEXT = + result.sType = sType + result.pNext = pNext + result.mtlSharedEvent = mtlSharedEvent -# Extension: VK_SEC_extension_449 -const VK_SEC_EXTENSION_449_SPEC_VERSION* = 0 -const VK_SEC_EXTENSION_449_EXTENSION_NAME* = "VK_SEC_extension_449" +proc newVkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT, pNext: pointer = nil, nonSeamlessCubeMap: VkBool32): VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.nonSeamlessCubeMap = nonSeamlessCubeMap -# Extension: VK_SEC_extension_450 -const VK_SEC_EXTENSION_450_SPEC_VERSION* = 0 -const VK_SEC_EXTENSION_450_EXTENSION_NAME* = "VK_SEC_extension_450" +proc newVkPhysicalDevicePipelineRobustnessFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES_EXT, pNext: pointer = nil, pipelineRobustness: VkBool32): VkPhysicalDevicePipelineRobustnessFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.pipelineRobustness = pipelineRobustness -# Extension: VK_SEC_extension_451 -const VK_SEC_EXTENSION_451_SPEC_VERSION* = 0 -const VK_SEC_EXTENSION_451_EXTENSION_NAME* = "VK_SEC_extension_451" +proc newVkPipelineRobustnessCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO_EXT, 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 -# Extension: VK_NV_extension_452 -const VK_NV_EXTENSION_452_SPEC_VERSION* = 0 -const VK_NV_EXTENSION_452_EXTENSION_NAME* = "VK_NV_extension_452" +proc newVkPhysicalDevicePipelineRobustnessPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES_EXT, 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 -# Extension: VK_ARM_extension_453 -const VK_ARM_EXTENSION_453_SPEC_VERSION* = 0 -const VK_ARM_EXTENSION_453_EXTENSION_NAME* = "VK_ARM_extension_453" -const VK_QUEUE_RESERVED_11_BIT_ARM*: VkQueueFlagBits = VkQueueFlagBits(2048) -const VK_PIPELINE_STAGE_2_RESERVED_43_BIT_ARM*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(8796093022208) -const VK_ACCESS_2_RESERVED_49_BIT_ARM*: VkAccessFlagBits2 = VkAccessFlagBits2(562949953421312) -const VK_ACCESS_2_RESERVED_50_BIT_ARM*: VkAccessFlagBits2 = VkAccessFlagBits2(1125899906842624) +proc newVkImageViewSampleWeightCreateInfoQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMAGE_VIEW_SAMPLE_WEIGHT_CREATE_INFO_QCOM, 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 -# Extension: VK_GOOGLE_extension_454 -const VK_GOOGLE_EXTENSION_454_SPEC_VERSION* = 0 -const VK_GOOGLE_EXTENSION_454_EXTENSION_NAME* = "VK_GOOGLE_extension_454" +proc newVkPhysicalDeviceImageProcessingFeaturesQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM, 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 -# Extension: VK_GOOGLE_extension_455 -const VK_GOOGLE_EXTENSION_455_SPEC_VERSION* = 0 -const VK_GOOGLE_EXTENSION_455_EXTENSION_NAME* = "VK_GOOGLE_extension_455" +proc newVkPhysicalDeviceImageProcessingPropertiesQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM, 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 -# Extension: VK_EXT_extended_dynamic_state3 -const VK_EXT_EXTENDED_DYNAMIC_STATE_3_SPEC_VERSION* = 2 -const VK_EXT_EXTENDED_DYNAMIC_STATE_3_EXTENSION_NAME* = "VK_EXT_extended_dynamic_state3" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_FEATURES_EXT*: VkStructureType = VkStructureType(1000455000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000455001) -const VK_DYNAMIC_STATE_TESSELLATION_DOMAIN_ORIGIN_EXT*: VkDynamicState = VkDynamicState(1000455002) -const VK_DYNAMIC_STATE_DEPTH_CLAMP_ENABLE_EXT*: VkDynamicState = VkDynamicState(1000455003) -const VK_DYNAMIC_STATE_POLYGON_MODE_EXT*: VkDynamicState = VkDynamicState(1000455004) -const VK_DYNAMIC_STATE_RASTERIZATION_SAMPLES_EXT*: VkDynamicState = VkDynamicState(1000455005) -const VK_DYNAMIC_STATE_SAMPLE_MASK_EXT*: VkDynamicState = VkDynamicState(1000455006) -const VK_DYNAMIC_STATE_ALPHA_TO_COVERAGE_ENABLE_EXT*: VkDynamicState = VkDynamicState(1000455007) -const VK_DYNAMIC_STATE_ALPHA_TO_ONE_ENABLE_EXT*: VkDynamicState = VkDynamicState(1000455008) -const VK_DYNAMIC_STATE_LOGIC_OP_ENABLE_EXT*: VkDynamicState = VkDynamicState(1000455009) -const VK_DYNAMIC_STATE_COLOR_BLEND_ENABLE_EXT*: VkDynamicState = VkDynamicState(1000455010) -const VK_DYNAMIC_STATE_COLOR_BLEND_EQUATION_EXT*: VkDynamicState = VkDynamicState(1000455011) -const VK_DYNAMIC_STATE_COLOR_WRITE_MASK_EXT*: VkDynamicState = VkDynamicState(1000455012) -const VK_DYNAMIC_STATE_RASTERIZATION_STREAM_EXT*: VkDynamicState = VkDynamicState(1000455013) -const VK_DYNAMIC_STATE_CONSERVATIVE_RASTERIZATION_MODE_EXT*: VkDynamicState = VkDynamicState(1000455014) -const VK_DYNAMIC_STATE_EXTRA_PRIMITIVE_OVERESTIMATION_SIZE_EXT*: VkDynamicState = VkDynamicState(1000455015) -const VK_DYNAMIC_STATE_DEPTH_CLIP_ENABLE_EXT*: VkDynamicState = VkDynamicState(1000455016) -const VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_ENABLE_EXT*: VkDynamicState = VkDynamicState(1000455017) -const VK_DYNAMIC_STATE_COLOR_BLEND_ADVANCED_EXT*: VkDynamicState = VkDynamicState(1000455018) -const VK_DYNAMIC_STATE_PROVOKING_VERTEX_MODE_EXT*: VkDynamicState = VkDynamicState(1000455019) -const VK_DYNAMIC_STATE_LINE_RASTERIZATION_MODE_EXT*: VkDynamicState = VkDynamicState(1000455020) -const VK_DYNAMIC_STATE_LINE_STIPPLE_ENABLE_EXT*: VkDynamicState = VkDynamicState(1000455021) -const VK_DYNAMIC_STATE_DEPTH_CLIP_NEGATIVE_ONE_TO_ONE_EXT*: VkDynamicState = VkDynamicState(1000455022) -const VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_ENABLE_NV*: VkDynamicState = VkDynamicState(1000455023) -const VK_DYNAMIC_STATE_VIEWPORT_SWIZZLE_NV*: VkDynamicState = VkDynamicState(1000455024) -const VK_DYNAMIC_STATE_COVERAGE_TO_COLOR_ENABLE_NV*: VkDynamicState = VkDynamicState(1000455025) -const VK_DYNAMIC_STATE_COVERAGE_TO_COLOR_LOCATION_NV*: VkDynamicState = VkDynamicState(1000455026) -const VK_DYNAMIC_STATE_COVERAGE_MODULATION_MODE_NV*: VkDynamicState = VkDynamicState(1000455027) -const VK_DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_ENABLE_NV*: VkDynamicState = VkDynamicState(1000455028) -const VK_DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_NV*: VkDynamicState = VkDynamicState(1000455029) -const VK_DYNAMIC_STATE_SHADING_RATE_IMAGE_ENABLE_NV*: VkDynamicState = VkDynamicState(1000455030) -const VK_DYNAMIC_STATE_REPRESENTATIVE_FRAGMENT_TEST_ENABLE_NV*: VkDynamicState = VkDynamicState(1000455031) -const VK_DYNAMIC_STATE_COVERAGE_REDUCTION_MODE_NV*: VkDynamicState = VkDynamicState(1000455032) +proc newVkPhysicalDeviceTilePropertiesFeaturesQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM, pNext: pointer = nil, tileProperties: VkBool32): VkPhysicalDeviceTilePropertiesFeaturesQCOM = + result.sType = sType + result.pNext = pNext + result.tileProperties = tileProperties -# Extension: VK_EXT_extension_457 -const VK_EXT_EXTENSION_457_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_457_EXTENSION_NAME* = "VK_EXT_extension_457" +proc newVkTilePropertiesQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_TILE_PROPERTIES_QCOM, 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 -# Extension: VK_EXT_extension_458 -const VK_EXT_EXTENSION_458_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_458_EXTENSION_NAME* = "VK_EXT_extension_458" +proc newVkPhysicalDeviceAmigoProfilingFeaturesSEC*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC, pNext: pointer = nil, amigoProfiling: VkBool32): VkPhysicalDeviceAmigoProfilingFeaturesSEC = + result.sType = sType + result.pNext = pNext + result.amigoProfiling = amigoProfiling -# Extension: VK_EXT_subpass_merge_feedback -const VK_EXT_SUBPASS_MERGE_FEEDBACK_SPEC_VERSION* = 2 -const VK_EXT_SUBPASS_MERGE_FEEDBACK_EXTENSION_NAME* = "VK_EXT_subpass_merge_feedback" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT*: VkStructureType = VkStructureType(1000458000) -const VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT*: VkStructureType = VkStructureType(1000458001) -const VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000458002) -const VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000458003) +proc newVkAmigoProfilingSubmitInfoSEC*(sType: VkStructureType = VK_STRUCTURE_TYPE_AMIGO_PROFILING_SUBMIT_INFO_SEC, pNext: pointer = nil, firstDrawTimestamp: uint64, swapBufferTimestamp: uint64): VkAmigoProfilingSubmitInfoSEC = + result.sType = sType + result.pNext = pNext + result.firstDrawTimestamp = firstDrawTimestamp + result.swapBufferTimestamp = swapBufferTimestamp -# Extension: VK_LUNARG_direct_driver_loading -const VK_LUNARG_DIRECT_DRIVER_LOADING_SPEC_VERSION* = 1 -const VK_LUNARG_DIRECT_DRIVER_LOADING_EXTENSION_NAME* = "VK_LUNARG_direct_driver_loading" -const VK_STRUCTURE_TYPE_DIRECT_DRIVER_LOADING_INFO_LUNARG*: VkStructureType = VkStructureType(1000459000) -const VK_STRUCTURE_TYPE_DIRECT_DRIVER_LOADING_LIST_LUNARG*: VkStructureType = VkStructureType(1000459001) +proc newVkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT, pNext: pointer = nil, attachmentFeedbackLoopLayout: VkBool32): VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.attachmentFeedbackLoopLayout = attachmentFeedbackLoopLayout -# Extension: VK_EXT_extension_461 -const VK_EXT_EXTENSION_461_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_461_EXTENSION_NAME* = "VK_EXT_extension_461" -const VK_FORMAT_FEATURE_2_RESERVED_39_BIT_EXT*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(549755813888) -const VK_IMAGE_USAGE_RESERVED_23_BIT_EXT*: VkImageUsageFlagBits = VkImageUsageFlagBits(8388608) +proc newVkPhysicalDeviceDepthClampZeroOneFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_EXT, pNext: pointer = nil, depthClampZeroOne: VkBool32): VkPhysicalDeviceDepthClampZeroOneFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.depthClampZeroOne = depthClampZeroOne -# Extension: VK_EXT_extension_462 -const VK_EXT_EXTENSION_462_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_462_EXTENSION_NAME* = "VK_EXT_extension_462" +proc newVkPhysicalDeviceAddressBindingReportFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ADDRESS_BINDING_REPORT_FEATURES_EXT, pNext: pointer = nil, reportAddressBinding: VkBool32): VkPhysicalDeviceAddressBindingReportFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.reportAddressBinding = reportAddressBinding -# Extension: VK_EXT_shader_module_identifier -const VK_EXT_SHADER_MODULE_IDENTIFIER_SPEC_VERSION* = 1 -const VK_EXT_SHADER_MODULE_IDENTIFIER_EXTENSION_NAME* = "VK_EXT_shader_module_identifier" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT*: VkStructureType = VkStructureType(1000462000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000462001) -const VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000462002) -const VK_STRUCTURE_TYPE_SHADER_MODULE_IDENTIFIER_EXT*: VkStructureType = VkStructureType(1000462003) +proc newVkDeviceAddressBindingCallbackDataEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_ADDRESS_BINDING_CALLBACK_DATA_EXT, 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 -# Extension: VK_EXT_rasterization_order_attachment_access -const VK_EXT_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_SPEC_VERSION* = 1 -const VK_EXT_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_EXTENSION_NAME* = "VK_EXT_rasterization_order_attachment_access" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT*: VkStructureType = VkStructureType(1000342000) -const VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_EXT*: VkPipelineColorBlendStateCreateFlagBits = VkPipelineColorBlendStateCreateFlagBits(1) -const VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT*: VkPipelineDepthStencilStateCreateFlagBits = VkPipelineDepthStencilStateCreateFlagBits(1) -const VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT*: VkPipelineDepthStencilStateCreateFlagBits = VkPipelineDepthStencilStateCreateFlagBits(2) -const VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_EXT*: VkSubpassDescriptionFlagBits = VkSubpassDescriptionFlagBits(16) -const VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT*: VkSubpassDescriptionFlagBits = VkSubpassDescriptionFlagBits(32) -const VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT*: VkSubpassDescriptionFlagBits = VkSubpassDescriptionFlagBits(64) +proc newVkPhysicalDeviceOpticalFlowFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_FEATURES_NV, pNext: pointer = nil, opticalFlow: VkBool32): VkPhysicalDeviceOpticalFlowFeaturesNV = + result.sType = sType + result.pNext = pNext + result.opticalFlow = opticalFlow -# Extension: VK_NV_optical_flow -const VK_NV_OPTICAL_FLOW_SPEC_VERSION* = 1 -const VK_NV_OPTICAL_FLOW_EXTENSION_NAME* = "VK_NV_optical_flow" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_FEATURES_NV*: VkStructureType = VkStructureType(1000464000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_PROPERTIES_NV*: VkStructureType = VkStructureType(1000464001) -const VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_INFO_NV*: VkStructureType = VkStructureType(1000464002) -const VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_PROPERTIES_NV*: VkStructureType = VkStructureType(1000464003) -const VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000464004) -const VK_STRUCTURE_TYPE_OPTICAL_FLOW_EXECUTE_INFO_NV*: VkStructureType = VkStructureType(1000464005) -const VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_PRIVATE_DATA_INFO_NV*: VkStructureType = VkStructureType(1000464010) -const VK_FORMAT_R16G16_S10_5_NV*: VkFormat = VkFormat(1000464000) -const VK_OBJECT_TYPE_OPTICAL_FLOW_SESSION_NV*: VkObjectType = VkObjectType(1000464000) -const VK_QUEUE_OPTICAL_FLOW_BIT_NV*: VkQueueFlagBits = VkQueueFlagBits(256) -const VK_PIPELINE_STAGE_2_OPTICAL_FLOW_BIT_NV*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(536870912) -const VK_ACCESS_2_OPTICAL_FLOW_READ_BIT_NV*: VkAccessFlagBits2 = VkAccessFlagBits2(4398046511104) -const VK_ACCESS_2_OPTICAL_FLOW_WRITE_BIT_NV*: VkAccessFlagBits2 = VkAccessFlagBits2(8796093022208) -const VK_FORMAT_FEATURE_2_OPTICAL_FLOW_IMAGE_BIT_NV*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(1099511627776) -const VK_FORMAT_FEATURE_2_OPTICAL_FLOW_VECTOR_BIT_NV*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(2199023255552) -const VK_FORMAT_FEATURE_2_OPTICAL_FLOW_COST_BIT_NV*: VkFormatFeatureFlagBits2 = VkFormatFeatureFlagBits2(4398046511104) +proc newVkPhysicalDeviceOpticalFlowPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_PROPERTIES_NV, 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 -# Extension: VK_EXT_legacy_dithering -const VK_EXT_LEGACY_DITHERING_SPEC_VERSION* = 1 -const VK_EXT_LEGACY_DITHERING_EXTENSION_NAME* = "VK_EXT_legacy_dithering" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_DITHERING_FEATURES_EXT*: VkStructureType = VkStructureType(1000465000) -const VK_SUBPASS_DESCRIPTION_ENABLE_LEGACY_DITHERING_BIT_EXT*: VkSubpassDescriptionFlagBits = VkSubpassDescriptionFlagBits(128) -const VK_RENDERING_ENABLE_LEGACY_DITHERING_BIT_EXT*: VkRenderingFlagBits = VkRenderingFlagBits(8) +proc newVkOpticalFlowImageFormatInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_INFO_NV, pNext: pointer = nil, usage: VkOpticalFlowUsageFlagsNV): VkOpticalFlowImageFormatInfoNV = + result.sType = sType + result.pNext = pNext + result.usage = usage -# Extension: VK_EXT_pipeline_protected_access -const VK_EXT_PIPELINE_PROTECTED_ACCESS_SPEC_VERSION* = 1 -const VK_EXT_PIPELINE_PROTECTED_ACCESS_EXTENSION_NAME* = "VK_EXT_pipeline_protected_access" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES_EXT*: VkStructureType = VkStructureType(1000466000) -const VK_PIPELINE_CREATE_NO_PROTECTED_ACCESS_BIT_EXT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(134217728) -const VK_PIPELINE_CREATE_PROTECTED_ACCESS_ONLY_BIT_EXT*: VkPipelineCreateFlagBits = VkPipelineCreateFlagBits(1073741824) +proc newVkOpticalFlowImageFormatPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_PROPERTIES_NV, pNext: pointer = nil, format: VkFormat): VkOpticalFlowImageFormatPropertiesNV = + result.sType = sType + result.pNext = pNext + result.format = format -# Extension: VK_EXT_extension_468 -const VK_EXT_EXTENSION_468_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_468_EXTENSION_NAME* = "VK_EXT_extension_468" +proc newVkOpticalFlowSessionCreateInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_INFO_NV, 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 -# Extension: VK_ANDROID_extension_469 -const VK_ANDROID_EXTENSION_469_SPEC_VERSION* = 0 -const VK_ANDROID_EXTENSION_469_EXTENSION_NAME* = "VK_ANDROID_extension_469" +proc newVkOpticalFlowSessionCreatePrivateDataInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_PRIVATE_DATA_INFO_NV, 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 -# Extension: VK_AMD_extension_470 -const VK_AMD_EXTENSION_470_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_470_EXTENSION_NAME* = "VK_AMD_extension_470" +proc newVkOpticalFlowExecuteInfoNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_OPTICAL_FLOW_EXECUTE_INFO_NV, 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 -# Extension: VK_AMD_extension_471 -const VK_AMD_EXTENSION_471_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_471_EXTENSION_NAME* = "VK_AMD_extension_471" +proc newVkPhysicalDeviceFaultFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FAULT_FEATURES_EXT, pNext: pointer = nil, deviceFault: VkBool32, deviceFaultVendorBinary: VkBool32): VkPhysicalDeviceFaultFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.deviceFault = deviceFault + result.deviceFaultVendorBinary = deviceFaultVendorBinary -# Extension: VK_AMD_extension_472 -const VK_AMD_EXTENSION_472_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_472_EXTENSION_NAME* = "VK_AMD_extension_472" +proc newVkDeviceFaultAddressInfoEXT*(addressType: VkDeviceFaultAddressTypeEXT, reportedAddress: VkDeviceAddress, addressPrecision: VkDeviceSize): VkDeviceFaultAddressInfoEXT = + result.addressType = addressType + result.reportedAddress = reportedAddress + result.addressPrecision = addressPrecision -# Extension: VK_AMD_extension_473 -const VK_AMD_EXTENSION_473_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_473_EXTENSION_NAME* = "VK_AMD_extension_473" +proc newVkDeviceFaultVendorInfoEXT*(description: array[VK_MAX_DESCRIPTION_SIZE, char], vendorFaultCode: uint64, vendorFaultData: uint64): VkDeviceFaultVendorInfoEXT = + result.description = description + result.vendorFaultCode = vendorFaultCode + result.vendorFaultData = vendorFaultData -# Extension: VK_AMD_extension_474 -const VK_AMD_EXTENSION_474_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_474_EXTENSION_NAME* = "VK_AMD_extension_474" +proc newVkDeviceFaultCountsEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_FAULT_COUNTS_EXT, 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 -# Extension: VK_AMD_extension_475 -const VK_AMD_EXTENSION_475_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_475_EXTENSION_NAME* = "VK_AMD_extension_475" +proc newVkDeviceFaultInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_FAULT_INFO_EXT, 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 -# Extension: VK_AMD_extension_476 -const VK_AMD_EXTENSION_476_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_476_EXTENSION_NAME* = "VK_AMD_extension_476" +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 -# Extension: VK_AMD_extension_477 -const VK_AMD_EXTENSION_477_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_477_EXTENSION_NAME* = "VK_AMD_extension_477" +proc newVkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_LIBRARY_GROUP_HANDLES_FEATURES_EXT, pNext: pointer = nil, pipelineLibraryGroupHandles: VkBool32): VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.pipelineLibraryGroupHandles = pipelineLibraryGroupHandles -# Extension: VK_AMD_extension_478 -const VK_AMD_EXTENSION_478_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_478_EXTENSION_NAME* = "VK_AMD_extension_478" +proc newVkDepthBiasInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEPTH_BIAS_INFO_EXT, 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 -# Extension: VK_AMD_extension_479 -const VK_AMD_EXTENSION_479_SPEC_VERSION* = 0 -const VK_AMD_EXTENSION_479_EXTENSION_NAME* = "VK_AMD_extension_479" +proc newVkDepthBiasRepresentationInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEPTH_BIAS_REPRESENTATION_INFO_EXT, pNext: pointer = nil, depthBiasRepresentation: VkDepthBiasRepresentationEXT, depthBiasExact: VkBool32): VkDepthBiasRepresentationInfoEXT = + result.sType = sType + result.pNext = pNext + result.depthBiasRepresentation = depthBiasRepresentation + result.depthBiasExact = depthBiasExact -# Extension: VK_EXT_extension_480 -const VK_EXT_EXTENSION_480_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_480_EXTENSION_NAME* = "VK_EXT_extension_480" +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 -# Extension: VK_EXT_extension_481 -const VK_EXT_EXTENSION_481_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_481_EXTENSION_NAME* = "VK_EXT_extension_481" +proc newVkPhysicalDeviceShaderCoreBuiltinsPropertiesARM*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_PROPERTIES_ARM, 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 -# Extension: VK_EXT_extension_482 -const VK_EXT_EXTENSION_482_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_482_EXTENSION_NAME* = "VK_EXT_extension_482" +proc newVkPhysicalDeviceShaderCoreBuiltinsFeaturesARM*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM, pNext: pointer = nil, shaderCoreBuiltins: VkBool32): VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM = + result.sType = sType + result.pNext = pNext + result.shaderCoreBuiltins = shaderCoreBuiltins -# Extension: VK_EXT_shader_object -const VK_EXT_SHADER_OBJECT_SPEC_VERSION* = 1 -const VK_EXT_SHADER_OBJECT_EXTENSION_NAME* = "VK_EXT_shader_object" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT*: VkStructureType = VkStructureType(1000482000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_PROPERTIES_EXT*: VkStructureType = VkStructureType(1000482001) -const VK_STRUCTURE_TYPE_SHADER_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000482002) -template VK_STRUCTURE_TYPE_SHADER_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT* = - VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO -const VK_OBJECT_TYPE_SHADER_EXT*: VkObjectType = VkObjectType(1000482000) -const VK_ERROR_INCOMPATIBLE_SHADER_BINARY_EXT*: VkResult = VkResult(1000482000) +proc newVkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_UNUSED_ATTACHMENTS_FEATURES_EXT, pNext: pointer = nil, dynamicRenderingUnusedAttachments: VkBool32): VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.dynamicRenderingUnusedAttachments = dynamicRenderingUnusedAttachments -# Extension: VK_EXT_extension_484 -const VK_EXT_EXTENSION_484_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_484_EXTENSION_NAME* = "VK_EXT_extension_484" +proc newVkSurfacePresentModeEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SURFACE_PRESENT_MODE_EXT, pNext: pointer = nil, presentMode: VkPresentModeKHR): VkSurfacePresentModeEXT = + result.sType = sType + result.pNext = pNext + result.presentMode = presentMode -# Extension: VK_QCOM_tile_properties -const VK_QCOM_TILE_PROPERTIES_SPEC_VERSION* = 1 -const VK_QCOM_TILE_PROPERTIES_EXTENSION_NAME* = "VK_QCOM_tile_properties" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM*: VkStructureType = VkStructureType(1000484000) -const VK_STRUCTURE_TYPE_TILE_PROPERTIES_QCOM*: VkStructureType = VkStructureType(1000484001) +proc newVkSurfacePresentScalingCapabilitiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SURFACE_PRESENT_SCALING_CAPABILITIES_EXT, 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 -# Extension: VK_SEC_amigo_profiling -const VK_SEC_AMIGO_PROFILING_SPEC_VERSION* = 1 -const VK_SEC_AMIGO_PROFILING_EXTENSION_NAME* = "VK_SEC_amigo_profiling" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC*: VkStructureType = VkStructureType(1000485000) -const VK_STRUCTURE_TYPE_AMIGO_PROFILING_SUBMIT_INFO_SEC*: VkStructureType = VkStructureType(1000485001) +proc newVkSurfacePresentModeCompatibilityEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SURFACE_PRESENT_MODE_COMPATIBILITY_EXT, pNext: pointer = nil, presentModeCount: uint32, pPresentModes: ptr VkPresentModeKHR): VkSurfacePresentModeCompatibilityEXT = + result.sType = sType + result.pNext = pNext + result.presentModeCount = presentModeCount + result.pPresentModes = pPresentModes -# Extension: VK_EXT_extension_487 -const VK_EXT_EXTENSION_487_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_487_EXTENSION_NAME* = "VK_EXT_extension_487" +proc newVkPhysicalDeviceSwapchainMaintenance1FeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SWAPCHAIN_MAINTENANCE_1_FEATURES_EXT, pNext: pointer = nil, swapchainMaintenance1: VkBool32): VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT = + result.sType = sType + result.pNext = pNext + result.swapchainMaintenance1 = swapchainMaintenance1 -# Extension: VK_EXT_extension_488 -const VK_EXT_EXTENSION_488_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_488_EXTENSION_NAME* = "VK_EXT_extension_488" +proc newVkSwapchainPresentFenceInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_FENCE_INFO_EXT, pNext: pointer = nil, swapchainCount: uint32, pFences: ptr VkFence): VkSwapchainPresentFenceInfoEXT = + result.sType = sType + result.pNext = pNext + result.swapchainCount = swapchainCount + result.pFences = pFences -# Extension: VK_QCOM_multiview_per_view_viewports -const VK_QCOM_MULTIVIEW_PER_VIEW_VIEWPORTS_SPEC_VERSION* = 1 -const VK_QCOM_MULTIVIEW_PER_VIEW_VIEWPORTS_EXTENSION_NAME* = "VK_QCOM_multiview_per_view_viewports" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_VIEWPORTS_FEATURES_QCOM*: VkStructureType = VkStructureType(1000488000) +proc newVkSwapchainPresentModesCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODES_CREATE_INFO_EXT, pNext: pointer = nil, presentModeCount: uint32, pPresentModes: ptr VkPresentModeKHR): VkSwapchainPresentModesCreateInfoEXT = + result.sType = sType + result.pNext = pNext + result.presentModeCount = presentModeCount + result.pPresentModes = pPresentModes -# Extension: VK_NV_external_sci_sync2 -const VK_NV_EXTERNAL_SCI_SYNC_2_SPEC_VERSION* = 1 -const VK_NV_EXTERNAL_SCI_SYNC_2_EXTENSION_NAME* = "VK_NV_external_sci_sync2" -const VK_OBJECT_TYPE_SEMAPHORE_SCI_SYNC_POOL_NV*: VkObjectType = VkObjectType(1000489000) -const VK_STRUCTURE_TYPE_SEMAPHORE_SCI_SYNC_POOL_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000489000) -const VK_STRUCTURE_TYPE_SEMAPHORE_SCI_SYNC_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000489001) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SCI_SYNC_2_FEATURES_NV*: VkStructureType = VkStructureType(1000489002) -const VK_STRUCTURE_TYPE_DEVICE_SEMAPHORE_SCI_SYNC_POOL_RESERVATION_CREATE_INFO_NV*: VkStructureType = VkStructureType(1000489003) +proc newVkSwapchainPresentModeInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODE_INFO_EXT, pNext: pointer = nil, swapchainCount: uint32, pPresentModes: ptr VkPresentModeKHR): VkSwapchainPresentModeInfoEXT = + result.sType = sType + result.pNext = pNext + result.swapchainCount = swapchainCount + result.pPresentModes = pPresentModes -# Extension: VK_NV_ray_tracing_invocation_reorder -const VK_NV_RAY_TRACING_INVOCATION_REORDER_SPEC_VERSION* = 1 -const VK_NV_RAY_TRACING_INVOCATION_REORDER_EXTENSION_NAME* = "VK_NV_ray_tracing_invocation_reorder" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_FEATURES_NV*: VkStructureType = VkStructureType(1000490000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_PROPERTIES_NV*: VkStructureType = VkStructureType(1000490001) +proc newVkSwapchainPresentScalingCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_SCALING_CREATE_INFO_EXT, 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 + +proc newVkReleaseSwapchainImagesInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_RELEASE_SWAPCHAIN_IMAGES_INFO_EXT, 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 + +proc newVkPhysicalDeviceDepthBiasControlFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_BIAS_CONTROL_FEATURES_EXT, 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 + +proc newVkPhysicalDeviceRayTracingInvocationReorderFeaturesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_FEATURES_NV, pNext: pointer = nil, rayTracingInvocationReorder: VkBool32): VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV = + result.sType = sType + result.pNext = pNext + result.rayTracingInvocationReorder = rayTracingInvocationReorder -# Extension: VK_NV_extension_492 -const VK_NV_EXTENSION_492_SPEC_VERSION* = 0 -const VK_NV_EXTENSION_492_EXTENSION_NAME* = "VK_NV_extension_492" +proc newVkPhysicalDeviceRayTracingInvocationReorderPropertiesNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_PROPERTIES_NV, pNext: pointer = nil, rayTracingInvocationReorderReorderingHint: VkRayTracingInvocationReorderModeNV): VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV = + result.sType = sType + result.pNext = pNext + result.rayTracingInvocationReorderReorderingHint = rayTracingInvocationReorderReorderingHint -# Extension: VK_NV_extension_493 -const VK_NV_EXTENSION_493_SPEC_VERSION* = 0 -const VK_NV_EXTENSION_493_EXTENSION_NAME* = "VK_NV_extension_493" +proc newVkDirectDriverLoadingInfoLUNARG*(sType: VkStructureType = VK_STRUCTURE_TYPE_DIRECT_DRIVER_LOADING_INFO_LUNARG, pNext: pointer = nil, flags: VkDirectDriverLoadingFlagsLUNARG = 0.VkDirectDriverLoadingFlagsLUNARG, pfnGetInstanceProcAddr: PFN_vkGetInstanceProcAddrLUNARG): VkDirectDriverLoadingInfoLUNARG = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.pfnGetInstanceProcAddr = pfnGetInstanceProcAddr -# Extension: VK_NV_extension_494 -const VK_NV_EXTENSION_494_SPEC_VERSION* = 0 -const VK_NV_EXTENSION_494_EXTENSION_NAME* = "VK_NV_extension_494" +proc newVkDirectDriverLoadingListLUNARG*(sType: VkStructureType = VK_STRUCTURE_TYPE_DIRECT_DRIVER_LOADING_LIST_LUNARG, 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 -# Extension: VK_EXT_mutable_descriptor_type -const VK_EXT_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION* = 1 -const VK_EXT_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME* = "VK_EXT_mutable_descriptor_type" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT*: VkStructureType = VkStructureType(1000351000) -const VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT*: VkStructureType = VkStructureType(1000351002) -const VK_DESCRIPTOR_TYPE_MUTABLE_EXT*: VkDescriptorType = VkDescriptorType(1000351000) -const VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_EXT*: VkDescriptorPoolCreateFlagBits = VkDescriptorPoolCreateFlagBits(4) -const VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_EXT*: VkDescriptorSetLayoutCreateFlagBits = VkDescriptorSetLayoutCreateFlagBits(4) +proc newVkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_VIEWPORTS_FEATURES_QCOM, pNext: pointer = nil, multiviewPerViewViewports: VkBool32): VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM = + result.sType = sType + result.pNext = pNext + result.multiviewPerViewViewports = multiviewPerViewViewports -# Extension: VK_EXT_extension_496 -const VK_EXT_EXTENSION_496_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_496_EXTENSION_NAME* = "VK_EXT_extension_496" +proc newVkPhysicalDeviceRayTracingPositionFetchFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_POSITION_FETCH_FEATURES_KHR, pNext: pointer = nil, rayTracingPositionFetch: VkBool32): VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR = + result.sType = sType + result.pNext = pNext + result.rayTracingPositionFetch = rayTracingPositionFetch -# Extension: VK_EXT_extension_497 -const VK_EXT_EXTENSION_497_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_497_EXTENSION_NAME* = "VK_EXT_extension_497" +proc newVkDeviceImageSubresourceInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_DEVICE_IMAGE_SUBRESOURCE_INFO_KHR, pNext: pointer = nil, pCreateInfo: ptr VkImageCreateInfo, pSubresource: ptr VkImageSubresource2KHR): VkDeviceImageSubresourceInfoKHR = + result.sType = sType + result.pNext = pNext + result.pCreateInfo = pCreateInfo + result.pSubresource = pSubresource -# Extension: VK_ARM_shader_core_builtins -const VK_ARM_SHADER_CORE_BUILTINS_SPEC_VERSION* = 2 -const VK_ARM_SHADER_CORE_BUILTINS_EXTENSION_NAME* = "VK_ARM_shader_core_builtins" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM*: VkStructureType = VkStructureType(1000497000) -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_PROPERTIES_ARM*: VkStructureType = VkStructureType(1000497001) +proc newVkPhysicalDeviceShaderCorePropertiesARM*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_ARM, 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 -# Extension: VK_EXT_pipeline_library_group_handles -const VK_EXT_PIPELINE_LIBRARY_GROUP_HANDLES_SPEC_VERSION* = 1 -const VK_EXT_PIPELINE_LIBRARY_GROUP_HANDLES_EXTENSION_NAME* = "VK_EXT_pipeline_library_group_handles" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_LIBRARY_GROUP_HANDLES_FEATURES_EXT*: VkStructureType = VkStructureType(1000498000) +proc newVkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_RENDER_AREAS_FEATURES_QCOM, pNext: pointer = nil, multiviewPerViewRenderAreas: VkBool32): VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM = + result.sType = sType + result.pNext = pNext + result.multiviewPerViewRenderAreas = multiviewPerViewRenderAreas -# Extension: VK_EXT_extension_500 -const VK_EXT_EXTENSION_500_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_500_EXTENSION_NAME* = "VK_EXT_extension_500" +proc newVkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM*(sType: VkStructureType = VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_RENDER_AREAS_RENDER_PASS_BEGIN_INFO_QCOM, pNext: pointer = nil, perViewRenderAreaCount: uint32, pPerViewRenderAreas: ptr VkRect2D): VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM = + result.sType = sType + result.pNext = pNext + result.perViewRenderAreaCount = perViewRenderAreaCount + result.pPerViewRenderAreas = pPerViewRenderAreas -# Extension: VK_EXT_extension_501 -const VK_EXT_EXTENSION_501_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_501_EXTENSION_NAME* = "VK_EXT_extension_501" +proc newVkQueryLowLatencySupportNV*(sType: VkStructureType = VK_STRUCTURE_TYPE_QUERY_LOW_LATENCY_SUPPORT_NV, pNext: pointer = nil, pQueriedLowLatencyData: pointer = nil): VkQueryLowLatencySupportNV = + result.sType = sType + result.pNext = pNext + result.pQueriedLowLatencyData = pQueriedLowLatencyData -# Extension: VK_EXT_extension_502 -const VK_EXT_EXTENSION_502_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_502_EXTENSION_NAME* = "VK_EXT_extension_502" +proc newVkMemoryMapInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_MAP_INFO_KHR, 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 -# Extension: VK_EXT_extension_503 -const VK_EXT_EXTENSION_503_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_503_EXTENSION_NAME* = "VK_EXT_extension_503" +proc newVkMemoryUnmapInfoKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_MEMORY_UNMAP_INFO_KHR, pNext: pointer = nil, flags: VkMemoryUnmapFlagsKHR = 0.VkMemoryUnmapFlagsKHR, memory: VkDeviceMemory): VkMemoryUnmapInfoKHR = + result.sType = sType + result.pNext = pNext + result.flags = flags + result.memory = memory -# Extension: VK_NV_extension_504 -const VK_NV_EXTENSION_504_SPEC_VERSION* = 0 -const VK_NV_EXTENSION_504_EXTENSION_NAME* = "VK_NV_extension_504" +proc newVkPhysicalDeviceShaderObjectFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT, pNext: pointer = nil, shaderObject: VkBool32): VkPhysicalDeviceShaderObjectFeaturesEXT = + result.sType = sType + result.pNext = pNext + result.shaderObject = shaderObject -# Extension: VK_EXT_extension_505 -const VK_EXT_EXTENSION_505_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_505_EXTENSION_NAME* = "VK_EXT_extension_505" +proc newVkPhysicalDeviceShaderObjectPropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_PROPERTIES_EXT, pNext: pointer = nil, shaderBinaryUUID: array[VK_UUID_SIZE, uint8], shaderBinaryVersion: uint32): VkPhysicalDeviceShaderObjectPropertiesEXT = + result.sType = sType + result.pNext = pNext + result.shaderBinaryUUID = shaderBinaryUUID + result.shaderBinaryVersion = shaderBinaryVersion -# Extension: VK_NV_extension_506 -const VK_NV_EXTENSION_506_SPEC_VERSION* = 0 -const VK_NV_EXTENSION_506_EXTENSION_NAME* = "VK_NV_extension_506" +proc newVkShaderCreateInfoEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_SHADER_CREATE_INFO_EXT, 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 -# Extension: VK_KHR_extension_507 -const VK_KHR_EXTENSION_507_SPEC_VERSION* = 0 -const VK_KHR_EXTENSION_507_EXTENSION_NAME* = "VK_KHR_extension_507" +proc newVkPhysicalDeviceShaderTileImageFeaturesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_FEATURES_EXT, 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 -# Extension: VK_EXT_extension_508 -const VK_EXT_EXTENSION_508_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_508_EXTENSION_NAME* = "VK_EXT_extension_508" -const VK_QUEUE_RESERVED_10_BIT_EXT*: VkQueueFlagBits = VkQueueFlagBits(1024) -const VK_PIPELINE_STAGE_2_RESERVED_42_BIT_EXT*: VkPipelineStageFlagBits2 = VkPipelineStageFlagBits2(4398046511104) -const VK_ACCESS_2_RESERVED_47_BIT_EXT*: VkAccessFlagBits2 = VkAccessFlagBits2(140737488355328) -const VK_ACCESS_2_RESERVED_48_BIT_EXT*: VkAccessFlagBits2 = VkAccessFlagBits2(281474976710656) +proc newVkPhysicalDeviceShaderTileImagePropertiesEXT*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_PROPERTIES_EXT, 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 -# Extension: VK_EXT_extension_509 -const VK_EXT_EXTENSION_509_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_509_EXTENSION_NAME* = "VK_EXT_extension_509" +proc newVkImportScreenBufferInfoQNX*(sType: VkStructureType = VK_STRUCTURE_TYPE_IMPORT_SCREEN_BUFFER_INFO_QNX, pNext: pointer = nil, buffer: ptr screen_buffer): VkImportScreenBufferInfoQNX = + result.sType = sType + result.pNext = pNext + result.buffer = buffer -# Extension: VK_MESA_extension_510 -const VK_MESA_EXTENSION_510_SPEC_VERSION* = 0 -const VK_MESA_EXTENSION_510_EXTENSION_NAME* = "VK_MESA_extension_510" +proc newVkScreenBufferPropertiesQNX*(sType: VkStructureType = VK_STRUCTURE_TYPE_SCREEN_BUFFER_PROPERTIES_QNX, pNext: pointer = nil, allocationSize: VkDeviceSize, memoryTypeBits: uint32): VkScreenBufferPropertiesQNX = + result.sType = sType + result.pNext = pNext + result.allocationSize = allocationSize + result.memoryTypeBits = memoryTypeBits -# Extension: VK_QCOM_multiview_per_view_render_areas -const VK_QCOM_MULTIVIEW_PER_VIEW_RENDER_AREAS_SPEC_VERSION* = 1 -const VK_QCOM_MULTIVIEW_PER_VIEW_RENDER_AREAS_EXTENSION_NAME* = "VK_QCOM_multiview_per_view_render_areas" -const VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_RENDER_AREAS_FEATURES_QCOM*: VkStructureType = VkStructureType(1000510000) -const VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_RENDER_AREAS_RENDER_PASS_BEGIN_INFO_QCOM*: VkStructureType = VkStructureType(1000510001) +proc newVkScreenBufferFormatPropertiesQNX*(sType: VkStructureType = VK_STRUCTURE_TYPE_SCREEN_BUFFER_FORMAT_PROPERTIES_QNX, 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 -# Extension: VK_EXT_extension_512 -const VK_EXT_EXTENSION_512_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_512_EXTENSION_NAME* = "VK_EXT_extension_512" +proc newVkExternalFormatQNX*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_QNX, pNext: pointer = nil, externalFormat: uint64): VkExternalFormatQNX = + result.sType = sType + result.pNext = pNext + result.externalFormat = externalFormat -# Extension: VK_KHR_extension_513 -const VK_KHR_EXTENSION_513_SPEC_VERSION* = 0 -const VK_KHR_EXTENSION_513_EXTENSION_NAME* = "VK_KHR_extension_513" +proc newVkPhysicalDeviceExternalMemoryScreenBufferFeaturesQNX*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_SCREEN_BUFFER_FEATURES_QNX, pNext: pointer = nil, screenBufferImport: VkBool32): VkPhysicalDeviceExternalMemoryScreenBufferFeaturesQNX = + result.sType = sType + result.pNext = pNext + result.screenBufferImport = screenBufferImport -# Extension: VK_KHR_extension_514 -const VK_KHR_EXTENSION_514_SPEC_VERSION* = 0 -const VK_KHR_EXTENSION_514_EXTENSION_NAME* = "VK_KHR_extension_514" +proc newVkPhysicalDeviceCooperativeMatrixFeaturesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_KHR, pNext: pointer = nil, cooperativeMatrix: VkBool32, cooperativeMatrixRobustBufferAccess: VkBool32): VkPhysicalDeviceCooperativeMatrixFeaturesKHR = + result.sType = sType + result.pNext = pNext + result.cooperativeMatrix = cooperativeMatrix + result.cooperativeMatrixRobustBufferAccess = cooperativeMatrixRobustBufferAccess -# Extension: VK_KHR_extension_515 -const VK_KHR_EXTENSION_515_SPEC_VERSION* = 0 -const VK_KHR_EXTENSION_515_EXTENSION_NAME* = "VK_KHR_extension_515" +proc newVkCooperativeMatrixPropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_KHR, 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 -# Extension: VK_KHR_extension_516 -const VK_KHR_EXTENSION_516_SPEC_VERSION* = 0 -const VK_KHR_EXTENSION_516_EXTENSION_NAME* = "VK_KHR_extension_516" +proc newVkPhysicalDeviceCooperativeMatrixPropertiesKHR*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_KHR, pNext: pointer = nil, cooperativeMatrixSupportedStages: VkShaderStageFlags): VkPhysicalDeviceCooperativeMatrixPropertiesKHR = + result.sType = sType + result.pNext = pNext + result.cooperativeMatrixSupportedStages = cooperativeMatrixSupportedStages -# Extension: VK_EXT_extension_517 -const VK_EXT_EXTENSION_517_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_517_EXTENSION_NAME* = "VK_EXT_extension_517" -const VK_DESCRIPTOR_SET_LAYOUT_CREATE_RESERVED_6_BIT_EXT*: VkDescriptorSetLayoutCreateFlagBits = VkDescriptorSetLayoutCreateFlagBits(64) +proc newVkPhysicalDeviceShaderEnqueuePropertiesAMDX*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ENQUEUE_PROPERTIES_AMDX, 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 -# Extension: VK_MESA_extension_518 -const VK_MESA_EXTENSION_518_SPEC_VERSION* = 0 -const VK_MESA_EXTENSION_518_EXTENSION_NAME* = "VK_MESA_extension_518" +proc newVkPhysicalDeviceShaderEnqueueFeaturesAMDX*(sType: VkStructureType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ENQUEUE_FEATURES_AMDX, pNext: pointer = nil, shaderEnqueue: VkBool32): VkPhysicalDeviceShaderEnqueueFeaturesAMDX = + result.sType = sType + result.pNext = pNext + result.shaderEnqueue = shaderEnqueue -# Extension: VK_QCOM_extension_519 -const VK_QCOM_EXTENSION_519_SPEC_VERSION* = 0 -const VK_QCOM_EXTENSION_519_EXTENSION_NAME* = "VK_QCOM_extension_519" +proc newVkExecutionGraphPipelineCreateInfoAMDX*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXECUTION_GRAPH_PIPELINE_CREATE_INFO_AMDX, 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 -# Extension: VK_QCOM_extension_520 -const VK_QCOM_EXTENSION_520_SPEC_VERSION* = 0 -const VK_QCOM_EXTENSION_520_EXTENSION_NAME* = "VK_QCOM_extension_520" +proc newVkPipelineShaderStageNodeCreateInfoAMDX*(sType: VkStructureType = VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_NODE_CREATE_INFO_AMDX, pNext: pointer = nil, pName: cstring, index: uint32): VkPipelineShaderStageNodeCreateInfoAMDX = + result.sType = sType + result.pNext = pNext + result.pName = pName + result.index = index -# Extension: VK_QCOM_extension_521 -const VK_QCOM_EXTENSION_521_SPEC_VERSION* = 0 -const VK_QCOM_EXTENSION_521_EXTENSION_NAME* = "VK_QCOM_extension_521" +proc newVkExecutionGraphPipelineScratchSizeAMDX*(sType: VkStructureType = VK_STRUCTURE_TYPE_EXECUTION_GRAPH_PIPELINE_SCRATCH_SIZE_AMDX, pNext: pointer = nil, size: VkDeviceSize): VkExecutionGraphPipelineScratchSizeAMDX = + result.sType = sType + result.pNext = pNext + result.size = size -# Extension: VK_QCOM_extension_522 -const VK_QCOM_EXTENSION_522_SPEC_VERSION* = 0 -const VK_QCOM_EXTENSION_522_EXTENSION_NAME* = "VK_QCOM_extension_522" +proc newVkDispatchGraphInfoAMDX*(nodeIndex: uint32, payloadCount: uint32, payloads: VkDeviceOrHostAddressConstAMDX, payloadStride: uint64): VkDispatchGraphInfoAMDX = + result.nodeIndex = nodeIndex + result.payloadCount = payloadCount + result.payloads = payloads + result.payloadStride = payloadStride -# Extension: VK_EXT_extension_523 -const VK_EXT_EXTENSION_523_SPEC_VERSION* = 0 -const VK_EXT_EXTENSION_523_EXTENSION_NAME* = "VK_EXT_extension_523" +proc newVkDispatchGraphCountInfoAMDX*(count: uint32, infos: VkDeviceOrHostAddressConstAMDX, stride: uint64): VkDispatchGraphCountInfoAMDX = + result.count = count + result.infos = infos + result.stride = stride diff --git a/tools/generator.nim b/tools/generator.nim index d27a336..5accac7 100644 --- a/tools/generator.nim +++ b/tools/generator.nim @@ -14,10 +14,6 @@ type name: string members: seq[VkArg] -var vkProcs: seq[VkProc] -var vkStructs: seq[VkStruct] -var vkStructureTypes: seq[string] - proc translateType(s: string): string = result = s result = result.replace("int64_t", "int64") @@ -34,6 +30,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('*') @@ -73,18 +72,18 @@ proc genConsts(constNode: XmlNode, output: var string) = if constType != "": constType = ": " & constType.translateType() case constValue: - of "(~0U)": - constValue = "(not 0'u32)" - of "(~1U)": - constValue = "(not 1'u32)" - of "(~2U)": - constValue = "(not 1'u32)" - of "(~0U-1)": - constValue = "(not 0'u32) - 1" - of "(~0U-2)": - constValue = "(not 0'u32) - 2" - of "(~0ULL)": - constValue = "(not 0'u64)" + of "(~0U)": + constValue = "(not 0'u32)" + of "(~1U)": + constValue = "(not 1'u32)" + of "(~2U)": + constValue = "(not 1'u32)" + of "(~0U-1)": + constValue = "(not 0'u32) - 1" + of "(~0U-2)": + constValue = "(not 0'u32) - 2" + of "(~0ULL)": + constValue = "(not 0'u64)" if constName == "VK_LUID_SIZE_KHR": constValue = "VK_LUID_SIZE" @@ -103,7 +102,7 @@ proc genDefines(define: XmlNode, output: var string) = return else: name = define.child("name").innerText - if define.attr("api") == "vulkansc": + if define.attr("api") == "vulkansc" or define.attr("deprecated") != "": return if name == "VK_MAKE_VERSION": output.add("\ntemplate vkMakeVersion*(major, minor, patch: untyped): untyped =\n") @@ -118,15 +117,15 @@ proc genDefines(define: XmlNode, output: var string) = output.add("\ntemplate vkVersionPatch*(version: untyped): untyped =\n") output.add(" ((uint32)(version) and 0x00000FFF)\n") elif name == "VK_API_VERSION_1_0": - output.add("const VK_API_VERSION_1_0* = vkMakeVersion(1, 0, 0)\n") + output.add("const VK_API_VERSION_1_0* = vkMakeApiVersion(0, 1, 0, 0)\n") elif name == "VK_API_VERSION_1_1": - output.add("const VK_API_VERSION_1_1* = vkMakeVersion(1, 1, 0)\n") + output.add("const VK_API_VERSION_1_1* = vkMakeApiVersion(0, 1, 1, 0)\n") elif name == "VK_API_VERSION_1_2": - output.add("const VK_API_VERSION_1_2* = vkMakeVersion(1, 2, 0)\n") + output.add("const VK_API_VERSION_1_2* = vkMakeApiVersion(0, 1, 2, 0)\n") elif name == "VK_HEADER_VERSION": output.add("const VK_HEADER_VERSION* = 152\n") elif name == "VK_HEADER_VERSION_COMPLETE": - output.add("const VK_HEADER_VERSION_COMPLETE* = vkMakeVersion(1, 2, VK_HEADER_VERSION)\n") + output.add("const VK_HEADER_VERSION_COMPLETE* = vkMakeApiVersion(0, 1, 2, VK_HEADER_VERSION)\n") elif name == "VK_NULL_HANDLE": output.add("const VK_NULL_HANDLE* = 0\n") elif name == "VK_MAKE_API_VERSION": @@ -186,17 +185,24 @@ proc genEnumMembers(node: XmlNode, output: var string) = output.add("const\n") for enumNode in node.items: let extends = node.attr("name") + var enumName = enumNode.attr("name") + 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" if enumNode.attr("value") != "": - output.add(" {enumNode.attr(\"name\")}*: {extends} = {extends}({enumNode.attr(\"value\")})\n".fmt) + output.add(" {enumName}*: {extends} = {extends}({enumNode.attr(\"value\")})\n".fmt) elif enumNode.attr("offset") != "": - output.add(" {enumNode.attr(\"name\")}*: {extends} = {extends}({getEnumValue(enumNode)})\n".fmt) + output.add(" {enumName}*: {extends} = {extends}({getEnumValue(enumNode)})\n".fmt) elif enumNode.attr("bitpos") != "": - output.add(" {enumNode.attr(\"name\")}*: {extends} = {extends}({getEnumValue(enumNode)})\n".fmt) + output.add(" {enumName}*: {extends} = {extends}({getEnumValue(enumNode)})\n".fmt) proc genEnums(enums: XmlNode, output: var string) = let enumsName = enums.attr("name") - let enumstype = enums.attr("type") - output.add("type {enumsName}* = cint\n".fmt) + if enumsName in ["VkAccessFlagBits2", "VkPipelineStageFlagBits2", "VkFormatFeatureFlagBits2"]: + output.add("type {enumsName}* = clonglong\n".fmt) + else: + output.add("type {enumsName}* = cint\n".fmt) proc genConstructors(s: XmlNode, output: var string) = #TODO implement optional members @@ -206,7 +212,7 @@ proc genConstructors(s: XmlNode, output: var string) = output.add("proc new{sname}*(".fmt) for member in s.findAll("member"): if member.attr("api") == "vulkansc": - continue + continue var name = member.child("name").innerText if keywords.contains(name): name = "`{name}`".fmt @@ -243,7 +249,7 @@ proc genConstructors(s: XmlNode, output: var string) = for member in s.findAll("member"): if member.attr("api") == "vulkansc": - continue + continue var name = member.child("name").innerText if keywords.contains(name): name = "`{name}`".fmt @@ -254,9 +260,9 @@ proc genStructsOrUnion(node: XmlNode, output: var string) = let name = node.attr("name") if node.attr("category") == "struct": - output.add("type {name}* = object\n".fmt) + output.add(" {name}* = object\n".fmt) else: - output.add("type {name}* {{.union.}} = object\n".fmt) + output.add(" {name}* {{.union.}} = object\n".fmt) for member in node.findAll("member"): if member.attr("api") == "vulkansc": @@ -286,42 +292,41 @@ proc genStructsOrUnion(node: XmlNode, output: var string) = vkArg.argType = "array[{arraySize}, {memberType}]".fmt if not isArray: - output.add(" {memberName}*: {memberType}\n".fmt) + output.add(" {memberName}*: {memberType}\n".fmt) else: - output.add(" {memberName}*: array[{arraySize}, {memberType}]\n".fmt) + output.add(" {memberName}*: array[{arraySize}, {memberType}]\n".fmt) output.add("\n") - node.genConstructors(output) proc genFuncPointer(funcpointer: XmlNode, output: var string) = let name = funcpointer.child("name").innerText if name == "PFN_vkInternalAllocationNotification": - output.add("type PFN_vkInternalAllocationNotification* = proc(pUserData: pointer; size: csize_t; allocationType: VkInternalAllocationType; allocationScope: VkSystemAllocationScope) {.cdecl.}\n") + output.add(" PFN_vkInternalAllocationNotification* = proc (pUserData: pointer; size: csize_t; allocationType: VkInternalAllocationType; allocationScope: VkSystemAllocationScope) {.cdecl.}\n") elif name == "PFN_vkInternalFreeNotification": - output.add("type PFN_vkInternalFreeNotification* = proc(pUserData: pointer; size: csize_t; allocationType: VkInternalAllocationType; allocationScope: VkSystemAllocationScope) {.cdecl.}\n") + output.add(" PFN_vkInternalFreeNotification* = proc (pUserData: pointer; size: csize_t; allocationType: VkInternalAllocationType; allocationScope: VkSystemAllocationScope) {.cdecl.}\n") elif name == "PFN_vkReallocationFunction": - output.add("type PFN_vkReallocationFunction* = proc(pUserData: pointer; pOriginal: pointer; size: csize_t; alignment: csize_t; allocationScope: VkSystemAllocationScope): pointer {.cdecl.}\n") + output.add(" PFN_vkReallocationFunction* = proc (pUserData: pointer; pOriginal: pointer; size: csize_t; alignment: csize_t; allocationScope: VkSystemAllocationScope): pointer {.cdecl.}\n") elif name == "PFN_vkAllocationFunction": - output.add("type PFN_vkAllocationFunction* = proc(pUserData: pointer; size: csize_t; alignment: csize_t; allocationScope: VkSystemAllocationScope): pointer {.cdecl.}\n") + output.add(" PFN_vkAllocationFunction* = proc (pUserData: pointer; size: csize_t; alignment: csize_t; allocationScope: VkSystemAllocationScope): pointer {.cdecl.}\n") elif name == "PFN_vkFreeFunction": - output.add("type 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("type PFN_vkVoidFunction* = proc() {.cdecl.}\n") + output.add(" PFN_vkVoidFunction* = proc () {.cdecl.}\n") elif name == "PFN_vkDebugReportCallbackEXT": - output.add("type PFN_vkDebugReportCallbackEXT* = proc(flags: VkDebugReportFlagsEXT; objectType: VkDebugReportObjectTypeEXT; cbObject: uint64; location: csize_t; messageCode: int32; pLayerPrefix: cstring; pMessage: cstring; pUserData: pointer): VkBool32 {.cdecl.}\n") + output.add(" PFN_vkDebugReportCallbackEXT* = proc (flags: VkDebugReportFlagsEXT; objectType: VkDebugReportObjectTypeEXT; cbObject: uint64; location: csize_t; messageCode: int32; pLayerPrefix: cstring; pMessage: cstring; pUserData: pointer): VkBool32 {.cdecl.}\n") elif name == "PFN_vkDebugUtilsMessengerCallbackEXT": - output.add("type 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") elif name == "PFN_vkFaultCallbackFunction": - output.add("type PFN_vkFaultCallbackFunction* = proc(unrecordedFaults: VkBool32, faultCount: uint32, pFaults: pointer) {.cdecl.}\n") + output.add(" PFN_vkFaultCallbackFunction* = proc (unrecordedFaults: VkBool32, faultCount: uint32, pFaults: pointer) {.cdecl.}\n") elif name == "PFN_vkDeviceMemoryReportCallbackEXT": - output.add("type PFN_vkDeviceMemoryReportCallbackEXT* = proc(pCallbackData: VkDeviceMemoryReportCallbackDataEXT, pUserData: pointer) {.cdecl.}\n") + output.add(" PFN_vkDeviceMemoryReportCallbackEXT* = proc (pCallbackData: VkDeviceMemoryReportCallbackDataEXT, pUserData: pointer) {.cdecl.}\n") elif name == "PFN_vkGetInstanceProcAddrLUNARG": - output.add("type PFN_vkGetInstanceProcAddrLUNARG* = proc(instance: VkInstance, pName: cstring) {.cdecl.}\n") + output.add(" PFN_vkGetInstanceProcAddrLUNARG* = proc (instance: VkInstance, pName: cstring) {.cdecl.}\n") else: echo "category:funcpointer not found {name}".fmt proc genFlags(flag: XmlNode, output: var string) = if flag.attr("api") == "vulkansc": - return + return var name = flag.child("name").innerText var nodeType = flag.child("type").innerText.translateType() output.add("type {name}* = distinct {nodeType}\n".fmt) @@ -357,7 +362,7 @@ proc genProcs(function: XmlNode, output: var string) = vkArg.argType = "array[{arraySize}, {typeName}]".fmt else: vkArg.argType = vkArg.argType[0 ..< vkArg.argType.len - vkArg.name.len] - vkArg.argType = vkArg.argType.translateType() + vkArg.argType = vkArg.argType.translateType().strip for part in vkArg.name.split(" "): if keywords.contains(part): @@ -365,7 +370,6 @@ proc genProcs(function: XmlNode, output: var string) = vkProc.args.add(vkArg) - vkProcs.add(vkProc) output.add("proc {vkProc.name}*(".fmt) for arg in vkProc.args: if not output.endsWith('('): @@ -378,7 +382,7 @@ proc genAliases(alias: XmlNode, output: var string) = name = alias.attr("name") aliasVal = alias.attr("alias") if alias.tag == "type": - output.add("type {name}* = {aliasVal}\n".fmt) + output.add(" {name}* = {aliasVal}\n".fmt) else: output.add("template {name}* =\n {aliasVal}\n".fmt) @@ -387,16 +391,15 @@ proc genObjPointers(objpointer: XmlNode, output: var string) = var requires = objpointer.attr("requires") if requires == "vk_platform" or requires == "": return - if name[0..0] == "_": - name = name[1..^1] + if name[0] == '_': name = name.substr(1) - output.add("type {name}* = ptr object\n".fmt) + output.add(" {name}* {{.importc, nodecl.}} = object\n".fmt) proc genExtensionOrFeature(extensionOrFeature: XmlNode, output: var string) = output.add("# Extension: {extensionOrFeature.attr(\"name\")}\n".fmt) for require in extensionOrFeature.findAll("require"): for enumNode in require.findAll("enum"): - if enumNode.attr("api") == "vulkansc": + if enumNode.attr("api") == "vulkansc" or enumNode.attr("deprecated") != "": continue if enumNode.attr("alias") != "": enumNode.genAliases(output) @@ -414,129 +417,177 @@ proc genExtensionOrFeature(extensionOrFeature: XmlNode, output: var string) = enumNode.genConsts(output) output.add("\n") -proc parseRegistery(node: XmlNode, registery: TableRef[string, seq[XmlNode]], output: var string) = +proc genDefines(registery: TableRef[string, seq[XmlNode]], output: var string) = + for node in registery["defines"]: + node.genDefines(output) + +proc genBaseTypes(registery: TableRef[string, seq[XmlNode]], output: var string) = + for node in registery["basetypes"]: + node.genBaseTypes(output) + +proc genConsts(registery: TableRef[string, seq[XmlNode]], output: var string) = + for node in registery["consts"]: + node.genConsts(output) + +proc genFlags(registery: TableRef[string, seq[XmlNode]], output: var string) = + for node in registery["flags"]: + node.genFlags(output) + +proc genHandles(registery: TableRef[string, seq[XmlNode]], output: var string) = + for node in registery["handles"]: + node.genHandles(output) + +proc genEnums(registery: TableRef[string, seq[XmlNode]], output: var string) = + for node in registery["enums"]: + node.genEnums(output) + +proc genEnumMembers(registery: TableRef[string, seq[XmlNode]], output: var string) = + for node in registery["enummembers"]: + node.genEnumMembers(output) + +proc genFuncPointer(registery: TableRef[string, seq[XmlNode]], output: var string) = + for node in registery["funcpointer"]: + node.genFuncPointer(output) + output.add("\n") + +proc genStructsOrUnion(registery: TableRef[string, seq[XmlNode]], output: var string) = + for node in registery["structorunion"]: + node.genStructsOrUnion(output) + +proc genObjPointers(registery: TableRef[string, seq[XmlNode]], output: var string) = + for node in registery["objpointer"]: + node.genObjPointers(output) + output.add("\n") + +proc genProcs(registery: TableRef[string, seq[XmlNode]], output: var string) = + for node in registery["procs"]: + node.genProcs(output) + +proc genAliases(registery: TableRef[string, seq[XmlNode]], output: var string) = + for node in registery["aliases"]: + node.genAliases(output) + output.add("\n") + +proc genConstructors(registery: TableRef[string, seq[XmlNode]], output: var string) = + for node in registery["structorunion"]: + node.genConstructors(output) + +proc genExtensionOrFeature(registery: TableRef[string, seq[XmlNode]], output: var string) = + for node in registery["extensionorfeature"]: + node.genExtensionOrFeature(output) + +proc parseRegistery(node: XmlNode, registery: TableRef[string, seq[XmlNode]]) = var kind = node.kind case kind: - of xnText, xnVerbatimText, xnCData, xnEntity, xnComment: - discard - of xnElement: - case node.tag: - of "type": - case node.attr("category"): - of "basetype": - node.genBaseTypes(output) - of "struct": - if node.attr("alias") != "": - node.genAliases(output) - else: - node.genStructsOrUnion(output) - of "define": - node.genDefines(output) - of "bitmask": - if node.attr("alias") != "": - node.genAliases(output) - else: - node.genFlags(output) - of "handle": - if node.attr("alias") != "": - node.genAliases(output) - else: - node.genHandles(output) - of "funcpointer": - node.genFuncPointer(output) - of "union": - node.genStructsOrUnion(output) - of "enum": - if node.attr("alias") != "": - node.genAliases(output) - else: - node.genEnums(output) - of "include": - discard - else: - node.genObjPointers(output) - of "enums": - if node.attr("name") == "API Constants": - for constItem in node.items: - if constItem.attr("alias") != "": - constItem.genAliases(output) - else: - constItem.genConsts(output) - else: #All Enums get a max enum entry - if node.attr("type") != "bitmask": - var prefixSuffixTuple = getVkPrefixSuffix(node.attr("name")) - var maxEnumNode: XmlNode = newElement("enum") - var attrs = {"name": "{prefixSuffixTuple.prefix}_MAX_ENUM{prefixSuffixTuple.suffix}".fmt, "value": "0x7FFFFFFF", "extends": node.attr("name")}.toXmlAttributes - maxEnumNode.attrs = attrs - node.add(maxEnumNode) - - node.genEnumMembers(output) - of "extension": - node.genExtensionOrFeature(output) - of "feature": - node.genExtensionOrFeature(output) - of "command": - node.genProcs(output) + of xnText, xnVerbatimText, xnCData, xnEntity, xnComment: + discard + of xnElement: + case node.tag: + of "type": + case node.attr("category"): + of "basetype": + registery["basetypes"].add node + of "struct": + if node.attr("alias") != "": + registery["aliases"].add node else: - for n in node.items: - parseRegistery(n, registery, output) + registery["structorunion"].add node + of "define": + registery["defines"].add node + of "bitmask": + if node.attr("alias") != "": + registery["aliases"].add node + else: + registery["flags"].add node + of "handle": + if node.attr("alias") != "": + registery["aliases"].add node + else: + registery["handles"].add node + of "funcpointer": + registery["funcpointer"].add node + of "union": + registery["structorunion"].add node + of "enum": + if node.attr("alias") != "": + registery["aliases"].add node + else: + registery["enums"].add node + of "include": + discard + else: + registery["objpointer"].add node + of "enums": + if node.attr("name") == "API Constants": + for constItem in node.items: + if constItem.attr("alias") != "": + registery["aliases"].add constItem + else: + registery["consts"].add constItem + else: #All Enums get a max enum entry + if node.attr("type") != "bitmask": + var prefixSuffixTuple = getVkPrefixSuffix(node.attr("name")) + var maxEnumNode: XmlNode = newElement("enum") + var attrs = {"name": "{prefixSuffixTuple.prefix}_MAX_ENUM{prefixSuffixTuple.suffix}".fmt, "value": "0x7FFFFFFF", "extends": node.attr("name")}.toXmlAttributes + maxEnumNode.attrs = attrs + node.add(maxEnumNode) + + registery["enummembers"].add node + of "extension": + registery["extensionorfeature"].add node + of "feature": + registery["extensionorfeature"].add node + of "command": + registery["procs"].add node + else: + for n in node.items: + parseRegistery(n, registery) proc main() = - if not os.fileExists("Vulkan-Docs/xml/vk.xml"): + if not os.fileExists("../Vulkan-Docs/xml/vk.xml"): let client = newHttpClient() let glUrl = "https://raw.githubusercontent.com/KhronosGroup/Vulkan-Docs/main/xml/vk.xml" - client.downloadFile(glUrl, "Vulkan-Docs/xml/vk.xml") + client.downloadFile(glUrl, "../Vulkan-Docs/xml/vk.xml") - var output = srcHeader & "\n" - - let file = newFileStream("Vulkan-Docs/xml/vk.xml", fmRead) - let xml = file.parseXml() + let spec = loadXml("../Vulkan-Docs/xml/vk.xml") var registery: TableRef[string, seq[XmlNode]] = newTable[string, seq[XmlNode]]() registery["basetypes"] = newSeq[XmlNode]() registery["consts"] = newSeq[XmlNode]() registery["enums"] = newSeq[XmlNode]() + registery["enummembers"] = newSeq[XmlNode]() registery["flags"] = newSeq[XmlNode]() registery["objpointer"] = newSeq[XmlNode]() registery["funcpointer"] = newSeq[XmlNode]() - registery["structs"] = newSeq[XmlNode]() + registery["structorunion"] = newSeq[XmlNode]() registery["handles"] = newSeq[XmlNode]() registery["defines"] = newSeq[XmlNode]() registery["aliases"] = newSeq[XmlNode]() - registery["unions"] = newSeq[XmlNode]() - registery["includes"] = newSeq[XmlNode]() - registery["Procs"] = newSeq[XmlNode]() - registery["enumExtensions"] = newSeq[XmlNode]() - registery["extensions"] = newSeq[XmlNode]() + registery["procs"] = newSeq[XmlNode]() + registery["extensionorfeature"] = newSeq[XmlNode]() echo "Parsing XML File..." - xml.parseRegistery(registery, output) + spec.parseRegistery(registery) echo "Parsing Done and Registery filled" - # registery.genDefines(output) - # registery.genBaseTypes(output) - # registery.genConsts(output) - # registery.genFlags(output) - # registery.genHandles(output) - # registery.genEnums(output) - # registery.genEnumMembers(output) - # registery.genFuncPointer(output) - # registery.genStructsOrUnion(output) - # registery.genUnions(output) - # registery.genObjPointers(output) - # registery.genProcs(output) - # registery.genAliases(output) - # registery.genConstructors(output) - - #xml.genEnums(output) - #xml.genTypes(output) - #xml.genConstructors(output) - #xml.genProcs(output) - #xml.genFeatures(output) - #xml.genExtensions(output) - - #output.add("\n" & vkInit) - - writeFile("src/vulkan.nim", output) + + var output = srcHeader & "\n" + registery.genDefines(output) + registery.genBaseTypes(output) + registery.genConsts(output) + registery.genFlags(output) + registery.genHandles(output) + registery.genEnums(output) + registery.genEnumMembers(output) + # registery.genExtensionOrFeature(output) + output.add("\ntype\n") + registery.genFuncPointer(output) + registery.genStructsOrUnion(output) + registery.genObjPointers(output) + registery.genAliases(output) + registery.genProcs(output) + registery.genConstructors(output) + + writeFile("../src/vulkan.nim", output) if isMainModule: main() diff --git a/tools/utils.nim b/tools/utils.nim index ce4d6e8..cccf166 100644 --- a/tools/utils.nim +++ b/tools/utils.nim @@ -1,7 +1,6 @@ # Written by Leonardo Mariscal , 2019 const srcHeader* = """ -{.experimental: "codeReordering".} # Written by Leonardo Mariscal , 2019 ## Vulkan Bindings @@ -9,7 +8,6 @@ const srcHeader* = """ ## WARNING: This is a generated file. Do not edit ## Any edits will be overwritten by the generator. - when not defined(vkCustomLoader): import dynlib